]> git.sven.stormbind.net Git - sven/vym.git/commitdiff
Import Upstream version 2.6.11 upstream/2.6.11
authorSven Hoexter <sven@stormbind.net>
Fri, 3 May 2024 12:10:12 +0000 (14:10 +0200)
committerSven Hoexter <sven@stormbind.net>
Fri, 3 May 2024 12:10:12 +0000 (14:10 +0200)
505 files changed:
CMakeLists.txt [new file with mode: 0644]
INSTALL.txt [new file with mode: 0644]
LICENSE.txt [new file with mode: 0644]
README.md [new file with mode: 0644]
aboutdialog.cpp [new file with mode: 0644]
aboutdialog.h [new file with mode: 0644]
adaptormodel.cpp [new file with mode: 0644]
adaptormodel.h [new file with mode: 0644]
adaptorvym.cpp [new file with mode: 0644]
adaptorvym.h [new file with mode: 0644]
animpoint.cpp [new file with mode: 0644]
animpoint.h [new file with mode: 0644]
arrowobj.cpp [new file with mode: 0644]
arrowobj.h [new file with mode: 0644]
attribute.cpp [new file with mode: 0644]
attribute.h [new file with mode: 0644]
attributedelegate.cpp [new file with mode: 0644]
attributedelegate.h [new file with mode: 0644]
attributedialog.cpp [new file with mode: 0644]
attributedialog.h [new file with mode: 0644]
attributedialog.ui [new file with mode: 0644]
attributeitem.cpp [new file with mode: 0644]
attributeitem.h [new file with mode: 0644]
attributewidget.cpp [new file with mode: 0644]
attributewidget.h [new file with mode: 0644]
attributewidget.ui [new file with mode: 0644]
branchitem.cpp [new file with mode: 0644]
branchitem.h [new file with mode: 0644]
branchobj.cpp [new file with mode: 0644]
branchobj.h [new file with mode: 0644]
branchpropeditor.cpp [new file with mode: 0644]
branchpropeditor.h [new file with mode: 0644]
branchpropeditor.ui [new file with mode: 0644]
bugagent.cpp [new file with mode: 0644]
bugagent.h [new file with mode: 0644]
cmake/Findcppcheck.cmake [new file with mode: 0644]
cmake/Findcppcheck.cpp [new file with mode: 0644]
command.cpp [new file with mode: 0644]
command.h [new file with mode: 0644]
demos/ao-report-example.vym [new file with mode: 0644]
demos/frames.vym [new file with mode: 0644]
demos/lifeforms.vym [new file with mode: 0644]
demos/math.vym [new file with mode: 0644]
demos/time-management.vym [new file with mode: 0644]
demos/vym-contribute.vym [new file with mode: 0644]
doc/vym.1.gz [new file with mode: 0644]
doc/vym.pdf [new file with mode: 0644]
doc/vym_es.pdf [new file with mode: 0644]
doc/vym_fr.pdf [new file with mode: 0644]
dockeditor.cpp [new file with mode: 0644]
dockeditor.h [new file with mode: 0644]
downloadagent.cpp [new file with mode: 0644]
downloadagent.h [new file with mode: 0644]
editxlinkdialog.cpp [new file with mode: 0644]
editxlinkdialog.h [new file with mode: 0644]
editxlinkdialog.ui [new file with mode: 0644]
exporthtmldialog.cpp [new file with mode: 0644]
exporthtmldialog.h [new file with mode: 0644]
exporthtmldialog.ui [new file with mode: 0644]
exportoofiledialog.cpp [new file with mode: 0644]
exportoofiledialog.h [new file with mode: 0644]
exports.cpp [new file with mode: 0644]
exports.h [new file with mode: 0644]
exports/orange-blue.conf [new file with mode: 0644]
exports/template-orange-blue/META-INF/manifest.xml [new file with mode: 0644]
exports/template-orange-blue/Pictures/1000000000000040000000400142E835.png [new file with mode: 0644]
exports/template-orange-blue/Thumbnails/thumbnail.png [new file with mode: 0644]
exports/template-orange-blue/content-template.xml [new file with mode: 0644]
exports/template-orange-blue/content.xml [new file with mode: 0644]
exports/template-orange-blue/meta.xml [new file with mode: 0644]
exports/template-orange-blue/mimetype [new file with mode: 0644]
exports/template-orange-blue/page-template.xml [new file with mode: 0644]
exports/template-orange-blue/settings.xml [new file with mode: 0644]
exports/template-orange-blue/styles.xml [new file with mode: 0644]
exportxhtmldialog.ui [new file with mode: 0644]
extrainfodialog.cpp [new file with mode: 0644]
extrainfodialog.h [new file with mode: 0644]
extrainfodialog.ui [new file with mode: 0644]
file.cpp [new file with mode: 0644]
file.h [new file with mode: 0644]
findresultitem.cpp [new file with mode: 0644]
findresultitem.h [new file with mode: 0644]
findresultmodel.cpp [new file with mode: 0644]
findresultmodel.h [new file with mode: 0644]
findresultwidget.cpp [new file with mode: 0644]
findresultwidget.h [new file with mode: 0644]
findwidget.cpp [new file with mode: 0644]
findwidget.h [new file with mode: 0644]
flag.cpp [new file with mode: 0644]
flag.h [new file with mode: 0644]
flagobj.cpp [new file with mode: 0644]
flagobj.h [new file with mode: 0644]
flagrow.cpp [new file with mode: 0644]
flagrow.h [new file with mode: 0644]
flagrowobj.cpp [new file with mode: 0644]
flagrowobj.h [new file with mode: 0644]
flags/flag-2arrow-down.png [new file with mode: 0644]
flags/flag-2arrow-up.png [new file with mode: 0644]
flags/flag-arrow-down.png [new file with mode: 0644]
flags/flag-arrow-up.png [new file with mode: 0644]
flags/flag-clock.png [new file with mode: 0644]
flags/flag-cross-red.png [new file with mode: 0644]
flags/flag-exclamationmark.png [new file with mode: 0644]
flags/flag-flash.png [new file with mode: 0644]
flags/flag-heart.png [new file with mode: 0644]
flags/flag-hideexport.png [new file with mode: 0644]
flags/flag-hook-green.png [new file with mode: 0644]
flags/flag-info.png [new file with mode: 0644]
flags/flag-lamp.png [new file with mode: 0644]
flags/flag-lifebelt.png [new file with mode: 0644]
flags/flag-note.png [new file with mode: 0644]
flags/flag-phone.png [new file with mode: 0644]
flags/flag-present.png [new file with mode: 0644]
flags/flag-questionmark.png [new file with mode: 0644]
flags/flag-rose.png [new file with mode: 0644]
flags/flag-scrolled-right.png [new file with mode: 0644]
flags/flag-smiley-good.png [new file with mode: 0644]
flags/flag-smiley-omb.png [new file with mode: 0644]
flags/flag-smiley-sad.png [new file with mode: 0644]
flags/flag-stopsign.png [new file with mode: 0644]
flags/flag-target.png [new file with mode: 0644]
flags/flag-task-finished.png [new file with mode: 0644]
flags/flag-task-new-morning.png [new file with mode: 0644]
flags/flag-task-new-sleeping.png [new file with mode: 0644]
flags/flag-task-new.png [new file with mode: 0644]
flags/flag-task-wip-morning.png [new file with mode: 0644]
flags/flag-task-wip-sleeping.png [new file with mode: 0644]
flags/flag-task-wip.png [new file with mode: 0644]
flags/flag-task.png [new file with mode: 0644]
flags/flag-thumb-down.png [new file with mode: 0644]
flags/flag-thumb-up.png [new file with mode: 0644]
flags/flag-tmpUnscrolled-right.png [new file with mode: 0644]
flags/flag-url-16x16.png [new file with mode: 0644]
flags/flag-url-bugzilla-novell-closed.png [new file with mode: 0644]
flags/flag-url-bugzilla-novell.png [new file with mode: 0644]
flags/flag-url.png [new file with mode: 0644]
flags/flag-urlnew.png [new file with mode: 0644]
flags/flag-vymlink.png [new file with mode: 0644]
flags/flag-vymlinknew.png [new file with mode: 0644]
flags/flag-wip.png [new file with mode: 0644]
flags/freemind/attach.png [new file with mode: 0644]
flags/freemind/back.png [new file with mode: 0644]
flags/freemind/bell.png [new file with mode: 0644]
flags/freemind/bookmark.png [new file with mode: 0644]
flags/freemind/clanbomber.png [new file with mode: 0644]
flags/freemind/desktopnew.png [new file with mode: 0644]
flags/freemind/flag.png [new file with mode: 0644]
flags/freemind/forward.png [new file with mode: 0644]
flags/freemind/gohome.png [new file with mode: 0644]
flags/freemind/help.png [new file with mode: 0644]
flags/freemind/idea.png [new file with mode: 0644]
flags/freemind/kaddressbook.png [new file with mode: 0644]
flags/freemind/knotify.png [new file with mode: 0644]
flags/freemind/korn.png [new file with mode: 0644]
flags/freemind/licq.png [new file with mode: 0644]
flags/freemind/mail.png [new file with mode: 0644]
flags/freemind/password.png [new file with mode: 0644]
flags/freemind/pencil.png [new file with mode: 0644]
flags/freemind/penguin.png [new file with mode: 0644]
flags/freemind/priority-1.png [new file with mode: 0644]
flags/freemind/priority-2.png [new file with mode: 0644]
flags/freemind/priority-3.png [new file with mode: 0644]
flags/freemind/priority-4.png [new file with mode: 0644]
flags/freemind/priority-5.png [new file with mode: 0644]
flags/freemind/priority-6.png [new file with mode: 0644]
flags/freemind/priority-7.png [new file with mode: 0644]
flags/freemind/stop.png [new file with mode: 0644]
flags/freemind/warning.png [new file with mode: 0644]
flags/freemind/wizard.png [new file with mode: 0644]
flags/freemind/xmag.png [new file with mode: 0644]
floatimageobj.cpp [new file with mode: 0644]
floatimageobj.h [new file with mode: 0644]
floatobj.cpp [new file with mode: 0644]
floatobj.h [new file with mode: 0644]
frameobj.cpp [new file with mode: 0644]
frameobj.h [new file with mode: 0644]
geometry.cpp [new file with mode: 0644]
geometry.h [new file with mode: 0644]
heading.cpp [new file with mode: 0644]
heading.h [new file with mode: 0644]
headingeditor.cpp [new file with mode: 0644]
headingeditor.h [new file with mode: 0644]
headingobj.cpp [new file with mode: 0644]
headingobj.h [new file with mode: 0644]
highlighter.cpp [new file with mode: 0644]
highlighter.h [new file with mode: 0644]
historywindow.cpp [new file with mode: 0644]
historywindow.h [new file with mode: 0644]
historywindow.ui [new file with mode: 0644]
icons/cursorcolorpicker.png [new file with mode: 0644]
icons/cursorcolorpicker16.png [new file with mode: 0644]
icons/cursorcopy.png [new file with mode: 0644]
icons/cursorhandopen.png [new file with mode: 0644]
icons/cursorhandopen16.png [new file with mode: 0644]
icons/cursorxlink.png [new file with mode: 0644]
icons/down.png [new file with mode: 0644]
icons/editcopy.png [new file with mode: 0644]
icons/editcut.png [new file with mode: 0644]
icons/editpaste.png [new file with mode: 0644]
icons/editsort.png [new file with mode: 0644]
icons/editsortback.png [new file with mode: 0644]
icons/edittrash.png [new file with mode: 0644]
icons/exit.png [new file with mode: 0644]
icons/file-document-export.png [new file with mode: 0644]
icons/fileclose.png [new file with mode: 0644]
icons/filenew.png [new file with mode: 0644]
icons/filenewcopy.png [new file with mode: 0644]
icons/fileopen.png [new file with mode: 0644]
icons/fileprint.png [new file with mode: 0644]
icons/filesave.png [new file with mode: 0644]
icons/filesaveas.png [new file with mode: 0644]
icons/find.png [new file with mode: 0644]
icons/formatcolorbranch.png [new file with mode: 0644]
icons/formatcolorpicker.png [new file with mode: 0644]
icons/formatcolorpicker.xpm [new file with mode: 0644]
icons/formatcolorsubtree.png [new file with mode: 0644]
icons/formatfixedfont.png [new file with mode: 0644]
icons/formatrichtext.png [new file with mode: 0644]
icons/formatvarfont.png [new file with mode: 0644]
icons/headingeditor.png [new file with mode: 0644]
icons/history.png [new file with mode: 0644]
icons/linestyle-dash.png [new file with mode: 0644]
icons/linestyle-dashdot.png [new file with mode: 0644]
icons/linestyle-dashdotdot.png [new file with mode: 0644]
icons/linestyle-dot.png [new file with mode: 0644]
icons/linestyle-solid.png [new file with mode: 0644]
icons/modecolor.png [new file with mode: 0644]
icons/modecopy.png [new file with mode: 0644]
icons/modelink.png [new file with mode: 0644]
icons/newbranch.png [new file with mode: 0644]
icons/newmapcenter.png [new file with mode: 0644]
icons/redo.png [new file with mode: 0644]
icons/rotate-ccw.png [new file with mode: 0644]
icons/rotate-cw.png [new file with mode: 0644]
icons/scripteditor.png [new file with mode: 0644]
icons/selectnext.png [new file with mode: 0644]
icons/selectprevious.png [new file with mode: 0644]
icons/slide-camera.png [new file with mode: 0644]
icons/slideeditor.png [new file with mode: 0644]
icons/slidenext.png [new file with mode: 0644]
icons/slideprevious.png [new file with mode: 0644]
icons/sliderecord.png [new file with mode: 0644]
icons/taskeditor.png [new file with mode: 0644]
icons/text_block.png [new file with mode: 0644]
icons/text_bold.png [new file with mode: 0644]
icons/text_center.png [new file with mode: 0644]
icons/text_italic.png [new file with mode: 0644]
icons/text_left.png [new file with mode: 0644]
icons/text_right.png [new file with mode: 0644]
icons/text_sub.png [new file with mode: 0644]
icons/text_super.png [new file with mode: 0644]
icons/text_under.png [new file with mode: 0644]
icons/treeeditor.png [new file with mode: 0644]
icons/undo.png [new file with mode: 0644]
icons/up.png [new file with mode: 0644]
icons/view-filter.png [new file with mode: 0644]
icons/viewmag+.png [new file with mode: 0644]
icons/viewmag-.png [new file with mode: 0644]
icons/viewmag-reset.png [new file with mode: 0644]
icons/viewshowsel.png [new file with mode: 0644]
icons/vym-128x128.png [new file with mode: 0644]
icons/vym-16x16.png [new file with mode: 0644]
icons/vym-editor.png [new file with mode: 0644]
icons/vym.icns [new file with mode: 0644]
icons/vym.ico [new file with mode: 0755]
icons/vym.png [new file with mode: 0644]
icons/vym.xpm [new file with mode: 0644]
imageitem.cpp [new file with mode: 0644]
imageitem.h [new file with mode: 0644]
imageobj.cpp [new file with mode: 0644]
imageobj.h [new file with mode: 0644]
imports.cpp [new file with mode: 0644]
imports.h [new file with mode: 0644]
lang/vym.cs_CZ.ts [new file with mode: 0644]
lang/vym.de_DE.ts [new file with mode: 0644]
lang/vym.el.ts [new file with mode: 0644]
lang/vym.en.ts [new file with mode: 0644]
lang/vym.es.ts [new file with mode: 0644]
lang/vym.fr.ts [new file with mode: 0644]
lang/vym.hr_HR.ts [new file with mode: 0644]
lang/vym.ia.ts [new file with mode: 0644]
lang/vym.it.ts [new file with mode: 0644]
lang/vym.ja.ts [new file with mode: 0644]
lang/vym.pt_BR.ts [new file with mode: 0644]
lang/vym.ru.ts [new file with mode: 0644]
lang/vym.sv.ts [new file with mode: 0644]
lang/vym.zh_CN.ts [new file with mode: 0644]
lang/vym.zh_TW.ts [new file with mode: 0644]
lineeditdialog.cpp [new file with mode: 0644]
lineeditdialog.h [new file with mode: 0644]
lineeditdialog.ui [new file with mode: 0644]
linkablemapobj.cpp [new file with mode: 0644]
linkablemapobj.h [new file with mode: 0644]
lockedfiledialog.cpp [new file with mode: 0644]
lockedfiledialog.h [new file with mode: 0644]
lockedfiledialog.ui [new file with mode: 0644]
macros.cpp [new file with mode: 0644]
macros.h [new file with mode: 0644]
macros/macro-01.vys [new file with mode: 0644]
macros/macro-02.vys [new file with mode: 0644]
macros/macro-03.vys [new file with mode: 0644]
macros/macro-04.vys [new file with mode: 0644]
macros/macro-05.vys [new file with mode: 0644]
macros/macro-06.vys [new file with mode: 0644]
macros/macro-07.vys [new file with mode: 0644]
macros/macro-08.vys [new file with mode: 0644]
macros/macro-09.vys [new file with mode: 0644]
macros/macro-10.vys [new file with mode: 0644]
macros/macro-11.vys [new file with mode: 0644]
macros/macro-12.vys [new file with mode: 0644]
macros/macro-s01.vys [new file with mode: 0644]
macros/macro-s02.vys [new file with mode: 0644]
macros/macro-s03.vys [new file with mode: 0644]
macros/macro-s04.vys [new file with mode: 0644]
macros/macro-s05.vys [new file with mode: 0644]
macros/macro-s06.vys [new file with mode: 0644]
macros/macro-s07.vys [new file with mode: 0644]
macros/macro-s08.vys [new file with mode: 0644]
macros/macro-s09.vys [new file with mode: 0644]
macros/macro-s10.vys [new file with mode: 0644]
macros/macro-s11.vys [new file with mode: 0644]
macros/macro-s12.vys [new file with mode: 0644]
macros/slideeditor-snapshot.vys [new file with mode: 0644]
main.cpp [new file with mode: 0644]
mainwindow.cpp [new file with mode: 0644]
mainwindow.h [new file with mode: 0644]
mapeditor.cpp [new file with mode: 0644]
mapeditor.h [new file with mode: 0644]
mapitem.cpp [new file with mode: 0644]
mapitem.h [new file with mode: 0644]
mapobj.cpp [new file with mode: 0644]
mapobj.h [new file with mode: 0644]
misc.cpp [new file with mode: 0644]
misc.h [new file with mode: 0644]
mkdtemp.cpp [new file with mode: 0644]
mkdtemp.h [new file with mode: 0644]
mysortfilterproxymodel.cpp [new file with mode: 0644]
mysortfilterproxymodel.h [new file with mode: 0644]
noteeditor.cpp [new file with mode: 0644]
noteeditor.h [new file with mode: 0644]
options.cpp [new file with mode: 0644]
options.h [new file with mode: 0644]
ornamentedobj.cpp [new file with mode: 0644]
ornamentedobj.h [new file with mode: 0644]
parser.cpp [new file with mode: 0644]
parser.h [new file with mode: 0644]
scripteditor.cpp [new file with mode: 0644]
scripteditor.h [new file with mode: 0644]
scripteditor.ui [new file with mode: 0644]
scriptoutput.cpp [new file with mode: 0644]
scriptoutput.h [new file with mode: 0644]
scripts/bugger [new file with mode: 0755]
scripts/getbinaries [new file with mode: 0755]
scripts/make-qrc.rb [new file with mode: 0755]
scripts/makedist-vym [new file with mode: 0755]
scripts/screencast [new file with mode: 0755]
scripts/vivym [new file with mode: 0755]
scripts/vym-addmail.rb [new file with mode: 0755]
scripts/vym-ruby.rb [new file with mode: 0644]
settings.cpp [new file with mode: 0644]
settings.h [new file with mode: 0644]
shortcuts.cpp [new file with mode: 0644]
shortcuts.h [new file with mode: 0644]
showtextdialog.cpp [new file with mode: 0644]
showtextdialog.h [new file with mode: 0644]
showtextdialog.ui [new file with mode: 0644]
slidecontrolwidget.cpp [new file with mode: 0644]
slidecontrolwidget.h [new file with mode: 0644]
slideeditor.cpp [new file with mode: 0644]
slideeditor.h [new file with mode: 0644]
slideitem.cpp [new file with mode: 0644]
slideitem.h [new file with mode: 0644]
slidemodel.cpp [new file with mode: 0644]
slidemodel.h [new file with mode: 0644]
styles/vym.css [new file with mode: 0644]
styles/vym2taskjuggler.xsl [new file with mode: 0644]
task.cpp [new file with mode: 0644]
task.h [new file with mode: 0644]
taskeditor.cpp [new file with mode: 0644]
taskeditor.h [new file with mode: 0644]
taskfiltermodel.cpp [new file with mode: 0644]
taskfiltermodel.h [new file with mode: 0644]
taskmodel.cpp [new file with mode: 0644]
taskmodel.h [new file with mode: 0644]
test/default.vym [new file with mode: 0644]
test/example-2.4.0.vym [new file with mode: 0644]
test/note-plain.txt [new file with mode: 0644]
test/note-richtext.xml [new file with mode: 0644]
test/note.html [new file with mode: 0644]
test/start-test.sh [new file with mode: 0755]
test/vym-test.rb [new file with mode: 0755]
tex/commands.tex [new file with mode: 0644]
tex/examples/branches.vym [new file with mode: 0644]
tex/examples/macros.vym [new file with mode: 0644]
tex/examples/windows-main.vym [new file with mode: 0644]
tex/examples/windows.vym [new file with mode: 0644]
tex/examples/xlinks.vym [new file with mode: 0644]
tex/images/branches-flags.png [new file with mode: 0644]
tex/images/branches-flags_es.png [new file with mode: 0644]
tex/images/branches-flags_fr.png [new file with mode: 0644]
tex/images/branches.png [new file with mode: 0644]
tex/images/branches_es.png [new file with mode: 0644]
tex/images/branches_fr.png [new file with mode: 0644]
tex/images/color-buttons.png [new file with mode: 0644]
tex/images/default-flags.png [new file with mode: 0644]
tex/images/example1.png [new file with mode: 0644]
tex/images/example1_es.png [new file with mode: 0644]
tex/images/example1_fr.png [new file with mode: 0644]
tex/images/export-oo.png [new file with mode: 0644]
tex/images/export-oo_es.png [new file with mode: 0644]
tex/images/find-window.png [new file with mode: 0644]
tex/images/find-window_es.png [new file with mode: 0644]
tex/images/flag-hideexport.png [new file with mode: 0644]
tex/images/flag-target.png [new file with mode: 0644]
tex/images/flag-url-bugzilla-novell.png [new file with mode: 0644]
tex/images/flag-url.png [new file with mode: 0644]
tex/images/flag-urlnew.png [new file with mode: 0644]
tex/images/flag-vymlink.png [new file with mode: 0644]
tex/images/flag-vymlinknew.png [new file with mode: 0644]
tex/images/formatfixedfont.png [new file with mode: 0644]
tex/images/frames.png [new file with mode: 0644]
tex/images/headingeditor.png [new file with mode: 0644]
tex/images/hiddenlink.png [new file with mode: 0644]
tex/images/hiddenlink_es.png [new file with mode: 0644]
tex/images/hiddenlink_fr.png [new file with mode: 0644]
tex/images/historywindow.png [new file with mode: 0644]
tex/images/includeImages.png [new file with mode: 0644]
tex/images/includeImages_es.png [new file with mode: 0644]
tex/images/includeImages_fr.png [new file with mode: 0644]
tex/images/macros.png [new file with mode: 0644]
tex/images/macros_fr.png [new file with mode: 0644]
tex/images/mainwindow.png [new file with mode: 0644]
tex/images/modmodes.png [new file with mode: 0644]
tex/images/move-buttons.png [new file with mode: 0644]
tex/images/newmapcenter.png [new file with mode: 0644]
tex/images/noteeditor.png [new file with mode: 0644]
tex/images/noteeditor_es.png [new file with mode: 0644]
tex/images/noteeditor_fr.png [new file with mode: 0644]
tex/images/propwindow.png [new file with mode: 0644]
tex/images/scripteditor.png [new file with mode: 0644]
tex/images/slideeditor.png [new file with mode: 0644]
tex/images/taskeditor.png [new file with mode: 0644]
tex/images/vym-logo-new.png [new file with mode: 0644]
tex/images/windows-main.png [new file with mode: 0644]
tex/images/windows.png [new file with mode: 0644]
tex/images/windows_es.png [new file with mode: 0644]
tex/images/windows_fr.png [new file with mode: 0644]
tex/images/xlink-control.png [new file with mode: 0644]
tex/images/xlink-property.png [new file with mode: 0644]
tex/images/xlink.png [new file with mode: 0644]
tex/images/xlink_es.png [new file with mode: 0644]
tex/images/xlink_fr.png [new file with mode: 0644]
tex/images/zoom-buttons.png [new file with mode: 0644]
tex/vym.tex [new file with mode: 0644]
tex/vym_es.tex [new file with mode: 0644]
tex/vym_fr.lyx [new file with mode: 0644]
tex/vym_fr.tex [new file with mode: 0644]
texteditor.cpp [new file with mode: 0644]
texteditor.h [new file with mode: 0644]
treedelegate.cpp [new file with mode: 0644]
treedelegate.h [new file with mode: 0644]
treeeditor.cpp [new file with mode: 0644]
treeeditor.h [new file with mode: 0644]
treeitem.cpp [new file with mode: 0644]
treeitem.h [new file with mode: 0644]
treemodel.cpp [new file with mode: 0644]
treemodel.h [new file with mode: 0644]
version.cpp [new file with mode: 0644]
version.h [new file with mode: 0644]
vym.pro [new file with mode: 0644]
vym.qrc [new file with mode: 0644]
vym.rc [new file with mode: 0644]
vymlock.cpp [new file with mode: 0644]
vymlock.h [new file with mode: 0644]
vymmodel.cpp [new file with mode: 0644]
vymmodel.h [new file with mode: 0644]
vymnote.cpp [new file with mode: 0644]
vymnote.h [new file with mode: 0644]
vymprocess.cpp [new file with mode: 0644]
vymprocess.h [new file with mode: 0644]
vymtext.cpp [new file with mode: 0644]
vymtext.h [new file with mode: 0644]
vymview.cpp [new file with mode: 0644]
vymview.h [new file with mode: 0644]
warningdialog.cpp [new file with mode: 0644]
warningdialog.h [new file with mode: 0644]
warningdialog.ui [new file with mode: 0644]
winter.cpp [new file with mode: 0644]
winter.h [new file with mode: 0644]
xlink.cpp [new file with mode: 0644]
xlink.h [new file with mode: 0644]
xlinkitem.cpp [new file with mode: 0644]
xlinkitem.h [new file with mode: 0644]
xlinkobj.cpp [new file with mode: 0644]
xlinkobj.h [new file with mode: 0644]
xml-base.cpp [new file with mode: 0644]
xml-base.h [new file with mode: 0644]
xml-freemind.cpp [new file with mode: 0644]
xml-freemind.h [new file with mode: 0644]
xml-vym.cpp [new file with mode: 0644]
xml-vym.h [new file with mode: 0644]
xmlobj.cpp [new file with mode: 0644]
xmlobj.h [new file with mode: 0644]
xsltproc.cpp [new file with mode: 0644]
xsltproc.h [new file with mode: 0644]

diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644 (file)
index 0000000..81102ba
--- /dev/null
@@ -0,0 +1,334 @@
+project( vym )
+cmake_minimum_required( VERSION 2.6 )
+
+if( NOT CMAKE_BUILD_TYPE )
+       set( CMAKE_BUILD_TYPE Debug )
+endif( NOT CMAKE_BUILD_TYPE )
+
+if( CMAKE_COMPILER_IS_GNUCXX )
+       add_definitions ( -Wall )
+endif( CMAKE_COMPILER_IS_GNUCXX )
+
+if( UNIX AND NOT APPLE )
+    set( NO_DBUS_DEFAULT OFF )
+else( UNIX AND NOT APPLE )
+    set( NO_DBUS_DEFAULT ON )
+endif( UNIX AND NOT APPLE )
+
+option( NO_DBUS "Build vym without dbus support" ${NO_DBUS_DEFAULT} )
+
+find_package ( Qt4 REQUIRED )
+include ( ${QT_USE_FILE} )
+add_definitions( ${QT_DEFINITIONS} )
+
+if( WIN32 )
+       add_definitions( -DUNICODE -D_USE_MATH_DEFINES )
+       if( MSVC )
+               set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zc:wchar_t-" )
+       endif( MSVC )
+endif( WIN32 )
+
+find_package( cppcheck )
+if(CPPCHECK_FOUND)
+       set(_cppcheck_args)
+       list(APPEND _cppcheck_args ${CPPCHECK_INCLUDEPATH_ARG} ${CMAKE_SOURCE_DIR})
+#      list(APPEND _cppcheck_args ${CPPCHECK_INCLUDEPATH_ARG} ${QT_QTCORE_INCLUDE_DIR})
+#      list(APPEND _cppcheck_args ${CPPCHECK_INCLUDEPATH_ARG} ${QT_QTDBUS_INCLUDE_DIR})
+#      list(APPEND _cppcheck_args ${CPPCHECK_INCLUDEPATH_ARG} ${QT_QTGUI_INCLUDE_DIR})
+#      list(APPEND _cppcheck_args ${CPPCHECK_INCLUDEPATH_ARG} ${QT_QTNETWORK_INCLUDE_DIR})
+#      list(APPEND _cppcheck_args ${CPPCHECK_INCLUDEPATH_ARG} ${QT_QTXML_INCLUDE_DIR})
+#      list(APPEND _cppcheck_args ${CPPCHECK_INCLUDEPATH_ARG} ${QT_QTSVG_INCLUDE_DIR})
+
+       list(APPEND _cppcheck_args "enable" "all")
+       
+       add_custom_target(
+               cppcheck
+               COMMAND 
+               "${CPPCHECK_EXECUTABLE}"
+               ${CPPCHECK_TEMPLATE_ARG}
+               ${CPPCHECK_QUIET_ARG}
+               "--force"
+#              "--std=c++11"
+               ${_cppcheck_args}
+               ${CMAKE_SOURCE_DIR}
+       )
+
+       message(STATUS "cppcheck target added.")
+endif(CPPCHECK_FOUND)
+
+include_directories (
+       ${CMAKE_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}
+       ${QT_QTCORE_INCLUDE_DIR} ${QT_QTGUI_INCLUDE_DIR} ${QT_QTNETWORK_INCLUDE_DIR} ${QT_QTXML_INCLUDE_DIR} ${QT_QTSVG_INCLUDE_DIR}
+       )
+
+if(NOT NO_DBUS )
+    include_directories( ${QT_QTDBUS_INCLUDE_DIR} )
+endif(NOT NO_DBUS )
+
+set ( vym_HDRS
+      aboutdialog.h
+      taskfiltermodel.h
+      animpoint.h
+      attribute.h
+      attributeitem.h
+      #   attributedelegate.h
+      #   attributedialog.h
+      #   attributewidget.h
+      branchitem.h
+      branchobj.h
+      branchpropeditor.h
+      bugagent.h
+      command.h
+      dockeditor.h
+      downloadagent.h
+      editxlinkdialog.h
+      exportoofiledialog.h
+      exporthtmldialog.h
+      exports.h
+      extrainfodialog.h
+      file.h
+      findwidget.h
+      findresultwidget.h
+      findresultitem.h
+      findresultmodel.h
+      flag.h
+      flagobj.h
+      flagrowobj.h
+      flagrow.h
+      floatimageobj.h
+      floatobj.h
+      frameobj.h
+      geometry.h
+      headingeditor.h
+      headingobj.h
+      highlighter.h
+      historywindow.h
+      imageitem.h
+      imageobj.h
+      imports.h
+      lineeditdialog.h
+      linkablemapobj.h
+      macros.h
+      mainwindow.h
+      mapeditor.h
+      mapitem.h
+      mapobj.h
+      misc.h
+      mysortfilterproxymodel.h
+      noteeditor.h
+      noteobj.h
+      options.h
+      ornamentedobj.h
+      parser.h
+      process.h
+      scripteditor.h
+      settings.h
+      shortcuts.h
+      showtextdialog.h
+      slidecontrolwidget.h
+      slideeditor.h
+      slideitem.h
+      slidemodel.h
+      task.h
+      taskeditor.h
+      taskmodel.h
+      treedelegate.h
+      treeeditor.h
+      treeitem.h
+      treemodel.h
+      texteditor.h
+      version.h
+      vymmodel.h
+      vymview.h
+      winter.h
+      warningdialog.h
+      xlink.h
+      xlinkitem.h
+      xlinkobj.h
+      xml-base.h
+      xml-vym.h
+      xml-freemind.h
+      xmlobj.h
+      xsltproc.h
+       )
+
+set ( vym_SRCS
+      aboutdialog.cpp
+      taskfiltermodel.cpp
+      animpoint.cpp
+      attribute.cpp
+      attributeitem.cpp
+      #   attributedelegate.cpp
+      #   attributedialog.cpp
+      #   attributewidget.cpp
+      branchitem.cpp
+      branchobj.cpp
+      branchpropeditor.cpp
+      bugagent.cpp
+      command.cpp
+      dockeditor.cpp
+      downloadagent.cpp
+      editxlinkdialog.cpp
+      exportoofiledialog.cpp
+      exports.cpp
+      exporthtmldialog.cpp
+      extrainfodialog.cpp
+      file.cpp
+      findwidget.cpp
+      findresultwidget.cpp
+      findresultitem.cpp
+      findresultmodel.cpp
+      flag.cpp
+      flagobj.cpp
+      flagrow.cpp
+      flagrowobj.cpp
+      floatimageobj.cpp
+      floatobj.cpp
+      frameobj.cpp
+      geometry.cpp
+      headingeditor.cpp
+      headingobj.cpp
+      highlighter.cpp
+      historywindow.cpp
+      imageitem.cpp
+      imageobj.cpp
+      imports.cpp
+      lineeditdialog.cpp
+      linkablemapobj.cpp
+      macros.cpp
+      main.cpp
+      mainwindow.cpp
+      mapeditor.cpp
+      mapitem.cpp
+      mapobj.cpp
+      misc.cpp
+      mysortfilterproxymodel.cpp
+      noteeditor.cpp
+      noteobj.cpp
+      options.cpp
+      ornamentedobj.cpp
+      parser.cpp
+      process.cpp
+      scripteditor.cpp
+      settings.cpp
+      shortcuts.cpp
+      showtextdialog.cpp
+      slidecontrolwidget.cpp
+      slideeditor.cpp
+      slideitem.cpp
+      slidemodel.cpp
+      task.cpp
+      taskeditor.cpp
+      taskmodel.cpp
+      texteditor.cpp
+      treedelegate.cpp
+      treeeditor.cpp
+      treeitem.cpp
+      treemodel.cpp
+      version.cpp
+      vymmodel.cpp
+      vymview.cpp
+      winter.cpp
+      warningdialog.cpp
+      xlink.cpp
+      xlinkitem.cpp
+      xlinkobj.cpp
+      xml-base.cpp
+      xml-vym.cpp
+      xml-freemind.cpp
+      xmlobj.cpp
+      xsltproc.cpp
+       )
+
+set ( vym_UIS
+      attributewidget.ui
+      branchpropeditor.ui
+      exporthtmldialog.ui
+      extrainfodialog.ui
+      editxlinkdialog.ui
+      historywindow.ui
+      lineeditdialog.ui
+      scripteditor.ui
+      showtextdialog.ui
+      warningdialog.ui
+       )
+QT4_WRAP_UI(UIS ${vym_UIS})
+
+set ( vym_TRS
+       lang/vym_de_DE.ts
+       lang/vym_en.ts
+       lang/vym_es.ts
+       lang/vym_fr.ts
+       lang/vym_it.ts
+       lang/vym_pt_BR.ts
+       lang/vym_ru.ts
+       lang/vym_sv.ts
+       lang/vym_zh_CN.ts
+       lang/vym_zh_TW.ts
+       lang/vym_cs_CZ.ts
+       )
+QT4_ADD_TRANSLATION(TRS ${vym_TRS})
+
+set ( vym_MOCS
+      aboutdialog.h
+      branchpropeditor.h
+      bugagent.h
+      dockeditor.h
+      downloadagent.h
+      editxlinkdialog.h
+      exportoofiledialog.h
+      exporthtmldialog.h
+      extrainfodialog.h
+      findwidget.h
+      findresultwidget.h
+      findresultmodel.h
+      headingeditor.h
+      highlighter.h
+      historywindow.h
+      lineeditdialog.h
+      mainwindow.h
+      mapeditor.h
+      mysortfilterproxymodel.h
+      noteeditor.h
+      process.h
+      scripteditor.h
+      showtextdialog.h
+      slidecontrolwidget.h
+      slideeditor.h
+      slidemodel.h
+      taskeditor.h
+      taskmodel.h
+      treedelegate.h
+      treeeditor.h
+      treemodel.h
+      texteditor.h
+      vymmodel.h
+      vymview.h
+      winter.h
+      warningdialog.h
+       )
+if( NOT NO_DBUS )
+    add_definitions(-DVYM_DBUS)
+    list(APPEND vym_HDRS adaptormodel.h adaptorvym.h)
+    list(APPEND vym_SRCS adaptormodel.cpp adaptorvym.cpp)
+    list(APPEND vym_MOCS adaptormodel.h adaptorvym.h)
+endif( NOT NO_DBUS )
+QT4_WRAP_CPP(MOCS ${vym_MOCS})
+
+
+
+if( WIN32 )
+       set( vym_SRCS ${vym_SRCS} mkdtemp.cpp vym.rc )
+endif( WIN32 )
+
+add_executable ( vym WIN32 ${vym_SRCS} ${UIS} ${RSCS} ${TRS} ${MOCS} )
+target_link_libraries ( vym  ${QT_QTMAIN_LIBRARY} ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} ${QT_QTNETWORK_LIBRARY} ${QT_QTXML_LIBRARY} ${QT_QTSVG_LIBRARY} )
+if( NOT NO_DBUS )
+    target_link_libraries( vym ${QT_QTDBUS_LIBRARY} )
+endif( NOT NO_DBUS )
+
+install( TARGETS vym RUNTIME DESTINATION bin )
+
+set( _installfolders demos exports flags icons macros scripts styles )
+install( DIRECTORY ${_installfolders} DESTINATION share/vym )
+install( FILES ${TRS} DESTINATION share/vym/lang )
diff --git a/INSTALL.txt b/INSTALL.txt
new file mode 100644 (file)
index 0000000..ad33349
--- /dev/null
@@ -0,0 +1,18 @@
+Installation of vym - view your mind
+====================================
+
+Mac OSX:
+
+Drag the vym application to your desktop, or if you have admin rights,
+directly to your Application folder
+
+
+Please check the vym webpage for installation tipps:
+
+    http://www.insilmaril.de/vym
+
+For general questions please contact the vym mailinglist:
+
+    vym-forum@lists.sourceforge.net
+
+
diff --git a/LICENSE.txt b/LICENSE.txt
new file mode 100644 (file)
index 0000000..586634e
--- /dev/null
@@ -0,0 +1,307 @@
+    VYM - View Your Mind
+    Copyright (C) 2004-2016 Uwe Drechsel  
+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License version 2 as published by
+    the Free Software Foundation.
+
+    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 below for more details.
+
+       In addition, as a special exception, Uwe Drechsel
+       gives permission to link the code of this program with the QT 
+       libraries from trolltech.com (or with modified versions of QT that
+       use the same license as QT), and distribute linked combinations
+       including the two. You must obey the GNU General Public License in
+       all respects for all of the code used other than QT. If you modify
+       this file, you may extend this exception to your version of the
+       file, but you are not obligated to do so. If you do not wish to do
+       so, delete this exception statement from your version.
+
+
+       Uwe Drechsel can be contacted at <vym@insilmaril.de>
+
+-----------------------------------------------------------------------------
+
+            GNU GENERAL PUBLIC LICENSE
+                      Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+                           Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users.  This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it.  (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.)  You can apply it to
+your programs, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+  To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+  For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have.  You must make sure that they, too, receive or can get the
+source code.  And you must show them these terms so they know their
+rights.
+
+  We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+  Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software.  If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+  Finally, any free program is threatened constantly by software
+patents.  We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary.  To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+
+                   GNU GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License.  The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language.  (Hereinafter, translation is included without limitation in
+the term "modification".)  Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+  1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+  2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) You must cause the modified files to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    b) You must cause any work that you distribute or publish, that in
+    whole or in part contains or is derived from the Program or any
+    part thereof, to be licensed as a whole at no charge to all third
+    parties under the terms of this License.
+
+    c) If the modified program normally reads commands interactively
+    when run, you must cause it, when started running for such
+    interactive use in the most ordinary way, to print or display an
+    announcement including an appropriate copyright notice and a
+    notice that there is no warranty (or else, saying that you provide
+    a warranty) and that users may redistribute the program under
+    these conditions, and telling the user how to view a copy of this
+    License.  (Exception: if the Program itself is interactive but
+    does not normally print such an announcement, your work based on
+    the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+    a) Accompany it with the complete corresponding machine-readable
+    source code, which must be distributed under the terms of Sections
+    1 and 2 above on a medium customarily used for software interchange; or,
+
+    b) Accompany it with a written offer, valid for at least three
+    years, to give any third party, for a charge no more than your
+    cost of physically performing source distribution, a complete
+    machine-readable copy of the corresponding source code, to be
+    distributed under the terms of Sections 1 and 2 above on a medium
+    customarily used for software interchange; or,
+
+    c) Accompany it with the information you received as to the offer
+    to distribute corresponding source code.  (This alternative is
+    allowed only for noncommercial distribution and only if you
+    received the program in object code or executable form with such
+    an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it.  For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable.  However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+\f
+  4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License.  Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+  5. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Program or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+  6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+  7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+  8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded.  In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+  9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time.  Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation.  If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+  10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission.  For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this.  Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+                           NO WARRANTY
+
+  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+                    END OF TERMS AND CONDITIONS
diff --git a/README.md b/README.md
new file mode 100644 (file)
index 0000000..6334cde
--- /dev/null
+++ b/README.md
@@ -0,0 +1,83 @@
+###VYM - View Your Mind (c) 2004-2017 by Uwe Drechsel###
+
+Documentation
+-------------
+
+* PDF
+
+    The complete documentation of vym is available as PDF document in
+    english and spanish. (The spanish version is not really up to date,
+    translators are welcome). It can be accessed directly from vym via
+    the help section It also can be downloaded from the vym site at
+    Sourceforge:
+
+       https://sourceforge.net/projects/vym/
+
+* Screencasts
+
+    There are several screencasts available on YouTube, which show some
+    feature of vym and how to use them:
+
+       http://www.youtube.com/user/ViewYourMind
+
+
+Download
+--------
+
+The official downloads for all platforms are available at the project
+site:
+
+       https://sourceforge.net/projects/vym/
+
+The latest binaries for Linux (currently mainly openSUSE) are found in the
+Open Build Service project of Uwe Drechsel (aka insilmaril):
+
+    http://download.opensuse.org/repositories/home%3A//insilmaril/
+
+
+
+Installation
+------------
+
+* Binaries
+
+    Installation depends on the platform you use, please check the
+    homepage for details:
+
+       http://www.insilmaril.de/vym
+
+* Compiling
+
+    Compiling vym from scratch is pretty easy, if you have the
+    development packages of the Qt5 toolkit installed. (Check also the
+    homepage above for details):
+
+    qmake
+    make
+    make install
+
+* Testing (without installing!)
+
+    You can also run vym virtually in your webbrowser: vym is available
+    as appliance in SUSE Studio. SUSE Studio is a very easy way to
+    create appliances, which are customized Linux operating systems.
+
+    All you need is to quickly create a free account and search for
+    "vym" by user "insilmaril" in the gallery:
+
+       http://susestudio.com
+
+    The appliance can be downloaded as installable iso image, or run in
+    the testdrive - in your webbrowser! That's a bit slow, but gives you
+    an idea without having to install anything at all on your system.
+
+
+Questions and feedback
+----------------------
+
+Please direct questions to the mailinglist first: 
+
+    vym-forum@lists.sourceforge.net
+
+
+
diff --git a/aboutdialog.cpp b/aboutdialog.cpp
new file mode 100644 (file)
index 0000000..8d3ae05
--- /dev/null
@@ -0,0 +1,251 @@
+#include <QDate>
+#include <QFrame>
+#include <QProcess>
+#include <QVBoxLayout>
+
+#include "aboutdialog.h"
+#include "settings.h"
+
+
+extern Settings settings;
+extern QString iconPath;    // FIXME-4 embed vym logo as ressource?
+extern QString vymVersion;
+extern QString vymBuildDate;
+extern QString vymCodeName;
+
+AboutDialog::AboutDialog( QWidget *parent)
+    : QDialog( parent)
+{
+    mainLayout=new QVBoxLayout( this);
+
+    tabs=new QTabWidget (this);
+    credits=new AboutTextBrowser (parent);
+
+    credits->setHtml( QString(
+    "<center><img src=\"" + iconPath + "vym-128x128.png\"></center>"
+    "<h3><center>VYM - View Your Mind </h3>"
+    "<p align=\"center\"> A tool to put the things you have got in your mind into a map.</p>"
+    "<p align=\"center\"> (c) 2004-%1 by Uwe Drechsel (<a href=\"mailto:vym@InSilmaril.de\">vym@InSilmaril.de</a>)</p>"
+    "<p align=\"center\"> Version " +vymVersion+" - " +vymBuildDate+"</p>"
+    "<p align=\"center\"> " +vymCodeName+"</p>"
+    "<ul>"
+    "<li> Contact</li>"
+       "<ul>"
+           "<li> vym homepage:<br> <a href=\"http://www.InSilmaril.de/vym\">"
+           "http://www.InSilmaril.de/vym</a></li>"
+           "<li> Project homepage on Sourceforge:<br> <a href=\"http://sourceforge.net/projects/vym/\">"
+           "http://sourceforge.net/projects/vym/</a></li>"
+           "<li> Mailinglists are also on Sourceforge:"
+               "<ul>"
+                   "<li>Please ask general questions about vym  on "
+               "<a href=\"mailto:vym-forum@lists.sourceforge.net\">vym-forum</a></li>"
+               "<li>Subscribe/Unsubscribe and archives can be found  "
+               "<a href=\"https://sourceforge.net/mail/?group_id=127802\">here</a></li>"
+               "</ul>"
+       "</ul>"     
+    "<li> Credits " 
+    "<ul>"
+    "<li>Documentation"
+    "  <ul>"
+    "    <li>Peter Adams: documentation proofreading and polishing</li>"
+    "  </ul>"
+    "</li>"
+    "<li>Translation"
+    "  <ul>"
+    "    <li>Brasilian: Amadeu Júnior</li>"
+    "    <li>Chinese (simplified): Moligaloo</li>"
+    "    <li>Chinese (traditional): Wei-Lun Chao </li>"
+    "    <li>Croatian: Damir Brašnić </li>"
+    "    <li>Czech: Pavel Fric</li>"
+    "    <li>French: Marc Sert, Philippe Caillaud and Claude </li>"
+    "    <li>Greek: Yannis Kaskamanidis</li>"
+    "    <li>Interlingua: Giovanni Sora</li>"
+    "    <li>Italian: Giovanni Sora, Seyed Puria Nafisi Azizi </li>"
+    "    <li>Japanese: Tsuren Tsuchiya</li>"
+    "    <li>Russian: Anton Olenev</li>"
+    "    <li>Spanish: <a href=\"http://ieee.udistrital.edu.co/aclibre\">" 
+    "                 ACLibre (Academia y Conocimiento Libre)</a> and David Amian</li>"
+    "  </ul>"
+    "</li>"
+    "<li> Patches"
+    "  <ul>"
+    "    <li>Darren Lissimore: Windows compiler patch </li>"
+    "    <li>Konstantin Goudkov: sort branches</li>"
+    "    <li>Jakob Hilmer: image drag and drop in 1.8.1, &quot;About vym&quot; window patch </li>"
+    "    <li>Edward Wang: adding close tab buttons</li>"
+    "    <li>p0llox (Pierre): various patches for Debian packaging</li>"
+    "  </ul>"
+    "</li>"
+    "<li> Patches in previous vym versions"
+    "  <ul>"
+    "    <li>Łukasz Pietrzak, Scott Dillman and Patrick Spendrin, Andrew Ng, " 
+            "Juha Ruotsalainen and Thomas Kriener: windows patches</li>"
+    "    <li>Thomas Schraitle for the stylesheet"  
+    "        formerly used for XHTML-export and help with XML processing in general</li>"
+    "    <li>Matt from <a href=\"http://www.satbp.com\">www.satbp.com</a>: "
+    "        <a href=\"http://www.taskjuggler.org\">Taskjuggler</a> export</li>"
+    "  </ul>"
+    "</li>"
+    "<li> Packaging"
+    "</li>"
+    "  <ul>"
+    "    <li>Jon Ciesla: Sourceforge file releases</li>"
+    "    <li>Xavier Oswald, Christoph Thielecke, Pierre, and Steffen Joeris: Debian packaging</li>"
+    "  </ul>"
+    "<li> General"
+    "  <ul>"
+    "    <li>CMake setup by Costantino Giuliodori and Patrick Spendrin</li>"
+    "    <li>All the guys at Trolltech (now Digia) for their Qt toolkit</li>"
+    "    <li>All the guys at SUSE Linux for openSUSE Linux and support,"
+    "        e.g. to get Linux running on PowerPC and also Macbooks</li>"
+    "  </ul>"
+    "</li>"
+    "</ul>"
+    "</li>").arg( QDate::currentDate().year() ) );;
+    credits->setFrameStyle( QFrame::Panel | QFrame::Plain );
+    tabs->addTab (credits, tr("Credits","Help->About vym dialog"));
+
+    license=new AboutTextBrowser (parent);
+    license->setText ( QString(
+    "<center>"
+    "<h3>VYM - View Your Mind</h3>"
+    "<p>Copyright (C) 2004-%1 Uwe Drechsel</p>"  
+    "</center>"
+
+    "<p>This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.</p>"
+
+    "<p>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 below for more details.</p>"
+
+    "<p>In addition, as a special exception, Uwe Drechsel gives permission to link the code of this program with the QT libraries from trolltech.com (or with modified versions of QT that use the same license as QT), and distribute linked combinations including the two. You must obey the GNU General Public License in all respects for all of the code used other than QT. If you modify this file, you may extend this exception to your version of the file, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.</p> "
+
+    "<p>Uwe Drechsel can be contacted at <a href=\"mailto:vym@insilmaril.de\">vym@insilmaril.de</a></p>"
+
+    "<hr>"
+
+ "<p align=\"center\">GNU GENERAL PUBLIC LICENSE<br>"
+"Version 2, June 1991</p>"
+
+"<p align=\"center\">Copyright (C) 1989, 1991 Free Software Foundation, Inc.  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</p>"
+     
+"<p align=\"center\"> Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.</p>"
+
+"<p align=\"center\">Preamble</p>"
+
+"<p>The licenses for most software are designed to take away your freedom to share and change it.  By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users.  This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it.  (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.)  You can apply it to your programs, too.</p>"
+
+"<p>When we speak of free software, we are referring to freedom, not price.  Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.</p>"
+
+"<p>  To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights.  These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.</p>"
+
+"<p>  For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have.  You must make sure that they, too, receive or can get the source code.  And you must show them these terms so they know their rights.</p>"
+
+"<p>  We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.</p>"
+
+"<p>  Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software.  If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.</p>"
+
+"<p>  Finally, any free program is threatened constantly by software patents.  We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary.  To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.</p>"
+
+"<p>  The precise terms and conditions for copying, distribution and modification follow.</p>"
+
+"<p align=\"center\">          GNU GENERAL PUBLIC LICENSE</p>"
+"<p align=\"center\">   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION</p>"
+
+"<p>  0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License.  The \"Program\", below, refers to any such program or work, and a \"work based on the Program\" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language.  (Hereinafter, translation is included without limitation in the term \"modification\".)  Each licensee is addressed as \"you\".</p>"
+
+"<p>Activities other than copying, distribution and modification are not covered by this License; they are outside its scope.  The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program).  Whether that is true depends on what the Program does.</p>"
+
+"<p>  1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.</p>"
+
+"<p>You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.</p>"
+
+"<p>  2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:"
+"<ol type=\"a\">"
+    "<li> You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.</li>"
+
+    "<li> You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.</li>"
+
+    "<li> If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License.  (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)</li>"
+"</ol>"
+"</p>"
+
+"<p>These requirements apply to the modified work as a whole.  If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works.  But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.</p>"
+
+"<p>Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.</p>"
+
+"<p>In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.</p>"
+
+"<p>  3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:" "<ol type=\"a\">"
+
+"    <li> Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,</li>"
+
+"    <li> Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,</li>"
+
+"    <li> Accompany it with the information you received as to the offer to distribute corresponding source code.  (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)</li>"
+"</ol></p>"
+
+"<p>The source code for a work means the preferred form of the work for making modifications to it.  For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable.  However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.</p>"
+
+"<p>If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.</p>"
+
+"<p>  4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License.  Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License.  However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.</p>"
+
+"<p>  5. You are not required to accept this License, since you have not signed it.  However, nothing else grants you permission to modify or distribute the Program or its derivative works.  These actions are prohibited by law if you do not accept this License.  Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.</p>"
+
+"<p>  6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions.  You may not impose any further restrictions on the recipients' exercise of the rights granted herein.  You are not responsible for enforcing compliance by third parties to this License.</p>"
+
+"<p>  7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License.  If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all.  For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.</p>"
+
+"<p>If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.</p>"
+
+"<p>It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices.  Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.</p>"
+
+"<p>This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.</p>"
+
+"<p>  8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded.  In such case, this License incorporates the limitation as if written in the body of this License.</p>"
+
+"<p>  9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time.  Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.</p>"
+
+"<p>Each version is given a distinguishing version number.  If the Program specifies a version number of this License which applies to it and \"any later version\", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation.  If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.</p>"
+
+"<p>  10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission.  For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this.  Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.</p>"
+
+"<p align=\"center\">NO WARRANTY</p>"
+
+"<p>  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.</p>"
+
+"<p>  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.</p>"
+
+"<p align=\"center\">END OF TERMS AND CONDITIONS</p>").arg( QDate::currentDate().year() ) );
+
+    credits->setFrameStyle( QFrame::Panel | QFrame::Plain );
+    tabs->addTab (license, tr("License","Help->About vym dialog"));
+
+    mainLayout->addWidget (tabs);
+
+    okbutton =new QPushButton (this);
+    okbutton->setText (tr("Ok","Ok Button"));
+    okbutton->setMaximumSize (QSize (50,30));
+    okbutton->setAutoDefault (true);
+    mainLayout->addWidget( okbutton); 
+
+    connect( okbutton, SIGNAL( clicked() ), this, SLOT( accept() ) );
+}
+
+AboutTextBrowser::AboutTextBrowser(QWidget *parent)
+    : QTextBrowser(parent)
+{
+}
+
+void AboutTextBrowser::setSource(const QUrl &url )
+{
+    QProcess *proc= new QProcess ();
+    proc->start( settings.value("/system/readerURL").toString(),QStringList ()<<url.toString());
+    //if (!proc->waitForStarted() &&mainWindow->settingsURL() ) setSource(url);
+    if (!proc->waitForStarted() )
+       QMessageBox::warning(0, 
+       tr("Warning","About window"),
+       tr("Couldn't find a viewer to open %1.\n","About window").arg(url.toString())+
+       tr("Please use Settings->")+tr("Set application to open an URL..."));
+
+}
diff --git a/aboutdialog.h b/aboutdialog.h
new file mode 100644 (file)
index 0000000..c5a0dfd
--- /dev/null
@@ -0,0 +1,72 @@
+#ifndef ABOUTDIALOG_H
+#define ABOUTDIALOG_H
+
+#include <QTabWidget>
+#include <QTextBrowser>
+#include <QLayout>
+#include <QDialog>
+#include <QPushButton>
+#include <QString>
+#include <QMessageBox>
+
+class AboutTextBrowser;
+
+/*! \mainpage View Your Mind - Development documentation
+  \section intro_sec Introduction
+VYM  (View Your Mind) is a tool to generate and manipulate maps which
+show your thoughts. Such maps can help you to improve your creativity
+and effectivity. You can use them for time management, to organize
+tasks, to get an overview over complex contexts, to sort your ideas
+etc. Some people even think it is fun to work with such maps...
+
+  
+  \section install_sec Installation
+
+  Please look at the INSTALL.TXT file 
+  \section doc_sec Documentation
+
+  The complete documentation is available as a PDF file. Please look
+  into the doc subdirectory.
+
+*/
+
+
+
+/*! \brief Dialog showing authors, version and license
+*/
+
+
+class AboutDialog :public QDialog
+{
+    Q_OBJECT
+
+public:
+    AboutDialog(QWidget* parent = 0);
+
+private:
+    QTabWidget *tabs;
+    AboutTextBrowser *credits;
+    AboutTextBrowser *license;
+
+    QLayout *mainLayout;
+    QLayout *topLayout;
+    QLayout *bottomLayout;
+    QPushButton *okbutton;
+    
+};
+
+/*! \brief Overloaded QTextBrowser which is used in AboutDialog
+*/
+class AboutTextBrowser : public QTextBrowser
+{
+  Q_OBJECT;
+ public:
+  AboutTextBrowser(QWidget *parent);
+ public slots:
+    virtual void setSource(const QUrl &url);
+};
+
+#endif
diff --git a/adaptormodel.cpp b/adaptormodel.cpp
new file mode 100644 (file)
index 0000000..27ddd8f
--- /dev/null
@@ -0,0 +1,68 @@
+#include "adaptormodel.h"
+#include <QtCore/QMetaObject>
+#include <QtCore/QString>
+#include <QtCore/QVariant>
+
+#include "branchitem.h"
+#include "mainwindow.h"
+#include "vymmodel.h"
+
+extern QString vymInstanceName;
+extern Main *mainWindow;
+
+AdaptorModel::AdaptorModel(QObject *obj)
+         : QDBusAbstractAdaptor(obj)
+{
+    model=static_cast <VymModel*> (obj);
+    setAutoRelaySignals (true);
+}
+
+void AdaptorModel::setModel(VymModel *vm)
+{
+    model=vm;
+}
+
+QString AdaptorModel::caption()
+{
+    return m_caption;
+}
+
+void AdaptorModel::setCaption (const QString &newCaption)
+{
+    m_caption=newCaption;
+}
+
+QDBusVariant AdaptorModel::getCurrentModelID()
+{
+    return QDBusVariant (mainWindow->currentModelID());
+}
+
+QDBusVariant AdaptorModel::branchCount()
+{
+    BranchItem *selbi=model->getSelectedBranch();
+    if (selbi) 
+       return QDBusVariant (selbi->branchCount() );
+    else       
+       return QDBusVariant (-1 );
+}
+
+QDBusVariant AdaptorModel::execute (const QString &s)
+{
+    return QDBusVariant (model->execute (s));
+}
+
+QDBusVariant AdaptorModel::errorLevel()
+{
+    return QDBusVariant (model->parser.errorLevel() );
+}
+
+QDBusVariant AdaptorModel::errorDescription()
+{
+    return QDBusVariant (model->parser.errorDescription() );
+}
+
+QDBusVariant AdaptorModel::listCommands ()
+{
+    return QDBusVariant (model->parser.getCommands().join(",") );
+}
+
diff --git a/adaptormodel.h b/adaptormodel.h
new file mode 100644 (file)
index 0000000..eeb61e6
--- /dev/null
@@ -0,0 +1,39 @@
+#ifndef ADAPTORModel_H
+#define ADAPTORModel_H
+
+#include <QtCore/QObject>
+#include <QtDBus/QtDBus>
+
+class VymModel;
+class QString;
+
+class AdaptorModel: public QDBusAbstractAdaptor
+{
+    Q_OBJECT
+    Q_CLASSINFO("D-Bus Interface", "org.insilmaril.vym.model.adaptor")
+
+private:
+       VymModel *model;
+
+public:
+    AdaptorModel(QObject *obj);
+    void setModel (VymModel *vm);
+
+public: // PROPERTIES
+    QString m_caption;
+    QString caption();
+    void setCaption(const QString &newCaption);
+
+public slots: // METHODS
+    QDBusVariant getCurrentModelID();
+    QDBusVariant branchCount();
+    QDBusVariant execute (const QString &s);
+    QDBusVariant errorLevel();
+    QDBusVariant errorDescription();
+    QDBusVariant listCommands();
+
+Q_SIGNALS: // SIGNALS
+    void crashed();
+};
+
+#endif
diff --git a/adaptorvym.cpp b/adaptorvym.cpp
new file mode 100644 (file)
index 0000000..5bff85c
--- /dev/null
@@ -0,0 +1,41 @@
+#include <QtCore/QMetaObject>
+#include <QtCore/QString>
+#include <QtCore/QVariant>
+
+#include "adaptorvym.h"
+#include "mainwindow.h"
+
+extern QString vymInstanceName;
+extern QString vymVersion;
+extern Main *mainWindow;
+
+AdaptorVym::AdaptorVym(QObject *obj)
+         : QDBusAbstractAdaptor(obj)
+{
+    setAutoRelaySignals (true);
+}
+
+QDBusVariant AdaptorVym::modelCount()
+{
+    return QDBusVariant (mainWindow->modelCount() );
+}
+
+void AdaptorVym::gotoModel(const int &n)
+{
+    mainWindow->gotoWindow (n);
+}
+
+QDBusVariant AdaptorVym::getInstanceName()
+{
+    return QDBusVariant (vymInstanceName);
+}
+
+QDBusVariant AdaptorVym::getVersion()
+{
+    return QDBusVariant (vymVersion);
+}
+
+QDBusVariant AdaptorVym::execute(const QString &s)
+{
+    return QDBusVariant (mainWindow->execute (s) );
+}
diff --git a/adaptorvym.h b/adaptorvym.h
new file mode 100644 (file)
index 0000000..6e867f3
--- /dev/null
@@ -0,0 +1,28 @@
+#ifndef ADAPTORVYM_H
+#define ADAPTORVYM_H
+
+#include <QtCore/QObject>
+#include <QtDBus/QtDBus>
+
+class MainWindow;
+
+class AdaptorVym: public QDBusAbstractAdaptor
+{
+    Q_OBJECT
+    Q_CLASSINFO("D-Bus Interface", "org.insilmaril.vym.main.adaptor")
+
+public:
+    AdaptorVym (QObject *obj);
+
+public slots: // METHODS
+    QDBusVariant modelCount ();
+    void gotoModel (const int &n);
+    QDBusVariant getInstanceName();
+    QDBusVariant getVersion();
+    QDBusVariant execute ( const QString &s);
+
+Q_SIGNALS: // SIGNALS
+    void crashed();
+};
+
+#endif
diff --git a/animpoint.cpp b/animpoint.cpp
new file mode 100644 (file)
index 0000000..530b459
--- /dev/null
@@ -0,0 +1,140 @@
+#include "animpoint.h"
+
+#include <math.h>
+
+AnimPoint::AnimPoint()
+{
+    init();
+}
+
+void AnimPoint::operator= ( const AnimPoint & other )
+{
+    copy (other);
+}
+
+void AnimPoint::operator= ( const QPointF & other )
+{
+    init();
+    setX (other.x() );
+    setY (other.x() );
+}
+
+bool AnimPoint::operator== ( const QPointF& other )
+{
+    QPointF p( x(),y());
+    return p == other;
+}
+
+bool AnimPoint::operator== ( AnimPoint  other )
+{
+    if (rx() != other.rx() ) return false;
+    if (ry() != other.ry() ) return false;
+    if (startPos != other.startPos) return false;
+    if (destPos  != other.destPos) return false;
+    if (animated != other.animated ) return false;
+
+    return true;
+}
+
+void AnimPoint::init ()
+{
+    animated=false;
+    n=0;
+    startPos=QPointF(0,0);
+    destPos=QPointF(0,0);
+    vector=QPointF(0,0);
+    animTicks=10;
+}
+
+void AnimPoint::copy (AnimPoint other)
+{
+    setX (other.x() );
+    setY (other.x() );
+    startPos=other.startPos;
+    destPos=other.destPos;
+    vector=other.vector;
+    animated=other.animated;
+    n=other.n;
+    animTicks=other.animTicks;
+}
+
+void AnimPoint::setStart(const QPointF &p)
+{
+    startPos=p;
+    initVector();
+}
+
+QPointF AnimPoint::getStart()
+{
+    return startPos;
+}
+
+
+void AnimPoint::setDest(const QPointF &p)
+{
+    destPos=p;
+    initVector();
+}
+
+QPointF AnimPoint::getDest()
+{
+    return destPos;
+}
+
+void AnimPoint::setTicks (const uint &t)
+{
+    animTicks=t;
+}
+
+uint AnimPoint::getTicks()
+{
+    return (uint) animTicks;
+}
+
+void AnimPoint::setAnimated(bool b)
+{
+    animated=b;
+    if (b) n=0;
+}
+
+bool AnimPoint::isAnimated()
+{
+    return animated;
+}
+
+bool AnimPoint::animate()
+{
+    if (!animated) return false;
+    n++;
+    if (n>animTicks)
+    {
+       vector=QPointF(0,0);
+       animated=false;
+       setX (destPos.x() );
+       setY (destPos.y() );
+       return false;
+    }
+
+    // Some math to slow down the movement in the end
+    qreal f=1-n/(qreal)animTicks;
+    qreal ff=1-f*f*f;
+    setX (startPos.x() + vector.x()*ff );
+    setY (startPos.y() + vector.y()*ff );
+
+    return animated;
+}
+
+void AnimPoint::stop()
+{
+    animated=false;
+    setX (destPos.x());
+    setY (destPos.y());
+}
+
+void AnimPoint::initVector()
+{
+    vector.setX (destPos.x()-startPos.x() );
+    vector.setY (destPos.y()-startPos.y() );
+}
+
+
diff --git a/animpoint.h b/animpoint.h
new file mode 100644 (file)
index 0000000..a7c6435
--- /dev/null
@@ -0,0 +1,39 @@
+#ifndef ANIMPOINT_H
+#define ANIMPOINT_H
+
+#include <QPointF>
+
+class AnimPoint: public QPointF
+{
+public:
+    AnimPoint();
+    void operator= ( const AnimPoint & );
+    void operator= ( const QPointF & );
+    bool operator== ( const QPointF & );
+    bool operator== ( AnimPoint  );
+    void init();
+    void copy(AnimPoint other);
+    void setStart (const QPointF &);
+    QPointF getStart();
+    void setDest (const QPointF &);
+    QPointF getDest();
+    void setTicks (const uint &t);
+    uint getTicks();
+    void setAnimated(bool);
+    bool isAnimated ();
+    bool animate();
+    void stop();
+
+private:
+    void initVector();
+
+    QPointF startPos;
+    QPointF destPos;
+    QPointF vector;
+    qreal n;
+    uint animTicks;
+    bool animated;
+
+};
+
+#endif
diff --git a/arrowobj.cpp b/arrowobj.cpp
new file mode 100644 (file)
index 0000000..67f6c0e
--- /dev/null
@@ -0,0 +1,218 @@
+#include "arrowobj.h"
+#include "misc.h"
+
+#include <QDebug>
+#include <QGraphicsScene>
+
+/////////////////////////////////////////////////////////////////
+// ArrowObj
+/////////////////////////////////////////////////////////////////
+
+ArrowObj::ArrowObj (MapObj* parent):MapObj(parent)
+{
+    init();
+}
+
+ArrowObj::~ArrowObj ()
+{
+    delete arrowBegin;
+    delete arrowEnd;
+    delete line;
+}
+
+void ArrowObj::init () 
+{
+    QPen pen;
+
+    pen.setStyle (Qt::SolidLine);
+    arrowBegin=scene()->addPolygon (QPolygonF(), pen );        
+    arrowBegin->setZValue (dZ_XLINK);
+    arrowEnd=scene()->addPolygon (QPolygonF(), pen );  
+    arrowEnd->setZValue (dZ_XLINK);
+
+    line=scene()->addLine ( QLineF(), pen );   
+    line->setZValue (dZ_XLINK);
+
+    arrowSize=4;
+    useFixedLength=false;
+    setStyleBegin (None);
+    setStyleEnd   (HeadFull);
+}
+
+void ArrowObj::setPen (QPen p)
+{
+    pen = p;
+    line->setPen( pen);
+
+    // end shall have same style as xlink
+    QPen pen_solid = pen;
+    pen_solid.setStyle (Qt::SolidLine);
+    arrowBegin->setPen( pen_solid );
+    arrowEnd->setPen( pen_solid );
+
+    setStyleBegin( styleBegin );
+    setStyleEnd( styleEnd );
+}
+
+QPen ArrowObj::getPen()
+{
+    return pen;
+}
+
+void ArrowObj::setArrowSize(qreal r)
+{
+    arrowSize = r;
+}
+
+qreal ArrowObj::getArrowSize()
+{
+    return arrowSize;
+}
+
+void ArrowObj::setUseFixedLength( bool b)
+{
+    useFixedLength = b;
+}
+
+bool ArrowObj::getUseFixedLength()
+{
+    return useFixedLength;
+}
+
+void ArrowObj::setFixedLength(int i)
+{
+    fixedLength = i;
+}
+
+int ArrowObj::getFixedLength()
+{
+    return fixedLength;
+}
+
+void ArrowObj::show()
+{
+    setVisibility( true );
+}
+
+void ArrowObj::hide()
+{
+    setVisibility( false );
+}
+
+void ArrowObj::setVisibility (bool b)
+{
+    MapObj::setVisibility (b);
+    if (b)
+    {
+        if (styleEnd != None)
+            arrowEnd->show();
+        else
+            arrowEnd->hide();
+        if (useFixedLength && fixedLength == 0)
+            line->hide();
+        else
+            line->show();
+    }
+    else
+    {
+       arrowEnd->hide();
+       line->hide();
+    }
+}
+
+void ArrowObj::setEndPoint (QPointF p)
+{
+    endPoint = p;
+
+    line->setLine(absPos.x(),absPos.y(), p.x(), p.y());
+    arrowEnd->setPos(absPos);
+
+    qreal a = getAngle( endPoint - absPos );
+    arrowEnd->setRotation( -a / 6.28 * 360);
+    arrowEnd->setPos( endPoint );
+}
+
+QPointF ArrowObj::getEndPoint ()
+{
+    return endPoint;
+}
+
+void ArrowObj::setStyleBegin (const QString &s) 
+{
+    if (s=="HeadFull")
+        setStyleBegin( ArrowObj::HeadFull );
+    else
+        setStyleBegin( ArrowObj::None );
+}
+
+void ArrowObj::setStyleBegin (OrnamentStyle os) 
+{
+    styleBegin = os;
+    switch (styleBegin) 
+    {
+        case HeadFull:
+            arrowEnd->setPolygon( getArrowHead() );
+            arrowBegin->setBrush( pen.color() ); 
+            break;
+        case Foot: break;
+        case None: 
+            arrowBegin->setPolygon( QPolygonF() );
+            break;
+    }
+}
+
+ArrowObj::OrnamentStyle ArrowObj::getStyleBegin()
+{
+    return styleBegin;
+}
+
+void ArrowObj::setStyleEnd (const QString &s) 
+{
+    if (s=="HeadFull")
+        setStyleEnd( ArrowObj::HeadFull );
+    else
+        setStyleEnd( ArrowObj::None );
+}
+
+void ArrowObj::setStyleEnd (OrnamentStyle os)
+{
+    styleEnd = os;
+    switch (styleEnd) 
+    {
+        case HeadFull:
+            arrowEnd->setPolygon( getArrowHead() );
+            arrowEnd->setBrush( pen.color() ); 
+            break;
+        case Foot: break;
+        case None: 
+            arrowEnd->setPolygon( QPolygonF() );
+            break;
+    }
+}
+
+QPolygonF ArrowObj::getArrowHead()
+{
+    QPointF a,b,c;
+    QPolygonF pa;
+    b = a + QPointF( -arrowSize *2, -arrowSize);
+    c = a + QPointF( -arrowSize *2, +arrowSize);
+    pa << a << b << c;
+    return pa;
+}
+
+ArrowObj::OrnamentStyle ArrowObj::getStyleEnd()
+{
+    return styleEnd;
+}
+
+QString ArrowObj::styleToString(const OrnamentStyle &os)
+{
+    switch (os)
+    {
+        case HeadFull: return "HeadFull"; break;
+        case None: return "None"; break;
+        default: qWarning()<<"ArrowObj::styleToString unknown style "<<os;
+    }
+    return "Unknown";
+}
+
diff --git a/arrowobj.h b/arrowobj.h
new file mode 100644 (file)
index 0000000..fd03952
--- /dev/null
@@ -0,0 +1,56 @@
+#ifndef ARROWOBJ_H
+#define ARROWOBJ_H
+
+#include "mapobj.h"
+
+#include <QPen>
+
+/*! \brief arrows are used to indicate partially hidden ends of xlinks and
+    also the ends of xlinks. 
+*/
+
+/////////////////////////////////////////////////////////////////////////////
+
+class ArrowObj:public MapObj {
+public:
+    enum OrnamentStyle {None, HeadFull, Foot};
+    ArrowObj (MapObj* parent);
+    virtual ~ArrowObj ();
+    virtual void init ();
+    void setPen( QPen pen );
+    QPen getPen();
+    void setArrowSize(qreal r);
+    qreal getArrowSize();
+    void setFixedLength(int i);
+    int  getFixedLength();
+    void setUseFixedLength(bool b);
+    bool getUseFixedLength();
+    void show();
+    void hide();
+    void setVisibility (bool b);
+    void setEndPoint (QPointF p);
+    QPointF getEndPoint ();
+    void setStyleBegin (OrnamentStyle os);
+    void setStyleBegin (const QString &s);
+    OrnamentStyle getStyleBegin ();
+    void setStyleEnd (const QString &s);
+    void setStyleEnd (OrnamentStyle os);
+    OrnamentStyle getStyleEnd ();
+    static QString styleToString(const OrnamentStyle &os);
+
+private:
+    QPolygonF getArrowHead();
+    QPen pen;
+    qreal arrowSize;
+    int fixedLength;
+    bool useFixedLength;
+    QGraphicsPolygonItem *arrowEnd;        
+    QGraphicsPolygonItem *arrowBegin;      
+    QGraphicsLineItem *line;
+    QPointF endPoint;
+
+    OrnamentStyle styleBegin;
+    OrnamentStyle styleEnd;
+};
+
+#endif
diff --git a/attribute.cpp b/attribute.cpp
new file mode 100644 (file)
index 0000000..95edd99
--- /dev/null
@@ -0,0 +1,296 @@
+#include <iostream>
+#include <QDebug>
+
+#include "attribute.h"
+
+using namespace std;
+
+extern bool debug;
+
+Attribute::Attribute()
+{
+    table=NULL;
+    definition=NULL;
+}
+
+void Attribute::setKey (const QString &k, const AttributeType &t)
+{
+    if (!table)
+    {
+       qWarning ()<< QString("Attribute::setKey (%1)  No table defined!\n").arg(k).toUtf8();
+       return; 
+    }
+    
+    if (!definition)
+    {
+       definition=table->getDef(k);
+       if (!definition)
+       {
+           table->addKey (k,t);
+           return; 
+       }
+    }  
+    qWarning ()<< QString("Attribute::setKey (%1)  attribute already defined!\n").arg(k).toUtf8();
+}
+
+QString Attribute::getKey ()
+{
+    if (!table)
+    {
+       qWarning ("Attribute::getKey ()  No table defined!");
+       return QString();   
+    }
+    if (!definition)
+    {
+       qWarning ("Attribute::getKey ()  No attribute defined!");
+       return QString ();  
+    }  
+    return definition->getKey();
+}
+
+void Attribute::setValue(const QString &v)
+{
+    if (!table)
+    {
+       qWarning ()<<QString ("Attribute::setValue (%1)  No table defined!").arg(v);
+       return; 
+    }
+    if (!definition)
+    {
+       qWarning ()<<QString ("Attribute::setValue (%1)  No attribute defined!").arg(v);
+       return; 
+    }  
+    definition->setValue (v);
+}
+
+QVariant Attribute::getValue()
+{
+    if (!table)
+    {
+       qWarning ("Attribute::getValue  No table defined!");
+       return QString();   
+    }
+    if (!definition)
+    {
+       qWarning()<<"Attribute::getValue  No attribute defined!";
+       return QString();   
+    }  
+    QVariant v= definition->getValue();
+    return v;
+}
+
+void Attribute::setType (const AttributeType &t)
+{
+    if (!table)
+    {
+       qWarning ()<<"Attribute::setType  No table defined!";
+       return;
+    }
+    if (!definition)
+    {
+       qWarning()<<"Attribute::setType  No attribute defined!";
+       return; 
+    }  
+    definition->setType (t);
+}
+
+AttributeType Attribute::getType()
+{
+    if (!table)
+    {
+       qWarning ()<<"Attribute::getType  No table defined!";
+       return Undefined;   
+    }
+    if (!definition)
+    {
+       qWarning ()<<"Attribute::getType  No attribute defined!";
+       return Undefined;   
+    }  
+    return definition->getType();
+}
+
+QString Attribute::getTypeString()
+{
+    if (!table)
+    {
+       qWarning ()<<"Attribute::getTypeString  No table defined!";
+       return "Undefined"; 
+    }
+    if (!definition)
+    {
+       qWarning ()<<"Attribute::getTypeString  No attribute defined!";
+       return "Undefined"; 
+    }  
+    return definition->getTypeString();
+}
+
+void Attribute::setTable (AttributeTable *at)
+{
+    if (at)
+       table=at;
+     else
+       qWarning ()<<"Attribute::setTable  table==NULL";
+    
+}
+
+AttributeTable* Attribute::getTable()
+{
+    return table;
+}
+
+QString Attribute::getDataXML()
+{
+    QString a=beginElement ("attribute");
+    a+=attribut ("key",getKey());
+    a+=attribut ("value",getValue().toString() );
+    a+=attribut ("type",getTypeString () );
+    return a;
+}
+
+
+///////////////////////////////////////////////////////////////
+AttributeDef::AttributeDef()
+{
+}
+
+AttributeDef::~AttributeDef()
+{
+}
+
+void AttributeDef::setType (const AttributeType &t)
+{
+    type=t;
+}
+
+AttributeType AttributeDef::getType ()
+{
+    return type;
+}
+
+QString AttributeDef::getTypeString ()
+{
+    if (type==StringList)
+       return "StringList";
+    else if (type==FreeString)
+       return "FreeString";
+    else if (type==UniqueString)
+       return "UniqueString";
+    return "Undefined";
+}
+
+void AttributeDef::setKey (const QString &k)
+{
+    key=k;
+}
+
+void AttributeDef::setValue (const QString &)
+{
+}
+
+void AttributeDef::setValue (const QVariant &v)
+{
+    if (type==Undefined)
+       qWarning ()<<"AttributeDef::setValue  No type defined!";
+    else if (type==StringList)
+       value=v;
+    else if (type==UniqueString)
+       value=v;
+    else
+       qWarning ()<<"AttributeDef::setValue Unknown type???";
+       
+}
+
+QVariant AttributeDef::getValue ()
+{
+    return QVariant ();
+}
+
+QString AttributeDef::getKey ()
+{
+    return key;
+}
+
+///////////////////////////////////////////////////////////////
+AttributeTable::AttributeTable()
+{
+    typeList
+       << "Undefined"
+       << "IntList"
+       << "FreeInt"
+       << "StringList"
+       << "FreeString"
+       << "UniqueString";
+}
+
+AttributeTable::~AttributeTable()
+{
+    clear();
+}
+
+void AttributeTable::clear ()
+{
+    attdefs.clear();
+}
+
+AttributeDef* AttributeTable::addKey (const QString &k, const AttributeType &t)
+{
+    for (int i=0; i<attdefs.count();++i)
+    {
+       if (attdefs.at(i)->getKey()==k )
+       {
+           qWarning () << QString ("AttributeTable::addKey (%1) already in table\n").arg(k).toUtf8();
+           return NULL;
+       }
+    }
+    AttributeDef *ad=new AttributeDef;
+    ad->setKey (k);
+    ad->setType (t);
+    attdefs.append (ad);
+    return ad;
+}
+
+void AttributeTable::removeKey (const QString &k)
+{
+    for (int i=0; i<attdefs.count();++i)
+    {
+       if (attdefs.at(i)->getKey()==k )
+       {
+           
+           delete (attdefs.at(i));
+           attdefs.removeAt (i);
+           return ;
+       }
+    }
+    qWarning () << QString ("AttributeTable::removeKey (%1) key not in table\n").arg(k).toUtf8();
+}
+
+AttributeDef* AttributeTable::getDef(const QString &key)
+{
+    for (int i=0; i<attdefs.count();++i)
+       if (attdefs.at(i)->getKey()==key ) return attdefs.at(i);
+    qWarning () << QString ("AttributeTable::getDef (%1) key not in table\n").arg(key).toUtf8();
+    return NULL;    
+}
+
+int AttributeTable::countKeys()
+{
+    return attdefs.count();
+}
+
+QStringList AttributeTable::getKeys ()
+{
+    QStringList kl;
+    for (int i=0; i<attdefs.count();i++)
+       kl.append (attdefs.at(i)->getKey());
+    return kl;
+}
+
+QStringList AttributeTable::getTypes ()
+{
+    return typeList;
+}
+
+QString AttributeTable::getDataXML()
+{
+    return valueElement ("attributeList","key","value");
+}
diff --git a/attribute.h b/attribute.h
new file mode 100644 (file)
index 0000000..636fee3
--- /dev/null
@@ -0,0 +1,93 @@
+#ifndef ATTRIBUTE_H
+#define ATTRIBUTE_H
+
+#include <QStringList>
+#include <QVariant>
+
+#include "xmlobj.h"
+
+class AttributeTable;  //FIXME-3 remove from CVS
+class AttributeDef;    //FIXME-3 remove from CVS
+
+enum AttributeType {
+    Undefined, //!< Undefined type
+    IntList,   //!< Free integer
+    FreeInt,   //!< Free integer
+    StringList, //!< List of strings, one can be attribute value
+    FreeString,        //!< Any string can be attribute value, not unique
+    UniqueString//!< UniqueString, e.g. for IDs
+};
+
+/*! \brief A key and a value 
+    The data itself is stored in Attribute Definitions (AttributeDef). 
+    A list of these tables AttributeTable is maintained for every MapEditor.
+*/
+class Attribute:public XMLObj {
+public:
+    Attribute();
+    void setKey (const QString &k, const AttributeType &t);
+    QString getKey ();
+    void setValue (const QString &v);
+    QVariant getValue ();
+    void setType (const AttributeType &t);
+    AttributeType getType ();
+    QString getTypeString ();
+    void setTable (AttributeTable *at);
+    AttributeTable* getTable();
+    QString getDataXML();
+protected:
+    AttributeTable *table;
+    AttributeDef *definition;
+    QString freeString;            //!< String value for type FreeString
+};
+
+
+/*! \brief 
+    Attribute definition, defines possible values and type of attribute.
+*/
+class AttributeDef {
+public:
+    AttributeDef();
+    ~AttributeDef();
+    void setType (const AttributeType &t);
+    AttributeType getType();
+    QString getTypeString ();
+    void setKey (const QString &k);
+    QString getKey ();
+    void setValue (const QString &v);
+    void setValue (const QVariant &v);
+    QVariant getValue ();
+private:
+    QString key;
+    AttributeType type;
+
+    QVariant value;            //!< value (except FreeString, FreeInt ...
+};
+
+/*! \brief A table containing a list of keys and each of these keys has
+   a list of default values. The keys and the values for each key are
+   unique.
+*/
+
+class AttributeTable:public XMLObj{
+public:
+    AttributeTable();
+    ~AttributeTable();
+    void clear();
+    AttributeDef* addKey (const QString &k, const AttributeType &t);   //!< Adds a key to the table
+    void removeKey (const QString &k); //!< Removes key and its default values
+    AttributeDef* getDef(const QString &k); //!< Get defintion of attribute
+    int countKeys();                   //!< Return number of keys
+    QStringList getKeys ();
+    QStringList getTypes();
+    QString getDataXML();
+
+protected:
+    QList <AttributeDef*> attdefs;
+    QStringList typeList;
+};
+
+
+
+#endif
+
diff --git a/attributedelegate.cpp b/attributedelegate.cpp
new file mode 100644 (file)
index 0000000..bd807a7
--- /dev/null
@@ -0,0 +1,138 @@
+#include <QtGui>
+
+#include "attributedelegate.h"
+#include <iostream>
+
+using namespace::std;
+
+AttributeDelegate::AttributeDelegate(QObject *parent)
+    : QItemDelegate(parent)
+{
+}
+
+QWidget *AttributeDelegate::createEditor(QWidget *parent,
+    const QStyleOptionViewItem &/* option */,
+    const QModelIndex & index ) const
+{
+    int col=index.column();
+    int row=index.row();
+    
+    if (col==0 && row==index.model()->rowCount() -1 )
+    {
+       //We are editing a new attribute, starting with attribute name
+       QComboBox *editor = new QComboBox(parent);
+       editor->insertItems (0,attributeTable->getKeys());
+       return editor;
+    }
+    if (col==1 && row==index.model()->rowCount() -1 )
+    {
+       qDebug()<< "Edit value now...";
+       //We are editing a new attribute, starting with attribute name
+       QComboBox *editor = new QComboBox(parent);
+       editor->insertItems (0,attributeTable->getKeys());
+       return editor;
+
+    }
+
+    // Is there already an atttribute defined or 
+    // do we need to create a new one?
+
+    QVariant var=index.model()->data(index.model()->index(row,2,QModelIndex()));
+    QString typeName=var.toString();
+    qDebug()<< "AttrDel::createEditor type="<<qPrintable (typeName);
+
+    if (typeName=="IntList")
+    {
+       QSpinBox *editor = new QSpinBox(parent);
+       editor->setMinimum(0);
+       editor->setMaximum(5);
+       return editor;
+    } else if (typeName=="FreeInt")
+    {
+       QSpinBox *editor = new QSpinBox(parent);
+       editor->setMinimum(0);
+       editor->setMaximum(100);
+       return editor;
+    } else if (typeName=="FreeString")
+    {
+       QComboBox *editor = new QComboBox(parent);
+       return editor;
+    } else if (typeName=="StringList")
+    {
+       QComboBox *editor = new QComboBox(parent);
+       return editor;
+    } 
+
+    return NULL;
+}
+
+void AttributeDelegate::setEditorData(QWidget *editor,
+                                    const QModelIndex &index) const
+{
+    QVariant value= index.model()->data(index, Qt::DisplayRole);
+    switch (value.type())
+    {
+       case QVariant::Int:
+       {
+           int value = index.model()->data(index, Qt::DisplayRole).toInt();
+           QSpinBox *spinBox = static_cast<QSpinBox*>(editor);
+           spinBox->setValue(value);
+           break;
+       }   
+       /*
+       {
+           QString value = index.model()->data(index, Qt::DisplayRole).toString();
+           QLineEdit *le= static_cast<QLineEdit*>(editor);
+           le->setText(value);
+           break;
+       }
+       */
+       case QVariant::String:
+       {
+           QComboBox *cb= static_cast<QComboBox*>(editor);
+           QStringList sl;
+           sl<< index.model()->data(index, Qt::DisplayRole).toString();
+           cb->insertStringList (sl);
+           break;
+       }
+       default: 
+           break;
+    }      
+}
+
+void AttributeDelegate::setModelData(QWidget *editor, QAbstractItemModel *model,
+                                   const QModelIndex &index) const
+{
+    QVariant value= index.model()->data(index, Qt::DisplayRole);
+    switch (value.type())
+    {
+       case QVariant::Int:
+       {
+           QSpinBox *spinBox = static_cast<QSpinBox*>(editor);
+           spinBox->interpretText();
+           model->setData(index, spinBox->value(), Qt::EditRole);
+           break;
+       }   
+       case QVariant::String:
+       {
+           QComboBox *cb = static_cast<QComboBox*>(editor);
+           model->setData(index, cb->currentText(), Qt::EditRole);
+           break;
+       }
+       default:
+           break;
+    }      
+
+}
+
+void AttributeDelegate::updateEditorGeometry(QWidget *editor,
+    const QStyleOptionViewItem &option, const QModelIndex &/* index */) const
+{
+    editor->setGeometry(option.rect);
+}
+
+void AttributeDelegate::setAttributeTable (AttributeTable *table)
+{
+    attributeTable=table;
+}
+
diff --git a/attributedelegate.h b/attributedelegate.h
new file mode 100644 (file)
index 0000000..5b15382
--- /dev/null
@@ -0,0 +1,37 @@
+
+#ifndef ATTRIBUTEDELEGATE_H
+#define ATTRIBUTEDELEGATE_H
+
+#include <QItemDelegate>
+#include <QModelIndex>
+#include <QObject>
+#include <QSize>
+#include <QSpinBox>
+#include <QLineEdit>
+
+#include "attribute.h"
+
+class AttributeDelegate : public QItemDelegate
+{
+    Q_OBJECT
+
+enum EditorType {Undefined,SpinBox,LineEdit,ComboBox};
+
+public:
+    AttributeDelegate(QObject *parent = 0);
+
+    QWidget *createEditor(QWidget *parent, const QStyleOptionViewItem &option,
+                          const QModelIndex &index) const;
+
+    void setEditorData(QWidget *editor, const QModelIndex &index) const ;
+    void setModelData(QWidget *editor, QAbstractItemModel *model,
+                      const QModelIndex &index) const ;
+
+    void updateEditorGeometry(QWidget *editor,
+    const QStyleOptionViewItem &option, const QModelIndex &index) const;
+    void setAttributeTable(AttributeTable *table);
+private:
+    AttributeTable *attributeTable;
+};
+
+#endif
diff --git a/attributedialog.cpp b/attributedialog.cpp
new file mode 100644 (file)
index 0000000..c7bd614
--- /dev/null
@@ -0,0 +1,118 @@
+#include "attributedialog.h"
+
+#include "attributewidget.h"
+
+#include <QtGui/QApplication>
+#include <QtGui/QButtonGroup>
+
+AttributeDialog::AttributeDialog (QWidget *parent):QDialog (parent)
+{
+    if (this->objectName().isEmpty())
+        this->setObjectName(QString::fromUtf8("AttributeDialog"));
+    QSize size(468, 75);
+    size = size.expandedTo(this->minimumSizeHint());
+    this->resize(size);
+    QSizePolicy sizePolicy(QSizePolicy::Minimum, QSizePolicy::Preferred);
+    sizePolicy.setHorizontalStretch(0);
+    sizePolicy.setVerticalStretch(0);
+    sizePolicy.setHeightForWidth(this->sizePolicy().hasHeightForWidth());
+    this->setSizePolicy(sizePolicy);
+
+    vboxLayout = new QVBoxLayout(this);
+    vboxLayout->setObjectName(QString::fromUtf8("vboxLayout"));
+
+    tableLayout = new QVBoxLayout();
+    tableLayout->setObjectName(QString::fromUtf8("tableLayout"));
+
+    hboxLayout = new QHBoxLayout();
+    hboxLayout->setObjectName(QString::fromUtf8("hboxLayout"));
+    addButton = new QPushButton(this);
+    addButton->setObjectName(QString::fromUtf8("addButton"));
+
+    hboxLayout->addWidget(addButton);
+
+    spacerItem = new QSpacerItem(111, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
+
+    hboxLayout->addItem(spacerItem);
+
+    closeButton = new QPushButton(this);
+    closeButton->setObjectName(QString::fromUtf8("closeButton"));
+
+    hboxLayout->addWidget(closeButton);
+
+    vboxLayout->addLayout(tableLayout);
+    vboxLayout->addLayout(hboxLayout);
+
+
+    
+    setWindowTitle(QApplication::translate("AttributeDialog", "Attributes", 0, QApplication::UnicodeUTF8));
+    addButton->setText(QApplication::translate("AttributeDialog", "Add key", 0, QApplication::UnicodeUTF8));
+    closeButton->setText(QApplication::translate("AttributeDialog", "Close", 0, QApplication::UnicodeUTF8));
+
+    connect (addButton, SIGNAL (clicked()), this, SLOT (addKey()));
+    connect (closeButton, SIGNAL (clicked()), this, SLOT (accept()));
+
+    table=NULL;
+}
+
+void AttributeDialog::setTable (AttributeTable *t)
+{
+    table=t;
+}
+
+void AttributeDialog::setBranch (BranchObj *bo)
+{
+    branch=bo;
+}
+
+void AttributeDialog::setMode (const AttributeDialogMode &m)
+{
+    mode=m;
+
+    QString title;
+    if (mode==Definition)
+    title= QApplication::translate("Attribute Dialog","AttributeDialog - Edit definitions", 0, QApplication::UnicodeUTF8);
+    else    
+    title= QApplication::translate("Attribute Dialog","AttributeDialog - Edit %1", 0, QApplication::UnicodeUTF8).arg("objname");
+    setWindowTitle(title);
+}
+
+void AttributeDialog::updateTable()
+{
+    if (table)
+    {
+    // Update list of keys and values
+    QStringList keyList=table->getKeys();
+    AttributeWidget *aw;
+    for (int i=0; i<keyList.count();i++)
+    {
+       aw=new AttributeWidget (this);
+       aw->setKey (keyList.at(i) );
+       // TODO aw->setValues (table->getValues (keyList.at(i) ));
+       aw->show();
+       tableLayout->addWidget (aw);
+    }
+
+    // Update attributes in dialog from data in selected branch
+
+    // TODO
+    }
+
+}
+void AttributeDialog::addKey()
+{
+    AttributeWidget *aw1=new AttributeWidget (this);
+    aw1->show();
+    tableLayout->addWidget (aw1);
+
+}
+
+void AttributeDialog::closeEvent( QCloseEvent* ce )
+{
+    ce->accept();   // can be reopened with show()
+    hide();
+    emit (windowClosed() );
+    return;
+}
+
+
diff --git a/attributedialog.h b/attributedialog.h
new file mode 100644 (file)
index 0000000..b56cf80
--- /dev/null
@@ -0,0 +1,49 @@
+#ifndef ATTRIBUTEDIALOG_H
+#define ATTRIBUTEDIALOG_H
+
+#include "attribute.h"
+#include "branchobj.h"
+
+#include <QDialog>
+#include <QCloseEvent>
+#include <QtGui/QHBoxLayout>
+#include <QtGui/QPushButton>
+#include <QtGui/QSpacerItem>
+#include <QtGui/QVBoxLayout>
+
+
+/*! \brief Set the dialog mode  */
+enum AttributeDialogMode {
+    Definition,        //!< Edit attribute definitions (AttributeDef)
+    Object     //!< Edit attributes of OrnamentedObj
+};
+
+class AttributeDialog:public QDialog
+{
+    Q_OBJECT 
+public:
+    AttributeDialog (QWidget *parent=0 );
+    void setTable (AttributeTable *table=0);
+    void setBranch (BranchObj *bo);
+    void setMode (const AttributeDialogMode &m);
+    void updateTable();
+signals:
+    void windowClosed();
+private slots:
+    void addKey();
+protected:
+    void closeEvent(QCloseEvent*);
+private:
+    QVBoxLayout *vboxLayout;
+    QVBoxLayout *tableLayout;
+    QHBoxLayout *hboxLayout;
+    QPushButton *addButton;
+    QSpacerItem *spacerItem;
+    QPushButton *closeButton;
+
+    AttributeDialogMode mode;
+    AttributeTable *table;
+    BranchObj *branch;
+};
+
+#endif
diff --git a/attributedialog.ui b/attributedialog.ui
new file mode 100644 (file)
index 0000000..fc16698
--- /dev/null
@@ -0,0 +1,60 @@
+<ui version="4.0" >
+ <class>AttributeDialog</class>
+ <widget class="QDialog" name="AttributeDialog" >
+  <property name="geometry" >
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>468</width>
+    <height>75</height>
+   </rect>
+  </property>
+  <property name="sizePolicy" >
+   <sizepolicy vsizetype="Preferred" hsizetype="Minimum" >
+    <horstretch>0</horstretch>
+    <verstretch>0</verstretch>
+   </sizepolicy>
+  </property>
+  <property name="windowTitle" >
+   <string>Attributes</string>
+  </property>
+  <layout class="QVBoxLayout" >
+   <item>
+    <widget class="QLineEdit" name="dummyLineEdit" />
+   </item>
+   <item>
+    <layout class="QHBoxLayout" >
+     <item>
+      <widget class="QPushButton" name="addButton" >
+       <property name="text" >
+        <string>Add key</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <spacer>
+       <property name="orientation" >
+        <enum>Qt::Horizontal</enum>
+       </property>
+       <property name="sizeHint" >
+        <size>
+         <width>111</width>
+         <height>20</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+     <item>
+      <widget class="QPushButton" name="closeButton" >
+       <property name="text" >
+        <string>Close</string>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
+  </layout>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/attributeitem.cpp b/attributeitem.cpp
new file mode 100644 (file)
index 0000000..af014f2
--- /dev/null
@@ -0,0 +1,195 @@
+#include "attributeitem.h"
+
+
+extern bool debug;
+
+AttributeItem::AttributeItem(const QList<QVariant> &data, TreeItem *parent):BranchItem (data,parent)
+{
+    TreeItem::setType (Attribute);
+    internal=false;
+}
+
+AttributeItem::~AttributeItem()
+{
+}
+
+void AttributeItem::set (const QString &k, const QString &v, const Type &)
+{
+    key=k;
+    value=QVariant (v);
+    createHeading();
+}
+
+void AttributeItem::get (QString &k, QString &v, Type &t)
+{
+    k=key;
+    v=value.toString();
+    t=attrType;
+}
+
+void AttributeItem::setKey (const QString &k)
+{
+/*
+    if (!table)
+    {
+       qWarning (QString("AttributeItem::setKey (%1)  No table defined!\n").arg(k).ascii());
+       return; 
+    }
+    
+    if (!definition)
+    {
+       definition=table->getDef(k);
+       if (!definition)
+       {
+           table->addKey (k,t);
+           return; 
+       }
+    }  
+    qWarning (QString("AttributeItem::setKey (%1)  attribute already defined!\n").arg(k).ascii());
+    */
+    key=k;
+    createHeading();
+}
+
+QString AttributeItem::getKey ()
+{
+/*
+    if (!table)
+    {
+       qWarning ("AttributeItem::getKey ()  No table defined!");
+       return QString();   
+    }
+    if (!definition)
+    {
+       qWarning ("AttributeItem::getKey ()  No attribute defined!");
+       return QString ();  
+    }  
+    return definition->getKey();
+    */
+    return key;
+}
+
+void AttributeItem::setValue(const QString &v)
+{
+/*
+    if (!table)
+    {
+       qWarning (QString ("AttributeItem::setValue (%1)  No table defined!").arg(v));
+       return; 
+    }
+    if (!definition)
+    {
+       qWarning (QString ("AttributeItem::setValue (%1)  No attribute defined!").arg(v));
+       return; 
+    }  
+    definition->setValue (v);
+*/
+    value=v;
+    createHeading();
+}
+
+QVariant AttributeItem::getValue()
+{
+/*
+    if (!table)
+    {
+       qWarning ("AttributeItem::getValue  No table defined!");
+       return QString();   
+    }
+    if (!definition)
+    {
+       qWarning ("AttributeItem::getValue  No attribute defined!");
+       return QString();   
+    }  
+    QVariant v= definition->getValue();
+    return v;
+    */
+    return value;
+}
+
+void AttributeItem::setType (const Type &t)
+{
+/*
+    if (!table)
+    {
+       qWarning ("AttributeItem::setType  No table defined!");
+       return;
+    }
+    if (!definition)
+    {
+       qWarning ("Attribute::setType  No attribute defined!");
+       return; 
+    }  
+    definition->setType (t);
+*/
+    attrType=t;
+}
+
+AttributeItem::Type AttributeItem::getAttributeType()
+{
+/*
+    if (!table)
+    {
+       qWarning ("AttributeItem::getType  No table defined!");
+       return Undefined;   
+    }
+    if (!definition)
+    {
+       qWarning ("AttributeItem::getType  No attribute defined!");
+       return Undefined;   
+    }  
+    return definition->getType();
+*/
+    return attrType;
+}
+
+QString AttributeItem::getTypeString()
+{
+/*
+    if (!table)
+    {
+       qWarning ("AttributeItem::getTypeString  No table defined!");
+       return "Undefined"; 
+    }
+    if (!definition)
+    {
+       qWarning ("Attribute::getTypeString  No AttributeItem defined!");
+       return "Undefined"; 
+    }  
+    return definition->getTypeString();
+*/  
+    switch (attrType)
+    {
+       case IntList: return "IntList";
+       case FreeInt: return "FreeInt";
+       case StringList:return "StringList";
+       case FreeString:return "FreeString";
+       case UniqueString: return "UniqueString";
+       default: return "Undefined";
+    }
+}
+
+void AttributeItem::setInternal(bool b)
+{
+    internal=b;
+}
+
+bool AttributeItem::isInternal()
+{
+    return internal;
+}
+
+QString AttributeItem::getDataXML()
+{
+    QString a;
+    a=attribut ("key",getKey());
+    a+=attribut ("value",getValue().toString() );
+    a+=attribut ("type",getTypeString () );
+    return singleElement ("attribute",a);
+}
+
+void AttributeItem::createHeading()
+{
+    setHeadingPlainText (QString ("K: %1 | V: %2").arg(key).arg(value.toString()));
+}
+
diff --git a/attributeitem.h b/attributeitem.h
new file mode 100644 (file)
index 0000000..a1c4767
--- /dev/null
@@ -0,0 +1,48 @@
+#ifndef ATTRIBUTEITEM_H
+#define ATTRIBUTEITEM_H
+
+#include <QStringList>
+#include <QVariant>
+
+#include "branchitem.h"
+
+/*! \brief A key and a value 
+    The data itself is stored in Attribute Definitions (AttributeDef). 
+    A list of these tables AttributeTable is maintained for every MapEditor.
+*/
+class AttributeItem:public BranchItem {
+public:
+enum Type {
+    Undefined, //!< Undefined type
+    IntList,   //!< Integer
+    FreeInt,   //!< Integer
+    StringList, //!< List of strings
+    FreeString,        //!< String
+    UniqueString//!< String which is unique in a map, e.g. for IDs
+};
+
+    AttributeItem(const QList<QVariant> &data, TreeItem *parent = 0);
+    virtual ~AttributeItem();
+    void set (const QString &k, const QString &v, const Type &t);
+    void get (QString &k, QString &v, Type &t);
+    void setKey (const QString &k);
+    QString getKey ();
+    void setValue (const QString &v);
+    QVariant getValue ();
+    using BranchItem::setType;
+    virtual void setType (const Type &t);
+    AttributeItem::Type getAttributeType ();
+    QString getTypeString ();
+    void setInternal (bool b);
+    bool isInternal();
+    QString getDataXML();
+protected:
+    void createHeading();
+    bool internal;         //!< Internal attributes cannot be edited by user
+    QString key;
+    QVariant value;
+    Type attrType;
+};
+
+#endif
+
diff --git a/attributewidget.cpp b/attributewidget.cpp
new file mode 100644 (file)
index 0000000..65e7a18
--- /dev/null
@@ -0,0 +1,39 @@
+#include "attributewidget.h"
+
+AttributeWidget::AttributeWidget (QWidget *parent):QWidget (parent)
+{
+    ui.setupUi (this);
+    //ui.keyComboBox->setEditable (true);
+    ui.valueComboBox->setEditable (true);
+}
+
+void AttributeWidget::setTable(AttributeTable *at)
+{
+    table=at;
+}
+
+void AttributeWidget::setKey (const QString &k)
+{
+    key=k;
+    ui.keyComboBox->insertItem (ui.keyComboBox->count(), key);
+}
+
+void AttributeWidget::setValues(const QStringList &vl)
+{
+    ui.valueComboBox->clear();
+    ui.valueComboBox->insertStringList(vl);
+}
+
+/*
+void AttributeWidget::setValue (const QString &v)
+{
+}
+*/
+
+void AttributeWidget::keyTextChanged(const QString &t)
+{
+}
+
+void AttributeWidget::valueTextChanged(const QString &t)
+{
+}
diff --git a/attributewidget.h b/attributewidget.h
new file mode 100644 (file)
index 0000000..065fd78
--- /dev/null
@@ -0,0 +1,28 @@
+#ifndef ATTRIBUTEWIDGET_H
+#define ATTRIBUTEWIDGET_H
+
+#include "ui_attributewidget.h"
+
+#include "attribute.h"
+
+#include <QWidget>
+
+class AttributeWidget: public QWidget
+{
+    Q_OBJECT
+public:
+    AttributeWidget (QWidget *parent=0);
+    void setTable (AttributeTable *at=0);
+    void setKey (const QString &k);
+    void setValues (const QStringList &vl);
+
+public slots:
+    virtual void keyTextChanged(const QString &t);
+    virtual void valueTextChanged(const QString &t);
+
+private:
+    Ui::AttributeWidget ui;
+    AttributeTable *table;
+    QString key;
+};
+#endif
diff --git a/attributewidget.ui b/attributewidget.ui
new file mode 100644 (file)
index 0000000..3327fee
--- /dev/null
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>AttributeWidget</class>
+ <widget class="QWidget" name="AttributeWidget">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>400</width>
+    <height>115</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string notr="true">Form</string>
+  </property>
+  <layout class="QHBoxLayout">
+   <property name="spacing">
+    <number>0</number>
+   </property>
+   <item>
+    <widget class="QPushButton" name="pushButton">
+     <property name="text">
+      <string/>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <widget class="QComboBox" name="keyComboBox">
+     <property name="sizePolicy">
+      <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
+       <horstretch>0</horstretch>
+       <verstretch>0</verstretch>
+      </sizepolicy>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <widget class="QComboBox" name="valueComboBox">
+     <property name="sizePolicy">
+      <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
+       <horstretch>0</horstretch>
+       <verstretch>0</verstretch>
+      </sizepolicy>
+     </property>
+    </widget>
+   </item>
+  </layout>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/branchitem.cpp b/branchitem.cpp
new file mode 100644 (file)
index 0000000..ed97e5d
--- /dev/null
@@ -0,0 +1,575 @@
+#include "branchitem.h"
+
+#include "attributeitem.h"
+#include "branchobj.h"
+#include "task.h"
+#include "taskmodel.h"
+#include "vymmodel.h"
+#include "xlink.h"
+#include "xlinkitem.h"
+
+extern TaskModel *taskModel;
+
+//#include <QDir>
+
+BranchItem::BranchItem(const QList<QVariant> &data, TreeItem *parent):MapItem (data,parent)
+{
+    //qDebug()<< "Constr. BranchItem this="<<this;
+
+    // Set type if parent is known yet 
+    // if not, type is set in insertBranch or TreeItem::appendChild
+    if (parent==rootItem)
+       setType (MapCenter);
+    else
+       setType (Branch);
+
+    scrolled=false;
+    tmpUnscrolled=false;
+
+    includeImagesVer=false;
+    includeImagesHor=false;
+    includeChildren=false;
+    childrenLayout = BranchItem::AutoPositioning;
+     
+    lastSelectedBranchNum=-1;
+    lastSelectedBranchNumAlt=-1;
+
+    task=NULL;
+}
+
+BranchItem::~BranchItem()
+{
+    //qDebug()<< "Destr. BranchItem  this="<<this<<"  "<<getHeading();
+    if (mo) 
+    {
+       delete mo;
+       mo=NULL;
+    }
+    clear();
+}
+
+void BranchItem::clear()
+{
+    if (task) taskModel->deleteTask (task);
+}
+
+void BranchItem::copy (BranchItem *other)  // TODO lacks most of data...
+{
+    scrolled=other->scrolled;
+    tmpUnscrolled=other->tmpUnscrolled;
+}
+
+BranchItem* BranchItem::parentBranch ()
+{
+    return (BranchItem*) parentItem;
+}
+
+void BranchItem::insertBranch (int pos, BranchItem *branch)
+{
+    if (pos<0) pos=0;
+    if (pos>branchCounter) pos=branchCounter;
+    childItems.insert(pos+branchOffset,branch);
+    branch->parentItem=this;
+    branch->rootItem=rootItem;
+    branch->setModel (model);
+    if (parentItem==rootItem)
+       setType (MapCenter);
+    else
+       setType (Branch);
+
+
+    if (branchCounter==0)
+       branchOffset=childItems.count()-1;
+    branchCounter++;
+}
+
+QString BranchItem::saveToDir (const QString &tmpdir,const QString &prefix, const QPointF& offset, QList <Link*> &tmpLinks ) 
+{
+    // Cloudy stuff can be hidden during exports
+    if (hidden) return QString();
+
+    // Save uuid 
+    QString idAttr=attribut("uuid",uuid.toString());
+
+    QString s,a;
+
+    // Update of note is usually done while unselecting a branch
+    
+    QString scrolledAttr;
+    if (scrolled) 
+       scrolledAttr=attribut ("scrolled","yes");
+    else
+       scrolledAttr="";
+
+    // save area, if not scrolled   // not needed if HTML is rewritten...
+                                   // also we could check if _any_ of parents is scrolled
+    QString areaAttr;
+    if (mo && parentItem->isBranchLikeType() && !((BranchItem*)parentItem)->isScrolled() )
+    {
+       qreal x=mo->getAbsPos().x();
+       qreal y=mo->getAbsPos().y();
+       areaAttr=
+           attribut("x1",QString().setNum(x-offset.x())) +
+           attribut("y1",QString().setNum(y-offset.y())) +
+           attribut("x2",QString().setNum(x+mo->width()-offset.x())) +
+           attribut("y2",QString().setNum(y+mo->height()-offset.y()));
+
+    } else
+       areaAttr="";
+    
+    QString elementName;
+    if (parentItem==rootItem)
+        elementName="mapcenter";
+    else
+        elementName="branch";
+
+    // Free positioning of children
+    QString layoutAttr;
+    if (childrenLayout == BranchItem::FreePositioning)
+        layoutAttr += attribut ("childrenFreePos","true");
+
+    // Save rotation
+    QString rotAttr;
+    if (mo && mo->getRotation() !=0 )
+       rotAttr=attribut ("rotation",QString().setNum (mo->getRotation() ) );
+
+    s=beginElement (elementName
+       + getMapAttr()
+       + getGeneralAttr()
+       + scrolledAttr 
+       + getIncludeImageAttr() 
+    + rotAttr
+    + layoutAttr
+       + idAttr
+       );
+    incIndent();
+
+    // save heading
+    s += heading.saveToDir();
+
+    // Save frame  // not saved if there is no MO
+    if (mo)
+    {
+        // Avoid saving NoFrame for objects other than MapCenter
+        if (depth() == 0  || ((OrnamentedObj*)mo)->getFrame()->getFrameType()!=FrameObj::NoFrame)
+            s+=((OrnamentedObj*)mo)->getFrame()->saveToDir ();
+    }
+
+    // save names of flags set
+    s+=standardFlags.saveToDir(tmpdir,prefix,0);
+    
+    // Save Images
+    for (int i=0; i<imageCount(); ++i)
+       s+=getImageNum(i)->saveToDir (tmpdir,prefix);
+
+    // save attributes
+    for (int i=0; i<attributeCount(); ++i)
+       s+=getAttributeNum(i)->getDataXML();
+
+    // save note
+    if (!note.isEmpty() )
+       s+=note.saveToDir();
+    
+    // save task
+    if (task)
+       s+=task->saveToDir();
+
+    // Save branches
+    int i=0;
+    TreeItem *ti=getBranchNum(i);
+    while (ti)
+    {
+       s+=getBranchNum(i)->saveToDir(tmpdir,prefix,offset,tmpLinks);
+       i++;
+       ti=getBranchNum(i);
+    }  
+
+    // Mark Links for save
+    for (int i=0; i<xlinkCount(); ++i)
+    {
+       Link *l=getXLinkItemNum (i)->getLink();
+       if (l && !tmpLinks.contains (l)) tmpLinks.append (l);
+    }
+    decIndent();
+    s += endElement (elementName);
+    return s;
+}
+
+void BranchItem::updateVisibility()
+{
+    // Needed to hide relinked branch, if parent is scrolled
+    if (mo)
+    {
+       if (hasScrolledParent(this) || hidden)
+           mo->setVisibility (false);
+       else    
+           mo->setVisibility (true);
+    }
+}
+
+void BranchItem::setHeadingColor (QColor color)
+{
+    TreeItem::setHeadingColor (color);
+    if (mo) ((BranchObj*)mo)->setColor (color);
+}
+
+void BranchItem::updateTaskFlag()
+{
+    systemFlags.deactivateGroup ("system-tasks");
+    if (task)
+    {
+       QString s="system-" + task->getIconString();
+       systemFlags.activate (s);
+       model->emitDataChanged(this);
+    } 
+}
+
+void BranchItem::setTask(Task *t) 
+{
+    task=t;
+    updateTaskFlag();
+}
+
+Task* BranchItem::getTask()
+{
+    return task;
+}
+
+void BranchItem::unScroll()
+{
+    if (tmpUnscrolled) resetTmpUnscroll();
+    if (scrolled) toggleScroll();
+}
+
+bool BranchItem::toggleScroll()        
+{
+    // MapCenters are not scrollable
+    if (depth()==0) return false;
+
+    BranchObj *bo;
+    if (scrolled)
+    {
+       scrolled=false;
+       systemFlags.deactivate("system-scrolledright");
+       if (branchCounter>0)
+           for (int i=0;i<branchCounter;++i)
+           {
+               bo=(BranchObj*)(getBranchNum(i)->getMO());
+               if (bo) bo->setVisibility(true);
+           }
+    } else
+    {
+       scrolled=true;
+       systemFlags.activate("system-scrolledright");
+       if (branchCounter>0)
+           for (int i=0;i<branchCounter;++i)
+           {
+               bo=(BranchObj*)(getBranchNum(i)->getMO());
+               if (bo) bo->setVisibility(false);
+           }
+    }
+    return true;
+}
+
+bool BranchItem::isScrolled()
+{
+    return scrolled;
+}
+
+bool BranchItem::hasScrolledParent(BranchItem *start)
+{
+    // Calls parents recursivly to
+    // find out, if we are scrolled at all.
+    // But ignore myself, just look at parents.
+
+    if (!start) start=this;
+
+    if (this !=start && scrolled) return true;
+
+    BranchItem* bi=(BranchItem*)parentItem;
+    if (bi && bi!=rootItem ) 
+       return bi->hasScrolledParent(start);
+    else
+       return false;
+}
+
+bool BranchItem::tmpUnscroll(BranchItem *start)
+{
+    bool result=false;
+
+    if (!start) start=this;
+
+    // Unscroll parent (recursivly)
+    BranchItem * pi=(BranchItem*)parentItem;
+    if (pi && pi->isBranchLikeType() ) result=pi->tmpUnscroll(start);
+       
+    // Unscroll myself
+    if (start !=this && scrolled)
+    {
+       tmpUnscrolled=true;
+       systemFlags.activate("system-tmpUnscrolledRight");
+       toggleScroll();
+       model->emitDataChanged (this); 
+       result=true;
+    }  
+    return result;
+}
+
+bool BranchItem::resetTmpUnscroll()
+{
+    bool result=false;
+
+    // Unscroll parent (recursivly)
+    BranchItem * pi=(BranchItem*)parentItem;
+    if (pi && pi->isBranchLikeType() ) result=pi->resetTmpUnscroll();
+       
+    // Unscroll myself
+    if (tmpUnscrolled)
+    {
+       tmpUnscrolled=false;
+       systemFlags.deactivate("system-tmpUnscrolledRight");
+       toggleScroll();
+       model->emitDataChanged (this);
+       result=true;
+    }  
+    return result;
+}
+
+void BranchItem::sortChildren(bool inverse) //FIXME-4 optimize by not using moveUp/Down
+{
+    int childCount=branchCounter; 
+    int curChildIndex;
+    bool madeChanges=false;
+    do
+    {
+       madeChanges=false;
+       for(curChildIndex=1;curChildIndex<childCount;curChildIndex++)
+       {
+           BranchItem* curChild =getBranchNum(curChildIndex);
+           BranchItem* prevChild=getBranchNum(curChildIndex-1);
+           if (inverse)
+           {
+        if (prevChild->getHeadingPlain().compare(curChild->getHeadingPlain())<0)
+               {
+                   model->moveUp (curChild);
+                   madeChanges=true;
+               }   
+           } else  
+        if (prevChild->getHeadingPlain().compare(curChild->getHeadingPlain())>0)
+               {
+                   model->moveUp (curChild);
+                   madeChanges=true;
+               }   
+       } 
+    }while(madeChanges);
+}
+
+void BranchItem::setChildrenLayout(BranchItem::LayoutHint layoutHint)
+{
+    childrenLayout = layoutHint;
+}
+
+BranchItem::LayoutHint BranchItem::getChildrenLayout()
+{
+    return childrenLayout;
+}
+
+void BranchItem::setIncludeImagesVer(bool b)
+{
+    includeImagesVer=b;
+}
+
+bool BranchItem::getIncludeImagesVer()
+{
+    return includeImagesVer;
+}
+
+void BranchItem::setIncludeImagesHor(bool b)
+{
+    includeImagesHor=b;
+}
+
+bool BranchItem::getIncludeImagesHor()
+{
+    return includeImagesHor;
+}
+
+QString BranchItem::getIncludeImageAttr()
+{
+    QString a;
+    if (includeImagesVer)
+       a=attribut ("incImgV","true");
+    if (includeImagesHor)
+       a+=attribut ("incImgH","true");
+    return a;  
+}
+
+BranchItem* BranchItem::getFramedParentBranch(BranchItem *start)
+{
+    BranchObj *bo=getBranchObj();
+    if (bo && bo->getFrameType() != FrameObj::NoFrame)
+    {
+       if (bo->getFrame()->getFrameIncludeChildren() ) return this;
+        if (this == start) return this;
+    } 
+    BranchItem* bi=(BranchItem*)parentItem;
+    if (bi && bi!=rootItem ) 
+       return bi->getFramedParentBranch(start);
+    else
+       return NULL;
+}
+
+void BranchItem::setFrameIncludeChildren(bool b)
+{
+    includeChildren=b; // FIXME-4 ugly: same information stored in FrameObj
+    BranchObj *bo=getBranchObj();
+    if (bo) bo->getFrame()->setFrameIncludeChildren(b);
+}
+
+bool BranchItem::getFrameIncludeChildren()
+{
+    BranchObj *bo=getBranchObj();
+    if (bo) 
+       return bo->getFrame()->getFrameIncludeChildren();
+    else       
+       return includeChildren;
+}
+
+void BranchItem::setLastSelectedBranch()
+{
+    int d=depth();
+    if (d>=0)
+    {
+       if (d==1)
+           // Hack to save an additional lastSelected for mapcenters in MapEditor
+           // depending on orientation
+           // this allows to go both left and right from there
+           if (mo && ((BranchObj*)mo)->getOrientation()==LinkableMapObj::LeftOfCenter)
+           {
+               ((BranchItem*)parentItem)->lastSelectedBranchNumAlt=parentItem->num(this);
+               return;
+           }
+       ((BranchItem*)parentItem)->lastSelectedBranchNum=parentItem->num(this);
+    }
+}
+
+void BranchItem::setLastSelectedBranch(int i)
+{
+       lastSelectedBranchNum=i;
+}
+
+BranchItem* BranchItem::getLastSelectedBranch()
+{
+    if (lastSelectedBranchNum>=branchCounter)
+       return getBranchNum (branchCounter-1);
+    else    
+       return getBranchNum (lastSelectedBranchNum);
+}
+
+BranchItem* BranchItem::getLastSelectedBranchAlt()
+{
+    return getBranchNum (lastSelectedBranchNumAlt);
+}
+
+
+
+
+TreeItem* BranchItem::findMapItem (QPointF p, TreeItem* excludeTI)
+{
+    // Search branches
+    TreeItem *ti;
+    for (int i=0; i<branchCount(); ++i)
+    {  
+       ti=getBranchNum(i)->findMapItem(p, excludeTI);
+       if (ti != NULL) return ti;
+    }
+    
+    // Search images
+    ImageItem *ii;
+    for (int i=0; i<imageCount(); ++i )
+    {
+       ii=getImageNum (i);
+       MapObj *mo=ii->getMO();
+       if (mo && mo->isInClickBox(p) && 
+           (ii != excludeTI) && 
+           this!= excludeTI &&
+           mo->isVisibleObj() 
+       ) return ii;
+    }
+
+    // Search myself
+    if (getBranchObj()->isInClickBox (p) && (this != excludeTI) && getBranchObj()->isVisibleObj() ) 
+       return this;
+
+
+    // Search attributes
+    AttributeItem *ai;
+    for (int i=0; i<attributeCount(); ++i )
+    {
+       ai=getAttributeNum (i);
+       MapObj *mo=ai->getMO();
+       if (mo && mo->isInClickBox(p) && 
+           (ai != excludeTI) && 
+           this!= excludeTI &&
+           mo->isVisibleObj() 
+       ) return ai;
+    }
+    return NULL;
+}
+
+void BranchItem::updateStyles(const bool &keepFrame)
+{
+    // Update styles when relinking branches
+    if (mo)
+    { 
+       BranchObj *bo=getBranchObj();
+       if ( parentItem != rootItem)
+           bo->setParObj ( (LinkableMapObj*) ( ((MapItem*)parentItem)->getMO() ) );
+       else
+           bo->setParObj (NULL);
+       bo->setDefAttr(BranchObj::MovedBranch,keepFrame);
+    }
+}
+
+BranchObj* BranchItem::getBranchObj()  
+{
+    return (BranchObj*)mo;
+}
+
+BranchObj* BranchItem::createMapObj(QGraphicsScene *scene)  
+{
+    BranchObj *newbo;
+
+    if (parentItem==rootItem)
+    {
+       newbo=new BranchObj(NULL,this);
+       mo=newbo;
+       scene->addItem (newbo);
+    } else
+    {
+       newbo=new BranchObj( ((MapItem*)parentItem)->getMO(),this);
+       mo=newbo;
+       // Set visibility depending on parents
+       if (parentItem!=rootItem && 
+           ( ((BranchItem*)parentItem)->scrolled || !((MapItem*)parentItem)->getLMO()->isVisibleObj() ) )
+           newbo->setVisibility (false);
+       if (depth()==1) 
+       {
+          qreal r=190;
+          qreal a= -M_PI_4 + M_PI_2 * (num()) + (M_PI_4/2)*(num()/4 % 4);
+          QPointF p (r*cos (a), r*sin (a));
+          newbo->setRelPos (p);
+       }
+    }
+    newbo->setDefAttr(BranchObj::NewBranch);
+    initLMO();
+
+    if (!getHeading().isEmpty() ) 
+    {
+       newbo->updateData();    
+        newbo->setColor (heading.getColor());
+    }  
+       
+    return newbo;
+}
+
diff --git a/branchitem.h b/branchitem.h
new file mode 100644 (file)
index 0000000..207ab0c
--- /dev/null
@@ -0,0 +1,89 @@
+#ifndef BRANCHITEM_H
+#define BRANCHITEM_H
+
+#include "mapitem.h"
+#include "task.h"
+
+#include <QList>
+
+class QString;
+class QGraphicsScene;
+class BranchObj;
+class Link;
+class XLinkItem;
+
+class BranchItem:public MapItem
+{
+public:
+    enum LayoutHint {AutoPositioning, FreePositioning};
+
+    BranchItem(const QList<QVariant> &data, TreeItem *parent = 0);
+    virtual ~BranchItem();
+    virtual void clear();
+    virtual void copy (BranchItem *item);
+    virtual BranchItem* parentBranch();
+
+    virtual void insertBranch (int pos,BranchItem *branch);
+
+    virtual QString saveToDir (const QString &tmpdir,const QString &prefix, const QPointF& offset,QList <Link*> &tmpLinks);
+
+    virtual void updateVisibility();
+
+    virtual void setHeadingColor (QColor color); //!Overloaded from TreeItem to update QGraphicsView
+
+protected:  
+    bool scrolled;     // true if all children are scrolled and thus invisible
+    bool tmpUnscrolled;            // can only be true (temporary) for a scrolled subtree
+
+public:
+    void updateTaskFlag();
+    void setTask (Task* t);
+    Task* getTask();
+private:
+    Task* task;
+
+public:
+    virtual void unScroll();           
+    virtual bool toggleScroll();       // scroll or unscroll
+    virtual bool isScrolled();         // returns scroll state
+    virtual bool hasScrolledParent(BranchItem* start=NULL);    // true, if any of the parents is scrolled
+    virtual bool tmpUnscroll(BranchItem* start=NULL);          // unscroll scrolled parents temporary e.g. during "find" process
+    virtual bool resetTmpUnscroll();       // scroll all tmp scrolled parents again e.g. when unselecting
+    virtual void sortChildren(bool inverse=false);  //! Sort children 
+    virtual void setChildrenLayout(BranchItem::LayoutHint layoutHint);
+    virtual BranchItem::LayoutHint getChildrenLayout();
+
+protected:
+    bool includeImagesVer;     //! include floatimages in bbox vertically
+    bool includeImagesHor;     //! include floatimages in bbox horizontally
+    bool includeChildren;      //! include children in frame
+    LayoutHint childrenLayout;  //! should children be positioned freely?
+
+public:
+    void setIncludeImagesVer(bool);
+    bool getIncludeImagesVer();
+    void setIncludeImagesHor(bool);
+    bool getIncludeImagesHor();
+    QString getIncludeImageAttr();
+    BranchItem* getFramedParentBranch(BranchItem *start);
+    void setFrameIncludeChildren(bool);
+    bool getFrameIncludeChildren();
+
+protected:
+    int lastSelectedBranchNum;
+    int lastSelectedBranchNumAlt;
+public:
+    virtual void setLastSelectedBranch();      //! Set myself as last selected in parent
+    virtual void setLastSelectedBranch(int i);     //! Set last selected branch directly
+    virtual BranchItem* getLastSelectedBranch();    //! Returns last selected branch usually
+    virtual BranchItem* getLastSelectedBranchAlt(); //! Used to return last selected branch left of a mapcenter
+
+public:
+    TreeItem* findMapItem (QPointF p,TreeItem* excludeTI);  //! search map for branches or images. Ignore excludeTI, where search is started 
+
+    virtual void updateStyles (const bool &keepFrame=false);       //! update related fonts, parObjects, links, ...
+    virtual BranchObj* getBranchObj(); 
+    virtual BranchObj* createMapObj(QGraphicsScene *scene); //! Create classic object in GraphicsView
+};
+
+#endif
diff --git a/branchobj.cpp b/branchobj.cpp
new file mode 100644 (file)
index 0000000..8615ab8
--- /dev/null
@@ -0,0 +1,737 @@
+#include <QDebug>
+
+#include "branchobj.h"
+
+#include "attributeitem.h"
+#include "branchitem.h"
+#include "geometry.h"
+#include "mapeditor.h"
+#include "mainwindow.h"   
+#include "misc.h"
+
+extern FlagRow *standardFlagsMaster;
+extern FlagRow *systemFlagsMaster;
+extern bool debug;
+
+/////////////////////////////////////////////////////////////////
+// BranchObj
+/////////////////////////////////////////////////////////////////
+
+BranchObj::BranchObj (QGraphicsItem *parent,TreeItem *ti):OrnamentedObj (parent,ti)
+{
+    //qDebug ()<< "Const BranchObj  (s,ti) ti="<<ti;
+    treeItem=ti;
+    BranchItem *pi=(BranchItem*)(ti->parent());
+    if (pi && pi!=ti->getModel()->getRootItem() )
+        parObj=pi->getLMO();
+    else
+        parObj=NULL;
+    init();
+}
+
+BranchObj::~BranchObj ()
+{
+    //qDebug()<< "Destr BranchObj  of "<<this;
+
+    // If I'm animated, I need to un-animate myself first
+    if (anim.isAnimated() )
+    {
+        anim.setAnimated (false);
+        VymModel *model=treeItem->getModel();
+        model->stopAnimation (this);
+    }
+
+    clear();
+}
+
+void BranchObj::init () 
+{
+    if (parObj) absPos=parObj->getChildRefPos();
+}
+
+void BranchObj::copy (BranchObj* other)
+{
+    OrnamentedObj::copy(other);
+
+    setVisibility (other->visible);
+
+    positionBBox();
+}
+
+void BranchObj::clear() 
+{
+}
+
+void BranchObj::setParObjTmp(LinkableMapObj* dst, QPointF m, int off)  
+{
+    // Temporary link to dst
+    // m is position of mouse pointer
+    // offset 0: default 1: below dst   -1 above dst  (if possible)
+
+    BranchItem *dsti=(BranchItem*)(dst->getTreeItem());
+
+    BranchItem *pi=(BranchItem*)(dsti->parent());
+    int pi_depth=pi->depth();
+    BranchObj* bodst=(BranchObj*)dst;
+
+    if (!tmpParent)
+    {
+        tmpParent=true;
+        parObjTmpBuf=parObj;
+    }
+
+    if (pi_depth<1) off=0;
+    if (off==0)
+        link2ParPos=false;
+    else
+        link2ParPos=true;
+    parObj=bodst;
+
+    setLinkStyle (dst->getDefLinkStyle (dsti));
+
+    // Move temporary to new position at destination
+    // Usually the positioning would be done by reposition(),
+    // but then also the destination branch would "Jump" around...
+    // Better just do it approximately
+    if (dsti->depth()==0)
+    {  // new parent is a mapcenter
+        Vector v= ( m - bodst->getChildRefPos());
+        v.normalize();
+        v.scale (150);
+        move2RelPos (v.toQPointF());
+    } else
+    {
+        qreal y;
+        if (off==0)
+        {
+            // Below is needed e.g. in a freshly loaded map,
+            // bboxTotal seems not to be correct yet
+            // relinking positions too far below then
+            calcBBoxSizeWithChildren();
+
+            // new parent is just a branch, link to it
+            bodst->calcBBoxSizeWithChildren();
+            QRectF t = bodst->getTotalBBox();
+            if (dsti->getLastBranch())
+                // Move below children of destination
+                y = t.y() + t.height() ;
+            else
+                // Move left or right to destination
+                y = t.y()  ;
+        } else
+        {
+            if (off < 0)
+                // we want to link above dst
+                y = bodst->y() - height() + 12;
+            else
+                // we want to link below dst
+                // Bottom of sel should be 5 pixels above
+                // the bottom of the branch _below_ the target:
+                // Don't try to find that branch, guess 12 pixels
+                y = bodst->getChildRefPos().y()  -height() + 12;
+        }
+        if (bodst->getOrientation()==LinkableMapObj::LeftOfCenter)
+            move ( bodst->getChildRefPos().x() - linkwidth - bboxTotal.width(), y );    
+        else
+            move ( bodst->getChildRefPos().x() + linkwidth, y );
+    }
+
+    // updateLinkGeometry is called implicitly in move
+    requestReposition();
+}
+
+void BranchObj::unsetParObjTmp()
+{
+    if (tmpParent)
+    {
+        tmpParent=false;
+        link2ParPos=false;
+        parObj=parObjTmpBuf;
+        parObjTmpBuf=NULL;
+        setLinkStyle (getDefLinkStyle(treeItem->parent() ) );
+        updateLinkGeometry();
+    }
+}
+
+void BranchObj::setVisibility(bool v, int toDepth) 
+{
+    BranchItem *bi=(BranchItem*)treeItem;
+    if (bi->depth() <= toDepth)
+    {
+        frame->setVisibility(v);
+        heading->setVisibility(v);
+        systemFlags->setVisibility(v);
+        standardFlags->setVisibility(v);
+        LinkableMapObj::setVisibility (v);
+        int i;
+        for (i=0; i<treeItem->imageCount(); ++i)
+            treeItem->getImageObjNum(i)->setVisibility (v);
+        for (i=0; i<treeItem->xlinkCount(); ++i)
+            treeItem->getXLinkObjNum(i)->setVisibility ();
+
+        // Only change children, if I am not scrolled
+        if (! bi->isScrolled() && (bi->depth() < toDepth))
+        {
+            // Now go recursivly through all children
+            for (i=0; i<treeItem->branchCount(); ++i)
+                treeItem->getBranchObjNum(i)->setVisibility (v,toDepth);
+        }
+    }
+}   
+
+void BranchObj::setVisibility(bool v)
+{
+    setVisibility (v,MAX_DEPTH);
+}
+
+
+void BranchObj::setLinkColor ()
+{
+    // Overloaded from LinkableMapObj
+    // BranchObj can use color of heading
+
+    VymModel *model=treeItem->getModel();
+    if (model)
+    {
+        if (model->getMapLinkColorHint()==HeadingColor)
+            LinkableMapObj::setLinkColor (heading->getColor() );
+        else
+            LinkableMapObj::setLinkColor ();
+    }
+}
+
+void BranchObj::positionContents()
+{
+    OrnamentedObj::positionContents();
+    updateLinkGeometry();// required before positioning images
+    for (int i=0; i<treeItem->imageCount(); ++i)
+        treeItem->getImageObjNum(i)->reposition();
+}
+
+void BranchObj::move (double x, double y)
+{
+    OrnamentedObj::move (x,y);
+}
+
+void BranchObj::move (QPointF p)
+{
+    move (p.x(), p.y());
+}
+
+void BranchObj::moveBy (double x, double y)
+{
+    OrnamentedObj::moveBy (x,y);
+    for (int i=0; i<treeItem->branchCount(); ++i)
+       treeItem->getBranchObjNum(i)->moveBy (x,y);
+    positionBBox();
+}
+    
+void BranchObj::moveBy (QPointF p)
+{
+    moveBy (p.x(), p.y());
+}
+
+void BranchObj::positionBBox() // FIXME-3 consider dimensions of frame (thickness, geometry, padding...
+{
+    QPointF ap=getAbsPos();
+    bbox.moveTopLeft (ap);
+    positionContents();   // this positions FIOs
+
+    //Update links to other branches
+    XLinkObj *xlo;
+    for (int i=0; i<treeItem->xlinkCount(); ++i)
+    {
+        xlo=treeItem->getXLinkObjNum(i);
+        if (xlo) xlo->updateXLink();
+    }
+}
+
+void BranchObj::calcBBoxSize()
+{
+    QSizeF heading_r=heading->getSize();
+    qreal heading_w=(qreal) heading_r.width() ;
+    qreal heading_h=(qreal) heading_r.height() ;
+    QSizeF sysflags_r=systemFlags->getSize();
+    qreal sysflags_h=sysflags_r.height();
+    qreal sysflags_w=sysflags_r.width();
+    QSizeF stanflags_r=standardFlags->getSize();
+    qreal stanflags_h=stanflags_r.height();
+    qreal stanflags_w=stanflags_r.width();
+    qreal w;
+    qreal h;
+
+    // set width to sum of all widths
+    w=heading_w + sysflags_w + stanflags_w;
+
+    // set height to maximum needed height
+    h=max (sysflags_h,stanflags_h);
+    h=max (h,heading_h);
+
+    // Save the dimension of flags and heading
+    ornamentsBBox.setSize ( QSizeF(w,h));
+
+    // clickBox includes Flags and Heading
+    clickPoly=QPolygonF (ornamentsBBox);
+
+    // Floatimages 
+    QPointF rp;
+
+    topPad = botPad = leftPad = rightPad = 0;
+    bool incV=((BranchItem*)treeItem)->getIncludeImagesVer();
+    bool incH=((BranchItem*)treeItem)->getIncludeImagesHor();
+    if (incH || incV)
+    {
+       FloatImageObj *fio;
+       for (int i=0; i<treeItem->imageCount(); ++i )   
+       {
+           fio=treeItem->getImageObjNum(i);
+           rp=fio->getRelPos();
+           if (incV)
+           {
+                qreal y;
+                if (rp.y() > 0)
+                {
+                    y = rp.y() + fio->height()/2 - ornamentsBBox.height()/2;
+                    botPad = max(botPad, y);
+                } else
+                {
+                    y=-rp.y() + fio->height()/2 - ornamentsBBox.height()/2;
+                    topPad=max(topPad, y);
+                }
+           }       
+           if (incH)
+           {
+                qreal x;
+                if (rp.x() > 0)
+                {
+                    x=rp.x() + fio->width()/2 - ornamentsBBox.width()/2;
+                    rightPad=max(rightPad, x);
+                } else
+                {
+                    x=-rp.x() + fio->width()/2 - ornamentsBBox.width()/2;
+                    leftPad=max(leftPad, x);
+                }
+           }       
+       }   
+       h += topPad + botPad;
+       w += leftPad + rightPad;
+    }
+
+    // Frame thickness  
+    w += frame->getTotalPadding() * 2;
+    h += frame->getTotalPadding() * 2;
+    
+    // Finally set size
+    bbox.setSize (QSizeF (w,h));
+    //if (debug) qDebug()<<"BO: calcBBox "<<treeItem->getHeading()<<" bbox="<<bbox;
+}
+
+void BranchObj::setDockPos()
+{
+    floatRefPos=ornamentsBBox.center();
+
+    if (treeItem->getType() == TreeItem::MapCenter)
+    {
+        // set childRefPos to middle of MapCenterObj
+        QRectF r=clickPoly.boundingRect();
+        childRefPos.setX( r.topLeft().x() + r.width()/2 );
+        childRefPos.setY( r.topLeft().y() + r.height()/2 );
+        parPos=childRefPos;
+        for (int i=0; i<treeItem->branchCount(); ++i)
+            treeItem->getBranchObjNum(i)->updateLinkGeometry();
+    } else
+    {
+        if (orientation == LinkableMapObj::LeftOfCenter )
+        {
+            // Left of center
+            if ( ((BranchItem*)treeItem)->getFrameIncludeChildren() )
+            {
+                childRefPos=QPointF (ornamentsBBox.bottomLeft().x() - leftPad,  bottomlineY);
+                parPos=QPointF   (bboxTotal.bottomRight().x()-frame->getPadding()/2, bottomlineY);
+            } else
+            {
+                childRefPos=QPointF (ornamentsBBox.bottomLeft().x() - frame->getPadding(),  bottomlineY);
+                parPos=QPointF   (ornamentsBBox.bottomRight().x(), bottomlineY);
+            }
+        } else
+        {
+            // Right of center
+            if ( ((BranchItem*)treeItem)->getFrameIncludeChildren() )
+            {
+                childRefPos=QPointF(ornamentsBBox.bottomRight().x() + rightPad , bottomlineY);
+                parPos=QPointF ( bboxTotal.bottomLeft().x()+frame->getPadding()/2,  bottomlineY);
+            } else
+            {
+                childRefPos=QPointF(ornamentsBBox.bottomRight().x() + frame->getPadding(), bottomlineY);
+                parPos=QPointF ( ornamentsBBox.bottomLeft().x(),  bottomlineY);
+            }
+        }
+    }
+}
+
+void BranchObj::updateData()
+{
+    if (!treeItem)
+    {
+        qWarning ("BranchObj::udpateHeading treeItem==NULL");
+        return;
+    }
+    QString s = treeItem->getHeadingText();
+    if ( s!=heading->text()) heading->setText (s);
+
+    QStringList TIactiveFlags=treeItem->activeStandardFlagNames();
+
+    // Add missing standard flags active in TreeItem
+    for (int i=0;i<=TIactiveFlags.size()-1;i++)
+    {
+        if (!standardFlags->isActive (TIactiveFlags.at(i) ))
+        {
+            Flag *f=standardFlagsMaster->getFlag(TIactiveFlags.at(i));
+            if (f) standardFlags->activate (f);
+        }
+    }
+    // Remove standard flags no longer active in TreeItem
+    QStringList BOactiveFlags=standardFlags->activeFlagNames();
+    for (int i=0;i<BOactiveFlags.size();++i)
+        if (!TIactiveFlags.contains (BOactiveFlags.at(i)))
+            standardFlags->deactivate (BOactiveFlags.at(i));
+
+    // Add missing system flags active in TreeItem
+    TIactiveFlags=treeItem->activeSystemFlagNames();
+    for (int i=0;i<TIactiveFlags.size();++i)
+    {
+        if (!systemFlags->isActive (TIactiveFlags.at(i) ))
+        {
+            Flag *f=systemFlagsMaster->getFlag(TIactiveFlags.at(i));
+            if (f) systemFlags->activate (f);
+        }
+    }
+    // Remove system flags no longer active in TreeItem
+    BOactiveFlags=systemFlags->activeFlagNames();
+    for (int i=0;i<BOactiveFlags.size();++i)
+    {
+        if (!TIactiveFlags.contains (BOactiveFlags.at(i)))
+            systemFlags->deactivate (BOactiveFlags.at(i));
+    }
+    calcBBoxSize();
+}
+
+void BranchObj::setDefAttr (BranchModification mod, bool keepFrame)
+{
+    QFont font=treeItem->getModel()->getMapDefaultFont();
+    qreal fontsize=font.pointSizeF();
+    switch (treeItem->depth())
+    {
+    case 0:
+        break;
+    case 1:
+        fontsize=fontsize-2;
+        break;
+    case 2:
+        fontsize=fontsize-4;
+        break;
+    default:
+        fontsize=fontsize-6;
+        break;
+    }
+    setLinkStyle(getDefLinkStyle(treeItem->parent() ));
+    setLinkColor ();
+    font.setPointSizeF (fontsize);
+    heading->setFont(font );
+
+    if (mod==NewBranch && !keepFrame)
+    {
+        if (treeItem->depth()==0)
+            setFrameType (FrameObj::Rectangle);
+        else
+            setFrameType (FrameObj::NoFrame);
+    }
+    if (mod==NewBranch)
+        setColor (treeItem->getHeadingColor() );
+    else
+    {
+        // Relinked mapcenters
+        if (!keepFrame && getFrameType()!=FrameObj::NoFrame)
+            setFrameType (FrameObj::NoFrame);
+
+        // Also set styles for children
+        for (int i=0; i<treeItem->branchCount(); ++i)
+            treeItem->getBranchObjNum(i)->setDefAttr(MovedBranch, keepFrame);
+    }
+    calcBBoxSize();
+}
+
+void BranchObj::alignRelativeTo (QPointF ref,bool alignSelf)
+{
+    // Define some heights
+    qreal th = bboxTotal.height();  
+    qreal ch=0; // Sum of childrens heights
+    for (int i=0; i<treeItem->branchCount(); ++i)
+        ch+=treeItem->getBranchObjNum(i)->getTotalBBox().height();
+
+    int depth = 0;
+    BranchItem::LayoutHint layoutHint = BranchItem::AutoPositioning;
+    if (parObj)
+    {
+        TreeItem *pi = parObj->getTreeItem();
+        depth = 1 + pi->depth();
+        layoutHint = ((BranchItem*)treeItem)->parentBranch()->getChildrenLayout();
+    }
+    
+    // set useRelPos, depending on layout
+    if (depth > 1)
+    {
+        if (layoutHint == BranchItem::FreePositioning)
+        {
+            if (!useRelPos) 
+            {
+                useRelPos = true;
+                // if we used relPos before, set known positions
+                // "known" means any position != (0,0)
+                if (relPos == QPointF(0,0) )
+                    // use current position to get relPos()
+                    setRelPos();
+            }
+        }
+        else
+            useRelPos = false;
+    }
+
+// TODO testing
+/*
+    if (debug)
+    {
+        QString o;
+        switch (orientation)
+        {      
+            case UndefinedOrientation: o = "UndefOrientation"; break;
+            case LeftOfCenter: o = "LeftOfCenter"; break;
+            case RightOfCenter: o = "RightOfCenter"; break;
+        }
+            
+        QString h=QString (depth+1,' ');
+        h += treeItem->getHeadingPlain();
+        h += QString (25,' ');
+        h.truncate (25);
+        QPointF pp; 
+        if (parObj) pp = parObj->getChildRefPos();
+        qDebug() << "BO::alignRelTo for "<<h
+    //    qDebug() << "    d="<<depth;
+    //    qDebug() <<"   ref="<<ref;
+    //    qDebug() <<"    th="<<th;
+    //    qDebug() <<"    ch="<<ch;
+    //    if (ch < th) qDebug()<<"   ch<th !";
+    //    qDebug() <<"  parO="<<parObj;
+        //qDebug() <<   "  bbox.tL="<<bboxTotal.topLeft();
+        << "  useRelPos=" << useRelPos 
+        << " layoutHint= " << layoutHint
+    //    qDebug() <<"absPos="<<absPos
+       << "  relPos="<<relPos
+    // << "  parPos="<<pp
+    // << "  bbox="<<bbox
+       << "  orient="<<o<<" "<<orientation;
+    // << "  alignSelf="<<alignSelf
+    // << "  scrolled="<<((BranchItem*)treeItem)->isScrolled()
+    // << "  pad="<<topPad<<","<<botPad<<","<<leftPad<<","<<rightPad
+    // << "  hidden="<<hidden
+    // << "  th="<<th
+        ;
+    }
+   */
+
+    setOrientation();
+
+    // Align myself
+    if (depth==0)
+        move (getAbsPos()); // Trigger update of frames etc.
+    else if(depth==1)
+        move2RelPos (getRelPos() );
+    else if (depth>1)
+    {
+        if (layoutHint == BranchItem::FreePositioning)
+            move2RelPos (getRelPos() );
+        else
+        {
+            if (anim.isAnimated())
+                move2RelPos(anim);
+            else
+            {
+                if (alignSelf)
+                    switch (orientation)
+                    {
+                    case LinkableMapObj::LeftOfCenter:
+                        move (ref.x() - bbox.width(), ref.y() + (th-bbox.height())/2 );
+                        break;
+                    case LinkableMapObj::RightOfCenter:
+                        move (ref.x() , ref.y() + (th - bbox.height())/2 );
+                        break;
+                    default:
+                        qWarning ("LMO::alignRelativeTo: oops, no orientation given for BO...");
+                        break;
+                    }
+            }
+        }
+    }
+
+    // Without ancestors I am done
+    if ( ((BranchItem*)treeItem)->isScrolled() ) return;
+
+    // Set reference point for alignment of children
+    QPointF ref2;
+    if (orientation==LinkableMapObj::LeftOfCenter)
+        ref2.setX(childRefPos.x() - linkwidth);
+    else
+        ref2.setX(childRefPos.x() + linkwidth);
+
+    if (depth==1)
+        ref2.setY (absPos.y() + (bbox.height() - ch)/2);
+    else
+    {
+        if (ch > th)
+            ref2.setY (ref.y() + frame->getPadding());
+        else
+            // Parent is bigger than all of childs, center childs vertically
+            ref2.setY (ref.y() + (th - ch)/2 );
+    }
+
+    // Align the branch children depending on reference point
+    for (int i=0; i<treeItem->branchCount(); ++i)
+    {
+        if (!treeItem->getBranchNum(i)->isHidden())
+        {
+            treeItem->getBranchObjNum(i)->alignRelativeTo (ref2,true);
+
+            // append next branch below current one
+            ref2.setY(ref2.y() + treeItem->getBranchObjNum(i)->getTotalBBox().height() );
+        }
+    }
+}
+
+void BranchObj::reposition()
+{   
+/* TODO testing only
+    if (debug) 
+    {
+        if (!treeItem->getHeading().isEmpty())
+            qDebug()<< "  BO::reposition  a) d="<<treeItem->depth()<<" "<<treeItem->getHeading();
+        else    
+            qDebug()<< "  BO::reposition  a) d="<<treeItem->depth()<<" ???";
+    }
+*/     
+
+    if (treeItem->depth()==0)
+       // only calculate the sizes once. If the deepest LMO 
+       // changes its height,
+       // all upper LMOs have to change, too.
+       calcBBoxSizeWithChildren(); 
+
+    alignRelativeTo ( QPointF (absPos.x(),
+        absPos.y()-(bboxTotal.height()-bbox.height())/2) );    
+}
+
+void BranchObj::unsetAllRepositionRequests()
+{
+    repositionRequest=false;
+    for (int i=0; i<treeItem->branchCount(); ++i)
+        treeItem->getBranchObjNum(i)->unsetAllRepositionRequests();
+}
+
+QRectF BranchObj::getTotalBBox()
+{
+    return bboxTotal;
+}
+
+ConvexPolygon BranchObj::getBoundingPolygon()  
+{
+    if (treeItem->branchCount()==0 || treeItem->depth()==0)
+    {
+        if (boundingPolygon)
+            boundingPolygon->setPolygon (MapObj::getBoundingPolygon() );
+        return MapObj::getBoundingPolygon();
+    }
+
+    QPolygonF p;
+    p<<bboxTotal.topLeft();
+    p<<bboxTotal.topRight();
+    p<<bboxTotal.bottomRight();
+    p<<bboxTotal.bottomLeft();
+    if (boundingPolygon) boundingPolygon->setPolygon (p );
+    return p;
+}
+
+void BranchObj::calcBBoxSizeWithChildren()  
+{   
+    // if branch is scrolled, ignore children, but still consider floatimages
+    BranchItem *bi=(BranchItem*)treeItem;
+    if ( bi->isScrolled() )
+    {
+        bboxTotal.setWidth (bbox.width());
+        bboxTotal.setHeight(bbox.height());
+        return;
+    }
+    
+    if (bi->isHidden())
+    {
+        bboxTotal.setWidth (0);
+        bboxTotal.setHeight(0);
+        return;
+    }
+    
+    QRectF r(0,0,0,0);
+    QRectF br;
+
+    // Now calculate
+    // sum of heights
+    // maximum of widths
+    // minimum of y
+    for (int i=0; i<treeItem->branchCount(); i++)
+    {
+        if (!bi->getBranchNum(i)->isHidden())
+        {
+            BranchObj *bo=bi->getBranchObjNum(i);
+            bo->calcBBoxSizeWithChildren();
+            br=bo->getTotalBBox();
+            r.setWidth( max (br.width(), r.width() ));
+            r.setHeight(br.height() + r.height() );
+        }
+    }
+
+    // Add myself and also
+    // add width of link to sum if necessary
+    if (bi->branchCount()<1)
+        bboxTotal.setWidth (bbox.width() + r.width()  );
+    else
+        bboxTotal.setWidth (bbox.width() + r.width() + linkwidth );
+    
+    // bbox already contains frame->padding()*2
+    bboxTotal.setHeight(max (r.height() + frame->getPadding()*2,  bbox.height()) );
+}
+
+void BranchObj::setAnimation(const AnimPoint &ap)
+{
+    anim=ap;
+}
+
+void BranchObj::stopAnimation()
+{
+    anim.stop();
+    if (useRelPos)
+        setRelPos (anim);
+    else
+        move (anim);
+}
+
+bool BranchObj::animate()
+{
+    anim.animate ();
+    if ( anim.isAnimated() )
+    {
+        if (useRelPos)
+            setRelPos (anim);
+        else
+            move (anim);
+        return true;
+    }
+    return false;
+}
+
diff --git a/branchobj.h b/branchobj.h
new file mode 100644 (file)
index 0000000..7a1c5d1
--- /dev/null
@@ -0,0 +1,63 @@
+#ifndef BRANCHOBJ_H
+#define BRANCHOBJ_H
+
+#include "floatimageobj.h"
+#include "linkablemapobj.h"
+#include "ornamentedobj.h"
+#include "xlinkobj.h"
+
+/*! \brief A branch visible in the map */
+
+/////////////////////////////////////////////////////////////////////////////
+class BranchObj:public OrnamentedObj {
+public:
+    /*! New branches will get use same color for heading as parent */
+    enum BranchModification {NewBranch, MovedBranch};
+
+    BranchObj (QGraphicsItem *parent=NULL,TreeItem *ti=NULL);
+    ~BranchObj ();
+    virtual void init ();
+    virtual void copy (BranchObj*);
+    void clear();
+
+    virtual void setParObjTmp (LinkableMapObj*,QPointF,int);// Only for moving Obj around
+    virtual void unsetParObjTmp();         // reuse original ParObj
+
+    virtual void setVisibility(bool,int);   // set visibility
+    virtual void setVisibility(bool);      // set vis. for w
+    virtual void setLinkColor();           // set the color of link
+
+    virtual void positionContents();
+    virtual void move (double x,double y);
+    virtual void move (QPointF);
+    virtual void moveBy (double x,double y);
+    virtual void moveBy (QPointF);
+
+    virtual void positionBBox();
+    virtual void calcBBoxSize();
+    virtual void setDockPos();
+    
+    virtual void updateData(); //! Update represantatio of heading, flags, etc.
+
+public:        
+    virtual void setDefAttr (BranchModification, bool keepFrame=false);        // set default attributes (frame, font, size, ...)
+
+    virtual void alignRelativeTo(const QPointF, bool alignSelf=false );
+    virtual void reposition();
+    virtual void unsetAllRepositionRequests();
+
+    virtual QRectF getTotalBBox();     // return size of BBox including children  
+    virtual ConvexPolygon getBoundingPolygon();
+    virtual void calcBBoxSizeWithChildren();   // calc size of  BBox including children recursivly
+
+    virtual void setAnimation(const AnimPoint &ap);
+    virtual void stopAnimation();
+    virtual bool animate();
+
+protected:
+    AnimPoint anim;
+};
+
+
+#endif
+
diff --git a/branchpropeditor.cpp b/branchpropeditor.cpp
new file mode 100644 (file)
index 0000000..c5d7a6d
--- /dev/null
@@ -0,0 +1,404 @@
+#include "branchpropeditor.h"
+
+#include <QColorDialog>
+
+#include "branchitem.h"
+#include "frameobj.h"
+#include "settings.h"
+#include "vymmodel.h"
+
+extern Settings settings;
+extern QString vymName;
+
+
+BranchPropertyEditor::BranchPropertyEditor (QWidget *parent): QDialog (parent) // FIXME-4 not updating when data is set elsewhere (connect to dataCHanged)
+
+{
+    ui.setupUi (this);
+
+    setWindowTitle (vymName +" - " +tr ("Property Editor","Window caption"));
+
+    branchObj=NULL;
+    branchItem=NULL;
+    model=NULL;
+
+    ui.tabWidget->setEnabled(false);
+
+    penColor=QColor (Qt::black);
+    brushColor=QColor (Qt::black);
+    QPixmap pix( 16,16);
+    pix.fill (penColor);
+    ui.framePenColorButton->setIcon (pix);
+    ui.frameBrushColorButton->setIcon (pix);
+
+    if (!settings.value( "/mainwindow/showTestMenu",false).toBool() )
+        ui.tabWidget->widget (3)->hide();
+
+
+    /* Create Model and View to hold attributes
+    attributeModel = new QStandardItemModel (1,3,this);
+    attributeModel->setHeaderData(0, Qt::Horizontal, tr("Name","Branchprop window: Attribute name"));
+    attributeModel->setHeaderData(1, Qt::Horizontal, tr("Value","Branchprop window: Attribute value"));
+    attributeModel->setHeaderData(2, Qt::Horizontal, tr("Type","Branchprop window: Attribute type"));
+    ui.attributeTableView->setModel (attributeModel);
+    */
+
+    // Load Settings
+    resize (settings.value ( "/satellite/propertywindow/geometry/size", QSize(450,600)).toSize());
+    move   (settings.value ( "/satellite/propertywindow/geometry/pos", QPoint (250,50)).toPoint());
+    
+    if (settings.value ( "/satellite/propertywindow/showWithMain",true).toBool())
+        show();
+    else
+        hide();
+}
+
+BranchPropertyEditor::~BranchPropertyEditor ()
+{
+    settings.setValue( "/satellite/propertywindow/geometry/size", size() );
+    settings.setValue( "/satellite/propertywindow/geometry/pos", pos() );
+    settings.setValue( "/satellite/propertywindow/showWithMain",isVisible() );
+}
+
+void BranchPropertyEditor::setItem (TreeItem *ti)   
+{
+    disconnectSignals();
+    if (!ti)
+        ui.tabWidget->setEnabled (false);
+    else if (ti->isBranchLikeType() )
+    {
+        branchItem=(BranchItem*)ti;
+
+        branchObj=(BranchObj*)(branchItem->getLMO());
+        if (branchObj)     // FIXME-4 replace by branchItem later, when Frame is ported...
+        {
+            ui.tabWidget->setEnabled (true);
+            for (int i=0; i<3;++i)
+                ui.tabWidget->setTabEnabled (i,true);
+            ui.tabWidget->setTabEnabled (3,false);
+
+            // Frame
+            FrameObj::FrameType t=branchObj->getFrameType();
+            if (t==FrameObj::NoFrame)   // FIXME-3 Check if all below depends on frame type???
+            {
+                ui.frameTypeCombo->setCurrentIndex (0);
+                penColor=Qt::white;
+                brushColor=Qt::white;
+                ui.colorGroupBox->setEnabled (false);
+                ui.framePaddingSpinBox->setEnabled (false);
+                ui.frameWidthSpinBox->setEnabled (false);
+                ui.framePaddingLabel->setEnabled (false);
+                ui.frameBorderLabel->setEnabled (false);
+                ui.includeChildrenCheckBox->setEnabled (false);
+                ui.includeChildrenCheckBox->setEnabled (false);
+            } else
+            {
+                penColor=branchObj->getFramePenColor();
+                brushColor=branchObj->getFrameBrushColor();
+                QPixmap pix( 16,16);
+                pix.fill (penColor);
+                ui.framePenColorButton->setIcon (pix);
+                pix.fill (brushColor);
+                ui.frameBrushColorButton->setIcon (pix);
+                ui.colorGroupBox->setEnabled (true);
+                ui.framePaddingSpinBox->setEnabled (true);
+                ui.framePaddingSpinBox->setValue (branchObj->getFramePadding());
+                ui.frameWidthSpinBox->setEnabled (true);
+                ui.frameWidthSpinBox->setValue (branchObj->getFrameBorderWidth());
+                ui.framePaddingLabel->setEnabled (true);
+                ui.frameBorderLabel->setEnabled (true);
+                ui.includeChildrenCheckBox->setEnabled (true);
+
+                switch (t)
+                {
+                case FrameObj::Rectangle:
+                    ui.frameTypeCombo->setCurrentIndex (1);
+                    break;
+                case FrameObj::RoundedRectangle:
+                    ui.frameTypeCombo->setCurrentIndex (2);
+                    break;
+                case FrameObj::Ellipse:
+                    ui.frameTypeCombo->setCurrentIndex (3);
+                    break;
+                case FrameObj::Cloud:
+                    ui.frameTypeCombo->setCurrentIndex (4);
+                    break;
+                default:
+                    break;
+                }
+                if (branchItem->getFrameIncludeChildren())
+                    ui.includeChildrenCheckBox->setCheckState (Qt::Checked);
+                else
+                    ui.includeChildrenCheckBox->setCheckState (Qt::Unchecked);
+            }
+            // Link
+            if (branchItem->getHideLinkUnselected())
+                ui.hideLinkIfUnselected->setCheckState (Qt::Checked);
+            else
+                ui.hideLinkIfUnselected->setCheckState (Qt::Unchecked);
+
+            // Layout
+            if (branchItem->getIncludeImagesVer())
+                ui.incImgVer->setCheckState (Qt::Checked);
+            else
+                ui.incImgVer->setCheckState (Qt::Unchecked);
+            if (branchItem->getIncludeImagesHor())
+                ui.incImgHor->setCheckState (Qt::Checked);
+            else
+                ui.incImgHor->setCheckState (Qt::Unchecked);
+            if (branchItem->getChildrenLayout() == BranchItem::FreePositioning)
+                ui.childrenFreePositioning->setCheckState( Qt::Checked);
+            else
+                ui.childrenFreePositioning->setCheckState( Qt::Unchecked);
+
+
+            /*
+        // Attributes
+        attributeModel->removeRows(0, attributeModel->rowCount(), QModelIndex());
+
+        // some samples for attribute testing
+        QStringList attrTypes=mapEditor->attributeTable()->getTypes();
+        for (int i=0; i<attrTypes.count()-1;i++)
+        {
+        attributeModel->insertRow (i,QModelIndex ());
+        attributeModel->setData(attributeModel->index(i, 0, QModelIndex()), QString ("Name %1").arg(i));
+        attributeModel->setData(attributeModel->index(i, 1, QModelIndex()), i);
+        attributeModel->setData(attributeModel->index(i, 2, QModelIndex()), attrTypes.at(i));
+        }
+
+
+        ui.attributeTableView->resizeColumnsToContents();
+
+        // Initialize Delegate
+        delegate.setAttributeTable (mapEditor->attributeTable());
+        ui.attributeTableView->setItemDelegate (&delegate);
+    */
+
+            // Finally activate signals
+            connectSignals();
+        } // BranchItem
+    } else if (ti->getType()==TreeItem::Attribute)
+    {
+        ui.tabWidget->setEnabled (true);
+        for (int i=0; i<3;++i)
+            ui.tabWidget->setTabEnabled (i,false);
+        ui.tabWidget->setTabEnabled (3,true);
+    } else
+    {
+        ui.tabWidget->setEnabled (false);
+    }
+}
+
+void BranchPropertyEditor::setModel (VymModel *m)
+{
+    model=m;
+    if (model) 
+       setItem (model->getSelectedItem() );
+    else
+       ui.tabWidget->setEnabled (false);
+       
+}
+
+void BranchPropertyEditor::frameTypeChanged (int i)
+{
+    if (model)
+    {
+       switch (i)
+       {
+           case 0: model->setFrameType (FrameObj::NoFrame); break;
+           case 1: 
+               model->setFrameType (FrameObj::Rectangle); 
+               break;
+           case 2: 
+               model->setFrameType (FrameObj::RoundedRectangle); 
+               break;
+           case 3: 
+               model->setFrameType (FrameObj::Ellipse); 
+               break;
+           case 4: 
+               model->setFrameType (FrameObj::Cloud); 
+               break;
+       }
+       setItem (branchItem);
+    }  
+}
+
+void BranchPropertyEditor::framePenColorClicked()
+{
+    if (model) 
+    {  
+       QColor col = QColorDialog::getColor( penColor, this );
+       if ( col.isValid() ) 
+       {
+           penColor=col;
+           model->setFramePenColor (penColor);
+       }   
+    }
+}
+
+void BranchPropertyEditor::frameBrushColorClicked()
+{
+    if (model) 
+    {
+       QColor col = QColorDialog::getColor( brushColor, this );
+       if ( col.isValid() ) 
+       {
+           brushColor=col;
+           model->setFrameBrushColor (brushColor);
+       }   
+    }  
+}
+
+void BranchPropertyEditor::framePaddingChanged(int i)
+{
+    if (model) model->setFramePadding (i);
+}
+
+void BranchPropertyEditor::frameBorderWidthChanged(int i)
+{
+    if (model) model->setFrameBorderWidth(i);
+}
+
+void BranchPropertyEditor::frameIncludeChildrenChanged(int i)
+{
+    if (model) model->setFrameIncludeChildren(i);
+}
+
+void BranchPropertyEditor::linkHideUnselectedChanged (int i)
+{
+    if (!branchItem) return;
+    model->setHideLinkUnselected(i);
+}
+
+void BranchPropertyEditor::incImgVerChanged (int  i)
+{
+    if (model) model->setIncludeImagesVer (i);
+}
+
+void BranchPropertyEditor::incImgHorChanged (int  i)
+{
+    if (model) model->setIncludeImagesHor (i);
+}
+
+void BranchPropertyEditor::childrenFreePositioningChanged (int  i)
+{
+    if (model)
+    {
+        if (i>0)
+            model->setChildrenLayout( BranchItem::FreePositioning);
+        else
+            model->setChildrenLayout( BranchItem::AutoPositioning);
+    }
+}
+
+void BranchPropertyEditor::closeEvent( QCloseEvent* ce )
+{
+    ce->accept();   // can be reopened with show()
+    hide();
+    emit (windowClosed() );
+    return;
+}
+
+/*
+void BranchPropertyEditor::addAttributeClicked()
+{
+    // Add empty line for adding attributes
+    attributeModel->insertRow (attributeModel->rowCount (),QModelIndex ());
+    attributeModel->setData(attributeModel->index(attributeModel->rowCount()-1, 0, QModelIndex()),  "Add new");
+    attributeModel->setData(attributeModel->index(attributeModel->rowCount()-1, 2, QModelIndex()),  "Undefined");
+
+    // Select attribute from list
+    ui.attributeTableView->edit (attributeModel->index(attributeModel->rowCount()-1,0, QModelIndex() ));
+    ui.attributeTableView->resizeColumnsToContents();
+
+//  QString attname=attributeModel->in
+//  attributeModel->setData(attributeModel->index(attributeModel->rowCount()-1, 2, QModelIndex()),  );
+
+
+
+    ui.attributeTableView->edit (attributeModel->index(attributeModel->rowCount()-1,1, QModelIndex() ));
+
+}
+
+void BranchPropertyEditor::deleteAttributeClicked()
+{
+    //qDebug() << "BPW::delete";
+}
+*/
+
+void BranchPropertyEditor::connectSignals()
+{
+    // Frame
+    connect ( 
+        ui.framePenColorButton, SIGNAL (clicked()),
+        this, SLOT (framePenColorClicked()));
+    connect ( 
+        ui.framePaddingSpinBox, SIGNAL (valueChanged( int)),
+        this, SLOT (framePaddingChanged (int)));
+    connect ( 
+        ui.frameWidthSpinBox, SIGNAL (valueChanged( int)),
+        this, SLOT (frameBorderWidthChanged (int)));
+    connect ( 
+        ui.frameBrushColorButton, SIGNAL (clicked()),
+        this, SLOT (frameBrushColorClicked()));
+    connect ( 
+        ui.frameTypeCombo, SIGNAL (currentIndexChanged( int)),
+        this, SLOT (frameTypeChanged (int)));
+    connect ( 
+        ui.includeChildrenCheckBox, SIGNAL (stateChanged( int)),
+        this, SLOT (frameIncludeChildrenChanged (int)));
+
+    // Link 
+    connect ( 
+        ui.hideLinkIfUnselected, SIGNAL (stateChanged( int)),
+        this, SLOT (linkHideUnselectedChanged (int)));
+
+    // Layout  
+    connect ( 
+        ui.incImgVer, SIGNAL (stateChanged( int)),
+        this, SLOT (incImgVerChanged (int)));
+    connect ( 
+        ui.incImgHor, SIGNAL (stateChanged( int)),
+        this, SLOT (incImgHorChanged (int)));
+    connect (
+        ui.childrenFreePositioning, SIGNAL (stateChanged( int)),
+        this, SLOT (childrenFreePositioningChanged (int)));
+
+/*
+    // Attributes   
+    connect ( 
+       ui.addAttributeButton, SIGNAL (clicked()), 
+       this, SLOT (addAttributeClicked()));
+    connect ( 
+       ui.deleteAttributeButton, SIGNAL (clicked()), 
+       this, SLOT (deleteAttributeClicked()));
+*/     
+}
+
+
+void BranchPropertyEditor::disconnectSignals()
+{
+    // Frame 
+    disconnect ( ui.frameTypeCombo, 0,0,0);
+    disconnect ( ui.framePenColorButton, 0,0,0);
+    disconnect ( ui.framePaddingSpinBox, 0,0,0);
+    disconnect ( ui.frameWidthSpinBox, 0,0,0);
+    disconnect ( ui.frameBrushColorButton, 0,0,0);
+    disconnect ( ui.includeChildrenCheckBox, 0,0,0);
+
+    // Link 
+    disconnect ( ui.hideLinkIfUnselected, 0,0,0);
+
+    // Layout  
+    disconnect ( ui.incImgVer, 0,0,0);
+    disconnect ( ui.incImgHor, 0,0,0);
+    disconnect ( ui.childrenFreePositioning, 0,0,0);
+
+    // Attributes
+    /*
+    disconnect ( ui.addAttributeButton, 0,0,0);
+    disconnect ( ui.deleteAttributeButton, 0,0,0);
+    */
+}
+
+
diff --git a/branchpropeditor.h b/branchpropeditor.h
new file mode 100644 (file)
index 0000000..26ca3dc
--- /dev/null
@@ -0,0 +1,64 @@
+#ifndef BRANCHPROPERTYEDITOR_H
+#define BRANCHPROPERTYEDITOR_H
+
+#include "ui_branchpropeditor.h"
+
+#include <QDialog>
+#include <QCloseEvent>
+#include <QtGui>
+
+
+//#include "attributedelegate.h"
+#include "branchobj.h"
+
+class QAbstractItemModel;
+class VymModel;
+
+class BranchPropertyEditor:public QDialog
+{
+    Q_OBJECT
+public:
+    BranchPropertyEditor (QWidget *parent=0);
+    ~BranchPropertyEditor ();
+    void setItem (TreeItem *);
+    void setModel (VymModel *);
+
+private slots:
+    void frameTypeChanged (int);
+    void framePenColorClicked ();
+    void frameBrushColorClicked ();
+    void framePaddingChanged(int);
+    void frameBorderWidthChanged(int);
+    void frameIncludeChildrenChanged(int);
+    void linkHideUnselectedChanged (int);
+    void incImgVerChanged (int);
+    void incImgHorChanged (int);
+    void childrenFreePositioningChanged (int);
+//  void addAttributeClicked();
+//  void deleteAttributeClicked();
+
+signals:
+    void windowClosed();
+    
+protected:
+    void closeEvent( QCloseEvent* );
+
+private:
+    void connectSignals();
+    void disconnectSignals();
+    
+    Ui::BranchPropertyEditor ui;
+
+    BranchObj *branchObj;
+    BranchItem *branchItem;
+    VymModel *model;
+
+    QColor penColor;
+    QColor brushColor;
+
+//  QAbstractItemModel *attributeModel;
+
+//  AttributeDelegate delegate;
+};
+
+#endif // 
diff --git a/branchpropeditor.ui b/branchpropeditor.ui
new file mode 100644 (file)
index 0000000..9b9f839
--- /dev/null
@@ -0,0 +1,406 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>BranchPropertyEditor</class>
+ <widget class="QWidget" name="BranchPropertyEditor">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>298</width>
+    <height>304</height>
+   </rect>
+  </property>
+  <property name="sizePolicy">
+   <sizepolicy hsizetype="Minimum" vsizetype="Preferred">
+    <horstretch>0</horstretch>
+    <verstretch>0</verstretch>
+   </sizepolicy>
+  </property>
+  <property name="windowTitle">
+   <string>Branch Property Editor</string>
+  </property>
+  <layout class="QVBoxLayout">
+   <item>
+    <widget class="QTabWidget" name="tabWidget">
+     <property name="currentIndex">
+      <number>1</number>
+     </property>
+     <widget class="QWidget" name="tab">
+      <attribute name="title">
+       <string>Frame</string>
+      </attribute>
+      <layout class="QVBoxLayout">
+       <property name="spacing">
+        <number>6</number>
+       </property>
+       <property name="leftMargin">
+        <number>9</number>
+       </property>
+       <property name="topMargin">
+        <number>9</number>
+       </property>
+       <property name="rightMargin">
+        <number>9</number>
+       </property>
+       <property name="bottomMargin">
+        <number>9</number>
+       </property>
+       <item>
+        <widget class="QGroupBox" name="groupBox">
+         <property name="title">
+          <string>Geometry</string>
+         </property>
+         <layout class="QGridLayout">
+          <item row="0" column="0" colspan="4">
+           <widget class="QComboBox" name="frameTypeCombo">
+            <property name="sizePolicy">
+             <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
+              <horstretch>0</horstretch>
+              <verstretch>0</verstretch>
+             </sizepolicy>
+            </property>
+            <item>
+             <property name="text">
+              <string>No Frame</string>
+             </property>
+            </item>
+            <item>
+             <property name="text">
+              <string>Rectangle</string>
+             </property>
+            </item>
+            <item>
+             <property name="text">
+              <string>Rounded Rectangle</string>
+             </property>
+            </item>
+            <item>
+             <property name="text">
+              <string>Ellipse</string>
+             </property>
+            </item>
+            <item>
+             <property name="text">
+              <string>Cloud</string>
+             </property>
+            </item>
+           </widget>
+          </item>
+          <item row="2" column="3">
+           <spacer>
+            <property name="orientation">
+             <enum>Qt::Horizontal</enum>
+            </property>
+            <property name="sizeHint" stdset="0">
+             <size>
+              <width>40</width>
+              <height>20</height>
+             </size>
+            </property>
+           </spacer>
+          </item>
+          <item row="2" column="1" colspan="2">
+           <widget class="QLabel" name="framePaddingLabel">
+            <property name="text">
+             <string>Padding</string>
+            </property>
+           </widget>
+          </item>
+          <item row="3" column="1" colspan="2">
+           <widget class="QLabel" name="frameBorderLabel">
+            <property name="text">
+             <string>Borderline width</string>
+            </property>
+           </widget>
+          </item>
+          <item row="2" column="0">
+           <widget class="QSpinBox" name="framePaddingSpinBox">
+            <property name="maximum">
+             <number>50</number>
+            </property>
+           </widget>
+          </item>
+          <item row="3" column="0">
+           <widget class="QSpinBox" name="frameWidthSpinBox">
+            <property name="minimum">
+             <number>1</number>
+            </property>
+            <property name="maximum">
+             <number>20</number>
+            </property>
+           </widget>
+          </item>
+          <item row="1" column="0" colspan="3">
+           <widget class="QCheckBox" name="includeChildrenCheckBox">
+            <property name="text">
+             <string>Include children</string>
+            </property>
+           </widget>
+          </item>
+         </layout>
+        </widget>
+       </item>
+       <item>
+        <layout class="QVBoxLayout">
+         <property name="spacing">
+          <number>6</number>
+         </property>
+         <property name="leftMargin">
+          <number>0</number>
+         </property>
+         <property name="topMargin">
+          <number>0</number>
+         </property>
+         <property name="rightMargin">
+          <number>0</number>
+         </property>
+         <property name="bottomMargin">
+          <number>0</number>
+         </property>
+         <item>
+          <widget class="QGroupBox" name="colorGroupBox">
+           <property name="sizePolicy">
+            <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
+             <horstretch>0</horstretch>
+             <verstretch>0</verstretch>
+            </sizepolicy>
+           </property>
+           <property name="title">
+            <string>Colors</string>
+           </property>
+           <layout class="QGridLayout">
+            <property name="leftMargin">
+             <number>7</number>
+            </property>
+            <property name="topMargin">
+             <number>7</number>
+            </property>
+            <property name="rightMargin">
+             <number>7</number>
+            </property>
+            <property name="bottomMargin">
+             <number>7</number>
+            </property>
+            <property name="spacing">
+             <number>6</number>
+            </property>
+            <item row="0" column="0">
+             <widget class="QPushButton" name="framePenColorButton">
+              <property name="maximumSize">
+               <size>
+                <width>20</width>
+                <height>16777215</height>
+               </size>
+              </property>
+              <property name="text">
+               <string/>
+              </property>
+             </widget>
+            </item>
+            <item row="0" column="1">
+             <widget class="QLabel" name="penColorLabelDesc">
+              <property name="sizePolicy">
+               <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
+                <horstretch>0</horstretch>
+                <verstretch>0</verstretch>
+               </sizepolicy>
+              </property>
+              <property name="text">
+               <string>Borderline color</string>
+              </property>
+              <property name="buddy">
+               <cstring>framePenColorButton</cstring>
+              </property>
+             </widget>
+            </item>
+            <item row="1" column="0">
+             <widget class="QPushButton" name="frameBrushColorButton">
+              <property name="maximumSize">
+               <size>
+                <width>20</width>
+                <height>16777215</height>
+               </size>
+              </property>
+              <property name="text">
+               <string/>
+              </property>
+             </widget>
+            </item>
+            <item row="1" column="1">
+             <widget class="QLabel" name="brushColorLabelDesc">
+              <property name="text">
+               <string>Background color</string>
+              </property>
+              <property name="buddy">
+               <cstring>frameBrushColorButton</cstring>
+              </property>
+             </widget>
+            </item>
+            <item row="0" column="2">
+             <spacer>
+              <property name="orientation">
+               <enum>Qt::Horizontal</enum>
+              </property>
+              <property name="sizeHint" stdset="0">
+               <size>
+                <width>40</width>
+                <height>20</height>
+               </size>
+              </property>
+             </spacer>
+            </item>
+           </layout>
+          </widget>
+         </item>
+        </layout>
+       </item>
+      </layout>
+     </widget>
+     <widget class="QWidget" name="Layout">
+      <attribute name="title">
+       <string>Layout</string>
+      </attribute>
+      <layout class="QVBoxLayout">
+       <item>
+        <layout class="QVBoxLayout">
+         <item>
+          <widget class="QCheckBox" name="incImgHor">
+           <property name="text">
+            <string>Include images horizontally</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QCheckBox" name="incImgVer">
+           <property name="text">
+            <string>Include images vertically</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QCheckBox" name="childrenFreePositioning">
+           <property name="text">
+            <string>Free positioning of children (experimental!)</string>
+           </property>
+          </widget>
+         </item>
+        </layout>
+       </item>
+       <item>
+        <spacer>
+         <property name="orientation">
+          <enum>Qt::Vertical</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>20</width>
+           <height>40</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
+      </layout>
+     </widget>
+     <widget class="QWidget" name="tab_2">
+      <attribute name="title">
+       <string>Link</string>
+      </attribute>
+      <layout class="QVBoxLayout">
+       <item>
+        <widget class="QCheckBox" name="hideLinkIfUnselected">
+         <property name="text">
+          <string>Hide link if unselected</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <spacer>
+         <property name="orientation">
+          <enum>Qt::Vertical</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>20</width>
+           <height>40</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
+      </layout>
+     </widget>
+     <widget class="QWidget" name="tab_3">
+      <attribute name="title">
+       <string>Attributes</string>
+      </attribute>
+      <layout class="QVBoxLayout">
+       <item>
+        <widget class="QTableView" name="attributeTableView"/>
+       </item>
+       <item>
+        <layout class="QHBoxLayout">
+         <property name="spacing">
+          <number>6</number>
+         </property>
+         <property name="leftMargin">
+          <number>0</number>
+         </property>
+         <property name="topMargin">
+          <number>0</number>
+         </property>
+         <property name="rightMargin">
+          <number>0</number>
+         </property>
+         <property name="bottomMargin">
+          <number>0</number>
+         </property>
+         <item>
+          <widget class="QPushButton" name="addAttributeButton">
+           <property name="text">
+            <string>+</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QPushButton" name="deleteAttributeButton">
+           <property name="text">
+            <string>-</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <spacer>
+           <property name="orientation">
+            <enum>Qt::Horizontal</enum>
+           </property>
+           <property name="sizeHint" stdset="0">
+            <size>
+             <width>41</width>
+             <height>31</height>
+            </size>
+           </property>
+          </spacer>
+         </item>
+        </layout>
+       </item>
+      </layout>
+     </widget>
+    </widget>
+   </item>
+   <item>
+    <spacer name="verticalSpacer">
+     <property name="orientation">
+      <enum>Qt::Vertical</enum>
+     </property>
+     <property name="sizeHint" stdset="0">
+      <size>
+       <width>20</width>
+       <height>40</height>
+      </size>
+     </property>
+    </spacer>
+   </item>
+  </layout>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/bugagent.cpp b/bugagent.cpp
new file mode 100644 (file)
index 0000000..d1677d2
--- /dev/null
@@ -0,0 +1,206 @@
+#include "bugagent.h"\r
+\r
+#include "branchitem.h"\r
+#include "mainwindow.h"\r
+#include "vymmodel.h"\r
+\r
+#include <QHash>\r
+\r
+extern Main *mainWindow;\r
+extern QDir vymBaseDir;\r
+extern bool debug;\r
+\r
+\r
+BugAgent::BugAgent (BranchItem *bi,const QString &u)\r
+{\r
+    if (!bi) \r
+    {\r
+       qWarning ("Const BugAgent: bi==NULL");\r
+       delete (this);\r
+       return;\r
+    }\r
+    branchID=bi->getID();\r
+    VymModel *model=bi->getModel();\r
+    modelID=model->getModelID();\r
+\r
+    //qDebug()<<"Constr. BugAgent for "<<branchID;\r
+\r
+    url=u;\r
+\r
+    QStringList args;\r
+\r
+    if (url.contains("show_bug"))\r
+    {\r
+       missionType=SingleBug;\r
+       QRegExp rx("(\\d+)");\r
+       if (rx.indexIn(url) !=-1)\r
+       {\r
+           bugID=rx.cap(1);\r
+           args<<bugID;\r
+       } else\r
+       {\r
+           qDebug()<<"BugAgent: No bugID found in: "<<url;\r
+           delete (this);\r
+           return;\r
+       }\r
+\r
+    } else if (u.contains("buglist.cgi"))\r
+    {\r
+       missionType=Query; //FIXME-3 query not supported yet by new bugger\r
+       args<<"--query";\r
+       args<<url;\r
+    } else\r
+    {\r
+       qDebug()<<"Unknown Bugzilla command:\n"<<url;\r
+       delete (this);\r
+       return;\r
+    }\r
+       \r
+\r
+    bugScript=vymBaseDir.path()+"/scripts/bugger";\r
+\r
+    p=new VymProcess;\r
+\r
+    connect (p, SIGNAL (finished(int,QProcess::ExitStatus) ), \r
+       this, SLOT (processFinished(int,QProcess::ExitStatus) ));\r
+\r
+    p->start (bugScript,args);\r
+    if (!p->waitForStarted())\r
+    {\r
+       qWarning()<<"BugAgent::getBugzillaData couldn't start "<<bugScript;\r
+       return;\r
+    }  \r
+\r
+    // Visual hint that we are doing something  // FIXME-4 show spinner instead?\r
+    if (missionType==SingleBug)\r
+        model->setHeading ("Updating: "+bi->getHeadingPlain(),bi );//FIXME-4 translation needed?\r
+       \r
+}\r
+\r
+BugAgent::~BugAgent ()\r
+{\r
+    //qDebug()<<"Destr. BugAgent for "<<branchID;\r
+    delete p;\r
+}\r
+\r
+void BugAgent::processFinished(int exitCode, QProcess::ExitStatus exitStatus)\r
+{\r
+    if (exitStatus==QProcess::NormalExit)\r
+    {\r
+       result=p->getStdout().split("\n");\r
+       QString err=p->getErrout();\r
+       if (!err.isEmpty())\r
+           qWarning() << "BugAgent Error: "<<err;\r
+       else \r
+           processBugzillaData ();\r
+\r
+    } else     \r
+       qWarning()<< "BugAgent: Process finished with exitCode="<<exitCode;\r
+    deleteLater();\r
+}\r
+\r
+\r
+void BugAgent::processBugzillaData()\r
+{\r
+    // Find model from which we had been started\r
+    VymModel *model=mainWindow->getModel (modelID);\r
+    if (model)\r
+    {\r
+       // and find branch which triggered this mission\r
+       BranchItem *missionBI=(BranchItem*)(model->findID (branchID));      \r
+       if (missionBI)\r
+       {\r
+           // Here we go...\r
+\r
+           QRegExp re("(\\d*):(\\S*):\"(.*)\"");\r
+           re.setMinimal(false);\r
+           bug_desc.clear();\r
+           bug_prio.clear();\r
+           bug_sev.clear();\r
+           bug_deltats.clear();\r
+           bug_status.clear();\r
+           bug_whiteboard.clear();\r
+\r
+           QStringList bugs; \r
+           foreach (QString line,result)\r
+           {\r
+               if (debug) qDebug()<<"BugAgent::procBugData  line="<<line;\r
+               if (re.indexIn(line) !=-1) \r
+               {\r
+                   if (re.cap(2)=="short_desc") \r
+                   {\r
+                       bugs.append(re.cap(1));\r
+                       bug_desc[re.cap(1)]=re.cap(3).replace("\\\"","\"");\r
+                   }   \r
+                   else if (re.cap(2)=="priority") \r
+                       bug_prio[re.cap(1)]=re.cap(3).left(2);\r
+                   else if (re.cap(2)=="bug_severity") \r
+                   {\r
+                       if (re.cap(3)=="Critical")\r
+                           bug_sev[re.cap(1)]="S1";\r
+                       else if (re.cap(3)=="Major")\r
+                           bug_sev[re.cap(1)]="S2";\r
+                       else if (re.cap(3)=="Normal")\r
+                           bug_sev[re.cap(1)]="S3";\r
+                       else if (re.cap(3)=="Minor")\r
+                           bug_sev[re.cap(1)]="S4";\r
+                       else if (re.cap(3)=="Enhancement")\r
+                           bug_sev[re.cap(1)]="S5";\r
+                       else \r
+                       {\r
+                           qWarning()<<"BugAgent: Bugzilla returned severity "<<re.cap(3);\r
+                           bug_sev[re.cap(1)]=re.cap(3);\r
+                       }\r
+                   }   \r
+                   else if (re.cap(2)=="delta_ts") \r
+                       bug_deltats[re.cap(1)]=re.cap(3);\r
+                   else if (re.cap(2)=="bug_status") \r
+                       bug_status[re.cap(1)]=re.cap(3);\r
+                   else if (re.cap(2)=="status_whiteboard") \r
+                       bug_whiteboard[re.cap(1)]=re.cap(3);\r
+               }\r
+           }\r
+           if (bug_desc.count()<=0)\r
+               qWarning()<<"BugAgent: Couldn't find data";\r
+           else if (missionType==SingleBug)\r
+           {\r
+               // Only single bug changed\r
+               QString b=bugs.first();\r
+               setModelBugzillaData (model, missionBI,b);\r
+           } else\r
+           {\r
+               // Process results of query\r
+               BranchItem *newbi;\r
+               foreach (QString b,bugs)\r
+               {\r
+                   //qDebug ()<<" -> "<<b<<" "<<bug_desc[b];\r
+                   newbi=model->addNewBranch(missionBI);    \r
+                   newbi->setURL ("https://bugzilla.novell.com/show_bug.cgi?id="+b);\r
+                   if (!newbi)\r
+                       qWarning()<<"BugAgent: Couldn't create new branch?!";\r
+                   else\r
+                       setModelBugzillaData (model, newbi,b);\r
+               }\r
+           } \r
+       } else\r
+           qWarning ()<<"BugAgent: Found model, but not branch #"<<branchID;\r
+    } else\r
+       qWarning ()<<"BugAgent: Couldn't find model #"<<modelID;\r
+\r
+\r
+}\r
+\r
+void BugAgent::setModelBugzillaData (VymModel *model, BranchItem *bi, const QString &bugID)\r
+{\r
+    QString ps=bug_prio[bugID];\r
+    if (bug_whiteboard[bugID].contains ("PNEW")) ps=ps+"/"+bug_sev[bugID];\r
+    if (bug_status[bugID]=="CLOSED" \r
+       || bug_status[bugID]=="VERIFIED"\r
+       || bug_status[bugID]=="RESOLVED")\r
+    {\r
+    model->setHeadingPlainText ("("+ps+") - " + bugID + " - " + bug_desc[bugID],bi);\r
+       model->colorSubtree (Qt::blue,bi);\r
+    }else   \r
+    model->setHeadingPlainText (ps+ " - " + bugID + " - " + bug_desc[bugID],bi);\r
+}\r
+\r
diff --git a/bugagent.h b/bugagent.h
new file mode 100644 (file)
index 0000000..aa9a0d8
--- /dev/null
@@ -0,0 +1,48 @@
+#ifndef BUGAGENT_H
+#define BUGAGENT_H
+
+#include <QHash>
+#include <QObject>
+
+#include "vymprocess.h"
+
+class BranchItem;
+class VymModel;
+
+class BugAgent:public QObject
+{
+    Q_OBJECT
+
+enum MissionType {SingleBug,Query};
+
+public:        
+    BugAgent (BranchItem *bi,const QString &bug);
+    ~BugAgent();
+
+public slots:
+    virtual void processFinished(int exitCode, QProcess::ExitStatus exitStatus);
+
+protected:
+    virtual void processBugzillaData ();
+    virtual void setModelBugzillaData (VymModel *model, BranchItem *bi,const QString &bugID);
+
+private:
+    MissionType missionType;
+    uint branchID;
+    uint modelID;
+    QString url;
+    QString bugID;
+    QString bugScript;
+    QStringList result;
+    VymProcess *p;
+
+    QHash <QString,QString> bug_desc;
+    QHash <QString,QString> bug_prio;
+    QHash <QString,QString> bug_sev;
+    QHash <QString,QString> bug_deltats;
+    QHash <QString,QString> bug_status;
+    QHash <QString,QString> bug_whiteboard;
+
+};
+#endif
+
diff --git a/cmake/Findcppcheck.cmake b/cmake/Findcppcheck.cmake
new file mode 100644 (file)
index 0000000..7cfdc74
--- /dev/null
@@ -0,0 +1,160 @@
+# - try to find cppcheck tool
+#
+# Cache Variables:
+#  CPPCHECK_EXECUTABLE
+#
+# Non-cache variables you might use in your CMakeLists.txt:
+#  CPPCHECK_FOUND
+#  CPPCHECK_POSSIBLEERROR_ARG
+#  CPPCHECK_UNUSEDFUNC_ARG
+#  CPPCHECK_STYLE_ARG
+#  CPPCHECK_QUIET_ARG
+#  CPPCHECK_INCLUDEPATH_ARG
+#  CPPCHECK_FAIL_REGULAR_EXPRESSION
+#  CPPCHECK_WARN_REGULAR_EXPRESSION
+#  CPPCHECK_MARK_AS_ADVANCED - whether to mark our vars as advanced even
+#    if we don't find this program.
+#
+# Requires these CMake modules:
+#  FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
+#
+# Original Author:
+# 2009-2010 Ryan Pavlik <rpavlik@iastate.edu> <abiryan@ryand.net>
+# http://academic.cleardefinition.com
+# Iowa State University HCI Graduate Program/VRAC
+#
+# Copyright Iowa State University 2009-2010.
+# Distributed under the Boost Software License, Version 1.0.
+# (See accompanying file LICENSE_1_0.txt or copy at
+# http://www.boost.org/LICENSE_1_0.txt)
+
+file(TO_CMAKE_PATH "${CPPCHECK_ROOT_DIR}" CPPCHECK_ROOT_DIR)
+set(CPPCHECK_ROOT_DIR
+       "${CPPCHECK_ROOT_DIR}"
+       CACHE
+       PATH
+       "Path to search for cppcheck")
+
+# cppcheck app bundles on Mac OS X are GUI, we want command line only
+set(_oldappbundlesetting ${CMAKE_FIND_APPBUNDLE})
+set(CMAKE_FIND_APPBUNDLE NEVER)
+
+if(CPPCHECK_EXECUTABLE AND NOT EXISTS "${CPPCHECK_EXECUTABLE}")
+       set(CPPCHECK_EXECUTABLE "notfound" CACHE PATH FORCE "")
+endif()
+
+# If we have a custom path, look there first.
+if(CPPCHECK_ROOT_DIR)
+       find_program(CPPCHECK_EXECUTABLE
+               NAMES
+               cppcheck
+               cli
+               PATHS
+               "${CPPCHECK_ROOT_DIR}"
+               PATH_SUFFIXES
+               cli
+               NO_DEFAULT_PATH)
+endif()
+
+find_program(CPPCHECK_EXECUTABLE NAMES cppcheck)
+
+# Restore original setting for appbundle finding
+set(CMAKE_FIND_APPBUNDLE ${_oldappbundlesetting})
+
+# Find out where our test file is
+get_filename_component(_cppcheckmoddir ${CMAKE_CURRENT_LIST_FILE} PATH)
+set(_cppcheckdummyfile "${_cppcheckmoddir}/Findcppcheck.cpp")
+
+function(_cppcheck_test_arg _resultvar _arg)
+       if(NOT CPPCHECK_EXECUTABLE)
+               set(${_resultvar} NO)
+               return()
+       endif()
+       execute_process(COMMAND
+               "${CPPCHECK_EXECUTABLE}"
+               "${_arg}"
+               "--quiet"
+               "${_cppcheckdummyfile}"
+               RESULT_VARIABLE
+               _cppcheck_result
+               OUTPUT_QUIET
+               ERROR_QUIET)
+       if("${_cppcheck_result}" EQUAL 0)
+               set(${_resultvar} YES PARENT_SCOPE)
+       else()
+               set(${_resultvar} NO PARENT_SCOPE)
+       endif()
+endfunction()
+
+function(_cppcheck_set_arg_var _argvar _arg)
+       if("${${_argvar}}" STREQUAL "")
+               _cppcheck_test_arg(_cppcheck_arg "${_arg}")
+               if(_cppcheck_arg)
+                       set(${_argvar} "${_arg}" PARENT_SCOPE)
+               endif()
+       endif()
+endfunction()
+
+if(CPPCHECK_EXECUTABLE)
+
+       # Check for the two types of command line arguments by just trying them
+       _cppcheck_set_arg_var(CPPCHECK_STYLE_ARG "--enable=style")
+       _cppcheck_set_arg_var(CPPCHECK_STYLE_ARG "--style")
+       if("${CPPCHECK_STYLE_ARG}" STREQUAL "--enable=style")
+
+               _cppcheck_set_arg_var(CPPCHECK_UNUSEDFUNC_ARG "--enable=unusedFunction")
+               _cppcheck_set_arg_var(CPPCHECK_INFORMATION_ARG "--enable=information")
+               _cppcheck_set_arg_var(CPPCHECK_INCLUDE_ARG "--enable=missingInclude")
+               _cppcheck_set_arg_var(CPPCHECK_POSIX_ARG "--enable=posix")
+               _cppcheck_set_arg_var(CPPCHECK_POSSIBLEERROR_ARG "--enable=possibleError")
+               _cppcheck_set_arg_var(CPPCHECK_POSSIBLEERROR_ARG "--enable=all")
+
+               if(MSVC)
+                       set(CPPCHECK_TEMPLATE_ARG --template vs)
+                       set(CPPCHECK_FAIL_REGULAR_EXPRESSION "[(]error[)]")
+                       set(CPPCHECK_WARN_REGULAR_EXPRESSION "[(]style[)]")
+               elseif(CMAKE_COMPILER_IS_GNUCXX)
+                       set(CPPCHECK_TEMPLATE_ARG --template gcc)
+                       set(CPPCHECK_FAIL_REGULAR_EXPRESSION " error: ")
+                       set(CPPCHECK_WARN_REGULAR_EXPRESSION " style: ")
+               else()
+                       set(CPPCHECK_TEMPLATE_ARG --template gcc)
+                       set(CPPCHECK_FAIL_REGULAR_EXPRESSION " error: ")
+                       set(CPPCHECK_WARN_REGULAR_EXPRESSION " style: ")
+               endif()
+       elseif("${CPPCHECK_STYLE_ARG}" STREQUAL "--style")
+               # Old arguments
+               _cppcheck_set_arg_var(CPPCHECK_UNUSEDFUNC_ARG "--unused-functions")
+               _cppcheck_set_arg_var(CPPCHECK_POSSIBLEERROR_ARG "--all")
+               set(CPPCHECK_FAIL_REGULAR_EXPRESSION "error:")
+               set(CPPCHECK_WARN_REGULAR_EXPRESSION "[(]style[)]")
+       else()
+               # No idea - some other issue must be getting in the way
+               message(STATUS
+                       "WARNING: Can't detect whether CPPCHECK wants new or old-style arguments!")
+       endif()
+
+       set(CPPCHECK_QUIET_ARG "--quiet")
+       set(CPPCHECK_INCLUDEPATH_ARG "-I")
+
+endif()
+
+set(CPPCHECK_ALL
+       "${CPPCHECK_EXECUTABLE} ${CPPCHECK_POSSIBLEERROR_ARG} ${CPPCHECK_UNUSEDFUNC_ARG} ${CPPCHECK_STYLE_ARG} ${CPPCHECK_QUIET_ARG} ${CPPCHECK_INCLUDEPATH_ARG} some/include/path")
+
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(cppcheck
+       DEFAULT_MSG
+       CPPCHECK_ALL
+       CPPCHECK_EXECUTABLE
+       CPPCHECK_POSSIBLEERROR_ARG
+        CPPCHECK_UNUSEDFUNC_ARG
+       CPPCHECK_STYLE_ARG
+       CPPCHECK_INCLUDEPATH_ARG
+       CPPCHECK_QUIET_ARG)
+
+if(CPPCHECK_FOUND OR CPPCHECK_MARK_AS_ADVANCED)
+       mark_as_advanced(CPPCHECK_ROOT_DIR)
+endif()
+
+mark_as_advanced(CPPCHECK_EXECUTABLE)
diff --git a/cmake/Findcppcheck.cpp b/cmake/Findcppcheck.cpp
new file mode 100644 (file)
index 0000000..84350db
--- /dev/null
@@ -0,0 +1,16 @@
+/**
+ * \file Findcppcheck.cpp
+ * \brief Dummy C++ source file used by CMake module Findcppcheck.cmake
+ *
+ * \author
+ * Ryan Pavlik, 2009-2010
+ * <rpavlik@iastate.edu>
+ * http://academic.cleardefinition.com/
+ *
+ */
+
+
+
+int main(int argc, char* argv[]) {
+       return 0;
+}
diff --git a/command.cpp b/command.cpp
new file mode 100644 (file)
index 0000000..bc48489
--- /dev/null
@@ -0,0 +1,123 @@
+#include "command.h"
+
+#include <QDebug>
+Command::Command (const QString &n, SelectionType st)
+{
+    name=n;
+    selectionType=st;
+}
+
+QString Command::getName()
+{
+    return name;
+}
+
+QString Command::getDescription()
+{
+    QString s;
+    s=QString("%1\n").arg(name);
+    s+=QString("  Selection: %1\n").arg(getSelectionTypeName());
+    //s+=QString(" Parameters: %1\n").arg(parCount() );
+    for (int i=0;i<parCount();i++)
+    {
+       s+=QString("   Parameter %1:\n").arg(i);
+       s+=QString("        Comment: %1\n").arg(getParComment(i));
+       s+=QString("           Type: %1\n").arg(getParTypeName(i));
+       s+=QString("       Optional: ");
+       isParOptional(i) ? s+="yes\n" :s+="No\n";
+    }
+    return s;
+}
+
+QString Command::getDescriptionLaTeX()
+{
+    QString s;
+    s=QString("\\item %1\\\\\n").arg(name);
+    s+="\\begin{tabular}{rl}\n";
+    s+=QString("  Selection: & %1\\\\\n").arg(getSelectionTypeName());
+    for (int i=0;i<parCount();i++)
+    {
+       s+=QString("   Parameter: &  %1:\\\\\n").arg(i);
+       s+=QString("        Comment: & %1\\\\\n").arg(getParComment(i));
+       s+=QString("           Type: & %1\\\\\n").arg(getParTypeName(i));
+       s+=QString("       Optional: &  ");
+       isParOptional(i) ? s+="yes\\\\\n" :s+="No\\\\\n";
+    }
+    s+="\\end{tabular}\n";
+    return s;
+}
+
+void Command::addPar (ParameterType t, bool opt, const QString &c)  
+{
+    parTypes.append (t);
+    parOpts.append (opt);
+    parComments.append (c);
+}
+
+int Command::parCount()
+{
+    return parTypes.count();
+}
+
+Command::ParameterType Command::getParType (int n)
+{
+    if (n>=0 && n<parTypes.count() )
+    {
+       return parTypes.at(n);
+    }
+    qDebug()<<"Command::getParType n out of range";
+    return Undefined;
+}
+
+QString Command::getParTypeName (int n)
+{
+    switch (getParType(n))
+    {
+       case String: return "String";
+       case Int: return "Int";
+       case Double: return "Double";
+       case Color: return "Color";
+       case Bool: return "Bool";
+       default: return "Undefined";
+    }
+}
+
+Command::SelectionType Command::getSelectionType ()
+{
+    return selectionType;
+}
+
+QString Command::getSelectionTypeName ()
+{
+    switch (getSelectionType())
+    {
+       case Any: return "Any";
+       case TreeItem: return "TreeItem";
+       case Branch: return "Branch";
+       case BranchLike: return "BranchLike";
+       case Image: return "Image";
+       case BranchOrImage: return "BranchOrImage";
+       case XLink: return "XLink";
+       default: return "Undefined";
+    }
+}
+
+bool Command::isParOptional (int n)
+{
+    if (n>=0 && n<parTypes.count() )
+    {
+       return parOpts.at(n);
+    }
+    qDebug()<<"Command::isParOpt n out of range";
+    return false;
+}
+
+QString Command::getParComment(int n)
+{
+    if (n>=0 && n<parTypes.count() )
+    {
+       return parComments.at(n);
+    }
+    qDebug()<<"Command::getParComment n out of range";
+    return QString();
+}
diff --git a/command.h b/command.h
new file mode 100644 (file)
index 0000000..97b1889
--- /dev/null
+++ b/command.h
@@ -0,0 +1,33 @@
+#ifndef COMMAND_H
+#define COMMAND_H
+
+#include <QColor>
+#include <QStringList>
+
+class Command
+{
+public:
+    enum SelectionType {Any, TreeItem, Branch, BranchLike, Image, BranchOrImage, XLink}; 
+    enum ParameterType {Undefined,String, Int, Double, Color, Bool};
+    Command (const QString &n, SelectionType st);
+    QString getName();
+    QString getDescription();
+    QString getDescriptionLaTeX();
+    void addPar (ParameterType t, bool opt, const QString &c=QString() );
+    int parCount();
+    ParameterType getParType (int n);
+    QString getParTypeName (int n);
+    SelectionType getSelectionType ();
+    QString getSelectionTypeName ();
+    bool isParOptional (int n);
+    QString getParComment(int n);
+
+private:
+       QString name;
+       SelectionType selectionType;
+       QList <ParameterType> parTypes;
+       QList <bool> parOpts;
+       QStringList parComments;
+};
+
+#endif
diff --git a/demos/ao-report-example.vym b/demos/ao-report-example.vym
new file mode 100644 (file)
index 0000000..e1be9c8
Binary files /dev/null and b/demos/ao-report-example.vym differ
diff --git a/demos/frames.vym b/demos/frames.vym
new file mode 100644 (file)
index 0000000..c7cc9ce
Binary files /dev/null and b/demos/frames.vym differ
diff --git a/demos/lifeforms.vym b/demos/lifeforms.vym
new file mode 100644 (file)
index 0000000..cead5c9
Binary files /dev/null and b/demos/lifeforms.vym differ
diff --git a/demos/math.vym b/demos/math.vym
new file mode 100644 (file)
index 0000000..1f9a75e
Binary files /dev/null and b/demos/math.vym differ
diff --git a/demos/time-management.vym b/demos/time-management.vym
new file mode 100644 (file)
index 0000000..d0554f1
Binary files /dev/null and b/demos/time-management.vym differ
diff --git a/demos/vym-contribute.vym b/demos/vym-contribute.vym
new file mode 100644 (file)
index 0000000..fe770e4
Binary files /dev/null and b/demos/vym-contribute.vym differ
diff --git a/doc/vym.1.gz b/doc/vym.1.gz
new file mode 100644 (file)
index 0000000..bb7c4fd
Binary files /dev/null and b/doc/vym.1.gz differ
diff --git a/doc/vym.pdf b/doc/vym.pdf
new file mode 100644 (file)
index 0000000..db3802c
Binary files /dev/null and b/doc/vym.pdf differ
diff --git a/doc/vym_es.pdf b/doc/vym_es.pdf
new file mode 100644 (file)
index 0000000..443eab7
Binary files /dev/null and b/doc/vym_es.pdf differ
diff --git a/doc/vym_fr.pdf b/doc/vym_fr.pdf
new file mode 100644 (file)
index 0000000..072f9a6
Binary files /dev/null and b/doc/vym_fr.pdf differ
diff --git a/dockeditor.cpp b/dockeditor.cpp
new file mode 100644 (file)
index 0000000..c6ef3ef
--- /dev/null
@@ -0,0 +1,25 @@
+#include "dockeditor.h"
+
+#include "vymmodel.h"
+
+DockEditor::DockEditor () { init (); }
+DockEditor::DockEditor ( QString title, QWidget *p, VymModel *m):QDockWidget (title,p) 
+{
+    editorTitle=title;
+    model=m;
+    init();
+}
+
+void DockEditor::init()
+{
+    connect ( this, SIGNAL ( topLevelChanged ( bool ) ),
+             this, SLOT (changeTopLevel ( bool ) ) );
+}
+
+void DockEditor::changeTopLevel (bool topLevel) 
+{
+    if (topLevel && model)
+       setWindowTitle (editorTitle+": "+model->getFileName() );
+    else       
+       setWindowTitle (editorTitle);
+}
diff --git a/dockeditor.h b/dockeditor.h
new file mode 100644 (file)
index 0000000..f00e137
--- /dev/null
@@ -0,0 +1,25 @@
+#ifndef DOCKEDITOR_H 
+#define DOCKEDITOR_H
+
+#include <QDockWidget>
+
+class VymModel;
+
+class DockEditor:public QDockWidget
+{
+    Q_OBJECT
+public:
+    DockEditor ();
+    DockEditor (QString title, QWidget *p=0, VymModel *m=0);
+    void init();
+
+public slots:
+    void changeTopLevel( bool topLevel);
+private:
+    QString editorTitle;
+    VymModel *model;
+};
+
+
+#endif
+
diff --git a/downloadagent.cpp b/downloadagent.cpp
new file mode 100644 (file)
index 0000000..b5d5e9d
--- /dev/null
@@ -0,0 +1,205 @@
+#include <QCoreApplication>
+#include <QDebug>
+#include <QFile>
+#include <QFileInfo>
+#include <QList>
+#include <QMessageBox>
+#include <QNetworkAccessManager>
+#include <QNetworkRequest>
+#include <QNetworkReply>
+#include <QSslError>
+#include <QStringList>
+#include <QTimer>
+#include <QUrl>
+
+#include <stdio.h>
+
+QT_BEGIN_NAMESPACE
+class QSslError;
+QT_END_NAMESPACE
+
+QT_USE_NAMESPACE
+
+#include "downloadagent.h"
+#include "mainwindow.h"
+#include "settings.h"
+#include "vymmodel.h"
+
+extern Main *mainWindow;
+extern QString vymVersion;
+extern QString vymPlatform;
+extern QString tmpVymDir;
+extern Settings settings;
+extern bool debug;
+
+DownloadAgent::DownloadAgent(const QUrl &u)
+{
+    finishedScriptModelID = 0;
+    url = u;
+    connect(&agent, SIGNAL(finished(QNetworkReply*)),
+            SLOT(requestFinished(QNetworkReply*)));
+
+    userAgent = QString("vym %1 ( %2)")
+        .arg(vymVersion)
+        .arg(vymPlatform).toUtf8();
+}
+
+QString  DownloadAgent::getDestination()
+{
+    return tmpFile.fileName();
+}
+
+bool DownloadAgent::isSuccess()
+{
+    return success;
+}
+
+QString DownloadAgent::getResultMessage()
+{
+    return resultMessage;
+}
+
+void DownloadAgent::setFinishedAction (VymModel *m, const QString &script)
+{
+    finishedScriptModelID = m->getModelID();
+    finishedScript = script;
+}
+
+uint DownloadAgent::getFinishedScriptModelID()
+{
+    return finishedScriptModelID;
+}
+
+QString DownloadAgent::getFinishedScript ()
+{
+    return finishedScript;
+}
+
+void DownloadAgent::setUserAgent(const QString &s)
+{
+    userAgent = s.toLocal8Bit();
+}
+
+void DownloadAgent::doDownload(const QUrl &url) 
+{
+    QNetworkRequest request(url);
+    if (!userAgent.isEmpty()) request.setRawHeader("User-Agent", userAgent);
+
+    // Only send cookies if talking to my own domain
+    bool useCookies = false;
+    if (url.host().contains("insilmaril.de") ) useCookies = true;
+
+    if (useCookies)
+    {
+        if (debug) qDebug() << "DownloadAgent::doDownload  Using cookies to download " << url.toString();
+        QByteArray idCookieValue = settings.value("/downloads/cookies/vymID/value",QByteArray() ).toByteArray();
+        //idCookieValue = QVariant("2000000002601").toByteArray(); //TESTING!!!
+        //qDebug()<<"idCookie="<<idCookieValue;
+        if (!idCookieValue.size() == 0 )
+        {
+            QNetworkCookie idCookie;
+            idCookie.setPath("/");
+    //        idCookie.setDomain("localhost");
+            idCookie.setDomain("www.insilmaril.de");
+            idCookie.setName("vymID");
+            idCookie.setValue(idCookieValue);
+            //idCookie.setExpirationDate( settings.value("/downloads/cookies/id/expires", QVariant(QDateTime::currentDateTime().addSecs(60) )).toDateTime() ); // testing
+            idCookie.setExpirationDate( QDateTime( QDate(2099,1,1) ) ); 
+            agent.cookieJar()->insertCookie(idCookie);
+
+            QNetworkCookie platformCookie;
+            platformCookie.setPath("/");
+    //        platformCookie.setDomain("localhost");
+            platformCookie.setDomain("www.insilmaril.de");
+            platformCookie.setName("vymPlatform");
+            platformCookie.setValue( QVariant(vymPlatform).toByteArray() );
+            platformCookie.setExpirationDate( QDateTime( QDate(2099,1,1) ) ); 
+            agent.cookieJar()->insertCookie(platformCookie);
+        }
+    }
+
+    QNetworkReply *reply = agent.get(request);
+    connect(reply, SIGNAL(sslErrors(QList<QSslError>)), SLOT(sslErrors(QList<QSslError>)));
+
+    currentDownloads.append(reply);
+}
+
+bool DownloadAgent::saveToDisk(const QString &filename, const QString &data)
+{
+    QFile file(filename);
+    if (!file.open(QIODevice::WriteOnly)) {
+        fprintf(stderr, "Could not open %s for writing: %s\n",
+                qPrintable(filename),
+                qPrintable(file.errorString()));
+        return false;
+    }
+
+    file.write(data.toLatin1() );
+    file.close();
+
+    return true;
+}
+
+void DownloadAgent::execute()
+{
+    doDownload(url);
+}
+
+void DownloadAgent::sslErrors(const QList<QSslError> &sslErrors)
+{
+#ifndef QT_NO_OPENSSL
+    foreach (const QSslError &error, sslErrors)
+        fprintf(stderr, "SSL error: %s\n", qPrintable(error.errorString()));
+#endif
+}
+
+void DownloadAgent::requestFinished(QNetworkReply *reply)
+{
+    QUrl url = reply->url();
+    if (reply->error()) 
+    {
+        success = false;
+        resultMessage = reply->errorString();
+        emit ( downloadFinished());
+    }
+    else {
+        success = true;
+        
+        if (debug) qDebug()<<"\n* DownloadAgent::reqFinished: ";
+        QList <QNetworkCookie> cookies =  reply->manager()->cookieJar()->cookiesForUrl(url);
+        foreach (QNetworkCookie c, cookies)
+        {
+            if (debug)
+            {
+                qDebug() << "           url: " << url.toString();
+                qDebug() << "   cookie name: " << c.name();
+                qDebug() << "   cookie path: " << c.path();
+                qDebug() << "  cookie value: " << c.value();
+                qDebug() << " cookie domain: " << c.domain();
+                qDebug() << " cookie exdate: " << c.expirationDate().toLocalTime().toString();
+            }
+
+            if (c.name() == "vymID" ) 
+            {
+                settings.setValue( "/downloads/cookies/vymID/value", c.value());
+                // settings.setValue( "/downloads/cookies/vymID/expires", c.expirationDate());
+            }
+        }
+
+        QString data = reply->readAll();
+        if (!tmpFile.open() )
+            QMessageBox::warning( 0, tr("Warning"), "Couldn't open tmpFile " + tmpFile.fileName());
+        else
+        {
+            if (!saveToDisk(tmpFile.fileName(), data))
+                QMessageBox::warning( 0, tr("Warning"), "Couldn't write to " + tmpFile.fileName());
+            else
+                resultMessage = QString ("saved to %1").arg(tmpFile.fileName());
+        }
+        emit ( downloadFinished());
+    }
+
+    currentDownloads.removeAll(reply);
+    reply->deleteLater();
+}
+
diff --git a/downloadagent.h b/downloadagent.h
new file mode 100644 (file)
index 0000000..929daff
--- /dev/null
@@ -0,0 +1,61 @@
+#include <QCoreApplication>
+#include <QFile>
+#include <QFileInfo>
+#include <QList>
+#include <QNetworkAccessManager>
+#include <QNetworkRequest>
+#include <QNetworkReply>
+#include <QSslError>
+#include <QStringList>
+#include <QTemporaryFile>
+#include <QTimer>
+#include <QUrl>
+
+#include <stdio.h>
+
+QT_BEGIN_NAMESPACE
+class QSslError;
+QT_END_NAMESPACE
+
+QT_USE_NAMESPACE
+
+class VymModel;
+
+class DownloadAgent: public QObject
+{
+    Q_OBJECT
+    QNetworkAccessManager agent;
+    QList<QNetworkReply *> currentDownloads;
+
+public:
+    DownloadAgent(const QUrl &u);
+    QString getDestination ();
+    void setFinishedAction (VymModel *m, const QString &script);
+    QString getFinishedScript();
+    uint getFinishedScriptModelID();
+    void setUserAgent(const QString &s);
+    bool  isSuccess();
+    QString getResultMessage();
+    void doDownload(const QUrl &url);
+    bool saveToDisk(const QString &filename, const QString &data);
+
+public slots:
+    void execute();
+    void requestFinished(QNetworkReply *reply);
+    void sslErrors(const QList<QSslError> &errors);
+
+signals:
+    void downloadFinished();
+
+private:
+    QTemporaryFile tmpFile;
+    QByteArray userAgent;
+    QUrl url;
+
+    bool success;
+    QString resultMessage;
+
+    QString finishedScript;
+    uint finishedScriptModelID;
+};
+
diff --git a/editxlinkdialog.cpp b/editxlinkdialog.cpp
new file mode 100644 (file)
index 0000000..1f06dfb
--- /dev/null
@@ -0,0 +1,132 @@
+#include "editxlinkdialog.h"
+
+#include <typeinfo>
+#include <QColorDialog>
+#include <QColorDialog>
+
+#include "branchitem.h"
+#include "vymmodel.h"
+#include "xlinkobj.h"
+
+
+EditXLinkDialog::EditXLinkDialog (QWidget *parent):QDialog (parent) 
+{
+    ui.setupUi (this);
+
+    delink=false;
+    link=NULL;
+
+    ui.lineStyleCombo->addItem (QIcon("://linestyle-solid.png"),"Solid line",0);   
+    ui.lineStyleCombo->addItem (QIcon("://linestyle-dash.png"),"Dash line",1);
+    ui.lineStyleCombo->addItem (QIcon("://linestyle-dot.png"),"Dot line",2);
+    ui.lineStyleCombo->addItem (QIcon("://linestyle-dashdot.png"),"Dash Dot line",3);
+    ui.lineStyleCombo->addItem (QIcon("://linestyle-dashdotdot.png"),"Dash Dot Dot line",4);
+    connect ( ui.widthBox, SIGNAL (valueChanged( int)), this, SLOT (widthChanged (int)));
+    connect ( ui.colorButton, SIGNAL (clicked( )), this, SLOT (colorButtonPressed()));
+    connect ( ui.lineStyleCombo, SIGNAL (currentIndexChanged( int )), this, SLOT (lineStyleChanged(int)));
+    connect ( ui.checkBoxArrowBegin, SIGNAL (stateChanged( int )), this, SLOT (beginStyleChanged( int )));
+    connect ( ui.checkBoxArrowEnd  , SIGNAL (stateChanged( int )), this, SLOT (  endStyleChanged( int )));
+    //FIXME-4 connect ( ui.setColorHeadingButton, SIGNAL (clicked( )), this, SLOT (setColorHeadingButtonPressed()));
+    ui.setColorHeadingButton->hide();
+}
+
+
+void EditXLinkDialog::widthChanged( int  w)
+{
+    link->getModel()->setXLinkWidth( w );
+}
+
+void EditXLinkDialog::setLink( Link * l)
+{
+    link=l;
+    QPen pen=link->getPen();
+    colorChanged (pen.color() );
+    ui.widthBox->setValue(pen.width() );
+    switch (pen.style() )
+    {
+       case Qt::DashLine: ui.lineStyleCombo->setCurrentIndex (1); break;
+       case Qt::DotLine: ui.lineStyleCombo->setCurrentIndex (2); break;
+       case Qt::DashDotLine: ui.lineStyleCombo->setCurrentIndex (3); break;
+       case Qt::DashDotDotLine: ui.lineStyleCombo->setCurrentIndex (4); break;
+       default: ui.lineStyleCombo->setCurrentIndex (0);
+    }
+    if ( link->getXLinkObj()->getStyleEnd() )
+        ui.checkBoxArrowEnd->setChecked( true );
+    else
+        ui.checkBoxArrowEnd->setChecked( false );
+    if ( link->getXLinkObj()->getStyleBegin() )
+        ui.checkBoxArrowBegin->setChecked( true );
+    else
+        ui.checkBoxArrowBegin->setChecked( false );
+}
+
+void EditXLinkDialog::colorButtonPressed()
+{
+    if (link)
+    {  
+       QPen pen=link->getPen();
+       QColor col = QColorDialog::getColor(pen.color(), this );
+       if ( !col.isValid() ) return;
+        link->getModel()->setXLinkColor( col.name() );
+    }
+}
+
+void EditXLinkDialog::colorChanged (QColor c)
+{
+    
+    QPixmap pix( 16, 16 );
+    pix.fill( c );
+    ui.colorButton->setIcon( pix );
+}
+
+void EditXLinkDialog::setColorHeadingButtonPressed()   //FIXME-4 not implemented yet
+{
+    if (link)
+    {  
+    }
+}
+
+void EditXLinkDialog::lineStyleChanged (int i)
+{
+    if (link)
+    {  
+        QString style;
+       switch (i)
+       {
+            case 0: style = "Qt::SolidLine"; break;
+           case 1: style = "Qt::DashLine"; break;
+           case 2: style = "Qt::DotLine"; break;
+           case 3: style = "Qt::DashDotLine"; break;
+           case 4: style = "Qt::DashDotDotLine"; break;
+           default: style = "Qt::NoPen";
+       }
+        link->getModel()->setXLinkLineStyle( style );
+    }
+}
+
+void EditXLinkDialog::beginStyleChanged( int state )
+{
+    if (link)
+    {
+        if (state)
+            link->getModel()->setXLinkStyleBegin( "HeadFull" );
+        else
+            link->getModel()->setXLinkStyleBegin( "None" );
+    }
+}
+
+void EditXLinkDialog::endStyleChanged( int state )
+{
+    if (link)
+    {
+        if (state)
+            link->getModel()->setXLinkStyleEnd( "HeadFull" );
+        else
+            link->getModel()->setXLinkStyleEnd( "None" );
+    }
+}
+
+bool EditXLinkDialog::useSettingsGlobal ()
+{
+    return ui.useSettings->isChecked();
+}
diff --git a/editxlinkdialog.h b/editxlinkdialog.h
new file mode 100644 (file)
index 0000000..e145eca
--- /dev/null
@@ -0,0 +1,40 @@
+#ifndef EDITXLINKDIALOG_H
+#define EDITXLINKDIALOG_H
+
+#include "ui_editxlinkdialog.h"
+
+/*! \brief Dialog to edit or delete XLinks 
+
+Using xLinks one can link one branch to any other, just like attaching a rope
+between two branches in a real tree. This is especially useful in complex maps,
+where you want to have crossreferences which don't fit on the same visible area
+*/
+
+class BranchItem;
+
+class EditXLinkDialog:public QDialog
+{
+    Q_OBJECT
+public:
+    EditXLinkDialog (QWidget *parent=0);
+    void setLink (Link *);
+    bool useSettingsGlobal();
+
+private slots:
+    void widthChanged (int);
+    void colorButtonPressed();
+    void colorChanged(QColor c);
+    void setColorHeadingButtonPressed ();
+    void lineStyleChanged( int );
+    void beginStyleChanged( int );
+    void endStyleChanged( int );
+
+private:
+    void emitChanged();
+
+    Ui::EditXLinkDialog ui;
+    bool delink;
+    Link *link;
+};
+
+#endif // EDITXLINKDIALOG_H
diff --git a/editxlinkdialog.ui b/editxlinkdialog.ui
new file mode 100644 (file)
index 0000000..8ea916f
--- /dev/null
@@ -0,0 +1,285 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>EditXLinkDialog</class>
+ <widget class="QDialog" name="EditXLinkDialog">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>337</width>
+    <height>219</height>
+   </rect>
+  </property>
+  <property name="sizePolicy">
+   <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
+    <horstretch>0</horstretch>
+    <verstretch>0</verstretch>
+   </sizepolicy>
+  </property>
+  <property name="windowTitle">
+   <string>Edit XLink</string>
+  </property>
+  <layout class="QVBoxLayout">
+   <property name="spacing">
+    <number>6</number>
+   </property>
+   <property name="margin">
+    <number>11</number>
+   </property>
+   <item>
+    <layout class="QGridLayout" name="gridLayout">
+     <property name="margin">
+      <number>0</number>
+     </property>
+     <property name="spacing">
+      <number>6</number>
+     </property>
+     <item row="3" column="0">
+      <widget class="QLabel" name="label_2">
+       <property name="text">
+        <string>Arrow begin:</string>
+       </property>
+      </widget>
+     </item>
+     <item row="0" column="1">
+      <widget class="QSpinBox" name="widthBox">
+       <property name="sizePolicy">
+        <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+         <horstretch>0</horstretch>
+         <verstretch>0</verstretch>
+        </sizepolicy>
+       </property>
+       <property name="minimum">
+        <number>1</number>
+       </property>
+       <property name="maximum">
+        <number>15</number>
+       </property>
+      </widget>
+     </item>
+     <item row="0" column="0">
+      <widget class="QLabel" name="textLabel1">
+       <property name="text">
+        <string>XLink width:</string>
+       </property>
+       <property name="alignment">
+        <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+       </property>
+      </widget>
+     </item>
+     <item row="1" column="4">
+      <widget class="QPushButton" name="setColorHeadingButton">
+       <property name="maximumSize">
+        <size>
+         <width>32767</width>
+         <height>20</height>
+        </size>
+       </property>
+       <property name="text">
+        <string>Use color of heading</string>
+       </property>
+      </widget>
+     </item>
+     <item row="1" column="1">
+      <widget class="QPushButton" name="colorButton">
+       <property name="enabled">
+        <bool>true</bool>
+       </property>
+       <property name="maximumSize">
+        <size>
+         <width>50</width>
+         <height>20</height>
+        </size>
+       </property>
+       <property name="text">
+        <string/>
+       </property>
+      </widget>
+     </item>
+     <item row="5" column="1" colspan="2">
+      <widget class="QCheckBox" name="useSettings">
+       <property name="text">
+        <string/>
+       </property>
+      </widget>
+     </item>
+     <item row="1" column="0">
+      <widget class="QLabel" name="textLabel2">
+       <property name="text">
+        <string>XLink color:</string>
+       </property>
+       <property name="alignment">
+        <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+       </property>
+      </widget>
+     </item>
+     <item row="1" column="2" colspan="2">
+      <spacer>
+       <property name="orientation">
+        <enum>Qt::Horizontal</enum>
+       </property>
+       <property name="sizeType">
+        <enum>QSizePolicy::Expanding</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>285</width>
+         <height>20</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+     <item row="0" column="2" colspan="2">
+      <spacer>
+       <property name="orientation">
+        <enum>Qt::Horizontal</enum>
+       </property>
+       <property name="sizeType">
+        <enum>QSizePolicy::Expanding</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>280</width>
+         <height>20</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+     <item row="5" column="0">
+      <widget class="QLabel" name="textLabel1_2">
+       <property name="text">
+        <string>Use as default:</string>
+       </property>
+       <property name="alignment">
+        <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+       </property>
+      </widget>
+     </item>
+     <item row="5" column="3" colspan="2">
+      <spacer>
+       <property name="orientation">
+        <enum>Qt::Horizontal</enum>
+       </property>
+       <property name="sizeType">
+        <enum>QSizePolicy::Expanding</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>241</width>
+         <height>20</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+     <item row="2" column="0">
+      <widget class="QLabel" name="label">
+       <property name="text">
+        <string extracomment="Linestyle in Edit XLink dialog">Line style:</string>
+       </property>
+       <property name="alignment">
+        <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+       </property>
+      </widget>
+     </item>
+     <item row="2" column="1" colspan="3">
+      <widget class="QComboBox" name="lineStyleCombo"/>
+     </item>
+     <item row="4" column="0">
+      <widget class="QLabel" name="label_3">
+       <property name="text">
+        <string>Arrow end:</string>
+       </property>
+      </widget>
+     </item>
+     <item row="3" column="1">
+      <widget class="QCheckBox" name="checkBoxArrowBegin">
+       <property name="text">
+        <string/>
+       </property>
+      </widget>
+     </item>
+     <item row="4" column="1">
+      <widget class="QCheckBox" name="checkBoxArrowEnd">
+       <property name="text">
+        <string/>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
+   <item>
+    <spacer>
+     <property name="orientation">
+      <enum>Qt::Vertical</enum>
+     </property>
+     <property name="sizeType">
+      <enum>QSizePolicy::Expanding</enum>
+     </property>
+     <property name="sizeHint" stdset="0">
+      <size>
+       <width>20</width>
+       <height>16</height>
+      </size>
+     </property>
+    </spacer>
+   </item>
+   <item>
+    <layout class="QHBoxLayout" name="boxLayout">
+     <property name="spacing">
+      <number>6</number>
+     </property>
+     <property name="margin">
+      <number>0</number>
+     </property>
+     <item>
+      <spacer>
+       <property name="orientation">
+        <enum>Qt::Horizontal</enum>
+       </property>
+       <property name="sizeType">
+        <enum>QSizePolicy::Expanding</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>100</width>
+         <height>20</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+     <item>
+      <widget class="QPushButton" name="okButton">
+       <property name="text">
+        <string>Close</string>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
+  </layout>
+ </widget>
+ <layoutdefault spacing="6" margin="11"/>
+ <includes>
+  <include location="local">xlinkitem.h</include>
+  <include location="local">linkablemapobj.h</include>
+ </includes>
+ <resources/>
+ <connections>
+  <connection>
+   <sender>okButton</sender>
+   <signal>clicked()</signal>
+   <receiver>EditXLinkDialog</receiver>
+   <slot>accept()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>338</x>
+     <y>180</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>196</x>
+     <y>102</y>
+    </hint>
+   </hints>
+  </connection>
+ </connections>
+</ui>
diff --git a/exporthtmldialog.cpp b/exporthtmldialog.cpp
new file mode 100644 (file)
index 0000000..41d59a5
--- /dev/null
@@ -0,0 +1,343 @@
+#include "exporthtmldialog.h"  
+
+#include <QFileDialog>
+#include <QMessageBox>
+#include <QTextStream>
+
+#include "file.h"
+#include "options.h"
+#include "settings.h"
+#include "warningdialog.h"
+
+
+extern Options options;
+extern QDir vymBaseDir;
+extern Settings settings;
+extern bool debug;
+
+ExportHTMLDialog::ExportHTMLDialog(QWidget* parent) : QDialog(parent)
+{
+    ui.setupUi(this);
+
+    filepath="";
+    settingsChanged=false;
+
+    // signals and slots connections
+    connect(ui.browseExportDirButton, SIGNAL(pressed()), this, SLOT(browseDirectoryPressed()));
+    connect(ui.browseCssSrcButton, SIGNAL(pressed()), this, SLOT(browseCssSrcPressed()));
+    connect(ui.browseCssDstButton, SIGNAL(pressed()), this, SLOT(browseCssDstPressed()));
+    connect(ui.imageCheckBox, SIGNAL(toggled(bool)), this, SLOT(imageCheckBoxPressed(bool)));
+    connect(ui.includeImagesCheckBox, SIGNAL(toggled(bool)), this, SLOT(includeImagesCheckBoxPressed(bool)));
+    connect(ui.TOCCheckBox, SIGNAL(toggled(bool)), this, SLOT(TOCCheckBoxPressed(bool)));
+    connect(ui.numberingCheckBox, SIGNAL(toggled(bool)), this, SLOT(numberingCheckBoxPressed(bool)));
+    connect(ui.taskFlagsCheckBox, SIGNAL(toggled(bool)), this, SLOT(taskFlagsCheckBoxPressed(bool)));
+    connect(ui.userFlagsCheckBox, SIGNAL(toggled(bool)), this, SLOT(userFlagsCheckBoxPressed(bool)));
+    connect(ui.textColorCheckBox, SIGNAL(toggled(bool)), this, SLOT(textcolorCheckBoxPressed(bool)));
+    connect(ui.lineEditDir, SIGNAL(textChanged(const QString&)), this, SLOT(dirChanged()));
+    connect(ui.copyCssCheckBox, SIGNAL(pressed()), this, SLOT(copyCssPressed()));
+    connect(ui.lineEditCssSrc, SIGNAL(textChanged(const QString&)), this, SLOT(cssSrcChanged()));
+    connect(ui.lineEditCssDst, SIGNAL(textChanged(const QString&)), this, SLOT(cssDstChanged()));
+    connect(ui.saveSettingsInMapCheckBox, SIGNAL(toggled(bool)), this, SLOT(saveSettingsInMapCheckBoxPressed(bool)));
+    connect(ui.lineEditPostScript, SIGNAL(textChanged(const QString&)), this, SLOT(postscriptChanged()));
+    connect(ui.browsePostExportButton, SIGNAL(pressed()), this, SLOT(browsePostExportButtonPressed()));
+}   
+
+void ExportHTMLDialog::readSettings()
+{
+    dir=settings.localValue (filepath,"/export/html/exportDir",vymBaseDir.currentPath() ).toString(); //FIXME-3 exportDir only needed for dialog
+    ui.lineEditDir->setText(dir.absolutePath());
+    
+    includeMapImage = settings.localValue (filepath,"/export/html/includeMapImage","true").toBool();
+    ui.imageCheckBox->setChecked(includeMapImage);
+       
+    includeImages = settings.localValue (filepath,"/export/html/includeImages","true").toBool();
+    ui.includeImagesCheckBox->setChecked(includeImages);
+       
+    useTOC=settings.localValue (filepath,"/export/html/useTOC","true").toBool();
+    ui.TOCCheckBox->setChecked(useTOC);
+       
+    useNumbering=settings.localValue (filepath,"/export/html/useNumbering","true").toBool();
+    ui.numberingCheckBox->setChecked(useNumbering);
+       
+    useTaskFlags=settings.localValue (filepath,"/export/html/useTaskFlags","true").toBool();
+    ui.taskFlagsCheckBox->setChecked(useTaskFlags);
+       
+    useUserFlags=settings.localValue (filepath,"/export/html/useUserFlags","true").toBool();
+    ui.userFlagsCheckBox->setChecked(useUserFlags);
+       
+    useTextColor=settings.localValue (filepath,"/export/html/useTextColor","no").toBool();
+    ui.textColorCheckBox->setChecked(useTextColor);
+    
+/* FIXME-3 this was used in old html export, is not yet in new stylesheet
+    useHeading=settings.readValue ("/export/html/useHeading","false").toBool();
+    checkBox4_2->setChecked(useHeading);
+*/     
+
+    saveSettingsInMap=settings.localValue (filepath,"/export/html/saveSettingsInMap","no").toBool();
+    ui.saveSettingsInMapCheckBox->setChecked(saveSettingsInMap);
+
+    //CSS settings
+    css_copy=settings.localValue 
+        (filepath,"/export/html/copy_css",true).toBool();   
+    ui.copyCssCheckBox->setChecked (css_copy);
+
+    QString css_org=vymBaseDir.path() + "/styles/vym.css";
+    css_src=settings.localValue 
+        (filepath,"/export/html/css_src",css_org).toString();   
+    css_dst=settings.localValue 
+        (filepath,"/export/html/css_dst",basename(css_org)).toString();   
+    
+    ui.lineEditCssSrc->setText(css_src);
+    ui.lineEditCssDst->setText(css_dst);
+    
+    postscript=settings.localValue
+       (filepath,"/export/html/postscript","").toString();
+    ui.lineEditPostScript->setText (postscript);    
+
+    if (!postscript.isEmpty())
+    {
+       QMessageBox::warning( 0, tr( "Warning" ),tr(
+       "The settings saved in the map "
+       "would like to run script:\n\n"
+       "%1\n\n"
+       "Please check, if you really\n"
+       "want to allow this in your system!").arg(postscript));
+    }
+}
+
+void ExportHTMLDialog::setDirectory (const QString &d)
+{
+    dir.setPath(d);
+}
+
+void ExportHTMLDialog::dirChanged()
+{
+    setDirectory (ui.lineEditDir->text());
+    settingsChanged=true;
+}
+
+void ExportHTMLDialog::browseDirectoryPressed()
+{
+    QFileDialog fd( this);
+    fd.setFileMode (QFileDialog::DirectoryOnly);
+    fd.setWindowTitle (tr("VYM - Export HTML to directory"));
+    fd.setModal (true);
+    fd.setDirectory (QDir::current());
+    fd.show();
+
+    if ( fd.exec() == QDialog::Accepted )
+    {
+       QDir dir=fd.directory();
+       ui.lineEditDir->setText (dir.path() );
+       settingsChanged=true;
+    }
+}
+
+void ExportHTMLDialog::imageCheckBoxPressed(bool b)
+{
+    includeMapImage = b;
+    settingsChanged = true;
+}
+
+void ExportHTMLDialog::includeImagesCheckBoxPressed(bool b)
+{
+    includeImages = b;
+    settingsChanged = true;
+}
+
+void ExportHTMLDialog::TOCCheckBoxPressed(bool b)
+{
+    useTOC=b;
+    settingsChanged=true;
+}
+
+void ExportHTMLDialog::numberingCheckBoxPressed(bool b)
+{
+    useNumbering=b;
+    settingsChanged=true;
+}
+
+void ExportHTMLDialog::taskFlagsCheckBoxPressed(bool b)
+{
+    useTaskFlags=b;
+    settingsChanged=true;
+}
+
+void ExportHTMLDialog::userFlagsCheckBoxPressed(bool b)
+{
+    useUserFlags=b;
+    settingsChanged=true;
+}
+
+void ExportHTMLDialog::textcolorCheckBoxPressed(bool b)
+{
+    useTextColor=b; 
+    settingsChanged=true;
+}
+
+void ExportHTMLDialog::saveSettingsInMapCheckBoxPressed(bool b)
+{
+    saveSettingsInMap=b;    
+    settingsChanged=true;
+}
+
+void ExportHTMLDialog::warningsCheckBoxPressed(bool b)
+{
+    showWarnings=b;
+    settingsChanged=true;
+}
+
+
+void ExportHTMLDialog::outputCheckBoxPressed(bool b)
+{
+    showOutput=b;
+    settingsChanged=true;
+}
+
+void ExportHTMLDialog::cssSrcChanged()
+{
+    css_src=ui.lineEditCssSrc->text();
+    settingsChanged=true;
+}
+
+void ExportHTMLDialog::cssDstChanged()
+{
+    css_dst=ui.lineEditCssDst->text();
+    settingsChanged=true;
+}
+
+QString ExportHTMLDialog::getCssSrc()
+{
+    if (css_copy)
+        return css_src;
+    else
+        return QString();
+}
+
+QString ExportHTMLDialog::getCssDst()
+{
+    return css_dst;
+}
+
+void ExportHTMLDialog::copyCssPressed()
+{
+    css_copy=ui.imageCheckBox->isChecked();
+    settingsChanged=true;
+}
+
+void ExportHTMLDialog::browseCssSrcPressed()
+{
+    QFileDialog fd( this);
+    fd.setModal (true);
+    fd.setNameFilter ("Cascading Stylesheet (*.css)");
+    fd.setDirectory (QDir::current());
+    fd.show();
+
+    if ( fd.exec() == QDialog::Accepted )
+    {
+       if (!fd.selectedFiles().isEmpty())
+       {
+           css_src=fd.selectedFiles().first();
+           ui.lineEditCssSrc->setText (css_src );
+           settingsChanged=true;
+       }
+    }
+}
+
+void ExportHTMLDialog::browseCssDstPressed()
+{
+    QFileDialog fd( this);
+    fd.setModal (true);
+    fd.setNameFilter ("Cascading Stylesheet (*.css)");
+    fd.setDirectory (QDir::current());
+    fd.show();
+
+    if ( fd.exec() == QDialog::Accepted )
+    {
+       if (!fd.selectedFiles().isEmpty())
+       {
+           css_dst=fd.selectedFiles().first();
+           ui.lineEditCssDst->setText (css_dst );
+           settingsChanged=true;
+       }
+    }
+}
+
+void ExportHTMLDialog::postscriptChanged()
+{
+    postscript=ui.lineEditPostScript->text();
+    settingsChanged=true;
+}
+
+void ExportHTMLDialog::browsePostExportButtonPressed()
+{
+    QFileDialog fd( this);
+    fd.setModal (true);
+    fd.setNameFilter ("Scripts (*.sh *.pl *.py *.php)");
+    fd.setDirectory (QDir::current());
+    fd.show();
+
+    if ( fd.exec() == QDialog::Accepted )
+    {
+       if (!fd.selectedFiles().isEmpty())
+       {
+           postscript=fd.selectedFiles().first();
+           ui.lineEditPostScript->setText (postscript );
+           settingsChanged=true;
+       } 
+    }
+}
+
+void ExportHTMLDialog::saveSettings ()
+{
+    // Save options to settings file 
+    // (but don't save at destructor, which
+    // is called for "cancel", too)
+    if (!saveSettingsInMap)
+       settings.clearLocal(filepath,"/export/html");
+    else    
+    {
+       settings.setLocalValue (filepath,"/export/html/exportDir",dir.absolutePath()); //FIXME-3 exportDir only needed for dialog
+       settings.setLocalValue (filepath,"/export/html/saveSettingsInMap","yes");
+        settings.setLocalValue (filepath,"/export/html/postscript",postscript);
+        settings.setLocalValue (filepath,"/export/html/includeMapImage",includeMapImage);
+        settings.setLocalValue (filepath,"/export/html/includeImages",includeImages);
+        settings.setLocalValue (filepath,"/export/html/useTOC",useTOC);
+        settings.setLocalValue (filepath,"/export/html/useNumbering",useNumbering);
+        settings.setLocalValue (filepath,"/export/html/useTaskFlags",useTaskFlags);
+        settings.setLocalValue (filepath,"/export/html/useUserFlags",useUserFlags);
+        settings.setLocalValue (filepath,"/export/html/useTextColor",useTextColor);
+        settings.setLocalValue (filepath,"/export/html/css_copy",css_copy);    
+        settings.setLocalValue (filepath,"/export/html/css_src",css_src);      
+        settings.setLocalValue (filepath,"/export/html/css_dst",css_dst);      
+        settings.setValue ("/export/html/showWarnings",showWarnings);
+        settings.setValue ("/export/html/showOutput",showOutput);
+    }
+}
+
+void ExportHTMLDialog::setFilePath(const QString &s)
+{
+    filepath=s;
+}
+
+void ExportHTMLDialog::setMapName(const QString &s)
+{
+    mapname=s;
+}
+
+QDir ExportHTMLDialog::getDir()
+{
+    return dir;
+}
+
+bool ExportHTMLDialog::warnings()
+{
+    return showWarnings;
+}
+
+bool ExportHTMLDialog::hasChanged()
+{
+    return settingsChanged;
+}
+
+
diff --git a/exporthtmldialog.h b/exporthtmldialog.h
new file mode 100644 (file)
index 0000000..19c4757
--- /dev/null
@@ -0,0 +1,79 @@
+#ifndef EXPORTHTMLDIALOG_H
+#define EXPORTHTMLDIALOG_H
+
+#include "ui_exporthtmldialog.h"
+
+#include <QDir>
+
+/*! \brief Dialog to export a map as HTML document
+
+This is an overloaded QDialog with various settings needed to call
+convert the vym.xml to a HTML document. 
+*/
+
+class ExportHTMLDialog:public QDialog
+{
+    Q_OBJECT
+public:
+    ExportHTMLDialog(QWidget* parent = 0);
+
+    virtual QDir getDir();
+    virtual bool warnings();
+    virtual bool hasChanged();
+
+public slots:
+    virtual void readSettings();
+    virtual void setDirectory (const QString&);
+    virtual void dirChanged();
+    virtual void browseDirectoryPressed();
+    virtual void imageCheckBoxPressed( bool b );
+    virtual void includeImagesCheckBoxPressed( bool b );
+    virtual void TOCCheckBoxPressed( bool b );
+    virtual void numberingCheckBoxPressed( bool b );
+    virtual void taskFlagsCheckBoxPressed( bool b );
+    virtual void userFlagsCheckBoxPressed( bool b );
+    virtual void textcolorCheckBoxPressed( bool b );
+    virtual void saveSettingsInMapCheckBoxPressed( bool b );
+    virtual void warningsCheckBoxPressed( bool b );
+    virtual void outputCheckBoxPressed( bool b );
+    virtual void cssSrcChanged();
+    virtual void cssDstChanged();
+    virtual QString getCssSrc();
+    virtual QString getCssDst();
+    virtual void copyCssPressed();
+    virtual void browseCssSrcPressed();
+    virtual void browseCssDstPressed();
+    virtual void postscriptChanged();
+    virtual void browsePostExportButtonPressed();
+    virtual void saveSettings ();
+    virtual void setFilePath( const QString & s );
+    virtual void setMapName( const QString & s );
+
+public:
+    bool includeMapImage;
+    bool includeImages;
+    bool useTOC;
+    bool useNumbering;
+    bool useTaskFlags;
+    bool useUserFlags;
+    bool useTextColor;
+    QString postscript;
+    bool css_copy;
+protected:
+    QString css_src;
+    QString css_dst;
+    bool showWarnings;
+    bool showOutput;
+    QDir dir;
+    QString filepath;
+    bool settingsChanged;
+    QString mapname;
+    bool saveSettingsInMap;
+
+private:
+    Ui::ExportHTMLDialog ui;
+    void init();
+
+};
+
+#endif // EXPORTHTMLDIALOG_H
diff --git a/exporthtmldialog.ui b/exporthtmldialog.ui
new file mode 100644 (file)
index 0000000..57ddf18
--- /dev/null
@@ -0,0 +1,440 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>ExportHTMLDialog</class>
+ <widget class="QDialog" name="ExportHTMLDialog">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>629</width>
+    <height>547</height>
+   </rect>
+  </property>
+  <property name="sizePolicy">
+   <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
+    <horstretch>0</horstretch>
+    <verstretch>0</verstretch>
+   </sizepolicy>
+  </property>
+  <property name="minimumSize">
+   <size>
+    <width>0</width>
+    <height>130</height>
+   </size>
+  </property>
+  <property name="windowTitle">
+   <string>Export HTML</string>
+  </property>
+  <layout class="QVBoxLayout" name="verticalLayout_2">
+   <item>
+    <layout class="QHBoxLayout">
+     <property name="spacing">
+      <number>6</number>
+     </property>
+     <property name="leftMargin">
+      <number>0</number>
+     </property>
+     <property name="topMargin">
+      <number>0</number>
+     </property>
+     <property name="rightMargin">
+      <number>0</number>
+     </property>
+     <property name="bottomMargin">
+      <number>0</number>
+     </property>
+     <item>
+      <widget class="QLabel" name="textLabel1">
+       <property name="sizePolicy">
+        <sizepolicy hsizetype="Minimum" vsizetype="Preferred">
+         <horstretch>0</horstretch>
+         <verstretch>0</verstretch>
+        </sizepolicy>
+       </property>
+       <property name="minimumSize">
+        <size>
+         <width>125</width>
+         <height>0</height>
+        </size>
+       </property>
+       <property name="text">
+        <string>Export to directory:</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QLineEdit" name="lineEditDir">
+       <property name="sizePolicy">
+        <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
+         <horstretch>0</horstretch>
+         <verstretch>0</verstretch>
+        </sizepolicy>
+       </property>
+       <property name="minimumSize">
+        <size>
+         <width>300</width>
+         <height>0</height>
+        </size>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="browseExportDirButton">
+       <property name="sizePolicy">
+        <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+         <horstretch>0</horstretch>
+         <verstretch>0</verstretch>
+        </sizepolicy>
+       </property>
+       <property name="text">
+        <string>Browse</string>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
+   <item>
+    <widget class="QGroupBox" name="groupBox">
+     <property name="sizePolicy">
+      <sizepolicy hsizetype="Preferred" vsizetype="MinimumExpanding">
+       <horstretch>0</horstretch>
+       <verstretch>0</verstretch>
+      </sizepolicy>
+     </property>
+     <property name="minimumSize">
+      <size>
+       <width>0</width>
+       <height>600</height>
+      </size>
+     </property>
+     <property name="maximumSize">
+      <size>
+       <width>16777215</width>
+       <height>16777214</height>
+      </size>
+     </property>
+     <property name="title">
+      <string>Options</string>
+     </property>
+     <widget class="QWidget" name="layoutWidget">
+      <property name="geometry">
+       <rect>
+        <x>20</x>
+        <y>20</y>
+        <width>581</width>
+        <height>259</height>
+       </rect>
+      </property>
+      <layout class="QVBoxLayout" name="verticalLayout">
+       <item>
+        <widget class="QCheckBox" name="imageCheckBox">
+         <property name="sizePolicy">
+          <sizepolicy hsizetype="Minimum" vsizetype="Minimum">
+           <horstretch>0</horstretch>
+           <verstretch>0</verstretch>
+          </sizepolicy>
+         </property>
+         <property name="text">
+          <string>Image of map</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QCheckBox" name="includeImagesCheckBox">
+         <property name="text">
+          <string>Include images</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QCheckBox" name="TOCCheckBox">
+         <property name="text">
+          <string>Table of contents</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QCheckBox" name="taskFlagsCheckBox">
+         <property name="text">
+          <string>Task flags</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QCheckBox" name="userFlagsCheckBox">
+         <property name="text">
+          <string>General flags</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QCheckBox" name="numberingCheckBox">
+         <property name="text">
+          <string>Number sections</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QCheckBox" name="textColorCheckBox">
+         <property name="sizePolicy">
+          <sizepolicy hsizetype="Minimum" vsizetype="Minimum">
+           <horstretch>0</horstretch>
+           <verstretch>0</verstretch>
+          </sizepolicy>
+         </property>
+         <property name="text">
+          <string>Colored headings in text</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QCheckBox" name="saveSettingsInMapCheckBox">
+         <property name="sizePolicy">
+          <sizepolicy hsizetype="Minimum" vsizetype="Minimum">
+           <horstretch>0</horstretch>
+           <verstretch>0</verstretch>
+          </sizepolicy>
+         </property>
+         <property name="text">
+          <string>Save settings in map</string>
+         </property>
+        </widget>
+       </item>
+      </layout>
+     </widget>
+    </widget>
+   </item>
+   <item>
+    <widget class="QGroupBox" name="groupBox_3">
+     <property name="minimumSize">
+      <size>
+       <width>0</width>
+       <height>100</height>
+      </size>
+     </property>
+     <property name="title">
+      <string>Stylesheets</string>
+     </property>
+     <widget class="QWidget" name="layoutWidget1^">
+      <property name="geometry">
+       <rect>
+        <x>20</x>
+        <y>30</y>
+        <width>533</width>
+        <height>78</height>
+       </rect>
+      </property>
+      <layout class="QGridLayout" name="gridLayout">
+       <item row="0" column="0">
+        <widget class="QCheckBox" name="copyCssCheckBox">
+         <property name="text">
+          <string>Copy CSS from </string>
+         </property>
+        </widget>
+       </item>
+       <item row="0" column="1">
+        <widget class="QLineEdit" name="lineEditCssSrc">
+         <property name="minimumSize">
+          <size>
+           <width>300</width>
+           <height>0</height>
+          </size>
+         </property>
+        </widget>
+       </item>
+       <item row="1" column="1">
+        <widget class="QLineEdit" name="lineEditCssDst"/>
+       </item>
+       <item row="1" column="0">
+        <widget class="QLabel" name="label">
+         <property name="text">
+          <string>Use CSS from</string>
+         </property>
+         <property name="alignment">
+          <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+         </property>
+        </widget>
+       </item>
+       <item row="0" column="2">
+        <widget class="QPushButton" name="browseCssSrcButton">
+         <property name="sizePolicy">
+          <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+           <horstretch>0</horstretch>
+           <verstretch>0</verstretch>
+          </sizepolicy>
+         </property>
+         <property name="text">
+          <string>Browse</string>
+         </property>
+        </widget>
+       </item>
+       <item row="1" column="2">
+        <widget class="QPushButton" name="browseCssDstButton">
+         <property name="sizePolicy">
+          <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+           <horstretch>0</horstretch>
+           <verstretch>0</verstretch>
+          </sizepolicy>
+         </property>
+         <property name="text">
+          <string>Browse</string>
+         </property>
+        </widget>
+       </item>
+      </layout>
+     </widget>
+    </widget>
+   </item>
+   <item>
+    <widget class="QGroupBox" name="groupBox_2">
+     <property name="minimumSize">
+      <size>
+       <width>0</width>
+       <height>70</height>
+      </size>
+     </property>
+     <property name="title">
+      <string>Scripts</string>
+     </property>
+     <widget class="QWidget" name="layoutWidget2">
+      <property name="geometry">
+       <rect>
+        <x>10</x>
+        <y>20</y>
+        <width>519</width>
+        <height>27</height>
+       </rect>
+      </property>
+      <layout class="QHBoxLayout" name="horizontalLayout">
+       <item>
+        <widget class="QLabel" name="textLabel2_2">
+         <property name="sizePolicy">
+          <sizepolicy hsizetype="Fixed" vsizetype="Preferred">
+           <horstretch>0</horstretch>
+           <verstretch>0</verstretch>
+          </sizepolicy>
+         </property>
+         <property name="minimumSize">
+          <size>
+           <width>125</width>
+           <height>0</height>
+          </size>
+         </property>
+         <property name="frameShape">
+          <enum>QFrame::NoFrame</enum>
+         </property>
+         <property name="text">
+          <string>After Export:</string>
+         </property>
+         <property name="alignment">
+          <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QLineEdit" name="lineEditPostScript">
+         <property name="minimumSize">
+          <size>
+           <width>300</width>
+           <height>0</height>
+          </size>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QPushButton" name="browsePostExportButton">
+         <property name="sizePolicy">
+          <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+           <horstretch>0</horstretch>
+           <verstretch>0</verstretch>
+          </sizepolicy>
+         </property>
+         <property name="text">
+          <string>Browse</string>
+         </property>
+        </widget>
+       </item>
+      </layout>
+     </widget>
+    </widget>
+   </item>
+   <item>
+    <layout class="QHBoxLayout">
+     <item>
+      <spacer>
+       <property name="orientation">
+        <enum>Qt::Horizontal</enum>
+       </property>
+       <property name="sizeType">
+        <enum>QSizePolicy::Expanding</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>61</width>
+         <height>21</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+     <item>
+      <widget class="QPushButton" name="cancelButton">
+       <property name="text">
+        <string>Cancel</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="exportButton">
+       <property name="text">
+        <string>Export</string>
+       </property>
+       <property name="default">
+        <bool>true</bool>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
+  </layout>
+ </widget>
+ <layoutdefault spacing="6" margin="11"/>
+ <includes>
+  <include location="local">xsltproc.h</include>
+  <include location="local">vymprocess.h</include>
+ </includes>
+ <resources/>
+ <connections>
+  <connection>
+   <sender>cancelButton</sender>
+   <signal>clicked()</signal>
+   <receiver>ExportHTMLDialog</receiver>
+   <slot>reject()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>459</x>
+     <y>443</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>256</x>
+     <y>233</y>
+    </hint>
+   </hints>
+  </connection>
+  <connection>
+   <sender>exportButton</sender>
+   <signal>clicked()</signal>
+   <receiver>ExportHTMLDialog</receiver>
+   <slot>accept()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>368</x>
+     <y>443</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>256</x>
+     <y>233</y>
+    </hint>
+   </hints>
+  </connection>
+ </connections>
+</ui>
diff --git a/exportoofiledialog.cpp b/exportoofiledialog.cpp
new file mode 100644 (file)
index 0000000..9de9ffb
--- /dev/null
@@ -0,0 +1,90 @@
+#include "exportoofiledialog.h"
+
+ExportOOFileDialog::ExportOOFileDialog():QFileDialog()
+{
+    init();
+}
+
+ExportOOFileDialog::ExportOOFileDialog (QWidget * parent, const QString &caption ):QFileDialog(parent, caption)
+{
+    init();
+}
+
+bool ExportOOFileDialog::foundConfig()
+{
+    return !filters.isEmpty();
+}
+
+
+QString ExportOOFileDialog::selectedConfig()
+{
+    QStringList::Iterator itpath=configPaths.begin();
+    QStringList::Iterator itf=filters.begin();
+    while (itf != filters.end()) 
+    {
+       if (*itf==selectedNameFilter()) return *itpath;
+       itpath++;   
+       itf++;
+    }
+    qWarning ("ExportOOFileDialog::selectedConfig  No filter found!");
+    return "";
+}
+
+void ExportOOFileDialog::newConfigPath(const QString &s)
+{
+    lastFilter=s;
+}
+
+void ExportOOFileDialog::show()
+{
+    setNameFilters (filters);
+    QFileDialog::show();
+}
+
+void ExportOOFileDialog::init()
+{
+    setFileMode( QFileDialog::AnyFile );
+    QDir d;
+    d.setPath ("/usr/share/vym/exports");
+    scanExportConfigs(d);
+    d.setPath (d.homePath()+"/.vym/exports");
+    scanExportConfigs(d);
+    d.setPath (d.currentPath()+"/exports");
+    scanExportConfigs(d);
+
+    setNameFilters (filters);
+    connect (
+       this,SIGNAL (filterSelected(const QString&)),
+       this, SLOT( newConfigPath(const QString &)));
+}
+
+void ExportOOFileDialog::addFilter(const QString &f)
+{
+    lastFilter=f;
+    filters.append (f);
+}
+
+void ExportOOFileDialog::scanExportConfigs(QDir dir)
+{
+    // Scan existing export configurations
+    SimpleSettings set;
+    QFile f;
+    if (dir.exists())
+    {
+       // Traverse files
+        dir.setFilter(QDir::Files | QDir::Hidden | QDir::NoSymLinks);
+
+        QFileInfoList list = dir.entryInfoList();
+        for (int i = 0; i < list.size(); ++i) {
+            QFileInfo fi = list.at(i);
+
+           if (fi.fileName().endsWith(".conf") )
+           {
+               configPaths.append (fi.absoluteFilePath());
+               set.clear();
+               set.readSettings (fi.absoluteFilePath());
+               addFilter (set.value (QString("Name")) + " (*.odp)");
+           }       
+        }
+    }      
+}
diff --git a/exportoofiledialog.h b/exportoofiledialog.h
new file mode 100644 (file)
index 0000000..ff9bf39
--- /dev/null
@@ -0,0 +1,37 @@
+#ifndef EXPORTOOFILEDIALOG
+#define EXPORTOOFILEDIALOG
+
+#include <QFileDialog>
+#include <QStringList>
+
+#include "settings.h"
+
+/*! \brief Dialog to select output file and format for Open Office documents
+
+This is an overloaded QFileDialog, which allows to select templates by setting a type.
+*/
+
+class ExportOOFileDialog:public QFileDialog
+{
+    Q_OBJECT
+public:
+    ExportOOFileDialog();
+
+    ExportOOFileDialog (QWidget * parent , const  QString &caption=QString());
+    bool foundConfig();
+    QString selectedConfig();
+    void show();
+     
+private slots:
+    void  newConfigPath (const QString&f);
+
+private:
+    void init();
+    void addFilter(const QString &);
+    void scanExportConfigs(QDir );
+    QStringList configPaths;
+    QStringList filters;
+    QString lastFilter;
+    
+};
+#endif
diff --git a/exports.cpp b/exports.cpp
new file mode 100644 (file)
index 0000000..4542441
--- /dev/null
@@ -0,0 +1,1402 @@
+#include "exports.h"
+
+#include <cstdlib>
+
+#include <QDebug>
+#include <QFileDialog>
+#include <QMessageBox>
+
+#include "branchitem.h"
+#include "file.h"
+#include "linkablemapobj.h"
+#include "misc.h"
+#include "mainwindow.h"
+#include "warningdialog.h"
+#include "xsltproc.h"
+#include "vymprocess.h"
+
+
+extern Main *mainWindow;
+extern QDir vymBaseDir;
+extern QString flagsPath;
+extern QString vymName;
+extern QString vymVersion;
+extern QString vymHome;
+extern Settings settings;
+extern QDir lastExportDir;
+
+ExportBase::ExportBase()
+{
+    init();
+}
+
+ExportBase::ExportBase(VymModel *m)
+{
+    model=m;
+    init();
+}
+
+ExportBase::~ExportBase()
+{
+    // Cleanup tmpdir
+    removeDir (tmpDir);
+
+    // Remember current directory
+    lastExportDir = QDir(dirPath);
+}
+
+void ExportBase::init()
+{
+    indentPerDepth = "  ";
+    exportName     = "unnamed";
+    lastCommand    = "";
+    bool ok;
+    tmpDir.setPath (makeTmpDir(ok,"vym-export"));
+    if (!tmpDir.exists() || !ok)
+        QMessageBox::critical( 0, QObject::tr( "Error" ),
+                               QObject::tr("Couldn't access temporary directory\n"));
+    cancelFlag = false;
+    defaultDirPath = lastExportDir.absolutePath();
+    dirPath = defaultDirPath;
+}
+
+void ExportBase::setDirPath (const QString &s)
+{
+    if (!s.isEmpty())
+        dirPath=s;
+    // Otherwise lastExportDir is used, which defaults to current dir
+}
+
+QString ExportBase::getDirPath()
+{
+    return dirPath;
+}
+
+void ExportBase::setFilePath (const QString &s)
+{
+    if(!s.isEmpty())
+    {
+        filePath=s;
+        if (!filePath.contains("/"))
+            // Absolute path
+            filePath=lastExportDir.absolutePath() + "/" + filePath;
+    }
+}
+
+QString ExportBase::getFilePath ()
+{
+    if (!filePath.isEmpty())
+        return filePath;
+    else
+        return dirPath + "/" + model->getMapName() + extension;
+}
+
+QString ExportBase::getMapName ()
+{
+    QString fn=basename(filePath);
+    return fn.left(fn.lastIndexOf("."));
+}
+
+void ExportBase::setModel(VymModel *m)
+{
+    model=m;
+}
+
+void ExportBase::setWindowTitle (const QString &s)
+{
+    caption = s;
+}
+
+void ExportBase::setName (const QString &s)
+{
+    exportName = s;
+}
+
+QString ExportBase::getName ()
+{
+    return exportName;
+}
+
+void ExportBase::addFilter(const QString &s)
+{
+    filter=s;
+}
+
+void ExportBase::setListTasks(bool b)
+{
+    listTasks = b;
+}
+
+bool ExportBase::execDialog()
+{
+    QString fn=QFileDialog::getSaveFileName(
+                NULL,
+                caption,
+                dirPath,
+                filter,
+                NULL,
+                QFileDialog::DontConfirmOverwrite);
+
+    if (!fn.isEmpty() )
+    {
+        if (QFile (fn).exists() )
+        {
+            WarningDialog dia;
+            dia.showCancelButton (true);
+            dia.setCaption(QObject::tr("Warning: Overwriting file"));
+            dia.setText(QObject::tr("Exporting to %1 will overwrite the existing file:\n%2").arg(exportName).arg(fn));
+            dia.setShowAgainName("/exports/overwrite/" + exportName);
+            if (!(dia.exec()==QDialog::Accepted))
+            {
+                cancelFlag=true;
+                return false;
+            }
+        }
+        dirPath=fn.left(fn.lastIndexOf ("/"));
+        filePath=fn;
+        return true;
+    }
+    return false;
+}
+
+bool ExportBase::canceled()
+{
+    return cancelFlag;
+}
+
+void ExportBase::setLastCommand( const QString &s)
+{
+    lastCommand = s;
+}
+
+void ExportBase::completeExport(QString args) 
+{
+    QString command;
+    if (args.isEmpty()) 
+        // Add at least filepath as argument. exportName is added anyway
+        command = QString("export%1(\"%2\")").arg(exportName).arg(filePath);
+        // new syntax: command = QString("vym.currentMap().exportMap(\"%1\",\"%2\")").arg(exportName).arg(filePath);
+    else
+        command = QString("export%1(%2)").arg(exportName).arg(args);
+        // new syntax: command = QString("vym.currentMap().exportMap(\"%1\",%2)").arg(exportName).arg(args);
+
+    settings.setLocalValue ( model->getFilePath(), "/export/last/exportPath", filePath);
+    settings.setLocalValue ( model->getFilePath(), "/export/last/command", command);
+    settings.setLocalValue ( model->getFilePath(), "/export/last/description", exportName);
+
+    // Trigger saving of export command if it has changed
+    if (model && (lastCommand != command) ) model->setChanged();
+
+    mainWindow->statusMessage(QString("Exported as %1: %2").arg(exportName).arg(filePath));
+}
+
+QString ExportBase::getSectionString(TreeItem *start)
+{
+    // Make prefix like "2.5.3" for "bo:2,bo:5,bo:3"
+    QString r;
+    TreeItem *ti=start;
+    int depth=ti->depth();
+    while (depth>0)
+    {
+        r=QString("%1").arg(1+ti->num(),0,10)+"." + r;
+        ti=ti->parent();
+        depth=ti->depth();
+    }
+    if (r.isEmpty())
+        return r;
+    else
+        return r + " ";
+}
+
+QString ExportBase::indent (const int &n, bool useBullet)
+{
+    QString s;
+    for (int i=0; i<n; i++) s += indentPerDepth;
+    if (useBullet && s.length() >= 2 && bulletPoints.count() > n)
+        s.replace( s.length() - 2, 1, bulletPoints.at(n) );
+    return s;
+}
+
+////////////////////////////////////////////////////////////////////////
+ExportAO::ExportAO()
+{
+    exportName="AO";
+    filter="TXT (*.txt);;All (* *.*)";
+    caption=vymName+ " -" +QObject::tr("Export as ASCII")+" "+QObject::tr("(still experimental)");
+    indentPerDepth="   ";
+    bulletPoints.clear();
+    for (int i=0; i<10; i++)
+        bulletPoints << "-";
+}
+
+void ExportAO::doExport()   
+{
+    QFile file (filePath);
+    if ( !file.open( QIODevice::WriteOnly ) )
+    {
+        QMessageBox::critical (0, QObject::tr("Critical Export Error"), QObject::tr("Could not export as AO to %1").arg(filePath));
+        mainWindow->statusMessage(QString(QObject::tr("Export failed.")));
+        return;
+    }
+
+    settings.setLocalValue ( model->getFilePath(), "/export/last/command","exportAO");
+    settings.setLocalValue ( model->getFilePath(), "/export/last/description","A&O report");
+
+    QTextStream ts( &file );
+    ts.setCodec("UTF-8");
+
+    // Main loop over all branches
+    QString s;
+    QString curIndent;
+    QString dashIndent;
+
+    int i;
+    BranchItem *cur=NULL;
+    BranchItem *prev=NULL;
+
+    model->nextBranch (cur,prev);
+    while (cur)
+    {
+        QString line;
+        QString colString="";
+        QString noColString;
+        QString statusString ="";
+        QColor col;
+
+        if (cur->getType()==TreeItem::Branch || cur->getType()==TreeItem::MapCenter)
+        {
+            // Make indentstring
+            curIndent=indent(cur->depth()-4,true);
+
+            if (!cur->hasHiddenExportParent() )
+            {
+                col=cur->getHeadingColor();
+                if (col==QColor (255,0,0))
+                    colString="[R] ";
+                else if (col==QColor (217,81,0))
+                    colString="[O] ";
+                else if (col==QColor (0,85,0))
+                    colString="[G] ";
+                else if (cur->depth()==4)
+                    colString=" *  ";
+                else
+                    colString="    ";
+
+                noColString=QString(" ").repeated(colString.length() );
+
+                dashIndent="";
+                switch (cur->depth())
+                {
+                case 0: break;  // Mapcenter (Ignored)
+                case 1: break;  // Mainbranch "Archive" (Ignored)
+                case 2: // Title: "Current week number..."
+                    ts << "\n";
+                    ts << underline ( cur->getHeadingPlain(), QString("=") );
+                    ts << "\n";
+                    break;
+                case 3: // Headings: "Achievement", "Bonus", "Objective", ...
+                    ts << "\n";
+                    ts << underline ( cur->getHeadingPlain(), "-");
+                    ts << "\n";
+                    break;
+                default:    // depth 4 and higher are the items we need to know
+                    Task *task=cur->getTask();
+                    if (task)
+                    {
+                        // Task status overrides other flags
+                        switch ( task->getStatus() )
+                        {
+                        case Task::NotStarted:
+                            statusString="[NOT STARTED]";
+                            break;
+                        case Task::WIP:
+                            statusString="[WIP]";
+                            break;
+                        case Task::Finished:
+                            statusString="[DONE]";
+                            break;
+                        }
+                    } else
+                    {
+                        if (cur->hasActiveStandardFlag ("hook-green") )
+                            statusString="[DONE]";
+                        else if (cur->hasActiveStandardFlag ("wip"))
+                            statusString="[WIP]";
+                        else if (cur->hasActiveStandardFlag ("cross-red"))
+                            statusString="[NOT STARTED]";
+                    }
+
+                    line += colString;
+                    line += curIndent;
+                    if (cur->depth() >3)
+                        line += cur->getHeadingPlain();
+
+                    // Pad line width before status
+                    i = 80 - line.length() - statusString.length() -1;
+                    for (int j=0; j<i; j++) line += " ";
+                    line += " "  + statusString + "\n";
+
+                    ts << line;
+
+                    // If necessary, write URL
+                    if (!cur->getURL().isEmpty())
+                        ts << noColString << indent(cur->depth()-4, false) + cur->getURL() + "\n";
+
+                    // If necessary, write note
+                    if (!cur->isNoteEmpty())
+                    {
+                        curIndent = noColString + indent(cur->depth()-4,false) + "| ";
+                        s=cur->getNoteASCII( curIndent, 80);
+                        ts << s + "\n";
+                    }
+                    break;
+                }
+            }
+        }
+        model->nextBranch(cur,prev);
+    }
+    file.close();
+    completeExport();
+}
+
+QString ExportAO::underline (const QString &text, const QString &line)
+{
+    QString r=text + "\n";
+    for (int j=0;j<text.length();j++) r+=line;
+    return r;
+}
+
+
+////////////////////////////////////////////////////////////////////////
+ExportASCII::ExportASCII() 
+{
+    exportName = "ASCII";
+    filter = "TXT (*.txt);;All (* *.*)";
+    caption = vymName + " -" + QObject::tr("Export as ASCII");
+}
+
+void ExportASCII::doExport()
+{
+    QFile file (filePath);
+    if ( !file.open( QIODevice::WriteOnly ) )
+    {
+        QMessageBox::critical (0, QObject::tr("Critical Export Error"), QObject::tr("Could not export as ASCII to %1").arg(filePath));
+        mainWindow->statusMessage(QString(QObject::tr("Export failed.")));
+        return;
+    }
+    QTextStream ts( &file );
+    ts.setCodec("UTF-8");
+
+    // Main loop over all branches
+    QString s;
+    QString curIndent;
+    QString dashIndent;
+    int i;
+    BranchItem *cur=NULL;
+    BranchItem *prev=NULL;
+
+    int lastDepth=0;
+
+    QStringList tasks;
+
+    model->nextBranch (cur,prev);
+    while (cur)
+    {
+        if (cur->getType()==TreeItem::Branch || cur->getType()==TreeItem::MapCenter)
+        {
+            // Insert newline after previous list
+            if ( cur->depth() < lastDepth ) ts << "\n";
+
+            // Make indentstring
+            curIndent="";
+            for (i=1;i<cur->depth()-1;i++) curIndent+= indentPerDepth;
+
+            if (!cur->hasHiddenExportParent() )
+            {
+                //qDebug() << "ExportASCII::  "<<curIndent.toStdString()<<cur->getHeadingPlain().toStdString();
+
+                dashIndent="";
+                switch (cur->depth())
+                {
+                case 0:
+                    ts << underline (cur->getHeadingPlain(),QString("="));
+                    ts << "\n";
+                    break;
+                case 1:
+                    ts << "\n";
+                    ts << (underline (getSectionString(cur) + cur->getHeadingPlain(), QString("-") ) );
+                    ts << "\n";
+                    break;
+                case 2:
+                    ts << "\n";
+                    ts << (curIndent + "* " + cur->getHeadingPlain());
+                    ts << "\n";
+                    dashIndent="  ";
+                    break;
+                case 3:
+                    ts << (curIndent + "- " + cur->getHeadingPlain());
+                    ts << "\n";
+                    dashIndent="  ";
+                    break;
+                default:
+                    ts << (curIndent + "- " + cur->getHeadingPlain());
+                    ts << "\n";
+                    dashIndent="  ";
+                    break;
+                }
+
+                // If there is a task, save it for potential later display
+                if (listTasks && cur->getTask() )
+                {
+                    tasks.append( QString("[%1]: %2").arg(cur->getTask()->getStatusString()).arg(cur->getHeadingPlain() ) );
+                }
+
+                // If necessary, write URL
+                if (!cur->getURL().isEmpty())
+                    ts << (curIndent + dashIndent + cur->getURL()) +"\n";
+
+                // If necessary, write vymlink
+                if (!cur->getVymLink().isEmpty())
+                    ts << (curIndent + dashIndent + cur->getVymLink()) +" (vym mindmap)\n";
+
+                // If necessary, write note
+                if (!cur->isNoteEmpty())
+                {
+                    // curIndent +="  | ";
+                    // Only indent for bullet points
+                    if (cur->depth() > 2) curIndent +="  ";
+                    ts << '\n' +  cur->getNoteASCII(curIndent, 80) ;
+                }
+                lastDepth = cur->depth();
+            }
+        }
+        model->nextBranch(cur,prev);
+    }
+
+    if (listTasks)
+    {
+        ts << "\n\nTasks\n-----\n\n";
+
+
+        foreach (QString t, tasks)
+        {
+            ts << " - " << t << "\n";
+        }
+    }
+    file.close();
+
+    QString listTasksString = listTasks ? "true" : "false";
+    completeExport( QString("\"%1\",%2").arg(filePath).arg(listTasksString) );
+}
+
+QString ExportASCII::underline (const QString &text, const QString &line)
+{
+    QString r=text + "\n";
+    for (int j=0;j<text.length();j++) r+=line;
+    return r;
+}
+
+
+////////////////////////////////////////////////////////////////////////
+ExportCSV::ExportCSV() 
+{
+    exportName="CSV";
+    filter="CSV (*.csv);;All (* *.*)";
+    caption=vymName+ " -" +QObject::tr("Export as CSV");
+}
+
+void ExportCSV::doExport()
+{
+    QFile file (filePath);
+    if ( !file.open( QIODevice::WriteOnly ) )
+    {
+        QMessageBox::critical (0, QObject::tr("Critical Export Error"), QObject::tr("Could not export as CSV to %1").arg(filePath));
+        mainWindow->statusMessage(QString(QObject::tr("Export failed.")));
+        return;
+    }
+    QTextStream ts( &file );
+    ts.setCodec("UTF-8");
+
+    // Write header
+    ts << "\"Note\""  <<endl;
+
+    // Main loop over all branches
+    QString s;
+    QString curIndent("");
+    int i;
+    BranchItem *cur=NULL;
+    BranchItem *prev=NULL;
+    model->nextBranch (cur,prev);
+    while (cur)
+    {
+        if (!cur->hasHiddenExportParent() )
+        {
+            // If necessary, write note
+            if (!cur->isNoteEmpty())
+            {
+                s =cur->getNoteASCII();
+                s=s.replace ("\n","\n"+curIndent);
+                ts << ("\""+s+"\",");
+            } else
+                ts <<"\"\",";
+
+            // Make indentstring
+            for (i=0;i<cur->depth();i++) curIndent+= "\"\",";
+
+            // Write heading
+            ts << curIndent << "\"" << cur->getHeadingPlain()<<"\""<<endl;
+        }
+
+        model->nextBranch(cur,prev);
+        curIndent="";
+    }
+    file.close();
+    completeExport();
+}
+
+////////////////////////////////////////////////////////////////////////
+void ExportKDE4Bookmarks::doExport() 
+{
+    WarningDialog dia;
+    dia.showCancelButton (true);
+    dia.setText(QObject::tr("Exporting the %1 bookmarks will overwrite\nyour existing bookmarks file.").arg("KDE 4"));
+    dia.setCaption(QObject::tr("Warning: Overwriting %1 bookmarks").arg("KDE"));
+    dia.setShowAgainName("/exports/overwrite/KDE4Bookmarks");
+    if (dia.exec()==QDialog::Accepted)
+    {
+        model->exportXML("",tmpDir.path(),false);
+
+        XSLTProc p;
+        p.setInputFile (tmpDir.path()+"/"+model->getMapName()+".xml");
+        p.setOutputFile (tmpDir.home().path()+"/.kde4/share/apps/konqueror/bookmarks.xml");
+        p.setXSLFile (vymBaseDir.path()+"/styles/vym2kdebookmarks.xsl");
+        p.process();
+
+        QString ub=vymBaseDir.path()+"/scripts/update-bookmarks";
+        QProcess *proc= new QProcess ;
+        proc->start( ub);
+        if (!proc->waitForStarted())
+        {
+            QMessageBox::warning(0,
+                                 QObject::tr("Warning"),
+                                 QObject::tr("Couldn't find script %1\nto notifiy Browsers of changed bookmarks.").arg(ub));
+        }
+    }
+}
+
+////////////////////////////////////////////////////////////////////////
+void ExportFirefoxBookmarks::doExport() 
+{
+    WarningDialog dia;
+    dia.showCancelButton (true);
+    dia.setText(QObject::tr("Exporting the %1 bookmarks will overwrite\nyour existing bookmarks file.").arg("Firefox"));
+    dia.setCaption(QObject::tr("Warning: Overwriting %1 bookmarks").arg("Firefox"));
+    dia.setShowAgainName("/vym/warnings/overwriteImportBookmarks");
+    if (dia.exec()==QDialog::Accepted)
+    {
+        model->exportXML("",tmpDir.path(),false);
+
+        /*
+    XSLTProc p;
+    p.setInputFile (tmpDir.path()+"/"+me->getMapName()+".xml");
+    p.setOutputFile (tmpDir.home().path()+"/.kde/share/apps/konqueror/bookmarks.xml");
+    p.setXSLFile (vymBaseDir.path()+"/styles/vym2kdebookmarks.xsl");
+    p.process();
+
+    QString ub=vymBaseDir.path()+"/scripts/update-bookmarks";
+    QProcess *proc = new QProcess( );
+    proc->addArgument(ub);
+
+    if ( !proc->start() )
+    {
+        QMessageBox::warning(0,
+        QObject::tr("Warning"),
+        QObject::tr("Couldn't find script %1\nto notifiy Browsers of changed bookmarks.").arg(ub));
+    }
+
+*/
+    }
+}
+
+////////////////////////////////////////////////////////////////////////
+ExportHTML::ExportHTML():ExportBase()
+{
+    init();
+}
+
+ExportHTML::ExportHTML(VymModel *m):ExportBase(m)
+{
+    init();
+}
+
+void ExportHTML::init()
+{
+    exportName="HTML";
+    extension=".html";
+    frameURLs=true;
+}
+
+QString ExportHTML::getBranchText(BranchItem *current)
+{
+    if (current)
+    {
+        bool vis = false;
+        QRectF hr;
+        LinkableMapObj *lmo = current->getLMO();
+        if (lmo)
+        {
+            hr = ((BranchObj*)lmo)->getBBoxHeading();
+            vis = lmo->isVisibleObj();
+        }
+        QString col;
+        QString id = model->getSelectString(current);
+        if (dia.useTextColor)
+            col = QString("style='color:%1'").arg(current->getHeadingColor().name());
+        QString s = QString("<span class='vym-branch-%1' %2 id='%3'>")
+                .arg(current->depth())
+                .arg(col)
+                .arg(id);
+        QString url = current->getURL();
+        QString heading = quotemeta(current->getHeadingPlain());
+
+        // Task flags
+        QString taskFlags;
+        if (dia.useTaskFlags)
+        {
+            Task *task = current->getTask();
+            if (task)
+            {
+                QString taskName = task->getIconString();
+                taskFlags += QString("<img src=\"flags/flag-%1.png\" alt=\"%2\">")
+                    .arg(taskName)
+                    .arg(QObject::tr("Flag: %1","Alt tag in HTML export").arg(taskName));
+            }
+        }
+
+        // User flags
+        QString userFlags;
+        if (dia.useUserFlags)
+        {
+            foreach (QString flag, current->activeStandardFlagNames())
+                userFlags += QString("<img src=\"flags/flag-%1.png\" alt=\"%2\">")
+                    .arg(flag)
+                    .arg(QObject::tr("Flag: %1","Alt tag in HTML export").arg(flag));
+        }
+
+        // Numbering
+        QString number;
+        if (dia.useNumbering) number = getSectionString(current) + " ";
+        
+        // URL
+        if (!url.isEmpty())
+        {
+            s += QString ("<a href=\"%1\">%2<img src=\"flags/flag-url.png\" alt=\"%3\"></a>")
+                    .arg(url)
+                    .arg(number + taskFlags + heading + userFlags)
+                    .arg(QObject::tr("Flag: url","Alt tag in HTML export"));
+
+            QRectF fbox = current->getBBoxURLFlag ();
+            if (vis)
+                imageMap += QString("  <area shape='rect' coords='%1,%2,%3,%4' href='%5' alt='%6'>\n")
+                        .arg(fbox.left()   - offset.x())
+                        .arg(fbox.top()    - offset.y())
+                        .arg(fbox.right()  - offset.x())
+                        .arg(fbox.bottom() - offset.y())
+                        .arg(url)
+                        .arg(QObject::tr("External link: %1","Alt tag in HTML export").arg(heading));
+        } else
+            s += number + taskFlags + heading + userFlags;
+
+        s += "</span>";
+
+        // Create imagemap
+        if (vis && dia.includeMapImage)
+            imageMap += QString("  <area shape='rect' coords='%1,%2,%3,%4' href='#%5' alt='%6'>\n")
+                    .arg(hr.left()   - offset.x())
+                    .arg(hr.top()    - offset.y())
+                    .arg(hr.right()  - offset.x())
+                    .arg(hr.bottom() - offset.y())
+                    .arg(id)
+                    .arg(heading);
+
+        // Include images experimental
+        if (dia.includeImages)
+        {
+            int imageCount = current->imageCount();
+            ImageItem *image; 
+            QString imagePath;
+            for (int i=0; i< imageCount; i++)
+            {
+                image = current->getImageNum(i);
+                imagePath =  "image-" + image->getUuid().toString() + ".png";
+                image->save( dirPath + "/" + imagePath, "PNG");
+                s += "</br><img src=\"" + imagePath;
+                s += "\" alt=\"" + QObject::tr("Image: %1","Alt tag in HTML export").arg(image->getOriginalFilename());
+                s += "\"></br>";
+            }
+        }
+
+        // Include note
+        if (!current->isNoteEmpty())
+        {
+            VymNote  note = current->getNote();
+            QString n;
+            if (note.isRichText())
+            {
+                n = note.getText();
+                QRegExp re("<p.*>");
+                re.setMinimal (true);
+                if (current->getNote().getFontHint() == "fixed")
+                    n.replace(re,"<p class=\"vym-fixed-note-paragraph\">");
+                else
+                    n.replace(re,"<p class=\"vym-note-paragraph\">");
+
+                re.setPattern("</?html>");
+                n.replace(re,"");
+
+                re.setPattern("</?head.*>");
+                n.replace(re,"");
+
+                re.setPattern("</?body.*>");
+                n.replace(re,"");
+
+                re.setPattern("</?meta.*>");
+                n.replace(re,"");
+
+                re.setPattern("<style.*>.*</style>");
+                n.replace(re,"");
+
+                //re.setPattern("<!DOCTYPE.*>");
+                //n.replace(re,"");
+            }
+            else
+            {
+                n = current->getNoteASCII().replace ("<","&lt;").replace (">","&gt;");
+                n.replace("\n","<br/>");
+                if (current->getNote().getFontHint()=="fixed")
+                    n = "<pre>" + n + "</pre>";
+            } 
+            s += "\n<table class=\"vym-note\"><tr><td class=\"vym-note-flag\">\n<td>\n" + n + "\n</td></tr></table>\n";
+        }
+        return s;
+    }
+    return QString();
+}
+
+QString ExportHTML::buildList (BranchItem *current)
+{
+    QString r;
+
+    uint i = 0;
+    uint visChilds = 0;
+
+    BranchItem *bi = current->getFirstBranch();
+
+    QString ind = "\n" + indent(current->depth() + 1, false);
+
+    QString sectionBegin;
+    QString sectionEnd;
+    QString itemBegin;
+    QString itemEnd;
+
+    switch (current->depth() + 1)
+    {
+    case 0:
+        sectionBegin = "";
+        sectionEnd   = "";
+        itemBegin    = "<h1>";
+        itemEnd      = "</h1>";
+        break;
+    case 1:
+        sectionBegin = "";
+        sectionEnd   = "";
+        itemBegin    = "<h2>";
+        itemEnd      = "</h2>";
+        break;
+    default:
+        sectionBegin = "<ul " + QString("class=\"vym-list-ul-%1\"").arg(current->depth() + 1)  +">";
+        sectionEnd   = "</ul>";
+        itemBegin    = "  <li>";
+        itemEnd      = "  </li>";
+        break;
+    }
+    
+    if (bi && !bi->hasHiddenExportParent() && !bi->isHidden() )
+    {
+        r += ind + sectionBegin;
+        while (bi)
+        {
+            if (!bi->hasHiddenExportParent() && !bi->isHidden())
+            {
+                visChilds++;
+                r += ind + itemBegin;
+                r += getBranchText (bi);
+
+                if (itemBegin.startsWith("<h") )
+                    r += itemEnd + buildList (bi);
+                else
+                    r += buildList (bi) + itemEnd;
+            }
+            i++;
+            bi = current->getBranchNum(i);
+        }
+        r += ind + sectionEnd;
+    }
+
+    return r;
+}
+
+QString ExportHTML::createTOC()
+{
+    QString toc;
+    QString number;
+    toc += "<table class=\"vym-toc\">\n";
+    toc += "<tr><td class=\"vym-toc-title\">\n";
+    toc += QObject::tr("Contents:","Used in HTML export");
+    toc += "\n";
+    toc += "</td></tr>\n";
+    toc += "<tr><td>\n";
+    BranchItem *cur  = NULL;
+    BranchItem *prev = NULL;
+    model->nextBranch(cur, prev);
+    while (cur)
+    {
+        if (!cur->hasHiddenExportParent() && !cur->hasScrolledParent() )
+        {
+            if (dia.useNumbering) number = getSectionString(cur);
+            toc += QString("<div class=\"vym-toc-branch-%1\">").arg(cur->depth());
+            toc += QString("<a href=\"#%1\"> %2 %3</a></br>\n")
+                    .arg(model->getSelectString(cur))
+                    .arg(number)
+                    .arg(quotemeta( cur->getHeadingPlain() ));
+            toc += "</div>";
+        }
+        model->nextBranch(cur,prev);
+    }
+    toc += "</td></tr>\n";
+    toc += "</table>\n";
+    return toc;
+}
+
+void ExportHTML::doExport(bool useDialog) 
+{
+    // Setup dialog and read settings
+    dia.setMapName (model->getMapName());
+    dia.setFilePath (model->getFilePath());
+    dia.readSettings();
+
+    if (dirPath != defaultDirPath)
+        dia.setDirectory(dirPath);
+
+    if (useDialog)
+    {
+        if (dia.exec()!=QDialog::Accepted) return;
+        model->setChanged();
+    }
+
+    // Check, if warnings should be used before overwriting
+    // the output directory
+    if (dia.getDir().exists() && dia.getDir().count()>0)
+    {
+        WarningDialog warn;
+        warn.showCancelButton (true);
+        warn.setText(QString(
+                         "The directory %1 is not empty.\n"
+                         "Do you risk to overwrite some of its contents?").arg(dia.getDir().absolutePath() ));
+        warn.setCaption("Warning: Directory not empty");
+        warn.setShowAgainName("mainwindow/export-XML-overwrite-dir");
+
+        if (warn.exec()!=QDialog::Accepted)
+        {
+            mainWindow->statusMessage(QString(QObject::tr("Export aborted.")));
+            return;
+        }
+    }
+
+    dirPath=dia.getDir().absolutePath();
+    filePath=getFilePath();
+    
+    // Copy CSS file
+    if (dia.css_copy)
+    {
+        cssSrc=dia.getCssSrc();
+        cssDst=dirPath + "/" + basename(dia.getCssDst());
+        if (cssSrc.isEmpty() )
+        {
+            QMessageBox::critical( 0,
+                                   QObject:: tr( "Critical" ),
+                                   QObject::tr("Could not find stylesheet %1").arg(cssSrc));
+            return;
+        }
+        QFile src(cssSrc);
+        QFile dst(cssDst);
+        if (dst.exists() ) dst.remove();
+
+        if (!src.copy(cssDst))
+        {
+            QMessageBox::critical (0,
+                                   QObject::tr( "Error","ExportHTML" ),
+                                   QObject::tr("Could not copy\n%1 to\n%2","ExportHTML").arg(cssSrc).arg(cssDst));
+            return;
+        }
+    }
+
+    // Copy flags
+    QDir flagsDst(dia.getDir().absolutePath() + "/flags");
+    if (!flagsDst.exists())
+    {
+        if (!dia.getDir().mkdir("flags"))
+        {
+            QMessageBox::critical( 0,
+                                   QObject::tr( "Critical" ),
+                                   QObject::tr("Trying to create directory for flags:") + "\n\n" +
+                                   QObject::tr("Could not create %1").arg(flagsDst.absolutePath()));
+            return;
+        }
+    }
+
+    QDir flagsSrc(flagsPath);   // FIXME-3 don't use flagsPath as source anymore, but copy required flags directly from memory
+    if (!copyDir(flagsSrc, flagsDst, true))
+    {
+        QMessageBox::critical( 0,
+                               QObject::tr( "Critical" ),
+                               QObject::tr("Could not copy %1 to %2").arg(flagsSrc.absolutePath()).arg(flagsDst.absolutePath()));
+        return;
+    }
+
+    // Open file for writing
+    QFile file (filePath);
+    if ( !file.open( QIODevice::WriteOnly ) )
+    {
+        QMessageBox::critical (0,
+                               QObject::tr("Critical Export Error"),
+                               QObject::tr("Trying to save HTML file:") + "\n\n"+
+                               QObject::tr("Could not write %1").arg(filePath));
+        mainWindow->statusMessage(QString(QObject::tr("Export failed.")));
+        return;
+    }
+    QTextStream ts( &file );
+    ts.setCodec("UTF-8");
+
+    // Hide stuff during export
+    model->setExportMode (true);
+
+    // Write header
+    ts << "<html>";
+    ts << "\n<meta http-equiv=\"content-type\" content=\"text/html; charset=UTF-8\"> ";
+    ts << "\n<meta name=\"generator=\" content=\" vym - view your mind - " + vymVersion + " - " + vymHome + "\">";
+    ts << "\n<meta name=\"author\" content=\"" + quotemeta(model->getAuthor()) + "\"> ";
+    ts << "\n<meta name=\"description\" content=\"" + quotemeta(model->getComment()) + "\"> ";
+    ts << "\n<link rel='stylesheet' id='css.stylesheet' href='" << basename(cssDst) << "' />\n";
+    QString title=model->getTitle();
+    if (title.isEmpty()) title=model->getMapName();
+    ts << "\n<head><title>" + quotemeta(title) + "</title></head>";
+    ts << "\n<body>\n";
+
+    // Include image
+    // (be careful: this resets Export mode, so call before exporting branches)
+    if (dia.includeMapImage)
+    {
+        QString mapName = getMapName();
+        ts << "<center><img src=\"" << mapName << ".png\"";
+        ts << "alt=\"" << QObject::tr("Image of map: %1.vym","Alt tag in HTML export").arg(mapName) << "\"";
+        ts << " usemap='#imagemap'></center>\n";
+        offset = model->exportImage (dirPath + "/" + mapName + ".png", false, "PNG");
+    }
+
+    // Include table of contents
+    if (dia.useTOC) ts << createTOC();
+
+    // Main loop over all mapcenters
+    ts << buildList(model->getRootItem()) << "\n";
+
+    // Imagemap
+    ts << "<map name='imagemap'>\n" + imageMap + "</map>\n";
+
+    // Write footer
+    ts << "<hr/>\n";
+    ts << "<table class=\"vym-footer\">   \n\
+        <tr> \n\
+        <td class=\"vym-footerL\">" + filePath + "</td> \n\
+            <td class=\"vym-footerC\">" + model->getDate() + "</td> \n\
+            <td class=\"vym-footerR\"> <a href='" + vymHome + "'>vym " + vymVersion + "</a></td> \n\
+            </tr> \n \
+            </table>\n";
+            ts << "</body></html>";
+    file.close();
+
+    if (!dia.postscript.isEmpty())
+    {
+        VymProcess p;
+        p.runScript (dia.postscript,dirPath + "/" + filePath);  
+    }
+
+    completeExport( QString("\"%1\",\"%2\"").arg(dirPath).arg(filePath));
+
+    dia.saveSettings();
+    model->setExportMode (false);
+}
+
+////////////////////////////////////////////////////////////////////////
+void ExportTaskjuggler::doExport() 
+{
+    model->exportXML("",tmpDir.path(),false);
+
+    XSLTProc p;
+    p.setInputFile (tmpDir.path()+"/"+model->getMapName()+".xml");
+    p.setOutputFile (filePath);
+    p.setXSLFile (vymBaseDir.path()+"/styles/vym2taskjuggler.xsl");
+    p.process();
+
+    completeExport();
+}
+
+////////////////////////////////////////////////////////////////////////
+ExportOrgMode::ExportOrgMode() 
+{
+    exportName="OrgMode";
+    filter="org-mode (*.org);;All (* *.*)";
+}
+
+void ExportOrgMode::doExport() 
+{
+    // Exports a map to an org-mode file.
+    // This file needs to be read
+    // by EMACS into an org mode buffer
+    QFile file (filePath);
+    if ( !file.open( QIODevice::WriteOnly ) )
+    {
+        QMessageBox::critical (0, QObject::tr("Critical Export Error"), QObject::tr("Could not export as OrgMode to %1").arg(filePath));
+        mainWindow->statusMessage(QString(QObject::tr("Export failed.")));
+        return;
+    }
+    QTextStream ts( &file );
+    ts.setCodec("UTF-8");
+
+    // Main loop over all branches
+    QString s;
+    int i;
+    BranchItem *cur=NULL;
+    BranchItem *prev=NULL;
+    model->nextBranch(cur,prev);
+    while (cur)
+    {
+        if (!cur->hasHiddenExportParent() )
+        {
+            for(i=0;i<=cur->depth();i++)
+                ts << ("*");
+            ts << (" " + cur->getHeadingPlain()+ "\n");
+            // If necessary, write note
+            if (!cur->isNoteEmpty())
+            {
+                ts << (cur->getNoteASCII());
+                ts << ("\n");
+            }
+        }
+        model->nextBranch(cur,prev);
+    }
+    file.close();
+
+    completeExport();
+}
+
+////////////////////////////////////////////////////////////////////////
+ExportLaTeX::ExportLaTeX()
+{
+    exportName="LaTeX";
+    filter="LaTeX files (*.tex);;All (* *.*)";
+
+    // Note: key in hash on left side is the regular expression, which
+    // will be replaced by string on right side
+    // E.g. a literal $ will be replaced by \$
+    esc["\\$"]="\\$";
+    esc["\\^"]="\\^";
+    esc["%"]="\\%";
+    esc["&"]="\\&";
+    esc["~"]="\\~";
+    esc["_"]="\\_";
+    esc["\\\\"]="\\";
+    esc["\\{"]="\\{";
+    esc["\\}"]="\\}";
+}
+
+QString ExportLaTeX::escapeLaTeX(const QString &s)
+{
+    QString r=s;
+
+    QRegExp rx;
+    rx.setMinimal(true);
+
+    foreach (QString p,esc.keys() )
+    {
+        rx.setPattern (p);
+        r.replace (rx, esc[p] );
+    }
+    return r;
+}
+
+void ExportLaTeX::doExport()
+{
+    // Exports a map to a LaTex file.
+    // This file needs to be included
+    // or inported into a LaTex document
+    // it will not add a preamble, or anything
+    // that makes a full LaTex document.
+    QFile file (filePath);
+    if ( !file.open( QIODevice::WriteOnly ) ) {
+        QMessageBox::critical (
+                    0,
+                    QObject::tr("Critical Export Error"),
+                    QObject::tr("Could not export as LaTeX to %1").arg(filePath));
+        mainWindow->statusMessage(QString(QObject::tr("Export failed.")));
+        return;
+    }
+    QTextStream ts( &file );
+    ts.setCodec("UTF-8");
+
+    // Read default section names
+    QStringList sectionNames;
+    sectionNames << ""
+                 << "chapter"
+                 << "section"
+                 << "subsection"
+                 << "subsubsection"
+                 << "paragraph";
+
+    for (int i=0; i<6; i++)
+        sectionNames.replace(i,settings.value(
+                                 QString("/export/latex/sectionName-%1").arg(i),sectionNames.at(i)).toString() );
+
+    // Main loop over all branches
+    QString s;
+    BranchItem *cur=NULL;
+    BranchItem *prev=NULL;
+    model->nextBranch(cur,prev);
+    while (cur)
+    {
+        if (!cur->hasHiddenExportParent() )
+        {
+            int d=cur->depth();
+            s=escapeLaTeX (cur->getHeadingPlain() );
+            if ( sectionNames.at(d).isEmpty() || d>=sectionNames.count() )
+                ts << s << endl;
+            else
+                ts << endl
+                   << "\\"
+                   << sectionNames.at(d)
+                   << "{"
+                   << s
+                   << "}"
+                   << endl;
+
+            // If necessary, write note
+            if (!cur->isNoteEmpty()) {
+                ts << (cur->getNoteASCII());
+                ts << endl;
+            }
+        }
+        model->nextBranch(cur,prev);
+    }
+    
+    file.close();
+    completeExport();
+}
+
+////////////////////////////////////////////////////////////////////////
+ExportOO::ExportOO()
+{
+    exportName="Impress";
+    filter="LibreOffice Impress (*.odp);;All (* *.*)";
+    caption=vymName+ " -" +QObject::tr("Export as LibreOffice Impress presentation");
+    useSections=false;
+}
+
+ExportOO::~ExportOO()
+{
+}   
+
+QString ExportOO::buildList (TreeItem *current)
+{
+    QString r;
+
+    uint i=0;
+    BranchItem *bi=current->getFirstBranch();
+    if (bi)
+    {
+        // Start list
+        r+="<text:list text:style-name=\"vym-list\">\n";
+        while (bi)
+        {
+            if (!bi->hasHiddenExportParent() )
+            {
+                r += "<text:list-item><text:p >";
+                r += quotemeta(bi->getHeadingPlain());
+                // If necessary, write note
+                if (! bi->isNoteEmpty())
+                    r += "<text:line-break/>" + bi->getNoteASCII();
+                r += "</text:p>";
+                r += buildList (bi);  // recursivly add deeper branches
+                r += "</text:list-item>\n";
+            }
+            i++;
+            bi = current->getBranchNum(i);
+        }
+        r += "</text:list>\n";
+    }
+    return r;
+}
+
+
+void ExportOO::exportPresentation()
+{
+    QString allPages;
+
+    BranchItem *firstMCO=(BranchItem*)(model->getRootItem()->getFirstBranch());
+    if (!firstMCO)
+    {
+        QMessageBox::critical (0,QObject::tr("Critical Export Error"),QObject::tr("No objects in map!"));
+        return;
+    }
+
+    // Insert new content
+    // FIXME add extra title in mapinfo for vym 1.13.x
+    content.replace ("<!-- INSERT TITLE -->",quotemeta(firstMCO->getHeadingPlain()));
+    content.replace ("<!-- INSERT AUTHOR -->",quotemeta(model->getAuthor()));
+
+    QString onePage;
+    QString list;
+    
+    BranchItem *sectionBI;
+    int i=0;
+    BranchItem *pagesBI;
+    int j=0;
+
+    int mapcenters=model->getRootItem()->branchCount();
+
+    // useSections already has been set in setConfigFile
+    if (mapcenters>1)
+        sectionBI=firstMCO;
+    else
+        sectionBI=firstMCO->getFirstBranch();
+
+    // Walk sections
+    while (sectionBI && !sectionBI->hasHiddenExportParent() )
+    {
+        if (useSections)
+        {
+            // Add page with section title
+            onePage=sectionTemplate;
+            onePage.replace ("<!-- INSERT PAGE HEADING -->", quotemeta(sectionBI->getHeadingPlain() ) );
+            allPages+=onePage;
+            pagesBI=sectionBI->getFirstBranch();
+        } else
+        {
+            //i=-2; // only use inner loop to
+            // turn mainbranches into pages
+            //sectionBI=firstMCO;
+            pagesBI=sectionBI;
+        }
+
+        j=0;
+        while (pagesBI && !pagesBI->hasHiddenExportParent() )
+        {
+            // Add page with list of items
+            onePage=pageTemplate;
+            onePage.replace ("<!-- INSERT PAGE HEADING -->", quotemeta (pagesBI->getHeadingPlain() ) );
+            list=buildList (pagesBI);
+            onePage.replace ("<!-- INSERT LIST -->", list);
+            allPages+=onePage;
+            if (pagesBI!=sectionBI)
+            {
+                j++;
+                pagesBI=((BranchItem*)pagesBI->parent())->getBranchNum(j);
+            } else
+                pagesBI=NULL;    // We are already iterating over the sectionBIs
+        }
+        i++;
+        if (mapcenters>1 )
+            sectionBI=model->getRootItem()->getBranchNum (i);
+        else
+            sectionBI=firstMCO->getBranchNum (i);
+    }
+    
+    content.replace ("<!-- INSERT PAGES -->",allPages);
+
+    // Write modified content
+    QFile f (contentFile);
+    if ( !f.open( QIODevice::WriteOnly ) )
+    {
+        QMessageBox::critical (0,QObject::tr("Critical Export Error"),QObject::tr("Could not write %1").arg(contentFile));
+        mainWindow->statusMessage(QString(QObject::tr("Export failed.")));
+        return;
+    }
+
+    QTextStream t( &f );
+    t.setCodec("UTF-8");
+    t << content;
+    f.close();
+
+    // zip tmpdir to destination
+    zipDir (tmpDir,filePath);
+
+    completeExport(QString("\"%1\", \"%2\"").arg(filePath).arg(configFile) );
+}
+
+bool ExportOO::setConfigFile (const QString &cf)
+{
+    configFile=cf;
+    int i=cf.lastIndexOf ("/");
+    if (i>=0) configDir=cf.left(i);
+    SimpleSettings set;
+
+    if (!set.readSettings(configFile))
+    {
+        QMessageBox::critical (0,QObject::tr("Critical Export Error"),QObject::tr("Couldn't read settings from \"%1\"").arg(configFile));
+        return false;
+    }
+
+    // set paths
+    templateDir=configDir+"/"+set.value ("Template");
+
+    QDir d (templateDir);
+    if (!d.exists())
+    {
+        QMessageBox::critical (0,QObject::tr("Critical Export Error"),QObject::tr("Check \"%1\" in\n%2").arg("Template="+set.value ("Template")).arg(configFile));
+        return false;
+
+    }
+
+    contentTemplateFile = templateDir + "content-template.xml";
+    pageTemplateFile    = templateDir + "page-template.xml";
+    sectionTemplateFile = templateDir + "section-template.xml";
+    contentFile         = tmpDir.path() + "/content.xml";
+
+    if (set.value("useSections").contains("yes"))
+        useSections=true;
+
+    // Copy template to tmpdir
+    copyDir (templateDir,tmpDir);
+
+    // Read content-template
+    if (!loadStringFromDisk (contentTemplateFile,content))
+    {
+        QMessageBox::critical (0,QObject::tr("Critical Export Error"),QObject::tr("Could not read %1").arg(contentTemplateFile));
+        return false;
+    }
+
+    // Read page-template
+    if (!loadStringFromDisk (pageTemplateFile,pageTemplate))
+    {
+        QMessageBox::critical (0,QObject::tr("Critical Export Error"),QObject::tr("Could not read %1").arg(pageTemplateFile));
+        return false;
+    }
+    
+    // Read section-template
+    if (useSections && !loadStringFromDisk (sectionTemplateFile,sectionTemplate))
+    {
+        QMessageBox::critical (0,QObject::tr("Critical Export Error"),QObject::tr("Could not read %1").arg(sectionTemplateFile));
+        return false;
+    }
+    return true;
+}
+
diff --git a/exports.h b/exports.h
new file mode 100644 (file)
index 0000000..1dbc42a
--- /dev/null
+++ b/exports.h
@@ -0,0 +1,180 @@
+#ifndef EXPORTS_H
+#define EXPORTS_H
+
+#include <qdir.h>
+#include <qstring.h>
+#include <iostream>
+
+#include "settings.h"
+#include "vymmodel.h"
+
+
+/*! \brief Base class for all exports
+*/
+
+///////////////////////////////////////////////////////////////////////
+
+class ExportBase
+{
+public:
+    ExportBase();
+    ExportBase(VymModel *m);
+    virtual ~ExportBase();
+    virtual void init();
+    virtual void setDirPath (const QString&);
+    virtual QString getDirPath();
+    virtual void setFilePath (const QString&);
+    virtual QString getFilePath ();
+    virtual QString getMapName ();
+    virtual void setModel (VymModel *m);
+    virtual void setWindowTitle (const QString &);
+    virtual void setName( const QString &);
+    virtual QString getName();
+    virtual void addFilter (const QString &);
+    virtual void setListTasks( bool b);
+    virtual bool execDialog();
+    virtual bool canceled();
+    void setLastCommand( const QString& );
+    void completeExport(QString args="");  //! set lastExport and send status message
+
+protected:  
+    VymModel *model;
+    QString exportName;
+    QString lastCommand;
+    virtual QString getSectionString (TreeItem*);
+
+    QString indent (const int &n, bool useBullet);
+    QDir tmpDir;
+    QString dirPath;        // Path to dir  e.g. /tmp/vym-export/
+    QString defaultDirPath; // Default path
+    QString filePath;       // Path to file e.g. /tmp/vym-export/export.html
+    QString extension;      // Extension, e.g. .html
+    QString indentPerDepth;
+    int indentPerDepth2;
+    QStringList bulletPoints;
+    QString caption;
+    QString filter;
+    bool listTasks;         // Append task list
+    bool cancelFlag;
+};
+
+///////////////////////////////////////////////////////////////////////
+class ExportAO:public ExportBase
+{
+public:
+    ExportAO();
+    virtual void doExport();
+    virtual QString underline (const QString &text, const QString &line);
+};
+
+///////////////////////////////////////////////////////////////////////
+class ExportASCII:public ExportBase
+{
+public:
+    ExportASCII();
+    virtual void doExport();
+    virtual QString underline (const QString &text, const QString &line);
+};
+
+///////////////////////////////////////////////////////////////////////
+class ExportCSV:public ExportBase
+{
+public:
+    ExportCSV();
+    void doExport();
+};
+
+///////////////////////////////////////////////////////////////////////
+class ExportXMLBase:public ExportBase
+{
+};
+
+///////////////////////////////////////////////////////////////////////
+class ExportKDE4Bookmarks:public ExportXMLBase
+{
+public:
+    virtual void doExport();
+};  
+
+///////////////////////////////////////////////////////////////////////
+class ExportFirefoxBookmarks:public ExportXMLBase
+{
+public:
+    virtual void doExport();
+};  
+
+#include "exporthtmldialog.h"
+///////////////////////////////////////////////////////////////////////
+class ExportHTML:public ExportBase
+{
+public:
+    ExportHTML();
+    ExportHTML(VymModel *m);
+    virtual void init();
+    virtual QString createTOC();
+    virtual void doExport(bool useDialog=true);
+private:
+    QString getBranchText(BranchItem *);
+    QString buildList (BranchItem *);
+    QString imageMap;
+    QString cssSrc;
+    QString cssDst;
+
+    bool frameURLs;
+
+    QPointF offset;
+
+    ExportHTMLDialog dia;
+};  
+
+///////////////////////////////////////////////////////////////////////
+class ExportLaTeX:public ExportBase
+{
+public:
+    ExportLaTeX();
+    QString escapeLaTeX (const QString &s);
+    virtual void doExport();
+private:
+    QHash <QString,QString> esc;
+};  
+
+///////////////////////////////////////////////////////////////////////
+class ExportOrgMode:public ExportBase
+{
+public:
+    ExportOrgMode();
+    virtual void doExport();
+};  
+
+///////////////////////////////////////////////////////////////////////
+class ExportOO:public ExportBase
+{
+public:
+    ExportOO();
+    ~ExportOO();
+    void exportPresentation();
+    bool setConfigFile (const QString &);
+private:
+    QString buildList (TreeItem *);
+    bool useSections;
+    QString configFile;
+    QString configDir;
+    QString templateDir;
+    QString content;
+    QString contentTemplate;
+    QString contentTemplateFile;
+    QString contentFile;
+    QString pageTemplate;
+    QString pageTemplateFile;
+    QString sectionTemplate;
+    QString sectionTemplateFile;
+};
+
+///////////////////////////////////////////////////////////////////////
+class ExportTaskjuggler:public ExportXMLBase
+{
+public:
+    virtual void doExport();
+};  
+
+#endif
diff --git a/exports/orange-blue.conf b/exports/orange-blue.conf
new file mode 100644 (file)
index 0000000..5dcae47
--- /dev/null
@@ -0,0 +1,4 @@
+Name=Simple Presentation orange-blue (without sections)
+Template=template-orange-blue/
+Author=Uwe Drechsel (based on Open Office default)
+useSections=no
\ No newline at end of file
diff --git a/exports/template-orange-blue/META-INF/manifest.xml b/exports/template-orange-blue/META-INF/manifest.xml
new file mode 100644 (file)
index 0000000..6dfa7f7
--- /dev/null
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE manifest:manifest PUBLIC "-//OpenOffice.org//DTD Manifest 1.0//EN" "Manifest.dtd">
+<manifest:manifest xmlns:manifest="urn:oasis:names:tc:opendocument:xmlns:manifest:1.0">
+ <manifest:file-entry manifest:media-type="application/vnd.oasis.opendocument.presentation" manifest:full-path="/"/>
+ <manifest:file-entry manifest:media-type="application/vnd.sun.xml.ui.configuration" manifest:full-path="Configurations2/"/>
+ <manifest:file-entry manifest:media-type="image/png" manifest:full-path="Pictures/1000000000000040000000400142E835.png"/>
+ <manifest:file-entry manifest:media-type="" manifest:full-path="Pictures/"/>
+ <manifest:file-entry manifest:media-type="text/xml" manifest:full-path="content.xml"/>
+ <manifest:file-entry manifest:media-type="text/xml" manifest:full-path="styles.xml"/>
+ <manifest:file-entry manifest:media-type="text/xml" manifest:full-path="meta.xml"/>
+ <manifest:file-entry manifest:media-type="" manifest:full-path="Thumbnails/thumbnail.png"/>
+ <manifest:file-entry manifest:media-type="" manifest:full-path="Thumbnails/"/>
+ <manifest:file-entry manifest:media-type="text/xml" manifest:full-path="settings.xml"/>
+</manifest:manifest>
\ No newline at end of file
diff --git a/exports/template-orange-blue/Pictures/1000000000000040000000400142E835.png b/exports/template-orange-blue/Pictures/1000000000000040000000400142E835.png
new file mode 100644 (file)
index 0000000..44980d9
Binary files /dev/null and b/exports/template-orange-blue/Pictures/1000000000000040000000400142E835.png differ
diff --git a/exports/template-orange-blue/Thumbnails/thumbnail.png b/exports/template-orange-blue/Thumbnails/thumbnail.png
new file mode 100644 (file)
index 0000000..f1c2eb5
Binary files /dev/null and b/exports/template-orange-blue/Thumbnails/thumbnail.png differ
diff --git a/exports/template-orange-blue/content-template.xml b/exports/template-orange-blue/content-template.xml
new file mode 100644 (file)
index 0000000..4018b9d
--- /dev/null
@@ -0,0 +1,247 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+
+<office:document-content xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:presentation="urn:oasis:names:tc:opendocument:xmlns:presentation:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:ooow="http://openoffice.org/2004/writer" xmlns:oooc="http://openoffice.org/2004/calc" xmlns:dom="http://www.w3.org/2001/xml-events" xmlns:xforms="http://www.w3.org/2002/xforms" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:smil="urn:oasis:names:tc:opendocument:xmlns:smil-compatible:1.0" xmlns:anim="urn:oasis:names:tc:opendocument:xmlns:animation:1.0" office:version="1.0">
+  <office:scripts/>
+  <office:automatic-styles>
+    <style:style style:name="dp1" style:family="drawing-page">
+      <style:drawing-page-properties presentation:background-visible="true" presentation:background-objects-visible="true" presentation:display-footer="true" presentation:display-page-number="false" presentation:display-date-time="true"/>
+    </style:style>
+    <style:style style:name="dp2" style:family="drawing-page">
+      <style:drawing-page-properties presentation:display-header="true" presentation:display-footer="true" presentation:display-page-number="false" presentation:display-date-time="true"/>
+    </style:style>
+    <style:style style:name="gr1" style:family="graphic">
+      <style:graphic-properties style:protect="size"/>
+    </style:style>
+    <style:style style:name="pr1" style:family="presentation" style:parent-style-name="lyt-darkblue-title" style:list-style-name="L3">
+      <style:graphic-properties draw:fill-color="#ffffff" draw:auto-grow-height="true" fo:min-height="3.508cm"/>
+    </style:style>
+    <style:style style:name="pr2" style:family="presentation" style:parent-style-name="lyt-darkblue-subtitle">
+      <style:graphic-properties draw:fill-color="#ffffff" fo:min-height="13.231cm"/>
+    </style:style>
+    <style:style style:name="pr3" style:family="presentation" style:parent-style-name="lyt-darkblue-notes">
+      <style:graphic-properties draw:fill-color="#ffffff" draw:auto-grow-height="true" fo:min-height="11.411cm"/>
+    </style:style>
+    <style:style style:name="pr4" style:family="presentation" style:parent-style-name="lyt-darkblue-title" style:list-style-name="L3">
+      <style:graphic-properties draw:fill-color="#ffffff" draw:auto-grow-height="true" fo:min-height="3.508cm"/>
+    </style:style>
+    <style:style style:name="pr5" style:family="presentation" style:parent-style-name="lyt-darkblue-outline1">
+      <style:graphic-properties draw:fill-color="#ffffff" fo:min-height="13.231cm"/>
+    </style:style>
+    <style:style style:name="pr6" style:family="presentation" style:parent-style-name="lyt-darkblue-title" style:list-style-name="L3">
+      <style:graphic-properties draw:fill-color="#ffffff" draw:auto-grow-height="true" fo:min-height="3.508cm"/>
+    </style:style>
+    <style:style style:name="P1" style:family="paragraph">
+      <style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm"/>
+    </style:style>
+    <style:style style:name="P2" style:family="paragraph">
+      <style:paragraph-properties fo:margin-left="0.6cm" fo:margin-right="0cm" fo:text-indent="-1cm"/>
+    </style:style>
+    <style:style style:name="P3" style:family="paragraph">
+      <style:paragraph-properties fo:margin-left="0.6cm" fo:margin-right="0cm" fo:text-indent="-0.6cm"/>
+    </style:style>
+    <style:style style:name="P4" style:family="paragraph">
+      <style:paragraph-properties fo:margin-left="0.6cm" fo:margin-right="0cm" fo:text-indent="-0.6cm"/>
+      <style:text-properties fo:hyphenate="false"/>
+    </style:style>
+    <style:style style:name="P5" style:family="paragraph">
+      <style:paragraph-properties fo:margin-left="1.2cm" fo:margin-right="0cm" fo:text-indent="-0.9cm"/>
+      <style:text-properties fo:hyphenate="true"/>
+    </style:style>
+    <style:style style:name="P6" style:family="paragraph">
+      <style:paragraph-properties fo:margin-left="2.4cm" fo:margin-right="0cm" fo:text-indent="-0.8cm"/>
+      <style:text-properties fo:hyphenate="true"/>
+    </style:style>
+    <style:style style:name="P7" style:family="paragraph">
+      <style:paragraph-properties fo:margin-left="3.6cm" fo:margin-right="0cm" fo:text-indent="-0.6cm"/>
+      <style:text-properties fo:hyphenate="true"/>
+    </style:style>
+    <style:style style:name="P8" style:family="paragraph">
+      <style:paragraph-properties fo:margin-left="1.4cm" fo:margin-right="0cm" fo:text-indent="-1.2cm"/>
+      <style:text-properties fo:hyphenate="true"/>
+    </style:style>
+    <text:list-style style:name="L1">
+      <text:list-level-style-bullet text:level="1" text:bullet-char="">
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="2" text:bullet-char="">
+        <style:list-level-properties text:space-before="1cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="3" text:bullet-char="">
+        <style:list-level-properties text:space-before="2cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="4" text:bullet-char="">
+        <style:list-level-properties text:space-before="3cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="5" text:bullet-char="">
+        <style:list-level-properties text:space-before="4cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="6" text:bullet-char="">
+        <style:list-level-properties text:space-before="5cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="7" text:bullet-char="">
+        <style:list-level-properties text:space-before="6cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="8" text:bullet-char="">
+        <style:list-level-properties text:space-before="7cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="9" text:bullet-char="">
+        <style:list-level-properties text:space-before="8cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+    </text:list-style>
+    <text:list-style style:name="L2">
+      <text:list-level-style-bullet text:level="1" text:bullet-char="●">
+        <style:list-level-properties text:min-label-width="0.6cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="2" text:bullet-char="●">
+        <style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="3" text:bullet-char="●">
+        <style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="4" text:bullet-char="●">
+        <style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="5" text:bullet-char="●">
+        <style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="6" text:bullet-char="●">
+        <style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="7" text:bullet-char="●">
+        <style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="8" text:bullet-char="●">
+        <style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="9" text:bullet-char="●">
+        <style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+    </text:list-style>
+    <text:list-style style:name="L3">
+      <text:list-level-style-bullet text:level="1" text:bullet-char="">
+        <style:list-level-properties text:space-before="-0.4cm" text:min-label-width="1cm"/>
+        <style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="2" text:bullet-char="">
+        <style:list-level-properties text:space-before="0.2cm" text:min-label-width="1cm"/>
+        <style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="3" text:bullet-char="">
+        <style:list-level-properties text:space-before="0.8cm" text:min-label-width="1cm"/>
+        <style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="4" text:bullet-char="">
+        <style:list-level-properties text:space-before="1.4cm" text:min-label-width="1cm"/>
+        <style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="5" text:bullet-char="">
+        <style:list-level-properties text:space-before="2cm" text:min-label-width="1cm"/>
+        <style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="6" text:bullet-char="">
+        <style:list-level-properties text:space-before="2.6cm" text:min-label-width="1cm"/>
+        <style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="7" text:bullet-char="">
+        <style:list-level-properties text:space-before="3.2cm" text:min-label-width="1cm"/>
+        <style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="8" text:bullet-char="">
+        <style:list-level-properties text:space-before="3.8cm" text:min-label-width="1cm"/>
+        <style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="9" text:bullet-char="">
+        <style:list-level-properties text:space-before="4.4cm" text:min-label-width="1cm"/>
+        <style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+    </text:list-style>
+    <text:list-style style:name="vym-list">
+      <text:list-level-style-bullet text:level="1" text:bullet-char="●">
+        <style:list-level-properties text:space-before="0.3cm" text:min-label-width="0.9cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="2" text:bullet-char="–">
+        <style:list-level-properties text:space-before="1.6cm" text:min-label-width="0.8cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="75%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="3" text:bullet-char="●">
+        <style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="4" text:bullet-char="–">
+        <style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="75%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="5" text:bullet-char="●">
+        <style:list-level-properties text:space-before="5.4cm" text:min-label-width="0.6cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="6" text:bullet-char="●">
+        <style:list-level-properties text:space-before="6.6cm" text:min-label-width="0.6cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="7" text:bullet-char="●">
+        <style:list-level-properties text:space-before="7.8cm" text:min-label-width="0.6cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="8" text:bullet-char="●">
+        <style:list-level-properties text:space-before="9cm" text:min-label-width="0.6cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+      <text:list-level-style-bullet text:level="9" text:bullet-char="●">
+        <style:list-level-properties text:space-before="10.2cm" text:min-label-width="0.6cm"/>
+        <style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/>
+      </text:list-level-style-bullet>
+    </text:list-style>
+  </office:automatic-styles>
+  <office:body>
+    <office:presentation>
+      <draw:page draw:name="Title" draw:style-name="dp1" draw:master-page-name="lyt-darkblue" presentation:presentation-page-layout-name="AL1T0">
+        <office:forms form:automatic-focus="false" form:apply-design-mode="false"/>
+        <draw:frame presentation:style-name="pr1" draw:text-style-name="P2" draw:layer="layout" svg:width="23.912cm" svg:height="3.508cm" svg:x="2.058cm" svg:y="0.784cm" presentation:class="title" presentation:user-transformed="true">
+          <draw:text-box>
+            <text:p text:style-name="P1">
+            <!-- INSERT TITLE --></text:p>
+          </draw:text-box>
+        </draw:frame>
+        <draw:frame presentation:style-name="pr2" draw:text-style-name="P4" draw:layer="layout" svg:width="23.548cm" svg:height="13.231cm" svg:x="3.023cm" svg:y="6.178cm" presentation:class="subtitle" presentation:user-transformed="true">
+          <draw:text-box draw:corner-radius="10.956cm">
+            <text:p text:style-name="P3">
+            <!-- INSERT AUTHOR --> </text:p>
+            <text:p text:style-name="P3">
+            <!-- INSERT COMMENT --> </text:p>
+          </draw:text-box>
+        </draw:frame>
+        <presentation:notes draw:style-name="dp2">
+          <draw:page-thumbnail draw:style-name="gr1" draw:layer="layout" svg:width="13.706cm" svg:height="10.28cm" svg:x="3.647cm" svg:y="2.853cm" draw:page-number="1" presentation:class="page"/>
+          <draw:frame presentation:style-name="pr3" draw:text-style-name="P1" draw:layer="layout" svg:width="14.518cm" svg:height="11.411cm" svg:x="3.249cm" svg:y="14.13cm" presentation:class="notes" presentation:placeholder="true">
+            <draw:text-box/>
+          </draw:frame>
+        </presentation:notes>
+      </draw:page>
+
+         <!-- INSERT PAGES -->
+
+      <presentation:settings presentation:stay-on-top="true"/>
+    </office:presentation>
+  </office:body>
+</office:document-content>
+
diff --git a/exports/template-orange-blue/content.xml b/exports/template-orange-blue/content.xml
new file mode 100644 (file)
index 0000000..6a5dbc4
--- /dev/null
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<office:document-content xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:presentation="urn:oasis:names:tc:opendocument:xmlns:presentation:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:ooow="http://openoffice.org/2004/writer" xmlns:oooc="http://openoffice.org/2004/calc" xmlns:dom="http://www.w3.org/2001/xml-events" xmlns:xforms="http://www.w3.org/2002/xforms" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:smil="urn:oasis:names:tc:opendocument:xmlns:smil-compatible:1.0" xmlns:anim="urn:oasis:names:tc:opendocument:xmlns:animation:1.0" office:version="1.0"><office:scripts/><office:automatic-styles><style:style style:name="dp1" style:family="drawing-page"><style:drawing-page-properties presentation:background-visible="true" presentation:background-objects-visible="true" presentation:display-footer="true" presentation:display-page-number="false" presentation:display-date-time="true"/></style:style><style:style style:name="dp2" style:family="drawing-page"><style:drawing-page-properties presentation:display-header="true" presentation:display-footer="true" presentation:display-page-number="false" presentation:display-date-time="true"/></style:style><style:style style:name="gr1" style:family="graphic"><style:graphic-properties style:protect="size"/></style:style><style:style style:name="pr1" style:family="presentation" style:parent-style-name="lyt-darkblue-title" style:list-style-name="L3"><style:graphic-properties draw:fill-color="#ffffff" draw:auto-grow-height="true" fo:min-height="3.508cm"/></style:style><style:style style:name="pr2" style:family="presentation" style:parent-style-name="lyt-darkblue-subtitle"><style:graphic-properties draw:fill-color="#ffffff" fo:min-height="13.231cm"/></style:style><style:style style:name="pr3" style:family="presentation" style:parent-style-name="lyt-darkblue-notes"><style:graphic-properties draw:fill-color="#ffffff" draw:auto-grow-height="true" fo:min-height="11.411cm"/></style:style><style:style style:name="pr4" style:family="presentation" style:parent-style-name="lyt-darkblue-title" style:list-style-name="L3"><style:graphic-properties draw:fill-color="#ffffff" draw:auto-grow-height="true" fo:min-height="3.508cm"/></style:style><style:style style:name="pr5" style:family="presentation" style:parent-style-name="lyt-darkblue-outline1"><style:graphic-properties draw:fill-color="#ffffff" fo:min-height="13.231cm"/></style:style><style:style style:name="pr6" style:family="presentation" style:parent-style-name="lyt-darkblue-title" style:list-style-name="L3"><style:graphic-properties draw:fill-color="#ffffff" draw:auto-grow-height="true" fo:min-height="3.508cm"/></style:style><style:style style:name="P1" style:family="paragraph"><style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm"/></style:style><style:style style:name="P2" style:family="paragraph"><style:paragraph-properties fo:margin-left="0.6cm" fo:margin-right="0cm" fo:text-indent="-1cm"/></style:style><style:style style:name="P3" style:family="paragraph"><style:paragraph-properties fo:margin-left="0.6cm" fo:margin-right="0cm" fo:text-indent="-0.6cm"/></style:style><style:style style:name="P4" style:family="paragraph"><style:paragraph-properties fo:margin-left="0.6cm" fo:margin-right="0cm" fo:text-indent="-0.6cm"/><style:text-properties fo:hyphenate="false"/></style:style><style:style style:name="P5" style:family="paragraph"><style:paragraph-properties fo:margin-left="1.2cm" fo:margin-right="0cm" fo:text-indent="-0.9cm"/><style:text-properties fo:hyphenate="true"/></style:style><style:style style:name="P6" style:family="paragraph"><style:paragraph-properties fo:margin-left="2.4cm" fo:margin-right="0cm" fo:text-indent="-0.8cm"/><style:text-properties fo:hyphenate="true"/></style:style><style:style style:name="P7" style:family="paragraph"><style:paragraph-properties fo:margin-left="3.6cm" fo:margin-right="0cm" fo:text-indent="-0.6cm"/><style:text-properties fo:hyphenate="true"/></style:style><style:style style:name="P8" style:family="paragraph"><style:paragraph-properties fo:margin-left="1.4cm" fo:margin-right="0cm" fo:text-indent="-1.2cm"/><style:text-properties fo:hyphenate="true"/></style:style><text:list-style style:name="L1"><text:list-level-style-bullet text:level="1" text:bullet-char=""><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char=""><style:list-level-properties text:space-before="1cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char=""><style:list-level-properties text:space-before="2cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char=""><style:list-level-properties text:space-before="3cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char=""><style:list-level-properties text:space-before="4cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char=""><style:list-level-properties text:space-before="5cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char=""><style:list-level-properties text:space-before="6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char=""><style:list-level-properties text:space-before="7cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char=""><style:list-level-properties text:space-before="8cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style><text:list-style style:name="L2"><text:list-level-style-bullet text:level="1" text:bullet-char="●"><style:list-level-properties text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char="●"><style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char="●"><style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char="●"><style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char="●"><style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char="●"><style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char="●"><style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char="●"><style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char="●"><style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style><text:list-style style:name="L3"><text:list-level-style-bullet text:level="1" text:bullet-char=""><style:list-level-properties text:space-before="-0.4cm" text:min-label-width="1cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char=""><style:list-level-properties text:space-before="0.2cm" text:min-label-width="1cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char=""><style:list-level-properties text:space-before="0.8cm" text:min-label-width="1cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char=""><style:list-level-properties text:space-before="1.4cm" text:min-label-width="1cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char=""><style:list-level-properties text:space-before="2cm" text:min-label-width="1cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char=""><style:list-level-properties text:space-before="2.6cm" text:min-label-width="1cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char=""><style:list-level-properties text:space-before="3.2cm" text:min-label-width="1cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char=""><style:list-level-properties text:space-before="3.8cm" text:min-label-width="1cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char=""><style:list-level-properties text:space-before="4.4cm" text:min-label-width="1cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style><text:list-style style:name="L4"><text:list-level-style-bullet text:level="1" text:bullet-char="●"><style:list-level-properties text:space-before="0.3cm" text:min-label-width="0.9cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char="–"><style:list-level-properties text:space-before="1.6cm" text:min-label-width="0.8cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="75%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char="●"><style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char="–"><style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="75%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char="●"><style:list-level-properties text:space-before="5.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char="●"><style:list-level-properties text:space-before="6.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char="●"><style:list-level-properties text:space-before="7.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char="●"><style:list-level-properties text:space-before="9cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char="●"><style:list-level-properties text:space-before="10.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style></office:automatic-styles><office:body><office:presentation><draw:page draw:name="Title" draw:style-name="dp1" draw:master-page-name="lyt-darkblue" presentation:presentation-page-layout-name="AL1T0"><office:forms form:automatic-focus="false" form:apply-design-mode="false"/><draw:frame presentation:style-name="pr1" draw:text-style-name="P2" draw:layer="layout" svg:width="23.912cm" svg:height="3.508cm" svg:x="2.058cm" svg:y="0.784cm" presentation:class="title" presentation:user-transformed="true"><draw:text-box><text:p text:style-name="P1">insert mapcenter here</text:p></draw:text-box></draw:frame><draw:frame presentation:style-name="pr2" draw:text-style-name="P4" draw:layer="layout" svg:width="23.548cm" svg:height="13.231cm" svg:x="3.023cm" svg:y="6.178cm" presentation:class="subtitle" presentation:user-transformed="true"><draw:text-box draw:corner-radius="10.956cm"><text:p text:style-name="P3">insert author here</text:p><text:p text:style-name="P3">insert comment</text:p></draw:text-box></draw:frame><presentation:notes draw:style-name="dp2"><draw:page-thumbnail draw:style-name="gr1" draw:layer="layout" svg:width="13.706cm" svg:height="10.28cm" svg:x="3.647cm" svg:y="2.853cm" draw:page-number="1" presentation:class="page"/><draw:frame presentation:style-name="pr3" draw:text-style-name="P1" draw:layer="layout" svg:width="14.518cm" svg:height="11.411cm" svg:x="3.249cm" svg:y="14.13cm" presentation:class="notes" presentation:placeholder="true"><draw:text-box/></draw:frame></presentation:notes></draw:page><draw:page draw:name="Overview" draw:style-name="dp1" draw:master-page-name="lyt-darkblue" presentation:presentation-page-layout-name="AL2T1"><office:forms form:automatic-focus="false" form:apply-design-mode="false"/><draw:frame presentation:style-name="pr4" draw:text-style-name="P2" draw:layer="layout" svg:width="23.912cm" svg:height="3.508cm" svg:x="2.058cm" svg:y="0.784cm" presentation:class="title"><draw:text-box draw:corner-radius="0.024cm"><text:p text:style-name="P2">insert mainbranch</text:p></draw:text-box></draw:frame><draw:frame presentation:style-name="pr5" draw:text-style-name="P8" draw:layer="layout" svg:width="23.548cm" svg:height="13.231cm" svg:x="3.023cm" svg:y="6.178cm" presentation:class="outline" presentation:user-transformed="true"><draw:text-box draw:corner-radius="0.024cm"><text:list text:style-name="L4"><text:list-item><text:p text:style-name="P5">A branch d1</text:p></text:list-item></text:list><text:list text:style-name="L4"><text:list-item><text:list><text:list-item><text:p text:style-name="P6">sub d2</text:p></text:list-item></text:list></text:list-item></text:list><text:list text:style-name="L4"><text:list-item><text:list><text:list-item><text:list><text:list-item><text:p text:style-name="P7">sub d3</text:p></text:list-item></text:list></text:list-item></text:list></text:list-item></text:list><text:list text:style-name="L4"><text:list-item><text:p text:style-name="P5">B branch d1</text:p></text:list-item></text:list></draw:text-box></draw:frame><presentation:notes draw:style-name="dp2"><draw:page-thumbnail draw:style-name="gr1" draw:layer="layout" svg:width="13.706cm" svg:height="10.28cm" svg:x="3.647cm" svg:y="2.853cm" draw:page-number="2" presentation:class="page"/><draw:frame presentation:style-name="pr3" draw:text-style-name="P1" draw:layer="layout" svg:width="14.518cm" svg:height="11.411cm" svg:x="3.249cm" svg:y="14.13cm" presentation:class="notes" presentation:placeholder="true"><draw:text-box/></draw:frame></presentation:notes></draw:page><draw:page draw:name="Long-term goal" draw:style-name="dp1" draw:master-page-name="lyt-darkblue" presentation:presentation-page-layout-name="AL2T1"><draw:frame presentation:style-name="pr6" draw:text-style-name="P2" draw:layer="layout" svg:width="23.912cm" svg:height="3.508cm" svg:x="2.058cm" svg:y="0.784cm" presentation:class="title"><draw:text-box draw:corner-radius="0.032cm"><text:p text:style-name="P2">Long-term goal</text:p></draw:text-box></draw:frame><draw:frame presentation:style-name="pr5" draw:text-style-name="P8" draw:layer="layout" svg:width="23.548cm" svg:height="13.231cm" svg:x="3.023cm" svg:y="6.178cm" presentation:class="outline" presentation:user-transformed="true"><draw:text-box draw:corner-radius="0.032cm"><text:list text:style-name="L4"><text:list-item><text:p text:style-name="P5">State the desired goal</text:p></text:list-item></text:list><text:list text:style-name="L4"><text:list-item><text:p text:style-name="P5">Define the goal in more detail</text:p></text:list-item></text:list></draw:text-box></draw:frame><presentation:notes draw:style-name="dp2"><draw:page-thumbnail draw:style-name="gr1" draw:layer="layout" svg:width="13.706cm" svg:height="10.28cm" svg:x="3.647cm" svg:y="2.853cm" draw:page-number="3" presentation:class="page"/><draw:frame presentation:style-name="pr3" draw:text-style-name="P1" draw:layer="layout" svg:width="14.518cm" svg:height="11.411cm" svg:x="3.249cm" svg:y="14.13cm" presentation:class="notes" presentation:placeholder="true"><draw:text-box/></draw:frame></presentation:notes></draw:page><presentation:settings presentation:stay-on-top="true"/></office:presentation></office:body></office:document-content>
\ No newline at end of file
diff --git a/exports/template-orange-blue/meta.xml b/exports/template-orange-blue/meta.xml
new file mode 100644 (file)
index 0000000..1e0d669
--- /dev/null
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<office:document-meta xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:presentation="urn:oasis:names:tc:opendocument:xmlns:presentation:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:smil="urn:oasis:names:tc:opendocument:xmlns:smil-compatible:1.0" xmlns:anim="urn:oasis:names:tc:opendocument:xmlns:animation:1.0" office:version="1.0"><office:meta><meta:generator>OpenOffice.org/2.0-pre$Unix OpenOffice.org_project/680$Build-8825</meta:generator><meta:creation-date>2006-01-31T20:41:49</meta:creation-date><dc:date>2006-01-31T20:58:41</dc:date><dc:language>en-US</dc:language><meta:editing-cycles>2</meta:editing-cycles><meta:editing-duration>PT17M23S</meta:editing-duration><meta:user-defined meta:name="Info 1"/><meta:user-defined meta:name="Info 2"/><meta:user-defined meta:name="Info 3"/><meta:user-defined meta:name="Info 4"/><meta:document-statistic meta:object-count="22"/></office:meta></office:document-meta>
\ No newline at end of file
diff --git a/exports/template-orange-blue/mimetype b/exports/template-orange-blue/mimetype
new file mode 100644 (file)
index 0000000..9673a33
--- /dev/null
@@ -0,0 +1 @@
+application/vnd.oasis.opendocument.presentation
\ No newline at end of file
diff --git a/exports/template-orange-blue/page-template.xml b/exports/template-orange-blue/page-template.xml
new file mode 100644 (file)
index 0000000..cf0f5d2
--- /dev/null
@@ -0,0 +1,21 @@
+      <draw:page draw:name="Overview" draw:style-name="dp1" draw:master-page-name="lyt-darkblue" presentation:presentation-page-layout-name="AL2T1">
+        <office:forms form:automatic-focus="false" form:apply-design-mode="false"/>
+        <draw:frame presentation:style-name="pr4" draw:text-style-name="P2" draw:layer="layout" svg:width="23.912cm" svg:height="3.508cm" svg:x="2.058cm" svg:y="0.784cm" presentation:class="title">
+          <draw:text-box draw:corner-radius="0.024cm">
+            <text:p text:style-name="P2">
+                       <!-- INSERT PAGE HEADING -->
+            </text:p>
+          </draw:text-box>
+        </draw:frame>
+        <draw:frame presentation:style-name="pr5" draw:text-style-name="P8" draw:layer="layout" svg:width="23.548cm" svg:height="13.231cm" svg:x="3.023cm" svg:y="6.178cm" presentation:class="outline" presentation:user-transformed="true">
+          <draw:text-box draw:corner-radius="0.024cm">
+                 <!-- INSERT LIST -->
+          </draw:text-box>
+        </draw:frame>
+        <presentation:notes draw:style-name="dp2">
+          <draw:page-thumbnail draw:style-name="gr1" draw:layer="layout" svg:width="13.706cm" svg:height="10.28cm" svg:x="3.647cm" svg:y="2.853cm" draw:page-number="2" presentation:class="page"/>
+          <draw:frame presentation:style-name="pr3" draw:text-style-name="P1" draw:layer="layout" svg:width="14.518cm" svg:height="11.411cm" svg:x="3.249cm" svg:y="14.13cm" presentation:class="notes" presentation:placeholder="true">
+            <draw:text-box/>
+          </draw:frame>
+        </presentation:notes>
+      </draw:page>
diff --git a/exports/template-orange-blue/settings.xml b/exports/template-orange-blue/settings.xml
new file mode 100644 (file)
index 0000000..50c74f5
--- /dev/null
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<office:document-settings xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:presentation="urn:oasis:names:tc:opendocument:xmlns:presentation:1.0" xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:smil="urn:oasis:names:tc:opendocument:xmlns:smil-compatible:1.0" xmlns:anim="urn:oasis:names:tc:opendocument:xmlns:animation:1.0" office:version="1.0"><office:settings><config:config-item-set config:name="ooo:view-settings"><config:config-item config:name="VisibleAreaTop" config:type="int">-1538</config:config-item><config:config-item config:name="VisibleAreaLeft" config:type="int">-439</config:config-item><config:config-item config:name="VisibleAreaWidth" config:type="int">28862</config:config-item><config:config-item config:name="VisibleAreaHeight" config:type="int">24073</config:config-item><config:config-item-map-indexed config:name="Views"><config:config-item-map-entry><config:config-item config:name="ViewId" config:type="string">view1</config:config-item><config:config-item config:name="GridIsVisible" config:type="boolean">false</config:config-item><config:config-item config:name="GridIsFront" config:type="boolean">false</config:config-item><config:config-item config:name="IsSnapToGrid" config:type="boolean">true</config:config-item><config:config-item config:name="IsSnapToPageMargins" config:type="boolean">true</config:config-item><config:config-item config:name="IsSnapToSnapLines" config:type="boolean">false</config:config-item><config:config-item config:name="IsSnapToObjectFrame" config:type="boolean">false</config:config-item><config:config-item config:name="IsSnapToObjectPoints" config:type="boolean">false</config:config-item><config:config-item config:name="IsPlusHandlesAlwaysVisible" config:type="boolean">false</config:config-item><config:config-item config:name="IsFrameDragSingles" config:type="boolean">true</config:config-item><config:config-item config:name="EliminatePolyPointLimitAngle" config:type="int">1500</config:config-item><config:config-item config:name="IsEliminatePolyPoints" config:type="boolean">false</config:config-item><config:config-item config:name="VisibleLayers" config:type="base64Binary">//////////////////////////////////////////8=</config:config-item><config:config-item config:name="PrintableLayers" config:type="base64Binary">//////////////////////////////////////////8=</config:config-item><config:config-item config:name="LockedLayers" config:type="base64Binary"/><config:config-item config:name="NoAttribs" config:type="boolean">false</config:config-item><config:config-item config:name="NoColors" config:type="boolean">true</config:config-item><config:config-item config:name="RulerIsVisible" config:type="boolean">false</config:config-item><config:config-item config:name="PageKind" config:type="short">0</config:config-item><config:config-item config:name="SelectedPage" config:type="short">1</config:config-item><config:config-item config:name="IsLayerMode" config:type="boolean">false</config:config-item><config:config-item config:name="IsBigHandles" config:type="boolean">false</config:config-item><config:config-item config:name="IsDoubleClickTextEdit" config:type="boolean">true</config:config-item><config:config-item config:name="IsClickChangeRotation" config:type="boolean">false</config:config-item><config:config-item config:name="SlidesPerRow" config:type="short">0</config:config-item><config:config-item config:name="EditModeStandard" config:type="int">0</config:config-item><config:config-item config:name="EditModeNotes" config:type="int">0</config:config-item><config:config-item config:name="EditModeHandout" config:type="int">1</config:config-item><config:config-item config:name="VisibleAreaTop" config:type="int">-1538</config:config-item><config:config-item config:name="VisibleAreaLeft" config:type="int">-439</config:config-item><config:config-item config:name="VisibleAreaWidth" config:type="int">28863</config:config-item><config:config-item config:name="VisibleAreaHeight" config:type="int">24074</config:config-item><config:config-item config:name="GridCoarseWidth" config:type="int">1270</config:config-item><config:config-item config:name="GridCoarseHeight" config:type="int">1270</config:config-item><config:config-item config:name="GridFineWidth" config:type="int">635</config:config-item><config:config-item config:name="GridFineHeight" config:type="int">635</config:config-item><config:config-item config:name="GridSnapWidth" config:type="int">1000</config:config-item><config:config-item config:name="GridSnapHeight" config:type="int">1000</config:config-item><config:config-item config:name="GridSnapWidthXNumerator" config:type="int">635</config:config-item><config:config-item config:name="GridSnapWidthXDenominator" config:type="int">1</config:config-item><config:config-item config:name="GridSnapWidthYNumerator" config:type="int">635</config:config-item><config:config-item config:name="GridSnapWidthYDenominator" config:type="int">1</config:config-item><config:config-item config:name="IsAngleSnapEnabled" config:type="boolean">false</config:config-item><config:config-item config:name="SnapAngle" config:type="int">1500</config:config-item><config:config-item config:name="ZoomOnPage" config:type="boolean">true</config:config-item></config:config-item-map-entry></config:config-item-map-indexed></config:config-item-set><config:config-item-set config:name="ooo:configuration-settings"><config:config-item config:name="ApplyUserData" config:type="boolean">true</config:config-item><config:config-item config:name="BitmapTableURL" config:type="string">file:///home/uwe/.ooo-2.0-pre/user/config/standard.sob</config:config-item><config:config-item config:name="CharacterCompressionType" config:type="short">0</config:config-item><config:config-item config:name="ColorTableURL" config:type="string">file:///home/uwe/.ooo-2.0-pre/user/config/standard.soc</config:config-item><config:config-item config:name="DashTableURL" config:type="string">file:///home/uwe/.ooo-2.0-pre/user/config/standard.sod</config:config-item><config:config-item config:name="DefaultTabStop" config:type="int">2000</config:config-item><config:config-item-map-indexed config:name="ForbiddenCharacters"><config:config-item-map-entry><config:config-item config:name="Language" config:type="string">de</config:config-item><config:config-item config:name="Country" config:type="string">DE</config:config-item><config:config-item config:name="Variant" config:type="string"/><config:config-item config:name="BeginLine" config:type="string"/><config:config-item config:name="EndLine" config:type="string"/></config:config-item-map-entry><config:config-item-map-entry><config:config-item config:name="Language" config:type="string">en</config:config-item><config:config-item config:name="Country" config:type="string">US</config:config-item><config:config-item config:name="Variant" config:type="string"/><config:config-item config:name="BeginLine" config:type="string"/><config:config-item config:name="EndLine" config:type="string"/></config:config-item-map-entry></config:config-item-map-indexed><config:config-item config:name="GradientTableURL" config:type="string">file:///home/uwe/.ooo-2.0-pre/user/config/standard.sog</config:config-item><config:config-item config:name="HatchTableURL" config:type="string">file:///home/uwe/.ooo-2.0-pre/user/config/standard.soh</config:config-item><config:config-item config:name="IsKernAsianPunctuation" config:type="boolean">true</config:config-item><config:config-item config:name="IsPrintBooklet" config:type="boolean">false</config:config-item><config:config-item config:name="IsPrintBookletBack" config:type="boolean">true</config:config-item><config:config-item config:name="IsPrintBookletFront" config:type="boolean">true</config:config-item><config:config-item config:name="IsPrintDate" config:type="boolean">false</config:config-item><config:config-item config:name="IsPrintDrawing" config:type="boolean">true</config:config-item><config:config-item config:name="IsPrintFitPage" config:type="boolean">false</config:config-item><config:config-item config:name="IsPrintHandout" config:type="boolean">false</config:config-item><config:config-item config:name="IsPrintHiddenPages" config:type="boolean">true</config:config-item><config:config-item config:name="IsPrintNotes" config:type="boolean">false</config:config-item><config:config-item config:name="IsPrintOutline" config:type="boolean">false</config:config-item><config:config-item config:name="IsPrintPageName" config:type="boolean">false</config:config-item><config:config-item config:name="IsPrintTilePage" config:type="boolean">false</config:config-item><config:config-item config:name="IsPrintTime" config:type="boolean">false</config:config-item><config:config-item config:name="LineEndTableURL" config:type="string">file:///home/uwe/.ooo-2.0-pre/user/config/standard.soe</config:config-item><config:config-item config:name="LoadReadonly" config:type="boolean">false</config:config-item><config:config-item config:name="PageNumberFormat" config:type="int">4</config:config-item><config:config-item config:name="ParagraphSummation" config:type="boolean">false</config:config-item><config:config-item config:name="PrintQuality" config:type="int">0</config:config-item><config:config-item config:name="PrinterIndependentLayout" config:type="string">low-resolution</config:config-item><config:config-item config:name="PrinterName" config:type="string">Generic Printer</config:config-item><config:config-item config:name="PrinterSetup" config:type="base64Binary">YgH+/0dlbmVyaWMgUHJpbnRlcgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAU0dFTlBSVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAMAqAAAAAAA//8FAFZUAAAkbQAASm9iRGF0YSAxCnByaW50ZXI9R2VuZXJpYyBQcmludGVyCm9yaWVudGF0aW9uPVBvcnRyYWl0CmNvcGllcz0xCnNjYWxlPTEwMAptYXJnaW5kYWp1c3RtZW50PTAsMCwwLDAKY29sb3JkZXB0aD0yNApwc2xldmVsPTAKY29sb3JkZXZpY2U9MApQUERDb250ZXhEYXRhClBhZ2VTaXplOkxldHRlcgAA</config:config-item><config:config-item config:name="UpdateFromTemplate" config:type="boolean">false</config:config-item></config:config-item-set></office:settings></office:document-settings>
\ No newline at end of file
diff --git a/exports/template-orange-blue/styles.xml b/exports/template-orange-blue/styles.xml
new file mode 100644 (file)
index 0000000..761290c
--- /dev/null
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<office:document-styles xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:presentation="urn:oasis:names:tc:opendocument:xmlns:presentation:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:ooow="http://openoffice.org/2004/writer" xmlns:oooc="http://openoffice.org/2004/calc" xmlns:dom="http://www.w3.org/2001/xml-events" xmlns:smil="urn:oasis:names:tc:opendocument:xmlns:smil-compatible:1.0" xmlns:anim="urn:oasis:names:tc:opendocument:xmlns:animation:1.0" office:version="1.0"><office:styles><draw:gradient draw:name="Gradient_20_1" draw:display-name="Gradient 1" draw:style="linear" draw:start-color="#000000" draw:end-color="#ffffff" draw:start-intensity="100%" draw:end-intensity="100%" draw:angle="0" draw:border="0%"/><draw:gradient draw:name="Gradient_20_26" draw:display-name="Gradient 26" draw:style="linear" draw:start-color="#000000" draw:end-color="#ffffff" draw:start-intensity="0%" draw:end-intensity="0%" draw:angle="0" draw:border="0%"/><draw:fill-image draw:name="Bitmape_20_1" draw:display-name="Bitmape 1" xlink:href="Pictures/1000000000000040000000400142E835.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad"/><draw:marker draw:name="Linienende_20_1" draw:display-name="Linienende 1" svg:viewBox="0 0 20 30" svg:d="m10 0-10 30h20z"/><draw:marker draw:name="Linienende_20_2" draw:display-name="Linienende 2" svg:viewBox="0 0 200 400" svg:d="m100 0 100 400h-200z"/><draw:marker draw:name="Linienende_20_3" draw:display-name="Linienende 3" svg:viewBox="0 0 200 400" svg:d="m100 0 100 400h-200z"/><draw:stroke-dash draw:name="Dash_20_1" draw:display-name="Dash 1" draw:style="rect" draw:dots1="1" draw:dots1-length="0.02cm" draw:dots2="1" draw:dots2-length="0.02cm" draw:distance="0.02cm"/><style:default-style style:family="graphic"><style:paragraph-properties style:text-autospace="ideograph-alpha" style:punctuation-wrap="simple" style:line-break="strict" style:writing-mode="lr-tb" style:font-independent-line-spacing="false"><style:tab-stops/></style:paragraph-properties><style:text-properties fo:color="#000000" fo:font-family="Thorndale" style:font-family-generic="roman" style:font-pitch="variable" fo:font-size="24pt" fo:language="en" fo:country="US" style:font-family-asian="&apos;HG Mincho Light J&apos;, &apos;MS Mincho&apos;, &apos;HG Mincho J&apos;, &apos;HG Mincho L&apos;, &apos;HG Mincho&apos;, Mincho, &apos;MS PMincho&apos;, &apos;MS Gothic&apos;, &apos;HG Gothic J&apos;, &apos;HG Gothic B&apos;, &apos;HG Gothic&apos;, Gothic, &apos;MS PGothic&apos;, &apos;Andale Sans UI&apos;, &apos;Arial Unicode MS&apos;, &apos;Lucida Sans Unicode&apos;, Tahoma" style:font-pitch-asian="variable" style:font-size-asian="24pt" style:language-asian="none" style:country-asian="none" style:font-family-complex="&apos;Arial Unicode MS&apos;" style:font-pitch-complex="variable" style:font-size-complex="24pt" style:language-complex="none" style:country-complex="none"/></style:default-style><style:style style:name="standard" style:family="graphic"><style:graphic-properties draw:stroke="solid" draw:stroke-dash="Dash_20_1" svg:stroke-width="0cm" svg:stroke-color="#000000" draw:marker-start-width="0.3cm" draw:marker-start-center="false" draw:marker-end-width="0.3cm" draw:marker-end-center="false" draw:fill="solid" draw:fill-color="#00b8ff" draw:fill-gradient-name="Gradient_20_26" draw:fill-image-name="Bitmape_20_1" draw:shadow="hidden" draw:shadow-offset-x="0.3cm" draw:shadow-offset-y="0.3cm" draw:shadow-color="#808080"><text:list-style><text:list-level-style-bullet text:level="1" text:bullet-char="●"><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char="●"><style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char="●"><style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char="●"><style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char="●"><style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char="●"><style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char="●"><style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char="●"><style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char="●"><style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:bullet-char="●"><style:list-level-properties text:space-before="5.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style></style:graphic-properties><style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:line-height="100%" fo:text-align="start" fo:text-indent="0cm"/><style:text-properties fo:color="#ffffff" style:text-outline="false" style:text-line-through-style="none" fo:font-family="Albany" style:font-style-name="Standard" style:font-family-generic="swiss" style:font-pitch="variable" fo:font-size="24pt" fo:font-style="normal" fo:text-shadow="none" style:text-underline-style="none" fo:font-weight="normal" fo:hyphenate="true"/></style:style><style:style style:name="objectwitharrow" style:family="graphic" style:parent-style-name="standard"><style:graphic-properties draw:stroke="solid" svg:stroke-width="0.15cm" svg:stroke-color="#000000" draw:marker-start="Linienende_20_1" draw:marker-start-width="0.7cm" draw:marker-start-center="true" draw:marker-end-width="0.3cm"><text:list-style><text:list-level-style-bullet text:level="1" text:bullet-char="●"><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char="●"><style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char="●"><style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char="●"><style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char="●"><style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char="●"><style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char="●"><style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char="●"><style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char="●"><style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:bullet-char="●"><style:list-level-properties text:space-before="5.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style></style:graphic-properties></style:style><style:style style:name="objectwithshadow" style:family="graphic" style:parent-style-name="standard"><style:graphic-properties draw:shadow="visible" draw:shadow-offset-x="0.3cm" draw:shadow-offset-y="0.3cm" draw:shadow-color="#808080"><text:list-style><text:list-level-style-bullet text:level="1" text:bullet-char="●"><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char="●"><style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char="●"><style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char="●"><style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char="●"><style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char="●"><style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char="●"><style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char="●"><style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char="●"><style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:bullet-char="●"><style:list-level-properties text:space-before="5.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style></style:graphic-properties></style:style><style:style style:name="objectwithoutfill" style:family="graphic" style:parent-style-name="standard"><style:graphic-properties draw:fill="none"><text:list-style><text:list-level-style-bullet text:level="1" text:bullet-char="●"><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char="●"><style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char="●"><style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char="●"><style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char="●"><style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char="●"><style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char="●"><style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char="●"><style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char="●"><style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:bullet-char="●"><style:list-level-properties text:space-before="5.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style></style:graphic-properties></style:style><style:style style:name="text" style:family="graphic" style:parent-style-name="standard"><style:graphic-properties draw:stroke="none" draw:fill="none"><text:list-style><text:list-level-style-bullet text:level="1" text:bullet-char="●"><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char="●"><style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char="●"><style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char="●"><style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char="●"><style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char="●"><style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char="●"><style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char="●"><style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char="●"><style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:bullet-char="●"><style:list-level-properties text:space-before="5.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style></style:graphic-properties></style:style><style:style style:name="textbody" style:family="graphic" style:parent-style-name="standard"><style:graphic-properties draw:stroke="none" draw:fill="none"><text:list-style><text:list-level-style-bullet text:level="1" text:bullet-char="●"><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char="●"><style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char="●"><style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char="●"><style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char="●"><style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char="●"><style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char="●"><style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char="●"><style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char="●"><style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:bullet-char="●"><style:list-level-properties text:space-before="5.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style></style:graphic-properties><style:text-properties fo:font-size="16pt"/></style:style><style:style style:name="textbodyjustfied" style:family="graphic" style:parent-style-name="standard"><style:graphic-properties draw:stroke="none" draw:fill="none"><text:list-style><text:list-level-style-bullet text:level="1" text:bullet-char="●"><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char="●"><style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char="●"><style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char="●"><style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char="●"><style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char="●"><style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char="●"><style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char="●"><style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char="●"><style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:bullet-char="●"><style:list-level-properties text:space-before="5.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style></style:graphic-properties><style:paragraph-properties fo:text-align="justify"/></style:style><style:style style:name="textbodyindent" style:family="graphic" style:parent-style-name="standard"><style:graphic-properties draw:stroke="none" draw:fill="none"><text:list-style><text:list-level-style-bullet text:level="1" text:bullet-char="●"><style:list-level-properties text:space-before="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char="●"><style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char="●"><style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char="●"><style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char="●"><style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char="●"><style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char="●"><style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char="●"><style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char="●"><style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:bullet-char="●"><style:list-level-properties text:space-before="5.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style></style:graphic-properties><style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0.6cm"/></style:style><style:style style:name="title" style:family="graphic" style:parent-style-name="standard"><style:graphic-properties draw:stroke="none" draw:fill="none"><text:list-style><text:list-level-style-bullet text:level="1" text:bullet-char="●"><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char="●"><style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char="●"><style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char="●"><style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char="●"><style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char="●"><style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char="●"><style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char="●"><style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char="●"><style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:bullet-char="●"><style:list-level-properties text:space-before="5.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style></style:graphic-properties><style:text-properties fo:font-size="44pt"/></style:style><style:style style:name="title1" style:family="graphic" style:parent-style-name="standard"><style:graphic-properties draw:stroke="none" draw:fill="solid" draw:fill-color="#008080" draw:shadow="visible" draw:shadow-offset-x="0.2cm" draw:shadow-offset-y="0.2cm" draw:shadow-color="#808080"><text:list-style><text:list-level-style-bullet text:level="1" text:bullet-char="●"><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char="●"><style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char="●"><style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char="●"><style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char="●"><style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char="●"><style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char="●"><style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char="●"><style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char="●"><style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:bullet-char="●"><style:list-level-properties text:space-before="5.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style></style:graphic-properties><style:paragraph-properties fo:text-align="center"/><style:text-properties fo:font-size="24pt"/></style:style><style:style style:name="title2" style:family="graphic" style:parent-style-name="standard"><style:graphic-properties svg:stroke-width="0.05cm" draw:fill-color="#ffcc99" draw:shadow="visible" draw:shadow-offset-x="0.2cm" draw:shadow-offset-y="0.2cm" draw:shadow-color="#808080"><text:list-style><text:list-level-style-bullet text:level="1" text:bullet-char="●"><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char="●"><style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char="●"><style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char="●"><style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char="●"><style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char="●"><style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char="●"><style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char="●"><style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char="●"><style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:bullet-char="●"><style:list-level-properties text:space-before="5.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style></style:graphic-properties><style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-align="center" fo:text-indent="0cm"/><style:text-properties fo:font-size="36pt"/></style:style><style:style style:name="headline" style:family="graphic" style:parent-style-name="standard"><style:graphic-properties draw:stroke="none" draw:fill="none"><text:list-style><text:list-level-style-bullet text:level="1" text:bullet-char="●"><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char="●"><style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char="●"><style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char="●"><style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char="●"><style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char="●"><style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char="●"><style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char="●"><style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char="●"><style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:bullet-char="●"><style:list-level-properties text:space-before="5.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style></style:graphic-properties><style:text-properties fo:font-size="24pt"/></style:style><style:style style:name="headline1" style:family="graphic" style:parent-style-name="standard"><style:graphic-properties draw:stroke="none" draw:fill="none"><text:list-style><text:list-level-style-bullet text:level="1" text:bullet-char="●"><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char="●"><style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char="●"><style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char="●"><style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char="●"><style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char="●"><style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char="●"><style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char="●"><style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char="●"><style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:bullet-char="●"><style:list-level-properties text:space-before="5.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style></style:graphic-properties><style:text-properties fo:font-size="18pt" fo:font-weight="bold"/></style:style><style:style style:name="headline2" style:family="graphic" style:parent-style-name="standard"><style:graphic-properties draw:stroke="none" draw:fill="none"><text:list-style><text:list-level-style-bullet text:level="1" text:bullet-char="●"><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char="●"><style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char="●"><style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char="●"><style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char="●"><style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char="●"><style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char="●"><style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char="●"><style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char="●"><style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:bullet-char="●"><style:list-level-properties text:space-before="5.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style></style:graphic-properties><style:text-properties fo:font-size="14pt" fo:font-style="italic" fo:font-weight="bold"/></style:style><style:style style:name="measure" style:family="graphic" style:parent-style-name="standard"><style:graphic-properties draw:stroke="solid" draw:marker-start="Linienende_20_2" draw:marker-start-width="0.2cm" draw:marker-end="Linienende_20_3" draw:marker-end-width="0.2cm" draw:fill="none"><text:list-style><text:list-level-style-bullet text:level="1" text:bullet-char="●"><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char="●"><style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char="●"><style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char="●"><style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char="●"><style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char="●"><style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char="●"><style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char="●"><style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char="●"><style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="10" text:bullet-char="●"><style:list-level-properties text:space-before="5.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style></style:graphic-properties><style:text-properties fo:font-size="12pt"/></style:style><style:style style:name="lyt-darkblue-title" style:family="presentation"><style:graphic-properties draw:stroke="none" draw:fill="none" draw:textarea-vertical-align="middle"><text:list-style><text:list-level-style-bullet text:level="1" text:bullet-char=""><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char=""><style:list-level-properties text:space-before="1cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char=""><style:list-level-properties text:space-before="2cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char=""><style:list-level-properties text:space-before="3cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char=""><style:list-level-properties text:space-before="4cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char=""><style:list-level-properties text:space-before="5cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char=""><style:list-level-properties text:space-before="6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char=""><style:list-level-properties text:space-before="7cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char=""><style:list-level-properties text:space-before="8cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style></style:graphic-properties><style:paragraph-properties fo:text-align="start" text:enable-numbering="false"/><style:text-properties fo:color="#ff9966" style:text-outline="false" style:text-line-through-style="none" fo:font-family="Albany" style:font-style-name="Fett Kursiv" style:font-family-generic="swiss" style:font-pitch="variable" fo:font-size="40pt" fo:font-style="italic" fo:text-shadow="none" style:text-underline-style="none" fo:font-weight="bold"/></style:style><style:style style:name="lyt-darkblue-subtitle" style:family="presentation"><style:graphic-properties draw:stroke="none" draw:fill="none" draw:textarea-vertical-align="middle"><text:list-style><text:list-level-style-bullet text:level="1" text:bullet-char="●"><style:list-level-properties text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char="●"><style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char="●"><style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char="●"><style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char="●"><style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char="●"><style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char="●"><style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char="●"><style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char="●"><style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#000000" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style></style:graphic-properties><style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-align="center" text:enable-numbering="false" fo:text-indent="-0.6cm"/><style:text-properties fo:color="#cccccc" style:text-outline="false" style:text-line-through-style="none" fo:font-family="Thorndale" style:font-family-generic="roman" style:font-pitch="variable" fo:font-size="32pt" fo:font-style="normal" fo:text-shadow="none" style:text-underline-style="none" fo:font-weight="normal"/></style:style><style:style style:name="lyt-darkblue-background" style:family="presentation"><style:graphic-properties draw:stroke="none" draw:fill="solid" draw:fill-color="#003366" draw:fill-gradient-name="Gradient_20_1" draw:fill-image-width="1cm" draw:fill-image-height="1cm"/></style:style><style:style style:name="lyt-darkblue-backgroundobjects" style:family="presentation"><style:graphic-properties draw:shadow="hidden" draw:shadow-offset-x="0.3cm" draw:shadow-offset-y="0.3cm" draw:shadow-color="#808080"/><style:text-properties fo:font-family="Thorndale" style:font-family-generic="roman" style:font-pitch="variable"/></style:style><style:style style:name="lyt-darkblue-notes" style:family="presentation"><style:graphic-properties draw:stroke="none" draw:fill="none"/><style:paragraph-properties text:enable-numbering="false"/><style:text-properties fo:color="#000000" style:text-outline="false" style:text-line-through-style="none" fo:font-family="Thorndale" style:font-family-generic="roman" style:font-pitch="variable" fo:font-size="24pt" fo:font-style="normal" fo:text-shadow="none" style:text-underline-style="none" fo:font-weight="normal"/></style:style><style:style style:name="lyt-darkblue-outline1" style:family="presentation"><style:graphic-properties draw:stroke="none" draw:fill="none"><text:list-style><text:list-level-style-bullet text:level="1" text:bullet-char="●"><style:list-level-properties text:space-before="0.3cm" text:min-label-width="0.9cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="2" text:bullet-char="–"><style:list-level-properties text:space-before="1.6cm" text:min-label-width="0.8cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="75%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="3" text:bullet-char="●"><style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="4" text:bullet-char="–"><style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="75%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="5" text:bullet-char="●"><style:list-level-properties text:space-before="5.4cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="6" text:bullet-char="●"><style:list-level-properties text:space-before="6.6cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="7" text:bullet-char="●"><style:list-level-properties text:space-before="7.8cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="8" text:bullet-char="●"><style:list-level-properties text:space-before="9cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/></text:list-level-style-bullet><text:list-level-style-bullet text:level="9" text:bullet-char="●"><style:list-level-properties text:space-before="10.2cm" text:min-label-width="0.6cm"/><style:text-properties fo:font-family="StarSymbol" style:font-charset="x-symbol" fo:color="#e6e6e6" fo:font-size="45%"/></text:list-level-style-bullet></text:list-style></style:graphic-properties><style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-align="start" text:enable-numbering="true" fo:text-indent="-0.9cm"/><style:text-properties fo:color="#e6e6e6" style:text-outline="false" style:text-line-through-style="none" fo:font-family="Thorndale" style:font-family-generic="roman" style:font-pitch="variable" fo:font-size="32pt" fo:font-style="normal" fo:text-shadow="none" style:text-underline-style="none" fo:font-weight="normal"/></style:style><style:style style:name="lyt-darkblue-outline2" style:family="presentation" style:parent-style-name="lyt-darkblue-outline1"><style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="-0.8cm"/><style:text-properties fo:font-size="28pt"/></style:style><style:style style:name="lyt-darkblue-outline3" style:family="presentation" style:parent-style-name="lyt-darkblue-outline2"><style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="-0.6cm"/><style:text-properties fo:font-size="24pt"/></style:style><style:style style:name="lyt-darkblue-outline4" style:family="presentation" style:parent-style-name="lyt-darkblue-outline3"><style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="-0.6cm"/><style:text-properties fo:font-size="20pt"/></style:style><style:style style:name="lyt-darkblue-outline5" style:family="presentation" style:parent-style-name="lyt-darkblue-outline4"><style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="-0.6cm"/><style:text-properties fo:font-size="20pt"/></style:style><style:style style:name="lyt-darkblue-outline6" style:family="presentation" style:parent-style-name="lyt-darkblue-outline5"><style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="-0.6cm"/><style:text-properties fo:font-size="20pt"/></style:style><style:style style:name="lyt-darkblue-outline7" style:family="presentation" style:parent-style-name="lyt-darkblue-outline6"><style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="-0.6cm"/><style:text-properties fo:font-size="20pt"/></style:style><style:style style:name="lyt-darkblue-outline8" style:family="presentation" style:parent-style-name="lyt-darkblue-outline7"><style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="-0.6cm"/><style:text-properties fo:font-size="20pt"/></style:style><style:style style:name="lyt-darkblue-outline9" style:family="presentation" style:parent-style-name="lyt-darkblue-outline8"><style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="-0.6cm"/><style:text-properties fo:font-size="20pt"/></style:style><style:presentation-page-layout style:name="AL0T25"><presentation:placeholder presentation:object="handout" svg:x="2.058cm" svg:y="1.743cm" svg:width="10.556cm" svg:height="0.703cm"/><presentation:placeholder presentation:object="handout" svg:x="15.414cm" svg:y="1.743cm" svg:width="10.556cm" svg:height="0.703cm"/><presentation:placeholder presentation:object="handout" svg:x="2.058cm" svg:y="4.546cm" svg:width="10.556cm" svg:height="0.703cm"/><presentation:placeholder presentation:object="handout" svg:x="15.414cm" svg:y="4.546cm" svg:width="10.556cm" svg:height="0.703cm"/></style:presentation-page-layout><style:presentation-page-layout style:name="AL1T0"><presentation:placeholder presentation:object="title" svg:x="2.058cm" svg:y="1.743cm" svg:width="23.912cm" svg:height="3.507cm"/><presentation:placeholder presentation:object="subtitle" svg:x="2.058cm" svg:y="5.838cm" svg:width="23.912cm" svg:height="13.23cm"/></style:presentation-page-layout><style:presentation-page-layout style:name="AL2T1"><presentation:placeholder presentation:object="title" svg:x="2.058cm" svg:y="1.743cm" svg:width="23.912cm" svg:height="3.507cm"/><presentation:placeholder presentation:object="outline" svg:x="2.058cm" svg:y="5.838cm" svg:width="23.912cm" svg:height="13.23cm"/></style:presentation-page-layout></office:styles><office:automatic-styles><style:page-layout style:name="PM0"><style:page-layout-properties fo:margin-top="0cm" fo:margin-bottom="0cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:page-width="29.7cm" fo:page-height="21cm" style:print-orientation="landscape"/></style:page-layout><style:page-layout style:name="PM1"><style:page-layout-properties fo:margin-top="0cm" fo:margin-bottom="0cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:page-width="28cm" fo:page-height="21cm" style:print-orientation="landscape"/></style:page-layout><style:page-layout style:name="PM2"><style:page-layout-properties fo:margin-top="0cm" fo:margin-bottom="0cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:page-width="21cm" fo:page-height="29.7cm" style:print-orientation="portrait"/></style:page-layout><style:style style:name="dp1" style:family="drawing-page"><style:drawing-page-properties draw:background-size="border" draw:fill="solid" draw:fill-color="#003366" draw:fill-gradient-name="Gradient_20_1" draw:fill-image-width="1cm" draw:fill-image-height="1cm"/></style:style><style:style style:name="dp2" style:family="drawing-page"><style:drawing-page-properties presentation:display-header="true" presentation:display-footer="true" presentation:display-page-number="false" presentation:display-date-time="true"/></style:style><style:style style:name="gr1" style:family="graphic" style:parent-style-name="standard"><style:graphic-properties draw:stroke="none" draw:fill-color="#ff9966" draw:fill-image-width="1cm" draw:fill-image-height="1cm" draw:textarea-horizontal-align="center" draw:textarea-vertical-align="middle"/></style:style><style:style style:name="P1" style:family="paragraph"><style:paragraph-properties fo:text-align="center"/></style:style></office:automatic-styles><office:master-styles><draw:layer-set><draw:layer draw:name="layout"/><draw:layer draw:name="background"/><draw:layer draw:name="backgroundobjects"/><draw:layer draw:name="controls"/><draw:layer draw:name="measurelines"/></draw:layer-set><style:handout-master presentation:presentation-page-layout-name="AL0T25" style:page-layout-name="PM0" draw:style-name="dp2"><draw:page-thumbnail draw:layer="backgroundobjects" svg:width="8.819cm" svg:height="6.614cm" svg:x="3.757cm" svg:y="2.94cm" draw:page-number="1"/><draw:page-thumbnail draw:layer="backgroundobjects" svg:width="8.819cm" svg:height="6.614cm" svg:x="17.122cm" svg:y="2.94cm" draw:page-number="2"/><draw:page-thumbnail draw:layer="backgroundobjects" svg:width="8.819cm" svg:height="6.614cm" svg:x="3.757cm" svg:y="11.445cm" draw:page-number="3"/><draw:page-thumbnail draw:layer="backgroundobjects" svg:width="8.819cm" svg:height="6.614cm" svg:x="17.122cm" svg:y="11.445cm"/></style:handout-master><style:master-page style:name="lyt-darkblue" style:page-layout-name="PM1" draw:style-name="dp1"><draw:frame presentation:style-name="lyt-darkblue-title" draw:layer="backgroundobjects" svg:width="23.912cm" svg:height="3.507cm" svg:x="2.058cm" svg:y="0.784cm" presentation:class="title" presentation:placeholder="true"><draw:text-box/></draw:frame><draw:frame presentation:style-name="lyt-darkblue-outline1" draw:layer="backgroundobjects" svg:width="24.369cm" svg:height="13.715cm" svg:x="2.058cm" svg:y="5.453cm" presentation:class="outline" presentation:placeholder="true"><draw:text-box draw:corner-radius="0.001cm"/></draw:frame><draw:rect draw:style-name="gr1" draw:text-style-name="P1" draw:layer="backgroundobjects" svg:width="25.987cm" svg:height="0.269cm" svg:x="2.012cm" svg:y="19.658cm"><text:p/></draw:rect><draw:rect draw:style-name="gr1" draw:text-style-name="P1" draw:layer="backgroundobjects" svg:width="22.479cm" svg:height="0.269cm" svg:x="5.52cm" svg:y="20.248cm"><text:p/></draw:rect><presentation:notes style:page-layout-name="PM2"><draw:page-thumbnail presentation:style-name="lyt-darkblue-title" draw:layer="backgroundobjects" svg:width="13.706cm" svg:height="10.28cm" svg:x="3.647cm" svg:y="2.853cm" presentation:class="page"/><draw:frame presentation:style-name="lyt-darkblue-notes" draw:layer="backgroundobjects" svg:width="14.518cm" svg:height="11.41cm" svg:x="3.249cm" svg:y="14.13cm" presentation:class="notes" presentation:placeholder="true"><draw:text-box/></draw:frame></presentation:notes></style:master-page></office:master-styles></office:document-styles>
\ No newline at end of file
diff --git a/exportxhtmldialog.ui b/exportxhtmldialog.ui
new file mode 100644 (file)
index 0000000..90aa6e9
--- /dev/null
@@ -0,0 +1,489 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>ExportXHTMLDialog</class>
+ <widget class="QDialog" name="ExportXHTMLDialog">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>588</width>
+    <height>523</height>
+   </rect>
+  </property>
+  <property name="minimumSize">
+   <size>
+    <width>0</width>
+    <height>130</height>
+   </size>
+  </property>
+  <property name="windowTitle">
+   <string>Export XHTML</string>
+  </property>
+  <layout class="QVBoxLayout">
+   <item>
+    <layout class="QHBoxLayout">
+     <property name="spacing">
+      <number>6</number>
+     </property>
+     <property name="margin">
+      <number>0</number>
+     </property>
+     <item>
+      <widget class="QLabel" name="textLabel1">
+       <property name="sizePolicy">
+        <sizepolicy hsizetype="Minimum" vsizetype="Preferred">
+         <horstretch>0</horstretch>
+         <verstretch>0</verstretch>
+        </sizepolicy>
+       </property>
+       <property name="text">
+        <string>Export to directory:</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QLineEdit" name="lineEditDir">
+       <property name="sizePolicy">
+        <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
+         <horstretch>0</horstretch>
+         <verstretch>0</verstretch>
+        </sizepolicy>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="browseExportDirButton">
+       <property name="sizePolicy">
+        <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+         <horstretch>0</horstretch>
+         <verstretch>0</verstretch>
+        </sizepolicy>
+       </property>
+       <property name="text">
+        <string>Browse</string>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
+   <item>
+    <widget class="QGroupBox" name="buttonGroup2">
+     <property name="sizePolicy">
+      <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
+       <horstretch>0</horstretch>
+       <verstretch>0</verstretch>
+      </sizepolicy>
+     </property>
+     <property name="minimumSize">
+      <size>
+       <width>0</width>
+       <height>160</height>
+      </size>
+     </property>
+     <property name="title">
+      <string>Options</string>
+     </property>
+     <property name="orientation">
+      <enum>Qt::Vertical</enum>
+     </property>
+     <widget class="QWidget" name="layoutWidget">
+      <property name="geometry">
+       <rect>
+        <x>20</x>
+        <y>30</y>
+        <width>511</width>
+        <height>104</height>
+       </rect>
+      </property>
+      <layout class="QVBoxLayout">
+       <property name="spacing">
+        <number>6</number>
+       </property>
+       <property name="margin">
+        <number>0</number>
+       </property>
+       <item>
+        <widget class="QCheckBox" name="imageButton">
+         <property name="text">
+          <string>Include image</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QCheckBox" name="textColorButton">
+         <property name="text">
+          <string>Colored headings in text</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QCheckBox" name="saveSettingsInMapButton">
+         <property name="text">
+          <string>Save settings in map</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QCheckBox" name="warningsButton">
+         <property name="text">
+          <string>show warnings of xslt processor</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QCheckBox" name="outputButton">
+         <property name="sizePolicy">
+          <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
+           <horstretch>0</horstretch>
+           <verstretch>0</verstretch>
+          </sizepolicy>
+         </property>
+         <property name="text">
+          <string>show output of external scripts</string>
+         </property>
+         <attribute name="buttonGroup">
+          <string/>
+         </attribute>
+        </widget>
+       </item>
+      </layout>
+     </widget>
+    </widget>
+   </item>
+   <item>
+    <widget class="QGroupBox" name="groupBox2">
+     <property name="title">
+      <string>Stylesheets</string>
+     </property>
+     <property name="orientation">
+      <enum>Qt::Vertical</enum>
+     </property>
+     <layout class="QGridLayout">
+      <property name="margin">
+       <number>11</number>
+      </property>
+      <property name="spacing">
+       <number>6</number>
+      </property>
+      <item row="1" column="0">
+       <layout class="QHBoxLayout">
+        <property name="spacing">
+         <number>6</number>
+        </property>
+        <property name="margin">
+         <number>0</number>
+        </property>
+        <item>
+         <widget class="QLabel" name="textLabel2">
+          <property name="sizePolicy">
+           <sizepolicy hsizetype="Fixed" vsizetype="Preferred">
+            <horstretch>0</horstretch>
+            <verstretch>0</verstretch>
+           </sizepolicy>
+          </property>
+          <property name="minimumSize">
+           <size>
+            <width>125</width>
+            <height>0</height>
+           </size>
+          </property>
+          <property name="text">
+           <string>XSL:</string>
+          </property>
+          <property name="alignment">
+           <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+          </property>
+         </widget>
+        </item>
+        <item>
+         <widget class="QLineEdit" name="lineEditXSL"/>
+        </item>
+        <item>
+         <widget class="QPushButton" name="browseXSLButton">
+          <property name="sizePolicy">
+           <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+            <horstretch>0</horstretch>
+            <verstretch>0</verstretch>
+           </sizepolicy>
+          </property>
+          <property name="text">
+           <string>Browse</string>
+          </property>
+         </widget>
+        </item>
+       </layout>
+      </item>
+      <item row="0" column="0">
+       <layout class="QHBoxLayout">
+        <property name="spacing">
+         <number>6</number>
+        </property>
+        <property name="margin">
+         <number>0</number>
+        </property>
+        <item>
+         <widget class="QLabel" name="textLabel1_2">
+          <property name="sizePolicy">
+           <sizepolicy hsizetype="Fixed" vsizetype="Preferred">
+            <horstretch>0</horstretch>
+            <verstretch>0</verstretch>
+           </sizepolicy>
+          </property>
+          <property name="minimumSize">
+           <size>
+            <width>125</width>
+            <height>0</height>
+           </size>
+          </property>
+          <property name="text">
+           <string>CSS:</string>
+          </property>
+          <property name="alignment">
+           <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+          </property>
+         </widget>
+        </item>
+        <item>
+         <widget class="QLineEdit" name="lineEditCSS"/>
+        </item>
+        <item>
+         <widget class="QPushButton" name="browseCSSButton">
+          <property name="sizePolicy">
+           <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+            <horstretch>0</horstretch>
+            <verstretch>0</verstretch>
+           </sizepolicy>
+          </property>
+          <property name="text">
+           <string>Browse</string>
+          </property>
+         </widget>
+        </item>
+       </layout>
+      </item>
+     </layout>
+    </widget>
+   </item>
+   <item>
+    <widget class="QGroupBox" name="groupBox1">
+     <property name="title">
+      <string>Scripts</string>
+     </property>
+     <property name="orientation">
+      <enum>Qt::Vertical</enum>
+     </property>
+     <layout class="QGridLayout">
+      <property name="margin">
+       <number>11</number>
+      </property>
+      <property name="spacing">
+       <number>6</number>
+      </property>
+      <item row="0" column="0">
+       <layout class="QHBoxLayout">
+        <property name="spacing">
+         <number>6</number>
+        </property>
+        <property name="margin">
+         <number>0</number>
+        </property>
+        <item>
+         <widget class="QLabel" name="textLabel1_3">
+          <property name="sizePolicy">
+           <sizepolicy hsizetype="Fixed" vsizetype="Preferred">
+            <horstretch>0</horstretch>
+            <verstretch>0</verstretch>
+           </sizepolicy>
+          </property>
+          <property name="minimumSize">
+           <size>
+            <width>125</width>
+            <height>0</height>
+           </size>
+          </property>
+          <property name="text">
+           <string>Before export:</string>
+          </property>
+          <property name="alignment">
+           <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+          </property>
+         </widget>
+        </item>
+        <item>
+         <widget class="QLineEdit" name="lineEditPreScript"/>
+        </item>
+        <item>
+         <widget class="QPushButton" name="browsePreExportButton">
+          <property name="sizePolicy">
+           <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+            <horstretch>0</horstretch>
+            <verstretch>0</verstretch>
+           </sizepolicy>
+          </property>
+          <property name="text">
+           <string>Browse</string>
+          </property>
+         </widget>
+        </item>
+       </layout>
+      </item>
+      <item row="1" column="0">
+       <layout class="QHBoxLayout">
+        <property name="spacing">
+         <number>6</number>
+        </property>
+        <property name="margin">
+         <number>0</number>
+        </property>
+        <item>
+         <widget class="QLabel" name="textLabel2_2">
+          <property name="sizePolicy">
+           <sizepolicy hsizetype="Fixed" vsizetype="Preferred">
+            <horstretch>0</horstretch>
+            <verstretch>0</verstretch>
+           </sizepolicy>
+          </property>
+          <property name="minimumSize">
+           <size>
+            <width>125</width>
+            <height>0</height>
+           </size>
+          </property>
+          <property name="frameShape">
+           <enum>QFrame::NoFrame</enum>
+          </property>
+          <property name="text">
+           <string>After Export:</string>
+          </property>
+          <property name="alignment">
+           <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+          </property>
+         </widget>
+        </item>
+        <item>
+         <widget class="QLineEdit" name="lineEditPostScript"/>
+        </item>
+        <item>
+         <widget class="QPushButton" name="browsePostExportButton">
+          <property name="sizePolicy">
+           <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+            <horstretch>0</horstretch>
+            <verstretch>0</verstretch>
+           </sizepolicy>
+          </property>
+          <property name="text">
+           <string>Browse</string>
+          </property>
+         </widget>
+        </item>
+       </layout>
+      </item>
+     </layout>
+    </widget>
+   </item>
+   <item>
+    <spacer>
+     <property name="orientation">
+      <enum>Qt::Vertical</enum>
+     </property>
+     <property name="sizeType">
+      <enum>QSizePolicy::MinimumExpanding</enum>
+     </property>
+     <property name="sizeHint" stdset="0">
+      <size>
+       <width>20</width>
+       <height>41</height>
+      </size>
+     </property>
+    </spacer>
+   </item>
+   <item>
+    <layout class="QHBoxLayout">
+     <item>
+      <spacer>
+       <property name="orientation">
+        <enum>Qt::Horizontal</enum>
+       </property>
+       <property name="sizeType">
+        <enum>QSizePolicy::Expanding</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>61</width>
+         <height>21</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+     <item>
+      <widget class="QPushButton" name="cancelButton">
+       <property name="text">
+        <string>Cancel</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="exportButton">
+       <property name="text">
+        <string>Export</string>
+       </property>
+       <property name="default">
+        <bool>true</bool>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
+  </layout>
+ </widget>
+ <layoutdefault spacing="6" margin="11"/>
+ <customwidgets>
+  <customwidget>
+   <class>QGroupBox</class>
+   <container>1</container>
+  </customwidget>
+  <customwidget>
+   <class>QGroupBox</class>
+   <container>1</container>
+  </customwidget>
+ </customwidgets>
+ <includes>
+  <include location="local">xsltproc.h</include>
+  <include location="local">process.h</include>
+ </includes>
+ <resources/>
+ <connections>
+  <connection>
+   <sender>cancelButton</sender>
+   <signal>clicked()</signal>
+   <receiver>ExportXHTMLDialog</receiver>
+   <slot>reject()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>459</x>
+     <y>443</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>256</x>
+     <y>233</y>
+    </hint>
+   </hints>
+  </connection>
+  <connection>
+   <sender>exportButton</sender>
+   <signal>clicked()</signal>
+   <receiver>ExportXHTMLDialog</receiver>
+   <slot>accept()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>368</x>
+     <y>443</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>256</x>
+     <y>233</y>
+    </hint>
+   </hints>
+  </connection>
+ </connections>
+</ui>
diff --git a/extrainfodialog.cpp b/extrainfodialog.cpp
new file mode 100644 (file)
index 0000000..09f819a
--- /dev/null
@@ -0,0 +1,62 @@
+#include "extrainfodialog.h"
+
+
+ExtraInfoDialog::ExtraInfoDialog(QWidget *parent):QDialog (parent)
+{
+    ui.setupUi (this);
+}
+
+
+void ExtraInfoDialog::setMapName(const QString &s)
+{
+    ui.mapNameLE->setText (s);
+}
+
+void ExtraInfoDialog::setMapTitle(const QString &s)
+{
+    ui.mapTitleLE->setText (s);
+}
+
+QString ExtraInfoDialog::getMapTitle()
+{
+    return ui.mapTitleLE->text();
+}
+
+void ExtraInfoDialog::setComment (const QString &s)
+{
+    ui.commentTE->setText (s);
+}
+
+QString ExtraInfoDialog::getComment()
+{
+    return ui.commentTE->toHtml();
+}   
+
+
+void ExtraInfoDialog::setAuthor(const QString &s)
+{
+    ui.authorLE->setText (s);
+}
+
+QString ExtraInfoDialog::getAuthor()
+{
+    return ui.authorLE->text();
+}
+
+void ExtraInfoDialog::setStats(const QString &s)
+{
+    ui.statsTE->setText (s);
+}
+
+void ExtraInfoDialog::setReadOnly(bool b)
+{
+    readOnly = b;
+    ui.authorLE->setReadOnly( readOnly );
+    ui.commentTE->setReadOnly( readOnly );
+    ui.mapTitleLE->setReadOnly( readOnly );
+}
+
+bool ExtraInfoDialog::isReadOnly()
+{
+    return readOnly;
+}
diff --git a/extrainfodialog.h b/extrainfodialog.h
new file mode 100644 (file)
index 0000000..8cc6c98
--- /dev/null
@@ -0,0 +1,35 @@
+#ifndef EXTRAINFODIALOG_H
+#define EXTRAINFODIALOG_H
+
+#include "ui_extrainfodialog.h"
+
+/* \brief Dialog to display and edit map specific information like author, comment, etc. 
+*/
+
+class ExtraInfoDialog : public QDialog
+{
+    Q_OBJECT
+
+public:
+    ExtraInfoDialog(QWidget* parent = 0);
+
+    virtual QString getComment();
+    virtual QString getAuthor();
+    virtual QString getMapTitle();
+    virtual void setStats( const QString & s );
+    void setReadOnly( bool b );
+    bool isReadOnly();
+
+public slots:
+    virtual void setMapName( const QString & s );
+    virtual void setMapTitle( const QString & s );
+    virtual void setComment( const QString & s );
+    virtual void setAuthor( const QString & s );
+
+private:
+    Ui::ExtraInfoDialog ui;
+    bool readOnly;
+
+};
+
+#endif // EXTRAINFODIALOG_H
diff --git a/extrainfodialog.ui b/extrainfodialog.ui
new file mode 100644 (file)
index 0000000..ed756d2
--- /dev/null
@@ -0,0 +1,196 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <author>Uwe Drechsel</author>
+ <class>ExtraInfoDialog</class>
+ <widget class="QDialog" name="ExtraInfoDialog">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>551</width>
+    <height>651</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>VYM - Info</string>
+  </property>
+  <layout class="QVBoxLayout">
+   <property name="spacing">
+    <number>6</number>
+   </property>
+   <property name="leftMargin">
+    <number>11</number>
+   </property>
+   <property name="topMargin">
+    <number>11</number>
+   </property>
+   <property name="rightMargin">
+    <number>11</number>
+   </property>
+   <property name="bottomMargin">
+    <number>11</number>
+   </property>
+   <item>
+    <widget class="QLabel" name="textLabel1_2">
+     <property name="text">
+      <string>Map:</string>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <widget class="QLineEdit" name="mapNameLE">
+     <property name="readOnly">
+      <bool>true</bool>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <widget class="QLabel" name="label">
+     <property name="accessibleDescription">
+      <string extracomment="Label for map title"/>
+     </property>
+     <property name="text">
+      <string>Title:</string>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <widget class="QLineEdit" name="mapTitleLE"/>
+   </item>
+   <item>
+    <widget class="QLabel" name="textLabel1">
+     <property name="text">
+      <string>Author:</string>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <widget class="QLineEdit" name="authorLE"/>
+   </item>
+   <item>
+    <spacer name="verticalSpacer">
+     <property name="orientation">
+      <enum>Qt::Vertical</enum>
+     </property>
+     <property name="sizeHint" stdset="0">
+      <size>
+       <width>20</width>
+       <height>40</height>
+      </size>
+     </property>
+    </spacer>
+   </item>
+   <item>
+    <widget class="QLabel" name="textLabel2">
+     <property name="text">
+      <string>Comment:</string>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <widget class="QTextEdit" name="commentTE"/>
+   </item>
+   <item>
+    <widget class="QLabel" name="textLabel2_2">
+     <property name="text">
+      <string>Statistics:</string>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <widget class="QTextEdit" name="statsTE"/>
+   </item>
+   <item>
+    <layout class="QHBoxLayout">
+     <property name="spacing">
+      <number>6</number>
+     </property>
+     <property name="leftMargin">
+      <number>0</number>
+     </property>
+     <property name="topMargin">
+      <number>0</number>
+     </property>
+     <property name="rightMargin">
+      <number>0</number>
+     </property>
+     <property name="bottomMargin">
+      <number>0</number>
+     </property>
+     <item>
+      <spacer>
+       <property name="orientation">
+        <enum>Qt::Horizontal</enum>
+       </property>
+       <property name="sizeType">
+        <enum>QSizePolicy::Expanding</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>160</width>
+         <height>21</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+     <item>
+      <widget class="QPushButton" name="cancelButton">
+       <property name="text">
+        <string>Cancel</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="closeButton">
+       <property name="text">
+        <string>Close</string>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
+  </layout>
+ </widget>
+ <layoutdefault spacing="6" margin="11"/>
+ <tabstops>
+  <tabstop>authorLE</tabstop>
+  <tabstop>closeButton</tabstop>
+  <tabstop>cancelButton</tabstop>
+  <tabstop>mapNameLE</tabstop>
+ </tabstops>
+ <resources/>
+ <connections>
+  <connection>
+   <sender>closeButton</sender>
+   <signal>clicked(bool)</signal>
+   <receiver>ExtraInfoDialog</receiver>
+   <slot>accept()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>321</x>
+     <y>377</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>187</x>
+     <y>201</y>
+    </hint>
+   </hints>
+  </connection>
+  <connection>
+   <sender>cancelButton</sender>
+   <signal>clicked()</signal>
+   <receiver>ExtraInfoDialog</receiver>
+   <slot>reject()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>230</x>
+     <y>377</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>187</x>
+     <y>201</y>
+    </hint>
+   </hints>
+  </connection>
+ </connections>
+</ui>
diff --git a/file.cpp b/file.cpp
new file mode 100644 (file)
index 0000000..37402d5
--- /dev/null
+++ b/file.cpp
@@ -0,0 +1,558 @@
+#include <QDebug>
+#include <QDir>
+#include <QMessageBox>
+#include <QPixmap>
+#include <QLabel>
+#include <QTextStream>
+#include <iostream>
+#include <cstdlib>
+
+#include "file.h"
+#include "vymprocess.h"
+
+#if defined(Q_OS_WIN32)
+    #include "mkdtemp.h"
+    #include <windows.h>
+#endif
+
+#if defined(Q_OS_MACX)
+    #include "unistd.h"
+#endif
+
+using namespace File;
+
+extern QString zipToolPath;
+
+QString convertToRel (const QString &src, const QString &dst)
+{
+    // Creates a relative path pointing from src to dst
+
+    QString s=src;
+    QString d=dst;
+    int i;
+
+    if (s==d)
+    {
+        // Special case, we just need the name of the file,
+        // not the complete path
+        i=d.lastIndexOf ("/");
+        d=d.right (d.length()-i-1);
+    } else
+    {
+        // remove identical left parts
+        while (s.section("/",0,0) == d.section("/",0,0) )
+        {
+            i=s.indexOf ("/");
+            s=s.right (s.length()-i-1);
+            d=d.right (d.length()-i-1);
+        }
+
+        // Now take care of paths where we have to go back first
+        int srcsep=s.count("/");
+        while (srcsep > 0 )
+        {
+            d="../"+d;
+            srcsep--;
+        }
+    }
+    return d;
+}
+
+QString convertToAbs (const QString &src, const QString &dst)
+{
+    // Creates a relative path pointing from src to dst
+    QDir dd(src);
+    return dd.absoluteFilePath(dst);
+}
+
+
+QString basename(const QString &path)
+{
+    return path.section ('/', -1);
+}
+
+QString dirname(const QString &path)
+{
+    return path.section('/', 0, -2);
+}
+
+extern QString vymName;
+bool reallyWriteDirectory(const QString &dir)
+{
+    QStringList eList = QDir(dir).entryList();
+    if (eList.first() ==".")  eList.pop_front();    // remove "."
+    if (eList.first() =="..") eList.pop_front();    // remove "."
+    if (!eList.isEmpty())
+    {
+        QMessageBox mb( vymName,
+                        QObject::tr("The directory %1 is not empty.\nDo you risk to overwrite its contents?","write directory").arg(dir),
+                        QMessageBox::Warning,
+                        QMessageBox::Yes ,
+                        QMessageBox::Cancel | QMessageBox::Default,
+                        QMessageBox::NoButton );
+
+        mb.setButtonText( QMessageBox::Yes, QObject::tr("Overwrite") );
+        mb.setButtonText( QMessageBox::No, QObject::tr("Cancel"));
+        switch( mb.exec() )
+        {
+        case QMessageBox::Yes:
+            // save
+            return true;
+        case QMessageBox::Cancel:
+            // do nothing
+            return false;
+        }
+    }
+    return true;
+}
+
+QString makeTmpDir (bool &ok, QString prefix)   //FIXME-3 use QTemporaryDir
+{
+    bool b;
+    QString path=makeUniqueDir (b,QDir::tempPath()+"/"+prefix+"-XXXXXX");
+    ok=b;
+    return path;
+}
+
+bool isInTmpDir(QString fn)
+{
+    QString temp=QDir::tempPath();
+    int l=temp.length();
+    return fn.left(l)==temp;
+}
+
+QString makeUniqueDir (bool &ok,QString s)
+{
+    ok=true;
+
+    QString r;
+
+#if defined(Q_OS_WIN32)
+    r=mkdtemp (s);
+#else
+    // On Linux and friends use cstdlib
+    
+    // Convert QString to string 
+    ok=true;
+    char *p;
+    int bytes=s.length();
+    p=(char*) malloc (bytes+1);
+    int i;
+    for (i=0;i<bytes;i++)
+       p[i]=s.at(i).unicode();
+    p[bytes]=0;        
+
+    r=mkdtemp (p);
+    free (p);
+#endif
+
+    if (r.isEmpty()) ok=false;
+    return r;
+}
+
+void removeDir(QDir d)
+{
+    // This check should_ not be necessary, but proved to be useful ;-)
+    if (!isInTmpDir(d.path()))
+    {
+        qWarning ()<<"file.cpp::removeDir should remove " + d.path() + " - aborted.";
+        return;
+    }
+
+    // Traverse directories
+    d.setFilter( QDir::Dirs| QDir::Hidden | QDir::NoSymLinks );
+    QFileInfoList list = d.entryInfoList();
+    QFileInfo fi;
+
+    for (int i = 0; i < list.size(); ++i)
+    {
+        fi=list.at(i);
+        if (fi.fileName() != "." && fi.fileName() != ".." )
+        {
+            if ( !d.cd(fi.fileName()) )
+                qWarning ()<<"removeDir() cannot find the directory "+fi.fileName();
+            else
+            {
+                // Recursively remove subdirs
+                removeDir (d);
+                d.cdUp();
+            }
+        }
+    }
+
+    // Traverse files
+    d.setFilter( QDir::Files| QDir::Hidden | QDir::NoSymLinks );
+    list = d.entryInfoList();
+
+    for (int i = 0; i < list.size(); ++i)
+    {
+        fi=list.at(i);
+        QFile (fi.filePath()).remove();
+    }
+
+    QString dirName = d.dirName();
+    d.cdUp();
+    if (!d.rmdir(dirName))
+        qWarning ()<< "removeDir(" + dirName + ") failed!";
+}      
+
+bool copyDir (QDir src, QDir dst, const bool &override)   
+{
+    QStringList dirs  = src.entryList(QDir::AllDirs | QDir::Hidden | QDir::NoDotAndDotDot);
+    QStringList files = src.entryList(QDir::Files );
+
+    // Check if dst is a subdir of src, which would cause endless recursion...
+    if (dst.absolutePath().contains(src.absolutePath())) return false;
+    
+    // Traverse directories
+    QList<QString>::iterator d,f;
+    for (d = dirs.begin(); d != dirs.end(); ++d) 
+    {
+        if (!QFileInfo(src.path() + "/" + (*d)).isDir()) continue;
+
+        QDir cdir(dst.path() + "/" + (*d));
+        cdir.mkpath(cdir.path());
+
+        if (!copyDir (QDir(src.path() + "/" + (*d)), QDir(dst.path() + "/" + (*d)), override)) 
+            return false;
+    }
+
+    // Traverse files
+    for (f = files.begin(); f != files.end(); ++f) 
+    {
+        QFile cfile(src.path() + "/" + (*f));
+        QFile destFile(dst.path()+ "/" + src.relativeFilePath(cfile.fileName()));
+        if (destFile.exists() && override) 
+            destFile.remove();
+
+        if (!cfile.copy(dst.path() + "/" + src.relativeFilePath(cfile.fileName()))) 
+            return false;
+    }
+    return true;
+}
+
+void makeSubDirs (const QString &s)
+{
+    QDir d(s);
+    d.mkdir(s);
+    d.mkdir ("images");        
+    d.mkdir ("flags"); 
+}
+
+ErrorCode zipDir ( QDir zipInputDir, QString zipName)
+{
+    zipName = QDir::toNativeSeparators(zipName);
+    ErrorCode err = Success;
+
+    QString symLinkTarget;
+
+    QString newName;
+    // Move existing file away
+    QFile file(zipName);
+    if (file.exists() )
+    {
+        symLinkTarget = file.symLinkTarget();
+        newName = zipName + ".tmp";
+        int n = 0;
+        while (!file.rename (newName) && n < 5)
+        {
+            newName = newName + QString().setNum(n);
+            n++;
+        }
+        if (n >= 5)
+        {
+            QMessageBox::critical( 0, QObject::tr( "Critical Error" ),
+                                   QObject::tr("Couldn't move existing file out of the way before saving."));
+            return Aborted;
+        }
+    }
+
+    // zip the temporary directory
+    VymProcess *zipProc=new VymProcess ();
+    QStringList args;
+
+#if defined(Q_OS_WIN32)
+    zipProc->setWorkingDirectory (QDir::toNativeSeparators(zipInputDir.path() + "\\") );    
+    args << "a" << zipName << "-tzip" << "-scsUTF-8"  << "*";
+    zipProc->start(zipToolPath, args);
+    if (!zipProc->waitForStarted())
+    {
+        QMessageBox::critical( 0, QObject::tr( "Critical Error" ),
+            QObject::tr("Couldn't start tool to decompress data."));
+        err=Aborted;
+
+    }
+    while(zipProc->state()!=QProcess::NotRunning){
+        zipProc->waitForReadyRead();
+        result = zipProc->readAll();
+    }
+    
+    if (!zipProc->waitForStarted() )
+    {
+        // zip could not be started
+        QMessageBox::critical( 0, QObject::tr( "Critical Error" ),
+                               QObject::tr("Couldn't start zip to compress data."));
+        err=Aborted;
+    } else
+    {
+        // zip could be started
+        zipProc->waitForFinished();
+        if (zipProc->exitStatus()!=QProcess::NormalExit )
+        {
+            QMessageBox::critical( 0, QObject::tr( "Critical Error" ),
+                                   QObject::tr("zip didn't exit normally")+
+                                   "\n" + zipProc->getErrout());
+            err=Aborted;
+        } else
+        {
+            if (zipProc->exitCode()>0)
+            {
+                QMessageBox::critical( 0, QObject::tr( "Critical Error" ),
+                                       QString("zip exit code:  %1").arg(zipProc->exitCode() )+
+                                       "\n" + zipProc->getErrout() );
+                err=Aborted;
+            }
+        }
+    }
+    // qDebug() <<"Output: " << zipProc->getStdout()<<flush;   
+#else
+    zipProc->setWorkingDirectory (QDir::toNativeSeparators(zipInputDir.path() ));  
+    args <<"-r";
+    args <<zipName;
+    args <<".";
+
+    zipProc->start ("zip",args);
+    if (!zipProc->waitForStarted() )
+    {
+        // zip could not be started
+        QMessageBox::critical( 0, QObject::tr( "Critical Error" ),
+                               QObject::tr("Couldn't start zip to compress data."));
+        err=Aborted;
+    } else
+    {
+        // zip could be started
+        zipProc->waitForFinished();
+        if (zipProc->exitStatus()!=QProcess::NormalExit )
+        {
+            QMessageBox::critical( 0, QObject::tr( "Critical Error" ),
+                                   QObject::tr("zip didn't exit normally")+
+                                   "\n" + zipProc->getErrout());
+            err=Aborted;
+        } else
+        {
+            if (zipProc->exitCode()>0)
+            {
+                QMessageBox::critical( 0, QObject::tr( "Critical Error" ),
+                                       QString("zip exit code:  %1").arg(zipProc->exitCode() )+
+                                       "\n" + zipProc->getErrout() );
+                err=Aborted;
+            }
+        }
+    }
+#endif
+    // Try to restore previous file, if zipping failed
+    if (err == Aborted && !newName.isEmpty() && !file.rename (zipName) )
+       QMessageBox::critical( 0, QObject::tr( "Critical Error" ),
+          QObject::tr("Couldn't rename %1 back to %2").arg(newName).arg(zipName) );
+    else
+    {
+        // Take care of symbolic link
+        if (!symLinkTarget.isEmpty() )
+        {
+            if (!QFile(symLinkTarget).remove() )
+            {
+                QMessageBox::critical( 0, QObject::tr( "Critical Error" ),
+                   QObject::tr("Couldn't remove target of old symbolic link %1").arg(symLinkTarget));
+                err = Aborted;
+                return err;
+            }
+
+            if (!QFile(zipName).rename(symLinkTarget) )
+            {
+                QMessageBox::critical( 0, QObject::tr( "Critical Error" ),
+                   QObject::tr("Couldn't rename output to target of old symbolic link %1").arg(symLinkTarget));
+                err = Aborted;
+                return err;
+            }
+            if (!QFile(symLinkTarget).link(zipName) )
+            {
+                QMessageBox::critical( 0, QObject::tr( "Critical Error" ),
+                   QObject::tr("Couldn't link from %1 to target of old symbolic link %2").arg(zipName).arg(symLinkTarget));
+                err = Aborted;
+                return err;
+            }
+        }
+
+    // Remove temporary file
+       if (!newName.isEmpty()  && !file.remove() )
+           QMessageBox::critical( 0, QObject::tr( "Critical Error" ),
+           QObject::tr("Saved %1, but couldn't remove %2").arg(zipName).arg(newName));
+    }
+
+    return err;        
+}
+
+File::ErrorCode unzipDir ( QDir zipOutputDir, QString zipName)
+{
+    ErrorCode err=Success;
+
+    VymProcess *zipProc = new VymProcess ();
+    QStringList args;
+
+#if defined(Q_OS_WIN32)
+    zipProc->setWorkingDirectory (QDir::toNativeSeparators(zipOutputDir.path() + "\\") );
+    args << "-o" + zipOutputDir.path() << "x" << zipName.toUtf8() << "-scsUTF-8";
+    zipProc->start(zipToolPath, args);
+
+    if (!zipProc->waitForStarted())
+    {
+        QMessageBox::critical( 0, QObject::tr( "Critical Error" ),
+                               QObject::tr("Couldn't start tool to decompress data."));
+        err=Aborted;
+    }
+
+    while(zipProc->state()!=QProcess::NotRunning){
+        zipProc->waitForReadyRead();
+        result = zipProc->readAll();
+        //qDebug() << result << flush;
+    }
+    //qDebug() << zipProc->getStdout()<<flush;
+#else
+    zipProc->setWorkingDirectory (QDir::toNativeSeparators(zipOutputDir.path()));
+    args << "-o";   // overwrite existing files!
+    args << zipName ;
+    args << "-d";
+    args << zipOutputDir.path();
+
+    zipProc->start ("unzip",args);
+#endif
+    if (!zipProc->waitForStarted() )
+    {
+        QMessageBox::critical( 0, QObject::tr( "Critical Error" ),
+                               QObject::tr("Couldn't start %1 to decompress data.").arg(zipToolPath));
+        err=Aborted;
+
+
+    } else
+    {
+        zipProc->waitForFinished();
+        if (zipProc->exitStatus()!=QProcess::NormalExit )
+        {
+            QMessageBox::critical( 0,QObject::tr( "Critical Error" ),
+                                   QObject::tr("%1 didn't exit normally").arg(zipToolPath) +
+                                   zipProc->getErrout() );
+            err=Aborted;
+        } else
+        {
+            if (zipProc->exitCode()>0)
+            {
+                if (zipProc->exitCode()==9)
+                    // no zipped file, but maybe .xml or old version? Try again.
+                    err=NoZip;
+                else
+                {
+                    QMessageBox::critical( 0, QObject::tr( "Critical Error" ),
+                                           QString("%1 exit code:  %2").arg(zipToolPath).arg(zipProc->exitCode() ) +
+                                           zipProc->getErrout() );
+                    err=Aborted;
+                }
+            }
+        }
+    }
+    return err;
+}
+
+bool loadStringFromDisk (const QString &fname, QString &s)
+{
+    s="";
+    QFile file(fname);
+    if (!file.open(QFile::ReadOnly | QFile::Text)) {
+        qWarning()<<QString("loadStringFromDisk: Cannot read file %1\n%2")
+                    .arg(fname)
+                    .arg(file.errorString());
+        return false;
+    }
+
+    QTextStream in(&file);
+    s=in.readAll();
+    return true;
+}
+
+bool saveStringToDisk (const QString &fname, const QString &s)
+{
+    QFile file(fname);
+    // Write as binary (default), QFile::Text would convert linebreaks
+    if (!file.open(QFile::WriteOnly  )) {
+        qWarning()<<QString("saveStringToDisk: Cannot write file %1:\n%2.")
+                    .arg(fname)
+                    .arg(file.errorString());
+        return false;
+    }
+
+    QTextStream out(&file);
+    out.setCodec("UTF-8");
+    out << s;
+
+    return true;
+}
+
+FileType getMapType (const QString &fn)
+{
+    int i=fn.lastIndexOf(".");
+    if (i>=0)
+    {
+        QString postfix=fn.mid(i+1);
+        if (postfix=="vym" || postfix=="vyp" || postfix=="xml") return VymMap;
+        if (postfix=="mm") return FreemindMap;
+    }
+    return UnknownMap;
+}
+
+ImageIO::ImageIO ()
+{
+    // Create list with supported image types
+    // foreach (QByteArray format, QImageWriter::supportedImageFormats())
+    // imageTypes.append( tr("%1...").arg(QString(format).toUpper()));
+    imageFilters.append ("Images (*.png *.jpg *.jpeg *.bmp *.bmp *.ppm *.xpm *.xbm)");
+    imageTypes.append ("PNG");
+    imageFilters.append ("Portable Network Graphics (*.png)");
+    imageTypes.append ("PNG");
+    imageFilters.append ("Joint Photographic Experts Group (*.jpg)");
+    imageTypes.append ("JPG");
+    imageFilters.append ("Joint Photographic Experts Group (*.jpeg)");
+    imageTypes.append ("JPG");
+    imageFilters.append ("Windows Bitmap (*.bmp)");
+    imageTypes.append ("BMP");
+    imageFilters.append ("Portable Pixmap (*.ppm)");
+    imageTypes.append ("PPM");
+    imageFilters.append ("X11 Bitmap (*.xpm)");
+    imageTypes.append ("XPM");
+    imageFilters.append ("X11 Bitmap (*.xbm)");
+    imageTypes.append ("XBM");
+}
+
+QStringList ImageIO::getFilters()
+{
+    return imageFilters;
+}
+
+QString ImageIO::getType(QString filter)
+{
+    for (int i=0;i<imageFilters.count()+1;i++)
+        if (imageFilters.at(i)==filter) return imageTypes.at(i);
+    return QString();
+}
+
+QString ImageIO::guessType(QString fn)
+{
+    int i=fn.lastIndexOf(".");
+    if (i>=0)
+    {
+        QString postfix=fn.mid(i+1);
+        for (int i=1;i<imageFilters.count();i++)
+            if (imageFilters.at(i).contains(postfix)) return imageTypes.at(i);
+    }
+    return QString();
+}
+
diff --git a/file.h b/file.h
new file mode 100644 (file)
index 0000000..678485c
--- /dev/null
+++ b/file.h
@@ -0,0 +1,53 @@
+#ifndef FILE_H
+#define FILE_H
+
+#include <QDir>
+
+namespace File
+{
+    enum ErrorCode {Success,Aborted,NoZip};
+}
+
+enum LoadMode {NewMap,ImportAdd,ImportReplace};
+enum SaveMode {PartOfMap,CompleteMap,UndoCommand};
+enum FileType {VymMap, FreemindMap,UnknownMap};
+
+/////////////////////////////////////////////////////////////////////////////
+QString convertToRel (const QString &,const QString &);
+QString convertToAbs (const QString &,const QString &);
+QString basename (const QString&);
+QString dirname  (const QString&);
+
+QString browseDirectory (QWidget *parent=NULL, const QString &caption="");
+bool reallyWriteDirectory(const QString &dir);
+
+QString makeTmpDir (bool &ok, QString prefix);
+bool isInTmpDir (QString fn);
+QString makeUniqueDir (bool &ok, QString);
+void removeDir(QDir);
+bool copyDir (QDir src,QDir dst, const bool &override=false);
+void makeSubDirs (const QString &);
+File::ErrorCode zipDir (QDir , QString);
+File::ErrorCode unzipDir (QDir , QString);
+bool loadStringFromDisk (const QString &fn, QString &s);
+bool saveStringToDisk (const QString &fn, const QString &s);
+
+FileType getMapType ( const QString &fn);
+
+//////////////////////////////////////////////////////////
+// Helper function to select image format while in SaveDialogs
+
+class ImageIO
+{
+public:
+    ImageIO ();
+    QStringList getFilters();
+    QString getType ( QString );
+    QString guessType ( QString );
+
+private:    
+    QStringList imageFilters;
+    QStringList imageTypes;
+};
+
+#endif
diff --git a/findresultitem.cpp b/findresultitem.cpp
new file mode 100644 (file)
index 0000000..f5fb501
--- /dev/null
@@ -0,0 +1,150 @@
+#include <QStringList>
+
+#include "findresultitem.h"
+#include "treeitem.h"
+#include "vymmodel.h"
+
+FindResultItem::FindResultItem(const QVector<QVariant> &data, FindResultItem *parent)
+{
+    parentItem = parent;
+    itemData = data;
+    orgID=-1;
+    orgIndex=-1;
+    orgModel=NULL;
+    if (data.isEmpty()) itemData.append(QVariant("empty"));
+}
+
+FindResultItem::~FindResultItem()
+{
+    qDeleteAll(childItems);
+}
+
+FindResultItem *FindResultItem::child(int number)
+{
+    return childItems.value(number);
+}
+
+int FindResultItem::childCount() const
+{
+    return childItems.count();
+}
+
+int FindResultItem::childNumber() const
+{
+    if (parentItem)
+        return parentItem->childItems.indexOf(const_cast<FindResultItem*>(this));
+
+    return 0;
+}
+
+int FindResultItem::columnCount() const
+{
+    return itemData.count();
+}
+
+QVariant FindResultItem::data(int column) const
+{
+    return itemData.value(column);
+}
+
+int FindResultItem::row() const
+{
+    if (parentItem)
+        return parentItem->childItems.indexOf(const_cast<FindResultItem*>(this));
+
+    return 0;
+}
+
+bool FindResultItem::insertChildren(int position, int count, int columns)
+{
+    if (position < 0 || position > childItems.size())
+        return false;
+
+    for (int row = 0; row < count; ++row) {
+        QVector<QVariant> data(columns);
+        FindResultItem *item = new FindResultItem(data, this);
+        childItems.insert(position, item);
+    }
+
+    return true;
+}
+
+bool FindResultItem::insertColumns(int position, int columns)
+{
+    if (position < 0 || position > itemData.size())
+        return false;
+
+    for (int column = 0; column < columns; ++column)
+        itemData.insert(position, QVariant());
+
+    foreach (FindResultItem *child, childItems)
+        child->insertColumns(position, columns);
+
+    return true;
+}
+
+FindResultItem *FindResultItem::parent()
+{
+    return parentItem;
+}
+
+bool FindResultItem::removeChildren(int position, int count)
+{
+    if (position < 0 || position + count > childItems.size())
+        return false;
+
+    for (int row = 0; row < count; ++row)
+        delete childItems.takeAt(position);
+
+    return true;
+}
+
+bool FindResultItem::removeColumns(int position, int columns)
+{
+    if (position < 0 || position + columns > itemData.size())
+        return false;
+
+    for (int column = 0; column < columns; ++column)
+        itemData.remove(position);
+
+    foreach (FindResultItem *child, childItems)
+        child->removeColumns(position, columns);
+
+    return true;
+}
+
+bool FindResultItem::setData(int column, const QVariant &value)
+{
+    if (column < 0 || column >= itemData.size())
+        return false;
+
+    itemData[column] = value;
+    return true;
+}
+
+void FindResultItem::setOriginal (TreeItem *ti)
+{
+    orgModel=ti->getModel();
+    orgID=ti->getID();
+}
+
+int FindResultItem::getOriginalID()
+{
+    return orgID;
+}
+
+void FindResultItem::setOriginalIndex(int i)
+{
+    orgIndex=i;
+}
+
+int FindResultItem::getOriginalIndex()
+{
+    return orgIndex;
+}
+
+VymModel* FindResultItem::getOrgModel()
+{
+    return orgModel;
+}
+
diff --git a/findresultitem.h b/findresultitem.h
new file mode 100644 (file)
index 0000000..88ad2c5
--- /dev/null
@@ -0,0 +1,45 @@
+#ifndef FINDRESULTITEM_H
+#define FINDRESULTITEM_H
+
+#include <QList>
+#include <QVariant>
+#include <QVector>
+
+class TreeItem;
+class VymModel;
+
+class FindResultItem
+{
+public:
+    FindResultItem(const QVector<QVariant> &data, FindResultItem *parent = 0);
+    ~FindResultItem();
+
+    FindResultItem *child(int number);
+    int childCount() const;
+    int columnCount() const;
+    QVariant data(int column) const;
+    int row() const;
+    bool insertChildren(int position, int count, int columns);
+    bool insertColumns(int position, int columns);
+    FindResultItem *parent();
+    bool removeChildren(int position, int count);
+    bool removeColumns(int position, int columns);
+    int childNumber() const;
+    bool setData(int column, const QVariant &value);
+    void setOriginal (TreeItem *ti);
+    int getOriginalID();
+    void setOriginalIndex(int i);
+    int getOriginalIndex ();
+    VymModel* getOrgModel();
+
+private:
+    QList<FindResultItem*> childItems;
+    QVector<QVariant> itemData;
+    FindResultItem *parentItem;
+
+    int orgID;
+    int orgIndex;
+    VymModel *orgModel;
+};
+
+#endif
diff --git a/findresultmodel.cpp b/findresultmodel.cpp
new file mode 100644 (file)
index 0000000..954c914
--- /dev/null
@@ -0,0 +1,279 @@
+#include <QtGui>
+
+#include "findresultitem.h"
+#include "findresultmodel.h"
+#include "settings.h"
+#include "treeitem.h"
+
+extern Settings settings;
+
+FindResultModel::FindResultModel( QObject *parent)
+    : QAbstractItemModel(parent)
+{
+    QVector<QVariant> rootData;
+    rootData << "Heading";
+    rootItem = new FindResultItem(rootData);
+    showParentsLevel = settings.value("/satellite/findResults/showParentsLevel", 1).toInt();
+}
+
+FindResultModel::~FindResultModel()
+{
+    delete rootItem;
+}
+
+void FindResultModel::clear()
+{
+    if (rootItem->childCount()>0)
+       removeRows (0,rowCount (QModelIndex ()));
+}
+
+int FindResultModel::columnCount(const QModelIndex & /* parent */) const
+{
+    return rootItem->columnCount();
+}
+
+QVariant FindResultModel::data(const QModelIndex &index, int role) const
+{
+    if (!index.isValid())
+        return QVariant();
+
+    if (role != Qt::DisplayRole && role != Qt::EditRole)
+        return QVariant();
+
+    FindResultItem *item = getItem(index);
+
+    return item->data(index.column());
+}
+
+Qt::ItemFlags FindResultModel::flags(const QModelIndex &index) const
+{
+    if (!index.isValid())
+        return 0;
+
+    return Qt::ItemIsEditable | Qt::ItemIsEnabled | Qt::ItemIsSelectable;
+}
+
+QVariant FindResultModel::headerData(int section, Qt::Orientation orientation,
+                               int role) const
+{
+    if (orientation == Qt::Horizontal && role == Qt::DisplayRole)
+        return rootItem->data(section);
+
+    return QVariant();
+}
+
+QModelIndex FindResultModel::index (FindResultItem *fri)
+{
+    if (!fri->parent())
+       return QModelIndex();
+    else    
+       return createIndex (fri->row(),0,fri);
+}
+
+
+QModelIndex FindResultModel::index(int row, int column, const QModelIndex &parent) const
+{
+    if (parent.isValid() && parent.column() != 0)
+        return QModelIndex();
+
+    FindResultItem *parentItem = getItem(parent);
+
+    FindResultItem *childItem = parentItem->child(row);
+    if (childItem)
+        return createIndex(row, column, childItem);
+    else
+        return QModelIndex();
+}
+
+bool FindResultModel::insertColumns(int position, int columns, const QModelIndex &parent)
+{
+    bool success;
+
+    beginInsertColumns(parent, position, position + columns - 1);
+    success = rootItem->insertColumns(position, columns);
+    endInsertColumns();
+
+    return success;
+}
+
+bool FindResultModel::insertRows(int position, int rows, const QModelIndex &parent)
+{
+    FindResultItem *parentItem = getItem(parent);
+    bool success;
+
+    beginInsertRows(parent, position, position + rows - 1);
+    success = parentItem->insertChildren(position, rows, rootItem->columnCount());
+    endInsertRows();
+
+    return success;
+}
+
+QModelIndex FindResultModel::parent(const QModelIndex &index) const
+{
+    if (!index.isValid())
+        return QModelIndex();
+
+    FindResultItem *childItem = getItem(index);
+    FindResultItem *parentItem = childItem->parent();
+
+    if (parentItem == rootItem)
+        return QModelIndex();
+
+    return createIndex(parentItem->childNumber(), 0, parentItem);
+}
+
+bool FindResultModel::removeColumns(int position, int columns, const QModelIndex &parent)
+{
+    bool success;
+
+    beginRemoveColumns(parent, position, position + columns - 1);
+    success = rootItem->removeColumns(position, columns);
+    endRemoveColumns();
+
+    if (rootItem->columnCount() == 0)
+        removeRows(0, rowCount());
+
+    return success;
+}
+
+bool FindResultModel::removeRows(int position, int rows, const QModelIndex &parent)
+{
+    FindResultItem *parentItem = getItem(parent);
+    bool success = true;
+
+    beginRemoveRows(parent, position, position + rows - 1);
+    success = parentItem->removeChildren(position, rows);
+    endRemoveRows();
+
+    return success;
+}
+
+int FindResultModel::rowCount(const QModelIndex &parent) const
+{
+    FindResultItem *parentItem = getItem(parent);
+
+    return parentItem->childCount();
+}
+
+bool FindResultModel::setData(const QModelIndex &index, const QVariant &value,
+                        int role)
+{
+    if (role != Qt::EditRole)
+        return false;
+
+    FindResultItem *item = getItem(index);
+    bool result = item->setData(index.column(), value);
+
+    if (result)
+        emit dataChanged(index, index);
+
+    return result;
+}
+
+bool FindResultModel::setHeaderData(int section, Qt::Orientation orientation,
+                              const QVariant &value, int role)
+{
+    if (role != Qt::EditRole || orientation != Qt::Horizontal)
+        return false;
+
+    bool result = rootItem->setData(section, value);
+
+    if (result)
+        emit headerDataChanged(orientation, section, section);
+
+    return result;
+}
+
+FindResultItem* FindResultModel::getItem(const QModelIndex &index) const
+{
+    if (index.isValid()) {
+        FindResultItem *item = static_cast<FindResultItem*>(index.internalPointer());
+        if (item) return item;
+    }
+    return rootItem;
+}
+
+FindResultItem*  FindResultModel::addItem (TreeItem *ti)
+{
+    FindResultItem *ni=NULL;
+    if (ti)
+    {
+       QModelIndex parix (index (rootItem));
+       
+       emit (layoutAboutToBeChanged() );
+
+       int n=rowCount (parix);
+       beginInsertRows (parix,n,n);
+       if (rootItem->insertChildren (n,1,0) )
+        {
+            QString h=ti->getHeadingPlainWithParents( showParentsLevel );
+            QModelIndex ix=index(n,0,QModelIndex());
+            setData (ix,QVariant(h),Qt::EditRole);
+            ni=getItem(ix);
+            ni->setOriginal (ti);
+        }
+       endInsertRows ();
+
+       emit (layoutChanged() );
+    }
+    return ni;
+}
+
+FindResultItem*  FindResultModel::addSubItem (FindResultItem *parent,const QString &s, TreeItem *pi, int i)
+{
+    FindResultItem *ni=NULL;
+    if (pi && parent)
+    {
+       QModelIndex parix ( index (parent));
+       
+       emit (layoutAboutToBeChanged() );
+
+       int n=rowCount (parix);
+       beginInsertRows (parix,n,n);
+
+       QModelIndex ix;
+       if (parent->insertChildren (n,1,0))
+       {
+           ix=index(n,0,parix);
+           setData (ix,QVariant(s),Qt::EditRole);
+           ni=getItem(ix);
+           ni->setOriginal (pi);
+           ni->setOriginalIndex (i);
+       }
+       endInsertRows ();
+       emit (layoutChanged() );
+    }
+    return ni;
+}
+
+void FindResultModel::setSearchString( const QString &s)
+{
+    searchString=s;
+}
+
+QString FindResultModel::getSearchString()
+{
+    return searchString;
+}
+
+void FindResultModel::setSearchFlags( QTextDocument::FindFlags f)
+{
+    searchFlags=f;
+}
+
+QTextDocument::FindFlags FindResultModel::getSearchFlags()
+{
+    return searchFlags;
+}
+
+void FindResultModel::setShowParentsLevel(uint i)
+{
+    showParentsLevel = i;
+    settings.setValue("/findResults/showParentsLevel", showParentsLevel);
+}
+
+uint FindResultModel::getShowParentsLevel()
+{
+    return showParentsLevel;
+}
+
diff --git a/findresultmodel.h b/findresultmodel.h
new file mode 100644 (file)
index 0000000..634d1a0
--- /dev/null
@@ -0,0 +1,69 @@
+#ifndef FINDRESULTMODEL_H
+#define FINDRESULTMODEL_H
+
+#include <QAbstractItemModel>
+#include <QModelIndex>
+#include <QTextDocument>
+#include <QVariant>
+
+class FindResultItem;
+class TreeItem;
+
+class FindResultModel : public QAbstractItemModel
+{
+    Q_OBJECT
+
+public:
+    FindResultModel( QObject *parent = 0);
+    ~FindResultModel();
+    void clear();
+
+    QVariant data(const QModelIndex &index, int role) const;
+    QVariant headerData(int section, Qt::Orientation orientation,
+                        int role = Qt::DisplayRole) const;
+
+    QModelIndex index (FindResultItem *fri);
+    QModelIndex index(int row, int column,
+                      const QModelIndex &parent = QModelIndex()) const;
+    QModelIndex parent(const QModelIndex &index) const;
+
+    int rowCount(const QModelIndex &parent = QModelIndex()) const;
+    int columnCount(const QModelIndex &parent = QModelIndex()) const;
+
+    Qt::ItemFlags flags(const QModelIndex &index) const;
+    bool setData(const QModelIndex &index, const QVariant &value,
+                 int role = Qt::EditRole);
+    bool setHeaderData(int section, Qt::Orientation orientation,
+                       const QVariant &value, int role = Qt::EditRole);
+
+    bool insertColumns(int position, int columns,
+                       const QModelIndex &parent = QModelIndex());
+    bool removeColumns(int position, int columns,
+                       const QModelIndex &parent = QModelIndex());
+    bool insertRows(int position, int rows,
+                    const QModelIndex &parent = QModelIndex());
+    bool removeRows(int position, int rows,
+                    const QModelIndex &parent = QModelIndex());
+
+    FindResultItem* getItem(const QModelIndex &index) const;
+
+    FindResultItem* addItem (TreeItem *ti);
+    FindResultItem* addSubItem (FindResultItem *parent,const QString &s, TreeItem *pi, int i);
+
+    void setSearchString( const QString &s);
+    QString getSearchString();
+    void setSearchFlags( QTextDocument::FindFlags f);
+    QTextDocument::FindFlags getSearchFlags();
+    void setShowParentsLevel(uint i);
+    uint getShowParentsLevel();
+
+private:
+    uint showParentsLevel;
+
+    FindResultItem *rootItem;
+
+    QString searchString;
+    QTextDocument::FindFlags searchFlags;
+};
+
+#endif
diff --git a/findresultwidget.cpp b/findresultwidget.cpp
new file mode 100644 (file)
index 0000000..cc2143d
--- /dev/null
@@ -0,0 +1,125 @@
+#include "findresultwidget.h"
+
+#include <QVBoxLayout>
+#include <QTreeView>
+
+#include "findresultitem.h"
+#include "findresultmodel.h"
+#include "vymmodel.h"
+
+FindResultWidget::FindResultWidget(QWidget *)
+{
+    // Create results model
+    resultsModel=new FindResultModel;
+
+    // Create TreeView
+    view = new QTreeView (this);
+    view->setModel (resultsModel);
+
+    // Create FindWidget
+    findWidget = new FindWidget (this);
+    connect (
+       findWidget, SIGNAL (nextButton (QString) ), 
+       this, SLOT (nextButtonPressed (QString) ) );
+
+
+    QVBoxLayout* mainLayout = new QVBoxLayout;
+    
+    mainLayout->addWidget(view);
+    mainLayout->addWidget(findWidget);
+
+    setLayout (mainLayout);
+
+    // Selection
+    connect (view->selectionModel(),SIGNAL (selectionChanged (QItemSelection,QItemSelection)),
+       this, SLOT (updateSelection (QItemSelection,QItemSelection)));
+
+    connect (resultsModel, SIGNAL(layoutChanged() ), view, SLOT (expandAll() ));    
+}
+
+void FindResultWidget::addItem (TreeItem *ti)
+{
+    if (ti)
+    {
+       QModelIndex index = view->selectionModel()->currentIndex();
+       //QAbstractItemModel *resultsModel = view->model();
+       
+       if (!resultsModel->insertRow(index.row()+1, index.parent()))
+           return;
+
+       for (int column = 0; column < resultsModel->columnCount(index.parent()); ++column) {
+           QModelIndex child = resultsModel->index(index.row()+1, column, index.parent());
+        resultsModel->setData(child, QVariant(ti->getHeadingPlain()), Qt::EditRole);
+           resultsModel->getItem(child)->setOriginal (ti);
+       }
+    }
+}
+
+void FindResultWidget::addItem (const QString &s)
+{
+    if (!s.isEmpty())
+    {
+       QModelIndex index = view->selectionModel()->currentIndex();
+       
+       if (!resultsModel->insertRow(index.row()+1, index.parent()))
+           return;
+
+       for (int column = 0; column < resultsModel->columnCount(index.parent()); ++column) {
+           QModelIndex child = resultsModel->index(index.row()+1, column, index.parent());
+           resultsModel->setData(child, QVariant(s), Qt::EditRole);
+       }
+    }
+}
+
+QString FindResultWidget::getFindText()
+{
+    return findWidget->getFindText();
+}
+
+FindResultModel* FindResultWidget::getResultModel()
+{
+    return resultsModel;
+}
+
+void FindResultWidget::popup()
+{
+    show();
+    parentWidget()->show();
+    findWidget->setFocus();
+}
+
+void FindResultWidget::cancelPressed()
+{
+    emit (hideFindResultWidget() );
+}
+
+void FindResultWidget::nextButtonPressed(QString s)
+{
+    emit (findPressed(s) );
+}
+
+void FindResultWidget::updateSelection(QItemSelection newsel,QItemSelection)
+{
+    QModelIndex ix;
+    foreach (ix,newsel.indexes() )
+    {
+       FindResultItem *fri= static_cast<FindResultItem*>(ix.internalPointer());
+       if (fri->getOrgModel() && fri->getOriginalID()>0)
+       {
+           TreeItem *ti=fri->getOrgModel()->findID(fri->getOriginalID() );
+           if (ti)
+           {
+               fri->getOrgModel()->select (ti);
+               int i=fri->getOriginalIndex();
+               if (i>=0) emit (noteSelected (resultsModel->getSearchString(),i));
+           }   
+       }
+    }
+}
+
+void FindResultWidget::setStatus (FindWidget::Status st)
+{
+    findWidget->setStatus (st);
+}
+
+
diff --git a/findresultwidget.h b/findresultwidget.h
new file mode 100644 (file)
index 0000000..e63caf3
--- /dev/null
@@ -0,0 +1,47 @@
+#ifndef FINDRESULTWIDGET_H 
+#define FINDRESULTWIDGET_H
+
+#include <QItemSelection>
+#include <QWidget>
+
+#include "findwidget.h"
+
+class FindResultModel;
+class TreeItem;
+class VymModel;
+class QTreeView;
+class QPushButton;
+class FindWidget;
+
+class FindResultWidget: public QWidget
+{
+    Q_OBJECT
+
+public:
+    FindResultWidget (QWidget *parent=NULL);
+    FindResultModel* getResultModel();
+    void addItem (TreeItem *ti);
+    void addItem (const QString &s);
+    QString getFindText();
+
+public slots:  
+    void popup();
+    void cancelPressed();
+    void nextButtonPressed (QString);
+    void updateSelection(QItemSelection ,QItemSelection);
+    void setStatus (FindWidget::Status st);
+
+signals:
+    void hideFindResultWidget();
+    void noteSelected (QString , int );
+    void findPressed (QString);
+
+public:
+    FindWidget *findWidget;
+private:
+    FindResultModel *resultsModel;
+    QTreeView *view;
+};
+
+#endif
+
diff --git a/findwidget.cpp b/findwidget.cpp
new file mode 100644 (file)
index 0000000..a75184c
--- /dev/null
@@ -0,0 +1,105 @@
+#include <QAction>
+#include <QDebug>
+#include <QLineEdit>
+#include <QVBoxLayout>
+#include <QLabel>
+
+#include <QComboBox>
+#include <QPushButton>
+#include <QGroupBox>
+#include <QLabel>
+
+
+#include "findwidget.h"
+#include "mainwindow.h"
+
+
+extern Main *mainWindow;
+
+FindWidget::FindWidget(QWidget *)
+{
+    QVBoxLayout* mainLayout = new QVBoxLayout; 
+    QHBoxLayout *row2Layout = new QHBoxLayout;
+    
+    QLabel *label=new QLabel;
+    label->setText (tr("Find:","FindWidget"));
+    
+    // Create LineEdit (here QComboBox)
+    findcombo = new QComboBox;
+    findcombo->setMinimumWidth(250);
+    findcombo->setEditable(true);
+
+    QSizePolicy sizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
+    findcombo->setSizePolicy(sizePolicy);
+    connect ( findcombo, SIGNAL( highlighted(int) ), 
+       this, SLOT( nextPressed() ) );
+    connect ( findcombo, SIGNAL( editTextChanged(const QString &) ), 
+       this, SLOT( findTextChanged(const QString&) ) );
+
+    nextbutton = new QPushButton;
+    nextbutton->setIcon (QPixmap(":/find.png"));
+    //nextbutton->setText (tr("Find","Find widget"));
+    connect ( nextbutton, SIGNAL( clicked() ), this, SLOT( nextPressed() ) );
+
+    // QAction needed to only activate shortcut while FindWidget has focus
+    QAction *a=new QAction (nextbutton->text(),this);
+    a->setShortcut (Qt::Key_Return);
+    a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    connect ( a, SIGNAL( triggered() ), this, SLOT( nextPressed() ) );
+    addAction (a);
+
+    row2Layout->addWidget (label);
+    row2Layout->addWidget(findcombo);
+    row2Layout->addWidget(nextbutton);
+
+    mainLayout->addLayout (row2Layout);
+
+    setLayout (mainLayout);
+    status=Undefined;
+}
+
+QString FindWidget::getFindText()
+{
+    return findcombo->currentText();
+}
+
+void FindWidget::cancelPressed()
+{
+    hide();
+    emit (hideFindWidget() );//Restore focus
+}
+
+void FindWidget::nextPressed()
+{
+    emit (nextButton(findcombo->currentText() ) );
+}
+
+void FindWidget::findTextChanged(const QString&)
+{
+    setStatus (Undefined);
+}
+
+void FindWidget::setFocus()
+{
+    findcombo->lineEdit()->selectAll();
+    findcombo->lineEdit()->setFocus();
+}
+
+void FindWidget::setStatus (Status st)
+{
+    if (st==status) return;
+
+    status=st;
+    QPalette p=palette();
+    QColor c;
+    switch (st)
+    {
+       case Success: c=QColor (120,255,120); break;
+       case Failed:  c=QColor (255,120,120); break;
+       default:  c=QColor (255,255,255); 
+    }
+    p.setColor(QPalette::Active, static_cast<QPalette::ColorRole>(9), c);
+    p.setColor(QPalette::Inactive, static_cast<QPalette::ColorRole>(9), c);
+    findcombo->setPalette(p);
+}
+
diff --git a/findwidget.h b/findwidget.h
new file mode 100644 (file)
index 0000000..94a19bc
--- /dev/null
@@ -0,0 +1,42 @@
+#ifndef FINDWIDGET_H 
+#define FINDWIDGET_H
+
+#include <QWidget>
+
+class QAction;
+class QGroupBox;
+class QComboBox;
+class QPushButton;
+
+class FindWidget: public QWidget
+{
+    Q_OBJECT
+
+public:
+    enum Status {Undefined,Success,Failed};
+
+    FindWidget (QWidget *parent=NULL);
+    QString getFindText ();
+
+public slots:  
+    void cancelPressed();
+    void nextPressed();
+    void findTextChanged(const QString&);
+    void setFocus();
+    void setStatus (Status st);
+
+private:
+    Status status;
+
+signals:
+    void hideFindWidget();
+    void nextButton(QString);
+
+private:
+    QComboBox *findcombo;
+    QGroupBox *findbox;
+    QPushButton *nextbutton;
+};
+
+#endif
+
diff --git a/flag.cpp b/flag.cpp
new file mode 100644 (file)
index 0000000..1e7cb82
--- /dev/null
+++ b/flag.cpp
@@ -0,0 +1,142 @@
+#include "flag.h"
+
+#include <QDebug>
+
+/////////////////////////////////////////////////////////////////
+// Flag
+/////////////////////////////////////////////////////////////////
+Flag::Flag()
+{
+    //qDebug() << "Const Flag ()";
+    init ();
+}
+
+Flag::Flag(const QString &fname)
+{
+    init ();
+    load (fname);
+}
+
+Flag::Flag (Flag* io)
+{
+    //qDebug() << "Const Flag (Flag);
+    copy (io);
+}
+
+Flag::~Flag()
+{
+   //qDebug() << "Destr Flag  this="<<this <<"  " << qPrintable(name);
+}
+
+
+void Flag::init ()
+{
+    action=NULL;
+    name="undefined";
+    visible=true;
+    unsetGroup();
+
+    state=false;
+    used=false;
+}
+
+void Flag::copy (Flag* other)
+{
+    action=other->action;
+    name=other->name;
+    group=other->group;
+    tooltip=other->tooltip;
+    state=other->state;
+    used=other->used;
+    pixmap=other->pixmap;
+}
+
+
+void Flag::load (const QString &fn)
+{
+    if (!pixmap.load(fn))
+       qDebug()<<"Flag::load ("<<fn<<") failed.";
+}
+
+void Flag::load (const QPixmap &pm)
+{
+    pixmap=pm;
+}
+
+void Flag::setName(const QString &n)
+{
+    name=n;
+}
+
+const QString Flag::getName()
+{
+    return name;
+}
+
+void Flag::setVisible (bool b)
+{
+    visible=b;
+}
+
+bool Flag::isVisible ()
+{
+    return visible;
+}
+
+void Flag::setGroup (const QString &n)
+{
+    group=n;
+}
+
+const QString Flag::getGroup()
+{
+    return group;
+}
+
+void Flag::unsetGroup()
+{
+    group.clear();
+}
+
+void Flag::setToolTip(const QString &n)
+{
+    tooltip=n;
+}
+
+const QString Flag::getToolTip()
+{
+    return tooltip;
+}
+
+QPixmap Flag::getPixmap()
+{
+    return pixmap;
+}
+
+void Flag::setAction (QAction *a)
+{
+    action=a;
+}
+
+QAction* Flag::getAction ()
+{
+    return action;
+}
+
+void Flag::setUsed (bool b)
+{
+    used=b;
+}
+
+bool Flag::isUsed()
+{
+    return used;
+}
+
+void Flag::saveToDir (const QString &tmpdir, const QString &prefix)
+{
+    QString fn=tmpdir + prefix + name + ".png";
+    pixmap.save (fn,"PNG");
+}
+
+
diff --git a/flag.h b/flag.h
new file mode 100644 (file)
index 0000000..d63d752
--- /dev/null
+++ b/flag.h
@@ -0,0 +1,56 @@
+#ifndef FLAG_H
+#define FLAG_H
+
+
+#include <QAction>
+#include <QPixmap>
+
+#include "xmlobj.h"
+
+/*! \brief One flag belonging to a FlagRow.
+
+    Each TreeItem in a VymModel has a set of standard flags and system
+    flags.
+*/
+
+
+/////////////////////////////////////////////////////////////////////////////
+class Flag:public XMLObj {
+public:
+    Flag ();
+    Flag (const QString &fname);
+    Flag (Flag*);
+    ~Flag ();
+    virtual void init ();
+    virtual void copy (Flag*);
+    void load (const QString&);
+    void load (const QPixmap&);
+    void setName (const QString&);
+    const QString getName ();
+    void setVisible (bool b);
+    bool isVisible ();
+    void setGroup (const QString&);
+    const QString getGroup();
+    void unsetGroup ();
+    void setToolTip(const QString&);
+    const QString getToolTip();
+    QPixmap getPixmap();
+    void setAction (QAction *a);
+    QAction* getAction ();
+    void setUsed (bool);    //FIXME-3 needed?
+    bool isUsed();
+    void saveToDir (const QString&, const QString&);
+    
+protected:  
+    QString name;
+    bool visible;
+    QString group;
+    QString tooltip;
+    QAction *action;
+    bool state;
+    bool used;
+private:
+    QPixmap pixmap;
+};
+
+#endif
diff --git a/flagobj.cpp b/flagobj.cpp
new file mode 100644 (file)
index 0000000..fbf2510
--- /dev/null
@@ -0,0 +1,158 @@
+#include <QDebug>
+
+#include "flagobj.h"
+
+/////////////////////////////////////////////////////////////////
+// FlagObj
+/////////////////////////////////////////////////////////////////
+FlagObj::FlagObj(QGraphicsItem *parent):MapObj(parent) 
+{
+//  qDebug() << "Const FlagObj  this="<<this<<"  scene="<<s;
+    init ();
+}
+
+FlagObj::~FlagObj()
+{
+//   qDebug() << "Destr FlagObj  this="<<this <<"  " <<name;
+    if (icon) delete (icon);
+}
+
+
+void FlagObj::init ()
+{
+    name="undefined";
+
+    icon=new ImageObj (parentItem());
+    icon->setPos (absPos.x(), absPos.y() );
+    state=false;
+    avis=true;
+}
+
+void FlagObj::copy (FlagObj* other)
+{
+    MapObj::copy(other);
+    name=other->name;
+    state=other->state;
+    avis=other->avis;
+    icon->copy(other->icon);
+    setVisibility (other->isVisibleObj() );
+}
+
+void FlagObj::move(double x, double y)
+{
+    MapObj::move(x,y);
+    icon->setPos(x,y);
+    positionBBox();
+}
+
+void FlagObj::moveBy(double x, double y)
+{
+    move (x+absPos.x(),y+absPos.y() );
+}
+
+void FlagObj::setZValue (double z)
+{
+    icon->setZValue (z);
+}
+
+void FlagObj::setVisibility (bool v)
+{
+    MapObj::setVisibility(v);
+    if (v && state)
+       icon->setVisibility(true);
+    else
+       icon->setVisibility(false);
+}
+
+void FlagObj::load (const QString &fn)
+{
+    icon->load(fn);
+    calcBBoxSize();
+    positionBBox();
+}
+
+void FlagObj::load (const QPixmap &pm)
+{
+    icon->load(pm);
+    calcBBoxSize();
+    positionBBox();
+}
+
+void FlagObj::setName(const QString &n)
+{
+    name=n;
+}
+
+const QString FlagObj::getName()
+{
+    return name;
+}
+
+void FlagObj::setAlwaysVisible(bool b)
+{
+    avis=b;
+}
+
+bool FlagObj::isAlwaysVisible()
+{
+    return avis;
+}
+
+bool FlagObj::isActive()
+{
+    return state;
+}
+
+void FlagObj::toggle()
+{
+    if (state)
+       deactivate();
+    else
+       activate();
+}
+
+void FlagObj::activate()
+{
+    state=true;
+    // only show icon, if flag itself is visible 
+    if (visible) 
+    {
+       icon->setVisibility (true);
+       calcBBoxSize();
+    }  
+}
+
+void FlagObj::deactivate()
+{
+    state=false;
+    // if flag itself is invisible we don't need to call 
+    if (visible) 
+    {
+       icon->setVisibility (false);
+       calcBBoxSize();
+    }  
+}
+
+void FlagObj::saveToDir (const QString &tmpdir, const QString &prefix)
+{
+    QString fn=tmpdir + prefix + name + ".png";
+    icon->save (fn,"PNG");
+}
+
+void FlagObj::positionBBox()
+{
+    bbox.moveTopLeft (absPos );
+    clickPoly=QPolygonF (bbox);
+}
+
+void FlagObj::calcBBoxSize()
+{
+    if (visible && state)
+       bbox.setSize (  QSizeF(
+           icon->boundingRect().width(), 
+           icon->boundingRect().height() ) );
+    else
+       bbox.setSize (QSizeF(0,0));
+    clickPoly= QPolygonF (bbox); 
+}
+
diff --git a/flagobj.h b/flagobj.h
new file mode 100644 (file)
index 0000000..2259d64
--- /dev/null
+++ b/flagobj.h
@@ -0,0 +1,53 @@
+#ifndef FLAGOBJ_H
+#define FLAGOBJ_H
+
+
+#include <QAction>
+#include <QPixmap>
+
+#include "flag.h"
+#include "mapobj.h"
+#include "imageobj.h"
+
+/*! \brief One flag which is visible in the map. 
+
+    Flags are aligned in a row. 
+*/
+
+
+/////////////////////////////////////////////////////////////////////////////
+class FlagObj:public MapObj {
+public:
+    FlagObj (QGraphicsItem *);
+    ~FlagObj ();
+    virtual void init ();
+    virtual void copy (FlagObj*);
+    virtual void move (double x,double y);      // move to absolute Position
+    virtual void moveBy (double x,double y);    // move to relative Position
+    virtual void setZValue (double z);
+    virtual void setVisibility(bool);
+    void load (const QString&);
+    void load (const QPixmap&);
+    void setName (const QString&);
+    const QString getName ();
+    QPixmap getPixmap();
+    void setAction(QAction*);
+    void setAlwaysVisible (bool b);
+    bool isAlwaysVisible ();
+    bool isActive();
+    void toggle();
+    void activate();
+    void deactivate();
+    void saveToDir (const QString&, const QString&);
+    
+protected:  
+    QString name;
+    bool state;
+    bool avis;
+    virtual void positionBBox();
+    virtual void calcBBoxSize();
+private:
+    ImageObj* icon;
+};
+
+#endif
diff --git a/flagrow.cpp b/flagrow.cpp
new file mode 100644 (file)
index 0000000..f2b8508
--- /dev/null
@@ -0,0 +1,208 @@
+#include <QDebug>
+
+#include "flagrow.h"
+
+extern bool debug;
+
+/////////////////////////////////////////////////////////////////
+// FlagRow
+/////////////////////////////////////////////////////////////////
+FlagRow::FlagRow()
+{
+    toolBar=NULL;
+    masterRow=NULL;
+//    qDebug()<< "Const FlagRow ()";
+}
+
+FlagRow::~FlagRow()
+{
+    //qDebug()<< "Destr FlagRow";
+}
+
+void FlagRow::addFlag (Flag *flag)
+{
+    Flag *f=new Flag;
+;
+    f->copy (flag);
+    flags.append (f);
+    activeNames.append (flag->getName());
+}
+
+Flag* FlagRow::getFlag (const QString &name)
+{
+    int i=0;
+    while (i<=flags.size()-1)
+    {
+       if (flags.at(i)->getName()==name)
+           return flags.at(i);
+       i++;    
+    }
+    return NULL;
+}
+
+QStringList FlagRow::activeFlagNames()
+{
+    return activeNames;
+}
+
+
+bool FlagRow::isActive (const QString &name)   
+{
+    QString n;
+    foreach (n,activeNames)
+       if (n==name) return true;
+    return false;   
+}
+
+bool FlagRow::toggle (const QString &name, FlagRow *masterRow)
+{
+    if (isActive(name) )
+       return deactivate (name);
+    else
+    {
+       if (!activate (name) ) return false;    
+
+       // Deactivate group
+       if (!masterRow) return false;
+
+       Flag *flag=masterRow->getFlag (name);
+       if (!flag) return false;
+       QString mygroup=flag->getGroup();
+
+       for (int i=0;i<activeNames.size();++i)
+       {
+           flag=masterRow->getFlag (activeNames.at(i) );
+           if (name!=activeNames.at(i) && !mygroup.isEmpty() && mygroup==flag->getGroup())
+               deactivate (activeNames.at(i));
+       }
+       return true;
+    }
+}
+
+bool FlagRow::activate (const QString &name)
+{
+    if (isActive (name)) 
+    {
+       if (debug) qWarning ()<<QString("FlagRow::activate - %1 is already active").arg(name);
+       return false;
+    }
+
+    if (!masterRow)
+    {
+       qWarning()<<"FlagRow::activate - no masterRow to activate "<<name;
+       return false;
+    }
+
+    // Check, if flag exists after all...
+    Flag *flag=masterRow->getFlag (name);
+    if (!flag)
+    {
+       qWarning()<<"FlagRow::activate - flag "<<name<<" does not exist here!";
+       return false;
+    }
+
+    activeNames.append (name);
+    return true;
+}
+
+
+bool FlagRow::deactivate (const QString &name)
+{
+    int n=activeNames.indexOf (name);
+    if (n>=0)
+    {
+       activeNames.removeAt(n);
+       return true;
+    }
+    if (debug) 
+       qWarning ()<<QString("FlagRow::deactivate - %1 is not active").arg(name);
+    return false;
+}
+
+bool FlagRow::deactivateGroup (const QString &gname) 
+{
+    if (!masterRow) return false;
+    if (gname.isEmpty()) return false;
+
+    foreach (QString s, activeNames )
+    {
+       Flag *flag=masterRow->getFlag (s);
+       if (flag && gname == flag->getGroup())
+           deactivate (s);
+    }
+    return true;
+}
+
+void FlagRow::deactivateAll ()
+{
+    if (!toolBar) activeNames.clear();
+}
+
+void FlagRow::setEnabled (bool b)
+{
+    toolBar->setEnabled (b);
+}
+
+void FlagRow::resetUsedCounter()
+{
+    for (int i=0; i<flags.size(); ++i)
+       flags.at(i)->setUsed (false);
+}
+
+QString FlagRow::saveToDir (const QString &tmpdir,const QString &prefix, bool writeflags) 
+{
+    // Build xml string
+    QString s;
+    
+    if (!toolBar)
+    {
+       if (!activeNames.isEmpty())
+       for (int i=0; i<activeNames.size(); ++i)
+       {
+           // save flag to xml, if flag is set 
+           s+=valueElement("standardflag",activeNames.at(i));
+
+           // and tell parentRow, that this flag is used   
+           masterRow->getFlag(activeNames.at(i))->setUsed(true);
+       }   
+    } else
+       // Save icons to dir, if verbose is set (xml export)
+       // and I am a master
+       // and this flag is really used somewhere
+       if (writeflags)
+           for (int i=0; i<flags.size(); ++i)
+               if (flags.at(i)->isUsed()) flags.at(i)->saveToDir (tmpdir,prefix);
+    return s;      
+}
+
+void FlagRow::setName (const QString &n)
+{
+    rowName=n;
+}
+
+void FlagRow::setToolBar (QToolBar *tb)
+{
+    toolBar=tb;
+}
+
+void FlagRow::setMasterRow (FlagRow *row)
+{
+    masterRow=row; 
+}
+
+void FlagRow::updateToolBar (const QStringList &activeNames)
+{
+    if (toolBar )
+    {
+       for (int i=0;i<flags.size();++i)
+           flags.at(i)->getAction()->setChecked (false);
+       for (int i=0;i<flags.size();++i)
+       {
+           int n=activeNames.indexOf (flags.at(i)->getName());
+           if (n>=0)
+               flags.at(i)->getAction()->setChecked (true);    
+       }
+    }
+}
+
+
diff --git a/flagrow.h b/flagrow.h
new file mode 100644 (file)
index 0000000..f94c171
--- /dev/null
+++ b/flagrow.h
@@ -0,0 +1,51 @@
+#ifndef FLAGROW_H
+#define FLAGROW_H
+
+#include <QStringList>
+#include <QToolBar>
+
+#include "flag.h"
+#include "xmlobj.h"
+
+/*! \brief A set of flags (Flag). 
+
+   A toolbar can be created from the flags in this row.
+   The data needed for represention in a vym map 
+   is stored in FlagRowObj.
+ */
+
+class FlagRow:public XMLObj {
+public:
+    FlagRow ();
+    ~FlagRow ();
+    void addFlag (Flag *flag);
+    Flag *getFlag (const QString &name);
+    QStringList  activeFlagNames();
+    bool isActive(const QString &name);
+
+    /*! \brief Toggle a Flag 
+       
+       To activate a flag it will be copied from masterRow to current row.
+    */ 
+    bool toggle (const QString&, FlagRow *masterRow=NULL);
+    bool activate(const QString&);
+    bool deactivate(const QString&);
+    bool deactivateGroup(const QString&);
+    void deactivateAll();
+    void setEnabled (bool);
+    void resetUsedCounter();
+    QString saveToDir (const QString &,const QString &,bool);
+    void setName (const QString&);         // prefix for exporting flags to dir
+    void setToolBar   (QToolBar *tb);
+    void setMasterRow (FlagRow *row);
+    void updateToolBar(const QStringList &activeNames);
+
+private:    
+    QToolBar *toolBar;
+    FlagRow *masterRow;
+    QList <Flag*> flags; 
+    QStringList activeNames;   //! Lists all names of currently active flags
+    QString rowName;           //! Name of this collection of flags
+};
+#endif
+
diff --git a/flagrowobj.cpp b/flagrowobj.cpp
new file mode 100644 (file)
index 0000000..a546312
--- /dev/null
@@ -0,0 +1,171 @@
+#include <QDebug>
+#include <QToolBar>
+
+#include "flag.h"
+#include "flagrowobj.h"
+
+#include "geometry.h"
+
+/////////////////////////////////////////////////////////////////
+// FlagRowObj
+/////////////////////////////////////////////////////////////////
+FlagRowObj::FlagRowObj()
+{
+//    qDebug() << "Const FlagRowObj ()";
+    init ();
+}
+
+FlagRowObj::FlagRowObj(QGraphicsItem *parent):MapObj(parent) 
+{
+//    qDebug() << "Const FlagRowObj (p)";
+    init ();
+}
+
+FlagRowObj::~FlagRowObj()
+{
+    //qDebug() << "Destr FlagRowObj";
+    while (!flag.isEmpty())
+       delete (flag.takeFirst() );
+}
+
+void FlagRowObj::init ()
+{
+    showFlags=true;
+}
+
+void FlagRowObj::copy (FlagRowObj* other)
+{
+    MapObj::copy(other);
+    flag.clear();
+    for (int i=0; i<flag.size(); ++i)
+       addFlag (flag.at(i));
+}
+
+void FlagRowObj::move(double x, double y)
+{
+    MapObj::move(x,y);
+    qreal dx=0;
+    for (int i=0; i<flag.size(); ++i)
+    {
+       flag.at(i)->move(x+dx,y);
+       dx+=QSizeF(flag.at(i)->getSize() ).width();
+    }
+}
+
+void FlagRowObj::moveBy(double x, double y)
+{
+    move (x+absPos.x(),y+absPos.y() );
+}
+
+void FlagRowObj::setZValue (double z)
+{
+    for (int i=0; i<flag.size(); ++i)
+       flag.at(i)->setZValue (z);
+}
+
+void FlagRowObj::setVisibility (bool v)
+{
+    MapObj::setVisibility(v);
+    for (int i=0; i<flag.size(); ++i)
+       flag.at(i)->setVisibility (v);
+}
+
+FlagObj* FlagRowObj::addFlag (FlagObj *fo)
+{
+    FlagObj *newfo=new FlagObj (parentItem() );
+    newfo->copy (fo);  // create a deep copy of fo
+    newfo->move (absPos.x() + bbox.width(), absPos.y() );
+    flag.append(newfo);
+    calcBBoxSize();
+    positionBBox();
+    return newfo;
+}
+
+QStringList FlagRowObj::activeFlagNames()
+{
+    QStringList list;
+    for (int i=0; i<flag.size(); ++i)
+       list.append (flag.at(i)->getName());
+    return list;
+}
+
+void FlagRowObj::positionBBox()
+{
+    bbox.moveTopLeft(absPos );
+    clickPoly=QPolygonF (bbox);
+}
+
+void FlagRowObj::calcBBoxSize()
+{
+    QSizeF size(0,0);
+    QSizeF boxsize(0,0);
+    for (int i=0; i<flag.size(); ++i)
+    {
+       size=flag.at(i)->getSize();
+       // add widths
+       boxsize.setWidth(boxsize.width() + size.width() );
+       // maximize height
+       if (size.height() > boxsize.height() ) 
+           boxsize.setHeight(size.height() );
+    }
+    bbox.setSize (boxsize);
+    clickPoly=QPolygonF (bbox);
+}
+
+QString FlagRowObj::getFlagName (const QPointF &p)
+{
+    if (!isInBox (p,clickPoly.boundingRect() )) return "";
+    for (int i=0; i<flag.size(); ++i)
+       if (isInBox (p,flag.at(i)->getClickPoly().boundingRect() )) return flag.at(i)->getName();
+    return ""; 
+}
+
+bool FlagRowObj::isActive (const QString &foname)
+{
+    FlagObj *fo=findFlag (foname);
+    if (fo) 
+       return true;
+    else
+       return false;
+}
+
+void FlagRowObj::activate (Flag *flag) 
+{
+    if (flag) 
+    {
+       FlagObj *fo=addFlag (new FlagObj (this));
+       fo->load (flag->getPixmap() );
+       fo->setName (flag->getName() );
+       fo->activate();
+       if (showFlags)  // necessary? only called from FIO::init
+           fo->setVisibility (visible);
+       else
+           fo->setVisibility (false);
+       calcBBoxSize();
+    }
+}
+
+void FlagRowObj::deactivate (const QString &foname)
+{
+    FlagObj *fo=findFlag (foname);
+    if (fo) 
+    {
+       flag.removeAll(fo);
+       delete (fo);
+    }  
+    calcBBoxSize();
+    positionBBox();
+}
+
+void FlagRowObj::setShowFlags (bool b)
+{
+    showFlags=b;
+}
+
+FlagObj* FlagRowObj::findFlag (const QString &name)
+{
+    for (int i=0; i<flag.size(); ++i)
+       if (flag.at(i)->getName()==name) return flag.at(i);
+    return NULL;
+}
+
diff --git a/flagrowobj.h b/flagrowobj.h
new file mode 100644 (file)
index 0000000..a3fc536
--- /dev/null
@@ -0,0 +1,41 @@
+#ifndef FLAGROWOBJ_H
+#define FLAGROWOBJ_H
+
+#include <QMainWindow>
+
+//#include "mapobj.h"
+#include "flagobj.h"
+
+class Flag;
+
+/*! \brief A collection of flags (FlagObj) in a map. 
+
+   The flags are aligned horizontally  in a row on the map. 
+ */
+
+class FlagRowObj:public MapObj {
+public:
+    FlagRowObj ();
+    FlagRowObj (QGraphicsItem*);
+    ~FlagRowObj ();
+    virtual void init ();
+    virtual void copy (FlagRowObj*);
+    virtual void move   (double,double);
+    virtual void moveBy (double,double);
+    virtual void setZValue (double z);
+    virtual void setVisibility(bool);
+    virtual FlagObj* addFlag (FlagObj *fo);        // make deep copy of FlagObj
+    virtual QStringList activeFlagNames();
+    virtual void positionBBox();
+    virtual void calcBBoxSize();
+    virtual QString getFlagName (const QPointF &p); // Find flag by position
+    bool isActive(const QString&);
+    void activate (Flag *flag);
+    void deactivate(const QString&);
+    void setShowFlags (bool);
+    FlagObj* findFlag (const QString&);
+private:    
+    QList <FlagObj*> flag; 
+    bool showFlags;                        // FloatObjects want to hide their flags
+};
+#endif
diff --git a/flags/flag-2arrow-down.png b/flags/flag-2arrow-down.png
new file mode 100644 (file)
index 0000000..4354fa0
Binary files /dev/null and b/flags/flag-2arrow-down.png differ
diff --git a/flags/flag-2arrow-up.png b/flags/flag-2arrow-up.png
new file mode 100644 (file)
index 0000000..b166c7a
Binary files /dev/null and b/flags/flag-2arrow-up.png differ
diff --git a/flags/flag-arrow-down.png b/flags/flag-arrow-down.png
new file mode 100644 (file)
index 0000000..ea9c00c
Binary files /dev/null and b/flags/flag-arrow-down.png differ
diff --git a/flags/flag-arrow-up.png b/flags/flag-arrow-up.png
new file mode 100644 (file)
index 0000000..d6c2b99
Binary files /dev/null and b/flags/flag-arrow-up.png differ
diff --git a/flags/flag-clock.png b/flags/flag-clock.png
new file mode 100644 (file)
index 0000000..e2e1745
Binary files /dev/null and b/flags/flag-clock.png differ
diff --git a/flags/flag-cross-red.png b/flags/flag-cross-red.png
new file mode 100644 (file)
index 0000000..8074159
Binary files /dev/null and b/flags/flag-cross-red.png differ
diff --git a/flags/flag-exclamationmark.png b/flags/flag-exclamationmark.png
new file mode 100644 (file)
index 0000000..c15b7b9
Binary files /dev/null and b/flags/flag-exclamationmark.png differ
diff --git a/flags/flag-flash.png b/flags/flag-flash.png
new file mode 100644 (file)
index 0000000..e4574d3
Binary files /dev/null and b/flags/flag-flash.png differ
diff --git a/flags/flag-heart.png b/flags/flag-heart.png
new file mode 100644 (file)
index 0000000..084c454
Binary files /dev/null and b/flags/flag-heart.png differ
diff --git a/flags/flag-hideexport.png b/flags/flag-hideexport.png
new file mode 100644 (file)
index 0000000..725b240
Binary files /dev/null and b/flags/flag-hideexport.png differ
diff --git a/flags/flag-hook-green.png b/flags/flag-hook-green.png
new file mode 100644 (file)
index 0000000..3252a16
Binary files /dev/null and b/flags/flag-hook-green.png differ
diff --git a/flags/flag-info.png b/flags/flag-info.png
new file mode 100644 (file)
index 0000000..bb4a944
Binary files /dev/null and b/flags/flag-info.png differ
diff --git a/flags/flag-lamp.png b/flags/flag-lamp.png
new file mode 100644 (file)
index 0000000..5dd5860
Binary files /dev/null and b/flags/flag-lamp.png differ
diff --git a/flags/flag-lifebelt.png b/flags/flag-lifebelt.png
new file mode 100644 (file)
index 0000000..71f5906
Binary files /dev/null and b/flags/flag-lifebelt.png differ
diff --git a/flags/flag-note.png b/flags/flag-note.png
new file mode 100644 (file)
index 0000000..294f528
Binary files /dev/null and b/flags/flag-note.png differ
diff --git a/flags/flag-phone.png b/flags/flag-phone.png
new file mode 100644 (file)
index 0000000..e680956
Binary files /dev/null and b/flags/flag-phone.png differ
diff --git a/flags/flag-present.png b/flags/flag-present.png
new file mode 100644 (file)
index 0000000..76b65c0
Binary files /dev/null and b/flags/flag-present.png differ
diff --git a/flags/flag-questionmark.png b/flags/flag-questionmark.png
new file mode 100644 (file)
index 0000000..2b87fa8
Binary files /dev/null and b/flags/flag-questionmark.png differ
diff --git a/flags/flag-rose.png b/flags/flag-rose.png
new file mode 100644 (file)
index 0000000..6bdabc8
Binary files /dev/null and b/flags/flag-rose.png differ
diff --git a/flags/flag-scrolled-right.png b/flags/flag-scrolled-right.png
new file mode 100644 (file)
index 0000000..b0533fa
Binary files /dev/null and b/flags/flag-scrolled-right.png differ
diff --git a/flags/flag-smiley-good.png b/flags/flag-smiley-good.png
new file mode 100644 (file)
index 0000000..49d678d
Binary files /dev/null and b/flags/flag-smiley-good.png differ
diff --git a/flags/flag-smiley-omb.png b/flags/flag-smiley-omb.png
new file mode 100644 (file)
index 0000000..9e16d53
Binary files /dev/null and b/flags/flag-smiley-omb.png differ
diff --git a/flags/flag-smiley-sad.png b/flags/flag-smiley-sad.png
new file mode 100644 (file)
index 0000000..34ecdb8
Binary files /dev/null and b/flags/flag-smiley-sad.png differ
diff --git a/flags/flag-stopsign.png b/flags/flag-stopsign.png
new file mode 100644 (file)
index 0000000..8de8409
Binary files /dev/null and b/flags/flag-stopsign.png differ
diff --git a/flags/flag-target.png b/flags/flag-target.png
new file mode 100644 (file)
index 0000000..7ecbe22
Binary files /dev/null and b/flags/flag-target.png differ
diff --git a/flags/flag-task-finished.png b/flags/flag-task-finished.png
new file mode 100644 (file)
index 0000000..e9d8ae5
Binary files /dev/null and b/flags/flag-task-finished.png differ
diff --git a/flags/flag-task-new-morning.png b/flags/flag-task-new-morning.png
new file mode 100644 (file)
index 0000000..dbcd2e9
Binary files /dev/null and b/flags/flag-task-new-morning.png differ
diff --git a/flags/flag-task-new-sleeping.png b/flags/flag-task-new-sleeping.png
new file mode 100644 (file)
index 0000000..014f070
Binary files /dev/null and b/flags/flag-task-new-sleeping.png differ
diff --git a/flags/flag-task-new.png b/flags/flag-task-new.png
new file mode 100644 (file)
index 0000000..f0af0b6
Binary files /dev/null and b/flags/flag-task-new.png differ
diff --git a/flags/flag-task-wip-morning.png b/flags/flag-task-wip-morning.png
new file mode 100644 (file)
index 0000000..3758453
Binary files /dev/null and b/flags/flag-task-wip-morning.png differ
diff --git a/flags/flag-task-wip-sleeping.png b/flags/flag-task-wip-sleeping.png
new file mode 100644 (file)
index 0000000..7d9f2e2
Binary files /dev/null and b/flags/flag-task-wip-sleeping.png differ
diff --git a/flags/flag-task-wip.png b/flags/flag-task-wip.png
new file mode 100644 (file)
index 0000000..db81875
Binary files /dev/null and b/flags/flag-task-wip.png differ
diff --git a/flags/flag-task.png b/flags/flag-task.png
new file mode 100644 (file)
index 0000000..e3faccb
Binary files /dev/null and b/flags/flag-task.png differ
diff --git a/flags/flag-thumb-down.png b/flags/flag-thumb-down.png
new file mode 100644 (file)
index 0000000..cb963d2
Binary files /dev/null and b/flags/flag-thumb-down.png differ
diff --git a/flags/flag-thumb-up.png b/flags/flag-thumb-up.png
new file mode 100644 (file)
index 0000000..78a15e4
Binary files /dev/null and b/flags/flag-thumb-up.png differ
diff --git a/flags/flag-tmpUnscrolled-right.png b/flags/flag-tmpUnscrolled-right.png
new file mode 100644 (file)
index 0000000..86020b5
Binary files /dev/null and b/flags/flag-tmpUnscrolled-right.png differ
diff --git a/flags/flag-url-16x16.png b/flags/flag-url-16x16.png
new file mode 100644 (file)
index 0000000..44368e2
Binary files /dev/null and b/flags/flag-url-16x16.png differ
diff --git a/flags/flag-url-bugzilla-novell-closed.png b/flags/flag-url-bugzilla-novell-closed.png
new file mode 100644 (file)
index 0000000..3635063
Binary files /dev/null and b/flags/flag-url-bugzilla-novell-closed.png differ
diff --git a/flags/flag-url-bugzilla-novell.png b/flags/flag-url-bugzilla-novell.png
new file mode 100644 (file)
index 0000000..e5bc0b9
Binary files /dev/null and b/flags/flag-url-bugzilla-novell.png differ
diff --git a/flags/flag-url.png b/flags/flag-url.png
new file mode 100644 (file)
index 0000000..75ca5ac
Binary files /dev/null and b/flags/flag-url.png differ
diff --git a/flags/flag-urlnew.png b/flags/flag-urlnew.png
new file mode 100644 (file)
index 0000000..23d822f
Binary files /dev/null and b/flags/flag-urlnew.png differ
diff --git a/flags/flag-vymlink.png b/flags/flag-vymlink.png
new file mode 100644 (file)
index 0000000..5acc92b
Binary files /dev/null and b/flags/flag-vymlink.png differ
diff --git a/flags/flag-vymlinknew.png b/flags/flag-vymlinknew.png
new file mode 100644 (file)
index 0000000..aa56732
Binary files /dev/null and b/flags/flag-vymlinknew.png differ
diff --git a/flags/flag-wip.png b/flags/flag-wip.png
new file mode 100644 (file)
index 0000000..b1dc715
Binary files /dev/null and b/flags/flag-wip.png differ
diff --git a/flags/freemind/attach.png b/flags/freemind/attach.png
new file mode 100644 (file)
index 0000000..56ad0a8
Binary files /dev/null and b/flags/freemind/attach.png differ
diff --git a/flags/freemind/back.png b/flags/freemind/back.png
new file mode 100644 (file)
index 0000000..d1ac1ea
Binary files /dev/null and b/flags/freemind/back.png differ
diff --git a/flags/freemind/bell.png b/flags/freemind/bell.png
new file mode 100644 (file)
index 0000000..8afab9d
Binary files /dev/null and b/flags/freemind/bell.png differ
diff --git a/flags/freemind/bookmark.png b/flags/freemind/bookmark.png
new file mode 100644 (file)
index 0000000..67f1832
Binary files /dev/null and b/flags/freemind/bookmark.png differ
diff --git a/flags/freemind/clanbomber.png b/flags/freemind/clanbomber.png
new file mode 100644 (file)
index 0000000..16679ba
Binary files /dev/null and b/flags/freemind/clanbomber.png differ
diff --git a/flags/freemind/desktopnew.png b/flags/freemind/desktopnew.png
new file mode 100644 (file)
index 0000000..366368f
Binary files /dev/null and b/flags/freemind/desktopnew.png differ
diff --git a/flags/freemind/flag.png b/flags/freemind/flag.png
new file mode 100644 (file)
index 0000000..133e393
Binary files /dev/null and b/flags/freemind/flag.png differ
diff --git a/flags/freemind/forward.png b/flags/freemind/forward.png
new file mode 100644 (file)
index 0000000..ffe11d2
Binary files /dev/null and b/flags/freemind/forward.png differ
diff --git a/flags/freemind/gohome.png b/flags/freemind/gohome.png
new file mode 100644 (file)
index 0000000..30fbda2
Binary files /dev/null and b/flags/freemind/gohome.png differ
diff --git a/flags/freemind/help.png b/flags/freemind/help.png
new file mode 100644 (file)
index 0000000..aa35b28
Binary files /dev/null and b/flags/freemind/help.png differ
diff --git a/flags/freemind/idea.png b/flags/freemind/idea.png
new file mode 100644 (file)
index 0000000..df2a2cc
Binary files /dev/null and b/flags/freemind/idea.png differ
diff --git a/flags/freemind/kaddressbook.png b/flags/freemind/kaddressbook.png
new file mode 100644 (file)
index 0000000..8bfe4ae
Binary files /dev/null and b/flags/freemind/kaddressbook.png differ
diff --git a/flags/freemind/knotify.png b/flags/freemind/knotify.png
new file mode 100644 (file)
index 0000000..0104e72
Binary files /dev/null and b/flags/freemind/knotify.png differ
diff --git a/flags/freemind/korn.png b/flags/freemind/korn.png
new file mode 100644 (file)
index 0000000..a4e9107
Binary files /dev/null and b/flags/freemind/korn.png differ
diff --git a/flags/freemind/licq.png b/flags/freemind/licq.png
new file mode 100644 (file)
index 0000000..34f8cce
Binary files /dev/null and b/flags/freemind/licq.png differ
diff --git a/flags/freemind/mail.png b/flags/freemind/mail.png
new file mode 100644 (file)
index 0000000..beea00e
Binary files /dev/null and b/flags/freemind/mail.png differ
diff --git a/flags/freemind/password.png b/flags/freemind/password.png
new file mode 100644 (file)
index 0000000..5e86bbb
Binary files /dev/null and b/flags/freemind/password.png differ
diff --git a/flags/freemind/pencil.png b/flags/freemind/pencil.png
new file mode 100644 (file)
index 0000000..a815a24
Binary files /dev/null and b/flags/freemind/pencil.png differ
diff --git a/flags/freemind/penguin.png b/flags/freemind/penguin.png
new file mode 100644 (file)
index 0000000..0f61ec5
Binary files /dev/null and b/flags/freemind/penguin.png differ
diff --git a/flags/freemind/priority-1.png b/flags/freemind/priority-1.png
new file mode 100644 (file)
index 0000000..3130126
Binary files /dev/null and b/flags/freemind/priority-1.png differ
diff --git a/flags/freemind/priority-2.png b/flags/freemind/priority-2.png
new file mode 100644 (file)
index 0000000..9dd6b2e
Binary files /dev/null and b/flags/freemind/priority-2.png differ
diff --git a/flags/freemind/priority-3.png b/flags/freemind/priority-3.png
new file mode 100644 (file)
index 0000000..be1440c
Binary files /dev/null and b/flags/freemind/priority-3.png differ
diff --git a/flags/freemind/priority-4.png b/flags/freemind/priority-4.png
new file mode 100644 (file)
index 0000000..161c9fb
Binary files /dev/null and b/flags/freemind/priority-4.png differ
diff --git a/flags/freemind/priority-5.png b/flags/freemind/priority-5.png
new file mode 100644 (file)
index 0000000..18ef1ce
Binary files /dev/null and b/flags/freemind/priority-5.png differ
diff --git a/flags/freemind/priority-6.png b/flags/freemind/priority-6.png
new file mode 100644 (file)
index 0000000..3e93a56
Binary files /dev/null and b/flags/freemind/priority-6.png differ
diff --git a/flags/freemind/priority-7.png b/flags/freemind/priority-7.png
new file mode 100644 (file)
index 0000000..caee91d
Binary files /dev/null and b/flags/freemind/priority-7.png differ
diff --git a/flags/freemind/stop.png b/flags/freemind/stop.png
new file mode 100644 (file)
index 0000000..981c4cf
Binary files /dev/null and b/flags/freemind/stop.png differ
diff --git a/flags/freemind/warning.png b/flags/freemind/warning.png
new file mode 100644 (file)
index 0000000..afc9c9c
Binary files /dev/null and b/flags/freemind/warning.png differ
diff --git a/flags/freemind/wizard.png b/flags/freemind/wizard.png
new file mode 100644 (file)
index 0000000..93a1d91
Binary files /dev/null and b/flags/freemind/wizard.png differ
diff --git a/flags/freemind/xmag.png b/flags/freemind/xmag.png
new file mode 100644 (file)
index 0000000..32a4a15
Binary files /dev/null and b/flags/freemind/xmag.png differ
diff --git a/floatimageobj.cpp b/floatimageobj.cpp
new file mode 100644 (file)
index 0000000..44b1897
--- /dev/null
@@ -0,0 +1,125 @@
+#include <QDebug>
+#include <QImageReader>
+
+#include "floatimageobj.h"
+#include "branchobj.h"
+
+
+/////////////////////////////////////////////////////////////////
+// FloatImageObj 
+/////////////////////////////////////////////////////////////////
+
+FloatImageObj::FloatImageObj (QGraphicsItem * parent,TreeItem *ti):FloatObj(parent,ti)
+{
+    //qDebug() << "Const FloatImageObj this="<<this<<"  ti="<<ti;
+    icon=new ImageObj (parent);
+    icon->setPos (absPos.x(), absPos.y() );
+    icon->setVisibility (true);
+    clickPoly=bbox;
+    useRelPos=true;
+
+    //Hide flags
+    systemFlags->setShowFlags(false);
+
+//    setLinkStyle (LinkableMapObj::Parabel);
+}
+
+FloatImageObj::~FloatImageObj ()
+{
+//  qDebug() << "Destr FloatImageObj "<<this<<"";
+    delete(icon);
+}
+
+void FloatImageObj::copy (FloatImageObj* other)
+{                  
+    FloatObj::copy (other);
+    icon->copy (other->icon);
+    positionBBox();
+}
+
+void FloatImageObj::setZValue (const int &i)
+{
+
+//    qDebug()<<"FIO::setZValue z="<<i;
+//    qDebug()<<"  icon="<<icon;
+//    qDebug()<<"  this="<<this;        
+    icon->setZValue (i);
+}
+
+int FloatImageObj::z ()
+{
+    return qRound (icon->zValue());
+}
+
+void FloatImageObj::load (const QImage &img)
+{
+    icon->load(QPixmap::fromImage(img));
+    if (!icon->parentItem() ) icon->setParentItem(this);  // Add to scene initially
+    bbox.setSize ( QSizeF(
+            icon->boundingRect().width(), 
+            icon->boundingRect().height()));
+    clickPoly=bbox;
+    positionBBox();
+}
+
+void FloatImageObj::setParObj (QGraphicsItem *p)
+{
+    setParentItem (p);
+    icon->setParentItem (p);
+    parObj=(LinkableMapObj*)p;
+/*
+    qDebug()<<"FIO::setParentItem";
+    qDebug()<<"  this="<<this;
+    qDebug()<<"  icon="<<icon;
+*/
+}
+
+void FloatImageObj::setVisibility(bool v)
+{
+    OrnamentedObj::setVisibility(v);
+    if (v)
+       icon->setVisibility(true);
+    else
+       icon->setVisibility(false);
+}
+
+void FloatImageObj::moveCenter (double x, double y)
+{
+    FloatObj::moveCenter(x, y);
+    icon->setPos(bbox.topLeft() );
+}
+
+void FloatImageObj::move (double x, double y)
+{
+    FloatObj::move(x,y);
+    icon->setPos (x,y); 
+    positionBBox();
+}
+
+void FloatImageObj::move (QPointF p)
+{
+    FloatImageObj::move (p.x(),p.y());
+}
+
+void FloatImageObj::positionBBox()
+{
+    clickPoly=QPolygonF(bbox);
+    setZValue (dZ_FLOATIMG);
+}
+
+void FloatImageObj::calcBBoxSize()
+{
+    // TODO
+}
+
+QRectF FloatImageObj::getBBoxSizeWithChildren()
+{
+    //TODO abstract in linkablemapobj.h, not calculated
+    return bboxTotal;
+}
+
+void FloatImageObj::calcBBoxSizeWithChildren()
+{
+    //TODO abstract in linkablemapobj.h
+}
+
diff --git a/floatimageobj.h b/floatimageobj.h
new file mode 100644 (file)
index 0000000..8a9eef4
--- /dev/null
@@ -0,0 +1,35 @@
+#ifndef FLOATIMAGEOBJ_H
+#define FLOATIMAGEOBJ_H
+
+#include "floatobj.h"
+#include <QPixmap>
+
+class TreeItem;
+/*! \brief A pixmap which can be positioned freely on the map.  */
+
+
+/////////////////////////////////////////////////////////////////////////////
+class FloatImageObj:public FloatObj {
+public:
+    FloatImageObj (QGraphicsItem*,TreeItem *ti=NULL);
+    ~FloatImageObj ();
+    virtual void copy (FloatImageObj*);
+    virtual void setZValue (const int&);
+    virtual int z();
+
+    virtual void load (const QImage &);
+    virtual void setParObj (QGraphicsItem*);
+    virtual void setVisibility(bool);      // set vis. for w
+    virtual void moveCenter (double x,double y);
+    virtual void move (double x,double y);
+    virtual void move (QPointF);
+    virtual void positionBBox();
+    virtual void calcBBoxSize();
+    virtual QRectF getBBoxSizeWithChildren();  // return size of BBox including children  
+    virtual void calcBBoxSizeWithChildren();   // calc size of  BBox including children recursivly
+
+protected:
+    ImageObj *icon;
+};
+
+#endif
diff --git a/floatobj.cpp b/floatobj.cpp
new file mode 100644 (file)
index 0000000..799f236
--- /dev/null
@@ -0,0 +1,110 @@
+#include <QDebug>
+
+#include "floatobj.h"
+#include "mapitem.h"
+
+extern bool debug;
+
+/////////////////////////////////////////////////////////////////
+// FloatObj
+/////////////////////////////////////////////////////////////////
+
+FloatObj::FloatObj (QGraphicsItem *parent, TreeItem *ti):OrnamentedObj(parent,ti)
+{
+    //qDebug() << "Const FloatObj s="<<s<<"  ti="<<ti<<"  treeItem="<<treeItem;
+    init();
+}
+
+FloatObj::~FloatObj ()
+{
+//   qDebug() << "Destr FloatObj";
+}
+
+void FloatObj::init () 
+{
+    setLinkStyle (LinkableMapObj::Parabel);
+    ((MapItem*)treeItem)->setHideLinkUnselected(true);
+}
+
+void FloatObj::copy (FloatObj* other)
+{
+    LinkableMapObj::copy (other);
+    setVisibility (other->visible);
+}
+
+void FloatObj::move (double x, double y)   
+{
+    MapObj::move(x,y);
+}
+
+void FloatObj::move (QPointF p)
+{
+    FloatObj::move(p.x(), p.y());
+}
+
+void FloatObj::moveCenter (double x, double y)
+{
+    absPos=QPointF(x,y);
+    bbox.moveTo(x - bbox.width()/2, y - bbox.height()/2 );
+    clickPoly=QPolygonF (bbox);
+}
+
+void FloatObj::moveCenter2RelPos(double x, double y)  
+{
+    setRelPos (QPointF(x,y));
+    if (parObj)
+    {
+       QPointF p=parObj->getFloatRefPos();
+       moveCenter (p.x() + x, p.y() + y);
+    }
+}
+
+void FloatObj::move2RelPos(double x, double y)  // overloaded to use floatRefPos instead of childRefPos
+{
+    setRelPos (QPointF(x,y));
+    if (parObj)
+    {
+       QPointF p=parObj->getFloatRefPos();
+       move (p.x() + x, p.y() + y);
+    }
+}
+
+void FloatObj::move2RelPos(QPointF p)           // overloaded to use floatRefPos instead of childRefPos
+{
+    move2RelPos (p.x(), p.y());
+}
+
+void FloatObj::setRelPos()
+{
+    if (parObj)
+       setRelPos (absPos - parObj->getFloatRefPos() );
+    else
+       qWarning()<<"FO::setRelPos parObj==0   this="<<this;
+}
+
+void FloatObj::setRelPos(const QPointF &p)
+{
+    if (parObj)
+    {      
+       relPos=p;
+       useRelPos=true;
+    }  else
+       qWarning()<<"LMO::setRelPos (p)  parObj==0   this="<<this;
+}
+
+void FloatObj::setDockPos()
+{
+    parPos=absPos;
+}
+
+void FloatObj::reposition()
+{
+    moveCenter2RelPos (relPos.x(), relPos.y());
+    updateLinkGeometry();   
+}
+
+QRectF FloatObj::getBBoxSizeWithChildren()
+{
+    return bboxTotal;
+}
+
diff --git a/floatobj.h b/floatobj.h
new file mode 100644 (file)
index 0000000..cc0a811
--- /dev/null
@@ -0,0 +1,30 @@
+#ifndef FLOATOBJ_H
+#define FLOATOBJ_H
+
+#include "ornamentedobj.h"
+
+/*! \brief Base class for objects floating in the map, which means they can be positioned freely. */
+
+
+/////////////////////////////////////////////////////////////////////////////
+class FloatObj:public OrnamentedObj {
+public:
+    FloatObj (QGraphicsItem*,TreeItem *ti=NULL);
+    ~FloatObj ();
+    virtual void init ();
+    virtual void copy (FloatObj*);
+    virtual void move (double,double);
+    virtual void move (QPointF);
+    virtual void moveCenter (double x,double y);
+    virtual void moveCenter2RelPos(double x, double y);
+    virtual void move2RelPos(double x, double y);
+    virtual void move2RelPos(QPointF p);
+    virtual void setRelPos();
+    virtual void setRelPos(const QPointF &p);
+    virtual void setDockPos();
+    virtual void reposition();
+                                           
+    virtual QRectF getBBoxSizeWithChildren();  // return size of BBox including children  
+};
+
+#endif
diff --git a/frameobj.cpp b/frameobj.cpp
new file mode 100644 (file)
index 0000000..e1cd434
--- /dev/null
@@ -0,0 +1,455 @@
+#include "frameobj.h"
+
+#include <QColor>
+#include <QDebug>
+#include <QGraphicsScene>
+
+#include "misc.h"  //for roof function
+
+/////////////////////////////////////////////////////////////////
+// FrameObj
+/////////////////////////////////////////////////////////////////
+FrameObj::FrameObj(QGraphicsItem *parent) :MapObj(parent)
+{
+    init ();
+}
+
+FrameObj::~FrameObj()
+{
+    clear();
+}
+
+void FrameObj::init()
+{
+    type=NoFrame;
+    clear();
+    borderWidth=1;
+    penColor=QColor (Qt::black);
+    brushColor=QColor (Qt::white);
+    includeChildren=false;
+}
+
+void FrameObj::clear()
+{
+    switch (type)
+    {
+       case NoFrame:
+           break;
+       case Rectangle:
+           delete rectFrame;
+           break;
+       case RoundedRectangle:
+           delete pathFrame;
+           break;
+       case Ellipse:
+           delete ellipseFrame;
+           break;
+       case Cloud:
+           delete pathFrame;
+           break;
+    }
+    type=NoFrame;
+    padding=0; // No frame requires also no padding
+    xsize=0;
+}
+
+void FrameObj::move(double x, double y)
+{
+    switch (type)
+    {
+       case NoFrame:
+           break;
+       case Rectangle:
+           rectFrame->setPos (x,y);
+           break;
+       case RoundedRectangle:
+           pathFrame->setPos (x,y);
+           break;
+       case Ellipse:
+           ellipseFrame->setPos (x,y);
+            break;
+       case Cloud:
+           pathFrame->setPos (x,y);
+           break;
+    }
+}
+
+void FrameObj::moveBy(double x, double y)
+{
+    MapObj::moveBy (x,y);
+}
+
+void FrameObj::positionBBox()
+{
+}
+
+void FrameObj::calcBBoxSize()
+{
+}
+
+void FrameObj::setRect(const QRectF &r)
+{
+    bbox=r;
+    switch (type)
+       {
+       case NoFrame:
+           break;
+
+       case Rectangle:
+           rectFrame->setRect (QRectF(bbox.x(),bbox.y(),bbox.width(),bbox.height() ));
+           break;
+
+       case RoundedRectangle:
+       {
+           QPointF tl=bbox.topLeft();
+           QPointF tr=bbox.topRight();
+           QPointF bl=bbox.bottomLeft();
+           QPointF br=bbox.bottomRight();
+           QPainterPath path;
+
+           qreal n=10;
+           path.moveTo (tl.x() +n/2, tl.y());
+
+           // Top path
+           path.lineTo (tr.x()-n, tr.y());
+           path.arcTo  (tr.x()-n, tr.y(), n, n,90,-90);
+           path.lineTo (br.x()  , br.y()-n);
+           path.arcTo  (br.x()-n, br.y()-n, n, n,0,-90);
+           path.lineTo (bl.x()+n, br.y());
+           path.arcTo  (bl.x()  , bl.y()-n, n, n,-90,-90);
+           path.lineTo (tl.x()  , tl.y()+n);
+           path.arcTo  (tl.x()  , tl.y(), n, n,180,-90);
+           pathFrame->setPath(path);
+       }
+           break;
+       case Ellipse:
+           ellipseFrame->setRect (QRectF(bbox.x(),bbox.y(),bbox.width(),bbox.height() ));
+            xsize=20;//max(bbox.width(), bbox.height()) / 4;
+           break;
+
+       case Cloud:
+           QPointF tl=bbox.topLeft();
+           QPointF tr=bbox.topRight();
+           QPointF bl=bbox.bottomLeft();
+           QPainterPath path;
+           path.moveTo (tl);
+
+           float w=bbox.width();   // width
+           float h=bbox.height();  // height
+           int n=w/40;             // number of intervalls
+           float d=w/n;            // width of interwall
+
+           // Top path
+           for (float i=0; i<n; i++)
+           {
+               path.cubicTo (
+                   tl.x() + i*d,     tl.y()- 100*roof ((i+0.5)/n) , 
+                   tl.x() + (i+1)*d, tl.y()- 100*roof ((i+0.5)/n) , 
+                   tl.x() + (i+1)*d + 20*roof ((i+1)/n), tl.y()- 50*roof((i+1)/n) );
+           }
+           // Right path
+           n=h/20;
+           d=h/n;
+           for (float i=0; i<n; i++)
+           {
+               path.cubicTo (
+                   tr.x()+ 100*roof ((i+0.5)/n)        , tr.y() + i*d,
+                   tr.x()+ 100*roof ((i+0.5)/n)        , tr.y() + (i+1)*d,
+                   tr.x() + 60*roof ((i+1)/n)          , tr.y() + (i+1)*d );
+           }
+           n=w/60;
+           d=w/n;
+           // Bottom path
+           for (float i=n; i>0; i--)
+           {
+               path.cubicTo (
+                   bl.x() + i*d,  bl.y()+ 100*roof ((i-0.5)/n) , 
+                   bl.x() + (i-1)*d,      bl.y()+ 100*roof ((i-0.5)/n) , 
+                   bl.x() + (i-1)*d + 20*roof ((i-1)/n), bl.y()+ 50*roof((i-1)/n) );
+           }
+           // Left path
+           n=h/20;
+           d=h/n;
+           for (float i=n; i>0; i--)
+           {
+               path.cubicTo (
+                   tl.x()- 100*roof ((i-0.5)/n)        , tr.y() + i*d,
+                   tl.x()- 100*roof ((i-0.5)/n)        , tr.y() + (i-1)*d,
+                   tl.x()-  60*roof ((i-1)/n)          , tr.y() + (i-1)*d );
+           }
+           pathFrame->setPath(path);
+            xsize=50;
+           break;
+    }
+}
+
+void FrameObj::setPadding (const int &i)
+{
+    padding=i;
+}
+
+int FrameObj::getPadding()
+{
+    if (type==NoFrame)
+       return 0;
+    else
+       return padding;
+}
+
+qreal FrameObj::getTotalPadding()
+{
+    return xsize  + padding + borderWidth; 
+}
+
+qreal FrameObj::getXPadding()
+{
+    return xsize; 
+}
+
+void FrameObj::setBorderWidth (const int &i)
+{
+    borderWidth=i;
+    repaint();
+}
+
+int FrameObj::getBorderWidth()
+{
+    return borderWidth;
+}
+
+FrameObj::FrameType FrameObj::getFrameType()
+{
+    return type;
+}
+
+FrameObj::FrameType FrameObj::getFrameType(const QString &s)
+{
+    if (s=="Rectangle")
+       return Rectangle;
+    else if (s=="RoundedRectangle")
+       return RoundedRectangle;
+    else if (s=="Ellipse")
+       return Ellipse;
+    else if (s=="Cloud")
+       return Cloud;
+    return NoFrame;    
+}
+
+QString FrameObj::getFrameTypeName()
+{
+    switch (type)
+    {
+       case Rectangle:
+           return "Rectangle";
+           break;
+       case RoundedRectangle:
+           return "RoundedRectangle";
+           break;
+       case Ellipse:
+           return "Ellipse";
+           break;
+       case Cloud:
+           return "Cloud";
+           break;
+       default:
+           return "NoFrame";
+    }
+}
+
+void FrameObj::setFrameType(const FrameType &t)
+{
+    if (t!=type)
+    {
+        clear();
+        type=t;
+        switch (type)
+        {
+            case NoFrame:
+                break;
+            case Rectangle:
+                rectFrame = scene()->addRect(QRectF(0,0,0,0), QPen(penColor), brushColor);
+                rectFrame->setZValue(dZ_FRAME_LOW);
+                rectFrame->setParentItem (this);
+                rectFrame->show();
+                break;
+            case RoundedRectangle:
+                {
+                    QPainterPath path;
+                    pathFrame = scene()->addPath(path, QPen(penColor), brushColor);
+                    pathFrame->setZValue(dZ_FRAME_LOW);
+                    pathFrame->setParentItem (this);
+                    pathFrame->show();
+                }
+                break;
+            case Ellipse:
+                ellipseFrame = scene()->addEllipse(QRectF(0,0,0,0), QPen(penColor), brushColor);
+                ellipseFrame->setZValue(dZ_FRAME_LOW);
+                ellipseFrame->setParentItem (this);
+                ellipseFrame->show();
+                break;
+            case Cloud:
+                {
+                    QPainterPath path;
+                    pathFrame = scene()->addPath(path, QPen(penColor), brushColor);
+                    pathFrame->setZValue(dZ_FRAME_LOW);
+                    pathFrame->setParentItem (this);
+                    pathFrame->show();
+                    break;
+                }
+        }
+    }
+    setVisibility (visible);
+}
+
+void FrameObj::setFrameType(const QString &t)
+{
+    if (t=="Rectangle")
+       FrameObj::setFrameType (Rectangle);
+    else if (t=="RoundedRectangle")  
+       FrameObj::setFrameType (RoundedRectangle);
+    else if (t=="Ellipse")  
+       FrameObj::setFrameType (Ellipse);
+    else if (t=="Cloud")  
+       FrameObj::setFrameType (Cloud);
+    else    
+       FrameObj::setFrameType (NoFrame);
+}
+
+void FrameObj::setPenColor (QColor col)
+{
+    penColor=col;
+    repaint();
+}
+
+QColor FrameObj::getPenColor ()
+{
+    return penColor;
+}
+
+void FrameObj::setBrushColor (QColor col)
+{
+    brushColor=col;
+    repaint();
+}
+
+QColor FrameObj::getBrushColor ()
+{
+    return brushColor;
+}
+
+void FrameObj::setFrameIncludeChildren(bool b)
+{
+    includeChildren=b;
+}
+
+bool FrameObj::getFrameIncludeChildren()
+{
+    return includeChildren;
+}
+
+void FrameObj::repaint()
+{
+    QPen pen;
+    pen.setColor (penColor);
+    pen.setWidth (borderWidth);
+    QBrush brush (brushColor);
+    switch (type)
+    {
+       case Rectangle:
+           rectFrame->setPen   (pen);
+           rectFrame->setBrush (brush);
+           break;
+       case RoundedRectangle:
+           pathFrame->setPen   (pen);
+           pathFrame->setBrush (brush);
+           break;
+       case Ellipse:
+           ellipseFrame->setPen   (pen);
+           ellipseFrame->setBrush (brush);
+           break;
+       case Cloud:
+           pathFrame->setPen   (pen);
+           pathFrame->setBrush (brush);
+           break;
+       default:
+           break;
+    }
+}
+
+void FrameObj::setZValue (double z)
+{
+    switch (type)
+    {
+       case NoFrame:
+           break;
+       case Rectangle:
+           rectFrame->setZValue (z);
+           break;
+       case RoundedRectangle:
+           pathFrame->setZValue (z);
+           break;
+       case Ellipse:
+           ellipseFrame->setZValue (z);
+           break;
+       case Cloud:
+           pathFrame->setZValue (z);
+           break;
+    }
+}
+
+void FrameObj::setVisibility (bool v)
+{
+    MapObj::setVisibility(v);
+    switch (type)
+    {
+       case NoFrame:
+           break;
+       case Rectangle:
+           if (visible)
+               rectFrame->show();
+           else    
+               rectFrame->hide();
+           break;
+       case RoundedRectangle:
+           if (visible)
+               pathFrame->show();
+           else    
+               pathFrame->hide();
+           break;
+       case Ellipse:
+           if (visible)
+               ellipseFrame->show();
+           else    
+               ellipseFrame->hide();
+           break;
+       case Cloud:
+           if (visible)
+               pathFrame->show();
+           else    
+               pathFrame->hide();
+           break;
+    }
+}
+
+QString FrameObj::saveToDir ()
+{
+    QString frameTypeAttr=attribut ("frameType",getFrameTypeName());
+    if (type==NoFrame) 
+       return singleElement ("frame", frameTypeAttr);
+
+    QString penColAttr=attribut ("penColor",penColor.name() );
+    QString brushColAttr=attribut ("brushColor",brushColor.name() );
+    QString paddingAttr=attribut ("padding",QString::number (padding) );
+    QString borderWidthAttr=attribut ("borderWidth",QString::number (borderWidth) );
+    QString incChildren;
+    if (includeChildren)
+       incChildren=attribut ("includeChildren","true");
+    return singleElement (
+       "frame",frameTypeAttr + 
+       penColAttr + 
+       brushColAttr +
+       paddingAttr +
+       borderWidthAttr +
+       incChildren);
+}
+
diff --git a/frameobj.h b/frameobj.h
new file mode 100644 (file)
index 0000000..ea5fc06
--- /dev/null
@@ -0,0 +1,60 @@
+#ifndef FRAMEOBJ_H
+#define FRAMEOBJ_H
+
+#include "mapobj.h"
+
+
+/*! \brief This class adds a frame to a MapObj. 
+*/
+
+class FrameObj:public MapObj {
+public:
+
+    /*! \brief Supported frame types */
+    enum FrameType {NoFrame,Rectangle,RoundedRectangle,Ellipse,Cloud};
+
+    FrameObj(QGraphicsItem *parent);
+    ~FrameObj();
+    void init();
+    void clear();
+    void move (double x,double y);  // move to absolute Position
+    void moveBy (double x,double y);// move to relative Position
+    void positionBBox();            
+    void calcBBoxSize();           
+    void setRect (const QRectF &);   // set dimensions         
+    void setPadding(const int &);
+    int getPadding();
+    qreal getTotalPadding();         // padding + borderwidth + xsize (e.g. cloud)
+    qreal getXPadding();
+    void setBorderWidth (const int &);
+    int getBorderWidth ();
+    FrameType getFrameType ();
+    FrameType getFrameType (const QString &);
+    QString getFrameTypeName ();
+    void setFrameType (const FrameType &);
+    void setFrameType (const QString &);
+    void setPenColor (QColor);
+    QColor getPenColor ();
+    void setBrushColor (QColor);
+    QColor getBrushColor ();
+    void setFrameIncludeChildren(bool);
+    bool getFrameIncludeChildren();
+    void repaint();
+    void setZValue (double z);
+    void setVisibility(bool);
+    QString saveToDir ();
+
+private:
+    FrameType type;        //!< Frame type
+    QGraphicsRectItem * rectFrame;
+    QGraphicsEllipseItem * ellipseFrame;
+    QGraphicsPathItem *pathFrame;
+    int padding;           // distance text - frame
+    int borderWidth;
+    qreal xsize;            //! Extra size caused e.g. by cloud geometry
+    QColor penColor;
+    QColor brushColor;
+    bool includeChildren;
+};
+#endif
+
diff --git a/geometry.cpp b/geometry.cpp
new file mode 100644 (file)
index 0000000..54e86bb
--- /dev/null
@@ -0,0 +1,385 @@
+#include "geometry.h"
+
+#include <math.h>
+#include "misc.h"
+
+#include <QString>
+
+#include <iostream>
+using namespace std;
+
+
+QRectF addBBox(QRectF r1, QRectF r2)
+{   
+    // Find smallest QRectF containing given rectangles
+
+    QRectF n;
+    // Set left border
+    if (r1.left() <= r2.left() )
+       n.setLeft(r1.left() );
+    else
+       n.setLeft(r2.left() );
+       
+    // Set top border      
+    if (r1.top() <= r2.top() )
+       n.setTop(r1.top() );
+    else
+       n.setTop(r2.top() );
+       
+    // Set right border
+    if (r1.right() <= r2.right() )
+       n.setRight(r2.right() );
+    else
+       n.setRight(r1.right() );
+       
+    // Set bottom 
+    if (r1.bottom() <= r2.bottom() )
+       n.setBottom(r2.bottom() );
+    else
+       n.setBottom(r1.bottom() );
+    return n;
+}
+
+QSize addBBoxSize (QSize s1, QSize s2)
+{   
+    // Find the minimimum smallest QSize which could include 2 given sizes
+
+    QSize s=s1;
+    if (s1.width() <= s2.width() )
+       s.setWidth (s2.width() );
+    if (s1.height() <= s2.height() )
+       s.setHeight(s2.height() ); 
+    return s;
+}
+
+bool isInBox(const QPointF &p, const QRectF &box)
+{
+    if (p.x() >= box.left() && p.x() <= box.right()  
+    && p.y() <= box.bottom() && p.y() >= box.top() )
+       return true;
+    return false;   
+}
+
+qreal Geometry::distance (const QPointF &p, const QPointF &q)
+{
+    return sqrt (p.x()*q.x() + p.y()*q.y());
+}
+
+Vector::Vector ():QPointF ()
+{
+}
+
+Vector::Vector (const QPointF &p):QPointF (p)
+{
+}
+
+Vector::Vector (qreal x, qreal y):QPointF (x,y)
+{
+}
+
+Vector::~Vector ()
+{
+}
+
+//! Check if length is 0
+bool Vector::isNull()
+{
+    if (x()==0 && y()==0)
+       return true;
+    return false;   
+}
+
+//! Normalize vector
+void Vector::normalize ()
+{
+    if (isNull() ) return;
+    qreal l=sqrt ( x()*x() + y()*y() );
+    setX (x()/l);
+    setY (y()/l);
+}
+
+//! Dot product of two vectors
+qreal Vector::dotProduct (const QPointF &b)
+{
+    return x()*b.x() + y()*b.y();
+}
+
+
+void Vector::scale (const qreal &f)
+{
+    setX (x()*f);
+    setY (y()*f);
+}
+
+void Vector::invert ()
+{
+    setX (-x());
+    setY (-y());
+}
+
+QPointF Vector::toQPointF ()
+{
+    return QPointF (x(),y());
+}
+
+/*! Calculate the projection of a polygon on an axis
+    and returns it as a [min, max] interval  */
+ConvexPolygon::ConvexPolygon ()
+{
+}
+
+ConvexPolygon::ConvexPolygon (QPolygonF p):QPolygonF (p)
+{
+}
+
+ConvexPolygon::~ConvexPolygon ()
+{
+}
+
+void ConvexPolygon::calcCentroid() 
+{
+    // Calculate area and centroid
+    // http://en.wikipedia.org/wiki/Centroid
+    qreal cx,cy,p;
+    cx=cy=0;
+    _area=0;
+
+    append (at(0));
+    for (int i=0;i<size()-1;i++)
+    {
+       p=at(i).x() * at(i+1).y() - at(i+1).x() * at(i).y();
+       _area+=p;
+       cx+=(at(i).x()+at(i+1).x()) * p;
+       cy+=(at(i).y()+at(i+1).y()) * p;
+    }  
+    pop_back();
+    // area is negative if vertices ordered counterclockwise
+    // (in mirrored graphicsview!)
+    _area=_area/2;  
+    p=_area*6;
+    _centroid.setX (cx/p);
+    _centroid.setY (cy/p);
+}
+
+QPointF ConvexPolygon::centroid() const
+{
+    return _centroid;
+}
+
+qreal ConvexPolygon::weight() const
+{
+    return _area;
+}
+
+std::string ConvexPolygon::toStdString()
+{
+    QString s ("(");
+    for (int i=0;i<size();++i)
+    {
+       s+=QString("(%1,%2)").arg(at(i).x()).arg(at(i).y());
+       if (i<size()-1) s+=",";
+    }
+    s+=")"; 
+    return s.toStdString();
+}
+
+Vector ConvexPolygon::at(const int &i) const
+{
+    return Vector (QPolygonF::at(i).x(),QPolygonF::at(i).y());
+}
+
+void ConvexPolygon::translate ( const Vector & offset )
+{ translate (offset.x(),offset.y());}
+
+void ConvexPolygon::translate ( qreal dx, qreal dy )
+{
+    QPolygonF::translate (dx,dy);
+    _centroid=_centroid+QPointF (dx,dy);
+}
+
+void projectPolygon(Vector axis, ConvexPolygon polygon, qreal &min, qreal &max) 
+{
+    // To project a point on an axis use the dot product
+
+    //qDebug() << "Projecting on "<< axis;
+    qreal d = axis.dotProduct(polygon.at(0));
+    min = d;
+    max = d;
+    for (int i = 0; i < polygon.size(); i++) 
+    {
+        d= polygon.at(i).dotProduct (axis);
+        if (d < min) 
+            min = d;
+        else 
+            if (d> max) max = d;
+    // qDebug() << "p="<<polygon.at(i)<<"  d="<<d<<"  (min, max)=("<<min<<","<<max<<")";       
+    }
+}
+
+// Calculate the signed distance between [minA, maxA] and [minB, maxB]
+// The distance will be negative if the intervals overlap
+
+qreal intervalDistance(qreal minA, qreal maxA, qreal minB, qreal maxB) {
+    if (minA < minB) {
+        return minB - maxA;
+    } else {
+        return minA - maxB;
+    }
+}
+
+/*!
+ Check if polygon A is going to collide with polygon B.
+ The last parameter is the *relative* velocity 
+ of the polygons (i.e. velocityA - velocityB)
+*/
+
+PolygonCollisionResult polygonCollision(ConvexPolygon polygonA, 
+                              ConvexPolygon polygonB, Vector velocity) 
+{
+    PolygonCollisionResult result;
+    result.intersect = true;
+    result.willIntersect = true;
+
+    int edgeCountA = polygonA.size();
+    int edgeCountB = polygonB.size();
+    qreal minIntervalDistance = 1000000000;
+    QPointF translationAxis;
+    QPointF edge;
+
+/*
+    qDebug() << "A: ";
+    for (int k=0; k<edgeCountA;k++)
+       qDebug() <<polygonA.at(k);
+    qDebug() << "B: ";
+    for (int k=0; k<edgeCountB;k++)
+       qDebug() <<polygonB.at(k);
+    qDebug() ;    
+*/     
+       
+    // Loop through all the edges of both polygons
+    for (int i=0;i<edgeCountA + edgeCountB;i++)
+    {
+        if (i< edgeCountA) 
+       {
+           // Loop through polygon A
+           if (i<edgeCountA-1)
+               edge = QPointF (
+                   polygonA.at(i+1).x()-polygonA.at(i).x(), 
+                   polygonA.at(i+1).y()-polygonA.at(i).y());
+           else        
+               edge = QPointF (
+                   polygonA.at(0).x()-polygonA.at(i).x(), 
+                   polygonA.at(0).y()-polygonA.at(i).y());
+        } else 
+       {
+           // Loop through polygon B
+           if (i < edgeCountA +edgeCountB -1 )
+               edge = QPointF (
+                   polygonB.at(i-edgeCountA+1).x() - polygonB.at(i-edgeCountA).x(), 
+                   polygonB.at(i-edgeCountA+1).y() - polygonB.at(i-edgeCountA).y());
+           else    
+               edge = QPointF (
+                   polygonB.at(0).x() - polygonB.at(i-edgeCountA).x(), 
+                   polygonB.at(0).y() - polygonB.at(i-edgeCountA).y());
+       }
+
+        // ===== 1. Find if the polygons are currently intersecting =====
+
+        // Find the axis perpendicular to the current edge
+
+        Vector axis (-edge.y(), edge.x());
+        axis.normalize();
+
+        // Find the projection of the polygon on the current axis
+
+        qreal minA = 0; qreal minB = 0; qreal maxA = 0; qreal maxB = 0;
+        projectPolygon(axis, polygonA, minA, maxA);
+        projectPolygon(axis, polygonB, minB, maxB);
+
+        // Check if the polygon projections are currentlty intersecting
+
+        qreal d = intervalDistance(minA, maxA, minB, maxB);
+        if (d > 0) result.intersect = false;
+
+       // ===== 2. Now find if the polygons *will* intersect =====
+
+
+        // Project the velocity on the current axis
+
+        qreal velocityProjection = axis.dotProduct(velocity);
+
+        // Get the projection of polygon A during the movement
+
+        if (velocityProjection < 0) 
+            minA += velocityProjection;
+        else 
+            maxA += velocityProjection;
+
+        // Do the same test as above for the new projection
+
+        // d = intervalDistance(minA, maxA, minB, maxB);
+        //if (d > 0) result.willIntersect = false;
+       /*
+       qDebug() <<"   ";
+       qDebug() << "edge="<<edge<<"  ";
+       qDebug() <<"axis="<<axis<<"  ";
+       qDebug() <<"dA=("<<minA<<","<<maxA<<")  dB=("<<minB<<","<<maxB<<")";
+       qDebug() <<"  d="<<d<<"   ";
+       //qDebug() <<"minD="<<minIntervalDistance<<"  ";
+       qDebug() <<"int="<<result.intersect<<"  ";
+       //qDebug() <<"wint="<<result.willIntersect<<"  ";
+       //qDebug() <<"velProj="<<velocityProjection<<"  ";
+       qDebug() ;
+       */
+    
+        if (result.intersect )// || result.willIntersect) 
+       {
+           // Check if the current interval distance is the minimum one. If so
+           // store the interval distance and the current distance.  This will
+           // be used to calculate the minimum translation vector
+
+           if (d<0) d=-d;
+           if (d < minIntervalDistance) {
+               minIntervalDistance = d;
+               //translationAxis = axis;
+               //qDebug() << "tAxix="<<translationAxis;
+
+               //QPointF t = polygonA.Center - polygonB.Center;
+               //QPointF t = polygonA.at(0) - polygonB.at(0);
+               //if (dotProduct(t,translationAxis) < 0)
+               //  translationAxis = -translationAxis;
+           }
+       }
+    }
+
+    // The minimum translation vector
+    // can be used to push the polygons appart.
+
+    if (result.willIntersect)
+        result.minTranslation = 
+               translationAxis * minIntervalDistance;
+    
+    return result;
+}
+
+/* The function can be used this way: 
+   QPointF polygonATranslation = new QPointF();
+*/   
+
+
+/*
+PolygonCollisionResult r = PolygonCollision(polygonA, polygonB, velocity);
+
+if (r.WillIntersect) 
+  // Move the polygon by its velocity, then move
+  // the polygons appart using the Minimum Translation Vector
+  polygonATranslation = velocity + r.minTranslation;
+else 
+  // Just move the polygon by its velocity
+  polygonATranslation = velocity;
+
+polygonA.Offset(polygonATranslation);
+
+*/
+
+
diff --git a/geometry.h b/geometry.h
new file mode 100644 (file)
index 0000000..a694a57
--- /dev/null
@@ -0,0 +1,70 @@
+#ifndef GEOMETRY
+#define GEOMETRY
+
+#include <QPolygonF>
+
+namespace Geometry {
+    qreal distance (const QPointF &p, const QPointF &q);
+};
+
+QRectF addBBox(QRectF r1, QRectF r2);
+QSize addBBoxSize(QSize s1, QSize s2);
+bool isInBox(const QPointF &p, const QRectF &box);
+
+class Vector:public QPointF
+{
+public:
+       Vector ();
+       Vector (const QPointF &p);
+       Vector (qreal x, qreal y);
+       virtual ~Vector ();
+
+       friend inline bool operator==(const Vector &v1, const Vector &v2 )
+       { return v1.x()==v2.x() && v1.y()==v2.y(); }
+
+       bool isNull();
+       virtual void normalize ();
+       virtual qreal dotProduct (const QPointF &b);
+       virtual void scale  (const qreal &f);
+       virtual void invert ();
+       virtual QPointF toQPointF();
+};
+
+class ConvexPolygon:public QPolygonF
+{
+public:
+       ConvexPolygon ();
+       ConvexPolygon (QPolygonF p);
+        virtual ~ConvexPolygon();
+       void calcCentroid() ;
+       QPointF centroid() const;
+       qreal weight() const;
+       std::string toStdString ();
+       Vector at (const int &i) const ; 
+       virtual void translate ( const Vector &offset );
+       virtual void translate ( qreal dx, qreal dy );
+private:
+       Vector _centroid;
+       qreal _area;
+};
+
+class PolygonCollisionResult {
+public:
+    // Are the polygons going to intersect forward in time?
+    bool willIntersect;
+
+    // Are the polygons currently intersecting?
+    bool intersect;
+
+    // The translation to apply to the first polygon to push the polygons apart.
+    QPointF minTranslation;
+};
+
+
+void projectPolygon(Vector axis, ConvexPolygon polygon, qreal &min, qreal &max) ;
+
+qreal intervalDistance(qreal minA, qreal maxA, qreal minB, qreal maxB);
+PolygonCollisionResult polygonCollision(ConvexPolygon polygonA, 
+                              ConvexPolygon polygonB, Vector velocity);
+
+#endif
\ No newline at end of file
diff --git a/heading.cpp b/heading.cpp
new file mode 100644 (file)
index 0000000..4e0f5e7
--- /dev/null
@@ -0,0 +1,20 @@
+#include "heading.h"
+#include "misc.h"
+
+#include <QRegExp>
+#include <QDebug>
+
+/////////////////////////////////////////////////////////////////
+// Heading
+/////////////////////////////////////////////////////////////////
+
+void Heading::operator =(const VymText &other)
+{
+    copy (other);
+}
+
+QString Heading::saveToDir ()
+{
+    return valueElement ("heading", VymText::saveToDir(), getAttributes() );
+}
+
diff --git a/heading.h b/heading.h
new file mode 100644 (file)
index 0000000..baa02d8
--- /dev/null
+++ b/heading.h
@@ -0,0 +1,15 @@
+#ifndef HEADING_H
+#define HEADING_H
+
+#include "vymtext.h"
+
+/*! \brief The heading belonging to one OrnamentedObj */
+
+
+class Heading:public VymText
+{
+public:
+    void operator= (const VymText &other);
+    QString saveToDir();
+};
+#endif
diff --git a/headingeditor.cpp b/headingeditor.cpp
new file mode 100644 (file)
index 0000000..3cb4741
--- /dev/null
@@ -0,0 +1,17 @@
+#include "headingeditor.h"
+#include "settings.h"
+
+extern Settings settings;
+extern QString vymName;
+
+HeadingEditor::HeadingEditor(QString scope):TextEditor()
+{
+    editorName = tr("Note Editor","Name of editor shown as window title");
+    setWindowTitle("");
+
+    // Load Settings
+    init (scope);
+}
+
+HeadingEditor::~HeadingEditor() {}
+
diff --git a/headingeditor.h b/headingeditor.h
new file mode 100644 (file)
index 0000000..3ed1975
--- /dev/null
@@ -0,0 +1,14 @@
+#ifndef HEADINGEDITOR_H \r
+#define HEADINGEDITOR_H\r
+\r
+#include "texteditor.h"\r
+\r
+class HeadingEditor :  public TextEditor {\r
+    Q_OBJECT\r
+public:\r
+    HeadingEditor(QString scope);\r
+    ~HeadingEditor();\r
+\r
+};\r
+\r
+#endif\r
diff --git a/headingobj.cpp b/headingobj.cpp
new file mode 100644 (file)
index 0000000..ae32b58
--- /dev/null
@@ -0,0 +1,293 @@
+#include <QDebug>
+#include <QRegExp>
+#include <QGraphicsScene>
+
+#include "headingobj.h"
+
+extern bool debug;
+
+/////////////////////////////////////////////////////////////////
+// HeadingObj
+/////////////////////////////////////////////////////////////////
+HeadingObj::HeadingObj(QGraphicsItem *parent) :MapObj(parent)
+{
+    //qDebug() << "Const HeadingObj (s) ";
+    init ();
+}
+
+HeadingObj::~HeadingObj()
+{
+//  qDebug() << "Destr. HeadingObj "<<heading;
+    while (!textline.isEmpty())
+       delete textline.takeFirst();
+}
+
+void HeadingObj::init()
+{
+    textwidth=40;
+    color=QColor ("black");
+    font=QFont();
+    heading="";
+    angle=0;   
+}
+
+void HeadingObj::copy(HeadingObj *other)
+{
+    MapObj::copy (other);
+    textwidth=other->textwidth;
+    color=other->color;
+    font=other->font;
+    setText (other->text() );
+}
+
+void HeadingObj::move(double x, double y)
+{
+    MapObj::move(x,y);
+
+    qreal h;   // height of a textline
+    qreal ho;  // offset of height while drawing all lines
+
+    if (!textline.isEmpty() )
+       h=textline.first()->boundingRect().height();
+    else
+       h=2;
+    ho=0;
+    for (int i=0; i<textline.size(); ++i)
+    {
+       textline.at(i)->setPos(x,y+ho);
+       ho=ho+h;
+    }  
+}
+
+
+void HeadingObj::moveBy(double x, double y)
+{
+    move (x+absPos.x(),y+absPos.y() );
+}
+
+void HeadingObj::positionBBox()
+{
+    bbox.setX (absPos.x());
+    bbox.setY (absPos.y());
+}
+
+void HeadingObj::calcBBoxSize()
+{   
+    qreal w=0;
+    qreal h=0;
+    // Using Backspace an empty heading might easily be created, then there
+    // would be textline.first()==NULL This can be worked around by the following, but
+    // then no selection would be visible, thus we prevent it in ::setText()
+    if (!textline.isEmpty() )
+    {
+       for (int i=0; i<textline.size(); i++)
+       {
+           h+=textline.at(i)->boundingRect().height();
+           if (w<textline.at(i)->boundingRect().width() )
+               w=textline.at(i)->boundingRect().width();
+       }   
+    } 
+    bbox.setSize (QSizeF(w,h));
+}
+
+QGraphicsTextItem* HeadingObj::newLine(QString s)  
+{
+    QGraphicsTextItem *t=new QGraphicsTextItem (s,parentItem());
+    t->setFont (font);
+    t->setZValue(dZ_TEXT);
+    t->setDefaultTextColor(color);
+    t->setRotation (angle);
+    return t;
+}
+
+void HeadingObj::setTransformOriginPoint (const QPointF & p)
+{
+    for (int i=0; i<textline.size(); i++)
+    {
+       textline.at(i)->setTransformOriginPoint (p);
+    }
+}
+
+void HeadingObj::setRotation (const qreal &a)
+{
+    angle=a;
+    for (int i=0; i<textline.size(); i++)
+       textline.at(i)->setRotation (angle);
+}
+
+qreal HeadingObj::getRotation()
+{
+    return angle;
+}
+
+void HeadingObj::setText (QString s)  
+{
+    heading=s;
+
+    // remove old textlines and prepare generating new ones
+    while (!textline.isEmpty())
+       delete textline.takeFirst();
+
+    if (s.startsWith("<html>")||
+       s.startsWith("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">")
+    )
+    {
+       QGraphicsTextItem *t=new QGraphicsTextItem ();
+       t->setFont (font);
+       t->setZValue(dZ_TEXT);
+       t->setHtml (s);
+       t->setDefaultTextColor(color);
+       t->setRotation (angle);
+       scene()->addItem (t);
+       textline.append (t);
+    } else
+    {
+       // prevent empty textline, so at least a small selection stays
+       // visible for this heading
+       if (s.length()==0) s="  ";
+
+       int i=0;        // index for actual search for ws
+       int j=0;        // index of last ws
+       int k=0;        // index of "<br>" or similar linebreak
+       int br=0;       // width of found break, e.g. for <br> it is 4
+       QRegExp re("<br.*/>");
+       re.setMinimal (true);
+
+       // set the text and wrap lines
+       while (s.length()>0)
+       {
+           // ok, some people wanted manual linebreaks, here we go
+           k=re.indexIn (s,i);
+           if (k>=0)
+           {
+               br=re.cap(0).length();
+               i=k;
+           } else
+               i=s.indexOf (" ",i);
+           if (i<0 && j==0)
+           {   // no ws found at all in s
+               // append whole s
+               textline.append (newLine(s));
+               s="";
+           } else
+           {
+               if (i<0 && j>0)
+               {       // no ws found in actual search
+                   if (s.length()<=textwidth)
+                   {
+                       textline.append (newLine(s));
+                       s="";
+                   } else
+                   {
+                       textline.append (newLine(s.left(j)));
+                       s=s.mid(j+1,s.length());
+                       j=0;
+                   }       
+               } else
+               {
+                   if (i>= 0 && i<=static_cast <int> (textwidth))
+                   {   // there is a ws in textwidth
+                       if (br>0)
+                       {
+                           // here is a linebreak
+                           textline.append (newLine(s.left(i)));
+                           s=s.mid(i+br,s.length());
+                           i=0;
+                           j=0;
+                           br=0;
+                       } else
+                       {
+                           j=i;
+                           i++;
+                       }
+                   } else
+                   {
+                       if (i>static_cast <int> (textwidth)  )
+                       {       
+                           if (j>0)
+                           {   // a ws out of textwidth, but we have also one in
+                               textline.append (newLine(s.left(j)));
+                               s=s.mid(j+1,s.length());
+                               i=0;
+                               j=0;
+                           } else
+                           {   // a ws out of text, but none in
+                               textline.append (newLine(s.left(i)));
+                               s=s.mid(i+1,s.length());
+                               i=0;
+                           }
+                       }
+                   } 
+               }         
+           }       
+       }
+    } // ASCII heading with multiple lines
+    setVisibility (visible);
+    move (absPos.x(),absPos.y());
+    calcBBoxSize();
+}
+
+QString HeadingObj::text ()
+{
+    return heading;
+}
+
+void HeadingObj::setFont (QFont f)
+{
+    if (font!=f) 
+    {
+       font=f;
+       setText (text());
+    }
+}
+
+QFont HeadingObj::getFont()
+{
+    return font;
+}    
+    
+    
+void HeadingObj::setColor (QColor c)
+{
+    if (color!=c)
+    {
+       color=c;
+       for (int i=0; i<textline.size(); ++i)
+           // TextItem
+           textline.at(i)->setDefaultTextColor(c);
+           // SimpleTextItem
+           //textline.at(i)->setBrush(c);
+    }      
+}
+
+QColor HeadingObj::getColor()
+{
+    return color;
+}    
+
+void HeadingObj::setZValue (double z)
+{
+    for (int i=0; i<textline.size(); ++i)
+       textline.at(i)->setZValue (z);
+}
+
+void HeadingObj::setVisibility (bool v)
+{
+    MapObj::setVisibility(v);
+    for (int i=0; i<textline.size(); ++i)
+       if (v)
+           textline.at(i)->show();
+       else
+           textline.at(i)->hide();
+}
+
+qreal HeadingObj::getHeight ()
+{
+    return bbox.height();
+}
+
+qreal HeadingObj::getWidth()
+{
+    return bbox.width();
+}
+
diff --git a/headingobj.h b/headingobj.h
new file mode 100644 (file)
index 0000000..ed85ab3
--- /dev/null
@@ -0,0 +1,47 @@
+#ifndef HEADINGOBJ_H
+#define HEADINGOBJ_H
+
+#include "mapobj.h"
+
+/*! \brief The heading of an OrnamentedObj */
+
+class HeadingObj:public MapObj {
+public:
+    HeadingObj(QGraphicsItem*);
+    virtual ~HeadingObj();
+    virtual void init();
+    virtual void copy(HeadingObj*);
+    virtual void move (double x,double y);      // move to absolute Position
+    virtual void moveBy (double x,double y);    // move to relative Position
+    virtual void positionBBox();
+       virtual void calcBBoxSize();
+private:
+//    QGraphicsSimpleTextItem* newLine(QString);               // generate new textline
+    QGraphicsTextItem* newLine(QString);               // generate new textline
+public:    
+    virtual void setTransformOriginPoint (const QPointF &);
+    virtual void setRotation (qreal const &a);
+    virtual qreal getRotation();
+private:
+    qreal angle;    
+
+public:    
+    virtual void setText(QString);
+    virtual QString text();
+    virtual void setFont(QFont);
+    virtual QFont getFont();
+    virtual void setColor(QColor);
+    virtual QColor getColor();
+    virtual void setZValue (double z);
+    virtual void setVisibility(bool);
+    virtual qreal getHeight();
+    virtual qreal getWidth();
+
+protected:
+    QString heading;
+    int textwidth;                                                             // width for formatting text
+    QList <QGraphicsTextItem*> textline;
+    QColor color;
+    QFont font;
+};
+#endif
diff --git a/highlighter.cpp b/highlighter.cpp
new file mode 100644 (file)
index 0000000..fdad6e4
--- /dev/null
@@ -0,0 +1,127 @@
+/****************************************************************************
+**
+** Copyright (C) 2005-2006 Trolltech ASA. All rights reserved.
+**
+** This file is part of the example classes of the Qt Toolkit.
+**
+** This file may be used under the terms of the GNU General Public
+** License version 2.0 as published by the Free Software Foundation
+** and appearing in the file LICENSE.GPL included in the packaging of
+** this file.  Please review the following information to ensure GNU
+** General Public Licensing requirements will be met:
+** http://www.trolltech.com/products/qt/opensource.html
+**
+** If you are unsure which license is appropriate for your use, please
+** review the following information:
+** http://www.trolltech.com/products/qt/licensing.html or contact the
+** sales department at sales@trolltech.com.
+**
+** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
+** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+**
+****************************************************************************/
+
+// highlighting rules have been adapted by Uwe Drechsel to match vym syntax
+
+
+#include <QtGui>
+
+#include "highlighter.h"
+
+Highlighter::Highlighter(QTextDocument *parent)        
+    : QSyntaxHighlighter(parent)
+{
+    HighlightingRule rule;
+
+    keywordFormat.setForeground(Qt::darkBlue);
+    keywordFormat.setFontWeight(QFont::Bold);
+
+    // QT keywords
+    /*
+    classFormat.setFontWeight(QFont::Bold);
+    classFormat.setForeground(Qt::darkMagenta);
+    rule.pattern = QRegExp("\\bQ[A-Za-z]+\\b");
+    rule.format = classFormat;
+    highlightingRules.append(rule);
+    */
+
+    // Single line comments
+    singleLineCommentFormat.setForeground(Qt::red);
+    rule.pattern = QRegExp("#[^\n]*");
+    rule.format = singleLineCommentFormat;
+    highlightingRules.append(rule);
+
+    // multiline comments
+    multiLineCommentFormat.setForeground(Qt::red);
+    commentStartExpression = QRegExp("/\\*");
+    commentEndExpression = QRegExp("\\*/");
+
+    // Quotations
+    quotationFormat.setForeground(Qt::darkGreen);
+    rule.pattern = QRegExp("\".*\"");
+    rule.format = quotationFormat;
+    highlightingRules.append(rule);
+
+    QStringList valuePatterns;
+    valuePatterns << "\\btrue\\b" << "\\bfalse\\b";
+    foreach (QString pattern, valuePatterns) {
+        rule.pattern = QRegExp(pattern);
+        rule.format = quotationFormat;
+        highlightingRules.append(rule);
+    }
+
+
+
+    // Funtions
+    /*
+    functionFormat.setFontItalic(true);
+    functionFormat.setForeground(Qt::blue);
+    rule.pattern = QRegExp("\\b[A-Za-z0-9_]+(?=\\()");
+    rule.format = functionFormat;
+    highlightingRules.append(rule);
+    */
+
+}
+
+void Highlighter::addKeywords (const QStringList &list)
+{
+    HighlightingRule rule;
+    foreach (QString pattern, list) {
+        rule.pattern = QRegExp(pattern);
+        rule.format = keywordFormat;
+        highlightingRules.append(rule);
+    }
+}
+
+void Highlighter::highlightBlock(const QString &text)
+{
+    foreach (HighlightingRule rule, highlightingRules) {
+        QRegExp expression(rule.pattern);
+        int index = text.indexOf(expression);
+        while (index >= 0) {
+            int length = expression.matchedLength();
+            setFormat(index, length, rule.format);
+            index = text.indexOf(expression, index + length);
+        }
+    }
+    setCurrentBlockState(0);
+
+    int startIndex = 0;
+    if (previousBlockState() != 1)
+        startIndex = text.indexOf(commentStartExpression);
+
+    while (startIndex >= 0) {
+        int endIndex = text.indexOf(commentEndExpression, startIndex);
+        int commentLength;
+        if (endIndex == -1) {
+            setCurrentBlockState(1);
+            commentLength = text.length() - startIndex;
+        } else {
+            commentLength = endIndex - startIndex
+                            + commentEndExpression.matchedLength();
+        }
+        setFormat(startIndex, commentLength, multiLineCommentFormat);
+        startIndex = text.indexOf(commentStartExpression,
+                                                startIndex + commentLength);
+    }
+}
diff --git a/highlighter.h b/highlighter.h
new file mode 100644 (file)
index 0000000..ec0d6be
--- /dev/null
@@ -0,0 +1,64 @@
+/****************************************************************************
+**
+** Copyright (C) 2005-2006 Trolltech ASA. All rights reserved.
+**
+** This file is part of the example classes of the Qt Toolkit.
+**
+** This file may be used under the terms of the GNU General Public
+** License version 2.0 as published by the Free Software Foundation
+** and appearing in the file LICENSE.GPL included in the packaging of
+** this file.  Please review the following information to ensure GNU
+** General Public Licensing requirements will be met:
+** http://www.trolltech.com/products/qt/opensource.html
+**
+** If you are unsure which license is appropriate for your use, please
+** review the following information:
+** http://www.trolltech.com/products/qt/licensing.html or contact the
+** sales department at sales@trolltech.com.
+**
+** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
+** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+**
+****************************************************************************/
+
+#ifndef HIGHLIGHTER_H
+#define HIGHLIGHTER_H
+
+#include <QSyntaxHighlighter>
+
+#include <QHash>
+#include <QTextCharFormat>
+
+class QTextDocument;
+
+class Highlighter : public QSyntaxHighlighter
+{
+    Q_OBJECT
+
+public:
+    Highlighter(QTextDocument *parent = 0);
+    void addKeywords (const QStringList &sl);
+
+protected:
+    void highlightBlock(const QString &text);
+
+private:
+    struct HighlightingRule
+    {
+        QRegExp pattern;
+        QTextCharFormat format;
+    };
+    QVector<HighlightingRule> highlightingRules;
+
+    QRegExp commentStartExpression;
+    QRegExp commentEndExpression;
+
+    QTextCharFormat keywordFormat;
+    QTextCharFormat classFormat;
+    QTextCharFormat singleLineCommentFormat;
+    QTextCharFormat multiLineCommentFormat;
+    QTextCharFormat quotationFormat;
+    QTextCharFormat functionFormat;
+};
+
+#endif
diff --git a/historywindow.cpp b/historywindow.cpp
new file mode 100644 (file)
index 0000000..53e3ff7
--- /dev/null
@@ -0,0 +1,174 @@
+#include "historywindow.h"
+#include "mainwindow.h"
+
+
+extern Settings settings;
+extern Main *mainWindow;
+
+HistoryWindow::HistoryWindow (QWidget *parent):QDialog (parent)
+{
+    ui.setupUi (this);
+    ui.historyTable->setRowCount (settings.value( "/history/stepsTotal",75).toInt());
+    ui.historyTable->setColumnCount (3);
+
+    
+    QTableWidgetItem *item;
+
+    item= new QTableWidgetItem(tr("Action","Table with actions"));
+    ui.historyTable->setHorizontalHeaderItem(0, item);
+    
+    item= new QTableWidgetItem(tr("Comment","Table with actions"));
+    ui.historyTable->setHorizontalHeaderItem(1, item);
+    
+    item= new QTableWidgetItem(tr("Undo action","Table with actions"));
+    ui.historyTable->setHorizontalHeaderItem(2, item);
+
+    ui.historyTable->setSelectionBehavior (QAbstractItemView::SelectRows);
+
+    ui.undoButton->setIcon (QIcon(":/undo.png"));
+    ui.redoButton->setIcon (QIcon(":/redo.png"));
+
+    connect ( ui.undoButton, SIGNAL (clicked()), this, SLOT (undo()));
+    connect ( ui.redoButton, SIGNAL (clicked()), this, SLOT (redo()));
+    connect ( ui.historyTable, SIGNAL (itemSelectionChanged()), this, SLOT (select()));
+
+    // Load Settings
+
+    resize (settings.value ( "/satellite/historywindow/geometry/size", QSize(1000,400)).toSize());
+    move   (settings.value ( "/satellite/historywindow/geometry/pos", QPoint (0,450)).toPoint());
+
+    ui.historyTable->setColumnWidth (0,settings.value("/satellite/historywindow/geometry/columnWidth/0",250).toInt());
+    ui.historyTable->setColumnWidth (1,settings.value("/satellite/historywindow/geometry/columnWidth/1",350).toInt());
+    ui.historyTable->setColumnWidth (2,settings.value("/satellite/historywindow/geometry/columnWidth/2",250).toInt());
+}
+
+HistoryWindow::~HistoryWindow()
+{
+    // Save settings
+    settings.setValue( "/satellite/historywindow/geometry/size", size() );
+    settings.setValue( "/satellite/historywindow/geometry/pos", pos() );
+
+    for (int i=0; i<3; ++i)
+       settings.setValue( QString("/satellite/historywindow/geometry/columnWidth/%1").arg(i), ui.historyTable->columnWidth (i) );
+}
+
+void HistoryWindow::clearRow(int row)
+{
+    QTableWidgetItem *it;
+    it=ui.historyTable->item (row,0);
+    if (it) it->setText ("");
+    it=ui.historyTable->item (row,1);
+    if (it) it->setText ("");
+    it=ui.historyTable->item (row,2);
+    if (it) it->setText ("");
+}
+
+void HistoryWindow::updateRow(int row, int step, SimpleSettings &set)
+{
+    QTableWidgetItem *item;
+
+    item= new QTableWidgetItem(set.value(QString("/history/step-%1/redoCommand").arg(step)));
+    ui.historyTable->setItem(row, 0, item);
+
+    item= new QTableWidgetItem(set.value(QString("/history/step-%1/comment").arg(step)));
+    ui.historyTable->setItem(row, 1, item);
+
+    item=new QTableWidgetItem(set.value(QString("/history/step-%1/undoCommand").arg(step)));
+    ui.historyTable->setItem(row, 2, item);
+}
+
+void HistoryWindow::update(SimpleSettings &set)
+{
+    int undosAvail=set.readNumValue("/history/undosAvail",0);
+    int redosAvail=set.readNumValue("/history/redosAvail",0);
+    int stepsTotal=set.readNumValue("/history/stepsTotal",1000);
+    int curStep=set.readNumValue ("/history/curStep");
+    int i;
+    int s=curStep;
+    int r=undosAvail-1;
+    QTableWidgetItem *item;
+
+    // Update number of rows
+    ui.historyTable->setRowCount (undosAvail + redosAvail +1);
+
+    // Update buttons
+    if (undosAvail<1)
+       ui.undoButton->setEnabled (false);
+    else    
+       ui.undoButton->setEnabled (true);
+
+    if (redosAvail<1)
+       ui.redoButton->setEnabled (false);
+    else    
+       ui.redoButton->setEnabled (true);
+
+    // Update undos in table
+    for (i=undosAvail; i>0; i--)
+    {
+       updateRow (r,s,set);
+       r--;
+       s--;
+       if (s<1) s=stepsTotal;
+    }
+    
+    // Generated the "now" row
+    QColor c(255,200,120);
+    for (i=0;i<=2;i++)
+    {
+       if (i!=1)
+       {
+           item=new QTableWidgetItem("");
+           item->setBackgroundColor (c);
+           ui.historyTable->setItem(undosAvail, i, item);
+       }
+    }
+    item=new QTableWidgetItem(" - " +tr("Current state","Current bar in history hwindow")+ " - ");
+    item->setBackgroundColor (c);
+    ui.historyTable->setItem(undosAvail, 1, item);
+
+    // Show "now" row
+    ui.historyTable->scrollToItem (item);
+
+    // Update Redos in table
+    s=curStep;
+    s++; if (s>stepsTotal) s=1;
+    for (i=1;i<= redosAvail; i++)
+    {
+       updateRow (undosAvail+i,s,set);
+       s++; if (s>stepsTotal) s=1;
+    }
+
+    // Delete the rest
+    for (i=undosAvail+redosAvail+1;i<= stepsTotal; i++)
+       clearRow (i);
+
+    //ui.historyTable->resizeColumnsToContents();
+}
+
+void HistoryWindow::setStepsTotal (int st)
+{
+    // Number of steps + "current" bar
+    ui.historyTable->setRowCount (st+1);
+}
+
+
+void HistoryWindow::closeEvent (QCloseEvent *)
+{
+    hide();
+    emit (windowClosed() );
+}
+
+void HistoryWindow::undo()
+{
+    mainWindow->editUndo();
+}
+
+void HistoryWindow::redo()
+{
+    mainWindow->editRedo();
+}
+
+void HistoryWindow::select()
+{
+    mainWindow->gotoHistoryStep (ui.historyTable->row (ui.historyTable->selectedItems().first()));
+}
diff --git a/historywindow.h b/historywindow.h
new file mode 100644 (file)
index 0000000..656492a
--- /dev/null
@@ -0,0 +1,39 @@
+#ifndef HISTORYWINDOW_H
+#define HISTORYWINDOW_H
+
+#include <QDialog>
+
+#include "settings.h"
+#include "ui_historywindow.h"
+
+
+/////////////////////////////////////////////////////////////////////////////
+class HistoryWindow:public QDialog
+{
+    Q_OBJECT
+
+public:
+    HistoryWindow(QWidget* parent = 0);
+    ~HistoryWindow();
+    void update (SimpleSettings &);
+    void setStepsTotal (int);
+
+protected:
+    void closeEvent( QCloseEvent* );
+
+private slots: 
+    void undo();
+    void redo();
+    void select();
+
+signals:
+    void windowClosed();
+
+private:
+    void clearRow (int);
+    void updateRow (int, int, SimpleSettings &);
+    Ui::HistoryWindow ui;
+};
+
+
+#endif
diff --git a/historywindow.ui b/historywindow.ui
new file mode 100644 (file)
index 0000000..fc72c21
--- /dev/null
@@ -0,0 +1,149 @@
+<ui version="4.0" >
+ <class>HistoryWindow</class>
+ <widget class="QDialog" name="HistoryWindow" >
+  <property name="geometry" >
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>1160</width>
+    <height>340</height>
+   </rect>
+  </property>
+  <property name="windowTitle" >
+   <string>Dialog</string>
+  </property>
+  <layout class="QGridLayout" >
+   <property name="leftMargin" >
+    <number>9</number>
+   </property>
+   <property name="topMargin" >
+    <number>9</number>
+   </property>
+   <property name="rightMargin" >
+    <number>9</number>
+   </property>
+   <property name="bottomMargin" >
+    <number>9</number>
+   </property>
+   <property name="horizontalSpacing" >
+    <number>6</number>
+   </property>
+   <property name="verticalSpacing" >
+    <number>6</number>
+   </property>
+   <item row="0" column="0" >
+    <spacer>
+     <property name="orientation" >
+      <enum>Qt::Vertical</enum>
+     </property>
+     <property name="sizeHint" >
+      <size>
+       <width>20</width>
+       <height>40</height>
+      </size>
+     </property>
+    </spacer>
+   </item>
+   <item row="2" column="0" >
+    <widget class="QPushButton" name="redoButton" >
+     <property name="text" >
+      <string>Redo</string>
+     </property>
+    </widget>
+   </item>
+   <item row="3" column="0" >
+    <spacer>
+     <property name="orientation" >
+      <enum>Qt::Vertical</enum>
+     </property>
+     <property name="sizeHint" >
+      <size>
+       <width>20</width>
+       <height>61</height>
+      </size>
+     </property>
+    </spacer>
+   </item>
+   <item rowspan="4" row="0" column="1" >
+    <widget class="QTableWidget" name="historyTable" >
+     <row/>
+     <column>
+      <property name="text" >
+       <string>Time</string>
+      </property>
+     </column>
+     <column>
+      <property name="text" >
+       <string>Comment</string>
+      </property>
+     </column>
+    </widget>
+   </item>
+   <item row="1" column="0" >
+    <widget class="QPushButton" name="undoButton" >
+     <property name="text" >
+      <string>Undo</string>
+     </property>
+    </widget>
+   </item>
+   <item row="4" column="0" colspan="2" >
+    <layout class="QHBoxLayout" >
+     <property name="spacing" >
+      <number>6</number>
+     </property>
+     <property name="leftMargin" >
+      <number>0</number>
+     </property>
+     <property name="topMargin" >
+      <number>0</number>
+     </property>
+     <property name="rightMargin" >
+      <number>0</number>
+     </property>
+     <property name="bottomMargin" >
+      <number>0</number>
+     </property>
+     <item>
+      <spacer>
+       <property name="orientation" >
+        <enum>Qt::Horizontal</enum>
+       </property>
+       <property name="sizeHint" >
+        <size>
+         <width>131</width>
+         <height>31</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+     <item>
+      <widget class="QPushButton" name="closeButton" >
+       <property name="text" >
+        <string>Close</string>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
+  </layout>
+ </widget>
+ <resources/>
+ <connections>
+  <connection>
+   <sender>closeButton</sender>
+   <signal>clicked()</signal>
+   <receiver>HistoryWindow</receiver>
+   <slot>close()</slot>
+   <hints>
+    <hint type="sourcelabel" >
+     <x>369</x>
+     <y>253</y>
+    </hint>
+    <hint type="destinationlabel" >
+     <x>179</x>
+     <y>282</y>
+    </hint>
+   </hints>
+  </connection>
+ </connections>
+</ui>
diff --git a/icons/cursorcolorpicker.png b/icons/cursorcolorpicker.png
new file mode 100644 (file)
index 0000000..277a4da
Binary files /dev/null and b/icons/cursorcolorpicker.png differ
diff --git a/icons/cursorcolorpicker16.png b/icons/cursorcolorpicker16.png
new file mode 100644 (file)
index 0000000..d4a4b59
Binary files /dev/null and b/icons/cursorcolorpicker16.png differ
diff --git a/icons/cursorcopy.png b/icons/cursorcopy.png
new file mode 100644 (file)
index 0000000..879ccb6
Binary files /dev/null and b/icons/cursorcopy.png differ
diff --git a/icons/cursorhandopen.png b/icons/cursorhandopen.png
new file mode 100644 (file)
index 0000000..6c430db
Binary files /dev/null and b/icons/cursorhandopen.png differ
diff --git a/icons/cursorhandopen16.png b/icons/cursorhandopen16.png
new file mode 100644 (file)
index 0000000..bc0dda5
Binary files /dev/null and b/icons/cursorhandopen16.png differ
diff --git a/icons/cursorxlink.png b/icons/cursorxlink.png
new file mode 100644 (file)
index 0000000..d8762d8
Binary files /dev/null and b/icons/cursorxlink.png differ
diff --git a/icons/down.png b/icons/down.png
new file mode 100644 (file)
index 0000000..6dce81c
Binary files /dev/null and b/icons/down.png differ
diff --git a/icons/editcopy.png b/icons/editcopy.png
new file mode 100644 (file)
index 0000000..ae1cd9f
Binary files /dev/null and b/icons/editcopy.png differ
diff --git a/icons/editcut.png b/icons/editcut.png
new file mode 100644 (file)
index 0000000..192b575
Binary files /dev/null and b/icons/editcut.png differ
diff --git a/icons/editpaste.png b/icons/editpaste.png
new file mode 100644 (file)
index 0000000..b8454f9
Binary files /dev/null and b/icons/editpaste.png differ
diff --git a/icons/editsort.png b/icons/editsort.png
new file mode 100644 (file)
index 0000000..0e85ddf
Binary files /dev/null and b/icons/editsort.png differ
diff --git a/icons/editsortback.png b/icons/editsortback.png
new file mode 100644 (file)
index 0000000..29fd9d6
Binary files /dev/null and b/icons/editsortback.png differ
diff --git a/icons/edittrash.png b/icons/edittrash.png
new file mode 100644 (file)
index 0000000..810efc4
Binary files /dev/null and b/icons/edittrash.png differ
diff --git a/icons/exit.png b/icons/exit.png
new file mode 100644 (file)
index 0000000..b266020
Binary files /dev/null and b/icons/exit.png differ
diff --git a/icons/file-document-export.png b/icons/file-document-export.png
new file mode 100644 (file)
index 0000000..ffb81f8
Binary files /dev/null and b/icons/file-document-export.png differ
diff --git a/icons/fileclose.png b/icons/fileclose.png
new file mode 100644 (file)
index 0000000..7cb9859
Binary files /dev/null and b/icons/fileclose.png differ
diff --git a/icons/filenew.png b/icons/filenew.png
new file mode 100644 (file)
index 0000000..004ca03
Binary files /dev/null and b/icons/filenew.png differ
diff --git a/icons/filenewcopy.png b/icons/filenewcopy.png
new file mode 100644 (file)
index 0000000..7bf6b73
Binary files /dev/null and b/icons/filenewcopy.png differ
diff --git a/icons/fileopen.png b/icons/fileopen.png
new file mode 100644 (file)
index 0000000..a79982e
Binary files /dev/null and b/icons/fileopen.png differ
diff --git a/icons/fileprint.png b/icons/fileprint.png
new file mode 100644 (file)
index 0000000..a71ee28
Binary files /dev/null and b/icons/fileprint.png differ
diff --git a/icons/filesave.png b/icons/filesave.png
new file mode 100644 (file)
index 0000000..3bc2a37
Binary files /dev/null and b/icons/filesave.png differ
diff --git a/icons/filesaveas.png b/icons/filesaveas.png
new file mode 100644 (file)
index 0000000..c8d4816
Binary files /dev/null and b/icons/filesaveas.png differ
diff --git a/icons/find.png b/icons/find.png
new file mode 100644 (file)
index 0000000..1b7a252
Binary files /dev/null and b/icons/find.png differ
diff --git a/icons/formatcolorbranch.png b/icons/formatcolorbranch.png
new file mode 100644 (file)
index 0000000..2eb2e63
Binary files /dev/null and b/icons/formatcolorbranch.png differ
diff --git a/icons/formatcolorpicker.png b/icons/formatcolorpicker.png
new file mode 100644 (file)
index 0000000..cc2b369
Binary files /dev/null and b/icons/formatcolorpicker.png differ
diff --git a/icons/formatcolorpicker.xpm b/icons/formatcolorpicker.xpm
new file mode 100644 (file)
index 0000000..53ec969
--- /dev/null
@@ -0,0 +1,29 @@
+/* XPM */
+static const char * formatcolorpicker_xpm[] = {
+"22 22 4 1",
+"      c None",
+".     c #000000",
+"+     c #949194",
+"@     c #FFFFFF",
+"                      ",
+"                      ",
+"                      ",
+"               ...    ",
+"              .....   ",
+"              .....   ",
+"           ........   ",
+"            ......    ",
+"           +@...      ",
+"          +@@@..      ",
+"         +@@@. .      ",
+"        +@@@.         ",
+"       +@@@.          ",
+"      +@@@.           ",
+"     +@@@.            ",
+"    +@@@.             ",
+"    +@@.              ",
+"   +@..               ",
+"    .                 ",
+"                      ",
+"                      ",
+"                      "};
diff --git a/icons/formatcolorsubtree.png b/icons/formatcolorsubtree.png
new file mode 100644 (file)
index 0000000..33cf6b1
Binary files /dev/null and b/icons/formatcolorsubtree.png differ
diff --git a/icons/formatfixedfont.png b/icons/formatfixedfont.png
new file mode 100644 (file)
index 0000000..33959f8
Binary files /dev/null and b/icons/formatfixedfont.png differ
diff --git a/icons/formatrichtext.png b/icons/formatrichtext.png
new file mode 100644 (file)
index 0000000..98f6173
Binary files /dev/null and b/icons/formatrichtext.png differ
diff --git a/icons/formatvarfont.png b/icons/formatvarfont.png
new file mode 100644 (file)
index 0000000..9471335
Binary files /dev/null and b/icons/formatvarfont.png differ
diff --git a/icons/headingeditor.png b/icons/headingeditor.png
new file mode 100644 (file)
index 0000000..e219eee
Binary files /dev/null and b/icons/headingeditor.png differ
diff --git a/icons/history.png b/icons/history.png
new file mode 100644 (file)
index 0000000..ea64540
Binary files /dev/null and b/icons/history.png differ
diff --git a/icons/linestyle-dash.png b/icons/linestyle-dash.png
new file mode 100644 (file)
index 0000000..635e4ec
Binary files /dev/null and b/icons/linestyle-dash.png differ
diff --git a/icons/linestyle-dashdot.png b/icons/linestyle-dashdot.png
new file mode 100644 (file)
index 0000000..33deef0
Binary files /dev/null and b/icons/linestyle-dashdot.png differ
diff --git a/icons/linestyle-dashdotdot.png b/icons/linestyle-dashdotdot.png
new file mode 100644 (file)
index 0000000..7cca970
Binary files /dev/null and b/icons/linestyle-dashdotdot.png differ
diff --git a/icons/linestyle-dot.png b/icons/linestyle-dot.png
new file mode 100644 (file)
index 0000000..c6da9b9
Binary files /dev/null and b/icons/linestyle-dot.png differ
diff --git a/icons/linestyle-solid.png b/icons/linestyle-solid.png
new file mode 100644 (file)
index 0000000..e4bca3c
Binary files /dev/null and b/icons/linestyle-solid.png differ
diff --git a/icons/modecolor.png b/icons/modecolor.png
new file mode 100644 (file)
index 0000000..efd8395
Binary files /dev/null and b/icons/modecolor.png differ
diff --git a/icons/modecopy.png b/icons/modecopy.png
new file mode 100644 (file)
index 0000000..f18351a
Binary files /dev/null and b/icons/modecopy.png differ
diff --git a/icons/modelink.png b/icons/modelink.png
new file mode 100644 (file)
index 0000000..c606a2c
Binary files /dev/null and b/icons/modelink.png differ
diff --git a/icons/newbranch.png b/icons/newbranch.png
new file mode 100644 (file)
index 0000000..45bcf85
Binary files /dev/null and b/icons/newbranch.png differ
diff --git a/icons/newmapcenter.png b/icons/newmapcenter.png
new file mode 100644 (file)
index 0000000..27a017b
Binary files /dev/null and b/icons/newmapcenter.png differ
diff --git a/icons/redo.png b/icons/redo.png
new file mode 100644 (file)
index 0000000..6aacd4f
Binary files /dev/null and b/icons/redo.png differ
diff --git a/icons/rotate-ccw.png b/icons/rotate-ccw.png
new file mode 100644 (file)
index 0000000..788ef4a
Binary files /dev/null and b/icons/rotate-ccw.png differ
diff --git a/icons/rotate-cw.png b/icons/rotate-cw.png
new file mode 100644 (file)
index 0000000..e37b237
Binary files /dev/null and b/icons/rotate-cw.png differ
diff --git a/icons/scripteditor.png b/icons/scripteditor.png
new file mode 100644 (file)
index 0000000..5433a12
Binary files /dev/null and b/icons/scripteditor.png differ
diff --git a/icons/selectnext.png b/icons/selectnext.png
new file mode 100644 (file)
index 0000000..5890427
Binary files /dev/null and b/icons/selectnext.png differ
diff --git a/icons/selectprevious.png b/icons/selectprevious.png
new file mode 100644 (file)
index 0000000..d579d18
Binary files /dev/null and b/icons/selectprevious.png differ
diff --git a/icons/slide-camera.png b/icons/slide-camera.png
new file mode 100644 (file)
index 0000000..5ddd28d
Binary files /dev/null and b/icons/slide-camera.png differ
diff --git a/icons/slideeditor.png b/icons/slideeditor.png
new file mode 100644 (file)
index 0000000..f549a73
Binary files /dev/null and b/icons/slideeditor.png differ
diff --git a/icons/slidenext.png b/icons/slidenext.png
new file mode 100644 (file)
index 0000000..51881ea
Binary files /dev/null and b/icons/slidenext.png differ
diff --git a/icons/slideprevious.png b/icons/slideprevious.png
new file mode 100644 (file)
index 0000000..644d3e2
Binary files /dev/null and b/icons/slideprevious.png differ
diff --git a/icons/sliderecord.png b/icons/sliderecord.png
new file mode 100644 (file)
index 0000000..f926a8f
Binary files /dev/null and b/icons/sliderecord.png differ
diff --git a/icons/taskeditor.png b/icons/taskeditor.png
new file mode 100644 (file)
index 0000000..e3faccb
Binary files /dev/null and b/icons/taskeditor.png differ
diff --git a/icons/text_block.png b/icons/text_block.png
new file mode 100644 (file)
index 0000000..60e79b5
Binary files /dev/null and b/icons/text_block.png differ
diff --git a/icons/text_bold.png b/icons/text_bold.png
new file mode 100644 (file)
index 0000000..19dc645
Binary files /dev/null and b/icons/text_bold.png differ
diff --git a/icons/text_center.png b/icons/text_center.png
new file mode 100644 (file)
index 0000000..acf20f8
Binary files /dev/null and b/icons/text_center.png differ
diff --git a/icons/text_italic.png b/icons/text_italic.png
new file mode 100644 (file)
index 0000000..d21986d
Binary files /dev/null and b/icons/text_italic.png differ
diff --git a/icons/text_left.png b/icons/text_left.png
new file mode 100644 (file)
index 0000000..88c7c7e
Binary files /dev/null and b/icons/text_left.png differ
diff --git a/icons/text_right.png b/icons/text_right.png
new file mode 100644 (file)
index 0000000..7fea4e5
Binary files /dev/null and b/icons/text_right.png differ
diff --git a/icons/text_sub.png b/icons/text_sub.png
new file mode 100644 (file)
index 0000000..8f53bea
Binary files /dev/null and b/icons/text_sub.png differ
diff --git a/icons/text_super.png b/icons/text_super.png
new file mode 100644 (file)
index 0000000..49ca8f7
Binary files /dev/null and b/icons/text_super.png differ
diff --git a/icons/text_under.png b/icons/text_under.png
new file mode 100644 (file)
index 0000000..8fccad3
Binary files /dev/null and b/icons/text_under.png differ
diff --git a/icons/treeeditor.png b/icons/treeeditor.png
new file mode 100644 (file)
index 0000000..746bf7f
Binary files /dev/null and b/icons/treeeditor.png differ
diff --git a/icons/undo.png b/icons/undo.png
new file mode 100644 (file)
index 0000000..d4b682b
Binary files /dev/null and b/icons/undo.png differ
diff --git a/icons/up.png b/icons/up.png
new file mode 100644 (file)
index 0000000..2db1ce6
Binary files /dev/null and b/icons/up.png differ
diff --git a/icons/view-filter.png b/icons/view-filter.png
new file mode 100644 (file)
index 0000000..9cabc5a
Binary files /dev/null and b/icons/view-filter.png differ
diff --git a/icons/viewmag+.png b/icons/viewmag+.png
new file mode 100644 (file)
index 0000000..a424b61
Binary files /dev/null and b/icons/viewmag+.png differ
diff --git a/icons/viewmag-.png b/icons/viewmag-.png
new file mode 100644 (file)
index 0000000..fc5364a
Binary files /dev/null and b/icons/viewmag-.png differ
diff --git a/icons/viewmag-reset.png b/icons/viewmag-reset.png
new file mode 100644 (file)
index 0000000..00c57ee
Binary files /dev/null and b/icons/viewmag-reset.png differ
diff --git a/icons/viewshowsel.png b/icons/viewshowsel.png
new file mode 100644 (file)
index 0000000..e08b2a5
Binary files /dev/null and b/icons/viewshowsel.png differ
diff --git a/icons/vym-128x128.png b/icons/vym-128x128.png
new file mode 100644 (file)
index 0000000..5b0c2c2
Binary files /dev/null and b/icons/vym-128x128.png differ
diff --git a/icons/vym-16x16.png b/icons/vym-16x16.png
new file mode 100644 (file)
index 0000000..3ad3849
Binary files /dev/null and b/icons/vym-16x16.png differ
diff --git a/icons/vym-editor.png b/icons/vym-editor.png
new file mode 100644 (file)
index 0000000..f70fe88
Binary files /dev/null and b/icons/vym-editor.png differ
diff --git a/icons/vym.icns b/icons/vym.icns
new file mode 100644 (file)
index 0000000..cd830ce
Binary files /dev/null and b/icons/vym.icns differ
diff --git a/icons/vym.ico b/icons/vym.ico
new file mode 100755 (executable)
index 0000000..5ee1dfe
Binary files /dev/null and b/icons/vym.ico differ
diff --git a/icons/vym.png b/icons/vym.png
new file mode 100644 (file)
index 0000000..92afbdf
Binary files /dev/null and b/icons/vym.png differ
diff --git a/icons/vym.xpm b/icons/vym.xpm
new file mode 100644 (file)
index 0000000..9943c2b
--- /dev/null
@@ -0,0 +1,24 @@
+/* XPM */
+static char * vym_xpm[] = {
+"16 16 5 1",
+"      c None",
+".     c #0026FF",
+"+     c #001EFF",
+"@     c #FF0000",
+"#     c #1C22E3",
+"                ",
+"       ...+ @@  ",
+"  @@@@@@#@@@    ",
+"     ...@+..@@  ",
+"     ..@@#..    ",
+"  @@ ..@.@@@@@  ",
+"    @@@@....    ",
+"  @@++......    ",
+"      ......    ",
+"      .....     ",
+"      .....     ",
+"       ....     ",
+"       ....     ",
+"                ",
+"                ",
+"                "};
diff --git a/imageitem.cpp b/imageitem.cpp
new file mode 100644 (file)
index 0000000..44c1a2f
--- /dev/null
@@ -0,0 +1,165 @@
+#include "imageitem.h"
+
+#include "branchitem.h"
+#include "mapobj.h"    // z-values
+
+#include <QDebug>
+#include <QString>
+#include <iostream>
+
+bool isImage (const QString &fname)
+{
+    QRegExp rx("(jpg|jpeg|png|xmp|gif|svg)$");
+    rx.setCaseSensitivity (Qt::CaseInsensitive);
+    return fname.contains (rx);
+}
+
+ImageItem::ImageItem()
+{
+    //qDebug()<<"Constr ImageItem";
+    init();
+}
+
+ImageItem::ImageItem (const QList<QVariant> &data, TreeItem *parent):MapItem (data,parent)
+{
+    init();
+}
+
+ImageItem::~ImageItem()
+{
+    //qDebug()<<"Destr ImageItem";
+    if (mo) delete mo;
+}
+
+void ImageItem::init()
+{
+    setType (Image);
+    imageType=Undefined;
+    hideLinkUnselected=true;
+    originalFilename="no original name available";
+    zValue=dZ_FLOATIMG;
+    scaleX=1;
+    scaleY=1;
+    posMode=Relative;
+}
+
+void ImageItem::clear()
+{
+}
+
+ImageItem::ImageType ImageItem::getImageType()
+{
+    return imageType;
+}
+
+void ImageItem::load(const QImage &img)
+{
+    originalImage=img;
+    if (mo) ((FloatImageObj*)mo)->load (originalImage);
+}
+
+bool ImageItem::load(const QString &fname)
+{
+    bool ok = originalImage.load (fname);   
+    if (mo && ok)
+    {
+       setOriginalFilename (fname);
+        setHeadingPlainText (originalFilename);
+       ((FloatImageObj*)mo)->load (originalImage);
+    }  else
+       qWarning() << "ImageItem::load failed for " << fname;
+    return ok; 
+}
+
+FloatImageObj* ImageItem::createMapObj()
+{
+    FloatImageObj *fio=new FloatImageObj ( ((MapItem*)parentItem)->getMO(),this);
+    mo=fio;
+    if (((BranchItem*)parentItem)->isScrolled() || !((MapItem*)parentItem)->getMO()->isVisibleObj() )
+           fio->setVisibility (false);
+    initLMO(); // set rel/abs position in mapitem
+    fio->setZValue(zValue);
+    fio->setRelPos (pos);
+    fio->updateVisibility();
+    return fio;
+}
+
+void ImageItem::setScale (qreal sx, qreal sy)
+{
+    scaleX=sx;
+    scaleY=sy;
+    int w=originalImage.width()*scaleX;
+    int h=originalImage.height()*scaleY;
+    if (mo) ((FloatImageObj*)mo)->load (originalImage.scaled (w,h));
+}
+
+qreal ImageItem::getScaleX ()
+{
+    return scaleX;
+}
+
+qreal ImageItem::getScaleY ()
+{
+    return scaleY;
+}
+
+void ImageItem::setZValue(int z)
+{
+    zValue=z;
+    if (mo) ((FloatImageObj*)mo)->setZValue(z);
+}
+
+void ImageItem::setOriginalFilename(const QString & fn)
+{
+    originalFilename=fn;
+
+    // Set short name. Search from behind:
+    int i=originalFilename.lastIndexOf("/");
+    if (i>=0) originalFilename=originalFilename.remove (0,i+1);
+    setHeadingPlainText (originalFilename);
+}
+
+QString ImageItem::getOriginalFilename()
+{
+    return originalFilename;
+}
+
+bool ImageItem::save(const QString &fn, const QString &format)
+{
+    return originalImage.save (fn,qPrintable (format)); 
+}
+
+QString ImageItem::saveToDir (const QString &tmpdir,const QString &prefix) 
+{
+    if (hidden) return "";
+
+    // Save uuid 
+    QString idAttr=attribut("uuid",uuid.toString());
+
+    QString zAttr=attribut ("zValue",QString().setNum(zValue));
+    QString url;
+
+    ulong n=reinterpret_cast <ulong> (this);
+
+    url="images/"+prefix+"image-" + QString().number(n,10) + ".png" ;
+
+    // And really save the image
+    originalImage.save (tmpdir +"/"+ url, "PNG");
+    QString nameAttr=attribut ("originalName",originalFilename);
+
+    QString scaleAttr=
+       attribut ("scaleX",QString().setNum(scaleX))+
+       attribut ("scaleY",QString().setNum(scaleY));
+
+    return singleElement ("floatimage",  
+       getMapAttr() 
+       +getGeneralAttr()
+       +zAttr  
+       +attribut ("href",QString ("file:")+url)
+       +nameAttr
+       +scaleAttr
+        +idAttr
+    ); 
+}
+
diff --git a/imageitem.h b/imageitem.h
new file mode 100644 (file)
index 0000000..e7066f0
--- /dev/null
@@ -0,0 +1,57 @@
+#ifndef IMAGEITEM_H
+#define IMAGEITEM_H
+
+#include <QList>
+#include <QPixmap>
+#include <QVariant>
+
+#include "floatimageobj.h"
+//#include "treeitem.h"
+#include "mapitem.h"
+
+bool isImage (const QString &fname);
+
+class ImageItem: public MapItem
+{
+public:
+    enum ImageType {Undefined,Pixmap,SVG};
+
+public:
+    ImageItem();
+    ImageItem(const QList<QVariant> &data, TreeItem *parent = 0);
+
+    virtual ~ImageItem();
+
+protected:  
+    void init();
+    void clear();
+    ImageType imageType;
+public:        
+    virtual ImageType getImageType();
+
+    virtual void load (const QImage &img);
+    virtual bool load (const QString &fname);
+    virtual FloatImageObj* createMapObj();         //! Create classic object in GraphicsView
+protected:  
+    qreal scaleX;
+    qreal scaleY;
+    QImage  originalImage;
+    QString originalFilename;
+    int zValue;
+
+public:        
+    virtual qreal getScaleX();
+    virtual qreal getScaleY();
+    virtual void setScale (qreal,qreal);
+
+    virtual void setZValue(int z);
+    virtual void setOriginalFilename(const QString &);
+    virtual QString getOriginalFilename();
+    virtual bool save (const QString &fn, const QString &format);
+    virtual QString saveToDir(const QString &,const QString&);
+
+};
+
+
+#endif
+
diff --git a/imageobj.cpp b/imageobj.cpp
new file mode 100644 (file)
index 0000000..bc3fe1e
--- /dev/null
@@ -0,0 +1,61 @@
+#include "imageobj.h"
+#include "mapobj.h"
+
+/////////////////////////////////////////////////////////////////
+// ImageObj    
+/////////////////////////////////////////////////////////////////
+ImageObj::ImageObj( QGraphicsItem *parent) : QGraphicsPixmapItem (parent )
+{
+//  qDebug() << "Const ImageObj (scene)";
+
+    setShapeMode (QGraphicsPixmapItem::BoundingRectShape);
+    setZValue(dZ_FLOATIMG);    
+    hide();
+}
+
+ImageObj::~ImageObj()
+{
+ //  qDebug() << "Destr ImageObj";
+}
+
+void ImageObj::copy(ImageObj* other)
+{
+    prepareGeometryChange();
+    setVisibility (other->isVisible() );
+    setPixmap (other->QGraphicsPixmapItem::pixmap());  
+    setPos (other->pos());
+}
+
+void ImageObj::setVisibility (bool v)
+{
+    if (v)
+        show();
+    else
+        hide();
+}
+
+void ImageObj::save(const QString &fn, const char *format)
+{
+    pixmap().save (fn,format,100);
+}
+
+bool ImageObj::load (const QString &fn)
+{
+    QPixmap pixmap;
+    if (pixmap.load (fn))
+    {
+        prepareGeometryChange();
+        setPixmap (pixmap);
+        return true;
+    }
+    return false;
+}
+
+bool ImageObj::load (const QPixmap &pm)
+{
+    prepareGeometryChange();
+    setPixmap (pm);
+    return true;
+}
+
+
diff --git a/imageobj.h b/imageobj.h
new file mode 100644 (file)
index 0000000..f637fce
--- /dev/null
@@ -0,0 +1,21 @@
+#ifndef IMAGEOBJ_H
+#define IMAGEOBJ_H
+
+#include <QGraphicsScene>
+#include <QGraphicsPixmapItem>
+
+/*! \brief Base class for pixmaps.
+*/
+
+class ImageObj: public QGraphicsPixmapItem
+{
+public:
+    ImageObj( QGraphicsItem*);
+    ~ImageObj();
+    void copy (ImageObj*);
+    void setVisibility(bool);
+    void save (const QString &, const char *);
+    bool load (const QString &);
+    bool load (const QPixmap &);
+};
+#endif
diff --git a/imports.cpp b/imports.cpp
new file mode 100644 (file)
index 0000000..87a62e6
--- /dev/null
@@ -0,0 +1,92 @@
+#include "file.h"
+#include "imports.h"
+#include "linkablemapobj.h"
+#include "misc.h"
+#include "mainwindow.h"
+#include "xsltproc.h"
+
+#include <QMessageBox>
+
+extern Main *mainWindow;
+extern QDir vymBaseDir;
+
+ImportBase::ImportBase()
+{
+    bool ok;
+    tmpDir.setPath (makeTmpDir(ok,"vym-import"));
+    if (!tmpDir.exists() || !ok)
+       QMessageBox::critical( 0, QObject::tr( "Error" ),
+                      QObject::tr("Couldn't access temporary directory\n"));
+}
+
+
+ImportBase::~ImportBase()
+{
+    // Remove tmpdir
+    removeDir (tmpDir);
+}
+
+void ImportBase::setDir(const QString &p)
+{
+    inputDir=p;
+}
+
+void ImportBase::setFile (const QString &p)
+{
+    inputFile=p;
+}
+
+bool ImportBase::transform()
+{
+    return true;
+}
+
+QString ImportBase::getTransformedFile()
+{
+    return transformedFile;
+}
+
+/////////////////////////////////////////////////
+bool ImportFirefoxBookmarks::transform()
+{
+    transformedFile=tmpDir.path()+"/bookmarks.xml";
+
+    QStringList lines;
+    QFile file( inputFile );
+    if ( file.open( QIODevice::ReadOnly ) ) 
+    {
+       QTextStream stream( &file );
+       while ( !stream.atEnd() ) 
+           lines += stream.readLine(); // line of text excluding '\n'
+       file.close();
+    }
+    // TODO Generate vym from broken bookmarks above...
+
+    return true;
+}
+
+/////////////////////////////////////////////////
+bool ImportMM::transform()
+{
+    // try to unzip 
+    if (File::Success==unzipDir (tmpDir, inputFile))
+    {
+       
+       // Set short name, too. Search from behind:
+       transformedFile=inputFile;
+       int i=transformedFile.lastIndexOf ("/");
+       if (i>=0) transformedFile=transformedFile.remove (0,i+1);
+       transformedFile.replace(".mmap",".xml");
+       transformedFile=tmpDir.path()+"/"+transformedFile;
+
+       XSLTProc p;
+       p.setInputFile (tmpDir.path()+"/Document.xml");
+       p.setOutputFile (transformedFile);
+       p.setXSLFile (vymBaseDir.path()+"/styles/mmap2vym.xsl");
+       p.process();
+
+       return true;
+    } else
+       return false;
+    
+}
diff --git a/imports.h b/imports.h
new file mode 100644 (file)
index 0000000..17c6987
--- /dev/null
+++ b/imports.h
@@ -0,0 +1,47 @@
+#ifndef IMPORTS_H
+#define IMPORTS_H
+
+#include <qdir.h>
+#include <qstring.h>
+#include <iostream>
+
+#include "settings.h"
+
+
+///////////////////////////////////////////////////////////////////////
+
+class ImportBase
+{
+public:
+    ImportBase();
+    virtual ~ImportBase();
+    virtual void setDir(const QString &);
+    virtual void setFile(const QString &);
+    virtual bool transform();
+    virtual QString getTransformedFile();
+protected:
+    QDir tmpDir;
+    QString inputDir;
+    QString inputFile;
+    QString transformedFile;
+    
+};
+
+///////////////////////////////////////////////////////////////////////
+class ImportFirefoxBookmarks:public ImportBase
+{
+public:
+    bool transform();
+};  
+
+
+///////////////////////////////////////////////////////////////////////
+class ImportMM:public ImportBase
+{
+public:
+    bool transform();
+};  
+
+
+
+#endif
diff --git a/lang/vym.cs_CZ.ts b/lang/vym.cs_CZ.ts
new file mode 100644 (file)
index 0000000..c927415
--- /dev/null
@@ -0,0 +1,4232 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="cs_CZ">
+<context>
+    <name>AboutDialog</name>
+    <message>
+        <source>License</source>
+        <translation type="vanished">Povolení</translation>
+    </message>
+    <message>
+        <source>Ok</source>
+        <comment>Ok Button</comment>
+        <translation>OK</translation>
+    </message>
+    <message>
+        <source>Credits</source>
+        <translation type="vanished">Zásluhy</translation>
+    </message>
+    <message>
+        <source>Credits</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished">Zásluhy</translation>
+    </message>
+    <message>
+        <source>License</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished">Povolení</translation>
+    </message>
+</context>
+<context>
+    <name>AboutTextBrowser</name>
+    <message>
+        <source>Warning</source>
+        <comment>About window</comment>
+        <translation>Varování</translation>
+    </message>
+    <message>
+        <source>Please use Settings-&gt;</source>
+        <translation>Použijte, prosím, nastavení -&gt;</translation>
+    </message>
+    <message>
+        <source>Set application to open an URL...</source>
+        <translation>Nastavit program pro otevírání adres (URL)...</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <comment>About window</comment>
+        <translation>Nepodařilo se nalézt žádný program pro otevření %1.
+</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyEditor</name>
+    <message>
+        <source>+</source>
+        <translation>+</translation>
+    </message>
+    <message>
+        <source>-</source>
+        <translation>-</translation>
+    </message>
+    <message>
+        <source>Link</source>
+        <translation>Spojení</translation>
+    </message>
+    <message>
+        <source>Rounded Rectangle</source>
+        <translation>Zakulacený obdélník</translation>
+    </message>
+    <message>
+        <source>Cloud</source>
+        <translation>Mrak</translation>
+    </message>
+    <message>
+        <source>Frame</source>
+        <translation>Rámeček</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <translation>Žádný rámeček</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <translation>Přihlédnout k horním a dolním okrajům obrázků</translation>
+    </message>
+    <message>
+        <source>Property Editor</source>
+        <translation type="vanished">Editor vlastností</translation>
+    </message>
+    <message>
+        <source>Colors</source>
+        <translation>Barvy</translation>
+    </message>
+    <message>
+        <source>Hide link if unselected</source>
+        <translation>Skrýt spojení, není-li vybráno</translation>
+    </message>
+    <message>
+        <source>Layout</source>
+        <translation>Rozvržení</translation>
+    </message>
+    <message>
+        <source>Free positioning of children (experimental!)</source>
+        <translation>Volné umístění vedlejších větví (pokusné)</translation>
+    </message>
+    <message>
+        <source>Branch Property Editor</source>
+        <translation>Editor vlastností větve</translation>
+    </message>
+    <message>
+        <source>Padding</source>
+        <translation>Odstup</translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <translation>Přihlédnout k levým a pravým okrajům obrázků</translation>
+    </message>
+    <message>
+        <source>Background color</source>
+        <translation>Barva pozadí</translation>
+    </message>
+    <message>
+        <source>Attributes</source>
+        <translation>Vlastnosti</translation>
+    </message>
+    <message>
+        <source>Rectangle</source>
+        <translation>Obdélník</translation>
+    </message>
+    <message>
+        <source>Ellipse</source>
+        <translation>Elipsa</translation>
+    </message>
+    <message>
+        <source>Geometry</source>
+        <translation>Uspořádání</translation>
+    </message>
+    <message>
+        <source>Include children</source>
+        <translation>Zahrnout vedlejší větve</translation>
+    </message>
+    <message>
+        <source>Borderline color</source>
+        <translation>Barva dělicí čáry</translation>
+    </message>
+    <message>
+        <source>Borderline width</source>
+        <translation>Šířka dělicí čáry</translation>
+    </message>
+    <message>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished">Editor vlastností</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadAgent</name>
+    <message>
+        <source>Warning</source>
+        <translation>Varování</translation>
+    </message>
+</context>
+<context>
+    <name>EditXLinkDialog</name>
+    <message>
+        <source>Close</source>
+        <translation>Zavřít</translation>
+    </message>
+    <message>
+        <source>Use color of heading</source>
+        <translation>Použít barvu záhlaví</translation>
+    </message>
+    <message>
+        <source>Arrow begin:</source>
+        <translation>Začátek šipky:</translation>
+    </message>
+    <message>
+        <source>XLink width:</source>
+        <translation>Šířka xLink:</translation>
+    </message>
+    <message>
+        <source>XLink color:</source>
+        <translation>Barva xLink:</translation>
+    </message>
+    <message>
+        <source>Edit XLink</source>
+        <translation>Upravit xLink</translation>
+    </message>
+    <message>
+        <source>Arrow end:</source>
+        <translation>Konec šipky:</translation>
+    </message>
+    <message>
+        <source>Line style:</source>
+        <extracomment>Linestyle in Edit XLink dialog</extracomment>
+        <translation>Styl čáry:</translation>
+    </message>
+    <message>
+        <source>Use as default:</source>
+        <translation>Použít jako výchozí:</translation>
+    </message>
+</context>
+<context>
+    <name>ExportHTMLDialog</name>
+    <message>
+        <source>Include images</source>
+        <translation>Zahrnout obrázky</translation>
+    </message>
+    <message>
+        <source>Table of contents</source>
+        <translation>Obsah</translation>
+    </message>
+    <message>
+        <source>Copy CSS from </source>
+        <translation>Kopírovat CSS z </translation>
+    </message>
+    <message>
+        <source>General flags</source>
+        <translation>Obecné příznaky</translation>
+    </message>
+    <message>
+        <source>Image of map</source>
+        <translation>Obrázek mapy</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Zrušit</translation>
+    </message>
+    <message>
+        <source>Browse</source>
+        <translation>Procházet</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <translation>Vyvést</translation>
+    </message>
+    <message>
+        <source>Save settings in map</source>
+        <translation>Uložit nastavení do mapy</translation>
+    </message>
+    <message>
+        <source>Options</source>
+        <translation>Volby</translation>
+    </message>
+    <message>
+        <source>VYM - Export HTML to directory</source>
+        <translation>VYM - Vyvést HTML do adresáře</translation>
+    </message>
+    <message>
+        <source>Number sections</source>
+        <translation>Číslovat oddíly</translation>
+    </message>
+    <message>
+        <source>Export HTML</source>
+        <translation>Vyvést jako HTML</translation>
+    </message>
+    <message>
+        <source>Scripts</source>
+        <translation>Skripty</translation>
+    </message>
+    <message>
+        <source>After Export:</source>
+        <translation>Po vyvedení:</translation>
+    </message>
+    <message>
+        <source>Colored headings in text</source>
+        <translation>Barevné popisy v textu</translation>
+    </message>
+    <message>
+        <source>Stylesheets</source>
+        <translation>Stylové listy</translation>
+    </message>
+    <message>
+        <source>The settings saved in the map would like to run script:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation>Nastavení uložená do mapy by ráda spustila skript:
+
+%1
+
+Prověřte, prosím, zda to opravdu chcete
+ve svém systému povolit!</translation>
+    </message>
+    <message>
+        <source>Task flags</source>
+        <translation>Příznaky úkolů</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation>Varování</translation>
+    </message>
+    <message>
+        <source>Use CSS from</source>
+        <translation>Použít CSS z </translation>
+    </message>
+    <message>
+        <source>Export to directory:</source>
+        <translation>Vyvést do adresáře:</translation>
+    </message>
+</context>
+<context>
+    <name>ExtraInfoDialog</name>
+    <message>
+        <source>Map:</source>
+        <translation>Mapa:</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation>Zavřít</translation>
+    </message>
+    <message>
+        <source>Statistics:</source>
+        <translation>Statistiky:</translation>
+    </message>
+    <message>
+        <source>VYM - Info</source>
+        <translation>VYM - Informace</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Zrušit</translation>
+    </message>
+    <message>
+        <source>Title:</source>
+        <translation>Název:</translation>
+    </message>
+    <message>
+        <source>Comment:</source>
+        <translation>Poznámka:</translation>
+    </message>
+    <message>
+        <source>Author:</source>
+        <translation>Autor:</translation>
+    </message>
+</context>
+<context>
+    <name>FindWidget</name>
+    <message>
+        <source>Find:</source>
+        <translation type="vanished">Hledat:</translation>
+    </message>
+    <message>
+        <source>Find:</source>
+        <comment>FindWidget</comment>
+        <translation type="unfinished">Hledat:</translation>
+    </message>
+</context>
+<context>
+    <name>Heading of mapcenter in new map</name>
+    <message>
+        <source>New map</source>
+        <translation type="vanished">Nová mapa</translation>
+    </message>
+</context>
+<context>
+    <name>HeadingEditor</name>
+    <message>
+        <source>Heading Editor</source>
+        <translation type="vanished">Editor popisů</translation>
+    </message>
+    <message>
+        <source>Heading Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished">Editor popisů</translation>
+    </message>
+</context>
+<context>
+    <name>HistoryWindow</name>
+    <message>
+        <source>Redo</source>
+        <translation>Znovu</translation>
+    </message>
+    <message>
+        <source>Time</source>
+        <translation>Čas</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <translation>Zpět</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation>Zavřít</translation>
+    </message>
+    <message>
+        <source>Comment</source>
+        <comment>Table with actions</comment>
+        <translation>Poznámka</translation>
+    </message>
+    <message>
+        <source>Action</source>
+        <translation type="vanished">Krok</translation>
+    </message>
+    <message>
+        <source>Dialog</source>
+        <translation>Dialog</translation>
+    </message>
+    <message>
+        <source>Undo action</source>
+        <translation type="vanished">Krok zpět</translation>
+    </message>
+    <message>
+        <source>Comment</source>
+        <translation>Poznámka</translation>
+    </message>
+    <message>
+        <source>Current state</source>
+        <translation type="vanished">Nynější stav</translation>
+    </message>
+    <message>
+        <source>Action</source>
+        <comment>Table with actions</comment>
+        <translation type="unfinished">Krok</translation>
+    </message>
+    <message>
+        <source>Undo action</source>
+        <comment>Table with actions</comment>
+        <translation type="unfinished">Krok zpět</translation>
+    </message>
+    <message>
+        <source>Current state</source>
+        <comment>Current bar in history hwindow</comment>
+        <translation type="unfinished">Nynější stav</translation>
+    </message>
+</context>
+<context>
+    <name>LineEditDialog</name>
+    <message>
+        <source>Ok</source>
+        <translation>OK</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Zrušit</translation>
+    </message>
+    <message>
+        <source>Dialog</source>
+        <translation>Dialog</translation>
+    </message>
+    <message>
+        <source>TextLabel</source>
+        <translation>TextovýŠtítek</translation>
+    </message>
+</context>
+<context>
+    <name>LockedFileDialog</name>
+    <message>
+        <source>Dialog</source>
+        <translation type="unfinished">Dialog</translation>
+    </message>
+    <message>
+        <source>Delete lockfile</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Open readonly</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Main</name>
+    <message>
+        <source>or</source>
+        <translation type="vanished">nebo</translation>
+    </message>
+    <message>
+        <source>Add</source>
+        <translation>Přidat</translation>
+    </message>
+    <message>
+        <source>Bad</source>
+        <translation type="vanished">Špatné</translation>
+    </message>
+    <message>
+        <source>Back</source>
+        <translation type="vanished">Zpět</translation>
+    </message>
+    <message>
+        <source>Edit</source>
+        <translation type="vanished">Upravit</translation>
+    </message>
+    <message>
+        <source>File</source>
+        <translation type="vanished">Soubor</translation>
+    </message>
+    <message>
+        <source>Flag</source>
+        <translation type="vanished">Příznak</translation>
+    </message>
+    <message>
+        <source>HTML</source>
+        <translation type="vanished">HTML</translation>
+    </message>
+    <message>
+        <source>Good</source>
+        <translation type="vanished">Dobré</translation>
+    </message>
+    <message>
+        <source>Home</source>
+        <translation type="vanished">Domov</translation>
+    </message>
+    <message>
+        <source>Maix</source>
+        <translation type="vanished">Poštovní schránka</translation>
+    </message>
+    <message>
+        <source>Note</source>
+        <translation type="vanished">Poznámka</translation>
+    </message>
+    <message>
+        <source>Rose</source>
+        <translation type="vanished">Růže</translation>
+    </message>
+    <message>
+        <source>Stop</source>
+        <translation type="vanished">Zastavit</translation>
+    </message>
+    <message>
+        <source>Test</source>
+        <translation>Zkouška</translation>
+    </message>
+    <message>
+        <source>Text</source>
+        <translation type="vanished">Text</translation>
+    </message>
+    <message>
+        <source>Textdocument</source>
+        <translation type="vanished">Textový dokument</translation>
+    </message>
+    <message>
+        <source>Loading: %1</source>
+        <translation type="vanished">Nahrává se %1</translation>
+    </message>
+    <message>
+        <source>&amp;View</source>
+        <translation>&amp;Pohled</translation>
+    </message>
+    <message>
+        <source>Image%1</source>
+        <translation type="vanished">Obrázek %1</translation>
+    </message>
+    <message>
+        <source>Directory with vym macros:</source>
+        <translation>Adresář s makry VYMu:</translation>
+    </message>
+    <message>
+        <source>Add branch (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>Přidat novou větev</translation>
+    </message>
+    <message>
+        <source>Network shortcuts</source>
+        <translation type="vanished">Síťové zkratky</translation>
+    </message>
+    <message>
+        <source>E&amp;dit</source>
+        <translation type="vanished">Ú&amp;pravy</translation>
+    </message>
+    <message>
+        <source>Allow</source>
+        <translation>Povolit</translation>
+    </message>
+    <message>
+        <source>Move down</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Posunout větev dolů</translation>
+    </message>
+    <message>
+        <source>Idea!</source>
+        <translation type="vanished">Nápad!</translation>
+    </message>
+    <message>
+        <source>Linux</source>
+        <translation type="vanished">Linux</translation>
+    </message>
+    <message>
+        <source>Magic</source>
+        <translation type="vanished">Kouzlo</translation>
+    </message>
+    <message>
+        <source>Modes</source>
+        <translation type="vanished">Režimy</translation>
+    </message>
+    <message>
+        <source>PDF%1</source>
+        <translation type="vanished">PDF%1</translation>
+    </message>
+    <message>
+        <source>Music</source>
+        <translation type="vanished">Hudba</translation>
+    </message>
+    <message>
+        <source>SVG%1</source>
+        <translation type="vanished">SVG%1</translation>
+    </message>
+    <message>
+        <source>Tasks</source>
+        <translation type="vanished">Úkoly</translation>
+    </message>
+    <message>
+        <source>Sweet</source>
+        <translation type="vanished">Milé</translation>
+    </message>
+    <message>
+        <source>Views</source>
+        <translation type="vanished">Pohledy</translation>
+    </message>
+    <message>
+        <source>Export in last used format (%1) to: %2</source>
+        <translation type="vanished">Vyvést v naposledy použitém formátu (%1) do: %2</translation>
+    </message>
+    <message>
+        <source>notes</source>
+        <translation type="vanished">Poznámky</translation>
+    </message>
+    <message>
+        <source>tasks</source>
+        <translation type="vanished">Úkoly</translation>
+    </message>
+    <message>
+        <source>Discard changes</source>
+        <translation>Zahodit změny</translation>
+    </message>
+    <message>
+        <source>Webpage (HTML)...</source>
+        <translation type="vanished">Stránka (HTML)...</translation>
+    </message>
+    <message>
+        <source>Cycle task status</source>
+        <translation type="vanished">Přepínat stav úkolu</translation>
+    </message>
+    <message>
+        <source>I do not like this</source>
+        <translation type="vanished">Nelíbí se mi to</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save </source>
+        <translation>Nepodařilo se uložit </translation>
+    </message>
+    <message>
+        <source>Move to target...</source>
+        <translation type="vanished">Přesunout na cíl...</translation>
+    </message>
+    <message>
+        <source>Use hide flags</source>
+        <comment>Settings action</comment>
+        <translation>Používat během vyvádění příznak &quot;Skrýt&quot;</translation>
+    </message>
+    <message>
+        <source>Select branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>Vybrat větev po jejím přidání</translation>
+    </message>
+    <message>
+        <source>Automatic layout</source>
+        <translation type="vanished">Automatické rozvržení</translation>
+    </message>
+    <message>
+        <source>Set application to open external links</source>
+        <comment>Settings action</comment>
+        <translation>Nastavit program pro otevírání vnějších odkazů</translation>
+    </message>
+    <message>
+        <source>I like this</source>
+        <translation type="vanished">Líbí se mi to</translation>
+    </message>
+    <message>
+        <source>Add mapcenter</source>
+        <translation type="vanished">Přidat mapový střed</translation>
+    </message>
+    <message>
+        <source>Delete vym link</source>
+        <comment>Edit menu</comment>
+        <translation>Smazat spojení VYMu</translation>
+    </message>
+    <message>
+        <source>Very unimportant!</source>
+        <translation type="vanished">Velice nedůležité!</translation>
+    </message>
+    <message>
+        <source>Exclusive flags</source>
+        <comment>Settings action</comment>
+        <translation>Výhradní příznaky</translation>
+    </message>
+    <message>
+        <source>Text (A&amp;O report)...</source>
+        <translation type="vanished">Text (formát A&amp;O)...</translation>
+    </message>
+    <message>
+        <source>Set &amp;Background Color</source>
+        <translation>Nastavit barvu &amp;pozadí</translation>
+    </message>
+    <message>
+        <source>Autosave time</source>
+        <comment>Settings action</comment>
+        <translation>Čas automatického ukládání</translation>
+    </message>
+    <message>
+        <source>Set &amp;Background image</source>
+        <translation>Nastavit &amp;obrázek pozadí</translation>
+    </message>
+    <message>
+        <source>Selection toolbar</source>
+        <translation type="vanished">Nástrojový pruh pro výběr</translation>
+    </message>
+    <message>
+        <source>Property window</source>
+        <translation type="vanished">Okno vlastností</translation>
+    </message>
+    <message>
+        <source>Sleep %1 weeks</source>
+        <translation type="vanished">Spát %1 týdny(ů)</translation>
+    </message>
+    <message>
+        <source>File actions toolbar</source>
+        <translation type="vanished">Nástrojový pruh souborových činností</translation>
+    </message>
+    <message>
+        <source>Modifier modes</source>
+        <translation type="vanished">Režimy modifikátorů</translation>
+    </message>
+    <message>
+        <source>Number of visible parents in task editor</source>
+        <translation type="vanished">Počet viditelných rodičovských větví v editoru úkolů</translation>
+    </message>
+    <message>
+        <source>Scroll branch</source>
+        <comment>Edit menu</comment>
+        <translation>Svinout větev</translation>
+    </message>
+    <message>
+        <source>Sleep %1 days</source>
+        <translation type="vanished">Spát %1 dny(ů)</translation>
+    </message>
+    <message>
+        <source>Center on selection</source>
+        <translation type="vanished">Zaměřit na výběr</translation>
+    </message>
+    <message>
+        <source>Linkstyle Line</source>
+        <translation>Styl spojení čára</translation>
+    </message>
+    <message>
+        <source>Toggle task</source>
+        <translation type="vanished">Přepnout úkol</translation>
+    </message>
+    <message>
+        <source>Script Editor</source>
+        <comment>ScriptEditor</comment>
+        <translation>Editor skriptů</translation>
+    </message>
+    <message>
+        <source>VYM -Information:</source>
+        <translation>Informace VYMu:</translation>
+    </message>
+    <message>
+        <source>&amp;Restore last session</source>
+        <translation type="vanished">&amp;Obnovit poslední sezení</translation>
+    </message>
+    <message>
+        <source>Linkstyle Curve</source>
+        <translation>Styl spojení křivka</translation>
+    </message>
+    <message>
+        <source>Next slide</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Další snímek</translation>
+    </message>
+    <message>
+        <source>Color &amp;branch</source>
+        <comment>Edit menu</comment>
+        <translation>Obarvit vě&amp;tev</translation>
+    </message>
+    <message>
+        <source>Add branch as child</source>
+        <comment>Edit menu</comment>
+        <translation>Přidat novou větev jako vedlejší větev</translation>
+    </message>
+    <message>
+        <source>Hide link if object is not selected</source>
+        <comment>Branch attribute</comment>
+        <translation>Skrýt spojení, není-li vybrán předmět</translation>
+    </message>
+    <message>
+        <source>Set &amp;Color</source>
+        <translation>Nastavit &amp;barvu</translation>
+    </message>
+    <message>
+        <source>&amp;Print</source>
+        <translation>&amp;Tisk</translation>
+    </message>
+    <message>
+        <source>Telephone</source>
+        <translation type="vanished">Telefon</translation>
+    </message>
+    <message>
+        <source>Do not allow</source>
+        <translation>Nepovolit</translation>
+    </message>
+    <message>
+        <source>Property Editor</source>
+        <translation type="vanished">Editor vlastností</translation>
+    </message>
+    <message>
+        <source>Edit local URL...</source>
+        <translation type="vanished">Upravit místní adresu (URL)...</translation>
+    </message>
+    <message>
+        <source>Main window</source>
+        <comment>Shortcut scope</comment>
+        <translation>Hlavní okno</translation>
+    </message>
+    <message>
+        <source>Undo and clipboard toolbar</source>
+        <translation type="vanished">Nástrojový pruh pro Zpět/Znovu a schránku</translation>
+    </message>
+    <message>
+        <source>Expand all branches</source>
+        <translation type="vanished">Rozdělat všechny větve</translation>
+    </message>
+    <message>
+        <source>Shrink selection</source>
+        <translation type="vanished">Zmenšit výběr</translation>
+    </message>
+    <message>
+        <source>Set author for new maps</source>
+        <translation type="vanished">Zadat autora nových map</translation>
+    </message>
+    <message>
+        <source>Open linked map</source>
+        <comment>Edit menu</comment>
+        <translation>Otevřít spojenou mapu</translation>
+    </message>
+    <message>
+        <source>About VYM</source>
+        <comment>Help action</comment>
+        <translation>O programu VYM</translation>
+    </message>
+    <message>
+        <source>This won&apos;t work!</source>
+        <translation type="vanished">To nepůjde!</translation>
+    </message>
+    <message>
+        <source>Slide editor</source>
+        <translation type="vanished">Editor snímků</translation>
+    </message>
+    <message>
+        <source>References Context menu</source>
+        <translation type="vanished">Klávesové zkratky</translation>
+    </message>
+    <message>
+        <source>Select existing heading</source>
+        <comment>Settings action</comment>
+        <translation>Vybrat stávající popis</translation>
+    </message>
+    <message>
+        <source>KDE 4 Bookmarks</source>
+        <translation type="vanished">Záložky KDE 4</translation>
+    </message>
+    <message>
+        <source>Set author for new maps (used in lockfile)</source>
+        <translation>Zadat autora nových map (k použití v uzamykacím souboru)</translation>
+    </message>
+    <message>
+        <source>&amp;Open...</source>
+        <comment>File menu</comment>
+        <translation>&amp;Otevřít...</translation>
+    </message>
+    <message>
+        <source>The map %1 has been modified but not saved yet. Do you want to</source>
+        <translation>Mapa %1 byla změněna,
+ale ještě nebyla uložena. Chcete </translation>
+    </message>
+    <message>
+        <source>Import Dir%1</source>
+        <translation type="vanished">Zavést adresář %1</translation>
+    </message>
+    <message>
+        <source>Link to another vym map</source>
+        <translation type="vanished">Odkaz na jinou mapu programu VYM</translation>
+    </message>
+    <message>
+        <source>Animation</source>
+        <comment>Settings action</comment>
+        <translation>Pohyblivé obrázky</translation>
+    </message>
+    <message>
+        <source>&amp;Copy to new map</source>
+        <translation type="vanished">&amp;Kopírovat do nové mapy</translation>
+    </message>
+    <message>
+        <source>Mailbox</source>
+        <translation type="vanished">Poštovní schránka</translation>
+    </message>
+    <message>
+        <source>Formatting</source>
+        <translation type="vanished">Formátování</translation>
+    </message>
+    <message>
+        <source>Open VYM Documentation (pdf) </source>
+        <comment>Help action</comment>
+        <translation>Otevřít dokumentaci k VYM (pdf)</translation>
+    </message>
+    <message>
+        <source>Previous Map</source>
+        <translation type="vanished">Předchozí mapa</translation>
+    </message>
+    <message>
+        <source>vym is up to date.</source>
+        <translation type="vanished">VYM je v nejnovější verzi.</translation>
+    </message>
+    <message>
+        <source>&amp;Help</source>
+        <comment>Help menubar entry</comment>
+        <translation>&amp;Nápověda</translation>
+    </message>
+    <message>
+        <source>vymlinks - linking maps</source>
+        <translation type="vanished">Odkazy VYMu - spojení mezi mapami</translation>
+    </message>
+    <message>
+        <source>Get data from SUSE Bugzilla</source>
+        <translation type="vanished">Získat data od SUSE Bugzilla</translation>
+    </message>
+    <message>
+        <source>Time critical</source>
+        <translation type="vanished">Časově zásadní</translation>
+    </message>
+    <message>
+        <source>Autosave</source>
+        <comment>Settings action</comment>
+        <translation>Automaticky uložit</translation>
+    </message>
+    <message>
+        <source>Open linked map in background tab</source>
+        <translation type="vanished">Otevřít spojenou mapu v kartě na pozadí</translation>
+    </message>
+    <message>
+        <source>Dangerous</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Nebezpečné</translation>
+    </message>
+    <message>
+        <source>Download and show release notes</source>
+        <translation type="vanished">Stáhnout a ukázat poznámky k vydání</translation>
+    </message>
+    <message>
+        <source>Collapse one level</source>
+        <translation type="vanished">Složit jednu úroveň</translation>
+    </message>
+    <message>
+        <source>F&amp;ormat</source>
+        <comment>Format menu</comment>
+        <translation>F&amp;ormát</translation>
+    </message>
+    <message>
+        <source>Add timestamp</source>
+        <translation type="vanished">Přidat časové razítko</translation>
+    </message>
+    <message>
+        <source>Don&apos;t flagrget</source>
+        <translation type="vanished">Ne flagrget</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Zrušit</translation>
+    </message>
+    <message>
+        <source>Edit vym link...</source>
+        <translation type="vanished">Upravit spojení VYMu...</translation>
+    </message>
+    <message>
+        <source>Create</source>
+        <translation>Vytvořit</translation>
+    </message>
+    <message>
+        <source>Sort children</source>
+        <translation type="vanished">Roztřídit vedlejší větve</translation>
+    </message>
+    <message>
+        <source>&amp;New map</source>
+        <translation type="vanished">&amp;Nová mapa</translation>
+    </message>
+    <message>
+        <source>Create URL to SUSE FATE tool</source>
+        <translation type="vanished">Vytvořit nástroj (URL) pro SUSE Fate</translation>
+    </message>
+    <message>
+        <source>Dangerous</source>
+        <translation type="vanished">Nebezpečné</translation>
+    </message>
+    <message>
+        <source>Use modifier to draw xLinks</source>
+        <comment>Mode modifier</comment>
+        <translation>Použít upravovač pro založení xLinks</translation>
+    </message>
+    <message>
+        <source>Get data from Novell Bugzilla</source>
+        <translation type="vanished">Dostat data z Novell Bugzilla</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <translation>Editor poznámek</translation>
+    </message>
+    <message>
+        <source>Standard Flags toolbar</source>
+        <translation type="vanished">Nástrojový pruh s obvyklými příznaky</translation>
+    </message>
+    <message>
+        <source>Critcal error</source>
+        <translation>Vážná chyba</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <translation type="vanished">Obrázky</translation>
+    </message>
+    <message>
+        <source>Import</source>
+        <translation>Zavést</translation>
+    </message>
+    <message>
+        <source>To be improved</source>
+        <translation type="vanished">Ke zlepšení</translation>
+    </message>
+    <message>
+        <source>Format shortcuts</source>
+        <translation type="vanished">Zkratky pro formát</translation>
+    </message>
+    <message>
+        <source>Text with tasks</source>
+        <translation type="vanished">Text s úkoly</translation>
+    </message>
+    <message>
+        <source>Import</source>
+        <comment>File menu</comment>
+        <translation>Zavést</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <comment>File menu</comment>
+        <translation>Vyvést</translation>
+    </message>
+    <message>
+        <source>Remove</source>
+        <comment>Context menu name</comment>
+        <translation>Odstranit</translation>
+    </message>
+    <message>
+        <source>Oh no!</source>
+        <translation type="vanished">Ach ne!</translation>
+    </message>
+    <message>
+        <source>Search results list</source>
+        <translation type="vanished">Seznam s výsledky hledání</translation>
+    </message>
+    <message>
+        <source>History Window</source>
+        <translation type="vanished">Okno s historií</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already. Do you want to</source>
+        <translation>Soubor %1 již existuje.
+Chcete jej přepsat?</translation>
+    </message>
+    <message>
+        <source>Open URL</source>
+        <comment>Edit menu</comment>
+        <translation>Otevřít adresu (URL)</translation>
+    </message>
+    <message>
+        <source>Select</source>
+        <translation type="vanished">Vybrat</translation>
+    </message>
+    <message>
+        <source>Delete Selection</source>
+        <comment>Edit menu</comment>
+        <translation>Smazat výběr</translation>
+    </message>
+    <message>
+        <source>Detach branch and use as mapcenter</source>
+        <translation type="vanished">Odpojit větev a použít jako středisko mapy</translation>
+    </message>
+    <message>
+        <source>XLinks</source>
+        <translation type="vanished">Křížové odkazy</translation>
+    </message>
+    <message>
+        <source>Look here</source>
+        <translation type="vanished">Podívat se sem</translation>
+    </message>
+    <message>
+        <source>Edit URL...</source>
+        <translation type="vanished">Upravit adresy (URL)...</translation>
+    </message>
+    <message>
+        <source>(still experimental)</source>
+        <translation>(stále pokusné)</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find configuration for export to LibreOffice
+</source>
+        <translation>Nepodařilo se najít žádná nastavení pro vyvedení do programu LibreOffice
+</translation>
+    </message>
+    <message>
+        <source>Add   ...</source>
+        <translation type="vanished">Přidat...</translation>
+    </message>
+    <message>
+        <source>Reset sleep</source>
+        <translation type="vanished">Nastavit spánek znovu</translation>
+    </message>
+    <message>
+        <source>Bookmarks</source>
+        <translation>Záložky</translation>
+    </message>
+    <message>
+        <source>Open anyway</source>
+        <translation>Přesto otevřít</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find configuration for export to Open Office
+</source>
+        <translation type="vanished">Nepodařilo se najít žádná nastavení pro vyvedení do programu Open Office
+</translation>
+    </message>
+    <message>
+        <source>Toolbars</source>
+        <translation type="vanished">Nástrojové pruhy</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <translation>Nepodařilo se nalézt žádný program pro otevření %1.
+</translation>
+    </message>
+    <message>
+        <source>I just love...</source>
+        <translation type="vanished">Jednoduše miluju...</translation>
+    </message>
+    <message>
+        <source>History for %1</source>
+        <translation type="vanished">Historie pro %1</translation>
+    </message>
+    <message>
+        <source>Next slide</source>
+        <translation type="vanished">Další snímek</translation>
+    </message>
+    <message>
+        <source>Set number of undo levels</source>
+        <comment>Settings action</comment>
+        <translation>Nastavit počet kroků zpět</translation>
+    </message>
+    <message>
+        <source>%1 items on map
+</source>
+        <translation type="vanished">%1 předmětů na mapě
+</translation>
+    </message>
+    <message>
+        <source>Properties</source>
+        <translation>Vlastnosti</translation>
+    </message>
+    <message>
+        <source>Collapse unselected levels</source>
+        <translation type="vanished">Složit nevybrané úrovně</translation>
+    </message>
+    <message>
+        <source>Task editor</source>
+        <translation type="vanished">Editor úkolů</translation>
+    </message>
+    <message>
+        <source>Tree editor</source>
+        <translation type="vanished">Editor stromu</translation>
+    </message>
+    <message>
+        <source>Thank you for enabling downloads!</source>
+        <translation>Poděkování za povolení stahování!</translation>
+    </message>
+    <message>
+        <source>Note editor</source>
+        <translation type="vanished">Editor poznámek</translation>
+    </message>
+    <message>
+        <source>Toggle target...</source>
+        <translation type="vanished">Přepnout cíl...</translation>
+    </message>
+    <message>
+        <source>images</source>
+        <translation type="vanished">Obrázky</translation>
+    </message>
+    <message>
+        <source>Add Image...</source>
+        <translation type="vanished">Přidat obrázek...</translation>
+    </message>
+    <message>
+        <source>Move up</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Posunout větev nahoru</translation>
+    </message>
+    <message>
+        <source>Sleep %1 day</source>
+        <translation type="vanished">Spát %1 den</translation>
+    </message>
+    <message>
+        <source>Move branch down</source>
+        <comment>Edit menu</comment>
+        <translation>Posunout větev dolů</translation>
+    </message>
+    <message>
+        <source>Set application to open PDF files</source>
+        <translation>Nastavit program pro otevírání souborů PDF</translation>
+    </message>
+    <message>
+        <source>Repeat last export (%1)</source>
+        <translation>Zopakovat poslední vyvedení (%1)</translation>
+    </message>
+    <message>
+        <source>Unimportant</source>
+        <translation type="vanished">Nedůležité</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation>Vážná chyba</translation>
+    </message>
+    <message>
+        <source>Save map as</source>
+        <translation>Uložit mapu jako</translation>
+    </message>
+    <message>
+        <source>About QT</source>
+        <comment>Help action</comment>
+        <translation>O Qt</translation>
+    </message>
+    <message>
+        <source>Remove only branch and keep its children </source>
+        <translation type="vanished">Odstranit větev, vedlejší větve zachovat</translation>
+    </message>
+    <message>
+        <source>Export to</source>
+        <translation>Vyvést jako</translation>
+    </message>
+    <message>
+        <source>Important</source>
+        <translation type="vanished">Důležité</translation>
+    </message>
+    <message>
+        <source>Take care!</source>
+        <translation type="vanished">Opatrně!</translation>
+    </message>
+    <message>
+        <source>History window</source>
+        <translation type="vanished">Okno s historií</translation>
+    </message>
+    <message>
+        <source>subtree is scrolled</source>
+        <translation type="vanished">Vedlejší strom je svinut</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open map %1</source>
+        <translation>Mapu %1 se nepodařilo otevřít</translation>
+    </message>
+    <message>
+        <source>Main window</source>
+        <translation type="vanished">Hlavní okno</translation>
+    </message>
+    <message>
+        <source>Open URL in new tab</source>
+        <comment>Edit menu</comment>
+        <translation>Otevřít adresy (URL) v nové kartě</translation>
+    </message>
+    <message>
+        <source>slides</source>
+        <translation type="vanished">Snímky</translation>
+    </message>
+    <message>
+        <source>Task editor: Set number of parents</source>
+        <translation type="vanished">Editor úkolů: Nastavit počet rodičovských větví</translation>
+    </message>
+    <message>
+        <source>Map target</source>
+        <translation type="vanished">Cíl</translation>
+    </message>
+    <message>
+        <source>URLs and vymLinks toolbar</source>
+        <translation type="vanished">Nástrojový pruh pro adresy (URL) a odkazy VYMu</translation>
+    </message>
+    <message>
+        <source>(readonly)</source>
+        <translation>(pouze pro čtení)</translation>
+    </message>
+    <message>
+        <source>Use heading for URL</source>
+        <comment>Edit menu</comment>
+        <translation>Převzít popis jako adresu (URL)</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Vytvořit adresu (URL) k Novell Bugzilla</translation>
+    </message>
+    <message>
+        <source>xLinks</source>
+        <translation type="vanished">Křížové odkazy</translation>
+    </message>
+    <message>
+        <source>&amp;Restore last session</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Obnovit poslední sezení</translation>
+    </message>
+    <message>
+        <source>Spreadsheet</source>
+        <translation>Tabulkový dokument</translation>
+    </message>
+    <message>
+        <source>Unscroll children</source>
+        <translation type="vanished">Roztáhnout vedlejší větve</translation>
+    </message>
+    <message>
+        <source>Please use Settings-&gt;</source>
+        <translation>Použijte, prosím, nastavení -&gt;</translation>
+    </message>
+    <message>
+        <source>Bugzilla handling</source>
+        <translation type="vanished">Klávesové zkratky</translation>
+    </message>
+    <message>
+        <source>Status - missing, not started</source>
+        <translation type="vanished">Stav - neúplné, nezapočato</translation>
+    </message>
+    <message>
+        <source>Flags toolbar</source>
+        <translation type="vanished">Nástrojový pruh pro příznaky</translation>
+    </message>
+    <message>
+        <source>branches</source>
+        <translation type="vanished">Větve</translation>
+    </message>
+    <message>
+        <source>Tasks</source>
+        <comment>Context menu</comment>
+        <translation>Úkoly</translation>
+    </message>
+    <message>
+        <source>Sort children backwards</source>
+        <translation type="vanished">Roztřídit vedlejší větve vzestupně</translation>
+    </message>
+    <message>
+        <source>Password</source>
+        <translation type="vanished">Heslo</translation>
+    </message>
+    <message>
+        <source>Really?</source>
+        <translation type="vanished">Skutečně?</translation>
+    </message>
+    <message>
+        <source>Text (ASCII)...</source>
+        <translation type="vanished">Text (ASCII)...</translation>
+    </message>
+    <message>
+        <source>Load vym map</source>
+        <translation>Nahrát mapu VYMu</translation>
+    </message>
+    <message>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Vložit</translation>
+    </message>
+    <message>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation>Tabulkový dokument</translation>
+    </message>
+    <message>
+        <source>Modifier modes toolbar</source>
+        <translation type="vanished">Nástrojový pruh pro režimy upravovače</translation>
+    </message>
+    <message>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Znovu</translation>
+    </message>
+    <message>
+        <source>Import: Replace selection with vym map</source>
+        <translation>Zavedení: Nahradit výběr mapou</translation>
+    </message>
+    <message>
+        <source>Priority</source>
+        <translation type="vanished">Přednost</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find the documentation %1 in:
+%2</source>
+        <translation>Dokumentaci %1 se v:
+%2 nepodařilo najít</translation>
+    </message>
+    <message>
+        <source>View shortcuts</source>
+        <translation type="vanished">Zobrazit zkratky</translation>
+    </message>
+    <message>
+        <source>Show keyboard shortcuts</source>
+        <translation type="vanished">Ukázat klávesové zkratky</translation>
+    </message>
+    <message>
+        <source>Edit actions toolbar</source>
+        <translation type="vanished">Nástrojový pruh činností úprav</translation>
+    </message>
+    <message>
+        <source>Surprise!</source>
+        <translation type="vanished">Překvapení!</translation>
+    </message>
+    <message>
+        <source>Add map (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>Vložit mapu (přidat do výběru)</translation>
+    </message>
+    <message>
+        <source>Call...</source>
+        <translation type="vanished">Zavolat...</translation>
+    </message>
+    <message>
+        <source>Save image</source>
+        <comment>Context action</comment>
+        <translation>Uložit obrázek</translation>
+    </message>
+    <message>
+        <source>SUSE Fate tool handling</source>
+        <translation type="vanished">Nástroj SUSE Fate</translation>
+    </message>
+    <message>
+        <source>Edit branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>Upravit větev po jejím přidání (znovu ji popsat)</translation>
+    </message>
+    <message>
+        <source>Set application to zip/unzip files</source>
+        <translation>Nastavit program pro rozbalení/zabalení souborů</translation>
+    </message>
+    <message>
+        <source>Excellent</source>
+        <translation type="vanished">Vynikající</translation>
+    </message>
+    <message>
+        <source>Task list</source>
+        <translation type="vanished">Seznam úkolů</translation>
+    </message>
+    <message>
+        <source>Number of seconds before autosave:</source>
+        <translation>Počet sekund před automatickým uložením:</translation>
+    </message>
+    <message>
+        <source>Please allow vym to download release notes!</source>
+        <translation>Povolte, prosím, VYMu přístup k poznámkám o vydání!</translation>
+    </message>
+    <message>
+        <source>Set application to open pdf files</source>
+        <comment>Settings action</comment>
+        <translation>Nastavit program pro otevírání souborů PDF</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Kopírovat</translation>
+    </message>
+    <message>
+        <source>Hide in exports</source>
+        <comment>Edit menu</comment>
+        <translation>Neukazovat ve vyvedení</translation>
+    </message>
+    <message>
+        <source>Edit Map Info...</source>
+        <translation type="vanished">Upravit informace o mapě...</translation>
+    </message>
+    <message>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation>Vyj&amp;mout</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell FATE</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Vytvořit adresu (URL) k Novell FATE</translation>
+    </message>
+    <message>
+        <source>Rotate counterclockwise</source>
+        <translation type="vanished">Otočit proti směru hodinových ručiček</translation>
+    </message>
+    <message>
+        <source>Test shortcuts</source>
+        <translation type="vanished">Zkušební zkratky</translation>
+    </message>
+    <message>
+        <source>Select next</source>
+        <translation type="vanished">Vybrat další</translation>
+    </message>
+    <message>
+        <source>&amp;Save...</source>
+        <comment>File menu</comment>
+        <translation>&amp;Uložit...</translation>
+    </message>
+    <message>
+        <source>Number of visible parents in find results window</source>
+        <translation type="vanished">Počet viditelných rodičovských větví v okně s výsledky hledání</translation>
+    </message>
+    <message>
+        <source>Export as CSV</source>
+        <translation>Vyvést jako CSV</translation>
+    </message>
+    <message>
+        <source>Select previous</source>
+        <translation type="vanished">Vybrat předchozí</translation>
+    </message>
+    <message>
+        <source>Hide object in exported maps</source>
+        <translation type="vanished">Neukazovat předměty ve vyvedených mapách</translation>
+    </message>
+    <message>
+        <source>Help shortcuts</source>
+        <translation type="vanished">Nápovědné zkratky</translation>
+    </message>
+    <message>
+        <source>&amp;Detach</source>
+        <translation type="vanished">&amp;Odpojit</translation>
+    </message>
+    <message>
+        <source>Remove children</source>
+        <translation type="vanished">Odstranit vedlejší větve</translation>
+    </message>
+    <message>
+        <source>Number of parents shown in find results:</source>
+        <translation>Počet viditelných rodičovských větví v okně s výsledky hledání:</translation>
+    </message>
+    <message>
+        <source>URL to Bugzilla </source>
+        <translation type="vanished">Adresa (URL) k Bugzille</translation>
+    </message>
+    <message>
+        <source>Extract URLs from note</source>
+        <translation type="vanished">Vytáhnout adresy (URL) z poznámky</translation>
+    </message>
+    <message>
+        <source>Import: Add vym map to selection</source>
+        <translation>Zavedení: Přidat mapu k výběru</translation>
+    </message>
+    <message>
+        <source>Antialiasing</source>
+        <comment>View action</comment>
+        <translation>Vyhlazování</translation>
+    </message>
+    <message>
+        <source>Add branch above</source>
+        <comment>Edit menu</comment>
+        <translation>Přidat novou větev nahoře</translation>
+    </message>
+    <message>
+        <source>This map does not exist:
+  %1
+Do you want to create a new one?</source>
+        <translation>Tato mapa neexistuje:
+  %1
+Chcete vytvořit novou?</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save %1,
+because of existing lockfile:
+
+%2</source>
+        <translation>Nepodařilo se uložit %1,
+protože se nepodařilo vytvořit uzamykací soubor:
+
+%2</translation>
+    </message>
+    <message>
+        <source>Check, if updates are available</source>
+        <translation type="vanished">Zjišťovat dostupnost aktualizací</translation>
+    </message>
+    <message>
+        <source>Find duplicate URLs</source>
+        <translation type="vanished">Najít zdvojené adresy (URL)</translation>
+    </message>
+    <message>
+        <source>Save modified map before closing it</source>
+        <translation>Uložit upravenou mapu před jejím zavřením</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save %1</source>
+        <translation>Nepodařilo se uložit %1</translation>
+    </message>
+    <message>
+        <source>Set path for macros</source>
+        <comment>Settings action</comment>
+        <translation>Nastavit cestu pro makra</translation>
+    </message>
+    <message>
+        <source>Set &amp;Link Color</source>
+        <translation>Nastavit barvu &amp;spojení</translation>
+    </message>
+    <message>
+        <source>Zoom out</source>
+        <comment>View action</comment>
+        <translation>Oddálit</translation>
+    </message>
+    <message>
+        <source>Open VYM example maps </source>
+        <comment>Help action</comment>
+        <translation>Otevřít příkladové mapy programu VYM</translation>
+    </message>
+    <message>
+        <source>reset Zoom</source>
+        <comment>View action</comment>
+        <translation>Žádné zvětšení</translation>
+    </message>
+    <message>
+        <source>Update information</source>
+        <translation>Informace o aktualizaci</translation>
+    </message>
+    <message>
+        <source>Debug info</source>
+        <translation type="vanished">Informace k hledání chyb</translation>
+    </message>
+    <message>
+        <source>Follow XLink</source>
+        <comment>Context menu name</comment>
+        <translation>Sledovat xLink</translation>
+    </message>
+    <message>
+        <source>Selections</source>
+        <translation type="vanished">Výběr</translation>
+    </message>
+    <message>
+        <source>The map %1
+is already opened.Opening the same map in multiple editors may lead 
+to confusion when finishing working with vym.Do you want to</source>
+        <translation>Mapa %1
+je již ve VYMu otevřena. Otevření téže mapy ve více editorech může
+při ukončení práce s programem VYM vést ke zmatení.
+Chcete </translation>
+    </message>
+    <message>
+        <source>Add branch below</source>
+        <comment>Edit menu</comment>
+        <translation>Přidat novou větev dole</translation>
+    </message>
+    <message>
+        <source>unknown user</source>
+        <translation type="vanished">Neznámý uživatel</translation>
+    </message>
+    <message>
+        <source>Grow selection</source>
+        <translation type="vanished">Zvětšit výběr</translation>
+    </message>
+    <message>
+        <source>Check for release notes and updates</source>
+        <translation type="vanished">Dívat se po poznámkách k vydání a zjišťovat dostupnost aktualizací</translation>
+    </message>
+    <message>
+        <source>Set URL to a local file</source>
+        <translation>Nastavit adresu (URL) k místnímu souboru</translation>
+    </message>
+    <message>
+        <source>Pic&amp;k color</source>
+        <comment>Edit menu</comment>
+        <translation>Pře&amp;vzít barvu</translation>
+    </message>
+    <message>
+        <source>Linkstyle Thick Line</source>
+        <translation>Styl spojení silná čára</translation>
+    </message>
+    <message>
+        <source>Editors toolbar</source>
+        <translation type="vanished">Nástrojový pruh editory</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start %1 to open a new tab in %2.</source>
+        <translation>Nepodařilo se spustit %1 pro otevření nové karty v %2.</translation>
+    </message>
+    <message>
+        <source>Map Editors</source>
+        <translation type="vanished">Editor mapy</translation>
+    </message>
+    <message>
+        <source>Select default font</source>
+        <translation type="vanished">Vybrat výchozí písmo</translation>
+    </message>
+    <message>
+        <source>Info</source>
+        <comment>Standardflag</comment>
+        <translation>Informace</translation>
+    </message>
+    <message>
+        <source>Add attribute</source>
+        <translation>Přidat vlastnost</translation>
+    </message>
+    <message>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Zpět</translation>
+    </message>
+    <message>
+        <source>Search functions</source>
+        <translation type="vanished">Hledat funkce</translation>
+    </message>
+    <message>
+        <source>Settings have been changed. The next map opened will have &quot;%1&quot; undo/redo levels</source>
+        <translation>Nastavení byla změněna. Následující otevřená mapa bude mít &quot;%1&quot; kroků zpět/znovu</translation>
+    </message>
+    <message>
+        <source>Reminder</source>
+        <translation type="vanished">Připomínka</translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation>Nová adresa (URL):</translation>
+    </message>
+    <message>
+        <source>Removing parts of a map</source>
+        <translation type="vanished">Odstranění částí mapy</translation>
+    </message>
+    <message>
+        <source>Open all URLs in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Otevřít všechny adresy (URL) ve vedlejším stromu</translation>
+    </message>
+    <message>
+        <source>Zoom in</source>
+        <comment>View action</comment>
+        <translation>Přiblížit</translation>
+    </message>
+    <message>
+        <source>unnamed</source>
+        <translation type="vanished">Nepojmenovaný</translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation>Záložky Firefoxu</translation>
+    </message>
+    <message>
+        <source>Various</source>
+        <translation type="vanished">Různé</translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <comment>Toolbar for file actions</comment>
+        <translation type="vanished">&amp;Mapa</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation>Přepsat</translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation>Odkaz na jinou mapu</translation>
+    </message>
+    <message>
+        <source>Smooth pixmap transformations</source>
+        <translation type="vanished">Jemné zobrazení pixmapy</translation>
+    </message>
+    <message>
+        <source>Save &amp;As...</source>
+        <comment>File menu</comment>
+        <translation>Uložit &amp;jako...</translation>
+    </message>
+    <message>
+        <source>Saved  %1</source>
+        <translation>%1 uloženo</translation>
+    </message>
+    <message>
+        <source>Settings</source>
+        <translation>Nastavení</translation>
+    </message>
+    <message>
+        <source>Load Freemind map</source>
+        <translation>Nahrát mapu pro otevřenou mysl</translation>
+    </message>
+    <message>
+        <source>Move branch up</source>
+        <comment>Edit menu</comment>
+        <translation>Posunout větev nahoru</translation>
+    </message>
+    <message>
+        <source>Number of parents shown for a task:</source>
+        <translation>Počet rodičovských větví ukázaný pro úkol:</translation>
+    </message>
+    <message>
+        <source>Next Map</source>
+        <translation type="vanished">Další mapa</translation>
+    </message>
+    <message>
+        <source>Exports</source>
+        <translation type="vanished">Vyvedení</translation>
+    </message>
+    <message>
+        <source>Use modifier to color branches</source>
+        <comment>Mode modifier</comment>
+        <translation>Použít upravovač k obarvení větví</translation>
+    </message>
+    <message>
+        <source>Find...</source>
+        <translation type="vanished">Najít...</translation>
+    </message>
+    <message>
+        <source>Script Editor</source>
+        <translation>Editor skriptů</translation>
+    </message>
+    <message>
+        <source>KDE 4 Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation type="vanished">Záložky KDE 4</translation>
+    </message>
+    <message>
+        <source>URL to Document </source>
+        <translation type="vanished">Adresa (URL) k dokumentu</translation>
+    </message>
+    <message>
+        <source>Map properties...</source>
+        <translation type="vanished">Vlastnosti mapy...</translation>
+    </message>
+    <message>
+        <source>Set application to open an URL</source>
+        <translation>Nastavit program pro otevírání adres (URL)</translation>
+    </message>
+    <message>
+        <source>Enter sleep time (number of days or date YYYY-MM-DD or DD.MM[.YYYY]</source>
+        <translation type="vanished">Zadat čas spánku (počet dní nebo datum RRRR-MM-DD nebo DD.MM[.RRRR]</translation>
+    </message>
+    <message>
+        <source>Edit XLink</source>
+        <comment>Context menu name</comment>
+        <translation>Upravit xLink</translation>
+    </message>
+    <message>
+        <source>Save selection</source>
+        <comment>Edit menu</comment>
+        <translation>Uložit výběr</translation>
+    </message>
+    <message>
+        <source>Load vym example map</source>
+        <translation>Otevřít příkladovou mapu programu VYM</translation>
+    </message>
+    <message>
+        <source>Get data from Novell Bugzilla for subtree</source>
+        <translation type="vanished">Dostat data z Novell Bugzilla pro vedlejší strom</translation>
+    </message>
+    <message>
+        <source>Follow XLink</source>
+        <comment>Context menu</comment>
+        <translation>Sledovat xLink</translation>
+    </message>
+    <message>
+        <source>Zoom toolbar</source>
+        <translation type="vanished">Nástrojový pruh pro prohlížení</translation>
+    </message>
+    <message>
+        <source>Open all URLs in subtree (including scrolled branches)</source>
+        <translation type="vanished">Otevřít všechny adresy (URL) ve vedlejším stromu</translation>
+    </message>
+    <message>
+        <source>forward</source>
+        <translation type="vanished">Vpřed</translation>
+    </message>
+    <message>
+        <source>Colors toolbar</source>
+        <translation type="vanished">Nástrojový pruh pro barvy</translation>
+    </message>
+    <message>
+        <source>subtree is temporary scrolled</source>
+        <translation type="vanished">Vedlejší strom je dočasně svinut</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation>Varování</translation>
+    </message>
+    <message>
+        <source>Open all vym links in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Otevřít všechny odkazy na mapy VYMu ve vedlejším stromu</translation>
+    </message>
+    <message>
+        <source>Please allow vym to check for updates!</source>
+        <translation>Povolte, prosím, VYMu zjišťovat dostupnost aktualizací!</translation>
+    </message>
+    <message>
+        <source>Previous slide</source>
+        <translation type="vanished">Předchozí snímek</translation>
+    </message>
+    <message>
+        <source>Heading editor</source>
+        <translation type="vanished">Editor popisů</translation>
+    </message>
+    <message>
+        <source>Get data from SUSE Bugzilla for subtree</source>
+        <translation type="vanished">Získat data z Novell Bugzilla pro vedlejší strom</translation>
+    </message>
+    <message>
+        <source>This will help</source>
+        <translation type="vanished">To by mohlo pomoci</translation>
+    </message>
+    <message>
+        <source>&amp;Close Map</source>
+        <comment>File menu</comment>
+        <translation>&amp;Zavřít mapu</translation>
+    </message>
+    <message>
+        <source>&amp;Use color of heading for link</source>
+        <comment>Branch attribute</comment>
+        <translation>&amp;Použít barvu popisu pro spojení</translation>
+    </message>
+    <message>
+        <source>Open Recent</source>
+        <comment>File menu</comment>
+        <translation>Otevřít nedávný</translation>
+    </message>
+    <message>
+        <source>Text Editors</source>
+        <translation type="vanished">Editor textu</translation>
+    </message>
+    <message>
+        <source>Status - ok,done</source>
+        <translation type="vanished">Stav - OK, vyřízeno</translation>
+    </message>
+    <message>
+        <source>Create URL to SUSE Bugzilla</source>
+        <translation type="vanished">Vytvořit adresu (URL) pro SUSE Bugzilla</translation>
+    </message>
+    <message>
+        <source>Unselect all</source>
+        <translation type="vanished">Nevybrat nic</translation>
+    </message>
+    <message>
+        <source>Goto target...</source>
+        <translation type="vanished">Jít na cíl...</translation>
+    </message>
+    <message>
+        <source>Status - work in progress</source>
+        <translation type="vanished">Stav - práce na postupu</translation>
+    </message>
+    <message>
+        <source>Set &amp;Selection Color</source>
+        <translation>Nastavit barvu &amp;výběru</translation>
+    </message>
+    <message>
+        <source>Write backup file on save</source>
+        <comment>Settings action</comment>
+        <translation>Zapsat při ukládání zálohovací soubor</translation>
+    </message>
+    <message>
+        <source>Previous  slide</source>
+        <translation type="vanished">Předchozí snímek</translation>
+    </message>
+    <message>
+        <source>Reset selection size</source>
+        <translation type="vanished">Nastavit velikost výběru znovu</translation>
+    </message>
+    <message>
+        <source>References (URLs, vymLinks, ...)</source>
+        <translation type="vanished">Odkazy (adresy, spojení VYMu, ...)</translation>
+    </message>
+    <message>
+        <source>Set application to zip/unzip files</source>
+        <comment>Settings action</comment>
+        <translation>Nastavit program pro rozbalení/zabalení souborů</translation>
+    </message>
+    <message>
+        <source>Script editor</source>
+        <translation type="vanished">Editor skriptů</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t set sleep time to %1.
+</source>
+        <translation>Nepodařilo se nastavit čas spánku na %1.</translation>
+    </message>
+    <message>
+        <source>Checking for updates...</source>
+        <translation type="vanished">Prověřuje se dostupnost aktualizací...</translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <comment>Menu for file actions</comment>
+        <translation>&amp;Mapa</translation>
+    </message>
+    <message>
+        <source>To be discussed</source>
+        <translation type="vanished">K probrání</translation>
+    </message>
+    <message>
+        <source>Very important!</source>
+        <translation type="vanished">Velmi důležité!</translation>
+    </message>
+    <message>
+        <source>Expand one level</source>
+        <translation type="vanished">Rozbalit jednu úroveň</translation>
+    </message>
+    <message>
+        <source>Linkstyle Thick Curve</source>
+        <translation>Styl spojení silná křivka</translation>
+    </message>
+    <message>
+        <source>Add map (replace)</source>
+        <comment>Edit menu</comment>
+        <translation>Vložit mapu (nahradit výběr)</translation>
+    </message>
+    <message>
+        <source>Important</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Důležité</translation>
+    </message>
+    <message>
+        <source>E&amp;xit</source>
+        <comment>File menu</comment>
+        <translation>&amp;Ukončit</translation>
+    </message>
+    <message>
+        <source>Number of undo/redo levels:</source>
+        <translation>Počet kroků zpět/znovu:</translation>
+    </message>
+    <message>
+        <source>Heading Editor</source>
+        <translation>Editor popisů</translation>
+    </message>
+    <message>
+        <source>Rotate rclockwise</source>
+        <translation type="vanished">Otočit po směru hodinových ručiček</translation>
+    </message>
+    <message>
+        <source>Color sub&amp;tree</source>
+        <comment>Edit menu</comment>
+        <translation>Obarvit vedlejší &amp;strom</translation>
+    </message>
+    <message>
+        <source>Main window</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished">Hlavní okno</translation>
+    </message>
+    <message>
+        <source>Map Editors</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished">Editor mapy</translation>
+    </message>
+    <message>
+        <source>Text Editors</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished">Editor textu</translation>
+    </message>
+    <message>
+        <source>Search results list</source>
+        <comment>FindResultWidget</comment>
+        <translation type="unfinished">Seznam s výsledky hledání</translation>
+    </message>
+    <message>
+        <source>Property Editor</source>
+        <comment>PropertyEditor</comment>
+        <translation type="unfinished">Editor vlastností</translation>
+    </message>
+    <message>
+        <source>History window</source>
+        <comment>HistoryWidget</comment>
+        <translation type="unfinished">Okno s historií</translation>
+    </message>
+    <message>
+        <source>Task list</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished">Seznam úkolů</translation>
+    </message>
+    <message>
+        <source>&amp;New map</source>
+        <comment>File menu</comment>
+        <translation type="unfinished">&amp;Nová mapa</translation>
+    </message>
+    <message>
+        <source>&amp;Copy to new map</source>
+        <comment>File menu</comment>
+        <translation type="unfinished">&amp;Kopírovat do nové mapy</translation>
+    </message>
+    <message>
+        <source>Import Dir%1</source>
+        <comment>Import Filters</comment>
+        <translation type="unfinished">Zavést adresář %1</translation>
+    </message>
+    <message>
+        <source>Webpage (HTML)...</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished">Stránka (HTML)...</translation>
+    </message>
+    <message>
+        <source>Text (ASCII)...</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished">Text (ASCII)...</translation>
+    </message>
+    <message>
+        <source>Text with tasks</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished">Text s úkoly</translation>
+    </message>
+    <message>
+        <source>Text (A&amp;O report)...</source>
+        <comment>Export format</comment>
+        <translation type="unfinished">Text (formát A&amp;O)...</translation>
+    </message>
+    <message>
+        <source>Image%1</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished">Obrázek %1</translation>
+    </message>
+    <message>
+        <source>PDF%1</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished">PDF%1</translation>
+    </message>
+    <message>
+        <source>SVG%1</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished">SVG%1</translation>
+    </message>
+    <message>
+        <source>E&amp;dit</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Ú&amp;pravy</translation>
+    </message>
+    <message>
+        <source>Add mapcenter</source>
+        <comment>Canvas context menu</comment>
+        <translation type="unfinished">Přidat mapový střed</translation>
+    </message>
+    <message>
+        <source>&amp;Detach</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished">&amp;Odpojit</translation>
+    </message>
+    <message>
+        <source>Detach branch and use as mapcenter</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished">Odpojit větev a použít jako středisko mapy</translation>
+    </message>
+    <message>
+        <source>Sort children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Roztřídit vedlejší větve</translation>
+    </message>
+    <message>
+        <source>Sort children backwards</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Roztřídit vedlejší větve vzestupně</translation>
+    </message>
+    <message>
+        <source>Unscroll children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Roztáhnout vedlejší větve</translation>
+    </message>
+    <message>
+        <source>Grow selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Zvětšit výběr</translation>
+    </message>
+    <message>
+        <source>Shrink selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Zmenšit výběr</translation>
+    </message>
+    <message>
+        <source>Reset selection size</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Nastavit velikost výběru znovu</translation>
+    </message>
+    <message>
+        <source>Collapse one level</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Složit jednu úroveň</translation>
+    </message>
+    <message>
+        <source>Collapse unselected levels</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Složit nevybrané úrovně</translation>
+    </message>
+    <message>
+        <source>Expand all branches</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Rozdělat všechny větve</translation>
+    </message>
+    <message>
+        <source>Expand one level</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Rozbalit jednu úroveň</translation>
+    </message>
+    <message>
+        <source>References Context menu</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished">Klávesové zkratky</translation>
+    </message>
+    <message>
+        <source>Open all URLs in subtree (including scrolled branches)</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Otevřít všechny adresy (URL) ve vedlejším stromu</translation>
+    </message>
+    <message>
+        <source>Extract URLs from note</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Vytáhnout adresy (URL) z poznámky</translation>
+    </message>
+    <message>
+        <source>Edit URL...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Upravit adresy (URL)...</translation>
+    </message>
+    <message>
+        <source>Edit local URL...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Upravit místní adresu (URL)...</translation>
+    </message>
+    <message>
+        <source>Bugzilla handling</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished">Klávesové zkratky</translation>
+    </message>
+    <message>
+        <source>Create URL to SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Vytvořit adresu (URL) pro SUSE Bugzilla</translation>
+    </message>
+    <message>
+        <source>Get data from SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Získat data od SUSE Bugzilla</translation>
+    </message>
+    <message>
+        <source>Get data from SUSE Bugzilla for subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Získat data z Novell Bugzilla pro vedlejší strom</translation>
+    </message>
+    <message>
+        <source>SUSE Fate tool handling</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished">Nástroj SUSE Fate</translation>
+    </message>
+    <message>
+        <source>Create URL to SUSE FATE tool</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Vytvořit nástroj (URL) pro SUSE Fate</translation>
+    </message>
+    <message>
+        <source>vymlinks - linking maps</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished">Odkazy VYMu - spojení mezi mapami</translation>
+    </message>
+    <message>
+        <source>Open linked map in background tab</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Otevřít spojenou mapu v kartě na pozadí</translation>
+    </message>
+    <message>
+        <source>Edit vym link...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Upravit spojení VYMu...</translation>
+    </message>
+    <message>
+        <source>Exports</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished">Vyvedení</translation>
+    </message>
+    <message>
+        <source>Tasks</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished">Úkoly</translation>
+    </message>
+    <message>
+        <source>Toggle task</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Přepnout úkol</translation>
+    </message>
+    <message>
+        <source>Cycle task status</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Přepínat stav úkolu</translation>
+    </message>
+    <message>
+        <source>Reset sleep</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished">Nastavit spánek znovu</translation>
+    </message>
+    <message>
+        <source>Sleep %1 days</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished">Spát %1 dny(ů)</translation>
+    </message>
+    <message>
+        <source>Sleep %1 day</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished">Spát %1 den</translation>
+    </message>
+    <message>
+        <source>Sleep %1 weeks</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished">Spát %1 týdny(ů)</translation>
+    </message>
+    <message>
+        <source>Removing parts of a map</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished">Odstranění částí mapy</translation>
+    </message>
+    <message>
+        <source>Remove only branch and keep its children </source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Odstranit větev, vedlejší větve zachovat</translation>
+    </message>
+    <message>
+        <source>Remove children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Odstranit vedlejší větve</translation>
+    </message>
+    <message>
+        <source>Various</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished">Různé</translation>
+    </message>
+    <message>
+        <source>Add timestamp</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Přidat časové razítko</translation>
+    </message>
+    <message>
+        <source>Map properties...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Vlastnosti mapy...</translation>
+    </message>
+    <message>
+        <source>Add   ...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Přidat...</translation>
+    </message>
+    <message>
+        <source>Property window</source>
+        <comment>Dialog to edit properties of selection</comment>
+        <translation type="unfinished">Okno vlastností</translation>
+    </message>
+    <message>
+        <source>Selections</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished">Výběr</translation>
+    </message>
+    <message>
+        <source>Select</source>
+        <comment>Select menu</comment>
+        <translation type="unfinished">Vybrat</translation>
+    </message>
+    <message>
+        <source>Toggle target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Přepnout cíl...</translation>
+    </message>
+    <message>
+        <source>Goto target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Jít na cíl...</translation>
+    </message>
+    <message>
+        <source>Move to target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Přesunout na cíl...</translation>
+    </message>
+    <message>
+        <source>Select previous</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Vybrat předchozí</translation>
+    </message>
+    <message>
+        <source>Select next</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Vybrat další</translation>
+    </message>
+    <message>
+        <source>Unselect all</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Nevybrat nic</translation>
+    </message>
+    <message>
+        <source>Search functions</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished">Hledat funkce</translation>
+    </message>
+    <message>
+        <source>Find...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Najít...</translation>
+    </message>
+    <message>
+        <source>Find duplicate URLs</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Najít zdvojené adresy (URL)</translation>
+    </message>
+    <message>
+        <source>Formatting</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished">Formátování</translation>
+    </message>
+    <message>
+        <source>Select default font</source>
+        <comment>Branch attribute</comment>
+        <translation type="unfinished">Vybrat výchozí písmo</translation>
+    </message>
+    <message>
+        <source>Toolbars</source>
+        <comment>Toolbars overview in view menu</comment>
+        <translation type="unfinished">Nástrojové pruhy</translation>
+    </message>
+    <message>
+        <source>Views</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished">Pohledy</translation>
+    </message>
+    <message>
+        <source>Rotate counterclockwise</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Otočit proti směru hodinových ručiček</translation>
+    </message>
+    <message>
+        <source>Rotate rclockwise</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Otočit po směru hodinových ručiček</translation>
+    </message>
+    <message>
+        <source>Center on selection</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Zaměřit na výběr</translation>
+    </message>
+    <message>
+        <source>Note editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Editor poznámek</translation>
+    </message>
+    <message>
+        <source>Heading editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Editor popisů</translation>
+    </message>
+    <message>
+        <source>Tree editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Editor stromu</translation>
+    </message>
+    <message>
+        <source>Task editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Editor úkolů</translation>
+    </message>
+    <message>
+        <source>Slide editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Editor snímků</translation>
+    </message>
+    <message>
+        <source>Script editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Editor skriptů</translation>
+    </message>
+    <message>
+        <source>History Window</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Okno s historií</translation>
+    </message>
+    <message>
+        <source>Smooth pixmap transformations</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Jemné zobrazení pixmapy</translation>
+    </message>
+    <message>
+        <source>Next Map</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Další mapa</translation>
+    </message>
+    <message>
+        <source>Previous Map</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Předchozí mapa</translation>
+    </message>
+    <message>
+        <source>Next slide</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Další snímek</translation>
+    </message>
+    <message>
+        <source>Previous slide</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Předchozí snímek</translation>
+    </message>
+    <message>
+        <source>Modifier modes</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished">Režimy modifikátorů</translation>
+    </message>
+    <message>
+        <source>Note</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">Poznámka</translation>
+    </message>
+    <message>
+        <source>URL to Document </source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">Adresa (URL) k dokumentu</translation>
+    </message>
+    <message>
+        <source>URL to Bugzilla </source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">Adresa (URL) k Bugzille</translation>
+    </message>
+    <message>
+        <source>Map target</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">Cíl</translation>
+    </message>
+    <message>
+        <source>Link to another vym map</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">Odkaz na jinou mapu programu VYM</translation>
+    </message>
+    <message>
+        <source>subtree is scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">Vedlejší strom je svinut</translation>
+    </message>
+    <message>
+        <source>subtree is temporary scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">Vedlejší strom je dočasně svinut</translation>
+    </message>
+    <message>
+        <source>Hide object in exported maps</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">Neukazovat předměty ve vyvedených mapách</translation>
+    </message>
+    <message>
+        <source>Standard Flags toolbar</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation type="unfinished">Nástrojový pruh s obvyklými příznaky</translation>
+    </message>
+    <message>
+        <source>This won&apos;t work!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">To nepůjde!</translation>
+    </message>
+    <message>
+        <source>Status - ok,done</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Stav - OK, vyřízeno</translation>
+    </message>
+    <message>
+        <source>Status - work in progress</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Stav - práce na postupu</translation>
+    </message>
+    <message>
+        <source>Status - missing, not started</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Stav - neúplné, nezapočato</translation>
+    </message>
+    <message>
+        <source>Take care!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Opatrně!</translation>
+    </message>
+    <message>
+        <source>Really?</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Skutečně?</translation>
+    </message>
+    <message>
+        <source>Good</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Dobré</translation>
+    </message>
+    <message>
+        <source>Bad</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Špatné</translation>
+    </message>
+    <message>
+        <source>Oh no!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Ach ne!</translation>
+    </message>
+    <message>
+        <source>Time critical</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Časově zásadní</translation>
+    </message>
+    <message>
+        <source>Call...</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Zavolat...</translation>
+    </message>
+    <message>
+        <source>Idea!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Nápad!</translation>
+    </message>
+    <message>
+        <source>Important</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Důležité</translation>
+    </message>
+    <message>
+        <source>Unimportant</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Nedůležité</translation>
+    </message>
+    <message>
+        <source>Very important!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Velmi důležité!</translation>
+    </message>
+    <message>
+        <source>Very unimportant!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Velice nedůležité!</translation>
+    </message>
+    <message>
+        <source>I like this</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Líbí se mi to</translation>
+    </message>
+    <message>
+        <source>I do not like this</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Nelíbí se mi to</translation>
+    </message>
+    <message>
+        <source>Rose</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Růže</translation>
+    </message>
+    <message>
+        <source>I just love...</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Jednoduše miluju...</translation>
+    </message>
+    <message>
+        <source>Surprise!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Překvapení!</translation>
+    </message>
+    <message>
+        <source>Dangerous</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Nebezpečné</translation>
+    </message>
+    <message>
+        <source>This will help</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">To by mohlo pomoci</translation>
+    </message>
+    <message>
+        <source>Priority</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Přednost</translation>
+    </message>
+    <message>
+        <source>Back</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Zpět</translation>
+    </message>
+    <message>
+        <source>forward</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Vpřed</translation>
+    </message>
+    <message>
+        <source>Look here</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Podívat se sem</translation>
+    </message>
+    <message>
+        <source>Don&apos;t flagrget</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Ne flagrget</translation>
+    </message>
+    <message>
+        <source>Flag</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Příznak</translation>
+    </message>
+    <message>
+        <source>Home</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Domov</translation>
+    </message>
+    <message>
+        <source>Telephone</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Telefon</translation>
+    </message>
+    <message>
+        <source>Music</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Hudba</translation>
+    </message>
+    <message>
+        <source>Mailbox</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Poštovní schránka</translation>
+    </message>
+    <message>
+        <source>Maix</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Poštovní schránka</translation>
+    </message>
+    <message>
+        <source>Password</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Heslo</translation>
+    </message>
+    <message>
+        <source>To be improved</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Ke zlepšení</translation>
+    </message>
+    <message>
+        <source>Stop</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Zastavit</translation>
+    </message>
+    <message>
+        <source>Magic</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Kouzlo</translation>
+    </message>
+    <message>
+        <source>To be discussed</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">K probrání</translation>
+    </message>
+    <message>
+        <source>Reminder</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Připomínka</translation>
+    </message>
+    <message>
+        <source>Excellent</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Vynikající</translation>
+    </message>
+    <message>
+        <source>Linux</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Linux</translation>
+    </message>
+    <message>
+        <source>Sweet</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Milé</translation>
+    </message>
+    <message>
+        <source>Check for release notes and updates</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">Dívat se po poznámkách k vydání a zjišťovat dostupnost aktualizací</translation>
+    </message>
+    <message>
+        <source>Set author for new maps</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">Zadat autora nových map</translation>
+    </message>
+    <message>
+        <source>Number of visible parents in task editor</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">Počet viditelných rodičovských větví v editoru úkolů</translation>
+    </message>
+    <message>
+        <source>Number of visible parents in find results window</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">Počet viditelných rodičovských větví v okně s výsledky hledání</translation>
+    </message>
+    <message>
+        <source>Automatic layout</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">Automatické rozvržení</translation>
+    </message>
+    <message>
+        <source>Download and show release notes</source>
+        <comment>Help action</comment>
+        <translation type="unfinished">Stáhnout a ukázat poznámky k vydání</translation>
+    </message>
+    <message>
+        <source>Check, if updates are available</source>
+        <comment>Help action</comment>
+        <translation type="unfinished">Zjišťovat dostupnost aktualizací</translation>
+    </message>
+    <message>
+        <source>Show keyboard shortcuts</source>
+        <comment>Help action</comment>
+        <translation type="unfinished">Ukázat klávesové zkratky</translation>
+    </message>
+    <message>
+        <source>Debug info</source>
+        <comment>Option to show debugging info</comment>
+        <translation type="unfinished">Informace k hledání chyb</translation>
+    </message>
+    <message>
+        <source>References (URLs, vymLinks, ...)</source>
+        <comment>Context menu name</comment>
+        <translation type="unfinished">Odkazy (adresy, spojení VYMu, ...)</translation>
+    </message>
+    <message>
+        <source>XLinks</source>
+        <comment>Menu for file actions</comment>
+        <translation type="unfinished">Křížové odkazy</translation>
+    </message>
+    <message>
+        <source>File actions toolbar</source>
+        <comment>Toolbar for file actions</comment>
+        <translation type="unfinished">Nástrojový pruh souborových činností</translation>
+    </message>
+    <message>
+        <source>Undo and clipboard toolbar</source>
+        <comment>Toolbar for redo/undo and clipboard</comment>
+        <translation type="unfinished">Nástrojový pruh pro Zpět/Znovu a schránku</translation>
+    </message>
+    <message>
+        <source>Edit actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="unfinished">Nástrojový pruh činností úprav</translation>
+    </message>
+    <message>
+        <source>Selection toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="unfinished">Nástrojový pruh pro výběr</translation>
+    </message>
+    <message>
+        <source>URLs and vymLinks toolbar</source>
+        <comment>Toolbar for URLs and vymlinks</comment>
+        <translation type="unfinished">Nástrojový pruh pro adresy (URL) a odkazy VYMu</translation>
+    </message>
+    <message>
+        <source>Colors toolbar</source>
+        <comment>Colors toolbar name</comment>
+        <translation type="unfinished">Nástrojový pruh pro barvy</translation>
+    </message>
+    <message>
+        <source>Zoom toolbar</source>
+        <comment>View Toolbar name</comment>
+        <translation type="unfinished">Nástrojový pruh pro prohlížení</translation>
+    </message>
+    <message>
+        <source>Editors toolbar</source>
+        <comment>Editor Toolbar name</comment>
+        <translation type="unfinished">Nástrojový pruh editory</translation>
+    </message>
+    <message>
+        <source>Modifier modes toolbar</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation type="unfinished">Nástrojový pruh pro režimy upravovače</translation>
+    </message>
+    <message>
+        <source>unnamed</source>
+        <comment>MainWindow: name for new and empty file</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Loading: %1</source>
+        <comment>Progress dialog while loading maps</comment>
+        <translation type="unfinished">Nahrává se %1</translation>
+    </message>
+    <message>
+        <source>or</source>
+        <comment>File Dialog</comment>
+        <translation type="unfinished">nebo</translation>
+    </message>
+    <message>
+        <source>HTML</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">HTML</translation>
+    </message>
+    <message>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">Text</translation>
+    </message>
+    <message>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">Textový dokument</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">Obrázky</translation>
+    </message>
+    <message>
+        <source>Enter sleep time (number of days or date YYYY-MM-DD or DD.MM[.YYYY]</source>
+        <comment>task sleep time dialog</comment>
+        <translation type="unfinished">Zadat čas spánku (počet dní nebo datum RRRR-MM-DD nebo DD.MM[.RRRR]</translation>
+    </message>
+    <message>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished">%1 předmětů na mapě
+</translation>
+    </message>
+    <message>
+        <source>branches</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished">Větve</translation>
+    </message>
+    <message>
+        <source>notes</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished">Poznámky</translation>
+    </message>
+    <message>
+        <source>images</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished">Obrázky</translation>
+    </message>
+    <message>
+        <source>tasks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished">Úkoly</translation>
+    </message>
+    <message>
+        <source>slides</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished">Snímky</translation>
+    </message>
+    <message>
+        <source>xLinks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished">Křížové odkazy</translation>
+    </message>
+    <message>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="unfinished">Neznámý uživatel</translation>
+    </message>
+    <message>
+        <source>History for %1</source>
+        <comment>Window Caption</comment>
+        <translation type="unfinished">Historie pro %1</translation>
+    </message>
+    <message>
+        <source>Export in last used format (%1) to: %2</source>
+        <comment>status tip</comment>
+        <translation type="unfinished">Vyvést v naposledy použitém formátu (%1) do: %2</translation>
+    </message>
+    <message>
+        <source>&lt;html&gt;&lt;h3&gt;Do you allow vym to check online for updates or release notes?&lt;/h3&gt;If you allow, vym will &lt;ul&gt;&lt;li&gt;check once for release notes&lt;/li&gt;&lt;li&gt;check regulary for updates and notify you in case you should update, e.g. if there are important bug fixes available&lt;/li&gt;&lt;li&gt;receive a cookie with a random ID and send vym version and platform name and the ID  (e.g. &quot;Windows&quot; or &quot;Linux&quot;) back to me, Uwe Drechsel.&lt;p&gt;As vym developer I am motivated to see many people using vym. Of course I am curious to see, on which system vym is used. Maintaining each of the systems requires a lot of my (spare) time.&lt;/p&gt; &lt;p&gt;No other data than above will be sent, especially no private data will be collected or sent.(Check the source code, if you don&apos;t believe.)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;If you do not allow, &lt;ul&gt;&lt;li&gt;nothing will be downloaded and especially I will &lt;b&gt;not be motivated&lt;/b&gt; to spend some more thousands of hours on developing a free software tool.&lt;/ul&gt;Please allow vym to check for updates :-)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>vym is up to date.</source>
+        <comment>MainWindow</comment>
+        <translation type="unfinished">VYM je v nejnovější verzi.</translation>
+    </message>
+    <message>
+        <source>Checking for updates...</source>
+        <comment>MainWindow</comment>
+        <translation type="unfinished">Prověřuje se dostupnost aktualizací...</translation>
+    </message>
+</context>
+<context>
+    <name>MapEditor</name>
+    <message>
+        <source>Save</source>
+        <translation type="vanished">Uložit</translation>
+    </message>
+    <message>
+        <source>Map Editor</source>
+        <translation type="vanished">Editor mapy</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <translation type="vanished">Upravit popis větve</translation>
+    </message>
+    <message>
+        <source>Print vym map</source>
+        <translation type="vanished">Vytisknout mapu</translation>
+    </message>
+    <message>
+        <source>Map Editor</source>
+        <comment>Shortcut scope</comment>
+        <translation type="unfinished">Editor mapy</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <comment>MapEditor</comment>
+        <translation type="unfinished">Upravit popis větve</translation>
+    </message>
+    <message>
+        <source>Print vym map</source>
+        <comment>MapEditor</comment>
+        <translation type="unfinished">Vytisknout mapu</translation>
+    </message>
+</context>
+<context>
+    <name>NoteEditor</name>
+    <message>
+        <source>Note Editor</source>
+        <translation type="vanished">Editor poznámek</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished">Editor poznámek</translation>
+    </message>
+</context>
+<context>
+    <name>Process</name>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="vanished">%1 nebyl ukončen správně</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation type="vanished">Vážná chyba</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation type="vanished">Nepodařilo se spustit %1</translation>
+    </message>
+</context>
+<context>
+    <name>QObject</name>
+    <message>
+        <source>Export aborted.</source>
+        <translation>Vyvedení zrušeno.</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t remove target of old symbolic link %1</source>
+        <translation>Nepodařilo se odstranit cíl starého symbolického odkazu %1</translation>
+    </message>
+    <message>
+        <source>Error</source>
+        <translation>Chyba</translation>
+    </message>
+    <message>
+        <source>Could not find stylesheet %1</source>
+        <translation>Nepodařilo se najít stylový list %1</translation>
+    </message>
+    <message>
+        <source>&lt;h3&gt;Map is newer than VYM&lt;/h3&gt;&lt;p&gt;The map you are just trying to load was saved using vym %1. The version of this vym is %2. If you run into problems after pressing the ok-button below, updating vym should help.&lt;/p&gt;</source>
+        <translation>&lt;h3&gt;Mapa je novější než VYM&lt;/h3&gt;&lt;p&gt;Mapa, kterou se právě pokoušíte nahrát, byla uložena za použití vymu %1. Verze tohoto vymu je %2. Pokud se po stisknutí tlačítka OK níže dostanete do potíží, aktualizace vymu by měla pomoci.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation>Nepodařilo se najít makro v %1.
+</translation>
+    </message>
+    <message>
+        <source>Warning: Overwriting %1 bookmarks</source>
+        <translation>Varování: Přepisuje se %1 záložek</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t rename output to target of old symbolic link %1</source>
+        <translation>Nepodařilo se přejmenovat výstup na cíl starého symbolického odkazu %1</translation>
+    </message>
+    <message>
+        <source>Critical Export Error</source>
+        <translation>Vážná chyba při vyvádění</translation>
+    </message>
+    <message>
+        <source>Export as ASCII</source>
+        <translation>Vyvést jako ASCII</translation>
+    </message>
+    <message>
+        <source>Exporting the %1 bookmarks will overwrite
+your existing bookmarks file.</source>
+        <translation>Vyvedení %1 záložek přepíše váš
+stávající soubor se záložkami.</translation>
+    </message>
+    <message>
+        <source>Could not export as OrgMode to %1</source>
+        <translation>Nepodařilo se vyvést jako OrgMode do %1</translation>
+    </message>
+    <message>
+        <source>Export failed.</source>
+        <translation>Vyvedení se nezdařilo.</translation>
+    </message>
+    <message>
+        <source>Could not copy
+%1 to
+%2</source>
+        <translation type="vanished">Nepodařilo se zkopírovat
+%1 do
+%2</translation>
+    </message>
+    <message>
+        <source>Could not copy %1 to %2</source>
+        <translation>Nepodařilo se zkopírovat %1 do %2</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find script %1
+to notifiy Browsers of changed bookmarks.</source>
+        <translation>Nepodařilo se nalézt skript %1,
+který je nutný pro oznámení prohlížečům,
+že záložky byly změněny.</translation>
+    </message>
+    <message>
+        <source>Exporting to %1 will overwrite the existing file:
+%2</source>
+        <translation>Vyvedení do %1 přepíše stávající soubor:
+%2</translation>
+    </message>
+    <message>
+        <source>Could not export as AO to %1</source>
+        <translation>Nepodařilo se vyvést jako AO do %1</translation>
+    </message>
+    <message>
+        <source>unzip didn&apos;t exit normally</source>
+        <translation>Unzip nebyl ukončen správně</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t link from %1 to target of old symbolic link %2</source>
+        <translation>Nepodařilo se propojit %1 s cílem starého symbolického odkazu %2</translation>
+    </message>
+    <message>
+        <source>Could not export as CSV to %1</source>
+        <translation>Nepodařilo se vyvést jako CSV do %1</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t move existing file out of the way before saving.</source>
+        <translation>Nepodařilo se přesunout stávající soubor pryč z cesty před uložením.</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t rename %1 back to %2</source>
+        <translation>Nepodařilo se přejmenovat %1 zpět na %2</translation>
+    </message>
+    <message>
+        <source>Could not export as ASCII to %1</source>
+        <translation>Nepodařilo se vyvést jako ASCII do %1</translation>
+    </message>
+    <message>
+        <source>Could not create %1</source>
+        <translation>Nepodařilo se vytvořit %1</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Zrušit</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation>%1 nebyl ukončen správně</translation>
+    </message>
+    <message>
+        <source>Could not export as LaTeX to %1</source>
+        <translation>Nepodařilo se vyvést jako LaTeX do %1</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find tool to unzip data. Please download and install 7z and set path in Settings menu:
+ </source>
+        <translation>Nepodařilo se najít nástroj na rozbalení dat. Stáhněte, prosím, a nainstalujte 7z a nastavte v nabídce Nastavení cestu:</translation>
+    </message>
+    <message>
+        <source>Contents:</source>
+        <translation type="vanished">Obsah:</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t access temporary directory
+</source>
+        <translation>Nepodařilo se dostat do adresáře s dočasnými soubory
+</translation>
+    </message>
+    <message>
+        <source>(still experimental)</source>
+        <translation>(stále pokusné)</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start tool to decompress data.</source>
+        <translation>Nepodařilo se spustit nástroj pro rozbalení dat.</translation>
+    </message>
+    <message>
+        <source>Warning: Couldn&apos;t find Bugzilla client</source>
+        <translation type="vanished">Varování: Nepodařilo se nalézt klienta pro Bugzillu</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t read settings from &quot;%1&quot;</source>
+        <translation>Nepodařilo se přečíst nastavení z &quot;%1&quot;</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation>Vážná chyba</translation>
+    </message>
+    <message>
+        <source>Export as LibreOffice Impress presentation</source>
+        <translation>Vyvést jako představení LibreOffice Impress</translation>
+    </message>
+    <message>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <translation type="vanished">Adresář %1 není prázdný.
+Odvážíte se přepsat jeho obsah?</translation>
+    </message>
+    <message>
+        <source>No Bugzilla client found.  For openSUSE you can install by (running as root):
+
+</source>
+        <translation type="vanished">Nebyl nalezen žádný modul Bugzilly. Pro openSUSE můžete instalovat s (jako správce):
+
+</translation>
+    </message>
+    <message>
+        <source>Please use Settings-&gt;</source>
+        <translation>Použijte, prosím, Nastavení -&gt;</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save &quot;%1&quot;</source>
+        <translation>Nepodařilo se uložit &quot;%1&quot;</translation>
+    </message>
+    <message>
+        <source>Trying to create directory for flags:</source>
+        <translation>Zkouší se vytvořit adresář pro příznaky:</translation>
+    </message>
+    <message>
+        <source>Critical</source>
+        <translation>Zásadní</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation>Nepodařilo se spustit %1</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start zip to compress data.</source>
+        <translation>Nepodařilo se spustit zipovací program, takže data nemohla být zabalena (zkomprimována).</translation>
+    </message>
+    <message>
+        <source>Warning: Overwriting file</source>
+        <translation>Varování: Přepisuje se soubor</translation>
+    </message>
+    <message>
+        <source>Export as CSV</source>
+        <translation>Vyvést jako CSV</translation>
+    </message>
+    <message>
+        <source>No objects in map!</source>
+        <translation>Žádné předměty v mapě!</translation>
+    </message>
+    <message>
+        <source>Alternatively you can also add the repository
+and install the perl module for Bugzilla access using YaST</source>
+        <translation type="vanished">Coby náhradní řešení můžete pomocí YaST přidat repozitář a
+nainstalovat perlovský modul pro přístup k Bugzille</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation>Přepsat</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open &quot;%1&quot;
+%2.</source>
+        <translation>Nepodařilo se otevřít &quot;%1&quot;
+%2.</translation>
+    </message>
+    <message>
+        <source>Could not write %1</source>
+        <translation>Nepodařilo se zapsat %1</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation>Varování</translation>
+    </message>
+    <message>
+        <source>Check &quot;%1&quot; in
+%2</source>
+        <translation>Prověřte, prosím, &quot;%1&quot; v
+%2</translation>
+    </message>
+    <message>
+        <source>zip didn&apos;t exit normally</source>
+        <translation>Zip nebyl ukončen správně</translation>
+    </message>
+    <message>
+        <source>Trying to save HTML file:</source>
+        <translation>Zkouší se uložit soubor HTML:</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start unzip to decompress data.</source>
+        <translation>Nepodařilo se spustit unzip, aby data mohla být rozbalena (dekomprimována).</translation>
+    </message>
+    <message>
+        <source>Could not read %1</source>
+        <translation>Nepodařilo se přečíst %1</translation>
+    </message>
+    <message>
+        <source>Set directory for vym macros</source>
+        <translation>Nastavit adresář pro makra programu vym</translation>
+    </message>
+    <message>
+        <source>Saved %1, but couldn&apos;t remove %2</source>
+        <translation>Uloženo %1, ale nepodařilo se odstranit %2</translation>
+    </message>
+    <message>
+        <source>Warning: Version Problem</source>
+        <translation>Varování: Potíže s verzí</translation>
+    </message>
+    <message>
+        <source>Error</source>
+        <comment>ExportHTML</comment>
+        <translation>Chyba</translation>
+    </message>
+    <message>
+        <source>Contents:</source>
+        <comment>Used in HTML export</comment>
+        <translation type="unfinished">Obsah:</translation>
+    </message>
+    <message>
+        <source>Could not copy
+%1 to
+%2</source>
+        <comment>ExportHTML</comment>
+        <translation type="unfinished">Nepodařilo se zkopírovat
+%1 do
+%2</translation>
+    </message>
+    <message>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <comment>write directory</comment>
+        <translation type="unfinished">Adresář %1 není prázdný.
+Odvážíte se přepsat jeho obsah?</translation>
+    </message>
+    <message>
+        <source>No Bugzilla client found.  For openSUSE you can install by (running as root):
+
+</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation type="unfinished">Nebyl nalezen žádný modul Bugzilly. Pro openSUSE můžete instalovat s (jako správce):
+
+</translation>
+    </message>
+    <message>
+        <source>Alternatively you can also add the repository
+and install the perl module for Bugzilla access using YaST</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation type="unfinished">Coby náhradní řešení můžete pomocí YaST přidat repozitář a
+nainstalovat perlovský modul pro přístup k Bugzille</translation>
+    </message>
+    <message>
+        <source>Warning: Couldn&apos;t find Bugzilla client</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished">Varování: Nepodařilo se nalézt klienta pro Bugzillu</translation>
+    </message>
+</context>
+<context>
+    <name>ScriptEditor</name>
+    <message>
+        <source>Run</source>
+        <translation>Spustit</translation>
+    </message>
+    <message>
+        <source>Form</source>
+        <translation>Formulář</translation>
+    </message>
+    <message>
+        <source>Load</source>
+        <translation>Nahrát</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <translation>Uložit</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation>Nepodařilo se otevřít %1.</translation>
+    </message>
+    <message>
+        <source>Error</source>
+        <translation>Chyba</translation>
+    </message>
+    <message>
+        <source>Macro</source>
+        <translation type="vanished">Makro</translation>
+    </message>
+    <message>
+        <source>Slide</source>
+        <translation type="vanished">Snímek</translation>
+    </message>
+    <message>
+        <source>Tab 1</source>
+        <translation>Karta 1</translation>
+    </message>
+    <message>
+        <source>Tab 2</source>
+        <translation>Karta 2</translation>
+    </message>
+    <message>
+        <source>Current key:</source>
+        <translation>Nynější klávesa:</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>ScriptEditor</comment>
+        <translation>Uložit</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Zrušit</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <translation type="vanished">Soubor %1 již existuje.
+Chcete jej přepsat?</translation>
+    </message>
+    <message>
+        <source>Save script</source>
+        <translation>Uložit skript</translation>
+    </message>
+    <message>
+        <source>Load script</source>
+        <translation>Nahrát skript</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t get model to save script into slide!</source>
+        <translation>Nepodařilo se získat model pro uložení skriptu do snímku!</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find slide to save script into slide!</source>
+        <translation>Nepodařilo se najít snímek pro uložení skriptu do snímku!</translation>
+    </message>
+    <message>
+        <source>Save to selected slide</source>
+        <translation>Uložit do vybraného snímku</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation>Přepsat</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation>Varování</translation>
+    </message>
+    <message>
+        <source>Slide</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation type="unfinished">Snímek</translation>
+    </message>
+    <message>
+        <source>Macro</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation type="unfinished">Makro</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation type="unfinished">Soubor %1 již existuje.
+Chcete jej přepsat?</translation>
+    </message>
+</context>
+<context>
+    <name>ShowTextDialog</name>
+    <message>
+        <source>Close</source>
+        <translation>Zavřít</translation>
+    </message>
+    <message>
+        <source>Dialog</source>
+        <translation>Dialog</translation>
+    </message>
+</context>
+<context>
+    <name>TaskEditor</name>
+    <message>
+        <source>Active tasks</source>
+        <translation type="vanished">Činné úkoly</translation>
+    </message>
+    <message>
+        <source>New tasks</source>
+        <translation type="vanished">Nové úkoly</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <translation type="vanished">Upravit popis větve</translation>
+    </message>
+    <message>
+        <source>Current map</source>
+        <translation type="vanished">Nynější mapa</translation>
+    </message>
+    <message>
+        <source>Current map</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished">Nynější mapa</translation>
+    </message>
+    <message>
+        <source>Active tasks</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished">Činné úkoly</translation>
+    </message>
+    <message>
+        <source>New tasks</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished">Nové úkoly</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished">Upravit popis větve</translation>
+    </message>
+</context>
+<context>
+    <name>TaskModel</name>
+    <message>
+        <source>Map</source>
+        <translation type="vanished">Mapa</translation>
+    </message>
+    <message>
+        <source>Prio</source>
+        <translation type="vanished">Přednost</translation>
+    </message>
+    <message>
+        <source>Task</source>
+        <translation type="vanished">Úkol</translation>
+    </message>
+    <message>
+        <source>Sleep</source>
+        <translation type="vanished">Spánek</translation>
+    </message>
+    <message>
+        <source>Status</source>
+        <translation type="vanished">Stav</translation>
+    </message>
+    <message>
+        <source>Age total</source>
+        <translation type="vanished">Stáří celkem</translation>
+    </message>
+    <message>
+        <source>Age mod.</source>
+        <translation type="vanished">Stáří změny</translation>
+    </message>
+    <message>
+        <source>Prio</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished">Přednost</translation>
+    </message>
+    <message>
+        <source>Status</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished">Stav</translation>
+    </message>
+    <message>
+        <source>Age total</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished">Stáří celkem</translation>
+    </message>
+    <message>
+        <source>Age mod.</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished">Stáří změny</translation>
+    </message>
+    <message>
+        <source>Sleep</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished">Spánek</translation>
+    </message>
+    <message>
+        <source>Map</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished">Mapa</translation>
+    </message>
+    <message>
+        <source>Task</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished">Úkol</translation>
+    </message>
+</context>
+<context>
+    <name>TextEditor</name>
+    <message>
+        <source>Cu&amp;t</source>
+        <translation>Vyj&amp;mout</translation>
+    </message>
+    <message>
+        <source>&amp;Bold</source>
+        <translation>&amp;Tučné</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <translation>&amp;Kopírovat</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <translation type="vanished">&amp;Úpravy</translation>
+    </message>
+    <message>
+        <source>&amp;Left</source>
+        <translation>&amp;Vlevo</translation>
+    </message>
+    <message>
+        <source>&amp;Redo</source>
+        <translation>&amp;Znovu</translation>
+    </message>
+    <message>
+        <source>&amp;Undo</source>
+        <translation>&amp;Zpět</translation>
+    </message>
+    <message>
+        <source>Edi&amp;t</source>
+        <translation>&amp;Upravit</translation>
+    </message>
+    <message>
+        <source>Fonts</source>
+        <translation type="vanished">Písma</translation>
+    </message>
+    <message>
+        <source>Print</source>
+        <translation type="vanished">Tisk</translation>
+    </message>
+    <message>
+        <source>Ready</source>
+        <translation type="vanished">Připraven</translation>
+    </message>
+    <message>
+        <source>&amp;Note</source>
+        <comment>Menubar</comment>
+        <translation>&amp;Poznámka</translation>
+    </message>
+    <message>
+        <source>&amp;fixed font is default</source>
+        <translation>Používat písmo s &amp;pevnou šířkou jako výchozí</translation>
+    </message>
+    <message>
+        <source>&amp;Justify</source>
+        <translation>&amp;Zarovnat do bloku</translation>
+    </message>
+    <message>
+        <source>&amp;Paste</source>
+        <translation>&amp;Vložit</translation>
+    </message>
+    <message>
+        <source>&amp;Right</source>
+        <translation>&amp;Vpravo</translation>
+    </message>
+    <message>
+        <source>Note Actions</source>
+        <translation>Činnosti poznámek</translation>
+    </message>
+    <message>
+        <source>Edit Actions</source>
+        <translation>Činnosti úprav</translation>
+    </message>
+    <message>
+        <source>No filename available for this note.</source>
+        <translation type="vanished">Poznámka nemá žádný souborový název.</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Zrušit</translation>
+    </message>
+    <message>
+        <source>Format</source>
+        <translation type="vanished">Formát</translation>
+    </message>
+    <message>
+        <source>Text Editor</source>
+        <translation type="vanished">Textový editor</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <translation>Editor poznámek</translation>
+    </message>
+    <message>
+        <source>&amp;Font hint</source>
+        <translation>Naznačení &amp;písma</translation>
+    </message>
+    <message>
+        <source>C&amp;enter</source>
+        <translation>&amp;Na střed</translation>
+    </message>
+    <message>
+        <source>Subs&amp;cript</source>
+        <translation>&amp;Dolní index</translation>
+    </message>
+    <message>
+        <source>&amp;Color...</source>
+        <translation>B&amp;arva...</translation>
+    </message>
+    <message>
+        <source>Font hints</source>
+        <translation type="vanished">Rady pro písma</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <translation type="vanished">Soubor %1 již existuje.
+Chcete jej přepsat?</translation>
+    </message>
+    <message>
+        <source>Export &amp;As... (HTML)</source>
+        <translation>Vyvést poznámku &amp;jako... (HTML)</translation>
+    </message>
+    <message>
+        <source>&amp;Export...</source>
+        <translation>&amp;Vyvést...</translation>
+    </message>
+    <message>
+        <source>&amp;Import...</source>
+        <translation>&amp;Zavést...</translation>
+    </message>
+    <message>
+        <source>F&amp;ormat</source>
+        <translation>F&amp;ormát</translation>
+    </message>
+    <message>
+        <source>&amp;Print...</source>
+        <translation>&amp;Tisk...</translation>
+    </message>
+    <message>
+        <source>Export &amp;As...(ASCII)</source>
+        <translation>Vyvést &amp;jako (ASCII)</translation>
+    </message>
+    <message>
+        <source>Texteditor</source>
+        <translation type="vanished">Editor textu</translation>
+    </message>
+    <message>
+        <source>&amp;Underline</source>
+        <translation>&amp;Podtržení</translation>
+    </message>
+    <message>
+        <source>&amp;Italic</source>
+        <translation>&amp;Kurzíva</translation>
+    </message>
+    <message>
+        <source>Set &amp;variable font</source>
+        <translation>Zvolit písmo s p&amp;roměnlivou šířkou</translation>
+    </message>
+    <message>
+        <source>Select and copy &amp;all</source>
+        <translation>Vybrat a kopírovat &amp;vše</translation>
+    </message>
+    <message>
+        <source>Su&amp;perscript</source>
+        <translation>&amp;Horní index</translation>
+    </message>
+    <message>
+        <source>&amp;Delete All</source>
+        <translation>&amp;Smazat vše</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t export note </source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation>Nepodařilo se vyvést poznámku </translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation>Přepsat</translation>
+    </message>
+    <message>
+        <source>&amp;Settings</source>
+        <translation>&amp;Nastavení</translation>
+    </message>
+    <message>
+        <source>Set &amp;fixed font</source>
+        <translation>Zvolit písmo s &amp;pevnou šířkou</translation>
+    </message>
+    <message>
+        <source>Export Note to single file</source>
+        <translation>Vyvést poznámku do souboru</translation>
+    </message>
+    <message>
+        <source>Export Note to single file (ASCII)</source>
+        <translation>Vyvést poznámku do souboru jako ASCII</translation>
+    </message>
+    <message>
+        <source>&amp;Richtext</source>
+        <translation>&amp;Bohatý text</translation>
+    </message>
+    <message>
+        <source>Ready</source>
+        <comment>Statusbar message</comment>
+        <translation type="unfinished">Připraven</translation>
+    </message>
+    <message>
+        <source>Text Editor</source>
+        <comment>Text Editor Window caption</comment>
+        <translation type="unfinished">Textový editor</translation>
+    </message>
+    <message>
+        <source>No filename available for this note.</source>
+        <comment>Statusbar message</comment>
+        <translation type="unfinished">Poznámka nemá žádný souborový název.</translation>
+    </message>
+    <message>
+        <source>Texteditor</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished">Editor textu</translation>
+    </message>
+    <message>
+        <source>Font hints</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished">Rady pro písma</translation>
+    </message>
+    <message>
+        <source>Fonts</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished">Písma</translation>
+    </message>
+    <message>
+        <source>Format</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished">Formát</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation type="unfinished">Soubor %1 již existuje.
+Chcete jej přepsat?</translation>
+    </message>
+    <message>
+        <source>Print</source>
+        <comment>TextEditor</comment>
+        <translation type="unfinished">Tisk</translation>
+    </message>
+</context>
+<context>
+    <name>TreeEditor</name>
+    <message>
+        <source>Select lower object</source>
+        <translation type="vanished">Vybrat dolní předmět</translation>
+    </message>
+    <message>
+        <source>Select upper object</source>
+        <translation type="vanished">Vybrat horní předmět</translation>
+    </message>
+    <message>
+        <source>Select upper object</source>
+        <comment>Tree Editor</comment>
+        <translation type="unfinished">Vybrat horní předmět</translation>
+    </message>
+    <message>
+        <source>Select lower object</source>
+        <comment>Tree Editor</comment>
+        <translation type="unfinished">Vybrat dolní předmět</translation>
+    </message>
+</context>
+<context>
+    <name>VymModel</name>
+    <message>
+        <source>All</source>
+        <translation type="vanished">Vše</translation>
+    </message>
+    <message>
+        <source>Note</source>
+        <translation type="vanished">Poznámka</translation>
+    </message>
+    <message>
+        <source>Critical Parse Error</source>
+        <translation>Vážná chyba při zpracování</translation>
+    </message>
+    <message>
+        <source>uncompressed</source>
+        <translation>ponechat nezkomprimovanou</translation>
+    </message>
+    <message>
+        <source>Image</source>
+        <translation type="vanished">Obrázek</translation>
+    </message>
+    <message>
+        <source>Load background image</source>
+        <translation>Nahrát obrázek pozadí</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save QImage %1 in format %2</source>
+        <translation>Nepodařilo se uložit obrázek %1 ve formátu %2</translation>
+    </message>
+    <message>
+        <source>Critical Import Error</source>
+        <translation>Vážná chyba při zavádění</translation>
+    </message>
+    <message>
+        <source>Critical Export Error</source>
+        <translation>Vážná chyba při vyvádění</translation>
+    </message>
+    <message>
+        <source>Cannot create lockfile of map! It will be opened in readonly mode.
+
+</source>
+        <translation>Nepodařilo se vytvořit uzamykací soubor. Mapa bude otevřena jen pro čtení.</translation>
+    </message>
+    <message>
+        <source>Unsupported format in %1</source>
+        <translation>Nepodporovaný formát v %1</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Zrušit</translation>
+    </message>
+    <message>
+        <source>Map seems to be already opened in another vym instance! It will be opened in readonly mode.
+
+Map is locked by &quot;%1&quot; on &quot;%2&quot;</source>
+        <translation type="vanished">Zdá se, že mapa je již otevřena v jiné instanci VYMu! Bude otevřena v režimu pouze pro čtení.
+
+Mapa je uzamknuta &quot;%1&quot; na &quot;%2&quot;</translation>
+    </message>
+    <message>
+        <source>New map</source>
+        <translation type="vanished">Nová mapa</translation>
+    </message>
+    <message>
+        <source>Ignore</source>
+        <translation>Nebrat v úvahu</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <translation>Obrázky</translation>
+    </message>
+    <message>
+        <source>Reload</source>
+        <translation>Nahrát znovu</translation>
+    </message>
+    <message>
+        <source>(still experimental)</source>
+        <translation>(stále pokusné)</translation>
+    </message>
+    <message>
+        <source>Export XML to directory</source>
+        <translation>Vyvést XML do adresáře</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation>Před uložením se nepodařilo vytvořit dočasný adresář
+</translation>
+    </message>
+    <message>
+        <source>Load image</source>
+        <translation>Nahrát obrázek</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation>Před nahráním se nepodařilo vytvořit dočasný adresář
+</translation>
+    </message>
+    <message>
+        <source>Exported: </source>
+        <translation type="vanished">Vyvedeno: </translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation>Soubor %1 již existuje.
+Chcete jej přepsat?</translation>
+    </message>
+    <message>
+        <source>%1
+could not be renamed before saving</source>
+        <translation>%1
+se nepodařilo přejmenovat před uložením</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation>Vážná chyba</translation>
+    </message>
+    <message>
+        <source>Save Error</source>
+        <translation>Chyba při ukládání</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <comment>VymModel</comment>
+        <translation>Varování</translation>
+    </message>
+    <message>
+        <source>Save image</source>
+        <translation>Speichere Bild</translation>
+    </message>
+    <message>
+        <source>Warning: Map already opended</source>
+        <translation type="vanished">Varování: Mapa je již otevřena</translation>
+    </message>
+    <message>
+        <source>Script aborted:
+%1</source>
+        <translation>Skript zrušen:
+%1</translation>
+    </message>
+    <message>
+        <source>Redo failed:
+%1</source>
+        <translation>Návrat o krok vpřed (Znovu) se nezdařil:
+%1</translation>
+    </message>
+    <message>
+        <source>Undo failed:
+%1</source>
+        <translation type="vanished">Návrat o krok zpět se nezdařil:
+%1</translation>
+    </message>
+    <message>
+        <source>Choose directory structure to import</source>
+        <translation>Vybrat adresář pro zavedení</translation>
+    </message>
+    <message>
+        <source>Critical Save Error</source>
+        <translation>Vážná chyba při ukládání</translation>
+    </message>
+    <message>
+        <source>Export as csv</source>
+        <translation>Vyvést jako CSV</translation>
+    </message>
+    <message>
+        <source>Autosave disabled during undo.</source>
+        <translation>Automatické ukládání zakázáno během kroku &quot;Zpět&quot;.</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save %1</source>
+        <translation>Nepodařilo se uložit %1</translation>
+    </message>
+    <message>
+        <source>Critical Load Error</source>
+        <translation>Vážná chyba při nahrávání</translation>
+    </message>
+    <message>
+        <source>unknown user</source>
+        <translation type="vanished">Neznámý uživatel</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation>V souboru vym se nepodařilo najít žádnou mapu (*.xml).
+</translation>
+    </message>
+    <message>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation>Mapa %1
+byla uložena, aniž by byla zkomprimována (zabalena do menšího souboru),
+takže není v obvyklém formátu používaném programem vym.
+Bude-li uložena nezkomprimovaná, budou uloženy i obrázky a příznaky,
+čímž mohou být přepsány soubory v daném adresáři.
+
+Chcete mapu
+</translation>
+    </message>
+    <message>
+        <source>unnamed</source>
+        <translation>nepojmenovaný</translation>
+    </message>
+    <message>
+        <source>Export map as scalable vector graphic</source>
+        <translation type="vanished">Vyvést mapu jako škálovatelnou vektorovou grafiku</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation>Přepsat</translation>
+    </message>
+    <message>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation>K mapě náležející soubor na disku byl změněn:
+
+   %1
+
+Chcete mapu nahrát znovu s novým souborem?</translation>
+    </message>
+    <message>
+        <source>Contacting Bugzilla...</source>
+        <translation type="vanished">Spojuje se s Bugzillou...</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation>Varování</translation>
+    </message>
+    <message>
+        <source>compressed (vym default)</source>
+        <translation>zapsat zkomprimovanou (výchozí pro vym)</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <translation>Vyvést mapu jako obrázek</translation>
+    </message>
+    <message>
+        <source>Cannot find the directory %1</source>
+        <translation>Nepodařilo se najít adresář %1</translation>
+    </message>
+    <message>
+        <source>%1
+could not be removed before saving</source>
+        <translation>%1
+se nepodařilo odstranit před uložením</translation>
+    </message>
+    <message>
+        <source>Export map as XML</source>
+        <translation>Vyvést mapu jako XML</translation>
+    </message>
+    <message>
+        <source>Export map as SVG</source>
+        <translation>Vyvést mapu jako SVG</translation>
+    </message>
+    <message>
+        <source>Export map as PDF</source>
+        <translation>Vyvést mapu jako PDF</translation>
+    </message>
+    <message>
+        <source>unknown user</source>
+        <comment>Default for lockfiles of maps</comment>
+        <translation>Neznámý uživatel</translation>
+    </message>
+    <message>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="unfinished">Neznámý uživatel</translation>
+    </message>
+    <message>
+        <source>All</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">Vše</translation>
+    </message>
+    <message>
+        <source>Warning: Map already opended</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished">Varování: Mapa je již otevřena</translation>
+    </message>
+    <message>
+        <source>Note</source>
+        <comment>FindAll in VymModel</comment>
+        <translation type="unfinished">Poznámka</translation>
+    </message>
+    <message>
+        <source>Image</source>
+        <comment>Default name for new image</comment>
+        <translation type="unfinished">Obrázek</translation>
+    </message>
+    <message>
+        <source>New map</source>
+        <comment>New map</comment>
+        <translation type="unfinished">Nová mapa</translation>
+    </message>
+    <message>
+        <source>Contacting Bugzilla...</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished">Spojuje se s Bugzillou...</translation>
+    </message>
+    <message>
+        <source>Map seems to be already opened in another vym instance!
+
+ Map is locked by &quot;%1&quot; on &quot;%2&quot;
+
+Please only delete the lockfile, if you are sure nobody else is currently working on this map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Removed lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t remove lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>VymProcess</name>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation>%1 nebyl ukončen správně</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation>Vážná chyba</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation>Nepodařilo se spustit %1</translation>
+    </message>
+</context>
+<context>
+    <name>VymView</name>
+    <message>
+        <source>Slide Editor</source>
+        <translation type="vanished">Editor snímků</translation>
+    </message>
+    <message>
+        <source>Tree Editor</source>
+        <translation type="vanished">Editor stromu</translation>
+    </message>
+    <message>
+        <source>Tree Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation type="unfinished">Editor stromu</translation>
+    </message>
+    <message>
+        <source>Slide Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation type="unfinished">Editor snímků</translation>
+    </message>
+</context>
+<context>
+    <name>WarningDialog</name>
+    <message>
+        <source>Ok</source>
+        <translation>OK</translation>
+    </message>
+    <message>
+        <source>Show this message again</source>
+        <translation>Toto hlášení ukázat ještě jednou</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Zrušit</translation>
+    </message>
+    <message>
+        <source>Dialog</source>
+        <translation>Dialog</translation>
+    </message>
+    <message>
+        <source>Proceed</source>
+        <translation>Pokračovat</translation>
+    </message>
+    <message>
+        <source>showAgainBox</source>
+        <translation>BoxUkázatZnovu</translation>
+    </message>
+</context>
+</TS>
diff --git a/lang/vym.de_DE.ts b/lang/vym.de_DE.ts
new file mode 100644 (file)
index 0000000..8aa04d3
--- /dev/null
@@ -0,0 +1,7156 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="de_DE">
+<context>
+    <name>AboutDialog</name>
+    <message>
+        <source>Ok</source>
+        <translation type="obsolete">Ok</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="106"/>
+        <source>Credits</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation>Danke</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="221"/>
+        <source>License</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation>Lizenz</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="226"/>
+        <source>Ok</source>
+        <comment>Ok Button</comment>
+        <translation>Ok</translation>
+    </message>
+</context>
+<context>
+    <name>AboutTextBrowser</name>
+    <message>
+        <source>Warning</source>
+        <translation type="obsolete">Warnung</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <translation type="obsolete">Konnte kein Programm zum Öffnen von %1 finden.</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>Bitte setzen sie einen Pfad in Einstellungen-&gt;</translation>
+    </message>
+    <message>
+        <source>Set application to open an URL</source>
+        <translation type="obsolete">Anwendung zum Öffnen von URLs...</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="246"/>
+        <source>Warning</source>
+        <comment>About window</comment>
+        <translation>Warnung</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="247"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <comment>About window</comment>
+        <translation>Konnte kein Programm zum Öffnen von %1 finden.</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Set application to open an URL...</source>
+        <translation>Anwendung zum Offnen einer URL...</translation>
+    </message>
+</context>
+<context>
+    <name>AttributeDialog</name>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Schliessen</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyEditor</name>
+    <message>
+        <location filename="../branchpropeditor.ui" line="20"/>
+        <source>Branch Property Editor</source>
+        <translation>Zweig Eigenschaften</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="30"/>
+        <source>Frame</source>
+        <translation>Rahmen</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="51"/>
+        <source>Geometry</source>
+        <translation>Geometrie</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="64"/>
+        <source>No Frame</source>
+        <translation>Kein Rahmen</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="69"/>
+        <source>Rectangle</source>
+        <translation>Rechteck</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="74"/>
+        <source>Rounded Rectangle</source>
+        <translation>Rechteck, gerundet</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="79"/>
+        <source>Ellipse</source>
+        <translation>Ellipse</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="84"/>
+        <source>Cloud</source>
+        <translation>Wolke</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="105"/>
+        <source>Padding</source>
+        <translation>Abstand</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="112"/>
+        <source>Borderline width</source>
+        <translation>Stärke Begrenzungslinie</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="136"/>
+        <source>Include children</source>
+        <translation>Unterzweige mit einrahmen</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="169"/>
+        <source>Colors</source>
+        <translation>Farben</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="209"/>
+        <source>Borderline color</source>
+        <translation>Farbe Begrenzungslinie</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="232"/>
+        <source>Background color</source>
+        <translation>Hintergrundfarbe</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="261"/>
+        <source>Layout</source>
+        <translation>Layout</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="269"/>
+        <source>Include images horizontally</source>
+        <translation>Linke und rechte Bildkanten berücksichtigen</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="276"/>
+        <source>Include images vertically</source>
+        <translation>Obere und untere Bildkanten berücksichtigen</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="283"/>
+        <source>Free positioning of children (experimental!)</source>
+        <translation>Unterzweige frei positionieren (experimentell!)</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="306"/>
+        <source>Link</source>
+        <translation>Verbindung</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="312"/>
+        <source>Hide link if unselected</source>
+        <translation>Verbindung verbergen, falls nicht selektiert</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="333"/>
+        <source>Attributes</source>
+        <translation>Attribute</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="359"/>
+        <source>+</source>
+        <translation>+</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="366"/>
+        <source>-</source>
+        <translation>-</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.cpp" line="19"/>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation>Eigenschaften</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyWindow</name>
+    <message>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation type="obsolete">Eigenschaften</translation>
+    </message>
+    <message>
+        <source>Name</source>
+        <comment>Branchprop window: Attribute name</comment>
+        <translation type="obsolete">Name</translation>
+    </message>
+    <message>
+        <source>Value</source>
+        <comment>Branchprop window: Attribute value</comment>
+        <translation type="obsolete">Wert</translation>
+    </message>
+    <message>
+        <source>Type</source>
+        <comment>Branchprop window: Attribute type</comment>
+        <translation type="obsolete">Typ</translation>
+    </message>
+    <message>
+        <source>Branch Property Editor</source>
+        <translation type="obsolete">Zweig Eigenschaften</translation>
+    </message>
+    <message>
+        <source>Frame</source>
+        <translation type="obsolete">Rahmen</translation>
+    </message>
+    <message>
+        <source>Geometry</source>
+        <translation type="obsolete">Geometrie</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <translation type="obsolete">Kein Rahmen</translation>
+    </message>
+    <message>
+        <source>Rectangle</source>
+        <translation type="obsolete">Rechteck</translation>
+    </message>
+    <message>
+        <source>Rounded Rectangle</source>
+        <translation type="obsolete">Rechteck, gerundet</translation>
+    </message>
+    <message>
+        <source>Ellipse</source>
+        <translation type="obsolete">Ellipse</translation>
+    </message>
+    <message>
+        <source>Cloud</source>
+        <translation type="obsolete">Wolke</translation>
+    </message>
+    <message>
+        <source>Padding</source>
+        <translation type="obsolete">Abstand</translation>
+    </message>
+    <message>
+        <source>Borderline width</source>
+        <translation type="obsolete">Stärke Begrenzungslinie</translation>
+    </message>
+    <message>
+        <source>Include children</source>
+        <translation type="obsolete">Unterzweige mit einrahmen</translation>
+    </message>
+    <message>
+        <source>Colors</source>
+        <translation type="obsolete">Farben</translation>
+    </message>
+    <message>
+        <source>Borderline color</source>
+        <translation type="obsolete">Farbe Begrenzungslinie</translation>
+    </message>
+    <message>
+        <source>Background color</source>
+        <translation type="obsolete">Hintergrundfarbe</translation>
+    </message>
+    <message>
+        <source>Layout</source>
+        <translation type="obsolete">Layout</translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <translation type="obsolete">Linke und rechte Bildkanten berücksichtigen</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <translation type="obsolete">Obere und untere Bildkanten berücksichtigen</translation>
+    </message>
+    <message>
+        <source>Link</source>
+        <translation type="obsolete">Verbindung</translation>
+    </message>
+    <message>
+        <source>Hide link if unselected</source>
+        <translation type="obsolete">Verbindung verbergen, falls nicht selektiert</translation>
+    </message>
+    <message>
+        <source>Attributes</source>
+        <translation type="obsolete">Attribute</translation>
+    </message>
+    <message>
+        <source>+</source>
+        <translation type="obsolete">+</translation>
+    </message>
+    <message>
+        <source>-</source>
+        <translation type="obsolete">-</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Schliessen</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadAgent</name>
+    <message>
+        <source>warning</source>
+        <translation type="vanished">Warnung</translation>
+    </message>
+    <message>
+        <location filename="../downloadagent.cpp" line="191"/>
+        <location filename="../downloadagent.cpp" line="195"/>
+        <source>Warning</source>
+        <translation>Warnung</translation>
+    </message>
+</context>
+<context>
+    <name>EditXLinkDialog</name>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="20"/>
+        <source>Edit XLink</source>
+        <translation>xLink ändern</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="40"/>
+        <source>Arrow begin:</source>
+        <translation>Pfeilschaft</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="63"/>
+        <source>XLink width:</source>
+        <translation>xLink Dicke:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="79"/>
+        <source>Use color of heading</source>
+        <translation>Farbe der Beschriftung verwenden</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="177"/>
+        <source>Line style:</source>
+        <extracomment>Linestyle in Edit XLink dialog</extracomment>
+        <translation>Stil der Verbindungslinie</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="190"/>
+        <source>Arrow end:</source>
+        <translation>Pfeilspitze</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="253"/>
+        <source>Close</source>
+        <translation>Schliessen</translation>
+    </message>
+    <message>
+        <source>Set color of heading</source>
+        <translation type="obsolete">Farbe Heading</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="109"/>
+        <source>XLink color:</source>
+        <translation>Farbe xLink:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="151"/>
+        <source>Use as default:</source>
+        <translation>Als Standard verwenden:</translation>
+    </message>
+    <message>
+        <source>Delete XLink</source>
+        <translation type="obsolete">xLink löschen</translation>
+    </message>
+    <message>
+        <source>Ok</source>
+        <translation type="obsolete">Ok</translation>
+    </message>
+</context>
+<context>
+    <name>ExportHTMLDialog</name>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="26"/>
+        <source>Export HTML</source>
+        <translation>Exportiere HTML</translation>
+    </message>
+    <message>
+        <source>Directory:</source>
+        <translation type="obsolete">Verzeichnis:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="61"/>
+        <source>Export to directory:</source>
+        <translation>Export Verzeichnis:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="90"/>
+        <location filename="../exporthtmldialog.ui" line="267"/>
+        <location filename="../exporthtmldialog.ui" line="280"/>
+        <location filename="../exporthtmldialog.ui" line="353"/>
+        <source>Browse</source>
+        <translation>Durchsuchen</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="117"/>
+        <source>Options</source>
+        <translation>Optionen</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="138"/>
+        <source>Image of map</source>
+        <translation>Bild der vym map</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="145"/>
+        <source>Include images</source>
+        <translation>Bilder verwenden</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="152"/>
+        <source>Table of contents</source>
+        <translation>Inhaltsverzeichnis</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="159"/>
+        <source>Task flags</source>
+        <translation>Flags der Aufgaben</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="166"/>
+        <source>General flags</source>
+        <translation>Allgemeine Flags</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="173"/>
+        <source>Number sections</source>
+        <translation>Abschnitte numerieren</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="231"/>
+        <source>Copy CSS from </source>
+        <translation>CSS Vorlage kopieren von</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="251"/>
+        <source>Use CSS from</source>
+        <translation>CSS verwenden von</translation>
+    </message>
+    <message>
+        <source>Include image</source>
+        <translation type="obsolete">Bild erzeugen</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="186"/>
+        <source>Colored headings in text</source>
+        <translation>Farbe der Zweigbeschriftungen übernehmen</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="199"/>
+        <source>Save settings in map</source>
+        <translation>Einstellungen in map speichern</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="216"/>
+        <source>Stylesheets</source>
+        <translation>Stylesheets</translation>
+    </message>
+    <message>
+        <source>CSS:</source>
+        <translation type="obsolete">CSS:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="297"/>
+        <source>Scripts</source>
+        <translation>Skripte</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="327"/>
+        <source>After Export:</source>
+        <translation>Nach Export:</translation>
+    </message>
+    <message>
+        <source>Include image of map</source>
+        <translation type="obsolete">Bild der Map erzeugen</translation>
+    </message>
+    <message>
+        <source>use WIKI style</source>
+        <translation type="obsolete">WIKI Stil verwenden</translation>
+    </message>
+    <message>
+        <source>show output</source>
+        <translation type="obsolete">Ausgabe der Scripte anzeigen</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="389"/>
+        <source>Export</source>
+        <translation>Exportieren</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="382"/>
+        <source>Cancel</source>
+        <translation>Abbrechen</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>Warning</source>
+        <translation>Warnung</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>The settings saved in the map would like to run script:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation>Die in der Map gespeicherten Einstellungen möchten gerne Skripte starten:
+
+%1
+
+Bitte prüfen Sie, ob Sie das wirklich erlauben wollen!</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="123"/>
+        <source>VYM - Export HTML to directory</source>
+        <translation>VYM - Exportiere HTML in Verzeichnis</translation>
+    </message>
+    <message>
+        <source>Critcal export error</source>
+        <translation type="obsolete">Kritischer Fehler beim Exportieren</translation>
+    </message>
+    <message>
+        <source>create image only</source>
+        <translation type="obsolete">Nur Bild erzeugen</translation>
+    </message>
+    <message>
+        <source>use heading for URLs (instead of link target)</source>
+        <translation type="obsolete">Verwende Zweigbeschriftung für URL</translation>
+    </message>
+    <message>
+        <source>use image of earth to mark URLs in text</source>
+        <translation type="obsolete">Verwende Globus Symbol für URLs</translation>
+    </message>
+    <message>
+        <source>show output of external scripts</source>
+        <translation type="obsolete">Zeige Ausgabe der externen Skripte</translation>
+    </message>
+    <message>
+        <source>use default CSS file</source>
+        <translation type="obsolete">Default CSS Datei verwenden</translation>
+    </message>
+</context>
+<context>
+    <name>ExportXHTMLDialog</name>
+    <message>
+        <source>Export XHTML</source>
+        <translation type="obsolete">Exportiere XHTML</translation>
+    </message>
+    <message>
+        <source>Directory:</source>
+        <translation type="obsolete">Verzeichnis:</translation>
+    </message>
+    <message>
+        <source>Browse</source>
+        <translation type="obsolete">Durchsuchen</translation>
+    </message>
+    <message>
+        <source>Options</source>
+        <translation type="obsolete">Optionen</translation>
+    </message>
+    <message>
+        <source>Include image</source>
+        <translation type="obsolete">Bild erzeugen</translation>
+    </message>
+    <message>
+        <source>Include text</source>
+        <translation type="obsolete">Text erzeugen</translation>
+    </message>
+    <message>
+        <source>show output of external scripts</source>
+        <translation type="obsolete">Zeige Ausgabe der externen Skripte</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <translation type="obsolete">Exportieren</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Abbrechen</translation>
+    </message>
+    <message>
+        <source>VYM - Export HTML to directory</source>
+        <translation type="obsolete">VYM - Exportiere HTML in Verzeichnis</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">Kritischer Fehler</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start </source>
+        <translation type="obsolete">Konnte nicht starten</translation>
+    </message>
+    <message>
+        <source>didn&apos;t exit normally</source>
+        <translation type="obsolete">Exportiere XHTML</translation>
+    </message>
+    <message>
+        <source>Export to directory:</source>
+        <translation type="obsolete">Export Verzeichnis:</translation>
+    </message>
+    <message>
+        <source>Colored headings in text</source>
+        <translation type="obsolete">Farbige Headings im Text</translation>
+    </message>
+    <message>
+        <source>showWarnings e.g. if directory is not empty</source>
+        <translation type="obsolete">Warnung, falls Verzeichnis nicht leer ist</translation>
+    </message>
+    <message>
+        <source>Stylesheets</source>
+        <translation type="obsolete">Stylesheets</translation>
+    </message>
+    <message>
+        <source>CSS:</source>
+        <translation type="obsolete">CSS:</translation>
+    </message>
+    <message>
+        <source>XSL:</source>
+        <translation type="obsolete">XSL:</translation>
+    </message>
+    <message>
+        <source>VYM - Path to CSS file</source>
+        <translation type="obsolete">VYM - Pfad zu CSS Datei</translation>
+    </message>
+    <message>
+        <source>VYM - Path to XSL file</source>
+        <translation type="obsolete">VYM - Pfad zu XSL Datei</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="obsolete">Warnung</translation>
+    </message>
+    <message>
+        <source> could not be opened!</source>
+        <translation type="obsolete">konnte nicht geöffnet werden!</translation>
+    </message>
+    <message>
+        <source>Save settings in map</source>
+        <translation type="obsolete">Einstellungen in map speichern</translation>
+    </message>
+    <message>
+        <source>Scripts</source>
+        <translation type="obsolete">Skripte</translation>
+    </message>
+    <message>
+        <source>Before export:</source>
+        <translation type="obsolete">Vor Export:</translation>
+    </message>
+    <message>
+        <source>After Export:</source>
+        <translation type="obsolete">Nach Export:</translation>
+    </message>
+    <message>
+        <source>The settings saved in the map would like to run scripts:
+
+</source>
+        <translation type="obsolete">Die in der Map gespeicherten Einstellungen wollen Skripte starten:
+
+</translation>
+    </message>
+    <message>
+        <source>Please check, if you really
+want to allow this in your system!</source>
+        <translation type="obsolete">Bitte prüfen Sie, ob Sie das in Ihrem
+System wirklich zulassen wollen!</translation>
+    </message>
+    <message>
+        <source>VYM - Path to pre export script</source>
+        <translation type="obsolete">VYM - Pfad für Prä-Export Skript</translation>
+    </message>
+    <message>
+        <source>VYM - Path to post export script</source>
+        <translation type="obsolete">VYM -Pfad für Post-Export Skript</translation>
+    </message>
+    <message>
+        <source>Stylesheets:</source>
+        <translation type="obsolete">Stylesheets:</translation>
+    </message>
+    <message>
+        <source>Scripts:</source>
+        <translation type="obsolete">Skripte:</translation>
+    </message>
+    <message>
+        <source>The settings saved in the map would like to run scripts:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation type="obsolete">Die in der Map gespeicherten Einstellungen möchten gerne Skripte starten:
+
+%1
+
+Bitte prüfen Sie, ob Sie das wirklich erlauben wollen!</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <translation type="obsolete">%1 konnte nicht geöffnet werden</translation>
+    </message>
+    <message>
+        <source>Could not write %1</source>
+        <translation type="obsolete">%1 konnte nicht geschrieben werden</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation type="obsolete">Konnte %1 nicht starten</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="obsolete">%1 wurde nicht richtig beendet</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start %1</source>
+        <translation type="obsolete">%1 konnte nicht nicht gestartet werden</translation>
+    </message>
+</context>
+<context>
+    <name>ExtraInfoDialog</name>
+    <message>
+        <location filename="../extrainfodialog.ui" line="15"/>
+        <source>VYM - Info</source>
+        <translation>VYM - Info</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="36"/>
+        <source>Map:</source>
+        <translation>Map:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="53"/>
+        <source>Title:</source>
+        <translation>Titel</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="63"/>
+        <source>Author:</source>
+        <translation>Author:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="86"/>
+        <source>Comment:</source>
+        <translation>Kommentar:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="96"/>
+        <source>Statistics:</source>
+        <translation>Statistik:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="139"/>
+        <source>Cancel</source>
+        <translation>Abbrechen</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="146"/>
+        <source>Close</source>
+        <translation>Schliessen</translation>
+    </message>
+</context>
+<context>
+    <name>FindWidget</name>
+    <message>
+        <location filename="../findwidget.cpp" line="25"/>
+        <source>Find:</source>
+        <comment>FindWidget</comment>
+        <translation>Suchen nach:</translation>
+    </message>
+    <message>
+        <source>Next</source>
+        <comment>Find widget</comment>
+        <translation type="obsolete">Weiter</translation>
+    </message>
+    <message>
+        <source>Show all</source>
+        <comment>Find widget</comment>
+        <translation type="obsolete">Zeige alle Suchergebnisse</translation>
+    </message>
+</context>
+<context>
+    <name>FindWindow</name>
+    <message>
+        <source>Clear</source>
+        <translation type="obsolete">Neuer Suchbegriff</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Abbrechen</translation>
+    </message>
+    <message>
+        <source>Find</source>
+        <translation type="obsolete">Suchen</translation>
+    </message>
+    <message>
+        <source>Find Text</source>
+        <translation type="obsolete">Text suchen</translation>
+    </message>
+    <message>
+        <source>Text to find:</source>
+        <translation type="obsolete">Suchen nach:</translation>
+    </message>
+</context>
+<context>
+    <name>Heading of mapcenter in new map</name>
+    <message>
+        <source>New map</source>
+        <translation type="vanished">Neue map</translation>
+    </message>
+</context>
+<context>
+    <name>HeadingEditor</name>
+    <message>
+        <location filename="../headingeditor.cpp" line="9"/>
+        <source>Heading Editor</source>
+        <comment>Window caption</comment>
+        <translation>Editor Zweigbeschriftungen</translation>
+    </message>
+</context>
+<context>
+    <name>HistoryWindow</name>
+    <message>
+        <location filename="../historywindow.ui" line="13"/>
+        <source>Dialog</source>
+        <translation></translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="50"/>
+        <source>Redo</source>
+        <translation>Wiederherstellen</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="72"/>
+        <source>Time</source>
+        <translation></translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="77"/>
+        <source>Comment</source>
+        <translation></translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="85"/>
+        <source>Undo</source>
+        <translation>Rückgängig</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="122"/>
+        <source>Close</source>
+        <translation>Schliessen</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="17"/>
+        <source>Action</source>
+        <comment>Table with actions</comment>
+        <translation></translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="20"/>
+        <source>Comment</source>
+        <comment>Table with actions</comment>
+        <translation></translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="23"/>
+        <source>Undo action</source>
+        <comment>Table with actions</comment>
+        <translation></translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="125"/>
+        <source>Current state</source>
+        <comment>Current bar in history hwindow</comment>
+        <translation>Aktueller Zustand</translation>
+    </message>
+</context>
+<context>
+    <name>LineEditDialog</name>
+    <message>
+        <location filename="../lineeditdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>Dialog</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="26"/>
+        <source>TextLabel</source>
+        <translation>TextLabel</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="89"/>
+        <location filename="../lineeditdialog.cpp" line="17"/>
+        <source>Cancel</source>
+        <translation>Abbrechen</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="99"/>
+        <location filename="../lineeditdialog.cpp" line="9"/>
+        <source>Ok</source>
+        <translation>Ok</translation>
+    </message>
+</context>
+<context>
+    <name>LockedFileDialog</name>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>Dialog</translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="116"/>
+        <location filename="../lockedfiledialog.cpp" line="7"/>
+        <source>Delete lockfile</source>
+        <translation>Lockdatei entfernen</translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="123"/>
+        <location filename="../lockedfiledialog.cpp" line="6"/>
+        <source>Open readonly</source>
+        <translation type="unfinished">Nur zum Lesen öffnen</translation>
+    </message>
+</context>
+<context>
+    <name>Main</name>
+    <message>
+        <source>&amp;File</source>
+        <translation type="obsolete">&amp;Datei</translation>
+    </message>
+    <message>
+        <source>New map</source>
+        <translation type="obsolete">Neu</translation>
+    </message>
+    <message>
+        <source>&amp;New...</source>
+        <translation type="obsolete">&amp;Neu...</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <translation type="obsolete">Öffnen</translation>
+    </message>
+    <message>
+        <source>&amp;Open...</source>
+        <translation type="obsolete">&amp;Öffnen...</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <translation type="obsolete">Speichern</translation>
+    </message>
+    <message>
+        <source>&amp;Save...</source>
+        <translation type="obsolete">&amp;Speichern...</translation>
+    </message>
+    <message>
+        <source>Save &amp;As...</source>
+        <translation type="obsolete">Speichern &amp;unter...</translation>
+    </message>
+    <message>
+        <source>Import directory structure (experimental)</source>
+        <translation type="obsolete">Importiere Verzeichnisstruktur (experimentelle Funktion)</translation>
+    </message>
+    <message>
+        <source>Import Dir</source>
+        <translation type="obsolete">Importiere Verzeichnis</translation>
+    </message>
+    <message>
+        <source>Export (png)</source>
+        <translation type="obsolete">Exportiere als png-Grafik</translation>
+    </message>
+    <message>
+        <source>&amp;Export (png)</source>
+        <translation type="obsolete">&amp;Export (png)</translation>
+    </message>
+    <message>
+        <source>Print</source>
+        <translation type="obsolete">Drucken</translation>
+    </message>
+    <message>
+        <source>&amp;Print...</source>
+        <translation type="obsolete">&amp;Drucken...</translation>
+    </message>
+    <message>
+        <source>Close Map</source>
+        <translation type="obsolete">Schließen</translation>
+    </message>
+    <message>
+        <source>&amp;Close Map</source>
+        <translation type="obsolete">Schlie&amp;ßen</translation>
+    </message>
+    <message>
+        <source>Exit VYM</source>
+        <translation type="obsolete">Beenden</translation>
+    </message>
+    <message>
+        <source>E&amp;xit VYM</source>
+        <translation type="obsolete">B&amp;eenden</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <translation type="obsolete">&amp;Bearbeiten</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <translation type="obsolete">Rückgängig</translation>
+    </message>
+    <message>
+        <source>&amp;Undo</source>
+        <translation type="obsolete">&amp;Rückgängig</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <translation type="obsolete">Kopieren</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <translation type="obsolete">&amp;Kopieren</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="obsolete">Ausschneiden</translation>
+    </message>
+    <message>
+        <source>Cu&amp;t</source>
+        <translation type="obsolete">&amp;Ausschneiden</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <translation type="obsolete">Einfügen</translation>
+    </message>
+    <message>
+        <source>&amp;Paste</source>
+        <translation type="obsolete">Ein&amp;fügen</translation>
+    </message>
+    <message>
+        <source>Move branch up</source>
+        <translation type="obsolete">Zweig nach oben bewegen</translation>
+    </message>
+    <message>
+        <source>Move up</source>
+        <translation type="obsolete">Zweig nach oben</translation>
+    </message>
+    <message>
+        <source>Move branch down</source>
+        <translation type="obsolete">Zweig nach unten bewegen</translation>
+    </message>
+    <message>
+        <source>Move down</source>
+        <translation type="obsolete">Zweig nach unten</translation>
+    </message>
+    <message>
+        <source>Scroll branch</source>
+        <translation type="obsolete">Zweig einrollen</translation>
+    </message>
+    <message>
+        <source>Unscroll all</source>
+        <translation type="obsolete">Alles aufrollen</translation>
+    </message>
+    <message>
+        <source>Unscroll all scrolled branches</source>
+        <translation type="obsolete">Alle eingerollten Zweige aufrollen</translation>
+    </message>
+    <message>
+        <source>Find</source>
+        <translation type="obsolete">Finde</translation>
+    </message>
+    <message>
+        <source>Open URL</source>
+        <translation type="obsolete">URL öffnen</translation>
+    </message>
+    <message>
+        <source>Edit URL</source>
+        <translation type="obsolete">URL ändern</translation>
+    </message>
+    <message>
+        <source>Use heading of selected branch as URL</source>
+        <translation type="obsolete">Beschriftung dieses Zweiges auch als URL verwenden</translation>
+    </message>
+    <message>
+        <source>Use heading for URL</source>
+        <translation type="obsolete">Beschriftung als URL übernehmen</translation>
+    </message>
+    <message>
+        <source>Jump to another vym map, if needed load it first</source>
+        <translation type="obsolete">Gehe zu einer weiteren Map. (Falls nötig wird die Map vorher geöffnet.)</translation>
+    </message>
+    <message>
+        <source>Jump to map</source>
+        <translation type="obsolete">Gehe zu einer weiteren Map.</translation>
+    </message>
+    <message>
+        <source>Edit link to another vym map</source>
+        <translation type="obsolete">Bearbeite Verbindung zu einer Map</translation>
+    </message>
+    <message>
+        <source>Edit map link</source>
+        <translation type="obsolete">Bearbeite Verbindung zu einer Map</translation>
+    </message>
+    <message>
+        <source>edit Heading</source>
+        <translation type="obsolete">Bearbeite Zweig-Überschrift</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <translation type="obsolete">Bearbeite Zweig-Überschrift</translation>
+    </message>
+    <message>
+        <source>Delete Selection</source>
+        <translation type="obsolete">Entfernen</translation>
+    </message>
+    <message>
+        <source>Add a branch as child of selection</source>
+        <translation type="obsolete">Neuer Zweig </translation>
+    </message>
+    <message>
+        <source>Add branch as child</source>
+        <translation type="obsolete">Neuer Zweig </translation>
+    </message>
+    <message>
+        <source>Add a branch above selection</source>
+        <translation type="obsolete">Neuer Zweig - oben</translation>
+    </message>
+    <message>
+        <source>Add branch above</source>
+        <translation type="obsolete">Neuer Zweig - oben</translation>
+    </message>
+    <message>
+        <source>Add a branch below selection</source>
+        <translation type="obsolete">Neuer Zweig - unten</translation>
+    </message>
+    <message>
+        <source>Add branch below</source>
+        <translation type="obsolete">Neuer Zweig - unten</translation>
+    </message>
+    <message>
+        <source>Select upper branch</source>
+        <translation type="obsolete">Zweig oben auswählen</translation>
+    </message>
+    <message>
+        <source>Select lower branch</source>
+        <translation type="obsolete">Zweig unten auswählen</translation>
+    </message>
+    <message>
+        <source>Select left branch</source>
+        <translation type="obsolete">Linken Zweig auswählen</translation>
+    </message>
+    <message>
+        <source>Select right branch</source>
+        <translation type="obsolete">Zweig rechts</translation>
+    </message>
+    <message>
+        <source>Select child branch</source>
+        <translation type="obsolete">Unterzweig auswählen</translation>
+    </message>
+    <message>
+        <source>Select first branch</source>
+        <translation type="obsolete">Obersten Zweig auwählen</translation>
+    </message>
+    <message>
+        <source>Select last branch</source>
+        <translation type="obsolete">Untersten Zweig auswählen</translation>
+    </message>
+    <message>
+        <source>Add Image</source>
+        <translation type="obsolete">Lade Bild</translation>
+    </message>
+    <message>
+        <source>&amp;Format</source>
+        <translation type="obsolete">&amp;Format</translation>
+    </message>
+    <message>
+        <source>Set Color</source>
+        <translation type="obsolete">Wähle Farbe</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1883"/>
+        <source>Set &amp;Color</source>
+        <translation>Wähle &amp;Farbe</translation>
+    </message>
+    <message>
+        <source>Pick color
+Hint: You can pick a color from another branch and color using CTRL+Left Button</source>
+        <translation type="obsolete">Farbe übernehmen
+Tipp: Zum Kopieren einer Farbe kann man auch CTRL+linke Maustaste nehmen.</translation>
+    </message>
+    <message>
+        <source>Pic&amp;k color</source>
+        <translation type="obsolete">Farbe &amp;übernehmen</translation>
+    </message>
+    <message>
+        <source>Color branch</source>
+        <translation type="obsolete">Zweig färben</translation>
+    </message>
+    <message>
+        <source>Color &amp;branch</source>
+        <translation type="obsolete">Zweig &amp;färben</translation>
+    </message>
+    <message>
+        <source>Color Subtree</source>
+        <translation type="obsolete">Unterbaum färben</translation>
+    </message>
+    <message>
+        <source>Color sub&amp;tree</source>
+        <translation type="obsolete">&amp;Unterbaum färben</translation>
+    </message>
+    <message>
+        <source>Line</source>
+        <translation type="obsolete">Linie</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1928"/>
+        <source>Linkstyle Line</source>
+        <translation>Verbindungsstil Linie</translation>
+    </message>
+    <message>
+        <source>Linkstyle Parabel</source>
+        <translation type="obsolete">Verbindungsstil Parabel</translation>
+    </message>
+    <message>
+        <source>PolyLine</source>
+        <translation type="obsolete">Polygon</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1942"/>
+        <source>Linkstyle Thick Line</source>
+        <translation>Verbindungsstil gefülltes Polygon</translation>
+    </message>
+    <message>
+        <source>PolyParabel</source>
+        <translation type="obsolete">Polyparabel</translation>
+    </message>
+    <message>
+        <source>Linkstyle Thick Parabel</source>
+        <translation type="obsolete">Verbindungsstil Gefüllte Parabel</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <translation type="obsolete">Kein Rahmen</translation>
+    </message>
+    <message>
+        <source>Rectangle</source>
+        <translation type="obsolete">Rechteck</translation>
+    </message>
+    <message>
+        <source>Use same color for links and headings</source>
+        <translation type="obsolete">Verbindungen haben Farbe der Beschriftungen</translation>
+    </message>
+    <message>
+        <source>&amp;Use color of heading for link</source>
+        <translation type="obsolete">&amp;Verbindungen haben Farbe der Beschriftungen</translation>
+    </message>
+    <message>
+        <source>Set Link Color</source>
+        <translation type="obsolete">Farbe der Verbindungen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1971"/>
+        <source>Set &amp;Link Color</source>
+        <translation>&amp;Farbe der Verbindungen</translation>
+    </message>
+    <message>
+        <source>Set Background Color</source>
+        <translation type="obsolete">Hintergrundfarbe</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1981"/>
+        <source>Set &amp;Background Color</source>
+        <translation>&amp;Hintergrundfarbe</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1995"/>
+        <source>&amp;View</source>
+        <translation>&amp;Ansicht</translation>
+    </message>
+    <message>
+        <source>Zoom reset</source>
+        <translation type="obsolete">Keine Vergrösserung</translation>
+    </message>
+    <message>
+        <source>reset Zoom</source>
+        <translation type="obsolete">Keine Vergrösserung</translation>
+    </message>
+    <message>
+        <source>Zoom in</source>
+        <translation type="obsolete">Vergrössern</translation>
+    </message>
+    <message>
+        <source>Zoom out</source>
+        <translation type="obsolete">Verkleinern</translation>
+    </message>
+    <message>
+        <source>Toggle Note Editor</source>
+        <translation type="obsolete">Zeige Notiz Editor</translation>
+    </message>
+    <message>
+        <source>&amp;Next Window</source>
+        <translation type="obsolete">&amp;Nächstes Fenster</translation>
+    </message>
+    <message>
+        <source>Next Window</source>
+        <translation type="obsolete">Nächstes Fenster</translation>
+    </message>
+    <message>
+        <source>&amp;Previous Window</source>
+        <translation type="obsolete">&amp;Vorheriges Fenster</translation>
+    </message>
+    <message>
+        <source>Previous Window</source>
+        <translation type="obsolete">Vorheriges Fenster</translation>
+    </message>
+    <message>
+        <source>&amp;Settings</source>
+        <translation type="obsolete">&amp;Einstellungen</translation>
+    </message>
+    <message>
+        <source>Set application to open pdf files</source>
+        <translation type="obsolete">pdf-Dateien öffnen mit...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="4981"/>
+        <source>Set application to open an URL</source>
+        <translation>URLs öffnen mit...</translation>
+    </message>
+    <message>
+        <source>Edit branch after adding it</source>
+        <translation type="obsolete">Zweig nach dem Einfügen neu beschriften</translation>
+    </message>
+    <message>
+        <source>Select branch after adding it</source>
+        <translation type="obsolete">Zweig nach dem Einfügen auswählen</translation>
+    </message>
+    <message>
+        <source>Select heading before editing</source>
+        <translation type="obsolete">Beschriftung vor dem editieren auswählen</translation>
+    </message>
+    <message>
+        <source>Select existing heading</source>
+        <translation type="obsolete">Beschriftung vor dem editieren auswählen</translation>
+    </message>
+    <message>
+        <source>Enable pasting into new branch</source>
+        <translation type="obsolete">Einfügen in neuen Zweig</translation>
+    </message>
+    <message>
+        <source>Enable Delete key for deleting branches</source>
+        <translation type="obsolete">Delete Taste zum Löschen von Zweigen verwenden</translation>
+    </message>
+    <message>
+        <source>Enable Delete key</source>
+        <translation type="obsolete">Delete Taste zum Löschen von Zweigen verwenden</translation>
+    </message>
+    <message>
+        <source>&amp;Test</source>
+        <translation type="obsolete">&amp;Test</translation>
+    </message>
+    <message>
+        <source>Test Flag</source>
+        <translation type="obsolete">Test Flag</translation>
+    </message>
+    <message>
+        <source>test flag</source>
+        <translation type="obsolete">test Flag</translation>
+    </message>
+    <message>
+        <source>Count Canvas Items</source>
+        <translation type="obsolete">Zähle Canvas Items</translation>
+    </message>
+    <message>
+        <source>Count Items</source>
+        <translation type="obsolete">Zähle Items</translation>
+    </message>
+    <message>
+        <source>Show Clipboard</source>
+        <translation type="obsolete">Zeige Zwischenablage</translation>
+    </message>
+    <message>
+        <source>Show clipboard</source>
+        <translation type="obsolete">Zeige Zwischenablage</translation>
+    </message>
+    <message>
+        <source>Export to dir</source>
+        <translation type="obsolete">Exportiere in Verzeichnis</translation>
+    </message>
+    <message>
+        <source>Export to directory</source>
+        <translation type="obsolete">Exportiere in Verzeichnis</translation>
+    </message>
+    <message>
+        <source>&amp;Help</source>
+        <translation type="obsolete">&amp;Hilfe</translation>
+    </message>
+    <message>
+        <source>Open VYM Documentation (pdf)</source>
+        <translation type="obsolete">VYM Handbuch (pdf)</translation>
+    </message>
+    <message>
+        <source>Open VYM Documentation (pdf) </source>
+        <translation type="obsolete">VYM Handbuch (pdf)</translation>
+    </message>
+    <message>
+        <source>Information about VYM</source>
+        <translation type="obsolete">Information über VYM</translation>
+    </message>
+    <message>
+        <source>About VYM</source>
+        <translation type="obsolete">Über VYM</translation>
+    </message>
+    <message>
+        <source>Information about QT toolkit</source>
+        <translation type="obsolete">Informationen zum QT Toolkit</translation>
+    </message>
+    <message>
+        <source>About QT</source>
+        <translation type="obsolete">Über QT</translation>
+    </message>
+    <message>
+        <source>Save image</source>
+        <translation type="obsolete">Speichere Bild</translation>
+    </message>
+    <message>
+        <source>The file </source>
+        <translation type="obsolete">Die Datei</translation>
+    </message>
+    <message>
+        <source>
+exists already. Do you want to</source>
+        <translation type="obsolete">gibt es bereits. Wollen Sie sie</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3460"/>
+        <source>Overwrite</source>
+        <translation>Überschreiben</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3188"/>
+        <location filename="../mainwindow.cpp" line="3235"/>
+        <location filename="../mainwindow.cpp" line="3461"/>
+        <source>Cancel</source>
+        <translation>Abbrechen</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save</source>
+        <translation type="obsolete">Diese Datei konnte nicht gespeichert werden:</translation>
+    </message>
+    <message>
+        <source>Saved </source>
+        <translation type="obsolete">Datei gespeichert: </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3417"/>
+        <source>Couldn&apos;t save </source>
+        <translation>Datei konnte nicht gespeichert werden </translation>
+    </message>
+    <message>
+        <source>The map </source>
+        <translation type="obsolete">Die Map </translation>
+    </message>
+    <message>
+        <source> has been modified but not saved yet. Do you want to</source>
+        <translation type="obsolete">wurde verändert aber noch nicht gespeichert. Wollen Sie</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3775"/>
+        <source>Save modified map before closing it</source>
+        <translation>Speichern und Map schliessen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3776"/>
+        <source>Discard changes</source>
+        <translation>Änderungen verwerfen</translation>
+    </message>
+    <message>
+        <source>This map is not saved yet. Do you want to</source>
+        <translation type="obsolete">Diese Map wurde noch nicht gespeichert. Wollen Sie </translation>
+    </message>
+    <message>
+        <source>Save map</source>
+        <translation type="obsolete">Speichern</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <location filename="../mainwindow.cpp" line="4130"/>
+        <source>Critical Error</source>
+        <translation>Kritischer Fehler</translation>
+    </message>
+    <message>
+        <source>Enter path for pdf reader:</source>
+        <translation type="obsolete">Pfad für pdf-Anwendung:</translation>
+    </message>
+    <message>
+        <source>Enter path for application to open an URL:</source>
+        <translation type="obsolete">Pfad zum Öffnen von URLs:</translation>
+    </message>
+    <message>
+        <source>Save &amp;As</source>
+        <translation type="obsolete">Speichern &amp;unter...</translation>
+    </message>
+    <message>
+        <source>Open Recent</source>
+        <translation type="obsolete">Zuletzt geöffnete Dateien</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <translation type="obsolete">Exportieren</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <translation type="obsolete">als Bild</translation>
+    </message>
+    <message>
+        <source>Export as ASCII (still experimental)</source>
+        <translation type="obsolete">als ASCII Text (noch experimentell)</translation>
+    </message>
+    <message>
+        <source>Export (ASCII)</source>
+        <translation type="obsolete">als ASCII</translation>
+    </message>
+    <message>
+        <source>Edit Map Info</source>
+        <translation type="obsolete">Bearbeite Map Info</translation>
+    </message>
+    <message>
+        <source>Export XML</source>
+        <translation type="obsolete">Exportiere als XML</translation>
+    </message>
+    <message>
+        <source>Export HTML</source>
+        <translation type="obsolete">Exportiere als HTML</translation>
+    </message>
+    <message>
+        <source>The directory </source>
+        <translation type="obsolete">Das Verzeichnis</translation>
+    </message>
+    <message>
+        <source> is not empty. Do you risk to overwrite its contents?</source>
+        <translation type="obsolete">ist nicht leer.Riskieren sie es, das Verzeichnis zu überschreiben?</translation>
+    </message>
+    <message>
+        <source>
+ is already opened.Opening the same map in multiple editors may lead 
+to confusion when finishing working with vym.Do you want to</source>
+        <translation type="obsolete">
+ist bereits geöffnet. Die gleiche Map mehrfach in verschiedenen Ansichten zu öffnen 
+kann beim Beenden von vym zu Problemen führen. Wollen Sie</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3187"/>
+        <source>Open anyway</source>
+        <translation>Trotzdem öffnen</translation>
+    </message>
+    <message>
+        <source>Export XML to directory</source>
+        <translation type="obsolete">Exportiere XML in Verzeichnis</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5787"/>
+        <source>Critcal error</source>
+        <translation>Kritischer Fehler</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find the documentation
+vym.pdf in various places.</source>
+        <translation type="obsolete">Konnte die Dokumentation vym.pdf
+nirgends finden.</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a viewer to read vym.pdf.
+Please use Settings-&gt;</source>
+        <translation type="obsolete">Konnte kein Programm zum Anzeigen von vym.pdf
+finden. Bitte benutzen Sie Einstellungen-&gt;</translation>
+    </message>
+    <message>
+        <source>The map</source>
+        <translation type="obsolete">Die Map</translation>
+    </message>
+    <message>
+        <source> does not exist.
+ Do you want to create a new one?</source>
+        <translation type="obsolete">gibt es nicht
+Wollen Sie eine neue anlegen?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3234"/>
+        <source>Create</source>
+        <translation>Anlegen</translation>
+    </message>
+    <message>
+        <source>Create URL to Bugzilla</source>
+        <translation type="obsolete">URL für Bugzilla anlegen</translation>
+    </message>
+    <message>
+        <source>Edit vym link</source>
+        <translation type="obsolete">vym Verknüpfung ändern</translation>
+    </message>
+    <message>
+        <source>Delete link to another vym map</source>
+        <translation type="obsolete">vym Verknüfung löschen</translation>
+    </message>
+    <message>
+        <source>Delete vym link</source>
+        <translation type="obsolete">vym Verknüpfung löschen</translation>
+    </message>
+    <message>
+        <source>Critical Load Error</source>
+        <translation type="obsolete">Kritischer Fehler beim Laden</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start unzip to decompress data.</source>
+        <translation type="obsolete">Konnte unzip nicht starten, um Daten zu dekomprimieren.</translation>
+    </message>
+    <message>
+        <source>unzip didn&apos;t exit normally</source>
+        <translation type="obsolete">unzip wurde nicht richtig beendet</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="obsolete">Konnte keine map (*.xml) in .vym Datei finden.
+</translation>
+    </message>
+    <message>
+        <source>Critical Save Error</source>
+        <translation type="obsolete">Kritischer Fehler beim Speichern</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start zip to compress data.</source>
+        <translation type="obsolete">Konnte zip nicht starten, um Daten zu komprimieren.</translation>
+    </message>
+    <message>
+        <source>zip didn&apos;t exit normally</source>
+        <translation type="obsolete">zip wurde nicht richtig beendet</translation>
+    </message>
+    <message>
+        <source>Saving the map as </source>
+        <translation type="obsolete">Das Speichern der map als</translation>
+    </message>
+    <message>
+        <source>
+will write it uncompressed.
+This will also write the directories for images
+and flags and thus may overwrite files in the given directory
+Do you want to</source>
+        <translation type="obsolete">
+wird die map unkomprimiert schreiben.
+Dabei werden Verzeichnisse für die Bilder und Flags erzeugt
+und dabei evtl. andere Daten im Verzeichnis überschrieben</translation>
+    </message>
+    <message>
+        <source>Proceed</source>
+        <translation type="obsolete">Weiter</translation>
+    </message>
+    <message>
+        <source>Saved</source>
+        <translation type="obsolete">Gespeichert: </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5045"/>
+        <source>VYM -Information:</source>
+        <translation>vym-Information:</translation>
+    </message>
+    <message>
+        <source>No matches found for </source>
+        <translation type="obsolete">Keine Treffer gefunden für</translation>
+    </message>
+    <message>
+        <source>Export XHTML</source>
+        <translation type="obsolete">Exportiere XHTML</translation>
+    </message>
+    <message>
+        <source>
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="obsolete">
+verwendet nicht das komprimierte vym Dateiformat.
+Wenn die Map unkomprimiert geschrieben werden soll,
+dann werden auch die Flags und Bilder im angegebenen 
+Verzeichnis geschrieben, was evtl. bestehende Daten
+überschreiben kann
+
+Wollen Sie die Map beim Schreiben</translation>
+    </message>
+    <message>
+        <source>compressed (vym default)</source>
+        <translation type="obsolete">komprimieren (vym default)</translation>
+    </message>
+    <message>
+        <source>uncompressed</source>
+        <translation type="obsolete">unkomprimiert lassen</translation>
+    </message>
+    <message>
+        <source>Use for Export</source>
+        <translation type="obsolete">Benutze für Export</translation>
+    </message>
+    <message>
+        <source>Add map at selection</source>
+        <translation type="obsolete">Map an Auswahl anhängen</translation>
+    </message>
+    <message>
+        <source>Import (add)</source>
+        <translation type="obsolete">Import (hinzufügen)</translation>
+    </message>
+    <message>
+        <source>Replace selection with map</source>
+        <translation type="obsolete">Auswahl mit Map ersetzen</translation>
+    </message>
+    <message>
+        <source>Import (replace)</source>
+        <translation type="obsolete">Import (ersetzen)</translation>
+    </message>
+    <message>
+        <source>Save selction</source>
+        <translation type="obsolete">Auswahl speichern</translation>
+    </message>
+    <message>
+        <source>Save selection</source>
+        <translation type="obsolete">Auswahl speichern</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3303"/>
+        <source>Load vym map</source>
+        <translation>Lade vym Map</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3306"/>
+        <source>Import: Add vym map to selection</source>
+        <translation>Import: Füge Map zu Auswahl hinzu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3309"/>
+        <source>Import: Replace selection with vym map</source>
+        <translation>Import: Ersetze Auswahl mit Map</translation>
+    </message>
+    <message>
+        <source>Save Error</source>
+        <translation type="obsolete">Fehler beim Speichern</translation>
+    </message>
+    <message>
+        <source>
+could not be removed before saving</source>
+        <translation type="obsolete">
+konnte vor dem Speichern nicht gelöscht werden</translation>
+    </message>
+    <message>
+        <source>Use modifier to color branches</source>
+        <translation type="obsolete">Modifzierer zum Färben verwenden</translation>
+    </message>
+    <message>
+        <source>New map</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Neue Map anlegen</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Öffnen</translation>
+    </message>
+    <message>
+        <source>Modes when using modifiers</source>
+        <translation type="obsolete">Modes beim Benutzen von Modifizierern</translation>
+    </message>
+    <message>
+        <source>Add a branch by inserting and making selection its child</source>
+        <translation type="obsolete">Neuen Zweig einfügen und die Auswahl als Kind anhängen</translation>
+    </message>
+    <message>
+        <source>Add branch (insert)</source>
+        <translation type="obsolete">Neuen Zweig einfügen</translation>
+    </message>
+    <message>
+        <source>Remove only branch and keep its childs</source>
+        <translation type="obsolete">Zweig entfernen, aber Unterzweige behalten</translation>
+    </message>
+    <message>
+        <source>Remove only branch </source>
+        <translation type="obsolete">Zweig entfernen, Unterzweige behalten</translation>
+    </message>
+    <message>
+        <source>Remove childs of branch</source>
+        <translation type="obsolete">Unterzweige eines Zweiges entfernen</translation>
+    </message>
+    <message>
+        <source>Remove childs</source>
+        <translation type="obsolete">Unterzweige entfernen</translation>
+    </message>
+    <message>
+        <source>Use modifier to copy</source>
+        <translation type="obsolete">Modifizierer zum Kopieren verwenden</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2723"/>
+        <source>Add</source>
+        <translation>Hinzufügen</translation>
+    </message>
+    <message>
+        <source>Remove</source>
+        <translation type="obsolete">Entfernen</translation>
+    </message>
+    <message>
+        <source>Edit XLink</source>
+        <translation type="obsolete">xLink ändern</translation>
+    </message>
+    <message>
+        <source>Goto XLink</source>
+        <translation type="obsolete">xLink folgen</translation>
+    </message>
+    <message>
+        <source>This map does not exist:
+  </source>
+        <translation type="obsolete">Diese Map gibt es nicht:
+  </translation>
+    </message>
+    <message>
+        <source>
+Do you want to create a new one?</source>
+        <translation type="obsolete">Wollen Sie eine neue anlegen?</translation>
+    </message>
+    <message>
+        <source>Use modifier to draw xLinks</source>
+        <translation type="obsolete">Modifizierer zum Anlegen von xLinks verwenden</translation>
+    </message>
+    <message>
+        <source>Use exclusive flags in flag toolbars</source>
+        <translation type="obsolete">Flags in den Toolbars exklusiv verwenden</translation>
+    </message>
+    <message>
+        <source>Enable exclusive flags</source>
+        <translation type="obsolete">Exklusive Flags</translation>
+    </message>
+    <message>
+        <source>Set application to open external links</source>
+        <translation type="obsolete">Anwendung zum Öffnen externen Verweise</translation>
+    </message>
+    <message>
+        <source>Pasting into new branch</source>
+        <translation type="obsolete">In neuen Zweig einfügen</translation>
+    </message>
+    <message>
+        <source>pasting into new branch</source>
+        <translation type="obsolete">In neuen Zweig einfügen</translation>
+    </message>
+    <message>
+        <source>Delete key for deleting branches</source>
+        <translation type="obsolete">Entfernen Taste für das Löschen von Zweigen</translation>
+    </message>
+    <message>
+        <source>Delete key</source>
+        <translation type="obsolete">Entfernen Taste</translation>
+    </message>
+    <message>
+        <source>Exclusive flags</source>
+        <translation type="obsolete">Exklusive Flags</translation>
+    </message>
+    <message>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <translation type="obsolete">Das Verzeichnis %1 ist nicht leer.
+Riskieren Sie es dessen Inhalt zu überschreiben?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3179"/>
+        <source>The map %1
+is already opened.Opening the same map in multiple editors may lead 
+to confusion when finishing working with vym.Do you want to</source>
+        <translation>Die Map %1
+ist bereits in vym geöffnet. Die gleiche Map gleichzeitig in mehreren Editoren
+zu bearbeiten kann beim Beenden von vym zu Verwirrung führen. 
+Wollen Sie</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3228"/>
+        <source>This map does not exist:
+  %1
+Do you want to create a new one?</source>
+        <translation>Diese Map gibt es nicht:
+  %1
+Wollen Sie eine neue anlegen?</translation>
+    </message>
+    <message>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="obsolete">Die Map %1
+wurde unkomprimiert gespeichert, also nicht im 
+normalerweise von vym verwendeten Format.
+Beim nochmaligen unkomprimierten Speichern
+werden auch Grafiken gespeichert und so evtl.
+Daten im angegeben Verzeichnis überschrieben.
+
+Wollen Sie 
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3413"/>
+        <source>Saved  %1</source>
+        <translation>%1 gespeichert</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3455"/>
+        <source>The file %1
+exists already. Do you want to</source>
+        <translation>Die Datei %1 gibt es bereits.
+Wollen Sie sie überschreiben?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3770"/>
+        <source>The map %1 has been modified but not saved yet. Do you want to</source>
+        <translation>Die Map %1 wurde geändert,
+aber noch nicht gespeichert. Wollen Sie </translation>
+    </message>
+    <message>
+        <source>No matches found for &lt;b&gt;%1&lt;/b&gt;</source>
+        <translation type="obsolete">Kein Treffer gefunden für &lt;b&gt;%1&lt;/b&gt;</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4131"/>
+        <source>Couldn&apos;t open map %1</source>
+        <translation>Konnte die Map %1 nicht öffnen</translation>
+    </message>
+    <message>
+        <source>Set application to open pdf files  ...</source>
+        <translation type="obsolete">Anwendung zum Öffnen von PDF Dateien...</translation>
+    </message>
+    <message>
+        <source>Set application to open external links...</source>
+        <translation type="obsolete">Anwendung zum Öffnen externer Verweise...</translation>
+    </message>
+    <message>
+        <source>Exit</source>
+        <translation type="obsolete">Beenden</translation>
+    </message>
+    <message>
+        <source>E&amp;xit</source>
+        <translation type="obsolete">B&amp;eenden</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="obsolete">Wiederherstellen</translation>
+    </message>
+    <message>
+        <source>&amp;Redo</source>
+        <translation type="obsolete">Wieder&amp;herstellen</translation>
+    </message>
+    <message>
+        <source>Create URL to FATE</source>
+        <translation type="obsolete">URL für FATE anlegen</translation>
+    </message>
+    <message>
+        <source>Include top and bottom position of images into branch</source>
+        <translation type="obsolete">Obere und untere Kante von Bildern für Grösse eines Zweiges berücksichtigen</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <translation type="obsolete">Obere und untere Bildkanten berücksichtigen</translation>
+    </message>
+    <message>
+        <source>Include left and right position of images into branch</source>
+        <translation type="obsolete">Linke und rechte Kanten von Bildern für Grösse eines Zweiges berücksichtigen</translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <translation type="obsolete">Linke und rechte Bildkanten berücksichtigen</translation>
+    </message>
+    <message>
+        <source>Hide link</source>
+        <translation type="obsolete">Verbindung verbergen</translation>
+    </message>
+    <message>
+        <source>Hide link if object is not selected</source>
+        <translation type="obsolete">Verbindung verbergen, falls Objekt nicht selektiert ist</translation>
+    </message>
+    <message>
+        <source>Note</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Notiz</translation>
+    </message>
+    <message>
+        <source>WWW Document (external)</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">WWW Dokument (extern)</translation>
+    </message>
+    <message>
+        <source>Link to another vym map</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Verweis zu einer anderen Map</translation>
+    </message>
+    <message>
+        <source>subtree is scrolled</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Teilbaum ist eingerollt</translation>
+    </message>
+    <message>
+        <source>subtree is temporary scrolled</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Teilbaum ist momentan ausgerollt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2291"/>
+        <source>Take care!</source>
+        <comment>Standardflag</comment>
+        <translation>Vorsicht!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2295"/>
+        <source>Really?</source>
+        <comment>Standardflag</comment>
+        <translation>Wirklich?</translation>
+    </message>
+    <message>
+        <source>ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">ok!</translation>
+    </message>
+    <message>
+        <source>Not ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Nicht ok!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2274"/>
+        <source>This won&apos;t work!</source>
+        <comment>Standardflag</comment>
+        <translation>Das geht nicht!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2299"/>
+        <source>Good</source>
+        <comment>Standardflag</comment>
+        <translation>Gut</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2303"/>
+        <source>Bad</source>
+        <comment>Standardflag</comment>
+        <translation>Schlecht</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2312"/>
+        <source>Time critical</source>
+        <comment>Standardflag</comment>
+        <translation>Zeitkritisch</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2318"/>
+        <source>Idea!</source>
+        <comment>Standardflag</comment>
+        <translation>Idee!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2322"/>
+        <source>Important</source>
+        <comment>Standardflag</comment>
+        <translation>Wichtig</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2326"/>
+        <source>Unimportant</source>
+        <comment>Standardflag</comment>
+        <translation>Unwichtig</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2339"/>
+        <source>I like this</source>
+        <comment>Standardflag</comment>
+        <translation>Finde ich gut</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2343"/>
+        <source>I do not like this</source>
+        <comment>Standardflag</comment>
+        <translation>Finde ich schlecht</translation>
+    </message>
+    <message>
+        <source>I just love... </source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Das liebe ich!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2356"/>
+        <source>Dangerous</source>
+        <comment>Standardflag</comment>
+        <translation>Gefährlich</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2364"/>
+        <source>This will help</source>
+        <comment>Standardflag</comment>
+        <translation>Das könnte helfen</translation>
+    </message>
+    <message>
+        <source>Call test function</source>
+        <translation type="obsolete">Testfunktion aufrufen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation>Konnte %1 nicht speichern</translation>
+    </message>
+    <message>
+        <source>Export to Open Office</source>
+        <translation type="obsolete">Export nach Open Office</translation>
+    </message>
+    <message>
+        <source>Export as Image</source>
+        <translation type="obsolete">Exportiere als Bild</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <location filename="../mainwindow.cpp" line="3596"/>
+        <source>Import</source>
+        <translation>Importieren</translation>
+    </message>
+    <message>
+        <source>KDE Bookmarks</source>
+        <translation type="obsolete">KDE Lesezeichen</translation>
+    </message>
+    <message>
+        <source>Export in Open Document Format used e.g. in Open Office </source>
+        <translation type="obsolete">Exportiere im Open Document Format, das z.B. in Open Office verwendet wird</translation>
+    </message>
+    <message>
+        <source>Export as XML</source>
+        <translation type="obsolete">Exportiere als XML</translation>
+    </message>
+    <message>
+        <source>Export as HTML</source>
+        <translation type="obsolete">Exporte als HTML</translation>
+    </message>
+    <message>
+        <source>Export as XHTML</source>
+        <translation type="obsolete">Exportiere als XHTML</translation>
+    </message>
+    <message>
+        <source>Export as ASCII</source>
+        <translation type="obsolete">Exportiere als ASCII</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <location filename="../mainwindow.cpp" line="1087"/>
+        <location filename="../mainwindow.cpp" line="1091"/>
+        <location filename="../mainwindow.cpp" line="1095"/>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <source>(still experimental)</source>
+        <translation>(noch experimentelle Funktion)</translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">Exportiere als LaTeX Datei</translation>
+    </message>
+    <message>
+        <source>Mind Manager</source>
+        <translation type="obsolete">Mind Manager</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1110"/>
+        <source>&amp;Print</source>
+        <translation>&amp;Drucken</translation>
+    </message>
+    <message>
+        <source>Add map (insert)</source>
+        <translation type="obsolete">Map einfügen (An Selektion hinzufügen)</translation>
+    </message>
+    <message>
+        <source>Add map (replace)</source>
+        <translation type="obsolete">Map einfügen (Selektion austauschen)</translation>
+    </message>
+    <message>
+        <source>Export as</source>
+        <translation type="obsolete">Exportieren als</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <location filename="../mainwindow.cpp" line="3724"/>
+        <source>Export to</source>
+        <translation>Exportieren als</translation>
+    </message>
+    <message>
+        <source>Hide object in exports</source>
+        <translation type="obsolete">Objekt beim Exportieren nicht anzeigen</translation>
+    </message>
+    <message>
+        <source>Hide in exports</source>
+        <translation type="obsolete">In Export nicht anzeigen</translation>
+    </message>
+    <message>
+        <source>Hide object in exported maps</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Objekt beim Exportieren nicht anzeigen</translation>
+    </message>
+    <message>
+        <source>Use hide flag during exports </source>
+        <translation type="obsolete">Während des Exports das &quot;Verbergen&quot; Flag verwenden </translation>
+    </message>
+    <message>
+        <source>Use hide flags</source>
+        <translation type="obsolete">Während des Exports das &quot;Verbergen&quot; Flag verwenden </translation>
+    </message>
+    <message>
+        <source>Open URL in new tab</source>
+        <translation type="obsolete">URL in neuen Tab öffnen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3745"/>
+        <location filename="../mainwindow.cpp" line="3875"/>
+        <location filename="../mainwindow.cpp" line="3918"/>
+        <location filename="../mainwindow.cpp" line="4260"/>
+        <location filename="../mainwindow.cpp" line="5800"/>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Warning</source>
+        <translation>Warnung</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3876"/>
+        <location filename="../mainwindow.cpp" line="5801"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <translation>Konnte kein Programm zum Öffnen von %1 finden.</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>Bitte setzen sie einen Pfad in Einstellungen-&gt;</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3919"/>
+        <source>Couldn&apos;t start %1 to open a new tab in %2.</source>
+        <translation>Konnte %1 nicht starten um einen neuen Tab mit %2 zu öffnen.</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4244"/>
+        <source>Enter sleep time (number of days or date YYYY-MM-DD or DD.MM[.YYYY]</source>
+        <comment>task sleep time dialog</comment>
+        <translation>Wiedervorlage (als Anzahl Tage oder als Datum: JJJJ-MM-TT oder  TT.MM[JJJJ])</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4261"/>
+        <source>Couldn&apos;t set sleep time to %1.
+</source>
+        <translation>Konnte Wiedervorlage nicht setzen auf %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4967"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Set application to open PDF files</source>
+        <translation>PDFs öffnen mit</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2307"/>
+        <source>Oh no!</source>
+        <comment>Standardflag</comment>
+        <translation>Oh nein!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="238"/>
+        <source>Note Editor</source>
+        <translation>Notiz Editor</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="245"/>
+        <source>Heading Editor</source>
+        <translation>Editor Zweigbeschriftungen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="260"/>
+        <source>Search results list</source>
+        <comment>FindResultWidget</comment>
+        <translation>Liste der Suchergebnisse</translation>
+    </message>
+    <message>
+        <source>Loading maps</source>
+        <comment>Mainwindow</comment>
+        <translation type="obsolete">Lade maps</translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <comment>Toolbar for file actions</comment>
+        <translation type="vanished">&amp;Map</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2913"/>
+        <source>File actions toolbar</source>
+        <comment>Toolbar for file actions</comment>
+        <translation>Datei Werkzeugleiste</translation>
+    </message>
+    <message>
+        <source>File</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Datei</translation>
+    </message>
+    <message>
+        <source>KDE 3 Bookmarks</source>
+        <translation type="obsolete">KDE 3 Lesezeichen</translation>
+    </message>
+    <message>
+        <source>KDE 3 bookmarks</source>
+        <translation type="obsolete">KDE 3 Lesezeichen</translation>
+    </message>
+    <message>
+        <source>KDE 4 Bookmarks</source>
+        <translation type="obsolete">KDE 4 Lesezeichen</translation>
+    </message>
+    <message>
+        <source>KDE 4 bookmarks</source>
+        <translation type="obsolete">KDE 4 Lesezeichen</translation>
+    </message>
+    <message>
+        <source>Export in last used format (%1)</source>
+        <translation type="obsolete">Exporte im zuletzt benutztem Format</translation>
+    </message>
+    <message>
+        <source> webpage (HTML)</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Webseite (HTML)</translation>
+    </message>
+    <message>
+        <source>KDE 3 Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">KDE 3 Lesezeichen</translation>
+    </message>
+    <message>
+        <source>KDE 4 Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="vanished">KDE 4 Lesezeichen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2931"/>
+        <source>Edit actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation>Editieren Werkzeugleiste</translation>
+    </message>
+    <message>
+        <source>Edit</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Edit</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="280"/>
+        <source>Property Editor</source>
+        <comment>PropertyEditor</comment>
+        <translation>Eigenschaften</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="287"/>
+        <source>History window</source>
+        <comment>HistoryWidget</comment>
+        <translation>Verlaufsfenster</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="218"/>
+        <source>Main window</source>
+        <comment>Shortcut group</comment>
+        <translation>Hauptfenster</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="219"/>
+        <source>Map Editors</source>
+        <comment>Shortcut group</comment>
+        <translation>Map Editor</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="220"/>
+        <source>Text Editors</source>
+        <comment>Shortcut group</comment>
+        <translation>Text Editor</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="967"/>
+        <source>&amp;Map</source>
+        <comment>Menu for file actions</comment>
+        <translation>&amp;Map</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="992"/>
+        <source>&amp;Restore last session</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Letzte Session wiederherstellen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1047"/>
+        <source>Webpage (HTML)...</source>
+        <comment>File export menu</comment>
+        <translation>Webseite (HTML)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1051"/>
+        <source>Text (ASCII)...</source>
+        <comment>File export menu</comment>
+        <translation>Text (ASCII)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <source>Text with tasks</source>
+        <comment>File export menu</comment>
+        <translation>Text mit Aufgaben</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1208"/>
+        <source>Add attribute</source>
+        <translation>Attribut hinzufügen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1316"/>
+        <source>&amp;Detach</source>
+        <comment>Context menu</comment>
+        <translation>Loslösen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1317"/>
+        <source>Detach branch and use as mapcenter</source>
+        <comment>Context menu</comment>
+        <translation>Zweig loslösen und als Zentrum verwenden</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1334"/>
+        <source>Sort children backwards</source>
+        <comment>Edit menu</comment>
+        <translation>Unterzweige aufsteigend sortieren</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1411"/>
+        <source>Expand all branches</source>
+        <comment>Edit menu</comment>
+        <translation>Alle Zweige ausklappen</translation>
+    </message>
+    <message>
+        <source>Expand all branches</source>
+        <translation type="obsolete">Alle Zweige ausklappen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1419"/>
+        <source>Expand one level</source>
+        <comment>Edit menu</comment>
+        <translation>Ausklappen</translation>
+    </message>
+    <message>
+        <source>Expand one level in tree editor</source>
+        <translation type="obsolete">Alle Zweige in Zweigeditor eine Ebene ausklappen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1389"/>
+        <source>Collapse one level</source>
+        <comment>Edit menu</comment>
+        <translation>Einklappen</translation>
+    </message>
+    <message>
+        <source>Collapse one level in tree editor</source>
+        <translation type="obsolete">Alle Zweige im Zweigeditor eine Ebene weit einklappen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1400"/>
+        <source>Collapse unselected levels</source>
+        <comment>Edit menu</comment>
+        <translation>Nicht selektierte Ebenen einklappen</translation>
+    </message>
+    <message>
+        <source>Collapse unselected levels in tree editor</source>
+        <translation type="obsolete">Nicht selektierte Ebenen im Baumeditor einklappen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1355"/>
+        <source>Unscroll children</source>
+        <comment>Edit menu</comment>
+        <translation>Unterzweige ausrollen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1360"/>
+        <source>Grow selection</source>
+        <comment>Edit menu</comment>
+        <translation>Auswahl vergössern</translation>
+    </message>
+    <message>
+        <source>Grow selection, e.g. make image larger</source>
+        <translation type="obsolete">Auswahl vergrössern, z.B. Bild vergrössern</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1369"/>
+        <source>Shrink selection</source>
+        <comment>Edit menu</comment>
+        <translation>Auswahl verkleinern</translation>
+    </message>
+    <message>
+        <source>Shrink selection, e.g. make image smaller</source>
+        <translation type="obsolete">Auswahl verkleinern, z.B. Bild verkleinern</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1378"/>
+        <source>Reset selection size</source>
+        <comment>Edit menu</comment>
+        <translation>Grösse der Auswahl zurücksetzen</translation>
+    </message>
+    <message>
+        <source>Reset selection size to original</source>
+        <translation type="obsolete">Grösse der Auswahl zurücksetzen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1795"/>
+        <source>Toggle target...</source>
+        <comment>Edit menu</comment>
+        <translation>Ziel einschalten/ausschalten</translation>
+    </message>
+    <message>
+        <source>Toggle target</source>
+        <translation type="obsolete">Zeige Ziel</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1804"/>
+        <source>Goto target...</source>
+        <comment>Edit menu</comment>
+        <translation>Gehe zu Ziel</translation>
+    </message>
+    <message>
+        <source>Goto target</source>
+        <translation type="obsolete">Gehe zu Ziel</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1812"/>
+        <source>Move to target...</source>
+        <comment>Edit menu</comment>
+        <translation>Verschiebe zu Ziel</translation>
+    </message>
+    <message>
+        <source>Move to target</source>
+        <translation type="obsolete">Verschiebe zu Ziel</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1864"/>
+        <source>Find duplicate URLs</source>
+        <comment>Edit menu</comment>
+        <translation>Doppelte URLs finden</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1446"/>
+        <source>Open all URLs in subtree (including scrolled branches)</source>
+        <comment>Edit menu</comment>
+        <translation>Alle URLs im Unterbaum öffnen</translation>
+    </message>
+    <message>
+        <source>Open all URLs in subtree (including scrolled branches)</source>
+        <translation type="obsolete">Alle URLs im Unterbaum öffnen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1461"/>
+        <source>Extract URLs from note</source>
+        <comment>Edit menu</comment>
+        <translation>Extrahiere URLs aus Notiz</translation>
+    </message>
+    <message>
+        <source>Extract URLs from note</source>
+        <translation type="obsolete">Extrahiere URLs aus Notiz</translation>
+    </message>
+    <message>
+        <source>Get data from Novell Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Daten von Novell Bugzilla holen</translation>
+    </message>
+    <message>
+        <source>Get data from Novell Bugzilla</source>
+        <translation type="obsolete">Daten von Novell Bugzilla holen</translation>
+    </message>
+    <message>
+        <source>Get data from Novell Bugzilla for subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Daten von Novell Bugzilla holen für ganzen Unterbaum</translation>
+    </message>
+    <message>
+        <source>Update all Novell bugs in subtree</source>
+        <translation type="obsolete">Alle Novell Bugzilla URLs in Unterbaum updaten</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1754"/>
+        <source>Add timestamp</source>
+        <comment>Edit menu</comment>
+        <translation>Zeitstempel hinzufügen</translation>
+    </message>
+    <message>
+        <source>Add timestamp</source>
+        <translation type="obsolete">Zeitstempel hinzufügen</translation>
+    </message>
+    <message>
+        <source>Remove only branch and keep its children</source>
+        <translation type="obsolete">Zweig entfernen, Unterzweige behalten</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1743"/>
+        <source>Remove children</source>
+        <comment>Edit menu</comment>
+        <translation>Unterzweige entfernen</translation>
+    </message>
+    <message>
+        <source>Remove children of branch</source>
+        <translation type="obsolete">Unterzweige eines Zweiges entfernen</translation>
+    </message>
+    <message>
+        <source>Toggle property window to set properties for selection</source>
+        <translation type="obsolete">Eigenschaften editieren</translation>
+    </message>
+    <message>
+        <source>View shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Kurzbefehle Ansicht</translation>
+    </message>
+    <message>
+        <source>Format toolbar</source>
+        <comment>Format Toolbar name</comment>
+        <translation type="obsolete">Werkzeugleiste Format</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2972"/>
+        <source>Zoom toolbar</source>
+        <comment>View Toolbar name</comment>
+        <translation>Werkzeugleiste Vergrössern</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2042"/>
+        <source>Center on selection</source>
+        <comment>View action</comment>
+        <translation>Zeige Auswahl</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2982"/>
+        <source>Editors toolbar</source>
+        <comment>Editor Toolbar name</comment>
+        <translation>Werkzeugleiste Editoren</translation>
+    </message>
+    <message>
+        <source>Toggle Heading editor</source>
+        <translation type="obsolete">Beschriftungs Editor</translation>
+    </message>
+    <message>
+        <source>Toggle Tree editor</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Baum Editor</translation>
+    </message>
+    <message>
+        <source>Toggle tree editor</source>
+        <translation type="obsolete">Baum Editor</translation>
+    </message>
+    <message>
+        <source>Toggle History Window</source>
+        <translation type="obsolete">Verlaufsfenster</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2994"/>
+        <source>Modifier modes toolbar</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation>Werkzeugleiste Modifizierer</translation>
+    </message>
+    <message>
+        <source>Modes</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Modes</translation>
+    </message>
+    <message>
+        <source>&amp;Restore last session</source>
+        <comment>File menu</comment>
+        <translation type="vanished">&amp;Letzte Session wiederherstellen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1135"/>
+        <source>E&amp;dit</source>
+        <comment>Edit menu</comment>
+        <translation>E&amp;dit</translation>
+    </message>
+    <message>
+        <source>&amp;Select</source>
+        <comment>Select menu</comment>
+        <translation type="obsolete">&amp;Auswahl</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1820"/>
+        <source>Select previous</source>
+        <comment>Edit menu</comment>
+        <translation>vorherige Auswahl</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1830"/>
+        <source>Select next</source>
+        <comment>Edit menu</comment>
+        <translation>nächste Auswahl</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1840"/>
+        <source>Unselect all</source>
+        <comment>Edit menu</comment>
+        <translation>Nichts auswählen</translation>
+    </message>
+    <message>
+        <source>Format shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Format Kurzbefehle</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1918"/>
+        <source>Select default font</source>
+        <comment>Branch attribute</comment>
+        <translation>Default Zeichensatz auswählen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1996"/>
+        <source>Toolbars</source>
+        <comment>Toolbars overview in view menu</comment>
+        <translation>Werkzeugleisten</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2018"/>
+        <source>Rotate counterclockwise</source>
+        <comment>View action</comment>
+        <translation>Rotieren gegen Uhrzeigersinn</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2026"/>
+        <source>Rotate rclockwise</source>
+        <comment>View action</comment>
+        <translation>Rotieren im Uhrzeigersinn</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2076"/>
+        <source>Tree editor</source>
+        <comment>View action</comment>
+        <translation>Baum Editor</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2084"/>
+        <source>Task editor</source>
+        <comment>View action</comment>
+        <translation>Aufgaben Editor</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2094"/>
+        <source>Slide editor</source>
+        <comment>View action</comment>
+        <translation>Folien Editor</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2102"/>
+        <source>Script editor</source>
+        <comment>View action</comment>
+        <translation>Skript Editor</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2153"/>
+        <source>Next slide</source>
+        <comment>View action</comment>
+        <translation>Nächste Folie</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2160"/>
+        <source>Previous slide</source>
+        <comment>View action</comment>
+        <translation>Vorherige Folie</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2242"/>
+        <location filename="../mainwindow.cpp" line="2245"/>
+        <source>URL to Bugzilla </source>
+        <comment>SystemFlag</comment>
+        <translation>URL zu Bugzilla</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2248"/>
+        <source>Map target</source>
+        <comment>SystemFlag</comment>
+        <translation>Ziel</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2265"/>
+        <source>Standard Flags toolbar</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation>Werkzeugleiste Standardflags</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2279"/>
+        <source>Status - ok,done</source>
+        <comment>Standardflag</comment>
+        <translation>Status - ok, erledigt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2283"/>
+        <source>Status - work in progress</source>
+        <comment>Standardflag</comment>
+        <translation>Status - In Arbeit</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2287"/>
+        <source>Status - missing, not started</source>
+        <comment>Standardflag</comment>
+        <translation>Status - unvollständig, nicht begonnen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2315"/>
+        <source>Call...</source>
+        <comment>Standardflag</comment>
+        <translation>Anrufen...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2330"/>
+        <source>Very important!</source>
+        <comment>Standardflag</comment>
+        <translation>Sehr wichtig!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2334"/>
+        <source>Very unimportant!</source>
+        <comment>Standardflag</comment>
+        <translation>Sehr unwichtig!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2347"/>
+        <source>Rose</source>
+        <comment>Standardflag</comment>
+        <translation>Rose</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2353"/>
+        <source>Surprise!</source>
+        <comment>Standardflag</comment>
+        <translation>Überraschung!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2360"/>
+        <source>Info</source>
+        <comment>Standardflag</comment>
+        <translation>Info</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2518"/>
+        <source>Check for release notes and updates</source>
+        <comment>Settings action</comment>
+        <translation>Release notes und Updates prüfen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2539"/>
+        <source>Set application to zip/unzip files</source>
+        <comment>Settings action</comment>
+        <translation>Anwendung um Daten zu speichern (zip/unzip)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2685"/>
+        <source>Download and show release notes</source>
+        <comment>Help action</comment>
+        <translation>Release Notes herunterladen und anzeigen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2689"/>
+        <source>Check, if updates are available</source>
+        <comment>Help action</comment>
+        <translation>Prüfen, ob Updates verfügbar sind</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2796"/>
+        <source>XLinks</source>
+        <comment>Menu for file actions</comment>
+        <translation>XLinks</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5000"/>
+        <location filename="../mainwindow.cpp" line="5010"/>
+        <source>Set application to zip/unzip files</source>
+        <translation>Anwendung um Daten zu speichern (zip/unzip)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5077"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation>unbekannter Benutzer</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5098"/>
+        <source>Number of parents shown for a task:</source>
+        <translation>Anzahl der Elternzweige, die bei Aufgabe gezeigt werden:</translation>
+    </message>
+    <message>
+        <source>Toggle history window</source>
+        <translation type="obsolete">Zeige Verlaufsfenster</translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <translation type="obsolete">Firefox Lesezeichen</translation>
+    </message>
+    <message>
+        <source>F&amp;ormat</source>
+        <translation type="obsolete">F&amp;ormat</translation>
+    </message>
+    <message>
+        <source>Show Note Editor</source>
+        <translation type="obsolete">Zeige Notiz Editor</translation>
+    </message>
+    <message>
+        <source>Show history window</source>
+        <translation type="obsolete">Zeige Verlaufsfenster</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3533"/>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <source>Bookmarks</source>
+        <translation>Lesezeichen</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start %1 to open a new tab</source>
+        <translation type="obsolete">Konnte %1 nicht starten um einen neuen Tab zu öffnen.</translation>
+    </message>
+    <message>
+        <source>Image</source>
+        <translation type="obsolete">Bild</translation>
+    </message>
+    <message>
+        <source>Format Actions</source>
+        <comment>Toolbars</comment>
+        <translation type="obsolete">Format Actions</translation>
+    </message>
+    <message>
+        <source>View Actions</source>
+        <comment>Toolbars</comment>
+        <translation type="obsolete">Ansicht Aktionen</translation>
+    </message>
+    <message>
+        <source>Modes when using modifiers</source>
+        <comment>Toolbars</comment>
+        <translation type="obsolete">Modes beim Benutzen von Modifizierern</translation>
+    </message>
+    <message>
+        <source>Standard Flags</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation type="obsolete">Standard Flags Werkzeugleiste</translation>
+    </message>
+    <message>
+        <source>Follow XLink</source>
+        <translation type="obsolete">XLink folgen</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find configuration for export to Open Office
+</source>
+        <translation type="vanished">Konnte keine EInstellungen zum Export nach Open Office finden
+</translation>
+    </message>
+    <message>
+        <source>No matches found for &quot;%1&quot;</source>
+        <translation type="obsolete">Keine treffer für &quot;%1&quot; gefunden</translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <translation type="obsolete">&amp;Map</translation>
+    </message>
+    <message>
+        <source>&amp;Actions</source>
+        <translation type="obsolete">&amp;Aktionen</translation>
+    </message>
+    <message>
+        <source>Open all URLs in subtree</source>
+        <translation type="obsolete">Alle URLs in Unterbaum öffnen</translation>
+    </message>
+    <message>
+        <source>Open all vym links in subtree</source>
+        <translation type="obsolete">Alle Verbindungen zu vym maps  in Unterbaum öffnen</translation>
+    </message>
+    <message>
+        <source>URLs and vymLinks</source>
+        <translation type="obsolete">URLs und Verbindungen zu vym maps</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation type="obsolete">Konnte temporäres Verzeichnis vor dem Laden nicht erzeugen</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation type="obsolete">Konnte temporäres Verzeichnis vor dem Speichern nicht erzeugen</translation>
+    </message>
+    <message>
+        <source>Sorry, currently only Konqueror and Mozilla support tabbed browsing.</source>
+        <translation type="obsolete">Sorry, im Moment unterstützen nur Konqueror und Mozilla tabbed browsing.</translation>
+    </message>
+    <message>
+        <source>Test function</source>
+        <translation type="obsolete">Test Funktion</translation>
+    </message>
+    <message>
+        <source>Command</source>
+        <translation type="obsolete">Test Kommando</translation>
+    </message>
+    <message>
+        <source>Enter command to call in editor</source>
+        <translation type="obsolete">Kommando für den MapEditor</translation>
+    </message>
+    <message>
+        <source>Open linked map</source>
+        <translation type="obsolete">Verlinkte Map öffnen</translation>
+    </message>
+    <message>
+        <source>&amp;New...</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Neue Map anlegen</translation>
+    </message>
+    <message>
+        <source>New map</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">Neue map</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="985"/>
+        <source>&amp;Open...</source>
+        <comment>File menu</comment>
+        <translation>&amp;Öffnen...</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">Öffnen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1000"/>
+        <source>Open Recent</source>
+        <comment>File menu</comment>
+        <translation>Zuletzt geöffnete Dateien</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1003"/>
+        <source>&amp;Save...</source>
+        <comment>File menu</comment>
+        <translation>&amp;Speichern...</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">Speichern</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1011"/>
+        <source>Save &amp;As...</source>
+        <comment>File menu</comment>
+        <translation>Speichern &amp;unter...</translation>
+    </message>
+    <message>
+        <source>Save &amp;As</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">Speichern &amp;unter...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1017"/>
+        <source>Import</source>
+        <comment>File menu</comment>
+        <translation>Importieren</translation>
+    </message>
+    <message>
+        <source>Import %1</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">Importiere %1</translation>
+    </message>
+    <message>
+        <source>KDE bookmarks</source>
+        <translation type="obsolete">KDE Lesezeichen</translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Firefox Lesezeichen</translation>
+    </message>
+    <message>
+        <source>Import %1</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Importiere %1</translation>
+    </message>
+    <message>
+        <source>Import Dir%1</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Importiere Verzeichnis %1</translation>
+    </message>
+    <message>
+        <source>Import directory structure (experimental)</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Importiere Verzeichnisstruktur (experimentelle Funktion)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1038"/>
+        <source>Export</source>
+        <comment>File menu</comment>
+        <translation>Exportieren</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1063"/>
+        <source>Image%1</source>
+        <comment>File export menu</comment>
+        <translation>Bild %1</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Map als Bild exportieren</translation>
+    </message>
+    <message>
+        <source>Export in Open Document Format used e.g. in Open Office </source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Exportiere im Open Document Format, das z.B. in Open Office verwendet wird</translation>
+    </message>
+    <message>
+        <source>Export as %1</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Exportiere als %1</translation>
+    </message>
+    <message>
+        <source> webpage (XHTML)</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete"> Webseite (XHTML)</translation>
+    </message>
+    <message>
+        <source>Export as %1</source>
+        <translation type="obsolete">Exportiere als %1</translation>
+    </message>
+    <message>
+        <source>KDE Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">KDE Lesezeichen</translation>
+    </message>
+    <message>
+        <source>Print</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Drucken</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1118"/>
+        <source>&amp;Close Map</source>
+        <comment>File menu</comment>
+        <translation>Schlie&amp;ßen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1124"/>
+        <source>E&amp;xit</source>
+        <comment>File menu</comment>
+        <translation>B&amp;eenden</translation>
+    </message>
+    <message>
+        <source>&amp;Actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="obsolete">Werkzeugleiste &amp;Aktionen</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Bearbeiten</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1139"/>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Rückgängig</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1150"/>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation>Wieder&amp;herstellen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1161"/>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Kopieren</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1172"/>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Ausschneiden</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1185"/>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation>Ein&amp;fügen</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Bearbeite Zweig-Überschrift</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1197"/>
+        <source>Delete Selection</source>
+        <comment>Edit menu</comment>
+        <translation>Entfernen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1232"/>
+        <source>Add branch as child</source>
+        <comment>Edit menu</comment>
+        <translation>Neuer Zweig </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1242"/>
+        <source>Add branch (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>Neuen Zweig einfügen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1252"/>
+        <location filename="../mainwindow.cpp" line="1262"/>
+        <source>Add branch above</source>
+        <comment>Edit menu</comment>
+        <translation>Neuer Zweig - oben</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1272"/>
+        <location filename="../mainwindow.cpp" line="1281"/>
+        <source>Add branch below</source>
+        <comment>Edit menu</comment>
+        <translation>Neuer Zweig - unten</translation>
+    </message>
+    <message>
+        <source>Move up</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Zweig nach oben</translation>
+    </message>
+    <message>
+        <source>Move down</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Zweig nach unten</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1343"/>
+        <source>Scroll branch</source>
+        <comment>Edit menu</comment>
+        <translation>Zweig einrollen</translation>
+    </message>
+    <message>
+        <source>Unscroll all scrolled branches</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Alle eingerollten Zweige aufrollen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1849"/>
+        <location filename="../mainwindow.cpp" line="1857"/>
+        <source>Find...</source>
+        <comment>Edit menu</comment>
+        <translation>Suchen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1430"/>
+        <source>Open URL</source>
+        <comment>Edit menu</comment>
+        <translation>URL öffnen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="124"/>
+        <source>Main window</source>
+        <comment>Shortcut scope</comment>
+        <translation>Hauptfenster</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1438"/>
+        <source>Open URL in new tab</source>
+        <comment>Edit menu</comment>
+        <translation>URL in neuen Tab öffnen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1454"/>
+        <source>Open all URLs in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Alle URLs in Unterbaum öffnen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1470"/>
+        <source>Edit URL...</source>
+        <comment>Edit menu</comment>
+        <translation>URL editieren...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1488"/>
+        <source>Use heading for URL</source>
+        <comment>Edit menu</comment>
+        <translation>Beschriftung als URL übernehmen</translation>
+    </message>
+    <message>
+        <source>Create URL to Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">URL für Bugzilla anlegen</translation>
+    </message>
+    <message>
+        <source>Create URL to FATE</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">URL für FATE anlegen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1538"/>
+        <source>Open linked map</source>
+        <comment>Edit menu</comment>
+        <translation>Verlinkte Map öffnen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1552"/>
+        <source>Open all vym links in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Alle Verbindungen zu vym maps  in Unterbaum öffnen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1560"/>
+        <source>Edit vym link...</source>
+        <comment>Edit menu</comment>
+        <translation>vym Verknüpfung editieren</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1567"/>
+        <source>Delete vym link</source>
+        <comment>Edit menu</comment>
+        <translation>vym Verknüpfung löschen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1575"/>
+        <source>Hide in exports</source>
+        <comment>Edit menu</comment>
+        <translation>In Export nicht anzeigen</translation>
+    </message>
+    <message>
+        <source>Edit Map Info...</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Map Infos editieren</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1710"/>
+        <source>Add map (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>Map einfügen (An Selektion hinzufügen)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1717"/>
+        <source>Add map (replace)</source>
+        <comment>Edit menu</comment>
+        <translation>Map einfügen (Selektion austauschen)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1724"/>
+        <source>Save selection</source>
+        <comment>Edit menu</comment>
+        <translation>Auswahl speichern</translation>
+    </message>
+    <message>
+        <source>Remove only branch </source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Zweig entfernen, Unterzweige behalten</translation>
+    </message>
+    <message>
+        <source>Remove childs</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Unterzweige entfernen</translation>
+    </message>
+    <message>
+        <source>Select upper branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Zweig oben auswählen</translation>
+    </message>
+    <message>
+        <source>Select lower branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Zweig unten auswählen</translation>
+    </message>
+    <message>
+        <source>Select left branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Linken Zweig auswählen</translation>
+    </message>
+    <message>
+        <source>Select child branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Unterzweig auswählen</translation>
+    </message>
+    <message>
+        <source>Select first branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Obersten Zweig auwählen</translation>
+    </message>
+    <message>
+        <source>Select last branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Untersten Zweig auswählen</translation>
+    </message>
+    <message>
+        <source>Add Image...</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Bild hinzufügen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1876"/>
+        <source>F&amp;ormat</source>
+        <comment>Format menu</comment>
+        <translation>F&amp;ormat</translation>
+    </message>
+    <message>
+        <source>Format Actions</source>
+        <comment>Format Toolbar name</comment>
+        <translation type="obsolete">Format Actions</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1889"/>
+        <source>Pic&amp;k color</source>
+        <comment>Edit menu</comment>
+        <translation>Farbe &amp;übernehmen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1898"/>
+        <source>Color &amp;branch</source>
+        <comment>Edit menu</comment>
+        <translation>Zweig &amp;färben</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1907"/>
+        <source>Color sub&amp;tree</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Unterbaum färben</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <comment>Branch attribute</comment>
+        <translation type="obsolete">Kein Rahmen</translation>
+    </message>
+    <message>
+        <source>RectangleBranch attribute</source>
+        <translation type="obsolete">RectangleBranch attribute</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <comment>Branch attribute</comment>
+        <translation type="obsolete">Obere und untere Bildkanten berücksichtigen</translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <comment>Branch attribute</comment>
+        <translation type="obsolete">Linke und rechte Bildkanten berücksichtigen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1958"/>
+        <source>Hide link if object is not selected</source>
+        <comment>Branch attribute</comment>
+        <translation>Verbindung verbergen, falls Objekt nicht selektiert ist</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1964"/>
+        <source>&amp;Use color of heading for link</source>
+        <comment>Branch attribute</comment>
+        <translation>&amp;Verbindungen haben Farbe der Beschriftungen</translation>
+    </message>
+    <message>
+        <source>View Actions</source>
+        <comment>View Toolbar name</comment>
+        <translation type="obsolete">Ansicht Aktionen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2034"/>
+        <source>reset Zoom</source>
+        <comment>View action</comment>
+        <translation>Keine Vergrösserung</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2002"/>
+        <source>Zoom in</source>
+        <comment>View action</comment>
+        <translation>Vergrössern</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="252"/>
+        <source>Script Editor</source>
+        <translation>Skript Editor</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="314"/>
+        <source>Task list</source>
+        <comment>TaskEditor</comment>
+        <translation>Aufgabenliste</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="273"/>
+        <source>Script Editor</source>
+        <comment>ScriptEditor</comment>
+        <translation>Skript Editor</translation>
+    </message>
+    <message>
+        <source>KDE 3 Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation type="obsolete">KDE 3 Lesezeichen</translation>
+    </message>
+    <message>
+        <source>KDE 4 Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation type="vanished">KDE 4 Lesezeichen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1021"/>
+        <source>Firefox Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation>Firefox Lesezeichen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <source>Import Dir%1</source>
+        <comment>Import Filters</comment>
+        <translation>Importiere Verzeichnis %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1059"/>
+        <source>Text (A&amp;O report)...</source>
+        <comment>Export format</comment>
+        <translation>Text (A&amp;O Format)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <source>Spreadsheet</source>
+        <translation>Tabellendokument</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1101"/>
+        <source>Properties</source>
+        <translation>Eigenschaften</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1290"/>
+        <source>Move branch up</source>
+        <comment>Edit menu</comment>
+        <translation>Zweig nach oben bewegen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1303"/>
+        <source>Move branch down</source>
+        <comment>Edit menu</comment>
+        <translation>Zweig nach unten bewegen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1429"/>
+        <source>References Context menu</source>
+        <comment>Shortcuts</comment>
+        <translation>Tastenkürzel</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1498"/>
+        <source>Bugzilla handling</source>
+        <comment>Shortcuts</comment>
+        <translation>Tastenkürzel</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1499"/>
+        <source>Create URL to SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation>URL für SUSE Bugzilla erzeugen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1510"/>
+        <source>Get data from SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation>Daten von SUSE Bugzilla holen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1519"/>
+        <source>Get data from SUSE Bugzilla for subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Daten von SUSE Bugzilla für Unterbaum holen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1528"/>
+        <source>SUSE Fate tool handling</source>
+        <comment>Shortcuts</comment>
+        <translation>SUSE Fate Werkzeug</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1529"/>
+        <source>Create URL to SUSE FATE tool</source>
+        <comment>Edit menu</comment>
+        <translation>URL zum SUSE Fate Werkzeug erzeugen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1537"/>
+        <source>vymlinks - linking maps</source>
+        <comment>Shortcuts</comment>
+        <translation>vym-Verbindungen zwischen Maps</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1545"/>
+        <source>Open linked map in background tab</source>
+        <comment>Edit menu</comment>
+        <translation>Verbundene Map im Hintergrund öffnen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1574"/>
+        <source>Exports</source>
+        <comment>Shortcuts</comment>
+        <translation>Exports</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1586"/>
+        <source>Tasks</source>
+        <comment>Shortcuts</comment>
+        <translation>Aufgaben</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1587"/>
+        <source>Toggle task</source>
+        <comment>Edit menu</comment>
+        <translation>Aufgabe einschalten/ausschalten</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1598"/>
+        <source>Cycle task status</source>
+        <comment>Edit menu</comment>
+        <translation>Aufgabenstatus weiterschalten</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1609"/>
+        <source>Reset sleep</source>
+        <comment>Task sleep</comment>
+        <translation>Aufgabe aufwecken</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1620"/>
+        <location filename="../mainwindow.cpp" line="1643"/>
+        <location filename="../mainwindow.cpp" line="1654"/>
+        <location filename="../mainwindow.cpp" line="1665"/>
+        <location filename="../mainwindow.cpp" line="1676"/>
+        <source>Sleep %1 days</source>
+        <comment>Task sleep</comment>
+        <translation>Wiedervorlage in %1 Tagen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1632"/>
+        <source>Sleep %1 day</source>
+        <comment>Task sleep</comment>
+        <translation>Wiedervorlage in %1 Tagen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1687"/>
+        <location filename="../mainwindow.cpp" line="1698"/>
+        <source>Sleep %1 weeks</source>
+        <comment>Task sleep</comment>
+        <translation>Wiedervorlage in %1 Wochen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1730"/>
+        <source>Removing parts of a map</source>
+        <comment>Shortcuts</comment>
+        <translation>Teile einer Map entfernen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1733"/>
+        <source>Remove only branch and keep its children </source>
+        <comment>Edit menu</comment>
+        <translation>Zweig entfernen, Unterzweige behalten</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1753"/>
+        <source>Various</source>
+        <comment>Shortcuts</comment>
+        <translation>Verschiedene</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1765"/>
+        <source>Map properties...</source>
+        <comment>Edit menu</comment>
+        <translation>Map Eigenschaften...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1771"/>
+        <source>Add   ...</source>
+        <comment>Edit menu</comment>
+        <translation>Hinzufügen...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1792"/>
+        <source>Selections</source>
+        <comment>Shortcuts</comment>
+        <translation>Auswahl</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1793"/>
+        <source>Select</source>
+        <comment>Select menu</comment>
+        <translation>Auswählen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1848"/>
+        <source>Search functions</source>
+        <comment>Shortcuts</comment>
+        <translation>Suchfunktionen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1878"/>
+        <source>Formatting</source>
+        <comment>Shortcuts</comment>
+        <translation>Formattierung</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1997"/>
+        <source>Views</source>
+        <comment>Shortcuts</comment>
+        <translation>Ansichten</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2010"/>
+        <source>Zoom out</source>
+        <comment>View action</comment>
+        <translation>Verkleinern</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2053"/>
+        <source>Note editor</source>
+        <comment>View action</comment>
+        <translation>Notiz Editor</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2064"/>
+        <source>Heading editor</source>
+        <comment>View action</comment>
+        <translation>Beschriftungs Editor</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2525"/>
+        <source>Set author for new maps</source>
+        <comment>Settings action</comment>
+        <translation>Author für neue Maps angeben</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2613"/>
+        <source>Number of visible parents in task editor</source>
+        <comment>Settings action</comment>
+        <translation>Anzahl sichtbarer Elternzweige im Aufgaben Editor</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2618"/>
+        <source>Number of visible parents in find results window</source>
+        <comment>Settings action</comment>
+        <translation>Anzahl sichtbarer Elternzweige im Ergebnisfenster der Suche</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2698"/>
+        <source>Debug info</source>
+        <comment>Option to show debugging info</comment>
+        <translation>Infos zur Fehlersuche</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <source>Couldn&apos;t save %1,
+because of existing lockfile:
+
+%2</source>
+        <translation>Konnte %1 nicht speichern,
+da die Lockdatei nicht angelegt werden konnte:
+%2</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save, because of existing lockfile:
+
+%2</source>
+        <translation type="obsolete">Konnte </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3746"/>
+        <source>Couldn&apos;t find configuration for export to LibreOffice
+</source>
+        <translation>Konnte Konfiguration zum Exportieren nach LibreOffice nicht finden
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4304"/>
+        <source>branches</source>
+        <comment>Info about map</comment>
+        <translation>Zweige</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4305"/>
+        <source>notes</source>
+        <comment>Info about map</comment>
+        <translation>Notizen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4306"/>
+        <source>images</source>
+        <comment>Info about map</comment>
+        <translation>Bilder</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4307"/>
+        <source>tasks</source>
+        <comment>Info about map</comment>
+        <translation>Aufgaben</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4308"/>
+        <source>slides</source>
+        <comment>Info about map</comment>
+        <translation>Folien</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4309"/>
+        <source>xLinks</source>
+        <comment>Info about map</comment>
+        <translation>Querverbindungen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5076"/>
+        <source>Set author for new maps (used in lockfile)</source>
+        <translation>Author für neue Maps angeben (zur Verwendung in Lockdatei)</translation>
+    </message>
+    <message>
+        <source>unknown</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="vanished">unbekannt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5088"/>
+        <source>Number of parents shown in find results:</source>
+        <translation>Anzahl sichtbarer Elternzweige im Ergebnisfenster der Suche</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3092"/>
+        <source>(readonly)</source>
+        <translation>(nur lesen)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <source>Please allow vym to download release notes!</source>
+        <translation>Bitte vym den Zugriff auf auf Release-Dokumente ermöglichen!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5968"/>
+        <source>&lt;html&gt;&lt;h3&gt;Do you allow vym to check online for updates or release notes?&lt;/h3&gt;If you allow, vym will &lt;ul&gt;&lt;li&gt;check once for release notes&lt;/li&gt;&lt;li&gt;check regulary for updates and notify you in case you should update, e.g. if there are important bug fixes available&lt;/li&gt;&lt;li&gt;receive a cookie with a random ID and send vym version and platform name and the ID  (e.g. &quot;Windows&quot; or &quot;Linux&quot;) back to me, Uwe Drechsel.&lt;p&gt;As vym developer I am motivated to see many people using vym. Of course I am curious to see, on which system vym is used. Maintaining each of the systems requires a lot of my (spare) time.&lt;/p&gt; &lt;p&gt;No other data than above will be sent, especially no private data will be collected or sent.(Check the source code, if you don&apos;t believe.)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;If you do not allow, &lt;ul&gt;&lt;li&gt;nothing will be downloaded and especially I will &lt;b&gt;not be motivated&lt;/b&gt; to spend some more thousands of hours on developing a free software tool.&lt;/ul&gt;Please allow vym to check for updates :-)</source>
+        <translation>&lt;html&gt;&lt;h3&gt;Wollen Sie vym erlauben, online nach Updates und Release-Meldungen zu suchen?&lt;/h3&gt;
+Falls Sie es erlauben, wird vym &lt;ul&gt;&lt;li&gt;einmalig nach Release-Meldungen sehen&lt;/li&gt;
+&lt;li&gt;regelmäßig nach Updates suchen und ggf. benachrichtigen, falls Updates verfügbar sind, z.B. wenn wichtige Bugfixes zur Verfügung stehen&lt;/li&gt;
+&lt;li&gt;ein Cookie mit einer zufälligen ID erhalten und die vym Version und Namen der Plattform( z.B. Windows- oder Linux Version) an mich (Uwe Drechsel) senden.
+&lt;p&gt;Als vym Entwickler motiviert es mich zu sehen, dass viele Menschen vym benutzen. Natürlich bin ich neugierig, auf welchen Systemen vym verwendet wird, da mir die Unterstützung verschiedener Plattformen viel Arbeit (in meiner Freizeit) macht.&lt;/p&gt; 
+&lt;p&gt;Es werden keine weiteren Daten als die o.g. werden gesendet, insb. werden keine privaten Daten gesammelt oder gesendet.
+(Bitte zur Überprüfung gerne den Quellcode ansehen, falls Sie das nicht glauben.)&lt;/p&gt;
+&lt;/li&gt;
+&lt;/ul&gt;
+Falls Sie das nicht erlauben, dann
+&lt;ul&gt;&lt;li&gt;wird vym nichts herunterladen und insb. werde ich &lt;b&gt;nicht motiviert&lt;/b&gt; weiterhin Tausende von Stunden mit der Entwicklung freier Software zu verbringen.&lt;/ul&gt;
+Bitte erlauben Sie vym nach Updates zu sehen :-)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5997"/>
+        <source>Allow</source>
+        <translation>Erlauben</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5998"/>
+        <source>Do not allow</source>
+        <translation>Nicht erlauben</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6004"/>
+        <source>Thank you for enabling downloads!</source>
+        <translation>Danke für das Erlauben der Downloads!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6027"/>
+        <source>Update information</source>
+        <translation>Update Information</translation>
+    </message>
+    <message>
+        <source>Info</source>
+        <translation type="obsolete">Info</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6033"/>
+        <source>vym is up to date.</source>
+        <comment>MainWindow</comment>
+        <translation>vym ist auf dem neuesten Stand.</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6084"/>
+        <source>Checking for updates...</source>
+        <comment>MainWindow</comment>
+        <translation>Prüfen auf Updates...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Please allow vym to check for updates!</source>
+        <translation>Bitte vym erlauben nach Updates zu sehen!</translation>
+    </message>
+    <message>
+        <source>Show Note Editor</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Zeige Notiz Editor</translation>
+    </message>
+    <message>
+        <source>Show history window</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Zeige Verlaufsfenster</translation>
+    </message>
+    <message>
+        <source>Next Window</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Nächstes Fenster</translation>
+    </message>
+    <message>
+        <source>Previous Window</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Vorheriges Fenster</translation>
+    </message>
+    <message>
+        <source>Modes when using modifiers</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation type="obsolete">Modes beim Benutzen von Modifizierern</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2178"/>
+        <source>Use modifier to color branches</source>
+        <comment>Mode modifier</comment>
+        <translation>Modifzierer zum Färben verwenden</translation>
+    </message>
+    <message>
+        <source>Use modifier to copy</source>
+        <comment>Mode modifier</comment>
+        <translation type="obsolete">Modifizierer zum Kopieren verwenden</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2194"/>
+        <source>Use modifier to draw xLinks</source>
+        <comment>Mode modifier</comment>
+        <translation>Modifizierer zum Anlegen von xLinks verwenden</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2385"/>
+        <source>forward</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Vorwärts</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2397"/>
+        <source>Don&apos;t flagrget</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Don&apos;t flagrget</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2531"/>
+        <source>Set application to open pdf files</source>
+        <comment>Settings action</comment>
+        <translation>pdf-Dateien öffnen mit...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2535"/>
+        <source>Set application to open external links</source>
+        <comment>Settings action</comment>
+        <translation>Anwendung zum Öffnen externen Verweise</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2581"/>
+        <source>Edit branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>Zweig nach dem Einfügen neu beschriften</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2587"/>
+        <source>Select branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>Zweig nach dem Einfügen auswählen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2593"/>
+        <source>Select existing heading</source>
+        <comment>Settings action</comment>
+        <translation>Beschriftung vor dem editieren auswählen</translation>
+    </message>
+    <message>
+        <source>Delete key</source>
+        <comment>Settings action</comment>
+        <translation type="obsolete">Entfernen Taste</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2599"/>
+        <source>Exclusive flags</source>
+        <comment>Settings action</comment>
+        <translation>Exklusive Flags</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2605"/>
+        <source>Use hide flags</source>
+        <comment>Settings action</comment>
+        <translation>Während des Exports das &quot;Verbergen&quot; Flag verwenden </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2673"/>
+        <source>&amp;Help</source>
+        <comment>Help menubar entry</comment>
+        <translation>&amp;Hilfe</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2676"/>
+        <source>Open VYM Documentation (pdf) </source>
+        <comment>Help action</comment>
+        <translation>VYM Handbuch (pdf)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2702"/>
+        <source>About VYM</source>
+        <comment>Help action</comment>
+        <translation>Über VYM</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2706"/>
+        <source>About QT</source>
+        <comment>Help action</comment>
+        <translation>Über QT</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2735"/>
+        <source>Remove</source>
+        <comment>Context menu name</comment>
+        <translation>Entfernen</translation>
+    </message>
+    <message>
+        <source>URLs and vymLinks</source>
+        <comment>Context menu name</comment>
+        <translation type="obsolete">URLs und Verbindungen zu vym maps</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2798"/>
+        <source>Edit XLink</source>
+        <comment>Context menu name</comment>
+        <translation>xLink ändern</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2809"/>
+        <source>Follow XLink</source>
+        <comment>Context menu name</comment>
+        <translation>XLink folgen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2818"/>
+        <source>Save image</source>
+        <comment>Context action</comment>
+        <translation>Speichere Bild</translation>
+    </message>
+    <message>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <comment>write directory</comment>
+        <translation type="obsolete">Das Verzeichnis %1 ist nicht leer.
+Riskieren Sie es dessen Inhalt zu überschreiben?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="971"/>
+        <source>&amp;New map</source>
+        <comment>File menu</comment>
+        <translation>Neue map</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="978"/>
+        <source>&amp;Copy to new map</source>
+        <comment>File menu</comment>
+        <translation>Kopieren in neue Map</translation>
+    </message>
+    <message>
+        <source>Copy selection to mapcenter of a new map</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">Auswahl in Mapcenter einer neuen Map kopieren</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1067"/>
+        <source>PDF%1</source>
+        <comment>File export menu</comment>
+        <translation>PDF%1</translation>
+    </message>
+    <message>
+        <source>Export map as PDF</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Als PDF exportieren</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1071"/>
+        <source>SVG%1</source>
+        <comment>File export menu</comment>
+        <translation>SVG%1</translation>
+    </message>
+    <message>
+        <source>Export map as SVG</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Als SVG exportieren</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1040"/>
+        <source>Repeat last export (%1)</source>
+        <translation>Letzten Export wiederholen (%1)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1221"/>
+        <source>Add mapcenter</source>
+        <comment>Canvas context menu</comment>
+        <translation>Mapcenter hinzufügen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1325"/>
+        <source>Sort children</source>
+        <comment>Edit menu</comment>
+        <translation>Unterzweige aufsteigend sortieren</translation>
+    </message>
+    <message>
+        <source>Unscroll all scrolled branches in selected subtree</source>
+        <translation type="obsolete">Alle eingerollten Zweige im Unterbaum entrollen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1479"/>
+        <source>Edit local URL...</source>
+        <comment>Edit menu</comment>
+        <translation>Lokale URL editieren</translation>
+    </message>
+    <message>
+        <source>Edit local URL</source>
+        <translation type="obsolete">Lokale URL editieren</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">URL für Bugzilla anlegen</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell Bugzilla</source>
+        <translation type="obsolete">URL für Bugzilla anlegen</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell FATE</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">URL für FATE anlegen</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell FATE</source>
+        <translation type="obsolete">URL für Bugzilla anlegen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1779"/>
+        <source>Property window</source>
+        <comment>Dialog to edit properties of selection</comment>
+        <translation>Eigenschaften</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1935"/>
+        <source>Linkstyle Curve</source>
+        <translation>Verbindungsstil Parabel</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1949"/>
+        <source>Linkstyle Thick Curve</source>
+        <translation>Verbindungsstil Parabel</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1976"/>
+        <source>Set &amp;Selection Color</source>
+        <translation>Farbe der Auswahlmarkierung</translation>
+    </message>
+    <message>
+        <source>Set Selection Color</source>
+        <translation type="obsolete">Farbe der Auswahlmarkierung</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1986"/>
+        <source>Set &amp;Background image</source>
+        <translation>Hintergrundbild laden</translation>
+    </message>
+    <message>
+        <source>Set Background image</source>
+        <translation type="obsolete">Hintergrundbild laden</translation>
+    </message>
+    <message>
+        <source>Show selection</source>
+        <translation type="obsolete">Auswahl zeigen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2110"/>
+        <source>History Window</source>
+        <comment>View action</comment>
+        <translation>Verlaufsfenster</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2124"/>
+        <source>Antialiasing</source>
+        <comment>View action</comment>
+        <translation>Antialiasing</translation>
+    </message>
+    <message>
+        <source>Antialiasing</source>
+        <translation type="obsolete">Antialiasing</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2131"/>
+        <source>Smooth pixmap transformations</source>
+        <comment>View action</comment>
+        <translation>Weiche Bild Transformationen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2139"/>
+        <source>Next Map</source>
+        <comment>View action</comment>
+        <translation>Nächste Map</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2146"/>
+        <source>Previous Map</source>
+        <comment>View action</comment>
+        <translation>Vorherige Map</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2174"/>
+        <source>Modifier modes</source>
+        <comment>Shortcuts</comment>
+        <translation>Tasten Modifizierer</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2213"/>
+        <location filename="../mainwindow.cpp" line="2216"/>
+        <location filename="../mainwindow.cpp" line="2219"/>
+        <location filename="../mainwindow.cpp" line="2223"/>
+        <location filename="../mainwindow.cpp" line="2226"/>
+        <location filename="../mainwindow.cpp" line="2229"/>
+        <location filename="../mainwindow.cpp" line="2233"/>
+        <location filename="../mainwindow.cpp" line="2236"/>
+        <source>Note</source>
+        <comment>SystemFlag</comment>
+        <translation>Notiz</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2239"/>
+        <source>URL to Document </source>
+        <comment>SystemFlag</comment>
+        <translation>URL zu Dokument</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2251"/>
+        <source>Link to another vym map</source>
+        <comment>SystemFlag</comment>
+        <translation>Verweis zu einer anderen Map</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2254"/>
+        <source>subtree is scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation>Teilbaum ist eingerollt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2257"/>
+        <source>subtree is temporary scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation>Teilbaum ist momentan ausgerollt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2260"/>
+        <source>Hide object in exported maps</source>
+        <comment>SystemFlag</comment>
+        <translation>Objekt beim Exportieren nicht anzeigen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2350"/>
+        <source>I just love...</source>
+        <comment>Standardflag</comment>
+        <translation></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2369"/>
+        <source>Important</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Wichtig</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2376"/>
+        <source>Priority</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Priorität</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2381"/>
+        <source>Back</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Zurück</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2389"/>
+        <source>Look here</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Schau hier</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2393"/>
+        <source>Dangerous</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Gefährlich</translation>
+    </message>
+    <message>
+        <source>Don&apos;t forget</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="obsolete">Nicht vergessen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2401"/>
+        <source>Flag</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Flag</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2406"/>
+        <source>Home</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Startseite</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2410"/>
+        <source>Telephone</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Telefon</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2414"/>
+        <source>Music</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Musik</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2418"/>
+        <source>Mailbox</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Briefkasten</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2422"/>
+        <source>Maix</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Maix</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2426"/>
+        <source>Password</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Passwort</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2430"/>
+        <source>To be improved</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Zu verbessern</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2434"/>
+        <source>Stop</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Stop</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2438"/>
+        <source>Magic</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Magie</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2442"/>
+        <source>To be discussed</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Zu überlegen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2446"/>
+        <source>Reminder</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Erinnerung</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2450"/>
+        <source>Excellent</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Ausgezeichnet</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2454"/>
+        <source>Linux</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Linux</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2458"/>
+        <source>Sweet</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Süß</translation>
+    </message>
+    <message>
+        <source>Network shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Kurzbefehle Netzwerk</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2514"/>
+        <source>Settings</source>
+        <translation>Einstellungen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2543"/>
+        <source>Set path for macros</source>
+        <comment>Settings action</comment>
+        <translation>Pfad für Makros</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2547"/>
+        <source>Set number of undo levels</source>
+        <comment>Settings action</comment>
+        <translation>Anzahl der Rückgängig Aktionen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2553"/>
+        <source>Autosave</source>
+        <comment>Settings action</comment>
+        <translation>Automatisch speichern</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2559"/>
+        <source>Autosave time</source>
+        <comment>Settings action</comment>
+        <translation>Zeit für automatisches speichern</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2572"/>
+        <source>Write backup file on save</source>
+        <comment>Settings action</comment>
+        <translation>Beim Verlassen Sicherungskopie anlegen</translation>
+    </message>
+    <message>
+        <source>Note editor is dockable</source>
+        <comment>Settings action</comment>
+        <translation type="obsolete">Noitz Editor ist DockWidget</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2623"/>
+        <source>Animation</source>
+        <comment>Settings action</comment>
+        <translation>Animation</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2630"/>
+        <source>Automatic layout</source>
+        <comment>Settings action</comment>
+        <translation>Autolayout</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2641"/>
+        <source>Test</source>
+        <translation>Test</translation>
+    </message>
+    <message>
+        <source>Test shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Kurzbefehle Test</translation>
+    </message>
+    <message>
+        <source>Help shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Kurzbefehle Hilfe</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2680"/>
+        <source>Open VYM example maps </source>
+        <comment>Help action</comment>
+        <translation>VYM Beispielmaps</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2694"/>
+        <source>Show keyboard shortcuts</source>
+        <comment>Help action</comment>
+        <translation>Zeige Tastaturkürzel</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2755"/>
+        <source>Tasks</source>
+        <comment>Context menu</comment>
+        <translation>Aufgaben</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2772"/>
+        <source>References (URLs, vymLinks, ...)</source>
+        <comment>Context menu name</comment>
+        <translation>Verweise (URLS, vym, ...)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2803"/>
+        <source>Follow XLink</source>
+        <comment>Context menu</comment>
+        <translation>XLink folgen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2922"/>
+        <source>Undo and clipboard toolbar</source>
+        <comment>Toolbar for redo/undo and clipboard</comment>
+        <translation>Rückgängig Werkzeugleiste</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2948"/>
+        <source>Selection toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation>Auswahl Werkzeugleiste</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2956"/>
+        <source>URLs and vymLinks toolbar</source>
+        <comment>Toolbar for URLs and vymlinks</comment>
+        <translation>URLs und vymLinks Werkzeugleiste</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2964"/>
+        <source>Colors toolbar</source>
+        <comment>Colors toolbar name</comment>
+        <translation>Farben Werkzeugleiste</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3126"/>
+        <source>unnamed</source>
+        <comment>MainWindow: name for new and empty file</comment>
+        <translation>unbenannt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3264"/>
+        <source>Loading: %1</source>
+        <comment>Progress dialog while loading maps</comment>
+        <translation>Lade: %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3314"/>
+        <source>or</source>
+        <comment>File Dialog</comment>
+        <translation>oder</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3444"/>
+        <source>Save map as</source>
+        <translation>Speichern &amp;unter...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3563"/>
+        <source>Load Freemind map</source>
+        <translation>Lade Freemind map</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <source>Export as CSV</source>
+        <translation>Exportiere als CSV</translation>
+    </message>
+    <message>
+        <source>Export as org-mode</source>
+        <translation type="obsolete">Exportiere als org-mode</translation>
+    </message>
+    <message>
+        <source>Sorry, currently only Konqueror supports integrated tabbed browsing.</source>
+        <comment>Mainwindow, open URL</comment>
+        <translation type="obsolete">Sorry, im Moment unterstützen nur Konqueror und Mozilla tabbed browsing.</translation>
+    </message>
+    <message>
+        <source>Currently vym is using %1 to open external links.
+(Change in Settings menu)</source>
+        <comment>Mainwindow, open URL</comment>
+        <translation type="obsolete">Moment verwendet vym %1 um externe Verweise zu öffnen.
+(Ändern im Einstellungs Menu)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3994"/>
+        <source>Enter URL:</source>
+        <translation>Neue URL:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4017"/>
+        <source>HTML</source>
+        <comment>Filedialog</comment>
+        <translation>HTML</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4018"/>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation>Text</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4019"/>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation>Tabellendokument</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4020"/>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation>Textdokument</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4021"/>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation>Bilder</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4025"/>
+        <source>Set URL to a local file</source>
+        <translation>URL zu einer lokalen Datei setzen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4183"/>
+        <location filename="../mainwindow.cpp" line="4185"/>
+        <source>Link to another map</source>
+        <translation>Verbindung zu einer anderen Map</translation>
+    </message>
+    <message>
+        <source>Task</source>
+        <comment>Task dialog</comment>
+        <translation type="obsolete">Aufgabe</translation>
+    </message>
+    <message>
+        <source>Task sleep (days):</source>
+        <comment>Task dialog</comment>
+        <translation type="obsolete">Wiedervorlage (Tage)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4286"/>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation>%1 Objekte in der Map
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5028"/>
+        <source>Directory with vym macros:</source>
+        <translation>Verzeichnis mit vym Makros</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5041"/>
+        <source>Number of undo/redo levels:</source>
+        <translation>Anzahl der Rückgängig Aktionen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5046"/>
+        <source>Settings have been changed. The next map opened will have &quot;%1&quot; undo/redo levels</source>
+        <translation>Die Einstellungen wurden geändert. Die nächste geöffnete Map
+wird %1 Rückgängig Schritte haben.</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5066"/>
+        <source>Number of seconds before autosave:</source>
+        <translation>Anzahl der Sekunden vor automatischem Speichern</translation>
+    </message>
+    <message>
+        <source>Information</source>
+        <translation type="obsolete">Information</translation>
+    </message>
+    <message>
+        <source>Changed settings will be applied after restarting vym</source>
+        <translation type="obsolete">Änderungen werden nach einem Neustart von vym übernommen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5433"/>
+        <source>History for %1</source>
+        <comment>Window Caption</comment>
+        <translation>Verlauf von %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5456"/>
+        <source>Export in last used format (%1) to: %2</source>
+        <comment>status tip</comment>
+        <translation>Exporte im zuletzt genutzten Format (%1) nach: %2</translation>
+    </message>
+    <message>
+        <source>Export in last used format (%1)</source>
+        <comment>status tip</comment>
+        <translation type="obsolete">Exporte im zuletzt benutztem Format</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5788"/>
+        <source>Couldn&apos;t find the documentation %1 in:
+%2</source>
+        <translation>Konnte die Dokumentation %1 nicht finden in
+%2</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5816"/>
+        <source>Load vym example map</source>
+        <translation>Lade vym Beispiel Map</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation type="obsolete">Konnte Makro nicht finden in
+%1</translation>
+    </message>
+    <message>
+        <source>Set directory for vym macros</source>
+        <translation type="obsolete">Verzeichnis für vym Makros</translation>
+    </message>
+</context>
+<context>
+    <name>MapEditor</name>
+    <message>
+        <source>Note</source>
+        <translation type="obsolete">Notiz</translation>
+    </message>
+    <message>
+        <source>WWW Document (external)</source>
+        <translation type="obsolete">WWW Dokument (extern)</translation>
+    </message>
+    <message>
+        <source>Link to another vym map</source>
+        <translation type="obsolete">Verbindung zu einer anderen Map</translation>
+    </message>
+    <message>
+        <source>subtree is scrolled</source>
+        <translation type="obsolete">Teilbaum ist eingerollt</translation>
+    </message>
+    <message>
+        <source>subtree is temporary scrolled</source>
+        <translation type="obsolete">Teilbaum ist momentan ausgerollt</translation>
+    </message>
+    <message>
+        <source>Take care!</source>
+        <translation type="obsolete">Vorsicht!</translation>
+    </message>
+    <message>
+        <source>Really?</source>
+        <translation type="obsolete">Wirklich?</translation>
+    </message>
+    <message>
+        <source>ok!</source>
+        <translation type="obsolete">ok!</translation>
+    </message>
+    <message>
+        <source>Not ok!</source>
+        <translation type="obsolete">Nicht ok!</translation>
+    </message>
+    <message>
+        <source>This won&apos;t work!</source>
+        <translation type="obsolete">Das geht nicht!</translation>
+    </message>
+    <message>
+        <source>Good</source>
+        <translation type="obsolete">Gut</translation>
+    </message>
+    <message>
+        <source>Bad</source>
+        <translation type="obsolete">Schlecht</translation>
+    </message>
+    <message>
+        <source>Time critical</source>
+        <translation type="obsolete">Zeitkritisch</translation>
+    </message>
+    <message>
+        <source>Idea!</source>
+        <translation type="obsolete">Idee!</translation>
+    </message>
+    <message>
+        <source>Important</source>
+        <translation type="obsolete">Wichtig</translation>
+    </message>
+    <message>
+        <source>Unimportant</source>
+        <translation type="obsolete">Unwichtig</translation>
+    </message>
+    <message>
+        <source>I like this</source>
+        <translation type="obsolete">Finde ich gut</translation>
+    </message>
+    <message>
+        <source>I do not like this</source>
+        <translation type="obsolete">Finde ich schlecht</translation>
+    </message>
+    <message>
+        <source>I just love... </source>
+        <translation type="obsolete">Das liebe ich!</translation>
+    </message>
+    <message>
+        <source>Critical error while loading map</source>
+        <translation type="obsolete">Kritischer Fehler beim Laden der Map</translation>
+    </message>
+    <message>
+        <source>Critical Parse Error</source>
+        <translation type="obsolete">Kritischer Fehler beim Verarbeiten</translation>
+    </message>
+    <message>
+        <source>Warning: Old file format</source>
+        <translation type="obsolete">Warnung: Altes Dateiformat</translation>
+    </message>
+    <message>
+        <source>&lt;h3&gt;Old file format detected&lt;/h3&gt;&lt;p&gt;The map you are just loading still uses an old uncompressed file format. Saving it later will overwrite the old format by converting it to version </source>
+        <translation type="obsolete">&lt;h3&gt;Altes Dateiformat gefunden&lt;/h3&gt;Die gerade geladene Map verwendet ein unkomprimmiertes Format. Wird sie später gespeichert, so wird sie umgewandelt in das Format von Version</translation>
+    </message>
+    <message>
+        <source>Critical Load Error</source>
+        <translation type="obsolete">Kritischer Fehler beim Laden</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open map after uncompressing, I tried:
+</source>
+        <translation type="obsolete">Konnte Map nach dem Entpacken nicht öffnen:
+</translation>
+    </message>
+    <message>
+        <source>Critical Save Error</source>
+        <translation type="obsolete">Kritischer Fehler beim Speichern</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t write to </source>
+        <translation type="obsolete">Konnte nicht speichern:</translation>
+    </message>
+    <message>
+        <source>Critcal save error</source>
+        <translation type="obsolete">Kritischer Fehler beim Speichern</translation>
+    </message>
+    <message>
+        <source> doesn&apos;t exist</source>
+        <translation type="obsolete">gibt es nicht</translation>
+    </message>
+    <message>
+        <source>VYM - Export (ASCII)</source>
+        <translation type="obsolete">VYM - Export (ASCII)</translation>
+    </message>
+    <message>
+        <source>The file </source>
+        <translation type="obsolete">Die Datei</translation>
+    </message>
+    <message>
+        <source> exists already. Do you want to overwrite it?</source>
+        <translation type="obsolete">gibt es bereits. Wollen Sie sie</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="obsolete">Überschreiben</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Abbrechen</translation>
+    </message>
+    <message>
+        <source>Critical Export Error </source>
+        <translation type="obsolete">Kritischer Fehler beim Exportieren</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create directory </source>
+        <translation type="obsolete">Konnte Verzeichnis nicht anlegen</translation>
+    </message>
+    <message>
+        <source>VYM - Export to directory</source>
+        <translation type="obsolete">VYM - Export in Verzeichnis</translation>
+    </message>
+    <message>
+        <source>VYM - Export to directory (still experimental)</source>
+        <translation type="obsolete">VYM - Export in Verzeichnis</translation>
+    </message>
+    <message>
+        <source>The directory </source>
+        <translation type="obsolete">Das Verzeichnis</translation>
+    </message>
+    <message>
+        <source> is not empty. Do you risk to overwrite its contents?</source>
+        <translation type="obsolete">ist nicht leer.Riskieren sie es, das Verzeichnis zu überschreiben?</translation>
+    </message>
+    <message>
+        <source>Critical Export Error</source>
+        <translation type="obsolete">Kritischer Fehler beim Exportieren</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">Kritischer Fehler</translation>
+    </message>
+    <message>
+        <source> used for undo is gone. 
+I will create a new one, but at the moment no undo is available.
+Maybe you want to reload your original data.
+
+Sorry for any inconveniences.</source>
+        <translation type="obsolete">Vielleicht wollen sie die Orginaldaten erneut laden
+Sorry für die Unannehmlichkeiten.</translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation type="obsolete">Neue URL:</translation>
+    </message>
+    <message>
+        <source>VYM - Link to another map</source>
+        <translation type="obsolete">VYM - Verbindung zu einer anderen Map</translation>
+    </message>
+    <message>
+        <source>vym map</source>
+        <translation type="obsolete">vym Map</translation>
+    </message>
+    <message>
+        <source>vym - load image</source>
+        <translation type="obsolete">VYM - Lade Bild</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <translation type="obsolete">Bilder</translation>
+    </message>
+    <message>
+        <source>vym - Load image</source>
+        <translation type="obsolete">vym - Lade Bild</translation>
+    </message>
+    <message>
+        <source>vym - save image as</source>
+        <translation type="obsolete">vym - Speichere Bild als</translation>
+    </message>
+    <message>
+        <source>vym - Save image as </source>
+        <translation type="obsolete">vym - Speichere Bild als</translation>
+    </message>
+    <message>
+        <source>Critical Import Error</source>
+        <translation type="obsolete">Kritischer Fehler beim Importieren</translation>
+    </message>
+    <message>
+        <source>Cannot find the directory</source>
+        <translation type="obsolete">Kann das Verzeichnis nicht finden</translation>
+    </message>
+    <message>
+        <source>VYM - Choose directory structur to import</source>
+        <translation type="obsolete">vym - Wähle Verzeichnisstruktur für Import</translation>
+    </message>
+    <message>
+        <source>Dangerous</source>
+        <translation type="obsolete">Gefährlich</translation>
+    </message>
+    <message>
+        <source>This will help</source>
+        <translation type="obsolete">Das könnte helfen</translation>
+    </message>
+    <message>
+        <source>New Map</source>
+        <translation type="obsolete">Neue Map</translation>
+    </message>
+    <message>
+        <source>Critical Parse Error by reading backupFile</source>
+        <translation type="obsolete">Kritischer Fehler beim Parsen
+der Sicherungskopie</translation>
+    </message>
+    <message>
+        <source>MapEditor::exportXML couldn&apos;t open </source>
+        <translation type="obsolete">MapEditor::exportXML konnte nicht öffnen:</translation>
+    </message>
+    <message>
+        <source>Note</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Notiz</translation>
+    </message>
+    <message>
+        <source>WWW Document (external)</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">WWW Dokument (extern)</translation>
+    </message>
+    <message>
+        <source>Link to another vym map</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Verbindung zu einer anderen Map</translation>
+    </message>
+    <message>
+        <source>subtree is scrolled</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Teilbaum ist eingerollt</translation>
+    </message>
+    <message>
+        <source>subtree is temporary scrolled</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Teilbaum ist momentan ausgerollt</translation>
+    </message>
+    <message>
+        <source>Take care!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Vorsicht!</translation>
+    </message>
+    <message>
+        <source>Really?</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Wirklich?</translation>
+    </message>
+    <message>
+        <source>ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">ok!</translation>
+    </message>
+    <message>
+        <source>Not ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Nicht ok!</translation>
+    </message>
+    <message>
+        <source>This won&apos;t work!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Das geht nicht!</translation>
+    </message>
+    <message>
+        <source>Good</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Gut</translation>
+    </message>
+    <message>
+        <source>Bad</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Schlecht</translation>
+    </message>
+    <message>
+        <source>Time critical</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Zeitkritisch</translation>
+    </message>
+    <message>
+        <source>Idea!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Idee!</translation>
+    </message>
+    <message>
+        <source>Important</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Wichtig</translation>
+    </message>
+    <message>
+        <source>Unimportant</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Unwichtig</translation>
+    </message>
+    <message>
+        <source>I like this</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Finde ich gut</translation>
+    </message>
+    <message>
+        <source>I do not like this</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Finde ich schlecht</translation>
+    </message>
+    <message>
+        <source>I just love... </source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Das liebe ich!</translation>
+    </message>
+    <message>
+        <source>Dangerous</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Gefährlich</translation>
+    </message>
+    <message>
+        <source>This will help</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Das könnte helfen</translation>
+    </message>
+    <message>
+        <source>New Map</source>
+        <comment>Heading of mapcenter in new map</comment>
+        <translation type="obsolete">Neue Map</translation>
+    </message>
+    <message>
+        <source>Critcal Save error</source>
+        <translation type="obsolete">Kritischer Fehler beim Speichern</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="obsolete">Die Datei %1 gibt es bereits.
+Wollen Sie sie überschreiben?</translation>
+    </message>
+    <message>
+        <source>MapEditor::exportXML couldn&apos;t open %1</source>
+        <translation type="obsolete">MapEditor::exportXML konnte %1 nicht öffnen</translation>
+    </message>
+    <message>
+        <source>Temporary directory %1 used for undo is gone. 
+I will create a new one, but at the moment no undo is available.
+Maybe you want to reload your original data.
+
+Sorry for any inconveniences.</source>
+        <translation type="obsolete">Um einen Schritt rückgängig machen zu können, wird das Verzeichnis
+%1 benutzt - leider ist verschwunden. 
+Am besten Sie starten vym neu und laden Ihre Daten nochmal.
+
+Sorry für die Umstände.
+</translation>
+    </message>
+    <message>
+        <source>vym - Save image as %1</source>
+        <translation type="obsolete">vym - Bild speichern als %1</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already. Do you want to overwrite it?</source>
+        <translation type="obsolete">Die Datei %1 gibt es bereits.
+Wollen Sie sie überschreiben?</translation>
+    </message>
+    <message>
+        <source>Cannot find the directory %1</source>
+        <translation type="obsolete">Konnte das Verzeichnis %1 nicht finden</translation>
+    </message>
+    <message>
+        <source>Export (ASCII)</source>
+        <translation type="obsolete">als ASCII</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already. Do you want to overwrite it?</source>
+        <translation type="obsolete">Die Datei %1 gibt es bereits.
+Wollen Sie sie überschreiben?</translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation type="obsolete">Verbindung zu einer anderen Map</translation>
+    </message>
+    <message>
+        <source>Load image</source>
+        <translation type="obsolete">Lade Bild</translation>
+    </message>
+    <message>
+        <source>Save image as %1</source>
+        <translation type="obsolete">Speichere Bild unter %1</translation>
+    </message>
+    <message>
+        <source>Choose directory structure to import</source>
+        <translation type="obsolete">Bitte Verzeichnis zum Importieren auswählen</translation>
+    </message>
+    <message>
+        <source>Export as ASCII</source>
+        <translation type="obsolete">Exportiere als ASCII</translation>
+    </message>
+    <message>
+        <source>(still experimental)</source>
+        <translation type="obsolete">(noch experimentelle Funktion)</translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">Exportiere als LaTeX Datei</translation>
+    </message>
+    <message>
+        <source>unnamed</source>
+        <translation type="obsolete">unbenannt</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="obsolete">Warnung</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find script %1
+to notifiy Browsers of changed bookmarks.</source>
+        <translation type="obsolete">Konnte das Script %1
+nicht finden, das nötig ist um die
+Browser auf die geänderten Lesezeichen
+hinzuweisen. </translation>
+    </message>
+    <message>
+        <source>History for </source>
+        <translation type="obsolete">Verlauf für</translation>
+    </message>
+    <message>
+        <source>Save image</source>
+        <translation type="obsolete">Speichere Bild</translation>
+    </message>
+    <message>
+        <source>Critical Parse Error while reading %1</source>
+        <translation type="obsolete">Kritischer Fehler beim Parsen von %1</translation>
+    </message>
+    <message>
+        <source>Could not read %1</source>
+        <translation type="obsolete">%1 konnte nicht gelesen werden</translation>
+    </message>
+    <message>
+        <source>Can&apos;t get color of heading,
+there&apos;s no branch selected</source>
+        <translation type="obsolete">Konnte die Farbe der Beschriftung nicht bestimmen,
+da kein Zweig ausgewählt ist.</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation type="obsolete">Konnte temporäres Verzeichnis vor dem Laden nicht erzeugen
+</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="obsolete">Konnte keine map (*.xml) in .vym Datei finden.
+</translation>
+    </message>
+    <message>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="obsolete">Die Map %1
+wurde unkomprimiert gespeichert, also nicht im 
+normalerweise von vym verwendeten Format.
+Beim nochmaligen unkomprimierten Speichern
+werden auch Grafiken gespeichert und so evtl.
+Daten im angegeben Verzeichnis überschrieben.
+
+Wollen Sie 
+</translation>
+    </message>
+    <message>
+        <source>compressed (vym default)</source>
+        <translation type="obsolete">komprimieren (vym default)</translation>
+    </message>
+    <message>
+        <source>uncompressed</source>
+        <translation type="obsolete">unkomprimiert lassen</translation>
+    </message>
+    <message>
+        <source>Save Error</source>
+        <translation type="obsolete">Fehler beim Speichern</translation>
+    </message>
+    <message>
+        <source>%1
+could not be removed before saving</source>
+        <translation type="obsolete">%1
+konnte vor dem SPeichern nicht entfernt werden</translation>
+    </message>
+    <message>
+        <source>%1
+could not be renamed before saving</source>
+        <translation type="obsolete">%1
+konnte vor dem Speichern nicht umbenannt werden</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation type="obsolete">Konnte temporäres Verzeichnis vor dem Speichern nicht erzeugen
+</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <translation type="obsolete">Map als Bild exportieren</translation>
+    </message>
+    <message>
+        <source>Export XML to directory</source>
+        <translation type="obsolete">Exportiere XML in Verzeichnis</translation>
+    </message>
+    <message>
+        <source>Autosave disabled during undo.</source>
+        <translation type="obsolete">Autosave ausgeschaltet während der Aktion &quot;Rückgängig&quot;</translation>
+    </message>
+    <message>
+        <source>Load background image</source>
+        <translation type="obsolete">Hintergrundbild laden</translation>
+    </message>
+    <message>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Text</translation>
+    </message>
+    <message>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Tabellendokument</translation>
+    </message>
+    <message>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Textdokument</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Bilder</translation>
+    </message>
+    <message>
+        <source>Set URL to a local file</source>
+        <translation type="obsolete">URL zu einer lokalen Datei setzen</translation>
+    </message>
+    <message>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation type="obsolete">%1 Objekte in der Map
+</translation>
+    </message>
+    <message>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation type="obsolete">Die zur Map gehörende Datei hat sich verändert:
+
+   %1
+
+Soll die Map durch die neue Datei ersetzt werden?</translation>
+    </message>
+    <message>
+        <source>Reload</source>
+        <translation type="obsolete">Neu laden</translation>
+    </message>
+    <message>
+        <source>Ignore</source>
+        <translation type="obsolete">Ignorieren</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="43"/>
+        <source>Map Editor</source>
+        <comment>Shortcut scope</comment>
+        <translation>Map Editor</translation>
+    </message>
+    <message>
+        <source>Select previous</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">vorherige Auswahl</translation>
+    </message>
+    <message>
+        <source>Select next</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">nächste Auswahl</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="111"/>
+        <location filename="../mapeditor.cpp" line="116"/>
+        <source>Edit heading</source>
+        <comment>MapEditor</comment>
+        <translation>Zweig-Überschrift bearbeiten</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>MapEditor</comment>
+        <translation type="obsolete">Speichern</translation>
+    </message>
+    <message>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Ausschneiden</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Kopieren</translation>
+    </message>
+    <message>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Wieder&amp;herstellen</translation>
+    </message>
+    <message>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Ein&amp;fügen</translation>
+    </message>
+    <message>
+        <source>Repeat last export (%1)</source>
+        <translation type="obsolete">Letzten Export wiederholen (%1)</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="510"/>
+        <source>Print vym map</source>
+        <comment>MapEditor</comment>
+        <translation>Map drucken</translation>
+    </message>
+</context>
+<context>
+    <name>NoteEditor</name>
+    <message>
+        <location filename="../noteeditor.cpp" line="13"/>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation>Notiz Editor</translation>
+    </message>
+</context>
+<context>
+    <name>Process</name>
+    <message>
+        <source>Critical Error</source>
+        <translation type="vanished">Kritischer Fehler</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation type="vanished">Konnte %1 nicht starten</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="vanished">%1 wurde nicht richtig beendet</translation>
+    </message>
+</context>
+<context>
+    <name>QMessageBox</name>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">Kritischer Fehler</translation>
+    </message>
+</context>
+<context>
+    <name>QObject</name>
+    <message>
+        <source>new branch</source>
+        <translation type="obsolete">Neuer Zweig</translation>
+    </message>
+    <message>
+        <source>New Map</source>
+        <translation type="obsolete">Neue Map</translation>
+    </message>
+    <message>
+        <source>This is not an image.</source>
+        <translation type="obsolete">Das ist kein Bild.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <location filename="../exports.cpp" line="381"/>
+        <location filename="../exports.cpp" line="511"/>
+        <location filename="../exports.cpp" line="954"/>
+        <location filename="../exports.cpp" line="1048"/>
+        <location filename="../exports.cpp" line="1128"/>
+        <location filename="../exports.cpp" line="1236"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <location filename="../exports.cpp" line="1333"/>
+        <location filename="../exports.cpp" line="1343"/>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Critical Export Error</source>
+        <translation>Kritischer Fehler beim Exportieren</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="956"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <source>Could not write %1</source>
+        <translation>%1 konnte nicht </translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="147"/>
+        <source>Exporting to %1 will overwrite the existing file:
+%2</source>
+        <translation>Die Datei %2 gibt es bereits.
+Wollen Sie sie überschreiben für einen Export nach %1?</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="146"/>
+        <source>Warning: Overwriting file</source>
+        <translation>Warnung: Überschreiben einer Datei</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <source>Could not export as AO to %1</source>
+        <translation>Konnte nicht als AO nach %1 exportieren</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="381"/>
+        <source>Could not export as ASCII to %1</source>
+        <translation>Konnte nicht als ASCII nach %1 exportieren</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="503"/>
+        <source>Export as CSV</source>
+        <translation>Exportiere als CSV</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="511"/>
+        <source>Could not export as CSV to %1</source>
+        <translation>Konnte nicht als CSV nach %1 exportieren</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="837"/>
+        <source>Contents:</source>
+        <comment>Used in HTML export</comment>
+        <translation>Inhalt</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="893"/>
+        <source>Export aborted.</source>
+        <translation>Export fehlgeschlagen.</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <comment>ExportHTML</comment>
+        <translation type="obsolete">Warnung</translation>
+    </message>
+    <message>
+        <source>Trying to load stylesheet:</source>
+        <translation type="obsolete">Versuche Stylesheet zu laden</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <comment>ExportHTML</comment>
+        <translation type="obsolete">%1 konnte nicht geöffnet werden</translation>
+    </message>
+    <message>
+        <source>Trying to save stylesheet:</source>
+        <translation type="obsolete">Versuche Stylesheet zu speichern</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <translation type="obsolete">%1 konnte nicht geöffnet werden</translation>
+    </message>
+    <message>
+        <source>Trying to load small icon for URLs:</source>
+        <translation type="obsolete">Versuche kleines Icon für URLs zu laden</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="934"/>
+        <source>Trying to create directory for flags:</source>
+        <translation>Versuche Verzeichnis für Flags anzulegen</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="935"/>
+        <source>Could not create %1</source>
+        <translation>%1 konnte nicht angelegt werden</translation>
+    </message>
+    <message>
+        <source>Trying to save small icon for URLs:</source>
+        <translation type="obsolete">Versuche kleines Icon für URLs zu speichern</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="909"/>
+        <location filename="../exports.cpp" line="933"/>
+        <location filename="../exports.cpp" line="944"/>
+        <source>Critical</source>
+        <translation>Kritisch</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="910"/>
+        <source>Could not find stylesheet %1</source>
+        <translation>Konnte stylesheet %1 nicht finden</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="920"/>
+        <source>Error</source>
+        <comment>ExportHTML</comment>
+        <translation>Fehler</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="921"/>
+        <source>Could not copy
+%1 to
+%2</source>
+        <comment>ExportHTML</comment>
+        <translation>Kopieren fehlgeschlagen:
+%1 nach
+%2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="945"/>
+        <source>Could not copy %1 to %2</source>
+        <translation>Kopieren fehlgeschlagen:
+%1 nach
+%2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="955"/>
+        <source>Trying to save HTML file:</source>
+        <translation>Versuche HTML Datei zu speichern:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="236"/>
+        <location filename="../exports.cpp" line="382"/>
+        <location filename="../exports.cpp" line="512"/>
+        <location filename="../exports.cpp" line="957"/>
+        <location filename="../exports.cpp" line="1049"/>
+        <location filename="../exports.cpp" line="1130"/>
+        <location filename="../exports.cpp" line="1309"/>
+        <source>Export failed.</source>
+        <translation>Export fehlgeschlagen.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1048"/>
+        <source>Could not export as OrgMode to %1</source>
+        <translation>Konnte nicht als OrgMode  nach %1 exportieren</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1129"/>
+        <source>Could not export as LaTeX to %1</source>
+        <translation>Konnte nicht als LaTeX  nach %1 exportieren</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1189"/>
+        <source>Export as LibreOffice Impress presentation</source>
+        <translation>Exportieren als LibreOffice Impress Präsentation</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1236"/>
+        <source>No objects in map!</source>
+        <translation>Keine Objekte in Map!</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1333"/>
+        <source>Couldn&apos;t read settings from &quot;%1&quot;</source>
+        <translation>Konnte Einstellungen nicht lesen von %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1343"/>
+        <source>Check &quot;%1&quot; in
+%2</source>
+        <translation>Bitte &quot;%1&quot; prüfen in
+%2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Could not read %1</source>
+        <translation>%1 konnte nicht gelesen werden</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="257"/>
+        <location filename="../file.cpp" line="272"/>
+        <location filename="../file.cpp" line="296"/>
+        <location filename="../file.cpp" line="305"/>
+        <location filename="../file.cpp" line="313"/>
+        <location filename="../file.cpp" line="323"/>
+        <location filename="../file.cpp" line="332"/>
+        <location filename="../file.cpp" line="340"/>
+        <location filename="../file.cpp" line="347"/>
+        <location filename="../file.cpp" line="356"/>
+        <location filename="../file.cpp" line="377"/>
+        <location filename="../file.cpp" line="400"/>
+        <location filename="../file.cpp" line="410"/>
+        <location filename="../file.cpp" line="423"/>
+        <location filename="../main.cpp" line="411"/>
+        <location filename="../xsltproc.cpp" line="78"/>
+        <location filename="../xsltproc.cpp" line="84"/>
+        <source>Critical Error</source>
+        <translation>Kritischer Fehler</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="258"/>
+        <source>Couldn&apos;t move existing file out of the way before saving.</source>
+        <translation>Konnte bereits existierende Datei vor dem Speichern nicht verschieben</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="273"/>
+        <location filename="../file.cpp" line="378"/>
+        <source>Couldn&apos;t start tool to decompress data.</source>
+        <translation>Konnte Tool zum dekomprimieren der Daten nicht starten</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="297"/>
+        <source>Couldn&apos;t start zip to compress data.</source>
+        <translation>Konnte zip nicht starten, um Daten zu komprimieren.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="306"/>
+        <source>zip didn&apos;t exit normally</source>
+        <translation>zip wurde nicht richtig beendet</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="324"/>
+        <source>Couldn&apos;t rename %1 back to %2</source>
+        <translation>Konnte %1 nicht umbenennen zu %2</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="333"/>
+        <source>Couldn&apos;t remove target of old symbolic link %1</source>
+        <translation>Konnte Ziel des alten symbolischen Links %1 nicht entfernen</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="341"/>
+        <source>Couldn&apos;t rename output to target of old symbolic link %1</source>
+        <translation>Konnte Ausgabe nicht zum Ziel des alten symbolischen Links %1 umbenennen</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="348"/>
+        <source>Couldn&apos;t link from %1 to target of old symbolic link %2</source>
+        <translation>Konnte nicht von %1 zum Ziel des symblischen Links %2 verlinken</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="357"/>
+        <source>Saved %1, but couldn&apos;t remove %2</source>
+        <translation>%1 wurde gespeichert, aber %2 konnte nicht entfernt werden</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="401"/>
+        <source>Couldn&apos;t start unzip to decompress data.</source>
+        <translation>Konnte unzip nicht starten, um Daten zu dekomprimieren.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="411"/>
+        <source>unzip didn&apos;t exit normally</source>
+        <translation>unzip wurde nicht richtig beendet</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="79"/>
+        <source>Could not start %1</source>
+        <translation>%1 konnte nicht gestartet werden</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="85"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation>%1 wurde nicht richtig beendet</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="obsolete">Die Datei %1 gibt es bereits.
+Wollen Sie sie überschreiben?</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="90"/>
+        <source>Overwrite</source>
+        <translation>Überschreiben</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="91"/>
+        <source>Cancel</source>
+        <translation>Abbrechen</translation>
+    </message>
+    <message>
+        <source>Sorry, no preview for
+multiple selected files.</source>
+        <translation type="obsolete">Leider keine Vorschau
+möglich für Mehrfachausahl.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="560"/>
+        <location filename="../exports.cpp" line="590"/>
+        <source>Exporting the %1 bookmarks will overwrite
+your existing bookmarks file.</source>
+        <translation>Das Exportieren der %1 Lesezeichen wird die
+bestehende Datei mit Lesezeichen überschreiben.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="561"/>
+        <location filename="../exports.cpp" line="591"/>
+        <source>Warning: Overwriting %1 bookmarks</source>
+        <translation>Warnung: Überschreiben der %1 Lesezeichen</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="579"/>
+        <location filename="../macros.cpp" line="39"/>
+        <location filename="../main.cpp" line="377"/>
+        <source>Warning</source>
+        <translation>Warnung</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="580"/>
+        <source>Couldn&apos;t find script %1
+to notifiy Browsers of changed bookmarks.</source>
+        <translation>Konnte das Script %1
+nicht finden, das nötig ist um die
+Browser auf die geänderten Lesezeichen
+hinzuweisen. </translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="56"/>
+        <location filename="../imports.cpp" line="18"/>
+        <location filename="../main.cpp" line="475"/>
+        <location filename="../scripteditor.cpp" line="77"/>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Error</source>
+        <translation>Fehler</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="57"/>
+        <location filename="../imports.cpp" line="19"/>
+        <source>Couldn&apos;t access temporary directory
+</source>
+        <translation>Auf das temporäre Verzeichnis konnte nicht zugegriffen werden</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <location filename="../exports.cpp" line="373"/>
+        <source>Export as ASCII</source>
+        <translation>Exportiere als ASCII</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <source>(still experimental)</source>
+        <translation>(noch experimentelle Funktion)</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="84"/>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <comment>write directory</comment>
+        <translation>Das Verzeichnis %1 ist nicht leer.
+Riskieren Sie es dessen Inhalt zu überschreiben?</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation type="obsolete">Konnte nicht geöffnet werden:
+%1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3792"/>
+        <source>No Bugzilla client found.  For openSUSE you can install by (running as root):
+
+</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation>Kein Bugzilla Client gefunedn. Für openSUSE installieren mit (als root):
+
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3797"/>
+        <source>Alternatively you can also add the repository
+and install the perl module for Bugzilla access using YaST</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation>Alternativ das repository hinzufügen und das Perl Modul für
+Bugzilla Zugriff in YaST installieren</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3800"/>
+        <source>Warning: Couldn&apos;t find Bugzilla client</source>
+        <comment>VymModel</comment>
+        <translation>Warnung: Konnte Bugzilla Client nicht finden</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <comment>Shortcut group</comment>
+        <translation type="obsolete">Notiz Editor</translation>
+    </message>
+    <message>
+        <source>Heading Editor</source>
+        <comment>Shortcut group</comment>
+        <translation type="obsolete">Editor Zweigbeschriftungen</translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="412"/>
+        <source>Couldn&apos;t find tool to unzip data. Please download and install 7z and set path in Settings menu:
+ </source>
+        <translation>Konnte Tool zum Dekomprimieren der Daten nicht finden. Bitte 7z herunterladen und installerien, anschließend Pfad in den Einstellungen angeben</translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="476"/>
+        <location filename="../scripteditor.cpp" line="78"/>
+        <source>Couldn&apos;t open &quot;%1&quot;
+%2.</source>
+        <translation>Konnte %1 nicht öffnen
+%2</translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="80"/>
+        <source>Warning: Version Problem</source>
+        <translation>Warnung: Versionsproblemm</translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="81"/>
+        <source>&lt;h3&gt;Map is newer than VYM&lt;/h3&gt;&lt;p&gt;The map you are just trying to load was saved using vym %1. The version of this vym is %2. If you run into problems after pressing the ok-button below, updating vym should help.&lt;/p&gt;</source>
+        <translation>&lt;h3&gt;Map ist neuer als VYM&lt;/h3&gt;&lt;p&gt;Die Map, die Sie gerade versuchen zu laden wurde mit vym %1 gespeichert. Die vorliegende Version von vym ist %2. Falls nach dem Fortfahren mit Ok Probleme autauchen, sollte ein Update von vym helfen.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="40"/>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation>Konnte Makro nicht finden in
+%1</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>Bitte setzen sie einen Pfad in Einstellungen-&gt;</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Set directory for vym macros</source>
+        <translation>Verzeichnis für vym Makros</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Couldn&apos;t save &quot;%1&quot;</source>
+        <translation>Konnte %1 nicht speichern</translation>
+    </message>
+</context>
+<context>
+    <name>ScriptEditor</name>
+    <message>
+        <location filename="../scripteditor.ui" line="14"/>
+        <source>Form</source>
+        <translation>Formular</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="49"/>
+        <source>Tab 1</source>
+        <translation>Tab 1</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="55"/>
+        <source>Save to selected slide</source>
+        <translation>In ausgewählte Folie speichern</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="91"/>
+        <location filename="../scripteditor.ui" line="145"/>
+        <source>Run</source>
+        <translation>Starten</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="105"/>
+        <source>Tab 2</source>
+        <translation>Tab 2</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="121"/>
+        <source>Current key:</source>
+        <translation>Ausgewählte Taste</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="131"/>
+        <source>Load</source>
+        <translation>Laden</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="138"/>
+        <source>Save</source>
+        <translation>Speichern</translation>
+    </message>
+    <message>
+        <source>Save slide</source>
+        <translation type="obsolete">Folie speichern</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Warning</source>
+        <translation>Warnung</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save script into slide!</source>
+        <translation type="obsolete">Konnte Skript nicht in Folie speichern!</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find slide to save script!</source>
+        <translation type="obsolete">Konnte Folie nicht finden um das Skript zu speichern!</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="45"/>
+        <source>Slide</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation>Folie</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="46"/>
+        <source>Macro</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation>Makro</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="65"/>
+        <source>Save</source>
+        <comment>ScriptEditor</comment>
+        <translation>Speichern</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <source>Couldn&apos;t get model to save script into slide!</source>
+        <translation>Konnte Datenmodell zum Speichern des Scripts nicht auffinden!</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Couldn&apos;t find slide to save script into slide!</source>
+        <translation>Konnte Folie zum Speichern des Scripts nicht finden!</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="143"/>
+        <source>Save script</source>
+        <translation>Script speichern</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="155"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation>Die Datei %1 gibt es bereits.
+Wollen Sie sie überschreiben?</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="160"/>
+        <source>Overwrite</source>
+        <translation>Überschreiben</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="161"/>
+        <source>Cancel</source>
+        <translation>Abbrechen</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="184"/>
+        <source>Load script</source>
+        <translation>Script laden</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="194"/>
+        <source>Error</source>
+        <translation>Fehler</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="195"/>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation>Konnte %1 nicht öffnen.
+</translation>
+    </message>
+</context>
+<context>
+    <name>ShowTextDialog</name>
+    <message>
+        <source>VYM - Info</source>
+        <translation type="obsolete">VYM - Info</translation>
+    </message>
+    <message>
+        <location filename="../showtextdialog.ui" line="50"/>
+        <source>Close</source>
+        <translation>Schliessen</translation>
+    </message>
+    <message>
+        <source>History of %1</source>
+        <translation type="obsolete">Verlauf von %1</translation>
+    </message>
+    <message>
+        <location filename="../showtextdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>Dialog</translation>
+    </message>
+</context>
+<context>
+    <name>SimpleScriptEditor</name>
+    <message>
+        <source>Save script</source>
+        <translation type="obsolete">Script speichern</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation type="obsolete">Die Datei %1 gibt es bereits.
+Wollen Sie sie überschreiben?</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="obsolete">Überschreiben</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Abbrechen</translation>
+    </message>
+    <message>
+        <source>Load script</source>
+        <translation type="obsolete">Script laden</translation>
+    </message>
+    <message>
+        <source>Error</source>
+        <translation type="obsolete">Fehler</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation type="obsolete">Konnte nichKonnte nicht geöffnet werden:
+%1</translation>
+    </message>
+    <message>
+        <source>Simple Script Editor</source>
+        <translation type="obsolete">Einfacher Script Editor</translation>
+    </message>
+    <message>
+        <source>Save as</source>
+        <translation type="obsolete">Speichern als</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <translation type="obsolete">Speichern</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <translation type="obsolete">Öffnen</translation>
+    </message>
+    <message>
+        <source>Run</source>
+        <translation type="obsolete">Starten</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Schliessen</translation>
+    </message>
+</context>
+<context>
+    <name>TaskEditor</name>
+    <message>
+        <location filename="../taskeditor.cpp" line="38"/>
+        <source>Current map</source>
+        <comment>TaskEditor</comment>
+        <translation>Aktuelle Map</translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="45"/>
+        <source>Active tasks</source>
+        <comment>TaskEditor</comment>
+        <translation>Aktive Aufgaben</translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="52"/>
+        <source>New tasks</source>
+        <comment>TaskEditor</comment>
+        <translation>Neue Aufgaben</translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="68"/>
+        <location filename="../taskeditor.cpp" line="73"/>
+        <source>Edit heading</source>
+        <comment>TaskEditor</comment>
+        <translation>Bearbeite Zweig-Beschrifttung</translation>
+    </message>
+</context>
+<context>
+    <name>TaskModel</name>
+    <message>
+        <location filename="../taskmodel.cpp" line="127"/>
+        <source>Prio</source>
+        <comment>TaskEditor</comment>
+        <translation>Priorität</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="129"/>
+        <source>Status</source>
+        <comment>TaskEditor</comment>
+        <translation>Status</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="131"/>
+        <source>Age total</source>
+        <comment>TaskEditor</comment>
+        <translation>Alter insg.</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="133"/>
+        <source>Age mod.</source>
+        <comment>TaskEditor</comment>
+        <translation>Alter letzte Änderung</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="135"/>
+        <source>Sleep</source>
+        <comment>TaskEditor</comment>
+        <translation>Wiedervorlage</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="137"/>
+        <source>Map</source>
+        <comment>TaskEditor</comment>
+        <translation>Map</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="139"/>
+        <source>Task</source>
+        <comment>TaskEditor</comment>
+        <translation>Aufgabe</translation>
+    </message>
+</context>
+<context>
+    <name>TextEditor</name>
+    <message>
+        <source>&amp;File</source>
+        <translation type="obsolete">&amp;Datei</translation>
+    </message>
+    <message>
+        <source>Import</source>
+        <translation type="obsolete">Importiere</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="273"/>
+        <source>&amp;Import...</source>
+        <translation>&amp;Importiere</translation>
+    </message>
+    <message>
+        <source>Export Note</source>
+        <translation type="obsolete">Exportiere Notiz</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="283"/>
+        <source>&amp;Export...</source>
+        <translation>&amp;Export</translation>
+    </message>
+    <message>
+        <source>Export Note As</source>
+        <translation type="obsolete">Exportiere Notiz unter...</translation>
+    </message>
+    <message>
+        <source>Export &amp;As...</source>
+        <translation type="obsolete">Exportiere &amp;unter...</translation>
+    </message>
+    <message>
+        <source>Print Note</source>
+        <translation type="obsolete">Drucke Notiz</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="308"/>
+        <source>&amp;Print...</source>
+        <translation>&amp;Drucken</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <translation type="vanished">&amp;Bearbeiten</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <translation type="obsolete">Rückgängig</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="332"/>
+        <source>&amp;Undo</source>
+        <translation>R&amp;ückgängig</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="obsolete">Wiederherstellen</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="341"/>
+        <source>&amp;Redo</source>
+        <translation>Wieder&amp;herstellen</translation>
+    </message>
+    <message>
+        <source>Select and copy all</source>
+        <translation type="obsolete">Alles auswählen und kopieren</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="351"/>
+        <source>Select and copy &amp;all</source>
+        <translation>&amp;Alles auswählen und kopieren</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <translation type="obsolete">Kopieren</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="359"/>
+        <source>&amp;Copy</source>
+        <translation>&amp;Kopieren</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="obsolete">Ausschneiden</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="368"/>
+        <source>Cu&amp;t</source>
+        <translation>&amp;Ausschneiden</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <translation type="obsolete">Einfügen</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="377"/>
+        <source>&amp;Paste</source>
+        <translation>Ein&amp;fügen</translation>
+    </message>
+    <message>
+        <source>Delete all</source>
+        <translation type="obsolete">Alles löschen</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="316"/>
+        <source>&amp;Delete All</source>
+        <translation>Alles &amp;löschen</translation>
+    </message>
+    <message>
+        <source>&amp;Format</source>
+        <translation type="obsolete">&amp;Format</translation>
+    </message>
+    <message>
+        <source>Use fixed font</source>
+        <translation type="obsolete">Benutze fixe Zeichenbreite</translation>
+    </message>
+    <message>
+        <source>&amp;Fixed font</source>
+        <translation type="obsolete">&amp;fixe Zeichenbreite</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="540"/>
+        <source>&amp;Settings</source>
+        <translation>&amp;Einstellungen</translation>
+    </message>
+    <message>
+        <source>Set fixed font</source>
+        <translation type="obsolete">Wähle Zeichensatz mit fixer Breite</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="543"/>
+        <source>Set &amp;fixed font</source>
+        <translation>Wähle Zeichensatz mit f&amp;ixer Breite</translation>
+    </message>
+    <message>
+        <source>Set variable font</source>
+        <translation type="obsolete">Wähle Zeichensatz mit variabler Breite</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="548"/>
+        <source>Set &amp;variable font</source>
+        <translation>Wähle Zeichensatz mit v&amp;ariabler Breite</translation>
+    </message>
+    <message>
+        <source>Used fixed font by default</source>
+        <translation type="obsolete">Verwende fixen Zeichensatz per default</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="553"/>
+        <source>&amp;fixed font is default</source>
+        <translation>Verwende fixen Zeichensatz p&amp;er default</translation>
+    </message>
+    <message>
+        <source>Export Note (HTML)</source>
+        <translation type="obsolete">Exportiere Notiz (HTML)</translation>
+    </message>
+    <message>
+        <source>Export Note As (HTML) </source>
+        <translation type="obsolete">Exportiere Notiz als (HTML)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="293"/>
+        <source>Export &amp;As... (HTML)</source>
+        <translation>Exportiere Notiz &amp;als... (HTML)</translation>
+    </message>
+    <message>
+        <source>Export Note As (ASCII) </source>
+        <translation type="obsolete">Exportiere Notiz als (ASCII)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="298"/>
+        <source>Export &amp;As...(ASCII)</source>
+        <translation>Exportiere a&amp;ls (ASCII)</translation>
+    </message>
+    <message>
+        <source>Use fixed width font for the whole text</source>
+        <translation type="obsolete">Feste Zeichenbreite für den Text verwenden</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="329"/>
+        <source>Edi&amp;t</source>
+        <translation>Edi&amp;tieren</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="390"/>
+        <source>Font hints</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>Zeichensatz Hint</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="417"/>
+        <source>Fonts</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>Zeichensätze</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="443"/>
+        <source>Format</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>Format</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="448"/>
+        <source>&amp;Color...</source>
+        <translation>&amp;Farbe...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="454"/>
+        <source>&amp;Bold</source>
+        <translation>F&amp;ett</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="464"/>
+        <source>&amp;Italic</source>
+        <translation>K&amp;ursiv</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="474"/>
+        <source>&amp;Underline</source>
+        <translation>&amp;Unterstrichen</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="512"/>
+        <source>&amp;Left</source>
+        <translation>&amp;Linksbündig</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="518"/>
+        <source>C&amp;enter</source>
+        <translation>&amp;Zentriert</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="524"/>
+        <source>&amp;Right</source>
+        <translation>&amp;Rechtsbündig</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="530"/>
+        <source>&amp;Justify</source>
+        <translation>&amp;Blocksatz</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="704"/>
+        <source>Export Note to single file</source>
+        <translation>Notiz in eine einzelne Datei exportieren</translation>
+    </message>
+    <message>
+        <source>The file </source>
+        <translation type="obsolete">Die Datei</translation>
+    </message>
+    <message>
+        <source> exists already. Do you want to overwrite it?</source>
+        <translation type="obsolete">gibt es bereits. Wollen Sie sie</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="724"/>
+        <location filename="../texteditor.cpp" line="800"/>
+        <source>Overwrite</source>
+        <translation>Überschreiben</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="725"/>
+        <location filename="../texteditor.cpp" line="801"/>
+        <source>Cancel</source>
+        <translation>Abbrechen</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t export note </source>
+        <translation type="obsolete">Konnte Notiz nicht exportieren</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="785"/>
+        <source>Export Note to single file (ASCII)</source>
+        <translation>Notiz als ASCII in eine einzelne Datei ausgeben</translation>
+    </message>
+    <message>
+        <source>Convert paragraphs to linebreaks</source>
+        <translation type="obsolete">Absätze in Zeilenbrüche umwandeln</translation>
+    </message>
+    <message>
+        <source>&amp;Convert Paragraphs</source>
+        <translation type="obsolete">&amp;Absätze umwandeln</translation>
+    </message>
+    <message>
+        <source>Join all lines of a paragraph</source>
+        <translation type="obsolete">Alle Zeilenumbrüche eines Absatzes zu vereinen</translation>
+    </message>
+    <message>
+        <source>&amp;Join lines</source>
+        <translation type="obsolete">&amp;Zeilen vereinen</translation>
+    </message>
+    <message>
+        <source>Toggle font hint for the whole text</source>
+        <translation type="obsolete">Zeichensatz für gesamten Text umschalten</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="396"/>
+        <source>&amp;Font hint</source>
+        <translation>Zeichensatz &amp;umschalten</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="488"/>
+        <source>Subs&amp;cript</source>
+        <translation>&amp;Tiefgestellt</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="498"/>
+        <source>Su&amp;perscript</source>
+        <translation>&amp;Hochgestellt</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="566"/>
+        <source>Note Editor</source>
+        <translation>Notiz Editor</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="392"/>
+        <source>F&amp;ormat</source>
+        <translation>F&amp;ormat</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="49"/>
+        <source>Text Editor</source>
+        <comment>Text Editor Window caption</comment>
+        <translation>Text Editor</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="271"/>
+        <location filename="../texteditor.cpp" line="325"/>
+        <location filename="../texteditor.cpp" line="389"/>
+        <source>Texteditor</source>
+        <comment>Shortcuts</comment>
+        <translation>Text Editor</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="326"/>
+        <source>Edit Actions</source>
+        <translation>Edit Actions</translation>
+    </message>
+    <message>
+        <source>Format Actions</source>
+        <translation type="obsolete">Format Actions</translation>
+    </message>
+    <message>
+        <source>Print Document</source>
+        <translation type="obsolete">Drucke Notiz</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="267"/>
+        <source>Note Actions</source>
+        <translation>Note Actions</translation>
+    </message>
+    <message>
+        <source>&amp;Note</source>
+        <translation type="obsolete">&amp;Notiz</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="48"/>
+        <source>Ready</source>
+        <comment>Statusbar message</comment>
+        <translation>Bereit</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="174"/>
+        <source>No filename available for this note.</source>
+        <comment>Statusbar message</comment>
+        <translation>Notiz hat keinen Dateinamen</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation type="obsolete">Notiz Editor</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="269"/>
+        <source>&amp;Note</source>
+        <comment>Menubar</comment>
+        <translation>&amp;Notiz</translation>
+    </message>
+    <message>
+        <source>Import</source>
+        <comment>Status tip for Note menu</comment>
+        <translation type="obsolete">Importieren</translation>
+    </message>
+    <message>
+        <source>Export Note (HTML)</source>
+        <comment>Status tip for Note menu</comment>
+        <translation type="obsolete">Exportiere Notiz (HTML)</translation>
+    </message>
+    <message>
+        <source>Export Note As (HTML) </source>
+        <comment>Status tip for Note Menu</comment>
+        <translation type="obsolete">Exportiere Notiz als (HTML)</translation>
+    </message>
+    <message>
+        <source>Export Note As (ASCII) </source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Exportiere Notiz als (ASCII)</translation>
+    </message>
+    <message>
+        <source>Print Note</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Drucke Notiz</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Rückgängig</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Wiederherstellen</translation>
+    </message>
+    <message>
+        <source>Select and copy all</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Alles auswählen und kopieren</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Kopieren</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Ausschneiden</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Einfügen</translation>
+    </message>
+    <message>
+        <source>Delete all</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Alles löschen</translation>
+    </message>
+    <message>
+        <source>Toggle font hint for the whole text</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Zeichensatz für gesamten Text umschalten</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="407"/>
+        <source>&amp;Richtext</source>
+        <translation>&amp;Richtext</translation>
+    </message>
+    <message>
+        <source>Set fixed font</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Wähle Zeichensatz mit fixer Breite</translation>
+    </message>
+    <message>
+        <source>Set variable font</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Wähle Zeichensatz mit variabler Breite</translation>
+    </message>
+    <message>
+        <source>Used fixed font by default</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Verwende fixen Zeichensatz per default</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="719"/>
+        <location filename="../texteditor.cpp" line="795"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation>Die Datei %1 gibt es bereits.
+Wollen Sie sie überschreiben?</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="743"/>
+        <source>Couldn&apos;t export note </source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation>Konnte Notiz nicht exportieren</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="828"/>
+        <source>Print</source>
+        <comment>TextEditor</comment>
+        <translation>Drucken</translation>
+    </message>
+</context>
+<context>
+    <name>TreeEditor</name>
+    <message>
+        <location filename="../treeeditor.cpp" line="27"/>
+        <source>Select upper object</source>
+        <comment>Tree Editor</comment>
+        <translation>Zweig oben auswählen</translation>
+    </message>
+    <message>
+        <source>Select upper object</source>
+        <translation type="obsolete">Zweig oben auswählen</translation>
+    </message>
+    <message>
+        <location filename="../treeeditor.cpp" line="33"/>
+        <source>Select lower object</source>
+        <comment>Tree Editor</comment>
+        <translation>Zweig unten auswählen</translation>
+    </message>
+    <message>
+        <source>Select lower object</source>
+        <translation type="obsolete">Zweig unten auswählen</translation>
+    </message>
+</context>
+<context>
+    <name>VymModel</name>
+    <message>
+        <source>unknown</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="vanished">unbekannt</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="126"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation>unbekannter Benutzer</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="149"/>
+        <source>unnamed</source>
+        <translation>unbenannt</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="445"/>
+        <location filename="../vymmodel.cpp" line="481"/>
+        <location filename="../vymmodel.cpp" line="566"/>
+        <location filename="../vymmodel.cpp" line="622"/>
+        <source>Critical Parse Error</source>
+        <translation>Kritischer Fehler beim Verarbeiten</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="501"/>
+        <location filename="../vymmodel.cpp" line="551"/>
+        <source>Critical Load Error</source>
+        <translation>Kritischer Fehler beim Laden</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="502"/>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation>Konnte temporäres Verzeichnis vor dem Laden nicht erzeugen</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="552"/>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation>Konnte keine map (*.xml) in .vym Datei finden.
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="980"/>
+        <source>unknown user</source>
+        <comment>Default for lockfiles of maps</comment>
+        <translation>unbekannter Benutzer</translation>
+    </message>
+    <message>
+        <source>Map seems to be already opened in another vym instance! It will be opened in readonly mode.
+
+Map is locked by &quot;%1&quot; on &quot;%2&quot;</source>
+        <translation type="vanished">Map schein bereits in einer weiteren Instanz von vym geöffnet zu sein! Sie wird nur zum Lesen geöffnet.
+
+Map ist gesperrt von &quot;%1&quot; auf &quot;%2&quot;</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1003"/>
+        <source>Warning: Map already opended</source>
+        <comment>VymModel</comment>
+        <translation>Warnung: Map ist bereits geöffnet</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="671"/>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation>Die Map %1
+wurde unkomprimiert gespeichert, also nicht im 
+normalerweise von vym verwendeten Format.
+Beim nochmaligen unkomprimierten Speichern
+werden auch Grafiken gespeichert und so evtl.
+Daten im angegeben Verzeichnis überschrieben.
+
+Wollen Sie 
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="679"/>
+        <source>compressed (vym default)</source>
+        <translation>komprimieren (vym default)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="680"/>
+        <source>uncompressed</source>
+        <translation>unkomprimiert lassen</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="681"/>
+        <location filename="../vymmodel.cpp" line="864"/>
+        <source>Cancel</source>
+        <translation>Abbrechen</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="710"/>
+        <location filename="../vymmodel.cpp" line="715"/>
+        <source>Save Error</source>
+        <translation>Fehler beim Speichern</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="711"/>
+        <source>%1
+could not be removed before saving</source>
+        <translation>%1
+konnte vor dem Speichern nicht entfernt werden</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="716"/>
+        <source>%1
+could not be renamed before saving</source>
+        <translation>%1
+konnte vor dem Speichern nicht umbenannt werden</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="728"/>
+        <source>Critical Save Error</source>
+        <translation>Kritischer Fehler beim Speichern</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="729"/>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation>Konnte temporäres Verzeichnis vor dem Speichern nicht erzeugen</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <location filename="../vymmodel.cpp" line="5783"/>
+        <source>Images</source>
+        <translation>Bilder</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <source>All</source>
+        <comment>Filedialog</comment>
+        <translation>Alle</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="792"/>
+        <source>Load image</source>
+        <translation>Lade Bild</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="844"/>
+        <source>Save image</source>
+        <translation>Speichere Bild</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="856"/>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation>Die Datei %1 gibt es bereits.
+Wollen Sie sie überschreiben?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="863"/>
+        <source>Overwrite</source>
+        <translation>Überschreiben</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Critical Error</source>
+        <translation>Kritischer Fehler</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <source>Unsupported format in %1</source>
+        <translation>Format nicht unterstützt in %1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation>Konnte %1 nicht speichern</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Critical Import Error</source>
+        <translation>Kritischer Fehler beim Importieren</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Cannot find the directory %1</source>
+        <translation>Konnte das Verzeichnis %1 nicht finden</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="962"/>
+        <location filename="../vymmodel.cpp" line="965"/>
+        <source>Choose directory structure to import</source>
+        <translation>Bitte Verzeichnis zum Importieren auswählen</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="999"/>
+        <source>Map seems to be already opened in another vym instance!
+
+ Map is locked by &quot;%1&quot; on &quot;%2&quot;
+
+Please only delete the lockfile, if you are sure nobody else is currently working on this map.</source>
+        <translation>Map scheint schon in einer anderen vym-Instanz geöffnet zu sein!
+
+Map ist gesperrt von &quot;%1&quot; auf &quot;%2&quot;
+
+Bitte Lockdatei nur entfernen, wenn wirklich niemand anderes diese Map momentan verwendet.</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1008"/>
+        <source>Removed lockfile for %1</source>
+        <translation>Lockdateo für %1 entfernt.</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1014"/>
+        <source>Couldn&apos;t remove lockfile for %1</source>
+        <translation>Konnte Lockdatei für %1 nicht entfernen</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1021"/>
+        <source>Cannot create lockfile of map! It will be opened in readonly mode.
+
+</source>
+        <translation>Konnte Lockdatei nicht anlegen! Map wird nur zum Lesen geöffnet.</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1024"/>
+        <source>Warning</source>
+        <comment>VymModel</comment>
+        <translation>Warnung</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1116"/>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation>Die zur Map gehörende Datei hat sich verändert:
+
+   %1
+
+Soll die Map durch die neue Datei ersetzt werden?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1123"/>
+        <source>Reload</source>
+        <translation>Neu laden</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1124"/>
+        <source>Ignore</source>
+        <translation>Ignorieren</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1013"/>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Warning</source>
+        <translation>Warnung</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <source>Redo failed:
+%1</source>
+        <translation>Wiederholen nicht fehlgeschlagen:
+%1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1274"/>
+        <source>Autosave disabled during undo.</source>
+        <translation>Autosave ausgeschaltet während der Aktion &quot;Rückgängig&quot;</translation>
+    </message>
+    <message>
+        <source>Undo failed:
+%1</source>
+        <translation type="vanished">Rückgängigmachen fehlgeschlagen:
+%1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2001"/>
+        <source>Note</source>
+        <comment>FindAll in VymModel</comment>
+        <translation>Notiz</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2725"/>
+        <source>Image</source>
+        <comment>Default name for new image</comment>
+        <translation>Bild</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2958"/>
+        <source>New map</source>
+        <comment>New map</comment>
+        <translation>Neue Map</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Script aborted:
+%1</source>
+        <translation>Skript abgebrochen:
+%1</translation>
+    </message>
+    <message>
+        <source>Export map as scalable vector graphic</source>
+        <translation type="vanished">Map als SVG exportieren</translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation type="obsolete">Neue URL:</translation>
+    </message>
+    <message>
+        <source>HTML</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">HTML</translation>
+    </message>
+    <message>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Text</translation>
+    </message>
+    <message>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Tabellendokument</translation>
+    </message>
+    <message>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Textdokument</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Bilder</translation>
+    </message>
+    <message>
+        <source>Set URL to a local file</source>
+        <translation type="obsolete">URL zu einer lokalen Datei setzen</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3822"/>
+        <source>Contacting Bugzilla...</source>
+        <comment>VymModel</comment>
+        <translation>Kontaktiere Bugzilla...</translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation type="obsolete">Verbindung zu einer anderen Map</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5185"/>
+        <source>Export map as image</source>
+        <translation>Map als Bild exportieren</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Couldn&apos;t save QImage %1 in format %2</source>
+        <translation>Konnte Bild %1 nicht im Format %2 speichern</translation>
+    </message>
+    <message>
+        <source>Exported: </source>
+        <comment>Export confirmation</comment>
+        <translation type="vanished">Exportiert:</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5225"/>
+        <source>Export map as PDF</source>
+        <translation>Als PDF exportieren</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5280"/>
+        <source>Export map as SVG</source>
+        <translation>Als SVG exportieren</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5314"/>
+        <source>Export map as XML</source>
+        <translation>Als XML exportieren</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5321"/>
+        <source>Export XML to directory</source>
+        <translation>Exportiere XML in Verzeichnis</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5367"/>
+        <source>Critical Export Error</source>
+        <translation>Kritischer Fehler beim Exportieren</translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">Exportiere als LaTeX Datei</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>(still experimental)</source>
+        <translation>(noch experimentelle Funktion)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>Export as csv</source>
+        <translation>Exportiere als CSV</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5786"/>
+        <source>Load background image</source>
+        <translation>Hintergrundbild laden</translation>
+    </message>
+</context>
+<context>
+    <name>VymProcess</name>
+    <message>
+        <location filename="../vymprocess.cpp" line="43"/>
+        <location filename="../vymprocess.cpp" line="48"/>
+        <source>Critical Error</source>
+        <translation>Kritischer Fehler</translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="44"/>
+        <source>Could not start %1</source>
+        <translation></translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="49"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation>%1 wurde nicht richtig beendet</translation>
+    </message>
+</context>
+<context>
+    <name>VymView</name>
+    <message>
+        <source>TreeEditor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation type="obsolete">TreeEditor</translation>
+    </message>
+    <message>
+        <location filename="../vymview.cpp" line="34"/>
+        <source>Tree Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation>Baum Editor</translation>
+    </message>
+    <message>
+        <location filename="../vymview.cpp" line="52"/>
+        <source>Slide Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation>Folien Editor</translation>
+    </message>
+</context>
+<context>
+    <name>WarningDialog</name>
+    <message>
+        <source>VYM - Warning : Foo...</source>
+        <translation type="obsolete">VYM - Warnung: ...</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="10"/>
+        <source>Proceed</source>
+        <translation>Weiter</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="12"/>
+        <source>Show this message again</source>
+        <translation>Diese Meldung das nächste Mal wieder zeigen</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>Dialog</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="117"/>
+        <location filename="../warningdialog.cpp" line="45"/>
+        <source>Cancel</source>
+        <translation>Abbrechen</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="124"/>
+        <source>Ok</source>
+        <translation>Ok</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="91"/>
+        <source>showAgainBox</source>
+        <translation>showAgainBox</translation>
+    </message>
+</context>
+</TS>
diff --git a/lang/vym.el.ts b/lang/vym.el.ts
new file mode 100644 (file)
index 0000000..143ae49
--- /dev/null
@@ -0,0 +1,5869 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="el_GR" sourcelanguage="en">
+<context>
+    <name></name>
+    <message>
+        <source>Ok</source>
+        <translatorcomment>AboutDialogOk Button</translatorcomment>
+        <translation type="vanished">Εντάξει</translation>
+    </message>
+    <message>
+        <source>Please use Settings-&gt;</source>
+        <translatorcomment>AboutTextBrowser</translatorcomment>
+        <translation type="vanished">Παρακαλώ χρησιμοποιήστε τις Ρυθμίσεις-&gt;</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translatorcomment>AboutTextBrowserAbout window</translatorcomment>
+        <translation type="vanished">Προειδοποίηση</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <translatorcomment>AboutTextBrowserAbout window</translatorcomment>
+        <translation type="vanished">Αδυναμία εύρεσης εφαρμογής προβολης για ανοιγμα του %1.</translation>
+    </message>
+    <message>
+        <source>Set application to open an URL...</source>
+        <translatorcomment>AboutTextBrowser</translatorcomment>
+        <translation type="vanished">Ορισμός εφαρμογης για άνοιγμα URL...</translation>
+    </message>
+    <message>
+        <source>Branch Property Editor</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Επεξεργαστής ιδιοτήτων κλαδου</translation>
+    </message>
+    <message>
+        <source>Frame</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Πλαίσιο</translation>
+    </message>
+    <message>
+        <source>Geometry</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Γεωμετρία</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Χωρίς πλαίσιο</translation>
+    </message>
+    <message>
+        <source>Rectangle</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Ορθογώνιο</translation>
+    </message>
+    <message>
+        <source>Rounded Rectangle</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Ορθογώνιο με καμπύλες γωνίες</translation>
+    </message>
+    <message>
+        <source>Ellipse</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Έλλειψη</translation>
+    </message>
+    <message>
+        <source>Cloud</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Σύννεφο</translation>
+    </message>
+    <message>
+        <source>Padding</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Γέμισμα</translation>
+    </message>
+    <message>
+        <source>Borderline width</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Πλάτος περιγράμματος</translation>
+    </message>
+    <message>
+        <source>Include children</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Ένταξη απόγονου</translation>
+    </message>
+    <message>
+        <source>Colors</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Χρώματα</translation>
+    </message>
+    <message>
+        <source>Borderline color</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Χρώμα περιγράμματος</translation>
+    </message>
+    <message>
+        <source>Background color</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Χρώμα παρασκηνίου</translation>
+    </message>
+    <message>
+        <source>Layout</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Διάταξη</translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Περιλαμβάνει εικόνες οριζόντια</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Περιλαμβάνει εικόνες κάθετα</translation>
+    </message>
+    <message>
+        <source>Free positioning of children (experimental!)</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Ελεύθερη τοποθέτηση απόγονων (πειραματική λειτουργία)</translation>
+    </message>
+    <message>
+        <source>Link</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Σύνδεσμος</translation>
+    </message>
+    <message>
+        <source>Hide link if unselected</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Απόκρυψη συνδέσμου εάν δεν είναι επιλεγμένος</translation>
+    </message>
+    <message>
+        <source>Attributes</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">Χαρακτηριστικά</translation>
+    </message>
+    <message>
+        <source>+</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">+</translation>
+    </message>
+    <message>
+        <source>-</source>
+        <translatorcomment>BranchPropertyEditor</translatorcomment>
+        <translation type="vanished">-</translation>
+    </message>
+    <message>
+        <source>Property Editor</source>
+        <translatorcomment>BranchPropertyEditorWindow caption</translatorcomment>
+        <translation type="vanished">Επεξεργαστής ιδιοτήτων</translation>
+    </message>
+    <message>
+        <source>warning</source>
+        <translatorcomment>DownloadAgent</translatorcomment>
+        <translation type="vanished">προειδοποίηση</translation>
+    </message>
+    <message>
+        <source>Edit XLink</source>
+        <translatorcomment>EditXLinkDialog</translatorcomment>
+        <translation type="vanished">Επεξεργασία:XLink</translation>
+    </message>
+    <message>
+        <source>Arrow begin:</source>
+        <translatorcomment>EditXLinkDialog</translatorcomment>
+        <translation type="vanished">Έναρξη βέλους:</translation>
+    </message>
+    <message>
+        <source>XLink width:</source>
+        <translatorcomment>EditXLinkDialog</translatorcomment>
+        <translation type="vanished">Πλατος XLink:</translation>
+    </message>
+    <message>
+        <source>Use color of heading</source>
+        <translatorcomment>EditXLinkDialog</translatorcomment>
+        <translation type="vanished">Χρήση χρώματος κεφαλίδας</translation>
+    </message>
+    <message>
+        <source>Line style:</source>
+        <translatorcomment>EditXLinkDialog</translatorcomment>
+        <translation type="vanished">Στυλ γραμμής:</translation>
+    </message>
+    <message>
+        <source>Arrow end:</source>
+        <translatorcomment>EditXLinkDialog</translatorcomment>
+        <translation type="vanished">Τέλος βέλους:</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translatorcomment>EditXLinkDialog</translatorcomment>
+        <translation type="vanished">Κλείσιμο</translation>
+    </message>
+    <message>
+        <source>XLink color:</source>
+        <translatorcomment>EditXLinkDialog</translatorcomment>
+        <translation type="vanished">Χρώμα XLink:</translation>
+    </message>
+    <message>
+        <source>Use as default:</source>
+        <translatorcomment>EditXLinkDialog</translatorcomment>
+        <translation type="vanished">Χρήση ως προκαθορισμένου:</translation>
+    </message>
+    <message>
+        <source>Export HTML</source>
+        <translatorcomment>ExportHTMLDialog</translatorcomment>
+        <translation type="vanished">Εξαγωγή ως HTML</translation>
+    </message>
+    <message>
+        <source>Export to directory:</source>
+        <translatorcomment>ExportHTMLDialog</translatorcomment>
+        <translation type="vanished">Εξαγωγή σε φάκελο:</translation>
+    </message>
+    <message>
+        <source>Browse</source>
+        <translatorcomment>ExportHTMLDialog</translatorcomment>
+        <translation type="vanished">Περιήγηση</translation>
+    </message>
+    <message>
+        <source>Options</source>
+        <translatorcomment>ExportHTMLDialog</translatorcomment>
+        <translation type="vanished">Επιλογές</translation>
+    </message>
+    <message>
+        <source>Image of map</source>
+        <translatorcomment>ExportHTMLDialog</translatorcomment>
+        <translation type="vanished">Εικόνα διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Table of contents</source>
+        <translatorcomment>ExportHTMLDialog</translatorcomment>
+        <translation type="vanished">Πίνακας περιεχομένων</translation>
+    </message>
+    <message>
+        <source>Task flags</source>
+        <translatorcomment>ExportHTMLDialog</translatorcomment>
+        <translation type="vanished">Σημαίες εργασιών</translation>
+    </message>
+    <message>
+        <source>General flags</source>
+        <translatorcomment>ExportHTMLDialog</translatorcomment>
+        <translation type="vanished">Γενικές σημαίες</translation>
+    </message>
+    <message>
+        <source>Number sections</source>
+        <translatorcomment>ExportHTMLDialog</translatorcomment>
+        <translation type="vanished">Τομείς αριθμών</translation>
+    </message>
+    <message>
+        <source>Copy CSS from </source>
+        <translatorcomment>ExportHTMLDialog</translatorcomment>
+        <translation type="vanished">Αντιγραφή CSS από</translation>
+    </message>
+    <message>
+        <source>Use CSS from</source>
+        <translatorcomment>ExportHTMLDialog</translatorcomment>
+        <translation type="vanished">Χρήση CSS από</translation>
+    </message>
+    <message>
+        <source>Colored headings in text</source>
+        <translatorcomment>ExportHTMLDialog</translatorcomment>
+        <translation type="vanished">Χρωματιστές κεφαλίδες στο κείμενο</translation>
+    </message>
+    <message>
+        <source>Save settings in map</source>
+        <translatorcomment>ExportHTMLDialog</translatorcomment>
+        <translation type="vanished">Αποθήκευση ρυθμίσεων διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Stylesheets</source>
+        <translatorcomment>ExportHTMLDialog</translatorcomment>
+        <translation type="vanished">Φύλλα δεδομένων</translation>
+    </message>
+    <message>
+        <source>Scripts</source>
+        <translatorcomment>ExportHTMLDialog</translatorcomment>
+        <translation type="vanished">Σενάρια</translation>
+    </message>
+    <message>
+        <source>After Export:</source>
+        <translatorcomment>ExportHTMLDialog</translatorcomment>
+        <translation type="vanished">Μετά την εξαγωγή:</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translatorcomment>ExportHTMLDialog</translatorcomment>
+        <translation type="vanished">Άκυρο</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <translatorcomment>ExportHTMLDialog</translatorcomment>
+        <translation type="vanished">Εξαγωγή</translation>
+    </message>
+    <message>
+        <source>The settings saved in the map would like to run script:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translatorcomment>ExportHTMLDialog</translatorcomment>
+        <translation type="vanished">Οι ρυθμίσεις που αποθηκεύτηκαν στο διάγραμμα,
+προδιαγράφουν την εκτέλεση του σεναρίου:
+
+%1
+
+Παρακαλώ, σκεφτείτε εάν πραγματικά
+επιτρέπετε να γίνει αυτό στον υπολογιστή σας!</translation>
+    </message>
+    <message>
+        <source>VYM - Export HTML to directory</source>
+        <translatorcomment>ExportHTMLDialog</translatorcomment>
+        <translation type="vanished">VYM - Εξαγωγή HTML στον φάκελο</translation>
+    </message>
+    <message>
+        <source>VYM - Info</source>
+        <translatorcomment>ExtraInfoDialog</translatorcomment>
+        <translation type="vanished">VYM - Πληροφορίες</translation>
+    </message>
+    <message>
+        <source>Map:</source>
+        <translatorcomment>ExtraInfoDialog</translatorcomment>
+        <translation type="vanished">Διάγραμμα:</translation>
+    </message>
+    <message>
+        <source>Title:</source>
+        <translatorcomment>ExtraInfoDialog</translatorcomment>
+        <translation type="vanished">Τίτλος:</translation>
+    </message>
+    <message>
+        <source>Author:</source>
+        <translatorcomment>ExtraInfoDialog</translatorcomment>
+        <translation type="vanished">Δημιουργός:</translation>
+    </message>
+    <message>
+        <source>Comment:</source>
+        <translatorcomment>ExtraInfoDialog</translatorcomment>
+        <translation type="vanished">Σχόλιο:</translation>
+    </message>
+    <message>
+        <source>Statistics:</source>
+        <translatorcomment>ExtraInfoDialog</translatorcomment>
+        <translation type="vanished">Στατιστικά:</translation>
+    </message>
+    <message>
+        <source>Find:</source>
+        <translatorcomment>FindWidgetFindWidget</translatorcomment>
+        <translation type="vanished">Εύρεση:</translation>
+    </message>
+    <message>
+        <source>New map</source>
+        <translatorcomment>Heading of mapcenter in new map</translatorcomment>
+        <translation type="vanished">Νέο διάγραμμα</translation>
+    </message>
+    <message>
+        <source>Heading Editor</source>
+        <translatorcomment>HeadingEditorWindow caption</translatorcomment>
+        <translation type="vanished">Επεξεργαστής κεφαλίδας</translation>
+    </message>
+    <message>
+        <source>Dialog</source>
+        <translatorcomment>HistoryWindow</translatorcomment>
+        <translation type="vanished">Παράθυρο</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translatorcomment>HistoryWindow</translatorcomment>
+        <translation type="vanished">Ακύρωση αναίρεσης</translation>
+    </message>
+    <message>
+        <source>Time</source>
+        <translatorcomment>HistoryWindow</translatorcomment>
+        <translation type="vanished">Χρόνος</translation>
+    </message>
+    <message>
+        <source>Comment</source>
+        <translatorcomment>HistoryWindow</translatorcomment>
+        <translation type="vanished">Σχόλιο</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <translatorcomment>HistoryWindow</translatorcomment>
+        <translation type="vanished">Αναίρεση</translation>
+    </message>
+    <message>
+        <source>Action</source>
+        <translatorcomment>HistoryWindowTable with actions</translatorcomment>
+        <translation type="vanished">Ενέργεια</translation>
+    </message>
+    <message>
+        <source>Undo action</source>
+        <translatorcomment>HistoryWindowTable with actions</translatorcomment>
+        <translation type="vanished">Αναίρεση ενέργειας</translation>
+    </message>
+    <message>
+        <source>Current state</source>
+        <translatorcomment>HistoryWindowCurrent bar in history hwindow</translatorcomment>
+        <translation type="vanished">Τρέχουσα κατάσταση</translation>
+    </message>
+    <message>
+        <source>TextLabel</source>
+        <translatorcomment>LineEditDialog</translatorcomment>
+        <translation type="vanished">Ετικέτα κειμένου</translation>
+    </message>
+    <message>
+        <source>Set &amp;Color</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Ορισμός &amp;χρώματος</translation>
+    </message>
+    <message>
+        <source>Linkstyle Line</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Μορφή γραμμών: γραμμή</translation>
+    </message>
+    <message>
+        <source>Linkstyle Thick Line</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Μορφή γραμμών: παχιά γραμμή</translation>
+    </message>
+    <message>
+        <source>&amp;View</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">&amp;Προβολή</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Αντικατάσταση</translation>
+    </message>
+    <message>
+        <source>Open anyway</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Άνοιγμα οπωσδήποτε</translation>
+    </message>
+    <message>
+        <source>Create</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Δημιουργία</translation>
+    </message>
+    <message>
+        <source>Load vym map</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Φόρτωση διαγράμματος VYM</translation>
+    </message>
+    <message>
+        <source>Import: Add vym map to selection</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Εισαγωγή: Προσθήκη διαγράμματος VYM στην επιλογή</translation>
+    </message>
+    <message>
+        <source>Import: Replace selection with vym map</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Εισαγωγή: Αντικατάσταση επιλογής με διάγραμμα VYM</translation>
+    </message>
+    <message>
+        <source>Save modified map before closing it</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Αποθήκευση τροποποιημένου διαγράμματος πριν το κλείσιμο</translation>
+    </message>
+    <message>
+        <source>Discard changes</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Απόρριψη αλλαγών</translation>
+    </message>
+    <message>
+        <source>Enter sleep time (number of days or date YYYY-MM-DD or DD.MM[.YYYY]</source>
+        <translatorcomment>Maintask sleep time dialog</translatorcomment>
+        <translation type="vanished">Καταχωρίστε χρόνο ύπνου (αριθμό ημερών ή ημερομηνία YYYY-MM-DD ή DD.MM[.YYYY]</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t set sleep time to %1.
+</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Αδυναμία ορισμού χρόνου ύπνου σε %1.</translation>
+    </message>
+    <message>
+        <source>VYM -Information:</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Πληροφορίες για το VYM:</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Κρίσιμο σφάλμα</translation>
+    </message>
+    <message>
+        <source>Export in last used format (%1) to: %2</source>
+        <translatorcomment>Mainstatus tip</translatorcomment>
+        <translation type="vanished">Εξαγωγή στη τελευταία χρησιμοποιούμενη μορφή (%1) σε: %2</translation>
+    </message>
+    <message>
+        <source>Critcal error</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Κρίσιμο σφάλμα</translation>
+    </message>
+    <message>
+        <source>Add</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Προσθήκη</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Επεξεργαστής σημειώσεων</translation>
+    </message>
+    <message>
+        <source>Search results list</source>
+        <translatorcomment>MainFindResultWidget</translatorcomment>
+        <translation type="vanished">Αναζήτηση στη λίστα αποτελεσμάτων</translation>
+    </message>
+    <message>
+        <source>File actions toolbar</source>
+        <translatorcomment>MainToolbar for file actions</translatorcomment>
+        <translation type="vanished">Βασικά εργαλεία για τα αρχεία</translation>
+    </message>
+    <message>
+        <source>PDF%1</source>
+        <translatorcomment>MainFile export menu</translatorcomment>
+        <translation type="vanished">PDF%1</translation>
+    </message>
+    <message>
+        <source>SVG%1</source>
+        <translatorcomment>MainFile export menu</translatorcomment>
+        <translation type="vanished">SVG%1</translation>
+    </message>
+    <message>
+        <source>Repeat last export (%1)</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Επανάληψη τελευταίας εξαγωγής (%1)</translation>
+    </message>
+    <message>
+        <source>KDE 4 Bookmarks</source>
+        <translatorcomment>MainFile menu</translatorcomment>
+        <translation type="vanished">Σελιδοδείκτες KDE 4</translation>
+    </message>
+    <message>
+        <source>Edit actions toolbar</source>
+        <translatorcomment>MainToolbar name</translatorcomment>
+        <translation type="vanished">Εργαλειοθήκη επεξεργασίας</translation>
+    </message>
+    <message>
+        <source>Add attribute</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Προσθήκη ιδιότητας</translation>
+    </message>
+    <message>
+        <source>&amp;Detach</source>
+        <translatorcomment>MainContext menu</translatorcomment>
+        <translation type="vanished">&amp;Αποσύνδεση</translation>
+    </message>
+    <message>
+        <source>Detach branch and use as mapcenter</source>
+        <translatorcomment>MainContext menu</translatorcomment>
+        <translation type="vanished">Αποσύνδεση κλάδου και χρήση του ως κέντρου διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Sort children backwards</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Ταξινόμηση απόγονων κόμβων προς τα πίσω</translation>
+    </message>
+    <message>
+        <source>Expand all branches</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Ανάπτυξη όλων των κλάδων</translation>
+    </message>
+    <message>
+        <source>Expand one level</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Ανάπτυξη ενός επιπέδου</translation>
+    </message>
+    <message>
+        <source>Collapse one level</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Αναδίπλωση ενός επιπέδου</translation>
+    </message>
+    <message>
+        <source>Collapse unselected levels</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Αναδίπλωση μη επιλεγμένων επιπέδων</translation>
+    </message>
+    <message>
+        <source>Unscroll children</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Απόγονος χωρίς κύλιση</translation>
+    </message>
+    <message>
+        <source>Grow selection</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Μεγέθυνση επιλογής</translation>
+    </message>
+    <message>
+        <source>Shrink selection</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Συρρίκνωση επιλογής</translation>
+    </message>
+    <message>
+        <source>Reset selection size</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Επαναφορά μεγέθους της επιλογής</translation>
+    </message>
+    <message>
+        <source>Toggle target...</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Εναλλαγή στόχου...</translation>
+    </message>
+    <message>
+        <source>Goto target...</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Μετάβαση στον στόχο...</translation>
+    </message>
+    <message>
+        <source>Move to target...</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Μετακίνηση προς τον στόχο...</translation>
+    </message>
+    <message>
+        <source>Find duplicate URLs</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Εύρεση διπλότυπων URLs</translation>
+    </message>
+    <message>
+        <source>Open all URLs in subtree (including scrolled branches)</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Άνοιγμα όλων των URLs σε υποδιάγραμμα (συμπεριλαμβανομένων των κυλιόμενων κόμβων)</translation>
+    </message>
+    <message>
+        <source>Extract URLs from note</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Εξαγωγή URLs από σημείωση</translation>
+    </message>
+    <message>
+        <source>Add timestamp</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Προσθήκη χρονοσήμανσης</translation>
+    </message>
+    <message>
+        <source>Remove children</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Αφαίρεση απόγονου κόμβου</translation>
+    </message>
+    <message>
+        <source>Zoom toolbar</source>
+        <translatorcomment>MainView Toolbar name</translatorcomment>
+        <translation type="vanished">Εργαλειοθήκη εστίασης</translation>
+    </message>
+    <message>
+        <source>Center on selection</source>
+        <translatorcomment>MainView action</translatorcomment>
+        <translation type="vanished">Κέντρο της επιλογής</translation>
+    </message>
+    <message>
+        <source>Editors toolbar</source>
+        <translatorcomment>MainEditor Toolbar name</translatorcomment>
+        <translation type="vanished">Εργαλειοθήκη επεξεργαστών</translation>
+    </message>
+    <message>
+        <source>Modifier modes toolbar</source>
+        <translatorcomment>MainModifier Toolbar name</translatorcomment>
+        <translation type="vanished">Εργαλειοθήκη μετατροπέα κατάστασης</translation>
+    </message>
+    <message>
+        <source>URL to Bugzilla </source>
+        <translatorcomment>MainSystemFlag</translatorcomment>
+        <translation type="vanished">URL για το Bugzilla</translation>
+    </message>
+    <message>
+        <source>Standard Flags toolbar</source>
+        <translatorcomment>MainStandard Flag Toolbar</translatorcomment>
+        <translation type="vanished">Εργαλειοθήκη κανονικων σημαιών</translation>
+    </message>
+    <message>
+        <source>Status - ok,done</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Κατάσταση - εντάξει, ολοκληρώθηκε</translation>
+    </message>
+    <message>
+        <source>Status - work in progress</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Κατάσταση - εργασία σε εξέλιξη</translation>
+    </message>
+    <message>
+        <source>Status - missing, not started</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Κατάσταση - δεν έχει ξεκινήσει</translation>
+    </message>
+    <message>
+        <source>forward</source>
+        <translatorcomment>MainFreemind-Flag</translatorcomment>
+        <translation type="vanished">εμπρός</translation>
+    </message>
+    <message>
+        <source>Don&apos;t flagrget</source>
+        <translatorcomment>MainFreemind-Flag</translatorcomment>
+        <translation type="vanished">Στόχος χωρίς σημαία</translation>
+    </message>
+    <message>
+        <source>Automatic layout</source>
+        <translatorcomment>MainSettings action</translatorcomment>
+        <translation type="vanished">Αυτόματη διάταξη</translation>
+    </message>
+    <message>
+        <source>Test</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Δοκιμή</translation>
+    </message>
+    <message>
+        <source>Follow XLink</source>
+        <translatorcomment>MainContext menu</translatorcomment>
+        <translation type="vanished">Παρακολούθηση XLink</translation>
+    </message>
+    <message>
+        <source>unnamed</source>
+        <translatorcomment>MainMainWindow: name for new and empty file</translatorcomment>
+        <translation type="vanished">χωρίς όνομα</translation>
+    </message>
+    <message>
+        <source>The map %1
+is already opened.Opening the same map in multiple editors may lead 
+to confusion when finishing working with vym.Do you want to</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Το διάγραμμα %1
+είναι ήδη ανοιχτό. Το άνοιγμα ενός διαγράμματος σε πολλαπλούς επεξεργαστές είναι
+πιθανόν να οδηγήσει σε σύγχυση όταν ολοκληρωθεί η εργασία στο VYM. Τι θελετε
+να κάνετε;</translation>
+    </message>
+    <message>
+        <source>This map does not exist:
+  %1
+Do you want to create a new one?</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Αυτό το διάγραμμα δεν υπάρχει:
+  %1
+Θέλετε να δημιουργήσετε ένα νέο;</translation>
+    </message>
+    <message>
+        <source>Loading: %1</source>
+        <translatorcomment>MainProgress dialog while loading maps</translatorcomment>
+        <translation type="vanished">Φόρτωση: %1</translation>
+    </message>
+    <message>
+        <source>Saved  %1</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Αποθηκεύτηκε: %1</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save </source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Δεν αποθηκεύτηκε</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already. Do you want to</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Το αρχείο %1 υπάρχει ήδη.
+Θέλετε να αντικατασταθεί;</translation>
+    </message>
+    <message>
+        <source>The map %1 has been modified but not saved yet. Do you want to</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Το διάγραμμα %1 έχει τροποποιηθεί, αλλά δεν
+έχει ακόμη αποθηκευτεί. Τι θέλετε να γίνει;</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open map %1</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Αδυναμία ανοίγματος του διαγράμματος %1</translation>
+    </message>
+    <message>
+        <source>Take care!</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Προσοχή!</translation>
+    </message>
+    <message>
+        <source>Really?</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Αλήθεια;</translation>
+    </message>
+    <message>
+        <source>This won&apos;t work!</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Αυτό δεν λειτουργεί!</translation>
+    </message>
+    <message>
+        <source>Good</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Ευχαρίστηση</translation>
+    </message>
+    <message>
+        <source>Bad</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Δυσαρέσκεια</translation>
+    </message>
+    <message>
+        <source>Time critical</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Ο χρόνος είναι σημαντικός</translation>
+    </message>
+    <message>
+        <source>Idea!</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Ιδέα!</translation>
+    </message>
+    <message>
+        <source>Important</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Σημαντικό</translation>
+    </message>
+    <message>
+        <source>Unimportant</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Ασήμαντο</translation>
+    </message>
+    <message>
+        <source>I like this</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Μου αρέσει</translation>
+    </message>
+    <message>
+        <source>I do not like this</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Δεν μου αρέσει</translation>
+    </message>
+    <message>
+        <source>Dangerous</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Επικίνδυνο</translation>
+    </message>
+    <message>
+        <source>This will help</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Αυτό θα βοηθήσει</translation>
+    </message>
+    <message>
+        <source>Import</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Εισαγωγή</translation>
+    </message>
+    <message>
+        <source>(still experimental)</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">(σε πειραματική λειτουργία)</translation>
+    </message>
+    <message>
+        <source>&amp;Print</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">&amp;Εκτύπωση</translation>
+    </message>
+    <message>
+        <source>Export to</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Εξαγωγή σε</translation>
+    </message>
+    <message>
+        <source>Set application to open an URL</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Ορισμός μιας εφαρμογής για άνοιγμα URL</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start %1 to open a new tab in %2.</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Αδυναμία έναρξης %1 για άνοιγμα νέας καρτέλας %2.</translation>
+    </message>
+    <message>
+        <source>Set application to open PDF files</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Ορισμός εφαρμογής για άνοιγμα αρχείων PDF</translation>
+    </message>
+    <message>
+        <source>Oh no!</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Ωχ, όχι!</translation>
+    </message>
+    <message>
+        <source>Call...</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Κλήση...</translation>
+    </message>
+    <message>
+        <source>Very important!</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Πολύ σημαντικό!</translation>
+    </message>
+    <message>
+        <source>Very unimportant!</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Πολύ ασήμαντο!</translation>
+    </message>
+    <message>
+        <source>Rose</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Τριαντάφυλλο</translation>
+    </message>
+    <message>
+        <source>Surprise!</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Έκπληξη!</translation>
+    </message>
+    <message>
+        <source>Info</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Πληροφορίες</translation>
+    </message>
+    <message>
+        <source>Bookmarks</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Σελιδοδείκτες</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find configuration for export to Open Office
+</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Αδυναμία εύρεσης ρυθμίσεων για εξαγωγή σε αρχείο Open Office</translation>
+    </message>
+    <message>
+        <source>Script Editor</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Επεξεργαστής σεναρίων</translation>
+    </message>
+    <message>
+        <source>Main window</source>
+        <translatorcomment>MainShortcut scope</translatorcomment>
+        <translation type="vanished">Κύριο παράθυρο</translation>
+    </message>
+    <message>
+        <source>Task list</source>
+        <translatorcomment>MainTaskEditor</translatorcomment>
+        <translation type="vanished">Λίστα εργασιών</translation>
+    </message>
+    <message>
+        <source>Map Editors</source>
+        <translatorcomment>MainShortcut group</translatorcomment>
+        <translation type="vanished">Επεξεργαστές διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Text Editors</source>
+        <translatorcomment>MainShortcut group</translatorcomment>
+        <translation type="vanished">Επεξεργαστές κειμένου</translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <translatorcomment>MainMenu for file actions</translatorcomment>
+        <translation type="vanished">&amp;Διάγραμμα</translation>
+    </message>
+    <message>
+        <source>&amp;Open...</source>
+        <translatorcomment>MainFile menu</translatorcomment>
+        <translation type="vanished">&amp;Άνοιγμα...</translation>
+    </message>
+    <message>
+        <source>&amp;Restore last session</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">&amp;Επαναφορά τελευταίας συνεδρίας</translation>
+    </message>
+    <message>
+        <source>Open Recent</source>
+        <translatorcomment>MainFile menu</translatorcomment>
+        <translation type="vanished">Άνοιγμα πρόσφατου αρχείου</translation>
+    </message>
+    <message>
+        <source>&amp;Save...</source>
+        <translatorcomment>MainFile menu</translatorcomment>
+        <translation type="vanished">&amp;Αποθήκευση...
+&amp;Αποθήκευση ως...</translation>
+    </message>
+    <message>
+        <source>Save &amp;As...</source>
+        <translatorcomment>MainFile menu</translatorcomment>
+        <translation type="vanished">Αποθήκευση &amp;ως...</translation>
+    </message>
+    <message>
+        <source>Image%1</source>
+        <translatorcomment>MainFile export menu</translatorcomment>
+        <translation type="vanished">Εικόνα%1</translation>
+    </message>
+    <message>
+        <source>&amp;Close Map</source>
+        <translatorcomment>MainFile menu</translatorcomment>
+        <translation type="vanished">&amp;Κλείσιμο διαγράμματος</translation>
+    </message>
+    <message>
+        <source>E&amp;xit</source>
+        <translatorcomment>MainFile menu</translatorcomment>
+        <translation type="vanished">Έ&amp;ξοδος</translation>
+    </message>
+    <message>
+        <source>&amp;Undo</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">&amp;Αναίρεση</translation>
+    </message>
+    <message>
+        <source>&amp;Redo</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">&amp;Ακύρωση αναίρεσης</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">&amp;Αντιγραφή</translation>
+    </message>
+    <message>
+        <source>Cu&amp;t</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Αποκο&amp;πή</translation>
+    </message>
+    <message>
+        <source>&amp;Paste</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">&amp;Επικόλληση</translation>
+    </message>
+    <message>
+        <source>Delete Selection</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Διαγραφή επιλογής</translation>
+    </message>
+    <message>
+        <source>Add branch as child</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Προσθήκη κλάδου ως απόγονου</translation>
+    </message>
+    <message>
+        <source>Add branch (insert)</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Προσθήκη κλάδου (εισαγωγή)</translation>
+    </message>
+    <message>
+        <source>Add branch above</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Προσθήκη κλάδου επάνω</translation>
+    </message>
+    <message>
+        <source>Add branch below</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Προσθήκη κλάδου κάτω</translation>
+    </message>
+    <message>
+        <source>Move up</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Μετακίνηση επάνω</translation>
+    </message>
+    <message>
+        <source>Move down</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Μετακίνηση κάτω</translation>
+    </message>
+    <message>
+        <source>Scroll branch</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Κύλιση κλάδου</translation>
+    </message>
+    <message>
+        <source>References Context menu</source>
+        <translatorcomment>MainShortcuts</translatorcomment>
+        <translation type="vanished">Μενού παραπομπών</translation>
+    </message>
+    <message>
+        <source>Bugzilla handling</source>
+        <translatorcomment>MainShortcuts</translatorcomment>
+        <translation type="vanished">Χειρισμός Bugzilla</translation>
+    </message>
+    <message>
+        <source>Create URL to SUSE Bugzilla</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Δημιουργία URL για το SUSE Bugzilla</translation>
+    </message>
+    <message>
+        <source>Get data from SUSE Bugzilla</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Λήψη δεδομένων από το SUSE Bugzilla</translation>
+    </message>
+    <message>
+        <source>Get data from SUSE Bugzilla for subtree</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Λήψη δεδομένων από το SUSE Bugzilla για το υπο-δέντρο</translation>
+    </message>
+    <message>
+        <source>SUSE Fate tool handling</source>
+        <translatorcomment>MainShortcuts</translatorcomment>
+        <translation type="vanished">Εργαλείο χειρισμού SUSE</translation>
+    </message>
+    <message>
+        <source>Create URL to SUSE FATE tool</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Δημιουργία URL προς το εργαλείο χειρισμού SUSE</translation>
+    </message>
+    <message>
+        <source>vymlinks - linking maps</source>
+        <translatorcomment>MainShortcuts</translatorcomment>
+        <translation type="vanished">Σύνδεσμοι VYM - σύνδεση διαγραμμάτων</translation>
+    </message>
+    <message>
+        <source>Exports</source>
+        <translatorcomment>MainShortcuts</translatorcomment>
+        <translation type="vanished">Εξαγωγές</translation>
+    </message>
+    <message>
+        <source>Tasks</source>
+        <translatorcomment>MainShortcuts</translatorcomment>
+        <translation type="vanished">Εργασίες</translation>
+    </message>
+    <message>
+        <source>Toggle task</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Εναλλαγή εργασιών</translation>
+    </message>
+    <message>
+        <source>Cycle task status</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Κατάσταση κυκλικής εργασίας</translation>
+    </message>
+    <message>
+        <source>Reset sleep</source>
+        <translatorcomment>MainTask sleep</translatorcomment>
+        <translation type="vanished">Επαναφορά ύπνου</translation>
+    </message>
+    <message>
+        <source>Sleep %1 days</source>
+        <translatorcomment>MainTask sleep</translatorcomment>
+        <translation type="vanished">Ύπνος για %1 ημέρες</translation>
+    </message>
+    <message>
+        <source>Sleep %1 day</source>
+        <translatorcomment>MainTask sleep</translatorcomment>
+        <translation type="vanished">Ύπνος για %1 ημέρα</translation>
+    </message>
+    <message>
+        <source>Sleep %1 weeks</source>
+        <translatorcomment>MainTask sleep</translatorcomment>
+        <translation type="vanished">Ύπνος για %1 εβδομάδες</translation>
+    </message>
+    <message>
+        <source>Removing parts of a map</source>
+        <translatorcomment>MainShortcuts</translatorcomment>
+        <translation type="vanished">Αφαίρεση τμημάτων του διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Various</source>
+        <translatorcomment>MainShortcuts</translatorcomment>
+        <translation type="vanished">Ποικίλα</translation>
+    </message>
+    <message>
+        <source>Add   ...</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Προσθήκη...</translation>
+    </message>
+    <message>
+        <source>Selections</source>
+        <translatorcomment>MainShortcuts</translatorcomment>
+        <translation type="vanished">Επιλογές</translation>
+    </message>
+    <message>
+        <source>Select</source>
+        <translatorcomment>MainSelect menu</translatorcomment>
+        <translation type="vanished">Επιλογή</translation>
+    </message>
+    <message>
+        <source>Search functions</source>
+        <translatorcomment>MainShortcuts</translatorcomment>
+        <translation type="vanished">Αναζήτηση λειτουργιών</translation>
+    </message>
+    <message>
+        <source>Find...</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Εύρεση...</translation>
+    </message>
+    <message>
+        <source>Please allow vym to download release notes!</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Παρακαλώ επιτρέψτε στο VYM να κάνει λήψη των σημειώσεων έκδοσης!</translation>
+    </message>
+    <message>
+        <source>&lt;html&gt;&lt;h3&gt;Do you allow vym to check online for updates or release notes?&lt;/h3&gt;If you allow, vym will &lt;ul&gt;&lt;li&gt;check once for release notes&lt;/li&gt;&lt;li&gt;check regulary for updates and notify you in case you should update, e.g. if there are important bug fixes available&lt;/li&gt;&lt;li&gt;receive a cookie with a random ID and send vym version and platform name and the ID  (e.g. &quot;Windows&quot; or &quot;Linux&quot;) back to me, Uwe Drechsel.&lt;p&gt;As vym developer I am motivated to see many people using vym. Of course I am curious to see, on which system vym is used. Maintaining each of the systems requires a lot of my (spare) time.&lt;/p&gt; &lt;p&gt;No other data than above will be sent, especially no private data will be collected or sent.(Check the source code, if you don&apos;t believe.)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;If you do not allow, &lt;ul&gt;&lt;li&gt;nothing will be downloaded and especially I will &lt;b&gt;not be motivated&lt;/b&gt; to spend some more thousands of hours on developing a free software tool.&lt;/ul&gt;Please allow vym to check for updates :-)</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">&lt;html&gt;&lt;h3&gt;Επιτρέπετε στο VYM να ελέγχει για ενημερώσεις ή πληροφορίες εκδόσεων;&lt;/h3&gt;Εάν το επιτρέπετε, το VYM θα &lt;ul&gt;&lt;li&gt;κάνει μια φορά έλεγχο για πληροφορίες έκδοσης&lt;/li&gt;&lt;li&gt;, θα ελέγχει τακτικά για ενημερώσεις και θα σας ενημερώνει σε περίπτωση που θα πρέπει να κάνετε ενημέρωση, π.χ. αν υπάρχουν διαθέσιμες διορθώσεις σφαλμάτων &lt;/li&gt;&lt;li&gt;ένα cookie με τυχαίο ID θα στέλνει την έκδοση του VYM, τον τύπο του λειτουργικού συστήματος και το ID του (π.χ. &quot;Windows&quot; or &quot;Linux&quot;) στον Uwe Drechsel.&lt;p&gt;Ως δημιουργός του VYM θα ήθελα να δω ολοένα και περισσότερους ανθρώπους να το χρησιμοποιούν. Επίσης, θα ήθελα να γνωρίζω σε ποια λειτουργικά συστήματα εκτελείται η εφαρμογή αυτή. Η στήριξη που θα πρέπει να παρέχω για καθένα σύστημα απαιτεί πολύ προσωπικό χρόνο.&lt;/p&gt; &lt;p&gt;Καμμιά άλλη πληροφορία ή δεδομένο δεν θα φτάνει σε μένα, όπως επίσης δεν θα λαμβάνω και δεν θα συλλέγω κανένα προσωπικό δεδομένο. (Μπορείτε να διασταυρώσετε τον ισχυρισμό μου ελέγχοντας τον πηγαίο κώδικα της εφαρμογής. &lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;Εάν δεν το επιτρέπετε, &lt;ul&gt;&lt;li&gt;δεν θα γίνεται λήψη καμιάς πληροφορίας και, επίσης, &lt;b&gt;δεν θα έχω κίνητρο&lt;/b&gt; να διαθέσω χρόνο για την ανάπτυξη της εφαρμογής.&lt;/ul&gt;Παρακαλώ, να επιτρέψετε στο VYM να κάνει έλεγχο ενημερώσεων :-)</translation>
+    </message>
+    <message>
+        <source>Allow</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Επιτρέπεται</translation>
+    </message>
+    <message>
+        <source>Do not allow</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Δεν επιτρέπεται</translation>
+    </message>
+    <message>
+        <source>Thank you for enabling downloads!</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Ευχαριστούμε που ενεργοποιήσατε τις λήψεις!</translation>
+    </message>
+    <message>
+        <source>vym updates are available, please update e.g. from
+http://sourceforge.net/projects/vym</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Ενημερώσεις για το VYM είναι διαθέσιμες. Παρακαλώ, προβείτε σε 
+ενημέρωση από τον ιστοτοπο http://sourceforge.net/projects/vym
+</translation>
+    </message>
+    <message>
+        <source>vym is up to date.</source>
+        <translatorcomment>MainMainWindow</translatorcomment>
+        <translation type="vanished">Το VYM είναι ενημερωμένο.</translation>
+    </message>
+    <message>
+        <source>Update check results</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Αποτελέσματα ελέγχου για ενημερώσεις</translation>
+    </message>
+    <message>
+        <source>vym is up to date!</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Το VYM είναι ενημερωμένο!</translation>
+    </message>
+    <message>
+        <source>Checking for updates...</source>
+        <translatorcomment>MainMainWindow</translatorcomment>
+        <translation type="vanished">Έλεγχος για ενημερώσεις...</translation>
+    </message>
+    <message>
+        <source>Please allow vym to check for updates!</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Παρακαλώ, να επιτρέψετε στο VYM να κάνει έλεγχο ενημερώσεων!</translation>
+    </message>
+    <message>
+        <source>Open URL</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Άνοιγμα URL</translation>
+    </message>
+    <message>
+        <source>Open URL in new tab</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Άνοιγμα URL σε νέα καρτέλα</translation>
+    </message>
+    <message>
+        <source>Open all URLs in subtree</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Άνοιγμα όλων των URLs σε υπο-δέντρο</translation>
+    </message>
+    <message>
+        <source>Edit URL...</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Επεξεργασία URL...</translation>
+    </message>
+    <message>
+        <source>Use heading for URL</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Χρήση κεφαλίδας για URL</translation>
+    </message>
+    <message>
+        <source>Open linked map</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Άνοιγμα συνδεδεμένου διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Open all vym links in subtree</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Άνοιγμα όλων των συνδέσμων VYM σε υπο-δέντρο</translation>
+    </message>
+    <message>
+        <source>Edit vym link...</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Επεξεργασία συνδέσμου VYM...</translation>
+    </message>
+    <message>
+        <source>Delete vym link</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Διαγραφή συνδέσμου VYM</translation>
+    </message>
+    <message>
+        <source>Hide in exports</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Απόκρυψη στις εξαγωγές</translation>
+    </message>
+    <message>
+        <source>Edit Map Info...</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Επεξεργασια πληροφοριών διαγράμματος...</translation>
+    </message>
+    <message>
+        <source>Add map (insert)</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Προσθήκη διαγραμματος (εισαγωγή)</translation>
+    </message>
+    <message>
+        <source>Add map (replace)</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Προσθήκη διαγραμματος (αντικατάσταση)</translation>
+    </message>
+    <message>
+        <source>Save selection</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Αποθήκευση επιλογής</translation>
+    </message>
+    <message>
+        <source>F&amp;ormat</source>
+        <translatorcomment>MainFormat menu</translatorcomment>
+        <translation type="vanished">Μορ&amp;φοποίηση</translation>
+    </message>
+    <message>
+        <source>Pic&amp;k color</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Επι&amp;λογή χρώματος</translation>
+    </message>
+    <message>
+        <source>Color &amp;branch</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Χρωματισμός &amp;κλάδου</translation>
+    </message>
+    <message>
+        <source>Color sub&amp;tree</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Χρώμα υπο-&amp;δέντρου</translation>
+    </message>
+    <message>
+        <source>Hide link if object is not selected</source>
+        <translatorcomment>MainBranch attribute</translatorcomment>
+        <translation type="vanished">Απόκρυψη συνδέσμου εάν το αντικείμενο δεν είναι επιλεγμένο</translation>
+    </message>
+    <message>
+        <source>&amp;Use color of heading for link</source>
+        <translatorcomment>MainBranch attribute</translatorcomment>
+        <translation type="vanished">&amp;Χρήση χρώματος κεφαλίδας για τον σύνδεσμο</translation>
+    </message>
+    <message>
+        <source>reset Zoom</source>
+        <translatorcomment>MainView action</translatorcomment>
+        <translation type="vanished">Επαναφορά εστίασης</translation>
+    </message>
+    <message>
+        <source>Zoom in</source>
+        <translatorcomment>MainView action</translatorcomment>
+        <translation type="vanished">Μεγέθυνση</translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <translatorcomment>MainImport filters</translatorcomment>
+        <translation type="vanished">Σελιδοδείκτες Firefox</translation>
+    </message>
+    <message>
+        <source>Import Dir%1</source>
+        <translatorcomment>MainImport Filters</translatorcomment>
+        <translation type="vanished">Εισαγωγή Dir%1</translation>
+    </message>
+    <message>
+        <source>Remove only branch and keep its children </source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Αφαίρεση κλαδου και διατήρηση απόγονων</translation>
+    </message>
+    <message>
+        <source>Formatting</source>
+        <translatorcomment>MainShortcuts</translatorcomment>
+        <translation type="vanished">Μορφοποίηση</translation>
+    </message>
+    <message>
+        <source>Views</source>
+        <translatorcomment>MainShortcuts</translatorcomment>
+        <translation type="vanished">Προβολές</translation>
+    </message>
+    <message>
+        <source>Zoom out</source>
+        <translatorcomment>MainView action</translatorcomment>
+        <translation type="vanished">Σμίκρυνση</translation>
+    </message>
+    <message>
+        <source>Modifier modes</source>
+        <translatorcomment>MainShortcuts</translatorcomment>
+        <translation type="vanished">Μετατροπέας κατάστασης</translation>
+    </message>
+    <message>
+        <source>Use modifier to color branches</source>
+        <translatorcomment>MainMode modifier</translatorcomment>
+        <translation type="vanished">Χρήση μετατροπέα για χρωματισμό κλάδων</translation>
+    </message>
+    <message>
+        <source>Use modifier to draw xLinks</source>
+        <translatorcomment>MainMode modifier</translatorcomment>
+        <translation type="vanished">Χρήση μετατροπέα για σχεδιασμό xLinks</translation>
+    </message>
+    <message>
+        <source>Set application to open pdf files</source>
+        <translatorcomment>MainSettings action</translatorcomment>
+        <translation type="vanished">Ορισμός εφαρμογής για άνοιγμα αρχείων pdf</translation>
+    </message>
+    <message>
+        <source>Set application to open external links</source>
+        <translatorcomment>MainSettings action</translatorcomment>
+        <translation type="vanished">Ορισμός εφαρμογής για άνοιγμα εξωτερικών συνδέσμων</translation>
+    </message>
+    <message>
+        <source>Edit branch after adding it</source>
+        <translatorcomment>MainSettings action</translatorcomment>
+        <translation type="vanished">Επεξεργασία κλάδου μετά την εισαγωγή του</translation>
+    </message>
+    <message>
+        <source>Select branch after adding it</source>
+        <translatorcomment>MainSettings action</translatorcomment>
+        <translation type="vanished">Επιλογή κλάδου μετά την εισαγωγή του</translation>
+    </message>
+    <message>
+        <source>Select existing heading</source>
+        <translatorcomment>MainSettings action</translatorcomment>
+        <translation type="vanished">Επιλογή υπάρχουσας κεφαλίδας</translation>
+    </message>
+    <message>
+        <source>Exclusive flags</source>
+        <translatorcomment>MainSettings action</translatorcomment>
+        <translation type="vanished">Αποκλειστικές σημαίες</translation>
+    </message>
+    <message>
+        <source>Use hide flags</source>
+        <translatorcomment>MainSettings action</translatorcomment>
+        <translation type="vanished">Χρήση σημαιών που βρίσκονται σε απόκρυψη</translation>
+    </message>
+    <message>
+        <source>&amp;Help</source>
+        <translatorcomment>MainHelp menubar entry</translatorcomment>
+        <translation type="vanished">&amp;Βοήθεια</translation>
+    </message>
+    <message>
+        <source>Open VYM Documentation (pdf) </source>
+        <translatorcomment>MainHelp action</translatorcomment>
+        <translation type="vanished">Άνοιγμα τεκμηρίωσης του VYM (pdf)</translation>
+    </message>
+    <message>
+        <source>About VYM</source>
+        <translatorcomment>MainHelp action</translatorcomment>
+        <translation type="vanished">Σχετικά με το VYM</translation>
+    </message>
+    <message>
+        <source>About QT</source>
+        <translatorcomment>MainHelp action</translatorcomment>
+        <translation type="vanished">Σχετικά με το QT</translation>
+    </message>
+    <message>
+        <source>Remove</source>
+        <translatorcomment>MainContext menu name</translatorcomment>
+        <translation type="vanished">Αφαίρεση</translation>
+    </message>
+    <message>
+        <source>Save image</source>
+        <translatorcomment>MainContext action</translatorcomment>
+        <translation type="vanished">Αποθήκευση εικόνας</translation>
+    </message>
+    <message>
+        <source>&amp;New map</source>
+        <translatorcomment>MainFile menu</translatorcomment>
+        <translation type="vanished">&amp;Νέο διάγραμμα</translation>
+    </message>
+    <message>
+        <source>History window</source>
+        <translatorcomment>MainHistoryWidget</translatorcomment>
+        <translation type="vanished">Παράθυρο ιστορικού</translation>
+    </message>
+    <message>
+        <source>&amp;Copy to new map</source>
+        <translatorcomment>MainFile menu</translatorcomment>
+        <translation type="vanished">&amp;Αντιγραφή στο νέο διάγραμμα</translation>
+    </message>
+    <message>
+        <source>E&amp;dit</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Επε&amp;ξεργασία</translation>
+    </message>
+    <message>
+        <source>Add mapcenter</source>
+        <translatorcomment>MainCanvas context menu</translatorcomment>
+        <translation type="vanished">Προσθήκη κέντρου διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Sort children</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Ταξινόμηση απόγονων κόμβων</translation>
+    </message>
+    <message>
+        <source>Edit local URL...</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Επεξεργασία τοπικού URL...</translation>
+    </message>
+    <message>
+        <source>Open linked map in background tab</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Άνοιγμα συνδεδεμένου διαγράμματος σε καρτέλα παρασκηνίου</translation>
+    </message>
+    <message>
+        <source>Property window</source>
+        <translatorcomment>MainDialog to edit properties of selection</translatorcomment>
+        <translation type="vanished">Παράθυρο ιδιοτήτων</translation>
+    </message>
+    <message>
+        <source>Select previous</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Επιλογή προηγούμενου</translation>
+    </message>
+    <message>
+        <source>Select next</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Επιλογή επόμενου</translation>
+    </message>
+    <message>
+        <source>Unselect all</source>
+        <translatorcomment>MainEdit menu</translatorcomment>
+        <translation type="vanished">Αποεπιλογή όλων</translation>
+    </message>
+    <message>
+        <source>Select default font</source>
+        <translatorcomment>MainBranch attribute</translatorcomment>
+        <translation type="vanished">Επιλογη προκαθορισμένης γραμματοσειράς</translation>
+    </message>
+    <message>
+        <source>Linkstyle Curve</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Καμπύλη γραμμή σύνδεσης</translation>
+    </message>
+    <message>
+        <source>Linkstyle Thick Curve</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Παχια καμπύλη γραμμή σύνδεσης</translation>
+    </message>
+    <message>
+        <source>Set &amp;Link Color</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Ορισμός χρώματος &amp;σύνδεσης</translation>
+    </message>
+    <message>
+        <source>Set &amp;Selection Color</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Ορισμός χρώματος &amp;επιλογής</translation>
+    </message>
+    <message>
+        <source>Set &amp;Background image</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Ορισμός εικόνας &amp;παρασκηνίου</translation>
+    </message>
+    <message>
+        <source>Toolbars</source>
+        <translatorcomment>MainToolbars overview in view menu</translatorcomment>
+        <translation type="vanished">Γραμμές εργαλείων</translation>
+    </message>
+    <message>
+        <source>Rotate counterclockwise</source>
+        <translatorcomment>MainView action</translatorcomment>
+        <translation type="vanished">Αριστερόστροφη περιστροφή</translation>
+    </message>
+    <message>
+        <source>Rotate rclockwise</source>
+        <translatorcomment>MainView action</translatorcomment>
+        <translation type="vanished">Δεξιόστροφη περιστροφή</translation>
+    </message>
+    <message>
+        <source>Tree editor</source>
+        <translatorcomment>MainView action</translatorcomment>
+        <translation type="vanished">Επεξεργαστής διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Task editor</source>
+        <translatorcomment>MainView action</translatorcomment>
+        <translation type="vanished">Επεξεργαστής εργασιών</translation>
+    </message>
+    <message>
+        <source>Slide editor</source>
+        <translatorcomment>MainView action</translatorcomment>
+        <translation type="vanished">Επεξεργαστής διαφανειών</translation>
+    </message>
+    <message>
+        <source>Script editor</source>
+        <translatorcomment>MainView action</translatorcomment>
+        <translation type="vanished">Επεξεργαστής σεναρίων</translation>
+    </message>
+    <message>
+        <source>History Window</source>
+        <translatorcomment>MainView action</translatorcomment>
+        <translation type="vanished">Παράθυρο ιστορικού</translation>
+    </message>
+    <message>
+        <source>Antialiasing</source>
+        <translatorcomment>MainView action</translatorcomment>
+        <translation type="vanished">Εξομάλυνση</translation>
+    </message>
+    <message>
+        <source>Smooth pixmap transformations</source>
+        <translatorcomment>MainView action</translatorcomment>
+        <translation type="vanished">Εξομάλυνση μετασχηματισμών εικονοστοιχείων </translation>
+    </message>
+    <message>
+        <source>Next Map</source>
+        <translatorcomment>MainView action</translatorcomment>
+        <translation type="vanished">Επόμενο διάγραμμα</translation>
+    </message>
+    <message>
+        <source>Previous Map</source>
+        <translatorcomment>MainView action</translatorcomment>
+        <translation type="vanished">Προηγούμενο διάγραμμα</translation>
+    </message>
+    <message>
+        <source>Next slide</source>
+        <translatorcomment>MainView action</translatorcomment>
+        <translation type="vanished">Επόμενη διαφάνεια</translation>
+    </message>
+    <message>
+        <source>Previous slide</source>
+        <translatorcomment>MainView action</translatorcomment>
+        <translation type="vanished">Προηγούμενη διαφάνεια</translation>
+    </message>
+    <message>
+        <source>Note</source>
+        <translatorcomment>MainSystemFlag</translatorcomment>
+        <translation type="vanished">Σημείωση</translation>
+    </message>
+    <message>
+        <source>URL to Document </source>
+        <translatorcomment>MainSystemFlag</translatorcomment>
+        <translation type="vanished">URL προς έγγραφο</translation>
+    </message>
+    <message>
+        <source>Link to another vym map</source>
+        <translatorcomment>MainSystemFlag</translatorcomment>
+        <translation type="vanished">Σύνδεσμος προς άλλο διάγραμμα VYM</translation>
+    </message>
+    <message>
+        <source>subtree is scrolled</source>
+        <translatorcomment>MainSystemFlag</translatorcomment>
+        <translation type="vanished">Το υπο-δέντρο είναι κυλιόμενο</translation>
+    </message>
+    <message>
+        <source>subtree is temporary scrolled</source>
+        <translatorcomment>MainSystemFlag</translatorcomment>
+        <translation type="vanished">Το υπο-δέντρο είναι προσωρινά κυλιόμενο</translation>
+    </message>
+    <message>
+        <source>Hide object in exported maps</source>
+        <translatorcomment>MainSystemFlag</translatorcomment>
+        <translation type="vanished">Απόκρυψη αντικειμένου στα εξαγόμενα διαγράμματα</translation>
+    </message>
+    <message>
+        <source>I just love...</source>
+        <translatorcomment>MainStandardflag</translatorcomment>
+        <translation type="vanished">Απλά μου αρέσει...</translation>
+    </message>
+    <message>
+        <source>Priority</source>
+        <translatorcomment>MainFreemind-Flag</translatorcomment>
+        <translation type="vanished">Προτεραιότητα</translation>
+    </message>
+    <message>
+        <source>Back</source>
+        <translatorcomment>MainFreemind-Flag</translatorcomment>
+        <translation type="vanished">Πίσω</translation>
+    </message>
+    <message>
+        <source>Look here</source>
+        <translatorcomment>MainFreemind-Flag</translatorcomment>
+        <translation type="vanished">Δείτε εδώ</translation>
+    </message>
+    <message>
+        <source>Flag</source>
+        <translatorcomment>MainFreemind-Flag</translatorcomment>
+        <translation type="vanished">Σημαία</translation>
+    </message>
+    <message>
+        <source>Home</source>
+        <translatorcomment>MainFreemind-Flag</translatorcomment>
+        <translation type="vanished">Αρχική</translation>
+    </message>
+    <message>
+        <source>Telephone</source>
+        <translatorcomment>MainFreemind-Flag</translatorcomment>
+        <translation type="vanished">Τηλέφωνο</translation>
+    </message>
+    <message>
+        <source>Music</source>
+        <translatorcomment>MainFreemind-Flag</translatorcomment>
+        <translation type="vanished">Μουσική</translation>
+    </message>
+    <message>
+        <source>Mailbox</source>
+        <translatorcomment>MainFreemind-Flag</translatorcomment>
+        <translation type="vanished">Γραμματοκιβώτιο</translation>
+    </message>
+    <message>
+        <source>Maix</source>
+        <translatorcomment>MainFreemind-Flag</translatorcomment>
+        <translation type="vanished">Maix</translation>
+    </message>
+    <message>
+        <source>Password</source>
+        <translatorcomment>MainFreemind-Flag</translatorcomment>
+        <translation type="vanished">Κωδικός πρόσβασης</translation>
+    </message>
+    <message>
+        <source>To be improved</source>
+        <translatorcomment>MainFreemind-Flag</translatorcomment>
+        <translation type="vanished">Να βελτιωθεί</translation>
+    </message>
+    <message>
+        <source>Stop</source>
+        <translatorcomment>MainFreemind-Flag</translatorcomment>
+        <translation type="vanished">Σταμάτημα</translation>
+    </message>
+    <message>
+        <source>Magic</source>
+        <translatorcomment>MainFreemind-Flag</translatorcomment>
+        <translation type="vanished">Μαγικό</translation>
+    </message>
+    <message>
+        <source>To be discussed</source>
+        <translatorcomment>MainFreemind-Flag</translatorcomment>
+        <translation type="vanished">Να συζητηθεί</translation>
+    </message>
+    <message>
+        <source>Reminder</source>
+        <translatorcomment>MainFreemind-Flag</translatorcomment>
+        <translation type="vanished">Υπενθύμιση</translation>
+    </message>
+    <message>
+        <source>Excellent</source>
+        <translatorcomment>MainFreemind-Flag</translatorcomment>
+        <translation type="vanished">Εξαιρετικό</translation>
+    </message>
+    <message>
+        <source>Linux</source>
+        <translatorcomment>MainFreemind-Flag</translatorcomment>
+        <translation type="vanished">Linux</translation>
+    </message>
+    <message>
+        <source>Sweet</source>
+        <translatorcomment>MainFreemind-Flag</translatorcomment>
+        <translation type="vanished">Γλυκό</translation>
+    </message>
+    <message>
+        <source>Settings</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Ρυθμίσεις</translation>
+    </message>
+    <message>
+        <source>Check for release notes and updates</source>
+        <translatorcomment>MainSettings action</translatorcomment>
+        <translation type="vanished">Έλεγχος για σημειώσεις έκδοσης και ενημερώσεις</translation>
+    </message>
+    <message>
+        <source>Set application to zip/unzip files</source>
+        <translatorcomment>MainSettings action</translatorcomment>
+        <translation type="vanished">Ορισμός εφαρμογής για συμπίεση/αποσυμπίεση αρχείων</translation>
+    </message>
+    <message>
+        <source>Set path for macros</source>
+        <translatorcomment>MainSettings action</translatorcomment>
+        <translation type="vanished">Ορισμός διαδρομής για μακροεντολές</translation>
+    </message>
+    <message>
+        <source>Set number of undo levels</source>
+        <translatorcomment>MainSettings action</translatorcomment>
+        <translation type="vanished">Ορισμός αριθμού αναιρέσεων</translation>
+    </message>
+    <message>
+        <source>Autosave</source>
+        <translatorcomment>MainSettings action</translatorcomment>
+        <translation type="vanished">Αυτόματη αποθήκευση</translation>
+    </message>
+    <message>
+        <source>Autosave time</source>
+        <translatorcomment>MainSettings action</translatorcomment>
+        <translation type="vanished">Χρόνος αυτόματης αποθήκευσης</translation>
+    </message>
+    <message>
+        <source>Write backup file on save</source>
+        <translatorcomment>MainSettings action</translatorcomment>
+        <translation type="vanished">Εγγραφή αρχείου αντίγραφου ασφαλείας για αποθήκευση</translation>
+    </message>
+    <message>
+        <source>Task editor: Set number of parents</source>
+        <translatorcomment>MainSettings action</translatorcomment>
+        <translation type="vanished">Επεξεργαστής εργασιών: ορισμός αριθμού πρόγονων κόμβων</translation>
+    </message>
+    <message>
+        <source>Animation</source>
+        <translatorcomment>MainSettings action</translatorcomment>
+        <translation type="vanished">Κινούμενη απεικόνιση</translation>
+    </message>
+    <message>
+        <source>Open VYM example maps </source>
+        <translatorcomment>MainHelp action</translatorcomment>
+        <translation type="vanished">Άνοιγμα διαγραμμάτων (παραδείγματα) του VYM</translation>
+    </message>
+    <message>
+        <source>Download and show release notes</source>
+        <translatorcomment>MainHelp action</translatorcomment>
+        <translation type="vanished">Λήψη και εμφάνιση σημειώσεων έκδοσης</translation>
+    </message>
+    <message>
+        <source>Check, if updates are available</source>
+        <translatorcomment>MainHelp action</translatorcomment>
+        <translation type="vanished">Έλεγχος για πιθανές ενημερώσεις</translation>
+    </message>
+    <message>
+        <source>Show keyboard shortcuts</source>
+        <translatorcomment>MainHelp action</translatorcomment>
+        <translation type="vanished">Εμφάνιση συντομεύσεων πληκτρολογίου</translation>
+    </message>
+    <message>
+        <source>References (URLs, vymLinks, ...)</source>
+        <translatorcomment>MainContext menu name</translatorcomment>
+        <translation type="vanished">Παραπομπές (URLs, vymLinks, ...)</translation>
+    </message>
+    <message>
+        <source>XLinks</source>
+        <translatorcomment>MainMenu for file actions</translatorcomment>
+        <translation type="vanished">XLinks</translation>
+    </message>
+    <message>
+        <source>Undo and clipboard toolbar</source>
+        <translatorcomment>MainToolbar for redo/undo and clipboard</translatorcomment>
+        <translation type="vanished">Εργαλειοθήκη αναιρέσεων και πρόχειρου</translation>
+    </message>
+    <message>
+        <source>Selection toolbar</source>
+        <translatorcomment>MainToolbar name</translatorcomment>
+        <translation type="vanished">Εργαλειοθήκη επιλογών</translation>
+    </message>
+    <message>
+        <source>URLs and vymLinks toolbar</source>
+        <translatorcomment>MainToolbar for URLs and vymlinks</translatorcomment>
+        <translation type="vanished">Εργαλειοθήκη URLs και vymLinks</translation>
+    </message>
+    <message>
+        <source>Colors toolbar</source>
+        <translatorcomment>MainColors toolbar name</translatorcomment>
+        <translation type="vanished">Γραμμή εργαλείων χρωμάτων</translation>
+    </message>
+    <message>
+        <source>or</source>
+        <translatorcomment>MainFile Dialog</translatorcomment>
+        <translation type="vanished">ή</translation>
+    </message>
+    <message>
+        <source>Save map as</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Αποθήκευση διαγράμματος ως</translation>
+    </message>
+    <message>
+        <source>Load Freemind map</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Φόρτωση διαγράμματος Freemind</translation>
+    </message>
+    <message>
+        <source>Export as CSV</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Εξαγωγή ως CSV</translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Εισαγωγή URL:</translation>
+    </message>
+    <message>
+        <source>HTML</source>
+        <translatorcomment>MainFiledialog</translatorcomment>
+        <translation type="vanished">HTML</translation>
+    </message>
+    <message>
+        <source>Text</source>
+        <translatorcomment>MainFiledialog</translatorcomment>
+        <translation type="vanished">Κείμενο</translation>
+    </message>
+    <message>
+        <source>Spreadsheet</source>
+        <translatorcomment>MainFiledialog</translatorcomment>
+        <translation type="vanished">Φύλλο δεδομένων</translation>
+    </message>
+    <message>
+        <source>Textdocument</source>
+        <translatorcomment>MainFiledialog</translatorcomment>
+        <translation type="vanished">Έγγραφο κειμένου</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <translatorcomment>MainFiledialog</translatorcomment>
+        <translation type="vanished">Εικόνες</translation>
+    </message>
+    <message>
+        <source>Set URL to a local file</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Ορισμός URL για ένα τοπικό αρχείο</translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Σύνδεσμος προς άλλο διάγραμμα</translation>
+    </message>
+    <message>
+        <source>%1 items on map
+</source>
+        <translatorcomment>MainInfo about map</translatorcomment>
+        <translation type="vanished">%1 αντικείμενα στο διάγραμμα</translation>
+    </message>
+    <message>
+        <source>Directory with vym macros:</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Φάκελος με μακροεντολές VYM:</translation>
+    </message>
+    <message>
+        <source>Number of undo/redo levels:</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Αριθμός αναιρέσεων/ακύρωσης αναιρέσεων:</translation>
+    </message>
+    <message>
+        <source>Settings have been changed. The next map opened will have &quot;%1&quot; undo/redo levels</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Οι ρυθμίσεις άλλαξαν. Το επόμενο διάγραμμα θα έχει %1 επίπεδα αναιρέσεων/ακύρωσης αναιρέσεων</translation>
+    </message>
+    <message>
+        <source>Number of seconds before autosave:</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Δευτερόλεπτα πριν την αυτόματη αποθήκευση:</translation>
+    </message>
+    <message>
+        <source>Number of parents shown for a task:</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Αριθμός πρόγονων κόμβων που εμφανιζονται για κάθε εργασία:</translation>
+    </message>
+    <message>
+        <source>History for %1</source>
+        <translatorcomment>MainWindow Caption</translatorcomment>
+        <translation type="vanished">Ιστορικό για %1</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find the documentation %1 in:
+%2</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Αδυναμία εύρεσης της τεκμηρίωσης %1 στο:
+%2</translation>
+    </message>
+    <message>
+        <source>Load vym example map</source>
+        <translatorcomment>Main</translatorcomment>
+        <translation type="vanished">Φόρτωση  διαγράμματος VYM ως παράδειγμα</translation>
+    </message>
+    <message>
+        <source>Map Editor</source>
+        <translatorcomment>MapEditorShortcut scope</translatorcomment>
+        <translation type="vanished">Επεξεργαστής διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <translatorcomment>MapEditorMapEditor</translatorcomment>
+        <translation type="vanished">Επεξεργασία κεφαλίδας</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <translatorcomment>MapEditorMapEditor</translatorcomment>
+        <translation type="vanished">Αποθήκευση</translation>
+    </message>
+    <message>
+        <source>Print vym map</source>
+        <translatorcomment>MapEditorMapEditor</translatorcomment>
+        <translation type="vanished">Εκτύπωση διαγράμματος VYM</translation>
+    </message>
+    <message>
+        <source>Critical Export Error</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Κρίσιμο σφάλμα εξαγωγής</translation>
+    </message>
+    <message>
+        <source>Could not write %1</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Αδυναμία εγγραφής του %1</translation>
+    </message>
+    <message>
+        <source>Exporting to %1 will overwrite the existing file:
+%2</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Η εξαγωγή του %1 θα αντικαταστήσει το υπάρχον αρχείο:
+%2</translation>
+    </message>
+    <message>
+        <source>Warning: Overwriting file</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Προειδοποίηση: το αρχείο θα αντικατασταθεί</translation>
+    </message>
+    <message>
+        <source>Contents:</source>
+        <translatorcomment>QObjectUsed in HTML export</translatorcomment>
+        <translation type="vanished">Περιεχόμενα:</translation>
+    </message>
+    <message>
+        <source>Export aborted.</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Η εξαγωγή ματαιώθηκε.</translation>
+    </message>
+    <message>
+        <source>Trying to create directory for flags:</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Προσπάθεια δημιουργίας φακέλου για τις σημαίες:</translation>
+    </message>
+    <message>
+        <source>Could not create %1</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Αδυναμία δημιουργίας του %1</translation>
+    </message>
+    <message>
+        <source>Critical</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Κρίσιμο</translation>
+    </message>
+    <message>
+        <source>Could not find stylesheet %1</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Αδυναμία εύρεσης stylesheet %1</translation>
+    </message>
+    <message>
+        <source>Error</source>
+        <translatorcomment>QObjectExportHTML</translatorcomment>
+        <translation type="vanished">Σφάλμα</translation>
+    </message>
+    <message>
+        <source>Could not copy
+%1 to
+%2</source>
+        <translatorcomment>QObjectExportHTML</translatorcomment>
+        <translation type="vanished">Αδυναμία αντιγραφής του
+%1 στο
+%2</translation>
+    </message>
+    <message>
+        <source>Could not copy %1 to %2</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Αδυναμία αντιγραφής του %1 στο %2</translation>
+    </message>
+    <message>
+        <source>Trying to save HTML file:</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Προσπάθεια αποθήκευσης του HTML αρχείου:</translation>
+    </message>
+    <message>
+        <source>Export failed.</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Η εξαγωγή απέτυχε.</translation>
+    </message>
+    <message>
+        <source>No objects in map!</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Δεν υπάρχουν αντικείμενα στο διάγραμμα!</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t read settings from &quot;%1&quot;</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Αδυναμία ανάγνωσης ρυθμίσεων από το &quot;%1&quot;</translation>
+    </message>
+    <message>
+        <source>Check &quot;%1&quot; in
+%2</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Έλεγχος &quot;%1&quot; στο
+%2</translation>
+    </message>
+    <message>
+        <source>Could not read %1</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Αδυναμία ανάγνωσης του %1</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t move existing file out of the way before saving.</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Αδυναμία μετακίνησης υπάρχοντος αρχείου εκτός διαδρομής πριν την αποθήκευση.</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start tool to decompress data.</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Αδυναμία εκτέλεσης εφαρμογής για την αποσυμπίεση των δεδομένων.</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start zip to compress data.</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Αδυναμία εκκίνησης εφαρμογής για τη συμπίεση των δεδομένων.</translation>
+    </message>
+    <message>
+        <source>zip didn&apos;t exit normally</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Η εφαρμογή συμπίεσης δεν έκλεισε κανονικά</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t rename %1 back to %2</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Αδυναμία μετονομασιας %1 πάλι σε %2</translation>
+    </message>
+    <message>
+        <source>Saved %1, but couldn&apos;t remove %2</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Αποθήκευση του %1, αλλά αδυναμία αφαίρεσης του %2</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start unzip to decompress data.</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Αδυναμία εκκίνησης εφαρμογής για την αποσυμπίεση των δεδομένων.</translation>
+    </message>
+    <message>
+        <source>unzip didn&apos;t exit normally</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Η εφαρμογή αποσυμπίεσης δεν έκλεισε κανονικά</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Αδυναμία εκκίνησης του %1</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Η εφαρμογή %1 δεν έκλεισε κανονικα</translation>
+    </message>
+    <message>
+        <source>Exporting the %1 bookmarks will overwrite
+your existing bookmarks file.</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Η εξαγωγή των σελιδοδεικτών %1 θα αντικαταστήσει
+το υπάρχον αρχείο με τους σελιδοδείκτες.</translation>
+    </message>
+    <message>
+        <source>Warning: Overwriting %1 bookmarks</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Προειδοποίηση: θα γινει αντικατάσταση των σελιδοδεικτών %1</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find script %1
+to notifiy Browsers of changed bookmarks.</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Αδυναμία εύρεσης σεναρίου %1
+για γνωστοποίηση των περιηγητών σχετικά με τις αλλαγές των σελιδοδεικτών.</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t access temporary directory
+</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Αδυναμία πρόσβασης του προσωρινού φακελου</translation>
+    </message>
+    <message>
+        <source>Export as ASCII</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Εξαγωγή ως ASCII</translation>
+    </message>
+    <message>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <translatorcomment>QObjectwrite directory</translatorcomment>
+        <translation type="vanished">Ο φάκελος %1 δεν είναι άδειος.
+Θα διακινδυνέψετε την αντικατάσταση των περιεχομένων του;</translation>
+    </message>
+    <message>
+        <source>No Bugzilla client found.  For openSUSE you can install by (running as root):
+
+</source>
+        <translatorcomment>QObjectVymModel, how to install Bugzilla client module</translatorcomment>
+        <translation type="vanished">Δεν βρέθηκε πελάτης Bugzilla. Για το openSUSE μπορείτε να κάνετε εγκατάσταση με (εκτέλεση ως διαχειριστής):</translation>
+    </message>
+    <message>
+        <source>Alternatively you can also add the repository
+and install the perl module for Bugzilla access using YaST</source>
+        <translatorcomment>QObjectVymModel, how to install Bugzilla client module</translatorcomment>
+        <translation type="vanished">Εναλλακτικά, μπορείτε να προσθέσετε το αποθετήριο
+και να εγκαταστήσετε το άρθρωμα perl για πρόσβαση στο Bugzilla χρησιμοποιώντας το YaST</translation>
+    </message>
+    <message>
+        <source>Warning: Couldn&apos;t find Bugzilla client</source>
+        <translatorcomment>QObjectVymModel</translatorcomment>
+        <translation type="vanished">Προειδοποίηση: δεν βρέθηκε πελάτης Bugzilla</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find tool to unzip data. Please download and install 7z and set path in Settings menu:
+ </source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Αδυναμία εύρεσης εφαρμογής για αποσυμπίεση δεδομένων. Παρακαλώ, κάντε λήψη και εγκαταστήστε την εφαρμογή 7z και ορίστε τη διαδρομή στο μενού των ρυθμίσεων:</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open &quot;%1&quot;
+%2.</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Αδυναμία ανοίγματος &quot;%1&quot;
+%2.</translation>
+    </message>
+    <message>
+        <source>Warning: Version Problem</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Προειδοποίηση: πρόβλημα με την έκδοση</translation>
+    </message>
+    <message>
+        <source>&lt;h3&gt;Map is newer than VYM&lt;/h3&gt;&lt;p&gt;The map you are just trying to load was saved using vym %1. The version of this vym is %2. If you run into problems after pressing the ok-button below, updating vym should help.&lt;/p&gt;</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">&lt;h3&gt;Η έκδοση αυτού του διαγράμματος είναι νεότερη από το VYM&lt;/h3&gt;&lt;p&gt;Το διάγραμμα που προσπαθείτε να φορτώσετε αποθηκεύτηκε με την έκδοση %1 του VYM. Η έκδοση του VYM που εκτελείται αυτή τη στιγμή ειναι %2. Εάν αντιμετωπίσετε προβλήματα μετά το πάτημα του πλήκτρου &quot;εντάξει&quot;, η ενημέρωση του VYM θα βοηθήσει.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Αδυναμία εύρεσης μακροεντολης στο %1.</translation>
+    </message>
+    <message>
+        <source>Set directory for vym macros</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Ορισμός φακέλου για τις μακροεντολές του VYM</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save &quot;%1&quot;</source>
+        <translatorcomment>QObject</translatorcomment>
+        <translation type="vanished">Αδυναμία αποθήκευσης &quot;%1&quot;</translation>
+    </message>
+    <message>
+        <source>Form</source>
+        <translatorcomment>ScriptEditor</translatorcomment>
+        <translation type="vanished">Φόρμα</translation>
+    </message>
+    <message>
+        <source>Tab 1</source>
+        <translatorcomment>ScriptEditor</translatorcomment>
+        <translation type="vanished">Καρτέλα 1</translation>
+    </message>
+    <message>
+        <source>Save to selected slide</source>
+        <translatorcomment>ScriptEditor</translatorcomment>
+        <translation type="vanished">Αποθήκευση στην επιλεγμένη διαφάνεια</translation>
+    </message>
+    <message>
+        <source>Run</source>
+        <translatorcomment>ScriptEditor</translatorcomment>
+        <translation type="vanished">Εκτέλεση</translation>
+    </message>
+    <message>
+        <source>Tab 2</source>
+        <translatorcomment>ScriptEditor</translatorcomment>
+        <translation type="vanished">Καρτέλα 2</translation>
+    </message>
+    <message>
+        <source>Current key:</source>
+        <translatorcomment>ScriptEditor</translatorcomment>
+        <translation type="vanished">Τρέχον κλειδί:</translation>
+    </message>
+    <message>
+        <source>Load</source>
+        <translatorcomment>ScriptEditor</translatorcomment>
+        <translation type="vanished">Φόρτωση</translation>
+    </message>
+    <message>
+        <source>Slide</source>
+        <translatorcomment>ScriptEditorMode in scriptEditor</translatorcomment>
+        <translation type="vanished">Διαφάνεια</translation>
+    </message>
+    <message>
+        <source>Macro</source>
+        <translatorcomment>ScriptEditorMode in scriptEditor</translatorcomment>
+        <translation type="vanished">Μακροεντολή</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t get model to save script into slide!</source>
+        <translatorcomment>ScriptEditor</translatorcomment>
+        <translation type="vanished">Αδυναμία λήψης μοντέλου για αποθήκευση σεναρίου στη διαφάνεια!</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find slide to save script into slide!</source>
+        <translatorcomment>ScriptEditor</translatorcomment>
+        <translation type="vanished">Αδυναμία εύρεσης διαφάνειας για αποθήκευση σεναρίου σε αυτή!</translation>
+    </message>
+    <message>
+        <source>Save script</source>
+        <translatorcomment>ScriptEditor</translatorcomment>
+        <translation type="vanished">Αποθήκευση σεναρίου</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <translatorcomment>ScriptEditordialog &apos;save as&apos;</translatorcomment>
+        <translation type="vanished">Το αρχείο %1
+υπάρχει ηδη.
+Θέλετε να αντικατασταθεί;</translation>
+    </message>
+    <message>
+        <source>Load script</source>
+        <translatorcomment>ScriptEditor</translatorcomment>
+        <translation type="vanished">Φόρτωση σεναρίου</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translatorcomment>ScriptEditor</translatorcomment>
+        <translation type="vanished">Αδυναμία ανοίγματος του %1.</translation>
+    </message>
+    <message>
+        <source>Current map</source>
+        <translatorcomment>TaskEditorTaskEditor</translatorcomment>
+        <translation type="vanished">Τρέχον διάγραμμα</translation>
+    </message>
+    <message>
+        <source>Active tasks</source>
+        <translatorcomment>TaskEditorTaskEditor</translatorcomment>
+        <translation type="vanished">Ενεργές εργασίες</translation>
+    </message>
+    <message>
+        <source>Prio</source>
+        <translatorcomment>TaskModelTaskEditor</translatorcomment>
+        <translation type="vanished">Προτεραιότητα</translation>
+    </message>
+    <message>
+        <source>Status</source>
+        <translatorcomment>TaskModelTaskEditor</translatorcomment>
+        <translation type="vanished">Κατάσταση</translation>
+    </message>
+    <message>
+        <source>Age total</source>
+        <translatorcomment>TaskModelTaskEditor</translatorcomment>
+        <translation type="vanished">Ηλικία συνολικά</translation>
+    </message>
+    <message>
+        <source>Age mod.</source>
+        <translatorcomment>TaskModelTaskEditor</translatorcomment>
+        <translation type="vanished">Ηλικία mod.</translation>
+    </message>
+    <message>
+        <source>Sleep</source>
+        <translatorcomment>TaskModelTaskEditor</translatorcomment>
+        <translation type="vanished">Ύπνος</translation>
+    </message>
+    <message>
+        <source>Map</source>
+        <translatorcomment>TaskModelTaskEditor</translatorcomment>
+        <translation type="vanished">Διάγραμμα</translation>
+    </message>
+    <message>
+        <source>Task</source>
+        <translatorcomment>TaskModelTaskEditor</translatorcomment>
+        <translation type="vanished">Εργασία</translation>
+    </message>
+    <message>
+        <source>&amp;Import...</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">&amp;Εισαγωγή...</translation>
+    </message>
+    <message>
+        <source>&amp;Export...</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">&amp;Εξαγωγή...</translation>
+    </message>
+    <message>
+        <source>Export &amp;As... (HTML)</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">Εξαγωγή &amp;ως... (HTML)</translation>
+    </message>
+    <message>
+        <source>Export &amp;As...(ASCII)</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">Εξαγωγή &amp;ως... (ASCII)</translation>
+    </message>
+    <message>
+        <source>&amp;Print...</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">&amp;Εκτύπωση...</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">&amp;Επεξεργασία</translation>
+    </message>
+    <message>
+        <source>Select and copy &amp;all</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">Επιλογή και αντιγραφή &amp;όλων</translation>
+    </message>
+    <message>
+        <source>&amp;Delete All</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">&amp;Διαγραφή ολων</translation>
+    </message>
+    <message>
+        <source>Texteditor</source>
+        <translatorcomment>TextEditorShortcuts</translatorcomment>
+        <translation type="vanished">Επεξεργαστής κειμένου</translation>
+    </message>
+    <message>
+        <source>Font hints</source>
+        <translatorcomment>TextEditortoolbar in texteditor</translatorcomment>
+        <translation type="vanished">Υποδείξεις γραμματοσειράς</translation>
+    </message>
+    <message>
+        <source>&amp;Font hint</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">&amp;Υπόδειξη γραμματοσειράς</translation>
+    </message>
+    <message>
+        <source>&amp;Richtext</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">&amp;Εμπλουτισμένο κείμενο</translation>
+    </message>
+    <message>
+        <source>Fonts</source>
+        <translatorcomment>TextEditortoolbar in texteditor</translatorcomment>
+        <translation type="vanished">Γραμματοσειρές</translation>
+    </message>
+    <message>
+        <source>Format</source>
+        <translatorcomment>TextEditortoolbar in texteditor</translatorcomment>
+        <translation type="vanished">Μορφοποίηση</translation>
+    </message>
+    <message>
+        <source>&amp;Color...</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">&amp;Χρώμα...</translation>
+    </message>
+    <message>
+        <source>&amp;Bold</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">&amp;Έντονα</translation>
+    </message>
+    <message>
+        <source>&amp;Italic</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">&amp;Πλάγια</translation>
+    </message>
+    <message>
+        <source>&amp;Underline</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">&amp;Υπογράμμιση</translation>
+    </message>
+    <message>
+        <source>&amp;Left</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">&amp;Αριστερά</translation>
+    </message>
+    <message>
+        <source>C&amp;enter</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">&amp;Κέντρο</translation>
+    </message>
+    <message>
+        <source>&amp;Right</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">&amp;Δεξιά</translation>
+    </message>
+    <message>
+        <source>&amp;Justify</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">&amp;Στοίχιση</translation>
+    </message>
+    <message>
+        <source>&amp;Settings</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">&amp;Ρυθμίσεις</translation>
+    </message>
+    <message>
+        <source>Set &amp;fixed font</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">Ορισμός &amp;σταθερής γραμματοσειράς</translation>
+    </message>
+    <message>
+        <source>Set &amp;variable font</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">Ορισμός &amp;γραμματοσειράς μεταβλητών</translation>
+    </message>
+    <message>
+        <source>&amp;fixed font is default</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">&amp;Η σταθερή γραμματοσειρά είναι η προκαθορισμένη</translation>
+    </message>
+    <message>
+        <source>Export Note to single file</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">Εξαγωγή σημείωσης σε ξεχωριστό αρχείο</translation>
+    </message>
+    <message>
+        <source>Export Note to single file (ASCII)</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">Εξαγωγή σημείωσης σε ξεχωριστό αρχείο (ASCII)</translation>
+    </message>
+    <message>
+        <source>Print</source>
+        <translatorcomment>TextEditorTextEditor</translatorcomment>
+        <translation type="vanished">Εκτύπωση</translation>
+    </message>
+    <message>
+        <source>Subs&amp;cript</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">&amp;Δείκτης</translation>
+    </message>
+    <message>
+        <source>Text Editor</source>
+        <translatorcomment>TextEditorText Editor Window caption</translatorcomment>
+        <translation type="vanished">Επεξεργαστής κειμένου</translation>
+    </message>
+    <message>
+        <source>Su&amp;perscript</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">Εκ&amp;θέτης</translation>
+    </message>
+    <message>
+        <source>Edit Actions</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">Επεξεργασία ενεργειών</translation>
+    </message>
+    <message>
+        <source>Note Actions</source>
+        <translatorcomment>TextEditor</translatorcomment>
+        <translation type="vanished">Σημειώσεις ενεργειών</translation>
+    </message>
+    <message>
+        <source>Ready</source>
+        <translatorcomment>TextEditorStatusbar message</translatorcomment>
+        <translation type="vanished">Έτοιμο</translation>
+    </message>
+    <message>
+        <source>No filename available for this note.</source>
+        <translatorcomment>TextEditorStatusbar message</translatorcomment>
+        <translation type="vanished">Δεν υπάρχει διαθέσιμο όνομα γι&apos; αυτή τη σημείωση.</translation>
+    </message>
+    <message>
+        <source>&amp;Note</source>
+        <translatorcomment>TextEditorMenubar</translatorcomment>
+        <translation type="vanished">&amp;Σημείωση</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t export note </source>
+        <translatorcomment>TextEditordialog &apos;save note as&apos;</translatorcomment>
+        <translation type="vanished">Αδυναμία εξαγωγής σημείωσης</translation>
+    </message>
+    <message>
+        <source>Select upper object</source>
+        <translatorcomment>TreeEditorTree Editor</translatorcomment>
+        <translation type="vanished">Επιλογή αντικειμένου που βρίσκεται ψηλότερα</translation>
+    </message>
+    <message>
+        <source>Select lower object</source>
+        <translatorcomment>TreeEditorTree Editor</translatorcomment>
+        <translation type="vanished">Επιλογή αντικειμένου που βρίσκεται χαμηλότερα</translation>
+    </message>
+    <message>
+        <source>Critical Parse Error</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Κρίσιμο συντακτικό σφάλμα</translation>
+    </message>
+    <message>
+        <source>Critical Load Error</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Κρίσιμο σφάλμα φόρτωσης</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Αδυναμία δημιουργίας προσωρινού φακέλου πριν τη φόρτωση</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Αδυναμία εύρεσης ενός διαγράμματος (*.xml) στο αρχείο του VYM.</translation>
+    </message>
+    <message>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Το διάγραμμα %1
+δεν χρησιμοποίησε τη συμπιεσμένη μορφή αρχείου του VYM.
+Κάνοντας εγγραφή ενώ δεν είναι συμπιεσμένο το διάγραμμα,
+θα εγγραφούν εικόνες και σημαίες και έτσι υπάρχει περίπτωση
+να αντικατασταθούν αρχεία στον δοσμένο φάκελο
+
+Θέλετε να κάνετε εγγραφή του διαγράμματος;</translation>
+    </message>
+    <message>
+        <source>compressed (vym default)</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Συμπιεσμένο (προκαθορισμένο του VYM)</translation>
+    </message>
+    <message>
+        <source>uncompressed</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Μη συμπιεσμένο</translation>
+    </message>
+    <message>
+        <source>Save Error</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Αποθήκευση σφάλματος</translation>
+    </message>
+    <message>
+        <source>%1
+could not be removed before saving</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Το %1
+δεν είναι δυνατόν να αφαιρεθεί πριν την αποθήκευση</translation>
+    </message>
+    <message>
+        <source>%1
+could not be renamed before saving</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Το %1
+δεν είναι δυνατόν να μετονομαστεί πριν την αποθήκευση</translation>
+    </message>
+    <message>
+        <source>Critical Save Error</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Κρίσιμο σφάλμα αποθήκευσης</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Αδυναμία δημιουργίας προσωρινού φακέλου πριν την αποθήκευση</translation>
+    </message>
+    <message>
+        <source>All</source>
+        <translatorcomment>VymModelFiledialog</translatorcomment>
+        <translation type="vanished">Όλα</translation>
+    </message>
+    <message>
+        <source>Load image</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Φόρτωση εικόνας</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Το αρχείο %1 υπάρχει ήδη.
+Θέλετε να το αντικαταστήσετε;</translation>
+    </message>
+    <message>
+        <source>Unsupported format in %1</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Μη υποστηριζόμενη μορφή στο %1</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save %1</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Αδυναμία αποθήκευσης του %1</translation>
+    </message>
+    <message>
+        <source>Critical Import Error</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Κρίσιμο σφάλμα εισαγωγής</translation>
+    </message>
+    <message>
+        <source>Cannot find the directory %1</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Αδυναμία εύρεσης του φακέλου %1</translation>
+    </message>
+    <message>
+        <source>Choose directory structure to import</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Επιλογή δομής φακέλου για εισαγωγή</translation>
+    </message>
+    <message>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Το αρχείο του διαγράμματος στο δίσκο εχει αλλάξει:
+   %1
+Θέλετε να ξαναφορτώσετε το διάγραμμα με το νέο αρχείο;</translation>
+    </message>
+    <message>
+        <source>Reload</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Επαναφόρτωση</translation>
+    </message>
+    <message>
+        <source>Ignore</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Αγνόηση</translation>
+    </message>
+    <message>
+        <source>Redo failed:
+%1</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Η ακύρωση αναίρεσης απέτυχε:
+%1</translation>
+    </message>
+    <message>
+        <source>Autosave disabled during undo.</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Απενεργοποίηση της αυτόματης αποθήκευσης κατά τη διάρκεια της αναίρεσης.</translation>
+    </message>
+    <message>
+        <source>Contacting Bugzilla...</source>
+        <translatorcomment>VymModelVymModel</translatorcomment>
+        <translation type="vanished">Επικοινωνια με Bugzilla...</translation>
+    </message>
+    <message>
+        <source>Script aborted:
+%1</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Το σενάριο αποβλήθηκε:
+%1</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Εξαγωγή διαγράμματος σε εικόνα</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save QImage %1 in format %2</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Αδυναμία αποθήκευσης QImage %1 σε μορφή %2</translation>
+    </message>
+    <message>
+        <source>Exported: </source>
+        <translatorcomment>VymModelExport confirmation</translatorcomment>
+        <translation type="vanished">Εξαγόμενο:</translation>
+    </message>
+    <message>
+        <source>Export map as PDF</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Εξαγωγη διαγράμματος ως PDF</translation>
+    </message>
+    <message>
+        <source>Export map as scalable vector graphic</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Εξαγωγή διαγράμματος ως SVG</translation>
+    </message>
+    <message>
+        <source>Export XML to directory</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Εξαγωγή του XML σε φάκελο</translation>
+    </message>
+    <message>
+        <source>Export as csv</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Εξαγωγή ως csv</translation>
+    </message>
+    <message>
+        <source>Load background image</source>
+        <translatorcomment>VymModel</translatorcomment>
+        <translation type="vanished">Φόρτωση εικόνας παρασκηνίου</translation>
+    </message>
+    <message>
+        <source>Tree Editor</source>
+        <translatorcomment>VymViewTitle of dockable editor widget</translatorcomment>
+        <translation type="vanished">Επεξεργαστής κόμβων διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Slide Editor</source>
+        <translatorcomment>VymViewTitle of dockable editor widget</translatorcomment>
+        <translation type="vanished">Επεξεργαστής διαφανειών</translation>
+    </message>
+    <message>
+        <source>showAgainBox</source>
+        <translatorcomment>WarningDialog</translatorcomment>
+        <translation type="vanished">Εμφάνιση AgainBox</translation>
+    </message>
+    <message>
+        <source>Proceed</source>
+        <translatorcomment>WarningDialog</translatorcomment>
+        <translation type="vanished">Πρόοδος</translation>
+    </message>
+    <message>
+        <source>Show this message again</source>
+        <translatorcomment>WarningDialog</translatorcomment>
+        <translation type="vanished">Δείξε αυτό το μήνυμα πάλι</translation>
+    </message>
+</context>
+<context>
+    <name>AboutDialog</name>
+    <message>
+        <source>Ok</source>
+        <comment>Ok Button</comment>
+        <translation>Εντάξει</translation>
+    </message>
+    <message>
+        <source>Credits</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>License</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>AboutTextBrowser</name>
+    <message>
+        <source>Warning</source>
+        <comment>About window</comment>
+        <translation>Προειδοποίηση</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <comment>About window</comment>
+        <translation>Αδυναμία εύρεσης εφαρμογής προβολης για ανοιγμα του %1.</translation>
+    </message>
+    <message>
+        <source>Please use Settings-&gt;</source>
+        <translation>Παρακαλώ χρησιμοποιήστε τις Ρυθμίσεις-&gt;</translation>
+    </message>
+    <message>
+        <source>Set application to open an URL...</source>
+        <translation>Ορισμός εφαρμογης για άνοιγμα URL...</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyEditor</name>
+    <message>
+        <source>Branch Property Editor</source>
+        <translation>Επεξεργαστής ιδιοτήτων κλαδου</translation>
+    </message>
+    <message>
+        <source>Frame</source>
+        <translation>Πλαίσιο</translation>
+    </message>
+    <message>
+        <source>Geometry</source>
+        <translation>Γεωμετρία</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <translation>Χωρίς πλαίσιο</translation>
+    </message>
+    <message>
+        <source>Rectangle</source>
+        <translation>Ορθογώνιο</translation>
+    </message>
+    <message>
+        <source>Rounded Rectangle</source>
+        <translation>Ορθογώνιο με καμπύλες γωνίες</translation>
+    </message>
+    <message>
+        <source>Ellipse</source>
+        <translation>Έλλειψη</translation>
+    </message>
+    <message>
+        <source>Cloud</source>
+        <translation>Σύννεφο</translation>
+    </message>
+    <message>
+        <source>Padding</source>
+        <translation>Γέμισμα</translation>
+    </message>
+    <message>
+        <source>Borderline width</source>
+        <translation>Πλάτος περιγράμματος</translation>
+    </message>
+    <message>
+        <source>Include children</source>
+        <translation>Ένταξη απόγονου</translation>
+    </message>
+    <message>
+        <source>Colors</source>
+        <translation>Χρώματα</translation>
+    </message>
+    <message>
+        <source>Borderline color</source>
+        <translation>Χρώμα περιγράμματος</translation>
+    </message>
+    <message>
+        <source>Background color</source>
+        <translation>Χρώμα παρασκηνίου</translation>
+    </message>
+    <message>
+        <source>Layout</source>
+        <translation>Διάταξη</translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <translation>Περιλαμβάνει εικόνες οριζόντια</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <translation>Περιλαμβάνει εικόνες κάθετα</translation>
+    </message>
+    <message>
+        <source>Free positioning of children (experimental!)</source>
+        <translation>Ελεύθερη τοποθέτηση απόγονων (πειραματική λειτουργία)</translation>
+    </message>
+    <message>
+        <source>Link</source>
+        <translation>Σύνδεσμος</translation>
+    </message>
+    <message>
+        <source>Hide link if unselected</source>
+        <translation>Απόκρυψη συνδέσμου εάν δεν είναι επιλεγμένος</translation>
+    </message>
+    <message>
+        <source>Attributes</source>
+        <translation>Χαρακτηριστικά</translation>
+    </message>
+    <message>
+        <source>+</source>
+        <translation>+</translation>
+    </message>
+    <message>
+        <source>-</source>
+        <translation>-</translation>
+    </message>
+    <message>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation>Επεξεργαστής ιδιοτήτων</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadAgent</name>
+    <message>
+        <source>Warning</source>
+        <translation>Προειδοποίηση</translation>
+    </message>
+</context>
+<context>
+    <name>EditXLinkDialog</name>
+    <message>
+        <source>Edit XLink</source>
+        <translation>Επεξεργασία:XLink</translation>
+    </message>
+    <message>
+        <source>Arrow begin:</source>
+        <translation>Έναρξη βέλους:</translation>
+    </message>
+    <message>
+        <source>XLink width:</source>
+        <translation>Πλατος XLink:</translation>
+    </message>
+    <message>
+        <source>Use color of heading</source>
+        <translation>Χρήση χρώματος κεφαλίδας</translation>
+    </message>
+    <message>
+        <source>XLink color:</source>
+        <translation>Χρώμα XLink:</translation>
+    </message>
+    <message>
+        <source>Use as default:</source>
+        <translation>Χρήση ως προκαθορισμένου:</translation>
+    </message>
+    <message>
+        <source>Line style:</source>
+        <extracomment>Linestyle in Edit XLink dialog</extracomment>
+        <translation>Στυλ γραμμής:</translation>
+    </message>
+    <message>
+        <source>Arrow end:</source>
+        <translation>Τέλος βέλους:</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation>Κλείσιμο</translation>
+    </message>
+</context>
+<context>
+    <name>ExportHTMLDialog</name>
+    <message>
+        <source>Export HTML</source>
+        <translation>Εξαγωγή ως HTML</translation>
+    </message>
+    <message>
+        <source>Export to directory:</source>
+        <translation>Εξαγωγή σε φάκελο:</translation>
+    </message>
+    <message>
+        <source>Browse</source>
+        <translation>Περιήγηση</translation>
+    </message>
+    <message>
+        <source>Options</source>
+        <translation>Επιλογές</translation>
+    </message>
+    <message>
+        <source>Image of map</source>
+        <translation>Εικόνα διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Include images</source>
+        <translation>Συμπερίληψη εικόνων</translation>
+    </message>
+    <message>
+        <source>Table of contents</source>
+        <translation>Πίνακας περιεχομένων</translation>
+    </message>
+    <message>
+        <source>Task flags</source>
+        <translation>Σημαίες εργασιών</translation>
+    </message>
+    <message>
+        <source>General flags</source>
+        <translation>Γενικές σημαίες</translation>
+    </message>
+    <message>
+        <source>Number sections</source>
+        <translation>Τομείς αριθμών</translation>
+    </message>
+    <message>
+        <source>Colored headings in text</source>
+        <translation>Χρωματιστές κεφαλίδες στο κείμενο</translation>
+    </message>
+    <message>
+        <source>Save settings in map</source>
+        <translation>Αποθήκευση ρυθμίσεων διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Stylesheets</source>
+        <translation>Φύλλα δεδομένων</translation>
+    </message>
+    <message>
+        <source>Copy CSS from </source>
+        <translation>Αντιγραφή CSS από</translation>
+    </message>
+    <message>
+        <source>Use CSS from</source>
+        <translation>Χρήση CSS από</translation>
+    </message>
+    <message>
+        <source>Scripts</source>
+        <translation>Σενάρια</translation>
+    </message>
+    <message>
+        <source>After Export:</source>
+        <translation>Μετά την εξαγωγή:</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Άκυρο</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <translation>Εξαγωγή</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation>Προειδοποίηση</translation>
+    </message>
+    <message>
+        <source>The settings saved in the map would like to run script:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation>Οι ρυθμίσεις που αποθηκεύτηκαν στο διάγραμμα,
+προδιαγράφουν την εκτέλεση του σεναρίου:
+
+%1
+
+Παρακαλώ, σκεφτείτε εάν πραγματικά
+επιτρέπετε να γίνει αυτό στον υπολογιστή σας!</translation>
+    </message>
+    <message>
+        <source>VYM - Export HTML to directory</source>
+        <translation>VYM - Εξαγωγή HTML στον φάκελο</translation>
+    </message>
+</context>
+<context>
+    <name>ExtraInfoDialog</name>
+    <message>
+        <source>VYM - Info</source>
+        <translation>VYM - Πληροφορίες</translation>
+    </message>
+    <message>
+        <source>Map:</source>
+        <translation>Διάγραμμα:</translation>
+    </message>
+    <message>
+        <source>Title:</source>
+        <translation>Τίτλος:</translation>
+    </message>
+    <message>
+        <source>Author:</source>
+        <translation>Δημιουργός:</translation>
+    </message>
+    <message>
+        <source>Comment:</source>
+        <translation>Σχόλιο:</translation>
+    </message>
+    <message>
+        <source>Statistics:</source>
+        <translation>Στατιστικά:</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Άκυρο</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation>Κλείσιμο</translation>
+    </message>
+</context>
+<context>
+    <name>FindWidget</name>
+    <message>
+        <source>Find:</source>
+        <comment>FindWidget</comment>
+        <translation>Εύρεση:</translation>
+    </message>
+</context>
+<context>
+    <name>HeadingEditor</name>
+    <message>
+        <source>Heading Editor</source>
+        <comment>Window caption</comment>
+        <translation>Επεξεργαστής κεφαλίδας</translation>
+    </message>
+</context>
+<context>
+    <name>HistoryWindow</name>
+    <message>
+        <source>Dialog</source>
+        <translation>Παράθυρο</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation>Ακύρωση αναίρεσης</translation>
+    </message>
+    <message>
+        <source>Time</source>
+        <translation>Χρόνος</translation>
+    </message>
+    <message>
+        <source>Comment</source>
+        <translation>Σχόλιο</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <translation>Αναίρεση</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation>Κλείσιμο</translation>
+    </message>
+    <message>
+        <source>Action</source>
+        <comment>Table with actions</comment>
+        <translation>Ενέργεια</translation>
+    </message>
+    <message>
+        <source>Comment</source>
+        <comment>Table with actions</comment>
+        <translation>Σχόλιο</translation>
+    </message>
+    <message>
+        <source>Undo action</source>
+        <comment>Table with actions</comment>
+        <translation>Αναίρεση ενέργειας</translation>
+    </message>
+    <message>
+        <source>Current state</source>
+        <comment>Current bar in history hwindow</comment>
+        <translation>Τρέχουσα κατάσταση</translation>
+    </message>
+</context>
+<context>
+    <name>LineEditDialog</name>
+    <message>
+        <source>Dialog</source>
+        <translation>Παράθυρο</translation>
+    </message>
+    <message>
+        <source>TextLabel</source>
+        <translation>Ετικέτα κειμένου</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Άκυρο</translation>
+    </message>
+    <message>
+        <source>Ok</source>
+        <translation>Εντάξει</translation>
+    </message>
+</context>
+<context>
+    <name>LockedFileDialog</name>
+    <message>
+        <source>Dialog</source>
+        <translation type="unfinished">Παράθυρο</translation>
+    </message>
+    <message>
+        <source>Delete lockfile</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Open readonly</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Main</name>
+    <message>
+        <source>Main window</source>
+        <comment>Shortcut scope</comment>
+        <translation>Κύριο παράθυρο</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <translation>Επεξεργαστής σημειώσεων</translation>
+    </message>
+    <message>
+        <source>Heading Editor</source>
+        <translation>Επεξεργαστής κεφαλίδας</translation>
+    </message>
+    <message>
+        <source>Script Editor</source>
+        <translation>Επεξεργαστής σεναρίων</translation>
+    </message>
+    <message>
+        <source>Search results list</source>
+        <comment>FindResultWidget</comment>
+        <translation>Αναζήτηση στη λίστα αποτελεσμάτων</translation>
+    </message>
+    <message>
+        <source>Task list</source>
+        <comment>TaskEditor</comment>
+        <translation>Λίστα εργασιών</translation>
+    </message>
+    <message>
+        <source>Script Editor</source>
+        <comment>ScriptEditor</comment>
+        <translation>Επεξεργαστής σεναρίων</translation>
+    </message>
+    <message>
+        <source>Property Editor</source>
+        <comment>PropertyEditor</comment>
+        <translation>Επεξεργαστής ιδιοτήτων</translation>
+    </message>
+    <message>
+        <source>History window</source>
+        <comment>HistoryWidget</comment>
+        <translation>Παράθυρο ιστορικού</translation>
+    </message>
+    <message>
+        <source>Main window</source>
+        <comment>Shortcut group</comment>
+        <translation>Κύριο παράθυρο</translation>
+    </message>
+    <message>
+        <source>Map Editors</source>
+        <comment>Shortcut group</comment>
+        <translation>Επεξεργαστές διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Text Editors</source>
+        <comment>Shortcut group</comment>
+        <translation>Επεξεργαστές κειμένου</translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <comment>Menu for file actions</comment>
+        <translation>&amp;Διάγραμμα</translation>
+    </message>
+    <message>
+        <source>&amp;New map</source>
+        <comment>File menu</comment>
+        <translation>&amp;Νέο διάγραμμα</translation>
+    </message>
+    <message>
+        <source>&amp;Copy to new map</source>
+        <comment>File menu</comment>
+        <translation>&amp;Αντιγραφή στο νέο διάγραμμα</translation>
+    </message>
+    <message>
+        <source>&amp;Open...</source>
+        <comment>File menu</comment>
+        <translation>&amp;Άνοιγμα...</translation>
+    </message>
+    <message>
+        <source>&amp;Restore last session</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Επαναφορά τελευταίας συνεδρίας</translation>
+    </message>
+    <message>
+        <source>Open Recent</source>
+        <comment>File menu</comment>
+        <translation>Άνοιγμα πρόσφατου αρχείου</translation>
+    </message>
+    <message>
+        <source>&amp;Save...</source>
+        <comment>File menu</comment>
+        <translation>&amp;Αποθήκευση...</translation>
+    </message>
+    <message>
+        <source>Save &amp;As...</source>
+        <comment>File menu</comment>
+        <translation>Αποθήκευση &amp;ως...</translation>
+    </message>
+    <message>
+        <source>Import</source>
+        <comment>File menu</comment>
+        <translation>Εισαγωγή</translation>
+    </message>
+    <message>
+        <source>KDE 4 Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation type="obsolete">Σελιδοδείκτες KDE 4</translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation>Σελιδοδείκτες Firefox</translation>
+    </message>
+    <message>
+        <source>Import Dir%1</source>
+        <comment>Import Filters</comment>
+        <translation>Εισαγωγή Dir%1</translation>
+    </message>
+    <message>
+        <source>(still experimental)</source>
+        <translation>(σε πειραματική λειτουργία)</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <comment>File menu</comment>
+        <translation>Εξαγωγή</translation>
+    </message>
+    <message>
+        <source>Repeat last export (%1)</source>
+        <translation>Επανάληψη τελευταίας εξαγωγής (%1)</translation>
+    </message>
+    <message>
+        <source>Image%1</source>
+        <comment>File export menu</comment>
+        <translation>Εικόνα%1</translation>
+    </message>
+    <message>
+        <source>PDF%1</source>
+        <comment>File export menu</comment>
+        <translation>PDF%1</translation>
+    </message>
+    <message>
+        <source>SVG%1</source>
+        <comment>File export menu</comment>
+        <translation>SVG%1</translation>
+    </message>
+    <message>
+        <source>KDE 4 Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Σελιδοδείκτες KDE 4</translation>
+    </message>
+    <message>
+        <source>Spreadsheet</source>
+        <translation>Φύλλο δεδομένων</translation>
+    </message>
+    <message>
+        <source>Properties</source>
+        <translation>Ιδιότητες</translation>
+    </message>
+    <message>
+        <source>&amp;Print</source>
+        <translation>&amp;Εκτύπωση</translation>
+    </message>
+    <message>
+        <source>&amp;Close Map</source>
+        <comment>File menu</comment>
+        <translation>&amp;Κλείσιμο διαγράμματος</translation>
+    </message>
+    <message>
+        <source>E&amp;xit</source>
+        <comment>File menu</comment>
+        <translation>Έ&amp;ξοδος</translation>
+    </message>
+    <message>
+        <source>E&amp;dit</source>
+        <comment>Edit menu</comment>
+        <translation>Επε&amp;ξεργασία</translation>
+    </message>
+    <message>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Αναίρεση</translation>
+    </message>
+    <message>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Ακύρωση αναίρεσης</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Αντιγραφή</translation>
+    </message>
+    <message>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation>Αποκο&amp;πή</translation>
+    </message>
+    <message>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Επικόλληση</translation>
+    </message>
+    <message>
+        <source>Delete Selection</source>
+        <comment>Edit menu</comment>
+        <translation>Διαγραφή επιλογής</translation>
+    </message>
+    <message>
+        <source>Add attribute</source>
+        <translation>Προσθήκη ιδιότητας</translation>
+    </message>
+    <message>
+        <source>Add mapcenter</source>
+        <comment>Canvas context menu</comment>
+        <translation>Προσθήκη κέντρου διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Add branch as child</source>
+        <comment>Edit menu</comment>
+        <translation>Προσθήκη κλάδου ως απόγονου</translation>
+    </message>
+    <message>
+        <source>Add branch (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>Προσθήκη κλάδου (εισαγωγή)</translation>
+    </message>
+    <message>
+        <source>Add branch above</source>
+        <comment>Edit menu</comment>
+        <translation>Προσθήκη κλάδου επάνω</translation>
+    </message>
+    <message>
+        <source>Add branch below</source>
+        <comment>Edit menu</comment>
+        <translation>Προσθήκη κλάδου κάτω</translation>
+    </message>
+    <message>
+        <source>Move branch up</source>
+        <comment>Edit menu</comment>
+        <translation>Μετακίνηση κλαδου επάνω</translation>
+    </message>
+    <message>
+        <source>Move branch down</source>
+        <comment>Edit menu</comment>
+        <translation>Μετακίνηση κλαδου επάνω</translation>
+    </message>
+    <message>
+        <source>&amp;Detach</source>
+        <comment>Context menu</comment>
+        <translation>&amp;Αποσύνδεση</translation>
+    </message>
+    <message>
+        <source>Detach branch and use as mapcenter</source>
+        <comment>Context menu</comment>
+        <translation>Αποσύνδεση κλάδου και χρήση του ως κέντρου διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Sort children</source>
+        <comment>Edit menu</comment>
+        <translation>Ταξινόμηση απόγονων κόμβων</translation>
+    </message>
+    <message>
+        <source>Sort children backwards</source>
+        <comment>Edit menu</comment>
+        <translation>Ταξινόμηση απόγονων κόμβων προς τα πίσω</translation>
+    </message>
+    <message>
+        <source>Scroll branch</source>
+        <comment>Edit menu</comment>
+        <translation>Κύλιση κλάδου</translation>
+    </message>
+    <message>
+        <source>Unscroll children</source>
+        <comment>Edit menu</comment>
+        <translation>Απόγονος χωρίς κύλιση</translation>
+    </message>
+    <message>
+        <source>Grow selection</source>
+        <comment>Edit menu</comment>
+        <translation>Μεγέθυνση επιλογής</translation>
+    </message>
+    <message>
+        <source>Shrink selection</source>
+        <comment>Edit menu</comment>
+        <translation>Συρρίκνωση επιλογής</translation>
+    </message>
+    <message>
+        <source>Reset selection size</source>
+        <comment>Edit menu</comment>
+        <translation>Επαναφορά μεγέθους της επιλογής</translation>
+    </message>
+    <message>
+        <source>Collapse one level</source>
+        <comment>Edit menu</comment>
+        <translation>Αναδίπλωση ενός επιπέδου</translation>
+    </message>
+    <message>
+        <source>Collapse unselected levels</source>
+        <comment>Edit menu</comment>
+        <translation>Αναδίπλωση μη επιλεγμένων επιπέδων</translation>
+    </message>
+    <message>
+        <source>Expand all branches</source>
+        <comment>Edit menu</comment>
+        <translation>Ανάπτυξη όλων των κλάδων</translation>
+    </message>
+    <message>
+        <source>Expand one level</source>
+        <comment>Edit menu</comment>
+        <translation>Ανάπτυξη ενός επιπέδου</translation>
+    </message>
+    <message>
+        <source>References Context menu</source>
+        <comment>Shortcuts</comment>
+        <translation>Μενού παραπομπών</translation>
+    </message>
+    <message>
+        <source>Open URL</source>
+        <comment>Edit menu</comment>
+        <translation>Άνοιγμα URL</translation>
+    </message>
+    <message>
+        <source>Open URL in new tab</source>
+        <comment>Edit menu</comment>
+        <translation>Άνοιγμα URL σε νέα καρτέλα</translation>
+    </message>
+    <message>
+        <source>Open all URLs in subtree (including scrolled branches)</source>
+        <comment>Edit menu</comment>
+        <translation>Άνοιγμα όλων των URLs σε υποδιάγραμμα (συμπεριλαμβανομένων των κυλιόμενων κόμβων)</translation>
+    </message>
+    <message>
+        <source>Open all URLs in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Άνοιγμα όλων των URLs σε υπο-δέντρο</translation>
+    </message>
+    <message>
+        <source>Extract URLs from note</source>
+        <comment>Edit menu</comment>
+        <translation>Εξαγωγή URLs από σημείωση</translation>
+    </message>
+    <message>
+        <source>Edit URL...</source>
+        <comment>Edit menu</comment>
+        <translation>Επεξεργασία URL...</translation>
+    </message>
+    <message>
+        <source>Edit local URL...</source>
+        <comment>Edit menu</comment>
+        <translation>Επεξεργασία τοπικού URL...</translation>
+    </message>
+    <message>
+        <source>Use heading for URL</source>
+        <comment>Edit menu</comment>
+        <translation>Χρήση κεφαλίδας για URL</translation>
+    </message>
+    <message>
+        <source>Bugzilla handling</source>
+        <comment>Shortcuts</comment>
+        <translation>Χειρισμός Bugzilla</translation>
+    </message>
+    <message>
+        <source>Create URL to SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation>Δημιουργία URL για το SUSE Bugzilla</translation>
+    </message>
+    <message>
+        <source>Get data from SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation>Λήψη δεδομένων από το SUSE Bugzilla</translation>
+    </message>
+    <message>
+        <source>Get data from SUSE Bugzilla for subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Λήψη δεδομένων από το SUSE Bugzilla για το υπο-δέντρο</translation>
+    </message>
+    <message>
+        <source>SUSE Fate tool handling</source>
+        <comment>Shortcuts</comment>
+        <translation>Εργαλείο χειρισμού SUSE</translation>
+    </message>
+    <message>
+        <source>Create URL to SUSE FATE tool</source>
+        <comment>Edit menu</comment>
+        <translation>Δημιουργία URL προς το εργαλείο χειρισμού SUSE</translation>
+    </message>
+    <message>
+        <source>vymlinks - linking maps</source>
+        <comment>Shortcuts</comment>
+        <translation>Σύνδεσμοι VYM - σύνδεση διαγραμμάτων</translation>
+    </message>
+    <message>
+        <source>Open linked map</source>
+        <comment>Edit menu</comment>
+        <translation>Άνοιγμα συνδεδεμένου διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Open linked map in background tab</source>
+        <comment>Edit menu</comment>
+        <translation>Άνοιγμα συνδεδεμένου διαγράμματος σε καρτέλα παρασκηνίου</translation>
+    </message>
+    <message>
+        <source>Open all vym links in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Άνοιγμα όλων των συνδέσμων VYM σε υπο-δέντρο</translation>
+    </message>
+    <message>
+        <source>Edit vym link...</source>
+        <comment>Edit menu</comment>
+        <translation>Επεξεργασία συνδέσμου VYM...</translation>
+    </message>
+    <message>
+        <source>Delete vym link</source>
+        <comment>Edit menu</comment>
+        <translation>Διαγραφή συνδέσμου VYM</translation>
+    </message>
+    <message>
+        <source>Exports</source>
+        <comment>Shortcuts</comment>
+        <translation>Εξαγωγές</translation>
+    </message>
+    <message>
+        <source>Hide in exports</source>
+        <comment>Edit menu</comment>
+        <translation>Απόκρυψη στις εξαγωγές</translation>
+    </message>
+    <message>
+        <source>Tasks</source>
+        <comment>Shortcuts</comment>
+        <translation>Εργασίες</translation>
+    </message>
+    <message>
+        <source>Toggle task</source>
+        <comment>Edit menu</comment>
+        <translation>Εναλλαγή εργασιών</translation>
+    </message>
+    <message>
+        <source>Cycle task status</source>
+        <comment>Edit menu</comment>
+        <translation>Κατάσταση κυκλικής εργασίας</translation>
+    </message>
+    <message>
+        <source>Reset sleep</source>
+        <comment>Task sleep</comment>
+        <translation>Επαναφορά ύπνου</translation>
+    </message>
+    <message>
+        <source>Sleep %1 days</source>
+        <comment>Task sleep</comment>
+        <translation>Ύπνος για %1 ημέρες</translation>
+    </message>
+    <message>
+        <source>Sleep %1 day</source>
+        <comment>Task sleep</comment>
+        <translation>Ύπνος για %1 ημέρα</translation>
+    </message>
+    <message>
+        <source>Sleep %1 weeks</source>
+        <comment>Task sleep</comment>
+        <translation>Ύπνος για %1 εβδομάδες</translation>
+    </message>
+    <message>
+        <source>Add map (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>Προσθήκη διαγραμματος (εισαγωγή)</translation>
+    </message>
+    <message>
+        <source>Add map (replace)</source>
+        <comment>Edit menu</comment>
+        <translation>Προσθήκη διαγραμματος (αντικατάσταση)</translation>
+    </message>
+    <message>
+        <source>Save selection</source>
+        <comment>Edit menu</comment>
+        <translation>Αποθήκευση επιλογής</translation>
+    </message>
+    <message>
+        <source>Removing parts of a map</source>
+        <comment>Shortcuts</comment>
+        <translation>Αφαίρεση τμημάτων του διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Remove only branch and keep its children </source>
+        <comment>Edit menu</comment>
+        <translation>Αφαίρεση κλαδου και διατήρηση απόγονων</translation>
+    </message>
+    <message>
+        <source>Remove children</source>
+        <comment>Edit menu</comment>
+        <translation>Αφαίρεση απόγονου κόμβου</translation>
+    </message>
+    <message>
+        <source>Various</source>
+        <comment>Shortcuts</comment>
+        <translation>Ποικίλα</translation>
+    </message>
+    <message>
+        <source>Add timestamp</source>
+        <comment>Edit menu</comment>
+        <translation>Προσθήκη χρονοσήμανσης</translation>
+    </message>
+    <message>
+        <source>Map properties...</source>
+        <comment>Edit menu</comment>
+        <translation>Ιδιότητες διαγράμματος...</translation>
+    </message>
+    <message>
+        <source>Add   ...</source>
+        <comment>Edit menu</comment>
+        <translation>Προσθήκη...</translation>
+    </message>
+    <message>
+        <source>Property window</source>
+        <comment>Dialog to edit properties of selection</comment>
+        <translation>Παράθυρο ιδιοτήτων</translation>
+    </message>
+    <message>
+        <source>Selections</source>
+        <comment>Shortcuts</comment>
+        <translation>Επιλογές</translation>
+    </message>
+    <message>
+        <source>Select</source>
+        <comment>Select menu</comment>
+        <translation>Επιλογή</translation>
+    </message>
+    <message>
+        <source>Toggle target...</source>
+        <comment>Edit menu</comment>
+        <translation>Εναλλαγή στόχου...</translation>
+    </message>
+    <message>
+        <source>Goto target...</source>
+        <comment>Edit menu</comment>
+        <translation>Μετάβαση στον στόχο...</translation>
+    </message>
+    <message>
+        <source>Move to target...</source>
+        <comment>Edit menu</comment>
+        <translation>Μετακίνηση προς τον στόχο...</translation>
+    </message>
+    <message>
+        <source>Select previous</source>
+        <comment>Edit menu</comment>
+        <translation>Επιλογή προηγούμενου</translation>
+    </message>
+    <message>
+        <source>Select next</source>
+        <comment>Edit menu</comment>
+        <translation>Επιλογή επόμενου</translation>
+    </message>
+    <message>
+        <source>Unselect all</source>
+        <comment>Edit menu</comment>
+        <translation>Αποεπιλογή όλων</translation>
+    </message>
+    <message>
+        <source>Search functions</source>
+        <comment>Shortcuts</comment>
+        <translation>Αναζήτηση λειτουργιών</translation>
+    </message>
+    <message>
+        <source>Find...</source>
+        <comment>Edit menu</comment>
+        <translation>Εύρεση...</translation>
+    </message>
+    <message>
+        <source>Find duplicate URLs</source>
+        <comment>Edit menu</comment>
+        <translation>Εύρεση διπλότυπων URLs</translation>
+    </message>
+    <message>
+        <source>F&amp;ormat</source>
+        <comment>Format menu</comment>
+        <translation>Μορ&amp;φοποίηση</translation>
+    </message>
+    <message>
+        <source>Formatting</source>
+        <comment>Shortcuts</comment>
+        <translation>Μορφοποίηση</translation>
+    </message>
+    <message>
+        <source>Set &amp;Color</source>
+        <translation>Ορισμός &amp;χρώματος</translation>
+    </message>
+    <message>
+        <source>Pic&amp;k color</source>
+        <comment>Edit menu</comment>
+        <translation>Επι&amp;λογή χρώματος</translation>
+    </message>
+    <message>
+        <source>Color &amp;branch</source>
+        <comment>Edit menu</comment>
+        <translation>Χρωματισμός &amp;κλάδου</translation>
+    </message>
+    <message>
+        <source>Color sub&amp;tree</source>
+        <comment>Edit menu</comment>
+        <translation>Χρώμα υπο-&amp;δέντρου</translation>
+    </message>
+    <message>
+        <source>Select default font</source>
+        <comment>Branch attribute</comment>
+        <translation>Επιλογη προκαθορισμένης γραμματοσειράς</translation>
+    </message>
+    <message>
+        <source>Linkstyle Line</source>
+        <translation>Μορφή γραμμών: γραμμή</translation>
+    </message>
+    <message>
+        <source>Linkstyle Curve</source>
+        <translation>Καμπύλη γραμμή σύνδεσης</translation>
+    </message>
+    <message>
+        <source>Linkstyle Thick Line</source>
+        <translation>Μορφή γραμμών: παχιά γραμμή</translation>
+    </message>
+    <message>
+        <source>Linkstyle Thick Curve</source>
+        <translation>Παχια καμπύλη γραμμή σύνδεσης</translation>
+    </message>
+    <message>
+        <source>Hide link if object is not selected</source>
+        <comment>Branch attribute</comment>
+        <translation>Απόκρυψη συνδέσμου εάν το αντικείμενο δεν είναι επιλεγμένο</translation>
+    </message>
+    <message>
+        <source>&amp;Use color of heading for link</source>
+        <comment>Branch attribute</comment>
+        <translation>&amp;Χρήση χρώματος κεφαλίδας για τον σύνδεσμο</translation>
+    </message>
+    <message>
+        <source>Set &amp;Link Color</source>
+        <translation>Ορισμός χρώματος &amp;σύνδεσης</translation>
+    </message>
+    <message>
+        <source>Set &amp;Selection Color</source>
+        <translation>Ορισμός χρώματος &amp;επιλογής</translation>
+    </message>
+    <message>
+        <source>Set &amp;Background Color</source>
+        <translation>Ορισμός χρώματος παρασκηνίου</translation>
+    </message>
+    <message>
+        <source>Set &amp;Background image</source>
+        <translation>Ορισμός εικόνας &amp;παρασκηνίου</translation>
+    </message>
+    <message>
+        <source>&amp;View</source>
+        <translation>&amp;Προβολή</translation>
+    </message>
+    <message>
+        <source>Toolbars</source>
+        <comment>Toolbars overview in view menu</comment>
+        <translation>Γραμμές εργαλείων</translation>
+    </message>
+    <message>
+        <source>Views</source>
+        <comment>Shortcuts</comment>
+        <translation>Προβολές</translation>
+    </message>
+    <message>
+        <source>Zoom in</source>
+        <comment>View action</comment>
+        <translation>Μεγέθυνση</translation>
+    </message>
+    <message>
+        <source>Zoom out</source>
+        <comment>View action</comment>
+        <translation>Σμίκρυνση</translation>
+    </message>
+    <message>
+        <source>Rotate counterclockwise</source>
+        <comment>View action</comment>
+        <translation>Αριστερόστροφη περιστροφή</translation>
+    </message>
+    <message>
+        <source>Rotate rclockwise</source>
+        <comment>View action</comment>
+        <translation>Δεξιόστροφη περιστροφή</translation>
+    </message>
+    <message>
+        <source>reset Zoom</source>
+        <comment>View action</comment>
+        <translation>Επαναφορά εστίασης</translation>
+    </message>
+    <message>
+        <source>Center on selection</source>
+        <comment>View action</comment>
+        <translation>Κέντρο της επιλογής</translation>
+    </message>
+    <message>
+        <source>Note editor</source>
+        <comment>View action</comment>
+        <translation>Επεξεργαστής σημειώσεων</translation>
+    </message>
+    <message>
+        <source>Heading editor</source>
+        <comment>View action</comment>
+        <translation>Επεξεργαστής κεφαλίδων</translation>
+    </message>
+    <message>
+        <source>Tree editor</source>
+        <comment>View action</comment>
+        <translation>Επεξεργαστής διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Task editor</source>
+        <comment>View action</comment>
+        <translation>Επεξεργαστής εργασιών</translation>
+    </message>
+    <message>
+        <source>Slide editor</source>
+        <comment>View action</comment>
+        <translation>Επεξεργαστής διαφανειών</translation>
+    </message>
+    <message>
+        <source>Script editor</source>
+        <comment>View action</comment>
+        <translation>Επεξεργαστής σεναρίων</translation>
+    </message>
+    <message>
+        <source>History Window</source>
+        <comment>View action</comment>
+        <translation>Παράθυρο ιστορικού</translation>
+    </message>
+    <message>
+        <source>Antialiasing</source>
+        <comment>View action</comment>
+        <translation>Εξομάλυνση</translation>
+    </message>
+    <message>
+        <source>Smooth pixmap transformations</source>
+        <comment>View action</comment>
+        <translation>Εξομάλυνση μετασχηματισμών εικονοστοιχείων </translation>
+    </message>
+    <message>
+        <source>Next Map</source>
+        <comment>View action</comment>
+        <translation>Επόμενο διάγραμμα</translation>
+    </message>
+    <message>
+        <source>Previous Map</source>
+        <comment>View action</comment>
+        <translation>Προηγούμενο διάγραμμα</translation>
+    </message>
+    <message>
+        <source>Next slide</source>
+        <comment>View action</comment>
+        <translation>Επόμενη διαφάνεια</translation>
+    </message>
+    <message>
+        <source>Previous slide</source>
+        <comment>View action</comment>
+        <translation>Προηγούμενη διαφάνεια</translation>
+    </message>
+    <message>
+        <source>Modifier modes</source>
+        <comment>Shortcuts</comment>
+        <translation>Μετατροπέας κατάστασης</translation>
+    </message>
+    <message>
+        <source>Use modifier to color branches</source>
+        <comment>Mode modifier</comment>
+        <translation>Χρήση μετατροπέα για χρωματισμό κλάδων</translation>
+    </message>
+    <message>
+        <source>Use modifier to draw xLinks</source>
+        <comment>Mode modifier</comment>
+        <translation>Χρήση μετατροπέα για σχεδιασμό xLinks</translation>
+    </message>
+    <message>
+        <source>Note</source>
+        <comment>SystemFlag</comment>
+        <translation>Σημείωση</translation>
+    </message>
+    <message>
+        <source>URL to Document </source>
+        <comment>SystemFlag</comment>
+        <translation>URL προς έγγραφο</translation>
+    </message>
+    <message>
+        <source>URL to Bugzilla </source>
+        <comment>SystemFlag</comment>
+        <translation>URL για το Bugzilla</translation>
+    </message>
+    <message>
+        <source>Map target</source>
+        <comment>SystemFlag</comment>
+        <translation>Στόχος διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Link to another vym map</source>
+        <comment>SystemFlag</comment>
+        <translation>Σύνδεσμος προς άλλο διάγραμμα VYM</translation>
+    </message>
+    <message>
+        <source>subtree is scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation>Το υπο-δέντρο είναι κυλιόμενο</translation>
+    </message>
+    <message>
+        <source>subtree is temporary scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation>Το υπο-δέντρο είναι προσωρινά κυλιόμενο</translation>
+    </message>
+    <message>
+        <source>Hide object in exported maps</source>
+        <comment>SystemFlag</comment>
+        <translation>Απόκρυψη αντικειμένου στα εξαγόμενα διαγράμματα</translation>
+    </message>
+    <message>
+        <source>Standard Flags toolbar</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation>Εργαλειοθήκη κανονικων σημαιών</translation>
+    </message>
+    <message>
+        <source>This won&apos;t work!</source>
+        <comment>Standardflag</comment>
+        <translation>Αυτό δεν λειτουργεί!</translation>
+    </message>
+    <message>
+        <source>Status - ok,done</source>
+        <comment>Standardflag</comment>
+        <translation>Κατάσταση - εντάξει, ολοκληρώθηκε</translation>
+    </message>
+    <message>
+        <source>Status - work in progress</source>
+        <comment>Standardflag</comment>
+        <translation>Κατάσταση - εργασία σε εξέλιξη</translation>
+    </message>
+    <message>
+        <source>Status - missing, not started</source>
+        <comment>Standardflag</comment>
+        <translation>Κατάσταση - δεν έχει ξεκινήσει</translation>
+    </message>
+    <message>
+        <source>Take care!</source>
+        <comment>Standardflag</comment>
+        <translation>Προσοχή!</translation>
+    </message>
+    <message>
+        <source>Really?</source>
+        <comment>Standardflag</comment>
+        <translation>Αλήθεια;</translation>
+    </message>
+    <message>
+        <source>Good</source>
+        <comment>Standardflag</comment>
+        <translation>Ευχαρίστηση</translation>
+    </message>
+    <message>
+        <source>Bad</source>
+        <comment>Standardflag</comment>
+        <translation>Δυσαρέσκεια</translation>
+    </message>
+    <message>
+        <source>Oh no!</source>
+        <comment>Standardflag</comment>
+        <translation>Ωχ, όχι!</translation>
+    </message>
+    <message>
+        <source>Time critical</source>
+        <comment>Standardflag</comment>
+        <translation>Ο χρόνος είναι σημαντικός</translation>
+    </message>
+    <message>
+        <source>Call...</source>
+        <comment>Standardflag</comment>
+        <translation>Κλήση...</translation>
+    </message>
+    <message>
+        <source>Idea!</source>
+        <comment>Standardflag</comment>
+        <translation>Ιδέα!</translation>
+    </message>
+    <message>
+        <source>Important</source>
+        <comment>Standardflag</comment>
+        <translation>Σημαντικό</translation>
+    </message>
+    <message>
+        <source>Unimportant</source>
+        <comment>Standardflag</comment>
+        <translation>Ασήμαντο</translation>
+    </message>
+    <message>
+        <source>Very important!</source>
+        <comment>Standardflag</comment>
+        <translation>Πολύ σημαντικό!</translation>
+    </message>
+    <message>
+        <source>Very unimportant!</source>
+        <comment>Standardflag</comment>
+        <translation>Πολύ ασήμαντο!</translation>
+    </message>
+    <message>
+        <source>I like this</source>
+        <comment>Standardflag</comment>
+        <translation>Μου αρέσει</translation>
+    </message>
+    <message>
+        <source>I do not like this</source>
+        <comment>Standardflag</comment>
+        <translation>Δεν μου αρέσει</translation>
+    </message>
+    <message>
+        <source>Rose</source>
+        <comment>Standardflag</comment>
+        <translation>Τριαντάφυλλο</translation>
+    </message>
+    <message>
+        <source>I just love...</source>
+        <comment>Standardflag</comment>
+        <translation>Απλά μου αρέσει...</translation>
+    </message>
+    <message>
+        <source>Surprise!</source>
+        <comment>Standardflag</comment>
+        <translation>Έκπληξη!</translation>
+    </message>
+    <message>
+        <source>Dangerous</source>
+        <comment>Standardflag</comment>
+        <translation>Επικίνδυνο</translation>
+    </message>
+    <message>
+        <source>Info</source>
+        <comment>Standardflag</comment>
+        <translation>Πληροφορίες</translation>
+    </message>
+    <message>
+        <source>This will help</source>
+        <comment>Standardflag</comment>
+        <translation>Αυτό θα βοηθήσει</translation>
+    </message>
+    <message>
+        <source>Important</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Σημαντικό</translation>
+    </message>
+    <message>
+        <source>Priority</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Προτεραιότητα</translation>
+    </message>
+    <message>
+        <source>Back</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Πίσω</translation>
+    </message>
+    <message>
+        <source>forward</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Εμπρός</translation>
+    </message>
+    <message>
+        <source>Look here</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Δείτε εδώ</translation>
+    </message>
+    <message>
+        <source>Dangerous</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Επικίνδυνο</translation>
+    </message>
+    <message>
+        <source>Don&apos;t flagrget</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Στόχος χωρίς σημαία</translation>
+    </message>
+    <message>
+        <source>Flag</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Σημαία</translation>
+    </message>
+    <message>
+        <source>Home</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Αρχική</translation>
+    </message>
+    <message>
+        <source>Telephone</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Τηλέφωνο</translation>
+    </message>
+    <message>
+        <source>Music</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Μουσική</translation>
+    </message>
+    <message>
+        <source>Mailbox</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Γραμματοκιβώτιο</translation>
+    </message>
+    <message>
+        <source>Maix</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Maix</translation>
+    </message>
+    <message>
+        <source>Password</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Κωδικός πρόσβασης</translation>
+    </message>
+    <message>
+        <source>To be improved</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Να βελτιωθεί</translation>
+    </message>
+    <message>
+        <source>Stop</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Σταμάτημα</translation>
+    </message>
+    <message>
+        <source>Magic</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Μαγικό</translation>
+    </message>
+    <message>
+        <source>To be discussed</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Να συζητηθεί</translation>
+    </message>
+    <message>
+        <source>Reminder</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Υπενθύμιση</translation>
+    </message>
+    <message>
+        <source>Excellent</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Εξαιρετικό</translation>
+    </message>
+    <message>
+        <source>Linux</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Linux</translation>
+    </message>
+    <message>
+        <source>Sweet</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Γλυκό</translation>
+    </message>
+    <message>
+        <source>Settings</source>
+        <translation>Ρυθμίσεις</translation>
+    </message>
+    <message>
+        <source>Check for release notes and updates</source>
+        <comment>Settings action</comment>
+        <translation>Έλεγχος για σημειώσεις έκδοσης και ενημερώσεις</translation>
+    </message>
+    <message>
+        <source>Set application to open pdf files</source>
+        <comment>Settings action</comment>
+        <translation>Ορισμός εφαρμογής για άνοιγμα αρχείων pdf</translation>
+    </message>
+    <message>
+        <source>Set application to open external links</source>
+        <comment>Settings action</comment>
+        <translation>Ορισμός εφαρμογής για άνοιγμα εξωτερικών συνδέσμων</translation>
+    </message>
+    <message>
+        <source>Set application to zip/unzip files</source>
+        <comment>Settings action</comment>
+        <translation>Ορισμός εφαρμογής για συμπίεση/αποσυμπίεση αρχείων</translation>
+    </message>
+    <message>
+        <source>Set path for macros</source>
+        <comment>Settings action</comment>
+        <translation>Ορισμός διαδρομής για μακροεντολές</translation>
+    </message>
+    <message>
+        <source>Set number of undo levels</source>
+        <comment>Settings action</comment>
+        <translation>Ορισμός αριθμού αναιρέσεων</translation>
+    </message>
+    <message>
+        <source>Autosave</source>
+        <comment>Settings action</comment>
+        <translation>Αυτόματη αποθήκευση</translation>
+    </message>
+    <message>
+        <source>Autosave time</source>
+        <comment>Settings action</comment>
+        <translation>Χρόνος αυτόματης αποθήκευσης</translation>
+    </message>
+    <message>
+        <source>Write backup file on save</source>
+        <comment>Settings action</comment>
+        <translation>Εγγραφή αρχείου αντίγραφου ασφαλείας για αποθήκευση</translation>
+    </message>
+    <message>
+        <source>Edit branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>Επεξεργασία κλάδου μετά την εισαγωγή του</translation>
+    </message>
+    <message>
+        <source>Select branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>Επιλογή κλάδου μετά την εισαγωγή του</translation>
+    </message>
+    <message>
+        <source>Select existing heading</source>
+        <comment>Settings action</comment>
+        <translation>Επιλογή υπάρχουσας κεφαλίδας</translation>
+    </message>
+    <message>
+        <source>Exclusive flags</source>
+        <comment>Settings action</comment>
+        <translation>Αποκλειστικές σημαίες</translation>
+    </message>
+    <message>
+        <source>Use hide flags</source>
+        <comment>Settings action</comment>
+        <translation>Χρήση σημαιών που βρίσκονται σε απόκρυψη</translation>
+    </message>
+    <message>
+        <source>Task editor: Set number of parents</source>
+        <comment>Settings action</comment>
+        <translation type="obsolete">Επεξεργαστής εργασιών: ορισμός αριθμού πρόγονων κόμβων</translation>
+    </message>
+    <message>
+        <source>Animation</source>
+        <comment>Settings action</comment>
+        <translation>Κινούμενη απεικόνιση</translation>
+    </message>
+    <message>
+        <source>Automatic layout</source>
+        <comment>Settings action</comment>
+        <translation>Αυτόματη διάταξη</translation>
+    </message>
+    <message>
+        <source>Test</source>
+        <translation>Δοκιμή</translation>
+    </message>
+    <message>
+        <source>&amp;Help</source>
+        <comment>Help menubar entry</comment>
+        <translation>&amp;Βοήθεια</translation>
+    </message>
+    <message>
+        <source>Open VYM Documentation (pdf) </source>
+        <comment>Help action</comment>
+        <translation>Άνοιγμα τεκμηρίωσης του VYM (pdf)</translation>
+    </message>
+    <message>
+        <source>Open VYM example maps </source>
+        <comment>Help action</comment>
+        <translation>Άνοιγμα διαγραμμάτων (παραδείγματα) του VYM</translation>
+    </message>
+    <message>
+        <source>Download and show release notes</source>
+        <comment>Help action</comment>
+        <translation>Λήψη και εμφάνιση σημειώσεων έκδοσης</translation>
+    </message>
+    <message>
+        <source>Check, if updates are available</source>
+        <comment>Help action</comment>
+        <translation>Έλεγχος για πιθανές ενημερώσεις</translation>
+    </message>
+    <message>
+        <source>Show keyboard shortcuts</source>
+        <comment>Help action</comment>
+        <translation>Εμφάνιση συντομεύσεων πληκτρολογίου</translation>
+    </message>
+    <message>
+        <source>About VYM</source>
+        <comment>Help action</comment>
+        <translation>Σχετικά με το VYM</translation>
+    </message>
+    <message>
+        <source>About QT</source>
+        <comment>Help action</comment>
+        <translation>Σχετικά με το QT</translation>
+    </message>
+    <message>
+        <source>Add</source>
+        <translation>Προσθήκη</translation>
+    </message>
+    <message>
+        <source>Remove</source>
+        <comment>Context menu name</comment>
+        <translation>Αφαίρεση</translation>
+    </message>
+    <message>
+        <source>Tasks</source>
+        <comment>Context menu</comment>
+        <translation>Εργασίες</translation>
+    </message>
+    <message>
+        <source>References (URLs, vymLinks, ...)</source>
+        <comment>Context menu name</comment>
+        <translation>Παραπομπές (URLs, vymLinks, ...)</translation>
+    </message>
+    <message>
+        <source>XLinks</source>
+        <comment>Menu for file actions</comment>
+        <translation>XLinks</translation>
+    </message>
+    <message>
+        <source>Edit XLink</source>
+        <comment>Context menu name</comment>
+        <translation>Επεξεργασία:XLink</translation>
+    </message>
+    <message>
+        <source>Follow XLink</source>
+        <comment>Context menu</comment>
+        <translation>Παρακολούθηση XLink</translation>
+    </message>
+    <message>
+        <source>Follow XLink</source>
+        <comment>Context menu name</comment>
+        <translation>Παρακολούθηση XLink</translation>
+    </message>
+    <message>
+        <source>Save image</source>
+        <comment>Context action</comment>
+        <translation>Αποθήκευση εικόνας</translation>
+    </message>
+    <message>
+        <source>File actions toolbar</source>
+        <comment>Toolbar for file actions</comment>
+        <translation>Βασικά εργαλεία για τα αρχεία</translation>
+    </message>
+    <message>
+        <source>Undo and clipboard toolbar</source>
+        <comment>Toolbar for redo/undo and clipboard</comment>
+        <translation>Εργαλειοθήκη αναιρέσεων και πρόχειρου</translation>
+    </message>
+    <message>
+        <source>Edit actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation>Εργαλειοθήκη επεξεργασίας</translation>
+    </message>
+    <message>
+        <source>Selection toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation>Εργαλειοθήκη επιλογών</translation>
+    </message>
+    <message>
+        <source>URLs and vymLinks toolbar</source>
+        <comment>Toolbar for URLs and vymlinks</comment>
+        <translation>Εργαλειοθήκη URLs και vymLinks</translation>
+    </message>
+    <message>
+        <source>Colors toolbar</source>
+        <comment>Colors toolbar name</comment>
+        <translation>Γραμμή εργαλείων χρωμάτων</translation>
+    </message>
+    <message>
+        <source>Zoom toolbar</source>
+        <comment>View Toolbar name</comment>
+        <translation>Εργαλειοθήκη εστίασης</translation>
+    </message>
+    <message>
+        <source>Editors toolbar</source>
+        <comment>Editor Toolbar name</comment>
+        <translation>Εργαλειοθήκη επεξεργαστών</translation>
+    </message>
+    <message>
+        <source>Modifier modes toolbar</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation>Εργαλειοθήκη μετατροπέα κατάστασης</translation>
+    </message>
+    <message>
+        <source>unnamed</source>
+        <comment>MainWindow: name for new and empty file</comment>
+        <translation>χωρίς όνομα</translation>
+    </message>
+    <message>
+        <source>The map %1
+is already opened.Opening the same map in multiple editors may lead 
+to confusion when finishing working with vym.Do you want to</source>
+        <translation>Το διάγραμμα %1
+είναι ήδη ανοιχτό. Το άνοιγμα ενός διαγράμματος σε πολλαπλούς επεξεργαστές είναι
+πιθανόν να οδηγήσει σε σύγχυση όταν ολοκληρωθεί η εργασία στο VYM. Τι θελετε
+να κάνετε;</translation>
+    </message>
+    <message>
+        <source>Open anyway</source>
+        <translation>Άνοιγμα οπωσδήποτε</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Άκυρο</translation>
+    </message>
+    <message>
+        <source>This map does not exist:
+  %1
+Do you want to create a new one?</source>
+        <translation>Αυτό το διάγραμμα δεν υπάρχει:
+  %1
+Θέλετε να δημιουργήσετε ένα νέο;</translation>
+    </message>
+    <message>
+        <source>Create</source>
+        <translation>Δημιουργία</translation>
+    </message>
+    <message>
+        <source>Loading: %1</source>
+        <comment>Progress dialog while loading maps</comment>
+        <translation>Φόρτωση: %1</translation>
+    </message>
+    <message>
+        <source>Load vym map</source>
+        <translation>Φόρτωση διαγράμματος VYM</translation>
+    </message>
+    <message>
+        <source>Import: Add vym map to selection</source>
+        <translation>Εισαγωγή: Προσθήκη διαγράμματος VYM στην επιλογή</translation>
+    </message>
+    <message>
+        <source>Import: Replace selection with vym map</source>
+        <translation>Εισαγωγή: Αντικατάσταση επιλογής με διάγραμμα VYM</translation>
+    </message>
+    <message>
+        <source>or</source>
+        <comment>File Dialog</comment>
+        <translation>ή</translation>
+    </message>
+    <message>
+        <source>Saved  %1</source>
+        <translation>Αποθηκεύτηκε: %1</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save </source>
+        <translation>Δεν αποθηκεύτηκε</translation>
+    </message>
+    <message>
+        <source>Save map as</source>
+        <translation>Αποθήκευση διαγράμματος ως</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already. Do you want to</source>
+        <translation>Το αρχείο %1 υπάρχει ήδη.
+Θέλετε να αντικατασταθεί;</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation>Αντικατάσταση</translation>
+    </message>
+    <message>
+        <source>Bookmarks</source>
+        <translation>Σελιδοδείκτες</translation>
+    </message>
+    <message>
+        <source>Import</source>
+        <translation>Εισαγωγή</translation>
+    </message>
+    <message>
+        <source>Load Freemind map</source>
+        <translation>Φόρτωση διαγράμματος Freemind</translation>
+    </message>
+    <message>
+        <source>Export as CSV</source>
+        <translation>Εξαγωγή ως CSV</translation>
+    </message>
+    <message>
+        <source>Export to</source>
+        <translation>Εξαγωγή σε</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation>Προειδοποίηση</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find configuration for export to LibreOffice
+</source>
+        <translation>Αδυναμία εντοπισμού ρυθμίσεων για εξαγωγή σε LibreOffice</translation>
+    </message>
+    <message>
+        <source>The map %1 has been modified but not saved yet. Do you want to</source>
+        <translation>Το διάγραμμα %1 έχει τροποποιηθεί, αλλά δεν
+έχει ακόμη αποθηκευτεί. Τι θέλετε να γίνει;</translation>
+    </message>
+    <message>
+        <source>Save modified map before closing it</source>
+        <translation>Αποθήκευση τροποποιημένου διαγράμματος πριν το κλείσιμο</translation>
+    </message>
+    <message>
+        <source>Discard changes</source>
+        <translation>Απόρριψη αλλαγών</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <translation>Αδυναμία εύρεσης εφαρμογής προβολης για ανοιγμα του %1.</translation>
+    </message>
+    <message>
+        <source>Please use Settings-&gt;</source>
+        <translation>Παρακαλώ χρησιμοποιήστε τις Ρυθμίσεις-&gt;</translation>
+    </message>
+    <message>
+        <source>Set application to open an URL</source>
+        <translation>Ορισμός μιας εφαρμογής για άνοιγμα URL</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start %1 to open a new tab in %2.</source>
+        <translation>Αδυναμία έναρξης %1 για άνοιγμα νέας καρτέλας %2.</translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation>Εισαγωγή URL:</translation>
+    </message>
+    <message>
+        <source>HTML</source>
+        <comment>Filedialog</comment>
+        <translation>HTML</translation>
+    </message>
+    <message>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation>Κείμενο</translation>
+    </message>
+    <message>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation>Φύλλο δεδομένων</translation>
+    </message>
+    <message>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation>Έγγραφο κειμένου</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation>Εικόνες</translation>
+    </message>
+    <message>
+        <source>Set URL to a local file</source>
+        <translation>Ορισμός URL για ένα τοπικό αρχείο</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation>Κρίσιμο σφάλμα</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open map %1</source>
+        <translation>Αδυναμία ανοίγματος του διαγράμματος %1</translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation>Σύνδεσμος προς άλλο διάγραμμα</translation>
+    </message>
+    <message>
+        <source>Enter sleep time (number of days or date YYYY-MM-DD or DD.MM[.YYYY]</source>
+        <comment>task sleep time dialog</comment>
+        <translation>Καταχωρίστε χρόνο ύπνου (αριθμό ημερών ή ημερομηνία YYYY-MM-DD ή DD.MM[.YYYY]</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t set sleep time to %1.
+</source>
+        <translation>Αδυναμία ορισμού χρόνου ύπνου σε %1.</translation>
+    </message>
+    <message>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation>%1 αντικείμενα στο διάγραμμα</translation>
+    </message>
+    <message>
+        <source>Set application to open PDF files</source>
+        <translation>Ορισμός εφαρμογής για άνοιγμα αρχείων PDF</translation>
+    </message>
+    <message>
+        <source>Set application to zip/unzip files</source>
+        <translation>Ορισμός εφαρμογής για συμπίεση/αποσυμπίεση αρχείων</translation>
+    </message>
+    <message>
+        <source>Directory with vym macros:</source>
+        <translation>Φάκελος με μακροεντολές VYM:</translation>
+    </message>
+    <message>
+        <source>Number of undo/redo levels:</source>
+        <translation>Αριθμός αναιρέσεων/ακύρωσης αναιρέσεων:</translation>
+    </message>
+    <message>
+        <source>VYM -Information:</source>
+        <translation>Πληροφορίες για το VYM:</translation>
+    </message>
+    <message>
+        <source>Settings have been changed. The next map opened will have &quot;%1&quot; undo/redo levels</source>
+        <translation>Οι ρυθμίσεις άλλαξαν. Το επόμενο διάγραμμα θα έχει %1 επίπεδα αναιρέσεων/ακύρωσης αναιρέσεων</translation>
+    </message>
+    <message>
+        <source>Number of seconds before autosave:</source>
+        <translation>Δευτερόλεπτα πριν την αυτόματη αποθήκευση:</translation>
+    </message>
+    <message>
+        <source>Number of parents shown for a task:</source>
+        <translation>Αριθμός πρόγονων κόμβων που εμφανιζονται για κάθε εργασία:</translation>
+    </message>
+    <message>
+        <source>(readonly)</source>
+        <translation>(μόνο για ανάγνωση)</translation>
+    </message>
+    <message>
+        <source>History for %1</source>
+        <comment>Window Caption</comment>
+        <translation>Ιστορικό για %1</translation>
+    </message>
+    <message>
+        <source>Export in last used format (%1) to: %2</source>
+        <comment>status tip</comment>
+        <translation>Εξαγωγή στη τελευταία χρησιμοποιούμενη μορφή (%1) σε: %2</translation>
+    </message>
+    <message>
+        <source>Critcal error</source>
+        <translation>Κρίσιμο σφάλμα</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find the documentation %1 in:
+%2</source>
+        <translation>Αδυναμία εύρεσης της τεκμηρίωσης %1 στο:
+%2</translation>
+    </message>
+    <message>
+        <source>Load vym example map</source>
+        <translation>Φόρτωση  διαγράμματος VYM ως παράδειγμα</translation>
+    </message>
+    <message>
+        <source>Please allow vym to download release notes!</source>
+        <translation>Παρακαλώ επιτρέψτε στο VYM να κάνει λήψη των σημειώσεων έκδοσης!</translation>
+    </message>
+    <message>
+        <source>&lt;html&gt;&lt;h3&gt;Do you allow vym to check online for updates or release notes?&lt;/h3&gt;If you allow, vym will &lt;ul&gt;&lt;li&gt;check once for release notes&lt;/li&gt;&lt;li&gt;check regulary for updates and notify you in case you should update, e.g. if there are important bug fixes available&lt;/li&gt;&lt;li&gt;receive a cookie with a random ID and send vym version and platform name and the ID  (e.g. &quot;Windows&quot; or &quot;Linux&quot;) back to me, Uwe Drechsel.&lt;p&gt;As vym developer I am motivated to see many people using vym. Of course I am curious to see, on which system vym is used. Maintaining each of the systems requires a lot of my (spare) time.&lt;/p&gt; &lt;p&gt;No other data than above will be sent, especially no private data will be collected or sent.(Check the source code, if you don&apos;t believe.)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;If you do not allow, &lt;ul&gt;&lt;li&gt;nothing will be downloaded and especially I will &lt;b&gt;not be motivated&lt;/b&gt; to spend some more thousands of hours on developing a free software tool.&lt;/ul&gt;Please allow vym to check for updates :-)</source>
+        <translation>&lt;html&gt;&lt;h3&gt;Επιτρέπετε στο VYM να ελέγχει για ενημερώσεις ή πληροφορίες εκδόσεων;&lt;/h3&gt;Εάν το επιτρέπετε, το VYM θα &lt;ul&gt;&lt;li&gt;κάνει μια φορά έλεγχο για πληροφορίες έκδοσης&lt;/li&gt;&lt;li&gt;, θα ελέγχει τακτικά για ενημερώσεις και θα σας ενημερώνει σε περίπτωση που θα πρέπει να κάνετε ενημέρωση, π.χ. αν υπάρχουν διαθέσιμες διορθώσεις σφαλμάτων &lt;/li&gt;&lt;li&gt;ένα cookie με τυχαίο ID θα στέλνει την έκδοση του VYM, τον τύπο του λειτουργικού συστήματος και το ID του (π.χ. &quot;Windows&quot; or &quot;Linux&quot;) στον Uwe Drechsel.&lt;p&gt;Ως δημιουργός του VYM θα ήθελα να δω ολοένα και περισσότερους ανθρώπους να το χρησιμοποιούν. Επίσης, θα ήθελα να γνωρίζω σε ποια λειτουργικά συστήματα εκτελείται η εφαρμογή αυτή. Η στήριξη που θα πρέπει να παρέχω για καθένα σύστημα απαιτεί πολύ προσωπικό χρόνο.&lt;/p&gt; &lt;p&gt;Καμμιά άλλη πληροφορία ή δεδομένο δεν θα φτάνει σε μένα, όπως επίσης δεν θα λαμβάνω και δεν θα συλλέγω κανένα προσωπικό δεδομένο. (Μπορείτε να διασταυρώσετε τον ισχυρισμό μου ελέγχοντας τον πηγαίο κώδικα της εφαρμογής. &lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;Εάν δεν το επιτρέπετε, &lt;ul&gt;&lt;li&gt;δεν θα γίνεται λήψη καμιάς πληροφορίας και, επίσης, &lt;b&gt;δεν θα έχω κίνητρο&lt;/b&gt; να διαθέσω χρόνο για την ανάπτυξη της εφαρμογής.&lt;/ul&gt;Παρακαλώ, να επιτρέψετε στο VYM να κάνει έλεγχο ενημερώσεων :-)</translation>
+    </message>
+    <message>
+        <source>Allow</source>
+        <translation>Επιτρέπεται</translation>
+    </message>
+    <message>
+        <source>Do not allow</source>
+        <translation>Δεν επιτρέπεται</translation>
+    </message>
+    <message>
+        <source>Thank you for enabling downloads!</source>
+        <translation>Ευχαριστούμε που ενεργοποιήσατε τις λήψεις!</translation>
+    </message>
+    <message>
+        <source>Update information</source>
+        <translation>Πληροφορίες ενημερώσεων</translation>
+    </message>
+    <message>
+        <source>vym is up to date.</source>
+        <comment>MainWindow</comment>
+        <translation>Το VYM είναι ενημερωμένο.</translation>
+    </message>
+    <message>
+        <source>Checking for updates...</source>
+        <comment>MainWindow</comment>
+        <translation>Έλεγχος για ενημερώσεις...</translation>
+    </message>
+    <message>
+        <source>Please allow vym to check for updates!</source>
+        <translation>Παρακαλώ, να επιτρέψετε στο VYM να κάνει έλεγχο ενημερώσεων!</translation>
+    </message>
+    <message>
+        <source>Set author for new maps</source>
+        <comment>Settings action</comment>
+        <translation>Ορισμός συγγραφέα για νέα διαγράμματα</translation>
+    </message>
+    <message>
+        <source>Number of visible parents in task editor</source>
+        <comment>Settings action</comment>
+        <translation>Αριθμός ορατών γονικών κόμβων στον επεξεργαστή εργασιών</translation>
+    </message>
+    <message>
+        <source>Number of visible parents in find results window</source>
+        <comment>Settings action</comment>
+        <translation>Αριθμός ορατών γονικών κόμβων στο παράθυρο αποτελεσμάτων εύρεσης</translation>
+    </message>
+    <message>
+        <source>Set author for new maps (used in lockfile)</source>
+        <translation>Ορισμός συγγραφέα για νέα διαγράμματα (χρησιμοποιείται στο αρχείο κλειδώματος)</translation>
+    </message>
+    <message>
+        <source>Number of parents shown in find results:</source>
+        <translation>Αριθμός γονικών κόμβων που εμφανίζονται στο παράθυρο αποτελεσμάτων:</translation>
+    </message>
+    <message>
+        <source>Webpage (HTML)...</source>
+        <comment>File export menu</comment>
+        <translation>Ιστοσελίδα (HTML)...</translation>
+    </message>
+    <message>
+        <source>Text (ASCII)...</source>
+        <comment>File export menu</comment>
+        <translation>Κείμενο (ASCII)...</translation>
+    </message>
+    <message>
+        <source>Text with tasks</source>
+        <comment>File export menu</comment>
+        <translation>Κείμενο με εργασίες</translation>
+    </message>
+    <message>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation>Άγνωστος χρήστης</translation>
+    </message>
+    <message>
+        <source>Text (A&amp;O report)...</source>
+        <comment>Export format</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Debug info</source>
+        <comment>Option to show debugging info</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save %1</source>
+        <translation type="unfinished">Αδυναμία αποθήκευσης του %1</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save %1,
+because of existing lockfile:
+
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>branches</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>notes</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>images</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>tasks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>slides</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>xLinks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>MapEditor</name>
+    <message>
+        <source>Map Editor</source>
+        <comment>Shortcut scope</comment>
+        <translation>Επεξεργαστής διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <comment>MapEditor</comment>
+        <translation>Επεξεργασία κεφαλίδας</translation>
+    </message>
+    <message>
+        <source>Print vym map</source>
+        <comment>MapEditor</comment>
+        <translation>Εκτύπωση διαγράμματος VYM</translation>
+    </message>
+</context>
+<context>
+    <name>NoteEditor</name>
+    <message>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation>Επεξεργαστής σημειώσεων</translation>
+    </message>
+</context>
+<context>
+    <name>QObject</name>
+    <message>
+        <source>Error</source>
+        <translation>Σφάλμα</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t access temporary directory
+</source>
+        <translation>Αδυναμία πρόσβασης του προσωρινού φακελου</translation>
+    </message>
+    <message>
+        <source>Warning: Overwriting file</source>
+        <translation>Προειδοποίηση: το αρχείο θα αντικατασταθεί</translation>
+    </message>
+    <message>
+        <source>Exporting to %1 will overwrite the existing file:
+%2</source>
+        <translation>Η εξαγωγή του %1 θα αντικαταστήσει το υπάρχον αρχείο:
+%2</translation>
+    </message>
+    <message>
+        <source>Export as ASCII</source>
+        <translation>Εξαγωγή ως ASCII</translation>
+    </message>
+    <message>
+        <source>(still experimental)</source>
+        <translation>(σε πειραματική λειτουργία)</translation>
+    </message>
+    <message>
+        <source>Critical Export Error</source>
+        <translation>Κρίσιμο σφάλμα εξαγωγής</translation>
+    </message>
+    <message>
+        <source>Could not export as AO to %1</source>
+        <translation>Αδυναμία εξαγωγής ως AO σε %1</translation>
+    </message>
+    <message>
+        <source>Export failed.</source>
+        <translation>Η εξαγωγή απέτυχε.</translation>
+    </message>
+    <message>
+        <source>Could not export as ASCII to %1</source>
+        <translation>Αδυναμία εξαγωγής ως ASCII σε %1</translation>
+    </message>
+    <message>
+        <source>Export as CSV</source>
+        <translation>Εξαγωγή ως CSV</translation>
+    </message>
+    <message>
+        <source>Could not export as CSV to %1</source>
+        <translation>Αδυναμία εξαγωγής ως CSV σε %1</translation>
+    </message>
+    <message>
+        <source>Exporting the %1 bookmarks will overwrite
+your existing bookmarks file.</source>
+        <translation>Η εξαγωγή των σελιδοδεικτών %1 θα αντικαταστήσει
+το υπάρχον αρχείο με τους σελιδοδείκτες.</translation>
+    </message>
+    <message>
+        <source>Warning: Overwriting %1 bookmarks</source>
+        <translation>Προειδοποίηση: θα γινει αντικατάσταση των σελιδοδεικτών %1</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation>Προειδοποίηση</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find script %1
+to notifiy Browsers of changed bookmarks.</source>
+        <translation>Αδυναμία εύρεσης σεναρίου %1
+για γνωστοποίηση των περιηγητών σχετικά με τις αλλαγές των σελιδοδεικτών.</translation>
+    </message>
+    <message>
+        <source>Contents:</source>
+        <comment>Used in HTML export</comment>
+        <translation>Περιεχόμενα:</translation>
+    </message>
+    <message>
+        <source>Export aborted.</source>
+        <translation>Η εξαγωγή ματαιώθηκε.</translation>
+    </message>
+    <message>
+        <source>Critical</source>
+        <translation>Κρίσιμο</translation>
+    </message>
+    <message>
+        <source>Could not find stylesheet %1</source>
+        <translation>Αδυναμία εύρεσης stylesheet %1</translation>
+    </message>
+    <message>
+        <source>Error</source>
+        <comment>ExportHTML</comment>
+        <translation>Σφάλμα</translation>
+    </message>
+    <message>
+        <source>Could not copy
+%1 to
+%2</source>
+        <comment>ExportHTML</comment>
+        <translation>Αδυναμία αντιγραφής του
+%1 στο
+%2</translation>
+    </message>
+    <message>
+        <source>Trying to create directory for flags:</source>
+        <translation>Προσπάθεια δημιουργίας φακέλου για τις σημαίες:</translation>
+    </message>
+    <message>
+        <source>Could not create %1</source>
+        <translation>Αδυναμία δημιουργίας του %1</translation>
+    </message>
+    <message>
+        <source>Could not copy %1 to %2</source>
+        <translation>Αδυναμία αντιγραφής του %1 στο %2</translation>
+    </message>
+    <message>
+        <source>Trying to save HTML file:</source>
+        <translation>Προσπάθεια αποθήκευσης του HTML αρχείου:</translation>
+    </message>
+    <message>
+        <source>Could not write %1</source>
+        <translation>Αδυναμία εγγραφής του %1</translation>
+    </message>
+    <message>
+        <source>Could not export as OrgMode to %1</source>
+        <translation>Αδυναμία εξαγωγής ως OrgMode σε %1</translation>
+    </message>
+    <message>
+        <source>Could not export as LaTeX to %1</source>
+        <translation>Αδυναμία εξαγωγής ως LaTeX σε %1</translation>
+    </message>
+    <message>
+        <source>Export as LibreOffice Impress presentation</source>
+        <translation>Εξαγωγή ως αρχείο παρουσίασης του LibreOffice - Impress</translation>
+    </message>
+    <message>
+        <source>No objects in map!</source>
+        <translation>Δεν υπάρχουν αντικείμενα στο διάγραμμα!</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t read settings from &quot;%1&quot;</source>
+        <translation>Αδυναμία ανάγνωσης ρυθμίσεων από το &quot;%1&quot;</translation>
+    </message>
+    <message>
+        <source>Check &quot;%1&quot; in
+%2</source>
+        <translation>Έλεγχος &quot;%1&quot; στο
+%2</translation>
+    </message>
+    <message>
+        <source>Could not read %1</source>
+        <translation>Αδυναμία ανάγνωσης του %1</translation>
+    </message>
+    <message>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <comment>write directory</comment>
+        <translation>Ο φάκελος %1 δεν είναι άδειος.
+Θα διακινδυνέψετε την αντικατάσταση των περιεχομένων του;</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation>Αντικατάσταση</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Άκυρο</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation>Κρίσιμο σφάλμα</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t move existing file out of the way before saving.</source>
+        <translation>Αδυναμία μετακίνησης υπάρχοντος αρχείου εκτός διαδρομής πριν την αποθήκευση.</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start tool to decompress data.</source>
+        <translation>Αδυναμία εκτέλεσης εφαρμογής για την αποσυμπίεση των δεδομένων.</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start zip to compress data.</source>
+        <translation>Αδυναμία εκκίνησης εφαρμογής για τη συμπίεση των δεδομένων.</translation>
+    </message>
+    <message>
+        <source>zip didn&apos;t exit normally</source>
+        <translation>Η εφαρμογή συμπίεσης δεν έκλεισε κανονικά</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t rename %1 back to %2</source>
+        <translation>Αδυναμία μετονομασιας %1 πάλι σε %2</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t remove target of old symbolic link %1</source>
+        <translation>Αδυναμία αφαίρεσης στόχου ενός παλιού συμβολικού συνδέσμου %1</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t rename output to target of old symbolic link %1</source>
+        <translation>Αδυναμία μετονομασίας στόχου ενός παλιού συμβολικού συνδέσμου %1</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t link from %1 to target of old symbolic link %2</source>
+        <translation>Αδυναμία σύνδεσης από το %1 στον στόχο ενός παλιού συμβολικού συνδέσμου %1 </translation>
+    </message>
+    <message>
+        <source>Saved %1, but couldn&apos;t remove %2</source>
+        <translation>Αποθήκευση του %1, αλλά αδυναμία αφαίρεσης του %2</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start unzip to decompress data.</source>
+        <translation>Αδυναμία εκκίνησης εφαρμογής για την αποσυμπίεση των δεδομένων.</translation>
+    </message>
+    <message>
+        <source>unzip didn&apos;t exit normally</source>
+        <translation>Η εφαρμογή αποσυμπίεσης δεν έκλεισε κανονικά</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation>Αδυναμία εύρεσης μακροεντολης στο %1.</translation>
+    </message>
+    <message>
+        <source>Please use Settings-&gt;</source>
+        <translation>Παρακαλώ χρησιμοποιήστε τις Ρυθμίσεις-&gt;</translation>
+    </message>
+    <message>
+        <source>Set directory for vym macros</source>
+        <translation>Ορισμός φακέλου για τις μακροεντολές του VYM</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find tool to unzip data. Please download and install 7z and set path in Settings menu:
+ </source>
+        <translation>Αδυναμία εύρεσης εφαρμογής για αποσυμπίεση δεδομένων. Παρακαλώ, κάντε λήψη και εγκαταστήστε την εφαρμογή 7z και ορίστε τη διαδρομή στο μενού των ρυθμίσεων:</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open &quot;%1&quot;
+%2.</source>
+        <translation>Αδυναμία ανοίγματος &quot;%1&quot;
+%2.</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save &quot;%1&quot;</source>
+        <translation>Αδυναμία αποθήκευσης &quot;%1&quot;</translation>
+    </message>
+    <message>
+        <source>No Bugzilla client found.  For openSUSE you can install by (running as root):
+
+</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation>Δεν βρέθηκε πελάτης Bugzilla. Για το openSUSE μπορείτε να κάνετε εγκατάσταση με (εκτέλεση ως διαχειριστής):</translation>
+    </message>
+    <message>
+        <source>Alternatively you can also add the repository
+and install the perl module for Bugzilla access using YaST</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation>Εναλλακτικά, μπορείτε να προσθέσετε το αποθετήριο
+και να εγκαταστήσετε το άρθρωμα perl για πρόσβαση στο Bugzilla χρησιμοποιώντας το YaST</translation>
+    </message>
+    <message>
+        <source>Warning: Couldn&apos;t find Bugzilla client</source>
+        <comment>VymModel</comment>
+        <translation>Προειδοποίηση: δεν βρέθηκε πελάτης Bugzilla</translation>
+    </message>
+    <message>
+        <source>Warning: Version Problem</source>
+        <translation>Προειδοποίηση: πρόβλημα με την έκδοση</translation>
+    </message>
+    <message>
+        <source>&lt;h3&gt;Map is newer than VYM&lt;/h3&gt;&lt;p&gt;The map you are just trying to load was saved using vym %1. The version of this vym is %2. If you run into problems after pressing the ok-button below, updating vym should help.&lt;/p&gt;</source>
+        <translation>&lt;h3&gt;Η έκδοση αυτού του διαγράμματος είναι νεότερη από το VYM&lt;/h3&gt;&lt;p&gt;Το διάγραμμα που προσπαθείτε να φορτώσετε αποθηκεύτηκε με την έκδοση %1 του VYM. Η έκδοση του VYM που εκτελείται αυτή τη στιγμή ειναι %2. Εάν αντιμετωπίσετε προβλήματα μετά το πάτημα του πλήκτρου &quot;εντάξει&quot;, η ενημέρωση του VYM θα βοηθήσει.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation>Αδυναμία εκκίνησης του %1</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation>Η εφαρμογή %1 δεν έκλεισε κανονικα</translation>
+    </message>
+</context>
+<context>
+    <name>ScriptEditor</name>
+    <message>
+        <source>Form</source>
+        <translation>Φόρμα</translation>
+    </message>
+    <message>
+        <source>Tab 1</source>
+        <translation>Καρτέλα 1</translation>
+    </message>
+    <message>
+        <source>Save to selected slide</source>
+        <translation>Αποθήκευση στην επιλεγμένη διαφάνεια</translation>
+    </message>
+    <message>
+        <source>Run</source>
+        <translation>Εκτέλεση</translation>
+    </message>
+    <message>
+        <source>Tab 2</source>
+        <translation>Καρτέλα 2</translation>
+    </message>
+    <message>
+        <source>Current key:</source>
+        <translation>Τρέχον κλειδί:</translation>
+    </message>
+    <message>
+        <source>Load</source>
+        <translation>Φόρτωση</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <translation>Αποθήκευση</translation>
+    </message>
+    <message>
+        <source>Slide</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation>Διαφάνεια</translation>
+    </message>
+    <message>
+        <source>Macro</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation>Μακροεντολή</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>ScriptEditor</comment>
+        <translation>Αποθήκευση</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation>Προειδοποίηση</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t get model to save script into slide!</source>
+        <translation>Αδυναμία λήψης μοντέλου για αποθήκευση σεναρίου στη διαφάνεια!</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find slide to save script into slide!</source>
+        <translation>Αδυναμία εύρεσης διαφάνειας για αποθήκευση σεναρίου σε αυτή!</translation>
+    </message>
+    <message>
+        <source>Save script</source>
+        <translation>Αποθήκευση σεναρίου</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation>Το αρχείο %1
+υπάρχει ηδη.
+Θέλετε να αντικατασταθεί;</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation>Αντικατάσταση</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Άκυρο</translation>
+    </message>
+    <message>
+        <source>Load script</source>
+        <translation>Φόρτωση σεναρίου</translation>
+    </message>
+    <message>
+        <source>Error</source>
+        <translation>Σφάλμα</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation>Αδυναμία ανοίγματος του %1.</translation>
+    </message>
+</context>
+<context>
+    <name>ShowTextDialog</name>
+    <message>
+        <source>Dialog</source>
+        <translation>Παράθυρο</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation>Κλείσιμο</translation>
+    </message>
+</context>
+<context>
+    <name>TaskEditor</name>
+    <message>
+        <source>Current map</source>
+        <comment>TaskEditor</comment>
+        <translation>Τρέχον διάγραμμα</translation>
+    </message>
+    <message>
+        <source>Active tasks</source>
+        <comment>TaskEditor</comment>
+        <translation>Ενεργές εργασίες</translation>
+    </message>
+    <message>
+        <source>New tasks</source>
+        <comment>TaskEditor</comment>
+        <translation>Νέες εργασίες</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <comment>TaskEditor</comment>
+        <translation>Επεξεργασία κεφαλίδας</translation>
+    </message>
+</context>
+<context>
+    <name>TaskModel</name>
+    <message>
+        <source>Prio</source>
+        <comment>TaskEditor</comment>
+        <translation>Προτεραιότητα</translation>
+    </message>
+    <message>
+        <source>Status</source>
+        <comment>TaskEditor</comment>
+        <translation>Κατάσταση</translation>
+    </message>
+    <message>
+        <source>Age total</source>
+        <comment>TaskEditor</comment>
+        <translation>Ηλικία συνολικά</translation>
+    </message>
+    <message>
+        <source>Age mod.</source>
+        <comment>TaskEditor</comment>
+        <translation>Ηλικία mod.</translation>
+    </message>
+    <message>
+        <source>Sleep</source>
+        <comment>TaskEditor</comment>
+        <translation>Ύπνος</translation>
+    </message>
+    <message>
+        <source>Map</source>
+        <comment>TaskEditor</comment>
+        <translation>Διάγραμμα</translation>
+    </message>
+    <message>
+        <source>Task</source>
+        <comment>TaskEditor</comment>
+        <translation>Εργασία</translation>
+    </message>
+</context>
+<context>
+    <name>TextEditor</name>
+    <message>
+        <source>Ready</source>
+        <comment>Statusbar message</comment>
+        <translation>Έτοιμο</translation>
+    </message>
+    <message>
+        <source>Text Editor</source>
+        <comment>Text Editor Window caption</comment>
+        <translation>Επεξεργαστής κειμένου</translation>
+    </message>
+    <message>
+        <source>No filename available for this note.</source>
+        <comment>Statusbar message</comment>
+        <translation>Δεν υπάρχει διαθέσιμο όνομα γι&apos; αυτή τη σημείωση.</translation>
+    </message>
+    <message>
+        <source>Note Actions</source>
+        <translation>Σημειώσεις ενεργειών</translation>
+    </message>
+    <message>
+        <source>&amp;Note</source>
+        <comment>Menubar</comment>
+        <translation>&amp;Σημείωση</translation>
+    </message>
+    <message>
+        <source>Texteditor</source>
+        <comment>Shortcuts</comment>
+        <translation>Επεξεργαστής κειμένου</translation>
+    </message>
+    <message>
+        <source>&amp;Import...</source>
+        <translation>&amp;Εισαγωγή...</translation>
+    </message>
+    <message>
+        <source>&amp;Export...</source>
+        <translation>&amp;Εξαγωγή...</translation>
+    </message>
+    <message>
+        <source>Export &amp;As... (HTML)</source>
+        <translation>Εξαγωγή &amp;ως... (HTML)</translation>
+    </message>
+    <message>
+        <source>Export &amp;As...(ASCII)</source>
+        <translation>Εξαγωγή &amp;ως... (ASCII)</translation>
+    </message>
+    <message>
+        <source>&amp;Print...</source>
+        <translation>&amp;Εκτύπωση...</translation>
+    </message>
+    <message>
+        <source>&amp;Delete All</source>
+        <translation>&amp;Διαγραφή ολων</translation>
+    </message>
+    <message>
+        <source>Edit Actions</source>
+        <translation>Επεξεργασία ενεργειών</translation>
+    </message>
+    <message>
+        <source>Edi&amp;t</source>
+        <translation>Επεξερ&amp;γασία</translation>
+    </message>
+    <message>
+        <source>&amp;Undo</source>
+        <translation>&amp;Αναίρεση</translation>
+    </message>
+    <message>
+        <source>&amp;Redo</source>
+        <translation>&amp;Ακύρωση αναίρεσης</translation>
+    </message>
+    <message>
+        <source>Select and copy &amp;all</source>
+        <translation>Επιλογή και αντιγραφή &amp;όλων</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <translation>&amp;Αντιγραφή</translation>
+    </message>
+    <message>
+        <source>Cu&amp;t</source>
+        <translation>Αποκο&amp;πή</translation>
+    </message>
+    <message>
+        <source>&amp;Paste</source>
+        <translation>&amp;Επικόλληση</translation>
+    </message>
+    <message>
+        <source>Font hints</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>Υποδείξεις γραμματοσειράς</translation>
+    </message>
+    <message>
+        <source>F&amp;ormat</source>
+        <translation>Μορ&amp;φοποίηση</translation>
+    </message>
+    <message>
+        <source>&amp;Font hint</source>
+        <translation>&amp;Υπόδειξη γραμματοσειράς</translation>
+    </message>
+    <message>
+        <source>&amp;Richtext</source>
+        <translation>&amp;Εμπλουτισμένο κείμενο</translation>
+    </message>
+    <message>
+        <source>Fonts</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>Γραμματοσειρές</translation>
+    </message>
+    <message>
+        <source>Format</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>Μορφοποίηση</translation>
+    </message>
+    <message>
+        <source>&amp;Color...</source>
+        <translation>&amp;Χρώμα...</translation>
+    </message>
+    <message>
+        <source>&amp;Bold</source>
+        <translation>&amp;Έντονα</translation>
+    </message>
+    <message>
+        <source>&amp;Italic</source>
+        <translation>&amp;Πλάγια</translation>
+    </message>
+    <message>
+        <source>&amp;Underline</source>
+        <translation>&amp;Υπογράμμιση</translation>
+    </message>
+    <message>
+        <source>Subs&amp;cript</source>
+        <translation>&amp;Δείκτης</translation>
+    </message>
+    <message>
+        <source>Su&amp;perscript</source>
+        <translation>Εκ&amp;θέτης</translation>
+    </message>
+    <message>
+        <source>&amp;Left</source>
+        <translation>&amp;Αριστερά</translation>
+    </message>
+    <message>
+        <source>C&amp;enter</source>
+        <translation>&amp;Κέντρο</translation>
+    </message>
+    <message>
+        <source>&amp;Right</source>
+        <translation>&amp;Δεξιά</translation>
+    </message>
+    <message>
+        <source>&amp;Justify</source>
+        <translation>&amp;Στοίχιση</translation>
+    </message>
+    <message>
+        <source>&amp;Settings</source>
+        <translation>&amp;Ρυθμίσεις</translation>
+    </message>
+    <message>
+        <source>Set &amp;fixed font</source>
+        <translation>Ορισμός &amp;σταθερής γραμματοσειράς</translation>
+    </message>
+    <message>
+        <source>Set &amp;variable font</source>
+        <translation>Ορισμός &amp;γραμματοσειράς μεταβλητών</translation>
+    </message>
+    <message>
+        <source>&amp;fixed font is default</source>
+        <translation>&amp;Η σταθερή γραμματοσειρά είναι η προκαθορισμένη</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <translation>Επεξεργαστής σημειώσεων</translation>
+    </message>
+    <message>
+        <source>Export Note to single file</source>
+        <translation>Εξαγωγή σημείωσης σε ξεχωριστό αρχείο</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation>Το αρχείο %1
+υπάρχει ηδη.
+Θέλετε να αντικατασταθεί;</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation>Αντικατάσταση</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Άκυρο</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t export note </source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation>Αδυναμία εξαγωγής σημείωσης</translation>
+    </message>
+    <message>
+        <source>Export Note to single file (ASCII)</source>
+        <translation>Εξαγωγή σημείωσης σε ξεχωριστό αρχείο (ASCII)</translation>
+    </message>
+    <message>
+        <source>Print</source>
+        <comment>TextEditor</comment>
+        <translation>Εκτύπωση</translation>
+    </message>
+</context>
+<context>
+    <name>TreeEditor</name>
+    <message>
+        <source>Select upper object</source>
+        <comment>Tree Editor</comment>
+        <translation>Επιλογή αντικειμένου που βρίσκεται ψηλότερα</translation>
+    </message>
+    <message>
+        <source>Select lower object</source>
+        <comment>Tree Editor</comment>
+        <translation>Επιλογή αντικειμένου που βρίσκεται χαμηλότερα</translation>
+    </message>
+</context>
+<context>
+    <name>VymModel</name>
+    <message>
+        <source>unnamed</source>
+        <translation>Ανώνυμο</translation>
+    </message>
+    <message>
+        <source>Critical Parse Error</source>
+        <translation>Κρίσιμο συντακτικό σφάλμα</translation>
+    </message>
+    <message>
+        <source>Critical Load Error</source>
+        <translation>Κρίσιμο σφάλμα φόρτωσης</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation>Αδυναμία δημιουργίας προσωρινού φακέλου πριν τη φόρτωση</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation>Αδυναμία εύρεσης ενός διαγράμματος (*.xml) στο αρχείο του VYM.</translation>
+    </message>
+    <message>
+        <source>unknown user</source>
+        <comment>Default for lockfiles of maps</comment>
+        <translation>Άγνωστος χρήστης</translation>
+    </message>
+    <message>
+        <source>Map seems to be already opened in another vym instance! It will be opened in readonly mode.
+
+Map is locked by &quot;%1&quot; on &quot;%2&quot;</source>
+        <translation type="vanished">Το διάγραμμα φαίνεται πως είναι ανοιχτό σε ένα στιγμιότυπο του VYM! Θα ανοίξει μόνο σε λειτουργία ανάγνωσης.
+
+Το διάγραμμα κλειδώθηκε από &quot;%1&quot; σε &quot;%2&quot;</translation>
+    </message>
+    <message>
+        <source>Warning: Map already opended</source>
+        <comment>VymModel</comment>
+        <translation>Προειδοποίηση: Το διάγραμμα φαίνεται πως είναι ήδη ανοιχτό</translation>
+    </message>
+    <message>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation>Το διάγραμμα %1
+δεν χρησιμοποίησε τη συμπιεσμένη μορφή αρχείου του VYM.
+Κάνοντας εγγραφή ενώ δεν είναι συμπιεσμένο το διάγραμμα,
+θα εγγραφούν εικόνες και σημαίες και έτσι υπάρχει περίπτωση
+να αντικατασταθούν αρχεία στον δοσμένο φάκελο
+
+Θέλετε να κάνετε εγγραφή του διαγράμματος;</translation>
+    </message>
+    <message>
+        <source>compressed (vym default)</source>
+        <translation>Συμπιεσμένο (προκαθορισμένο του VYM)</translation>
+    </message>
+    <message>
+        <source>uncompressed</source>
+        <translation>Μη συμπιεσμένο</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Άκυρο</translation>
+    </message>
+    <message>
+        <source>Save Error</source>
+        <translation>Αποθήκευση σφάλματος</translation>
+    </message>
+    <message>
+        <source>%1
+could not be removed before saving</source>
+        <translation>Το %1
+δεν είναι δυνατόν να αφαιρεθεί πριν την αποθήκευση</translation>
+    </message>
+    <message>
+        <source>%1
+could not be renamed before saving</source>
+        <translation>Το %1
+δεν είναι δυνατόν να μετονομαστεί πριν την αποθήκευση</translation>
+    </message>
+    <message>
+        <source>Critical Save Error</source>
+        <translation>Κρίσιμο σφάλμα αποθήκευσης</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation>Αδυναμία δημιουργίας προσωρινού φακέλου πριν την αποθήκευση</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <translation>Εικόνες</translation>
+    </message>
+    <message>
+        <source>All</source>
+        <comment>Filedialog</comment>
+        <translation>Όλα</translation>
+    </message>
+    <message>
+        <source>Load image</source>
+        <translation>Φόρτωση εικόνας</translation>
+    </message>
+    <message>
+        <source>Save image</source>
+        <translation>Αποθήκευση εικόνας</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation>Το αρχείο %1 υπάρχει ήδη.
+Θέλετε να το αντικαταστήσετε;</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation>Αντικατάσταση</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation>Κρίσιμο σφάλμα</translation>
+    </message>
+    <message>
+        <source>Unsupported format in %1</source>
+        <translation>Μη υποστηριζόμενη μορφή στο %1</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save %1</source>
+        <translation>Αδυναμία αποθήκευσης του %1</translation>
+    </message>
+    <message>
+        <source>Critical Import Error</source>
+        <translation>Κρίσιμο σφάλμα εισαγωγής</translation>
+    </message>
+    <message>
+        <source>Cannot find the directory %1</source>
+        <translation>Αδυναμία εύρεσης του φακέλου %1</translation>
+    </message>
+    <message>
+        <source>Choose directory structure to import</source>
+        <translation>Επιλογή δομής φακέλου για εισαγωγή</translation>
+    </message>
+    <message>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation>Το αρχείο του διαγράμματος στο δίσκο εχει αλλάξει:
+   %1
+Θέλετε να ξαναφορτώσετε το διάγραμμα με το νέο αρχείο;</translation>
+    </message>
+    <message>
+        <source>Reload</source>
+        <translation>Επαναφόρτωση</translation>
+    </message>
+    <message>
+        <source>Ignore</source>
+        <translation>Αγνόηση</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation>Προειδοποίηση</translation>
+    </message>
+    <message>
+        <source>Redo failed:
+%1</source>
+        <translation>Η ακύρωση αναίρεσης απέτυχε:
+%1</translation>
+    </message>
+    <message>
+        <source>Autosave disabled during undo.</source>
+        <translation>Απενεργοποίηση της αυτόματης αποθήκευσης κατά τη διάρκεια της αναίρεσης.</translation>
+    </message>
+    <message>
+        <source>Note</source>
+        <comment>FindAll in VymModel</comment>
+        <translation>Σημείωση</translation>
+    </message>
+    <message>
+        <source>Image</source>
+        <comment>Default name for new image</comment>
+        <translation>Εικόνα</translation>
+    </message>
+    <message>
+        <source>New map</source>
+        <comment>New map</comment>
+        <translation>Νέο διάγραμμα</translation>
+    </message>
+    <message>
+        <source>Contacting Bugzilla...</source>
+        <comment>VymModel</comment>
+        <translation>Επικοινωνια με Bugzilla...</translation>
+    </message>
+    <message>
+        <source>Script aborted:
+%1</source>
+        <translation>Το σενάριο αποβλήθηκε:
+%1</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <translation>Εξαγωγή διαγράμματος σε εικόνα</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save QImage %1 in format %2</source>
+        <translation>Αδυναμία αποθήκευσης QImage %1 σε μορφή %2</translation>
+    </message>
+    <message>
+        <source>Export map as PDF</source>
+        <translation>Εξαγωγη διαγράμματος ως PDF</translation>
+    </message>
+    <message>
+        <source>Export map as SVG</source>
+        <translation>Εξαγωγή διαγράμματος ως SVG</translation>
+    </message>
+    <message>
+        <source>Export map as XML</source>
+        <translation>Εξαγωγή διαγράμματος ως XML</translation>
+    </message>
+    <message>
+        <source>Export XML to directory</source>
+        <translation>Εξαγωγή του XML σε φάκελο</translation>
+    </message>
+    <message>
+        <source>Critical Export Error</source>
+        <translation>Κρίσιμο σφάλμα εξαγωγής</translation>
+    </message>
+    <message>
+        <source>Export as csv</source>
+        <translation>Εξαγωγή ως csv</translation>
+    </message>
+    <message>
+        <source>(still experimental)</source>
+        <translation>(σε πειραματική λειτουργία)</translation>
+    </message>
+    <message>
+        <source>Load background image</source>
+        <translation>Φόρτωση εικόνας παρασκηνίου</translation>
+    </message>
+    <message>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation>Άγνωστος χρήστης</translation>
+    </message>
+    <message>
+        <source>Cannot create lockfile of map! It will be opened in readonly mode.
+
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished">Προειδοποίηση</translation>
+    </message>
+    <message>
+        <source>Map seems to be already opened in another vym instance!
+
+ Map is locked by &quot;%1&quot; on &quot;%2&quot;
+
+Please only delete the lockfile, if you are sure nobody else is currently working on this map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Removed lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t remove lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>VymProcess</name>
+    <message>
+        <source>Critical Error</source>
+        <translation>Κρίσιμο σφάλμα</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation>Αδυναμία εκκίνησης του %1</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation>Η εφαρμογή %1 δεν έκλεισε κανονικα</translation>
+    </message>
+</context>
+<context>
+    <name>VymView</name>
+    <message>
+        <source>Tree Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation>Επεξεργαστής κόμβων διαγράμματος</translation>
+    </message>
+    <message>
+        <source>Slide Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation>Επεξεργαστής διαφανειών</translation>
+    </message>
+</context>
+<context>
+    <name>WarningDialog</name>
+    <message>
+        <source>Dialog</source>
+        <translation>Παράθυρο</translation>
+    </message>
+    <message>
+        <source>showAgainBox</source>
+        <translation>Εμφάνιση AgainBox</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Άκυρο</translation>
+    </message>
+    <message>
+        <source>Ok</source>
+        <translation>Εντάξει</translation>
+    </message>
+    <message>
+        <source>Proceed</source>
+        <translation>Πρόοδος</translation>
+    </message>
+    <message>
+        <source>Show this message again</source>
+        <translation>Δείξε αυτό το μήνυμα πάλι</translation>
+    </message>
+</context>
+</TS>
diff --git a/lang/vym.en.ts b/lang/vym.en.ts
new file mode 100644 (file)
index 0000000..f753986
--- /dev/null
@@ -0,0 +1,3824 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="de_DE">
+<context>
+    <name>AboutDialog</name>
+    <message>
+        <location filename="../aboutdialog.cpp" line="106"/>
+        <source>Credits</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="221"/>
+        <source>License</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="226"/>
+        <source>Ok</source>
+        <comment>Ok Button</comment>
+        <translation></translation>
+    </message>
+</context>
+<context>
+    <name>AboutTextBrowser</name>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Please use Settings-&gt;</source>
+        <translation></translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="246"/>
+        <source>Warning</source>
+        <comment>About window</comment>
+        <translation></translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="247"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <comment>About window</comment>
+        <translation></translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Set application to open an URL...</source>
+        <translation></translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyEditor</name>
+    <message>
+        <location filename="../branchpropeditor.ui" line="20"/>
+        <source>Branch Property Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="30"/>
+        <source>Frame</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="51"/>
+        <source>Geometry</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="64"/>
+        <source>No Frame</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="69"/>
+        <source>Rectangle</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="74"/>
+        <source>Rounded Rectangle</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="79"/>
+        <source>Ellipse</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="84"/>
+        <source>Cloud</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="105"/>
+        <source>Padding</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="112"/>
+        <source>Borderline width</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="136"/>
+        <source>Include children</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="169"/>
+        <source>Colors</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="209"/>
+        <source>Borderline color</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="232"/>
+        <source>Background color</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="261"/>
+        <source>Layout</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="269"/>
+        <source>Include images horizontally</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="276"/>
+        <source>Include images vertically</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="283"/>
+        <source>Free positioning of children (experimental!)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="306"/>
+        <source>Link</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="312"/>
+        <source>Hide link if unselected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="333"/>
+        <source>Attributes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="359"/>
+        <source>+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="366"/>
+        <source>-</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.cpp" line="19"/>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>DownloadAgent</name>
+    <message>
+        <location filename="../downloadagent.cpp" line="191"/>
+        <location filename="../downloadagent.cpp" line="195"/>
+        <source>Warning</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>EditXLinkDialog</name>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="20"/>
+        <source>Edit XLink</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="40"/>
+        <source>Arrow begin:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="63"/>
+        <source>XLink width:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="79"/>
+        <source>Use color of heading</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="177"/>
+        <source>Line style:</source>
+        <extracomment>Linestyle in Edit XLink dialog</extracomment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="190"/>
+        <source>Arrow end:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="253"/>
+        <source>Close</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="109"/>
+        <source>XLink color:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="151"/>
+        <source>Use as default:</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>ExportHTMLDialog</name>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="26"/>
+        <source>Export HTML</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="61"/>
+        <source>Export to directory:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="90"/>
+        <location filename="../exporthtmldialog.ui" line="267"/>
+        <location filename="../exporthtmldialog.ui" line="280"/>
+        <location filename="../exporthtmldialog.ui" line="353"/>
+        <source>Browse</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="117"/>
+        <source>Options</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="138"/>
+        <source>Image of map</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="145"/>
+        <source>Include images</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="152"/>
+        <source>Table of contents</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="159"/>
+        <source>Task flags</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="166"/>
+        <source>General flags</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="173"/>
+        <source>Number sections</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="231"/>
+        <source>Copy CSS from </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="251"/>
+        <source>Use CSS from</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="186"/>
+        <source>Colored headings in text</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="199"/>
+        <source>Save settings in map</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="216"/>
+        <source>Stylesheets</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="297"/>
+        <source>Scripts</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="327"/>
+        <source>After Export:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="382"/>
+        <source>Cancel</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="389"/>
+        <source>Export</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>Warning</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>The settings saved in the map would like to run script:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="123"/>
+        <source>VYM - Export HTML to directory</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>ExtraInfoDialog</name>
+    <message>
+        <location filename="../extrainfodialog.ui" line="15"/>
+        <source>VYM - Info</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="36"/>
+        <source>Map:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="53"/>
+        <source>Title:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="63"/>
+        <source>Author:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="86"/>
+        <source>Comment:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="96"/>
+        <source>Statistics:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="139"/>
+        <source>Cancel</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="146"/>
+        <source>Close</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>FindWidget</name>
+    <message>
+        <location filename="../findwidget.cpp" line="25"/>
+        <source>Find:</source>
+        <comment>FindWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HeadingEditor</name>
+    <message>
+        <location filename="../headingeditor.cpp" line="9"/>
+        <source>Heading Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HistoryWindow</name>
+    <message>
+        <location filename="../historywindow.ui" line="13"/>
+        <source>Dialog</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="50"/>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="72"/>
+        <source>Time</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="77"/>
+        <source>Comment</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="85"/>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="122"/>
+        <source>Close</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="17"/>
+        <source>Action</source>
+        <comment>Table with actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="20"/>
+        <source>Comment</source>
+        <comment>Table with actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="23"/>
+        <source>Undo action</source>
+        <comment>Table with actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="125"/>
+        <source>Current state</source>
+        <comment>Current bar in history hwindow</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>LineEditDialog</name>
+    <message>
+        <location filename="../lineeditdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="26"/>
+        <source>TextLabel</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="89"/>
+        <location filename="../lineeditdialog.cpp" line="17"/>
+        <source>Cancel</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="99"/>
+        <location filename="../lineeditdialog.cpp" line="9"/>
+        <source>Ok</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>LockedFileDialog</name>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="116"/>
+        <location filename="../lockedfiledialog.cpp" line="7"/>
+        <source>Delete lockfile</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="123"/>
+        <location filename="../lockedfiledialog.cpp" line="6"/>
+        <source>Open readonly</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Main</name>
+    <message>
+        <location filename="../mainwindow.cpp" line="1883"/>
+        <source>Set &amp;Color</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1928"/>
+        <source>Linkstyle Line</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1942"/>
+        <source>Linkstyle Thick Line</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1981"/>
+        <source>Set &amp;Background Color</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1995"/>
+        <source>&amp;View</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3460"/>
+        <source>Overwrite</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3188"/>
+        <location filename="../mainwindow.cpp" line="3235"/>
+        <location filename="../mainwindow.cpp" line="3461"/>
+        <source>Cancel</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3187"/>
+        <source>Open anyway</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3234"/>
+        <source>Create</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3303"/>
+        <source>Load vym map</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3306"/>
+        <source>Import: Add vym map to selection</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3309"/>
+        <source>Import: Replace selection with vym map</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <location filename="../mainwindow.cpp" line="4130"/>
+        <source>Critical Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2723"/>
+        <source>Add</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="238"/>
+        <source>Note Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="245"/>
+        <source>Heading Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="260"/>
+        <source>Search results list</source>
+        <comment>FindResultWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2913"/>
+        <source>File actions toolbar</source>
+        <comment>Toolbar for file actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1067"/>
+        <source>PDF%1</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1071"/>
+        <source>SVG%1</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1040"/>
+        <source>Repeat last export (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2931"/>
+        <source>Edit actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1208"/>
+        <source>Add attribute</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1316"/>
+        <source>&amp;Detach</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1317"/>
+        <source>Detach branch and use as mapcenter</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1334"/>
+        <source>Sort children backwards</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1411"/>
+        <source>Expand all branches</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1419"/>
+        <source>Expand one level</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1389"/>
+        <source>Collapse one level</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1400"/>
+        <source>Collapse unselected levels</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1355"/>
+        <source>Unscroll children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1360"/>
+        <source>Grow selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1369"/>
+        <source>Shrink selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1378"/>
+        <source>Reset selection size</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1795"/>
+        <source>Toggle target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1804"/>
+        <source>Goto target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1812"/>
+        <source>Move to target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1864"/>
+        <source>Find duplicate URLs</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1446"/>
+        <source>Open all URLs in subtree (including scrolled branches)</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1461"/>
+        <source>Extract URLs from note</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1754"/>
+        <source>Add timestamp</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1743"/>
+        <source>Remove children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2972"/>
+        <source>Zoom toolbar</source>
+        <comment>View Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2042"/>
+        <source>Center on selection</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2982"/>
+        <source>Editors toolbar</source>
+        <comment>Editor Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2994"/>
+        <source>Modifier modes toolbar</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2242"/>
+        <location filename="../mainwindow.cpp" line="2245"/>
+        <source>URL to Bugzilla </source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2248"/>
+        <source>Map target</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2265"/>
+        <source>Standard Flags toolbar</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2279"/>
+        <source>Status - ok,done</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2283"/>
+        <source>Status - work in progress</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2287"/>
+        <source>Status - missing, not started</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2385"/>
+        <source>forward</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2397"/>
+        <source>Don&apos;t flagrget</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2630"/>
+        <source>Automatic layout</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2641"/>
+        <source>Test</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2803"/>
+        <source>Follow XLink</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2809"/>
+        <source>Follow XLink</source>
+        <comment>Context menu name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3126"/>
+        <source>unnamed</source>
+        <comment>MainWindow: name for new and empty file</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3179"/>
+        <source>The map %1
+is already opened.Opening the same map in multiple editors may lead 
+to confusion when finishing working with vym.Do you want to</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3228"/>
+        <source>This map does not exist:
+  %1
+Do you want to create a new one?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3264"/>
+        <source>Loading: %1</source>
+        <comment>Progress dialog while loading maps</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3413"/>
+        <source>Saved  %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3417"/>
+        <source>Couldn&apos;t save </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3455"/>
+        <source>The file %1
+exists already. Do you want to</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2291"/>
+        <source>Take care!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2295"/>
+        <source>Really?</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2274"/>
+        <source>This won&apos;t work!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2299"/>
+        <source>Good</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2303"/>
+        <source>Bad</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2312"/>
+        <source>Time critical</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2318"/>
+        <source>Idea!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2322"/>
+        <source>Important</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2326"/>
+        <source>Unimportant</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2339"/>
+        <source>I like this</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2343"/>
+        <source>I do not like this</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2356"/>
+        <source>Dangerous</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2364"/>
+        <source>This will help</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <location filename="../mainwindow.cpp" line="1087"/>
+        <location filename="../mainwindow.cpp" line="1091"/>
+        <location filename="../mainwindow.cpp" line="1095"/>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <source>(still experimental)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1110"/>
+        <source>&amp;Print</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2307"/>
+        <source>Oh no!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2315"/>
+        <source>Call...</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2330"/>
+        <source>Very important!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2334"/>
+        <source>Very unimportant!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2347"/>
+        <source>Rose</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2353"/>
+        <source>Surprise!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2360"/>
+        <source>Info</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="252"/>
+        <source>Script Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="124"/>
+        <source>Main window</source>
+        <comment>Shortcut scope</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="314"/>
+        <source>Task list</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="273"/>
+        <source>Script Editor</source>
+        <comment>ScriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="218"/>
+        <source>Main window</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="219"/>
+        <source>Map Editors</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="220"/>
+        <source>Text Editors</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="967"/>
+        <source>&amp;Map</source>
+        <comment>Menu for file actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="985"/>
+        <source>&amp;Open...</source>
+        <comment>File menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="992"/>
+        <source>&amp;Restore last session</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1000"/>
+        <source>Open Recent</source>
+        <comment>File menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1003"/>
+        <source>&amp;Save...</source>
+        <comment>File menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1011"/>
+        <source>Save &amp;As...</source>
+        <comment>File menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1017"/>
+        <source>Import</source>
+        <comment>File menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1038"/>
+        <source>Export</source>
+        <comment>File menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1047"/>
+        <source>Webpage (HTML)...</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1051"/>
+        <source>Text (ASCII)...</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <source>Text with tasks</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1063"/>
+        <source>Image%1</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1118"/>
+        <source>&amp;Close Map</source>
+        <comment>File menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1124"/>
+        <source>E&amp;xit</source>
+        <comment>File menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1139"/>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1150"/>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1161"/>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1172"/>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1185"/>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1197"/>
+        <source>Delete Selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1232"/>
+        <source>Add branch as child</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1242"/>
+        <source>Add branch (insert)</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1252"/>
+        <location filename="../mainwindow.cpp" line="1262"/>
+        <source>Add branch above</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1272"/>
+        <location filename="../mainwindow.cpp" line="1281"/>
+        <source>Add branch below</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1343"/>
+        <source>Scroll branch</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1429"/>
+        <source>References Context menu</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1498"/>
+        <source>Bugzilla handling</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1499"/>
+        <source>Create URL to SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1510"/>
+        <source>Get data from SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1519"/>
+        <source>Get data from SUSE Bugzilla for subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1528"/>
+        <source>SUSE Fate tool handling</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1529"/>
+        <source>Create URL to SUSE FATE tool</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1537"/>
+        <source>vymlinks - linking maps</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1574"/>
+        <source>Exports</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1586"/>
+        <source>Tasks</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1587"/>
+        <source>Toggle task</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1598"/>
+        <source>Cycle task status</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1609"/>
+        <source>Reset sleep</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1620"/>
+        <location filename="../mainwindow.cpp" line="1643"/>
+        <location filename="../mainwindow.cpp" line="1654"/>
+        <location filename="../mainwindow.cpp" line="1665"/>
+        <location filename="../mainwindow.cpp" line="1676"/>
+        <source>Sleep %1 days</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1632"/>
+        <source>Sleep %1 day</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1687"/>
+        <location filename="../mainwindow.cpp" line="1698"/>
+        <source>Sleep %1 weeks</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1730"/>
+        <source>Removing parts of a map</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1753"/>
+        <source>Various</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1771"/>
+        <source>Add   ...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1792"/>
+        <source>Selections</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1793"/>
+        <source>Select</source>
+        <comment>Select menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1848"/>
+        <source>Search functions</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1849"/>
+        <location filename="../mainwindow.cpp" line="1857"/>
+        <source>Find...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2613"/>
+        <source>Number of visible parents in task editor</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2618"/>
+        <source>Number of visible parents in find results window</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1430"/>
+        <source>Open URL</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1438"/>
+        <source>Open URL in new tab</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1454"/>
+        <source>Open all URLs in subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1470"/>
+        <source>Edit URL...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1488"/>
+        <source>Use heading for URL</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1538"/>
+        <source>Open linked map</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1552"/>
+        <source>Open all vym links in subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1560"/>
+        <source>Edit vym link...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1567"/>
+        <source>Delete vym link</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1575"/>
+        <source>Hide in exports</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1710"/>
+        <source>Add map (insert)</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1717"/>
+        <source>Add map (replace)</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1724"/>
+        <source>Save selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1876"/>
+        <source>F&amp;ormat</source>
+        <comment>Format menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1889"/>
+        <source>Pic&amp;k color</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1898"/>
+        <source>Color &amp;branch</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1907"/>
+        <source>Color sub&amp;tree</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1958"/>
+        <source>Hide link if object is not selected</source>
+        <comment>Branch attribute</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1964"/>
+        <source>&amp;Use color of heading for link</source>
+        <comment>Branch attribute</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2034"/>
+        <source>reset Zoom</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2002"/>
+        <source>Zoom in</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1021"/>
+        <source>Firefox Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <source>Import Dir%1</source>
+        <comment>Import Filters</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1733"/>
+        <source>Remove only branch and keep its children </source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1878"/>
+        <source>Formatting</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1997"/>
+        <source>Views</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2010"/>
+        <source>Zoom out</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2174"/>
+        <source>Modifier modes</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2178"/>
+        <source>Use modifier to color branches</source>
+        <comment>Mode modifier</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2194"/>
+        <source>Use modifier to draw xLinks</source>
+        <comment>Mode modifier</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2531"/>
+        <source>Set application to open pdf files</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2535"/>
+        <source>Set application to open external links</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2581"/>
+        <source>Edit branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2587"/>
+        <source>Select branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2593"/>
+        <source>Select existing heading</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2599"/>
+        <source>Exclusive flags</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2605"/>
+        <source>Use hide flags</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2673"/>
+        <source>&amp;Help</source>
+        <comment>Help menubar entry</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2676"/>
+        <source>Open VYM Documentation (pdf) </source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2702"/>
+        <source>About VYM</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2706"/>
+        <source>About QT</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2735"/>
+        <source>Remove</source>
+        <comment>Context menu name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2798"/>
+        <source>Edit XLink</source>
+        <comment>Context menu name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2818"/>
+        <source>Save image</source>
+        <comment>Context action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="971"/>
+        <source>&amp;New map</source>
+        <comment>File menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="280"/>
+        <source>Property Editor</source>
+        <comment>PropertyEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="287"/>
+        <source>History window</source>
+        <comment>HistoryWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="978"/>
+        <source>&amp;Copy to new map</source>
+        <comment>File menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1059"/>
+        <source>Text (A&amp;O report)...</source>
+        <comment>Export format</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <source>Spreadsheet</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1101"/>
+        <source>Properties</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1135"/>
+        <source>E&amp;dit</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1221"/>
+        <source>Add mapcenter</source>
+        <comment>Canvas context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1290"/>
+        <source>Move branch up</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1303"/>
+        <source>Move branch down</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1325"/>
+        <source>Sort children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1479"/>
+        <source>Edit local URL...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1545"/>
+        <source>Open linked map in background tab</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1765"/>
+        <source>Map properties...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1779"/>
+        <source>Property window</source>
+        <comment>Dialog to edit properties of selection</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1820"/>
+        <source>Select previous</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1830"/>
+        <source>Select next</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1840"/>
+        <source>Unselect all</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1918"/>
+        <source>Select default font</source>
+        <comment>Branch attribute</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1935"/>
+        <source>Linkstyle Curve</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1949"/>
+        <source>Linkstyle Thick Curve</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1971"/>
+        <source>Set &amp;Link Color</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1976"/>
+        <source>Set &amp;Selection Color</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1986"/>
+        <source>Set &amp;Background image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1996"/>
+        <source>Toolbars</source>
+        <comment>Toolbars overview in view menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2018"/>
+        <source>Rotate counterclockwise</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2026"/>
+        <source>Rotate rclockwise</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2053"/>
+        <source>Note editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2064"/>
+        <source>Heading editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2076"/>
+        <source>Tree editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2084"/>
+        <source>Task editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2094"/>
+        <source>Slide editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2102"/>
+        <source>Script editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2110"/>
+        <source>History Window</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2124"/>
+        <source>Antialiasing</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2131"/>
+        <source>Smooth pixmap transformations</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2139"/>
+        <source>Next Map</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2146"/>
+        <source>Previous Map</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2153"/>
+        <source>Next slide</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2160"/>
+        <source>Previous slide</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2213"/>
+        <location filename="../mainwindow.cpp" line="2216"/>
+        <location filename="../mainwindow.cpp" line="2219"/>
+        <location filename="../mainwindow.cpp" line="2223"/>
+        <location filename="../mainwindow.cpp" line="2226"/>
+        <location filename="../mainwindow.cpp" line="2229"/>
+        <location filename="../mainwindow.cpp" line="2233"/>
+        <location filename="../mainwindow.cpp" line="2236"/>
+        <source>Note</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2239"/>
+        <source>URL to Document </source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2251"/>
+        <source>Link to another vym map</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2254"/>
+        <source>subtree is scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2257"/>
+        <source>subtree is temporary scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2260"/>
+        <source>Hide object in exported maps</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2350"/>
+        <source>I just love...</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2369"/>
+        <source>Important</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2376"/>
+        <source>Priority</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2381"/>
+        <source>Back</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2389"/>
+        <source>Look here</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2393"/>
+        <source>Dangerous</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2401"/>
+        <source>Flag</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2406"/>
+        <source>Home</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2410"/>
+        <source>Telephone</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2414"/>
+        <source>Music</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2418"/>
+        <source>Mailbox</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2422"/>
+        <source>Maix</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2426"/>
+        <source>Password</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2430"/>
+        <source>To be improved</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2434"/>
+        <source>Stop</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2438"/>
+        <source>Magic</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2442"/>
+        <source>To be discussed</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2446"/>
+        <source>Reminder</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2450"/>
+        <source>Excellent</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2454"/>
+        <source>Linux</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2458"/>
+        <source>Sweet</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2514"/>
+        <source>Settings</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2518"/>
+        <source>Check for release notes and updates</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2525"/>
+        <source>Set author for new maps</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2539"/>
+        <source>Set application to zip/unzip files</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2543"/>
+        <source>Set path for macros</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2547"/>
+        <source>Set number of undo levels</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2553"/>
+        <source>Autosave</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2559"/>
+        <source>Autosave time</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2572"/>
+        <source>Write backup file on save</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2698"/>
+        <source>Debug info</source>
+        <comment>Option to show debugging info</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <source>Couldn&apos;t save %1,
+because of existing lockfile:
+
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3533"/>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <source>Bookmarks</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <location filename="../mainwindow.cpp" line="3596"/>
+        <source>Import</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3563"/>
+        <source>Load Freemind map</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <source>Export as CSV</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <location filename="../mainwindow.cpp" line="3724"/>
+        <source>Export to</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3745"/>
+        <location filename="../mainwindow.cpp" line="3875"/>
+        <location filename="../mainwindow.cpp" line="3918"/>
+        <location filename="../mainwindow.cpp" line="4260"/>
+        <location filename="../mainwindow.cpp" line="5800"/>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Warning</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3746"/>
+        <source>Couldn&apos;t find configuration for export to LibreOffice
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3770"/>
+        <source>The map %1 has been modified but not saved yet. Do you want to</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3775"/>
+        <source>Save modified map before closing it</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3776"/>
+        <source>Discard changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3876"/>
+        <location filename="../mainwindow.cpp" line="5801"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Please use Settings-&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="4981"/>
+        <source>Set application to open an URL</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3919"/>
+        <source>Couldn&apos;t start %1 to open a new tab in %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3994"/>
+        <source>Enter URL:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4017"/>
+        <source>HTML</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4018"/>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4019"/>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4020"/>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4021"/>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4025"/>
+        <source>Set URL to a local file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4131"/>
+        <source>Couldn&apos;t open map %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4183"/>
+        <location filename="../mainwindow.cpp" line="4185"/>
+        <source>Link to another map</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4244"/>
+        <source>Enter sleep time (number of days or date YYYY-MM-DD or DD.MM[.YYYY]</source>
+        <comment>task sleep time dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4261"/>
+        <source>Couldn&apos;t set sleep time to %1.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4286"/>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4304"/>
+        <source>branches</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4305"/>
+        <source>notes</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4306"/>
+        <source>images</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4307"/>
+        <source>tasks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4308"/>
+        <source>slides</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4309"/>
+        <source>xLinks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4967"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Set application to open PDF files</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5000"/>
+        <location filename="../mainwindow.cpp" line="5010"/>
+        <source>Set application to zip/unzip files</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5028"/>
+        <source>Directory with vym macros:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5041"/>
+        <source>Number of undo/redo levels:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5045"/>
+        <source>VYM -Information:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5046"/>
+        <source>Settings have been changed. The next map opened will have &quot;%1&quot; undo/redo levels</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5066"/>
+        <source>Number of seconds before autosave:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5076"/>
+        <source>Set author for new maps (used in lockfile)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5077"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5088"/>
+        <source>Number of parents shown in find results:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5098"/>
+        <source>Number of parents shown for a task:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3092"/>
+        <source>(readonly)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5433"/>
+        <source>History for %1</source>
+        <comment>Window Caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5456"/>
+        <source>Export in last used format (%1) to: %2</source>
+        <comment>status tip</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5787"/>
+        <source>Critcal error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5788"/>
+        <source>Couldn&apos;t find the documentation %1 in:
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5816"/>
+        <source>Load vym example map</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <source>Please allow vym to download release notes!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5968"/>
+        <source>&lt;html&gt;&lt;h3&gt;Do you allow vym to check online for updates or release notes?&lt;/h3&gt;If you allow, vym will &lt;ul&gt;&lt;li&gt;check once for release notes&lt;/li&gt;&lt;li&gt;check regulary for updates and notify you in case you should update, e.g. if there are important bug fixes available&lt;/li&gt;&lt;li&gt;receive a cookie with a random ID and send vym version and platform name and the ID  (e.g. &quot;Windows&quot; or &quot;Linux&quot;) back to me, Uwe Drechsel.&lt;p&gt;As vym developer I am motivated to see many people using vym. Of course I am curious to see, on which system vym is used. Maintaining each of the systems requires a lot of my (spare) time.&lt;/p&gt; &lt;p&gt;No other data than above will be sent, especially no private data will be collected or sent.(Check the source code, if you don&apos;t believe.)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;If you do not allow, &lt;ul&gt;&lt;li&gt;nothing will be downloaded and especially I will &lt;b&gt;not be motivated&lt;/b&gt; to spend some more thousands of hours on developing a free software tool.&lt;/ul&gt;Please allow vym to check for updates :-)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5997"/>
+        <source>Allow</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5998"/>
+        <source>Do not allow</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6004"/>
+        <source>Thank you for enabling downloads!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6027"/>
+        <source>Update information</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6033"/>
+        <source>vym is up to date.</source>
+        <comment>MainWindow</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6084"/>
+        <source>Checking for updates...</source>
+        <comment>MainWindow</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Please allow vym to check for updates!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2623"/>
+        <source>Animation</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2680"/>
+        <source>Open VYM example maps </source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2685"/>
+        <source>Download and show release notes</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2689"/>
+        <source>Check, if updates are available</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2694"/>
+        <source>Show keyboard shortcuts</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2755"/>
+        <source>Tasks</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2772"/>
+        <source>References (URLs, vymLinks, ...)</source>
+        <comment>Context menu name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2796"/>
+        <source>XLinks</source>
+        <comment>Menu for file actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2922"/>
+        <source>Undo and clipboard toolbar</source>
+        <comment>Toolbar for redo/undo and clipboard</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2948"/>
+        <source>Selection toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2956"/>
+        <source>URLs and vymLinks toolbar</source>
+        <comment>Toolbar for URLs and vymlinks</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2964"/>
+        <source>Colors toolbar</source>
+        <comment>Colors toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3314"/>
+        <source>or</source>
+        <comment>File Dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3444"/>
+        <source>Save map as</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>MapEditor</name>
+    <message>
+        <location filename="../mapeditor.cpp" line="43"/>
+        <source>Map Editor</source>
+        <comment>Shortcut scope</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="111"/>
+        <location filename="../mapeditor.cpp" line="116"/>
+        <source>Edit heading</source>
+        <comment>MapEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="510"/>
+        <source>Print vym map</source>
+        <comment>MapEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>NoteEditor</name>
+    <message>
+        <location filename="../noteeditor.cpp" line="13"/>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QObject</name>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <location filename="../exports.cpp" line="381"/>
+        <location filename="../exports.cpp" line="511"/>
+        <location filename="../exports.cpp" line="954"/>
+        <location filename="../exports.cpp" line="1048"/>
+        <location filename="../exports.cpp" line="1128"/>
+        <location filename="../exports.cpp" line="1236"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <location filename="../exports.cpp" line="1333"/>
+        <location filename="../exports.cpp" line="1343"/>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Critical Export Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="956"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <source>Could not write %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="147"/>
+        <source>Exporting to %1 will overwrite the existing file:
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="146"/>
+        <source>Warning: Overwriting file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <source>Could not export as AO to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="381"/>
+        <source>Could not export as ASCII to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="503"/>
+        <source>Export as CSV</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="511"/>
+        <source>Could not export as CSV to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="837"/>
+        <source>Contents:</source>
+        <comment>Used in HTML export</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="893"/>
+        <source>Export aborted.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="934"/>
+        <source>Trying to create directory for flags:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="935"/>
+        <source>Could not create %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="909"/>
+        <location filename="../exports.cpp" line="933"/>
+        <location filename="../exports.cpp" line="944"/>
+        <source>Critical</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="910"/>
+        <source>Could not find stylesheet %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="920"/>
+        <source>Error</source>
+        <comment>ExportHTML</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="921"/>
+        <source>Could not copy
+%1 to
+%2</source>
+        <comment>ExportHTML</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="945"/>
+        <source>Could not copy %1 to %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="955"/>
+        <source>Trying to save HTML file:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="236"/>
+        <location filename="../exports.cpp" line="382"/>
+        <location filename="../exports.cpp" line="512"/>
+        <location filename="../exports.cpp" line="957"/>
+        <location filename="../exports.cpp" line="1049"/>
+        <location filename="../exports.cpp" line="1130"/>
+        <location filename="../exports.cpp" line="1309"/>
+        <source>Export failed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1048"/>
+        <source>Could not export as OrgMode to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1129"/>
+        <source>Could not export as LaTeX to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1189"/>
+        <source>Export as LibreOffice Impress presentation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1236"/>
+        <source>No objects in map!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1333"/>
+        <source>Couldn&apos;t read settings from &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1343"/>
+        <source>Check &quot;%1&quot; in
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Could not read %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="257"/>
+        <location filename="../file.cpp" line="272"/>
+        <location filename="../file.cpp" line="296"/>
+        <location filename="../file.cpp" line="305"/>
+        <location filename="../file.cpp" line="313"/>
+        <location filename="../file.cpp" line="323"/>
+        <location filename="../file.cpp" line="332"/>
+        <location filename="../file.cpp" line="340"/>
+        <location filename="../file.cpp" line="347"/>
+        <location filename="../file.cpp" line="356"/>
+        <location filename="../file.cpp" line="377"/>
+        <location filename="../file.cpp" line="400"/>
+        <location filename="../file.cpp" line="410"/>
+        <location filename="../file.cpp" line="423"/>
+        <location filename="../main.cpp" line="411"/>
+        <location filename="../xsltproc.cpp" line="78"/>
+        <location filename="../xsltproc.cpp" line="84"/>
+        <source>Critical Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="258"/>
+        <source>Couldn&apos;t move existing file out of the way before saving.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="273"/>
+        <location filename="../file.cpp" line="378"/>
+        <source>Couldn&apos;t start tool to decompress data.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="297"/>
+        <source>Couldn&apos;t start zip to compress data.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="306"/>
+        <source>zip didn&apos;t exit normally</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="324"/>
+        <source>Couldn&apos;t rename %1 back to %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="333"/>
+        <source>Couldn&apos;t remove target of old symbolic link %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="341"/>
+        <source>Couldn&apos;t rename output to target of old symbolic link %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="348"/>
+        <source>Couldn&apos;t link from %1 to target of old symbolic link %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="357"/>
+        <source>Saved %1, but couldn&apos;t remove %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="401"/>
+        <source>Couldn&apos;t start unzip to decompress data.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="411"/>
+        <source>unzip didn&apos;t exit normally</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="79"/>
+        <source>Could not start %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="85"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="90"/>
+        <source>Overwrite</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="91"/>
+        <source>Cancel</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="560"/>
+        <location filename="../exports.cpp" line="590"/>
+        <source>Exporting the %1 bookmarks will overwrite
+your existing bookmarks file.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="561"/>
+        <location filename="../exports.cpp" line="591"/>
+        <source>Warning: Overwriting %1 bookmarks</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="579"/>
+        <location filename="../macros.cpp" line="39"/>
+        <location filename="../main.cpp" line="377"/>
+        <source>Warning</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="580"/>
+        <source>Couldn&apos;t find script %1
+to notifiy Browsers of changed bookmarks.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="56"/>
+        <location filename="../imports.cpp" line="18"/>
+        <location filename="../main.cpp" line="475"/>
+        <location filename="../scripteditor.cpp" line="77"/>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="57"/>
+        <location filename="../imports.cpp" line="19"/>
+        <source>Couldn&apos;t access temporary directory
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <location filename="../exports.cpp" line="373"/>
+        <source>Export as ASCII</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <source>(still experimental)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="84"/>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <comment>write directory</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3792"/>
+        <source>No Bugzilla client found.  For openSUSE you can install by (running as root):
+
+</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3797"/>
+        <source>Alternatively you can also add the repository
+and install the perl module for Bugzilla access using YaST</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3800"/>
+        <source>Warning: Couldn&apos;t find Bugzilla client</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="412"/>
+        <source>Couldn&apos;t find tool to unzip data. Please download and install 7z and set path in Settings menu:
+ </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="476"/>
+        <location filename="../scripteditor.cpp" line="78"/>
+        <source>Couldn&apos;t open &quot;%1&quot;
+%2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="80"/>
+        <source>Warning: Version Problem</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="81"/>
+        <source>&lt;h3&gt;Map is newer than VYM&lt;/h3&gt;&lt;p&gt;The map you are just trying to load was saved using vym %1. The version of this vym is %2. If you run into problems after pressing the ok-button below, updating vym should help.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="40"/>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Please use Settings-&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Set directory for vym macros</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Couldn&apos;t save &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>ScriptEditor</name>
+    <message>
+        <location filename="../scripteditor.ui" line="14"/>
+        <source>Form</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="49"/>
+        <source>Tab 1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="55"/>
+        <source>Save to selected slide</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="91"/>
+        <location filename="../scripteditor.ui" line="145"/>
+        <source>Run</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="105"/>
+        <source>Tab 2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="121"/>
+        <source>Current key:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="131"/>
+        <source>Load</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="138"/>
+        <source>Save</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Warning</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="45"/>
+        <source>Slide</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="46"/>
+        <source>Macro</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="65"/>
+        <source>Save</source>
+        <comment>ScriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <source>Couldn&apos;t get model to save script into slide!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Couldn&apos;t find slide to save script into slide!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="143"/>
+        <source>Save script</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="155"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="160"/>
+        <source>Overwrite</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="161"/>
+        <source>Cancel</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="184"/>
+        <source>Load script</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="194"/>
+        <source>Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="195"/>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>ShowTextDialog</name>
+    <message>
+        <location filename="../showtextdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../showtextdialog.ui" line="50"/>
+        <source>Close</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>TaskEditor</name>
+    <message>
+        <location filename="../taskeditor.cpp" line="38"/>
+        <source>Current map</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="45"/>
+        <source>Active tasks</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="52"/>
+        <source>New tasks</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="68"/>
+        <location filename="../taskeditor.cpp" line="73"/>
+        <source>Edit heading</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>TaskModel</name>
+    <message>
+        <location filename="../taskmodel.cpp" line="127"/>
+        <source>Prio</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="129"/>
+        <source>Status</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="131"/>
+        <source>Age total</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="133"/>
+        <source>Age mod.</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="135"/>
+        <source>Sleep</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="137"/>
+        <source>Map</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="139"/>
+        <source>Task</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>TextEditor</name>
+    <message>
+        <location filename="../texteditor.cpp" line="273"/>
+        <source>&amp;Import...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="283"/>
+        <source>&amp;Export...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="293"/>
+        <source>Export &amp;As... (HTML)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="298"/>
+        <source>Export &amp;As...(ASCII)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="308"/>
+        <source>&amp;Print...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="332"/>
+        <source>&amp;Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="341"/>
+        <source>&amp;Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="351"/>
+        <source>Select and copy &amp;all</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="359"/>
+        <source>&amp;Copy</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="368"/>
+        <source>Cu&amp;t</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="377"/>
+        <source>&amp;Paste</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="316"/>
+        <source>&amp;Delete All</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="271"/>
+        <location filename="../texteditor.cpp" line="325"/>
+        <location filename="../texteditor.cpp" line="389"/>
+        <source>Texteditor</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="329"/>
+        <source>Edi&amp;t</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="390"/>
+        <source>Font hints</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="396"/>
+        <source>&amp;Font hint</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="407"/>
+        <source>&amp;Richtext</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="417"/>
+        <source>Fonts</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="443"/>
+        <source>Format</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="448"/>
+        <source>&amp;Color...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="454"/>
+        <source>&amp;Bold</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="464"/>
+        <source>&amp;Italic</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="474"/>
+        <source>&amp;Underline</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="512"/>
+        <source>&amp;Left</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="518"/>
+        <source>C&amp;enter</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="524"/>
+        <source>&amp;Right</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="530"/>
+        <source>&amp;Justify</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="540"/>
+        <source>&amp;Settings</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="543"/>
+        <source>Set &amp;fixed font</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="548"/>
+        <source>Set &amp;variable font</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="553"/>
+        <source>&amp;fixed font is default</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="704"/>
+        <source>Export Note to single file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="724"/>
+        <location filename="../texteditor.cpp" line="800"/>
+        <source>Overwrite</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="725"/>
+        <location filename="../texteditor.cpp" line="801"/>
+        <source>Cancel</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="785"/>
+        <source>Export Note to single file (ASCII)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="828"/>
+        <source>Print</source>
+        <comment>TextEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="488"/>
+        <source>Subs&amp;cript</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="49"/>
+        <source>Text Editor</source>
+        <comment>Text Editor Window caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="498"/>
+        <source>Su&amp;perscript</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="566"/>
+        <source>Note Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="392"/>
+        <source>F&amp;ormat</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="326"/>
+        <source>Edit Actions</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="267"/>
+        <source>Note Actions</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="48"/>
+        <source>Ready</source>
+        <comment>Statusbar message</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="174"/>
+        <source>No filename available for this note.</source>
+        <comment>Statusbar message</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="269"/>
+        <source>&amp;Note</source>
+        <comment>Menubar</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="719"/>
+        <location filename="../texteditor.cpp" line="795"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="743"/>
+        <source>Couldn&apos;t export note </source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>TreeEditor</name>
+    <message>
+        <location filename="../treeeditor.cpp" line="27"/>
+        <source>Select upper object</source>
+        <comment>Tree Editor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../treeeditor.cpp" line="33"/>
+        <source>Select lower object</source>
+        <comment>Tree Editor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>VymModel</name>
+    <message>
+        <location filename="../vymmodel.cpp" line="149"/>
+        <source>unnamed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="445"/>
+        <location filename="../vymmodel.cpp" line="481"/>
+        <location filename="../vymmodel.cpp" line="566"/>
+        <location filename="../vymmodel.cpp" line="622"/>
+        <source>Critical Parse Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="501"/>
+        <location filename="../vymmodel.cpp" line="551"/>
+        <source>Critical Load Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="502"/>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="552"/>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="980"/>
+        <source>unknown user</source>
+        <comment>Default for lockfiles of maps</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1003"/>
+        <source>Warning: Map already opended</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="671"/>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="679"/>
+        <source>compressed (vym default)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="680"/>
+        <source>uncompressed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="681"/>
+        <location filename="../vymmodel.cpp" line="864"/>
+        <source>Cancel</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="710"/>
+        <location filename="../vymmodel.cpp" line="715"/>
+        <source>Save Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="711"/>
+        <source>%1
+could not be removed before saving</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="716"/>
+        <source>%1
+could not be renamed before saving</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="728"/>
+        <source>Critical Save Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="729"/>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <location filename="../vymmodel.cpp" line="5783"/>
+        <source>Images</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <source>All</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="792"/>
+        <source>Load image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="844"/>
+        <source>Save image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="856"/>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="863"/>
+        <source>Overwrite</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Critical Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <source>Unsupported format in %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Critical Import Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Cannot find the directory %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="962"/>
+        <location filename="../vymmodel.cpp" line="965"/>
+        <source>Choose directory structure to import</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="999"/>
+        <source>Map seems to be already opened in another vym instance!
+
+ Map is locked by &quot;%1&quot; on &quot;%2&quot;
+
+Please only delete the lockfile, if you are sure nobody else is currently working on this map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1008"/>
+        <source>Removed lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1014"/>
+        <source>Couldn&apos;t remove lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1021"/>
+        <source>Cannot create lockfile of map! It will be opened in readonly mode.
+
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1024"/>
+        <source>Warning</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1116"/>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1123"/>
+        <source>Reload</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1124"/>
+        <source>Ignore</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1013"/>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Warning</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <source>Redo failed:
+%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1274"/>
+        <source>Autosave disabled during undo.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2001"/>
+        <source>Note</source>
+        <comment>FindAll in VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2725"/>
+        <source>Image</source>
+        <comment>Default name for new image</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2958"/>
+        <source>New map</source>
+        <comment>New map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3822"/>
+        <source>Contacting Bugzilla...</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Script aborted:
+%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5185"/>
+        <source>Export map as image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Couldn&apos;t save QImage %1 in format %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5280"/>
+        <source>Export map as SVG</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5314"/>
+        <source>Export map as XML</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5225"/>
+        <source>Export map as PDF</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="126"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5321"/>
+        <source>Export XML to directory</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5367"/>
+        <source>Critical Export Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>(still experimental)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>Export as csv</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5786"/>
+        <source>Load background image</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>VymProcess</name>
+    <message>
+        <location filename="../vymprocess.cpp" line="43"/>
+        <location filename="../vymprocess.cpp" line="48"/>
+        <source>Critical Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="44"/>
+        <source>Could not start %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="49"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>VymView</name>
+    <message>
+        <location filename="../vymview.cpp" line="34"/>
+        <source>Tree Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymview.cpp" line="52"/>
+        <source>Slide Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>WarningDialog</name>
+    <message>
+        <location filename="../warningdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="91"/>
+        <source>showAgainBox</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="117"/>
+        <location filename="../warningdialog.cpp" line="45"/>
+        <source>Cancel</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="124"/>
+        <source>Ok</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="10"/>
+        <source>Proceed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="12"/>
+        <source>Show this message again</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+</TS>
diff --git a/lang/vym.es.ts b/lang/vym.es.ts
new file mode 100644 (file)
index 0000000..17599a1
--- /dev/null
@@ -0,0 +1,6190 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1">
+<context>
+    <name>AboutDialog</name>
+    <message>
+        <source>Ok</source>
+        <translation type="obsolete">Ok</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="106"/>
+        <source>Credits</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="221"/>
+        <source>License</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="226"/>
+        <source>Ok</source>
+        <comment>Ok Button</comment>
+        <translation type="unfinished">Ok</translation>
+    </message>
+</context>
+<context>
+    <name>AboutTextBrowser</name>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Please use Settings-&gt;</source>
+        <translation type="unfinished">Por favor use las Preferencias-&gt;</translation>
+    </message>
+    <message>
+        <source>Set application to open an URL</source>
+        <translation type="obsolete">Configurar aplicación para abrir URLs</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="246"/>
+        <source>Warning</source>
+        <comment>About window</comment>
+        <translation type="unfinished">Advertencia</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="247"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <comment>About window</comment>
+        <translation type="unfinished">No se pudo encontrar visor para abrir %1.</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Set application to open an URL...</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Attribute Dialog</name>
+    <message>
+        <source>AttributeDialog - Edit definitions</source>
+        <translation type="obsolete">AttributeDialog - Editar definiciones</translation>
+    </message>
+    <message>
+        <source>AttributeDialog - Edit %1</source>
+        <translation type="obsolete">AttributeDialog - Editar %1</translation>
+    </message>
+</context>
+<context>
+    <name>AttributeDialog</name>
+    <message>
+        <source>Attributes</source>
+        <translation type="obsolete">Atributos</translation>
+    </message>
+    <message>
+        <source>Add key</source>
+        <translation type="obsolete">Añadir clave</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Cerrar</translation>
+    </message>
+</context>
+<context>
+    <name>AttributeWidget</name>
+    <message>
+        <source>Form</source>
+        <translation type="obsolete">Formulario</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyEditor</name>
+    <message>
+        <location filename="../branchpropeditor.ui" line="20"/>
+        <source>Branch Property Editor</source>
+        <translation type="unfinished">Ventana de propiedades de rama</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="30"/>
+        <source>Frame</source>
+        <translation type="unfinished">Marco</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="51"/>
+        <source>Geometry</source>
+        <translation type="unfinished">Geometría</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="64"/>
+        <source>No Frame</source>
+        <translation type="unfinished">Sin marco</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="69"/>
+        <source>Rectangle</source>
+        <translation type="unfinished">Rectángulo</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="74"/>
+        <source>Rounded Rectangle</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="79"/>
+        <source>Ellipse</source>
+        <translation type="unfinished">Elípse</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="84"/>
+        <source>Cloud</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="105"/>
+        <source>Padding</source>
+        <translation type="unfinished">Relleno</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="112"/>
+        <source>Borderline width</source>
+        <translation type="unfinished">Ancho del borde</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="136"/>
+        <source>Include children</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="169"/>
+        <source>Colors</source>
+        <translation type="unfinished">Colores</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="209"/>
+        <source>Borderline color</source>
+        <translation type="unfinished">Color del borde</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="232"/>
+        <source>Background color</source>
+        <translation type="unfinished">Color de fondo</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="261"/>
+        <source>Layout</source>
+        <translation type="unfinished">Disposición</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="269"/>
+        <source>Include images horizontally</source>
+        <translation type="unfinished">Incluir imágenes horizontales</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="276"/>
+        <source>Include images vertically</source>
+        <translation type="unfinished">Incluir imágenes verticales</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="283"/>
+        <source>Free positioning of children (experimental!)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="306"/>
+        <source>Link</source>
+        <translation type="unfinished">Enlace</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="312"/>
+        <source>Hide link if unselected</source>
+        <translation type="unfinished">Ocultar enlace si no esta seleccionado</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="333"/>
+        <source>Attributes</source>
+        <translation type="unfinished">Atributos</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="359"/>
+        <source>+</source>
+        <translation type="unfinished">+</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="366"/>
+        <source>-</source>
+        <translation type="unfinished">-</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.cpp" line="19"/>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished">Editar propiedad</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyWindow</name>
+    <message>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation type="obsolete">Editar propiedad</translation>
+    </message>
+    <message>
+        <source>Name</source>
+        <comment>Branchprop window: Attribute name</comment>
+        <translation type="obsolete">Ventana propiedades de rama: Nombre del atributo </translation>
+    </message>
+    <message>
+        <source>Value</source>
+        <comment>Branchprop window: Attribute value</comment>
+        <translation type="obsolete">Ventana propiedades de rama: Valor del atributoThe settings saved in the map would like to run scripts:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</translation>
+    </message>
+    <message>
+        <source>Type</source>
+        <comment>Branchprop window: Attribute type</comment>
+        <translation type="obsolete">Ventana propiedades de rama: Tipo de atributo</translation>
+    </message>
+    <message>
+        <source>Branch Property Editor</source>
+        <translation type="obsolete">Ventana de propiedades de rama</translation>
+    </message>
+    <message>
+        <source>Frame</source>
+        <translation type="obsolete">Marco</translation>
+    </message>
+    <message>
+        <source>Geometry</source>
+        <translation type="obsolete">Geometría</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <translation type="obsolete">Sin marco</translation>
+    </message>
+    <message>
+        <source>Rectangle</source>
+        <translation type="obsolete">Rectángulo</translation>
+    </message>
+    <message>
+        <source>Ellipse</source>
+        <translation type="obsolete">Elípse</translation>
+    </message>
+    <message>
+        <source>Padding</source>
+        <translation type="obsolete">Relleno</translation>
+    </message>
+    <message>
+        <source>Borderline width</source>
+        <translation type="obsolete">Ancho del borde</translation>
+    </message>
+    <message>
+        <source>Colors</source>
+        <translation type="obsolete">Colores</translation>
+    </message>
+    <message>
+        <source>Borderline color</source>
+        <translation type="obsolete">Color del borde</translation>
+    </message>
+    <message>
+        <source>Background color</source>
+        <translation type="obsolete">Color de fondo</translation>
+    </message>
+    <message>
+        <source>Layout</source>
+        <translation type="obsolete">Disposición</translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <translation type="obsolete">Incluir imágenes horizontales</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <translation type="obsolete">Incluir imágenes verticales</translation>
+    </message>
+    <message>
+        <source>Link</source>
+        <translation type="obsolete">Enlace</translation>
+    </message>
+    <message>
+        <source>Hide link if unselected</source>
+        <translation type="obsolete">Ocultar enlace si no esta seleccionado</translation>
+    </message>
+    <message>
+        <source>Attributes</source>
+        <translation type="obsolete">Atributos</translation>
+    </message>
+    <message>
+        <source>+</source>
+        <translation type="obsolete">+</translation>
+    </message>
+    <message>
+        <source>-</source>
+        <translation type="obsolete">-</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Cerrar</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadAgent</name>
+    <message>
+        <location filename="../downloadagent.cpp" line="191"/>
+        <location filename="../downloadagent.cpp" line="195"/>
+        <source>Warning</source>
+        <translation type="unfinished">Advertencia</translation>
+    </message>
+</context>
+<context>
+    <name>EditXLinkDialog</name>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="20"/>
+        <source>Edit XLink</source>
+        <translation type="unfinished">Editar XEnlace</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="40"/>
+        <source>Arrow begin:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="63"/>
+        <source>XLink width:</source>
+        <translation type="unfinished">Ancho XEnlace:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="79"/>
+        <source>Use color of heading</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="177"/>
+        <source>Line style:</source>
+        <extracomment>Linestyle in Edit XLink dialog</extracomment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="190"/>
+        <source>Arrow end:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="253"/>
+        <source>Close</source>
+        <translation type="unfinished">Cerrar</translation>
+    </message>
+    <message>
+        <source>Set color of heading</source>
+        <translation type="obsolete">Configurar color de encabezado</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="109"/>
+        <source>XLink color:</source>
+        <translation type="unfinished">Color XEnlace:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="151"/>
+        <source>Use as default:</source>
+        <translation type="unfinished">Use por defecto:</translation>
+    </message>
+    <message>
+        <source>Delete XLink</source>
+        <translation type="obsolete">Borrar XEnlace</translation>
+    </message>
+    <message>
+        <source>Ok</source>
+        <translation type="obsolete">Ok</translation>
+    </message>
+    <message>
+        <source>Quit and delete XLink</source>
+        <translation type="obsolete">Quitar y borrar XEnlace</translation>
+    </message>
+</context>
+<context>
+    <name>ExportHTMLDialog</name>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="26"/>
+        <source>Export HTML</source>
+        <translation type="unfinished">Exportar HTML</translation>
+    </message>
+    <message>
+        <source>Directory:</source>
+        <translation type="obsolete">Directorio:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="61"/>
+        <source>Export to directory:</source>
+        <translation type="unfinished">Exportar a directorio:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="90"/>
+        <location filename="../exporthtmldialog.ui" line="267"/>
+        <location filename="../exporthtmldialog.ui" line="280"/>
+        <location filename="../exporthtmldialog.ui" line="353"/>
+        <source>Browse</source>
+        <translation type="unfinished">Buscar</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="117"/>
+        <source>Options</source>
+        <translation type="unfinished">Opciones</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="138"/>
+        <source>Image of map</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="145"/>
+        <source>Include images</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="152"/>
+        <source>Table of contents</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="159"/>
+        <source>Task flags</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="166"/>
+        <source>General flags</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="173"/>
+        <source>Number sections</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="231"/>
+        <source>Copy CSS from </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="251"/>
+        <source>Use CSS from</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Include image</source>
+        <translation type="obsolete">Incluir Imagen</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="186"/>
+        <source>Colored headings in text</source>
+        <translation type="unfinished">Encabezados coloreados en texto</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="199"/>
+        <source>Save settings in map</source>
+        <translation type="unfinished">Guardar configuraciones en mapa</translation>
+    </message>
+    <message>
+        <source>Include image of map</source>
+        <translation type="obsolete">Incluir imagen de mapa</translation>
+    </message>
+    <message>
+        <source>create image only</source>
+        <translation type="obsolete">Crear imagen solamente</translation>
+    </message>
+    <message>
+        <source>use WIKI style</source>
+        <translation type="obsolete">Usar estilo WIKI</translation>
+    </message>
+    <message>
+        <source>use heading for URLs (instead of link target)</source>
+        <translation type="obsolete">Usar encabezado de URLs (en vez de un objetivo enlazado)</translation>
+    </message>
+    <message>
+        <source>use image of earth to mark URLs in text</source>
+        <translation type="obsolete">Usar imagen de la tierra para markar URLs en el texto</translation>
+    </message>
+    <message>
+        <source>use default CSS file</source>
+        <translation type="obsolete">Usar CSS por defecto</translation>
+    </message>
+    <message>
+        <source>show output of external scripts</source>
+        <translation type="obsolete">Mostar salida de scripts externos</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="216"/>
+        <source>Stylesheets</source>
+        <translation type="unfinished">Hojas de estilo</translation>
+    </message>
+    <message>
+        <source>CSS:</source>
+        <translation type="obsolete">CSS:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="297"/>
+        <source>Scripts</source>
+        <translation type="unfinished">Scripts</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="327"/>
+        <source>After Export:</source>
+        <translation type="unfinished">Después de Exportar:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="389"/>
+        <source>Export</source>
+        <translation type="unfinished">Exportar</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="382"/>
+        <source>Cancel</source>
+        <translation type="unfinished">Cancelar</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>Warning</source>
+        <translation type="unfinished">Advertencia</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>The settings saved in the map would like to run script:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="123"/>
+        <source>VYM - Export HTML to directory</source>
+        <translation type="unfinished">VYM - Exportar HTML a directorio</translation>
+    </message>
+    <message>
+        <source>Critcal export error</source>
+        <translation type="obsolete">Error crítico de exporte</translation>
+    </message>
+</context>
+<context>
+    <name>ExportXHTMLDialog</name>
+    <message>
+        <source>Export XHTML</source>
+        <translation type="obsolete">Exportar HTML</translation>
+    </message>
+    <message>
+        <source>Export to directory:</source>
+        <translation type="obsolete">Exportar a directorio:</translation>
+    </message>
+    <message>
+        <source>Browse</source>
+        <translation type="obsolete">Buscar</translation>
+    </message>
+    <message>
+        <source>Options</source>
+        <translation type="obsolete">Opciones</translation>
+    </message>
+    <message>
+        <source>Include image</source>
+        <translation type="obsolete">Incluir Imagen</translation>
+    </message>
+    <message>
+        <source>Colored headings in text</source>
+        <translation type="obsolete">Encabezados coloreados en texto</translation>
+    </message>
+    <message>
+        <source>Save settings in map</source>
+        <translation type="obsolete">Guardar configuraciones en mapa</translation>
+    </message>
+    <message>
+        <source>showWarnings e.g. if directory is not empty</source>
+        <translation type="obsolete">Mostrar Advertencias si el directorio no está vacio</translation>
+    </message>
+    <message>
+        <source>show output of external scripts</source>
+        <translation type="obsolete">Mostrar salida de scripts externos</translation>
+    </message>
+    <message>
+        <source>CSS:</source>
+        <translation type="obsolete">CSS:</translation>
+    </message>
+    <message>
+        <source>XSL:</source>
+        <translation type="obsolete">XSL:</translation>
+    </message>
+    <message>
+        <source>Before export:</source>
+        <translation type="obsolete">Antes de exportar:</translation>
+    </message>
+    <message>
+        <source>After Export:</source>
+        <translation type="obsolete">Después de Exportar:</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <translation type="obsolete">Exportar</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Cancelar</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="obsolete">Advertencia</translation>
+    </message>
+    <message>
+        <source>The settings saved in the map would like to run scripts:
+
+</source>
+        <translation type="obsolete">Las configuraciones guardadas en el mapa pueden ejecutar scripts:</translation>
+    </message>
+    <message>
+        <source>Please check, if you really
+want to allow this in your system!</source>
+        <translation type="obsolete">¡Por favor observe si en realidad
+desea permitir esto en su sistema!</translation>
+    </message>
+    <message>
+        <source>VYM - Export HTML to directory</source>
+        <translation type="obsolete">VYM - Exportar HTML a directorio</translation>
+    </message>
+    <message>
+        <source>VYM - Path to CSS file</source>
+        <translation type="obsolete">VYM - Ruta a archivo CSS</translation>
+    </message>
+    <message>
+        <source>VYM - Path to XSL file</source>
+        <translation type="obsolete">VYM - Ruta a archivo XSL </translation>
+    </message>
+    <message>
+        <source>VYM - Path to pre export script</source>
+        <translation type="obsolete">VYM - Ruta a script pre-exportado</translation>
+    </message>
+    <message>
+        <source>VYM - Path to post export script</source>
+        <translation type="obsolete">VYM - Ruta a script post-exportado</translation>
+    </message>
+    <message>
+        <source> could not be opened!</source>
+        <translation type="obsolete">¡No puede ser abierto!</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">Error crítico</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start </source>
+        <translation type="obsolete">No puede iniciar</translation>
+    </message>
+    <message>
+        <source>didn&apos;t exit normally</source>
+        <translation type="obsolete">No salio normalmente</translation>
+    </message>
+    <message>
+        <source>Stylesheets:</source>
+        <translation type="obsolete">Hojas de estilo:</translation>
+    </message>
+    <message>
+        <source>Scripts:</source>
+        <translation type="obsolete">Scripts:</translation>
+    </message>
+    <message>
+        <source>Stylesheets</source>
+        <translation type="obsolete">Hojas de estilo</translation>
+    </message>
+    <message>
+        <source>Scripts</source>
+        <translation type="obsolete">Scripts</translation>
+    </message>
+    <message>
+        <source>The settings saved in the map would like to run scripts:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation type="obsolete">Las propiedades salvadas en el mapa intentar ejecutar scripts:
+
+%1
+
+Por favor compruebe si realmente desea
+que su sistema permita ésto.</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <translation type="obsolete">No se pudo abrir %1</translation>
+    </message>
+    <message>
+        <source>Could not write %1</source>
+        <translation type="obsolete">No se pudo escribir %1</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation type="obsolete">No se pudo arrancar %1</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="obsolete">%1 no termino normalmente</translation>
+    </message>
+    <message>
+        <source>show warnings of xslt processor</source>
+        <translation type="obsolete">Mostrar advertencias del procesador xslt</translation>
+    </message>
+</context>
+<context>
+    <name>ExtraInfoDialog</name>
+    <message>
+        <location filename="../extrainfodialog.ui" line="15"/>
+        <source>VYM - Info</source>
+        <translation type="unfinished">VYM - Información</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="36"/>
+        <source>Map:</source>
+        <translation type="unfinished">Mapa:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="53"/>
+        <source>Title:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="63"/>
+        <source>Author:</source>
+        <translation type="unfinished">Autor:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="86"/>
+        <source>Comment:</source>
+        <translation type="unfinished">Comentario:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="96"/>
+        <source>Statistics:</source>
+        <translation type="unfinished">Estadísticas:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="139"/>
+        <source>Cancel</source>
+        <translation type="unfinished">Cancelar</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="146"/>
+        <source>Close</source>
+        <translation type="unfinished">Cerrar</translation>
+    </message>
+</context>
+<context>
+    <name>FindWidget</name>
+    <message>
+        <location filename="../findwidget.cpp" line="25"/>
+        <source>Find:</source>
+        <comment>FindWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>FindWindow</name>
+    <message>
+        <source>Clear</source>
+        <translation type="obsolete">Limpiar</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Cancelar</translation>
+    </message>
+    <message>
+        <source>Find</source>
+        <translation type="obsolete">Buscar</translation>
+    </message>
+    <message>
+        <source>Find Text</source>
+        <translation type="obsolete">Encontrar texto</translation>
+    </message>
+    <message>
+        <source>Text to find:</source>
+        <translation type="obsolete">Texto a buscar:</translation>
+    </message>
+</context>
+<context>
+    <name>Heading of mapcenter in new map</name>
+    <message>
+        <source>New map</source>
+        <translation type="obsolete">Nuevo Mapa</translation>
+    </message>
+</context>
+<context>
+    <name>HeadingEditor</name>
+    <message>
+        <location filename="../headingeditor.cpp" line="9"/>
+        <source>Heading Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HistoryWindow</name>
+    <message>
+        <location filename="../historywindow.ui" line="13"/>
+        <source>Dialog</source>
+        <translation type="unfinished">Dialogo</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="50"/>
+        <source>Redo</source>
+        <translation type="unfinished">Rehacer</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="72"/>
+        <source>Time</source>
+        <translation type="unfinished">Tiempo</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="77"/>
+        <source>Comment</source>
+        <translation type="unfinished">Comentario</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="85"/>
+        <source>Undo</source>
+        <translation type="unfinished">Deshacer</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="122"/>
+        <source>Close</source>
+        <translation type="unfinished">Cerrar</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="17"/>
+        <source>Action</source>
+        <comment>Table with actions</comment>
+        <translation type="unfinished">Acciones</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="20"/>
+        <source>Comment</source>
+        <comment>Table with actions</comment>
+        <translation type="unfinished">Comentarios</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="23"/>
+        <source>Undo action</source>
+        <comment>Table with actions</comment>
+        <translation type="unfinished">Acciones deshechas</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="125"/>
+        <source>Current state</source>
+        <comment>Current bar in history hwindow</comment>
+        <translation type="unfinished">Estado actual</translation>
+    </message>
+</context>
+<context>
+    <name>LineEditDialog</name>
+    <message>
+        <location filename="../lineeditdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="26"/>
+        <source>TextLabel</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="89"/>
+        <location filename="../lineeditdialog.cpp" line="17"/>
+        <source>Cancel</source>
+        <translation type="unfinished">Cancelar</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="99"/>
+        <location filename="../lineeditdialog.cpp" line="9"/>
+        <source>Ok</source>
+        <translation type="unfinished">Ok</translation>
+    </message>
+</context>
+<context>
+    <name>LockedFileDialog</name>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="116"/>
+        <location filename="../lockedfiledialog.cpp" line="7"/>
+        <source>Delete lockfile</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="123"/>
+        <location filename="../lockedfiledialog.cpp" line="6"/>
+        <source>Open readonly</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Main</name>
+    <message>
+        <source>&amp;File</source>
+        <translation type="obsolete">&amp;Archivo</translation>
+    </message>
+    <message>
+        <source>New map</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Nuevo Mapa</translation>
+    </message>
+    <message>
+        <source>&amp;New...</source>
+        <translation type="obsolete">&amp;Nuevo...</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Abrir</translation>
+    </message>
+    <message>
+        <source>&amp;Open...</source>
+        <translation type="obsolete">&amp;Abrir...</translation>
+    </message>
+    <message>
+        <source>Open Recent</source>
+        <translation type="obsolete">Abrir reciente</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <translation type="obsolete">Guardar</translation>
+    </message>
+    <message>
+        <source>&amp;Save...</source>
+        <translation type="obsolete">&amp;Guardar...</translation>
+    </message>
+    <message>
+        <source>Save &amp;As</source>
+        <translation type="obsolete">Guardar &amp;Como</translation>
+    </message>
+    <message>
+        <source>Save &amp;As...</source>
+        <translation type="obsolete">Guardar &amp;Como...</translation>
+    </message>
+    <message>
+        <source>Import directory structure (experimental)</source>
+        <translation type="obsolete">Importar estructura de directorio (experimental)</translation>
+    </message>
+    <message>
+        <source>Import Dir</source>
+        <translation type="obsolete">Importar Directorio</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <translation type="obsolete">Exportar</translation>
+    </message>
+    <message>
+        <source>Print</source>
+        <translation type="obsolete">Imprimir</translation>
+    </message>
+    <message>
+        <source>&amp;Print...</source>
+        <translation type="obsolete">&amp;Imprimir...</translation>
+    </message>
+    <message>
+        <source>Close Map</source>
+        <translation type="obsolete">Cerrar Mapa</translation>
+    </message>
+    <message>
+        <source>&amp;Close Map</source>
+        <translation type="obsolete">&amp;Cerrar Mapa</translation>
+    </message>
+    <message>
+        <source>Exit VYM</source>
+        <translation type="obsolete">Salir VYM</translation>
+    </message>
+    <message>
+        <source>E&amp;xit VYM</source>
+        <translation type="obsolete">&amp;Salir VYM</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <translation type="obsolete">&amp;Editar</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <translation type="obsolete">Deshacer</translation>
+    </message>
+    <message>
+        <source>&amp;Undo</source>
+        <translation type="obsolete">&amp;Deshacer</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <translation type="obsolete">Copiar</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <translation type="obsolete">&amp;Copiar</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="obsolete">Cortar</translation>
+    </message>
+    <message>
+        <source>Cu&amp;t</source>
+        <translation type="obsolete">Cort&amp;ar</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <translation type="obsolete">Pegar</translation>
+    </message>
+    <message>
+        <source>&amp;Paste</source>
+        <translation type="obsolete">&amp;Pegar</translation>
+    </message>
+    <message>
+        <source>Move branch up</source>
+        <translation type="obsolete">Mover rama arriba</translation>
+    </message>
+    <message>
+        <source>Move up</source>
+        <translation type="obsolete">Subir</translation>
+    </message>
+    <message>
+        <source>Move branch down</source>
+        <translation type="obsolete">Mover rama abajo</translation>
+    </message>
+    <message>
+        <source>Move down</source>
+        <translation type="obsolete">Bajar</translation>
+    </message>
+    <message>
+        <source>Scroll branch</source>
+        <translation type="obsolete">Rama desplegada</translation>
+    </message>
+    <message>
+        <source>Unscroll all</source>
+        <translation type="obsolete">Contraer todo</translation>
+    </message>
+    <message>
+        <source>Unscroll all scrolled branches</source>
+        <translation type="obsolete">Desplegar todas las ramas contraidas</translation>
+    </message>
+    <message>
+        <source>Find</source>
+        <translation type="obsolete">Buscar</translation>
+    </message>
+    <message>
+        <source>Open URL</source>
+        <translation type="obsolete">Abrir URL</translation>
+    </message>
+    <message>
+        <source>Edit URL</source>
+        <translation type="obsolete">Editar URL</translation>
+    </message>
+    <message>
+        <source>Use heading of selected branch as URL</source>
+        <translation type="obsolete">Usar encabezado de rama seleccionada como URL</translation>
+    </message>
+    <message>
+        <source>Use heading for URL</source>
+        <translation type="obsolete">Usar encabezado para URL</translation>
+    </message>
+    <message>
+        <source>Create URL to Bugzilla</source>
+        <translation type="obsolete">Crear URL a Bugzila</translation>
+    </message>
+    <message>
+        <source>Jump to another vym map, if needed load it first</source>
+        <translation type="obsolete">Saltar a otro mapa de vym, si necesita cargarlo primero</translation>
+    </message>
+    <message>
+        <source>Jump to map</source>
+        <translation type="obsolete">Saltar al mapa</translation>
+    </message>
+    <message>
+        <source>Edit link to another vym map</source>
+        <translation type="obsolete">Editar enlace a otro mapa vym</translation>
+    </message>
+    <message>
+        <source>Edit vym link</source>
+        <translation type="obsolete">Editar enlace de vym</translation>
+    </message>
+    <message>
+        <source>Delete link to another vym map</source>
+        <translation type="obsolete">Eliminar enlace a otro mapa vym</translation>
+    </message>
+    <message>
+        <source>Delete vym link</source>
+        <translation type="obsolete">Eliminar enlace de vym</translation>
+    </message>
+    <message>
+        <source>Edit Map Info</source>
+        <translation type="obsolete">Editar Información de mapa</translation>
+    </message>
+    <message>
+        <source>edit Heading</source>
+        <translation type="obsolete">Editar Encabezado</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <translation type="obsolete">Editar encabezado</translation>
+    </message>
+    <message>
+        <source>Delete Selection</source>
+        <translation type="obsolete">Eliminar Selección</translation>
+    </message>
+    <message>
+        <source>Add a branch as child of selection</source>
+        <translation type="obsolete">Agregar una rama como hija de selección</translation>
+    </message>
+    <message>
+        <source>Add branch as child</source>
+        <translation type="obsolete">Agregar rama como hija</translation>
+    </message>
+    <message>
+        <source>Add a branch above selection</source>
+        <translation type="obsolete">Agregar rama arriba de la selección</translation>
+    </message>
+    <message>
+        <source>Add branch above</source>
+        <translation type="obsolete">Agregar rama arriba</translation>
+    </message>
+    <message>
+        <source>Add a branch below selection</source>
+        <translation type="obsolete">Agregar una rama abajo de la selección</translation>
+    </message>
+    <message>
+        <source>Add branch below</source>
+        <translation type="obsolete">Agregar rama abajo</translation>
+    </message>
+    <message>
+        <source>Add map at selection</source>
+        <translation type="obsolete">Agregar mapa en la selección</translation>
+    </message>
+    <message>
+        <source>Import (add)</source>
+        <translation type="obsolete">Importar (agregar)</translation>
+    </message>
+    <message>
+        <source>Replace selection with map</source>
+        <translation type="obsolete">reemplazar selección con mapa</translation>
+    </message>
+    <message>
+        <source>Import (replace)</source>
+        <translation type="obsolete">Importar (reemplazar)</translation>
+    </message>
+    <message>
+        <source>Save selection</source>
+        <translation type="obsolete">Guardar Selección</translation>
+    </message>
+    <message>
+        <source>Select upper branch</source>
+        <translation type="obsolete">Seleccionar rama más alta</translation>
+    </message>
+    <message>
+        <source>Select lower branch</source>
+        <translation type="obsolete">Seleccionar rama más baja</translation>
+    </message>
+    <message>
+        <source>Select left branch</source>
+        <translation type="obsolete">Seleccionar rama izquierda</translation>
+    </message>
+    <message>
+        <source>Select right branch</source>
+        <translation type="obsolete">Seleccionar rama derecha</translation>
+    </message>
+    <message>
+        <source>Select child branch</source>
+        <translation type="obsolete">Seleccionar rama hijo</translation>
+    </message>
+    <message>
+        <source>Select first branch</source>
+        <translation type="obsolete">Seleccionar primera rama</translation>
+    </message>
+    <message>
+        <source>Select last branch</source>
+        <translation type="obsolete">Seleccionar última rama</translation>
+    </message>
+    <message>
+        <source>Add Image</source>
+        <translation type="obsolete">Agregar Imagen</translation>
+    </message>
+    <message>
+        <source>&amp;Format</source>
+        <translation type="obsolete">&amp;Formato</translation>
+    </message>
+    <message>
+        <source>Set Color</source>
+        <translation type="obsolete">Configurar Color</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1883"/>
+        <source>Set &amp;Color</source>
+        <translation>Configurar &amp;Color</translation>
+    </message>
+    <message>
+        <source>Pick color
+Hint: You can pick a color from another branch and color using CTRL+Left Button</source>
+        <translation type="obsolete">Consejo para escoger 
+color: Puede escoger un color de otra rama y aplicarlo usando CTRL+botón izquierdo</translation>
+    </message>
+    <message>
+        <source>Pic&amp;k color</source>
+        <translation type="obsolete">Esco&amp;ger Color</translation>
+    </message>
+    <message>
+        <source>Color branch</source>
+        <translation type="obsolete">Color de rama</translation>
+    </message>
+    <message>
+        <source>Color &amp;branch</source>
+        <translation type="obsolete">Color de &amp;rama</translation>
+    </message>
+    <message>
+        <source>Color Subtree</source>
+        <translation type="obsolete">Color de Subárbol</translation>
+    </message>
+    <message>
+        <source>Color sub&amp;tree</source>
+        <translation type="obsolete">Color de Sub&amp;árbol</translation>
+    </message>
+    <message>
+        <source>Line</source>
+        <translation type="obsolete">Línea</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1928"/>
+        <source>Linkstyle Line</source>
+        <translation>Línea de estilo de enlace</translation>
+    </message>
+    <message>
+        <source>Linkstyle Parabel</source>
+        <translation type="obsolete">Parábola de estilo de enlace</translation>
+    </message>
+    <message>
+        <source>PolyLine</source>
+        <translation type="obsolete">Multilínea</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1942"/>
+        <source>Linkstyle Thick Line</source>
+        <translation>Estilo de enlace de línea gruesa</translation>
+    </message>
+    <message>
+        <source>PolyParabel</source>
+        <translation type="obsolete">MultiParábola </translation>
+    </message>
+    <message>
+        <source>Linkstyle Thick Parabel</source>
+        <translation type="obsolete">Estilo de enlace de parábola gruesa</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <translation type="obsolete">Sin marco</translation>
+    </message>
+    <message>
+        <source>Rectangle</source>
+        <translation type="obsolete">Rectángulo</translation>
+    </message>
+    <message>
+        <source>Use same color for links and headings</source>
+        <translation type="obsolete">Usar el mismo color para enlaces y encabezados</translation>
+    </message>
+    <message>
+        <source>&amp;Use color of heading for link</source>
+        <translation type="obsolete">&amp;Usar color de encabezado para enlace</translation>
+    </message>
+    <message>
+        <source>Set Link Color</source>
+        <translation type="obsolete">Configurar Color de Enlace</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1971"/>
+        <source>Set &amp;Link Color</source>
+        <translation type="unfinished">Configurar &amp;Color de Enlace</translation>
+    </message>
+    <message>
+        <source>Set Background Color</source>
+        <translation type="obsolete">Configurar Color de Fondo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1981"/>
+        <source>Set &amp;Background Color</source>
+        <translation>Configurar &amp;Color de Fondo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1995"/>
+        <source>&amp;View</source>
+        <translation>&amp;Vista</translation>
+    </message>
+    <message>
+        <source>Zoom reset</source>
+        <translation type="obsolete">Zoom reiniciado</translation>
+    </message>
+    <message>
+        <source>reset Zoom</source>
+        <translation type="obsolete">Reiniciar Zoom</translation>
+    </message>
+    <message>
+        <source>Zoom in</source>
+        <translation type="obsolete">Acercar</translation>
+    </message>
+    <message>
+        <source>Zoom out</source>
+        <translation type="obsolete">Alejar</translation>
+    </message>
+    <message>
+        <source>Toggle Note Editor</source>
+        <translation type="obsolete">Cambiar al Editor de notas</translation>
+    </message>
+    <message>
+        <source>&amp;Next Window</source>
+        <translation type="obsolete">&amp;Siguiente Ventana</translation>
+    </message>
+    <message>
+        <source>Next Window</source>
+        <translation type="obsolete">Siguiente Ventana</translation>
+    </message>
+    <message>
+        <source>&amp;Previous Window</source>
+        <translation type="obsolete">&amp;Ventana Previa</translation>
+    </message>
+    <message>
+        <source>Previous Window</source>
+        <translation type="obsolete">Ventana Previa</translation>
+    </message>
+    <message>
+        <source>Modes when using modifiers</source>
+        <translation type="obsolete">Modos cuando se usan modificadores</translation>
+    </message>
+    <message>
+        <source>Use modifier to color branches</source>
+        <translation type="obsolete">Usar modificadores para el color de ramas</translation>
+    </message>
+    <message>
+        <source>&amp;Settings</source>
+        <translation type="obsolete">&amp;Configuración</translation>
+    </message>
+    <message>
+        <source>Set application to open pdf files</source>
+        <translation type="obsolete">Configurar aplicación para abrir archivos pdf</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="4981"/>
+        <source>Set application to open an URL</source>
+        <translation type="unfinished">Configurar aplicación para abrir una URL</translation>
+    </message>
+    <message>
+        <source>Edit branch after adding it</source>
+        <translation type="obsolete">Editar rama después de añadirla</translation>
+    </message>
+    <message>
+        <source>Select branch after adding it</source>
+        <translation type="obsolete">Seleccionar rama después de añadirla</translation>
+    </message>
+    <message>
+        <source>Select heading before editing</source>
+        <translation type="obsolete">Seleccionar encabezado antes de editar</translation>
+    </message>
+    <message>
+        <source>Select existing heading</source>
+        <translation type="obsolete">Seleccionar encabezado existente</translation>
+    </message>
+    <message>
+        <source>Enable pasting into new branch</source>
+        <translation type="obsolete">Habilitar pegado en una nueva rama</translation>
+    </message>
+    <message>
+        <source>Enable Delete key for deleting branches</source>
+        <translation type="obsolete">Habilitar tecla Delete para borrar ramas</translation>
+    </message>
+    <message>
+        <source>Enable Delete key</source>
+        <translation type="obsolete">Habilitar tecla Delete</translation>
+    </message>
+    <message>
+        <source>&amp;Test</source>
+        <translation type="obsolete">&amp;Prueba</translation>
+    </message>
+    <message>
+        <source>Test Flag</source>
+        <translation type="obsolete">Probar Bandera</translation>
+    </message>
+    <message>
+        <source>test flag</source>
+        <translation type="obsolete">Probar bandera</translation>
+    </message>
+    <message>
+        <source>Show Clipboard</source>
+        <translation type="obsolete">Mostrar Portapapeles</translation>
+    </message>
+    <message>
+        <source>Show clipboard</source>
+        <translation type="obsolete">Mostrar portapapeles</translation>
+    </message>
+    <message>
+        <source>&amp;Help</source>
+        <translation type="obsolete">&amp;Ayuda</translation>
+    </message>
+    <message>
+        <source>Open VYM Documentation (pdf)</source>
+        <translation type="obsolete">Abrir Documentación de VYM (pdf)</translation>
+    </message>
+    <message>
+        <source>Open VYM Documentation (pdf) </source>
+        <translation type="obsolete">Abrir Documentación de VYM (pdf)</translation>
+    </message>
+    <message>
+        <source>Information about VYM</source>
+        <translation type="obsolete">Información sobre VYM</translation>
+    </message>
+    <message>
+        <source>About VYM</source>
+        <translation type="obsolete">Sobre VYM</translation>
+    </message>
+    <message>
+        <source>Information about QT toolkit</source>
+        <translation type="obsolete">Información sobre kit de herramientas QT</translation>
+    </message>
+    <message>
+        <source>About QT</source>
+        <translation type="obsolete">Acerca de QT</translation>
+    </message>
+    <message>
+        <source>Save image</source>
+        <translation type="obsolete">Guardar imagen</translation>
+    </message>
+    <message>
+        <source>Use for Export</source>
+        <translation type="obsolete">Usar para Exportar</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <translation type="obsolete">Exportar mapa como imagen</translation>
+    </message>
+    <message>
+        <source>Export as ASCII (still experimental)</source>
+        <translation type="obsolete">Exportar como ASCII (aún experimental)</translation>
+    </message>
+    <message>
+        <source>Export (ASCII)</source>
+        <translation type="obsolete">Exportar (ASCII)</translation>
+    </message>
+    <message>
+        <source>Export XML</source>
+        <translation type="obsolete">Exportar XML</translation>
+    </message>
+    <message>
+        <source>Export HTML</source>
+        <translation type="obsolete">Exportar HTML</translation>
+    </message>
+    <message>
+        <source>Export XHTML</source>
+        <translation type="obsolete">Exportar XHTML</translation>
+    </message>
+    <message>
+        <source>The directory </source>
+        <translation type="obsolete">El directorio</translation>
+    </message>
+    <message>
+        <source> is not empty. Do you risk to overwrite its contents?</source>
+        <translation type="obsolete">no está vacio. ¿Se arriesga  a sobrescribir su contenido?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3460"/>
+        <source>Overwrite</source>
+        <translation>Sobreescribir</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3188"/>
+        <location filename="../mainwindow.cpp" line="3235"/>
+        <location filename="../mainwindow.cpp" line="3461"/>
+        <source>Cancel</source>
+        <translation>Cancelar</translation>
+    </message>
+    <message>
+        <source>The map </source>
+        <translation type="obsolete">El mapa</translation>
+    </message>
+    <message>
+        <source>
+ is already opened.Opening the same map in multiple editors may lead 
+to confusion when finishing working with vym.Do you want to</source>
+        <translation type="obsolete">ya está abierto. Abrir el mismo mapa en múltiples editores puede
+generar confusión cuando termine de trabajar con vym. Desea hacerlo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3187"/>
+        <source>Open anyway</source>
+        <translation>Abrir de todas maneras</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3234"/>
+        <source>Create</source>
+        <translation>Crear</translation>
+    </message>
+    <message>
+        <source>Critical Load Error</source>
+        <translation type="obsolete">Error crítico de carga</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start unzip to decompress data.</source>
+        <translation type="obsolete">No se pudo iniciar zip para descomprimir datos.</translation>
+    </message>
+    <message>
+        <source>unzip didn&apos;t exit normally</source>
+        <translation type="obsolete">unzip no terminó normalmente</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="obsolete">No se encuentra mapa (*.xml) en el archivo .vym.</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3303"/>
+        <source>Load vym map</source>
+        <translation>Cargar mapa vym</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3306"/>
+        <source>Import: Add vym map to selection</source>
+        <translation>Importar: Agregar mapa vym a la selección</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3309"/>
+        <source>Import: Replace selection with vym map</source>
+        <translation>Importar: Reemplaza selección con mapa vym</translation>
+    </message>
+    <message>
+        <source>Save Error</source>
+        <translation type="obsolete">Error al guardar</translation>
+    </message>
+    <message>
+        <source>
+could not be removed before saving</source>
+        <translation type="obsolete">no puede ser borrado antes de guardar</translation>
+    </message>
+    <message>
+        <source>
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="obsolete">no usó el formato de compresión archivo vym.
+Escribiendo el archivo descomprimido también escribirá imágenes
+y banderas y esto puede sobreescribir los archivos en el directorio dado
+
+¿Desea escribir el mapa?</translation>
+    </message>
+    <message>
+        <source>compressed (vym default)</source>
+        <translation type="obsolete">comprimido (por defecto vym)</translation>
+    </message>
+    <message>
+        <source>uncompressed</source>
+        <translation type="obsolete">descomprimido</translation>
+    </message>
+    <message>
+        <source>Critical Save Error</source>
+        <translation type="obsolete">Error Crítico al guardar</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start zip to compress data.</source>
+        <translation type="obsolete">No se pudo iniciar zip para comprimir datos.</translation>
+    </message>
+    <message>
+        <source>zip didn&apos;t exit normally</source>
+        <translation type="obsolete">zip no salió normalmente</translation>
+    </message>
+    <message>
+        <source>Saved</source>
+        <translation type="obsolete">Guardado</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save</source>
+        <translation type="obsolete">No se pudo guardar</translation>
+    </message>
+    <message>
+        <source>The file </source>
+        <translation type="obsolete">El archivo </translation>
+    </message>
+    <message>
+        <source>
+exists already. Do you want to</source>
+        <translation type="obsolete">ya existe. Desea hacerlo</translation>
+    </message>
+    <message>
+        <source>Export XML to directory</source>
+        <translation type="obsolete">Exportar XML a directorio</translation>
+    </message>
+    <message>
+        <source> has been modified but not saved yet. Do you want to</source>
+        <translation type="obsolete">ha sido modificado pero no está guardado aún. ¿Desea hacerlo?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3775"/>
+        <source>Save modified map before closing it</source>
+        <translation>Guardar mapa modificado antes de cerrarlo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3776"/>
+        <source>Discard changes</source>
+        <translation>Descartar cambios</translation>
+    </message>
+    <message>
+        <source>This map is not saved yet. Do you want to</source>
+        <translation type="obsolete">Este mapa no está guardado aún. ¿Desea guardarlo?</translation>
+    </message>
+    <message>
+        <source>Save map</source>
+        <translation type="obsolete">Guardar mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5045"/>
+        <source>VYM -Information:</source>
+        <translation>VYM -Información:</translation>
+    </message>
+    <message>
+        <source>No matches found for </source>
+        <translation type="obsolete">No se encuentran coincidencias</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <location filename="../mainwindow.cpp" line="4130"/>
+        <source>Critical Error</source>
+        <translation>Error crítico</translation>
+    </message>
+    <message>
+        <source>Enter path for pdf reader:</source>
+        <translation type="obsolete">Ingrese ruta para lector de pdf:</translation>
+    </message>
+    <message>
+        <source>Enter path for application to open an URL:</source>
+        <translation type="obsolete">Ingrese la ruta para aplicación para abrir una URL:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5787"/>
+        <source>Critcal error</source>
+        <translation>Error crítico</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find the documentation
+vym.pdf in various places.</source>
+        <translation type="obsolete">No puede encontrar la documentación
+vym.pdf en varios lugares.</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a viewer to read vym.pdf.
+Please use Settings-&gt;</source>
+        <translation type="obsolete">No se puede encontrar un visor para leer vym.pdf.
+Por favor use Configuración-&gt;</translation>
+    </message>
+    <message>
+        <source>Add a branch by inserting and making selection its child</source>
+        <translation type="obsolete">Adicionar una rama insertando y haciendo selección de sus hijos</translation>
+    </message>
+    <message>
+        <source>Add branch (insert)</source>
+        <translation type="obsolete">Añadir rama (insertar)</translation>
+    </message>
+    <message>
+        <source>Remove only branch and keep its childs</source>
+        <translation type="obsolete">Borrar solo ramas y mantener sus hijos</translation>
+    </message>
+    <message>
+        <source>Remove only branch </source>
+        <translation type="obsolete">Borrar solo ramas</translation>
+    </message>
+    <message>
+        <source>Remove childs of branch</source>
+        <translation type="obsolete">Borrar hijos de rama</translation>
+    </message>
+    <message>
+        <source>Remove childs</source>
+        <translation type="obsolete">Borrar Hijos</translation>
+    </message>
+    <message>
+        <source>Use modifier to copy</source>
+        <translation type="obsolete">Usar modificador para copiar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2723"/>
+        <source>Add</source>
+        <translation>Añadir</translation>
+    </message>
+    <message>
+        <source>Remove</source>
+        <translation type="obsolete">Borrar</translation>
+    </message>
+    <message>
+        <source>Edit XLink</source>
+        <translation type="obsolete">Editar XEnlace</translation>
+    </message>
+    <message>
+        <source>Goto XLink</source>
+        <translation type="obsolete">Ir al XEnlace</translation>
+    </message>
+    <message>
+        <source>This map does not exist:
+  </source>
+        <translation type="obsolete">Este mapa no existe:</translation>
+    </message>
+    <message>
+        <source>
+Do you want to create a new one?</source>
+        <translation type="obsolete">¿Desea crear uno nuevo?</translation>
+    </message>
+    <message>
+        <source>Use modifier to draw xLinks</source>
+        <translation type="obsolete">Usar modificadores para dibujar XEnlace</translation>
+    </message>
+    <message>
+        <source>Use exclusive flags in flag toolbars</source>
+        <translation type="obsolete">Usar banderas exclusivas en la barra de herramientas de banderas</translation>
+    </message>
+    <message>
+        <source>Enable exclusive flags</source>
+        <translation type="obsolete">Habilitar banderas exclusivas</translation>
+    </message>
+    <message>
+        <source>Set application to open external links</source>
+        <translation type="obsolete">Configurar aplicación para abrir enlaces externos</translation>
+    </message>
+    <message>
+        <source>Delete key for deleting branches</source>
+        <translation type="obsolete">Borrar clave para borrar ramas</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3179"/>
+        <source>The map %1
+is already opened.Opening the same map in multiple editors may lead 
+to confusion when finishing working with vym.Do you want to</source>
+        <translation type="unfinished">El mapa %1 ya está abierto. Abrir el mismo mapa en múltiples editores puede conducir a confusión cuando se cierran tareas con vym. ¿Desea abrirlo?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3228"/>
+        <source>This map does not exist:
+  %1
+Do you want to create a new one?</source>
+        <translation type="unfinished">Este mapa no existe:
+   %1
+¿Desea crear uno nuevo?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3264"/>
+        <source>Loading: %1</source>
+        <comment>Progress dialog while loading maps</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3413"/>
+        <source>Saved  %1</source>
+        <translation type="unfinished">Guardado %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3417"/>
+        <source>Couldn&apos;t save </source>
+        <translation type="unfinished">No se pudo guardar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3455"/>
+        <source>The file %1
+exists already. Do you want to</source>
+        <translation type="unfinished">El archivo %1
+ya existe. ¿Desea crearlo?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3770"/>
+        <source>The map %1 has been modified but not saved yet. Do you want to</source>
+        <translation type="unfinished">El mapa %1 ha sido modificado pero se ha guardado todavía. ¿Desea guardarlo?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4131"/>
+        <source>Couldn&apos;t open map %1</source>
+        <translation type="unfinished">No se pudo abrir mapa %1</translation>
+    </message>
+    <message>
+        <source>Exit</source>
+        <translation type="obsolete">Salir</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="obsolete">Rehacer</translation>
+    </message>
+    <message>
+        <source>&amp;Redo</source>
+        <translation type="obsolete">&amp;Rehacer</translation>
+    </message>
+    <message>
+        <source>Hide link</source>
+        <translation type="obsolete">Ocultar enlace</translation>
+    </message>
+    <message>
+        <source>Note</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Nota</translation>
+    </message>
+    <message>
+        <source>WWW Document (external)</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Documento WWW (externo)</translation>
+    </message>
+    <message>
+        <source>Link to another vym map</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Enlace a otro mapa vym</translation>
+    </message>
+    <message>
+        <source>subtree is scrolled</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">El subárbol está desplegado</translation>
+    </message>
+    <message>
+        <source>subtree is temporary scrolled</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">El subárbol está temporalmente desplegado</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2291"/>
+        <source>Take care!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">¡Ten cuidado!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2295"/>
+        <source>Really?</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">¿Cierto?</translation>
+    </message>
+    <message>
+        <source>ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">¡Ok!</translation>
+    </message>
+    <message>
+        <source>Not ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">¡No esta bien!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2274"/>
+        <source>This won&apos;t work!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">¡Esto no funciona!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2299"/>
+        <source>Good</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Bien</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2303"/>
+        <source>Bad</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Mal</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2312"/>
+        <source>Time critical</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Tiempo crítico</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2318"/>
+        <source>Idea!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">¡Idea!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2322"/>
+        <source>Important</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Importante</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2326"/>
+        <source>Unimportant</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Poco importante</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2339"/>
+        <source>I like this</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Me gusta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2343"/>
+        <source>I do not like this</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">no me gusta esto</translation>
+    </message>
+    <message>
+        <source>I just love... </source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Solo amo...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2356"/>
+        <source>Dangerous</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Peligroso</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2364"/>
+        <source>This will help</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Esto puede ayudar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <location filename="../mainwindow.cpp" line="3596"/>
+        <source>Import</source>
+        <translation type="unfinished">Importar</translation>
+    </message>
+    <message>
+        <source>KDE Bookmarks</source>
+        <translation type="obsolete">Favoritos KDE</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <location filename="../mainwindow.cpp" line="1087"/>
+        <location filename="../mainwindow.cpp" line="1091"/>
+        <location filename="../mainwindow.cpp" line="1095"/>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <source>(still experimental)</source>
+        <translation type="unfinished">(aún experimental)</translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">Exportar como LaTeX</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1110"/>
+        <source>&amp;Print</source>
+        <translation type="unfinished">&amp;Imprimir</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <location filename="../mainwindow.cpp" line="3724"/>
+        <source>Export to</source>
+        <translation type="unfinished">Exportar a</translation>
+    </message>
+    <message>
+        <source>Hide object in exports</source>
+        <translation type="obsolete">Ocultar objeto en las exportaciones</translation>
+    </message>
+    <message>
+        <source>Use hide flag during exports </source>
+        <translation type="obsolete">Usar ocultar flag durante exportaciones</translation>
+    </message>
+    <message>
+        <source>Open URL in new tab</source>
+        <translation type="obsolete">Abrir URL en una nueva pestaña</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3745"/>
+        <location filename="../mainwindow.cpp" line="3875"/>
+        <location filename="../mainwindow.cpp" line="3918"/>
+        <location filename="../mainwindow.cpp" line="4260"/>
+        <location filename="../mainwindow.cpp" line="5800"/>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Warning</source>
+        <translation type="unfinished">Advertencia</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3876"/>
+        <location filename="../mainwindow.cpp" line="5801"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <translation type="unfinished">No se pudo encontrar un visor para abrir %1.
+        </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Please use Settings-&gt;</source>
+        <translation type="unfinished">Por favor use Configuración-&gt;</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3919"/>
+        <source>Couldn&apos;t start %1 to open a new tab in %2.</source>
+        <translation type="unfinished">No se pudo iniciar %1 para abrir una nueva pestaña en %2.</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4244"/>
+        <source>Enter sleep time (number of days or date YYYY-MM-DD or DD.MM[.YYYY]</source>
+        <comment>task sleep time dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4261"/>
+        <source>Couldn&apos;t set sleep time to %1.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4304"/>
+        <source>branches</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4305"/>
+        <source>notes</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4306"/>
+        <source>images</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4307"/>
+        <source>tasks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4308"/>
+        <source>slides</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4309"/>
+        <source>xLinks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4967"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Set application to open PDF files</source>
+        <translation type="unfinished">Configurar aplicación para abrir archivos PDF</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2307"/>
+        <source>Oh no!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">¡Oh cielos!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="238"/>
+        <source>Note Editor</source>
+        <translation type="unfinished">Editor de notas</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="245"/>
+        <source>Heading Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="260"/>
+        <source>Search results list</source>
+        <comment>FindResultWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <comment>Toolbar for file actions</comment>
+        <translation type="obsolete">&amp;Mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2913"/>
+        <source>File actions toolbar</source>
+        <comment>Toolbar for file actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1067"/>
+        <source>PDF%1</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1071"/>
+        <source>SVG%1</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1040"/>
+        <source>Repeat last export (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2931"/>
+        <source>Edit actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="252"/>
+        <source>Script Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="314"/>
+        <source>Task list</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="273"/>
+        <source>Script Editor</source>
+        <comment>ScriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1135"/>
+        <source>E&amp;dit</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1208"/>
+        <source>Add attribute</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1316"/>
+        <source>&amp;Detach</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1317"/>
+        <source>Detach branch and use as mapcenter</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1334"/>
+        <source>Sort children backwards</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1411"/>
+        <source>Expand all branches</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1419"/>
+        <source>Expand one level</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1389"/>
+        <source>Collapse one level</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1400"/>
+        <source>Collapse unselected levels</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1355"/>
+        <source>Unscroll children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <source>Spreadsheet</source>
+        <translation type="unfinished">Hoja de cálculo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1101"/>
+        <source>Properties</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1290"/>
+        <source>Move branch up</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Mover rama arriba</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1303"/>
+        <source>Move branch down</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Mover rama abajo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1360"/>
+        <source>Grow selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1369"/>
+        <source>Shrink selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1378"/>
+        <source>Reset selection size</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1429"/>
+        <source>References Context menu</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1498"/>
+        <source>Bugzilla handling</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1499"/>
+        <source>Create URL to SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1510"/>
+        <source>Get data from SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1519"/>
+        <source>Get data from SUSE Bugzilla for subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1528"/>
+        <source>SUSE Fate tool handling</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1529"/>
+        <source>Create URL to SUSE FATE tool</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1537"/>
+        <source>vymlinks - linking maps</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1574"/>
+        <source>Exports</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1586"/>
+        <source>Tasks</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1587"/>
+        <source>Toggle task</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1598"/>
+        <source>Cycle task status</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1609"/>
+        <source>Reset sleep</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1620"/>
+        <location filename="../mainwindow.cpp" line="1643"/>
+        <location filename="../mainwindow.cpp" line="1654"/>
+        <location filename="../mainwindow.cpp" line="1665"/>
+        <location filename="../mainwindow.cpp" line="1676"/>
+        <source>Sleep %1 days</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1632"/>
+        <source>Sleep %1 day</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1687"/>
+        <location filename="../mainwindow.cpp" line="1698"/>
+        <source>Sleep %1 weeks</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1730"/>
+        <source>Removing parts of a map</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1753"/>
+        <source>Various</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1765"/>
+        <source>Map properties...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1771"/>
+        <source>Add   ...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1792"/>
+        <source>Selections</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1793"/>
+        <source>Select</source>
+        <comment>Select menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1795"/>
+        <source>Toggle target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1804"/>
+        <source>Goto target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1812"/>
+        <source>Move to target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1848"/>
+        <source>Search functions</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1864"/>
+        <source>Find duplicate URLs</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2053"/>
+        <source>Note editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2064"/>
+        <source>Heading editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2525"/>
+        <source>Set author for new maps</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2613"/>
+        <source>Number of visible parents in task editor</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2618"/>
+        <source>Number of visible parents in find results window</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Info</source>
+        <translation type="obsolete">Información</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1446"/>
+        <source>Open all URLs in subtree (including scrolled branches)</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1461"/>
+        <source>Extract URLs from note</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1754"/>
+        <source>Add timestamp</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1743"/>
+        <source>Remove children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2972"/>
+        <source>Zoom toolbar</source>
+        <comment>View Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2042"/>
+        <source>Center on selection</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2982"/>
+        <source>Editors toolbar</source>
+        <comment>Editor Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2994"/>
+        <source>Modifier modes toolbar</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="280"/>
+        <source>Property Editor</source>
+        <comment>PropertyEditor</comment>
+        <translation type="unfinished">Editar propiedad</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="287"/>
+        <source>History window</source>
+        <comment>HistoryWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1047"/>
+        <source>Webpage (HTML)...</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1051"/>
+        <source>Text (ASCII)...</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <source>Text with tasks</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1059"/>
+        <source>Text (A&amp;O report)...</source>
+        <comment>Export format</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1545"/>
+        <source>Open linked map in background tab</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1820"/>
+        <source>Select previous</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1830"/>
+        <source>Select next</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1840"/>
+        <source>Unselect all</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1918"/>
+        <source>Select default font</source>
+        <comment>Branch attribute</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1996"/>
+        <source>Toolbars</source>
+        <comment>Toolbars overview in view menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2018"/>
+        <source>Rotate counterclockwise</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2026"/>
+        <source>Rotate rclockwise</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2076"/>
+        <source>Tree editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2084"/>
+        <source>Task editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2094"/>
+        <source>Slide editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2102"/>
+        <source>Script editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2153"/>
+        <source>Next slide</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2160"/>
+        <source>Previous slide</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2242"/>
+        <location filename="../mainwindow.cpp" line="2245"/>
+        <source>URL to Bugzilla </source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2248"/>
+        <source>Map target</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2265"/>
+        <source>Standard Flags toolbar</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2279"/>
+        <source>Status - ok,done</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2283"/>
+        <source>Status - work in progress</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2287"/>
+        <source>Status - missing, not started</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2315"/>
+        <source>Call...</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Llamar...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2330"/>
+        <source>Very important!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">¡Muy importante!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2334"/>
+        <source>Very unimportant!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">¡Poco importante!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2347"/>
+        <source>Rose</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Rosa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2353"/>
+        <source>Surprise!</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">¡Sorpresa!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2360"/>
+        <source>Info</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Información</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2514"/>
+        <source>Settings</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2518"/>
+        <source>Check for release notes and updates</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2539"/>
+        <source>Set application to zip/unzip files</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2685"/>
+        <source>Download and show release notes</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2689"/>
+        <source>Check, if updates are available</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2694"/>
+        <source>Show keyboard shortcuts</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2698"/>
+        <source>Debug info</source>
+        <comment>Option to show debugging info</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2755"/>
+        <source>Tasks</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2796"/>
+        <source>XLinks</source>
+        <comment>Menu for file actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2922"/>
+        <source>Undo and clipboard toolbar</source>
+        <comment>Toolbar for redo/undo and clipboard</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2948"/>
+        <source>Selection toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2956"/>
+        <source>URLs and vymLinks toolbar</source>
+        <comment>Toolbar for URLs and vymlinks</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2964"/>
+        <source>Colors toolbar</source>
+        <comment>Colors toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3314"/>
+        <source>or</source>
+        <comment>File Dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3444"/>
+        <source>Save map as</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <source>Couldn&apos;t save %1,
+because of existing lockfile:
+
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3746"/>
+        <source>Couldn&apos;t find configuration for export to LibreOffice
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3994"/>
+        <source>Enter URL:</source>
+        <translation type="unfinished">Introduzca URL:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4017"/>
+        <source>HTML</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4018"/>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">Texto</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4019"/>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">Hoja de cálculo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4020"/>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">Textdocument</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4021"/>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">Imágenes</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4025"/>
+        <source>Set URL to a local file</source>
+        <translation type="unfinished">Establecer URL a un fichero local</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4183"/>
+        <location filename="../mainwindow.cpp" line="4185"/>
+        <source>Link to another map</source>
+        <translation type="unfinished">Enlazar a otro mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <source>Please allow vym to download release notes!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5968"/>
+        <source>&lt;html&gt;&lt;h3&gt;Do you allow vym to check online for updates or release notes?&lt;/h3&gt;If you allow, vym will &lt;ul&gt;&lt;li&gt;check once for release notes&lt;/li&gt;&lt;li&gt;check regulary for updates and notify you in case you should update, e.g. if there are important bug fixes available&lt;/li&gt;&lt;li&gt;receive a cookie with a random ID and send vym version and platform name and the ID  (e.g. &quot;Windows&quot; or &quot;Linux&quot;) back to me, Uwe Drechsel.&lt;p&gt;As vym developer I am motivated to see many people using vym. Of course I am curious to see, on which system vym is used. Maintaining each of the systems requires a lot of my (spare) time.&lt;/p&gt; &lt;p&gt;No other data than above will be sent, especially no private data will be collected or sent.(Check the source code, if you don&apos;t believe.)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;If you do not allow, &lt;ul&gt;&lt;li&gt;nothing will be downloaded and especially I will &lt;b&gt;not be motivated&lt;/b&gt; to spend some more thousands of hours on developing a free software tool.&lt;/ul&gt;Please allow vym to check for updates :-)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5997"/>
+        <source>Allow</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5998"/>
+        <source>Do not allow</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6004"/>
+        <source>Thank you for enabling downloads!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6027"/>
+        <source>Update information</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6033"/>
+        <source>vym is up to date.</source>
+        <comment>MainWindow</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6084"/>
+        <source>Checking for updates...</source>
+        <comment>MainWindow</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Please allow vym to check for updates!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <translation type="obsolete">Favoritos de Firefox</translation>
+    </message>
+    <message>
+        <source>Show Note Editor</source>
+        <translation type="obsolete">Mostrar Editor de notas</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3533"/>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <source>Bookmarks</source>
+        <translation type="unfinished">Favoritos</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start %1 to open a new tab</source>
+        <translation type="obsolete">No se pudo iniciar %1 para abrir una nueva pestaña</translation>
+    </message>
+    <message>
+        <source>Modes when using modifiers</source>
+        <comment>Toolbars</comment>
+        <translation type="obsolete">Modos cuando usa modificadores</translation>
+    </message>
+    <message>
+        <source>Standard Flags</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation type="obsolete">Banderas estándar</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find configuration for export to Open Office
+</source>
+        <translation type="obsolete">No se pudo encontrar configuración para exportar a Open Office</translation>
+    </message>
+    <message>
+        <source>No matches found for &quot;%1&quot;</source>
+        <translation type="obsolete">No se han encontrado coincidencias para &quot;%1&quot;</translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <translation type="obsolete">&amp;Mapa</translation>
+    </message>
+    <message>
+        <source>Open all URLs in subtree</source>
+        <translation type="obsolete">Abrir todas las URLs en subárbol</translation>
+    </message>
+    <message>
+        <source>Open all vym links in subtree</source>
+        <translation type="obsolete">Abrir todos los enlaces vym en subárbol</translation>
+    </message>
+    <message>
+        <source>Sorry, currently only Konqueror and Mozilla support tabbed browsing.</source>
+        <translation type="obsolete">Disculpe, actualmente solo Konqueror y Mozilla soportan navegación por etiqueta</translation>
+    </message>
+    <message>
+        <source>&amp;New...</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">&amp;Nuevo...</translation>
+    </message>
+    <message>
+        <source>New map</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">Nuevo Mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="985"/>
+        <source>&amp;Open...</source>
+        <comment>File menu</comment>
+        <translation type="unfinished">&amp;Abrir...</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">Abrir</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1000"/>
+        <source>Open Recent</source>
+        <comment>File menu</comment>
+        <translation type="unfinished">Abrir reciente</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1003"/>
+        <source>&amp;Save...</source>
+        <comment>File menu</comment>
+        <translation type="unfinished">&amp;Guardar...</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">Guardar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1011"/>
+        <source>Save &amp;As...</source>
+        <comment>File menu</comment>
+        <translation type="unfinished">Guardar &amp;Como...</translation>
+    </message>
+    <message>
+        <source>Save &amp;As</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">Guardar &amp;Como</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1017"/>
+        <source>Import</source>
+        <comment>File menu</comment>
+        <translation type="unfinished">Importar</translation>
+    </message>
+    <message>
+        <source>Import %1</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">Consejo de menu fichero</translation>
+    </message>
+    <message>
+        <source>KDE bookmarks</source>
+        <translation type="obsolete">Marcadores KDE</translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Marcadores de Firefox</translation>
+    </message>
+    <message>
+        <source>Import %1</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Importar %1</translation>
+    </message>
+    <message>
+        <source>Import Dir%1</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Importar Directorio%1</translation>
+    </message>
+    <message>
+        <source>Import directory structure (experimental)</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Importar estructura de directorio (experimental)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1038"/>
+        <source>Export</source>
+        <comment>File menu</comment>
+        <translation type="unfinished">Exportar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1063"/>
+        <source>Image%1</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished">Imagen%1</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Exportar mapa como imagen</translation>
+    </message>
+    <message>
+        <source>Export in Open Document Format used e.g. in Open Office </source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Exportar en formato abierto, por ejemplo Open Office</translation>
+    </message>
+    <message>
+        <source>Export as %1</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Exportar como %1</translation>
+    </message>
+    <message>
+        <source> webpage (XHTML)</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Consejo de menú fichero</translation>
+    </message>
+    <message>
+        <source>Export as %1</source>
+        <translation type="obsolete">Exportar como %1</translation>
+    </message>
+    <message>
+        <source>KDE Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Marcadores KDE</translation>
+    </message>
+    <message>
+        <source>Print</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Imprimir</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1118"/>
+        <source>&amp;Close Map</source>
+        <comment>File menu</comment>
+        <translation type="unfinished">&amp;Cerrar Mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1124"/>
+        <source>E&amp;xit</source>
+        <comment>File menu</comment>
+        <translation type="unfinished">Salir&amp;</translation>
+    </message>
+    <message>
+        <source>&amp;Actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="obsolete">Barra de acciones</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Editar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1139"/>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">&amp;Deshacer</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1150"/>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">&amp;Rehacer</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1161"/>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">&amp;Copiar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1172"/>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Menú editar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1185"/>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">&amp;Pegar</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Editar encabezado</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1197"/>
+        <source>Delete Selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Eliminar Selección</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1232"/>
+        <source>Add branch as child</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Agregar rama como hija</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1242"/>
+        <source>Add branch (insert)</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Adicionar rama (insertar)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1252"/>
+        <location filename="../mainwindow.cpp" line="1262"/>
+        <source>Add branch above</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Agregar rama arriba</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1272"/>
+        <location filename="../mainwindow.cpp" line="1281"/>
+        <source>Add branch below</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Agregar rama abajo</translation>
+    </message>
+    <message>
+        <source>Move up</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Subir</translation>
+    </message>
+    <message>
+        <source>Move down</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Bajar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1343"/>
+        <source>Scroll branch</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Acoplar rollo</translation>
+    </message>
+    <message>
+        <source>Unscroll all scrolled branches</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Desacoplar todas las ramas acopladas</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1849"/>
+        <location filename="../mainwindow.cpp" line="1857"/>
+        <source>Find...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Encontrar...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1430"/>
+        <source>Open URL</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Abrir URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1438"/>
+        <source>Open URL in new tab</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Abrir URL en una nueva pestaña</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1454"/>
+        <source>Open all URLs in subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Menú editar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1470"/>
+        <source>Edit URL...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Editar URL...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1488"/>
+        <source>Use heading for URL</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Usar encabezado para URL</translation>
+    </message>
+    <message>
+        <source>Create URL to Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Crear URL a Bugzila</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1538"/>
+        <source>Open linked map</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Abrir mapa enlazado</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1552"/>
+        <source>Open all vym links in subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Abrir todos los enlaces de vym en subárbol</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1560"/>
+        <source>Edit vym link...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Editar enlace vym...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1567"/>
+        <source>Delete vym link</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Eliminar enlace de vym</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1575"/>
+        <source>Hide in exports</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Ocultar en la exportación</translation>
+    </message>
+    <message>
+        <source>Edit Map Info...</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Editar información de mapa...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1710"/>
+        <source>Add map (insert)</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Añadir mapa (insertar)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1717"/>
+        <source>Add map (replace)</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Añadir mapa (reemplazar)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1724"/>
+        <source>Save selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Guardar Selección</translation>
+    </message>
+    <message>
+        <source>Remove only branch </source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Remover solo ramas</translation>
+    </message>
+    <message>
+        <source>Remove childs</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Hijos remotos</translation>
+    </message>
+    <message>
+        <source>Select upper branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Seleccionar rama más alta</translation>
+    </message>
+    <message>
+        <source>Select lower branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Seleccionar rama más baja</translation>
+    </message>
+    <message>
+        <source>Select left branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Seleccionar rama izquierda</translation>
+    </message>
+    <message>
+        <source>Select child branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Seleccionar rama hijo</translation>
+    </message>
+    <message>
+        <source>Select first branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Seleccionar primera rama</translation>
+    </message>
+    <message>
+        <source>Select last branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Seleccionar última rama</translation>
+    </message>
+    <message>
+        <source>Add Image...</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Añadir imagen...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1876"/>
+        <source>F&amp;ormat</source>
+        <comment>Format menu</comment>
+        <translation type="unfinished">Formato&amp;</translation>
+    </message>
+    <message>
+        <source>Format Actions</source>
+        <comment>Format Toolbar name</comment>
+        <translation type="obsolete">Acciones de formato</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1889"/>
+        <source>Pic&amp;k color</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Esco&amp;ger Color</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1898"/>
+        <source>Color &amp;branch</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Color de &amp;rama</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1907"/>
+        <source>Color sub&amp;tree</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Color de Sub&amp;árbol</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <comment>Branch attribute</comment>
+        <translation type="obsolete">Sin marco</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1958"/>
+        <source>Hide link if object is not selected</source>
+        <comment>Branch attribute</comment>
+        <translation type="unfinished">Esconder enlace si el objeto no se selecciona</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1964"/>
+        <source>&amp;Use color of heading for link</source>
+        <comment>Branch attribute</comment>
+        <translation type="unfinished">&amp;Usar color para encabezado de enlace</translation>
+    </message>
+    <message>
+        <source>View Actions</source>
+        <comment>View Toolbar name</comment>
+        <translation type="obsolete">Ver acciones</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2034"/>
+        <source>reset Zoom</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Reiniciar Zoom</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2002"/>
+        <source>Zoom in</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Acercar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="124"/>
+        <source>Main window</source>
+        <comment>Shortcut scope</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="218"/>
+        <source>Main window</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="219"/>
+        <source>Map Editors</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="220"/>
+        <source>Text Editors</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="967"/>
+        <source>&amp;Map</source>
+        <comment>Menu for file actions</comment>
+        <translation type="unfinished">&amp;Mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="992"/>
+        <source>&amp;Restore last session</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1021"/>
+        <source>Firefox Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <source>Import Dir%1</source>
+        <comment>Import Filters</comment>
+        <translation type="unfinished">Importar Directorio%1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1733"/>
+        <source>Remove only branch and keep its children </source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1878"/>
+        <source>Formatting</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1997"/>
+        <source>Views</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2010"/>
+        <source>Zoom out</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Alejar</translation>
+    </message>
+    <message>
+        <source>Show Note Editor</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Mostrar editor de notas</translation>
+    </message>
+    <message>
+        <source>Next Window</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Siguiente Ventana</translation>
+    </message>
+    <message>
+        <source>Previous Window</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Ventana Previa</translation>
+    </message>
+    <message>
+        <source>Modes when using modifiers</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation type="obsolete">Modos cuando usa modificadores</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2178"/>
+        <source>Use modifier to color branches</source>
+        <comment>Mode modifier</comment>
+        <translation type="unfinished">Usar modificadores para color de ramas</translation>
+    </message>
+    <message>
+        <source>Use modifier to copy</source>
+        <comment>Mode modifier</comment>
+        <translation type="obsolete">Usar modificador de copia</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2194"/>
+        <source>Use modifier to draw xLinks</source>
+        <comment>Mode modifier</comment>
+        <translation type="unfinished">Usar modificadores para dibujar XEnlace</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2385"/>
+        <source>forward</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2397"/>
+        <source>Don&apos;t flagrget</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2531"/>
+        <source>Set application to open pdf files</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">Configurar aplicación para abrir archivos pdf</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2535"/>
+        <source>Set application to open external links</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">Establecer aplicación para abrir enlaces externos</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2581"/>
+        <source>Edit branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">Editar rama después de adicionarle</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2587"/>
+        <source>Select branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">Seleccionar rama después de adicionarle</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2593"/>
+        <source>Select existing heading</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">Seleccionar encabezado existente</translation>
+    </message>
+    <message>
+        <source>Delete key</source>
+        <comment>Settings action</comment>
+        <translation type="obsolete">Borrar clave</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2599"/>
+        <source>Exclusive flags</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">Flags exclusivos</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2605"/>
+        <source>Use hide flags</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">Usar flags ocultos</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2673"/>
+        <source>&amp;Help</source>
+        <comment>Help menubar entry</comment>
+        <translation type="unfinished">&amp;Ayuda</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2676"/>
+        <source>Open VYM Documentation (pdf) </source>
+        <comment>Help action</comment>
+        <translation type="unfinished">Abrir Documentación de VYM (pdf)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2702"/>
+        <source>About VYM</source>
+        <comment>Help action</comment>
+        <translation type="unfinished">Acerca de VYM</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2706"/>
+        <source>About QT</source>
+        <comment>Help action</comment>
+        <translation type="unfinished">Acerca de QT</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2735"/>
+        <source>Remove</source>
+        <comment>Context menu name</comment>
+        <translation type="unfinished">Remover</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2798"/>
+        <source>Edit XLink</source>
+        <comment>Context menu name</comment>
+        <translation type="unfinished">Editar XEnlace</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2809"/>
+        <source>Follow XLink</source>
+        <comment>Context menu name</comment>
+        <translation type="unfinished">Seguir XLink</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2818"/>
+        <source>Save image</source>
+        <comment>Context action</comment>
+        <translation type="unfinished">Guardar imagen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="971"/>
+        <source>&amp;New map</source>
+        <comment>File menu</comment>
+        <translation type="unfinished">Nuevo mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="978"/>
+        <source>&amp;Copy to new map</source>
+        <comment>File menu</comment>
+        <translation type="unfinished">&amp;Copiar en nuevo mapa</translation>
+    </message>
+    <message>
+        <source>Copy selection to mapcenter of a new map</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">Copiar mapcenter en un nuevo mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1221"/>
+        <source>Add mapcenter</source>
+        <comment>Canvas context menu</comment>
+        <translation type="unfinished">Añadir mapcenter</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1325"/>
+        <source>Sort children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Ordenar hijos</translation>
+    </message>
+    <message>
+        <source>Unscroll childs</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">No desplegar hijos</translation>
+    </message>
+    <message>
+        <source>Unscroll all scrolled branches in selected subtree</source>
+        <translation type="obsolete">No desplegar y desplegar ramas seleccionadas en subárbol</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1479"/>
+        <source>Edit local URL...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Editar URL local...</translation>
+    </message>
+    <message>
+        <source>Edit local URL</source>
+        <translation type="obsolete">Editar URL local</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Crear URL a Bugzilla</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell Bugzilla</source>
+        <translation type="obsolete">Crear URL a Bugzilla</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell FATE</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Crear URL a novell FATE</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell FATE</source>
+        <translation type="obsolete">Crear URL a novell FATE</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1779"/>
+        <source>Property window</source>
+        <comment>Dialog to edit properties of selection</comment>
+        <translation type="unfinished">Propiedades de ventana</translation>
+    </message>
+    <message>
+        <source>Set properties for selection</source>
+        <translation type="obsolete">Establecer propiedades para la selección</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1935"/>
+        <source>Linkstyle Curve</source>
+        <translation type="unfinished">Estilo de curva</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1949"/>
+        <source>Linkstyle Thick Curve</source>
+        <translation type="unfinished">Estilo de curva gruesa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1976"/>
+        <source>Set &amp;Selection Color</source>
+        <translation type="unfinished">Establecer &amp;color selección</translation>
+    </message>
+    <message>
+        <source>Set Selection Color</source>
+        <translation type="obsolete">Establecer color selección</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1986"/>
+        <source>Set &amp;Background image</source>
+        <translation type="unfinished">Establecer &amp;imagen de fondo</translation>
+    </message>
+    <message>
+        <source>Set Background image</source>
+        <translation type="obsolete">Establecer imagen de fondo</translation>
+    </message>
+    <message>
+        <source>Show selection</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Mostrar selección</translation>
+    </message>
+    <message>
+        <source>Show selection</source>
+        <translation type="obsolete">Mostrar selección</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2110"/>
+        <source>History Window</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Historico de ventana</translation>
+    </message>
+    <message>
+        <source>Show History Window</source>
+        <translation type="obsolete">Mostrar historico de ventanas
+    </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2124"/>
+        <source>Antialiasing</source>
+        <comment>View action</comment>
+        <translation type="unfinished">No alisar</translation>
+    </message>
+    <message>
+        <source>Antialiasing</source>
+        <translation type="obsolete">No alisar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2131"/>
+        <source>Smooth pixmap transformations</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Transformaciones de pixmap lisas</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2139"/>
+        <source>Next Map</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Nuevo mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2146"/>
+        <source>Previous Map</source>
+        <comment>View action</comment>
+        <translation type="unfinished">Previsualizar mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2174"/>
+        <source>Modifier modes</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2213"/>
+        <location filename="../mainwindow.cpp" line="2216"/>
+        <location filename="../mainwindow.cpp" line="2219"/>
+        <location filename="../mainwindow.cpp" line="2223"/>
+        <location filename="../mainwindow.cpp" line="2226"/>
+        <location filename="../mainwindow.cpp" line="2229"/>
+        <location filename="../mainwindow.cpp" line="2233"/>
+        <location filename="../mainwindow.cpp" line="2236"/>
+        <source>Note</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">Nota</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2239"/>
+        <source>URL to Document </source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">URL a documento</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2251"/>
+        <source>Link to another vym map</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">Enlace a otro mapa vym</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2254"/>
+        <source>subtree is scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">Subárbol está acoplado</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2257"/>
+        <source>subtree is temporary scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">Subárbol está temporalmente acoplado</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2260"/>
+        <source>Hide object in exported maps</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">Ocultar objeto en mapas exportados</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2350"/>
+        <source>I just love...</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished">Me encanta...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2369"/>
+        <source>Important</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Importante</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2376"/>
+        <source>Priority</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Flags-freemind</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2381"/>
+        <source>Back</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Volver</translation>
+    </message>
+    <message>
+        <source>Forward</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="obsolete">Adelante</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2389"/>
+        <source>Look here</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Mira aquí</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2393"/>
+        <source>Dangerous</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Peligroso</translation>
+    </message>
+    <message>
+        <source>Don&apos;t forget</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="obsolete">No o&apos;lvide</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2401"/>
+        <source>Flag</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Bandera</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2406"/>
+        <source>Home</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Inicio</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2410"/>
+        <source>Telephone</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Teléfono</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2414"/>
+        <source>Music</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Música</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2418"/>
+        <source>Mailbox</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Bandeja de correo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2422"/>
+        <source>Maix</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Maix</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2426"/>
+        <source>Password</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Contraseña</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2430"/>
+        <source>To be improved</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Para mejorar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2434"/>
+        <source>Stop</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Parar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2438"/>
+        <source>Magic</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Mágico</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2442"/>
+        <source>To be discussed</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Para discutir</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2446"/>
+        <source>Reminder</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Recordar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2450"/>
+        <source>Excellent</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Excelente</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2454"/>
+        <source>Linux</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Linux</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2458"/>
+        <source>Sweet</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Dulce</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2543"/>
+        <source>Set path for macros</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">Establecer ruta para macros</translation>
+    </message>
+    <message>
+        <source>Set path for macros</source>
+        <translation type="obsolete">Establecer ruta para macros</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2547"/>
+        <source>Set number of undo levels</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">Establecer numero de niveles de deshacerq</translation>
+    </message>
+    <message>
+        <source>Set number of undo levels</source>
+        <translation type="obsolete">Configurar el número de niveles de deshacer</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2553"/>
+        <source>Autosave</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">Autoguardar</translation>
+    </message>
+    <message>
+        <source>Autosave</source>
+        <translation type="obsolete">Autoguardar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2559"/>
+        <source>Autosave time</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">Autoguardar tiempo</translation>
+    </message>
+    <message>
+        <source>Autosave time</source>
+        <translation type="obsolete">Autoguardar tiempo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2572"/>
+        <source>Write backup file on save</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">Escribir fichero de copia de seguridad al guardar</translation>
+    </message>
+    <message>
+        <source>Write backup file on save</source>
+        <translation type="obsolete">Escribir fichero de copia de seguridad al guardar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2623"/>
+        <source>Animation</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">Animación</translation>
+    </message>
+    <message>
+        <source>Animation</source>
+        <translation type="obsolete">Animación</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2630"/>
+        <source>Automatic layout</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2641"/>
+        <source>Test</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2680"/>
+        <source>Open VYM example maps </source>
+        <comment>Help action</comment>
+        <translation type="unfinished">Abrir mapas de ejemplo de VYM</translation>
+    </message>
+    <message>
+        <source>Open VYM example maps </source>
+        <translation type="obsolete">Abrir mapas de ejemplo de VYM</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2772"/>
+        <source>References (URLs, vymLinks, ...)</source>
+        <comment>Context menu name</comment>
+        <translation type="unfinished">Referencias (URLs, vymLinks, ...)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2803"/>
+        <source>Follow XLink</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished">Seguir XLink</translation>
+    </message>
+    <message>
+        <source>&amp;%1 %2</source>
+        <translation type="obsolete">&amp;%1 %2</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3126"/>
+        <source>unnamed</source>
+        <comment>MainWindow: name for new and empty file</comment>
+        <translation type="unfinished">sin nombre</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3563"/>
+        <source>Load Freemind map</source>
+        <translation type="unfinished">Cargar mapa de Freemind</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <source>Export as CSV</source>
+        <translation type="unfinished">Exportar a CSV</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4286"/>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished">%1 elementos en el mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5000"/>
+        <location filename="../mainwindow.cpp" line="5010"/>
+        <source>Set application to zip/unzip files</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5028"/>
+        <source>Directory with vym macros:</source>
+        <translation type="unfinished">Directorio con macros vym:</translation>
+    </message>
+    <message>
+        <source>QInputDialog::getInteger()</source>
+        <translation type="obsolete">QInputDialog::getInteger()</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5041"/>
+        <source>Number of undo/redo levels:</source>
+        <translation type="unfinished">Número de niveles deshacer/rehacer:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5046"/>
+        <source>Settings have been changed. The next map opened will have &quot;%1&quot; undo/redo levels</source>
+        <translation type="unfinished">Se ha cambiado la configuración. El próximo mapa abierto tendrá &quot;%1&quot; niveles de deshacer/rehacer</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5066"/>
+        <source>Number of seconds before autosave:</source>
+        <translation type="unfinished">Número de segundos antes de autoguardar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5076"/>
+        <source>Set author for new maps (used in lockfile)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5077"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5088"/>
+        <source>Number of parents shown in find results:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5098"/>
+        <source>Number of parents shown for a task:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3092"/>
+        <source>(readonly)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5433"/>
+        <source>History for %1</source>
+        <comment>Window Caption</comment>
+        <translation type="unfinished">Historial para %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5456"/>
+        <source>Export in last used format (%1) to: %2</source>
+        <comment>status tip</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5788"/>
+        <source>Couldn&apos;t find the documentation %1 in:
+%2</source>
+        <translation type="unfinished">No se pudo encontrar la documentación %1 in:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5816"/>
+        <source>Load vym example map</source>
+        <translation type="unfinished">Cargar mapa vym de ejemplo</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation type="obsolete">No se pudo encontrar una macro en %1.</translation>
+    </message>
+    <message>
+        <source>Set directory for vym macros</source>
+        <translation type="obsolete">Establecer directorio para las macros vym</translation>
+    </message>
+</context>
+<context>
+    <name>MapEditor</name>
+    <message>
+        <source>Critical Parse Error</source>
+        <translation type="obsolete">Error Crítico de conversión</translation>
+    </message>
+    <message>
+        <source>Critical Save Error</source>
+        <translation type="obsolete">Error Crítico de Guardado</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t write to </source>
+        <translation type="obsolete">No puede escribir</translation>
+    </message>
+    <message>
+        <source>VYM - Export (ASCII)</source>
+        <translation type="obsolete">VYM - Exportar (ASCII)</translation>
+    </message>
+    <message>
+        <source>The file </source>
+        <translation type="obsolete">El archivo</translation>
+    </message>
+    <message>
+        <source> exists already. Do you want to overwrite it?</source>
+        <translation type="obsolete">ya existe. ¿Desea sobrescribir?</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="obsolete">Sobreescribir</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Cancelar</translation>
+    </message>
+    <message>
+        <source>Critical Export Error </source>
+        <translation type="obsolete">Error de exportación crítico</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create directory </source>
+        <translation type="obsolete">No puede crear el directorio</translation>
+    </message>
+    <message>
+        <source>Critical Export Error</source>
+        <translation type="obsolete">Error de exportación crítico</translation>
+    </message>
+    <message>
+        <source>MapEditor::exportXML couldn&apos;t open </source>
+        <translation type="obsolete">Editor de Mapa::exportarXML  no pudo abrir</translation>
+    </message>
+    <message>
+        <source>Critical Parse Error by reading backupFile</source>
+        <translation type="obsolete">Error de conversión leyendo el archivo de copia de seguridad</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">Error crítico</translation>
+    </message>
+    <message>
+        <source> used for undo is gone. 
+I will create a new one, but at the moment no undo is available.
+Maybe you want to reload your original data.
+
+Sorry for any inconveniences.</source>
+        <translation type="obsolete">usos para deshacer no hay.
+Creare uno nuevo, pero por el momento no está disponible deshacer.
+Pueda que desee recargar su información original.
+
+Disculpe cualquier inconveniente.</translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation type="obsolete">Introduzca URL:</translation>
+    </message>
+    <message>
+        <source>VYM - Link to another map</source>
+        <translation type="obsolete">VYM - Enlace a otro mapa</translation>
+    </message>
+    <message>
+        <source>vym map</source>
+        <translation type="obsolete">mapa vym</translation>
+    </message>
+    <message>
+        <source>vym - load image</source>
+        <translation type="obsolete">vym - cargar imagen</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <translation type="obsolete">Imágenes</translation>
+    </message>
+    <message>
+        <source>vym - Load image</source>
+        <translation type="obsolete">vym - Cargar imagen</translation>
+    </message>
+    <message>
+        <source>vym - save image as</source>
+        <translation type="obsolete">vym - guardar imagen como</translation>
+    </message>
+    <message>
+        <source>vym - Save image as </source>
+        <translation type="obsolete">vym - Guardar imagen como</translation>
+    </message>
+    <message>
+        <source>Critical Import Error</source>
+        <translation type="obsolete">Error de Importación crítico</translation>
+    </message>
+    <message>
+        <source>Cannot find the directory</source>
+        <translation type="obsolete">No se puede encontrar el directorio</translation>
+    </message>
+    <message>
+        <source>VYM - Choose directory structur to import</source>
+        <translation type="obsolete">VYM - Escoja estructura de directorio a importar</translation>
+    </message>
+    <message>
+        <source>Note</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Nota</translation>
+    </message>
+    <message>
+        <source>WWW Document (external)</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Documento WWW (externo)</translation>
+    </message>
+    <message>
+        <source>Link to another vym map</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Enlace a otro mapa vym</translation>
+    </message>
+    <message>
+        <source>subtree is scrolled</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">El subárbol está desplegado</translation>
+    </message>
+    <message>
+        <source>subtree is temporary scrolled</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">El subárbol está temporalmente desplegado</translation>
+    </message>
+    <message>
+        <source>Take care!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">¡Cuidado!</translation>
+    </message>
+    <message>
+        <source>Really?</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">¿Seguro?</translation>
+    </message>
+    <message>
+        <source>ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">¡Ok!</translation>
+    </message>
+    <message>
+        <source>Not ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">¡No pk!</translation>
+    </message>
+    <message>
+        <source>This won&apos;t work!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">¡Esto no funcionará!</translation>
+    </message>
+    <message>
+        <source>Good</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Bien</translation>
+    </message>
+    <message>
+        <source>Bad</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Mal</translation>
+    </message>
+    <message>
+        <source>Time critical</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Tiempo crítico</translation>
+    </message>
+    <message>
+        <source>Idea!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">¡Idea!</translation>
+    </message>
+    <message>
+        <source>Important</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Importante</translation>
+    </message>
+    <message>
+        <source>Unimportant</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Poco importante</translation>
+    </message>
+    <message>
+        <source>I like this</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Me gusta</translation>
+    </message>
+    <message>
+        <source>I do not like this</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">No me gusta</translation>
+    </message>
+    <message>
+        <source>I just love... </source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Solo amo...</translation>
+    </message>
+    <message>
+        <source>Dangerous</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Peligroso</translation>
+    </message>
+    <message>
+        <source>This will help</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Esto puede ayudar</translation>
+    </message>
+    <message>
+        <source>New Map</source>
+        <comment>Heading of mapcenter in new map</comment>
+        <translation type="obsolete">Nuevo mapa</translation>
+    </message>
+    <message>
+        <source>Critcal Save error</source>
+        <translation type="obsolete">Error Crítico de Guardado</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="obsolete">El fichero %1 ya existe.</translation>
+    </message>
+    <message>
+        <source>MapEditor::exportXML couldn&apos;t open %1</source>
+        <translation type="obsolete">MapEditor::exportXML no se pudo abrir</translation>
+    </message>
+    <message>
+        <source>Cannot find the directory %1</source>
+        <translation type="obsolete">No se puede encontrar el directorio %1</translation>
+    </message>
+    <message>
+        <source>Export (ASCII)</source>
+        <translation type="obsolete">Exportar (ASCII)</translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation type="obsolete">Enlazar a otro mapa</translation>
+    </message>
+    <message>
+        <source>Load image</source>
+        <translation type="obsolete">Cargar imagen</translation>
+    </message>
+    <message>
+        <source>Choose directory structure to import</source>
+        <translation type="obsolete">Escoger la estructura de directorio a importar</translation>
+    </message>
+    <message>
+        <source>unnamed</source>
+        <translation type="obsolete">sin nombre</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="obsolete">Advertencia</translation>
+    </message>
+    <message>
+        <source>Save image</source>
+        <translation type="obsolete">Guardar imagen</translation>
+    </message>
+    <message>
+        <source>Critical Parse Error while reading %1</source>
+        <translation type="obsolete">Error crítico de análisis mientras se leía %1</translation>
+    </message>
+    <message>
+        <source>Could not read %1</source>
+        <translation type="obsolete">No se pudo leer %1</translation>
+    </message>
+    <message>
+        <source>Can&apos;t get color of heading,
+there&apos;s no branch selected</source>
+        <translation type="obsolete">No se puede obtener el color de la cabecera, no hay rama seleccionada</translation>
+    </message>
+    <message>
+        <source>Critical Load Error</source>
+        <translation type="obsolete">Error crítico de carga</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation type="obsolete">No se pudo crear un directorio temporal antes de cargar</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="obsolete">No pudo encontrar un mapa (*.xml) en el archivo .vym.</translation>
+    </message>
+    <message>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="obsolete">El mapa %1 no usó el formato de fichero vym comprimido. Guardarlo sin comprimir también guardará imágenes y señales, lo cual puede sobreescribir ficheros en el directorio proporcionado.
+        
+¿Quiere guardar el mapa?</translation>
+    </message>
+    <message>
+        <source>compressed (vym default)</source>
+        <translation type="obsolete">Comprimido (por defecto vym)</translation>
+    </message>
+    <message>
+        <source>uncompressed</source>
+        <translation type="obsolete">Descomprimido</translation>
+    </message>
+    <message>
+        <source>Save Error</source>
+        <translation type="obsolete">Error al guardar</translation>
+    </message>
+    <message>
+        <source>%1
+could not be removed before saving</source>
+        <translation type="obsolete">%1 no se pudo eliminar antes de guardarlo</translation>
+    </message>
+    <message>
+        <source>%1
+could not be renamed before saving</source>
+        <translation type="obsolete">%1 no se pudo renombar antes de guardarlo</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation type="obsolete">No se pudo crear un directorio temporal antes de guardar</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <translation type="obsolete">Exportar mapa como imagen</translation>
+    </message>
+    <message>
+        <source>Export XML to directory</source>
+        <translation type="obsolete">Exportar XML a directorio</translation>
+    </message>
+    <message>
+        <source>Autosave disabled during undo.</source>
+        <translation type="obsolete">Se ha desactivado el guardado automático mientras se deshace</translation>
+    </message>
+    <message>
+        <source>Load background image</source>
+        <translation type="obsolete">Cargar imagen de fondo</translation>
+    </message>
+    <message>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Texto</translation>
+    </message>
+    <message>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Hoja de cálculo</translation>
+    </message>
+    <message>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Textdocument</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Imágenes</translation>
+    </message>
+    <message>
+        <source>Set URL to a local file</source>
+        <translation type="obsolete">Establecer URL a un fichero local</translation>
+    </message>
+    <message>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation type="obsolete">%1 elementos en el mapa</translation>
+    </message>
+    <message>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation type="obsolete">Desea regargar este mapa con el nuevo fichero?</translation>
+    </message>
+    <message>
+        <source>Reload</source>
+        <translation type="obsolete">Recargar</translation>
+    </message>
+    <message>
+        <source>Ignore</source>
+        <translation type="obsolete">Ignorar</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="43"/>
+        <source>Map Editor</source>
+        <comment>Shortcut scope</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="111"/>
+        <location filename="../mapeditor.cpp" line="116"/>
+        <source>Edit heading</source>
+        <comment>MapEditor</comment>
+        <translation type="unfinished">Editar encabezado</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>MapEditor</comment>
+        <translation type="obsolete">Guardar</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Copiar</translation>
+    </message>
+    <message>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Deshacer</translation>
+    </message>
+    <message>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Rehacer</translation>
+    </message>
+    <message>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Pegar</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="510"/>
+        <source>Print vym map</source>
+        <comment>MapEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>NoteEditor</name>
+    <message>
+        <location filename="../noteeditor.cpp" line="13"/>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished">Editor de notas</translation>
+    </message>
+</context>
+<context>
+    <name>Process</name>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">Error crítico</translation>
+    </message>
+</context>
+<context>
+    <name>QObject</name>
+    <message>
+        <source>This is not an image.</source>
+        <translation type="obsolete">Esto no es una imagen.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <location filename="../exports.cpp" line="381"/>
+        <location filename="../exports.cpp" line="511"/>
+        <location filename="../exports.cpp" line="954"/>
+        <location filename="../exports.cpp" line="1048"/>
+        <location filename="../exports.cpp" line="1128"/>
+        <location filename="../exports.cpp" line="1236"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <location filename="../exports.cpp" line="1333"/>
+        <location filename="../exports.cpp" line="1343"/>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Critical Export Error</source>
+        <translation type="unfinished">Error de exportación crítico</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="956"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <source>Could not write %1</source>
+        <translation type="unfinished">No se pudo escribir %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="147"/>
+        <source>Exporting to %1 will overwrite the existing file:
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="146"/>
+        <source>Warning: Overwriting file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="503"/>
+        <source>Export as CSV</source>
+        <translation type="unfinished">Exportar a CSV</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="837"/>
+        <source>Contents:</source>
+        <comment>Used in HTML export</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="893"/>
+        <source>Export aborted.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <comment>ExportHTML</comment>
+        <translation type="obsolete">Advertencia</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <comment>ExportHTML</comment>
+        <translation type="obsolete">No se pudo abrir %1</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <translation type="obsolete">No se pudo abrir %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="934"/>
+        <source>Trying to create directory for flags:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="935"/>
+        <source>Could not create %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="909"/>
+        <location filename="../exports.cpp" line="933"/>
+        <location filename="../exports.cpp" line="944"/>
+        <source>Critical</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <source>Could not export as AO to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="381"/>
+        <source>Could not export as ASCII to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="511"/>
+        <source>Could not export as CSV to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="910"/>
+        <source>Could not find stylesheet %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="920"/>
+        <source>Error</source>
+        <comment>ExportHTML</comment>
+        <translation type="unfinished">Error</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="921"/>
+        <source>Could not copy
+%1 to
+%2</source>
+        <comment>ExportHTML</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="945"/>
+        <source>Could not copy %1 to %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="955"/>
+        <source>Trying to save HTML file:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="236"/>
+        <location filename="../exports.cpp" line="382"/>
+        <location filename="../exports.cpp" line="512"/>
+        <location filename="../exports.cpp" line="957"/>
+        <location filename="../exports.cpp" line="1049"/>
+        <location filename="../exports.cpp" line="1130"/>
+        <location filename="../exports.cpp" line="1309"/>
+        <source>Export failed.</source>
+        <translation type="unfinished">Exportación fallida</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1048"/>
+        <source>Could not export as OrgMode to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1129"/>
+        <source>Could not export as LaTeX to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1189"/>
+        <source>Export as LibreOffice Impress presentation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1236"/>
+        <source>No objects in map!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1333"/>
+        <source>Couldn&apos;t read settings from &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1343"/>
+        <source>Check &quot;%1&quot; in
+%2</source>
+        <translation type="unfinished">Compruebe &quot;%1&quot; en %2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Could not read %1</source>
+        <translation type="unfinished">No se pudo leer %1</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="257"/>
+        <location filename="../file.cpp" line="272"/>
+        <location filename="../file.cpp" line="296"/>
+        <location filename="../file.cpp" line="305"/>
+        <location filename="../file.cpp" line="313"/>
+        <location filename="../file.cpp" line="323"/>
+        <location filename="../file.cpp" line="332"/>
+        <location filename="../file.cpp" line="340"/>
+        <location filename="../file.cpp" line="347"/>
+        <location filename="../file.cpp" line="356"/>
+        <location filename="../file.cpp" line="377"/>
+        <location filename="../file.cpp" line="400"/>
+        <location filename="../file.cpp" line="410"/>
+        <location filename="../file.cpp" line="423"/>
+        <location filename="../main.cpp" line="411"/>
+        <location filename="../xsltproc.cpp" line="78"/>
+        <location filename="../xsltproc.cpp" line="84"/>
+        <source>Critical Error</source>
+        <translation type="unfinished">Error crítico</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="258"/>
+        <source>Couldn&apos;t move existing file out of the way before saving.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="273"/>
+        <location filename="../file.cpp" line="378"/>
+        <source>Couldn&apos;t start tool to decompress data.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="297"/>
+        <source>Couldn&apos;t start zip to compress data.</source>
+        <translation type="unfinished">No pudo iniciar zip para comprimir datos.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="306"/>
+        <source>zip didn&apos;t exit normally</source>
+        <translation type="unfinished">zip no salió normalmente</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="324"/>
+        <source>Couldn&apos;t rename %1 back to %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="333"/>
+        <source>Couldn&apos;t remove target of old symbolic link %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="341"/>
+        <source>Couldn&apos;t rename output to target of old symbolic link %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="348"/>
+        <source>Couldn&apos;t link from %1 to target of old symbolic link %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="357"/>
+        <source>Saved %1, but couldn&apos;t remove %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="401"/>
+        <source>Couldn&apos;t start unzip to decompress data.</source>
+        <translation type="unfinished">No pudo iniciar zip para descomprimir datos.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="411"/>
+        <source>unzip didn&apos;t exit normally</source>
+        <translation type="unfinished">unzip no salió normalmente</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="79"/>
+        <source>Could not start %1</source>
+        <translation type="unfinished">No pudo arrancar %1</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="85"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="unfinished">%1 no f&amp;inalizó de forma habitual</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="obsolete">El fichero %1 ya existe. Desea sobreescibirlo?</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="90"/>
+        <source>Overwrite</source>
+        <translation type="unfinished">Sobreescribir</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="91"/>
+        <source>Cancel</source>
+        <translation type="unfinished">Cancelar</translation>
+    </message>
+    <message>
+        <source>Sorry, no preview for
+multiple selected files.</source>
+        <translation type="obsolete">Disculpe, previsualización no disponible para los multiples ficheros seleccionados</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="560"/>
+        <location filename="../exports.cpp" line="590"/>
+        <source>Exporting the %1 bookmarks will overwrite
+your existing bookmarks file.</source>
+        <translation type="unfinished">Exportando los marcadores %1 sobreescibirá su fichero de marcadores existentes</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="561"/>
+        <location filename="../exports.cpp" line="591"/>
+        <source>Warning: Overwriting %1 bookmarks</source>
+        <translation type="unfinished">Atención: Sobreescribiendo marcadores %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="579"/>
+        <location filename="../macros.cpp" line="39"/>
+        <location filename="../main.cpp" line="377"/>
+        <source>Warning</source>
+        <translation type="unfinished">Advertencia</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="580"/>
+        <source>Couldn&apos;t find script %1
+to notifiy Browsers of changed bookmarks.</source>
+        <translation type="unfinished">No se pudo en&amp;contrar el script %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="56"/>
+        <location filename="../imports.cpp" line="18"/>
+        <location filename="../main.cpp" line="475"/>
+        <location filename="../scripteditor.cpp" line="77"/>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Error</source>
+        <translation type="unfinished">Error</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="57"/>
+        <location filename="../imports.cpp" line="19"/>
+        <source>Couldn&apos;t access temporary directory
+</source>
+        <translation type="unfinished">No se pudo ac&amp;ceder al directorio temporalmente</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <location filename="../exports.cpp" line="373"/>
+        <source>Export as ASCII</source>
+        <translation type="unfinished">Exportar en ASCII</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <source>(still experimental)</source>
+        <translation type="unfinished">(experimental)</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="84"/>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <comment>write directory</comment>
+        <translation type="unfinished">El directorio %1 no está vacío. Desea sobreescribir el contenido?</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation type="obsolete">No se pudo a&amp;brir</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <comment>Shortcut group</comment>
+        <translation type="obsolete">Editor de notas</translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="412"/>
+        <source>Couldn&apos;t find tool to unzip data. Please download and install 7z and set path in Settings menu:
+ </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="476"/>
+        <location filename="../scripteditor.cpp" line="78"/>
+        <source>Couldn&apos;t open &quot;%1&quot;
+%2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3792"/>
+        <source>No Bugzilla client found.  For openSUSE you can install by (running as root):
+
+</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3797"/>
+        <source>Alternatively you can also add the repository
+and install the perl module for Bugzilla access using YaST</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3800"/>
+        <source>Warning: Couldn&apos;t find Bugzilla client</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="80"/>
+        <source>Warning: Version Problem</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="81"/>
+        <source>&lt;h3&gt;Map is newer than VYM&lt;/h3&gt;&lt;p&gt;The map you are just trying to load was saved using vym %1. The version of this vym is %2. If you run into problems after pressing the ok-button below, updating vym should help.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="40"/>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation type="unfinished">No se pudo encontrar una macro en %1.</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Please use Settings-&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Set directory for vym macros</source>
+        <translation type="unfinished">Establecer directorio para las macros vym</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Couldn&apos;t save &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>ScriptEditor</name>
+    <message>
+        <location filename="../scripteditor.ui" line="14"/>
+        <source>Form</source>
+        <translation type="unfinished">Formulario</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="49"/>
+        <source>Tab 1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="55"/>
+        <source>Save to selected slide</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="91"/>
+        <location filename="../scripteditor.ui" line="145"/>
+        <source>Run</source>
+        <translation type="unfinished">Ejecutar</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="105"/>
+        <source>Tab 2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="121"/>
+        <source>Current key:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="131"/>
+        <source>Load</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="138"/>
+        <source>Save</source>
+        <translation type="unfinished">Guardar</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Warning</source>
+        <translation type="unfinished">Advertencia</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="45"/>
+        <source>Slide</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="46"/>
+        <source>Macro</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="65"/>
+        <source>Save</source>
+        <comment>ScriptEditor</comment>
+        <translation type="unfinished">Guardar</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <source>Couldn&apos;t get model to save script into slide!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Couldn&apos;t find slide to save script into slide!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="143"/>
+        <source>Save script</source>
+        <translation type="unfinished">Salvar script</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="155"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="160"/>
+        <source>Overwrite</source>
+        <translation type="unfinished">Sobreescribir</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="161"/>
+        <source>Cancel</source>
+        <translation type="unfinished">Cancelar</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="184"/>
+        <source>Load script</source>
+        <translation type="unfinished">Cargar script</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="194"/>
+        <source>Error</source>
+        <translation type="unfinished">Error</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="195"/>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>ShowTextDialog</name>
+    <message>
+        <source>VYM - Info</source>
+        <translation type="obsolete">VYM - Información</translation>
+    </message>
+    <message>
+        <location filename="../showtextdialog.ui" line="50"/>
+        <source>Close</source>
+        <translation type="unfinished">Cerrar</translation>
+    </message>
+    <message>
+        <location filename="../showtextdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished">Diálogo</translation>
+    </message>
+</context>
+<context>
+    <name>SimpleScriptEditor</name>
+    <message>
+        <source>Save script</source>
+        <translation type="obsolete">Salvar script</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation type="obsolete">G&amp;uardar cómo</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="obsolete">Sobreescribir</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Cancelar</translation>
+    </message>
+    <message>
+        <source>Load script</source>
+        <translation type="obsolete">Cargar script</translation>
+    </message>
+    <message>
+        <source>Error</source>
+        <translation type="obsolete">Error</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation type="obsolete">No se pudo a&amp;brir %1</translation>
+    </message>
+    <message>
+        <source>Simple Script Editor</source>
+        <translation type="obsolete">Editor simple de scripts</translation>
+    </message>
+    <message>
+        <source>Save as</source>
+        <translation type="obsolete">Guardar como</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <translation type="obsolete">Guardar</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <translation type="obsolete">Abrir</translation>
+    </message>
+    <message>
+        <source>Run</source>
+        <translation type="obsolete">Ejecutar</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Cerrar</translation>
+    </message>
+</context>
+<context>
+    <name>TaskEditor</name>
+    <message>
+        <location filename="../taskeditor.cpp" line="38"/>
+        <source>Current map</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="45"/>
+        <source>Active tasks</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="52"/>
+        <source>New tasks</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="68"/>
+        <location filename="../taskeditor.cpp" line="73"/>
+        <source>Edit heading</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished">Editar encabezado</translation>
+    </message>
+</context>
+<context>
+    <name>TaskModel</name>
+    <message>
+        <location filename="../taskmodel.cpp" line="127"/>
+        <source>Prio</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="129"/>
+        <source>Status</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="131"/>
+        <source>Age total</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="133"/>
+        <source>Age mod.</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="135"/>
+        <source>Sleep</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="137"/>
+        <source>Map</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="139"/>
+        <source>Task</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>TextEditor</name>
+    <message>
+        <source>&amp;File</source>
+        <translation type="obsolete">&amp;Archivo</translation>
+    </message>
+    <message>
+        <source>Import</source>
+        <translation type="obsolete">Importar</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="273"/>
+        <source>&amp;Import...</source>
+        <translation>&amp;Importar...</translation>
+    </message>
+    <message>
+        <source>Export Note (HTML)</source>
+        <translation type="obsolete">Exportar Nota (HTML)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="283"/>
+        <source>&amp;Export...</source>
+        <translation>&amp;Exportar... </translation>
+    </message>
+    <message>
+        <source>Export Note As (HTML) </source>
+        <translation type="obsolete">Exportar Nota Como...(HTML)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="293"/>
+        <source>Export &amp;As... (HTML)</source>
+        <translation>Exportar &amp;Como...(HTML)</translation>
+    </message>
+    <message>
+        <source>Export Note As (ASCII) </source>
+        <translation type="obsolete">Exportar Nota Como...(ASCII)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="298"/>
+        <source>Export &amp;As...(ASCII)</source>
+        <translation>Exportar &amp;Como...(ASCII)</translation>
+    </message>
+    <message>
+        <source>Print Note</source>
+        <translation type="obsolete">Imprimir Nota</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="308"/>
+        <source>&amp;Print...</source>
+        <translation>&amp;Imprimir...</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <translation type="vanished">&amp;Editar</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <translation type="obsolete">Deshacer</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="332"/>
+        <source>&amp;Undo</source>
+        <translation>&amp;Deshacer</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="obsolete">Rehacer</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="341"/>
+        <source>&amp;Redo</source>
+        <translation>&amp;Rehacer</translation>
+    </message>
+    <message>
+        <source>Select and copy all</source>
+        <translation type="obsolete">Seleccionar y copiar todo</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="351"/>
+        <source>Select and copy &amp;all</source>
+        <translation>Seleccionar y copiar &amp;todo</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <translation type="obsolete">Copiar</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="359"/>
+        <source>&amp;Copy</source>
+        <translation>&amp;Copiar</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="obsolete">Cortar</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="368"/>
+        <source>Cu&amp;t</source>
+        <translation>&amp;Cortar</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <translation type="obsolete">Pegar</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="377"/>
+        <source>&amp;Paste</source>
+        <translation>&amp;Pegar</translation>
+    </message>
+    <message>
+        <source>Delete all</source>
+        <translation type="obsolete">Borrar Todo</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="316"/>
+        <source>&amp;Delete All</source>
+        <translation>&amp;Borrar Todo</translation>
+    </message>
+    <message>
+        <source>Convert paragraphs to linebreaks</source>
+        <translation type="obsolete">Convertir párrafos a líneas sueltas</translation>
+    </message>
+    <message>
+        <source>&amp;Convert Paragraphs</source>
+        <translation type="obsolete">&amp;Convertir Párrafos</translation>
+    </message>
+    <message>
+        <source>Join all lines of a paragraph</source>
+        <translation type="obsolete">Unir todas las líneas de un párrafo</translation>
+    </message>
+    <message>
+        <source>&amp;Join lines</source>
+        <translation type="obsolete">&amp;Unir Líneas</translation>
+    </message>
+    <message>
+        <source>&amp;Format</source>
+        <translation type="obsolete">&amp;Formato</translation>
+    </message>
+    <message>
+        <source>Toggle font hint for the whole text</source>
+        <translation type="obsolete">Ajustar consejo de fuente a todo el texto</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="396"/>
+        <source>&amp;Font hint</source>
+        <translation>&amp;Consejo de Fuente</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="407"/>
+        <source>&amp;Richtext</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="417"/>
+        <source>Fonts</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="443"/>
+        <source>Format</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="448"/>
+        <source>&amp;Color...</source>
+        <translation>&amp;Color...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="454"/>
+        <source>&amp;Bold</source>
+        <translation>&amp;Negrilla</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="464"/>
+        <source>&amp;Italic</source>
+        <translation>&amp;Cursiva</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="474"/>
+        <source>&amp;Underline</source>
+        <translation>&amp;Subrayado</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="512"/>
+        <source>&amp;Left</source>
+        <translation>&amp;Izquierda</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="518"/>
+        <source>C&amp;enter</source>
+        <translation>&amp;Centro</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="524"/>
+        <source>&amp;Right</source>
+        <translation>&amp;Derecha</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="530"/>
+        <source>&amp;Justify</source>
+        <translation>&amp;justificado</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="540"/>
+        <source>&amp;Settings</source>
+        <translation>&amp;Configuración</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="828"/>
+        <source>Print</source>
+        <comment>TextEditor</comment>
+        <translation type="unfinished">Imprimir</translation>
+    </message>
+    <message>
+        <source>Set fixed font</source>
+        <translation type="obsolete">Configurar  fuente arreglada</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="543"/>
+        <source>Set &amp;fixed font</source>
+        <translation>Configurar  fuente &amp;arreglada</translation>
+    </message>
+    <message>
+        <source>Set variable font</source>
+        <translation type="obsolete">Configurar variable fuente</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="548"/>
+        <source>Set &amp;variable font</source>
+        <translation>Configurar &amp;variable fuente</translation>
+    </message>
+    <message>
+        <source>Used fixed font by default</source>
+        <translation type="obsolete">Fuente arreglada usada por defecto</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="553"/>
+        <source>&amp;fixed font is default</source>
+        <translation>&amp;fuente arreglada por defecto</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="704"/>
+        <source>Export Note to single file</source>
+        <translation>Exportar nota a archivo sencillo</translation>
+    </message>
+    <message>
+        <source>The file </source>
+        <translation type="obsolete">El archivo</translation>
+    </message>
+    <message>
+        <source> exists already. Do you want to overwrite it?</source>
+        <translation type="obsolete">ya existe. ¿Desea sobrescribir?</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="724"/>
+        <location filename="../texteditor.cpp" line="800"/>
+        <source>Overwrite</source>
+        <translation>Sobreescribir</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="725"/>
+        <location filename="../texteditor.cpp" line="801"/>
+        <source>Cancel</source>
+        <translation>Cancelar</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t export note </source>
+        <translation type="obsolete">No pudo exportar nota</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="785"/>
+        <source>Export Note to single file (ASCII)</source>
+        <translation>Exportar Nota a archivo simple (ASCII)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="488"/>
+        <source>Subs&amp;cript</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="271"/>
+        <location filename="../texteditor.cpp" line="325"/>
+        <location filename="../texteditor.cpp" line="389"/>
+        <source>Texteditor</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="329"/>
+        <source>Edi&amp;t</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="390"/>
+        <source>Font hints</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="498"/>
+        <source>Su&amp;perscript</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="566"/>
+        <source>Note Editor</source>
+        <translation type="unfinished">Editor de notas</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="392"/>
+        <source>F&amp;ormat</source>
+        <translation type="unfinished">F&amp;ormato</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="326"/>
+        <source>Edit Actions</source>
+        <translation type="unfinished">Editar acciones</translation>
+    </message>
+    <message>
+        <source>Format Actions</source>
+        <translation type="obsolete">Formato de acciones</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="267"/>
+        <source>Note Actions</source>
+        <translation type="unfinished">Nota de acciones</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="48"/>
+        <source>Ready</source>
+        <comment>Statusbar message</comment>
+        <translation type="unfinished">Mensaje de barra de estados</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="174"/>
+        <source>No filename available for this note.</source>
+        <comment>Statusbar message</comment>
+        <translation type="unfinished">Archivo no disponible para esta nota.</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation type="obsolete">Editor de notas</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="269"/>
+        <source>&amp;Note</source>
+        <comment>Menubar</comment>
+        <translation type="unfinished">Nota</translation>
+    </message>
+    <message>
+        <source>Import</source>
+        <comment>Status tip for Note menu</comment>
+        <translation type="obsolete">Importar</translation>
+    </message>
+    <message>
+        <source>Export Note (HTML)</source>
+        <comment>Status tip for Note menu</comment>
+        <translation type="obsolete">Exportar Nota (HTML)</translation>
+    </message>
+    <message>
+        <source>Export Note As (HTML) </source>
+        <comment>Status tip for Note Menu</comment>
+        <translation type="obsolete">Exportar Nota Como...(HTML)</translation>
+    </message>
+    <message>
+        <source>Export Note As (ASCII) </source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Exportar Nota Como...(ASCII)</translation>
+    </message>
+    <message>
+        <source>Print Note</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Imprimir Nota</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Deshacer</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Rehacer</translation>
+    </message>
+    <message>
+        <source>Select and copy all</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Seleccionar y copiar todo</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Copiar</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Cortar</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Pegar</translation>
+    </message>
+    <message>
+        <source>Delete all</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Borrar Todo</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="49"/>
+        <source>Text Editor</source>
+        <comment>Text Editor Window caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Toggle font hint for the whole text</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Ajustar consejo de fuente a todo el texto</translation>
+    </message>
+    <message>
+        <source>Set fixed font</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Configurar fuente arreglada</translation>
+    </message>
+    <message>
+        <source>Set variable font</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Configurar variable fuente</translation>
+    </message>
+    <message>
+        <source>Used fixed font by default</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Fuente arreglada usada por defecto</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="719"/>
+        <location filename="../texteditor.cpp" line="795"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation type="unfinished">El fichero %1 ya existe. ¿Desea sobreescribir?</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="743"/>
+        <source>Couldn&apos;t export note </source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation type="unfinished">No pudo exportar nota</translation>
+    </message>
+</context>
+<context>
+    <name>TreeEditor</name>
+    <message>
+        <location filename="../treeeditor.cpp" line="27"/>
+        <source>Select upper object</source>
+        <comment>Tree Editor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../treeeditor.cpp" line="33"/>
+        <source>Select lower object</source>
+        <comment>Tree Editor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>VymModel</name>
+    <message>
+        <location filename="../vymmodel.cpp" line="126"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="149"/>
+        <source>unnamed</source>
+        <translation type="unfinished">sin nombre</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="445"/>
+        <location filename="../vymmodel.cpp" line="481"/>
+        <location filename="../vymmodel.cpp" line="566"/>
+        <location filename="../vymmodel.cpp" line="622"/>
+        <source>Critical Parse Error</source>
+        <translation type="unfinished">Error Crítico de conversión</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="501"/>
+        <location filename="../vymmodel.cpp" line="551"/>
+        <source>Critical Load Error</source>
+        <translation type="unfinished">Error crítico de carga</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="502"/>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation type="unfinished">No se pudo crear un directorio temporal antes de cargar</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="552"/>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="980"/>
+        <source>unknown user</source>
+        <comment>Default for lockfiles of maps</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1003"/>
+        <source>Warning: Map already opended</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="671"/>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="unfinished">El mapa %1 no usó el formato de fichero vym comprimido. Guardarlo sin comprimir también guardará imágenes y señales, lo cual puede sobreescribir ficheros en el directorio proporcionado.
+        
+¿Quiere guardar el mapa?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="679"/>
+        <source>compressed (vym default)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="680"/>
+        <source>uncompressed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="681"/>
+        <location filename="../vymmodel.cpp" line="864"/>
+        <source>Cancel</source>
+        <translation type="unfinished">Cancelar</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="710"/>
+        <location filename="../vymmodel.cpp" line="715"/>
+        <source>Save Error</source>
+        <translation type="unfinished">Error al guardar</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="711"/>
+        <source>%1
+could not be removed before saving</source>
+        <translation type="unfinished">%1 no se pudo eliminar antes de guardarlo</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="716"/>
+        <source>%1
+could not be renamed before saving</source>
+        <translation type="unfinished">%1 no se pudo renombar antes de guardarlo</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="728"/>
+        <source>Critical Save Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="729"/>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation type="unfinished">No se pudo crear un directorio temporal antes de guardar</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <location filename="../vymmodel.cpp" line="5783"/>
+        <source>Images</source>
+        <translation type="unfinished">Imágenes</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <source>All</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="792"/>
+        <source>Load image</source>
+        <translation type="unfinished">Cargar imagen</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="844"/>
+        <source>Save image</source>
+        <translation type="unfinished">Guardar imagen</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="856"/>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="unfinished">G&amp;uardar cómo {1 ?}</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="863"/>
+        <source>Overwrite</source>
+        <translation type="unfinished">Sobreescribir</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Critical Error</source>
+        <translation type="unfinished">Error crítico</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <source>Unsupported format in %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Critical Import Error</source>
+        <translation type="unfinished">Error de Importación crítico</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Cannot find the directory %1</source>
+        <translation type="unfinished">No se puede encontrar el directorio %1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="962"/>
+        <location filename="../vymmodel.cpp" line="965"/>
+        <source>Choose directory structure to import</source>
+        <translation type="unfinished">Escoger la estructura de directorio a importar</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="999"/>
+        <source>Map seems to be already opened in another vym instance!
+
+ Map is locked by &quot;%1&quot; on &quot;%2&quot;
+
+Please only delete the lockfile, if you are sure nobody else is currently working on this map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1008"/>
+        <source>Removed lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1014"/>
+        <source>Couldn&apos;t remove lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1021"/>
+        <source>Cannot create lockfile of map! It will be opened in readonly mode.
+
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1024"/>
+        <source>Warning</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished">Advertencia</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1116"/>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation type="unfinished">Desea regargar este mapa con el nuevo fichero?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1123"/>
+        <source>Reload</source>
+        <translation type="unfinished">Recargar</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1124"/>
+        <source>Ignore</source>
+        <translation type="unfinished">Ignorar</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1013"/>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Warning</source>
+        <translation type="unfinished">Advertencia</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <source>Redo failed:
+%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1274"/>
+        <source>Autosave disabled during undo.</source>
+        <translation type="unfinished">Se ha desactivado el guardado automático mientras se deshace</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2001"/>
+        <source>Note</source>
+        <comment>FindAll in VymModel</comment>
+        <translation type="unfinished">Nota</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2725"/>
+        <source>Image</source>
+        <comment>Default name for new image</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2958"/>
+        <source>New map</source>
+        <comment>New map</comment>
+        <translation type="unfinished">Nuevo Mapa</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Script aborted:
+%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation type="obsolete">Introduzca URL:</translation>
+    </message>
+    <message>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Texto</translation>
+    </message>
+    <message>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Hoja de cálculo</translation>
+    </message>
+    <message>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Textdocument</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Imágenes</translation>
+    </message>
+    <message>
+        <source>Set URL to a local file</source>
+        <translation type="obsolete">Establecer URL a un fichero local</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3822"/>
+        <source>Contacting Bugzilla...</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation type="obsolete">Enlazar a otro mapa</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5185"/>
+        <source>Export map as image</source>
+        <translation type="unfinished">Exportar mapa como imagen</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Couldn&apos;t save QImage %1 in format %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5225"/>
+        <source>Export map as PDF</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5280"/>
+        <source>Export map as SVG</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5314"/>
+        <source>Export map as XML</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5321"/>
+        <source>Export XML to directory</source>
+        <translation type="unfinished">Exportar XML a directorio</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5367"/>
+        <source>Critical Export Error</source>
+        <translation type="unfinished">Error de exportación crítico</translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">Exportar como LaTeX</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>(still experimental)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>Export as csv</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5786"/>
+        <source>Load background image</source>
+        <translation type="unfinished">Cargar imagen de fondo</translation>
+    </message>
+</context>
+<context>
+    <name>VymProcess</name>
+    <message>
+        <location filename="../vymprocess.cpp" line="43"/>
+        <location filename="../vymprocess.cpp" line="48"/>
+        <source>Critical Error</source>
+        <translation type="unfinished">Error crítico</translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="44"/>
+        <source>Could not start %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="49"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>VymView</name>
+    <message>
+        <location filename="../vymview.cpp" line="34"/>
+        <source>Tree Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymview.cpp" line="52"/>
+        <source>Slide Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>WarningDialog</name>
+    <message>
+        <location filename="../warningdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="117"/>
+        <location filename="../warningdialog.cpp" line="45"/>
+        <source>Cancel</source>
+        <translation type="unfinished">Cancelar</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="124"/>
+        <source>Ok</source>
+        <translation type="unfinished">Ok</translation>
+    </message>
+    <message>
+        <source>VYM - Warning : Foo...</source>
+        <translation type="obsolete">Precaución: Foo...</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="91"/>
+        <source>showAgainBox</source>
+        <translation type="unfinished">showAgainBox</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="10"/>
+        <source>Proceed</source>
+        <translation type="unfinished">Proceder</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="12"/>
+        <source>Show this message again</source>
+        <translation type="unfinished">Mostrar de nuevo este mensaje</translation>
+    </message>
+</context>
+</TS>
diff --git a/lang/vym.fr.ts b/lang/vym.fr.ts
new file mode 100644 (file)
index 0000000..9ece325
--- /dev/null
@@ -0,0 +1,5736 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="fr_FR">
+<context>
+    <name>AboutDialog</name>
+    <message>
+        <source>Ok</source>
+        <translation type="obsolete">OK</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="106"/>
+        <source>Credits</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="221"/>
+        <source>License</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="226"/>
+        <source>Ok</source>
+        <comment>Ok Button</comment>
+        <translation>Ok</translation>
+    </message>
+</context>
+<context>
+    <name>AboutTextBrowser</name>
+    <message>
+        <location filename="../aboutdialog.cpp" line="246"/>
+        <source>Warning</source>
+        <comment>About window</comment>
+        <translation>Attention</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="247"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <comment>About window</comment>
+        <translation>Pas de programme pour afficher le fichier %1.
+</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>Veuillez utiliser le menu Paramètres-&gt;</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Set application to open an URL...</source>
+        <translation>Définir l&apos;application pour ouvrir une URL...</translation>
+    </message>
+    <message>
+        <source>Set application to open an URL</source>
+        <translation type="obsolete">Choisir l&apos;application pour ouvrir une URL</translation>
+    </message>
+</context>
+<context>
+    <name>Attribute Dialog</name>
+    <message>
+        <source>AttributeDialog - Edit definitions</source>
+        <translation type="obsolete">Dialogue propriétés - Edit definitions</translation>
+    </message>
+    <message>
+        <source>AttributeDialog - Edit %1</source>
+        <translation type="obsolete">Dialogue propriétés - Editer %1</translation>
+    </message>
+</context>
+<context>
+    <name>AttributeDialog</name>
+    <message>
+        <source>Attributes</source>
+        <translation type="obsolete">Propriétés</translation>
+    </message>
+    <message>
+        <source>Add key</source>
+        <translation type="obsolete">Ajouter une valeur</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Fermer</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyEditor</name>
+    <message>
+        <location filename="../branchpropeditor.ui" line="20"/>
+        <source>Branch Property Editor</source>
+        <translation>Editer les propriétés de la branche</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="30"/>
+        <source>Frame</source>
+        <translation>Encadrement</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="51"/>
+        <source>Geometry</source>
+        <translation>Géométrie</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="64"/>
+        <source>No Frame</source>
+        <translation>Pas d&apos;encadrement</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="69"/>
+        <source>Rectangle</source>
+        <translation>Rectangle</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="74"/>
+        <source>Rounded Rectangle</source>
+        <translation>Rectangle arrondi</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="79"/>
+        <source>Ellipse</source>
+        <translation>Ellipse</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="84"/>
+        <source>Cloud</source>
+        <translation>Nuage</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="105"/>
+        <source>Padding</source>
+        <translation>Remplissage</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="112"/>
+        <source>Borderline width</source>
+        <translation>Epaisseur contour</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="136"/>
+        <source>Include children</source>
+        <translation>Inclure les branches filles</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="169"/>
+        <source>Colors</source>
+        <translation>Couleurs</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="209"/>
+        <source>Borderline color</source>
+        <translation>Couleur contour</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="232"/>
+        <source>Background color</source>
+        <translation>Couleur fond</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="261"/>
+        <source>Layout</source>
+        <translation>Disposition</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="269"/>
+        <source>Include images horizontally</source>
+        <translation>Insérer les images horizontalement</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="276"/>
+        <source>Include images vertically</source>
+        <translation>Insérer les images verticalement</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="283"/>
+        <source>Free positioning of children (experimental!)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="306"/>
+        <source>Link</source>
+        <translation>Liens</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="312"/>
+        <source>Hide link if unselected</source>
+        <translation>Cacher le lien si inactif</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="333"/>
+        <source>Attributes</source>
+        <translation>Propriétés</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="359"/>
+        <source>+</source>
+        <translation>+</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="366"/>
+        <source>-</source>
+        <translation>-</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.cpp" line="19"/>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation>Éditeur des propriétés</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyWindow</name>
+    <message>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation type="obsolete">Éditeur d&apos;en-tête</translation>
+    </message>
+    <message>
+        <source>Branch Property Editor</source>
+        <translation type="obsolete">Éditeur des propriétés de la branche</translation>
+    </message>
+    <message>
+        <source>Frame</source>
+        <translation type="obsolete">Cadre</translation>
+    </message>
+    <message>
+        <source>Geometry</source>
+        <translation type="obsolete">Géométrie</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <translation type="obsolete">Pas de cadre</translation>
+    </message>
+    <message>
+        <source>Rectangle</source>
+        <translation type="obsolete">Rectangle</translation>
+    </message>
+    <message>
+        <source>Rounded Rectangle</source>
+        <translation type="obsolete">Rectangle arrondis</translation>
+    </message>
+    <message>
+        <source>Ellipse</source>
+        <translation type="obsolete">Ellipse</translation>
+    </message>
+    <message>
+        <source>Cloud</source>
+        <translation type="obsolete">Nuage</translation>
+    </message>
+    <message>
+        <source>Padding</source>
+        <translation type="obsolete">Remplissage</translation>
+    </message>
+    <message>
+        <source>Borderline width</source>
+        <translation type="obsolete">Epaisseur du contour</translation>
+    </message>
+    <message>
+        <source>Include children</source>
+        <translation type="obsolete">Inclure branches filles</translation>
+    </message>
+    <message>
+        <source>Colors</source>
+        <translation type="obsolete">Couleurs</translation>
+    </message>
+    <message>
+        <source>Borderline color</source>
+        <translation type="obsolete">Couleur du contour</translation>
+    </message>
+    <message>
+        <source>Background color</source>
+        <translation type="obsolete">Couleur de fond</translation>
+    </message>
+    <message>
+        <source>Layout</source>
+        <translation type="obsolete">Disposition</translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <translation type="obsolete">Inclure les images horizontalement</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <translation type="obsolete">Inclure les images verticalement</translation>
+    </message>
+    <message>
+        <source>Link</source>
+        <translation type="obsolete">Liens</translation>
+    </message>
+    <message>
+        <source>Hide link if unselected</source>
+        <translation type="obsolete">Cacher le lien si déselectionné</translation>
+    </message>
+    <message>
+        <source>Attributes</source>
+        <translation type="obsolete">Attributs</translation>
+    </message>
+    <message>
+        <source>+</source>
+        <translation type="obsolete">+</translation>
+    </message>
+    <message>
+        <source>-</source>
+        <translation type="obsolete">-</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Fermer</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadAgent</name>
+    <message>
+        <location filename="../downloadagent.cpp" line="191"/>
+        <location filename="../downloadagent.cpp" line="195"/>
+        <source>Warning</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>EditXLinkDialog</name>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="20"/>
+        <source>Edit XLink</source>
+        <translation>Éditer le XLien</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="40"/>
+        <source>Arrow begin:</source>
+        <translation>Flèche de début:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="63"/>
+        <source>XLink width:</source>
+        <translation>Epaisseur du XLien:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="79"/>
+        <source>Use color of heading</source>
+        <translation>Utiliser la couleur de l&apos;en-tête</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="177"/>
+        <source>Line style:</source>
+        <extracomment>Linestyle in Edit XLink dialog</extracomment>
+        <translation>Style du tracé:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="190"/>
+        <source>Arrow end:</source>
+        <translation>Flèche de Fin:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="253"/>
+        <source>Close</source>
+        <translation>Fermer</translation>
+    </message>
+    <message>
+        <source>Set color of heading</source>
+        <translation type="obsolete">Ajuster la couleur de l&apos;en-tête</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="109"/>
+        <source>XLink color:</source>
+        <translation>Couleur du XLien:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="151"/>
+        <source>Use as default:</source>
+        <translation>Utiliser par défaut:</translation>
+    </message>
+    <message>
+        <source>Delete XLink</source>
+        <translation type="obsolete">Effacer le XLien</translation>
+    </message>
+    <message>
+        <source>Ok</source>
+        <translation type="obsolete">OK</translation>
+    </message>
+</context>
+<context>
+    <name>ExportHTMLDialog</name>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="26"/>
+        <source>Export HTML</source>
+        <translation>Exporter en HTML</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="61"/>
+        <source>Export to directory:</source>
+        <translation>Exporter vers :</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="90"/>
+        <location filename="../exporthtmldialog.ui" line="267"/>
+        <location filename="../exporthtmldialog.ui" line="280"/>
+        <location filename="../exporthtmldialog.ui" line="353"/>
+        <source>Browse</source>
+        <translation>Parcourir</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="117"/>
+        <source>Options</source>
+        <translation>Options</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="138"/>
+        <source>Image of map</source>
+        <translation>Image de la Carte</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="145"/>
+        <source>Include images</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="152"/>
+        <source>Table of contents</source>
+        <translation>Table des matières</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="159"/>
+        <source>Task flags</source>
+        <translation>Imagettes des taches</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="166"/>
+        <source>General flags</source>
+        <translation>Imagettes génériques</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="173"/>
+        <source>Number sections</source>
+        <translation>Sections numériques</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="231"/>
+        <source>Copy CSS from </source>
+        <translation>Copie des CSS de</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="251"/>
+        <source>Use CSS from</source>
+        <translation>Utiliser le CSS de</translation>
+    </message>
+    <message>
+        <source>Include image</source>
+        <translation type="obsolete">Inclure l&apos;image</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="186"/>
+        <source>Colored headings in text</source>
+        <translation>En-têtes colorées dans le texte</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="199"/>
+        <source>Save settings in map</source>
+        <translation>Enregistrer les Paramètres dans la carte</translation>
+    </message>
+    <message>
+        <source>show output of external scripts</source>
+        <translation type="obsolete">montrer la sortie des scripts externes</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="216"/>
+        <source>Stylesheets</source>
+        <translation>Feuilles de style</translation>
+    </message>
+    <message>
+        <source>CSS:</source>
+        <translation type="obsolete">CSS:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="297"/>
+        <source>Scripts</source>
+        <translation>Scripts</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="327"/>
+        <source>After Export:</source>
+        <translation>Après export :</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="382"/>
+        <source>Cancel</source>
+        <translation>Annuler</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="389"/>
+        <source>Export</source>
+        <translation>Exporter</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>Warning</source>
+        <translation>Attention</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>The settings saved in the map would like to run script:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation>La carte demande, dans ses paramètres, le lancement du script:
+
+%1
+
+Vérifiez si vous voulez réellement 
+cela sur votre système!</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="123"/>
+        <source>VYM - Export HTML to directory</source>
+        <translation>VYM - Exporter en HTML dans le répertoire</translation>
+    </message>
+</context>
+<context>
+    <name>ExportXHTMLDialog</name>
+    <message>
+        <source>Export XHTML</source>
+        <translation type="obsolete">Exporter XHTML</translation>
+    </message>
+    <message>
+        <source>Export to directory:</source>
+        <translation type="obsolete">Exporter dans le répertoire:</translation>
+    </message>
+    <message>
+        <source>Browse</source>
+        <translation type="obsolete">Parcourir</translation>
+    </message>
+    <message>
+        <source>Options</source>
+        <translation type="obsolete">Options</translation>
+    </message>
+    <message>
+        <source>Include image</source>
+        <translation type="obsolete">Inclure l&apos;image</translation>
+    </message>
+    <message>
+        <source>Colored headings in text</source>
+        <translation type="obsolete">Inclure les couleurs d&apos;en-tête dans le texte</translation>
+    </message>
+    <message>
+        <source>Save settings in map</source>
+        <translation type="obsolete">Sauvegarder les paramètres dans la carte</translation>
+    </message>
+    <message>
+        <source>showWarnings e.g. if directory is not empty</source>
+        <translation type="obsolete">montrer les avertissements par ex. si un répertoire n&apos;est pas vide</translation>
+    </message>
+    <message>
+        <source>show output of external scripts</source>
+        <translation type="obsolete">Afficher la sortie des scripts externes</translation>
+    </message>
+    <message>
+        <source>CSS:</source>
+        <translation type="obsolete">CSS:</translation>
+    </message>
+    <message>
+        <source>XSL:</source>
+        <translation type="obsolete">XSL:</translation>
+    </message>
+    <message>
+        <source>show warnings of xslt processor</source>
+        <translation type="obsolete">Afficher les avertissements du processeur XSLT</translation>
+    </message>
+    <message>
+        <source>Before export:</source>
+        <translation type="obsolete">Avant export :</translation>
+    </message>
+    <message>
+        <source>After Export:</source>
+        <translation type="obsolete">Après export :</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <translation type="obsolete">Exporter</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Annuler</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="obsolete">Avertissement</translation>
+    </message>
+    <message>
+        <source>VYM - Export HTML to directory</source>
+        <translation type="obsolete">VYM - Exporter en HTML vers un répertoire</translation>
+    </message>
+    <message>
+        <source>VYM - Path to CSS file</source>
+        <translation type="obsolete">VYM - Chemin d&apos;accès au fichier CSS</translation>
+    </message>
+    <message>
+        <source>VYM - Path to XSL file</source>
+        <translation type="obsolete">VYM - Chemin d&apos;accès au fichier XSL</translation>
+    </message>
+    <message>
+        <source>VYM - Path to pre export script</source>
+        <translation type="obsolete">VYM - Chemin d&apos;accès au script de pré-exportation</translation>
+    </message>
+    <message>
+        <source>VYM - Path to post export script</source>
+        <translation type="obsolete">VYM - Chemin d&apos;accès au script de post-exportation</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">Erreur grave</translation>
+    </message>
+    <message>
+        <source>Stylesheets</source>
+        <translation type="obsolete">Feuilles de style</translation>
+    </message>
+    <message>
+        <source>Scripts</source>
+        <translation type="obsolete">Scripts</translation>
+    </message>
+    <message>
+        <source>The settings saved in the map would like to run scripts:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation type="obsolete">Les réglages sauvés dans la carte souhaiteraient lancer les scripts:
+
+%1
+
+Veuillez vérifier si vous voulez vraiment l&apos;autoriser sur votre système!</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <translation type="obsolete">N&apos;a pas pu ouvrir %1</translation>
+    </message>
+    <message>
+        <source>Could not write %1</source>
+        <translation type="obsolete">N&apos;a pas pu écrire %1</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation type="obsolete">N&apos;a pas pu lancer %1</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="obsolete">%1 ne s&apos;est pas terminé normalement</translation>
+    </message>
+</context>
+<context>
+    <name>ExtraInfoDialog</name>
+    <message>
+        <location filename="../extrainfodialog.ui" line="15"/>
+        <source>VYM - Info</source>
+        <translatorcomment>VYM - Informations</translatorcomment>
+        <translation>VYM - Info</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="36"/>
+        <source>Map:</source>
+        <translation>Carte:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="53"/>
+        <source>Title:</source>
+        <translation>Titre:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="63"/>
+        <source>Author:</source>
+        <translation>Auteur :</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="86"/>
+        <source>Comment:</source>
+        <translation>Commentaire:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="96"/>
+        <source>Statistics:</source>
+        <translation>Statistiques:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="139"/>
+        <source>Cancel</source>
+        <translation>Annuler</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="146"/>
+        <source>Close</source>
+        <translation>Fermer</translation>
+    </message>
+</context>
+<context>
+    <name>FindWidget</name>
+    <message>
+        <location filename="../findwidget.cpp" line="25"/>
+        <source>Find:</source>
+        <comment>FindWidget</comment>
+        <translation>Rechercher:</translation>
+    </message>
+</context>
+<context>
+    <name>FindWindow</name>
+    <message>
+        <source>Clear</source>
+        <translation type="obsolete">Effacer</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Annuler</translation>
+    </message>
+    <message>
+        <source>Find</source>
+        <translation type="obsolete">Trouver</translation>
+    </message>
+    <message>
+        <source>Find Text</source>
+        <translation type="obsolete">Trouver le texte</translation>
+    </message>
+</context>
+<context>
+    <name>Heading of mapcenter in new map</name>
+    <message>
+        <source>New map</source>
+        <translation type="vanished">Nouvelle carte</translation>
+    </message>
+</context>
+<context>
+    <name>HeadingEditor</name>
+    <message>
+        <location filename="../headingeditor.cpp" line="9"/>
+        <source>Heading Editor</source>
+        <comment>Window caption</comment>
+        <translation>Éditeur d&apos;en-tête</translation>
+    </message>
+</context>
+<context>
+    <name>HistoryWindow</name>
+    <message>
+        <location filename="../historywindow.cpp" line="17"/>
+        <source>Action</source>
+        <comment>Table with actions</comment>
+        <translation>Action</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="20"/>
+        <source>Comment</source>
+        <comment>Table with actions</comment>
+        <translation>Commentaire</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="23"/>
+        <source>Undo action</source>
+        <comment>Table with actions</comment>
+        <translation>Annuler l&apos;action</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="125"/>
+        <source>Current state</source>
+        <comment>Current bar in history hwindow</comment>
+        <translation>Situation présente</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="13"/>
+        <source>Dialog</source>
+        <translation>Dialogue</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="50"/>
+        <source>Redo</source>
+        <translation>Refaire</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="72"/>
+        <source>Time</source>
+        <translation>Heure</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="77"/>
+        <source>Comment</source>
+        <translation>Commentaire</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="85"/>
+        <source>Undo</source>
+        <translation>Défaire</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="122"/>
+        <source>Close</source>
+        <translation>Fermer</translation>
+    </message>
+</context>
+<context>
+    <name>LineEditDialog</name>
+    <message>
+        <location filename="../lineeditdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>Dialogue</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="26"/>
+        <source>TextLabel</source>
+        <translation>Etiquette </translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="89"/>
+        <location filename="../lineeditdialog.cpp" line="17"/>
+        <source>Cancel</source>
+        <translation>Annuler</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="99"/>
+        <location filename="../lineeditdialog.cpp" line="9"/>
+        <source>Ok</source>
+        <translation>OK</translation>
+    </message>
+</context>
+<context>
+    <name>LockedFileDialog</name>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished">Dialogue</translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="116"/>
+        <location filename="../lockedfiledialog.cpp" line="7"/>
+        <source>Delete lockfile</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="123"/>
+        <location filename="../lockedfiledialog.cpp" line="6"/>
+        <source>Open readonly</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Main</name>
+    <message>
+        <source>&amp;File</source>
+        <translation type="obsolete">&amp;Fichier</translation>
+    </message>
+    <message>
+        <source>New map</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Nouvelle carte    </translation>
+    </message>
+    <message>
+        <source>&amp;New...</source>
+        <translation type="obsolete">&amp;Nouveau...</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Ouvrir</translation>
+    </message>
+    <message>
+        <source>&amp;Open...</source>
+        <translation type="obsolete">&amp;Ouvrir...</translation>
+    </message>
+    <message>
+        <source>Open Recent</source>
+        <translation type="obsolete">Ouvrir un document récent</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <translation type="obsolete">Sauver</translation>
+    </message>
+    <message>
+        <source>&amp;Save...</source>
+        <translation type="obsolete">&amp;Sauver...</translation>
+    </message>
+    <message>
+        <source>Save &amp;As</source>
+        <translation type="obsolete">Sauver &amp;Comme</translation>
+    </message>
+    <message>
+        <source>Save &amp;As...</source>
+        <translation type="obsolete">Sauver &amp;comme...</translation>
+    </message>
+    <message>
+        <source>Import directory structure (experimental)</source>
+        <translation type="obsolete">Importer la structure de répertoire (expérimental)</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <translation type="obsolete">Exporter</translation>
+    </message>
+    <message>
+        <source>Print</source>
+        <translation type="obsolete">Imprimer</translation>
+    </message>
+    <message>
+        <source>Close Map</source>
+        <translation type="obsolete">Fermer la carte</translation>
+    </message>
+    <message>
+        <source>&amp;Close Map</source>
+        <translation type="obsolete">&amp;Fermer la carte</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <translation type="obsolete">&amp;Éditer</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <translation type="obsolete">Défaire</translation>
+    </message>
+    <message>
+        <source>&amp;Undo</source>
+        <translation type="obsolete">&amp;Défaire</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <translation type="obsolete">Copier</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <translation type="obsolete">&amp;Copier</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="obsolete">Couper</translation>
+    </message>
+    <message>
+        <source>Cu&amp;t</source>
+        <translation type="obsolete">Cou&amp;per</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <translation type="obsolete">Coller</translation>
+    </message>
+    <message>
+        <source>&amp;Paste</source>
+        <translation type="obsolete">Co&amp;ller</translation>
+    </message>
+    <message>
+        <source>Move branch up</source>
+        <translation type="obsolete">Monter la branche</translation>
+    </message>
+    <message>
+        <source>Move up</source>
+        <translation type="obsolete">Monter</translation>
+    </message>
+    <message>
+        <source>Move branch down</source>
+        <translation type="obsolete">Descendre la branche</translation>
+    </message>
+    <message>
+        <source>Move down</source>
+        <translation type="obsolete">Descendre</translation>
+    </message>
+    <message>
+        <source>Scroll branch</source>
+        <translation type="obsolete">Enrouler la branche</translation>
+    </message>
+    <message>
+        <source>Unscroll all</source>
+        <translation type="obsolete">Dérouler tout</translation>
+    </message>
+    <message>
+        <source>Unscroll all scrolled branches</source>
+        <translation type="obsolete">Dérouler toutes les branches enroulées</translation>
+    </message>
+    <message>
+        <source>Find</source>
+        <translation type="obsolete">Trouver</translation>
+    </message>
+    <message>
+        <source>Open URL</source>
+        <translation type="obsolete">Ouvrir une URL</translation>
+    </message>
+    <message>
+        <source>Edit URL</source>
+        <translation type="obsolete">Éditer une URL</translation>
+    </message>
+    <message>
+        <source>Use heading of selected branch as URL</source>
+        <translation type="obsolete">Utiliser l&apos;en-tête de la branche sélectionnée comme URL</translation>
+    </message>
+    <message>
+        <source>Use heading for URL</source>
+        <translation type="obsolete">Utiliser l&apos;en-tête comme URL</translation>
+    </message>
+    <message>
+        <source>Create URL to Bugzilla</source>
+        <translation type="obsolete">Créer une URL vers Bugzilla</translation>
+    </message>
+    <message>
+        <source>Jump to another vym map, if needed load it first</source>
+        <translation type="obsolete">Sauter à une autre carte, si besoin le charger d&apos;abord</translation>
+    </message>
+    <message>
+        <source>Jump to map</source>
+        <translation type="obsolete">Sauter à la carte</translation>
+    </message>
+    <message>
+        <source>Edit link to another vym map</source>
+        <translation type="obsolete">Éditer un lien vers une autre carte vym</translation>
+    </message>
+    <message>
+        <source>Delete link to another vym map</source>
+        <translation type="obsolete">Effacer le lien vers une autre carte vym</translation>
+    </message>
+    <message>
+        <source>Delete vym link</source>
+        <translation type="obsolete">Effacer le lien vym</translation>
+    </message>
+    <message>
+        <source>Edit Map Info</source>
+        <translation type="obsolete">Éditer les infos carte</translation>
+    </message>
+    <message>
+        <source>edit Heading</source>
+        <translation type="obsolete">Éditer l&apos;en-tête</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <translation type="obsolete">Éditer l&apos;en-tête</translation>
+    </message>
+    <message>
+        <source>Delete Selection</source>
+        <translation type="obsolete">Effacer la sélection</translation>
+    </message>
+    <message>
+        <source>Add a branch as child of selection</source>
+        <translation type="obsolete">Ajouter une branche comme enfant de la sélection</translation>
+    </message>
+    <message>
+        <source>Add branch as child</source>
+        <translation type="obsolete">Ajouter une branche comme enfant</translation>
+    </message>
+    <message>
+        <source>Add a branch above selection</source>
+        <translation type="obsolete">Ajouter une branche au-dessus de la sélection</translation>
+    </message>
+    <message>
+        <source>Add branch above</source>
+        <translation type="obsolete">Ajouter une branche au-dessus</translation>
+    </message>
+    <message>
+        <source>Add a branch below selection</source>
+        <translation type="obsolete">Ajouter une branche en-dessous de la sélection</translation>
+    </message>
+    <message>
+        <source>Add branch below</source>
+        <translation type="obsolete">Ajouter une branche au-dessous</translation>
+    </message>
+    <message>
+        <source>Add map at selection</source>
+        <translation type="obsolete">Ajouter un schéma à la sélection</translation>
+    </message>
+    <message>
+        <source>Replace selection with map</source>
+        <translation type="obsolete">Remplacer la sélection par une carte</translation>
+    </message>
+    <message>
+        <source>Save selection</source>
+        <translation type="obsolete">Sauver la sélection</translation>
+    </message>
+    <message>
+        <source>Select upper branch</source>
+        <translation type="obsolete">Sélectionner la branche supérieure</translation>
+    </message>
+    <message>
+        <source>Select lower branch</source>
+        <translation type="obsolete">Sélectionner la branche inférieure</translation>
+    </message>
+    <message>
+        <source>Select left branch</source>
+        <translation type="obsolete">Sélectionner la branche de gauche</translation>
+    </message>
+    <message>
+        <source>Select right branch</source>
+        <translation type="obsolete">Sélectionner la branche de droite</translation>
+    </message>
+    <message>
+        <source>Select child branch</source>
+        <translation type="obsolete">Sélectionner la branche fille</translation>
+    </message>
+    <message>
+        <source>Select first branch</source>
+        <translation type="obsolete">Sélectionner la première branche</translation>
+    </message>
+    <message>
+        <source>Select last branch</source>
+        <translation type="obsolete">Sélectionner la dernière branche</translation>
+    </message>
+    <message>
+        <source>Add Image</source>
+        <translation type="obsolete">Ajouter une image</translation>
+    </message>
+    <message>
+        <source>Set Color</source>
+        <translation type="obsolete">Ajuster la couleur</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1883"/>
+        <source>Set &amp;Color</source>
+        <translation>Définir la &amp;Couleur</translation>
+    </message>
+    <message>
+        <source>Pick color
+Hint: You can pick a color from another branch and color using CTRL+Left Button</source>
+        <translation type="obsolete">Couleur rose
+Conseil: vous pouvez choisir une couleur depuis une autre branche et colorer en utilisant CTRL+bouton gauche</translation>
+    </message>
+    <message>
+        <source>Pic&amp;k color</source>
+        <translation type="obsolete">Choisir une couleur</translation>
+    </message>
+    <message>
+        <source>Color branch</source>
+        <translation type="obsolete">Colorier la branche</translation>
+    </message>
+    <message>
+        <source>Color &amp;branch</source>
+        <translation type="obsolete">Colorier la &amp;branche</translation>
+    </message>
+    <message>
+        <source>Color Subtree</source>
+        <translation type="obsolete">Colorier le sous-arbre</translation>
+    </message>
+    <message>
+        <source>Color sub&amp;tree</source>
+        <translation type="obsolete">Colorier le sous-arbre</translation>
+    </message>
+    <message>
+        <source>Line</source>
+        <translation type="obsolete">Ligne</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1928"/>
+        <source>Linkstyle Line</source>
+        <translation>Aspect du lien : trait droit</translation>
+    </message>
+    <message>
+        <source>Linkstyle Parabel</source>
+        <translation type="obsolete">Style de la ligne du XLink : parabole</translation>
+    </message>
+    <message>
+        <source>PolyLine</source>
+        <translation type="obsolete">PolyLigne</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1942"/>
+        <source>Linkstyle Thick Line</source>
+        <translation>Aspect du lien : trait élargi</translation>
+    </message>
+    <message>
+        <source>PolyParabel</source>
+        <translation type="obsolete">PolyParabole</translation>
+    </message>
+    <message>
+        <source>Linkstyle Thick Parabel</source>
+        <translation type="obsolete">Style de la ligne du XLink : parabole épaisse</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <translation type="obsolete">Pas de cadre</translation>
+    </message>
+    <message>
+        <source>Rectangle</source>
+        <translation type="obsolete">Rectangle</translation>
+    </message>
+    <message>
+        <source>Use same color for links and headings</source>
+        <translation type="obsolete">Utiliser la même couleur pour les liens et les en-têtes</translation>
+    </message>
+    <message>
+        <source>&amp;Use color of heading for link</source>
+        <translation type="obsolete">&amp;Utiliser la couleur de l&apos;en-tête pour le lien</translation>
+    </message>
+    <message>
+        <source>Set Link Color</source>
+        <translation type="obsolete">Ajuster la couleur du lien</translation>
+    </message>
+    <message>
+        <source>Set Background Color</source>
+        <translation type="obsolete">Ajuster la couleur du fond</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1981"/>
+        <source>Set &amp;Background Color</source>
+        <translation>Définir la couleur du &amp;Fond</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1995"/>
+        <source>&amp;View</source>
+        <translation>&amp;Voir</translation>
+    </message>
+    <message>
+        <source>Zoom reset</source>
+        <translation type="obsolete">remise à zéro du zoom</translation>
+    </message>
+    <message>
+        <source>reset Zoom</source>
+        <translation type="obsolete">remettre à zéro le zoom</translation>
+    </message>
+    <message>
+        <source>Zoom in</source>
+        <translation type="obsolete">Zoom avant</translation>
+    </message>
+    <message>
+        <source>Zoom out</source>
+        <translation type="obsolete">Zoom arrière</translation>
+    </message>
+    <message>
+        <source>&amp;Next Window</source>
+        <translation type="obsolete">Fenêtre suiva&amp;nte</translation>
+    </message>
+    <message>
+        <source>Next Window</source>
+        <translation type="obsolete">Fenêtre suivante</translation>
+    </message>
+    <message>
+        <source>&amp;Previous Window</source>
+        <translation type="obsolete">Fenêtre &amp;précédente</translation>
+    </message>
+    <message>
+        <source>Previous Window</source>
+        <translation type="obsolete">Fenêtre précédente</translation>
+    </message>
+    <message>
+        <source>Modes when using modifiers</source>
+        <translation type="obsolete">Modes pendant l&apos;utilisation de modificateurs</translation>
+    </message>
+    <message>
+        <source>Use modifier to color branches</source>
+        <translation type="obsolete">Utiliser un modificateur pour colorer des branches</translation>
+    </message>
+    <message>
+        <source>&amp;Settings</source>
+        <translation type="obsolete">&amp;Paramètres</translation>
+    </message>
+    <message>
+        <source>Set application to open pdf files</source>
+        <translation type="obsolete">Configurer une application pour ouvrir les fichiers PDF</translation>
+    </message>
+    <message>
+        <source>Edit branch after adding it</source>
+        <translation type="obsolete">Éditer la branche après l&apos;ajout</translation>
+    </message>
+    <message>
+        <source>Select branch after adding it</source>
+        <translation type="obsolete">Sélectionner la branche après l&apos;ajout</translation>
+    </message>
+    <message>
+        <source>Select heading before editing</source>
+        <translation type="obsolete">Sélectionner l&apos;en-tête avant l&apos;édition</translation>
+    </message>
+    <message>
+        <source>Select existing heading</source>
+        <translation type="obsolete">Sélectionner un en-tête existant</translation>
+    </message>
+    <message>
+        <source>&amp;Test</source>
+        <translation type="obsolete">&amp;Test</translation>
+    </message>
+    <message>
+        <source>test flag</source>
+        <translation type="obsolete">tester le drapeau</translation>
+    </message>
+    <message>
+        <source>&amp;Help</source>
+        <translation type="obsolete">&amp;Aide</translation>
+    </message>
+    <message>
+        <source>Open VYM Documentation (pdf)</source>
+        <translation type="obsolete">Ouvrir la documentation VYM (PDF)</translation>
+    </message>
+    <message>
+        <source>Information about QT toolkit</source>
+        <translation type="obsolete">Information à propos du toolkit QT</translation>
+    </message>
+    <message>
+        <source>About QT</source>
+        <translation type="obsolete">À propos de QT</translation>
+    </message>
+    <message>
+        <source>Save image</source>
+        <translation type="obsolete">Sauver l&apos;image</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3460"/>
+        <source>Overwrite</source>
+        <translation>Écraser</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3188"/>
+        <location filename="../mainwindow.cpp" line="3235"/>
+        <location filename="../mainwindow.cpp" line="3461"/>
+        <source>Cancel</source>
+        <translation>Annuler</translation>
+    </message>
+    <message>
+        <source>KDE 3 Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation type="obsolete">Signets KDE 3</translation>
+    </message>
+    <message>
+        <source>KDE 4 Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation type="vanished">Signets KDE4</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1021"/>
+        <source>Firefox Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation>Signets Firefox</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <source>Import Dir%1</source>
+        <comment>Import Filters</comment>
+        <translation>Importer le répertoire %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1733"/>
+        <source>Remove only branch and keep its children </source>
+        <comment>Edit menu</comment>
+        <translation>Effacer la branche courante et garder les branches filles</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1878"/>
+        <source>Formatting</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2174"/>
+        <source>Modifier modes</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3187"/>
+        <source>Open anyway</source>
+        <translation>Ouvrir de toute manière</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3234"/>
+        <source>Create</source>
+        <translation>Créer</translation>
+    </message>
+    <message>
+        <source>Critical Load Error</source>
+        <translation type="obsolete">Erreur grave de chargement</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="obsolete">Incapable de trouver une carte (*.xml) dans une archive .vym.
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3303"/>
+        <source>Load vym map</source>
+        <translation>Charger une carte VYM</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3306"/>
+        <source>Import: Add vym map to selection</source>
+        <translation>Importation : ajouter la carte VYM à la sélection</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3309"/>
+        <source>Import: Replace selection with vym map</source>
+        <translation>Importation : remplacer la sélection par une carte VYM</translation>
+    </message>
+    <message>
+        <source>Save Error</source>
+        <translation type="obsolete">Sauver l&apos;erreur</translation>
+    </message>
+    <message>
+        <source>
+could not be removed before saving</source>
+        <translation type="obsolete">
+ne peut être enlevé avant de sauver</translation>
+    </message>
+    <message>
+        <source>compressed (vym default)</source>
+        <translation type="obsolete">compressé (défaut VYM)</translation>
+    </message>
+    <message>
+        <source>uncompressed</source>
+        <translation type="obsolete">décompressé</translation>
+    </message>
+    <message>
+        <source>Export XML to directory</source>
+        <translation type="obsolete">Exporter le XML vers le répertoire</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3775"/>
+        <source>Save modified map before closing it</source>
+        <translation>Enregistrer la carte modifiée avant de la fermer</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3776"/>
+        <source>Discard changes</source>
+        <translation>Annuler les modifications</translation>
+    </message>
+    <message>
+        <source>This map is not saved yet. Do you want to</source>
+        <translation type="obsolete">Cette carte  n&apos;est pas encore sauvée. Voulez-vous</translation>
+    </message>
+    <message>
+        <source>Save map</source>
+        <translation type="obsolete">Sauver la carte</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5045"/>
+        <source>VYM -Information:</source>
+        <translation>VYM - Information:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <location filename="../mainwindow.cpp" line="4130"/>
+        <source>Critical Error</source>
+        <translation>Erreur critique</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4244"/>
+        <source>Enter sleep time (number of days or date YYYY-MM-DD or DD.MM[.YYYY]</source>
+        <comment>task sleep time dialog</comment>
+        <translation>Saisir la temps d&apos;arrêt 
+(nombre de jours ou bien date au format AAAA-MM-JJ ou JJ.MM[.AAAA]</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4261"/>
+        <source>Couldn&apos;t set sleep time to %1.
+</source>
+        <translation>Impossible de fixer le temps d&apos;arrêt à %1.</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4304"/>
+        <source>branches</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4305"/>
+        <source>notes</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4306"/>
+        <source>images</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4307"/>
+        <source>tasks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4308"/>
+        <source>slides</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4309"/>
+        <source>xLinks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5000"/>
+        <location filename="../mainwindow.cpp" line="5010"/>
+        <source>Set application to zip/unzip files</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5076"/>
+        <source>Set author for new maps (used in lockfile)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5077"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5088"/>
+        <source>Number of parents shown in find results:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3092"/>
+        <source>(readonly)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5456"/>
+        <source>Export in last used format (%1) to: %2</source>
+        <comment>status tip</comment>
+        <translation>Exporter vers : %2 en utilisant le dernier format utilisé (%1)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5787"/>
+        <source>Critcal error</source>
+        <translation>Erreur critique</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find the documentation
+vym.pdf in various places.</source>
+        <translation type="obsolete">N&apos;a pas pu trouver la documentation
+vym.pdf en différents endroits.</translation>
+    </message>
+    <message>
+        <source>Add a branch by inserting and making selection its child</source>
+        <translation type="obsolete">Ajouter une branche par insertion et affiliation de la sélection</translation>
+    </message>
+    <message>
+        <source>Add branch (insert)</source>
+        <translation type="obsolete">Ajouter une branche (insérer)</translation>
+    </message>
+    <message>
+        <source>Remove only branch and keep its childs</source>
+        <translation type="obsolete">Enlever seulement la branche et garder ses fils</translation>
+    </message>
+    <message>
+        <source>Remove only branch </source>
+        <translation type="obsolete">Enlever seulement la branche</translation>
+    </message>
+    <message>
+        <source>Remove childs of branch</source>
+        <translation type="obsolete">Enlever les fils de la branche</translation>
+    </message>
+    <message>
+        <source>Remove childs</source>
+        <translation type="obsolete">Enlever les enfants</translation>
+    </message>
+    <message>
+        <source>Use modifier to copy</source>
+        <translation type="obsolete">Utoiliser le modificateur pour copier</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2723"/>
+        <source>Add</source>
+        <translation>Ajouter</translation>
+    </message>
+    <message>
+        <source>Remove</source>
+        <translation type="obsolete">Enlever</translation>
+    </message>
+    <message>
+        <source>Edit XLink</source>
+        <translation type="obsolete">Éditer XLink</translation>
+    </message>
+    <message>
+        <source>Goto XLink</source>
+        <translation type="obsolete">Aller au XLink</translation>
+    </message>
+    <message>
+        <source>Use modifier to draw xLinks</source>
+        <translation type="obsolete">Utiliser le modificateur pour tracer le XLink</translation>
+    </message>
+    <message>
+        <source>Use exclusive flags in flag toolbars</source>
+        <translation type="obsolete">Utiliser les indicateurs exclusifs dans la barre de menu</translation>
+    </message>
+    <message>
+        <source>Set application to open external links</source>
+        <translation type="obsolete">Choisir l&apos;application pour ouvrir des liens externes</translation>
+    </message>
+    <message>
+        <source>Pasting into new branch</source>
+        <translation type="obsolete">Copie dans la nouvelle branche</translation>
+    </message>
+    <message>
+        <source>pasting into new branch</source>
+        <translation type="obsolete">copie dans la nouvelle branche</translation>
+    </message>
+    <message>
+        <source>Delete key for deleting branches</source>
+        <translation type="obsolete">Touche suppr pour effacer des branches</translation>
+    </message>
+    <message>
+        <source>Delete key</source>
+        <translation type="obsolete">Touche suppr</translation>
+    </message>
+    <message>
+        <source>Exclusive flags</source>
+        <translation type="obsolete">indicateurs exclusifs</translation>
+    </message>
+    <message>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <translation type="obsolete">Le répertoire %1 n&apos;est pas vide. Vous risquez d&apos;écraser son contenu ?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3179"/>
+        <source>The map %1
+is already opened.Opening the same map in multiple editors may lead 
+to confusion when finishing working with vym.Do you want to</source>
+        <translation>La carte %1
+ est déjà ouverte. Editer plusieurs fois la même carte peut amener
+ des incohérences à la fermeture de vym. Voulez vous</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3228"/>
+        <source>This map does not exist:
+  %1
+Do you want to create a new one?</source>
+        <translation>Cette carte n&apos;existe pas :
+%1
+Voulez-vous la créer ?</translation>
+    </message>
+    <message>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="obsolete">La carte %1
+n&apos;utilise pas le format compressé de vym.
+Si on l&apos;écrit  non compressée, on va écrire les images et les indicateurs
+et pourra écraser des fichiers dans le répertoire
+Voulez vous écrire la carte </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3413"/>
+        <source>Saved  %1</source>
+        <translation>Sauvegarde de : %1 effectuée</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3417"/>
+        <source>Couldn&apos;t save </source>
+        <translation>Echec sauvegarde</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3455"/>
+        <source>The file %1
+exists already. Do you want to</source>
+        <translation>Le fichier %1
+existe déjà. Voulez-vous </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3770"/>
+        <source>The map %1 has been modified but not saved yet. Do you want to</source>
+        <translation>La carte %1 a été modifiée mais pas encore sauvegardée. Voulez-vous</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4131"/>
+        <source>Couldn&apos;t open map %1</source>
+        <translation>Echec ouverture carte %1</translation>
+    </message>
+    <message>
+        <source>Set application to open pdf files  ...</source>
+        <translation type="obsolete">Choisir l&apos;application pour ouvrir les fichiers pdf  ...</translation>
+    </message>
+    <message>
+        <source>Set application to open external links...</source>
+        <translation type="obsolete">Choisit l&apos;application pour ouvrir les liens externes ...</translation>
+    </message>
+    <message>
+        <source>Exit</source>
+        <translation type="obsolete">Sortie</translation>
+    </message>
+    <message>
+        <source>E&amp;xit</source>
+        <translation type="obsolete">S&amp;ortie</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="obsolete">Refaire</translation>
+    </message>
+    <message>
+        <source>&amp;Redo</source>
+        <translation type="obsolete">&amp;Refaire</translation>
+    </message>
+    <message>
+        <source>Create URL to FATE</source>
+        <translation type="obsolete">Abandonner l&apos;URL</translation>
+    </message>
+    <message>
+        <source>Include top and bottom position of images into branch</source>
+        <translation type="obsolete">inclure les positions des images haut et bas des images dans les branches</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <translation type="obsolete">Inclure les images verticalement</translation>
+    </message>
+    <message>
+        <source>Include left and right position of images into branch</source>
+        <translation type="obsolete">Inclure les positions droite et gauche des images dans les branches</translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <translation type="obsolete">Inclure les images horizontalement</translation>
+    </message>
+    <message>
+        <source>Hide link</source>
+        <translation type="obsolete">Cacher le lien</translation>
+    </message>
+    <message>
+        <source>Hide link if object is not selected</source>
+        <translation type="obsolete">Cacher le lien si l&apos;objet n&apos;est pas sélectionné</translation>
+    </message>
+    <message>
+        <source>Note</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Note</translation>
+    </message>
+    <message>
+        <source>WWW Document (external)</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Document WWW externe</translation>
+    </message>
+    <message>
+        <source>Link to another vym map</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Lien vers une autre carte cym</translation>
+    </message>
+    <message>
+        <source>subtree is scrolled</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">La sous-branche est enroulée</translation>
+    </message>
+    <message>
+        <source>subtree is temporary scrolled</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">la sous-branche est provisoirement enroulée</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2291"/>
+        <source>Take care!</source>
+        <comment>Standardflag</comment>
+        <translation>Faites Attention !</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2295"/>
+        <source>Really?</source>
+        <comment>Standardflag</comment>
+        <translation>Vraiment ?</translation>
+    </message>
+    <message>
+        <source>ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">ok !</translation>
+    </message>
+    <message>
+        <source>Not ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Pas ok !  </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2274"/>
+        <source>This won&apos;t work!</source>
+        <comment>Standardflag</comment>
+        <translation>Cela ne marchera pas !</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2299"/>
+        <source>Good</source>
+        <comment>Standardflag</comment>
+        <translation>Bien</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2303"/>
+        <source>Bad</source>
+        <comment>Standardflag</comment>
+        <translation>Mauvais</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2312"/>
+        <source>Time critical</source>
+        <comment>Standardflag</comment>
+        <translation>Moment critique</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2318"/>
+        <source>Idea!</source>
+        <comment>Standardflag</comment>
+        <translation>Idée !</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2322"/>
+        <source>Important</source>
+        <comment>Standardflag</comment>
+        <translation>Important</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2326"/>
+        <source>Unimportant</source>
+        <comment>Standardflag</comment>
+        <translation>Sans intérêt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2339"/>
+        <source>I like this</source>
+        <comment>Standardflag</comment>
+        <translation>J&apos;aime</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2343"/>
+        <source>I do not like this</source>
+        <comment>Standardflag</comment>
+        <translation>Je n&apos;aime pas</translation>
+    </message>
+    <message>
+        <source>I just love... </source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">J&apos;aime un peu ...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2356"/>
+        <source>Dangerous</source>
+        <comment>Standardflag</comment>
+        <translation>Dangereux</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2364"/>
+        <source>This will help</source>
+        <comment>Standardflag</comment>
+        <translation>Cela peux aider</translation>
+    </message>
+    <message>
+        <source>Call test function</source>
+        <translation type="obsolete">Appeler une fonction de test</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation type="unfinished">Ne peut pas sauver %1</translation>
+    </message>
+    <message>
+        <source>Open VYM Documentation (pdf) </source>
+        <translation type="obsolete">Ouvrir la documentation VYM (pdf) </translation>
+    </message>
+    <message>
+        <source>About VYM</source>
+        <translation type="obsolete">À propos de VYM</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <location filename="../mainwindow.cpp" line="3596"/>
+        <source>Import</source>
+        <translation>Importer</translation>
+    </message>
+    <message>
+        <source>KDE Bookmarks</source>
+        <translation type="obsolete">Signets KDE</translation>
+    </message>
+    <message>
+        <source>Export in Open Document Format used e.g. in Open Office </source>
+        <translation type="obsolete">Exporter en Open Document Format utilisé par Open Office</translation>
+    </message>
+    <message>
+        <source>Export as ASCII</source>
+        <translation type="obsolete">Exporter en ASCII</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <location filename="../mainwindow.cpp" line="1087"/>
+        <location filename="../mainwindow.cpp" line="1091"/>
+        <location filename="../mainwindow.cpp" line="1095"/>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <source>(still experimental)</source>
+        <translation>(encore expérimental)</translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">Exporter en LaTeX</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1110"/>
+        <source>&amp;Print</source>
+        <translation>Im&amp;primer</translation>
+    </message>
+    <message>
+        <source>Add map (insert)</source>
+        <translation type="obsolete">Ajouter un schéma (insérer)</translation>
+    </message>
+    <message>
+        <source>Add map (replace)</source>
+        <translation type="obsolete">Ajouter un schéma (remplacer)</translation>
+    </message>
+    <message>
+        <source>Export as</source>
+        <translation type="obsolete">Exporter comme</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <location filename="../mainwindow.cpp" line="3724"/>
+        <source>Export to</source>
+        <translation>Exporter vers</translation>
+    </message>
+    <message>
+        <source>Hide object in exports</source>
+        <translation type="obsolete">Cacher les objets dans l&apos;exportation</translation>
+    </message>
+    <message>
+        <source>Hide in exports</source>
+        <translation type="obsolete">Cacher dans l&apos;export</translation>
+    </message>
+    <message>
+        <source>Hide object in exported maps</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Cacher les objets dans les cartes exportées</translation>
+    </message>
+    <message>
+        <source>Use hide flag during exports </source>
+        <translation type="obsolete">Utiliser l&apos;indicateur cacher pendant les exports</translation>
+    </message>
+    <message>
+        <source>Use hide flags</source>
+        <translation type="obsolete">Utiliser l&apos;indicateur cacher</translation>
+    </message>
+    <message>
+        <source>Open URL in new tab</source>
+        <translation type="obsolete">Ouvrir l&apos;URL dans un nouvel onglet   </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2385"/>
+        <source>forward</source>
+        <comment>Freemind-Flag</comment>
+        <translation>En-avant</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2397"/>
+        <source>Don&apos;t flagrget</source>
+        <comment>Freemind-Flag</comment>
+        <translation>N&apos;oubliez-pas</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3126"/>
+        <source>unnamed</source>
+        <comment>MainWindow: name for new and empty file</comment>
+        <translation>sans nom</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3745"/>
+        <location filename="../mainwindow.cpp" line="3875"/>
+        <location filename="../mainwindow.cpp" line="3918"/>
+        <location filename="../mainwindow.cpp" line="4260"/>
+        <location filename="../mainwindow.cpp" line="5800"/>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Warning</source>
+        <translation>Attention</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3746"/>
+        <source>Couldn&apos;t find configuration for export to LibreOffice
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3876"/>
+        <location filename="../mainwindow.cpp" line="5801"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <translation>Pas d&apos;application pour ouvrir %1.
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>Veuillez utiliser le menu Paramètres</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="4981"/>
+        <source>Set application to open an URL</source>
+        <translation>Définir l&apos;application pour ouvrir une URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3919"/>
+        <source>Couldn&apos;t start %1 to open a new tab in %2.</source>
+        <translation>Impossible de lancer %1 pour ouvrir un nouvel onglet dans %2.</translation>
+    </message>
+    <message>
+        <source>Currently vym is using %1 to open external links.
+(Change in Settings menu)</source>
+        <comment>Mainwindow, open URL</comment>
+        <translation type="obsolete">Vym utilise actuellement %1 pour ouvrir les liens externes
+(Modifiez ce comportement dans le menu Options)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4286"/>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation>La carte contient %1 éléments</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4967"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Set application to open PDF files</source>
+        <translation>Définir l&apos;application pour ouvrir les fichier PDF</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2307"/>
+        <source>Oh no!</source>
+        <comment>Standardflag</comment>
+        <translation>Oh non !</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="238"/>
+        <source>Note Editor</source>
+        <translation>Éditeur de note</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="245"/>
+        <source>Heading Editor</source>
+        <translation>Éditeur d&apos;en-tête</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="260"/>
+        <source>Search results list</source>
+        <comment>FindResultWidget</comment>
+        <translation>Résultats de la Recherche</translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <comment>Toolbar for file actions</comment>
+        <translation type="vanished">&amp;Carte</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2913"/>
+        <source>File actions toolbar</source>
+        <comment>Toolbar for file actions</comment>
+        <translation>Barre d&apos;outils fichiers</translation>
+    </message>
+    <message>
+        <source>File</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Fichier</translation>
+    </message>
+    <message>
+        <source>KDE 3 Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Signets KDE 3</translation>
+    </message>
+    <message>
+        <source>KDE 4 Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="vanished">Signets KDE4</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2931"/>
+        <source>Edit actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation>Barre d&apos;outils des actions</translation>
+    </message>
+    <message>
+        <source>Edit</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Editer</translation>
+    </message>
+    <message>
+        <source>&amp;Restore last session</source>
+        <comment>File menu</comment>
+        <translation type="vanished">&amp;Restaurer la dernière session</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1135"/>
+        <source>E&amp;dit</source>
+        <comment>Edit menu</comment>
+        <translation>E&amp;diter</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1208"/>
+        <source>Add attribute</source>
+        <translation>Ajouter une propriété</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1316"/>
+        <source>&amp;Detach</source>
+        <comment>Context menu</comment>
+        <translation>&amp;Détacher</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1317"/>
+        <source>Detach branch and use as mapcenter</source>
+        <comment>Context menu</comment>
+        <translation>Détacher une branche et réutiliser comme centre de la carte</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1334"/>
+        <source>Sort children backwards</source>
+        <comment>Edit menu</comment>
+        <translation>Tri inverse des branches filles</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1411"/>
+        <source>Expand all branches</source>
+        <comment>Edit menu</comment>
+        <translation>Développer toutes les branches</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1419"/>
+        <source>Expand one level</source>
+        <comment>Edit menu</comment>
+        <translation>Développer sur un niveau</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1389"/>
+        <source>Collapse one level</source>
+        <comment>Edit menu</comment>
+        <translation>Replier d&apos;un niveau</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1400"/>
+        <source>Collapse unselected levels</source>
+        <comment>Edit menu</comment>
+        <translation>Replier les niveaux non sélectionnés</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1355"/>
+        <source>Unscroll children</source>
+        <comment>Edit menu</comment>
+        <translation>Dérouler les branches filles</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1059"/>
+        <source>Text (A&amp;O report)...</source>
+        <comment>Export format</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <source>Spreadsheet</source>
+        <translation type="unfinished">Feuille de calcul</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1101"/>
+        <source>Properties</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1290"/>
+        <source>Move branch up</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Monter la branche</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1303"/>
+        <source>Move branch down</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Descendre la branche</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1360"/>
+        <source>Grow selection</source>
+        <comment>Edit menu</comment>
+        <translation>Faire croitre la sélection</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1369"/>
+        <source>Shrink selection</source>
+        <comment>Edit menu</comment>
+        <translation>Racourcir la sélection</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1378"/>
+        <source>Reset selection size</source>
+        <comment>Edit menu</comment>
+        <translation>Réinitialiser la taille de la sélection</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1429"/>
+        <source>References Context menu</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1498"/>
+        <source>Bugzilla handling</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1499"/>
+        <source>Create URL to SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1510"/>
+        <source>Get data from SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1519"/>
+        <source>Get data from SUSE Bugzilla for subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1528"/>
+        <source>SUSE Fate tool handling</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1529"/>
+        <source>Create URL to SUSE FATE tool</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1537"/>
+        <source>vymlinks - linking maps</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1574"/>
+        <source>Exports</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1586"/>
+        <source>Tasks</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished">Tâches</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1730"/>
+        <source>Removing parts of a map</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1753"/>
+        <source>Various</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1765"/>
+        <source>Map properties...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1771"/>
+        <source>Add   ...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1792"/>
+        <source>Selections</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1795"/>
+        <source>Toggle target...</source>
+        <comment>Edit menu</comment>
+        <translation>Basculer vers cible...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1804"/>
+        <source>Goto target...</source>
+        <comment>Edit menu</comment>
+        <translation>Se déplacer vers (par XLink)...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1812"/>
+        <source>Move to target...</source>
+        <comment>Edit menu</comment>
+        <translation>Déplacer vers la cible...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1820"/>
+        <source>Select previous</source>
+        <comment>Edit menu</comment>
+        <translation>Sélection précédente</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1830"/>
+        <source>Select next</source>
+        <comment>Edit menu</comment>
+        <translation>Sélection suivante</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1848"/>
+        <source>Search functions</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1864"/>
+        <source>Find duplicate URLs</source>
+        <comment>Edit menu</comment>
+        <translation>Trouver des URLS en double</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2053"/>
+        <source>Note editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2064"/>
+        <source>Heading editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2525"/>
+        <source>Set author for new maps</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2613"/>
+        <source>Number of visible parents in task editor</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2618"/>
+        <source>Number of visible parents in find results window</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2698"/>
+        <source>Debug info</source>
+        <comment>Option to show debugging info</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <source>Couldn&apos;t save %1,
+because of existing lockfile:
+
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <source>Please allow vym to download release notes!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5968"/>
+        <source>&lt;html&gt;&lt;h3&gt;Do you allow vym to check online for updates or release notes?&lt;/h3&gt;If you allow, vym will &lt;ul&gt;&lt;li&gt;check once for release notes&lt;/li&gt;&lt;li&gt;check regulary for updates and notify you in case you should update, e.g. if there are important bug fixes available&lt;/li&gt;&lt;li&gt;receive a cookie with a random ID and send vym version and platform name and the ID  (e.g. &quot;Windows&quot; or &quot;Linux&quot;) back to me, Uwe Drechsel.&lt;p&gt;As vym developer I am motivated to see many people using vym. Of course I am curious to see, on which system vym is used. Maintaining each of the systems requires a lot of my (spare) time.&lt;/p&gt; &lt;p&gt;No other data than above will be sent, especially no private data will be collected or sent.(Check the source code, if you don&apos;t believe.)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;If you do not allow, &lt;ul&gt;&lt;li&gt;nothing will be downloaded and especially I will &lt;b&gt;not be motivated&lt;/b&gt; to spend some more thousands of hours on developing a free software tool.&lt;/ul&gt;Please allow vym to check for updates :-)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5997"/>
+        <source>Allow</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5998"/>
+        <source>Do not allow</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6004"/>
+        <source>Thank you for enabling downloads!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6027"/>
+        <source>Update information</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6033"/>
+        <source>vym is up to date.</source>
+        <comment>MainWindow</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6084"/>
+        <source>Checking for updates...</source>
+        <comment>MainWindow</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Please allow vym to check for updates!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Info</source>
+        <translation type="obsolete">Information</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1446"/>
+        <source>Open all URLs in subtree (including scrolled branches)</source>
+        <comment>Edit menu</comment>
+        <translation>Ouvrir toutes les URL dans un sous arbre (y compris les branches enroulées)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1461"/>
+        <source>Extract URLs from note</source>
+        <comment>Edit menu</comment>
+        <translation>Extraire les URLs depuis la note</translation>
+    </message>
+    <message>
+        <source>Get data from Novell Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Extraire les données depuis Novell Bugzilla</translation>
+    </message>
+    <message>
+        <source>Get data from Novell Bugzilla for subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Extraire les données dans un sous arbre depuis Novell Bugzilla</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1754"/>
+        <source>Add timestamp</source>
+        <comment>Edit menu</comment>
+        <translation>Ajouter hrodatage</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1743"/>
+        <source>Remove children</source>
+        <comment>Edit menu</comment>
+        <translation>Enlever la branche fille</translation>
+    </message>
+    <message>
+        <source>View shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Examiner raccourcis</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2972"/>
+        <source>Zoom toolbar</source>
+        <comment>View Toolbar name</comment>
+        <translation>Barre d&apos;outils de zoom</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2042"/>
+        <source>Center on selection</source>
+        <comment>View action</comment>
+        <translation>Recentrer sur la sélection</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2982"/>
+        <source>Editors toolbar</source>
+        <comment>Editor Toolbar name</comment>
+        <translation>Barre d&apos;outils d&apos;édition</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2994"/>
+        <source>Modifier modes toolbar</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation>Barre d&apos;outils des modes d&apos;action</translation>
+    </message>
+    <message>
+        <source>Modes</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Modes d&apos;action</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2076"/>
+        <source>Tree editor</source>
+        <comment>View action</comment>
+        <translation>Éditeur arborescence</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2084"/>
+        <source>Task editor</source>
+        <comment>View action</comment>
+        <translation>Éditeur de Tâches</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2094"/>
+        <source>Slide editor</source>
+        <comment>View action</comment>
+        <translation>Éditeur de diapositive</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2102"/>
+        <source>Script editor</source>
+        <comment>View action</comment>
+        <translation>Éditeur de scripts</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2153"/>
+        <source>Next slide</source>
+        <comment>View action</comment>
+        <translation>Diapo suivante</translation>
+    </message>
+    <message>
+        <source>Next slide</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Diapo suivante</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2160"/>
+        <source>Previous slide</source>
+        <comment>View action</comment>
+        <translation>Diapo précédente</translation>
+    </message>
+    <message>
+        <source>Previous  slide</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Diapo précédente</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2242"/>
+        <location filename="../mainwindow.cpp" line="2245"/>
+        <source>URL to Bugzilla </source>
+        <comment>SystemFlag</comment>
+        <translation>Utiliser l&apos;URL avec Bugzilla</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2265"/>
+        <source>Standard Flags toolbar</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation>Barre d&apos;outils standard des Imagettes</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2279"/>
+        <source>Status - ok,done</source>
+        <comment>Standardflag</comment>
+        <translation>Status ok, réalisé</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2283"/>
+        <source>Status - work in progress</source>
+        <comment>Standardflag</comment>
+        <translation>Statut : en cours</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2287"/>
+        <source>Status - missing, not started</source>
+        <comment>Standardflag</comment>
+        <translation>Statut: absent, non démarré</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2315"/>
+        <source>Call...</source>
+        <comment>Standardflag</comment>
+        <translation>Appeler...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2330"/>
+        <source>Very important!</source>
+        <comment>Standardflag</comment>
+        <translation>Très important !</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2334"/>
+        <source>Very unimportant!</source>
+        <comment>Standardflag</comment>
+        <translation>Sans aucun intérêt !</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2347"/>
+        <source>Rose</source>
+        <comment>Standardflag</comment>
+        <translation>Rose</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2353"/>
+        <source>Surprise!</source>
+        <comment>Standardflag</comment>
+        <translation>Surprise !</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2360"/>
+        <source>Info</source>
+        <comment>Standardflag</comment>
+        <translation>Information</translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <translation type="obsolete">Signets de Firefox</translation>
+    </message>
+    <message>
+        <source>F&amp;ormat</source>
+        <translation type="obsolete">F&amp;ormat</translation>
+    </message>
+    <message>
+        <source>Show Note Editor</source>
+        <translation type="obsolete">Afficher l&apos;éditeur de note</translation>
+    </message>
+    <message>
+        <source>Show history window</source>
+        <translation type="obsolete">Afficher la fenêtre d&apos;historique</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3533"/>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <source>Bookmarks</source>
+        <translation>Signets</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start %1 to open a new tab</source>
+        <translation type="obsolete">N&apos;a pas pu démarrer %1 pour ouvrir un nouvel onglet</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find configuration for export to Open Office
+</source>
+        <translation type="vanished">N&apos;a pas pu trouver la configuration pour exporter vers Open Office</translation>
+    </message>
+    <message>
+        <source>No matches found for &quot;%1&quot;</source>
+        <translation type="obsolete">Pas de résultats pour &quot;% 1&quot;</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="971"/>
+        <source>&amp;New map</source>
+        <comment>File menu</comment>
+        <translation>&amp;Nouvelle Carte</translation>
+    </message>
+    <message>
+        <source>New map</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">Nouvelle carte    </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="978"/>
+        <source>&amp;Copy to new map</source>
+        <comment>File menu</comment>
+        <translation>&amp;Copier vers une nouvelle carte</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="985"/>
+        <source>&amp;Open...</source>
+        <comment>File menu</comment>
+        <translation>&amp;Ouvrir...</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">Ouvrir</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1000"/>
+        <source>Open Recent</source>
+        <comment>File menu</comment>
+        <translation>Ouvrir un document récent</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1003"/>
+        <source>&amp;Save...</source>
+        <comment>File menu</comment>
+        <translation>Enregi&amp;strer...</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">Sauver</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1011"/>
+        <source>Save &amp;As...</source>
+        <comment>File menu</comment>
+        <translation>Enregistrer &amp;sous...</translation>
+    </message>
+    <message>
+        <source>Save &amp;As</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">Sauver &amp;Comme</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1017"/>
+        <source>Import</source>
+        <comment>File menu</comment>
+        <translation>Importer</translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Signets de Firefox</translation>
+    </message>
+    <message>
+        <source>Import directory structure (experimental)</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Importer la structure de répertoire (expérimental)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1038"/>
+        <source>Export</source>
+        <comment>File menu</comment>
+        <translation>Exporter</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1063"/>
+        <source>Image%1</source>
+        <comment>File export menu</comment>
+        <translation>Image%1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1067"/>
+        <source>PDF%1</source>
+        <comment>File export menu</comment>
+        <translation>PDF%1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1071"/>
+        <source>SVG%1</source>
+        <comment>File export menu</comment>
+        <translation>SVG%1</translation>
+    </message>
+    <message>
+        <source>Export in Open Document Format used e.g. in Open Office </source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Exporter en Open Document Format utilisé par Open Office</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1040"/>
+        <source>Repeat last export (%1)</source>
+        <translation>Repeter le dernier export (%1)</translation>
+    </message>
+    <message>
+        <source>KDE Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Signets KDE</translation>
+    </message>
+    <message>
+        <source>Print</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Imprimer</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1118"/>
+        <source>&amp;Close Map</source>
+        <comment>File menu</comment>
+        <translation>Fermer la &amp;carte</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1124"/>
+        <source>E&amp;xit</source>
+        <comment>File menu</comment>
+        <translation>&amp;Quitter</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Éditer</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1139"/>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation>Ann&amp;uler action</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1150"/>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Refaire</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1161"/>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Copier</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1172"/>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation>Cou&amp;per</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1185"/>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation>Co&amp;ller</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Éditer l&apos;en-tête</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1197"/>
+        <source>Delete Selection</source>
+        <comment>Edit menu</comment>
+        <translation>Effacer la sélection</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1221"/>
+        <source>Add mapcenter</source>
+        <comment>Canvas context menu</comment>
+        <translation>Ajouter un nouveau centre de carte</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1232"/>
+        <source>Add branch as child</source>
+        <comment>Edit menu</comment>
+        <translation>Ajouter une branche fille</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1242"/>
+        <source>Add branch (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>Ajouter une branche (insérer)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1252"/>
+        <location filename="../mainwindow.cpp" line="1262"/>
+        <source>Add branch above</source>
+        <comment>Edit menu</comment>
+        <translation>Ajouter une branche au-dessus</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1272"/>
+        <location filename="../mainwindow.cpp" line="1281"/>
+        <source>Add branch below</source>
+        <comment>Edit menu</comment>
+        <translation>Ajouter une branche au-dessous</translation>
+    </message>
+    <message>
+        <source>Move up</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Monter</translation>
+    </message>
+    <message>
+        <source>Move down</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Descendre</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1325"/>
+        <source>Sort children</source>
+        <comment>Edit menu</comment>
+        <translation>Tri des branches filles</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1343"/>
+        <source>Scroll branch</source>
+        <comment>Edit menu</comment>
+        <translation>Enrouler la branche</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1849"/>
+        <location filename="../mainwindow.cpp" line="1857"/>
+        <source>Find...</source>
+        <comment>Edit menu</comment>
+        <translation>Rechercher...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1430"/>
+        <source>Open URL</source>
+        <comment>Edit menu</comment>
+        <translation>Ouvrir une URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="124"/>
+        <source>Main window</source>
+        <comment>Shortcut scope</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="252"/>
+        <source>Script Editor</source>
+        <translation>Éditeur de script</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="314"/>
+        <source>Task list</source>
+        <comment>TaskEditor</comment>
+        <translation>Liste des Tâches</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="273"/>
+        <source>Script Editor</source>
+        <comment>ScriptEditor</comment>
+        <translation>Éditeur de script</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="280"/>
+        <source>Property Editor</source>
+        <comment>PropertyEditor</comment>
+        <translation>Éditeur des propriétés</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="287"/>
+        <source>History window</source>
+        <comment>HistoryWidget</comment>
+        <translation>Historique</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="218"/>
+        <source>Main window</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="219"/>
+        <source>Map Editors</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="220"/>
+        <source>Text Editors</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="967"/>
+        <source>&amp;Map</source>
+        <comment>Menu for file actions</comment>
+        <translation type="unfinished">&amp;Carte</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="992"/>
+        <source>&amp;Restore last session</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">&amp;Restaurer la dernière session</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1047"/>
+        <source>Webpage (HTML)...</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1051"/>
+        <source>Text (ASCII)...</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <source>Text with tasks</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1438"/>
+        <source>Open URL in new tab</source>
+        <comment>Edit menu</comment>
+        <translation>Ouvrir l&apos;URL dans un nouvel onglet   </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1454"/>
+        <source>Open all URLs in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Ouvrir toutes les URL dans un sous arbre</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1470"/>
+        <source>Edit URL...</source>
+        <comment>Edit menu</comment>
+        <translation>Editer l&apos;URL...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1479"/>
+        <source>Edit local URL...</source>
+        <comment>Edit menu</comment>
+        <translation>Editer l&apos;URL locale...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1488"/>
+        <source>Use heading for URL</source>
+        <comment>Edit menu</comment>
+        <translation>Utiliser l&apos;en-tête comme URL</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Créer une URL vers Novell Bugzilla</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell FATE</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Créer une URL vers Novell FATE</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1538"/>
+        <source>Open linked map</source>
+        <comment>Edit menu</comment>
+        <translation>Ouvrir la carte liée</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1545"/>
+        <source>Open linked map in background tab</source>
+        <comment>Edit menu</comment>
+        <translation>Ouvrir la carte liée dans un onglet d&apos;arrière plan</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1552"/>
+        <source>Open all vym links in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Ouvrir tous les liens vym dans un sous-arbre</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1560"/>
+        <source>Edit vym link...</source>
+        <comment>Edit menu</comment>
+        <translation>Editer un lien vym...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1567"/>
+        <source>Delete vym link</source>
+        <comment>Edit menu</comment>
+        <translation>Effacer le lien vym</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1575"/>
+        <source>Hide in exports</source>
+        <comment>Edit menu</comment>
+        <translation>Cacher dans l&apos;export</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1587"/>
+        <source>Toggle task</source>
+        <comment>Edit menu</comment>
+        <translation>Changer le statut d&apos;une Tâche</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1598"/>
+        <source>Cycle task status</source>
+        <comment>Edit menu</comment>
+        <translation>Statut de la tâche (cyclique)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1609"/>
+        <source>Reset sleep</source>
+        <comment>Task sleep</comment>
+        <translation>Réinitialiser la durée de repos</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1620"/>
+        <location filename="../mainwindow.cpp" line="1643"/>
+        <location filename="../mainwindow.cpp" line="1654"/>
+        <location filename="../mainwindow.cpp" line="1665"/>
+        <location filename="../mainwindow.cpp" line="1676"/>
+        <source>Sleep %1 days</source>
+        <comment>Task sleep</comment>
+        <translation>Mettre au repos pendant : %1 jour(s)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1632"/>
+        <source>Sleep %1 day</source>
+        <comment>Task sleep</comment>
+        <translation>Mettre au repos pendant : %1 jour</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1687"/>
+        <location filename="../mainwindow.cpp" line="1698"/>
+        <source>Sleep %1 weeks</source>
+        <comment>Task sleep</comment>
+        <translation>Mettre au repos pendant :%1 semaine(s)</translation>
+    </message>
+    <message>
+        <source>Edit Map Info...</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Editer les propriétés de la carte...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1710"/>
+        <source>Add map (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>Ajouter une carte (insérer)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1717"/>
+        <source>Add map (replace)</source>
+        <comment>Edit menu</comment>
+        <translation>Ajouter une carte (remplacer)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1724"/>
+        <source>Save selection</source>
+        <comment>Edit menu</comment>
+        <translation>Enregister la sélection</translation>
+    </message>
+    <message>
+        <source>Remove only branch </source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Enlever seulement la branche</translation>
+    </message>
+    <message>
+        <source>Remove childs</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Enlever les enfants</translation>
+    </message>
+    <message>
+        <source>Select upper branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Sélectionner la branche supérieure</translation>
+    </message>
+    <message>
+        <source>Select lower branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Sélectionner la branche inférieure</translation>
+    </message>
+    <message>
+        <source>Select left branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Sélectionner la branche de gauche</translation>
+    </message>
+    <message>
+        <source>Select child branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Sélectionner la branche fille</translation>
+    </message>
+    <message>
+        <source>Select first branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Sélectionner la première branche</translation>
+    </message>
+    <message>
+        <source>Select last branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Sélectionner la dernière branche</translation>
+    </message>
+    <message>
+        <source>Add Image...</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Ajouter une Image...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1779"/>
+        <source>Property window</source>
+        <comment>Dialog to edit properties of selection</comment>
+        <translation>Propriétés</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1793"/>
+        <source>Select</source>
+        <comment>Select menu</comment>
+        <translation>Sélection</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1840"/>
+        <source>Unselect all</source>
+        <comment>Edit menu</comment>
+        <translation>Tout désélectionner</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1876"/>
+        <source>F&amp;ormat</source>
+        <comment>Format menu</comment>
+        <translation>F&amp;ormater</translation>
+    </message>
+    <message>
+        <source>Format shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Raccourcis pour formattage</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1889"/>
+        <source>Pic&amp;k color</source>
+        <comment>Edit menu</comment>
+        <translation>Choisir la &amp;couleur</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1898"/>
+        <source>Color &amp;branch</source>
+        <comment>Edit menu</comment>
+        <translation>Colorier la &amp;branche</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1907"/>
+        <source>Color sub&amp;tree</source>
+        <comment>Edit menu</comment>
+        <translation>Colorier le sous-&amp;arbre</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1918"/>
+        <source>Select default font</source>
+        <comment>Branch attribute</comment>
+        <translation>Sélectionner la fonte par défaut</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1935"/>
+        <source>Linkstyle Curve</source>
+        <translation>Style du lien : courbe</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1949"/>
+        <source>Linkstyle Thick Curve</source>
+        <translation>Style du lien : courbe élargie</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1958"/>
+        <source>Hide link if object is not selected</source>
+        <comment>Branch attribute</comment>
+        <translation>Cacher le lien si l&apos;objet n&apos;est pas sélectionné</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1964"/>
+        <source>&amp;Use color of heading for link</source>
+        <comment>Branch attribute</comment>
+        <translation>&amp;Utiliser la couleur de l&apos;en-tête pour le lien</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1971"/>
+        <source>Set &amp;Link Color</source>
+        <translation>Définir la couleur du &amp;Lien</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1976"/>
+        <source>Set &amp;Selection Color</source>
+        <translation>Définir la couleur de la &amp;Sélection</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1986"/>
+        <source>Set &amp;Background image</source>
+        <translation>Définit l&apos;&amp;Image de fond</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1996"/>
+        <source>Toolbars</source>
+        <comment>Toolbars overview in view menu</comment>
+        <translation>Barre d&apos;outils</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1997"/>
+        <source>Views</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2018"/>
+        <source>Rotate counterclockwise</source>
+        <comment>View action</comment>
+        <translation>Rotation antihoraire</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2026"/>
+        <source>Rotate rclockwise</source>
+        <comment>View action</comment>
+        <translation>Rotation horaire</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2034"/>
+        <source>reset Zoom</source>
+        <comment>View action</comment>
+        <translation>Annuler Zoom</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2002"/>
+        <source>Zoom in</source>
+        <comment>View action</comment>
+        <translation>Zoom avant</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2010"/>
+        <source>Zoom out</source>
+        <comment>View action</comment>
+        <translation>Zoom arrière</translation>
+    </message>
+    <message>
+        <source>Show Note Editor</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Afficher l&apos;éditeur de note</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2110"/>
+        <source>History Window</source>
+        <comment>View action</comment>
+        <translation>Historique</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2124"/>
+        <source>Antialiasing</source>
+        <comment>View action</comment>
+        <translation>Anti-aliasing</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2131"/>
+        <source>Smooth pixmap transformations</source>
+        <comment>View action</comment>
+        <translation>Transforme pixels Image : adoucissement</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2139"/>
+        <source>Next Map</source>
+        <comment>View action</comment>
+        <translation>Prochaine Carte</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2146"/>
+        <source>Previous Map</source>
+        <comment>View action</comment>
+        <translation>Carte précédente</translation>
+    </message>
+    <message>
+        <source>Modes when using modifiers</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation type="obsolete">Modes pendant l&apos;utilisation de modificateurs</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2178"/>
+        <source>Use modifier to color branches</source>
+        <comment>Mode modifier</comment>
+        <translation>Utiliser le modificateur pour copier</translation>
+    </message>
+    <message>
+        <source>Use modifier to copy</source>
+        <comment>Mode modifier</comment>
+        <translation type="obsolete">Utoiliser le modificateur pour copier</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2194"/>
+        <source>Use modifier to draw xLinks</source>
+        <comment>Mode modifier</comment>
+        <translation>Utiliser le modificateur pour tracer le XLink</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2213"/>
+        <location filename="../mainwindow.cpp" line="2216"/>
+        <location filename="../mainwindow.cpp" line="2219"/>
+        <location filename="../mainwindow.cpp" line="2223"/>
+        <location filename="../mainwindow.cpp" line="2226"/>
+        <location filename="../mainwindow.cpp" line="2229"/>
+        <location filename="../mainwindow.cpp" line="2233"/>
+        <location filename="../mainwindow.cpp" line="2236"/>
+        <source>Note</source>
+        <comment>SystemFlag</comment>
+        <translation>Note</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2239"/>
+        <source>URL to Document </source>
+        <comment>SystemFlag</comment>
+        <translation>URL vers Document</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2248"/>
+        <source>Map target</source>
+        <comment>SystemFlag</comment>
+        <translation>Carte Cible</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2251"/>
+        <source>Link to another vym map</source>
+        <comment>SystemFlag</comment>
+        <translation>Lien vers une autre carte cym</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2254"/>
+        <source>subtree is scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation>La sous-branche est enroulée</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2257"/>
+        <source>subtree is temporary scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation>la sous-branche est provisoirement enroulée</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2260"/>
+        <source>Hide object in exported maps</source>
+        <comment>SystemFlag</comment>
+        <translation>Cacher les objets dans les cartes exportées</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2350"/>
+        <source>I just love...</source>
+        <comment>Standardflag</comment>
+        <translation>J&apos;aime un peu...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2369"/>
+        <source>Important</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Important</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2376"/>
+        <source>Priority</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Priorité</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2381"/>
+        <source>Back</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Retour</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2389"/>
+        <source>Look here</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Regarde Ici</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2393"/>
+        <source>Dangerous</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Dangereux</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2401"/>
+        <source>Flag</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Indicateur</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2406"/>
+        <source>Home</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Maison</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2410"/>
+        <source>Telephone</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Téléphonne</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2414"/>
+        <source>Music</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Musique</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2418"/>
+        <source>Mailbox</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Boite aux lettres</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2422"/>
+        <source>Maix</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Maix</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2426"/>
+        <source>Password</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Mot-de-passe</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2430"/>
+        <source>To be improved</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Doit être amélioré</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2434"/>
+        <source>Stop</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Stop</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2438"/>
+        <source>Magic</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Magique</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2442"/>
+        <source>To be discussed</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Doit être discutté</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2446"/>
+        <source>Reminder</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Aide mémoire</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2450"/>
+        <source>Excellent</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Excellent</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2454"/>
+        <source>Linux</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Linux</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2458"/>
+        <source>Sweet</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Adouci</translation>
+    </message>
+    <message>
+        <source>Flags toolbar</source>
+        <translation type="vanished">Barre d&apos;outil des Imagettes</translation>
+    </message>
+    <message>
+        <source>Network shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Raccourci d&apos;adresse réseau</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2514"/>
+        <source>Settings</source>
+        <translation>Paramètres</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2518"/>
+        <source>Check for release notes and updates</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2531"/>
+        <source>Set application to open pdf files</source>
+        <comment>Settings action</comment>
+        <translation>Définir une application pour ouvrir les fichiers PDF</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2535"/>
+        <source>Set application to open external links</source>
+        <comment>Settings action</comment>
+        <translation>Définir une application pour ouvrir les liens externes</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2539"/>
+        <source>Set application to zip/unzip files</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2543"/>
+        <source>Set path for macros</source>
+        <comment>Settings action</comment>
+        <translation>Définir le répertoire des macros</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2547"/>
+        <source>Set number of undo levels</source>
+        <comment>Settings action</comment>
+        <translation>Définir le nombre d&apos;annulations possibles</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2553"/>
+        <source>Autosave</source>
+        <comment>Settings action</comment>
+        <translation>Sauvegarde automatique</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2559"/>
+        <source>Autosave time</source>
+        <comment>Settings action</comment>
+        <translation>Intervalle de sauvegarde automatique</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2572"/>
+        <source>Write backup file on save</source>
+        <comment>Settings action</comment>
+        <translation>Enregistrer la version précédente avant sauvegarde</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2581"/>
+        <source>Edit branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>Modifier une branche après son ajout</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2587"/>
+        <source>Select branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>Sélectionner une branche après son ajout</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2593"/>
+        <source>Select existing heading</source>
+        <comment>Settings action</comment>
+        <translation>Sélectionner un en-tête existant</translation>
+    </message>
+    <message>
+        <source>Delete key</source>
+        <comment>Settings action</comment>
+        <translation type="obsolete">Touche suppr</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2599"/>
+        <source>Exclusive flags</source>
+        <comment>Settings action</comment>
+        <translation>Imagettes exclusives</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2605"/>
+        <source>Use hide flags</source>
+        <comment>Settings action</comment>
+        <translation>Utiliser l&apos;imagette : cacher</translation>
+    </message>
+    <message>
+        <source>Task editor: Set number of parents</source>
+        <comment>Settings action</comment>
+        <translation type="vanished">Edteur de taches : fixer le nombre de parents</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2623"/>
+        <source>Animation</source>
+        <comment>Settings action</comment>
+        <translation>Animation</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2630"/>
+        <source>Automatic layout</source>
+        <comment>Settings action</comment>
+        <translation>Disposition automatique</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2641"/>
+        <source>Test</source>
+        <translation>Test</translation>
+    </message>
+    <message>
+        <source>Test shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Test des raccourcis</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2673"/>
+        <source>&amp;Help</source>
+        <comment>Help menubar entry</comment>
+        <translation>&amp;Aide</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2676"/>
+        <source>Open VYM Documentation (pdf) </source>
+        <comment>Help action</comment>
+        <translation>Ouvrir la documentation VYM (pdf) </translation>
+    </message>
+    <message>
+        <source>Help shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Raccourci d&apos;aide</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2680"/>
+        <source>Open VYM example maps </source>
+        <comment>Help action</comment>
+        <translation>Ouvrir des exemples de carte VYM</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2685"/>
+        <source>Download and show release notes</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2689"/>
+        <source>Check, if updates are available</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2694"/>
+        <source>Show keyboard shortcuts</source>
+        <comment>Help action</comment>
+        <translation>Afficher les touches de raccourci</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2702"/>
+        <source>About VYM</source>
+        <comment>Help action</comment>
+        <translation>À propos de VYM</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2706"/>
+        <source>About QT</source>
+        <comment>Help action</comment>
+        <translation>À propos de QT</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2735"/>
+        <source>Remove</source>
+        <comment>Context menu name</comment>
+        <translation>Enlever</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2755"/>
+        <source>Tasks</source>
+        <comment>Context menu</comment>
+        <translation>Tâches</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2772"/>
+        <source>References (URLs, vymLinks, ...)</source>
+        <comment>Context menu name</comment>
+        <translation>Références (URLs, vymLinks, ...)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2796"/>
+        <source>XLinks</source>
+        <comment>Menu for file actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2798"/>
+        <source>Edit XLink</source>
+        <comment>Context menu name</comment>
+        <translation>Editer l&apos;XLink</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2803"/>
+        <source>Follow XLink</source>
+        <comment>Context menu</comment>
+        <translation>Suivre l&apos;XLink</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2809"/>
+        <source>Follow XLink</source>
+        <comment>Context menu name</comment>
+        <translation>Suivre l&apos;XLink</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2818"/>
+        <source>Save image</source>
+        <comment>Context action</comment>
+        <translation>Enregistrer l&apos;image</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2922"/>
+        <source>Undo and clipboard toolbar</source>
+        <comment>Toolbar for redo/undo and clipboard</comment>
+        <translation>Barre des outils : annulation action et presse-papiers</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2948"/>
+        <source>Selection toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation>Barre d&apos;outils de sélection</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2956"/>
+        <source>URLs and vymLinks toolbar</source>
+        <comment>Toolbar for URLs and vymlinks</comment>
+        <translation>Barre outils de manipulation URL et vymLinks</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2964"/>
+        <source>Colors toolbar</source>
+        <comment>Colors toolbar name</comment>
+        <translation>Barre d&apos;outils couleurs</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3264"/>
+        <source>Loading: %1</source>
+        <comment>Progress dialog while loading maps</comment>
+        <translation>Chargement: %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3314"/>
+        <source>or</source>
+        <comment>File Dialog</comment>
+        <translation>ou</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3444"/>
+        <source>Save map as</source>
+        <translation>Enregistrer la carte sous</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3563"/>
+        <source>Load Freemind map</source>
+        <translation>Charger la carte Freemind</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <source>Export as CSV</source>
+        <translation>Exporter en format CSV</translation>
+    </message>
+    <message>
+        <source>Export as org-mode</source>
+        <translation type="obsolete">Exporter en format org-mode</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3994"/>
+        <source>Enter URL:</source>
+        <translation>Entrer l&apos;URL:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4017"/>
+        <source>HTML</source>
+        <comment>Filedialog</comment>
+        <translation>HTML</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4018"/>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation>Texte</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4019"/>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation>Feuille de calcul</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4020"/>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation>Document texte</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4021"/>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation>Images</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4025"/>
+        <source>Set URL to a local file</source>
+        <translation>Définir l&apos;URL d&apos;un fichier local</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4183"/>
+        <location filename="../mainwindow.cpp" line="4185"/>
+        <source>Link to another map</source>
+        <translation>Lien vers une autre carte</translation>
+    </message>
+    <message>
+        <source>Task</source>
+        <comment>Task dialog</comment>
+        <translation type="obsolete">Tâches</translation>
+    </message>
+    <message>
+        <source>Task sleep (days):</source>
+        <comment>Task dialog</comment>
+        <translation type="obsolete">Tâche au repos pendant (jours):</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5028"/>
+        <source>Directory with vym macros:</source>
+        <translation>Répertoire contenant les macros vym:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5041"/>
+        <source>Number of undo/redo levels:</source>
+        <translation>Nombre possible d&apos;actions annuler/refaire :</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5046"/>
+        <source>Settings have been changed. The next map opened will have &quot;%1&quot; undo/redo levels</source>
+        <translation>Les paramètres ont été changés. La prochaine carte ouverte permettra &quot;%1&quot; niveaux d&apos;actions annuler/refaire</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5066"/>
+        <source>Number of seconds before autosave:</source>
+        <translation>Nombre de secondes avant sauvegarde automatique:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5098"/>
+        <source>Number of parents shown for a task:</source>
+        <translation>Nombre de parents affichés pour une tache:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5433"/>
+        <source>History for %1</source>
+        <comment>Window Caption</comment>
+        <translation>Historique de %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5788"/>
+        <source>Couldn&apos;t find the documentation %1 in:
+%2</source>
+        <translation>Documentation %1 introuvable dans:
+%2</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5816"/>
+        <source>Load vym example map</source>
+        <translation>Charger l&apos;exemple de carte vym</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation type="obsolete">N&apos;as pas pu trouver une macro dans %1.</translation>
+    </message>
+    <message>
+        <source>Set directory for vym macros</source>
+        <translation type="obsolete">Choisir le répertoire des macros vym</translation>
+    </message>
+</context>
+<context>
+    <name>MapEditor</name>
+    <message>
+        <source>Critical Parse Error</source>
+        <translation type="obsolete">Erreur critique d&apos;analyse syntaxique</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="obsolete">Écraser</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Annuler</translation>
+    </message>
+    <message>
+        <source>Critical Export Error</source>
+        <translation type="obsolete">Erreur critique d&apos;exportation</translation>
+    </message>
+    <message>
+        <source>Critical Parse Error by reading backupFile</source>
+        <translation type="obsolete">Erreur critique d&apos;analyse syntaxique en lisant le fichier de sauvegarde</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">Erreur critique</translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation type="obsolete">Entrer l&apos;URL:</translation>
+    </message>
+    <message>
+        <source>vym map</source>
+        <translation type="obsolete">schéma VYM</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <translation type="obsolete">Images</translation>
+    </message>
+    <message>
+        <source>vym - save image as</source>
+        <translation type="obsolete">VYM - Sauver l&apos;image comme</translation>
+    </message>
+    <message>
+        <source>Critical Import Error</source>
+        <translation type="obsolete">Erreur critique d&apos;importation</translation>
+    </message>
+    <message>
+        <source>New Map</source>
+        <comment>Heading of mapcenter in new map</comment>
+        <translation type="obsolete">Nouveau schéma</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="obsolete">Le fichier %1 existe déjà.
+Voulez-vous l&apos;écraser?</translation>
+    </message>
+    <message>
+        <source>MapEditor::exportXML couldn&apos;t open %1</source>
+        <translation type="obsolete">MapEditor::exportXML n&apos;a pas pu ouvrir %1</translation>
+    </message>
+    <message>
+        <source>Temporary directory %1 used for undo is gone. 
+I will create a new one, but at the moment no undo is available.
+Maybe you want to reload your original data.
+
+Sorry for any inconveniences.</source>
+        <translation type="obsolete">Le répertoire temporaire %1 utilisé pour la fonction &quot;défaire&quot; a disparu.
+Je vais en créer un nouveau, mais pour le moment la fonction &quot;défaire&quot; n&apos;est plus disponible.
+Peut-être voulez-vous recharger vos données originales.
+
+Désolé pour le dérangement.</translation>
+    </message>
+    <message>
+        <source>Cannot find the directory %1</source>
+        <translation type="obsolete">Ne peut ouvrir le répertoire %1</translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation type="obsolete">Lien vers un autre schéma</translation>
+    </message>
+    <message>
+        <source>Load image</source>
+        <translation type="obsolete">Charger une image</translation>
+    </message>
+    <message>
+        <source>Save image as %1</source>
+        <translation type="obsolete">Sauver l&apos;image comme %1</translation>
+    </message>
+    <message>
+        <source>Choose directory structure to import</source>
+        <translation type="obsolete">Choisir la structure de répertoire à importer</translation>
+    </message>
+    <message>
+        <source>unnamed</source>
+        <translation type="obsolete">sans nom</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="obsolete">Avertissement</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find script %1
+to notifiy Browsers of changed bookmarks.</source>
+        <translation type="obsolete">N&apos;a pas pu trouver le script %1
+pour notifier le changement de signets aux navigateurs.</translation>
+    </message>
+    <message>
+        <source>Critical Load Error</source>
+        <translation type="obsolete">Erreur grave de chargement</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="obsolete">Incapable de trouver une carte (*.xml) dans une archive .vym.
+</translation>
+    </message>
+    <message>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="obsolete">La carte %1
+n&apos;utilise pas le format compressé de vym.
+Si on l&apos;écrit  non compressée, on va écrire les images et les indicateurs
+et pourra écraser des fichiers dans le répertoire
+Voulez vous écrire la carte </translation>
+    </message>
+    <message>
+        <source>compressed (vym default)</source>
+        <translation type="obsolete">compressé (défaut VYM)</translation>
+    </message>
+    <message>
+        <source>uncompressed</source>
+        <translation type="obsolete">décompressé</translation>
+    </message>
+    <message>
+        <source>Save Error</source>
+        <translation type="obsolete">Sauver l&apos;erreur</translation>
+    </message>
+    <message>
+        <source>Export XML to directory</source>
+        <translation type="obsolete">Exporter le XML vers le répertoire</translation>
+    </message>
+    <message>
+        <source>Could not read %1</source>
+        <translation type="obsolete">N&apos;a pas pu lire %1</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Images</translation>
+    </message>
+    <message>
+        <source>Save image</source>
+        <translation type="obsolete">Sauver l&apos;image</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="43"/>
+        <source>Map Editor</source>
+        <comment>Shortcut scope</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Select previous</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Sélection précédente</translation>
+    </message>
+    <message>
+        <source>Select next</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Sélection suivante</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="111"/>
+        <location filename="../mapeditor.cpp" line="116"/>
+        <source>Edit heading</source>
+        <comment>MapEditor</comment>
+        <translation>Éditer l&apos;en-tête</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>MapEditor</comment>
+        <translation type="vanished">Sauvegarder</translation>
+    </message>
+    <message>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Cou&amp;per</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Copier</translation>
+    </message>
+    <message>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Co&amp;ller</translation>
+    </message>
+    <message>
+        <source>Repeat last export (%1)</source>
+        <translation type="obsolete">Repeter le dernier export (%1)</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="510"/>
+        <source>Print vym map</source>
+        <comment>MapEditor</comment>
+        <translation>Imprimer la carte vym</translation>
+    </message>
+</context>
+<context>
+    <name>NoteEditor</name>
+    <message>
+        <location filename="../noteeditor.cpp" line="13"/>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation>Éditeur de note</translation>
+    </message>
+</context>
+<context>
+    <name>Process</name>
+    <message>
+        <source>Critical Error</source>
+        <translation type="vanished">Erreur Critique</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation type="vanished">Echec lancement %1</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="vanished">%1 ne s&apos;est pas terminé normalement</translation>
+    </message>
+</context>
+<context>
+    <name>QObject</name>
+    <message>
+        <source>This is not an image.</source>
+        <translation type="obsolete">Ce n&apos;est pas une image.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <location filename="../exports.cpp" line="381"/>
+        <location filename="../exports.cpp" line="511"/>
+        <location filename="../exports.cpp" line="954"/>
+        <location filename="../exports.cpp" line="1048"/>
+        <location filename="../exports.cpp" line="1128"/>
+        <location filename="../exports.cpp" line="1236"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <location filename="../exports.cpp" line="1333"/>
+        <location filename="../exports.cpp" line="1343"/>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Critical Export Error</source>
+        <translation>Erreur Critique d&apos;Exportation</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="956"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <source>Could not write %1</source>
+        <translation>Echec écriture %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="147"/>
+        <source>Exporting to %1 will overwrite the existing file:
+%2</source>
+        <translation>Exporter %1 écrasera le fichier suivant : %2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="146"/>
+        <source>Warning: Overwriting file</source>
+        <translation>Attention : Ecrasement du fichier</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <source>Could not export as AO to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="381"/>
+        <source>Could not export as ASCII to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="503"/>
+        <source>Export as CSV</source>
+        <translation>Exporter en format CSV</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="511"/>
+        <source>Could not export as CSV to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="837"/>
+        <source>Contents:</source>
+        <comment>Used in HTML export</comment>
+        <translation>Contenu:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="893"/>
+        <source>Export aborted.</source>
+        <translation>Echec de l&apos;export.</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <comment>ExportHTML</comment>
+        <translation type="obsolete">Avertissement</translation>
+    </message>
+    <message>
+        <source>Trying to load stylesheet:</source>
+        <translation type="obsolete">Essai de chargement de la feuille de style:</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <comment>ExportHTML</comment>
+        <translation type="obsolete">N&apos;a pas pu ouvrir %1</translation>
+    </message>
+    <message>
+        <source>Trying to save stylesheet:</source>
+        <translation type="obsolete">Essai de sauvegarde de la feuille de style:</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <translation type="obsolete">N&apos;a pas pu ouvrir %1</translation>
+    </message>
+    <message>
+        <source>Trying to load small icon for URLs:</source>
+        <translation type="obsolete">Essai de chargement d&apos;icone de petite taille pour les URLs:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="934"/>
+        <source>Trying to create directory for flags:</source>
+        <translation>Essai de création du répertoire des Imagettes:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="935"/>
+        <source>Could not create %1</source>
+        <translation>Echec création %1</translation>
+    </message>
+    <message>
+        <source>Trying to save small icon for URLs:</source>
+        <translation type="obsolete">Essai de sauvegarde d&apos;une petite icone pour les URLs:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="909"/>
+        <location filename="../exports.cpp" line="933"/>
+        <location filename="../exports.cpp" line="944"/>
+        <source>Critical</source>
+        <translation>Critique</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="910"/>
+        <source>Could not find stylesheet %1</source>
+        <translation>La feuille de style %1 est introuvable</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="920"/>
+        <source>Error</source>
+        <comment>ExportHTML</comment>
+        <translation>Erreur</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="921"/>
+        <source>Could not copy
+%1 to
+%2</source>
+        <comment>ExportHTML</comment>
+        <translation>Echec copie 
+%1 sur
+%2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="945"/>
+        <source>Could not copy %1 to %2</source>
+        <translation>Echec copie %1 sur %2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="955"/>
+        <source>Trying to save HTML file:</source>
+        <translation>Essai de sauvegarde du fichier HTML:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="236"/>
+        <location filename="../exports.cpp" line="382"/>
+        <location filename="../exports.cpp" line="512"/>
+        <location filename="../exports.cpp" line="957"/>
+        <location filename="../exports.cpp" line="1049"/>
+        <location filename="../exports.cpp" line="1130"/>
+        <location filename="../exports.cpp" line="1309"/>
+        <source>Export failed.</source>
+        <translation>Echec de l&apos;export.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1048"/>
+        <source>Could not export as OrgMode to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1129"/>
+        <source>Could not export as LaTeX to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1189"/>
+        <source>Export as LibreOffice Impress presentation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1236"/>
+        <source>No objects in map!</source>
+        <translation>Pas d&apos;objet dans la carte!</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1333"/>
+        <source>Couldn&apos;t read settings from &quot;%1&quot;</source>
+        <translation>Pas de paramètre trouvé dans &quot;%1&quot;</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1343"/>
+        <source>Check &quot;%1&quot; in
+%2</source>
+        <translation>Vérifier &quot;%1&quot; in
+%2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Could not read %1</source>
+        <translation>Echec lecture %1</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="257"/>
+        <location filename="../file.cpp" line="272"/>
+        <location filename="../file.cpp" line="296"/>
+        <location filename="../file.cpp" line="305"/>
+        <location filename="../file.cpp" line="313"/>
+        <location filename="../file.cpp" line="323"/>
+        <location filename="../file.cpp" line="332"/>
+        <location filename="../file.cpp" line="340"/>
+        <location filename="../file.cpp" line="347"/>
+        <location filename="../file.cpp" line="356"/>
+        <location filename="../file.cpp" line="377"/>
+        <location filename="../file.cpp" line="400"/>
+        <location filename="../file.cpp" line="410"/>
+        <location filename="../file.cpp" line="423"/>
+        <location filename="../main.cpp" line="411"/>
+        <location filename="../xsltproc.cpp" line="78"/>
+        <location filename="../xsltproc.cpp" line="84"/>
+        <source>Critical Error</source>
+        <translation>Erreur critique</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="258"/>
+        <source>Couldn&apos;t move existing file out of the way before saving.</source>
+        <translation>Le fichier déjà existant n&apos;as pu être déplacé ailleurs avant la sauvegarde.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="273"/>
+        <location filename="../file.cpp" line="378"/>
+        <source>Couldn&apos;t start tool to decompress data.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="297"/>
+        <source>Couldn&apos;t start zip to compress data.</source>
+        <translation>Echec du lancement de zip pour compresser les données.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="306"/>
+        <source>zip didn&apos;t exit normally</source>
+        <translation>zip ne s&apos;est pas terminé normalement</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="324"/>
+        <source>Couldn&apos;t rename %1 back to %2</source>
+        <translation>Ne peux renommer  %1 vers %2</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="333"/>
+        <source>Couldn&apos;t remove target of old symbolic link %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="341"/>
+        <source>Couldn&apos;t rename output to target of old symbolic link %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="348"/>
+        <source>Couldn&apos;t link from %1 to target of old symbolic link %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="357"/>
+        <source>Saved %1, but couldn&apos;t remove %2</source>
+        <translation>%1 sauvegardé, mais ne peux effacer %2</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="401"/>
+        <source>Couldn&apos;t start unzip to decompress data.</source>
+        <translation>Echec lancement unzip pour décompresser les données.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="411"/>
+        <source>unzip didn&apos;t exit normally</source>
+        <translation>unzip ne s&apos;est pas terminé normalement</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="79"/>
+        <source>Could not start %1</source>
+        <translation>Echec lancement %1</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="85"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation>%1 ne s&apos;est pas terminé normalement</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="obsolete">Le fichier %1 existe déjà.
+Voulez-vous l&apos;écraser?</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="90"/>
+        <source>Overwrite</source>
+        <translation>Écraser</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="91"/>
+        <source>Cancel</source>
+        <translation>Annuler</translation>
+    </message>
+    <message>
+        <source>Sorry, no preview for
+multiple selected files.</source>
+        <translation type="obsolete">Navré, pas de prévisualisation
+pour plusieurs fichiers sélectionnés.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="560"/>
+        <location filename="../exports.cpp" line="590"/>
+        <source>Exporting the %1 bookmarks will overwrite
+your existing bookmarks file.</source>
+        <translation>Exporter les signets %1 va écraser
+votre fichier de signets existant.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="561"/>
+        <location filename="../exports.cpp" line="591"/>
+        <source>Warning: Overwriting %1 bookmarks</source>
+        <translation>Attention : Ecrasement des signets %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="579"/>
+        <location filename="../macros.cpp" line="39"/>
+        <location filename="../main.cpp" line="377"/>
+        <source>Warning</source>
+        <translation>Attention</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="580"/>
+        <source>Couldn&apos;t find script %1
+to notifiy Browsers of changed bookmarks.</source>
+        <translation>N&apos;a pas pu trouver le script %1
+pour avertir les navigateurs de la mise à jour des signets.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="56"/>
+        <location filename="../imports.cpp" line="18"/>
+        <location filename="../main.cpp" line="475"/>
+        <location filename="../scripteditor.cpp" line="77"/>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Error</source>
+        <translation>Erreur</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="57"/>
+        <location filename="../imports.cpp" line="19"/>
+        <source>Couldn&apos;t access temporary directory
+</source>
+        <translation>Ne peux accéder au répertoire temporaire</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <location filename="../exports.cpp" line="373"/>
+        <source>Export as ASCII</source>
+        <translation>Exporter en ASCII</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <source>(still experimental)</source>
+        <translation>(toujours expérimental)</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="84"/>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <comment>write directory</comment>
+        <translation>Le répertoire %1 n&apos;est pas vide.
+Acceptez-vous l&apos;écrasement éventuel de son contenu ?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3792"/>
+        <source>No Bugzilla client found.  For openSUSE you can install by (running as root):
+
+</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation>Pas de client Bugzilla trouvé. Pour openSUSE vous pouvez l&apos;installer en tapant (en root):</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3797"/>
+        <source>Alternatively you can also add the repository
+and install the perl module for Bugzilla access using YaST</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation>Autre solution : vous pouvez ajouter le dépot et
+installer le module perl pour accéder à Bugzilla grace à YaST</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3800"/>
+        <source>Warning: Couldn&apos;t find Bugzilla client</source>
+        <comment>VymModel</comment>
+        <translation>Attention: client Bugzilla introuvable</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <comment>Shortcut group</comment>
+        <translation type="obsolete">Éditeur de note</translation>
+    </message>
+    <message>
+        <source>Heading Editor</source>
+        <comment>Shortcut group</comment>
+        <translation type="obsolete">Éditeur d&apos;en-tête</translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="412"/>
+        <source>Couldn&apos;t find tool to unzip data. Please download and install 7z and set path in Settings menu:
+ </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="476"/>
+        <location filename="../scripteditor.cpp" line="78"/>
+        <source>Couldn&apos;t open &quot;%1&quot;
+%2.</source>
+        <translation>Echec ouverture &quot;%1&quot;
+%2.</translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="80"/>
+        <source>Warning: Version Problem</source>
+        <translation>Attention : problème de version</translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="81"/>
+        <source>&lt;h3&gt;Map is newer than VYM&lt;/h3&gt;&lt;p&gt;The map you are just trying to load was saved using vym %1. The version of this vym is %2. If you run into problems after pressing the ok-button below, updating vym should help.&lt;/p&gt;</source>
+        <translation>&lt;h3&gt;La Carte est d&apos;une version plus récente que VYM&lt;/h3&gt;&lt;p&gt;La carte que vous essayez de charger a été sauvée en utilisant vym %1. La version présente de vym est %2. Si vous rencontrez des erreurs en validant le bouton OK, mettre à jour vym devrait vous aider.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="40"/>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation>Macro introuvable dans %1.</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>SVP, utilisez le menu Paramètres -&gt;</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Set directory for vym macros</source>
+        <translation>Définir le répertoire des macros vym</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Couldn&apos;t save &quot;%1&quot;</source>
+        <translation>Echec sauvegarde &quot;%1&quot;</translation>
+    </message>
+</context>
+<context>
+    <name>ScriptEditor</name>
+    <message>
+        <location filename="../scripteditor.ui" line="14"/>
+        <source>Form</source>
+        <translation>Forme</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="49"/>
+        <source>Tab 1</source>
+        <translation>Onglet 1</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="55"/>
+        <source>Save to selected slide</source>
+        <translation>Sauvegarder dans la diapo sélectionnée</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="91"/>
+        <location filename="../scripteditor.ui" line="145"/>
+        <source>Run</source>
+        <translation>Lancer</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="105"/>
+        <source>Tab 2</source>
+        <translation>Onglet 2</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="121"/>
+        <source>Current key:</source>
+        <translation>Touche courante:</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="131"/>
+        <source>Load</source>
+        <translation>Charger</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="138"/>
+        <source>Save</source>
+        <translation>Sauvegarder</translation>
+    </message>
+    <message>
+        <source>Save slide</source>
+        <translation type="obsolete">Enregister la diapositive en cours</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Warning</source>
+        <translation>Attention</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save script into slide!</source>
+        <translation type="obsolete">Impossible de sauvegarder le script dans la diapositive!</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find slide to save script!</source>
+        <translation type="obsolete">Impossible de trouver une diapositive pour sauvegarder le script!</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="45"/>
+        <source>Slide</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation>Diapo</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="46"/>
+        <source>Macro</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation>Macro</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="65"/>
+        <source>Save</source>
+        <comment>ScriptEditor</comment>
+        <translation>Sauvegarder</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <source>Couldn&apos;t get model to save script into slide!</source>
+        <translation>Pas de modèle disponible pour enregistrer le script dans la diapo!</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Couldn&apos;t find slide to save script into slide!</source>
+        <translation>Pas de diapo disponible pour enregistrer le script!</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="143"/>
+        <source>Save script</source>
+        <translation>Enregistrer le script</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="155"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation>Le fichier %1
+existe déjà.
+Voulez-vous l&apos;écraser?</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="160"/>
+        <source>Overwrite</source>
+        <translation>Écraser</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="161"/>
+        <source>Cancel</source>
+        <translation>Annuler</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="184"/>
+        <source>Load script</source>
+        <translation>Charger le script</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="194"/>
+        <source>Error</source>
+        <translation>Erreur</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="195"/>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation>Echec ouverture %1.</translation>
+    </message>
+</context>
+<context>
+    <name>ShowTextDialog</name>
+    <message>
+        <source>VYM - Info</source>
+        <translation type="obsolete">VYM - Info</translation>
+    </message>
+    <message>
+        <location filename="../showtextdialog.ui" line="50"/>
+        <source>Close</source>
+        <translation>Fermer</translation>
+    </message>
+    <message>
+        <source>History of %1</source>
+        <translation type="obsolete">Historique de %1</translation>
+    </message>
+    <message>
+        <location filename="../showtextdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>Dialogue</translation>
+    </message>
+</context>
+<context>
+    <name>SimpleScriptEditor</name>
+    <message>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation type="obsolete">Le fichier %1 existe déjà.
+Voulez-vous l&apos;écraser? {1
+?}</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="obsolete">Écraser</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Annuler</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <translation type="obsolete">Sauver</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <translation type="obsolete">Ouvrir</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Fermer</translation>
+    </message>
+</context>
+<context>
+    <name>TaskEditor</name>
+    <message>
+        <location filename="../taskeditor.cpp" line="38"/>
+        <source>Current map</source>
+        <comment>TaskEditor</comment>
+        <translation>Carte active</translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="45"/>
+        <source>Active tasks</source>
+        <comment>TaskEditor</comment>
+        <translation>Tâches actives</translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="52"/>
+        <source>New tasks</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="68"/>
+        <location filename="../taskeditor.cpp" line="73"/>
+        <source>Edit heading</source>
+        <comment>TaskEditor</comment>
+        <translation>Éditeur d&apos;en-tête</translation>
+    </message>
+</context>
+<context>
+    <name>TaskModel</name>
+    <message>
+        <location filename="../taskmodel.cpp" line="127"/>
+        <source>Prio</source>
+        <comment>TaskEditor</comment>
+        <translation>Priorité</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="129"/>
+        <source>Status</source>
+        <comment>TaskEditor</comment>
+        <translation>Statut</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="131"/>
+        <source>Age total</source>
+        <comment>TaskEditor</comment>
+        <translation>Depuis début</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="133"/>
+        <source>Age mod.</source>
+        <comment>TaskEditor</comment>
+        <translation>Depuis modif.</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="135"/>
+        <source>Sleep</source>
+        <comment>TaskEditor</comment>
+        <translation>Mise au repos pdt</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="137"/>
+        <source>Map</source>
+        <comment>TaskEditor</comment>
+        <translation>Carte</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="139"/>
+        <source>Task</source>
+        <comment>TaskEditor</comment>
+        <translation>Tâche</translation>
+    </message>
+</context>
+<context>
+    <name>TextEditor</name>
+    <message>
+        <source>&amp;File</source>
+        <translation type="obsolete">&amp;Fichier</translation>
+    </message>
+    <message>
+        <source>Import</source>
+        <translation type="obsolete">Importer</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="273"/>
+        <source>&amp;Import...</source>
+        <translation>&amp;Importer...</translation>
+    </message>
+    <message>
+        <source>Export Note (HTML)</source>
+        <translation type="obsolete">Exporter la note (HTML)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="283"/>
+        <source>&amp;Export...</source>
+        <translation>&amp;Exporter...</translation>
+    </message>
+    <message>
+        <source>Export Note As (HTML) </source>
+        <translation type="obsolete">Exporter la note comme (HTML) </translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="293"/>
+        <source>Export &amp;As... (HTML)</source>
+        <translation>Exporter sous (&amp;A)... (HTML)</translation>
+    </message>
+    <message>
+        <source>Export Note As (ASCII) </source>
+        <translation type="obsolete">Exporter la note comme (ASCII) </translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="298"/>
+        <source>Export &amp;As...(ASCII)</source>
+        <translation>Exporter sous (&amp;A).. (ASCII)</translation>
+    </message>
+    <message>
+        <source>Print Note</source>
+        <translation type="obsolete">Imprimer la note</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="308"/>
+        <source>&amp;Print...</source>
+        <translation>Im&amp;primer...</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <translation type="vanished">&amp;Éditer</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <translation type="obsolete">Défaire</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="332"/>
+        <source>&amp;Undo</source>
+        <translation>Ann&amp;uler Action</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="obsolete">Refaire</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="341"/>
+        <source>&amp;Redo</source>
+        <translation>&amp;Refaire Action</translation>
+    </message>
+    <message>
+        <source>Select and copy all</source>
+        <translation type="obsolete">Sélectionner et copier tout</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="351"/>
+        <source>Select and copy &amp;all</source>
+        <translation>Sélectionner et &amp;tout copier</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <translation type="obsolete">Copier</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="359"/>
+        <source>&amp;Copy</source>
+        <translation>&amp;Copier</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="obsolete">Couper</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="368"/>
+        <source>Cu&amp;t</source>
+        <translation>Cou&amp;per</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <translation type="obsolete">Coller</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="377"/>
+        <source>&amp;Paste</source>
+        <translation>Co&amp;ller</translation>
+    </message>
+    <message>
+        <source>Delete all</source>
+        <translation type="obsolete">Effacer tout</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="316"/>
+        <source>&amp;Delete All</source>
+        <translation>Effacer tout (&amp;D)</translation>
+    </message>
+    <message>
+        <source>Convert paragraphs to linebreaks</source>
+        <translation type="obsolete">Convertir les paragraphes en sauts de ligne</translation>
+    </message>
+    <message>
+        <source>&amp;Convert Paragraphs</source>
+        <translation type="obsolete">&amp;Convertir les paragraphes</translation>
+    </message>
+    <message>
+        <source>Join all lines of a paragraph</source>
+        <translation type="obsolete">Joindre toutes les lignes d&apos;un paragraphe</translation>
+    </message>
+    <message>
+        <source>&amp;Join lines</source>
+        <translation type="obsolete">&amp;Joindre les lignes</translation>
+    </message>
+    <message>
+        <source>Toggle font hint for the whole text</source>
+        <translation type="obsolete">Basculer l&apos;indicateur de fonte pour tut le document</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="396"/>
+        <source>&amp;Font hint</source>
+        <translation>&amp;Indicateur de fonte</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="417"/>
+        <source>Fonts</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>Fontes</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="443"/>
+        <source>Format</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>Format</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="448"/>
+        <source>&amp;Color...</source>
+        <translation>&amp;Couleur...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="454"/>
+        <source>&amp;Bold</source>
+        <translation>Gras (&amp;B)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="464"/>
+        <source>&amp;Italic</source>
+        <translation>&amp;Italique</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="474"/>
+        <source>&amp;Underline</source>
+        <translation>So&amp;uligner</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="512"/>
+        <source>&amp;Left</source>
+        <translation>&amp;Gauche</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="518"/>
+        <source>C&amp;enter</source>
+        <translation>&amp;Centrer</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="524"/>
+        <source>&amp;Right</source>
+        <translation>&amp;Droite</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="530"/>
+        <source>&amp;Justify</source>
+        <translation>&amp;Justifier</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="540"/>
+        <source>&amp;Settings</source>
+        <translation>Paramètre&amp;S</translation>
+    </message>
+    <message>
+        <source>Set fixed font</source>
+        <translation type="obsolete">Mettre une police fixe</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="543"/>
+        <source>Set &amp;fixed font</source>
+        <translation>Choisir une police à pas &amp;fixe</translation>
+    </message>
+    <message>
+        <source>Set variable font</source>
+        <translation type="obsolete">Mettre une police variable</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="548"/>
+        <source>Set &amp;variable font</source>
+        <translation>Choisir une police à pas &amp;variable</translation>
+    </message>
+    <message>
+        <source>Used fixed font by default</source>
+        <translation type="obsolete">Utiliser une police fixe par défaut</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="553"/>
+        <source>&amp;fixed font is default</source>
+        <translation>Police à pas &amp;fixe par défaut</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="704"/>
+        <source>Export Note to single file</source>
+        <translation>Exporter la Note dans un fichier indépendant</translation>
+    </message>
+    <message>
+        <source>The file </source>
+        <translation type="obsolete">Le fichier </translation>
+    </message>
+    <message>
+        <source> exists already. Do you want to overwrite it?</source>
+        <translation type="obsolete"> existes déjà. Voulez-vous l&apos;écraser?</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="724"/>
+        <location filename="../texteditor.cpp" line="800"/>
+        <source>Overwrite</source>
+        <translation>Écraser</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="725"/>
+        <location filename="../texteditor.cpp" line="801"/>
+        <source>Cancel</source>
+        <translation>Annuler</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t export note </source>
+        <translation type="obsolete">N&apos;a pas pu exporter la note </translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="785"/>
+        <source>Export Note to single file (ASCII)</source>
+        <translation>Exporter la note en un fichier unique (ASCII)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="488"/>
+        <source>Subs&amp;cript</source>
+        <translation>Indi&amp;ce</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="49"/>
+        <source>Text Editor</source>
+        <comment>Text Editor Window caption</comment>
+        <translation>Editeur de texte</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="271"/>
+        <location filename="../texteditor.cpp" line="325"/>
+        <location filename="../texteditor.cpp" line="389"/>
+        <source>Texteditor</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="329"/>
+        <source>Edi&amp;t</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="390"/>
+        <source>Font hints</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>Indicateur de fonte</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="498"/>
+        <source>Su&amp;perscript</source>
+        <translation>Ex&amp;posant</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="566"/>
+        <source>Note Editor</source>
+        <translation>Éditeur de note</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="392"/>
+        <source>F&amp;ormat</source>
+        <translation>F&amp;ormater</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="48"/>
+        <source>Ready</source>
+        <comment>Statusbar message</comment>
+        <translation>Prêt</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation type="obsolete">Éditeur de note</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="174"/>
+        <source>No filename available for this note.</source>
+        <comment>Statusbar message</comment>
+        <translation>Pas de nom de fichier disponible pour la note.</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="267"/>
+        <source>Note Actions</source>
+        <translation>Actions sur Note</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="269"/>
+        <source>&amp;Note</source>
+        <comment>Menubar</comment>
+        <translation>&amp;Note</translation>
+    </message>
+    <message>
+        <source>Export Note (HTML)</source>
+        <comment>Status tip for Note menu</comment>
+        <translation type="obsolete">Exporter la note (HTML)</translation>
+    </message>
+    <message>
+        <source>Export Note As (HTML) </source>
+        <comment>Status tip for Note Menu</comment>
+        <translation type="obsolete">Exporter la note comme (HTML) </translation>
+    </message>
+    <message>
+        <source>Export Note As (ASCII) </source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Exporter la note comme (ASCII) </translation>
+    </message>
+    <message>
+        <source>Print Note</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Imprimer la note</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="326"/>
+        <source>Edit Actions</source>
+        <translation>Editer les Actions</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Défaire</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Refaire</translation>
+    </message>
+    <message>
+        <source>Select and copy all</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Sélectionner et copier tout</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Copier</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Couper</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Coller</translation>
+    </message>
+    <message>
+        <source>Delete all</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Effacer tout</translation>
+    </message>
+    <message>
+        <source>Toggle font hint for the whole text</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Basculer l&apos;indicateur de fonte pour tut le document</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="407"/>
+        <source>&amp;Richtext</source>
+        <translation>En&amp;richir typo</translation>
+    </message>
+    <message>
+        <source>Set fixed font</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Mettre une police fixe</translation>
+    </message>
+    <message>
+        <source>Set variable font</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Mettre une police variable</translation>
+    </message>
+    <message>
+        <source>Used fixed font by default</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Utiliser une police fixe par défaut</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="719"/>
+        <location filename="../texteditor.cpp" line="795"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation>Le fichier %1
+existe déjà.
+Voulez-vous l&apos;écraser?</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="743"/>
+        <source>Couldn&apos;t export note </source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation>Echec exportation de la note </translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="828"/>
+        <source>Print</source>
+        <comment>TextEditor</comment>
+        <translation>Imprimer</translation>
+    </message>
+</context>
+<context>
+    <name>TreeEditor</name>
+    <message>
+        <location filename="../treeeditor.cpp" line="27"/>
+        <source>Select upper object</source>
+        <comment>Tree Editor</comment>
+        <translation>Sélectionner l&apos;objet au-dessus</translation>
+    </message>
+    <message>
+        <location filename="../treeeditor.cpp" line="33"/>
+        <source>Select lower object</source>
+        <comment>Tree Editor</comment>
+        <translation>Sélectionner l&apos;objet au dessous</translation>
+    </message>
+</context>
+<context>
+    <name>VymModel</name>
+    <message>
+        <location filename="../vymmodel.cpp" line="126"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="149"/>
+        <source>unnamed</source>
+        <translation>sans nom</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="445"/>
+        <location filename="../vymmodel.cpp" line="481"/>
+        <location filename="../vymmodel.cpp" line="566"/>
+        <location filename="../vymmodel.cpp" line="622"/>
+        <source>Critical Parse Error</source>
+        <translation>Erreur critique d&apos;analyse syntaxique</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="501"/>
+        <location filename="../vymmodel.cpp" line="551"/>
+        <source>Critical Load Error</source>
+        <translation>Erreur critique de chargement</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="502"/>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation>Echec de création du répertoire temporaire avant le chargement</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="552"/>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation>carte (*.xml) introuvable dans l&apos;archive .vym.</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="980"/>
+        <source>unknown user</source>
+        <comment>Default for lockfiles of maps</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1003"/>
+        <source>Warning: Map already opended</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="671"/>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation>La carte %1
+n&apos;utilise pas le format de compression des fichiers vym.
+En sauvegardant en format non compressé, les images et les imagettes
+peuvent alors écraser les fichiers présents dans le répertoire.
+
+Voulez-vous sauvegarder la carte</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="679"/>
+        <source>compressed (vym default)</source>
+        <translation>compressé (option par défaut de VYM)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="680"/>
+        <source>uncompressed</source>
+        <translation>non compressé</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="681"/>
+        <location filename="../vymmodel.cpp" line="864"/>
+        <source>Cancel</source>
+        <translation>Annuler</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="710"/>
+        <location filename="../vymmodel.cpp" line="715"/>
+        <source>Save Error</source>
+        <translation>Echec de sauvegarde</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="711"/>
+        <source>%1
+could not be removed before saving</source>
+        <translation>%1
+n&quot;as pu être effacé avant la sauvegarde</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="716"/>
+        <source>%1
+could not be renamed before saving</source>
+        <translation>%1
+n&apos;as pu être renommé avant la sauvegarde</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="728"/>
+        <source>Critical Save Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="729"/>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation>Echec création du répertoire temporaire avant la sauvegarde</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <location filename="../vymmodel.cpp" line="5783"/>
+        <source>Images</source>
+        <translation>Images</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <source>All</source>
+        <comment>Filedialog</comment>
+        <translation>Tous</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="792"/>
+        <source>Load image</source>
+        <translation>Charger une image</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="844"/>
+        <source>Save image</source>
+        <translation>Sauvegarder une image</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="856"/>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation>Le fichier %1 existe déjà.
+Voulez-vous l&apos;écraser?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="863"/>
+        <source>Overwrite</source>
+        <translation>Écraser</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Critical Error</source>
+        <translation>Erreur Critique</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <source>Unsupported format in %1</source>
+        <translation>Format non supporté dans %1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation>Echec sauvegarde %1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Critical Import Error</source>
+        <translation>Erreur critique d&apos;importation</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Cannot find the directory %1</source>
+        <translation>Répertoire %1 introuvable</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="962"/>
+        <location filename="../vymmodel.cpp" line="965"/>
+        <source>Choose directory structure to import</source>
+        <translation>Choisir la structure de répertoire à importer</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="999"/>
+        <source>Map seems to be already opened in another vym instance!
+
+ Map is locked by &quot;%1&quot; on &quot;%2&quot;
+
+Please only delete the lockfile, if you are sure nobody else is currently working on this map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1008"/>
+        <source>Removed lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1014"/>
+        <source>Couldn&apos;t remove lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1021"/>
+        <source>Cannot create lockfile of map! It will be opened in readonly mode.
+
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1024"/>
+        <source>Warning</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1116"/>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation>Le fichier de la carte (sur le disque) a été modifié: %1
+
+...
+
+Voulez-vous recharger la carte à partir du nouveau fichier?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1123"/>
+        <source>Reload</source>
+        <translation>Recharger</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1124"/>
+        <source>Ignore</source>
+        <translation>Ignorer</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1013"/>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Warning</source>
+        <translation>Attention</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <source>Redo failed:
+%1</source>
+        <translation>La fonction &apos;Refaire&apos; a échoué:
+%1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1274"/>
+        <source>Autosave disabled during undo.</source>
+        <translation>Sauvegarde auto désactivée durant l&apos;annulation d&apos;action.</translation>
+    </message>
+    <message>
+        <source>Undo failed:
+%1</source>
+        <translation type="vanished">Echec annulation de l&apos;action:
+%1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2001"/>
+        <source>Note</source>
+        <comment>FindAll in VymModel</comment>
+        <translation>Note</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2725"/>
+        <source>Image</source>
+        <comment>Default name for new image</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2958"/>
+        <source>New map</source>
+        <comment>New map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Script aborted:
+%1</source>
+        <translation>Script interrompu:
+%1</translation>
+    </message>
+    <message>
+        <source>Export map as scalable vector graphic</source>
+        <translation type="vanished">Exportation de la carte en format graphique vectoriel</translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation type="obsolete">Entrer l&apos;URL:</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Images</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3822"/>
+        <source>Contacting Bugzilla...</source>
+        <comment>VymModel</comment>
+        <translation>Contacter Bugzilla...</translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation type="obsolete">Lien vers un autre schéma</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5185"/>
+        <source>Export map as image</source>
+        <translation>Exporter la carte sous forme d&apos;image</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Couldn&apos;t save QImage %1 in format %2</source>
+        <translation>Echec sauvegarde QImage %1 dans le format %2</translation>
+    </message>
+    <message>
+        <source>Exported: </source>
+        <comment>Export confirmation</comment>
+        <translation type="vanished">Exporté:</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5225"/>
+        <source>Export map as PDF</source>
+        <translation>Exporte la carte en format PDF</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5280"/>
+        <source>Export map as SVG</source>
+        <translation type="unfinished">Exporte la carte sous le format SVG</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5314"/>
+        <source>Export map as XML</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5321"/>
+        <source>Export XML to directory</source>
+        <translation>Exporter le XML dans le répertoire</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5367"/>
+        <source>Critical Export Error</source>
+        <translation>Erreur critique d&apos;Export</translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">Exporter en LaTeX</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>(still experimental)</source>
+        <translation>(toujours expérimental)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>Export as csv</source>
+        <translation>Exporter en format csv</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5786"/>
+        <source>Load background image</source>
+        <translation>Charger l&apos;image de fond</translation>
+    </message>
+</context>
+<context>
+    <name>VymProcess</name>
+    <message>
+        <location filename="../vymprocess.cpp" line="43"/>
+        <location filename="../vymprocess.cpp" line="48"/>
+        <source>Critical Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="44"/>
+        <source>Could not start %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="49"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="unfinished">%1 ne s&apos;est pas terminé normalement</translation>
+    </message>
+</context>
+<context>
+    <name>VymView</name>
+    <message>
+        <location filename="../vymview.cpp" line="34"/>
+        <source>Tree Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation>Éditeur d&apos;arbre</translation>
+    </message>
+    <message>
+        <location filename="../vymview.cpp" line="52"/>
+        <source>Slide Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation>Éditeur de diapo</translation>
+    </message>
+</context>
+<context>
+    <name>WarningDialog</name>
+    <message>
+        <source>VYM - Warning : Foo...</source>
+        <translation type="obsolete">VYM - Avertissement: bla...</translation>
+    </message>
+    <message>
+        <source>textLabel</source>
+        <translation type="obsolete">Étiquette de texte
+</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="91"/>
+        <source>showAgainBox</source>
+        <translation></translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="10"/>
+        <source>Proceed</source>
+        <translation>Procéder</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="12"/>
+        <source>Show this message again</source>
+        <translation>Afficher à nouveau ce message</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>Dialogue</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="117"/>
+        <location filename="../warningdialog.cpp" line="45"/>
+        <source>Cancel</source>
+        <translation>Annuler</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="124"/>
+        <source>Ok</source>
+        <translation>OK</translation>
+    </message>
+</context>
+</TS>
diff --git a/lang/vym.hr_HR.ts b/lang/vym.hr_HR.ts
new file mode 100644 (file)
index 0000000..3db1e91
--- /dev/null
@@ -0,0 +1,3886 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="hr_HR">
+<context>
+    <name>AboutDialog</name>
+    <message>
+        <location filename="../aboutdialog.cpp" line="106"/>
+        <source>Credits</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation>Zasluge</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="221"/>
+        <source>License</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation>Licenca</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="226"/>
+        <source>Ok</source>
+        <comment>Ok Button</comment>
+        <translation>U redu</translation>
+    </message>
+</context>
+<context>
+    <name>AboutTextBrowser</name>
+    <message>
+        <location filename="../aboutdialog.cpp" line="246"/>
+        <source>Warning</source>
+        <comment>About window</comment>
+        <translation>Upozorenje</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="247"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <comment>About window</comment>
+        <translation>Ne mogu naći program za pregledavanje %1.</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>Molim koristite postavke-&gt;</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Set application to open an URL...</source>
+        <translation>Postavi aplikaciju za otvaranje URLa ...</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyEditor</name>
+    <message>
+        <location filename="../branchpropeditor.ui" line="20"/>
+        <source>Branch Property Editor</source>
+        <translation>Uređivač svojstava grane</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="30"/>
+        <source>Frame</source>
+        <translation>Okvir</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="51"/>
+        <source>Geometry</source>
+        <translation>Geometrija</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="64"/>
+        <source>No Frame</source>
+        <translation>Bez okvira</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="69"/>
+        <source>Rectangle</source>
+        <translation>Pravokutnik</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="74"/>
+        <source>Rounded Rectangle</source>
+        <translation>Zaobljeni pravokutnik</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="79"/>
+        <source>Ellipse</source>
+        <translation>Elipsa</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="84"/>
+        <source>Cloud</source>
+        <translation>Oblak</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="105"/>
+        <source>Padding</source>
+        <translation>Podstavljanje</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="112"/>
+        <source>Borderline width</source>
+        <translation>Debljina okvira</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="136"/>
+        <source>Include children</source>
+        <translation>Uključi djecu</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="169"/>
+        <source>Colors</source>
+        <translation>Boje</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="209"/>
+        <source>Borderline color</source>
+        <translation>Boja okvira</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="232"/>
+        <source>Background color</source>
+        <translation>Boja pozadine</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="261"/>
+        <source>Layout</source>
+        <translation>Raspored</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="269"/>
+        <source>Include images horizontally</source>
+        <translation>Uključi slike vodoravno</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="276"/>
+        <source>Include images vertically</source>
+        <translation>Uključi slike okomito</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="283"/>
+        <source>Free positioning of children (experimental!)</source>
+        <translation>Slobodno pozicioniranje djece (eksperimentalno)</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="306"/>
+        <source>Link</source>
+        <translation>Veza</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="312"/>
+        <source>Hide link if unselected</source>
+        <translation>Sakrij neselektiranu vezu</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="333"/>
+        <source>Attributes</source>
+        <translation>Atributi</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="359"/>
+        <source>+</source>
+        <translation>+</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="366"/>
+        <source>-</source>
+        <translation>-</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.cpp" line="19"/>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation>Uređivač svojstava</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadAgent</name>
+    <message>
+        <location filename="../downloadagent.cpp" line="191"/>
+        <location filename="../downloadagent.cpp" line="195"/>
+        <source>Warning</source>
+        <translation>Upozorenje</translation>
+    </message>
+</context>
+<context>
+    <name>EditXLinkDialog</name>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="20"/>
+        <source>Edit XLink</source>
+        <translation>Uredi XLink</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="40"/>
+        <source>Arrow begin:</source>
+        <translation>Strelica početka:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="63"/>
+        <source>XLink width:</source>
+        <translation>XLink širina:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="79"/>
+        <source>Use color of heading</source>
+        <translation>Koristi boju naslova</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="109"/>
+        <source>XLink color:</source>
+        <translation>XLink boja:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="151"/>
+        <source>Use as default:</source>
+        <translation>Koristi kao zadano:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="177"/>
+        <source>Line style:</source>
+        <extracomment>Linestyle in Edit XLink dialog</extracomment>
+        <translation>Stil linije:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="190"/>
+        <source>Arrow end:</source>
+        <translation>Strelica kraja:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="253"/>
+        <source>Close</source>
+        <translation>Zatvori</translation>
+    </message>
+</context>
+<context>
+    <name>ExportHTMLDialog</name>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="26"/>
+        <source>Export HTML</source>
+        <translation>Izvoz HTMLa</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="61"/>
+        <source>Export to directory:</source>
+        <translation>Izvezi u direktorij:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="90"/>
+        <location filename="../exporthtmldialog.ui" line="267"/>
+        <location filename="../exporthtmldialog.ui" line="280"/>
+        <location filename="../exporthtmldialog.ui" line="353"/>
+        <source>Browse</source>
+        <translation>Pretraži</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="117"/>
+        <source>Options</source>
+        <translation>Opcije</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="138"/>
+        <source>Image of map</source>
+        <translation>Slika mape</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="145"/>
+        <source>Include images</source>
+        <translation>Uključi slike</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="152"/>
+        <source>Table of contents</source>
+        <translation>Tablica sadržaja</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="159"/>
+        <source>Task flags</source>
+        <translation>Zastavice zadatka</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="166"/>
+        <source>General flags</source>
+        <translation>Generalne zastavice</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="173"/>
+        <source>Number sections</source>
+        <translation>Brojanje sekcija</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="186"/>
+        <source>Colored headings in text</source>
+        <translation>Obojani naslovi u tekstu</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="199"/>
+        <source>Save settings in map</source>
+        <translation>Spremi postavke u mapi</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="216"/>
+        <source>Stylesheets</source>
+        <translation>Stilski predlošci</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="231"/>
+        <source>Copy CSS from </source>
+        <translation>Kopiraj CSS iz</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="251"/>
+        <source>Use CSS from</source>
+        <translation>Koristi CSS iz</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="297"/>
+        <source>Scripts</source>
+        <translation>Skripte</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="327"/>
+        <source>After Export:</source>
+        <translation>Nakon izvoza:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="382"/>
+        <source>Cancel</source>
+        <translation>Odustani</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="389"/>
+        <source>Export</source>
+        <translation>Izvoz</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>Warning</source>
+        <translation>Upozorenje</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>The settings saved in the map would like to run script:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation>Postavke spremljene u mapi žele pokrenuti skriptu:
+
+%1
+
+Provjerite da li to stvarno 
+želite dozvoliti na svom sustavu!</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="123"/>
+        <source>VYM - Export HTML to directory</source>
+        <translation>VYM - Izvoz HTMLa u direktorij</translation>
+    </message>
+</context>
+<context>
+    <name>ExtraInfoDialog</name>
+    <message>
+        <location filename="../extrainfodialog.ui" line="15"/>
+        <source>VYM - Info</source>
+        <translation>VYM - info</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="36"/>
+        <source>Map:</source>
+        <translation>Mapa:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="53"/>
+        <source>Title:</source>
+        <translation>Naslov:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="63"/>
+        <source>Author:</source>
+        <translation>Autor:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="86"/>
+        <source>Comment:</source>
+        <translation>Komentar:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="96"/>
+        <source>Statistics:</source>
+        <translation>Statistika:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="139"/>
+        <source>Cancel</source>
+        <translation>Odustani</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="146"/>
+        <source>Close</source>
+        <translation>Zatvori</translation>
+    </message>
+</context>
+<context>
+    <name>FindWidget</name>
+    <message>
+        <location filename="../findwidget.cpp" line="25"/>
+        <source>Find:</source>
+        <comment>FindWidget</comment>
+        <translation>Nađi:</translation>
+    </message>
+</context>
+<context>
+    <name>HeadingEditor</name>
+    <message>
+        <location filename="../headingeditor.cpp" line="9"/>
+        <source>Note Editor</source>
+        <comment>Name of editor shown as window title</comment>
+        <translation>Uređivač bilješki</translation>
+    </message>
+</context>
+<context>
+    <name>HistoryWindow</name>
+    <message>
+        <location filename="../historywindow.ui" line="13"/>
+        <source>Dialog</source>
+        <translation>Dialog</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="50"/>
+        <source>Redo</source>
+        <translation>Ponovi</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="72"/>
+        <source>Time</source>
+        <translation>Vrijeme</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="77"/>
+        <source>Comment</source>
+        <translation>Komentar</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="85"/>
+        <source>Undo</source>
+        <translation>Poništi</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="122"/>
+        <source>Close</source>
+        <translation>Zatvori</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="17"/>
+        <source>Action</source>
+        <comment>Table with actions</comment>
+        <translation>Akcija</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="20"/>
+        <source>Comment</source>
+        <comment>Table with actions</comment>
+        <translation>Komentar</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="23"/>
+        <source>Undo action</source>
+        <comment>Table with actions</comment>
+        <translation>Poništi akciju</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="125"/>
+        <source>Current state</source>
+        <comment>Current bar in history hwindow</comment>
+        <translation>Trenutno stanje</translation>
+    </message>
+</context>
+<context>
+    <name>LineEditDialog</name>
+    <message>
+        <location filename="../lineeditdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>Dialog</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="26"/>
+        <source>TextLabel</source>
+        <translation>tekstualnaLabela</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="89"/>
+        <location filename="../lineeditdialog.cpp" line="17"/>
+        <source>Cancel</source>
+        <translation>Odustani</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="99"/>
+        <location filename="../lineeditdialog.cpp" line="9"/>
+        <source>Ok</source>
+        <translation>U redu</translation>
+    </message>
+</context>
+<context>
+    <name>LockedFileDialog</name>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>Dialog</translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="116"/>
+        <location filename="../lockedfiledialog.cpp" line="7"/>
+        <source>Delete lockfile</source>
+        <translation>Obriši datoteku zaključavanja</translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="123"/>
+        <location filename="../lockedfiledialog.cpp" line="6"/>
+        <source>Open readonly</source>
+        <translation>Otvori samo za čitanje</translation>
+    </message>
+</context>
+<context>
+    <name>Main</name>
+    <message>
+        <location filename="../mainwindow.cpp" line="124"/>
+        <source>Main window</source>
+        <comment>Shortcut scope</comment>
+        <translation>Glavni prozor</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="218"/>
+        <source>Main window</source>
+        <comment>Shortcut group</comment>
+        <translation>Glavni prozor</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="219"/>
+        <source>Map Editors</source>
+        <comment>Shortcut group</comment>
+        <translation>Uređivači mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="220"/>
+        <source>Text Editors</source>
+        <comment>Shortcut group</comment>
+        <translation>Uređivači teksta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="254"/>
+        <source>Script Editor</source>
+        <translation>Uređivač skripti</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="262"/>
+        <source>Search results list</source>
+        <comment>FindResultWidget</comment>
+        <translation>Lista rezultata pretraživanja</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="275"/>
+        <source>Script Editor</source>
+        <comment>ScriptEditor</comment>
+        <translation>Uređivač skripti</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="282"/>
+        <source>Property Editor</source>
+        <comment>PropertyEditor</comment>
+        <translation>Uređivač svojstava</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="289"/>
+        <source>History window</source>
+        <comment>HistoryWidget</comment>
+        <translation>Prozor povijesti</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="316"/>
+        <source>Task list</source>
+        <comment>TaskEditor</comment>
+        <translation>Lista zadatka</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="969"/>
+        <source>&amp;Map</source>
+        <comment>Menu for file actions</comment>
+        <translation>&amp;Mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="973"/>
+        <source>&amp;New map</source>
+        <comment>File menu</comment>
+        <translation>&amp;Nova mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="980"/>
+        <source>&amp;Copy to new map</source>
+        <comment>File menu</comment>
+        <translation>&amp;Kopiraj u novu mapu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="987"/>
+        <source>&amp;Open...</source>
+        <comment>File menu</comment>
+        <translation>&amp;Otvori...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="994"/>
+        <source>&amp;Restore last session</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Vrati zadnju sesiju</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1002"/>
+        <source>Open Recent</source>
+        <comment>File menu</comment>
+        <translation>Otvori nedavne</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1005"/>
+        <source>&amp;Save...</source>
+        <comment>File menu</comment>
+        <translation>&amp;Spremi...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1013"/>
+        <source>Save &amp;As...</source>
+        <comment>File menu</comment>
+        <translation>Spremi &amp;kao ...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1019"/>
+        <source>Import</source>
+        <comment>File menu</comment>
+        <translation>Uvoz</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1023"/>
+        <source>Firefox Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation>Firefoxove knjižne oznake</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1036"/>
+        <source>Import Dir%1</source>
+        <comment>Import Filters</comment>
+        <translation>Uvezi Dir%1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1036"/>
+        <location filename="../mainwindow.cpp" line="1057"/>
+        <location filename="../mainwindow.cpp" line="1085"/>
+        <location filename="../mainwindow.cpp" line="1089"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
+        <location filename="../mainwindow.cpp" line="3681"/>
+        <location filename="../mainwindow.cpp" line="3710"/>
+        <source>(still experimental)</source>
+        <translation>(experimentalno)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1040"/>
+        <source>Export</source>
+        <comment>File menu</comment>
+        <translation>Izvoz</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1042"/>
+        <source>Repeat last export (%1)</source>
+        <translation>Ponovi zadnji izvoz (%1)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1049"/>
+        <source>Webpage (HTML)...</source>
+        <comment>File export menu</comment>
+        <translation>Web stranica (HTML)...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1053"/>
+        <source>Text (ASCII)...</source>
+        <comment>File export menu</comment>
+        <translation>Tekst (ASCII) ...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1057"/>
+        <source>Text with tasks</source>
+        <comment>File export menu</comment>
+        <translation>Tekst sa zadatcima</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1061"/>
+        <source>Text (A&amp;O report)...</source>
+        <comment>Export format</comment>
+        <translation>Tekst (A&amp;O izvještaj) ...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1065"/>
+        <source>Image%1</source>
+        <comment>File export menu</comment>
+        <translation>Slika%1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1069"/>
+        <source>PDF%1</source>
+        <comment>File export menu</comment>
+        <translation>PDF%1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1073"/>
+        <source>SVG%1</source>
+        <comment>File export menu</comment>
+        <translation>SVG%1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1085"/>
+        <source>Spreadsheet</source>
+        <translation>Proračunska tablica</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1103"/>
+        <source>Properties</source>
+        <translation>Svojstva</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1112"/>
+        <source>&amp;Print</source>
+        <translation>&amp;Ispis</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1120"/>
+        <source>&amp;Close Map</source>
+        <comment>File menu</comment>
+        <translation>&amp;Zatvori mapu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1126"/>
+        <source>E&amp;xit</source>
+        <comment>File menu</comment>
+        <translation>&amp;Izlaz</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1137"/>
+        <source>E&amp;dit</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Uredi</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1141"/>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Poništi</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1152"/>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Ponovi</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1163"/>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Kopiraj</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1174"/>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Izreži</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1187"/>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Zalijepi</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1199"/>
+        <source>Delete Selection</source>
+        <comment>Edit menu</comment>
+        <translation>Obriši odabir</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1210"/>
+        <source>Add attribute</source>
+        <translation>Dodaj atribut</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1223"/>
+        <source>Add mapcenter</source>
+        <comment>Canvas context menu</comment>
+        <translation>Dodaj centar mape</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1234"/>
+        <source>Add branch as child</source>
+        <comment>Edit menu</comment>
+        <translation>Dodaj granu kao dijete</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1244"/>
+        <source>Add branch (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>Dodaj granu (umetni)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1254"/>
+        <location filename="../mainwindow.cpp" line="1264"/>
+        <source>Add branch above</source>
+        <comment>Edit menu</comment>
+        <translation>Dodaj granu iznad</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1274"/>
+        <location filename="../mainwindow.cpp" line="1283"/>
+        <source>Add branch below</source>
+        <comment>Edit menu</comment>
+        <translation>Dodaj granu ispod</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1292"/>
+        <source>Move branch up</source>
+        <comment>Edit menu</comment>
+        <translation>Makni granu gore</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1305"/>
+        <source>Move branch down</source>
+        <comment>Edit menu</comment>
+        <translation>Makni granu dolje</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1318"/>
+        <source>&amp;Detach</source>
+        <comment>Context menu</comment>
+        <translation>&amp;Odvoji</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1319"/>
+        <source>Detach branch and use as mapcenter</source>
+        <comment>Context menu</comment>
+        <translation>Odvoji granu i iskoristi kao središte mape</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1327"/>
+        <source>Sort children</source>
+        <comment>Edit menu</comment>
+        <translation>Razvrstaj djecu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1336"/>
+        <source>Sort children backwards</source>
+        <comment>Edit menu</comment>
+        <translation>Razvrstaj djecu obrnuto</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1345"/>
+        <source>Scroll branch</source>
+        <comment>Edit menu</comment>
+        <translation>Uvij granu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1357"/>
+        <source>Unscroll children</source>
+        <comment>Edit menu</comment>
+        <translation>Uvij djecu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1362"/>
+        <source>Grow selection</source>
+        <comment>Edit menu</comment>
+        <translation>Uvećaj odabir</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1371"/>
+        <source>Shrink selection</source>
+        <comment>Edit menu</comment>
+        <translation>Smanji odabir</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1380"/>
+        <source>Reset selection size</source>
+        <comment>Edit menu</comment>
+        <translation>Poništi veličinu odabira</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1391"/>
+        <source>Collapse one level</source>
+        <comment>Edit menu</comment>
+        <translation>Sklopi jedan nivo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1402"/>
+        <source>Collapse unselected levels</source>
+        <comment>Edit menu</comment>
+        <translation>Sklopi neodabrane nivoe</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1413"/>
+        <source>Expand all branches</source>
+        <comment>Edit menu</comment>
+        <translation>Raširi sve grane</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1421"/>
+        <source>Expand one level</source>
+        <comment>Edit menu</comment>
+        <translation>Raširi jedan nivo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1431"/>
+        <source>References Context menu</source>
+        <comment>Shortcuts</comment>
+        <translation>Reference kontekstnog izbornika</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1432"/>
+        <source>Open URL</source>
+        <comment>Edit menu</comment>
+        <translation>Otvori URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1440"/>
+        <source>Open URL in new tab</source>
+        <comment>Edit menu</comment>
+        <translation>Otvori URL u novoj kartici</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1448"/>
+        <source>Open all URLs in subtree (including scrolled branches)</source>
+        <comment>Edit menu</comment>
+        <translation>Otvori sve URLove u podstablu (uključujući uvijene grane)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1456"/>
+        <source>Open all URLs in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Otvori sve URLove u podstablu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1463"/>
+        <source>Extract URLs from note</source>
+        <comment>Edit menu</comment>
+        <translation>Izdvoji URL iz zabilješke</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1472"/>
+        <source>Edit URL...</source>
+        <comment>Edit menu</comment>
+        <translation>Uredi URL ...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1481"/>
+        <source>Edit local URL...</source>
+        <comment>Edit menu</comment>
+        <translation>Uredi lokalni URL ...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1490"/>
+        <source>Use heading for URL</source>
+        <comment>Edit menu</comment>
+        <translation>Koristi naslov za URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1500"/>
+        <source>Bugzilla handling</source>
+        <comment>Shortcuts</comment>
+        <translation>Upravljanje Bugzillom</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1501"/>
+        <source>Create URL to SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation>Kreiraj URL prema SUSE Bugzilli</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1512"/>
+        <source>Get data from SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation>Dohvati vrijeme iz SUSE Bugzille</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1521"/>
+        <source>Get data from SUSE Bugzilla for subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Dohvati vrijeme iz SUSE Bugzille za podstablo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1530"/>
+        <source>SUSE Fate tool handling</source>
+        <comment>Shortcuts</comment>
+        <translation>Upravljanje SUSE Fate alatom</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1531"/>
+        <source>Create URL to SUSE FATE tool</source>
+        <comment>Edit menu</comment>
+        <translation>Kreiraj URL prema SUSE FATE alatu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1539"/>
+        <source>vymlinks - linking maps</source>
+        <comment>Shortcuts</comment>
+        <translation>vymlinkovi - vezanje mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1540"/>
+        <source>Open linked map</source>
+        <comment>Edit menu</comment>
+        <translation>Otvori povezanu mapu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1547"/>
+        <source>Open linked map in background tab</source>
+        <comment>Edit menu</comment>
+        <translation>Otvori povezanu mapu u pozadinskoj kartici</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1554"/>
+        <source>Open all vym links in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Otvori sve vym veze u podstablu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1562"/>
+        <source>Edit vym link...</source>
+        <comment>Edit menu</comment>
+        <translation>Uredi vym vezu...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1569"/>
+        <source>Delete vym link</source>
+        <comment>Edit menu</comment>
+        <translation>Obriši vym vezu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1576"/>
+        <source>Exports</source>
+        <comment>Shortcuts</comment>
+        <translation>Izvozi</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1577"/>
+        <source>Hide in exports</source>
+        <comment>Edit menu</comment>
+        <translation>Sakrij u izvozu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1588"/>
+        <source>Tasks</source>
+        <comment>Shortcuts</comment>
+        <translation>Zadatci</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1589"/>
+        <source>Toggle task</source>
+        <comment>Edit menu</comment>
+        <translation>Preklopi zadatak</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1600"/>
+        <source>Cycle task status</source>
+        <comment>Edit menu</comment>
+        <translation>Kruži kroz statuse zadataka</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1611"/>
+        <source>Reset sleep</source>
+        <comment>Task sleep</comment>
+        <translation>Poništi spavanje</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1622"/>
+        <location filename="../mainwindow.cpp" line="1645"/>
+        <location filename="../mainwindow.cpp" line="1656"/>
+        <location filename="../mainwindow.cpp" line="1667"/>
+        <location filename="../mainwindow.cpp" line="1678"/>
+        <source>Sleep %1 days</source>
+        <comment>Task sleep</comment>
+        <translation>Spavaj %1 dana</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1634"/>
+        <source>Sleep %1 day</source>
+        <comment>Task sleep</comment>
+        <translation>Spavaj %1 dan</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1689"/>
+        <location filename="../mainwindow.cpp" line="1700"/>
+        <source>Sleep %1 weeks</source>
+        <comment>Task sleep</comment>
+        <translation>Spavaj %1 tjedana</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1712"/>
+        <source>Add map (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>Dodaj mapu (umetni)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1719"/>
+        <source>Add map (replace)</source>
+        <comment>Edit menu</comment>
+        <translation>Dodaj mapu (zamijeni)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1726"/>
+        <source>Save selection</source>
+        <comment>Edit menu</comment>
+        <translation>Spremi odabir</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1732"/>
+        <source>Removing parts of a map</source>
+        <comment>Shortcuts</comment>
+        <translation>Uklanjam dijelove mape</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1735"/>
+        <source>Remove only branch and keep its children </source>
+        <comment>Edit menu</comment>
+        <translation>Ukloni samo granu i zadrži djecu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1745"/>
+        <source>Remove children</source>
+        <comment>Edit menu</comment>
+        <translation>Ukloni djecu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1755"/>
+        <source>Various</source>
+        <comment>Shortcuts</comment>
+        <translation>Razno</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1756"/>
+        <source>Add timestamp</source>
+        <comment>Edit menu</comment>
+        <translation>Dodaj vremensku oznaku</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1767"/>
+        <source>Map properties...</source>
+        <comment>Edit menu</comment>
+        <translation>Svojstva mape ...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1773"/>
+        <source>Add   ...</source>
+        <comment>Edit menu</comment>
+        <translation>Dodaj ...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1781"/>
+        <source>Property window</source>
+        <comment>Dialog to edit properties of selection</comment>
+        <translation>Prozor svojstava</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1794"/>
+        <source>Selections</source>
+        <comment>Shortcuts</comment>
+        <translation>Odabiri</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1795"/>
+        <source>Select</source>
+        <comment>Select menu</comment>
+        <translation>&amp;Odaberi</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1797"/>
+        <source>Toggle target...</source>
+        <comment>Edit menu</comment>
+        <translation>Preklopi cilj ...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1806"/>
+        <source>Goto target...</source>
+        <comment>Edit menu</comment>
+        <translation>Idi na cilj ...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1814"/>
+        <source>Move to target...</source>
+        <comment>Edit menu</comment>
+        <translation>Makni na cilj ...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1822"/>
+        <source>Select previous</source>
+        <comment>Edit menu</comment>
+        <translation>Odaberi prethodni</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1832"/>
+        <source>Select next</source>
+        <comment>Edit menu</comment>
+        <translation>Odaberi sljedeći</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1842"/>
+        <source>Unselect all</source>
+        <comment>Edit menu</comment>
+        <translation>Deselektiraj sve</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1850"/>
+        <source>Search functions</source>
+        <comment>Shortcuts</comment>
+        <translation>Funkcije pretraživanja</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1851"/>
+        <location filename="../mainwindow.cpp" line="1859"/>
+        <source>Find...</source>
+        <comment>Edit menu</comment>
+        <translation>Nađi...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1866"/>
+        <source>Find duplicate URLs</source>
+        <comment>Edit menu</comment>
+        <translation>Nađi duple URLove</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1878"/>
+        <source>F&amp;ormat</source>
+        <comment>Format menu</comment>
+        <translation>&amp;Format</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1880"/>
+        <source>Formatting</source>
+        <comment>Shortcuts</comment>
+        <translation>Formatiranje</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1885"/>
+        <source>Set &amp;Color</source>
+        <translation>Postavi &amp;boju</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1891"/>
+        <source>Pic&amp;k color</source>
+        <comment>Edit menu</comment>
+        <translation>Oda&amp;beri boju</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1900"/>
+        <source>Color &amp;branch</source>
+        <comment>Edit menu</comment>
+        <translation>Boja &amp;grane</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1909"/>
+        <source>Color sub&amp;tree</source>
+        <comment>Edit menu</comment>
+        <translation>Boja pod&amp;stabla</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1920"/>
+        <source>Select default font</source>
+        <comment>Branch attribute</comment>
+        <translation>Odredi zadani font</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1930"/>
+        <source>Linkstyle Line</source>
+        <translation>Stil veze linija</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1937"/>
+        <source>Linkstyle Curve</source>
+        <translation>Stil veze zaobljen</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1944"/>
+        <source>Linkstyle Thick Line</source>
+        <translation>Stil veze debela linija</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1951"/>
+        <source>Linkstyle Thick Curve</source>
+        <translation>Stil veze debelo zaobljenje</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1960"/>
+        <source>Hide link if object is not selected</source>
+        <comment>Branch attribute</comment>
+        <translation>Sakrij vezu ako objekt nije odabran</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1966"/>
+        <source>&amp;Use color of heading for link</source>
+        <comment>Branch attribute</comment>
+        <translation>&amp;Koristi boju naslova za vezu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1973"/>
+        <source>Set &amp;Link Color</source>
+        <translation>Postavi boju &amp;veze</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1978"/>
+        <source>Set &amp;Selection Color</source>
+        <translation>Postavi boju &amp;odabranog</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1983"/>
+        <source>Set &amp;Background Color</source>
+        <translation>Postavi boju &amp;pozadine</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1988"/>
+        <source>Set &amp;Background image</source>
+        <translation>Postavi &amp;sliku pozadine</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1997"/>
+        <source>&amp;View</source>
+        <translation>&amp;Pogled</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1998"/>
+        <source>Toolbars</source>
+        <comment>Toolbars overview in view menu</comment>
+        <translation>Izbornici</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1999"/>
+        <source>Views</source>
+        <comment>Shortcuts</comment>
+        <translation>Pogledi</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2004"/>
+        <source>Zoom in</source>
+        <comment>View action</comment>
+        <translation>Povećaj</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2012"/>
+        <source>Zoom out</source>
+        <comment>View action</comment>
+        <translation>Smanji</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2020"/>
+        <source>Rotate counterclockwise</source>
+        <comment>View action</comment>
+        <translation>Rotiraj u suprotnom smjeru od kazaljke na satu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2028"/>
+        <source>Rotate rclockwise</source>
+        <comment>View action</comment>
+        <translation>Rotiraj u smjeru kazaljke na satu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2036"/>
+        <source>reset Zoom</source>
+        <comment>View action</comment>
+        <translation>Poništi povećanje</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2044"/>
+        <source>Center on selection</source>
+        <comment>View action</comment>
+        <translation>Centriraj odabrano</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2055"/>
+        <source>Note editor</source>
+        <comment>View action</comment>
+        <translation>Uređivač bilješki</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2066"/>
+        <source>Heading editor</source>
+        <comment>View action</comment>
+        <translation>Uređivač naslova</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2078"/>
+        <source>Tree editor</source>
+        <comment>View action</comment>
+        <translation>Uređivač stabla</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2086"/>
+        <source>Task editor</source>
+        <comment>View action</comment>
+        <translation>Uređivač zadataka</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2096"/>
+        <source>Slide editor</source>
+        <comment>View action</comment>
+        <translation>Uređivač slajdova</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2104"/>
+        <source>Script editor</source>
+        <comment>View action</comment>
+        <translation>Uređivač skripti</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2112"/>
+        <source>History Window</source>
+        <comment>View action</comment>
+        <translation>Prozor povijesti</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2126"/>
+        <source>Antialiasing</source>
+        <comment>View action</comment>
+        <translation>Zaglađivanje nazubljenih rubova</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2133"/>
+        <source>Smooth pixmap transformations</source>
+        <comment>View action</comment>
+        <translation>Glatke pixmap transformacije</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2141"/>
+        <source>Next Map</source>
+        <comment>View action</comment>
+        <translation>Sljedeća mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2148"/>
+        <source>Previous Map</source>
+        <comment>View action</comment>
+        <translation>Prethodna mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2155"/>
+        <source>Next slide</source>
+        <comment>View action</comment>
+        <translation>Sljedeći slajd</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2162"/>
+        <source>Previous slide</source>
+        <comment>View action</comment>
+        <translation>Prethodni slajd</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2176"/>
+        <source>Modifier modes</source>
+        <comment>Shortcuts</comment>
+        <translation>Načini modifikatora</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2180"/>
+        <source>Use modifier to color branches</source>
+        <comment>Mode modifier</comment>
+        <translation>Koristi modifikator za boju grana</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2196"/>
+        <source>Use modifier to draw xLinks</source>
+        <comment>Mode modifier</comment>
+        <translation>Koristi modifikator za crtanje xLinkova</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2215"/>
+        <location filename="../mainwindow.cpp" line="2218"/>
+        <location filename="../mainwindow.cpp" line="2221"/>
+        <location filename="../mainwindow.cpp" line="2225"/>
+        <location filename="../mainwindow.cpp" line="2228"/>
+        <location filename="../mainwindow.cpp" line="2231"/>
+        <location filename="../mainwindow.cpp" line="2235"/>
+        <location filename="../mainwindow.cpp" line="2238"/>
+        <source>Note</source>
+        <comment>SystemFlag</comment>
+        <translation>Bilješka</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2241"/>
+        <source>URL to Document </source>
+        <comment>SystemFlag</comment>
+        <translation>URL na dokument</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2244"/>
+        <location filename="../mainwindow.cpp" line="2247"/>
+        <source>URL to Bugzilla </source>
+        <comment>SystemFlag</comment>
+        <translation>URL na Bugzillu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2250"/>
+        <source>Map target</source>
+        <comment>SystemFlag</comment>
+        <translation>Cilj mape</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2253"/>
+        <source>Link to another vym map</source>
+        <comment>SystemFlag</comment>
+        <translation>Veza na drugu vym mapu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2256"/>
+        <source>subtree is scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation>Podstablo je uvijeno</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2259"/>
+        <source>subtree is temporary scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation>Podstablo je privremeno uvijeno</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2262"/>
+        <source>Hide object in exported maps</source>
+        <comment>SystemFlag</comment>
+        <translation>Sakrij objekt u izvezenim mapama</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2267"/>
+        <source>Standard Flags toolbar</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation>Alatna traka standardnih zastavica</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2276"/>
+        <source>This won&apos;t work!</source>
+        <comment>Standardflag</comment>
+        <translation>Ovo ne funkcionira!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2281"/>
+        <source>Status - ok,done</source>
+        <comment>Standardflag</comment>
+        <translation>Status - dobro, načinjeno</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2285"/>
+        <source>Status - work in progress</source>
+        <comment>Standardflag</comment>
+        <translation>Status - u radu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2289"/>
+        <source>Status - missing, not started</source>
+        <comment>Standardflag</comment>
+        <translation>Status - nedostaje, nije započeto</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2293"/>
+        <source>Take care!</source>
+        <comment>Standardflag</comment>
+        <translation>Čuvaj se!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2297"/>
+        <source>Really?</source>
+        <comment>Standardflag</comment>
+        <translation>Stvarno?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2301"/>
+        <source>Good</source>
+        <comment>Standardflag</comment>
+        <translation>Dobro</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2305"/>
+        <source>Bad</source>
+        <comment>Standardflag</comment>
+        <translation>Loše</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2309"/>
+        <source>Oh no!</source>
+        <comment>Standardflag</comment>
+        <translation>O ne!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2314"/>
+        <source>Time critical</source>
+        <comment>Standardflag</comment>
+        <translation>Vremenski kritično</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2317"/>
+        <source>Call...</source>
+        <comment>Standardflag</comment>
+        <translation>Poziv ...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2320"/>
+        <source>Idea!</source>
+        <comment>Standardflag</comment>
+        <translation>Ideja!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2324"/>
+        <source>Important</source>
+        <comment>Standardflag</comment>
+        <translation>Važno</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2328"/>
+        <source>Unimportant</source>
+        <comment>Standardflag</comment>
+        <translation>Nevažno</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2332"/>
+        <source>Very important!</source>
+        <comment>Standardflag</comment>
+        <translation>Vrlo važno!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2336"/>
+        <source>Very unimportant!</source>
+        <comment>Standardflag</comment>
+        <translation>Vrlo nevažno!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2341"/>
+        <source>I like this</source>
+        <comment>Standardflag</comment>
+        <translation>Sviđa mi se</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2345"/>
+        <source>I do not like this</source>
+        <comment>Standardflag</comment>
+        <translation>Ovo mi se ne sviđa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2349"/>
+        <source>Rose</source>
+        <comment>Standardflag</comment>
+        <translation>Ruža</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2352"/>
+        <source>I just love...</source>
+        <comment>Standardflag</comment>
+        <translation>Ja volim ...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2355"/>
+        <source>Surprise!</source>
+        <comment>Standardflag</comment>
+        <translation>Iznenađenje!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2358"/>
+        <source>Dangerous</source>
+        <comment>Standardflag</comment>
+        <translation>Opasno</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2362"/>
+        <source>Info</source>
+        <comment>Standardflag</comment>
+        <translation>Info</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2366"/>
+        <source>This will help</source>
+        <comment>Standardflag</comment>
+        <translation>Ovo će pomoći</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2371"/>
+        <source>Important</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Važno</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2378"/>
+        <source>Priority</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Prioritet</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2383"/>
+        <source>Back</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Nazad</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2387"/>
+        <source>forward</source>
+        <comment>Freemind-Flag</comment>
+        <translation>naprijed</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2391"/>
+        <source>Look here</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Pogledaj ovdje</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2395"/>
+        <source>Dangerous</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Opasno</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2399"/>
+        <source>Don&apos;t flagrget</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Ne zaboravi</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2403"/>
+        <source>Flag</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Zastavica</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2408"/>
+        <source>Home</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Kuća</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2412"/>
+        <source>Telephone</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Telefon</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2416"/>
+        <source>Music</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Muzika</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2420"/>
+        <source>Mailbox</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Poštanski pretinac</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2424"/>
+        <source>Maix</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Pošta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2428"/>
+        <source>Password</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Zaporka</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2432"/>
+        <source>To be improved</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Za poboljšanje</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2436"/>
+        <source>Stop</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Stani</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2440"/>
+        <source>Magic</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Magija</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2444"/>
+        <source>To be discussed</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Za raspravu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2448"/>
+        <source>Reminder</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Podsjetnik</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2452"/>
+        <source>Excellent</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Izvrsno</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2456"/>
+        <source>Linux</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Linux</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2460"/>
+        <source>Sweet</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Slatko</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2516"/>
+        <source>Settings</source>
+        <translation>Pos&amp;tavke</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2520"/>
+        <source>Check for release notes and updates</source>
+        <comment>Settings action</comment>
+        <translation>Provjeri bilješke izdanja i ažuriranja</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2527"/>
+        <source>Set author for new maps</source>
+        <comment>Settings action</comment>
+        <translation>Postavi autora nove mape</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2533"/>
+        <source>Set application to open pdf files</source>
+        <comment>Settings action</comment>
+        <translation>Postavi aplikaciju za otvaranje PDF datoteka</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2537"/>
+        <source>Set application to open external links</source>
+        <comment>Settings action</comment>
+        <translation>Postavi aplikaciju za otvaranje vanjskih veza</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2541"/>
+        <source>Set application to zip/unzip files</source>
+        <comment>Settings action</comment>
+        <translation>Postavi aplikaciju za komprimiranje/raspakiravanje datoteka</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2545"/>
+        <source>Set path for macros</source>
+        <comment>Settings action</comment>
+        <translation>Postavi putanju za makroe</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2549"/>
+        <source>Set number of undo levels</source>
+        <comment>Settings action</comment>
+        <translation>Postavi broj poništi/ponovi nivoa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2555"/>
+        <source>Autosave</source>
+        <comment>Settings action</comment>
+        <translation>Automatsko spremanje</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2561"/>
+        <source>Autosave time</source>
+        <comment>Settings action</comment>
+        <translation>Vrijeme automatskog spremanja</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2574"/>
+        <source>Write backup file on save</source>
+        <comment>Settings action</comment>
+        <translation>Zapiši backup datoteku pri spremanju</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2583"/>
+        <source>Edit branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>Uredi granu nakon dodavanja</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2589"/>
+        <source>Select branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>Odaberi granu nakon dodavanja</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2595"/>
+        <source>Select existing heading</source>
+        <comment>Settings action</comment>
+        <translation>Odaberi postojeći naslov</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2601"/>
+        <source>Exclusive flags</source>
+        <comment>Settings action</comment>
+        <translation>Ekskluzivne zastavice</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2607"/>
+        <source>Use hide flags</source>
+        <comment>Settings action</comment>
+        <translation>Koristi zastavice za skrivanje</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2615"/>
+        <source>Number of visible parents in task editor</source>
+        <comment>Settings action</comment>
+        <translation>Broj vidljivih roditelja u prozoru uređivača zadatka</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2620"/>
+        <source>Number of visible parents in find results window</source>
+        <comment>Settings action</comment>
+        <translation>Broj vidljivih roditelja u prozoru rezultata pretrage</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2625"/>
+        <source>Animation</source>
+        <comment>Settings action</comment>
+        <translation>Animacija</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2632"/>
+        <source>Automatic layout</source>
+        <comment>Settings action</comment>
+        <translation>Automatski raspored</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2643"/>
+        <source>Test</source>
+        <translation>Test</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2675"/>
+        <source>&amp;Help</source>
+        <comment>Help menubar entry</comment>
+        <translation>&amp;Pomoć</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2678"/>
+        <source>Open VYM Documentation (pdf) </source>
+        <comment>Help action</comment>
+        <translation>Otvori VYM dokumentaciju (pdf)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2682"/>
+        <source>Open VYM example maps </source>
+        <comment>Help action</comment>
+        <translation>Učitaj VYM mape primjera</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2687"/>
+        <source>Download and show release notes</source>
+        <comment>Help action</comment>
+        <translation>Skini i pokaži bilješke izdanja</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2691"/>
+        <source>Check, if updates are available</source>
+        <comment>Help action</comment>
+        <translation>Provjeri ako postoje ažuriranja</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2696"/>
+        <source>Show keyboard shortcuts</source>
+        <comment>Help action</comment>
+        <translation>Prikaži prečace tipkovnice</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2700"/>
+        <source>Debug info</source>
+        <comment>Option to show debugging info</comment>
+        <translation>Debug info</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2704"/>
+        <source>About VYM</source>
+        <comment>Help action</comment>
+        <translation>O VYMu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2708"/>
+        <source>About QT</source>
+        <comment>Help action</comment>
+        <translation>O QTu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2725"/>
+        <source>Add</source>
+        <translation>Dodaj</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2737"/>
+        <source>Remove</source>
+        <comment>Context menu name</comment>
+        <translation>Ukloni</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2757"/>
+        <source>Tasks</source>
+        <comment>Context menu</comment>
+        <translation>Zadatci</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2774"/>
+        <source>References (URLs, vymLinks, ...)</source>
+        <comment>Context menu name</comment>
+        <translation>Reference (URLovi, vymLinkovi, ...)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2798"/>
+        <source>XLinks</source>
+        <comment>Menu for file actions</comment>
+        <translation>XLinkovi</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2800"/>
+        <source>Edit XLink</source>
+        <comment>Context menu name</comment>
+        <translation>Uredi XLink</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2805"/>
+        <source>Follow XLink</source>
+        <comment>Context menu</comment>
+        <translation>Prati XLink</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2811"/>
+        <source>Follow XLink</source>
+        <comment>Context menu name</comment>
+        <translation>Prati XLink</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2820"/>
+        <source>Save image</source>
+        <comment>Context action</comment>
+        <translation>Spremi sliku</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2915"/>
+        <source>File actions toolbar</source>
+        <comment>Toolbar for file actions</comment>
+        <translation>Alatna traka datotečnih akcija</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2924"/>
+        <source>Undo and clipboard toolbar</source>
+        <comment>Toolbar for redo/undo and clipboard</comment>
+        <translation>Alatna traka poništavanja i međuspremnika</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2933"/>
+        <source>Edit actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation>Uredi alatnu traku akcija</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2950"/>
+        <source>Selection toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation>Alatna traka odabira</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2958"/>
+        <source>URLs and vymLinks toolbar</source>
+        <comment>Toolbar for URLs and vymlinks</comment>
+        <translation>Alatna traka URLova i vymLinkova</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2966"/>
+        <source>Colors toolbar</source>
+        <comment>Colors toolbar name</comment>
+        <translation>Alatna traka boja</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2974"/>
+        <source>Zoom toolbar</source>
+        <comment>View Toolbar name</comment>
+        <translation>Izbornik povećanja</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2984"/>
+        <source>Editors toolbar</source>
+        <comment>Editor Toolbar name</comment>
+        <translation>Alatna traka uređivača</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2996"/>
+        <source>Modifier modes toolbar</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation>Alatna traka načina modifikatora</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3094"/>
+        <source>(readonly)</source>
+        <translation>(samo za čitanje)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3128"/>
+        <source>unnamed</source>
+        <comment>MainWindow: name for new and empty file</comment>
+        <translation>neimenovana</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3181"/>
+        <source>The map %1
+is already opened.Opening the same map in multiple editors may lead 
+to confusion when finishing working with vym.Do you want to</source>
+        <translation>Mapa %1
+je već otvorena. Otvaranje iste mape u više uređivača može dovesti
+do zabune pri završetku rada s vymom. Želite li</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3189"/>
+        <source>Open anyway</source>
+        <translation>Svejedno otvori</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3190"/>
+        <location filename="../mainwindow.cpp" line="3237"/>
+        <location filename="../mainwindow.cpp" line="3464"/>
+        <source>Cancel</source>
+        <translation>Odustani</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3230"/>
+        <source>This map does not exist:
+  %1
+Do you want to create a new one?</source>
+        <translation>Ova mapa ne postoji:
+  %1
+Želite li kreirati novu mapu?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3236"/>
+        <source>Create</source>
+        <translation>Kreiraj</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3266"/>
+        <source>Loading: %1</source>
+        <comment>Progress dialog while loading maps</comment>
+        <translation>Učitavam: %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3305"/>
+        <source>Load vym map</source>
+        <translation>Učitaj vym mapu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3308"/>
+        <source>Import: Add vym map to selection</source>
+        <translation>Uvoz: Dodaj vym mapu u odabir</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3311"/>
+        <source>Import: Replace selection with vym map</source>
+        <translation>Uvoz: Zamijeni odabis s vym mapom</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3316"/>
+        <source>or</source>
+        <comment>File Dialog</comment>
+        <translation>ili</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3416"/>
+        <source>Saved  %1</source>
+        <translation>Spremljen %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3420"/>
+        <source>Couldn&apos;t save </source>
+        <translation>Ne mogu spremiti</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3447"/>
+        <source>Save map as</source>
+        <translation>Spremi mapu kao</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3458"/>
+        <source>The file %1
+exists already. Do you want to</source>
+        <translation>Datoteka %1
+već postoji. Želite li</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3463"/>
+        <source>Overwrite</source>
+        <translation>Prepiši</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3500"/>
+        <location filename="../mainwindow.cpp" line="3506"/>
+        <location filename="../mainwindow.cpp" line="4133"/>
+        <source>Critical Error</source>
+        <translation>Kritična greška</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3500"/>
+        <source>Couldn&apos;t save %1,
+because of existing lockfile:
+
+%2</source>
+        <translation>Ne mogu spremiti %1
+zbog postojeće datoteke zaključavanja: 
+%2</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3506"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation>Ne mogu spremiti %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <location filename="../mainwindow.cpp" line="3539"/>
+        <source>Bookmarks</source>
+        <translation>Knjižne oznake</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3539"/>
+        <location filename="../mainwindow.cpp" line="3599"/>
+        <source>Import</source>
+        <translation>Uvoz</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3566"/>
+        <source>Load Freemind map</source>
+        <translation>Učitaj Freemind mapu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3681"/>
+        <source>Export as CSV</source>
+        <translation>Izvezi kao CSV</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3710"/>
+        <location filename="../mainwindow.cpp" line="3727"/>
+        <source>Export to</source>
+        <translation>Izvezi u</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3748"/>
+        <location filename="../mainwindow.cpp" line="3878"/>
+        <location filename="../mainwindow.cpp" line="3921"/>
+        <location filename="../mainwindow.cpp" line="4263"/>
+        <location filename="../mainwindow.cpp" line="5843"/>
+        <location filename="../mainwindow.cpp" line="5990"/>
+        <location filename="../mainwindow.cpp" line="6155"/>
+        <source>Warning</source>
+        <translation>Upozorenje</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3749"/>
+        <source>Couldn&apos;t find configuration for export to LibreOffice
+</source>
+        <translation>Ne mogu naći konfiguraciju za izvoz u LibreOffice
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3773"/>
+        <source>The map %1 has been modified but not saved yet. Do you want to</source>
+        <translation>Mapa %1 je modificirana, ali nije spremljena. Želite li</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3778"/>
+        <source>Save modified map before closing it</source>
+        <translation>Spremljena izmijenjenu mapu prije zatvaranja</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3779"/>
+        <source>Discard changes</source>
+        <translation>Odbaci promjene</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3879"/>
+        <location filename="../mainwindow.cpp" line="5844"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <translation>Ne mogu naći program za pregledavanje %1.</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3880"/>
+        <location filename="../mainwindow.cpp" line="5845"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>Molim koristite postavke-&gt;</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3880"/>
+        <location filename="../mainwindow.cpp" line="4984"/>
+        <source>Set application to open an URL</source>
+        <translation>Postavi aplikaciju za otvaranje URLa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3922"/>
+        <source>Couldn&apos;t start %1 to open a new tab in %2.</source>
+        <translation>Ne mogu pokrenuti %1 za otvatanje nove kartice u %2.</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3997"/>
+        <source>Enter URL:</source>
+        <translation>Unesi URL:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4020"/>
+        <source>HTML</source>
+        <comment>Filedialog</comment>
+        <translation>HTML</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4021"/>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation>Tekst</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4022"/>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation>Proračunska tablica</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4023"/>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation>Tekstualnidokument</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4024"/>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation>Slike</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4028"/>
+        <source>Set URL to a local file</source>
+        <translation>Postavi URL za lokalnu datoteku</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4134"/>
+        <source>Couldn&apos;t open map %1</source>
+        <translation>Ne mogu otvoriti mapu %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4186"/>
+        <location filename="../mainwindow.cpp" line="4188"/>
+        <source>Link to another map</source>
+        <translation>Veza na drugu mapu</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4247"/>
+        <source>Enter sleep time (number of days or date YYYY-MM-DD or DD.MM[.YYYY]</source>
+        <comment>task sleep time dialog</comment>
+        <translation>Unesi vrijeme spavanja (broj dana ili datum YYYY-MM-DD ili DD.MM[.YYYY]</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4264"/>
+        <source>Couldn&apos;t set sleep time to %1.
+</source>
+        <translation>Ne mogu postaviti spavanje na %1.</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4289"/>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation>%1 predmet(a) na mapi
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4307"/>
+        <source>branches</source>
+        <comment>Info about map</comment>
+        <translation>grane</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4308"/>
+        <source>notes</source>
+        <comment>Info about map</comment>
+        <translation>bilješke</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4309"/>
+        <source>images</source>
+        <comment>Info about map</comment>
+        <translation>slike</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4310"/>
+        <source>tasks</source>
+        <comment>Info about map</comment>
+        <translation>zadatci</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4311"/>
+        <source>slides</source>
+        <comment>Info about map</comment>
+        <translation>slajdovi</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4312"/>
+        <source>xLinks</source>
+        <comment>Info about map</comment>
+        <translation>xLinkovi</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4970"/>
+        <location filename="../mainwindow.cpp" line="5845"/>
+        <source>Set application to open PDF files</source>
+        <translation>Postavi aplikaciju za otvaranje PDF datoteka</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5003"/>
+        <location filename="../mainwindow.cpp" line="5013"/>
+        <source>Set application to zip/unzip files</source>
+        <translation>Postavi aplikaciju za komprimiranje/raspakiravanje datoteka</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5031"/>
+        <source>Directory with vym macros:</source>
+        <translation>Direktorij sa vym makroima:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5044"/>
+        <source>Number of undo/redo levels:</source>
+        <translation>Broj poništi/ponovi nivoa:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5048"/>
+        <source>VYM -Information:</source>
+        <translation>VYM-informacije:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5049"/>
+        <source>Settings have been changed. The next map opened will have &quot;%1&quot; undo/redo levels</source>
+        <translation>Postavke su se promijenile. Sljedeća otvorena mapa će imati %1 poništi/ponovi nivoa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5069"/>
+        <source>Number of seconds before autosave:</source>
+        <translation>Broj sekundi do automatskog spasa:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5079"/>
+        <source>Set author for new maps (used in lockfile)</source>
+        <translation>Postavi autora nove mape (korišteno u zaključanoj datoteci)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5080"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation>nepoznati korisnik</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5091"/>
+        <source>Number of parents shown in find results:</source>
+        <translation>Broj prikazanih roditelja u rezultatima pretrage:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5101"/>
+        <source>Number of parents shown for a task:</source>
+        <translation>Broj prikazanih roditelja za zadatak:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5452"/>
+        <source>History for %1</source>
+        <comment>Window Caption</comment>
+        <translation>Povijest za %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5475"/>
+        <source>Export in last used format (%1) to: %2</source>
+        <comment>status tip</comment>
+        <translation>Izvezi po zadnje korištenom formatu (%1)  u: %2</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5830"/>
+        <source>Critcal error</source>
+        <translation>Kritična greška</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5831"/>
+        <source>Couldn&apos;t find the documentation %1 in:
+%2</source>
+        <translation>Ne mogu naći dokumentaciju %1 u: %2</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5859"/>
+        <source>Load vym example map</source>
+        <translation>Učitaj vym mapu primjera</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5990"/>
+        <source>Please allow vym to download release notes!</source>
+        <translation>Molim da dozvolite vymu da skine bilješke izdanja!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6011"/>
+        <source>&lt;html&gt;&lt;h3&gt;Do you allow vym to check online for updates or release notes?&lt;/h3&gt;If you allow, vym will &lt;ul&gt;&lt;li&gt;check once for release notes&lt;/li&gt;&lt;li&gt;check regulary for updates and notify you in case you should update, e.g. if there are important bug fixes available&lt;/li&gt;&lt;li&gt;receive a cookie with a random ID and send vym version and platform name and the ID  (e.g. &quot;Windows&quot; or &quot;Linux&quot;) back to me, Uwe Drechsel.&lt;p&gt;As vym developer I am motivated to see many people using vym. Of course I am curious to see, on which system vym is used. Maintaining each of the systems requires a lot of my (spare) time.&lt;/p&gt; &lt;p&gt;No other data than above will be sent, especially no private data will be collected or sent.(Check the source code, if you don&apos;t believe.)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;If you do not allow, &lt;ul&gt;&lt;li&gt;nothing will be downloaded and especially I will &lt;b&gt;not be motivated&lt;/b&gt; to spend some more thousands of hours on developing a free software tool.&lt;/ul&gt;Please allow vym to check for updates :-)</source>
+        <translation type="unfinished">&lt;html&gt;&lt;h3&gt;Da li dozvoljavate vymu da online provjerava nadogradnje ili bilješke izdanja?&lt;/h3&gt;Ako dozvoljavate, vym će&lt;ul&gt;&lt;li&gt;provjeriti jednom bilješke izdanja&lt;/li&gt;&lt;li&gt;regularno provjeravati nadogradnje i upozoriti u slučaju da je vym potrebno ažurirati radi raspoloživih važnih zakrpi&lt;/li&gt;&lt;li&gt;dobiti kolačić sa nasumičnim IDjem i poslati uz njega vym verziju i platformu (&quot;Windows&quot; ili &quot;Linux&quot;) nazad meni, Uwe Drechselu.&lt;p&gt;Kao vym programer, ja sam motiviran vidjeti što više ljudi kako koriste vym. Naravno, znatiželjan sam vidjeti na kojim sustavima se vym koristi. Održavanje svakog od sustava zahtijeva puno mog (slobodnog) vremena.&lt;/p&gt; &lt;p&gt;Ništa drugo od podataka neće biti poslano, osobito nikakvi privatni podatci neće biti skupljani ili poslani (Provjerite izvorni kod ako ne vjerujete.)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;Ako ne dozvoljavate,&lt;ul&gt;&lt;li&gt;ništa neće biti poslano a posbno ja &lt;b&gt;neću biti motiviran&lt;/b&gt; provesti još nekoliko tisuća sati u razvijanju besplatnog softverskog alata.&lt;/ul&gt;Molim Vas dozvolite vymu da provjerava nadogradnje :-)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6040"/>
+        <source>Allow</source>
+        <translation>Dozvoli</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6041"/>
+        <source>Do not allow</source>
+        <translation>Nemoj dozvoliti</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6047"/>
+        <source>Thank you for enabling downloads!</source>
+        <translation>Hvala za dozvoljavanje skidanja!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6070"/>
+        <source>Update information</source>
+        <translation>Ažuriraj informacije</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6076"/>
+        <source>vym is up to date.</source>
+        <comment>MainWindow</comment>
+        <translation>vym je ažuran.</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6127"/>
+        <source>Checking for updates...</source>
+        <comment>MainWindow</comment>
+        <translation>Provjeri ažuriranja...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6155"/>
+        <source>Please allow vym to check for updates!</source>
+        <translation>Molim da dozvolite vymu da provjeri ako postoje ažuriranja!</translation>
+    </message>
+</context>
+<context>
+    <name>MapEditor</name>
+    <message>
+        <location filename="../mapeditor.cpp" line="43"/>
+        <source>Map Editor</source>
+        <comment>Shortcut scope</comment>
+        <translation>Uređivač mapa</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="111"/>
+        <location filename="../mapeditor.cpp" line="116"/>
+        <source>Edit heading</source>
+        <comment>MapEditor</comment>
+        <translation>Uredi naslov</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="510"/>
+        <source>Print vym map</source>
+        <comment>MapEditor</comment>
+        <translation>Ispis vym mape</translation>
+    </message>
+</context>
+<context>
+    <name>NoteEditor</name>
+    <message>
+        <location filename="../noteeditor.cpp" line="13"/>
+        <source>Note Editor</source>
+        <comment>Name of editor shown as window title</comment>
+        <translation>Uređivač bilješki</translation>
+    </message>
+</context>
+<context>
+    <name>QObject</name>
+    <message>
+        <location filename="../exports.cpp" line="56"/>
+        <location filename="../imports.cpp" line="18"/>
+        <location filename="../main.cpp" line="476"/>
+        <location filename="../scripteditor.cpp" line="77"/>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Error</source>
+        <translation>Greška</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="57"/>
+        <location filename="../imports.cpp" line="19"/>
+        <source>Couldn&apos;t access temporary directory
+</source>
+        <translation>Ne mogu dohvatiti privremeni direktorij</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="146"/>
+        <source>Warning: Overwriting file</source>
+        <translation>Upozorenje: Prepisivanje datoteke</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="147"/>
+        <source>Exporting to %1 will overwrite the existing file:
+%2</source>
+        <translation>Izvoz u %1 će prepisati postojeću datoteku:
+%2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <location filename="../exports.cpp" line="373"/>
+        <source>Export as ASCII</source>
+        <translation>Izvezi kao ASCII</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <source>(still experimental)</source>
+        <translation>(experimentalno)</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <location filename="../exports.cpp" line="381"/>
+        <location filename="../exports.cpp" line="511"/>
+        <location filename="../exports.cpp" line="954"/>
+        <location filename="../exports.cpp" line="1048"/>
+        <location filename="../exports.cpp" line="1128"/>
+        <location filename="../exports.cpp" line="1236"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <location filename="../exports.cpp" line="1333"/>
+        <location filename="../exports.cpp" line="1343"/>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Critical Export Error</source>
+        <translation>Kritična greška izvoza</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <source>Could not export as AO to %1</source>
+        <translation>Ne mogu izvesti kao AO u %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="236"/>
+        <location filename="../exports.cpp" line="382"/>
+        <location filename="../exports.cpp" line="512"/>
+        <location filename="../exports.cpp" line="957"/>
+        <location filename="../exports.cpp" line="1049"/>
+        <location filename="../exports.cpp" line="1130"/>
+        <location filename="../exports.cpp" line="1309"/>
+        <source>Export failed.</source>
+        <translation>Neuspješan izvoz.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="381"/>
+        <source>Could not export as ASCII to %1</source>
+        <translation>Ne mogu izvesti kao ASCII u %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="503"/>
+        <source>Export as CSV</source>
+        <translation>Izvezi kao CSV</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="511"/>
+        <source>Could not export as CSV to %1</source>
+        <translation>Ne mogu izvesti kao CSV u %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="560"/>
+        <location filename="../exports.cpp" line="590"/>
+        <source>Exporting the %1 bookmarks will overwrite
+your existing bookmarks file.</source>
+        <translation>Izvoz %1 knjiških oznaka će prepisati
+postojeću datoteku knjiških oznaka.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="561"/>
+        <location filename="../exports.cpp" line="591"/>
+        <source>Warning: Overwriting %1 bookmarks</source>
+        <translation>Upozorenje: Prepisivanje %1 knjiške oznake</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="579"/>
+        <location filename="../macros.cpp" line="39"/>
+        <location filename="../main.cpp" line="378"/>
+        <source>Warning</source>
+        <translation>Upozorenje</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="580"/>
+        <source>Couldn&apos;t find script %1
+to notifiy Browsers of changed bookmarks.</source>
+        <translation>Ne mogu naći skriptu %1
+za obavještavanje Web preglednika o izmijenjenom knjiškim oznakama.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="837"/>
+        <source>Contents:</source>
+        <comment>Used in HTML export</comment>
+        <translation>Sadržaj:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="893"/>
+        <source>Export aborted.</source>
+        <translation>Izvoz prekinut.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="909"/>
+        <location filename="../exports.cpp" line="933"/>
+        <location filename="../exports.cpp" line="944"/>
+        <source>Critical</source>
+        <translation>Kritično</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="910"/>
+        <source>Could not find stylesheet %1</source>
+        <translation>Ne mogu naći stilski predložak %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="920"/>
+        <source>Error</source>
+        <comment>ExportHTML</comment>
+        <translation>Greška</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="921"/>
+        <source>Could not copy
+%1 to
+%2</source>
+        <comment>ExportHTML</comment>
+        <translation>Ne mogu kopirati
+%1 u
+%2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="934"/>
+        <source>Trying to create directory for flags:</source>
+        <translation>Pokušavam kreirati direktorij za zastavice:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="935"/>
+        <source>Could not create %1</source>
+        <translation>Ne mogu kreirati %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="945"/>
+        <source>Could not copy %1 to %2</source>
+        <translation>Ne mogu kopirati %1 u %2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="955"/>
+        <source>Trying to save HTML file:</source>
+        <translation>Pokušavam spremiti HTML datoteku:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="956"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <source>Could not write %1</source>
+        <translation>Ne mogu zapisati %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1048"/>
+        <source>Could not export as OrgMode to %1</source>
+        <translation>Ne mogu izvesti kao OrgMode u %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1129"/>
+        <source>Could not export as LaTeX to %1</source>
+        <translation>Ne mogu izvesti kao LaTeX u %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1189"/>
+        <source>Export as LibreOffice Impress presentation</source>
+        <translation>Izvezi kao LibreOffice Impress prezentaciju</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1236"/>
+        <source>No objects in map!</source>
+        <translation>Nema objekata u mapi!</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1333"/>
+        <source>Couldn&apos;t read settings from &quot;%1&quot;</source>
+        <translation>Ne mogu pročitati postavke iz &quot;%1&quot;</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1343"/>
+        <source>Check &quot;%1&quot; in
+%2</source>
+        <translation>Provjeri &quot;%1&quot; u
+%2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Could not read %1</source>
+        <translation>Ne mogu pročitati %1</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="88"/>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <comment>write directory</comment>
+        <translation>Direktorij %1nije prazan.
+Želite li reskirati prepisivanje njegovog sadržaja?</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="94"/>
+        <source>Overwrite</source>
+        <translation>Prepiši</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="95"/>
+        <source>Cancel</source>
+        <translation>Odustani</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="264"/>
+        <location filename="../file.cpp" line="281"/>
+        <location filename="../file.cpp" line="294"/>
+        <location filename="../file.cpp" line="303"/>
+        <location filename="../file.cpp" line="311"/>
+        <location filename="../file.cpp" line="329"/>
+        <location filename="../file.cpp" line="338"/>
+        <location filename="../file.cpp" line="346"/>
+        <location filename="../file.cpp" line="356"/>
+        <location filename="../file.cpp" line="365"/>
+        <location filename="../file.cpp" line="373"/>
+        <location filename="../file.cpp" line="380"/>
+        <location filename="../file.cpp" line="389"/>
+        <location filename="../file.cpp" line="410"/>
+        <location filename="../file.cpp" line="432"/>
+        <location filename="../file.cpp" line="442"/>
+        <location filename="../file.cpp" line="455"/>
+        <location filename="../main.cpp" line="412"/>
+        <location filename="../xsltproc.cpp" line="78"/>
+        <location filename="../xsltproc.cpp" line="84"/>
+        <source>Critical Error</source>
+        <translation>Kritična greška</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="265"/>
+        <source>Couldn&apos;t move existing file out of the way before saving.</source>
+        <translation>Ne mogu ukloniti postojeću datoteku s puta prije spremanja.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="282"/>
+        <location filename="../file.cpp" line="411"/>
+        <source>Couldn&apos;t start tool to decompress data.</source>
+        <translation>Ne mogu pokrenuti alat za raspakiravanje podataka.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="295"/>
+        <location filename="../file.cpp" line="330"/>
+        <source>Couldn&apos;t start zip to compress data.</source>
+        <translation>Ne mogu pokrenuti zip za sažimanje podataka.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="304"/>
+        <location filename="../file.cpp" line="339"/>
+        <source>zip didn&apos;t exit normally</source>
+        <translation>zip nije normalno završio</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="357"/>
+        <source>Couldn&apos;t rename %1 back to %2</source>
+        <translation>Ne mogu preimenovati %1 nazad u %2</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="366"/>
+        <source>Couldn&apos;t remove target of old symbolic link %1</source>
+        <translation>Ne mogu ukloniti izlaz na staru simboličku vezu %1</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="374"/>
+        <source>Couldn&apos;t rename output to target of old symbolic link %1</source>
+        <translation>Ne mogu preimenovati izlaz na staru simboličku vezu %1</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="381"/>
+        <source>Couldn&apos;t link from %1 to target of old symbolic link %2</source>
+        <translation>Ne mogu povezati %1 na staru simboličku vezu %2</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="390"/>
+        <source>Saved %1, but couldn&apos;t remove %2</source>
+        <translation>Spremljena datoteka %1, ali ne mogu obrisati %2</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="433"/>
+        <source>Couldn&apos;t start %1 to decompress data.</source>
+        <translation>Ne mogu pokrenuti %1 za raspakiravanje podataka.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="443"/>
+        <location filename="../xsltproc.cpp" line="85"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation>%1 nije normalno završio</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="40"/>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation>Ne mogu naći makro u %1.</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>Molim koristite postavke-&gt;</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Set directory for vym macros</source>
+        <translation>Postavi direktorij za vym makroe</translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="413"/>
+        <source>Couldn&apos;t find tool to unzip data. Please download and install 7z and set path in Settings menu:
+ </source>
+        <translation>Ne mogu naći alat za raspakiravanje podataka. Skinite i instalirajte 7z te podesite putanje u postavkama:
+</translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="477"/>
+        <location filename="../scripteditor.cpp" line="78"/>
+        <source>Couldn&apos;t open &quot;%1&quot;
+%2.</source>
+        <translation>Ne mogu otvoriti &quot;%1&quot; %2.</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Couldn&apos;t save &quot;%1&quot;</source>
+        <translation>Ne mogu spremiti &quot;%1&quot;</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3804"/>
+        <source>No Bugzilla client found.  For openSUSE you can install by (running as root):
+
+</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation>Ne mogu naći Bugzilla klijenta. Na openSUSE ga možete instalirati (kao root korisnik):
+
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3809"/>
+        <source>Alternatively you can also add the repository
+and install the perl module for Bugzilla access using YaST</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation>Alternativno možete dodati repozitorij
+i instalirati perl modul za pristup Bugzili korištenjem YaSTa</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3812"/>
+        <source>Warning: Couldn&apos;t find Bugzilla client</source>
+        <comment>VymModel</comment>
+        <translation>Upozorenje: Ne mogu naći Bugzilla klijenta</translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="80"/>
+        <source>Warning: Version Problem</source>
+        <translation>Upozorenje: Problem s verzijom</translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="81"/>
+        <source>&lt;h3&gt;Map is newer than VYM&lt;/h3&gt;&lt;p&gt;The map you are just trying to load was saved using vym %1. The version of this vym is %2. If you run into problems after pressing the ok-button below, updating vym should help.&lt;/p&gt;</source>
+        <translation>&lt;h3&gt;Mapa je novija od VYMa&lt;/h3&gt;&lt;p&gt;Mapa koju pokušavate učitati je spremljena pomoću vym %1. Verzija ovog vyma je %2. Ako se suočite s problemima, osvježavanje vyma bi trebalo pomoći.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="79"/>
+        <source>Could not start %1</source>
+        <translation>Ne mogu pokrenuti %1</translation>
+    </message>
+</context>
+<context>
+    <name>ScriptEditor</name>
+    <message>
+        <location filename="../scripteditor.ui" line="14"/>
+        <source>Form</source>
+        <translation>Obrazac</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="49"/>
+        <source>Tab 1</source>
+        <translation>1. kartica</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="55"/>
+        <source>Save to selected slide</source>
+        <translation>Spremi u odabrani slajd</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="91"/>
+        <location filename="../scripteditor.ui" line="145"/>
+        <source>Run</source>
+        <translation>Pokreni</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="105"/>
+        <source>Tab 2</source>
+        <translation>2. kartica</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="121"/>
+        <source>Current key:</source>
+        <translation>Trenutni ključ:</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="131"/>
+        <source>Load</source>
+        <translation>Učitaj</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="138"/>
+        <source>Save</source>
+        <translation>Spremi</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="45"/>
+        <source>Slide</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation>Slajd</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="46"/>
+        <source>Macro</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation>Makro</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="65"/>
+        <source>Save</source>
+        <comment>ScriptEditor</comment>
+        <translation>Spremi</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Warning</source>
+        <translation>Upozorenje</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <source>Couldn&apos;t get model to save script into slide!</source>
+        <translation>Ne mogu dohvatiti model za spremanje skripte u slajd!</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Couldn&apos;t find slide to save script into slide!</source>
+        <translation>Ne mogu naći slajd u koji mogu spremiti skriptu!</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="143"/>
+        <source>Save script</source>
+        <translation>Spremi skriptu</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="155"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation>Datoteka %1
+već postoji.
+Želite li ju prepisati?</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="160"/>
+        <source>Overwrite</source>
+        <translation>Prepiši</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="161"/>
+        <source>Cancel</source>
+        <translation>Odustani</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="184"/>
+        <source>Load script</source>
+        <translation>Učitaj skriptu</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="194"/>
+        <source>Error</source>
+        <translation>Greška</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="195"/>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation>Ne mogu otvoriti %1.
+</translation>
+    </message>
+</context>
+<context>
+    <name>ShowTextDialog</name>
+    <message>
+        <location filename="../showtextdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>Dialog</translation>
+    </message>
+    <message>
+        <location filename="../showtextdialog.ui" line="50"/>
+        <source>Close</source>
+        <translation>Zatvori</translation>
+    </message>
+</context>
+<context>
+    <name>TaskEditor</name>
+    <message>
+        <location filename="../taskeditor.cpp" line="38"/>
+        <source>Current map</source>
+        <comment>TaskEditor</comment>
+        <translation>Trenutna mapa</translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="45"/>
+        <source>Active tasks</source>
+        <comment>TaskEditor</comment>
+        <translation>Aktivni zadatci</translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="52"/>
+        <source>New tasks</source>
+        <comment>TaskEditor</comment>
+        <translation>Novi zadatci</translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="68"/>
+        <location filename="../taskeditor.cpp" line="73"/>
+        <source>Edit heading</source>
+        <comment>TaskEditor</comment>
+        <translation>Uređivanje naslova</translation>
+    </message>
+</context>
+<context>
+    <name>TaskModel</name>
+    <message>
+        <location filename="../taskmodel.cpp" line="127"/>
+        <source>Prio</source>
+        <comment>TaskEditor</comment>
+        <translation>Prioritet</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="129"/>
+        <source>Status</source>
+        <comment>TaskEditor</comment>
+        <translation>Status</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="131"/>
+        <source>Age total</source>
+        <comment>TaskEditor</comment>
+        <translatorcomment>According to PDF documentation</translatorcomment>
+        <translation>Kreiran</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="133"/>
+        <source>Age mod.</source>
+        <comment>TaskEditor</comment>
+        <translatorcomment>According to PDF documentation</translatorcomment>
+        <translation>Modificiran</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="135"/>
+        <source>Sleep</source>
+        <comment>TaskEditor</comment>
+        <translation>Spavaj</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="137"/>
+        <source>Map</source>
+        <comment>TaskEditor</comment>
+        <translation>Mapa</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="139"/>
+        <source>Task</source>
+        <comment>TaskEditor</comment>
+        <translation>Zadatak</translation>
+    </message>
+</context>
+<context>
+    <name>TextEditor</name>
+    <message>
+        <location filename="../texteditor.cpp" line="49"/>
+        <source>Ready</source>
+        <comment>Statusbar message</comment>
+        <translation>Spreman</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="220"/>
+        <source>No filename available for this note.</source>
+        <comment>Statusbar message</comment>
+        <translation>Nema imena datoteke za ovu bilješku.</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="313"/>
+        <source>Note Actions</source>
+        <translation>Akcije bilješki</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="315"/>
+        <source>&amp;Note</source>
+        <comment>Menubar</comment>
+        <translation>&amp;Bilješka</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="317"/>
+        <location filename="../texteditor.cpp" line="371"/>
+        <location filename="../texteditor.cpp" line="435"/>
+        <source>Texteditor</source>
+        <comment>Shortcuts</comment>
+        <translation>Uređivač teksta</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="319"/>
+        <source>&amp;Import...</source>
+        <translation>&amp;Uvoz...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="329"/>
+        <source>&amp;Export...</source>
+        <translation>&amp;Izvoz...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="339"/>
+        <source>Export &amp;As... (HTML)</source>
+        <translation>Izvezi &amp;kao... (HTML)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="344"/>
+        <source>Export &amp;As...(ASCII)</source>
+        <translation>Izvezi &amp;kao... (ASCII)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="354"/>
+        <source>&amp;Print...</source>
+        <translation>&amp;Ispis...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="362"/>
+        <source>&amp;Delete All</source>
+        <translation>&amp;Briši sve</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="372"/>
+        <source>Edit Actions</source>
+        <translation>Uredi akcije</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="375"/>
+        <source>Edi&amp;t</source>
+        <translation>&amp;Uredi</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="378"/>
+        <source>&amp;Undo</source>
+        <translation>&amp;Poništi</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="387"/>
+        <source>&amp;Redo</source>
+        <translation>&amp;Ponovi</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="397"/>
+        <source>Select and copy &amp;all</source>
+        <translation>Odaberi i kopiraj &amp;sve</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="405"/>
+        <source>&amp;Copy</source>
+        <translation>&amp;Kopiraj</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="414"/>
+        <source>Cu&amp;t</source>
+        <translation>&amp;Izreži</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="423"/>
+        <source>&amp;Paste</source>
+        <translation>&amp;Zalijepi</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="436"/>
+        <source>Font hints</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>Moduliranja slova</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="438"/>
+        <source>F&amp;ormat</source>
+        <translation>&amp;Format</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="442"/>
+        <source>&amp;Font hint</source>
+        <translation>&amp;Moduliranje slova</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="453"/>
+        <source>&amp;Richtext</source>
+        <translation>&amp;Bogati tekst</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="463"/>
+        <source>Fonts</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>Fontovi</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="489"/>
+        <source>Format</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>Format</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="494"/>
+        <source>&amp;Color...</source>
+        <translation>&amp;Boja...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="500"/>
+        <source>&amp;Bold</source>
+        <translation>&amp;Podebljano</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="510"/>
+        <source>&amp;Italic</source>
+        <translation>&amp;Kurziv</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="520"/>
+        <source>&amp;Underline</source>
+        <translation>&amp;Podvučeno</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="534"/>
+        <source>Subs&amp;cript</source>
+        <translation>In&amp;deks</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="544"/>
+        <source>Su&amp;perscript</source>
+        <translation>&amp;Eksponent</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="558"/>
+        <source>&amp;Left</source>
+        <translation>&amp;Lijevo</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="564"/>
+        <source>C&amp;enter</source>
+        <translation>C&amp;entriraj</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="570"/>
+        <source>&amp;Right</source>
+        <translation>&amp;Desno</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="576"/>
+        <source>&amp;Justify</source>
+        <translation>&amp;Složi</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="586"/>
+        <source>&amp;Settings</source>
+        <translation>&amp;Postavke</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="589"/>
+        <source>Set &amp;fixed font</source>
+        <translation>Postavi &amp;fiksni font</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="594"/>
+        <source>Set &amp;variable font</source>
+        <translation>Postavi &amp;variabilni font</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="599"/>
+        <source>&amp;fixed font is default</source>
+        <translation>&amp;fiksni font je zadan</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="607"/>
+        <source>Set empty editor background color</source>
+        <comment>TextEditor</comment>
+        <translation>Postavi boju pozadine praznog uređivača teksta</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="612"/>
+        <source>Set filled editor background color</source>
+        <comment>TextEditor</comment>
+        <translation>Postavi boju pozadine punog uređivača teksta</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="617"/>
+        <source>Set inactive editor background color</source>
+        <comment>TextEditor</comment>
+        <translation>Postavi boju pozadine neaktivnog uređivača teksta</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="622"/>
+        <source>Set default font color</source>
+        <comment>TextEditor</comment>
+        <translation>Odredi zadanu boju fonta</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="634"/>
+        <source>Note Editor</source>
+        <translation>Uređivač bilješki</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="783"/>
+        <source>Export Note to single file</source>
+        <translation>Izvezi bilješku u jednu datoteku</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="798"/>
+        <location filename="../texteditor.cpp" line="874"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation>Datoteka %1
+već postoji.
+Želite li ju prepisati?</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="803"/>
+        <location filename="../texteditor.cpp" line="879"/>
+        <source>Overwrite</source>
+        <translation>Prepiši</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="804"/>
+        <location filename="../texteditor.cpp" line="880"/>
+        <source>Cancel</source>
+        <translation>Odustani</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="822"/>
+        <source>Couldn&apos;t export note </source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation>Ne mogu izvesti bilješku</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="864"/>
+        <source>Export Note to single file (ASCII)</source>
+        <translation>Izvezi bilješku u jednu datoteku (ASCII)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="907"/>
+        <source>Print</source>
+        <comment>TextEditor</comment>
+        <translation>Ispis</translation>
+    </message>
+</context>
+<context>
+    <name>TreeEditor</name>
+    <message>
+        <location filename="../treeeditor.cpp" line="27"/>
+        <source>Select upper object</source>
+        <comment>Tree Editor</comment>
+        <translation>Odaberi gornji objekt</translation>
+    </message>
+    <message>
+        <location filename="../treeeditor.cpp" line="33"/>
+        <source>Select lower object</source>
+        <comment>Tree Editor</comment>
+        <translation>Odaberi donji objekt</translation>
+    </message>
+</context>
+<context>
+    <name>VymModel</name>
+    <message>
+        <location filename="../vymmodel.cpp" line="126"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation>nepoznati korisnik</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="149"/>
+        <source>unnamed</source>
+        <translation>neimenovana</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="445"/>
+        <location filename="../vymmodel.cpp" line="481"/>
+        <location filename="../vymmodel.cpp" line="566"/>
+        <location filename="../vymmodel.cpp" line="622"/>
+        <source>Critical Parse Error</source>
+        <translation>Kritična greška raščlanjivanja</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="501"/>
+        <location filename="../vymmodel.cpp" line="551"/>
+        <source>Critical Load Error</source>
+        <translation>Kritična greška učitavanja</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="502"/>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation>Ne mogu kreirati privremeni direktorij prije učitavanja
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="552"/>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation>Ne mogu naći mapu (*.xml) u .vym arhivi.</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="671"/>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation>Mapa %1
+ne koristi sažeti vym format datoteke.
+Nesažeto zapisivanje će zapisati slike 
+i zastavice pa može prepisati datoteke u postojećem direktoriju
+
+Želite li zapisati u mapu</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="679"/>
+        <source>compressed (vym default)</source>
+        <translation>Komprimirano (vym zadano)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="680"/>
+        <source>uncompressed</source>
+        <translation>raspakirano</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="681"/>
+        <location filename="../vymmodel.cpp" line="876"/>
+        <source>Cancel</source>
+        <translation>Odustani</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="710"/>
+        <location filename="../vymmodel.cpp" line="715"/>
+        <source>Save Error</source>
+        <translation>Greška spremanja</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="711"/>
+        <source>%1
+could not be removed before saving</source>
+        <translation>%1
+ne može biti uklonjena prije spremanja</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="716"/>
+        <source>%1
+could not be renamed before saving</source>
+        <translation>%1
+ne može biti preimenovana prije spremanja</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="728"/>
+        <source>Critical Save Error</source>
+        <translation>Kritična greška spremanja</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="729"/>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation>Ne mogu kreirati privremeni direktorij prije spremanja
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="799"/>
+        <location filename="../vymmodel.cpp" line="852"/>
+        <location filename="../vymmodel.cpp" line="5795"/>
+        <source>Images</source>
+        <translation>Slike</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="799"/>
+        <location filename="../vymmodel.cpp" line="852"/>
+        <source>All</source>
+        <comment>Filedialog</comment>
+        <translation>Sve</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="804"/>
+        <source>Load image</source>
+        <translation>Učitaj sliku</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="856"/>
+        <source>Save image</source>
+        <translation>Spremi sliku</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="868"/>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation>Datoteka %1 već postoji.
+Želite li ju prepisati?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="875"/>
+        <source>Overwrite</source>
+        <translation>Prepiši</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="890"/>
+        <location filename="../vymmodel.cpp" line="892"/>
+        <location filename="../vymmodel.cpp" line="5212"/>
+        <source>Critical Error</source>
+        <translation>Kritična greška</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="890"/>
+        <source>Unsupported format in %1</source>
+        <translation>Nepodržan format u %1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="892"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation>Ne mogu spremiti %1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="922"/>
+        <source>Critical Import Error</source>
+        <translation>Kritična greška uvoza</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="922"/>
+        <source>Cannot find the directory %1</source>
+        <translation>Ne mogu naći direktorij %1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="974"/>
+        <location filename="../vymmodel.cpp" line="977"/>
+        <source>Choose directory structure to import</source>
+        <translation>Odabiri strukturu direktorija za uvoz</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="992"/>
+        <source>unknown user</source>
+        <comment>Default for lockfiles of maps</comment>
+        <translation>nepoznati korisnik</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1011"/>
+        <source>Map seems to be already opened in another vym instance!
+
+ Map is locked by &quot;%1&quot; on &quot;%2&quot;
+
+Please only delete the lockfile, if you are sure nobody else is currently working on this map.</source>
+        <translation>Izgleda da je mapa otvorena u drugoj vym instanci!
+
+Mapa je zaključana od %1 na %2. 
+
+Molim vas obrišite datoteku zaključavanja ako ste sigurni da trenutno nitko ne radi na ovoj mapi.</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1015"/>
+        <source>Warning: Map already opended</source>
+        <comment>VymModel</comment>
+        <translation>Upozorenje: Mapa je već otvorena</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1020"/>
+        <source>Removed lockfile for %1</source>
+        <translation>Uklonjena datoteka zaključavanja za %1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1025"/>
+        <location filename="../vymmodel.cpp" line="1251"/>
+        <location filename="../vymmodel.cpp" line="5160"/>
+        <source>Warning</source>
+        <translation>Upozorenje</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1026"/>
+        <source>Couldn&apos;t remove lockfile for %1</source>
+        <translation>Ne mogu ukloniti datoteku zaključavanja za %1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1033"/>
+        <source>Cannot create lockfile of map! It will be opened in readonly mode.
+
+</source>
+        <translation>Ne mogu kreirati datoteku zaključavanja za mapu! Bit će otvorena samo za čitanje.
+
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1036"/>
+        <source>Warning</source>
+        <comment>VymModel</comment>
+        <translation>Upozorenje</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1128"/>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation>Datoteka mape se na disku promijenila:
+
+   %1
+
+Želite li ponovo učitati mapu iz nove datoteke?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1135"/>
+        <source>Reload</source>
+        <translation>Ponovo učitaj</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1136"/>
+        <source>Ignore</source>
+        <translation>Ignoriraj</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1251"/>
+        <source>Redo failed:
+%1</source>
+        <translation>Neuspješno ponavljanje: %1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1286"/>
+        <source>Autosave disabled during undo.</source>
+        <translation>Automatski spas onemogućen za vrijeme poništavanja.</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2013"/>
+        <source>Note</source>
+        <comment>FindAll in VymModel</comment>
+        <translation>Bilješka</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2737"/>
+        <source>Image</source>
+        <comment>Default name for new image</comment>
+        <translation>Slika</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2970"/>
+        <source>New map</source>
+        <comment>New map</comment>
+        <translation>Nova mapa</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3834"/>
+        <source>Contacting Bugzilla...</source>
+        <comment>VymModel</comment>
+        <translation>Kontaktiranje Bugzille ...</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5160"/>
+        <source>Script aborted:
+%1</source>
+        <translation>Skripta je prekinuta: 
+%1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5197"/>
+        <source>Export map as image</source>
+        <translation>Izvezi mapu kao sliku</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5212"/>
+        <source>Couldn&apos;t save QImage %1 in format %2</source>
+        <translation>Ne mogu spremiti QImage %1 u formatu %2</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5237"/>
+        <source>Export map as PDF</source>
+        <translation>Izvezi mapu kao PDF</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5292"/>
+        <source>Export map as SVG</source>
+        <translation>Izvezi mapu kao SVG</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5326"/>
+        <source>Export map as XML</source>
+        <translation>Izvezi mapu kao XML</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5333"/>
+        <source>Export XML to directory</source>
+        <translation>Izvezi XML u direktorij</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5379"/>
+        <source>Critical Export Error</source>
+        <translation>Kritična greška izvoza</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5461"/>
+        <source>Export as csv</source>
+        <translation>Izvezi kao CSV</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5461"/>
+        <source>(still experimental)</source>
+        <translation>(experimentalno)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5798"/>
+        <source>Load background image</source>
+        <translation>Učitaj sliku pozadine</translation>
+    </message>
+</context>
+<context>
+    <name>VymProcess</name>
+    <message>
+        <location filename="../vymprocess.cpp" line="43"/>
+        <location filename="../vymprocess.cpp" line="48"/>
+        <source>Critical Error</source>
+        <translation>Kritična greška</translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="44"/>
+        <source>Could not start %1</source>
+        <translation>Ne mogu pokrenuti %1</translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="49"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation>%1 nije normalno završio</translation>
+    </message>
+</context>
+<context>
+    <name>VymView</name>
+    <message>
+        <location filename="../vymview.cpp" line="34"/>
+        <source>Tree Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation>Uređivač stabla</translation>
+    </message>
+    <message>
+        <location filename="../vymview.cpp" line="52"/>
+        <source>Slide Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation>Uređivač slajdova</translation>
+    </message>
+</context>
+<context>
+    <name>WarningDialog</name>
+    <message>
+        <location filename="../warningdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>Dialog</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="91"/>
+        <source>showAgainBox</source>
+        <translation>prokažiPonovoProzor</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="117"/>
+        <location filename="../warningdialog.cpp" line="45"/>
+        <source>Cancel</source>
+        <translation>Odustani</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="124"/>
+        <source>Ok</source>
+        <translation>U redu</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="10"/>
+        <source>Proceed</source>
+        <translation>Nastavi</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="12"/>
+        <source>Show this message again</source>
+        <translation>Prikaži ovu poruku ponovo</translation>
+    </message>
+</context>
+</TS>
diff --git a/lang/vym.ia.ts b/lang/vym.ia.ts
new file mode 100644 (file)
index 0000000..d70aebb
--- /dev/null
@@ -0,0 +1,4351 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="ia" sourcelanguage="en">
+<context>
+    <name>AboutDialog</name>
+    <message>
+        <location filename="../aboutdialog.cpp" line="106"/>
+        <source>Credits</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation>Gratias</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="221"/>
+        <source>License</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation>Licentia</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="226"/>
+        <source>Ok</source>
+        <comment>Ok Button</comment>
+        <translation>Ok</translation>
+    </message>
+</context>
+<context>
+    <name>AboutTextBrowser</name>
+    <message>
+        <location filename="../aboutdialog.cpp" line="246"/>
+        <source>Warning</source>
+        <comment>About window</comment>
+        <translation>Advertimento</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="247"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <comment>About window</comment>
+        <translation>Il non pote trovar un application pro aperir %1.
+</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>Pro favor usa preferentias-&gt;</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Set application to open an URL...</source>
+        <translation>Fixa application pro aperir un URL...</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyEditor</name>
+    <message>
+        <location filename="../branchpropeditor.ui" line="20"/>
+        <source>Branch Property Editor</source>
+        <translation>Editor de Proprietate de Ramo</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="30"/>
+        <source>Frame</source>
+        <translation>Quadro</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="51"/>
+        <source>Geometry</source>
+        <translation>Geometria</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="64"/>
+        <source>No Frame</source>
+        <translation>Nulle quadro</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="69"/>
+        <source>Rectangle</source>
+        <translation>Rectangulo</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="74"/>
+        <source>Rounded Rectangle</source>
+        <translation>Rectangulo arrotundate </translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="79"/>
+        <source>Ellipse</source>
+        <translation>Ellipse</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="84"/>
+        <source>Cloud</source>
+        <translation>Nube</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="105"/>
+        <source>Padding</source>
+        <translation>Borra</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="112"/>
+        <source>Borderline width</source>
+        <translation>Spissor de margine</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="136"/>
+        <source>Include children</source>
+        <translation>Include infantes</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="169"/>
+        <source>Colors</source>
+        <translation>Colores</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="209"/>
+        <source>Borderline color</source>
+        <translation>Color de margine</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="232"/>
+        <source>Background color</source>
+        <translation>Color de fundo</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="261"/>
+        <source>Layout</source>
+        <translation>Disposition</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="269"/>
+        <source>Include images horizontally</source>
+        <translation>Include images horizontalmente</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="276"/>
+        <source>Include images vertically</source>
+        <translation>Include images verticalmente</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="283"/>
+        <source>Free positioning of children (experimental!)</source>
+        <translation>Libere positionar de filios (experimental!)</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="306"/>
+        <source>Link</source>
+        <translation>Ligamine</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="312"/>
+        <source>Hide link if unselected</source>
+        <translation>Cela ligamine si non selectionate</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="333"/>
+        <source>Attributes</source>
+        <translation>Attributos</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="359"/>
+        <source>+</source>
+        <translation>+</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="366"/>
+        <source>-</source>
+        <translation>-</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.cpp" line="19"/>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation>Editor de proprietate</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyWindow</name>
+    <message>
+        <source>Branch Property Editor</source>
+        <translation type="obsolete">Editor de Proprietate de Ramo</translation>
+    </message>
+    <message>
+        <source>Frame</source>
+        <translation type="obsolete">Quadro</translation>
+    </message>
+    <message>
+        <source>Geometry</source>
+        <translation type="obsolete">Geometria</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <translation type="obsolete">Nulle quadro</translation>
+    </message>
+    <message>
+        <source>Rectangle</source>
+        <translation type="obsolete">Rectangulo</translation>
+    </message>
+    <message>
+        <source>Ellipse</source>
+        <translation type="obsolete">Ellipse</translation>
+    </message>
+    <message>
+        <source>Cloud</source>
+        <translation type="obsolete">Nube</translation>
+    </message>
+    <message>
+        <source>Padding</source>
+        <translation type="obsolete">Borra</translation>
+    </message>
+    <message>
+        <source>Borderline width</source>
+        <translation type="obsolete">Spissor de margine</translation>
+    </message>
+    <message>
+        <source>Include children</source>
+        <translation type="obsolete">Include infantes</translation>
+    </message>
+    <message>
+        <source>Colors</source>
+        <translation type="obsolete">Colores</translation>
+    </message>
+    <message>
+        <source>Borderline color</source>
+        <translation type="obsolete">Color de margine</translation>
+    </message>
+    <message>
+        <source>Background color</source>
+        <translation type="obsolete">Color de fundo</translation>
+    </message>
+    <message>
+        <source>Layout</source>
+        <translation type="obsolete">Disposition</translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <translation type="obsolete">Include images horizontalmente</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <translation type="obsolete">Include images verticalmente</translation>
+    </message>
+    <message>
+        <source>Link</source>
+        <translation type="obsolete">Ligamine</translation>
+    </message>
+    <message>
+        <source>Hide link if unselected</source>
+        <translation type="obsolete">Cela ligamine si non selectionate</translation>
+    </message>
+    <message>
+        <source>Attributes</source>
+        <translation type="obsolete">Attributos</translation>
+    </message>
+    <message>
+        <source>+</source>
+        <translation type="obsolete">+</translation>
+    </message>
+    <message>
+        <source>-</source>
+        <translation type="obsolete">-</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Claude</translation>
+    </message>
+    <message>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation type="obsolete">Editor de proprietate</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadAgent</name>
+    <message>
+        <location filename="../downloadagent.cpp" line="191"/>
+        <location filename="../downloadagent.cpp" line="195"/>
+        <source>Warning</source>
+        <translation>Advertimento</translation>
+    </message>
+</context>
+<context>
+    <name>EditXLinkDialog</name>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="20"/>
+        <source>Edit XLink</source>
+        <translation></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="40"/>
+        <source>Arrow begin:</source>
+        <translation>Inizio de flecha:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="63"/>
+        <source>XLink width:</source>
+        <translation>Spissor de XLinK:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="79"/>
+        <source>Use color of heading</source>
+        <translation>Usa color de capite</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="177"/>
+        <source>Line style:</source>
+        <extracomment>Linestyle in Edit XLink dialog</extracomment>
+        <translation>Stylo de linea:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="190"/>
+        <source>Arrow end:</source>
+        <translation>Fin de flecha:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="253"/>
+        <source>Close</source>
+        <translation>Claude</translation>
+    </message>
+    <message>
+        <source>Set color of heading</source>
+        <translation type="obsolete">Fixa color de capite</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="109"/>
+        <source>XLink color:</source>
+        <translation>Color de XLink:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="151"/>
+        <source>Use as default:</source>
+        <translation>Usa como predefinite:</translation>
+    </message>
+    <message>
+        <source>Quit and delete XLink</source>
+        <translation type="obsolete">Quita e dele XLink</translation>
+    </message>
+    <message>
+        <source>Ok</source>
+        <translation type="obsolete">Ok</translation>
+    </message>
+</context>
+<context>
+    <name>ExportHTMLDialog</name>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="26"/>
+        <source>Export HTML</source>
+        <translation>Exporta in HTML</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="61"/>
+        <source>Export to directory:</source>
+        <translation>Exporta in directorio:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="90"/>
+        <location filename="../exporthtmldialog.ui" line="267"/>
+        <location filename="../exporthtmldialog.ui" line="280"/>
+        <location filename="../exporthtmldialog.ui" line="353"/>
+        <source>Browse</source>
+        <translation>Naviga</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="117"/>
+        <source>Options</source>
+        <translation>Optiones</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="138"/>
+        <source>Image of map</source>
+        <translation>Imagine de mappa</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="145"/>
+        <source>Include images</source>
+        <translation>include images</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="152"/>
+        <source>Table of contents</source>
+        <translation>Indice</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="159"/>
+        <source>Task flags</source>
+        <translation>Bandieras de carga</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="166"/>
+        <source>General flags</source>
+        <translation>Bandieras general</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="173"/>
+        <source>Number sections</source>
+        <translation>Numerar sectiones</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="231"/>
+        <source>Copy CSS from </source>
+        <translation>Copiar CSS ex</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="251"/>
+        <source>Use CSS from</source>
+        <translation>Usar CSS ex</translation>
+    </message>
+    <message>
+        <source>Include image</source>
+        <translation type="obsolete">Include imagines</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="186"/>
+        <source>Colored headings in text</source>
+        <translation>Capites colorate in texto</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="199"/>
+        <source>Save settings in map</source>
+        <translation>Salveguarda preferentias in mappa</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="216"/>
+        <source>Stylesheets</source>
+        <translation>Folios de stilo</translation>
+    </message>
+    <message>
+        <source>CSS:</source>
+        <translation type="obsolete">CSS:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="297"/>
+        <source>Scripts</source>
+        <translation>Scripts</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="327"/>
+        <source>After Export:</source>
+        <translation>Postea exportation:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="382"/>
+        <source>Cancel</source>
+        <translation>Cancella</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="389"/>
+        <source>Export</source>
+        <translation>Exporta</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>Warning</source>
+        <translation>Advertimento</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>The settings saved in the map would like to run script:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation>Le preferentias salveguardate in le mappa volerea executar script:
+
+%1
+
+Pro favor verifica si tu vermente
+vole permitter isto in tu systema!</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="123"/>
+        <source>VYM - Export HTML to directory</source>
+        <translation>VYM - Exporta HTML in directorio</translation>
+    </message>
+</context>
+<context>
+    <name>ExtraInfoDialog</name>
+    <message>
+        <location filename="../extrainfodialog.ui" line="15"/>
+        <source>VYM - Info</source>
+        <translation>VYM - Info</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="36"/>
+        <source>Map:</source>
+        <translation>Mappa:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="53"/>
+        <source>Title:</source>
+        <translation>Titulo:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="63"/>
+        <source>Author:</source>
+        <translation>Autor:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="86"/>
+        <source>Comment:</source>
+        <translation>Commento:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="96"/>
+        <source>Statistics:</source>
+        <translation>Statistics:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="139"/>
+        <source>Cancel</source>
+        <translation>Cancella</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="146"/>
+        <source>Close</source>
+        <translation>Claude</translation>
+    </message>
+</context>
+<context>
+    <name>FindWidget</name>
+    <message>
+        <location filename="../findwidget.cpp" line="25"/>
+        <source>Find:</source>
+        <comment>FindWidget</comment>
+        <translation>Trova:</translation>
+    </message>
+</context>
+<context>
+    <name>Heading of mapcenter in new map</name>
+    <message>
+        <source>New map</source>
+        <translation type="vanished">Nove mappa</translation>
+    </message>
+</context>
+<context>
+    <name>HeadingEditor</name>
+    <message>
+        <location filename="../headingeditor.cpp" line="9"/>
+        <source>Heading Editor</source>
+        <comment>Window caption</comment>
+        <translation>Editor de capite</translation>
+    </message>
+</context>
+<context>
+    <name>HistoryWindow</name>
+    <message>
+        <location filename="../historywindow.ui" line="13"/>
+        <source>Dialog</source>
+        <translation>Dialogo</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="50"/>
+        <source>Redo</source>
+        <translation>Face de nove</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="72"/>
+        <source>Time</source>
+        <translation>Tempore</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="77"/>
+        <source>Comment</source>
+        <translation>Commento</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="85"/>
+        <source>Undo</source>
+        <translation>Annulla</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="122"/>
+        <source>Close</source>
+        <translation>Claude</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="17"/>
+        <source>Action</source>
+        <comment>Table with actions</comment>
+        <translation>Action</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="20"/>
+        <source>Comment</source>
+        <comment>Table with actions</comment>
+        <translation>Commento</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="23"/>
+        <source>Undo action</source>
+        <comment>Table with actions</comment>
+        <translation>Annulla action</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="125"/>
+        <source>Current state</source>
+        <comment>Current bar in history hwindow</comment>
+        <translation>Stato currente</translation>
+    </message>
+</context>
+<context>
+    <name>LineEditDialog</name>
+    <message>
+        <location filename="../lineeditdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>Dialogo</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="26"/>
+        <source>TextLabel</source>
+        <translation>Etiquetta de texto</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="89"/>
+        <location filename="../lineeditdialog.cpp" line="17"/>
+        <source>Cancel</source>
+        <translation>Cancellar</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="99"/>
+        <location filename="../lineeditdialog.cpp" line="9"/>
+        <source>Ok</source>
+        <translation>Ok</translation>
+    </message>
+</context>
+<context>
+    <name>LockedFileDialog</name>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished">Dialogo</translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="116"/>
+        <location filename="../lockedfiledialog.cpp" line="7"/>
+        <source>Delete lockfile</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="123"/>
+        <location filename="../lockedfiledialog.cpp" line="6"/>
+        <source>Open readonly</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Main</name>
+    <message>
+        <location filename="../mainwindow.cpp" line="238"/>
+        <source>Note Editor</source>
+        <translation>Editor de Nota</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="245"/>
+        <source>Heading Editor</source>
+        <translation>Editor de capite</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="252"/>
+        <source>Script Editor</source>
+        <translation>Editor de script</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="260"/>
+        <source>Search results list</source>
+        <comment>FindResultWidget</comment>
+        <translation>Cerca lista de exitos</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="314"/>
+        <source>Task list</source>
+        <comment>TaskEditor</comment>
+        <translation>Lista de crga</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="273"/>
+        <source>Script Editor</source>
+        <comment>ScriptEditor</comment>
+        <translation>Editor de script</translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <comment>Toolbar for file actions</comment>
+        <translation type="vanished">&amp;Mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="971"/>
+        <source>&amp;New map</source>
+        <comment>File menu</comment>
+        <translation>&amp;Nove mappa</translation>
+    </message>
+    <message>
+        <source>File</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">File</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="978"/>
+        <source>&amp;Copy to new map</source>
+        <comment>File menu</comment>
+        <translation>&amp;Copia in un nove mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="985"/>
+        <source>&amp;Open...</source>
+        <comment>File menu</comment>
+        <translation>&amp;Aperi...</translation>
+    </message>
+    <message>
+        <source>&amp;Restore last session</source>
+        <comment>File menu</comment>
+        <translation type="vanished">&amp;Restabili ultime session</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1000"/>
+        <source>Open Recent</source>
+        <comment>File menu</comment>
+        <translation>Aperi recente</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1003"/>
+        <source>&amp;Save...</source>
+        <comment>File menu</comment>
+        <translation>&amp;Salveguarda...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1011"/>
+        <source>Save &amp;As...</source>
+        <comment>File menu</comment>
+        <translation>&amp;Salveguarda como...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1017"/>
+        <source>Import</source>
+        <comment>File menu</comment>
+        <translation>IImporta</translation>
+    </message>
+    <message>
+        <source>KDE 3 Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation type="obsolete">Favoritos de KDE 3</translation>
+    </message>
+    <message>
+        <source>KDE 4 Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation type="vanished">Favoritos de KDE 4</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1021"/>
+        <source>Firefox Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation>Favoritos de Firefox</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <source>Import Dir%1</source>
+        <comment>Import Filters</comment>
+        <translation>Importa Dir%1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1038"/>
+        <source>Export</source>
+        <comment>File menu</comment>
+        <translation>Exporta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1040"/>
+        <source>Repeat last export (%1)</source>
+        <translation>Repite ultime exportation (%1)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1063"/>
+        <source>Image%1</source>
+        <comment>File export menu</comment>
+        <translation>Image%1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1067"/>
+        <source>PDF%1</source>
+        <comment>File export menu</comment>
+        <translation>PDF%1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1071"/>
+        <source>SVG%1</source>
+        <comment>File export menu</comment>
+        <translation>SVG%1</translation>
+    </message>
+    <message>
+        <source>KDE 3 Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Favoritos de KDE 3</translation>
+    </message>
+    <message>
+        <source>KDE 4 Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="vanished">Favoritos de KDE 4</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1110"/>
+        <source>&amp;Print</source>
+        <translation>&amp;Imprime</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1118"/>
+        <source>&amp;Close Map</source>
+        <comment>File menu</comment>
+        <translation>&amp;Claude Mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1124"/>
+        <source>E&amp;xit</source>
+        <comment>File menu</comment>
+        <translation>E&amp;xi</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1135"/>
+        <source>E&amp;dit</source>
+        <comment>Edit menu</comment>
+        <translation>E&amp;dita</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1139"/>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation>A&amp;nnulla</translation>
+    </message>
+    <message>
+        <source>Edit</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Edita</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1150"/>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Face de nove</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1161"/>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Copia</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1172"/>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Talia</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1185"/>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Colla</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1197"/>
+        <source>Delete Selection</source>
+        <comment>Edit menu</comment>
+        <translation>Dele selection</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1208"/>
+        <source>Add attribute</source>
+        <translation>Adde attributo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1221"/>
+        <source>Add mapcenter</source>
+        <comment>Canvas context menu</comment>
+        <translation>Adde centro de mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1232"/>
+        <source>Add branch as child</source>
+        <comment>Edit menu</comment>
+        <translation>Adde ramo como infante</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1242"/>
+        <source>Add branch (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>Adde ramo (Inserta)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1252"/>
+        <location filename="../mainwindow.cpp" line="1262"/>
+        <source>Add branch above</source>
+        <comment>Edit menu</comment>
+        <translation>Adde ramo de supra</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1272"/>
+        <location filename="../mainwindow.cpp" line="1281"/>
+        <source>Add branch below</source>
+        <comment>Edit menu</comment>
+        <translation>Adde ramo a basso</translation>
+    </message>
+    <message>
+        <source>Move up</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Move in alto</translation>
+    </message>
+    <message>
+        <source>Move down</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Move a basso</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1316"/>
+        <source>&amp;Detach</source>
+        <comment>Context menu</comment>
+        <translation>&amp;Distacca</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1317"/>
+        <source>Detach branch and use as mapcenter</source>
+        <comment>Context menu</comment>
+        <translation>Distacca ramo e usa lo como centro de mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1325"/>
+        <source>Sort children</source>
+        <comment>Edit menu</comment>
+        <translation>Ordina infantes</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1334"/>
+        <source>Sort children backwards</source>
+        <comment>Edit menu</comment>
+        <translation>Ordina infantes de retro modo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1343"/>
+        <source>Scroll branch</source>
+        <comment>Edit menu</comment>
+        <translation>rola ramo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1411"/>
+        <source>Expand all branches</source>
+        <comment>Edit menu</comment>
+        <translation>Expande tote ramos</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1419"/>
+        <source>Expand one level</source>
+        <comment>Edit menu</comment>
+        <translation>Expande un nivello</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1389"/>
+        <source>Collapse one level</source>
+        <comment>Edit menu</comment>
+        <translation>Plica un nivello</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1400"/>
+        <source>Collapse unselected levels</source>
+        <comment>Edit menu</comment>
+        <translation>Plica nivellos non selectionate</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1355"/>
+        <source>Unscroll children</source>
+        <comment>Edit menu</comment>
+        <translation>Annulla rolar de infantes</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1047"/>
+        <source>Webpage (HTML)...</source>
+        <comment>File export menu</comment>
+        <translation>Pagina web (HTML)...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1051"/>
+        <source>Text (ASCII)...</source>
+        <comment>File export menu</comment>
+        <translation>Texto (ASCII)...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <source>Text with tasks</source>
+        <comment>File export menu</comment>
+        <translation>Texto con cargas</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1360"/>
+        <source>Grow selection</source>
+        <comment>Edit menu</comment>
+        <translation>Cresce selection</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1369"/>
+        <source>Shrink selection</source>
+        <comment>Edit menu</comment>
+        <translation>Contracte selection</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1378"/>
+        <source>Reset selection size</source>
+        <comment>Edit menu</comment>
+        <translation>Reinitia grandor de selection</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1430"/>
+        <source>Open URL</source>
+        <comment>Edit menu</comment>
+        <translation>Aperi URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1438"/>
+        <source>Open URL in new tab</source>
+        <comment>Edit menu</comment>
+        <translation>Aperi URL in nove scheda</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1446"/>
+        <source>Open all URLs in subtree (including scrolled branches)</source>
+        <comment>Edit menu</comment>
+        <translation>Aperi omne URLs in subarbore (includente ramos rolate)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1454"/>
+        <source>Open all URLs in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Aperi omne URLs in subarbore</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1461"/>
+        <source>Extract URLs from note</source>
+        <comment>Edit menu</comment>
+        <translation>Extrahe URLS ex nota</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1470"/>
+        <source>Edit URL...</source>
+        <comment>Edit menu</comment>
+        <translation>Edita URL...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1479"/>
+        <source>Edit local URL...</source>
+        <comment>Edit menu</comment>
+        <translation>Edita URL local...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1488"/>
+        <source>Use heading for URL</source>
+        <comment>Edit menu</comment>
+        <translation>Usa capite pro UR</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Crea URL verso Novell Bugzilla</translation>
+    </message>
+    <message>
+        <source>Get data from Novell Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Obtene datos ex Novell Bugzilla</translation>
+    </message>
+    <message>
+        <source>Get data from Novell Bugzilla for subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Obtene datos ex Novell Bugzilla per subarbore</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell FATE</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Crea URL verso Novell FATE</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1538"/>
+        <source>Open linked map</source>
+        <comment>Edit menu</comment>
+        <translation>Aperi mappa ligate</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1545"/>
+        <source>Open linked map in background tab</source>
+        <comment>Edit menu</comment>
+        <translation>Aperir mappas ligate in etiquetta de fundo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1552"/>
+        <source>Open all vym links in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Aperi omne ligamines de vym in subarbore</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1560"/>
+        <source>Edit vym link...</source>
+        <comment>Edit menu</comment>
+        <translation>Edita ligamine de vym...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1567"/>
+        <source>Delete vym link</source>
+        <comment>Edit menu</comment>
+        <translation>Dele ligamine de vym</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1575"/>
+        <source>Hide in exports</source>
+        <comment>Edit menu</comment>
+        <translation>Cela quando on exporta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1587"/>
+        <source>Toggle task</source>
+        <comment>Edit menu</comment>
+        <translation>Commuta carga</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1598"/>
+        <source>Cycle task status</source>
+        <comment>Edit menu</comment>
+        <translation>Cycla status de carga</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1609"/>
+        <source>Reset sleep</source>
+        <comment>Task sleep</comment>
+        <translation>Reinitia otio</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1620"/>
+        <location filename="../mainwindow.cpp" line="1643"/>
+        <location filename="../mainwindow.cpp" line="1654"/>
+        <location filename="../mainwindow.cpp" line="1665"/>
+        <location filename="../mainwindow.cpp" line="1676"/>
+        <source>Sleep %1 days</source>
+        <comment>Task sleep</comment>
+        <translation>Otio de carga</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1632"/>
+        <source>Sleep %1 day</source>
+        <comment>Task sleep</comment>
+        <translation>Otia %1 die</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1687"/>
+        <location filename="../mainwindow.cpp" line="1698"/>
+        <source>Sleep %1 weeks</source>
+        <comment>Task sleep</comment>
+        <translation>Otia %1 septimanas</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1754"/>
+        <source>Add timestamp</source>
+        <comment>Edit menu</comment>
+        <translation>Adde marca de tempore</translation>
+    </message>
+    <message>
+        <source>Edit Map Info...</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Edita Info de Mappa...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1710"/>
+        <source>Add map (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>Adde mappa (inserta)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1717"/>
+        <source>Add map (replace)</source>
+        <comment>Edit menu</comment>
+        <translation>Adde mappa (reimplacia)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1724"/>
+        <source>Save selection</source>
+        <comment>Edit menu</comment>
+        <translation>Salveguardia selection</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1733"/>
+        <source>Remove only branch and keep its children </source>
+        <comment>Edit menu</comment>
+        <translation>Solmente remobve ramo e mantene su infantes</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1743"/>
+        <source>Remove children</source>
+        <comment>Edit menu</comment>
+        <translation>Remove infantes</translation>
+    </message>
+    <message>
+        <source>Add Image...</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Adde imagine...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1779"/>
+        <source>Property window</source>
+        <comment>Dialog to edit properties of selection</comment>
+        <translation>fenestra de proprietate</translation>
+    </message>
+    <message>
+        <source>View shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Vide vias breve</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1793"/>
+        <source>Select</source>
+        <comment>Select menu</comment>
+        <translation>Selectiona</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2076"/>
+        <source>Tree editor</source>
+        <comment>View action</comment>
+        <translation>Editor de arbore</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2084"/>
+        <source>Task editor</source>
+        <comment>View action</comment>
+        <translation>Editor de carga</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2094"/>
+        <source>Slide editor</source>
+        <comment>View action</comment>
+        <translation>Editor de diapositiva</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2102"/>
+        <source>Script editor</source>
+        <comment>View action</comment>
+        <translation>Editor de script</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2153"/>
+        <source>Next slide</source>
+        <comment>View action</comment>
+        <translation>Proxime diapositiva</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2160"/>
+        <source>Previous slide</source>
+        <comment>View action</comment>
+        <translation>Previe diapositiva</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2514"/>
+        <source>Settings</source>
+        <translation>Preferentias</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2518"/>
+        <source>Check for release notes and updates</source>
+        <comment>Settings action</comment>
+        <translation>Verifica per notas de liberation e actualisationes</translation>
+    </message>
+    <message>
+        <source>&amp;Select</source>
+        <comment>Select menu</comment>
+        <translation type="obsolete">&amp;Selige</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1795"/>
+        <source>Toggle target...</source>
+        <comment>Edit menu</comment>
+        <translation>Alterna objectivo...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1804"/>
+        <source>Goto target...</source>
+        <comment>Edit menu</comment>
+        <translation>Vade a objectivo...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1812"/>
+        <source>Move to target...</source>
+        <comment>Edit menu</comment>
+        <translation>Move a objectivo...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1820"/>
+        <source>Select previous</source>
+        <comment>Edit menu</comment>
+        <translation>Selectiona previe</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1830"/>
+        <source>Select next</source>
+        <comment>Edit menu</comment>
+        <translation>Selectiona proxime</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1840"/>
+        <source>Unselect all</source>
+        <comment>Edit menu</comment>
+        <translation>Deselectiona toto</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1849"/>
+        <location filename="../mainwindow.cpp" line="1857"/>
+        <source>Find...</source>
+        <comment>Edit menu</comment>
+        <translation>Trova...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1864"/>
+        <source>Find duplicate URLs</source>
+        <comment>Edit menu</comment>
+        <translation>Trova URLs duplicate</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1876"/>
+        <source>F&amp;ormat</source>
+        <comment>Format menu</comment>
+        <translation>F&amp;ormato</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1883"/>
+        <source>Set &amp;Color</source>
+        <translation>Fixa &amp;color</translation>
+    </message>
+    <message>
+        <source>Format shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Vias breve de Formato</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1889"/>
+        <source>Pic&amp;k color</source>
+        <comment>Edit menu</comment>
+        <translation>P&amp;rende color</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1898"/>
+        <source>Color &amp;branch</source>
+        <comment>Edit menu</comment>
+        <translation>Colora &amp;ramo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1907"/>
+        <source>Color sub&amp;tree</source>
+        <comment>Edit menu</comment>
+        <translation>Colora sub&amp;arbore</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1918"/>
+        <source>Select default font</source>
+        <comment>Branch attribute</comment>
+        <translation>Selige font predefinite</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1928"/>
+        <source>Linkstyle Line</source>
+        <translation>Linea de stilo de ligamine</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1935"/>
+        <source>Linkstyle Curve</source>
+        <translation>Curva de stilo de ligamine (LinkStyle)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1942"/>
+        <source>Linkstyle Thick Line</source>
+        <translation>Linea spisse de stilo de ligamine</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1949"/>
+        <source>Linkstyle Thick Curve</source>
+        <translation>Curba spisse de stilo de ligamine</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1958"/>
+        <source>Hide link if object is not selected</source>
+        <comment>Branch attribute</comment>
+        <translation>Cela ligamine si objecto non es selectionate</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1964"/>
+        <source>&amp;Use color of heading for link</source>
+        <comment>Branch attribute</comment>
+        <translation>&amp;Usa color de capite pro ligamine</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1971"/>
+        <source>Set &amp;Link Color</source>
+        <translation>Fixa color de &amp;ligamine</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1976"/>
+        <source>Set &amp;Selection Color</source>
+        <translation>Fixa color de &amp;selection</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1981"/>
+        <source>Set &amp;Background Color</source>
+        <translation>Fixa color de &amp;fundo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1986"/>
+        <source>Set &amp;Background image</source>
+        <translation>Fixa imagine de fun&amp;do</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1995"/>
+        <source>&amp;View</source>
+        <translation>&amp;Vista</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1996"/>
+        <source>Toolbars</source>
+        <comment>Toolbars overview in view menu</comment>
+        <translation>Barras de instrumento</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2002"/>
+        <source>Zoom in</source>
+        <comment>View action</comment>
+        <translation>Aggrandi</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2010"/>
+        <source>Zoom out</source>
+        <comment>View action</comment>
+        <translation>Diminue</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2018"/>
+        <source>Rotate counterclockwise</source>
+        <comment>View action</comment>
+        <translation>Rota in senso antihorologic</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2026"/>
+        <source>Rotate rclockwise</source>
+        <comment>View action</comment>
+        <translation>Rota in senso horologic</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2034"/>
+        <source>reset Zoom</source>
+        <comment>View action</comment>
+        <translation>Reinitia zoom</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2042"/>
+        <source>Center on selection</source>
+        <comment>View action</comment>
+        <translation>Centra sur selection</translation>
+    </message>
+    <message>
+        <source>Show Note Editor</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Monstra editor de nota</translation>
+    </message>
+    <message>
+        <source>Toggle Tree editor</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Alterna editor de arbore</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2110"/>
+        <source>History Window</source>
+        <comment>View action</comment>
+        <translation>Fenestra de historia</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2124"/>
+        <source>Antialiasing</source>
+        <comment>View action</comment>
+        <translation>Antialiasing</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2131"/>
+        <source>Smooth pixmap transformations</source>
+        <comment>View action</comment>
+        <translation>Applana transformationes de pixmap</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2139"/>
+        <source>Next Map</source>
+        <comment>View action</comment>
+        <translation>Proxime mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2146"/>
+        <source>Previous Map</source>
+        <comment>View action</comment>
+        <translation>Previe mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2178"/>
+        <source>Use modifier to color branches</source>
+        <comment>Mode modifier</comment>
+        <translation>Usa modificator per colorar ramos</translation>
+    </message>
+    <message>
+        <source>Modes</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Modos</translation>
+    </message>
+    <message>
+        <source>Use modifier to copy</source>
+        <comment>Mode modifier</comment>
+        <translation type="obsolete">Usa modificator per copiar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2194"/>
+        <source>Use modifier to draw xLinks</source>
+        <comment>Mode modifier</comment>
+        <translation>Usa modificator per designar xLinks</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2213"/>
+        <location filename="../mainwindow.cpp" line="2216"/>
+        <location filename="../mainwindow.cpp" line="2219"/>
+        <location filename="../mainwindow.cpp" line="2223"/>
+        <location filename="../mainwindow.cpp" line="2226"/>
+        <location filename="../mainwindow.cpp" line="2229"/>
+        <location filename="../mainwindow.cpp" line="2233"/>
+        <location filename="../mainwindow.cpp" line="2236"/>
+        <source>Note</source>
+        <comment>SystemFlag</comment>
+        <translation>Nota</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2239"/>
+        <source>URL to Document </source>
+        <comment>SystemFlag</comment>
+        <translation>URL a Documento</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2242"/>
+        <location filename="../mainwindow.cpp" line="2245"/>
+        <source>URL to Bugzilla </source>
+        <comment>SystemFlag</comment>
+        <translation>URL a Bugzilla</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2248"/>
+        <source>Map target</source>
+        <comment>SystemFlag</comment>
+        <translation>Mappa objectivo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2251"/>
+        <source>Link to another vym map</source>
+        <comment>SystemFlag</comment>
+        <translation>Ligamine a un altere mappa de vym</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2254"/>
+        <source>subtree is scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation>subarbore es rolate</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2257"/>
+        <source>subtree is temporary scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation>subarbore es temporaneemente rolate</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2260"/>
+        <source>Hide object in exported maps</source>
+        <comment>SystemFlag</comment>
+        <translation>Cela objecto in mappas exportate</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2265"/>
+        <source>Standard Flags toolbar</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation>barra de instrumentos de bandieras standard</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2291"/>
+        <source>Take care!</source>
+        <comment>Standardflag</comment>
+        <translation>Attention!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2295"/>
+        <source>Really?</source>
+        <comment>Standardflag</comment>
+        <translation>Vermente?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2279"/>
+        <source>Status - ok,done</source>
+        <comment>Standardflag</comment>
+        <translation>Stato ok, facite</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2283"/>
+        <source>Status - work in progress</source>
+        <comment>Standardflag</comment>
+        <translation>Stato travalio in progresso</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2287"/>
+        <source>Status - missing, not started</source>
+        <comment>Standardflag</comment>
+        <translation>Stato mancante, non initiate</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2274"/>
+        <source>This won&apos;t work!</source>
+        <comment>Standardflag</comment>
+        <translation>Isto non functiona!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="124"/>
+        <source>Main window</source>
+        <comment>Shortcut scope</comment>
+        <translation>Fenestra principal</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="280"/>
+        <source>Property Editor</source>
+        <comment>PropertyEditor</comment>
+        <translation>Editor de proprietate</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="287"/>
+        <source>History window</source>
+        <comment>HistoryWidget</comment>
+        <translatorcomment>Forsan chronologia es melior</translatorcomment>
+        <translation>Fenestra de historia</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="218"/>
+        <source>Main window</source>
+        <comment>Shortcut group</comment>
+        <translation>Fenestra principal</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="219"/>
+        <source>Map Editors</source>
+        <comment>Shortcut group</comment>
+        <translation>Editores de mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="220"/>
+        <source>Text Editors</source>
+        <comment>Shortcut group</comment>
+        <translation>Editores de texto</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="967"/>
+        <source>&amp;Map</source>
+        <comment>Menu for file actions</comment>
+        <translation>&amp;Mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="992"/>
+        <source>&amp;Restore last session</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Restabili ultime session</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1059"/>
+        <source>Text (A&amp;O report)...</source>
+        <comment>Export format</comment>
+        <translation>Texto(reporto de A&amp;O)...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <source>Spreadsheet</source>
+        <translation>Folio de computar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1101"/>
+        <source>Properties</source>
+        <translation>Proprietates</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1290"/>
+        <source>Move branch up</source>
+        <comment>Edit menu</comment>
+        <translation>Move ramo de supra</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1303"/>
+        <source>Move branch down</source>
+        <comment>Edit menu</comment>
+        <translation>Move ramo a basso</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1429"/>
+        <source>References Context menu</source>
+        <comment>Shortcuts</comment>
+        <translation>Menu de contexto de referentias</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1498"/>
+        <source>Bugzilla handling</source>
+        <comment>Shortcuts</comment>
+        <translation>Gestion de Bugzilla</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1499"/>
+        <source>Create URL to SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation>Crea URL pro Bugzilla de SUSE</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1510"/>
+        <source>Get data from SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation>Obtene datos ex Bugzilla de SUSE</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1519"/>
+        <source>Get data from SUSE Bugzilla for subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Obtene datos ex Bugzilla de SUSE per subarbore</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1528"/>
+        <source>SUSE Fate tool handling</source>
+        <comment>Shortcuts</comment>
+        <translation>Gestion de instrumento de SUSE Fate</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1529"/>
+        <source>Create URL to SUSE FATE tool</source>
+        <comment>Edit menu</comment>
+        <translation>Crea URL pro instrumento de SUSE FATE</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1537"/>
+        <source>vymlinks - linking maps</source>
+        <comment>Shortcuts</comment>
+        <translation>wymlinks-ligante mappas</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1574"/>
+        <source>Exports</source>
+        <comment>Shortcuts</comment>
+        <translation>Exportationes</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1586"/>
+        <source>Tasks</source>
+        <comment>Shortcuts</comment>
+        <translation>Cargas</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1730"/>
+        <source>Removing parts of a map</source>
+        <comment>Shortcuts</comment>
+        <translation>Removente partes de un mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1753"/>
+        <source>Various</source>
+        <comment>Shortcuts</comment>
+        <translation>Vias breve</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1765"/>
+        <source>Map properties...</source>
+        <comment>Edit menu</comment>
+        <translation>Proprietates de mappa...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1771"/>
+        <source>Add   ...</source>
+        <comment>Edit menu</comment>
+        <translation>Adde   ...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1792"/>
+        <source>Selections</source>
+        <comment>Shortcuts</comment>
+        <translation>Selectiones</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1848"/>
+        <source>Search functions</source>
+        <comment>Shortcuts</comment>
+        <translation>Cerca functiones</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1878"/>
+        <source>Formatting</source>
+        <comment>Shortcuts</comment>
+        <translation>Formattante</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1997"/>
+        <source>Views</source>
+        <comment>Shortcuts</comment>
+        <translation>Vistas</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2053"/>
+        <source>Note editor</source>
+        <comment>View action</comment>
+        <translation>Editor de nota</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2064"/>
+        <source>Heading editor</source>
+        <comment>View action</comment>
+        <translation>Editor de capite</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2174"/>
+        <source>Modifier modes</source>
+        <comment>Shortcuts</comment>
+        <translation>Modos de modificator</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2299"/>
+        <source>Good</source>
+        <comment>Standardflag</comment>
+        <translation>Bon</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2303"/>
+        <source>Bad</source>
+        <comment>Standardflag</comment>
+        <translation>Mal</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2307"/>
+        <source>Oh no!</source>
+        <comment>Standardflag</comment>
+        <translation>Oh no!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2312"/>
+        <source>Time critical</source>
+        <comment>Standardflag</comment>
+        <translation>Tempore critic</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2315"/>
+        <source>Call...</source>
+        <comment>Standardflag</comment>
+        <translation>Appella...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2318"/>
+        <source>Idea!</source>
+        <comment>Standardflag</comment>
+        <translation>Idea!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2322"/>
+        <source>Important</source>
+        <comment>Standardflag</comment>
+        <translation>Importante</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2326"/>
+        <source>Unimportant</source>
+        <comment>Standardflag</comment>
+        <translation>Non importante</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2330"/>
+        <source>Very important!</source>
+        <comment>Standardflag</comment>
+        <translation>Multo importante!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2334"/>
+        <source>Very unimportant!</source>
+        <comment>Standardflag</comment>
+        <translation>Multo pauc importante!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2339"/>
+        <source>I like this</source>
+        <comment>Standardflag</comment>
+        <translation>Isto place me</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2343"/>
+        <source>I do not like this</source>
+        <comment>Standardflag</comment>
+        <translation>Isto non place me</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2347"/>
+        <source>Rose</source>
+        <comment>Standardflag</comment>
+        <translation>Rosa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2350"/>
+        <source>I just love...</source>
+        <comment>Standardflag</comment>
+        <translation>Io solmente ama...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2353"/>
+        <source>Surprise!</source>
+        <comment>Standardflag</comment>
+        <translation>Surprisa!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2356"/>
+        <source>Dangerous</source>
+        <comment>Standardflag</comment>
+        <translation>Periculose</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2360"/>
+        <source>Info</source>
+        <comment>Standardflag</comment>
+        <translation>Info</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2364"/>
+        <source>This will help</source>
+        <comment>Standardflag</comment>
+        <translation>Isto adjutara</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2369"/>
+        <source>Important</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Importante</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2376"/>
+        <source>Priority</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Prioritate</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2381"/>
+        <source>Back</source>
+        <comment>Freemind-Flag</comment>
+        <translation>retro</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2385"/>
+        <source>forward</source>
+        <comment>Freemind-Flag</comment>
+        <translation>avante</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2389"/>
+        <source>Look here</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Reguarda hic</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2393"/>
+        <source>Dangerous</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Periculose</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2397"/>
+        <source>Don&apos;t flagrget</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Non usa flagrget</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2401"/>
+        <source>Flag</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Bandiera</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2406"/>
+        <source>Home</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Pagina initial o Domo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2410"/>
+        <source>Telephone</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Telephono</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2414"/>
+        <source>Music</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Musica</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2418"/>
+        <source>Mailbox</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Cassa de posta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2422"/>
+        <source>Maix</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Maix</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2426"/>
+        <source>Password</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Contrasigno</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2430"/>
+        <source>To be improved</source>
+        <comment>Freemind-Flag</comment>
+        <translation>debe essere meliorate</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2434"/>
+        <source>Stop</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Stoppa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2438"/>
+        <source>Magic</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Magic</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2442"/>
+        <source>To be discussed</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Debe esser discutite</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2446"/>
+        <source>Reminder</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Memento</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2450"/>
+        <source>Excellent</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Excellente</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2454"/>
+        <source>Linux</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Linux</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2458"/>
+        <source>Sweet</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Dulce</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2525"/>
+        <source>Set author for new maps</source>
+        <comment>Settings action</comment>
+        <translation>Fixa autor per nove mappas</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2613"/>
+        <source>Number of visible parents in task editor</source>
+        <comment>Settings action</comment>
+        <translation>Numero de genitores visibile in editor de carga</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2618"/>
+        <source>Number of visible parents in find results window</source>
+        <comment>Settings action</comment>
+        <translation>Numero de genitores visibile in fenestra de exito de cerca</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2698"/>
+        <source>Debug info</source>
+        <comment>Option to show debugging info</comment>
+        <translation>Information de debug</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <source>Couldn&apos;t save %1,
+because of existing lockfile:
+
+%2</source>
+        <translation>Il non pote salveguardar %1,
+a causa de un file de bloco existente:
+
+%2</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation>Il non pote salveguardar %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5076"/>
+        <source>Set author for new maps (used in lockfile)</source>
+        <translation>Fixa autor per nove mappas (usate in le file de bloco)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5077"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation>usator incognite</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5088"/>
+        <source>Number of parents shown in find results:</source>
+        <translation>Numero de genitores mostrate in fenestra de exito de cerca:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5098"/>
+        <source>Number of parents shown for a task:</source>
+        <translation>Numero de genitores mostrate per un carga:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3092"/>
+        <source>(readonly)</source>
+        <translation>(de sol lectura)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <source>Please allow vym to download release notes!</source>
+        <translation>Pro favor, permitte que vym pote discargar notas de liberation!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5968"/>
+        <source>&lt;html&gt;&lt;h3&gt;Do you allow vym to check online for updates or release notes?&lt;/h3&gt;If you allow, vym will &lt;ul&gt;&lt;li&gt;check once for release notes&lt;/li&gt;&lt;li&gt;check regulary for updates and notify you in case you should update, e.g. if there are important bug fixes available&lt;/li&gt;&lt;li&gt;receive a cookie with a random ID and send vym version and platform name and the ID  (e.g. &quot;Windows&quot; or &quot;Linux&quot;) back to me, Uwe Drechsel.&lt;p&gt;As vym developer I am motivated to see many people using vym. Of course I am curious to see, on which system vym is used. Maintaining each of the systems requires a lot of my (spare) time.&lt;/p&gt; &lt;p&gt;No other data than above will be sent, especially no private data will be collected or sent.(Check the source code, if you don&apos;t believe.)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;If you do not allow, &lt;ul&gt;&lt;li&gt;nothing will be downloaded and especially I will &lt;b&gt;not be motivated&lt;/b&gt; to spend some more thousands of hours on developing a free software tool.&lt;/ul&gt;Please allow vym to check for updates :-)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5997"/>
+        <source>Allow</source>
+        <translation>Permitte</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5998"/>
+        <source>Do not allow</source>
+        <translation>Non permitte</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6004"/>
+        <source>Thank you for enabling downloads!</source>
+        <translation>Gratias pro habilitar le discargmentos!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6027"/>
+        <source>Update information</source>
+        <translation>Actualisa information</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6033"/>
+        <source>vym is up to date.</source>
+        <comment>MainWindow</comment>
+        <translation>vym es actualisate.</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6084"/>
+        <source>Checking for updates...</source>
+        <comment>MainWindow</comment>
+        <translation>Verifica actualisationes...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Please allow vym to check for updates!</source>
+        <translation>Pro favor permitte que vym verifica actualisationes!</translation>
+    </message>
+    <message>
+        <source>Info</source>
+        <translation type="obsolete">Info</translation>
+    </message>
+    <message>
+        <source>Network shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Vias breve de rete</translation>
+    </message>
+    <message>
+        <source>&amp;Settings</source>
+        <translation type="obsolete">&amp;Preferentias</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2531"/>
+        <source>Set application to open pdf files</source>
+        <comment>Settings action</comment>
+        <translation>Fixa application per aperir files pdf</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2535"/>
+        <source>Set application to open external links</source>
+        <comment>Settings action</comment>
+        <translation>Fixa application per aperir ligamines externe</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2539"/>
+        <source>Set application to zip/unzip files</source>
+        <comment>Settings action</comment>
+        <translation>Fixa applicationes per  facer zip/unzip sur files</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2543"/>
+        <source>Set path for macros</source>
+        <comment>Settings action</comment>
+        <translation>Fixa percurso per macros</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2547"/>
+        <source>Set number of undo levels</source>
+        <comment>Settings action</comment>
+        <translation>Fixa numero de nivellos de annullar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2553"/>
+        <source>Autosave</source>
+        <comment>Settings action</comment>
+        <translation>Salveguarda automaticamente</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2559"/>
+        <source>Autosave time</source>
+        <comment>Settings action</comment>
+        <translation>tempore de salveguiardar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2572"/>
+        <source>Write backup file on save</source>
+        <comment>Settings action</comment>
+        <translation>Scribe files de retrocopia quando on salveguarda</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2581"/>
+        <source>Edit branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>Edita ramo postea haber lo addite</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2587"/>
+        <source>Select branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>Selige rampo post que il es addite</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2593"/>
+        <source>Select existing heading</source>
+        <comment>Settings action</comment>
+        <translation>Selige capite existente</translation>
+    </message>
+    <message>
+        <source>Delete key</source>
+        <comment>Settings action</comment>
+        <translation type="obsolete">Dele clave</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2599"/>
+        <source>Exclusive flags</source>
+        <comment>Settings action</comment>
+        <translation>Bandieras exclusive</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2605"/>
+        <source>Use hide flags</source>
+        <comment>Settings action</comment>
+        <translation>Usa bandieras celate</translation>
+    </message>
+    <message>
+        <source>Note editor is dockable</source>
+        <comment>Settings action</comment>
+        <translation type="obsolete">Editor de notas esponibile in un bassino</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2623"/>
+        <source>Animation</source>
+        <comment>Settings action</comment>
+        <translation>Animation</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2630"/>
+        <source>Automatic layout</source>
+        <comment>Settings action</comment>
+        <translation>Disposition automatic</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2641"/>
+        <source>Test</source>
+        <translation>Essaya</translation>
+    </message>
+    <message>
+        <source>Test shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Vias breve de essayar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2673"/>
+        <source>&amp;Help</source>
+        <comment>Help menubar entry</comment>
+        <translation>&amp;Adjuta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2676"/>
+        <source>Open VYM Documentation (pdf) </source>
+        <comment>Help action</comment>
+        <translation>Aperi documentation de VYM (pdf)</translation>
+    </message>
+    <message>
+        <source>Help shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Vias breve de Adjuta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2680"/>
+        <source>Open VYM example maps </source>
+        <comment>Help action</comment>
+        <translation>Aperi mappas de exemplo de VYM</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2685"/>
+        <source>Download and show release notes</source>
+        <comment>Help action</comment>
+        <translation>Discarga e monstra notas de liberation</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2689"/>
+        <source>Check, if updates are available</source>
+        <comment>Help action</comment>
+        <translation>Verifica, si actualisationes es disponibile</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2694"/>
+        <source>Show keyboard shortcuts</source>
+        <comment>Help action</comment>
+        <translation>Monstra vias breve de claviero</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2702"/>
+        <source>About VYM</source>
+        <comment>Help action</comment>
+        <translation>Circa VYM</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2706"/>
+        <source>About QT</source>
+        <comment>Help action</comment>
+        <translation>Circa QT</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2723"/>
+        <source>Add</source>
+        <translation>Adde</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2735"/>
+        <source>Remove</source>
+        <comment>Context menu name</comment>
+        <translation>Remove</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2755"/>
+        <source>Tasks</source>
+        <comment>Context menu</comment>
+        <translation>Cargas</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2772"/>
+        <source>References (URLs, vymLinks, ...)</source>
+        <comment>Context menu name</comment>
+        <translation>Referentias(URLs, Ligamines de vym,...)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2796"/>
+        <source>XLinks</source>
+        <comment>Menu for file actions</comment>
+        <translation>XLinks</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2798"/>
+        <source>Edit XLink</source>
+        <comment>Context menu name</comment>
+        <translation>Edita XLink</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2803"/>
+        <source>Follow XLink</source>
+        <comment>Context menu</comment>
+        <translation>Seque XLink</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2809"/>
+        <source>Follow XLink</source>
+        <comment>Context menu name</comment>
+        <translation>Seque XLink</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2818"/>
+        <source>Save image</source>
+        <comment>Context action</comment>
+        <translation>Salveguarda Image</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2913"/>
+        <source>File actions toolbar</source>
+        <comment>Toolbar for file actions</comment>
+        <translation>Barra de instrumento de actiones de file</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2922"/>
+        <source>Undo and clipboard toolbar</source>
+        <comment>Toolbar for redo/undo and clipboard</comment>
+        <translation>barra de instrumento de annullar e de area de transferentia</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2931"/>
+        <source>Edit actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation>Barra de instrumentos per actiones de Edita</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2948"/>
+        <source>Selection toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation>barra de instrumento de selection</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2956"/>
+        <source>URLs and vymLinks toolbar</source>
+        <comment>Toolbar for URLs and vymlinks</comment>
+        <translation>barra de instrumento de URLs e ligamines de vym</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2964"/>
+        <source>Colors toolbar</source>
+        <comment>Colors toolbar name</comment>
+        <translation>Barra de instrumentos de color</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2972"/>
+        <source>Zoom toolbar</source>
+        <comment>View Toolbar name</comment>
+        <translation>Barra de instrupentos per aggrandir</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2982"/>
+        <source>Editors toolbar</source>
+        <comment>Editor Toolbar name</comment>
+        <translation>Barra de instrumentos de editores</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2994"/>
+        <source>Modifier modes toolbar</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation>barra de instrumento de modos de modificator</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3126"/>
+        <source>unnamed</source>
+        <comment>MainWindow: name for new and empty file</comment>
+        <translation>sin nomine</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3179"/>
+        <source>The map %1
+is already opened.Opening the same map in multiple editors may lead 
+to confusion when finishing working with vym.Do you want to</source>
+        <translation>Le mappa %1
+ja es aperite. Aperir le mesme mappa in editores multiple pote ducer
+a confusion quando on termina de travaliar con vym. Tu vole</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3187"/>
+        <source>Open anyway</source>
+        <translation>aperir in omne modo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3188"/>
+        <location filename="../mainwindow.cpp" line="3235"/>
+        <location filename="../mainwindow.cpp" line="3461"/>
+        <source>Cancel</source>
+        <translation>Cancella</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3228"/>
+        <source>This map does not exist:
+  %1
+Do you want to create a new one?</source>
+        <translation>Iste mappa non existe:
+  %1
+Tu vole crea un nove?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3234"/>
+        <source>Create</source>
+        <translation>Crea</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3264"/>
+        <source>Loading: %1</source>
+        <comment>Progress dialog while loading maps</comment>
+        <translation>Cargante: %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3303"/>
+        <source>Load vym map</source>
+        <translation>Carga mappa de vym</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3306"/>
+        <source>Import: Add vym map to selection</source>
+        <translation>Importa: adde mappa de vym per selection</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3309"/>
+        <source>Import: Replace selection with vym map</source>
+        <translation>Importa: reimplacia selection con mappa de vym</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3314"/>
+        <source>or</source>
+        <comment>File Dialog</comment>
+        <translation>o</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3413"/>
+        <source>Saved  %1</source>
+        <translation>Salveguardate %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3417"/>
+        <source>Couldn&apos;t save </source>
+        <translation>Il non pote salveguardar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3444"/>
+        <source>Save map as</source>
+        <translation>Salveguarda mappa como</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3455"/>
+        <source>The file %1
+exists already. Do you want to</source>
+        <translation>Le file %1 ja existe. Tu vole</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3460"/>
+        <source>Overwrite</source>
+        <translation>Superscribe</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3533"/>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <source>Bookmarks</source>
+        <translation>Favoritos</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <location filename="../mainwindow.cpp" line="3596"/>
+        <source>Import</source>
+        <translation>Importa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3563"/>
+        <source>Load Freemind map</source>
+        <translation>Carga mappa de Freemind</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <source>Export as CSV</source>
+        <translation>Exporta como CSV</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <location filename="../mainwindow.cpp" line="1087"/>
+        <location filename="../mainwindow.cpp" line="1091"/>
+        <location filename="../mainwindow.cpp" line="1095"/>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <source>(still experimental)</source>
+        <translation>(ancora experimental)</translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">Exporta como LaTeX</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <location filename="../mainwindow.cpp" line="3724"/>
+        <source>Export to</source>
+        <translation>Exporta in</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3745"/>
+        <location filename="../mainwindow.cpp" line="3875"/>
+        <location filename="../mainwindow.cpp" line="3918"/>
+        <location filename="../mainwindow.cpp" line="4260"/>
+        <location filename="../mainwindow.cpp" line="5800"/>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Warning</source>
+        <translation>Advertimento</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find configuration for export to Open Office
+</source>
+        <translation type="vanished">Il nonpote trovar configuration pro exportar a OpenOffice
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3770"/>
+        <source>The map %1 has been modified but not saved yet. Do you want to</source>
+        <translation>Le mappa %1 ha essite modificate ma non salveguardate ancora. Tu vole</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3775"/>
+        <source>Save modified map before closing it</source>
+        <translation>Salveguardar mappa modificate ante que clauder lo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3776"/>
+        <source>Discard changes</source>
+        <translation>Abandona modificationes</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3876"/>
+        <location filename="../mainwindow.cpp" line="5801"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <translation>Il nonpoteva trovar un application pro aperir %1.
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>Pro favor usa preferentias -&gt;</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="4981"/>
+        <source>Set application to open an URL</source>
+        <translation>Fixa application pro aperir un URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3919"/>
+        <source>Couldn&apos;t start %1 to open a new tab in %2.</source>
+        <translation>Il non pote initiar %1 pro aperir un nove scheda in %2.</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start %1 to open a new tab</source>
+        <translation type="obsolete">Il non pote initiar %1 pro aperir un nove scheda</translation>
+    </message>
+    <message>
+        <source>Sorry, currently only Konqueror supports integrated tabbed browsing.</source>
+        <comment>Mainwindow, open URL</comment>
+        <translation type="obsolete">Desolate, currentemente solmente Konqueror supporta navigation integrate etiquettate.</translation>
+    </message>
+    <message>
+        <source>Currently vym is using %1 to open external links.
+(Change in Settings menu)</source>
+        <comment>Mainwindow, open URL</comment>
+        <translation type="obsolete">Vym currentemente es usante %1 pro aperir ligamines externe.
+(Modifica in menu de preferentias)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3994"/>
+        <source>Enter URL:</source>
+        <translation>Inserta URL:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4017"/>
+        <source>HTML</source>
+        <comment>Filedialog</comment>
+        <translation>HTML</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4018"/>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation>Texto</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4019"/>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation>Folio de computar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4020"/>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation>Documento de texto</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4021"/>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation>Images</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4025"/>
+        <source>Set URL to a local file</source>
+        <translation>Fixa Url per un file local</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <location filename="../mainwindow.cpp" line="4130"/>
+        <source>Critical Error</source>
+        <translation>Error critic</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3746"/>
+        <source>Couldn&apos;t find configuration for export to LibreOffice
+</source>
+        <translation>Non pote trovar le configuration pro exportar a LibreOffice</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4131"/>
+        <source>Couldn&apos;t open map %1</source>
+        <translation>Il non pote aperir mamma %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4183"/>
+        <location filename="../mainwindow.cpp" line="4185"/>
+        <source>Link to another map</source>
+        <translation>Liga a un altere mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4244"/>
+        <source>Enter sleep time (number of days or date YYYY-MM-DD or DD.MM[.YYYY]</source>
+        <comment>task sleep time dialog</comment>
+        <translation>Inserta tempore de otio (numero e dies o data AAAA-MM-DD o DD.MM[ AAAA]</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4261"/>
+        <source>Couldn&apos;t set sleep time to %1.
+</source>
+        <translation>Non pote fixar tempore de otio a %1.</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4286"/>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation>%1 elementos sur mappa
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4304"/>
+        <source>branches</source>
+        <comment>Info about map</comment>
+        <translation>rmos</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4305"/>
+        <source>notes</source>
+        <comment>Info about map</comment>
+        <translation>notas</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4306"/>
+        <source>images</source>
+        <comment>Info about map</comment>
+        <translation>images</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4307"/>
+        <source>tasks</source>
+        <comment>Info about map</comment>
+        <translation>cargas</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4308"/>
+        <source>slides</source>
+        <comment>Info about map</comment>
+        <translation>diapositivas</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4309"/>
+        <source>xLinks</source>
+        <comment>Info about map</comment>
+        <translation>xLinks</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4967"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Set application to open PDF files</source>
+        <translation>Fixa application pro aperir files PDF</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5000"/>
+        <location filename="../mainwindow.cpp" line="5010"/>
+        <source>Set application to zip/unzip files</source>
+        <translation>Fixa application pro executar zip/unzip sur files</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5028"/>
+        <source>Directory with vym macros:</source>
+        <translation>Directorio con macros de vym:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5041"/>
+        <source>Number of undo/redo levels:</source>
+        <translation>Numero de nivellos de annulla/reface:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5045"/>
+        <source>VYM -Information:</source>
+        <translation>Information de VYM:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5046"/>
+        <source>Settings have been changed. The next map opened will have &quot;%1&quot; undo/redo levels</source>
+        <translation>Preferentias ha essite modificate. Le proxime mappa aperite habera &quot;%1&quot; nivellos de annulla/reface</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5066"/>
+        <source>Number of seconds before autosave:</source>
+        <translation>Numero de secundas ante que on salveguarda automaticamente:</translation>
+    </message>
+    <message>
+        <source>Information</source>
+        <translation type="obsolete">Information</translation>
+    </message>
+    <message>
+        <source>Changed settings will be applied after restarting vym</source>
+        <translation type="obsolete">Preferentias modificate essera applicate post re-initiar vym</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5433"/>
+        <source>History for %1</source>
+        <comment>Window Caption</comment>
+        <translation>Historia per %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5456"/>
+        <source>Export in last used format (%1) to: %2</source>
+        <comment>status tip</comment>
+        <translation>Exporta in ultime formato usate (%1) in: %2</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5787"/>
+        <source>Critcal error</source>
+        <translation>Error critic</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5788"/>
+        <source>Couldn&apos;t find the documentation %1 in:
+%2</source>
+        <translation>Il non pote trovar le documentation %1 in:
+%2</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5816"/>
+        <source>Load vym example map</source>
+        <translation>Carga mappa de exemplo de vym</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation type="obsolete">Il non pote trovar un macro in %1.
+</translation>
+    </message>
+    <message>
+        <source>Set directory for vym macros</source>
+        <translation type="obsolete">Fixa directorio pro macros de vym</translation>
+    </message>
+</context>
+<context>
+    <name>MapEditor</name>
+    <message>
+        <location filename="../mapeditor.cpp" line="43"/>
+        <source>Map Editor</source>
+        <comment>Shortcut scope</comment>
+        <translation>Editor de mappa</translation>
+    </message>
+    <message>
+        <source>Select previous</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Selectiona previe</translation>
+    </message>
+    <message>
+        <source>Select next</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Selectiona proxime</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="111"/>
+        <location filename="../mapeditor.cpp" line="116"/>
+        <source>Edit heading</source>
+        <comment>MapEditor</comment>
+        <translation></translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>MapEditor</comment>
+        <translation type="obsolete">Salveguarda</translation>
+    </message>
+    <message>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Talia</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Copia</translation>
+    </message>
+    <message>
+        <source>Repeat last export (%1)</source>
+        <translation type="obsolete">Repite ultime exportation (%1)</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="510"/>
+        <source>Print vym map</source>
+        <comment>MapEditor</comment>
+        <translation>Imprime mappa de vym</translation>
+    </message>
+</context>
+<context>
+    <name>NoteEditor</name>
+    <message>
+        <location filename="../noteeditor.cpp" line="13"/>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation>Editor de Nota</translation>
+    </message>
+</context>
+<context>
+    <name>Process</name>
+    <message>
+        <source>Critical Error</source>
+        <translation type="vanished">Error critic</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation type="vanished">Il non pote initiar %1</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="vanished">%1 non exiva normalmente</translation>
+    </message>
+</context>
+<context>
+    <name>QObject</name>
+    <message>
+        <location filename="../exports.cpp" line="56"/>
+        <location filename="../imports.cpp" line="18"/>
+        <location filename="../main.cpp" line="475"/>
+        <location filename="../scripteditor.cpp" line="77"/>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Error</source>
+        <translation>Error</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="57"/>
+        <location filename="../imports.cpp" line="19"/>
+        <source>Couldn&apos;t access temporary directory
+</source>
+        <translation>Il non pote acceder a directorio temporanee
+</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="147"/>
+        <source>Exporting to %1 will overwrite the existing file:
+%2</source>
+        <translation>Exportar a %1 superscribera le file existente:
+%2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="146"/>
+        <source>Warning: Overwriting file</source>
+        <translation>Advertimento: on superscribe file</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <location filename="../exports.cpp" line="373"/>
+        <source>Export as ASCII</source>
+        <translation>Exporta como ASCII</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <source>(still experimental)</source>
+        <translation>(ancora experimental)</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <source>Could not export as AO to %1</source>
+        <translation>Non pote exportar como AO a %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="381"/>
+        <source>Could not export as ASCII to %1</source>
+        <translation>Non pot exportar como ASCII a %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="503"/>
+        <source>Export as CSV</source>
+        <translation>Exporta como CSV</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="511"/>
+        <source>Could not export as CSV to %1</source>
+        <translation>Non pote exportar como CSV a %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="560"/>
+        <location filename="../exports.cpp" line="590"/>
+        <source>Exporting the %1 bookmarks will overwrite
+your existing bookmarks file.</source>
+        <translation>Exportar le preferitos %1 superscribera
+tu file existente de favoritos.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="561"/>
+        <location filename="../exports.cpp" line="591"/>
+        <source>Warning: Overwriting %1 bookmarks</source>
+        <translation>Advertimento: on superscribe %1 favoritos</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="579"/>
+        <location filename="../macros.cpp" line="39"/>
+        <location filename="../main.cpp" line="377"/>
+        <source>Warning</source>
+        <translation>Advertimento</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="580"/>
+        <source>Couldn&apos;t find script %1
+to notifiy Browsers of changed bookmarks.</source>
+        <translation>Il non pote trovar script %1
+per notificar a Navigatores de favoritos modificate. </translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="837"/>
+        <source>Contents:</source>
+        <comment>Used in HTML export</comment>
+        <translation>Contentos:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="893"/>
+        <source>Export aborted.</source>
+        <translation>Il abortava exportation.</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <comment>ExportHTML</comment>
+        <translation type="obsolete">Advertimento</translation>
+    </message>
+    <message>
+        <source>Trying to load stylesheet:</source>
+        <translation type="obsolete">Cercante de cargar folio de stilo:</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <comment>ExportHTML</comment>
+        <translation type="obsolete">Il non pote aperir %1</translation>
+    </message>
+    <message>
+        <source>Trying to save stylesheet:</source>
+        <translation type="obsolete">Cercante de salveguardar folio de stilo:</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <translation type="obsolete">Il non pote aperir %1</translation>
+    </message>
+    <message>
+        <source>Trying to load small icon for URLs:</source>
+        <translation type="obsolete">Provante a cargar parve icone per URLa:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="934"/>
+        <source>Trying to create directory for flags:</source>
+        <translation>Provante a crear directorio per bandieras:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="935"/>
+        <source>Could not create %1</source>
+        <translation>Il non pote crear %1</translation>
+    </message>
+    <message>
+        <source>Trying to save small icon for URLs:</source>
+        <translation type="obsolete">Provante a salveguardar parve icone per URLs:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="956"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <source>Could not write %1</source>
+        <translation>Il non pote scriber %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <location filename="../exports.cpp" line="381"/>
+        <location filename="../exports.cpp" line="511"/>
+        <location filename="../exports.cpp" line="954"/>
+        <location filename="../exports.cpp" line="1048"/>
+        <location filename="../exports.cpp" line="1128"/>
+        <location filename="../exports.cpp" line="1236"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <location filename="../exports.cpp" line="1333"/>
+        <location filename="../exports.cpp" line="1343"/>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Critical Export Error</source>
+        <translation>Error de exportar critic</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="909"/>
+        <location filename="../exports.cpp" line="933"/>
+        <location filename="../exports.cpp" line="944"/>
+        <source>Critical</source>
+        <translation>Critic</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="910"/>
+        <source>Could not find stylesheet %1</source>
+        <translation>Non pote trovar folio de stylo %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="920"/>
+        <source>Error</source>
+        <comment>ExportHTML</comment>
+        <translation>Error</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="921"/>
+        <source>Could not copy
+%1 to
+%2</source>
+        <comment>ExportHTML</comment>
+        <translation>Non pote copiar
+%1 a
+%2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="945"/>
+        <source>Could not copy %1 to %2</source>
+        <translation>Non pote copiar %1 a %2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="955"/>
+        <source>Trying to save HTML file:</source>
+        <translation>Provante a salveguardar file HTML:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="236"/>
+        <location filename="../exports.cpp" line="382"/>
+        <location filename="../exports.cpp" line="512"/>
+        <location filename="../exports.cpp" line="957"/>
+        <location filename="../exports.cpp" line="1049"/>
+        <location filename="../exports.cpp" line="1130"/>
+        <location filename="../exports.cpp" line="1309"/>
+        <source>Export failed.</source>
+        <translation>Il falleva a exportar.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1048"/>
+        <source>Could not export as OrgMode to %1</source>
+        <translation>Non pote exportar como OrgMode a %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1129"/>
+        <source>Could not export as LaTeX to %1</source>
+        <translation>Non pote exportar como LaTeX a %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1189"/>
+        <source>Export as LibreOffice Impress presentation</source>
+        <translation>Exporta com presentation de LibreOffice Impress</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1236"/>
+        <source>No objects in map!</source>
+        <translation>Nulle objectos in mappa!</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1333"/>
+        <source>Couldn&apos;t read settings from &quot;%1&quot;</source>
+        <translation>Il non pote leger prefrentias ex &quot;%1&quot;</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1343"/>
+        <source>Check &quot;%1&quot; in
+%2</source>
+        <translation>Verifica &quot;%1&quot; in
+%2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Could not read %1</source>
+        <translation>Il non pote leger %1</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="84"/>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <comment>write directory</comment>
+        <translation>Le directorio %1 non es vacue
+Tu risca de super scriber su contentos?</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="90"/>
+        <source>Overwrite</source>
+        <translation>Superscribe</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="91"/>
+        <source>Cancel</source>
+        <translation>Cancella</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="257"/>
+        <location filename="../file.cpp" line="272"/>
+        <location filename="../file.cpp" line="296"/>
+        <location filename="../file.cpp" line="305"/>
+        <location filename="../file.cpp" line="313"/>
+        <location filename="../file.cpp" line="323"/>
+        <location filename="../file.cpp" line="332"/>
+        <location filename="../file.cpp" line="340"/>
+        <location filename="../file.cpp" line="347"/>
+        <location filename="../file.cpp" line="356"/>
+        <location filename="../file.cpp" line="377"/>
+        <location filename="../file.cpp" line="400"/>
+        <location filename="../file.cpp" line="410"/>
+        <location filename="../file.cpp" line="423"/>
+        <location filename="../main.cpp" line="411"/>
+        <location filename="../xsltproc.cpp" line="78"/>
+        <location filename="../xsltproc.cpp" line="84"/>
+        <source>Critical Error</source>
+        <translation>Error critic</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="258"/>
+        <source>Couldn&apos;t move existing file out of the way before saving.</source>
+        <translation>Non pote mover remotemente file existente ante salveguardar.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="273"/>
+        <location filename="../file.cpp" line="378"/>
+        <source>Couldn&apos;t start tool to decompress data.</source>
+        <translation>Non poe initiar le instrumento per decomprimer datos.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="297"/>
+        <source>Couldn&apos;t start zip to compress data.</source>
+        <translation>Il non pote initiar zip per comprimer datos.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="306"/>
+        <source>zip didn&apos;t exit normally</source>
+        <translation>zip non exiva normalmente</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="324"/>
+        <source>Couldn&apos;t rename %1 back to %2</source>
+        <translation>Non pote renominar %1 de retro a %2</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="333"/>
+        <source>Couldn&apos;t remove target of old symbolic link %1</source>
+        <translation>Non pote remover objecto de vetere ligamine symbolic %1</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="341"/>
+        <source>Couldn&apos;t rename output to target of old symbolic link %1</source>
+        <translation>Non pote renominar exitoa objecto a vetere ligamine symbolic %1</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="348"/>
+        <source>Couldn&apos;t link from %1 to target of old symbolic link %2</source>
+        <translation>non pote crear igamine %1 a objecto de vetere ligamine symbolic %2</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="357"/>
+        <source>Saved %1, but couldn&apos;t remove %2</source>
+        <translation>Salveguardate %1 ma non pote remover %2</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="401"/>
+        <source>Couldn&apos;t start unzip to decompress data.</source>
+        <translation>il non pote initiar unzip pro decomprimer datos.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="411"/>
+        <source>unzip didn&apos;t exit normally</source>
+        <translation>unzip non exiva normalmente</translation>
+    </message>
+    <message>
+        <source>Heading Editor</source>
+        <comment>Shortcut group</comment>
+        <translation type="obsolete">Editor de capite</translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="412"/>
+        <source>Couldn&apos;t find tool to unzip data. Please download and install 7z and set path in Settings menu:
+ </source>
+        <translation>Non pote trovar instrumento pro executar unzip sur datos. Pro favor discarga e installa 7z e fixa le percurso in le menu de Preferentias:</translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="476"/>
+        <location filename="../scripteditor.cpp" line="78"/>
+        <source>Couldn&apos;t open &quot;%1&quot;
+%2.</source>
+        <translation>Il non pote aperir &quot;%1&quot;
+%2.</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3792"/>
+        <source>No Bugzilla client found.  For openSUSE you can install by (running as root):
+
+</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation>On non trovava alcun cliente de Bugzilla. Per OpenSUSE tu pote installar per (executante como administrator):
+
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3797"/>
+        <source>Alternatively you can also add the repository
+and install the perl module for Bugzilla access using YaST</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation>Alternativemente tu anque pote adder le repository (deposito)
+e installar le modulo de perl per le accesso de Bugzilla usante YaST</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3800"/>
+        <source>Warning: Couldn&apos;t find Bugzilla client</source>
+        <comment>VymModel</comment>
+        <translation>Advertimento: il non pote trovar cliente de Bugzilla</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="79"/>
+        <source>Could not start %1</source>
+        <translation>Il non pote initiar %1</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="85"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation>%1 non exiva normalmente</translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="80"/>
+        <source>Warning: Version Problem</source>
+        <translation>Advertimento: Problema de version</translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="81"/>
+        <source>&lt;h3&gt;Map is newer than VYM&lt;/h3&gt;&lt;p&gt;The map you are just trying to load was saved using vym %1. The version of this vym is %2. If you run into problems after pressing the ok-button below, updating vym should help.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="40"/>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation>Il non pote trovar un macro in %1.
+</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>Pro favor usa Preferentias-&gt;</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Set directory for vym macros</source>
+        <translation>Fixa directorio pro macros de vym</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Couldn&apos;t save &quot;%1&quot;</source>
+        <translation>Non pote salveguardar &quot;%1&quot;</translation>
+    </message>
+</context>
+<context>
+    <name>ScriptEditor</name>
+    <message>
+        <location filename="../scripteditor.ui" line="14"/>
+        <source>Form</source>
+        <translation>Forma</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="49"/>
+        <source>Tab 1</source>
+        <translation>Scheda 1</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="55"/>
+        <source>Save to selected slide</source>
+        <translation>Salveguarda le diapositiva seligite</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="91"/>
+        <location filename="../scripteditor.ui" line="145"/>
+        <source>Run</source>
+        <translation>Executa</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="105"/>
+        <source>Tab 2</source>
+        <translation>Scheda 2</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="121"/>
+        <source>Current key:</source>
+        <translation>Clave currente:</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="131"/>
+        <source>Load</source>
+        <translation>Carga</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="138"/>
+        <source>Save</source>
+        <translation>Salveguarda</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Warning</source>
+        <translation>Advertimento</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="45"/>
+        <source>Slide</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation>Diapositiva</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="46"/>
+        <source>Macro</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation>Macro</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="65"/>
+        <source>Save</source>
+        <comment>ScriptEditor</comment>
+        <translation>Salveguarda</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <source>Couldn&apos;t get model to save script into slide!</source>
+        <translation>Non pote obtener modelloo pro salveguardar script in diapositiva!</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Couldn&apos;t find slide to save script into slide!</source>
+        <translation>Non pote trovar diapositiva pro salveguardar in slide!</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="143"/>
+        <source>Save script</source>
+        <translation>Salveguarda script</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="155"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation>Le file %1 ja existe. Tu vole superscriber lo?</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="160"/>
+        <source>Overwrite</source>
+        <translation>Superscribe</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="161"/>
+        <source>Cancel</source>
+        <translation>Cancella</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="184"/>
+        <source>Load script</source>
+        <translation>Carga script</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="194"/>
+        <source>Error</source>
+        <translation>Error</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="195"/>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation>Il non pote aperir %1.</translation>
+    </message>
+</context>
+<context>
+    <name>ShowTextDialog</name>
+    <message>
+        <location filename="../showtextdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>Dialogo</translation>
+    </message>
+    <message>
+        <location filename="../showtextdialog.ui" line="50"/>
+        <source>Close</source>
+        <translation>Claude</translation>
+    </message>
+</context>
+<context>
+    <name>SimpleScriptEditor</name>
+    <message>
+        <source>Save as</source>
+        <translation type="obsolete">Salveguarda como</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <translation type="obsolete">Salveguarda</translation>
+    </message>
+    <message>
+        <source>Qt::CTRL + Qt::Key_S</source>
+        <translation type="obsolete">Qt::CTRL + Qt::Key_S</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <translation type="obsolete">Aperi</translation>
+    </message>
+    <message>
+        <source>Qt::CTRL +Qt::Key_O</source>
+        <translation type="obsolete">Qt:CTRL +Qt::Key_O</translation>
+    </message>
+    <message>
+        <source>Run</source>
+        <translation type="obsolete">Executa</translation>
+    </message>
+    <message>
+        <source>Qt::CTRL + Qt::Key_R</source>
+        <translation type="obsolete">Qt::CTRL + Qt::Key_R</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Claude</translation>
+    </message>
+    <message>
+        <source>Save script</source>
+        <translation type="obsolete">Salveguarda script</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation type="obsolete">Le file %1 ja existe. Tu vole superscriber lo?</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="obsolete">Superscribe</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Cancella</translation>
+    </message>
+    <message>
+        <source>Load script</source>
+        <translation type="obsolete">Carga script</translation>
+    </message>
+    <message>
+        <source>Error</source>
+        <translation type="obsolete">Error</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation type="obsolete">Il nonpote aperir %1.</translation>
+    </message>
+</context>
+<context>
+    <name>TaskEditor</name>
+    <message>
+        <location filename="../taskeditor.cpp" line="38"/>
+        <source>Current map</source>
+        <comment>TaskEditor</comment>
+        <translation>Mappa currente</translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="45"/>
+        <source>Active tasks</source>
+        <comment>TaskEditor</comment>
+        <translation>Cargas active</translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="52"/>
+        <source>New tasks</source>
+        <comment>TaskEditor</comment>
+        <translation>Nove cargas</translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="68"/>
+        <location filename="../taskeditor.cpp" line="73"/>
+        <source>Edit heading</source>
+        <comment>TaskEditor</comment>
+        <translation>Edita capite</translation>
+    </message>
+</context>
+<context>
+    <name>TaskModel</name>
+    <message>
+        <location filename="../taskmodel.cpp" line="127"/>
+        <source>Prio</source>
+        <comment>TaskEditor</comment>
+        <translation>Prioritate</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="129"/>
+        <source>Status</source>
+        <comment>TaskEditor</comment>
+        <translation>Status</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="131"/>
+        <source>Age total</source>
+        <comment>TaskEditor</comment>
+        <translation>Vetustate total</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="133"/>
+        <source>Age mod.</source>
+        <comment>TaskEditor</comment>
+        <translation>Vetustate mod.</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="135"/>
+        <source>Sleep</source>
+        <comment>TaskEditor</comment>
+        <translation>Otio</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="137"/>
+        <source>Map</source>
+        <comment>TaskEditor</comment>
+        <translation>Mappa</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="139"/>
+        <source>Task</source>
+        <comment>TaskEditor</comment>
+        <translation>Carga</translation>
+    </message>
+</context>
+<context>
+    <name>TextEditor</name>
+    <message>
+        <location filename="../texteditor.cpp" line="48"/>
+        <source>Ready</source>
+        <comment>Statusbar message</comment>
+        <translation>Preste</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="49"/>
+        <source>Text Editor</source>
+        <comment>Text Editor Window caption</comment>
+        <translation>Editor de texto</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="174"/>
+        <source>No filename available for this note.</source>
+        <comment>Statusbar message</comment>
+        <translation>Nulle nomine de file disponibile pro iste nota.</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="267"/>
+        <source>Note Actions</source>
+        <translation>Actiones de nota</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="269"/>
+        <source>&amp;Note</source>
+        <comment>Menubar</comment>
+        <translation>&amp;Nota</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="271"/>
+        <location filename="../texteditor.cpp" line="325"/>
+        <location filename="../texteditor.cpp" line="389"/>
+        <source>Texteditor</source>
+        <comment>Shortcuts</comment>
+        <translation>Editor de texto</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="273"/>
+        <source>&amp;Import...</source>
+        <translation>&amp;Importa...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="283"/>
+        <source>&amp;Export...</source>
+        <translation>&amp;Exporta...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="293"/>
+        <source>Export &amp;As... (HTML)</source>
+        <translation>Exporta &amp;como...(HTML)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="298"/>
+        <source>Export &amp;As...(ASCII)</source>
+        <translation>Exporta &amp;como...(ASCII)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="308"/>
+        <source>&amp;Print...</source>
+        <translation>&amp;Imprime...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="316"/>
+        <source>&amp;Delete All</source>
+        <translation>&amp;Dele Toto</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="326"/>
+        <source>Edit Actions</source>
+        <translation>Actiones de Edit</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <translation type="vanished">&amp;Edit</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="332"/>
+        <source>&amp;Undo</source>
+        <translation>&amp;Annulla</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="341"/>
+        <source>&amp;Redo</source>
+        <translation>&amp;Reface</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="351"/>
+        <source>Select and copy &amp;all</source>
+        <translation>Selige e copia &amp;omne</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="359"/>
+        <source>&amp;Copy</source>
+        <translation>&amp;Copia</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="368"/>
+        <source>Cu&amp;t</source>
+        <translation>&amp;Talia</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="377"/>
+        <source>&amp;Paste</source>
+        <translation>Co&amp;lla</translation>
+    </message>
+    <message>
+        <source>Format Actions</source>
+        <translation type="obsolete">Actiones de Format</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="329"/>
+        <source>Edi&amp;t</source>
+        <translation>Edi&amp;tar</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="390"/>
+        <source>Font hints</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>Insinuation de font</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="392"/>
+        <source>F&amp;ormat</source>
+        <translation>F&amp;ormat</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="396"/>
+        <source>&amp;Font hint</source>
+        <translation>Insinuation de &amp;Font</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="407"/>
+        <source>&amp;Richtext</source>
+        <translation>&amp;Richtext</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="417"/>
+        <source>Fonts</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>Fonts</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="443"/>
+        <source>Format</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>Formato</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="448"/>
+        <source>&amp;Color...</source>
+        <translation>&amp;Color...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="454"/>
+        <source>&amp;Bold</source>
+        <translation>&amp;Grasso</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="464"/>
+        <source>&amp;Italic</source>
+        <translation>Corsi&amp;ve</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="474"/>
+        <source>&amp;Underline</source>
+        <translation>S&amp;ublineate</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="488"/>
+        <source>Subs&amp;cript</source>
+        <translation>Subscri&amp;bite</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="498"/>
+        <source>Su&amp;perscript</source>
+        <translation>Supersc&amp;ribite</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="512"/>
+        <source>&amp;Left</source>
+        <translation>&amp;Sinistra</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="518"/>
+        <source>C&amp;enter</source>
+        <translation>C&amp;entro</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="524"/>
+        <source>&amp;Right</source>
+        <translation>&amp;Dextera</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="530"/>
+        <source>&amp;Justify</source>
+        <translation>&amp;Justifica</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="540"/>
+        <source>&amp;Settings</source>
+        <translation>&amp;Preferentias</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="543"/>
+        <source>Set &amp;fixed font</source>
+        <translation>Fixa font &amp;fixate</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="548"/>
+        <source>Set &amp;variable font</source>
+        <translation>Fixa font &amp;variabile</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="553"/>
+        <source>&amp;fixed font is default</source>
+        <translation>&amp;font fixate es predefinite</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="566"/>
+        <source>Note Editor</source>
+        <translation>Editor de nota</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="704"/>
+        <source>Export Note to single file</source>
+        <translation>Exporta nota in un singule file</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="719"/>
+        <location filename="../texteditor.cpp" line="795"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation>Le file %1 ja existe. Tu vole superscriber lo?</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="724"/>
+        <location filename="../texteditor.cpp" line="800"/>
+        <source>Overwrite</source>
+        <translation>Superscribe</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="725"/>
+        <location filename="../texteditor.cpp" line="801"/>
+        <source>Cancel</source>
+        <translation>Cancella</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="743"/>
+        <source>Couldn&apos;t export note </source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation>Il nonpote exportar nota</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="785"/>
+        <source>Export Note to single file (ASCII)</source>
+        <translation>Exporta Nota a un singule file (ASCII)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="828"/>
+        <source>Print</source>
+        <comment>TextEditor</comment>
+        <translation>Imprime</translation>
+    </message>
+</context>
+<context>
+    <name>TreeEditor</name>
+    <message>
+        <location filename="../treeeditor.cpp" line="27"/>
+        <source>Select upper object</source>
+        <comment>Tree Editor</comment>
+        <translation>Selige objecto superior</translation>
+    </message>
+    <message>
+        <location filename="../treeeditor.cpp" line="33"/>
+        <source>Select lower object</source>
+        <comment>Tree Editor</comment>
+        <translation>Selige objecto inferior</translation>
+    </message>
+</context>
+<context>
+    <name>VymModel</name>
+    <message>
+        <location filename="../vymmodel.cpp" line="126"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation>usator incognite</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="149"/>
+        <source>unnamed</source>
+        <translation>sin nomine</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="445"/>
+        <location filename="../vymmodel.cpp" line="481"/>
+        <location filename="../vymmodel.cpp" line="566"/>
+        <location filename="../vymmodel.cpp" line="622"/>
+        <source>Critical Parse Error</source>
+        <translation>Error critic de analysator syntactic</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="501"/>
+        <location filename="../vymmodel.cpp" line="551"/>
+        <source>Critical Load Error</source>
+        <translation>Errioc critic de cargar</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="502"/>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation>Il non pote crear directorio temporanee ante cargar
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="552"/>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation>Il non pot etrovar un mappa (é.xml) in archivo .vym.
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="980"/>
+        <source>unknown user</source>
+        <comment>Default for lockfiles of maps</comment>
+        <translation>usator incognite</translation>
+    </message>
+    <message>
+        <source>Map seems to be already opened in another vym instance! It will be opened in readonly mode.
+
+Map is locked by &quot;%1&quot; on &quot;%2&quot;</source>
+        <translation type="vanished">Mappa semla esser ja aperite in altere instantia de vym! Il essera aperite in modo de sol lectura.
+
+Mappa es blocate per &quot;%1&quot; sur &quot;%2&quot;</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1003"/>
+        <source>Warning: Map already opended</source>
+        <comment>VymModel</comment>
+        <translation>Advertimento: Mappa ja aperite</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="671"/>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation>Le mappa %1
+non usa le formato de file comprimite de vym.
+Si on scribe lo sin compression anque scribera images
+e bandieras e assi potera superscriber files in le directorio date
+
+Tu vole scriber le mappa</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="679"/>
+        <source>compressed (vym default)</source>
+        <translation>comprimite (predefinite de vym)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="680"/>
+        <source>uncompressed</source>
+        <translation>non comprimite</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="681"/>
+        <location filename="../vymmodel.cpp" line="864"/>
+        <source>Cancel</source>
+        <translation>Cancella</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="710"/>
+        <location filename="../vymmodel.cpp" line="715"/>
+        <source>Save Error</source>
+        <translation>Salveguarda error</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="711"/>
+        <source>%1
+could not be removed before saving</source>
+        <translation>%1 non poteva esser removite ante salveguardar</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="716"/>
+        <source>%1
+could not be renamed before saving</source>
+        <translation>%1 non poteva esser renominate ante salveguardar</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="728"/>
+        <source>Critical Save Error</source>
+        <translation>Error critic de salveguardar</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="729"/>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation>Il non poteva crear directorio temporanee ante salveguardar
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <location filename="../vymmodel.cpp" line="5783"/>
+        <source>Images</source>
+        <translation>Imagines</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <source>All</source>
+        <comment>Filedialog</comment>
+        <translation>Omne</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="792"/>
+        <source>Load image</source>
+        <translation>Carga imagine</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="844"/>
+        <source>Save image</source>
+        <translation>Salveguarda imagine</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="856"/>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation>Le file %1 ja existe. Tu vole supescriber lo?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="863"/>
+        <source>Overwrite</source>
+        <translation>Superscribe</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Critical Error</source>
+        <translation>Error critic</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <source>Unsupported format in %1</source>
+        <translation>Formato non supportate in %1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation>Il non pote salveguardar %1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Critical Import Error</source>
+        <translation>Error critic de importar</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Cannot find the directory %1</source>
+        <translation>Il non pote trovar le directorio %1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="962"/>
+        <location filename="../vymmodel.cpp" line="965"/>
+        <source>Choose directory structure to import</source>
+        <translation>Selige structura de directorio de importar</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="999"/>
+        <source>Map seems to be already opened in another vym instance!
+
+ Map is locked by &quot;%1&quot; on &quot;%2&quot;
+
+Please only delete the lockfile, if you are sure nobody else is currently working on this map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1008"/>
+        <source>Removed lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1014"/>
+        <source>Couldn&apos;t remove lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1021"/>
+        <source>Cannot create lockfile of map! It will be opened in readonly mode.
+
+</source>
+        <translation>Non pote crear file de bloco de mappa! Illo essera aperito in modo de sol lectura.
+
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1024"/>
+        <source>Warning</source>
+        <comment>VymModel</comment>
+        <translation>Advertimento</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1116"/>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation>Le file del mappa sur disco ha modificate:
+
+...%1
+
+Tu vole recargar le mappa con le nove file?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1123"/>
+        <source>Reload</source>
+        <translation>Recarga</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1124"/>
+        <source>Ignore</source>
+        <translation>Ignora</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1013"/>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Warning</source>
+        <translation>Advertimento</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <source>Redo failed:
+%1</source>
+        <translation>Il falleva a refacer:
+%1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1274"/>
+        <source>Autosave disabled during undo.</source>
+        <translation>Salveguardar automatc dishabilitate durante annullation.</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2001"/>
+        <source>Note</source>
+        <comment>FindAll in VymModel</comment>
+        <translation>Nota</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2725"/>
+        <source>Image</source>
+        <comment>Default name for new image</comment>
+        <translation>Image</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2958"/>
+        <source>New map</source>
+        <comment>New map</comment>
+        <translation>Nove mappa</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3822"/>
+        <source>Contacting Bugzilla...</source>
+        <comment>VymModel</comment>
+        <translation>Contingente Bugzilla...</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Script aborted:
+%1</source>
+        <translation>Script abortite:
+%1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5185"/>
+        <source>Export map as image</source>
+        <translation>Exporta mappa como imagine</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Couldn&apos;t save QImage %1 in format %2</source>
+        <translation>Il non pote salveguardar QImage %1 in formato %2</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5225"/>
+        <source>Export map as PDF</source>
+        <translation>Exporta mappa como PDF</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5280"/>
+        <source>Export map as SVG</source>
+        <translation>Exporta mappa como SVG</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5314"/>
+        <source>Export map as XML</source>
+        <translation>Exporta mappa como XML</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5321"/>
+        <source>Export XML to directory</source>
+        <translation>Exporta XML in directorio</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5367"/>
+        <source>Critical Export Error</source>
+        <translation>Error critic de exportation</translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">Exporta como LaTeX</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>(still experimental)</source>
+        <translation>(ancora experimental)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>Export as csv</source>
+        <translation>Exporta como csv</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5786"/>
+        <source>Load background image</source>
+        <translation>Carga imagine de fundo</translation>
+    </message>
+</context>
+<context>
+    <name>VymProcess</name>
+    <message>
+        <location filename="../vymprocess.cpp" line="43"/>
+        <location filename="../vymprocess.cpp" line="48"/>
+        <source>Critical Error</source>
+        <translation>Error critic</translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="44"/>
+        <source>Could not start %1</source>
+        <translation>Il non pote initiar %1</translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="49"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation>%1 non exiva normalmente</translation>
+    </message>
+</context>
+<context>
+    <name>VymView</name>
+    <message>
+        <location filename="../vymview.cpp" line="34"/>
+        <source>Tree Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation>Editor a arbore</translation>
+    </message>
+    <message>
+        <location filename="../vymview.cpp" line="52"/>
+        <source>Slide Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation>Editor de diapositiva</translation>
+    </message>
+</context>
+<context>
+    <name>WarningDialog</name>
+    <message>
+        <location filename="../warningdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>Dialogo</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="91"/>
+        <source>showAgainBox</source>
+        <translation>MonstraQuadroDeNove</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="117"/>
+        <location filename="../warningdialog.cpp" line="45"/>
+        <source>Cancel</source>
+        <translation>cancella</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="124"/>
+        <source>Ok</source>
+        <translation>Ok</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="10"/>
+        <source>Proceed</source>
+        <translation>Procede</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="12"/>
+        <source>Show this message again</source>
+        <translation>Monstra iste message de nove</translation>
+    </message>
+</context>
+</TS>
diff --git a/lang/vym.it.ts b/lang/vym.it.ts
new file mode 100644 (file)
index 0000000..53f5f97
--- /dev/null
@@ -0,0 +1,6560 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="it" sourcelanguage="en">
+<context>
+    <name>AboutDialog</name>
+    <message>
+        <source>Ok</source>
+        <translation type="obsolete">Ok</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="106"/>
+        <source>Credits</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation>Ringraziamenti</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="221"/>
+        <source>License</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation>Licenza</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="226"/>
+        <source>Ok</source>
+        <comment>Ok Button</comment>
+        <translation>Ok</translation>
+    </message>
+</context>
+<context>
+    <name>AboutTextBrowser</name>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>Usare le Impostazioni-&gt;</translation>
+    </message>
+    <message>
+        <source>Set application to open an URL</source>
+        <translation type="obsolete">Impostare un applicazione per aprire gli URL</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="246"/>
+        <source>Warning</source>
+        <comment>About window</comment>
+        <translation>Attenzione</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="247"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <comment>About window</comment>
+        <translation>Non è possibile trovare un&apos; applicazione per aprire %1.</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Set application to open an URL...</source>
+        <translation>Impostare un&apos;applicazione per aprire una URL...</translation>
+    </message>
+</context>
+<context>
+    <name>Attribute Dialog</name>
+    <message>
+        <source>AttributeDialog - Edit definitions</source>
+        <translation type="obsolete">AttributeDialog - Modifica definizioni</translation>
+    </message>
+    <message>
+        <source>AttributeDialog - Edit %1</source>
+        <translation type="obsolete">AttributeDialog - Modifica %1</translation>
+    </message>
+</context>
+<context>
+    <name>AttributeDialog</name>
+    <message>
+        <source>Attributes</source>
+        <translation type="obsolete">Attributi</translation>
+    </message>
+    <message>
+        <source>Add key</source>
+        <translation type="obsolete">Aggiungi chiave</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Chiudi</translation>
+    </message>
+</context>
+<context>
+    <name>AttributeWidget</name>
+    <message>
+        <source>Form</source>
+        <translation type="obsolete">Form</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyEditor</name>
+    <message>
+        <location filename="../branchpropeditor.ui" line="20"/>
+        <source>Branch Property Editor</source>
+        <translation>Editor di proprietà del Ramo</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="30"/>
+        <source>Frame</source>
+        <translation>Frame</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="51"/>
+        <source>Geometry</source>
+        <translation>Geometria</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="64"/>
+        <source>No Frame</source>
+        <translation>Senza Frame</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="69"/>
+        <source>Rectangle</source>
+        <translation>Rettangolo</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="74"/>
+        <source>Rounded Rectangle</source>
+        <translation>Rettangolo arrotondato</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="79"/>
+        <source>Ellipse</source>
+        <translation>Elisse</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="84"/>
+        <source>Cloud</source>
+        <translation>Cloud</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="105"/>
+        <source>Padding</source>
+        <translation>Bordatura</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="112"/>
+        <source>Borderline width</source>
+        <translation>Spessore contorno</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="136"/>
+        <source>Include children</source>
+        <translation>Include figli</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="169"/>
+        <source>Colors</source>
+        <translation>Colori</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="209"/>
+        <source>Borderline color</source>
+        <translation>Colore contorno</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="232"/>
+        <source>Background color</source>
+        <translation>Colore di sfondo</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="261"/>
+        <source>Layout</source>
+        <translation>Layout</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="269"/>
+        <source>Include images horizontally</source>
+        <translation>Includi immagini orizzontalmente</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="276"/>
+        <source>Include images vertically</source>
+        <translation>Includi immagini verticalmente</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="283"/>
+        <source>Free positioning of children (experimental!)</source>
+        <translation>Posizionamento libero dei figli (sperimentale)</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="306"/>
+        <source>Link</source>
+        <translation>Puntatori</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="312"/>
+        <source>Hide link if unselected</source>
+        <translation>Nascondi link se non selezionato</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="333"/>
+        <source>Attributes</source>
+        <translation>Attributi</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="359"/>
+        <source>+</source>
+        <translation>+</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="366"/>
+        <source>-</source>
+        <translation>-</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.cpp" line="19"/>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation>Editor di Proprietà</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyWindow</name>
+    <message>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation type="obsolete">Editor di Proprietà</translation>
+    </message>
+    <message>
+        <source>Name</source>
+        <comment>Branchprop window: Attribute name</comment>
+        <translation type="obsolete">Nome</translation>
+    </message>
+    <message>
+        <source>Value</source>
+        <comment>Branchprop window: Attribute value</comment>
+        <translation type="obsolete">Valore</translation>
+    </message>
+    <message>
+        <source>Type</source>
+        <comment>Branchprop window: Attribute type</comment>
+        <translation type="obsolete">Tipo</translation>
+    </message>
+    <message>
+        <source>Branch Property Editor</source>
+        <translation type="obsolete">Editor di proprietà del Ramo</translation>
+    </message>
+    <message>
+        <source>Frame</source>
+        <translation type="obsolete">Frame</translation>
+    </message>
+    <message>
+        <source>Geometry</source>
+        <translation type="obsolete">Geometria</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <translation type="obsolete">Senza Frame</translation>
+    </message>
+    <message>
+        <source>Rectangle</source>
+        <translation type="obsolete">Rettangolo</translation>
+    </message>
+    <message>
+        <source>Ellipse</source>
+        <translation type="obsolete">Elisse</translation>
+    </message>
+    <message>
+        <source>Cloud</source>
+        <translation type="obsolete">Cloud</translation>
+    </message>
+    <message>
+        <source>Padding</source>
+        <translation type="obsolete">Bordatura</translation>
+    </message>
+    <message>
+        <source>Borderline width</source>
+        <translation type="obsolete">Spessore contorno</translation>
+    </message>
+    <message>
+        <source>Include children</source>
+        <translation type="obsolete">Include figli</translation>
+    </message>
+    <message>
+        <source>Colors</source>
+        <translation type="obsolete">Colori</translation>
+    </message>
+    <message>
+        <source>Borderline color</source>
+        <translation type="obsolete">Colore contorno</translation>
+    </message>
+    <message>
+        <source>Background color</source>
+        <translation type="obsolete">Colore di sfondo</translation>
+    </message>
+    <message>
+        <source>Layout</source>
+        <translation type="obsolete">Layout</translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <translation type="obsolete">Includi immagini orizzontalmente</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <translation type="obsolete">Includi immagini verticalmente</translation>
+    </message>
+    <message>
+        <source>Link</source>
+        <translation type="obsolete">Puntatori</translation>
+    </message>
+    <message>
+        <source>Hide link if unselected</source>
+        <translation type="obsolete">Nascondi link se non selezionato</translation>
+    </message>
+    <message>
+        <source>Attributes</source>
+        <translation type="obsolete">Attributi</translation>
+    </message>
+    <message>
+        <source>+</source>
+        <translation type="obsolete">+</translation>
+    </message>
+    <message>
+        <source>-</source>
+        <translation type="obsolete">-</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Chiudi</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadAgent</name>
+    <message>
+        <location filename="../downloadagent.cpp" line="191"/>
+        <location filename="../downloadagent.cpp" line="195"/>
+        <source>Warning</source>
+        <translation>Attenzione</translation>
+    </message>
+</context>
+<context>
+    <name>EditXLinkDialog</name>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="20"/>
+        <source>Edit XLink</source>
+        <translation>Edita lo XLink</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="40"/>
+        <source>Arrow begin:</source>
+        <translation>Inizio della freccia:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="63"/>
+        <source>XLink width:</source>
+        <translation>spessore XLink:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="79"/>
+        <source>Use color of heading</source>
+        <translation>Usa il colore dell&apos;intestazione</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="177"/>
+        <source>Line style:</source>
+        <extracomment>Linestyle in Edit XLink dialog</extracomment>
+        <translation>Stile della linea:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="190"/>
+        <source>Arrow end:</source>
+        <translation>Fine della freccia:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="253"/>
+        <source>Close</source>
+        <translation>Chiudi</translation>
+    </message>
+    <message>
+        <source>Set color of heading</source>
+        <translation type="obsolete">Imposta colore del titolo</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="109"/>
+        <source>XLink color:</source>
+        <translation>colore del XLink:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="151"/>
+        <source>Use as default:</source>
+        <translation>Usa come predefinito:</translation>
+    </message>
+    <message>
+        <source>Delete XLink</source>
+        <translation type="obsolete">Elimina XLink</translation>
+    </message>
+    <message>
+        <source>Ok</source>
+        <translation type="obsolete">Ok</translation>
+    </message>
+    <message>
+        <source>Quit and delete XLink</source>
+        <translation type="obsolete">Esci e cancella lo Xlink</translation>
+    </message>
+</context>
+<context>
+    <name>ExportHTMLDialog</name>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="26"/>
+        <source>Export HTML</source>
+        <translation>Esporta in HTML</translation>
+    </message>
+    <message>
+        <source>Directory:</source>
+        <translation type="obsolete">Cartella:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="61"/>
+        <source>Export to directory:</source>
+        <translation>Esporta nella cartella:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="90"/>
+        <location filename="../exporthtmldialog.ui" line="267"/>
+        <location filename="../exporthtmldialog.ui" line="280"/>
+        <location filename="../exporthtmldialog.ui" line="353"/>
+        <source>Browse</source>
+        <translation>Naviga</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="117"/>
+        <source>Options</source>
+        <translation>Opzioni</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="138"/>
+        <source>Image of map</source>
+        <translation>Immagine della mappa</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="145"/>
+        <source>Include images</source>
+        <translation>Include immagini</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="152"/>
+        <source>Table of contents</source>
+        <translation>Indice</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="159"/>
+        <source>Task flags</source>
+        <translation>Flag di task</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="166"/>
+        <source>General flags</source>
+        <translation>Flag generali</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="173"/>
+        <source>Number sections</source>
+        <translation>Numera le sezioni</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="231"/>
+        <source>Copy CSS from </source>
+        <translation>Copia CSS da</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="251"/>
+        <source>Use CSS from</source>
+        <translation>Usa CSS da</translation>
+    </message>
+    <message>
+        <source>Include image</source>
+        <translation type="obsolete">Includi immagine</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="186"/>
+        <source>Colored headings in text</source>
+        <translation>Colori i titoli nel testo</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="199"/>
+        <source>Save settings in map</source>
+        <translation>Salva le impostazioni della mappa</translation>
+    </message>
+    <message>
+        <source>Include image of map</source>
+        <translation type="obsolete">Includi l&apos;immagine della mappa</translation>
+    </message>
+    <message>
+        <source>create image only</source>
+        <translation type="obsolete">crea solo immagini</translation>
+    </message>
+    <message>
+        <source>use WIKI style</source>
+        <translation type="obsolete">usa lo stile WIKI</translation>
+    </message>
+    <message>
+        <source>use heading for URLs (instead of link target)</source>
+        <translation type="obsolete">usa titoli per gli URL (al posto dei link target)</translation>
+    </message>
+    <message>
+        <source>use image of earth to mark URLs in text</source>
+        <translation type="obsolete">usa l&apos;immagine del globo terrestre per distinguere gli URL nel testo</translation>
+    </message>
+    <message>
+        <source>use default CSS file</source>
+        <translation type="obsolete">usa il file CSS predefinito</translation>
+    </message>
+    <message>
+        <source>show output of external scripts</source>
+        <translation type="obsolete">mostra l&apos;output degli script esterni</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="216"/>
+        <source>Stylesheets</source>
+        <translation>Foglio di Stile</translation>
+    </message>
+    <message>
+        <source>CSS:</source>
+        <translation type="obsolete">CSS:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="297"/>
+        <source>Scripts</source>
+        <translation>Script</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="327"/>
+        <source>After Export:</source>
+        <translation>Dopo l&apos;esportazione:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="389"/>
+        <source>Export</source>
+        <translation>Esporta</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="382"/>
+        <source>Cancel</source>
+        <translation>Cancella</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>Warning</source>
+        <translation>Attenzione</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>The settings saved in the map would like to run script:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation>Le preferenze salvate nella mappa vorrebbero eseguire lo script
+
+%1
+
+Per favore verifica se davvero tu
+voglia permettere ciò nel tuo sistema!</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="123"/>
+        <source>VYM - Export HTML to directory</source>
+        <translation>VYM - Esporta l&apos;HTML nella cartella</translation>
+    </message>
+    <message>
+        <source>Critcal export error</source>
+        <translation type="obsolete">Errore critico nell&apos;esportazione</translation>
+    </message>
+</context>
+<context>
+    <name>ExportXHTMLDialog</name>
+    <message>
+        <source>Export XHTML</source>
+        <translation type="obsolete">Esporta in XHTML</translation>
+    </message>
+    <message>
+        <source>Export to directory:</source>
+        <translation type="obsolete">Esporta nella cartella:</translation>
+    </message>
+    <message>
+        <source>Browse</source>
+        <translation type="obsolete">Naviga</translation>
+    </message>
+    <message>
+        <source>Options</source>
+        <translation type="obsolete">Opzioni</translation>
+    </message>
+    <message>
+        <source>Include image</source>
+        <translation type="obsolete">Includi immagine</translation>
+    </message>
+    <message>
+        <source>Colored headings in text</source>
+        <translation type="obsolete">Colori i titoli nel testo</translation>
+    </message>
+    <message>
+        <source>Save settings in map</source>
+        <translation type="obsolete">Salva le impostazioni della mappa</translation>
+    </message>
+    <message>
+        <source>showWarnings e.g. if directory is not empty</source>
+        <translation type="obsolete">mostra i Warning es. se la cartella non è vuota</translation>
+    </message>
+    <message>
+        <source>show output of external scripts</source>
+        <translation type="obsolete">mostra l&apos;output degli script esterni</translation>
+    </message>
+    <message>
+        <source>CSS:</source>
+        <translation type="obsolete">CSS:</translation>
+    </message>
+    <message>
+        <source>XSL:</source>
+        <translation type="obsolete">XSL:</translation>
+    </message>
+    <message>
+        <source>Before export:</source>
+        <translation type="obsolete">Prima di esportare:</translation>
+    </message>
+    <message>
+        <source>After Export:</source>
+        <translation type="obsolete">Dopo l&apos;esportazione:</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <translation type="obsolete">Esporta</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Cancella</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="obsolete">Attenzione</translation>
+    </message>
+    <message>
+        <source>The settings saved in the map would like to run scripts:
+
+</source>
+        <translation type="obsolete">Le impostazioni salvate nella mappa chiedono di eseguire degli script:
+
+</translation>
+    </message>
+    <message>
+        <source>Please check, if you really
+want to allow this in your system!</source>
+        <translation type="obsolete">Per favore, ricontrollare se davvero si 
+vuol permettere l&apos;azione sul proprio sistema! </translation>
+    </message>
+    <message>
+        <source>VYM - Export HTML to directory</source>
+        <translation type="obsolete">VYM - Esporta HTML in cartella </translation>
+    </message>
+    <message>
+        <source>VYM - Path to CSS file</source>
+        <translation type="obsolete">VYM - Percorso del file CSS</translation>
+    </message>
+    <message>
+        <source>VYM - Path to XSL file</source>
+        <translation type="obsolete">VYM - Percorso del file XSL</translation>
+    </message>
+    <message>
+        <source>VYM - Path to pre export script</source>
+        <translation type="obsolete">VYM - Percorso dello script di pre esportazione</translation>
+    </message>
+    <message>
+        <source>VYM - Path to post export script</source>
+        <translation type="obsolete">VYM - Percorso dello script di post esportazione</translation>
+    </message>
+    <message>
+        <source> could not be opened!</source>
+        <translation type="obsolete"> non può essere aperto!</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">Errore Critico</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start </source>
+        <translation type="obsolete"> Non è possibile iniziare</translation>
+    </message>
+    <message>
+        <source>didn&apos;t exit normally</source>
+        <translation type="obsolete">non è finito normalmente</translation>
+    </message>
+    <message>
+        <source>Stylesheets:</source>
+        <translation type="obsolete">Fogli di stile:</translation>
+    </message>
+    <message>
+        <source>Scripts:</source>
+        <translation type="obsolete">Script:</translation>
+    </message>
+    <message>
+        <source>Stylesheets</source>
+        <translation type="obsolete">Foglio di Stile</translation>
+    </message>
+    <message>
+        <source>Scripts</source>
+        <translation type="obsolete">Script</translation>
+    </message>
+    <message>
+        <source>The settings saved in the map would like to run scripts:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation type="obsolete">Le impostazioni salvate chiedono di eseguire degli script:
+
+%1
+
+Controllare, se veramente volete 
+permettere questo sul vostro sistema!</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <translation type="obsolete">Non è possibile %1</translation>
+    </message>
+    <message>
+        <source>Could not write %1</source>
+        <translation type="obsolete">Non è possibile scrivere %1</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation type="obsolete">Non è possibile iniziare %1</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="obsolete">%1 non è terminato normalmente</translation>
+    </message>
+    <message>
+        <source>show warnings of xslt processor</source>
+        <translation type="obsolete">Mostra errori del processore xslt</translation>
+    </message>
+</context>
+<context>
+    <name>ExtraInfoDialog</name>
+    <message>
+        <location filename="../extrainfodialog.ui" line="15"/>
+        <source>VYM - Info</source>
+        <translation>VYM - Info</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="36"/>
+        <source>Map:</source>
+        <translation>Mappa:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="53"/>
+        <source>Title:</source>
+        <translation>Titolo:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="63"/>
+        <source>Author:</source>
+        <translation>Autore:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="86"/>
+        <source>Comment:</source>
+        <translation>Commenti:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="96"/>
+        <source>Statistics:</source>
+        <translation>Statistiche:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="139"/>
+        <source>Cancel</source>
+        <translation>Cancella</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="146"/>
+        <source>Close</source>
+        <translation>Chiudi</translation>
+    </message>
+</context>
+<context>
+    <name>FindWidget</name>
+    <message>
+        <location filename="../findwidget.cpp" line="25"/>
+        <source>Find:</source>
+        <comment>FindWidget</comment>
+        <translation>Trova:</translation>
+    </message>
+</context>
+<context>
+    <name>FindWindow</name>
+    <message>
+        <source>Clear</source>
+        <translation type="obsolete">Pulisci</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Cancella</translation>
+    </message>
+    <message>
+        <source>Find</source>
+        <translation type="obsolete">Trova</translation>
+    </message>
+    <message>
+        <source>Find Text</source>
+        <translation type="obsolete">Trova Testo</translation>
+    </message>
+    <message>
+        <source>Text to find:</source>
+        <translation type="obsolete">Testo da Trovare:</translation>
+    </message>
+</context>
+<context>
+    <name>Heading of mapcenter in new map</name>
+    <message>
+        <source>New map</source>
+        <translation type="vanished">Nuova Mappa</translation>
+    </message>
+</context>
+<context>
+    <name>HeadingEditor</name>
+    <message>
+        <location filename="../headingeditor.cpp" line="9"/>
+        <source>Heading Editor</source>
+        <comment>Window caption</comment>
+        <translation>Editor intestazione</translation>
+    </message>
+</context>
+<context>
+    <name>HistoryWindow</name>
+    <message>
+        <location filename="../historywindow.ui" line="13"/>
+        <source>Dialog</source>
+        <translation>Finestra di Dialogo</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="50"/>
+        <source>Redo</source>
+        <translation>Rifai</translation>
+    </message>
+    <message>
+        <source>New Row</source>
+        <translation type="obsolete">Nuova Riga</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="72"/>
+        <source>Time</source>
+        <translation>Tempo</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="77"/>
+        <source>Comment</source>
+        <translation>Commenti</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="85"/>
+        <source>Undo</source>
+        <translation>Annulla</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="122"/>
+        <source>Close</source>
+        <translation>Chiudi</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="17"/>
+        <source>Action</source>
+        <comment>Table with actions</comment>
+        <translation>Azioni</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="20"/>
+        <source>Comment</source>
+        <comment>Table with actions</comment>
+        <translation>Commenti</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="23"/>
+        <source>Undo action</source>
+        <comment>Table with actions</comment>
+        <translation>Cancella azione</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="125"/>
+        <source>Current state</source>
+        <comment>Current bar in history hwindow</comment>
+        <translation>Stato corrente</translation>
+    </message>
+</context>
+<context>
+    <name>LineEditDialog</name>
+    <message>
+        <location filename="../lineeditdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>Finestra di Dialogo</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="26"/>
+        <source>TextLabel</source>
+        <translation>Etichetta di testo</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="89"/>
+        <location filename="../lineeditdialog.cpp" line="17"/>
+        <source>Cancel</source>
+        <translation>Cancella</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="99"/>
+        <location filename="../lineeditdialog.cpp" line="9"/>
+        <source>Ok</source>
+        <translation>Ok</translation>
+    </message>
+</context>
+<context>
+    <name>LockedFileDialog</name>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished">Finestra di Dialogo</translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="116"/>
+        <location filename="../lockedfiledialog.cpp" line="7"/>
+        <source>Delete lockfile</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="123"/>
+        <location filename="../lockedfiledialog.cpp" line="6"/>
+        <source>Open readonly</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Main</name>
+    <message>
+        <source>&amp;File</source>
+        <translation type="obsolete">&amp;File</translation>
+    </message>
+    <message>
+        <source>New map</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Nuova Mappa</translation>
+    </message>
+    <message>
+        <source>&amp;New...</source>
+        <translation type="obsolete">&amp;Nuovo...</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Apri</translation>
+    </message>
+    <message>
+        <source>&amp;Open...</source>
+        <translation type="obsolete">&amp;Apri...</translation>
+    </message>
+    <message>
+        <source>Open Recent</source>
+        <translation type="obsolete">Apri Recente</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <translation type="obsolete">Salva</translation>
+    </message>
+    <message>
+        <source>&amp;Save...</source>
+        <translation type="obsolete">&amp;Salva...</translation>
+    </message>
+    <message>
+        <source>Save &amp;As</source>
+        <translation type="obsolete">Salva &amp;Con nome</translation>
+    </message>
+    <message>
+        <source>Save &amp;As...</source>
+        <translation type="obsolete">Salva &amp;Con nome...</translation>
+    </message>
+    <message>
+        <source>Import directory structure (experimental)</source>
+        <translation type="obsolete">Importare la struttura di una cartella (sperimentale)</translation>
+    </message>
+    <message>
+        <source>Import Dir</source>
+        <translation type="obsolete">Importa Cartella</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <translation type="obsolete">Esporta</translation>
+    </message>
+    <message>
+        <source>Print</source>
+        <translation type="obsolete">Stampa</translation>
+    </message>
+    <message>
+        <source>&amp;Print...</source>
+        <translation type="obsolete">S&amp;tampa...</translation>
+    </message>
+    <message>
+        <source>Close Map</source>
+        <translation type="obsolete">Chiudi Mappa</translation>
+    </message>
+    <message>
+        <source>&amp;Close Map</source>
+        <translation type="obsolete">C&amp;hiudi Mappa</translation>
+    </message>
+    <message>
+        <source>Exit VYM</source>
+        <translation type="obsolete">Esci da VYM</translation>
+    </message>
+    <message>
+        <source>E&amp;xit VYM</source>
+        <translation type="obsolete">&amp;Esci da VYM</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <translation type="obsolete">&amp;Modifica</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <translation type="obsolete">Annulla</translation>
+    </message>
+    <message>
+        <source>&amp;Undo</source>
+        <translation type="obsolete">Annu&amp;lla</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <translation type="obsolete">Copia</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <translation type="obsolete">Co&amp;pia</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="obsolete">Taglia</translation>
+    </message>
+    <message>
+        <source>Cu&amp;t</source>
+        <translation type="obsolete">Ta&amp;glia</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <translation type="obsolete">Incolla</translation>
+    </message>
+    <message>
+        <source>&amp;Paste</source>
+        <translation type="obsolete">&amp;Incolla</translation>
+    </message>
+    <message>
+        <source>Move branch up</source>
+        <translation type="obsolete">Vai al ramo superiore</translation>
+    </message>
+    <message>
+        <source>Move up</source>
+        <translation type="obsolete">Vai sopra</translation>
+    </message>
+    <message>
+        <source>Move branch down</source>
+        <translation type="obsolete">Vai al ramo inferiore</translation>
+    </message>
+    <message>
+        <source>Move down</source>
+        <translation type="obsolete">Vai giù</translation>
+    </message>
+    <message>
+        <source>Scroll branch</source>
+        <translation type="obsolete">Nascondi/Mostra ramificazione</translation>
+    </message>
+    <message>
+        <source>Unscroll all</source>
+        <translation type="obsolete">Mostra tutti i rami</translation>
+    </message>
+    <message>
+        <source>Unscroll all scrolled branches</source>
+        <translation type="obsolete">Mostra tutti i rami nascosti</translation>
+    </message>
+    <message>
+        <source>Find</source>
+        <translation type="obsolete">Cerca</translation>
+    </message>
+    <message>
+        <source>Open URL</source>
+        <translation type="obsolete">Apri URL</translation>
+    </message>
+    <message>
+        <source>Edit URL</source>
+        <translation type="obsolete">Modifica URL</translation>
+    </message>
+    <message>
+        <source>Use heading of selected branch as URL</source>
+        <translation type="obsolete">Usa i titoli dei rami selezionati come URL</translation>
+    </message>
+    <message>
+        <source>Use heading for URL</source>
+        <translation type="obsolete">Usa titoli per gli URL</translation>
+    </message>
+    <message>
+        <source>Create URL to Bugzilla</source>
+        <translation type="obsolete">Crea URL a Bugzilla</translation>
+    </message>
+    <message>
+        <source>Jump to another vym map, if needed load it first</source>
+        <translation type="obsolete">Salta ad un&apos;altra mappa vym, se necessario caricala prima</translation>
+    </message>
+    <message>
+        <source>Jump to map</source>
+        <translation type="obsolete">Salta ad una mappa</translation>
+    </message>
+    <message>
+        <source>Edit link to another vym map</source>
+        <translation type="obsolete">Edita link a un&apos;altra mappa</translation>
+    </message>
+    <message>
+        <source>Edit vym link</source>
+        <translation type="obsolete">Edita un link vym</translation>
+    </message>
+    <message>
+        <source>Delete link to another vym map</source>
+        <translation type="obsolete">Cancella il link ad un&apos;altra mappa vym</translation>
+    </message>
+    <message>
+        <source>Delete vym link</source>
+        <translation type="obsolete">Cancella link vym</translation>
+    </message>
+    <message>
+        <source>Edit Map Info</source>
+        <translation type="obsolete">Edita Info della Mappa</translation>
+    </message>
+    <message>
+        <source>edit Heading</source>
+        <translation type="obsolete">edita Titolo</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <translation type="obsolete">Edita Titolo</translation>
+    </message>
+    <message>
+        <source>Delete Selection</source>
+        <translation type="obsolete">Cancella la Selezione</translation>
+    </message>
+    <message>
+        <source>Add a branch as child of selection</source>
+        <translation type="obsolete">Aggiungi un ramo come figlio della selezione</translation>
+    </message>
+    <message>
+        <source>Add branch as child</source>
+        <translation type="obsolete">Aggiungi ramo come figlio</translation>
+    </message>
+    <message>
+        <source>Add a branch above selection</source>
+        <translation type="obsolete">Aggiungi un ramo sopra la selzione</translation>
+    </message>
+    <message>
+        <source>Add branch above</source>
+        <translation type="obsolete">Aggiungi ramo sopra</translation>
+    </message>
+    <message>
+        <source>Add a branch below selection</source>
+        <translation type="obsolete">Aggiungi ramo sotto la selezione</translation>
+    </message>
+    <message>
+        <source>Add branch below</source>
+        <translation type="obsolete">Aggiungi ramo sotto</translation>
+    </message>
+    <message>
+        <source>Add map at selection</source>
+        <translation type="obsolete">Aggiungi mappa alla selezione</translation>
+    </message>
+    <message>
+        <source>Import (add)</source>
+        <translation type="obsolete">Importa (aggiungi)</translation>
+    </message>
+    <message>
+        <source>Replace selection with map</source>
+        <translation type="obsolete">Rimpiazza la selezione con una mappa</translation>
+    </message>
+    <message>
+        <source>Import (replace)</source>
+        <translation type="obsolete">Importa (rimpiazza)</translation>
+    </message>
+    <message>
+        <source>Save selection</source>
+        <translation type="obsolete">Salva selezione</translation>
+    </message>
+    <message>
+        <source>Select upper branch</source>
+        <translation type="obsolete">Seleziona il ramo superiore</translation>
+    </message>
+    <message>
+        <source>Select lower branch</source>
+        <translation type="obsolete">Seleziona il ramo inferiore</translation>
+    </message>
+    <message>
+        <source>Select left branch</source>
+        <translation type="obsolete">Seleziona il ramo sinistro</translation>
+    </message>
+    <message>
+        <source>Select right branch</source>
+        <translation type="obsolete">Seleziona il ramo destro</translation>
+    </message>
+    <message>
+        <source>Select child branch</source>
+        <translation type="obsolete">Seleziona il ramo figlio</translation>
+    </message>
+    <message>
+        <source>Select first branch</source>
+        <translation type="obsolete">Seleziona il primo ramo</translation>
+    </message>
+    <message>
+        <source>Select last branch</source>
+        <translation type="obsolete">Seleziona l&apos;ultimo ramo</translation>
+    </message>
+    <message>
+        <source>Add Image</source>
+        <translation type="obsolete">Aggiungi Immagine</translation>
+    </message>
+    <message>
+        <source>&amp;Format</source>
+        <translation type="obsolete">&amp;Formato</translation>
+    </message>
+    <message>
+        <source>Set Color</source>
+        <translation type="obsolete">Scegli Colore</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1883"/>
+        <source>Set &amp;Color</source>
+        <translation>Scegli C&amp;olore</translation>
+    </message>
+    <message>
+        <source>Pick color
+Hint: You can pick a color from another branch and color using CTRL+Left Button</source>
+        <translation type="obsolete">Prendi colore
+Consiglio: Puoi prendere il colore di un altro ramo usando CTRL+Tasto Sinistro</translation>
+    </message>
+    <message>
+        <source>Pic&amp;k color</source>
+        <translation type="obsolete">P&amp;rendi colore</translation>
+    </message>
+    <message>
+        <source>Color branch</source>
+        <translation type="obsolete">Colore del ramo</translation>
+    </message>
+    <message>
+        <source>Color &amp;branch</source>
+        <translation type="obsolete">Colore &amp;del ramo</translation>
+    </message>
+    <message>
+        <source>Color Subtree</source>
+        <translation type="obsolete">Colore del sottoalbero</translation>
+    </message>
+    <message>
+        <source>Color sub&amp;tree</source>
+        <translation type="obsolete">Colore del so&amp;ttoalbero</translation>
+    </message>
+    <message>
+        <source>Line</source>
+        <translation type="obsolete">Linea</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1928"/>
+        <source>Linkstyle Line</source>
+        <translation>Collegamenti Lineari</translation>
+    </message>
+    <message>
+        <source>Linkstyle Parabel</source>
+        <translation type="obsolete">Collegamenti Parabolici</translation>
+    </message>
+    <message>
+        <source>PolyLine</source>
+        <translation type="obsolete">PoliLinee</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1942"/>
+        <source>Linkstyle Thick Line</source>
+        <translation>Collegamento Linea Spessa</translation>
+    </message>
+    <message>
+        <source>PolyParabel</source>
+        <translation type="obsolete">PoliParabole</translation>
+    </message>
+    <message>
+        <source>Linkstyle Thick Parabel</source>
+        <translation type="obsolete">Collegamento Parabola spessa</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <translation type="obsolete">Senza Frame</translation>
+    </message>
+    <message>
+        <source>Rectangle</source>
+        <translation type="obsolete">Rettangolo</translation>
+    </message>
+    <message>
+        <source>Use same color for links and headings</source>
+        <translation type="obsolete">Usa lo stesso colore per titoli e collegamenti</translation>
+    </message>
+    <message>
+        <source>&amp;Use color of heading for link</source>
+        <translation type="obsolete">&amp;Usa colore dei titoli per i collegamenti</translation>
+    </message>
+    <message>
+        <source>Set Link Color</source>
+        <translation type="obsolete">Specifica Colore dei collegamenti</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1971"/>
+        <source>Set &amp;Link Color</source>
+        <translation>Specifica Co&amp;lore dei Collegamenti</translation>
+    </message>
+    <message>
+        <source>Set Background Color</source>
+        <translation type="obsolete">Specifica colore di Sfondo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1981"/>
+        <source>Set &amp;Background Color</source>
+        <translation>Specifica Colore di S&amp;fondo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1995"/>
+        <source>&amp;View</source>
+        <translation>&amp;Vedi</translation>
+    </message>
+    <message>
+        <source>Zoom reset</source>
+        <translation type="obsolete">Zoom reset</translation>
+    </message>
+    <message>
+        <source>reset Zoom</source>
+        <translation type="obsolete">reset Zoom</translation>
+    </message>
+    <message>
+        <source>Zoom in</source>
+        <translation type="obsolete">Zoom dentro</translation>
+    </message>
+    <message>
+        <source>Zoom out</source>
+        <translation type="obsolete">Zoom fuori</translation>
+    </message>
+    <message>
+        <source>Toggle Note Editor</source>
+        <translation type="obsolete">Mostra l&apos;Editor di Note</translation>
+    </message>
+    <message>
+        <source>&amp;Next Window</source>
+        <translation type="obsolete">&amp;Prossima Finestra</translation>
+    </message>
+    <message>
+        <source>Next Window</source>
+        <translation type="obsolete">Prossima Finestra</translation>
+    </message>
+    <message>
+        <source>&amp;Previous Window</source>
+        <translation type="obsolete">Finestra &amp;Precedente</translation>
+    </message>
+    <message>
+        <source>Previous Window</source>
+        <translation type="obsolete">Finestra Precedente</translation>
+    </message>
+    <message>
+        <source>Modes when using modifiers</source>
+        <translation type="obsolete">Metodi nell&apos;uso dei modifier</translation>
+    </message>
+    <message>
+        <source>Use modifier to color branches</source>
+        <translation type="obsolete">Usa i modifier per colorare i rami</translation>
+    </message>
+    <message>
+        <source>&amp;Settings</source>
+        <translation type="obsolete">&amp;Preferenze</translation>
+    </message>
+    <message>
+        <source>Set application to open pdf files</source>
+        <translation type="obsolete">Scegli il programma per aprire i file pdf</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="4981"/>
+        <source>Set application to open an URL</source>
+        <translation>Scegli l&apos;applicazione per aprire gli URL</translation>
+    </message>
+    <message>
+        <source>Edit branch after adding it</source>
+        <translation type="obsolete">Edita il ramo dopo averlo aggiunto</translation>
+    </message>
+    <message>
+        <source>Select branch after adding it</source>
+        <translation type="obsolete">Seleziona il ramo dopo averlo aggiunto</translation>
+    </message>
+    <message>
+        <source>Select heading before editing</source>
+        <translation type="obsolete">Seleziona il titolo prima di editarlo</translation>
+    </message>
+    <message>
+        <source>Select existing heading</source>
+        <translation type="obsolete">Seleziona il titolo esistente</translation>
+    </message>
+    <message>
+        <source>Enable pasting into new branch</source>
+        <translation type="obsolete">Abilita incolla nei nuovi rami</translation>
+    </message>
+    <message>
+        <source>Enable Delete key for deleting branches</source>
+        <translation type="obsolete">Abilita tasto Cancella per cancellare i rami</translation>
+    </message>
+    <message>
+        <source>Enable Delete key</source>
+        <translation type="obsolete">Abilita il tasto Cancella</translation>
+    </message>
+    <message>
+        <source>&amp;Test</source>
+        <translation type="obsolete">&amp;Test</translation>
+    </message>
+    <message>
+        <source>Test Flag</source>
+        <translation type="obsolete">Test Flag</translation>
+    </message>
+    <message>
+        <source>test flag</source>
+        <translation type="obsolete">test flag</translation>
+    </message>
+    <message>
+        <source>Show Clipboard</source>
+        <translation type="obsolete">Mostra Clipboard</translation>
+    </message>
+    <message>
+        <source>Show clipboard</source>
+        <translation type="obsolete">Mostra clipboard</translation>
+    </message>
+    <message>
+        <source>&amp;Help</source>
+        <translation type="obsolete">&amp;Aiuto</translation>
+    </message>
+    <message>
+        <source>Open VYM Documentation (pdf)</source>
+        <translation type="obsolete">Apri la documentazione di VYM (pdf)</translation>
+    </message>
+    <message>
+        <source>Open VYM Documentation (pdf) </source>
+        <translation type="obsolete"> Apri la documentazione di VYM (pdf)</translation>
+    </message>
+    <message>
+        <source>Information about VYM</source>
+        <translation type="obsolete">Informazioni riguardo VYM </translation>
+    </message>
+    <message>
+        <source>About VYM</source>
+        <translation type="obsolete">A proposito di VYM</translation>
+    </message>
+    <message>
+        <source>Information about QT toolkit</source>
+        <translation type="obsolete">Informazioni riguardo le QT toolkit</translation>
+    </message>
+    <message>
+        <source>About QT</source>
+        <translation type="obsolete">Riguardo le QT</translation>
+    </message>
+    <message>
+        <source>Save image</source>
+        <translation type="obsolete">Salva immagine</translation>
+    </message>
+    <message>
+        <source>Use for Export</source>
+        <translation type="obsolete">Usa per Esportare</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <translation type="obsolete">Esporta mappa come immagine</translation>
+    </message>
+    <message>
+        <source>Export as ASCII (still experimental)</source>
+        <translation type="obsolete">Esporta come ASCI (in via di sperimentazione)</translation>
+    </message>
+    <message>
+        <source>Export (ASCII)</source>
+        <translation type="obsolete">Esporta (ASCII)</translation>
+    </message>
+    <message>
+        <source>Export XML</source>
+        <translation type="obsolete">Esporta in XML</translation>
+    </message>
+    <message>
+        <source>Export HTML</source>
+        <translation type="obsolete">Esporta in HTML</translation>
+    </message>
+    <message>
+        <source>Export XHTML</source>
+        <translation type="obsolete">Esporta in XHTML</translation>
+    </message>
+    <message>
+        <source>The directory </source>
+        <translation type="obsolete"> La cartella</translation>
+    </message>
+    <message>
+        <source> is not empty. Do you risk to overwrite its contents?</source>
+        <translation type="obsolete"> non è vuota. Vuoi rischiare sovvrascrivendone il contenuto?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3460"/>
+        <source>Overwrite</source>
+        <translation>Sovvrascrivi</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3188"/>
+        <location filename="../mainwindow.cpp" line="3235"/>
+        <location filename="../mainwindow.cpp" line="3461"/>
+        <source>Cancel</source>
+        <translation>Cancella</translation>
+    </message>
+    <message>
+        <source>The map </source>
+        <translation type="obsolete"> La mappa</translation>
+    </message>
+    <message>
+        <source>
+ is already opened.Opening the same map in multiple editors may lead 
+to confusion when finishing working with vym.Do you want to</source>
+        <translation type="obsolete">
+è già aperta. Aprire la stessa mappa in più editor può portare
+in confusione quando si finisce di lavorare con vym. Vuoi </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3187"/>
+        <source>Open anyway</source>
+        <translation>Aprire lo stesso</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3234"/>
+        <source>Create</source>
+        <translation>Crea</translation>
+    </message>
+    <message>
+        <source>Critical Load Error</source>
+        <translation type="obsolete">Errore Critico di Caricamento</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start unzip to decompress data.</source>
+        <translation type="obsolete">Non è possibile iniziare l&apos;unzip per la decompressione dei dati.</translation>
+    </message>
+    <message>
+        <source>unzip didn&apos;t exit normally</source>
+        <translation type="obsolete">unzip non è finito normalmente</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="obsolete">Non è possibile trovare una mappa (*.xml) nell&apos;archivio .vym.
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3303"/>
+        <source>Load vym map</source>
+        <translation>Carica una mappa vym</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3306"/>
+        <source>Import: Add vym map to selection</source>
+        <translation>Importa: Aggiungi una mappa vym alla selezione</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3309"/>
+        <source>Import: Replace selection with vym map</source>
+        <translation>Importa: Rimpiazza la selezione con una mappa vym</translation>
+    </message>
+    <message>
+        <source>Save Error</source>
+        <translation type="obsolete">Errore di Salvataggio</translation>
+    </message>
+    <message>
+        <source>
+could not be removed before saving</source>
+        <translation type="obsolete">
+non può essere rimosso prima del salvataggio</translation>
+    </message>
+    <message>
+        <source>
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="obsolete">
+non usa un formato di file compresso vym.
+ Scrivendolo non compresso, può anche scrivere le immagini
+e i flag e pertanto può sovvrascrivere i file nella cartella data
+
+Vuoi scrivere la mappa </translation>
+    </message>
+    <message>
+        <source>compressed (vym default)</source>
+        <translation type="obsolete">compresso (predefinito in vym)</translation>
+    </message>
+    <message>
+        <source>uncompressed</source>
+        <translation type="obsolete">non compresso</translation>
+    </message>
+    <message>
+        <source>Critical Save Error</source>
+        <translation type="obsolete">Errore Critico di Salvataggio</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start zip to compress data.</source>
+        <translation type="obsolete">Non è possibile iniziare lo zip per la decompressione dei dati.</translation>
+    </message>
+    <message>
+        <source>zip didn&apos;t exit normally</source>
+        <translation type="obsolete">lo zip non è finito normalmente</translation>
+    </message>
+    <message>
+        <source>Saved</source>
+        <translation type="obsolete">Salvato</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save</source>
+        <translation type="obsolete">Non è possibile salvare</translation>
+    </message>
+    <message>
+        <source>The file </source>
+        <translation type="obsolete"> Il file</translation>
+    </message>
+    <message>
+        <source>
+exists already. Do you want to</source>
+        <translation type="obsolete">
+esiste già. Vuoi</translation>
+    </message>
+    <message>
+        <source>Export XML to directory</source>
+        <translation type="obsolete">Esporta XML in una cartella</translation>
+    </message>
+    <message>
+        <source> has been modified but not saved yet. Do you want to</source>
+        <translation type="obsolete"> è stato modificato ma non ancora salvato. Vuoi</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3775"/>
+        <source>Save modified map before closing it</source>
+        <translation>Salvare la mappa modificata prima di chiudere</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3776"/>
+        <source>Discard changes</source>
+        <translation>Tralascia le modifiche</translation>
+    </message>
+    <message>
+        <source>This map is not saved yet. Do you want to</source>
+        <translation type="obsolete">Questa mapp è stata modificata ma non ancora salvata. Vuoi</translation>
+    </message>
+    <message>
+        <source>Save map</source>
+        <translation type="obsolete">Salvare la mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5045"/>
+        <source>VYM -Information:</source>
+        <translation>VIM - Informazioni:</translation>
+    </message>
+    <message>
+        <source>No matches found for </source>
+        <translation type="obsolete"> Nessuna corrispondenza trovata per </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <location filename="../mainwindow.cpp" line="4130"/>
+        <source>Critical Error</source>
+        <translation>Errore Critico</translation>
+    </message>
+    <message>
+        <source>Enter path for pdf reader:</source>
+        <translation type="obsolete">Seleziona il percorso del lettore pdf:</translation>
+    </message>
+    <message>
+        <source>Enter path for application to open an URL:</source>
+        <translation type="obsolete">Seleziona il percorso dell&apos;aplicazione per aprire gli URL:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5787"/>
+        <source>Critcal error</source>
+        <translation>Errore Critico</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find the documentation
+vym.pdf in various places.</source>
+        <translation type="obsolete">Non è possibile trovare la documentazione
+vym.pdf in ognidove.</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a viewer to read vym.pdf.
+Please use Settings-&gt;</source>
+        <translation type="obsolete">Non è possibile trovare un lettore per il file vym.pdf
+Per favore usare Preferenze-&gt;</translation>
+    </message>
+    <message>
+        <source>Add a branch by inserting and making selection its child</source>
+        <translation type="obsolete">Aggiungere un ramo inserendo e selezionando il figlio</translation>
+    </message>
+    <message>
+        <source>Add branch (insert)</source>
+        <translation type="obsolete">Aggiungi ramo (inserisci)</translation>
+    </message>
+    <message>
+        <source>Remove only branch and keep its childs</source>
+        <translation type="obsolete">Rimuovi solo il ramo e mantieni i figli</translation>
+    </message>
+    <message>
+        <source>Remove only branch </source>
+        <translation type="obsolete"> Rimuovi solo il ramo</translation>
+    </message>
+    <message>
+        <source>Remove childs of branch</source>
+        <translation type="obsolete">Rimuovi i figli del ramo</translation>
+    </message>
+    <message>
+        <source>Remove childs</source>
+        <translation type="obsolete">Rimuovi i figli</translation>
+    </message>
+    <message>
+        <source>Use modifier to copy</source>
+        <translation type="obsolete">Usa i modifier per copiare</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2723"/>
+        <source>Add</source>
+        <translation>Aggiungi</translation>
+    </message>
+    <message>
+        <source>Remove</source>
+        <translation type="obsolete">Rimuovi</translation>
+    </message>
+    <message>
+        <source>Edit XLink</source>
+        <translation type="obsolete">Edita il XLink</translation>
+    </message>
+    <message>
+        <source>Goto XLink</source>
+        <translation type="obsolete">Vai al XLink</translation>
+    </message>
+    <message>
+        <source>This map does not exist:
+  </source>
+        <translation type="obsolete">Questa mappa non esite:
+  </translation>
+    </message>
+    <message>
+        <source>
+Do you want to create a new one?</source>
+        <translation type="obsolete">
+Vuoi crearne una nuova?</translation>
+    </message>
+    <message>
+        <source>Use modifier to draw xLinks</source>
+        <translation type="obsolete">Usa i modifier per disegnare XLink</translation>
+    </message>
+    <message>
+        <source>Use exclusive flags in flag toolbars</source>
+        <translation type="obsolete">Usa solo i flag esclusivi nel flag toolbars</translation>
+    </message>
+    <message>
+        <source>Enable exclusive flags</source>
+        <translation type="obsolete">Abilita i flag esclusivi</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <location filename="../mainwindow.cpp" line="3596"/>
+        <source>Import</source>
+        <translation>Importa</translation>
+    </message>
+    <message>
+        <source>KDE Bookmarks</source>
+        <translation type="obsolete">Segnalibri di KDE</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1110"/>
+        <source>&amp;Print</source>
+        <translation>&amp;Stampa</translation>
+    </message>
+    <message>
+        <source>Exit</source>
+        <translation type="obsolete">Esci</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="obsolete">Rifai</translation>
+    </message>
+    <message>
+        <source>&amp;Redo</source>
+        <translation type="obsolete">&amp;Rifai</translation>
+    </message>
+    <message>
+        <source>Create URL to FATE</source>
+        <translation type="obsolete">Crea URL a FATE</translation>
+    </message>
+    <message>
+        <source>Hide object in exports</source>
+        <translation type="obsolete">Nascondi oggetto nell&apos;esportazione</translation>
+    </message>
+    <message>
+        <source>Include top and bottom position of images into branch</source>
+        <translation type="obsolete">Includi le posizioni sopra e sotto delle immagini nel ramo</translation>
+    </message>
+    <message>
+        <source>Include left and right position of images into branch</source>
+        <translation type="obsolete">InIncludi le posizioni destra e sinistra delle immagini nel ramo</translation>
+    </message>
+    <message>
+        <source>Hide link</source>
+        <translation type="obsolete">Nacondi link</translation>
+    </message>
+    <message>
+        <source>Note</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Note</translation>
+    </message>
+    <message>
+        <source>WWW Document (external)</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Documento WWW (esterno)</translation>
+    </message>
+    <message>
+        <source>Link to another vym map</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Collega ad un&apos;altra mappa vym</translation>
+    </message>
+    <message>
+        <source>subtree is scrolled</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">sottoalbero è espanso</translation>
+    </message>
+    <message>
+        <source>subtree is temporary scrolled</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">sottoalbero è temporaneamente espanso</translation>
+    </message>
+    <message>
+        <source>Hide object in exported maps</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Nascondi oggetto nelle mappe esportate</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2291"/>
+        <source>Take care!</source>
+        <comment>Standardflag</comment>
+        <translation>Fare attenzione!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2295"/>
+        <source>Really?</source>
+        <comment>Standardflag</comment>
+        <translation>Veramente?</translation>
+    </message>
+    <message>
+        <source>ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">ok!</translation>
+    </message>
+    <message>
+        <source>Not ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Non ok!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2274"/>
+        <source>This won&apos;t work!</source>
+        <comment>Standardflag</comment>
+        <translation>Questo non funzionerà!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2299"/>
+        <source>Good</source>
+        <comment>Standardflag</comment>
+        <translation>Bene</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2303"/>
+        <source>Bad</source>
+        <comment>Standardflag</comment>
+        <translation>Male</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2312"/>
+        <source>Time critical</source>
+        <comment>Standardflag</comment>
+        <translation>In tempo critico</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2318"/>
+        <source>Idea!</source>
+        <comment>Standardflag</comment>
+        <translation>Idea!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2322"/>
+        <source>Important</source>
+        <comment>Standardflag</comment>
+        <translation>Importante</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2326"/>
+        <source>Unimportant</source>
+        <comment>Standardflag</comment>
+        <translation>Non Importante</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2339"/>
+        <source>I like this</source>
+        <comment>Standardflag</comment>
+        <translation>Mi piace</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2343"/>
+        <source>I do not like this</source>
+        <comment>Standardflag</comment>
+        <translation>Non mi piace</translation>
+    </message>
+    <message>
+        <source>I just love... </source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete"> Lo amo... </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2356"/>
+        <source>Dangerous</source>
+        <comment>Standardflag</comment>
+        <translation>Pericoloso</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2364"/>
+        <source>This will help</source>
+        <comment>Standardflag</comment>
+        <translation>Questo aiuta</translation>
+    </message>
+    <message>
+        <source>Set application to open external links</source>
+        <translation type="obsolete">Imposta applicazione per aprire i link esterni</translation>
+    </message>
+    <message>
+        <source>Delete key for deleting branches</source>
+        <translation type="obsolete">Tasto Cancella per cancellare i rami</translation>
+    </message>
+    <message>
+        <source>Use hide flag during exports </source>
+        <translation type="obsolete">Usare i flag nascosti durante l&apos;esportazione </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <location filename="../mainwindow.cpp" line="1087"/>
+        <location filename="../mainwindow.cpp" line="1091"/>
+        <location filename="../mainwindow.cpp" line="1095"/>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <source>(still experimental)</source>
+        <translation>(in via di sperimentazione)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3179"/>
+        <source>The map %1
+is already opened.Opening the same map in multiple editors may lead 
+to confusion when finishing working with vym.Do you want to</source>
+        <translation>La mappa %1
+è già aperta. Aprire la stessa mappa in più editor può confondere 
+quando si finisce di lavorare con vym. Si vuole continuare</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3228"/>
+        <source>This map does not exist:
+  %1
+Do you want to create a new one?</source>
+        <translation>Questa mappa non esiste:
+  %1
+Si vuole crearne una nuova?</translation>
+    </message>
+    <message>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="obsolete">La mappa %1
+non usa il formato di compressione vym.
+Salvandolo in modo non compresso, salva anche le immagini 
+e le flag e quindi potrebbe sovvrascrivere dei file in questa cartella
+Si vuole salvare la mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3413"/>
+        <source>Saved  %1</source>
+        <translation>Salvato  %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3417"/>
+        <source>Couldn&apos;t save </source>
+        <translation>Non si può salvare </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3455"/>
+        <source>The file %1
+exists already. Do you want to</source>
+        <translation>Il file %1
+è già esistente. Si vuole</translation>
+    </message>
+    <message>
+        <source>Export as ASCII</source>
+        <translation type="obsolete">Esporta in ASCII</translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">Esporta  in LaTex</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <location filename="../mainwindow.cpp" line="3724"/>
+        <source>Export to</source>
+        <translation>Esporta in</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3770"/>
+        <source>The map %1 has been modified but not saved yet. Do you want to</source>
+        <translation>La mappa %1 è stata modificata ma non salvata. Si vuole</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4131"/>
+        <source>Couldn&apos;t open map %1</source>
+        <translation>Non è possibile aprire la mappa %1</translation>
+    </message>
+    <message>
+        <source>Open URL in new tab</source>
+        <translation type="obsolete">Apri l&apos;URL in una nuova scheda</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3745"/>
+        <location filename="../mainwindow.cpp" line="3875"/>
+        <location filename="../mainwindow.cpp" line="3918"/>
+        <location filename="../mainwindow.cpp" line="4260"/>
+        <location filename="../mainwindow.cpp" line="5800"/>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Warning</source>
+        <translation>Attenzione</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3876"/>
+        <location filename="../mainwindow.cpp" line="5801"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <translation>Non è possibile trovare un applicazione per aprire %1.
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>Usare le Impostazioni-&gt;</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3919"/>
+        <source>Couldn&apos;t start %1 to open a new tab in %2.</source>
+        <translation>Non è possibile avviare %1 per aprire una nuova scheda in %2.</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4967"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Set application to open PDF files</source>
+        <translation>Scegli il programma per aprire i file PDF</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2307"/>
+        <source>Oh no!</source>
+        <comment>Standardflag</comment>
+        <translation>Oh no!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="238"/>
+        <source>Note Editor</source>
+        <translation>Editor di Note</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="245"/>
+        <source>Heading Editor</source>
+        <translation>Editor intestazione</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="260"/>
+        <source>Search results list</source>
+        <comment>FindResultWidget</comment>
+        <translation>Cerca lista dei risultati</translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <comment>Toolbar for file actions</comment>
+        <translation type="vanished">&amp;Mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2913"/>
+        <source>File actions toolbar</source>
+        <comment>Toolbar for file actions</comment>
+        <translation>Barra strumenti azioni di file</translation>
+    </message>
+    <message>
+        <source>File</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">File</translation>
+    </message>
+    <message>
+        <source>KDE 3 Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Segnalibri di KDE 3</translation>
+    </message>
+    <message>
+        <source>KDE 4 Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="vanished">Segnalibri di KDE 4</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2931"/>
+        <source>Edit actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation>Barra di azioni di Edit</translation>
+    </message>
+    <message>
+        <source>Edit</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Edita</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="252"/>
+        <source>Script Editor</source>
+        <translation>Editor di script</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="314"/>
+        <source>Task list</source>
+        <comment>TaskEditor</comment>
+        <translation>Elenco delle task</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="273"/>
+        <source>Script Editor</source>
+        <comment>ScriptEditor</comment>
+        <translation>Editor di Script</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="280"/>
+        <source>Property Editor</source>
+        <comment>PropertyEditor</comment>
+        <translation>Editor di Proprietà</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="287"/>
+        <source>History window</source>
+        <comment>HistoryWidget</comment>
+        <translatorcomment>lascio storia  ma dovrebbe essere cronologia</translatorcomment>
+        <translation>Finestra per la storia</translation>
+    </message>
+    <message>
+        <source>&amp;Restore last session</source>
+        <comment>File menu</comment>
+        <translation type="vanished">&amp;Ripristina ultima sessione</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1135"/>
+        <source>E&amp;dit</source>
+        <comment>Edit menu</comment>
+        <translation>E&amp;dit</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1208"/>
+        <source>Add attribute</source>
+        <translation>Aggiunge attributo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1316"/>
+        <source>&amp;Detach</source>
+        <comment>Context menu</comment>
+        <translation>&amp;Stacca</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1317"/>
+        <source>Detach branch and use as mapcenter</source>
+        <comment>Context menu</comment>
+        <translation>Stacca ramp e usa come centro di mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1334"/>
+        <source>Sort children backwards</source>
+        <comment>Edit menu</comment>
+        <translation>Ordina figli in modo inverso</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1411"/>
+        <source>Expand all branches</source>
+        <comment>Edit menu</comment>
+        <translation>Espande tutti i rami</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1419"/>
+        <source>Expand one level</source>
+        <comment>Edit menu</comment>
+        <translation>Espande un livello</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1389"/>
+        <source>Collapse one level</source>
+        <comment>Edit menu</comment>
+        <translation>Collassa un livello</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1400"/>
+        <source>Collapse unselected levels</source>
+        <comment>Edit menu</comment>
+        <translation>Collassa livelli non selezionati</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1355"/>
+        <source>Unscroll children</source>
+        <comment>Edit menu</comment>
+        <translation>Non scorre i figli</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1059"/>
+        <source>Text (A&amp;O report)...</source>
+        <comment>Export format</comment>
+        <translation>Testo (rapporto A&amp;O)...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <source>Spreadsheet</source>
+        <translation>Foglio di calcolo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1101"/>
+        <source>Properties</source>
+        <translation>Proprietà</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1290"/>
+        <source>Move branch up</source>
+        <comment>Edit menu</comment>
+        <translation>Vai al ramo superiore</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1303"/>
+        <source>Move branch down</source>
+        <comment>Edit menu</comment>
+        <translation>Vai al ramo inferiore</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1360"/>
+        <source>Grow selection</source>
+        <comment>Edit menu</comment>
+        <translation>Amplia selezione</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1369"/>
+        <source>Shrink selection</source>
+        <comment>Edit menu</comment>
+        <translation>Contrae selezione</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1378"/>
+        <source>Reset selection size</source>
+        <comment>Edit menu</comment>
+        <translation>Riazzera dimensione della selezione</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1429"/>
+        <source>References Context menu</source>
+        <comment>Shortcuts</comment>
+        <translation>Menu di contesto dei riferimenti</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1498"/>
+        <source>Bugzilla handling</source>
+        <comment>Shortcuts</comment>
+        <translation>Gestione di bugzilla</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1499"/>
+        <source>Create URL to SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation>Crea la URL per Bugzilla di SUSE</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1510"/>
+        <source>Get data from SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation>Ottienei i dati da bugzilla di SUSE</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1519"/>
+        <source>Get data from SUSE Bugzilla for subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Ottiemi i dati dal bugzilla di SUSE per il sottoalbero</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1528"/>
+        <source>SUSE Fate tool handling</source>
+        <comment>Shortcuts</comment>
+        <translation>Gestione dello strumento SUSE Fate</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1529"/>
+        <source>Create URL to SUSE FATE tool</source>
+        <comment>Edit menu</comment>
+        <translation>Crea la URL per lo strumento di SUSE FATE</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1537"/>
+        <source>vymlinks - linking maps</source>
+        <comment>Shortcuts</comment>
+        <translation>vymkinks - collegare mappe</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1545"/>
+        <source>Open linked map in background tab</source>
+        <comment>Edit menu</comment>
+        <translation>Apri la mappa collegata nella scheda di sfondo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1574"/>
+        <source>Exports</source>
+        <comment>Shortcuts</comment>
+        <translation>Esporta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1586"/>
+        <source>Tasks</source>
+        <comment>Shortcuts</comment>
+        <translation>Le Task</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1587"/>
+        <source>Toggle task</source>
+        <comment>Edit menu</comment>
+        <translation>Commuta la task</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1598"/>
+        <source>Cycle task status</source>
+        <comment>Edit menu</comment>
+        <translation>Status della task di ciclo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1609"/>
+        <source>Reset sleep</source>
+        <comment>Task sleep</comment>
+        <translation>Riazzera il riposo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1620"/>
+        <location filename="../mainwindow.cpp" line="1643"/>
+        <location filename="../mainwindow.cpp" line="1654"/>
+        <location filename="../mainwindow.cpp" line="1665"/>
+        <location filename="../mainwindow.cpp" line="1676"/>
+        <source>Sleep %1 days</source>
+        <comment>Task sleep</comment>
+        <translatorcomment>Traduco sleep come riposa, ma prima o poio lo cambierò</translatorcomment>
+        <translation>Riposa %1 giorni</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1632"/>
+        <source>Sleep %1 day</source>
+        <comment>Task sleep</comment>
+        <translation>Riposa %1 giorno</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1687"/>
+        <location filename="../mainwindow.cpp" line="1698"/>
+        <source>Sleep %1 weeks</source>
+        <comment>Task sleep</comment>
+        <translation>Riposa %1 settimane</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1730"/>
+        <source>Removing parts of a map</source>
+        <comment>Shortcuts</comment>
+        <translation>Rimovente parti di una mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1753"/>
+        <source>Various</source>
+        <comment>Shortcuts</comment>
+        <translation>Varie</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1765"/>
+        <source>Map properties...</source>
+        <comment>Edit menu</comment>
+        <translation>Proprietà di mappa...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1771"/>
+        <source>Add   ...</source>
+        <comment>Edit menu</comment>
+        <translation>Aggiunge   ...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1792"/>
+        <source>Selections</source>
+        <comment>Shortcuts</comment>
+        <translation>Selezioni</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1793"/>
+        <source>Select</source>
+        <comment>Select menu</comment>
+        <translation>Seleziona</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1795"/>
+        <source>Toggle target...</source>
+        <comment>Edit menu</comment>
+        <translation>Commuta obiettivo...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1804"/>
+        <source>Goto target...</source>
+        <comment>Edit menu</comment>
+        <translation>Va a obiettivo...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1812"/>
+        <source>Move to target...</source>
+        <comment>Edit menu</comment>
+        <translation>Sposta a obiettivo...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1840"/>
+        <source>Unselect all</source>
+        <comment>Edit menu</comment>
+        <translation>Deseleziona tutto</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1848"/>
+        <source>Search functions</source>
+        <comment>Shortcuts</comment>
+        <translation>Funzioni di ricerca</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1864"/>
+        <source>Find duplicate URLs</source>
+        <comment>Edit menu</comment>
+        <translation>Trova URL duplicate</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1878"/>
+        <source>Formatting</source>
+        <comment>Shortcuts</comment>
+        <translation>Formattante</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1997"/>
+        <source>Views</source>
+        <comment>Shortcuts</comment>
+        <translation>Viste</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2053"/>
+        <source>Note editor</source>
+        <comment>View action</comment>
+        <translation>Editor di note</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2064"/>
+        <source>Heading editor</source>
+        <comment>View action</comment>
+        <translation>Editor di intestazione</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2174"/>
+        <source>Modifier modes</source>
+        <comment>Shortcuts</comment>
+        <translation>Modalità di modifica</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2518"/>
+        <source>Check for release notes and updates</source>
+        <comment>Settings action</comment>
+        <translation>Verifica per le note di rilascio e gli aggiornamenti</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2525"/>
+        <source>Set author for new maps</source>
+        <comment>Settings action</comment>
+        <translation>Imposta l&apos;autore per le nuove mappe</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2539"/>
+        <source>Set application to zip/unzip files</source>
+        <comment>Settings action</comment>
+        <translation>Imposta l&apos;applicazione per eseguire lo zip/unzip dei file</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2613"/>
+        <source>Number of visible parents in task editor</source>
+        <comment>Settings action</comment>
+        <translation>Numero dei genitori visibili nell&apos; editor di task</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2618"/>
+        <source>Number of visible parents in find results window</source>
+        <comment>Settings action</comment>
+        <translation>Numero di genitori visibili nella finestra dei risultati di ricerca</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2685"/>
+        <source>Download and show release notes</source>
+        <comment>Help action</comment>
+        <translation>Scarica e mostra le note di rilascio</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2689"/>
+        <source>Check, if updates are available</source>
+        <comment>Help action</comment>
+        <translation>Verifica se vi siano aggiornamenti disponibili</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2698"/>
+        <source>Debug info</source>
+        <comment>Option to show debugging info</comment>
+        <translation>Informazione di debug</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2796"/>
+        <source>XLinks</source>
+        <comment>Menu for file actions</comment>
+        <translation>XLinks</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <source>Couldn&apos;t save %1,
+because of existing lockfile:
+
+%2</source>
+        <translation>Non è possibile salvare %1,
+poiché esiste il file di blocco:
+
+%2</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation>Non è possibile salvare %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <source>Please allow vym to download release notes!</source>
+        <translation>Per favore permeti a vym di scaricare le note di rilascio!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5968"/>
+        <source>&lt;html&gt;&lt;h3&gt;Do you allow vym to check online for updates or release notes?&lt;/h3&gt;If you allow, vym will &lt;ul&gt;&lt;li&gt;check once for release notes&lt;/li&gt;&lt;li&gt;check regulary for updates and notify you in case you should update, e.g. if there are important bug fixes available&lt;/li&gt;&lt;li&gt;receive a cookie with a random ID and send vym version and platform name and the ID  (e.g. &quot;Windows&quot; or &quot;Linux&quot;) back to me, Uwe Drechsel.&lt;p&gt;As vym developer I am motivated to see many people using vym. Of course I am curious to see, on which system vym is used. Maintaining each of the systems requires a lot of my (spare) time.&lt;/p&gt; &lt;p&gt;No other data than above will be sent, especially no private data will be collected or sent.(Check the source code, if you don&apos;t believe.)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;If you do not allow, &lt;ul&gt;&lt;li&gt;nothing will be downloaded and especially I will &lt;b&gt;not be motivated&lt;/b&gt; to spend some more thousands of hours on developing a free software tool.&lt;/ul&gt;Please allow vym to check for updates :-)</source>
+        <translation>&lt;html&gt;&lt;h3&gt;Permettete che vym verfichi on line aggiornamenti e note di rilascio?&lt;/h3&gt;Se lo permettete, vym  &lt;ul&gt;&lt;li&gt;verificherà una volta le note dirilascio&lt;/li&gt;&lt;li&gt;verificherà regolarmente per gli aggiornamenti e vi invierà le notfiche nel caso vogliate aggiornare,per es. se vi sono disponibili delle correzioni di bug&lt;/li&gt;&lt;li&gt;riceverete un cookie con un ID casuale e invierà la versione di vym e il nome della piattaforma e l&apos;ID (per es.. &quot;Windows&quot; o &quot;Linux&quot;)  a me, Uwe Drechsel.&lt;p&gt;Come sviluppatore di vym sono motivato nel vedere molte persone che usano vym. Naturalmente sono curioso di vedere su quali sistemi vym sia usato. Mantenere ogni sistema richiede molto tempo (libero).&lt;/p&gt; &lt;p&gt;Non sarà invito alcun altrodato a parte quelli d cui sopra, in special modo non saranno collezionati o inviati dati privati.(verificate il codice sorgente se nonci credete.)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;Senon lo permettete, &lt;ul&gt;&lt;li&gt;non sarà scaricato nulla e specialmente io  &lt;b&gt;non sarò motivato&lt;/b&gt; a spendere migliaia di ore sullo siluppo di software libero e gratuito.&lt;/ul&gt;Per favore permettete che vym verifichi gli aggiornamenti :-)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5997"/>
+        <source>Allow</source>
+        <translation>Permetti</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5998"/>
+        <source>Do not allow</source>
+        <translation>Non permetti</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6004"/>
+        <source>Thank you for enabling downloads!</source>
+        <translation>Grazie per avere abilitato i downloads!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6027"/>
+        <source>Update information</source>
+        <translation>Aggiorna l&apos;informazione</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6033"/>
+        <source>vym is up to date.</source>
+        <comment>MainWindow</comment>
+        <translation>vym è aggiornato.</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6084"/>
+        <source>Checking for updates...</source>
+        <comment>MainWindow</comment>
+        <translation>Verificando gli aggiornamentoi...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Please allow vym to check for updates!</source>
+        <translation>Per favore permetti a vym di verificare gli aggiornamenti!</translation>
+    </message>
+    <message>
+        <source>Info</source>
+        <translation type="obsolete">Info</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1446"/>
+        <source>Open all URLs in subtree (including scrolled branches)</source>
+        <comment>Edit menu</comment>
+        <translation>Apre tutte le URL in un sottoalbero (inclusi i rami scorsi)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1461"/>
+        <source>Extract URLs from note</source>
+        <comment>Edit menu</comment>
+        <translation>Estrae URL dalla nota</translation>
+    </message>
+    <message>
+        <source>Get data from Novell Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Ottiene i dati da Bugzilla di Novell</translation>
+    </message>
+    <message>
+        <source>Get data from Novell Bugzilla for subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Ottiene i dati da Bugzilla di Novell per il sotto albero</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1754"/>
+        <source>Add timestamp</source>
+        <comment>Edit menu</comment>
+        <translation>Aggiunge una marca temporale</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1743"/>
+        <source>Remove children</source>
+        <comment>Edit menu</comment>
+        <translation>Rimuove i figli</translation>
+    </message>
+    <message>
+        <source>View shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Vedi scorciatoie</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2076"/>
+        <source>Tree editor</source>
+        <comment>View action</comment>
+        <translation>Editor a albero</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2084"/>
+        <source>Task editor</source>
+        <comment>View action</comment>
+        <translation>Editor di task</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2094"/>
+        <source>Slide editor</source>
+        <comment>View action</comment>
+        <translation>Editor di diapositive</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2102"/>
+        <source>Script editor</source>
+        <comment>View action</comment>
+        <translation>Editor di script</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2972"/>
+        <source>Zoom toolbar</source>
+        <comment>View Toolbar name</comment>
+        <translation>Barra di strumento di Zoom</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2042"/>
+        <source>Center on selection</source>
+        <comment>View action</comment>
+        <translation>Centra su selezione</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2982"/>
+        <source>Editors toolbar</source>
+        <comment>Editor Toolbar name</comment>
+        <translation>Barra di strumenti per editor</translation>
+    </message>
+    <message>
+        <source>Toggle Tree editor</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Commuta editor di albero</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2994"/>
+        <source>Modifier modes toolbar</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation>Barra di strumenti per i modi del Modificatore</translation>
+    </message>
+    <message>
+        <source>Modes</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Modi</translation>
+    </message>
+    <message>
+        <source>&amp;Select</source>
+        <comment>Select menu</comment>
+        <translation type="obsolete">&amp;Seleziona</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1820"/>
+        <source>Select previous</source>
+        <comment>Edit menu</comment>
+        <translation>Seleziona il precedente</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1830"/>
+        <source>Select next</source>
+        <comment>Edit menu</comment>
+        <translation>Seleziona il prossimo</translation>
+    </message>
+    <message>
+        <source>Format shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Inizializza scorciatoie</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1918"/>
+        <source>Select default font</source>
+        <comment>Branch attribute</comment>
+        <translation>Seleziona il font predefinito</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1996"/>
+        <source>Toolbars</source>
+        <comment>Toolbars overview in view menu</comment>
+        <translation>Barre di strumenti</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2018"/>
+        <source>Rotate counterclockwise</source>
+        <comment>View action</comment>
+        <translation>Ruota in modo antiorario</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2026"/>
+        <source>Rotate rclockwise</source>
+        <comment>View action</comment>
+        <translation>Ruota in moto orario</translation>
+    </message>
+    <message>
+        <source>Toggle Slide editor</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Commuyta editor di slide</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2242"/>
+        <location filename="../mainwindow.cpp" line="2245"/>
+        <source>URL to Bugzilla </source>
+        <comment>SystemFlag</comment>
+        <translation>URL verso Bugzilla</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2248"/>
+        <source>Map target</source>
+        <comment>SystemFlag</comment>
+        <translation>Mappa obiettivo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2265"/>
+        <source>Standard Flags toolbar</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation>Barra strumenti di Flags Standard</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2279"/>
+        <source>Status - ok,done</source>
+        <comment>Standardflag</comment>
+        <translation>Stato - ok, fatto</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2283"/>
+        <source>Status - work in progress</source>
+        <comment>Standardflag</comment>
+        <translation>Stato - in progressione</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2287"/>
+        <source>Status - missing, not started</source>
+        <comment>Standardflag</comment>
+        <translation>Stato - mancante, non iniziato</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2315"/>
+        <source>Call...</source>
+        <comment>Standardflag</comment>
+        <translation>Chiama...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2330"/>
+        <source>Very important!</source>
+        <comment>Standardflag</comment>
+        <translation>Molto Importante!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2334"/>
+        <source>Very unimportant!</source>
+        <comment>Standardflag</comment>
+        <translation>Molto irrilevante!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2347"/>
+        <source>Rose</source>
+        <comment>Standardflag</comment>
+        <translation>Rosa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2353"/>
+        <source>Surprise!</source>
+        <comment>Standardflag</comment>
+        <translation>Sorpresa!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2360"/>
+        <source>Info</source>
+        <comment>Standardflag</comment>
+        <translation>Info</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2514"/>
+        <source>Settings</source>
+        <translation>Impostazioni</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2694"/>
+        <source>Show keyboard shortcuts</source>
+        <comment>Help action</comment>
+        <translation>Mostra le scorciatoie di tastiera</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2755"/>
+        <source>Tasks</source>
+        <comment>Context menu</comment>
+        <translation>Le task</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2922"/>
+        <source>Undo and clipboard toolbar</source>
+        <comment>Toolbar for redo/undo and clipboard</comment>
+        <translation>Strumento di annullamento e clipboard</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2948"/>
+        <source>Selection toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation>barra di strumenti di selezione</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2956"/>
+        <source>URLs and vymLinks toolbar</source>
+        <comment>Toolbar for URLs and vymlinks</comment>
+        <translation>Barra di strumenti per URL e collegamenti di vym</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2964"/>
+        <source>Colors toolbar</source>
+        <comment>Colors toolbar name</comment>
+        <translation>Barra di strumenti dei colori</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3314"/>
+        <source>or</source>
+        <comment>File Dialog</comment>
+        <translation>o</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3444"/>
+        <source>Save map as</source>
+        <translation>Salva la mappa come</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3746"/>
+        <source>Couldn&apos;t find configuration for export to LibreOffice
+</source>
+        <translation>Non si può trovare la configurazione per esportare in LibreOffice
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3994"/>
+        <source>Enter URL:</source>
+        <translation>Inserisci URL:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4017"/>
+        <source>HTML</source>
+        <comment>Filedialog</comment>
+        <translation>HTML</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4018"/>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation>Testo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4019"/>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation>Foglio di calcolo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4020"/>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation>Documento di testo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4021"/>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation>Immagini</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4025"/>
+        <source>Set URL to a local file</source>
+        <translation>Imposta URL come file locale</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4183"/>
+        <location filename="../mainwindow.cpp" line="4185"/>
+        <source>Link to another map</source>
+        <translation>Collega ad un&apos;altra mappa vym</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4244"/>
+        <source>Enter sleep time (number of days or date YYYY-MM-DD or DD.MM[.YYYY]</source>
+        <comment>task sleep time dialog</comment>
+        <translation>Inserisci il tempo di riposo(numero di giorni o la data AAAA-MM-GG o GG.MM[ AAAA]</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4261"/>
+        <source>Couldn&apos;t set sleep time to %1.
+</source>
+        <translation>Non è possibile fissare il tempo di riposo a %1.
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4304"/>
+        <source>branches</source>
+        <comment>Info about map</comment>
+        <translation>rami</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4305"/>
+        <source>notes</source>
+        <comment>Info about map</comment>
+        <translation>note</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4306"/>
+        <source>images</source>
+        <comment>Info about map</comment>
+        <translation>immagini</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4307"/>
+        <source>tasks</source>
+        <comment>Info about map</comment>
+        <translation>le task</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4308"/>
+        <source>slides</source>
+        <comment>Info about map</comment>
+        <translation>diapositive</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4309"/>
+        <source>xLinks</source>
+        <comment>Info about map</comment>
+        <translation>xLinks</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5000"/>
+        <location filename="../mainwindow.cpp" line="5010"/>
+        <source>Set application to zip/unzip files</source>
+        <translation>Imposta l&apos;applicazione per eseguire lo zip/unzip dei file</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5076"/>
+        <source>Set author for new maps (used in lockfile)</source>
+        <translation>Imposta l&apos;autore per le nuove mappe (usato nel file di blocco)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5077"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation>utente sconosciuto</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5088"/>
+        <source>Number of parents shown in find results:</source>
+        <translation>Numero di genitori mostrati nei risultati di ricerca:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5098"/>
+        <source>Number of parents shown for a task:</source>
+        <translation>Numero di genitori mostrati per task:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3092"/>
+        <source>(readonly)</source>
+        <translation>(di sola lettura)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5456"/>
+        <source>Export in last used format (%1) to: %2</source>
+        <comment>status tip</comment>
+        <translation>Esporta nell&apos;ultimo formato usato (%1) in %2</translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <translation type="obsolete">Segnalibri di Firefox</translation>
+    </message>
+    <message>
+        <source>Show Note Editor</source>
+        <translation type="obsolete">Mostra editor di Note</translation>
+    </message>
+    <message>
+        <source>Show history window</source>
+        <translation type="obsolete">Mostra la finestra di Cronologia</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3533"/>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <source>Bookmarks</source>
+        <translation>Segnalibri</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start %1 to open a new tab</source>
+        <translation type="obsolete">Non è possibile avviare %1 per aprire una nuova scheda</translation>
+    </message>
+    <message>
+        <source>Modes when using modifiers</source>
+        <comment>Toolbars</comment>
+        <translation type="obsolete">Metodi nell&apos;uso dei modifier</translation>
+    </message>
+    <message>
+        <source>Standard Flags</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation type="obsolete">Flag standard</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find configuration for export to Open Office
+</source>
+        <translation type="vanished">Non è possibile trovare una configurazione per esportare in Open Office
+</translation>
+    </message>
+    <message>
+        <source>No matches found for &quot;%1&quot;</source>
+        <translation type="obsolete">Nessuna corrispondenza trovata per &quot;%1&quot;</translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <translation type="obsolete">&amp;Mappa</translation>
+    </message>
+    <message>
+        <source>Open all URLs in subtree</source>
+        <translation type="obsolete">Apri tutte le URL in un Sottoramo</translation>
+    </message>
+    <message>
+        <source>Open all vym links in subtree</source>
+        <translation type="obsolete">Apri tutti i link vym in un Sottoramo</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation type="obsolete">Non è possibile creare una cartella temporanea prima di caricare</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation type="obsolete">Non è possibile creare una cartella temporanea prima di salvare
+</translation>
+    </message>
+    <message>
+        <source>Sorry, currently only Konqueror and Mozilla support tabbed browsing.</source>
+        <translation type="obsolete">Spiacenti, attualmente solo Konqueror e Mozilla supportano la navigazione con schede.</translation>
+    </message>
+    <message>
+        <source>&amp;New...</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">&amp;Nuovo...</translation>
+    </message>
+    <message>
+        <source>New map</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">Nuova Mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="985"/>
+        <source>&amp;Open...</source>
+        <comment>File menu</comment>
+        <translation>&amp;Apri...</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">Apri</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1000"/>
+        <source>Open Recent</source>
+        <comment>File menu</comment>
+        <translation>Apri Recente</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1003"/>
+        <source>&amp;Save...</source>
+        <comment>File menu</comment>
+        <translation>&amp;Salva...</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">Salva</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1011"/>
+        <source>Save &amp;As...</source>
+        <comment>File menu</comment>
+        <translation>Salva &amp;Con nome...</translation>
+    </message>
+    <message>
+        <source>Save &amp;As</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">Salva &amp;Con nome</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1017"/>
+        <source>Import</source>
+        <comment>File menu</comment>
+        <translation>Importa</translation>
+    </message>
+    <message>
+        <source>Import %1</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">Importa %1</translation>
+    </message>
+    <message>
+        <source>KDE bookmarks</source>
+        <translation type="obsolete">Segnalibri di KDE</translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Segnalibri di Firefox</translation>
+    </message>
+    <message>
+        <source>Import %1</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Importa %1</translation>
+    </message>
+    <message>
+        <source>Import Dir%1</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Importa Cartella%1</translation>
+    </message>
+    <message>
+        <source>Import directory structure (experimental)</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Importare la struttura di una cartella (sperimentale)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1038"/>
+        <source>Export</source>
+        <comment>File menu</comment>
+        <translation>Esporta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1063"/>
+        <source>Image%1</source>
+        <comment>File export menu</comment>
+        <translation>Immagine%1</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Esporta mappa come immagine</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1067"/>
+        <source>PDF%1</source>
+        <comment>File export menu</comment>
+        <translation>PDF%1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1071"/>
+        <source>SVG%1</source>
+        <comment>File export menu</comment>
+        <translation>SVG%1</translation>
+    </message>
+    <message>
+        <source>Export in Open Document Format used e.g. in Open Office </source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Esporta in Open Document Format es. in Open Office </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1040"/>
+        <source>Repeat last export (%1)</source>
+        <translation>Ripete l&apos;ultima esportazione (%1)</translation>
+    </message>
+    <message>
+        <source>Export as %1</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Esporta come %1</translation>
+    </message>
+    <message>
+        <source> webpage (XHTML)</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete"> pagina web (XHTML)</translation>
+    </message>
+    <message>
+        <source>Export as %1</source>
+        <translation type="obsolete">Esporta come %1</translation>
+    </message>
+    <message>
+        <source>KDE Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Segnalibri di KDE</translation>
+    </message>
+    <message>
+        <source>Print</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Stampa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1118"/>
+        <source>&amp;Close Map</source>
+        <comment>File menu</comment>
+        <translation>C&amp;hiudi Mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1124"/>
+        <source>E&amp;xit</source>
+        <comment>File menu</comment>
+        <translation>&amp;Esci</translation>
+    </message>
+    <message>
+        <source>&amp;Actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="obsolete">Toolbar delle &amp;Azioni</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Modifica</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1139"/>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Cancella</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1150"/>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Rifai</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1161"/>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Copia</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1172"/>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Taglia</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1185"/>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Incolla</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Edita Titolo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1197"/>
+        <source>Delete Selection</source>
+        <comment>Edit menu</comment>
+        <translation>Cancella la Selezione</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1232"/>
+        <source>Add branch as child</source>
+        <comment>Edit menu</comment>
+        <translation>Aggiungi ramo come figlio</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1242"/>
+        <source>Add branch (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>Aggiungi ramo (inserisci)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1252"/>
+        <location filename="../mainwindow.cpp" line="1262"/>
+        <source>Add branch above</source>
+        <comment>Edit menu</comment>
+        <translation>Aggiungi ramo sopra</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1272"/>
+        <location filename="../mainwindow.cpp" line="1281"/>
+        <source>Add branch below</source>
+        <comment>Edit menu</comment>
+        <translation>Aggiungi ramo sotto</translation>
+    </message>
+    <message>
+        <source>Move up</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Vai sopra</translation>
+    </message>
+    <message>
+        <source>Move down</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Vai giù</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1343"/>
+        <source>Scroll branch</source>
+        <comment>Edit menu</comment>
+        <translation>Nascondi/Mostra ramificazione</translation>
+    </message>
+    <message>
+        <source>Unscroll all scrolled branches</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Mostra tutti i rami nascosti</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1849"/>
+        <location filename="../mainwindow.cpp" line="1857"/>
+        <source>Find...</source>
+        <comment>Edit menu</comment>
+        <translation>Trova...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1430"/>
+        <source>Open URL</source>
+        <comment>Edit menu</comment>
+        <translation>Apri URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="124"/>
+        <source>Main window</source>
+        <comment>Shortcut scope</comment>
+        <translation>Finestra principale</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="218"/>
+        <source>Main window</source>
+        <comment>Shortcut group</comment>
+        <translation>Finestra principale</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="219"/>
+        <source>Map Editors</source>
+        <comment>Shortcut group</comment>
+        <translation>Editor di mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="220"/>
+        <source>Text Editors</source>
+        <comment>Shortcut group</comment>
+        <translation>Editor di testo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="967"/>
+        <source>&amp;Map</source>
+        <comment>Menu for file actions</comment>
+        <translation>&amp;Mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="992"/>
+        <source>&amp;Restore last session</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Ripristina ultima sessione</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1047"/>
+        <source>Webpage (HTML)...</source>
+        <comment>File export menu</comment>
+        <translation>Pagina web (HTML)...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1051"/>
+        <source>Text (ASCII)...</source>
+        <comment>File export menu</comment>
+        <translation>Testo (ASCII)...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <source>Text with tasks</source>
+        <comment>File export menu</comment>
+        <translation>Testo con task</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1438"/>
+        <source>Open URL in new tab</source>
+        <comment>Edit menu</comment>
+        <translation>Apri l&apos;URL in una nuova scheda</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1454"/>
+        <source>Open all URLs in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Apri tutte le URL in un Sottoramo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1470"/>
+        <source>Edit URL...</source>
+        <comment>Edit menu</comment>
+        <translation>Modifica URL...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1488"/>
+        <source>Use heading for URL</source>
+        <comment>Edit menu</comment>
+        <translation>Usa titoli per gli URL</translation>
+    </message>
+    <message>
+        <source>Create URL to Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Crea URL a Bugzilla</translation>
+    </message>
+    <message>
+        <source>Create URL to FATE</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Crea URL a FATE</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1538"/>
+        <source>Open linked map</source>
+        <comment>Edit menu</comment>
+        <translation>Apri una mappa linkata</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1552"/>
+        <source>Open all vym links in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Apri tutti i link vym in un Sottoramo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1560"/>
+        <source>Edit vym link...</source>
+        <comment>Edit menu</comment>
+        <translation>Edita un link vym...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1567"/>
+        <source>Delete vym link</source>
+        <comment>Edit menu</comment>
+        <translation>Cancella link vym</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1575"/>
+        <source>Hide in exports</source>
+        <comment>Edit menu</comment>
+        <translation>Nascondi nell&apos;esportazione</translation>
+    </message>
+    <message>
+        <source>Edit Map Info...</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Edita le info della Mappa...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1710"/>
+        <source>Add map (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>Aggiungi mappa (inserisci)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1717"/>
+        <source>Add map (replace)</source>
+        <comment>Edit menu</comment>
+        <translation>Aggiungi mappa (rimpiazza)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1724"/>
+        <source>Save selection</source>
+        <comment>Edit menu</comment>
+        <translation>Salva selezione</translation>
+    </message>
+    <message>
+        <source>Remove only branch </source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete"> Rimuovi solo il ramo</translation>
+    </message>
+    <message>
+        <source>Remove childs</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Rimuovi i figli</translation>
+    </message>
+    <message>
+        <source>Select upper branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Seleziona il ramo superiore</translation>
+    </message>
+    <message>
+        <source>Select lower branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Seleziona il ramo inferiore</translation>
+    </message>
+    <message>
+        <source>Select left branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Seleziona il ramo sinistro</translation>
+    </message>
+    <message>
+        <source>Select child branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Seleziona il ramo figlio</translation>
+    </message>
+    <message>
+        <source>Select first branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Seleziona il primo ramo</translation>
+    </message>
+    <message>
+        <source>Select last branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Seleziona l&apos;ultimo ramo</translation>
+    </message>
+    <message>
+        <source>Add Image...</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Aggiungi Immagine...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1876"/>
+        <source>F&amp;ormat</source>
+        <comment>Format menu</comment>
+        <translation>F&amp;ormato</translation>
+    </message>
+    <message>
+        <source>Format Actions</source>
+        <comment>Format Toolbar name</comment>
+        <translation type="obsolete">Toolbar delle Formattazioni</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1889"/>
+        <source>Pic&amp;k color</source>
+        <comment>Edit menu</comment>
+        <translation>P&amp;rendi colore</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1898"/>
+        <source>Color &amp;branch</source>
+        <comment>Edit menu</comment>
+        <translation>Colore &amp;del ramo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1907"/>
+        <source>Color sub&amp;tree</source>
+        <comment>Edit menu</comment>
+        <translation>Colore del so&amp;ttoalbero</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <comment>Branch attribute</comment>
+        <translation type="obsolete">Senza Frame</translation>
+    </message>
+    <message>
+        <source>RectangleBranch attribute</source>
+        <translation type="obsolete">Attributo RamoRettangolare</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <comment>Branch attribute</comment>
+        <translation type="obsolete">Includi immagini verticalmente</translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <comment>Branch attribute</comment>
+        <translation type="obsolete">Includi immagini orizzontalmente</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1958"/>
+        <source>Hide link if object is not selected</source>
+        <comment>Branch attribute</comment>
+        <translation>Nascondi link se gli oggetti non sono selezionati</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1964"/>
+        <source>&amp;Use color of heading for link</source>
+        <comment>Branch attribute</comment>
+        <translation>&amp;Usa colore dei titoli per i collegamenti</translation>
+    </message>
+    <message>
+        <source>View Actions</source>
+        <comment>View Toolbar name</comment>
+        <translation type="obsolete">Vedi Azioni</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2034"/>
+        <source>reset Zoom</source>
+        <comment>View action</comment>
+        <translation>reset Zoom</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2002"/>
+        <source>Zoom in</source>
+        <comment>View action</comment>
+        <translation>Zoom dentro</translation>
+    </message>
+    <message>
+        <source>KDE 3 Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation type="obsolete">Segnalibri di KDE 3</translation>
+    </message>
+    <message>
+        <source>KDE 4 Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation type="vanished">Segnalibri di KDE 4</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1021"/>
+        <source>Firefox Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation>Segnalibri di Firefox</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <source>Import Dir%1</source>
+        <comment>Import Filters</comment>
+        <translation>Importa Cartella%1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1733"/>
+        <source>Remove only branch and keep its children </source>
+        <comment>Edit menu</comment>
+        <translation>Rimuove solamente i rami e mantiene i figli</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2010"/>
+        <source>Zoom out</source>
+        <comment>View action</comment>
+        <translation>Zoom fuori</translation>
+    </message>
+    <message>
+        <source>Show Note Editor</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Mostra editor di Note</translation>
+    </message>
+    <message>
+        <source>Show history window</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Mostra la finestra di Cronologia</translation>
+    </message>
+    <message>
+        <source>Next Window</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Prossima Finestra</translation>
+    </message>
+    <message>
+        <source>Previous Window</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Finestra Precedente</translation>
+    </message>
+    <message>
+        <source>Modes when using modifiers</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation type="obsolete">Metodi nell&apos;uso dei modifier</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2178"/>
+        <source>Use modifier to color branches</source>
+        <comment>Mode modifier</comment>
+        <translation>Usa i modifier per colorare i rami</translation>
+    </message>
+    <message>
+        <source>Use modifier to copy</source>
+        <comment>Mode modifier</comment>
+        <translation type="obsolete">Usa i modifier per copiare</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2194"/>
+        <source>Use modifier to draw xLinks</source>
+        <comment>Mode modifier</comment>
+        <translation>Usa i modifier per disegnare XLink</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2385"/>
+        <source>forward</source>
+        <comment>Freemind-Flag</comment>
+        <translation>avanti</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2397"/>
+        <source>Don&apos;t flagrget</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Non fare flagrget</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2531"/>
+        <source>Set application to open pdf files</source>
+        <comment>Settings action</comment>
+        <translation>Scegli il programma per aprire i file pdf</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2535"/>
+        <source>Set application to open external links</source>
+        <comment>Settings action</comment>
+        <translation>Imposta applicazione per aprire i link esterni</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2581"/>
+        <source>Edit branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>Edita il ramo dopo averlo aggiunto</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2587"/>
+        <source>Select branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>Seleziona il ramo dopo averlo aggiunto</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2593"/>
+        <source>Select existing heading</source>
+        <comment>Settings action</comment>
+        <translation>Seleziona il titolo esistente</translation>
+    </message>
+    <message>
+        <source>Delete key</source>
+        <comment>Settings action</comment>
+        <translation type="obsolete">Tasto Cancella</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2599"/>
+        <source>Exclusive flags</source>
+        <comment>Settings action</comment>
+        <translation>Flag esclusivi</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2605"/>
+        <source>Use hide flags</source>
+        <comment>Settings action</comment>
+        <translation>Usa i flag nascosti</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2673"/>
+        <source>&amp;Help</source>
+        <comment>Help menubar entry</comment>
+        <translation>&amp;Aiuto</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2676"/>
+        <source>Open VYM Documentation (pdf) </source>
+        <comment>Help action</comment>
+        <translation> Apri la documentazione di VYM (pdf) </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2702"/>
+        <source>About VYM</source>
+        <comment>Help action</comment>
+        <translation>A proposito di VYM</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2706"/>
+        <source>About QT</source>
+        <comment>Help action</comment>
+        <translation>Riguardo le QT</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2735"/>
+        <source>Remove</source>
+        <comment>Context menu name</comment>
+        <translation>Rimuovi</translation>
+    </message>
+    <message>
+        <source>URLs and vymLinks</source>
+        <comment>Context menu name</comment>
+        <translation type="obsolete">URL e Link di vym</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2798"/>
+        <source>Edit XLink</source>
+        <comment>Context menu name</comment>
+        <translation>Edita il XLink</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2809"/>
+        <source>Follow XLink</source>
+        <comment>Context menu name</comment>
+        <translation>Segui XLink</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2818"/>
+        <source>Save image</source>
+        <comment>Context action</comment>
+        <translation>Salva immagine</translation>
+    </message>
+    <message>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <comment>write directory</comment>
+        <translation type="obsolete">La cartella %1 non è vuota. 
+Si rischia di sovvrascrivere i contenuti?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="971"/>
+        <source>&amp;New map</source>
+        <comment>File menu</comment>
+        <translation>&amp;Nuova Mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="978"/>
+        <source>&amp;Copy to new map</source>
+        <comment>File menu</comment>
+        <translation>&amp;Copia in nuova mappa</translation>
+    </message>
+    <message>
+        <source>Copy selection to mapcenter of a new map</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">Copia l&apos;area selezionata nel centro di una nuova mappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1221"/>
+        <source>Add mapcenter</source>
+        <comment>Canvas context menu</comment>
+        <translation>Aggiungi centromappa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1325"/>
+        <source>Sort children</source>
+        <comment>Edit menu</comment>
+        <translation>Ordina i figli</translation>
+    </message>
+    <message>
+        <source>Unscroll childs</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Mostra i figli</translation>
+    </message>
+    <message>
+        <source>Unscroll all scrolled branches in selected subtree</source>
+        <translation type="obsolete">Mostra i rami nascosti del sottoalbero</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1479"/>
+        <source>Edit local URL...</source>
+        <comment>Edit menu</comment>
+        <translation>Modifica URL locale...</translation>
+    </message>
+    <message>
+        <source>Edit local URL</source>
+        <translation type="obsolete">Modifica URL locale</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Crea URL a Novell Bugzilla</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell Bugzilla</source>
+        <translation type="obsolete">Crea URL a Novell Bugzilla</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell FATE</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Crea URL a Novell FATE</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell FATE</source>
+        <translation type="obsolete">Crea URL a Novell FATE</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1779"/>
+        <source>Property window</source>
+        <comment>Dialog to edit properties of selection</comment>
+        <translation>Finestra di proprieta</translation>
+    </message>
+    <message>
+        <source>Set properties for selection</source>
+        <translation type="obsolete">Scegli le proprieta per la selezione</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1935"/>
+        <source>Linkstyle Curve</source>
+        <translation>Stile collegamenti Curvo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1949"/>
+        <source>Linkstyle Thick Curve</source>
+        <translation>Collegamento Curva Spessa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1976"/>
+        <source>Set &amp;Selection Color</source>
+        <translation>Specifica Colore della &amp;Selezione</translation>
+    </message>
+    <message>
+        <source>Set Selection Color</source>
+        <translation type="obsolete">Specifica Colore della Selezione</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1986"/>
+        <source>Set &amp;Background image</source>
+        <translation>Specifica &amp;Immagine di sfondo</translation>
+    </message>
+    <message>
+        <source>Set Background image</source>
+        <translation type="obsolete">Specifica Immagine di sfondo</translation>
+    </message>
+    <message>
+        <source>Show selection</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Mostra selezione</translation>
+    </message>
+    <message>
+        <source>Show selection</source>
+        <translation type="obsolete">Mostra selezione</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2110"/>
+        <source>History Window</source>
+        <comment>View action</comment>
+        <translation>Finestra cronologia</translation>
+    </message>
+    <message>
+        <source>Show History Window</source>
+        <translation type="obsolete">Mostra la finestra di Cronologia</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2124"/>
+        <source>Antialiasing</source>
+        <comment>View action</comment>
+        <translation>Antialiasing</translation>
+    </message>
+    <message>
+        <source>Antialiasing</source>
+        <translation type="obsolete">Antialiasing</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2131"/>
+        <source>Smooth pixmap transformations</source>
+        <comment>View action</comment>
+        <translation>Appiana trasformazioni di pixmap</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2139"/>
+        <source>Next Map</source>
+        <comment>View action</comment>
+        <translation>Mappa Successiva</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2146"/>
+        <source>Previous Map</source>
+        <comment>View action</comment>
+        <translation>Mappa Precedente</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2153"/>
+        <source>Next slide</source>
+        <comment>View action</comment>
+        <translation>Diapositiva successiva</translation>
+    </message>
+    <message>
+        <source>Next slide</source>
+        <comment>Shortcut group</comment>
+        <translation type="obsolete">Diapositiva successiva</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2160"/>
+        <source>Previous slide</source>
+        <comment>View action</comment>
+        <translation>Diapositiva precedente</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2213"/>
+        <location filename="../mainwindow.cpp" line="2216"/>
+        <location filename="../mainwindow.cpp" line="2219"/>
+        <location filename="../mainwindow.cpp" line="2223"/>
+        <location filename="../mainwindow.cpp" line="2226"/>
+        <location filename="../mainwindow.cpp" line="2229"/>
+        <location filename="../mainwindow.cpp" line="2233"/>
+        <location filename="../mainwindow.cpp" line="2236"/>
+        <source>Note</source>
+        <comment>SystemFlag</comment>
+        <translation>Note</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2239"/>
+        <source>URL to Document </source>
+        <comment>SystemFlag</comment>
+        <translation>URL a Documento</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2251"/>
+        <source>Link to another vym map</source>
+        <comment>SystemFlag</comment>
+        <translation>Collega ad un&apos;altra mappa vym</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2254"/>
+        <source>subtree is scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation>sottoalbero è espanso</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2257"/>
+        <source>subtree is temporary scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation>sottoalbero è temporaneamente espanso</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2260"/>
+        <source>Hide object in exported maps</source>
+        <comment>SystemFlag</comment>
+        <translation>Nascondi oggetto nelle mappe esportate</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2350"/>
+        <source>I just love...</source>
+        <comment>Standardflag</comment>
+        <translation>Lo amo...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2369"/>
+        <source>Important</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Importante</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2376"/>
+        <source>Priority</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Priorita</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2381"/>
+        <source>Back</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Indietro</translation>
+    </message>
+    <message>
+        <source>Forward</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="obsolete">Avanti</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2389"/>
+        <source>Look here</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Guarda qui</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2393"/>
+        <source>Dangerous</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Pericoloso</translation>
+    </message>
+    <message>
+        <source>Don&apos;t forget</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="obsolete">Non ti scordare</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2401"/>
+        <source>Flag</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Bandierina</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2406"/>
+        <source>Home</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Casa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2410"/>
+        <source>Telephone</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Telefono</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2414"/>
+        <source>Music</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Musica</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2418"/>
+        <source>Mailbox</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Casella di posta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2422"/>
+        <source>Maix</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Maix</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2426"/>
+        <source>Password</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Password</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2430"/>
+        <source>To be improved</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Da migliorare</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2434"/>
+        <source>Stop</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Stop</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2438"/>
+        <source>Magic</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Magico</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2442"/>
+        <source>To be discussed</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Da discutere</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2446"/>
+        <source>Reminder</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Promemoria</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2450"/>
+        <source>Excellent</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Eccellente</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2454"/>
+        <source>Linux</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Linux</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2458"/>
+        <source>Sweet</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Dolce</translation>
+    </message>
+    <message>
+        <source>Network shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Scorciatoie di Rete</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2543"/>
+        <source>Set path for macros</source>
+        <comment>Settings action</comment>
+        <translation>Specifica percorso per le macro</translation>
+    </message>
+    <message>
+        <source>Set path for macros</source>
+        <translation type="obsolete">Specifica percorso per i macro</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2547"/>
+        <source>Set number of undo levels</source>
+        <comment>Settings action</comment>
+        <translation>Seleziona numero di annullamenti</translation>
+    </message>
+    <message>
+        <source>Set number of undo levels</source>
+        <translation type="obsolete">Seleziona numero di annullamenti</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2553"/>
+        <source>Autosave</source>
+        <comment>Settings action</comment>
+        <translation>Salvataggio automatico</translation>
+    </message>
+    <message>
+        <source>Autosave</source>
+        <translation type="obsolete">Salvataggio automatico</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2559"/>
+        <source>Autosave time</source>
+        <comment>Settings action</comment>
+        <translation>Tempo di salvataggio automatico</translation>
+    </message>
+    <message>
+        <source>Autosave time</source>
+        <translation type="obsolete">Tempo di salvataggio automatico</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2572"/>
+        <source>Write backup file on save</source>
+        <comment>Settings action</comment>
+        <translation>Scrivi file di backup al salvataggio</translation>
+    </message>
+    <message>
+        <source>Write backup file on save</source>
+        <translation type="obsolete">Scrivi file di backup al salvataggio</translation>
+    </message>
+    <message>
+        <source>Note editor is dockable</source>
+        <comment>Settings action</comment>
+        <translation type="obsolete">Editor di note è agganciabile</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2623"/>
+        <source>Animation</source>
+        <comment>Settings action</comment>
+        <translation>Animazione</translation>
+    </message>
+    <message>
+        <source>Animation</source>
+        <translation type="obsolete">Animazione</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2630"/>
+        <source>Automatic layout</source>
+        <comment>Settings action</comment>
+        <translation>Disposizione automatica</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2641"/>
+        <source>Test</source>
+        <translation>Test</translation>
+    </message>
+    <message>
+        <source>Test shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Scorciatoie di test</translation>
+    </message>
+    <message>
+        <source>Help shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">Scorciatoie di aiuto</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2680"/>
+        <source>Open VYM example maps </source>
+        <comment>Help action</comment>
+        <translation>Apri mappe VYM di esempio</translation>
+    </message>
+    <message>
+        <source>Open VYM example maps </source>
+        <translation type="obsolete">Apri mappe VYM di esempio</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2772"/>
+        <source>References (URLs, vymLinks, ...)</source>
+        <comment>Context menu name</comment>
+        <translation>Riferimenti (URL, vymLinks, ...)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2803"/>
+        <source>Follow XLink</source>
+        <comment>Context menu</comment>
+        <translation>Segui XLink</translation>
+    </message>
+    <message>
+        <source>&amp;%1 %2</source>
+        <translation type="obsolete">&amp;%1 %2</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3126"/>
+        <source>unnamed</source>
+        <comment>MainWindow: name for new and empty file</comment>
+        <translation>senza nome</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3264"/>
+        <source>Loading: %1</source>
+        <comment>Progress dialog while loading maps</comment>
+        <translation>Caricante %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3563"/>
+        <source>Load Freemind map</source>
+        <translation>Carica mappa Freemind</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <source>Export as CSV</source>
+        <translation>Esporta come CSV</translation>
+    </message>
+    <message>
+        <source>Sorry, currently only Konqueror supports integrated tabbed browsing.</source>
+        <comment>Mainwindow, open URL</comment>
+        <translation type="obsolete">Spiacente, in questo momento solo Konqueror supporta la navigazione catalogata integrata.</translation>
+    </message>
+    <message>
+        <source>Currently vym is using %1 to open external links.
+(Change in Settings menu)</source>
+        <comment>Mainwindow, open URL</comment>
+        <translation type="obsolete">Correntemente vym sta usando %1 per aprire collegamenti esterni.
+(modifica nel menu delle Preferenze)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4286"/>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation>%1 cose nella mappa
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5028"/>
+        <source>Directory with vym macros:</source>
+        <translation>Cartella con macro di vym:</translation>
+    </message>
+    <message>
+        <source>QInputDialog::getInteger()</source>
+        <translation type="obsolete">QInputDialog::getInteger()</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5041"/>
+        <source>Number of undo/redo levels:</source>
+        <translation>Numero di annullamenti/rifacimenti:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5046"/>
+        <source>Settings have been changed. The next map opened will have &quot;%1&quot; undo/redo levels</source>
+        <translation>Le impostazioni sono state cambiate. Dalla prossima mappa ci saranno &quot;%1&quot; livelli di annullamento</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5066"/>
+        <source>Number of seconds before autosave:</source>
+        <translation>Numero di secondi prima del salvataggio automatico:</translation>
+    </message>
+    <message>
+        <source>Information</source>
+        <translation type="obsolete">Informazione</translation>
+    </message>
+    <message>
+        <source>Changed settings will be applied after restarting vym</source>
+        <translation type="obsolete">Le preferenze modificate saranno applicate dopo il riavvio di vym</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5433"/>
+        <source>History for %1</source>
+        <comment>Window Caption</comment>
+        <translation>Storia per %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5788"/>
+        <source>Couldn&apos;t find the documentation %1 in:
+%2</source>
+        <translation>Non è possibile trovare la documentazione %1 in:
+%2</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5816"/>
+        <source>Load vym example map</source>
+        <translation>Carica la mappa vym di esempio</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation type="obsolete">Non è possibile trovare la macro a %1.
+</translation>
+    </message>
+    <message>
+        <source>Set directory for vym macros</source>
+        <translation type="obsolete">Scegli cartella per le macro di vym</translation>
+    </message>
+</context>
+<context>
+    <name>MapEditor</name>
+    <message>
+        <source>Critical Parse Error</source>
+        <translation type="obsolete">Errore Critico di Interpretazione</translation>
+    </message>
+    <message>
+        <source>Critical Save Error</source>
+        <translation type="obsolete">Errore Critico di Salvataggio</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t write to </source>
+        <translation type="obsolete"> È impossibile scrivere su</translation>
+    </message>
+    <message>
+        <source>VYM - Export (ASCII)</source>
+        <translation type="obsolete">VYM - Esporta (ASCII)</translation>
+    </message>
+    <message>
+        <source>The file </source>
+        <translation type="obsolete"> Il file</translation>
+    </message>
+    <message>
+        <source> exists already. Do you want to overwrite it?</source>
+        <translation type="obsolete"> esiste già. Vuoi sovvrascriverlo?</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="obsolete">Sovvrascrivi</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Cancella</translation>
+    </message>
+    <message>
+        <source>Critical Export Error </source>
+        <translation type="obsolete">Errore critico nell&apos;esportazione</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create directory </source>
+        <translation type="obsolete"> Non è possibile creare la cartella</translation>
+    </message>
+    <message>
+        <source>Critical Export Error</source>
+        <translation type="obsolete">Errore critico nell&apos;esportazione</translation>
+    </message>
+    <message>
+        <source>MapEditor::exportXML couldn&apos;t open </source>
+        <translation type="obsolete">non è possibile aprire MapEditor::exportXML </translation>
+    </message>
+    <message>
+        <source>Critical Parse Error by reading backupFile</source>
+        <translation type="obsolete">Errore Critico di Interpretazione nel leggere il file di backup</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">Errore Critico</translation>
+    </message>
+    <message>
+        <source> used for undo is gone. 
+I will create a new one, but at the moment no undo is available.
+Maybe you want to reload your original data.
+
+Sorry for any inconveniences.</source>
+        <translation type="obsolete">  non ci sono altri annullamenti.
+Ne creerò uno nuovo, ma al momento nessun annulla è presente.
+Forse vuoi ricaricare i tuoi dati originali.
+
+Ci dispiace per il disagio.</translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation type="obsolete">Inserisci URL:</translation>
+    </message>
+    <message>
+        <source>VYM - Link to another map</source>
+        <translation type="obsolete">VYM - Collega ad un&apos;altra mappa</translation>
+    </message>
+    <message>
+        <source>vym map</source>
+        <translation type="obsolete">mappa vym</translation>
+    </message>
+    <message>
+        <source>vym - load image</source>
+        <translation type="obsolete">vym - carica immagine</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <translation type="obsolete">Immagini</translation>
+    </message>
+    <message>
+        <source>vym - Load image</source>
+        <translation type="obsolete">vym - Carica Immagini</translation>
+    </message>
+    <message>
+        <source>vym - save image as</source>
+        <translation type="obsolete">vym - salva immagine come</translation>
+    </message>
+    <message>
+        <source>vym - Save image as </source>
+        <translation type="obsolete"> vym - Salva immagine come</translation>
+    </message>
+    <message>
+        <source>Critical Import Error</source>
+        <translation type="obsolete">Errore critico nell&apos;importazione</translation>
+    </message>
+    <message>
+        <source>Cannot find the directory</source>
+        <translation type="obsolete">Non trovo la cartella</translation>
+    </message>
+    <message>
+        <source>VYM - Choose directory structur to import</source>
+        <translation type="obsolete">VYM - Scegli la struttura delle cartelle da importare</translation>
+    </message>
+    <message>
+        <source>Note</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Note</translation>
+    </message>
+    <message>
+        <source>WWW Document (external)</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Documento WWW (esterno)</translation>
+    </message>
+    <message>
+        <source>Link to another vym map</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Collega ad un&apos;altra mappa vym</translation>
+    </message>
+    <message>
+        <source>subtree is scrolled</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">sottoalbero è espanso</translation>
+    </message>
+    <message>
+        <source>subtree is temporary scrolled</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">sottoalbero è temporaneamente espanso</translation>
+    </message>
+    <message>
+        <source>Take care!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Attenzione!</translation>
+    </message>
+    <message>
+        <source>Really?</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Veramente?</translation>
+    </message>
+    <message>
+        <source>ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">ok!</translation>
+    </message>
+    <message>
+        <source>Not ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Non ok!</translation>
+    </message>
+    <message>
+        <source>This won&apos;t work!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Questo non funzionerà!</translation>
+    </message>
+    <message>
+        <source>Good</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Bene</translation>
+    </message>
+    <message>
+        <source>Bad</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Male</translation>
+    </message>
+    <message>
+        <source>Time critical</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">In tempo critico</translation>
+    </message>
+    <message>
+        <source>Idea!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Idea!</translation>
+    </message>
+    <message>
+        <source>Important</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Importante</translation>
+    </message>
+    <message>
+        <source>Unimportant</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Nono Importante</translation>
+    </message>
+    <message>
+        <source>I like this</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Mi piace</translation>
+    </message>
+    <message>
+        <source>I do not like this</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Non mi piace</translation>
+    </message>
+    <message>
+        <source>I just love... </source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete"> Lo amo...</translation>
+    </message>
+    <message>
+        <source>Dangerous</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Pericoloso</translation>
+    </message>
+    <message>
+        <source>This will help</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Questo aiuta</translation>
+    </message>
+    <message>
+        <source>New Map</source>
+        <comment>Heading of mapcenter in new map</comment>
+        <translation type="obsolete">Nuova mappa</translation>
+    </message>
+    <message>
+        <source>Critcal Save error</source>
+        <translation type="obsolete">Errore Critico di Salvataggio</translation>
+    </message>
+    <message>
+        <source>MapEditor::exportXML couldn&apos;t open %1</source>
+        <translation type="obsolete">MapEditor::exportXML non è possibile aprire %1</translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation type="obsolete">Collega ad un&apos;altra mappa vym</translation>
+    </message>
+    <message>
+        <source>Load image</source>
+        <translation type="obsolete">Carica immagine</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="obsolete">Il file %1 esiste già.
+Vuoi sovvrascriverlo?</translation>
+    </message>
+    <message>
+        <source>Cannot find the directory %1</source>
+        <translation type="obsolete">Non è possibile trovare la cartella %1</translation>
+    </message>
+    <message>
+        <source>Choose directory structure to import</source>
+        <translation type="obsolete">Scegliere la struttura delle cartelle da importare</translation>
+    </message>
+    <message>
+        <source>unnamed</source>
+        <translation type="obsolete">senza nome</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="obsolete">Attenzione</translation>
+    </message>
+    <message>
+        <source>History for </source>
+        <translation type="obsolete">Cronologia di </translation>
+    </message>
+    <message>
+        <source>Save image</source>
+        <translation type="obsolete">Salva immagine</translation>
+    </message>
+    <message>
+        <source>Critical Parse Error while reading %1</source>
+        <translation type="obsolete">Errore Critico di Interpretazione durante la lettura di %1</translation>
+    </message>
+    <message>
+        <source>Could not read %1</source>
+        <translation type="obsolete">Non è possibile leggere %1</translation>
+    </message>
+    <message>
+        <source>Can&apos;t get color of heading,
+there&apos;s no branch selected</source>
+        <translation type="obsolete">Non è possibile determinare il colore del titolo.
+Nessun ramo è stato selezionato</translation>
+    </message>
+    <message>
+        <source>Critical Load Error</source>
+        <translation type="obsolete">Errore Critico di Caricamento</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation type="obsolete">Non è possibile creare una cartella temporanea prima di caricare
+</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="obsolete">Non è possibile trovare una mappa (*.xml) nell&apos;archivio .vym.
+</translation>
+    </message>
+    <message>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="obsolete">La mappa %1
+non usa il formato di compressione vym.
+Salvandolo in modo non compresso, salva anche le immagini 
+e le flag e quindi potrebbe sovvrascrivere dei file in questa cartella
+Si vuole salvare la mappa</translation>
+    </message>
+    <message>
+        <source>compressed (vym default)</source>
+        <translation type="obsolete">compresso (predefinito di vym)</translation>
+    </message>
+    <message>
+        <source>uncompressed</source>
+        <translation type="obsolete">non compresso</translation>
+    </message>
+    <message>
+        <source>Save Error</source>
+        <translation type="obsolete">Errore di Salvataggio</translation>
+    </message>
+    <message>
+        <source>%1
+could not be removed before saving</source>
+        <translation type="obsolete">%1
+non puo&apos; essere rimosso prima del salvataggio</translation>
+    </message>
+    <message>
+        <source>%1
+could not be renamed before saving</source>
+        <translation type="obsolete">%1
+non puo&apos; essere rinominato prima del salvataggio</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation type="obsolete">Non è possibile creare una cartella temporanea prima di salvare
+</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <translation type="obsolete">Esporta mappa come immagine</translation>
+    </message>
+    <message>
+        <source>Export XML to directory</source>
+        <translation type="obsolete">Esporta XML nella cartella</translation>
+    </message>
+    <message>
+        <source>Autosave disabled during undo.</source>
+        <translation type="obsolete">Salvataggio automatico disabilitato durante il cancella.</translation>
+    </message>
+    <message>
+        <source>Load background image</source>
+        <translation type="obsolete">Carica immagine di sfondo</translation>
+    </message>
+    <message>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Testo</translation>
+    </message>
+    <message>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Foglio di calcolo</translation>
+    </message>
+    <message>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Documento di testo</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Immagini</translation>
+    </message>
+    <message>
+        <source>Set URL to a local file</source>
+        <translation type="obsolete">Imposta URL come file locale</translation>
+    </message>
+    <message>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation type="obsolete">%1 cose nella mappa
+</translation>
+    </message>
+    <message>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation type="obsolete">Il file della mappa sul disco è cambiata:
+
+%1
+
+Vuoi ricaricarela mappa in un nuovo file?</translation>
+    </message>
+    <message>
+        <source>Reload</source>
+        <translation type="obsolete">Ricarica</translation>
+    </message>
+    <message>
+        <source>Ignore</source>
+        <translation type="obsolete">Ignora</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="43"/>
+        <source>Map Editor</source>
+        <comment>Shortcut scope</comment>
+        <translation>Editor di mappa</translation>
+    </message>
+    <message>
+        <source>Select previous</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Seleziona il precedente</translation>
+    </message>
+    <message>
+        <source>Select next</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Seleziona il prossimo</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="111"/>
+        <location filename="../mapeditor.cpp" line="116"/>
+        <source>Edit heading</source>
+        <comment>MapEditor</comment>
+        <translation>Edita Titolo</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>MapEditor</comment>
+        <translation type="obsolete">Salva</translation>
+    </message>
+    <message>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Rifai</translation>
+    </message>
+    <message>
+        <source>Repeat last export (%1)</source>
+        <translation type="obsolete">Ripete l&apos;ultima esportazione (%1)</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="510"/>
+        <source>Print vym map</source>
+        <comment>MapEditor</comment>
+        <translation>Stampa Mappa di vym</translation>
+    </message>
+</context>
+<context>
+    <name>NoteEditor</name>
+    <message>
+        <location filename="../noteeditor.cpp" line="13"/>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation>Editor di Note</translation>
+    </message>
+</context>
+<context>
+    <name>Process</name>
+    <message>
+        <source>Critical Error</source>
+        <translation type="vanished">Errore Critico</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation type="vanished">Non è possibile avviare %1</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="vanished">%1 non è terminato normalmente</translation>
+    </message>
+</context>
+<context>
+    <name>QObject</name>
+    <message>
+        <source>This is not an image.</source>
+        <translation type="obsolete">Questa non è un immagine.</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="obsolete">Il file %1 esiste già.Vuoi sovvrascriverlo?</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="90"/>
+        <source>Overwrite</source>
+        <translation>Sovrascrivi</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="91"/>
+        <source>Cancel</source>
+        <translation>Cancella</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <location filename="../exports.cpp" line="381"/>
+        <location filename="../exports.cpp" line="511"/>
+        <location filename="../exports.cpp" line="954"/>
+        <location filename="../exports.cpp" line="1048"/>
+        <location filename="../exports.cpp" line="1128"/>
+        <location filename="../exports.cpp" line="1236"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <location filename="../exports.cpp" line="1333"/>
+        <location filename="../exports.cpp" line="1343"/>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Critical Export Error</source>
+        <translation>Errore critico nell&apos;esportazione</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="956"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <source>Could not write %1</source>
+        <translation>Non è possibile scrivere %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="147"/>
+        <source>Exporting to %1 will overwrite the existing file:
+%2</source>
+        <translation>L&apos;esportazione di %1 sovrascriverà il file esistente
+%2 </translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="146"/>
+        <source>Warning: Overwriting file</source>
+        <translation>Attenzione:  si sovrascrive il file</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <source>Could not export as AO to %1</source>
+        <translation>Non si può esportare come AO in %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="381"/>
+        <source>Could not export as ASCII to %1</source>
+        <translation>Non si può esportare come ASCII in %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="503"/>
+        <source>Export as CSV</source>
+        <translation>Esporta come CSV</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="511"/>
+        <source>Could not export as CSV to %1</source>
+        <translation>Non si può esportare come CSV in %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="837"/>
+        <source>Contents:</source>
+        <comment>Used in HTML export</comment>
+        <translation>Contenuti:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="893"/>
+        <source>Export aborted.</source>
+        <translation>Esportazione abortita.</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <comment>ExportHTML</comment>
+        <translation type="obsolete">Attenzione</translation>
+    </message>
+    <message>
+        <source>Trying to load stylesheet:</source>
+        <translation type="obsolete">Si cerca di caricare il foglio di stile:</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <comment>ExportHTML</comment>
+        <translation type="obsolete">Non è possibile aprire %1</translation>
+    </message>
+    <message>
+        <source>Trying to save stylesheet:</source>
+        <translation type="obsolete">Si cerca di salvare il foglio di stile:</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <translation type="obsolete">Non è possibile aprire %1</translation>
+    </message>
+    <message>
+        <source>Trying to load small icon for URLs:</source>
+        <translation type="obsolete">Si cerca di caricare icone piccole per le URL:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="934"/>
+        <source>Trying to create directory for flags:</source>
+        <translation>Si cerca di creare una cartella per i flags:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="935"/>
+        <source>Could not create %1</source>
+        <translation>Non è possibile creare %1</translation>
+    </message>
+    <message>
+        <source>Trying to save small icon for URLs:</source>
+        <translation type="obsolete">Si cerca di salvare l&apos;icona piccola per le URL:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="909"/>
+        <location filename="../exports.cpp" line="933"/>
+        <location filename="../exports.cpp" line="944"/>
+        <source>Critical</source>
+        <translation>Critico</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="910"/>
+        <source>Could not find stylesheet %1</source>
+        <translation>Non si trova il foglio di stile %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="920"/>
+        <source>Error</source>
+        <comment>ExportHTML</comment>
+        <translation>Errore</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="921"/>
+        <source>Could not copy
+%1 to
+%2</source>
+        <comment>ExportHTML</comment>
+        <translation>Non si può copiare
+%1 in
+%2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="945"/>
+        <source>Could not copy %1 to %2</source>
+        <translation>Con si può copiare %1 in %2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="955"/>
+        <source>Trying to save HTML file:</source>
+        <translation>Si cerca di salvare il file HTML:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="236"/>
+        <location filename="../exports.cpp" line="382"/>
+        <location filename="../exports.cpp" line="512"/>
+        <location filename="../exports.cpp" line="957"/>
+        <location filename="../exports.cpp" line="1049"/>
+        <location filename="../exports.cpp" line="1130"/>
+        <location filename="../exports.cpp" line="1309"/>
+        <source>Export failed.</source>
+        <translation>Esportazione fallita.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1048"/>
+        <source>Could not export as OrgMode to %1</source>
+        <translation>Non si può esportare come OrgMode in %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1129"/>
+        <source>Could not export as LaTeX to %1</source>
+        <translation>Non si può esportare come LaTeX in %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1189"/>
+        <source>Export as LibreOffice Impress presentation</source>
+        <translation>Espporta come presentazione di Impress di LibreOffice</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1236"/>
+        <source>No objects in map!</source>
+        <translation>Nessun oggetto nella mappa!</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1333"/>
+        <source>Couldn&apos;t read settings from &quot;%1&quot;</source>
+        <translation>Non possono essere lette le preferenze da &quot;%1&quot;</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1343"/>
+        <source>Check &quot;%1&quot; in
+%2</source>
+        <translation>Controllare &quot;%1&quot; in
+%2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Could not read %1</source>
+        <translation>Non è possibile leggere %1</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="257"/>
+        <location filename="../file.cpp" line="272"/>
+        <location filename="../file.cpp" line="296"/>
+        <location filename="../file.cpp" line="305"/>
+        <location filename="../file.cpp" line="313"/>
+        <location filename="../file.cpp" line="323"/>
+        <location filename="../file.cpp" line="332"/>
+        <location filename="../file.cpp" line="340"/>
+        <location filename="../file.cpp" line="347"/>
+        <location filename="../file.cpp" line="356"/>
+        <location filename="../file.cpp" line="377"/>
+        <location filename="../file.cpp" line="400"/>
+        <location filename="../file.cpp" line="410"/>
+        <location filename="../file.cpp" line="423"/>
+        <location filename="../main.cpp" line="411"/>
+        <location filename="../xsltproc.cpp" line="78"/>
+        <location filename="../xsltproc.cpp" line="84"/>
+        <source>Critical Error</source>
+        <translation>Errore Critico</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="258"/>
+        <source>Couldn&apos;t move existing file out of the way before saving.</source>
+        <translation>Non si può spostare togliere di mezzo il file esistente prima di salvare.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="273"/>
+        <location filename="../file.cpp" line="378"/>
+        <source>Couldn&apos;t start tool to decompress data.</source>
+        <translation>Non può essere avviato lo strumento per decomprimere i dati.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="297"/>
+        <source>Couldn&apos;t start zip to compress data.</source>
+        <translation>Non è possibile iniziare lo zip per la decompressione dei dati.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="306"/>
+        <source>zip didn&apos;t exit normally</source>
+        <translation>lo zip non è terminato normalmente</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="324"/>
+        <source>Couldn&apos;t rename %1 back to %2</source>
+        <translation>Non si può rinominere %1 di nuovo in %2</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="333"/>
+        <source>Couldn&apos;t remove target of old symbolic link %1</source>
+        <translation>Non si può rimuovere l&apos;obiettivo del vecchio link simbolico %1</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="341"/>
+        <source>Couldn&apos;t rename output to target of old symbolic link %1</source>
+        <translation>Nonn si può rinominare l&apos;esito qll&apos;oobiettivo del vechio legame simbolico %1</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="348"/>
+        <source>Couldn&apos;t link from %1 to target of old symbolic link %2</source>
+        <translation>Non si può eseguire il link da %1 all&apos;ogetto del vecchio link %2</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="357"/>
+        <source>Saved %1, but couldn&apos;t remove %2</source>
+        <translation>Salvato %1, ma non può essere rimosso %2</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="401"/>
+        <source>Couldn&apos;t start unzip to decompress data.</source>
+        <translation>Non è possibile iniziare l&apos;unzip per la decompressione dei dati.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="411"/>
+        <source>unzip didn&apos;t exit normally</source>
+        <translation>unzip non è finito normalmente</translation>
+    </message>
+    <message>
+        <source>Sorry, no preview for
+multiple selected files.</source>
+        <translation type="obsolete">Spiacenti, nessuna anteprima per
+più file selezionati.</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="79"/>
+        <source>Could not start %1</source>
+        <translation>Non è possibile iniziare %1</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="85"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation>%1 non è terminato normalmente</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="560"/>
+        <location filename="../exports.cpp" line="590"/>
+        <source>Exporting the %1 bookmarks will overwrite
+your existing bookmarks file.</source>
+        <translation>Esportando il segnalibri %1 sovvrascriverà
+il vostro attuale file di segnalibri.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="561"/>
+        <location filename="../exports.cpp" line="591"/>
+        <source>Warning: Overwriting %1 bookmarks</source>
+        <translation>Attenzione: Sovvrascrizione %1 segnalibri</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="579"/>
+        <location filename="../macros.cpp" line="39"/>
+        <location filename="../main.cpp" line="377"/>
+        <source>Warning</source>
+        <translation>Attenzione</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="580"/>
+        <source>Couldn&apos;t find script %1
+to notifiy Browsers of changed bookmarks.</source>
+        <translation>Non è possibile trovare lo script %1
+per notificare il Browser del cambiamento nei segnalibri.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="56"/>
+        <location filename="../imports.cpp" line="18"/>
+        <location filename="../main.cpp" line="475"/>
+        <location filename="../scripteditor.cpp" line="77"/>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Error</source>
+        <translation>Errore</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="57"/>
+        <location filename="../imports.cpp" line="19"/>
+        <source>Couldn&apos;t access temporary directory
+</source>
+        <translation>La cartella temporanea non è accessibile
+</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <location filename="../exports.cpp" line="373"/>
+        <source>Export as ASCII</source>
+        <translation>Esporta in ASCII</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <source>(still experimental)</source>
+        <translation>(in sperimentazione)</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="84"/>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <comment>write directory</comment>
+        <translation>La cartella %1 non è vuota. 
+Vuoi rischiare di sovvrascrivere i contenuti?</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation type="obsolete">Non è possibile aprire %1.
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3792"/>
+        <source>No Bugzilla client found.  For openSUSE you can install by (running as root):
+
+</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation>Non si trova alcun cliente di Bugzilla. Per OpenSUSE è possibile installarlo con (eseguito come root):
+
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3797"/>
+        <source>Alternatively you can also add the repository
+and install the perl module for Bugzilla access using YaST</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation>In alternativa è anche possibile aggiungere il repository
+e installare il modulo perl per accedere a Bugzilla tramite YaST</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3800"/>
+        <source>Warning: Couldn&apos;t find Bugzilla client</source>
+        <comment>VymModel</comment>
+        <translation>Attenzione: non si trova il cliente di Bugzilla</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <comment>Shortcut group</comment>
+        <translation type="obsolete">Editor di Note</translation>
+    </message>
+    <message>
+        <source>Heading Editor</source>
+        <comment>Shortcut group</comment>
+        <translation type="obsolete">Editor intestazione</translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="412"/>
+        <source>Couldn&apos;t find tool to unzip data. Please download and install 7z and set path in Settings menu:
+ </source>
+        <translation>Non si trova lo strumento per eseguire l&apos;unzip dei dati. Per favor scarica e installa 7z e imposta il percorso nel menù di impostazione:
+ </translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="476"/>
+        <location filename="../scripteditor.cpp" line="78"/>
+        <source>Couldn&apos;t open &quot;%1&quot;
+%2.</source>
+        <translation>Non si può aprire &quot;%1&quot;
+%2.</translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="80"/>
+        <source>Warning: Version Problem</source>
+        <translation>Attenzione: Problema di versione</translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="81"/>
+        <source>&lt;h3&gt;Map is newer than VYM&lt;/h3&gt;&lt;p&gt;The map you are just trying to load was saved using vym %1. The version of this vym is %2. If you run into problems after pressing the ok-button below, updating vym should help.&lt;/p&gt;</source>
+        <translation>&lt;h3&gt;La mappa è più nuova di VYM&lt;/h3&gt;&lt;p&gt;La mappa che voi state proprio per caricare è stata salvat con vym%1. La versione di questo vym è %2. Se incontrte problemi dopo la pressione del pulsante in basso, potrebbe essere di aiuto aggiornare vym.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="40"/>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation>Non è possibile trovare la macro a %1.
+</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>Per favore usa le impostazioni-&gt;</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Set directory for vym macros</source>
+        <translation>Scegli cartella per le macro di vym</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Couldn&apos;t save &quot;%1&quot;</source>
+        <translation>Non si può salvare &quot;%1&quot;</translation>
+    </message>
+</context>
+<context>
+    <name>ScriptEditor</name>
+    <message>
+        <location filename="../scripteditor.ui" line="14"/>
+        <source>Form</source>
+        <translation>Form</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="49"/>
+        <source>Tab 1</source>
+        <translation>Tab 1</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="55"/>
+        <source>Save to selected slide</source>
+        <translation>Salva la diapositiva selezionata</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="91"/>
+        <location filename="../scripteditor.ui" line="145"/>
+        <source>Run</source>
+        <translation>Esegui</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="105"/>
+        <source>Tab 2</source>
+        <translation>Tab 2</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="121"/>
+        <source>Current key:</source>
+        <translation>Chiave corrente:</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="131"/>
+        <source>Load</source>
+        <translation>Carica</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="138"/>
+        <source>Save</source>
+        <translation>Salva</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Warning</source>
+        <translation>Attenzione</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="45"/>
+        <source>Slide</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation>Diapositiva</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="46"/>
+        <source>Macro</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation>Macro</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="65"/>
+        <source>Save</source>
+        <comment>ScriptEditor</comment>
+        <translation>Salva</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <source>Couldn&apos;t get model to save script into slide!</source>
+        <translation>Non si può ottenere il modello per salvare lo script nella diapositiva!</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Couldn&apos;t find slide to save script into slide!</source>
+        <translation>Non si può trovare la diapositiva per salvare lo script nella diapositiva!</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="143"/>
+        <source>Save script</source>
+        <translation>Script salvato</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="155"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation>Il file %1 
+esiste già.
+Vuoi sovrascriverlo?</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="160"/>
+        <source>Overwrite</source>
+        <translation>Sovrascrivi</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="161"/>
+        <source>Cancel</source>
+        <translation>Cancella</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="184"/>
+        <source>Load script</source>
+        <translation>Carica script</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="194"/>
+        <source>Error</source>
+        <translation>Errore</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="195"/>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation>Non è possibile aprire %1.
+</translation>
+    </message>
+</context>
+<context>
+    <name>ShowTextDialog</name>
+    <message>
+        <source>VYM - Info</source>
+        <translation type="obsolete">VIM - Info</translation>
+    </message>
+    <message>
+        <location filename="../showtextdialog.ui" line="50"/>
+        <source>Close</source>
+        <translation>Chiudi</translation>
+    </message>
+    <message>
+        <location filename="../showtextdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>Finestra di Dialogo</translation>
+    </message>
+</context>
+<context>
+    <name>SimpleScriptEditor</name>
+    <message>
+        <source>Save script</source>
+        <translation type="obsolete">Script salvato</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation type="obsolete">Il file %1 
+esiste già.
+Vuoi sovvrascriverlo?</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="obsolete">Sovvrascrivi</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Cancella</translation>
+    </message>
+    <message>
+        <source>Load script</source>
+        <translation type="obsolete">Carica script</translation>
+    </message>
+    <message>
+        <source>Error</source>
+        <translation type="obsolete">Errore</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation type="obsolete">Non è possibile aprire %1.
+</translation>
+    </message>
+    <message>
+        <source>Simple Script Editor</source>
+        <translation type="obsolete">Editor semplice di script</translation>
+    </message>
+    <message>
+        <source>Save as</source>
+        <translation type="obsolete">Salva come</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <translation type="obsolete">Salva</translation>
+    </message>
+    <message>
+        <source>Qt::CTRL + Qt::Key_S</source>
+        <translation type="obsolete">Qt::CTRL + Qt::Key_S</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <translation type="obsolete">Apri</translation>
+    </message>
+    <message>
+        <source>Qt::CTRL +Qt::Key_O</source>
+        <translation type="obsolete">Qt::CTRL + Qt::Key_O</translation>
+    </message>
+    <message>
+        <source>Run</source>
+        <translation type="obsolete">Esegui</translation>
+    </message>
+    <message>
+        <source>Qt::CTRL + Qt::Key_R</source>
+        <translation type="obsolete">Qt::CTRL + Qt::Key_R</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Chiudi</translation>
+    </message>
+</context>
+<context>
+    <name>SlideControlWidget</name>
+    <message>
+        <source>Previous slide</source>
+        <comment>SlideControl widget</comment>
+        <translation type="obsolete">Diapositiva precedente</translation>
+    </message>
+    <message>
+        <source>Next slide</source>
+        <comment>SlideControl widget</comment>
+        <translation type="obsolete">Diapositiva successiva</translation>
+    </message>
+    <message>
+        <source>Take snapshot</source>
+        <comment>SlideControl widget</comment>
+        <translation type="obsolete">Fai uno scatto</translation>
+    </message>
+</context>
+<context>
+    <name>TaskEditor</name>
+    <message>
+        <location filename="../taskeditor.cpp" line="38"/>
+        <source>Current map</source>
+        <comment>TaskEditor</comment>
+        <translation>Mappa corrente</translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="45"/>
+        <source>Active tasks</source>
+        <comment>TaskEditor</comment>
+        <translation>Task attive</translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="52"/>
+        <source>New tasks</source>
+        <comment>TaskEditor</comment>
+        <translation>Nuove task</translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="68"/>
+        <location filename="../taskeditor.cpp" line="73"/>
+        <source>Edit heading</source>
+        <comment>TaskEditor</comment>
+        <translation>Edita Intestazione</translation>
+    </message>
+</context>
+<context>
+    <name>TaskModel</name>
+    <message>
+        <location filename="../taskmodel.cpp" line="127"/>
+        <source>Prio</source>
+        <comment>TaskEditor</comment>
+        <translation>Prio</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="129"/>
+        <source>Status</source>
+        <comment>TaskEditor</comment>
+        <translation>Status</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="131"/>
+        <source>Age total</source>
+        <comment>TaskEditor</comment>
+        <translatorcomment>Potrebbe anche significare Durata?</translatorcomment>
+        <translation>Età totale</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="133"/>
+        <source>Age mod.</source>
+        <comment>TaskEditor</comment>
+        <translation>Età mod.</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="135"/>
+        <source>Sleep</source>
+        <comment>TaskEditor</comment>
+        <translation>Riposo</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="137"/>
+        <source>Map</source>
+        <comment>TaskEditor</comment>
+        <translation>Mappa</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="139"/>
+        <source>Task</source>
+        <comment>TaskEditor</comment>
+        <translatorcomment>Lascio Task in luogo di compito</translatorcomment>
+        <translation>Task</translation>
+    </message>
+</context>
+<context>
+    <name>TextEditor</name>
+    <message>
+        <source>&amp;File</source>
+        <translation type="obsolete">&amp;File</translation>
+    </message>
+    <message>
+        <source>Import</source>
+        <translation type="obsolete">Importa</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="273"/>
+        <source>&amp;Import...</source>
+        <translation>&amp;Importa...</translation>
+    </message>
+    <message>
+        <source>Export Note (HTML)</source>
+        <translation type="obsolete">Esporta Note (HTML)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="283"/>
+        <source>&amp;Export...</source>
+        <translation>&amp;Esporta...</translation>
+    </message>
+    <message>
+        <source>Export Note As (HTML) </source>
+        <translation type="obsolete"> Esporta Note come (HTML)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="293"/>
+        <source>Export &amp;As... (HTML)</source>
+        <translation> Es&amp;porta Come... (HTML)</translation>
+    </message>
+    <message>
+        <source>Export Note As (ASCII) </source>
+        <translation type="obsolete">  Esporta Note come (ASCII)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="298"/>
+        <source>Export &amp;As...(ASCII)</source>
+        <translation> Es&amp;porta Come... (ASCII)</translation>
+    </message>
+    <message>
+        <source>Print Note</source>
+        <translation type="obsolete">Stampa Nota</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="308"/>
+        <source>&amp;Print...</source>
+        <translation>&amp;Stampa...</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <translation type="vanished">&amp;Modifica</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <translation type="obsolete">Annulla</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="332"/>
+        <source>&amp;Undo</source>
+        <translation>&amp;Annulla</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="obsolete">Rifai</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="341"/>
+        <source>&amp;Redo</source>
+        <translation>&amp;Rifai</translation>
+    </message>
+    <message>
+        <source>Select and copy all</source>
+        <translation type="obsolete">Seleziona e copia tutto</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="351"/>
+        <source>Select and copy &amp;all</source>
+        <translation>Seleziona e copia t&amp;utto</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <translation type="obsolete">Copia</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="359"/>
+        <source>&amp;Copy</source>
+        <translation>&amp;Copia</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="obsolete">Taglia</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="368"/>
+        <source>Cu&amp;t</source>
+        <translation>&amp;Taglia</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <translation type="obsolete">Incolla</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="377"/>
+        <source>&amp;Paste</source>
+        <translation>I&amp;ncolla</translation>
+    </message>
+    <message>
+        <source>Delete all</source>
+        <translation type="obsolete">Cancella tutto</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="316"/>
+        <source>&amp;Delete All</source>
+        <translation>Cance&amp;lla tutto</translation>
+    </message>
+    <message>
+        <source>Convert paragraphs to linebreaks</source>
+        <translation type="obsolete">Converti paragrafi in &apos;a capo&apos;</translation>
+    </message>
+    <message>
+        <source>&amp;Convert Paragraphs</source>
+        <translation type="obsolete">Converti para&amp;grafi</translation>
+    </message>
+    <message>
+        <source>Join all lines of a paragraph</source>
+        <translation type="obsolete">Unire tutte le linee del paragrafo</translation>
+    </message>
+    <message>
+        <source>&amp;Join lines</source>
+        <translation type="obsolete">&amp;Unisci linee</translation>
+    </message>
+    <message>
+        <source>&amp;Format</source>
+        <translation type="obsolete">&amp;Formato</translation>
+    </message>
+    <message>
+        <source>Toggle font hint for the whole text</source>
+        <translation type="obsolete">(mostra/nascondi) suggerimento caratteri per tutto il testo</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="396"/>
+        <source>&amp;Font hint</source>
+        <translation>&amp;Suggerimento Caratteri</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="417"/>
+        <source>Fonts</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>Font</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="443"/>
+        <source>Format</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>Formato</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="448"/>
+        <source>&amp;Color...</source>
+        <translation>&amp;Colore...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="454"/>
+        <source>&amp;Bold</source>
+        <translation>&amp;Grassetto</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="464"/>
+        <source>&amp;Italic</source>
+        <translation>&amp;Corsivo</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="474"/>
+        <source>&amp;Underline</source>
+        <translation>So&amp;ttolinea</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="512"/>
+        <source>&amp;Left</source>
+        <translation>&amp;Sinistra</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="518"/>
+        <source>C&amp;enter</source>
+        <translation>C&amp;entro</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="524"/>
+        <source>&amp;Right</source>
+        <translation>&amp;Destra</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="530"/>
+        <source>&amp;Justify</source>
+        <translation>&amp;Giustificato</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="540"/>
+        <source>&amp;Settings</source>
+        <translation>&amp;Preferenze</translation>
+    </message>
+    <message>
+        <source>Set fixed font</source>
+        <translation type="obsolete">Scegli Caratteri fissi</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="543"/>
+        <source>Set &amp;fixed font</source>
+        <translation>Scegli Caratteri &amp;Fissi</translation>
+    </message>
+    <message>
+        <source>Set variable font</source>
+        <translation type="obsolete">Scegli Caratteri Variabili</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="548"/>
+        <source>Set &amp;variable font</source>
+        <translation>Scegli &amp;Caratteri Variabili</translation>
+    </message>
+    <message>
+        <source>Used fixed font by default</source>
+        <translation type="obsolete">Usa caretteri fissi come predefinito</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="553"/>
+        <source>&amp;fixed font is default</source>
+        <translation>carattere &amp;fisso predefinito</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="704"/>
+        <source>Export Note to single file</source>
+        <translation>Esporta nota in un file singolo</translation>
+    </message>
+    <message>
+        <source>The file </source>
+        <translation type="obsolete"> Il file</translation>
+    </message>
+    <message>
+        <source> exists already. Do you want to overwrite it?</source>
+        <translation type="obsolete"> esiste già. Vuoi sovvrascriverlo?</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="724"/>
+        <location filename="../texteditor.cpp" line="800"/>
+        <source>Overwrite</source>
+        <translation>Sovvrascrivi</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="725"/>
+        <location filename="../texteditor.cpp" line="801"/>
+        <source>Cancel</source>
+        <translation>Cancella</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t export note </source>
+        <translation type="obsolete"> Non è possibile esportare la nota</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="785"/>
+        <source>Export Note to single file (ASCII)</source>
+        <translation>Esporta nota in un file singolo (ASCII)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="566"/>
+        <source>Note Editor</source>
+        <translation>Editor di Note</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="49"/>
+        <source>Text Editor</source>
+        <comment>Text Editor Window caption</comment>
+        <translation>Editor di testo</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="271"/>
+        <location filename="../texteditor.cpp" line="325"/>
+        <location filename="../texteditor.cpp" line="389"/>
+        <source>Texteditor</source>
+        <comment>Shortcuts</comment>
+        <translation>Editor di testo</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="329"/>
+        <source>Edi&amp;t</source>
+        <translation>Edi&amp;t_</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="390"/>
+        <source>Font hints</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>Suggerimenti per i font</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="488"/>
+        <source>Subs&amp;cript</source>
+        <translation>Pedi&amp;ce</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="498"/>
+        <source>Su&amp;perscript</source>
+        <translation>A&amp;pice</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="392"/>
+        <source>F&amp;ormat</source>
+        <translation>F&amp;ormattazione</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="326"/>
+        <source>Edit Actions</source>
+        <translation>Edita Azioni</translation>
+    </message>
+    <message>
+        <source>Format Actions</source>
+        <translation type="obsolete">Formatta Azioni</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="267"/>
+        <source>Note Actions</source>
+        <translation>Note Azioni</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="48"/>
+        <source>Ready</source>
+        <comment>Statusbar message</comment>
+        <translation>Pronto</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="174"/>
+        <source>No filename available for this note.</source>
+        <comment>Statusbar message</comment>
+        <translation>Nessun nome di file disponibile per questa nota.</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation type="obsolete">Editor di Note</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="269"/>
+        <source>&amp;Note</source>
+        <comment>Menubar</comment>
+        <translation>&amp;Nota</translation>
+    </message>
+    <message>
+        <source>Import</source>
+        <comment>Status tip for Note menu</comment>
+        <translation type="obsolete">Importa</translation>
+    </message>
+    <message>
+        <source>Export Note (HTML)</source>
+        <comment>Status tip for Note menu</comment>
+        <translation type="obsolete">Esporta Note (HTML)</translation>
+    </message>
+    <message>
+        <source>Export Note As (HTML) </source>
+        <comment>Status tip for Note Menu</comment>
+        <translation type="obsolete">Esporta Note come (HTML) </translation>
+    </message>
+    <message>
+        <source>Export Note As (ASCII) </source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete"> Esporta Note come (ASCII) </translation>
+    </message>
+    <message>
+        <source>Print Note</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Stampa Nota</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Annulla</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Rifai</translation>
+    </message>
+    <message>
+        <source>Select and copy all</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Seleziona e copia tutto</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Copia</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Taglia</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Incolla</translation>
+    </message>
+    <message>
+        <source>Delete all</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Cancella tutto</translation>
+    </message>
+    <message>
+        <source>Toggle font hint for the whole text</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">(mostra/nascondi) suggerimento caratteri per tutto il testo</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="407"/>
+        <source>&amp;Richtext</source>
+        <translation>&amp;Richtext</translation>
+    </message>
+    <message>
+        <source>Set fixed font</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Scegli Caratteri fissi</translation>
+    </message>
+    <message>
+        <source>Set variable font</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Scegli Caratteri Variabili</translation>
+    </message>
+    <message>
+        <source>Used fixed font by default</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Usa caretteri fissi come predefinito</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="719"/>
+        <location filename="../texteditor.cpp" line="795"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation>Il file %1 
+esiste già.
+Vuoi sovvrascriverlo?</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="743"/>
+        <source>Couldn&apos;t export note </source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation>Non è possibile esportare la nota </translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="828"/>
+        <source>Print</source>
+        <comment>TextEditor</comment>
+        <translation>Stampa</translation>
+    </message>
+</context>
+<context>
+    <name>TreeEditor</name>
+    <message>
+        <location filename="../treeeditor.cpp" line="27"/>
+        <source>Select upper object</source>
+        <comment>Tree Editor</comment>
+        <translation>Seleziona l&apos;oggetto superiore</translation>
+    </message>
+    <message>
+        <location filename="../treeeditor.cpp" line="33"/>
+        <source>Select lower object</source>
+        <comment>Tree Editor</comment>
+        <translation>Seleziona l&apos;oggetto inferiore</translation>
+    </message>
+</context>
+<context>
+    <name>VymModel</name>
+    <message>
+        <location filename="../vymmodel.cpp" line="126"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation>utente sconosciuto</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="149"/>
+        <source>unnamed</source>
+        <translation>senza nome</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="445"/>
+        <location filename="../vymmodel.cpp" line="481"/>
+        <location filename="../vymmodel.cpp" line="566"/>
+        <location filename="../vymmodel.cpp" line="622"/>
+        <source>Critical Parse Error</source>
+        <translation>Errore Critico di Interpretazione</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="501"/>
+        <location filename="../vymmodel.cpp" line="551"/>
+        <source>Critical Load Error</source>
+        <translation>Errore Critico di Caricamento</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="502"/>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation>Non si può creare unaa cartella temporanea prima di caricare
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="552"/>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation>Non è possibile trovare una mappa (*.xml) nell&apos;archivio .vym.
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="980"/>
+        <source>unknown user</source>
+        <comment>Default for lockfiles of maps</comment>
+        <translation>utente sconosciuto</translation>
+    </message>
+    <message>
+        <source>Map seems to be already opened in another vym instance! It will be opened in readonly mode.
+
+Map is locked by &quot;%1&quot; on &quot;%2&quot;</source>
+        <translation type="vanished">Sembra che la mappa sia già aperta da un&apos;altra istanza di vym. Sarà riaperta in modalità di sola lettura.
+
+La mappa è bloccata da &quot;%1&quot; su &quot;%2&quot;</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1003"/>
+        <source>Warning: Map already opended</source>
+        <comment>VymModel</comment>
+        <translation>Attenzione: La mappa è già aperta</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="671"/>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation>La mappa %1
+non usa il formato di compressione vym.
+Salvandolo in modo non compresso, salva anche le immagini 
+e i flag e quindi potrebbe sovrascrivere dei file in questa cartella
+Si vuole salvare la mappa</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="679"/>
+        <source>compressed (vym default)</source>
+        <translation>compressi (predefiniti di vym)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="680"/>
+        <source>uncompressed</source>
+        <translation>non compresso</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="681"/>
+        <location filename="../vymmodel.cpp" line="864"/>
+        <source>Cancel</source>
+        <translation>Cancella</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="710"/>
+        <location filename="../vymmodel.cpp" line="715"/>
+        <source>Save Error</source>
+        <translation>Errore di Salvataggio</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="711"/>
+        <source>%1
+could not be removed before saving</source>
+        <translation>%1
+non puo&apos; essere rimosso prima del salvataggio</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="716"/>
+        <source>%1
+could not be renamed before saving</source>
+        <translation>%1
+non puo&apos; essere rinominato prima del salvataggio</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="728"/>
+        <source>Critical Save Error</source>
+        <translation>Errore Critico di Salvataggio</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="729"/>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation>Non è possibile creare una cartella temporanea prima di salvare
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <location filename="../vymmodel.cpp" line="5783"/>
+        <source>Images</source>
+        <translation>Immagini</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <source>All</source>
+        <comment>Filedialog</comment>
+        <translation>Tutto</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="792"/>
+        <source>Load image</source>
+        <translation>Carica immagine</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="844"/>
+        <source>Save image</source>
+        <translation>Salva immagine</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="856"/>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation>Il file %1 esiste già.
+Vuoi sovrascriverlo? </translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="863"/>
+        <source>Overwrite</source>
+        <translation>Sovrascrivi</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Critical Error</source>
+        <translation>Errore Critico</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <source>Unsupported format in %1</source>
+        <translation>Formato non supportato in  %1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation>Non è possibile salvare %1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Critical Import Error</source>
+        <translation>Errore critico nell&apos;importazione</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Cannot find the directory %1</source>
+        <translation>Non è possibile trovare la cartella %1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="962"/>
+        <location filename="../vymmodel.cpp" line="965"/>
+        <source>Choose directory structure to import</source>
+        <translation>Scegliere la struttura delle cartelle da importare</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="999"/>
+        <source>Map seems to be already opened in another vym instance!
+
+ Map is locked by &quot;%1&quot; on &quot;%2&quot;
+
+Please only delete the lockfile, if you are sure nobody else is currently working on this map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1008"/>
+        <source>Removed lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1014"/>
+        <source>Couldn&apos;t remove lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1021"/>
+        <source>Cannot create lockfile of map! It will be opened in readonly mode.
+
+</source>
+        <translation>Non si può creare il file di blocco! Sarà aperto in modalità di sola lettura.
+
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1024"/>
+        <source>Warning</source>
+        <comment>VymModel</comment>
+        <translation>Attenzione</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1116"/>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation>Il file della mappa sul disco è cambiato:
+
+%1
+
+Vuoi ricaricare la mappa in un nuovo file?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1123"/>
+        <source>Reload</source>
+        <translation>Ricarica</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1124"/>
+        <source>Ignore</source>
+        <translation>Ignora</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1013"/>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Warning</source>
+        <translation>Attenzione</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <source>Redo failed:
+%1</source>
+        <translation>La ripetizione falliva:
+%1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1274"/>
+        <source>Autosave disabled during undo.</source>
+        <translation>Salvataggio automatico disabilitato durante il cancella.</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2001"/>
+        <source>Note</source>
+        <comment>FindAll in VymModel</comment>
+        <translation>Note</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2725"/>
+        <source>Image</source>
+        <comment>Default name for new image</comment>
+        <translation>Immagine</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2958"/>
+        <source>New map</source>
+        <comment>New map</comment>
+        <translation>Nuova Mappa</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Script aborted:
+%1</source>
+        <translation>Script abortito:
+%1</translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation type="obsolete">Inserisci URL:</translation>
+    </message>
+    <message>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Testo</translation>
+    </message>
+    <message>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Foglio di calcolo</translation>
+    </message>
+    <message>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Documento di testo</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Immagini</translation>
+    </message>
+    <message>
+        <source>Set URL to a local file</source>
+        <translation type="obsolete">Imposta URL come file locale</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3822"/>
+        <source>Contacting Bugzilla...</source>
+        <comment>VymModel</comment>
+        <translation>Contattante Bugzilla...</translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation type="obsolete">Collega ad un&apos;altra mappa vym</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5185"/>
+        <source>Export map as image</source>
+        <translation>Esporta mappa come immagine</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Couldn&apos;t save QImage %1 in format %2</source>
+        <translation>Non è possibile salvare QImage %1 nel formato %2</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5225"/>
+        <source>Export map as PDF</source>
+        <translation>Esporta mappa come PDF</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5280"/>
+        <source>Export map as SVG</source>
+        <translation>Esporta mappa come SVG</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5314"/>
+        <source>Export map as XML</source>
+        <translation>Esporta mappa come XML</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5321"/>
+        <source>Export XML to directory</source>
+        <translation>Esporta XML in una cartella</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5367"/>
+        <source>Critical Export Error</source>
+        <translation>Errore critico nell&apos;esportazione</translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">Esporta  in LaTex</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>(still experimental)</source>
+        <translation>(ancora sperimentale)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>Export as csv</source>
+        <translation>Esporta come csv</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5786"/>
+        <source>Load background image</source>
+        <translation>Carica immagine di sfondo</translation>
+    </message>
+</context>
+<context>
+    <name>VymProcess</name>
+    <message>
+        <location filename="../vymprocess.cpp" line="43"/>
+        <location filename="../vymprocess.cpp" line="48"/>
+        <source>Critical Error</source>
+        <translation>Errore Critico</translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="44"/>
+        <source>Could not start %1</source>
+        <translation>Non è possibile iniziare %1</translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="49"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation>%1 non è terminato normalmente</translation>
+    </message>
+</context>
+<context>
+    <name>VymView</name>
+    <message>
+        <source>TreeEditor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation type="obsolete">Editor di albero</translation>
+    </message>
+    <message>
+        <source>SlideEditor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation type="obsolete">Editor di Diapositiva</translation>
+    </message>
+    <message>
+        <location filename="../vymview.cpp" line="34"/>
+        <source>Tree Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation>Editor di albero</translation>
+    </message>
+    <message>
+        <location filename="../vymview.cpp" line="52"/>
+        <source>Slide Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation>Editor di diapositiva</translation>
+    </message>
+</context>
+<context>
+    <name>WarningDialog</name>
+    <message>
+        <location filename="../warningdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>Finestra di Dialogo</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="117"/>
+        <location filename="../warningdialog.cpp" line="45"/>
+        <source>Cancel</source>
+        <translation>Cancella</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="124"/>
+        <source>Ok</source>
+        <translation>Ok</translation>
+    </message>
+    <message>
+        <source>VYM - Warning : Foo...</source>
+        <translation type="obsolete">VYM - Attenzione : Foo...</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="91"/>
+        <source>showAgainBox</source>
+        <translation>mostraBoxAncora</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="10"/>
+        <source>Proceed</source>
+        <translation>Procedi</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="12"/>
+        <source>Show this message again</source>
+        <translation>Mostra ancora questo messaggio</translation>
+    </message>
+</context>
+</TS>
diff --git a/lang/vym.ja.ts b/lang/vym.ja.ts
new file mode 100644 (file)
index 0000000..0d82108
--- /dev/null
@@ -0,0 +1,4033 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="ja_JP">
+<context>
+    <name>AboutDialog</name>
+    <message>
+        <location filename="../aboutdialog.cpp" line="106"/>
+        <source>Credits</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="221"/>
+        <source>License</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="226"/>
+        <source>Ok</source>
+        <comment>Ok Button</comment>
+        <translation>OK</translation>
+    </message>
+</context>
+<context>
+    <name>AboutTextBrowser</name>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>設定を利用してください-></translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="246"/>
+        <source>Warning</source>
+        <comment>About window</comment>
+        <translation>警告</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="247"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <comment>About window</comment>
+        <translation>%1を開くためのビューワー·ソフトが見つかりませんでした。</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Set application to open an URL...</source>
+        <translation>URLを開けるようにアプリを設定する...</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyEditor</name>
+    <message>
+        <location filename="../branchpropeditor.ui" line="20"/>
+        <source>Branch Property Editor</source>
+        <translation>ブランチ·プロパティ·エディタ</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="30"/>
+        <source>Frame</source>
+        <translation>フレーム</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="51"/>
+        <source>Geometry</source>
+        <translation>ジオメトリ</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="64"/>
+        <source>No Frame</source>
+        <translation>フレーム無し</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="69"/>
+        <source>Rectangle</source>
+        <translation>長方形</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="74"/>
+        <source>Rounded Rectangle</source>
+        <translation>丸めの長方形</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="79"/>
+        <source>Ellipse</source>
+        <translation>楕円</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="84"/>
+        <source>Cloud</source>
+        <translation>雲</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="105"/>
+        <source>Padding</source>
+        <translation>パディング</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="112"/>
+        <source>Borderline width</source>
+        <translation>ボーダーラインの幅</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="136"/>
+        <source>Include children</source>
+        <translation>チャイルドブランチを含む</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="169"/>
+        <source>Colors</source>
+        <translation>色</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="209"/>
+        <source>Borderline color</source>
+        <translation>ボーダーラインの色</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="232"/>
+        <source>Background color</source>
+        <translation>バックグラウンドの色</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="261"/>
+        <source>Layout</source>
+        <translation>レイアウト</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="269"/>
+        <source>Include images horizontally</source>
+        <translation>水平方向に画像を含める</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="276"/>
+        <source>Include images vertically</source>
+        <translation>垂直方向に画像を含める</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="283"/>
+        <source>Free positioning of children (experimental!)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="306"/>
+        <source>Link</source>
+        <translation>リンク</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="312"/>
+        <source>Hide link if unselected</source>
+        <translation>選択されていない場合のリンクを非表示にする</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="333"/>
+        <source>Attributes</source>
+        <translation>アトリビュート</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="359"/>
+        <source>+</source>
+        <translation>+</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="366"/>
+        <source>-</source>
+        <translation>-</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.cpp" line="19"/>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation>プロパティ·エディタ</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadAgent</name>
+    <message>
+        <location filename="../downloadagent.cpp" line="191"/>
+        <location filename="../downloadagent.cpp" line="195"/>
+        <source>Warning</source>
+        <translation type="unfinished">警告</translation>
+    </message>
+</context>
+<context>
+    <name>EditXLinkDialog</name>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="20"/>
+        <source>Edit XLink</source>
+        <translation>XLINKを編集</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="40"/>
+        <source>Arrow begin:</source>
+        <translation>矢印の始まり:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="63"/>
+        <source>XLink width:</source>
+        <translation>XLinkの幅:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="79"/>
+        <source>Use color of heading</source>
+        <translation>ヘッダーの色を使用</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="177"/>
+        <source>Line style:</source>
+        <extracomment>Linestyle in Edit XLink dialog</extracomment>
+        <translation>ライン·スタイル:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="190"/>
+        <source>Arrow end:</source>
+        <translation>矢印の終わり:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="253"/>
+        <source>Close</source>
+        <translation>閉じる</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="109"/>
+        <source>XLink color:</source>
+        <translation>Xlinkの色:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="151"/>
+        <source>Use as default:</source>
+        <translation>デフォルトとして使用:</translation>
+    </message>
+</context>
+<context>
+    <name>ExportHTMLDialog</name>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="26"/>
+        <source>Export HTML</source>
+        <translation>HTMLエクスポート</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="61"/>
+        <source>Export to directory:</source>
+        <translation>ディレクトリにエクスポート:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="90"/>
+        <location filename="../exporthtmldialog.ui" line="267"/>
+        <location filename="../exporthtmldialog.ui" line="280"/>
+        <location filename="../exporthtmldialog.ui" line="353"/>
+        <source>Browse</source>
+        <translation>ブラウズする</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="117"/>
+        <source>Options</source>
+        <translation>オプション</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="138"/>
+        <source>Image of map</source>
+        <translation>マップのイメージ</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="145"/>
+        <source>Include images</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="152"/>
+        <source>Table of contents</source>
+        <translation>目次</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="159"/>
+        <source>Task flags</source>
+        <translation>タスク·フラッグ</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="166"/>
+        <source>General flags</source>
+        <translation>一般フラッグ</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="173"/>
+        <source>Number sections</source>
+        <translation>数字セクション</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="231"/>
+        <source>Copy CSS from </source>
+        <translation>CSSをコピー</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="251"/>
+        <source>Use CSS from</source>
+        <translation>CSSを使う</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="186"/>
+        <source>Colored headings in text</source>
+        <translation>テキストに着色見出し</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="199"/>
+        <source>Save settings in map</source>
+        <translation>マップ内の設定を保存</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="216"/>
+        <source>Stylesheets</source>
+        <translation>スタイルシート</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="297"/>
+        <source>Scripts</source>
+        <translation>スクリプト</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="327"/>
+        <source>After Export:</source>
+        <translation>エクスポート後:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="382"/>
+        <source>Cancel</source>
+        <translation>キャンセル</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="389"/>
+        <source>Export</source>
+        <translation>エクスポート</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>Warning</source>
+        <translation>警告</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>The settings saved in the map would like to run script:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation>マップに保存された設定が、スクリプトを実行します:
+
+%1
+
+許可の確認してください!
+</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="123"/>
+        <source>VYM - Export HTML to directory</source>
+        <translation>VYM - ディレクトリにHTMLファイルをエクスポート</translation>
+    </message>
+</context>
+<context>
+    <name>ExtraInfoDialog</name>
+    <message>
+        <location filename="../extrainfodialog.ui" line="15"/>
+        <source>VYM - Info</source>
+        <translation>VYM - 詳細</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="36"/>
+        <source>Map:</source>
+        <translation>マップ:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="53"/>
+        <source>Title:</source>
+        <translation>タイトル:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="63"/>
+        <source>Author:</source>
+        <translation>著者:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="86"/>
+        <source>Comment:</source>
+        <translation>コメント:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="96"/>
+        <source>Statistics:</source>
+        <translation>統計:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="139"/>
+        <source>Cancel</source>
+        <translation>キャンセル</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="146"/>
+        <source>Close</source>
+        <translation>閉じる</translation>
+    </message>
+</context>
+<context>
+    <name>FindWidget</name>
+    <message>
+        <location filename="../findwidget.cpp" line="25"/>
+        <source>Find:</source>
+        <comment>FindWidget</comment>
+        <translation>検索:</translation>
+    </message>
+</context>
+<context>
+    <name>Heading of mapcenter in new map</name>
+    <message>
+        <source>New map</source>
+        <translation type="vanished">新しいマップ</translation>
+    </message>
+</context>
+<context>
+    <name>HeadingEditor</name>
+    <message>
+        <location filename="../headingeditor.cpp" line="9"/>
+        <source>Heading Editor</source>
+        <comment>Window caption</comment>
+        <translation>ヘッダー·エディタ</translation>
+    </message>
+</context>
+<context>
+    <name>HistoryWindow</name>
+    <message>
+        <location filename="../historywindow.ui" line="13"/>
+        <source>Dialog</source>
+        <translation>ダイアログボックス</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="50"/>
+        <source>Redo</source>
+        <translation>やり直し</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="72"/>
+        <source>Time</source>
+        <translation>タイム</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="77"/>
+        <source>Comment</source>
+        <translation>コメント</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="85"/>
+        <source>Undo</source>
+        <translation>元に戻す</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="122"/>
+        <source>Close</source>
+        <translation>閉じる</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="17"/>
+        <source>Action</source>
+        <comment>Table with actions</comment>
+        <translation>アクション</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="20"/>
+        <source>Comment</source>
+        <comment>Table with actions</comment>
+        <translation>コメント</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="23"/>
+        <source>Undo action</source>
+        <comment>Table with actions</comment>
+        <translation>アクションを元に戻す</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="125"/>
+        <source>Current state</source>
+        <comment>Current bar in history hwindow</comment>
+        <translation>現状態</translation>
+    </message>
+</context>
+<context>
+    <name>LineEditDialog</name>
+    <message>
+        <location filename="../lineeditdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>ダイアログボックス</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="26"/>
+        <source>TextLabel</source>
+        <translation>テキストラベル</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="89"/>
+        <location filename="../lineeditdialog.cpp" line="17"/>
+        <source>Cancel</source>
+        <translation>キャンセル</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="99"/>
+        <location filename="../lineeditdialog.cpp" line="9"/>
+        <source>Ok</source>
+        <translation>OK</translation>
+    </message>
+</context>
+<context>
+    <name>LockedFileDialog</name>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished">ダイアログボックス</translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="116"/>
+        <location filename="../lockedfiledialog.cpp" line="7"/>
+        <source>Delete lockfile</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="123"/>
+        <location filename="../lockedfiledialog.cpp" line="6"/>
+        <source>Open readonly</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Main</name>
+    <message>
+        <location filename="../mainwindow.cpp" line="1883"/>
+        <source>Set &amp;Color</source>
+        <translation>色設定(&amp;C)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1928"/>
+        <source>Linkstyle Line</source>
+        <translation>リンクスタイル:ライン</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1942"/>
+        <source>Linkstyle Thick Line</source>
+        <translation>リンクスタイル:太ライン</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1981"/>
+        <source>Set &amp;Background Color</source>
+        <translation>バックグラウンドの色設定(&amp;B)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1995"/>
+        <source>&amp;View</source>
+        <translation>表示(&amp;V)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3460"/>
+        <source>Overwrite</source>
+        <translation>上書きする</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3188"/>
+        <location filename="../mainwindow.cpp" line="3235"/>
+        <location filename="../mainwindow.cpp" line="3461"/>
+        <source>Cancel</source>
+        <translation>キャンセル</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3187"/>
+        <source>Open anyway</source>
+        <translation>とにかく開いてみる</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3234"/>
+        <source>Create</source>
+        <translation>新規作成</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3303"/>
+        <source>Load vym map</source>
+        <translation>VYMマップを開く</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3306"/>
+        <source>Import: Add vym map to selection</source>
+        <translation>インポート:選択にVYMマップを追加</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3309"/>
+        <source>Import: Replace selection with vym map</source>
+        <translation>インポート:選択をVYMマップに置き換え</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3775"/>
+        <source>Save modified map before closing it</source>
+        <translation>閉じる前に変更されたマップを保存</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3776"/>
+        <source>Discard changes</source>
+        <translation>変更破棄</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4244"/>
+        <source>Enter sleep time (number of days or date YYYY-MM-DD or DD.MM[.YYYY]</source>
+        <comment>task sleep time dialog</comment>
+        <translation>スリープタイムに入る(YYYY-MM-DD or DD.MM[.YYYY])</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4261"/>
+        <source>Couldn&apos;t set sleep time to %1.
+</source>
+        <translation>スリープタイムを%1に設定できませんでした。</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5045"/>
+        <source>VYM -Information:</source>
+        <translation>VYM - 詳細:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <location filename="../mainwindow.cpp" line="4130"/>
+        <source>Critical Error</source>
+        <translation>重大なエラー</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5456"/>
+        <source>Export in last used format (%1) to: %2</source>
+        <comment>status tip</comment>
+        <translation>最後に使用され形式(%1)でエクスポート:%2</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5787"/>
+        <source>Critcal error</source>
+        <translation>重大なエラー</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2723"/>
+        <source>Add</source>
+        <translation>追加</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="238"/>
+        <source>Note Editor</source>
+        <translation>ノートエディタ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="245"/>
+        <source>Heading Editor</source>
+        <translation>ヘッダー·エディタ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="260"/>
+        <source>Search results list</source>
+        <comment>FindResultWidget</comment>
+        <translation>検索結果</translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <comment>Toolbar for file actions</comment>
+        <translation type="vanished">マップ(&amp;M)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2913"/>
+        <source>File actions toolbar</source>
+        <comment>Toolbar for file actions</comment>
+        <translation>ファイル·アクション·ツールバー</translation>
+    </message>
+    <message>
+        <source>File</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">ファイル</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1067"/>
+        <source>PDF%1</source>
+        <comment>File export menu</comment>
+        <translation>PDF%1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1071"/>
+        <source>SVG%1</source>
+        <comment>File export menu</comment>
+        <translation>SVG%1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1040"/>
+        <source>Repeat last export (%1)</source>
+        <translation>最後に使ったエクスポートを再度使用(%1)</translation>
+    </message>
+    <message>
+        <source>KDE 4 Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="vanished">KDE4ブックマーク</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2931"/>
+        <source>Edit actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation>編集アクションツールバー</translation>
+    </message>
+    <message>
+        <source>Edit</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">編集</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1208"/>
+        <source>Add attribute</source>
+        <translation>アトリビュートを追加します</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1316"/>
+        <source>&amp;Detach</source>
+        <comment>Context menu</comment>
+        <translation>切り離す(&amp;D)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1317"/>
+        <source>Detach branch and use as mapcenter</source>
+        <comment>Context menu</comment>
+        <translation>ブランチを切り離し、マップの中心として使用</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1334"/>
+        <source>Sort children backwards</source>
+        <comment>Edit menu</comment>
+        <translation>反対にチャイルドブランチを並び替える</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1411"/>
+        <source>Expand all branches</source>
+        <comment>Edit menu</comment>
+        <translation>すべてのブランチを展開</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1419"/>
+        <source>Expand one level</source>
+        <comment>Edit menu</comment>
+        <translation>ブランチレベルを一つ展開</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1389"/>
+        <source>Collapse one level</source>
+        <comment>Edit menu</comment>
+        <translation>ブランチレベルを一つ折りたたむ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1400"/>
+        <source>Collapse unselected levels</source>
+        <comment>Edit menu</comment>
+        <translation>選択外のレベルを折りたたむ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1355"/>
+        <source>Unscroll children</source>
+        <comment>Edit menu</comment>
+        <translation>チャイルドブランチのスクロールを固定</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1360"/>
+        <source>Grow selection</source>
+        <comment>Edit menu</comment>
+        <translation>選択範囲を拡大</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1369"/>
+        <source>Shrink selection</source>
+        <comment>Edit menu</comment>
+        <translation>選択範囲を縮小</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1378"/>
+        <source>Reset selection size</source>
+        <comment>Edit menu</comment>
+        <translation>選択範囲をリセット</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1795"/>
+        <source>Toggle target...</source>
+        <comment>Edit menu</comment>
+        <translation>ターゲットを切り替える...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1804"/>
+        <source>Goto target...</source>
+        <comment>Edit menu</comment>
+        <translation>ターゲットに移動...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1812"/>
+        <source>Move to target...</source>
+        <comment>Edit menu</comment>
+        <translation>ブランチをターゲットに移す...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1864"/>
+        <source>Find duplicate URLs</source>
+        <comment>Edit menu</comment>
+        <translation>重複するURLを探す</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1446"/>
+        <source>Open all URLs in subtree (including scrolled branches)</source>
+        <comment>Edit menu</comment>
+        <translation>スクロールされたブランチを含みサブツリー内のすべてのURLを開く</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1461"/>
+        <source>Extract URLs from note</source>
+        <comment>Edit menu</comment>
+        <translation>ノートからURLを抽出</translation>
+    </message>
+    <message>
+        <source>Get data from Novell Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Novell Bugzillaからデータを取得</translation>
+    </message>
+    <message>
+        <source>Get data from Novell Bugzilla for subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Novell Bugzillaからサブツリー用のデータを取得</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1754"/>
+        <source>Add timestamp</source>
+        <comment>Edit menu</comment>
+        <translation>タイムスタンプを追加</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1743"/>
+        <source>Remove children</source>
+        <comment>Edit menu</comment>
+        <translation>チャイルドブランチを削除</translation>
+    </message>
+    <message>
+        <source>View shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">ショートカットを表示</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2972"/>
+        <source>Zoom toolbar</source>
+        <comment>View Toolbar name</comment>
+        <translation>ズームツールバー</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2042"/>
+        <source>Center on selection</source>
+        <comment>View action</comment>
+        <translation>選択を中心にする</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2982"/>
+        <source>Editors toolbar</source>
+        <comment>Editor Toolbar name</comment>
+        <translation>エディタ用ツールバー</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2994"/>
+        <source>Modifier modes toolbar</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation>編集モード用ツールバー</translation>
+    </message>
+    <message>
+        <source>Modes</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">モード</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2242"/>
+        <location filename="../mainwindow.cpp" line="2245"/>
+        <source>URL to Bugzilla </source>
+        <comment>SystemFlag</comment>
+        <translation>URLをBugzillaへ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2248"/>
+        <source>Map target</source>
+        <comment>SystemFlag</comment>
+        <translation>マップ·ターゲット</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2265"/>
+        <source>Standard Flags toolbar</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation>標準フラグツールバー</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2279"/>
+        <source>Status - ok,done</source>
+        <comment>Standardflag</comment>
+        <translation>ステータス - OK、終了</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2283"/>
+        <source>Status - work in progress</source>
+        <comment>Standardflag</comment>
+        <translation>ステータス - 作業進行中</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2287"/>
+        <source>Status - missing, not started</source>
+        <comment>Standardflag</comment>
+        <translation>ステータス - 不足、未開始</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2385"/>
+        <source>forward</source>
+        <comment>Freemind-Flag</comment>
+        <translation>フォワード</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2397"/>
+        <source>Don&apos;t flagrget</source>
+        <comment>Freemind-Flag</comment>
+        <translation>flagrgetしない</translation>
+    </message>
+    <message>
+        <source>Network shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">ネットワークのショートカット</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2630"/>
+        <source>Automatic layout</source>
+        <comment>Settings action</comment>
+        <translation>自動レイアウト</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2641"/>
+        <source>Test</source>
+        <translation>テスト</translation>
+    </message>
+    <message>
+        <source>Test shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">ショートカットのテスト</translation>
+    </message>
+    <message>
+        <source>Help shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">ヘルプのショートカット</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2803"/>
+        <source>Follow XLink</source>
+        <comment>Context menu</comment>
+        <translation>XLinkに従う</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2809"/>
+        <source>Follow XLink</source>
+        <comment>Context menu name</comment>
+        <translation>XLinkに従う</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3126"/>
+        <source>unnamed</source>
+        <comment>MainWindow: name for new and empty file</comment>
+        <translation>名無し</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3179"/>
+        <source>The map %1
+is already opened.Opening the same map in multiple editors may lead 
+to confusion when finishing working with vym.Do you want to</source>
+        <translation>マップ%1は、
+すでに開いています。複数の編集者が同じマップを開いて編集を
+すると仕上げの段階で混乱するかもしれません</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3228"/>
+        <source>This map does not exist:
+  %1
+Do you want to create a new one?</source>
+        <translation>このマップは存在しません:
+  %1
+新しいものを作成しますか?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3264"/>
+        <source>Loading: %1</source>
+        <comment>Progress dialog while loading maps</comment>
+        <translation>ロード中: %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3413"/>
+        <source>Saved  %1</source>
+        <translation>%1を保存しました</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3417"/>
+        <source>Couldn&apos;t save </source>
+        <translation>保存できませんでした</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3455"/>
+        <source>The file %1
+exists already. Do you want to</source>
+        <translation>%1は、既に
+存在します、どうします</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3770"/>
+        <source>The map %1 has been modified but not saved yet. Do you want to</source>
+        <translation>マップ%1は変更されましたが保存されていません。保存しますか</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4131"/>
+        <source>Couldn&apos;t open map %1</source>
+        <translation>マップ%1を開くことができませんでした</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2291"/>
+        <source>Take care!</source>
+        <comment>Standardflag</comment>
+        <translation>注意してください!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2295"/>
+        <source>Really?</source>
+        <comment>Standardflag</comment>
+        <translation>本当に?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2274"/>
+        <source>This won&apos;t work!</source>
+        <comment>Standardflag</comment>
+        <translation>これは上手く行かないよ!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2299"/>
+        <source>Good</source>
+        <comment>Standardflag</comment>
+        <translation>良</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2303"/>
+        <source>Bad</source>
+        <comment>Standardflag</comment>
+        <translation>駄目</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2312"/>
+        <source>Time critical</source>
+        <comment>Standardflag</comment>
+        <translation>重要時</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2318"/>
+        <source>Idea!</source>
+        <comment>Standardflag</comment>
+        <translation>アイデア!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2322"/>
+        <source>Important</source>
+        <comment>Standardflag</comment>
+        <translation>重要</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2326"/>
+        <source>Unimportant</source>
+        <comment>Standardflag</comment>
+        <translation>どうでもいい</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2339"/>
+        <source>I like this</source>
+        <comment>Standardflag</comment>
+        <translation>アイ・ライク・イット</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2343"/>
+        <source>I do not like this</source>
+        <comment>Standardflag</comment>
+        <translation>嫌い</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2356"/>
+        <source>Dangerous</source>
+        <comment>Standardflag</comment>
+        <translation>危険</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2364"/>
+        <source>This will help</source>
+        <comment>Standardflag</comment>
+        <translation>これが役立ちます</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <location filename="../mainwindow.cpp" line="3596"/>
+        <source>Import</source>
+        <translation>重要</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <location filename="../mainwindow.cpp" line="1087"/>
+        <location filename="../mainwindow.cpp" line="1091"/>
+        <location filename="../mainwindow.cpp" line="1095"/>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <source>(still experimental)</source>
+        <translation>(実験中)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1110"/>
+        <source>&amp;Print</source>
+        <translation>印刷(&amp;P)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <location filename="../mainwindow.cpp" line="3724"/>
+        <source>Export to</source>
+        <translation>エクスポート</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3745"/>
+        <location filename="../mainwindow.cpp" line="3875"/>
+        <location filename="../mainwindow.cpp" line="3918"/>
+        <location filename="../mainwindow.cpp" line="4260"/>
+        <location filename="../mainwindow.cpp" line="5800"/>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Warning</source>
+        <translation>警告</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3876"/>
+        <location filename="../mainwindow.cpp" line="5801"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <translation>%1を開くためのビューワー·ソフトが見つかりませんでした。</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>設定を利用してください-></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="4981"/>
+        <source>Set application to open an URL</source>
+        <translation>URLを開けるアプリを設定する</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4967"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Set application to open PDF files</source>
+        <translation>PDFを開けるアプリを設定する</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2307"/>
+        <source>Oh no!</source>
+        <comment>Standardflag</comment>
+        <translation>オゥ、ノーッ!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2315"/>
+        <source>Call...</source>
+        <comment>Standardflag</comment>
+        <translation>電話…</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2330"/>
+        <source>Very important!</source>
+        <comment>Standardflag</comment>
+        <translation>大変重要!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2334"/>
+        <source>Very unimportant!</source>
+        <comment>Standardflag</comment>
+        <translation>本当にどうでもいい!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2347"/>
+        <source>Rose</source>
+        <comment>Standardflag</comment>
+        <translation>薔薇</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2353"/>
+        <source>Surprise!</source>
+        <comment>Standardflag</comment>
+        <translation>サプライズ!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2360"/>
+        <source>Info</source>
+        <comment>Standardflag</comment>
+        <translation>詳細</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3533"/>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <source>Bookmarks</source>
+        <translation>ブックマーク</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find configuration for export to Open Office
+</source>
+        <translation type="vanished">オープンオフィスへのエクスポートのための構成が見つかりませんでした</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="252"/>
+        <source>Script Editor</source>
+        <translation>スクリプトエディタ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="314"/>
+        <source>Task list</source>
+        <comment>TaskEditor</comment>
+        <translation>タスク·リスト</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="273"/>
+        <source>Script Editor</source>
+        <comment>ScriptEditor</comment>
+        <translation>スクリプトエディタ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="124"/>
+        <source>Main window</source>
+        <comment>Shortcut scope</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="218"/>
+        <source>Main window</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="219"/>
+        <source>Map Editors</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="220"/>
+        <source>Text Editors</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="967"/>
+        <source>&amp;Map</source>
+        <comment>Menu for file actions</comment>
+        <translation type="unfinished">マップ(&amp;M)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="985"/>
+        <source>&amp;Open...</source>
+        <comment>File menu</comment>
+        <translation>開く(&amp;O)…</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="992"/>
+        <source>&amp;Restore last session</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">前セッションを復元する(&amp;R)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1000"/>
+        <source>Open Recent</source>
+        <comment>File menu</comment>
+        <translation>最近のファイルをオープン</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1003"/>
+        <source>&amp;Save...</source>
+        <comment>File menu</comment>
+        <translation>保存(&amp;S)…</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1011"/>
+        <source>Save &amp;As...</source>
+        <comment>File menu</comment>
+        <translation>新しい名前をつけて保存(&amp;As)...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1017"/>
+        <source>Import</source>
+        <comment>File menu</comment>
+        <translation>インポート</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1038"/>
+        <source>Export</source>
+        <comment>File menu</comment>
+        <translation>エクスポート</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1063"/>
+        <source>Image%1</source>
+        <comment>File export menu</comment>
+        <translation>画像%1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <source>Spreadsheet</source>
+        <translation type="unfinished">スプレッドシート</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1101"/>
+        <source>Properties</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1118"/>
+        <source>&amp;Close Map</source>
+        <comment>File menu</comment>
+        <translation>マップを閉じる(&amp;C)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1124"/>
+        <source>E&amp;xit</source>
+        <comment>File menu</comment>
+        <translation>終了(&amp;x)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1139"/>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation>元に戻す(&amp;U)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1150"/>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation>やり直し(&amp;R)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1161"/>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation>コピー(&amp;C)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1172"/>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation>切り取り(&amp;t)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1185"/>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation>貼り付け(&amp;P)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1197"/>
+        <source>Delete Selection</source>
+        <comment>Edit menu</comment>
+        <translation>選択範囲を除去</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1232"/>
+        <source>Add branch as child</source>
+        <comment>Edit menu</comment>
+        <translation>ブランチをチャイルドブランチとして追加</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1242"/>
+        <source>Add branch (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>ブランチを追加(挿入)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1252"/>
+        <location filename="../mainwindow.cpp" line="1262"/>
+        <source>Add branch above</source>
+        <comment>Edit menu</comment>
+        <translation>ブランチを上位に追加</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1272"/>
+        <location filename="../mainwindow.cpp" line="1281"/>
+        <source>Add branch below</source>
+        <comment>Edit menu</comment>
+        <translation>ブランチを下位に追加</translation>
+    </message>
+    <message>
+        <source>Move up</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">上げる</translation>
+    </message>
+    <message>
+        <source>Move down</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">下げる</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1343"/>
+        <source>Scroll branch</source>
+        <comment>Edit menu</comment>
+        <translation>ブランチをスクロール</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1587"/>
+        <source>Toggle task</source>
+        <comment>Edit menu</comment>
+        <translation>タスクを切り替える</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1598"/>
+        <source>Cycle task status</source>
+        <comment>Edit menu</comment>
+        <translation>タスクのステータスを循環する</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1609"/>
+        <source>Reset sleep</source>
+        <comment>Task sleep</comment>
+        <translation>スリープをリセット</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1620"/>
+        <location filename="../mainwindow.cpp" line="1643"/>
+        <location filename="../mainwindow.cpp" line="1654"/>
+        <location filename="../mainwindow.cpp" line="1665"/>
+        <location filename="../mainwindow.cpp" line="1676"/>
+        <source>Sleep %1 days</source>
+        <comment>Task sleep</comment>
+        <translation>スリープ%1日間</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1632"/>
+        <source>Sleep %1 day</source>
+        <comment>Task sleep</comment>
+        <translation>スリープ%1日間</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1687"/>
+        <location filename="../mainwindow.cpp" line="1698"/>
+        <source>Sleep %1 weeks</source>
+        <comment>Task sleep</comment>
+        <translation>スリープ%1週間</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1793"/>
+        <source>Select</source>
+        <comment>Select menu</comment>
+        <translation>選択</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1849"/>
+        <location filename="../mainwindow.cpp" line="1857"/>
+        <source>Find...</source>
+        <comment>Edit menu</comment>
+        <translation>検索…</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1430"/>
+        <source>Open URL</source>
+        <comment>Edit menu</comment>
+        <translation>URLを開く</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1438"/>
+        <source>Open URL in new tab</source>
+        <comment>Edit menu</comment>
+        <translation>新しいタブでURLを開く</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1454"/>
+        <source>Open all URLs in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>サブツリー内のすべてのURLを開く</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1470"/>
+        <source>Edit URL...</source>
+        <comment>Edit menu</comment>
+        <translation>URLを編集…</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1488"/>
+        <source>Use heading for URL</source>
+        <comment>Edit menu</comment>
+        <translation>URLの見出しを使用</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1538"/>
+        <source>Open linked map</source>
+        <comment>Edit menu</comment>
+        <translation>リンクされたマップを開く</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1552"/>
+        <source>Open all vym links in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>サブツリー内のすべてのVYMリンクを開く</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1560"/>
+        <source>Edit vym link...</source>
+        <comment>Edit menu</comment>
+        <translation>VYMリンクを編集...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1567"/>
+        <source>Delete vym link</source>
+        <comment>Edit menu</comment>
+        <translation>VYMリンクを除去</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1575"/>
+        <source>Hide in exports</source>
+        <comment>Edit menu</comment>
+        <translation>エクスポート用には非表示</translation>
+    </message>
+    <message>
+        <source>Edit Map Info...</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">マップの詳細を編集…</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1710"/>
+        <source>Add map (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>マップを追加(挿入)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1717"/>
+        <source>Add map (replace)</source>
+        <comment>Edit menu</comment>
+        <translation>マップを追加(交換)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1724"/>
+        <source>Save selection</source>
+        <comment>Edit menu</comment>
+        <translation>選択範囲を保存</translation>
+    </message>
+    <message>
+        <source>Add Image...</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">画像を追加…</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1876"/>
+        <source>F&amp;ormat</source>
+        <comment>Format menu</comment>
+        <translation>フォーマット(&amp;o)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1889"/>
+        <source>Pic&amp;k color</source>
+        <comment>Edit menu</comment>
+        <translation>色を選択(&amp;k)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1898"/>
+        <source>Color &amp;branch</source>
+        <comment>Edit menu</comment>
+        <translation>ブランチに着色(&amp;b)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1907"/>
+        <source>Color sub&amp;tree</source>
+        <comment>Edit menu</comment>
+        <translation>スブツリーに着色(&amp;t)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1958"/>
+        <source>Hide link if object is not selected</source>
+        <comment>Branch attribute</comment>
+        <translation>オブジェクトが選択されていない場合は、リンクを非表示</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1964"/>
+        <source>&amp;Use color of heading for link</source>
+        <comment>Branch attribute</comment>
+        <translation>見出しの色をリンクに使用(&amp;U)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2034"/>
+        <source>reset Zoom</source>
+        <comment>View action</comment>
+        <translation>ズームをリセット</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2002"/>
+        <source>Zoom in</source>
+        <comment>View action</comment>
+        <translation>ズームイン</translation>
+    </message>
+    <message>
+        <source>KDE 4 Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation type="vanished">KDE4ブックマーク</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1021"/>
+        <source>Firefox Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation>Firefoxブックマーク</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <source>Import Dir%1</source>
+        <comment>Import Filters</comment>
+        <translation>ディレクトリ%1をインポート</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1047"/>
+        <source>Webpage (HTML)...</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1051"/>
+        <source>Text (ASCII)...</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <source>Text with tasks</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1059"/>
+        <source>Text (A&amp;O report)...</source>
+        <comment>Export format</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1290"/>
+        <source>Move branch up</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1303"/>
+        <source>Move branch down</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1429"/>
+        <source>References Context menu</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1498"/>
+        <source>Bugzilla handling</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1499"/>
+        <source>Create URL to SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1510"/>
+        <source>Get data from SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1519"/>
+        <source>Get data from SUSE Bugzilla for subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1528"/>
+        <source>SUSE Fate tool handling</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1529"/>
+        <source>Create URL to SUSE FATE tool</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1537"/>
+        <source>vymlinks - linking maps</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1574"/>
+        <source>Exports</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1586"/>
+        <source>Tasks</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished">タスク</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1730"/>
+        <source>Removing parts of a map</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1733"/>
+        <source>Remove only branch and keep its children </source>
+        <comment>Edit menu</comment>
+        <translation>ブランチのみを削除し、チャイルドブランチを残す</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1753"/>
+        <source>Various</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1765"/>
+        <source>Map properties...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1771"/>
+        <source>Add   ...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1792"/>
+        <source>Selections</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1848"/>
+        <source>Search functions</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1878"/>
+        <source>Formatting</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1997"/>
+        <source>Views</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2010"/>
+        <source>Zoom out</source>
+        <comment>View action</comment>
+        <translation>ズームアウト</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2053"/>
+        <source>Note editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2064"/>
+        <source>Heading editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2174"/>
+        <source>Modifier modes</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2178"/>
+        <source>Use modifier to color branches</source>
+        <comment>Mode modifier</comment>
+        <translation>着色のために修飾子を使用</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2194"/>
+        <source>Use modifier to draw xLinks</source>
+        <comment>Mode modifier</comment>
+        <translation>XLinkを描くため修飾子を使用</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2518"/>
+        <source>Check for release notes and updates</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2525"/>
+        <source>Set author for new maps</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2531"/>
+        <source>Set application to open pdf files</source>
+        <comment>Settings action</comment>
+        <translation>PDFを開けるアプリを設定する</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2535"/>
+        <source>Set application to open external links</source>
+        <comment>Settings action</comment>
+        <translation>外部リンクを開くためのアプリを設定する</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2539"/>
+        <source>Set application to zip/unzip files</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2581"/>
+        <source>Edit branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>追加した後のブランチを編集</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2587"/>
+        <source>Select branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>追加した後のブランチを選択</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2593"/>
+        <source>Select existing heading</source>
+        <comment>Settings action</comment>
+        <translation>既存の見出しを選択</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2599"/>
+        <source>Exclusive flags</source>
+        <comment>Settings action</comment>
+        <translation>独占フラグ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2605"/>
+        <source>Use hide flags</source>
+        <comment>Settings action</comment>
+        <translation>非表示ブラグを利用する</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2613"/>
+        <source>Number of visible parents in task editor</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2618"/>
+        <source>Number of visible parents in find results window</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2673"/>
+        <source>&amp;Help</source>
+        <comment>Help menubar entry</comment>
+        <translation>ヘルプ(&amp;H)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2676"/>
+        <source>Open VYM Documentation (pdf) </source>
+        <comment>Help action</comment>
+        <translation>VYMのドキュメンテーションを開く(PDF)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2685"/>
+        <source>Download and show release notes</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2689"/>
+        <source>Check, if updates are available</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2698"/>
+        <source>Debug info</source>
+        <comment>Option to show debugging info</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2702"/>
+        <source>About VYM</source>
+        <comment>Help action</comment>
+        <translation>VYMについて</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2706"/>
+        <source>About QT</source>
+        <comment>Help action</comment>
+        <translation>QTについて</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2735"/>
+        <source>Remove</source>
+        <comment>Context menu name</comment>
+        <translation>除去する</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2796"/>
+        <source>XLinks</source>
+        <comment>Menu for file actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2798"/>
+        <source>Edit XLink</source>
+        <comment>Context menu name</comment>
+        <translation>XLINKを編集</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2818"/>
+        <source>Save image</source>
+        <comment>Context action</comment>
+        <translation>画像を保存</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <source>Couldn&apos;t save %1,
+because of existing lockfile:
+
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation type="unfinished">%1を保存できませんでした</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <source>Please allow vym to download release notes!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5968"/>
+        <source>&lt;html&gt;&lt;h3&gt;Do you allow vym to check online for updates or release notes?&lt;/h3&gt;If you allow, vym will &lt;ul&gt;&lt;li&gt;check once for release notes&lt;/li&gt;&lt;li&gt;check regulary for updates and notify you in case you should update, e.g. if there are important bug fixes available&lt;/li&gt;&lt;li&gt;receive a cookie with a random ID and send vym version and platform name and the ID  (e.g. &quot;Windows&quot; or &quot;Linux&quot;) back to me, Uwe Drechsel.&lt;p&gt;As vym developer I am motivated to see many people using vym. Of course I am curious to see, on which system vym is used. Maintaining each of the systems requires a lot of my (spare) time.&lt;/p&gt; &lt;p&gt;No other data than above will be sent, especially no private data will be collected or sent.(Check the source code, if you don&apos;t believe.)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;If you do not allow, &lt;ul&gt;&lt;li&gt;nothing will be downloaded and especially I will &lt;b&gt;not be motivated&lt;/b&gt; to spend some more thousands of hours on developing a free software tool.&lt;/ul&gt;Please allow vym to check for updates :-)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5997"/>
+        <source>Allow</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5998"/>
+        <source>Do not allow</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6004"/>
+        <source>Thank you for enabling downloads!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6027"/>
+        <source>Update information</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6033"/>
+        <source>vym is up to date.</source>
+        <comment>MainWindow</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6084"/>
+        <source>Checking for updates...</source>
+        <comment>MainWindow</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Please allow vym to check for updates!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="971"/>
+        <source>&amp;New map</source>
+        <comment>File menu</comment>
+        <translation>新しいマップを作成(&amp;N)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="280"/>
+        <source>Property Editor</source>
+        <comment>PropertyEditor</comment>
+        <translation>プロパティ·エディタ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="287"/>
+        <source>History window</source>
+        <comment>HistoryWidget</comment>
+        <translation>履歴ウィンドウ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="978"/>
+        <source>&amp;Copy to new map</source>
+        <comment>File menu</comment>
+        <translation>新しいマップにコピーする(&amp;C)</translation>
+    </message>
+    <message>
+        <source>&amp;Restore last session</source>
+        <comment>File menu</comment>
+        <translation type="vanished">前セッションを復元する(&amp;R)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1135"/>
+        <source>E&amp;dit</source>
+        <comment>Edit menu</comment>
+        <translation>編集(&amp;E)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1221"/>
+        <source>Add mapcenter</source>
+        <comment>Canvas context menu</comment>
+        <translation>新しいマップの中心を追加</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1325"/>
+        <source>Sort children</source>
+        <comment>Edit menu</comment>
+        <translation>チャイルドブランチを並び替える</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1479"/>
+        <source>Edit local URL...</source>
+        <comment>Edit menu</comment>
+        <translation>ローカルURLを編集…</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Novell BugzillaへのURLを作成する</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell FATE</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Novell FATEへのURLを作成する</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1545"/>
+        <source>Open linked map in background tab</source>
+        <comment>Edit menu</comment>
+        <translation>リンクマップのタブをバックグラウンドで開く</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1779"/>
+        <source>Property window</source>
+        <comment>Dialog to edit properties of selection</comment>
+        <translation>プロパティ·ウィンドウ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1820"/>
+        <source>Select previous</source>
+        <comment>Edit menu</comment>
+        <translation>前の選択</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1830"/>
+        <source>Select next</source>
+        <comment>Edit menu</comment>
+        <translation>次の選択</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1840"/>
+        <source>Unselect all</source>
+        <comment>Edit menu</comment>
+        <translation>すべて選択解除</translation>
+    </message>
+    <message>
+        <source>Format shortcuts</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">ショートカットをフォーマット</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1918"/>
+        <source>Select default font</source>
+        <comment>Branch attribute</comment>
+        <translation>デフォルトのフォントを選択</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1935"/>
+        <source>Linkstyle Curve</source>
+        <translation>リンクスタイル:カーブ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1949"/>
+        <source>Linkstyle Thick Curve</source>
+        <translation>リンクスタイル:太いカーブ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1971"/>
+        <source>Set &amp;Link Color</source>
+        <translation>リンクの色を設定(&amp;L)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1976"/>
+        <source>Set &amp;Selection Color</source>
+        <translation>選択色を設定(&amp;S)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1986"/>
+        <source>Set &amp;Background image</source>
+        <translation>バックグラウンドの画像設定(&amp;B)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1996"/>
+        <source>Toolbars</source>
+        <comment>Toolbars overview in view menu</comment>
+        <translation>ツールバー</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2018"/>
+        <source>Rotate counterclockwise</source>
+        <comment>View action</comment>
+        <translation>半時計回りに回す</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2026"/>
+        <source>Rotate rclockwise</source>
+        <comment>View action</comment>
+        <translation>時計回りに回す</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2076"/>
+        <source>Tree editor</source>
+        <comment>View action</comment>
+        <translation>ツリーエディタ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2084"/>
+        <source>Task editor</source>
+        <comment>View action</comment>
+        <translation>タスク・エディタ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2094"/>
+        <source>Slide editor</source>
+        <comment>View action</comment>
+        <translation>スライド·エディタ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2102"/>
+        <source>Script editor</source>
+        <comment>View action</comment>
+        <translation>スクリプトエディタ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2110"/>
+        <source>History Window</source>
+        <comment>View action</comment>
+        <translation>履歴ウィンドウ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2124"/>
+        <source>Antialiasing</source>
+        <comment>View action</comment>
+        <translation>アンチエイリアス</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2131"/>
+        <source>Smooth pixmap transformations</source>
+        <comment>View action</comment>
+        <translation>スムーズなピックスマップ変換</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2139"/>
+        <source>Next Map</source>
+        <comment>View action</comment>
+        <translation>次のマップ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2146"/>
+        <source>Previous Map</source>
+        <comment>View action</comment>
+        <translation>前のマップ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2153"/>
+        <source>Next slide</source>
+        <comment>View action</comment>
+        <translation>次のスライド</translation>
+    </message>
+    <message>
+        <source>Next slide</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">次のスライド</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2160"/>
+        <source>Previous slide</source>
+        <comment>View action</comment>
+        <translation>前のスライド</translation>
+    </message>
+    <message>
+        <source>Previous  slide</source>
+        <comment>Shortcut group</comment>
+        <translation type="vanished">前のスライド</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2213"/>
+        <location filename="../mainwindow.cpp" line="2216"/>
+        <location filename="../mainwindow.cpp" line="2219"/>
+        <location filename="../mainwindow.cpp" line="2223"/>
+        <location filename="../mainwindow.cpp" line="2226"/>
+        <location filename="../mainwindow.cpp" line="2229"/>
+        <location filename="../mainwindow.cpp" line="2233"/>
+        <location filename="../mainwindow.cpp" line="2236"/>
+        <source>Note</source>
+        <comment>SystemFlag</comment>
+        <translation>ノート</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2239"/>
+        <source>URL to Document </source>
+        <comment>SystemFlag</comment>
+        <translation>URLから文書に</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2251"/>
+        <source>Link to another vym map</source>
+        <comment>SystemFlag</comment>
+        <translation>別のVYMマップへリンクっする</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2254"/>
+        <source>subtree is scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation>ブツリーがスクロールされます</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2257"/>
+        <source>subtree is temporary scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation>サブツリーは、一時的にスクロールされます</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2260"/>
+        <source>Hide object in exported maps</source>
+        <comment>SystemFlag</comment>
+        <translation>エクスポートしたマップ内のオブジェクトを非表示にする</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2350"/>
+        <source>I just love...</source>
+        <comment>Standardflag</comment>
+        <translation>大好き...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2369"/>
+        <source>Important</source>
+        <comment>Freemind-Flag</comment>
+        <translation>重要</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2376"/>
+        <source>Priority</source>
+        <comment>Freemind-Flag</comment>
+        <translation>優先順位</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2381"/>
+        <source>Back</source>
+        <comment>Freemind-Flag</comment>
+        <translation>戻る</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2389"/>
+        <source>Look here</source>
+        <comment>Freemind-Flag</comment>
+        <translation>ここを見て</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2393"/>
+        <source>Dangerous</source>
+        <comment>Freemind-Flag</comment>
+        <translation>危険</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2401"/>
+        <source>Flag</source>
+        <comment>Freemind-Flag</comment>
+        <translation>フラグ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2406"/>
+        <source>Home</source>
+        <comment>Freemind-Flag</comment>
+        <translation>ホーム</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2410"/>
+        <source>Telephone</source>
+        <comment>Freemind-Flag</comment>
+        <translation>電話</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2414"/>
+        <source>Music</source>
+        <comment>Freemind-Flag</comment>
+        <translation>音楽</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2418"/>
+        <source>Mailbox</source>
+        <comment>Freemind-Flag</comment>
+        <translation>メールボックス</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2422"/>
+        <source>Maix</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Maix</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2426"/>
+        <source>Password</source>
+        <comment>Freemind-Flag</comment>
+        <translation>パスワード</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2430"/>
+        <source>To be improved</source>
+        <comment>Freemind-Flag</comment>
+        <translation>
+改善すべきポイント</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2434"/>
+        <source>Stop</source>
+        <comment>Freemind-Flag</comment>
+        <translation>止まれ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2438"/>
+        <source>Magic</source>
+        <comment>Freemind-Flag</comment>
+        <translation>魔法</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2442"/>
+        <source>To be discussed</source>
+        <comment>Freemind-Flag</comment>
+        <translation>検討されるポイント</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2446"/>
+        <source>Reminder</source>
+        <comment>Freemind-Flag</comment>
+        <translation>備忘</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2450"/>
+        <source>Excellent</source>
+        <comment>Freemind-Flag</comment>
+        <translation>エクセレント</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2454"/>
+        <source>Linux</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Linux</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2458"/>
+        <source>Sweet</source>
+        <comment>Freemind-Flag</comment>
+        <translation>スウィート</translation>
+    </message>
+    <message>
+        <source>Flags toolbar</source>
+        <translation type="vanished">フラグ·ツールバー</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2514"/>
+        <source>Settings</source>
+        <translation>設定</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2543"/>
+        <source>Set path for macros</source>
+        <comment>Settings action</comment>
+        <translation>マクロのパスの設定</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2547"/>
+        <source>Set number of undo levels</source>
+        <comment>Settings action</comment>
+        <translation>元に戻す可能回数を設定</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2553"/>
+        <source>Autosave</source>
+        <comment>Settings action</comment>
+        <translation>自動保存</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2559"/>
+        <source>Autosave time</source>
+        <comment>Settings action</comment>
+        <translation>自動保存の街時間</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2572"/>
+        <source>Write backup file on save</source>
+        <comment>Settings action</comment>
+        <translation>保存時にバックアップファイルを書く</translation>
+    </message>
+    <message>
+        <source>Task editor: Set number of parents</source>
+        <comment>Settings action</comment>
+        <translation type="vanished">タスク・エディタ:親ブランチの数を設定</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2623"/>
+        <source>Animation</source>
+        <comment>Settings action</comment>
+        <translation>アニメーション</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2680"/>
+        <source>Open VYM example maps </source>
+        <comment>Help action</comment>
+        <translation>VYMのマップ例を開く</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2694"/>
+        <source>Show keyboard shortcuts</source>
+        <comment>Help action</comment>
+        <translation>キーボードのショートカットを表示</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2755"/>
+        <source>Tasks</source>
+        <comment>Context menu</comment>
+        <translation>タスク</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2772"/>
+        <source>References (URLs, vymLinks, ...)</source>
+        <comment>Context menu name</comment>
+        <translation>参考リンク(URLs, vymLinks, ...)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2922"/>
+        <source>Undo and clipboard toolbar</source>
+        <comment>Toolbar for redo/undo and clipboard</comment>
+        <translation>元に戻すとクリップボード·ツールバー</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2948"/>
+        <source>Selection toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation>選択ツールバー</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2956"/>
+        <source>URLs and vymLinks toolbar</source>
+        <comment>Toolbar for URLs and vymlinks</comment>
+        <translation>URLとvymLinksのツールバー</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2964"/>
+        <source>Colors toolbar</source>
+        <comment>Colors toolbar name</comment>
+        <translation>色のツールバー</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3314"/>
+        <source>or</source>
+        <comment>File Dialog</comment>
+        <translation>または</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3444"/>
+        <source>Save map as</source>
+        <translation>マップを名前をつけて保存</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3563"/>
+        <source>Load Freemind map</source>
+        <translation>Freemind mapを開く</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <source>Export as CSV</source>
+        <translation>CSVファイルとしてエクスポート</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3746"/>
+        <source>Couldn&apos;t find configuration for export to LibreOffice
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3919"/>
+        <source>Couldn&apos;t start %1 to open a new tab in %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3994"/>
+        <source>Enter URL:</source>
+        <translation>URLを入力:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4017"/>
+        <source>HTML</source>
+        <comment>Filedialog</comment>
+        <translation>HTML</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4018"/>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation>テキスト</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4019"/>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation>スプレッドシート</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4020"/>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation>テキスト文書</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4021"/>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation>画像</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4025"/>
+        <source>Set URL to a local file</source>
+        <translation>URLをローカルファイルに設定</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4183"/>
+        <location filename="../mainwindow.cpp" line="4185"/>
+        <source>Link to another map</source>
+        <translation>別のマップへのリンク</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4286"/>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation>マップ上には%1アイテムあります</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4304"/>
+        <source>branches</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4305"/>
+        <source>notes</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4306"/>
+        <source>images</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4307"/>
+        <source>tasks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4308"/>
+        <source>slides</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4309"/>
+        <source>xLinks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5000"/>
+        <location filename="../mainwindow.cpp" line="5010"/>
+        <source>Set application to zip/unzip files</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5028"/>
+        <source>Directory with vym macros:</source>
+        <translation>VYMマクロのディレクトリ:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5041"/>
+        <source>Number of undo/redo levels:</source>
+        <translation>元に戻す / やり直しの可能回数:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5046"/>
+        <source>Settings have been changed. The next map opened will have &quot;%1&quot; undo/redo levels</source>
+        <translation>元に戻す / やり直しの可能回数が&quot;%1&quot;に設定変更されました</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5066"/>
+        <source>Number of seconds before autosave:</source>
+        <translation>自動保存するまでの秒数:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5076"/>
+        <source>Set author for new maps (used in lockfile)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5077"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5088"/>
+        <source>Number of parents shown in find results:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5098"/>
+        <source>Number of parents shown for a task:</source>
+        <translation>タスクに表示できる親ブランチの数:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3092"/>
+        <source>(readonly)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5433"/>
+        <source>History for %1</source>
+        <comment>Window Caption</comment>
+        <translation>%1の履歴</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5788"/>
+        <source>Couldn&apos;t find the documentation %1 in:
+%2</source>
+        <translation>%1のドキュメンテーションが下記のロケーションで見つかりませんでした:
+%2</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5816"/>
+        <source>Load vym example map</source>
+        <translation>ロードVYMのマップ例</translation>
+    </message>
+</context>
+<context>
+    <name>MapEditor</name>
+    <message>
+        <location filename="../mapeditor.cpp" line="43"/>
+        <source>Map Editor</source>
+        <comment>Shortcut scope</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="111"/>
+        <location filename="../mapeditor.cpp" line="116"/>
+        <source>Edit heading</source>
+        <comment>MapEditor</comment>
+        <translation>ヘッダーの編集</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>MapEditor</comment>
+        <translation type="vanished">保存</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="510"/>
+        <source>Print vym map</source>
+        <comment>MapEditor</comment>
+        <translation>VYMマップを印刷する</translation>
+    </message>
+</context>
+<context>
+    <name>NoteEditor</name>
+    <message>
+        <location filename="../noteeditor.cpp" line="13"/>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation>ノートエディタ</translation>
+    </message>
+</context>
+<context>
+    <name>Process</name>
+    <message>
+        <source>Critical Error</source>
+        <translation type="vanished">重大なエラー</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation type="vanished">%1を起動できません</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="vanished">%1が正常に終了しませんでした</translation>
+    </message>
+</context>
+<context>
+    <name>QObject</name>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <location filename="../exports.cpp" line="381"/>
+        <location filename="../exports.cpp" line="511"/>
+        <location filename="../exports.cpp" line="954"/>
+        <location filename="../exports.cpp" line="1048"/>
+        <location filename="../exports.cpp" line="1128"/>
+        <location filename="../exports.cpp" line="1236"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <location filename="../exports.cpp" line="1333"/>
+        <location filename="../exports.cpp" line="1343"/>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Critical Export Error</source>
+        <translation>重大なエラー(エクスポート)</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="956"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <source>Could not write %1</source>
+        <translation>%1を書き込めませんでした</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="147"/>
+        <source>Exporting to %1 will overwrite the existing file:
+%2</source>
+        <translation>%1をエクスポートすると、既存のファイルが上書きされます:
+%2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="146"/>
+        <source>Warning: Overwriting file</source>
+        <translation>警告:ファイルの上書き</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <source>Could not export as AO to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="381"/>
+        <source>Could not export as ASCII to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="503"/>
+        <source>Export as CSV</source>
+        <translation>CSVファイルとしてエクスポート</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="511"/>
+        <source>Could not export as CSV to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="837"/>
+        <source>Contents:</source>
+        <comment>Used in HTML export</comment>
+        <translation>内容:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="893"/>
+        <source>Export aborted.</source>
+        <translation>エクスポートが中止されました。</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="934"/>
+        <source>Trying to create directory for flags:</source>
+        <translation>フラグ用のディレクトリを作成します:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="935"/>
+        <source>Could not create %1</source>
+        <translation>%1を作成できませんでした</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="909"/>
+        <location filename="../exports.cpp" line="933"/>
+        <location filename="../exports.cpp" line="944"/>
+        <source>Critical</source>
+        <translation>重要</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="910"/>
+        <source>Could not find stylesheet %1</source>
+        <translation>スタイルシート%1が見つかりませんでした</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="920"/>
+        <source>Error</source>
+        <comment>ExportHTML</comment>
+        <translation>エラー</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="921"/>
+        <source>Could not copy
+%1 to
+%2</source>
+        <comment>ExportHTML</comment>
+        <translation>%1を
+%2に
+コピーできませんでした</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="945"/>
+        <source>Could not copy %1 to %2</source>
+        <translation>%1を%2にコピーできませんでした</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="955"/>
+        <source>Trying to save HTML file:</source>
+        <translation>HTMLファイルを保存中です:</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="236"/>
+        <location filename="../exports.cpp" line="382"/>
+        <location filename="../exports.cpp" line="512"/>
+        <location filename="../exports.cpp" line="957"/>
+        <location filename="../exports.cpp" line="1049"/>
+        <location filename="../exports.cpp" line="1130"/>
+        <location filename="../exports.cpp" line="1309"/>
+        <source>Export failed.</source>
+        <translation>エクスポートが失敗しました。</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1048"/>
+        <source>Could not export as OrgMode to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1129"/>
+        <source>Could not export as LaTeX to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1189"/>
+        <source>Export as LibreOffice Impress presentation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1236"/>
+        <source>No objects in map!</source>
+        <translation>マップ内のオブジェクトがありません!</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1333"/>
+        <source>Couldn&apos;t read settings from &quot;%1&quot;</source>
+        <translation>&quot;%1&quot;の設定が読み込めません</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1343"/>
+        <source>Check &quot;%1&quot; in
+%2</source>
+        <translation>&quot;%1&quot;を%2で確認
+してください</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Could not read %1</source>
+        <translation>%1を読み込めませんでした</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="257"/>
+        <location filename="../file.cpp" line="272"/>
+        <location filename="../file.cpp" line="296"/>
+        <location filename="../file.cpp" line="305"/>
+        <location filename="../file.cpp" line="313"/>
+        <location filename="../file.cpp" line="323"/>
+        <location filename="../file.cpp" line="332"/>
+        <location filename="../file.cpp" line="340"/>
+        <location filename="../file.cpp" line="347"/>
+        <location filename="../file.cpp" line="356"/>
+        <location filename="../file.cpp" line="377"/>
+        <location filename="../file.cpp" line="400"/>
+        <location filename="../file.cpp" line="410"/>
+        <location filename="../file.cpp" line="423"/>
+        <location filename="../main.cpp" line="411"/>
+        <location filename="../xsltproc.cpp" line="78"/>
+        <location filename="../xsltproc.cpp" line="84"/>
+        <source>Critical Error</source>
+        <translation>重大なエラー</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="258"/>
+        <source>Couldn&apos;t move existing file out of the way before saving.</source>
+        <translation>保存する前に、既存のファイルを移動できませんでした。</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="273"/>
+        <location filename="../file.cpp" line="378"/>
+        <source>Couldn&apos;t start tool to decompress data.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="297"/>
+        <source>Couldn&apos;t start zip to compress data.</source>
+        <translation>データ圧縮のためのジップを起動できませんでした。</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="306"/>
+        <source>zip didn&apos;t exit normally</source>
+        <translation>ジップが正常に終了しませんでした</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="324"/>
+        <source>Couldn&apos;t rename %1 back to %2</source>
+        <translation>%1のファイル名をを%2に変更できませんでした</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="333"/>
+        <source>Couldn&apos;t remove target of old symbolic link %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="341"/>
+        <source>Couldn&apos;t rename output to target of old symbolic link %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="348"/>
+        <source>Couldn&apos;t link from %1 to target of old symbolic link %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="357"/>
+        <source>Saved %1, but couldn&apos;t remove %2</source>
+        <translation>%1を保存しましたが、%2を削除できませんでした</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="401"/>
+        <source>Couldn&apos;t start unzip to decompress data.</source>
+        <translation>データを解凍できませんでした。</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="411"/>
+        <source>unzip didn&apos;t exit normally</source>
+        <translation>解凍が正常に終了しませんでした</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="79"/>
+        <source>Could not start %1</source>
+        <translation>%1を起動できませんでした</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="85"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation>%1が正常に終了しませんでした</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="90"/>
+        <source>Overwrite</source>
+        <translation>上書き</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="91"/>
+        <source>Cancel</source>
+        <translation>キャンセル</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="560"/>
+        <location filename="../exports.cpp" line="590"/>
+        <source>Exporting the %1 bookmarks will overwrite
+your existing bookmarks file.</source>
+        <translation>ブックマーク%1をエクスポートすると、既存の
+ブックマークが上書きされます。</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="561"/>
+        <location filename="../exports.cpp" line="591"/>
+        <source>Warning: Overwriting %1 bookmarks</source>
+        <translation>警告:ブックマーク%1の上書き</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="579"/>
+        <location filename="../macros.cpp" line="39"/>
+        <location filename="../main.cpp" line="377"/>
+        <source>Warning</source>
+        <translation>警告</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="580"/>
+        <source>Couldn&apos;t find script %1
+to notifiy Browsers of changed bookmarks.</source>
+        <translation>スクリプト %1が見つかりませんでした。
+ブックマークの変更をブラウザに通知します。</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="56"/>
+        <location filename="../imports.cpp" line="18"/>
+        <location filename="../main.cpp" line="475"/>
+        <location filename="../scripteditor.cpp" line="77"/>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Error</source>
+        <translation>エラー</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="57"/>
+        <location filename="../imports.cpp" line="19"/>
+        <source>Couldn&apos;t access temporary directory
+</source>
+        <translation>テンポラリ·ディレクトリにアクセスできませんでした</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <location filename="../exports.cpp" line="373"/>
+        <source>Export as ASCII</source>
+        <translation>ASCIIとしてエクスポート</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <source>(still experimental)</source>
+        <translation>(実験中です)</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="84"/>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <comment>write directory</comment>
+        <translation>ディレクトリ%1が空ではありません。
+内容を上書きしますか?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3792"/>
+        <source>No Bugzilla client found.  For openSUSE you can install by (running as root):
+
+</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation>Bugzillaのクライアントが見つかりませんでした。openSUSE用のは、rootとして実行することによってインストールすることができます。:</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3797"/>
+        <source>Alternatively you can also add the repository
+and install the perl module for Bugzilla access using YaST</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation>別の方法としては、リポジトリを追加しYaSTを使用して、
+BugzillaのアクセスのためのPerlモジュールをインストールできます</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3800"/>
+        <source>Warning: Couldn&apos;t find Bugzilla client</source>
+        <comment>VymModel</comment>
+        <translation>警告:Bugzillaのクライアントが見つかりませんでした</translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="412"/>
+        <source>Couldn&apos;t find tool to unzip data. Please download and install 7z and set path in Settings menu:
+ </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="476"/>
+        <location filename="../scripteditor.cpp" line="78"/>
+        <source>Couldn&apos;t open &quot;%1&quot;
+%2.</source>
+        <translation>”%1”を開くことができませんでした:
+%2。</translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="80"/>
+        <source>Warning: Version Problem</source>
+        <translation>警告:バージョンに問題があります</translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="81"/>
+        <source>&lt;h3&gt;Map is newer than VYM&lt;/h3&gt;&lt;p&gt;The map you are just trying to load was saved using vym %1. The version of this vym is %2. If you run into problems after pressing the ok-button below, updating vym should help.&lt;/p&gt;</source>
+        <translation>&lt;h3&gt;マップがVYMより新しい様です。&lt;/h3&gt;&lt;p&gt;あなたの開こうとしているマップはVYMバージョン·%1です。現在使っているVYMのバージョンは%2です。OKを押したあとに問題が生じればVYMをアップグレードしてみてください。&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="40"/>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation>%1のマクロがみつかりませんでした。</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>設定を使用してください - &gt;</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Set directory for vym macros</source>
+        <translation>VYMマクロのディレクトリを設定</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Couldn&apos;t save &quot;%1&quot;</source>
+        <translation>%1を保存できませんでした</translation>
+    </message>
+</context>
+<context>
+    <name>ScriptEditor</name>
+    <message>
+        <location filename="../scripteditor.ui" line="14"/>
+        <source>Form</source>
+        <translation>フォーム</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="49"/>
+        <source>Tab 1</source>
+        <translation>タブ1</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="55"/>
+        <source>Save to selected slide</source>
+        <translation>選択したスライドに保存</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="91"/>
+        <location filename="../scripteditor.ui" line="145"/>
+        <source>Run</source>
+        <translation>実行</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="105"/>
+        <source>Tab 2</source>
+        <translation>タブ2</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="121"/>
+        <source>Current key:</source>
+        <translation>使用中のキー:</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="131"/>
+        <source>Load</source>
+        <translation>ロード</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="138"/>
+        <source>Save</source>
+        <translation>保存</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Warning</source>
+        <translation>警告</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="45"/>
+        <source>Slide</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation>スライド</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="46"/>
+        <source>Macro</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation>マクロ</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="65"/>
+        <source>Save</source>
+        <comment>ScriptEditor</comment>
+        <translation>保存</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <source>Couldn&apos;t get model to save script into slide!</source>
+        <translation>スライドにスクリプトを保存するためのモデルを取得できませんでした!</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Couldn&apos;t find slide to save script into slide!</source>
+        <translation>スライドにスクリプトを保存するためのスライドが見つかりませんでした!</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="143"/>
+        <source>Save script</source>
+        <translation>スクリプトを保存</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="155"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation>%1は、既に
+存在します。
+上書きしますか?</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="160"/>
+        <source>Overwrite</source>
+        <translation>上書き</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="161"/>
+        <source>Cancel</source>
+        <translation>キャンセル</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="184"/>
+        <source>Load script</source>
+        <translation>スクリプトをロード</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="194"/>
+        <source>Error</source>
+        <translation>エラー</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="195"/>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation>%1を開くことができませんでした。</translation>
+    </message>
+</context>
+<context>
+    <name>ShowTextDialog</name>
+    <message>
+        <location filename="../showtextdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>ダイアログボックス</translation>
+    </message>
+    <message>
+        <location filename="../showtextdialog.ui" line="50"/>
+        <source>Close</source>
+        <translation>閉じる</translation>
+    </message>
+</context>
+<context>
+    <name>TaskEditor</name>
+    <message>
+        <location filename="../taskeditor.cpp" line="38"/>
+        <source>Current map</source>
+        <comment>TaskEditor</comment>
+        <translation>現在のマップ</translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="45"/>
+        <source>Active tasks</source>
+        <comment>TaskEditor</comment>
+        <translation>アクティブ·タスク</translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="52"/>
+        <source>New tasks</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="68"/>
+        <location filename="../taskeditor.cpp" line="73"/>
+        <source>Edit heading</source>
+        <comment>TaskEditor</comment>
+        <translation>ヘッダーの編集</translation>
+    </message>
+</context>
+<context>
+    <name>TaskModel</name>
+    <message>
+        <location filename="../taskmodel.cpp" line="127"/>
+        <source>Prio</source>
+        <comment>TaskEditor</comment>
+        <translation>優先順位</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="129"/>
+        <source>Status</source>
+        <comment>TaskEditor</comment>
+        <translation>ステータス</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="131"/>
+        <source>Age total</source>
+        <comment>TaskEditor</comment>
+        <translation>合計時間</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="133"/>
+        <source>Age mod.</source>
+        <comment>TaskEditor</comment>
+        <translation>時間変更</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="135"/>
+        <source>Sleep</source>
+        <comment>TaskEditor</comment>
+        <translation>スリープ</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="137"/>
+        <source>Map</source>
+        <comment>TaskEditor</comment>
+        <translation>マップ</translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="139"/>
+        <source>Task</source>
+        <comment>TaskEditor</comment>
+        <translation>タスク</translation>
+    </message>
+</context>
+<context>
+    <name>TextEditor</name>
+    <message>
+        <location filename="../texteditor.cpp" line="273"/>
+        <source>&amp;Import...</source>
+        <translation>インポート(&amp;I)...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="283"/>
+        <source>&amp;Export...</source>
+        <translation>エクスポート(&amp;E)...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="293"/>
+        <source>Export &amp;As... (HTML)</source>
+        <translation>HTMLとしてエクスポート(&amp;A)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="298"/>
+        <source>Export &amp;As...(ASCII)</source>
+        <translation>ASCIIとしてエクスポート(&amp;A)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="308"/>
+        <source>&amp;Print...</source>
+        <translation>印刷(&amp;P)…</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <translation type="vanished">編集(&amp;E)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="332"/>
+        <source>&amp;Undo</source>
+        <translation>元に戻す(&amp;U)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="341"/>
+        <source>&amp;Redo</source>
+        <translation>やり直し(&amp;R)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="351"/>
+        <source>Select and copy &amp;all</source>
+        <translation>選択して全てコピー(&amp;a)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="359"/>
+        <source>&amp;Copy</source>
+        <translation>コピー(&amp;C)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="368"/>
+        <source>Cu&amp;t</source>
+        <translation>切り取り(&amp;t)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="377"/>
+        <source>&amp;Paste</source>
+        <translation>貼り付け(&amp;P)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="316"/>
+        <source>&amp;Delete All</source>
+        <translation>全て削除(&amp;D)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="271"/>
+        <location filename="../texteditor.cpp" line="325"/>
+        <location filename="../texteditor.cpp" line="389"/>
+        <source>Texteditor</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="329"/>
+        <source>Edi&amp;t</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="390"/>
+        <source>Font hints</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>フォント·ヒント</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="396"/>
+        <source>&amp;Font hint</source>
+        <translation>フォント·ヒント(&amp;F)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="407"/>
+        <source>&amp;Richtext</source>
+        <translation>リッチテキスト(&amp;R)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="417"/>
+        <source>Fonts</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>フォント</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="443"/>
+        <source>Format</source>
+        <comment>toolbar in texteditor</comment>
+        <translation>フォーマット</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="448"/>
+        <source>&amp;Color...</source>
+        <translation>色(&amp;C)…</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="454"/>
+        <source>&amp;Bold</source>
+        <translation>ボールド(&amp;B)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="464"/>
+        <source>&amp;Italic</source>
+        <translation>イタリック(&amp;I)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="474"/>
+        <source>&amp;Underline</source>
+        <translation>下線(&amp;U)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="512"/>
+        <source>&amp;Left</source>
+        <translation>左寄り(&amp;L)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="518"/>
+        <source>C&amp;enter</source>
+        <translation>中心(&amp;e)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="524"/>
+        <source>&amp;Right</source>
+        <translation>右より(&amp;R)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="530"/>
+        <source>&amp;Justify</source>
+        <translation>両端揃え(&amp;J)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="540"/>
+        <source>&amp;Settings</source>
+        <translation>設定(&amp;S)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="543"/>
+        <source>Set &amp;fixed font</source>
+        <translation>固定フォントを設定(&amp;f)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="548"/>
+        <source>Set &amp;variable font</source>
+        <translation>変化フォントを設定(&amp;v)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="553"/>
+        <source>&amp;fixed font is default</source>
+        <translation>固定フォントはデフォルト(&amp;f)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="704"/>
+        <source>Export Note to single file</source>
+        <translation>ノートを単一のファイルにエクスポート</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="724"/>
+        <location filename="../texteditor.cpp" line="800"/>
+        <source>Overwrite</source>
+        <translation>上書きする</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="725"/>
+        <location filename="../texteditor.cpp" line="801"/>
+        <source>Cancel</source>
+        <translation>キャンセル</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="785"/>
+        <source>Export Note to single file (ASCII)</source>
+        <translation>ノートを単一のファイルにエクスポート (ASCII)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="828"/>
+        <source>Print</source>
+        <comment>TextEditor</comment>
+        <translation>印刷</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="488"/>
+        <source>Subs&amp;cript</source>
+        <translation>添字(&amp;c)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="49"/>
+        <source>Text Editor</source>
+        <comment>Text Editor Window caption</comment>
+        <translation>テキストエディタ</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="498"/>
+        <source>Su&amp;perscript</source>
+        <translation>スーパースクリプト(&amp;p)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="566"/>
+        <source>Note Editor</source>
+        <translation>ノートエディタ</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="392"/>
+        <source>F&amp;ormat</source>
+        <translation>フォーマット(&amp;o)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="326"/>
+        <source>Edit Actions</source>
+        <translation>アクションを編集</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="267"/>
+        <source>Note Actions</source>
+        <translation>アクションをノート</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="48"/>
+        <source>Ready</source>
+        <comment>Statusbar message</comment>
+        <translation>準備完了</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="174"/>
+        <source>No filename available for this note.</source>
+        <comment>Statusbar message</comment>
+        <translation>このノートに利用可能なファイル名がありません。</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="269"/>
+        <source>&amp;Note</source>
+        <comment>Menubar</comment>
+        <translation>ノート(&amp;N)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="719"/>
+        <location filename="../texteditor.cpp" line="795"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation>%1は、既に
+存在します。
+上書きしますか?</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="743"/>
+        <source>Couldn&apos;t export note </source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation>ノートをエクスポートできませんでした</translation>
+    </message>
+</context>
+<context>
+    <name>TreeEditor</name>
+    <message>
+        <location filename="../treeeditor.cpp" line="27"/>
+        <source>Select upper object</source>
+        <comment>Tree Editor</comment>
+        <translation>上部のオブジェクトを選択する</translation>
+    </message>
+    <message>
+        <location filename="../treeeditor.cpp" line="33"/>
+        <source>Select lower object</source>
+        <comment>Tree Editor</comment>
+        <translation>下のオブジェクトを選択する</translation>
+    </message>
+</context>
+<context>
+    <name>VymModel</name>
+    <message>
+        <location filename="../vymmodel.cpp" line="126"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="149"/>
+        <source>unnamed</source>
+        <translation>名無し</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="445"/>
+        <location filename="../vymmodel.cpp" line="481"/>
+        <location filename="../vymmodel.cpp" line="566"/>
+        <location filename="../vymmodel.cpp" line="622"/>
+        <source>Critical Parse Error</source>
+        <translation>重大な解析エラー</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="501"/>
+        <location filename="../vymmodel.cpp" line="551"/>
+        <source>Critical Load Error</source>
+        <translation>重大な読み込みエラー</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="502"/>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation>テンポラリ·ディレクトリをロードする前に作成できませんでした</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="552"/>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation>.vymアーカイブ内のマップ(*.xmlファイル)が見つかりませんでした。</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="980"/>
+        <source>unknown user</source>
+        <comment>Default for lockfiles of maps</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1003"/>
+        <source>Warning: Map already opended</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="671"/>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation>マップ%1
+は圧縮VYMファイル形式を使用していませんでした。
+圧縮抜きの書き込みは、画像やフラッグを
+指定されたディレクトリ内のファイルに上書きする可能性があります。
+
+マップを書き込みますか</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="679"/>
+        <source>compressed (vym default)</source>
+        <translation>圧縮(VYMデフォルト)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="680"/>
+        <source>uncompressed</source>
+        <translation>圧縮抜き</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="681"/>
+        <location filename="../vymmodel.cpp" line="864"/>
+        <source>Cancel</source>
+        <translation>キャンセル</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="710"/>
+        <location filename="../vymmodel.cpp" line="715"/>
+        <source>Save Error</source>
+        <translation>保存エラー</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="711"/>
+        <source>%1
+could not be removed before saving</source>
+        <translation>%1
+を保存前に削除できませんでした</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="716"/>
+        <source>%1
+could not be renamed before saving</source>
+        <translation>%1
+を保存前に改名できませんでした</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="728"/>
+        <source>Critical Save Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="729"/>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation>テンポラリ·ディレクトリを保存する前に作成できませんでした</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <location filename="../vymmodel.cpp" line="5783"/>
+        <source>Images</source>
+        <translation>画像</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <source>All</source>
+        <comment>Filedialog</comment>
+        <translation>全て</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="792"/>
+        <source>Load image</source>
+        <translation>画像をロード</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="844"/>
+        <source>Save image</source>
+        <translation>画像を保存</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="856"/>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation>%1は、既に存在します。
+上書きしますか?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="863"/>
+        <source>Overwrite</source>
+        <translation>上書き</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Critical Error</source>
+        <translation>重大なエラー</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <source>Unsupported format in %1</source>
+        <translation>%1はサポートされていないフォーマットです</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation>%1を保存できませんでした</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Critical Import Error</source>
+        <translation>重大なエラー(インポート)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Cannot find the directory %1</source>
+        <translation>ディレクトリ%1がみつかりませんでした</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="962"/>
+        <location filename="../vymmodel.cpp" line="965"/>
+        <source>Choose directory structure to import</source>
+        <translation>インポートするディレクトリ構造を選択してください</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="999"/>
+        <source>Map seems to be already opened in another vym instance!
+
+ Map is locked by &quot;%1&quot; on &quot;%2&quot;
+
+Please only delete the lockfile, if you are sure nobody else is currently working on this map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1008"/>
+        <source>Removed lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1014"/>
+        <source>Couldn&apos;t remove lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1021"/>
+        <source>Cannot create lockfile of map! It will be opened in readonly mode.
+
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1024"/>
+        <source>Warning</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished">警告</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1116"/>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation>ディスク上のマップのファイルが変更されました:
+
+   %1
+
+新しいファイルと、そのマップを再ロードしますか?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1123"/>
+        <source>Reload</source>
+        <translation>再ロード</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1124"/>
+        <source>Ignore</source>
+        <translation>無視</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1013"/>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Warning</source>
+        <translation>警告</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <source>Redo failed:
+%1</source>
+        <translation>やり直し失敗:
+%1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1274"/>
+        <source>Autosave disabled during undo.</source>
+        <translation>自動保存は、元に戻す時には無効になっています。</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5280"/>
+        <source>Export map as SVG</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5314"/>
+        <source>Export map as XML</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Undo failed:
+%1</source>
+        <translation type="vanished">元に戻すこと失敗:
+%1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2001"/>
+        <source>Note</source>
+        <comment>FindAll in VymModel</comment>
+        <translation>ノート</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2725"/>
+        <source>Image</source>
+        <comment>Default name for new image</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2958"/>
+        <source>New map</source>
+        <comment>New map</comment>
+        <translation type="unfinished">新しいマップ</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3822"/>
+        <source>Contacting Bugzilla...</source>
+        <comment>VymModel</comment>
+        <translation>Bugzillaのに問い合わせ...</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Script aborted:
+%1</source>
+        <translation>スクリプト中断:
+%1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5185"/>
+        <source>Export map as image</source>
+        <translation>画像としてマップをエクスポート</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Couldn&apos;t save QImage %1 in format %2</source>
+        <translation>QImage %1を %2のフォーマットで保存できませんでした</translation>
+    </message>
+    <message>
+        <source>Exported: </source>
+        <comment>Export confirmation</comment>
+        <translation type="vanished">エクスポート済:</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5225"/>
+        <source>Export map as PDF</source>
+        <translation>PDFとしてマップをエクスポート</translation>
+    </message>
+    <message>
+        <source>Export map as scalable vector graphic</source>
+        <translation type="vanished">SVGとしてマップをエクスポート</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5321"/>
+        <source>Export XML to directory</source>
+        <translation>ディレクトリにXMLをエクスポート</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5367"/>
+        <source>Critical Export Error</source>
+        <translation>重大なエラー(エクスポート)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>(still experimental)</source>
+        <translation>(実験用)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>Export as csv</source>
+        <translation>CSVファイルとしてエクスポート</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5786"/>
+        <source>Load background image</source>
+        <translation>背景画像をロード</translation>
+    </message>
+</context>
+<context>
+    <name>VymProcess</name>
+    <message>
+        <location filename="../vymprocess.cpp" line="43"/>
+        <location filename="../vymprocess.cpp" line="48"/>
+        <source>Critical Error</source>
+        <translation type="unfinished">重大なエラー</translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="44"/>
+        <source>Could not start %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="49"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="unfinished">%1が正常に終了しませんでした</translation>
+    </message>
+</context>
+<context>
+    <name>VymView</name>
+    <message>
+        <location filename="../vymview.cpp" line="34"/>
+        <source>Tree Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation>ツリーエディタ</translation>
+    </message>
+    <message>
+        <location filename="../vymview.cpp" line="52"/>
+        <source>Slide Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation>スライド·エディタ</translation>
+    </message>
+</context>
+<context>
+    <name>WarningDialog</name>
+    <message>
+        <location filename="../warningdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>ダイアログボックス</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="91"/>
+        <source>showAgainBox</source>
+        <translation>showAgainBox</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="117"/>
+        <location filename="../warningdialog.cpp" line="45"/>
+        <source>Cancel</source>
+        <translation>キャンセル</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="124"/>
+        <source>Ok</source>
+        <translation>OK</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="10"/>
+        <source>Proceed</source>
+        <translation>続行</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="12"/>
+        <source>Show this message again</source>
+        <translation>今後このメッセージを表示</translation>
+    </message>
+</context>
+</TS>
diff --git a/lang/vym.pt_BR.ts b/lang/vym.pt_BR.ts
new file mode 100644 (file)
index 0000000..3d07a82
--- /dev/null
@@ -0,0 +1,5217 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="pt_BR">
+<context>
+    <name>AboutDialog</name>
+    <message>
+        <location filename="../aboutdialog.cpp" line="106"/>
+        <source>Credits</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="221"/>
+        <source>License</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="226"/>
+        <source>Ok</source>
+        <comment>Ok Button</comment>
+        <translation>OK</translation>
+    </message>
+</context>
+<context>
+    <name>AboutTextBrowser</name>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>Por favor use Configurações-&gt;</translation>
+    </message>
+    <message>
+        <source>Set application to open an URL</source>
+        <translation type="obsolete">Definir aplicação externa para abrir URL</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="246"/>
+        <source>Warning</source>
+        <comment>About window</comment>
+        <translation>Aviso</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="247"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <comment>About window</comment>
+        <translation>Não foi possível encontrar um programa para abrir %1.
+</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Set application to open an URL...</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>AttributeDialog</name>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Fechar</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyEditor</name>
+    <message>
+        <location filename="../branchpropeditor.ui" line="20"/>
+        <source>Branch Property Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="30"/>
+        <source>Frame</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="51"/>
+        <source>Geometry</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="64"/>
+        <source>No Frame</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="69"/>
+        <source>Rectangle</source>
+        <translation type="unfinished">Retângulo</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="74"/>
+        <source>Rounded Rectangle</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="79"/>
+        <source>Ellipse</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="84"/>
+        <source>Cloud</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="105"/>
+        <source>Padding</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="112"/>
+        <source>Borderline width</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="136"/>
+        <source>Include children</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="169"/>
+        <source>Colors</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="209"/>
+        <source>Borderline color</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="232"/>
+        <source>Background color</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="261"/>
+        <source>Layout</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="269"/>
+        <source>Include images horizontally</source>
+        <translation type="unfinished">Incluir imagens horizontalmente</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="276"/>
+        <source>Include images vertically</source>
+        <translation type="unfinished">Incluir imagens verticalmente</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="283"/>
+        <source>Free positioning of children (experimental!)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="306"/>
+        <source>Link</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="312"/>
+        <source>Hide link if unselected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="333"/>
+        <source>Attributes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="359"/>
+        <source>+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="366"/>
+        <source>-</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.cpp" line="19"/>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyWindow</name>
+    <message>
+        <source>Rectangle</source>
+        <translation type="obsolete">Retângulo</translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <translation type="obsolete">Incluir imagens horizontalmente</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <translation type="obsolete">Incluir imagens verticalmente</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Fechar</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadAgent</name>
+    <message>
+        <location filename="../downloadagent.cpp" line="191"/>
+        <location filename="../downloadagent.cpp" line="195"/>
+        <source>Warning</source>
+        <translation type="unfinished">Aviso</translation>
+    </message>
+</context>
+<context>
+    <name>EditXLinkDialog</name>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="20"/>
+        <source>Edit XLink</source>
+        <translation>Editar Ligação Externa</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="40"/>
+        <source>Arrow begin:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="63"/>
+        <source>XLink width:</source>
+        <translation>Largura:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="79"/>
+        <source>Use color of heading</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="177"/>
+        <source>Line style:</source>
+        <extracomment>Linestyle in Edit XLink dialog</extracomment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="190"/>
+        <source>Arrow end:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="253"/>
+        <source>Close</source>
+        <translation type="unfinished">Fechar</translation>
+    </message>
+    <message>
+        <source>Set color of heading</source>
+        <translation type="obsolete">Usar cor do tópico</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="109"/>
+        <source>XLink color:</source>
+        <translation>Cor: </translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="151"/>
+        <source>Use as default:</source>
+        <translation>Definir como padrão:</translation>
+    </message>
+    <message>
+        <source>Quit and delete XLink</source>
+        <translation type="obsolete">Sair e Apagar Ligação Externa</translation>
+    </message>
+    <message>
+        <source>Ok</source>
+        <translation type="obsolete">OK</translation>
+    </message>
+</context>
+<context>
+    <name>ExportHTMLDialog</name>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="26"/>
+        <source>Export HTML</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="61"/>
+        <source>Export to directory:</source>
+        <translation type="unfinished">Exportar para diretório:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="90"/>
+        <location filename="../exporthtmldialog.ui" line="267"/>
+        <location filename="../exporthtmldialog.ui" line="280"/>
+        <location filename="../exporthtmldialog.ui" line="353"/>
+        <source>Browse</source>
+        <translation type="unfinished">Navegar</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="117"/>
+        <source>Options</source>
+        <translation type="unfinished">Opções</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="138"/>
+        <source>Image of map</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="145"/>
+        <source>Include images</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="152"/>
+        <source>Table of contents</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="159"/>
+        <source>Task flags</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="166"/>
+        <source>General flags</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="173"/>
+        <source>Number sections</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="231"/>
+        <source>Copy CSS from </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="251"/>
+        <source>Use CSS from</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Include image</source>
+        <translation type="obsolete">Incluir imagem</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="186"/>
+        <source>Colored headings in text</source>
+        <translation type="unfinished">Tópicos com cores</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="199"/>
+        <source>Save settings in map</source>
+        <translation type="unfinished">Salvar configurações no mapa</translation>
+    </message>
+    <message>
+        <source>show output of external scripts</source>
+        <translation type="obsolete">Visualizar saída dos scripts externos</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="216"/>
+        <source>Stylesheets</source>
+        <translation type="unfinished">Estilos de página</translation>
+    </message>
+    <message>
+        <source>CSS:</source>
+        <translation type="obsolete">CSS:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="297"/>
+        <source>Scripts</source>
+        <translation type="unfinished">Scripts</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="327"/>
+        <source>After Export:</source>
+        <translation type="unfinished">Pós-exportação:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="382"/>
+        <source>Cancel</source>
+        <translation type="unfinished">Cancelar</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="389"/>
+        <source>Export</source>
+        <translation type="unfinished">Exportar</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>Warning</source>
+        <translation type="unfinished">Aviso</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>The settings saved in the map would like to run script:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="123"/>
+        <source>VYM - Export HTML to directory</source>
+        <translation type="unfinished">VYM - Exportar HTML para diretório</translation>
+    </message>
+</context>
+<context>
+    <name>ExportXHTMLDialog</name>
+    <message>
+        <source>Export XHTML</source>
+        <translation type="obsolete">Exportar HTML</translation>
+    </message>
+    <message>
+        <source>Export to directory:</source>
+        <translation type="obsolete">Exportar para diretório:</translation>
+    </message>
+    <message>
+        <source>Browse</source>
+        <translation type="obsolete">Navegar</translation>
+    </message>
+    <message>
+        <source>Options</source>
+        <translation type="obsolete">Opções</translation>
+    </message>
+    <message>
+        <source>show output of external scripts</source>
+        <translation type="obsolete">Visualizar saída dos scripts externos</translation>
+    </message>
+    <message>
+        <source>Include image</source>
+        <translation type="obsolete">Incluir imagem</translation>
+    </message>
+    <message>
+        <source>Colored headings in text</source>
+        <translation type="obsolete">Tópicos com cores</translation>
+    </message>
+    <message>
+        <source>Save settings in map</source>
+        <translation type="obsolete">Salvar configurações no mapa</translation>
+    </message>
+    <message>
+        <source>showWarnings e.g. if directory is not empty</source>
+        <translation type="obsolete">Mostrar avisos, ex: se o diretório não estiver vazio</translation>
+    </message>
+    <message>
+        <source>Stylesheets</source>
+        <translation type="obsolete">Estilos de página</translation>
+    </message>
+    <message>
+        <source>XSL:</source>
+        <translation type="obsolete">XSL:</translation>
+    </message>
+    <message>
+        <source>CSS:</source>
+        <translation type="obsolete">CSS:</translation>
+    </message>
+    <message>
+        <source>Scripts</source>
+        <translation type="obsolete">Scripts</translation>
+    </message>
+    <message>
+        <source>Before export:</source>
+        <translation type="obsolete">Pré-exportação:</translation>
+    </message>
+    <message>
+        <source>After Export:</source>
+        <translation type="obsolete">Pós-exportação:</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <translation type="obsolete">Exportar</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Cancelar</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="obsolete">Aviso</translation>
+    </message>
+    <message>
+        <source>The settings saved in the map would like to run scripts:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation type="obsolete">As configurações salvas no mapa permitem executar os scripts:
+
+%1
+
+Por favor, verifique se você
+realmente quer permitir isso!</translation>
+    </message>
+    <message>
+        <source>VYM - Export HTML to directory</source>
+        <translation type="obsolete">VYM - Exportar HTML para diretório</translation>
+    </message>
+    <message>
+        <source>VYM - Path to CSS file</source>
+        <translation type="obsolete">VYM - Caminho para o arquivo CSS</translation>
+    </message>
+    <message>
+        <source>VYM - Path to XSL file</source>
+        <translation type="obsolete">VYM - Caminho para arquivo XSL</translation>
+    </message>
+    <message>
+        <source>VYM - Path to pre export script</source>
+        <translation type="obsolete">VYM - Caminho para script de pré-exportação</translation>
+    </message>
+    <message>
+        <source>VYM - Path to post export script</source>
+        <translation type="obsolete">VYM - Caminho para script de pós-exportação</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <translation type="obsolete">Não foi possível abrir %1</translation>
+    </message>
+    <message>
+        <source>Could not write %1</source>
+        <translation type="obsolete">Não foi possível criar %1</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">Erro Crítico</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation type="obsolete">Não foi possível executar %1</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="obsolete">%1 não terminou normalmente</translation>
+    </message>
+</context>
+<context>
+    <name>ExtraInfoDialog</name>
+    <message>
+        <location filename="../extrainfodialog.ui" line="15"/>
+        <source>VYM - Info</source>
+        <translation>VYM - Informações</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="36"/>
+        <source>Map:</source>
+        <translation>Mapa:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="53"/>
+        <source>Title:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="63"/>
+        <source>Author:</source>
+        <translation>Autor:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="86"/>
+        <source>Comment:</source>
+        <translation>Comentário:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="96"/>
+        <source>Statistics:</source>
+        <translation>Estatísticas:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="139"/>
+        <source>Cancel</source>
+        <translation>Cancelar</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="146"/>
+        <source>Close</source>
+        <translation>Fechar</translation>
+    </message>
+</context>
+<context>
+    <name>FindWidget</name>
+    <message>
+        <location filename="../findwidget.cpp" line="25"/>
+        <source>Find:</source>
+        <comment>FindWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>FindWindow</name>
+    <message>
+        <source>Clear</source>
+        <translation type="obsolete">Limpar</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Cancelar</translation>
+    </message>
+    <message>
+        <source>Find</source>
+        <translation type="obsolete">Pesquisar</translation>
+    </message>
+    <message>
+        <source>Find Text</source>
+        <translation type="obsolete">Pesquisar Texto</translation>
+    </message>
+    <message>
+        <source>Text to find:</source>
+        <translation type="obsolete">Pesquisar:</translation>
+    </message>
+</context>
+<context>
+    <name>Heading of mapcenter in new map</name>
+    <message>
+        <source>New map</source>
+        <translation type="obsolete">Novo mapa</translation>
+    </message>
+</context>
+<context>
+    <name>HeadingEditor</name>
+    <message>
+        <location filename="../headingeditor.cpp" line="9"/>
+        <source>Heading Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HistoryWindow</name>
+    <message>
+        <location filename="../historywindow.ui" line="13"/>
+        <source>Dialog</source>
+        <translation>Diálogo</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="50"/>
+        <source>Redo</source>
+        <translation>Refazer</translation>
+    </message>
+    <message>
+        <source>New Row</source>
+        <translation type="obsolete">Nova Linha</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="72"/>
+        <source>Time</source>
+        <translation>Tempo</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="77"/>
+        <source>Comment</source>
+        <translation>Comentário</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="85"/>
+        <source>Undo</source>
+        <translation>Desfazer</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="122"/>
+        <source>Close</source>
+        <translation>Fechar</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="17"/>
+        <source>Action</source>
+        <comment>Table with actions</comment>
+        <translation>Ações</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="20"/>
+        <source>Comment</source>
+        <comment>Table with actions</comment>
+        <translation>Comentário</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="23"/>
+        <source>Undo action</source>
+        <comment>Table with actions</comment>
+        <translation>Desfazer ação</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="125"/>
+        <source>Current state</source>
+        <comment>Current bar in history hwindow</comment>
+        <translation>Atual</translation>
+    </message>
+</context>
+<context>
+    <name>LineEditDialog</name>
+    <message>
+        <location filename="../lineeditdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished">Diálogo</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="26"/>
+        <source>TextLabel</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="89"/>
+        <location filename="../lineeditdialog.cpp" line="17"/>
+        <source>Cancel</source>
+        <translation type="unfinished">Cancelar</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="99"/>
+        <location filename="../lineeditdialog.cpp" line="9"/>
+        <source>Ok</source>
+        <translation type="unfinished">OK</translation>
+    </message>
+</context>
+<context>
+    <name>LockedFileDialog</name>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished">Diálogo</translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="116"/>
+        <location filename="../lockedfiledialog.cpp" line="7"/>
+        <source>Delete lockfile</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="123"/>
+        <location filename="../lockedfiledialog.cpp" line="6"/>
+        <source>Open readonly</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Main</name>
+    <message>
+        <source>Close Map</source>
+        <translation type="obsolete">Fechar Mapa</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <translation type="obsolete">Desfazer</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <translation type="obsolete">Copiar</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="obsolete">Recortar</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <translation type="obsolete">Colar</translation>
+    </message>
+    <message>
+        <source>Move branch up</source>
+        <translation type="obsolete">Mover ramo acima</translation>
+    </message>
+    <message>
+        <source>Move branch down</source>
+        <translation type="obsolete">Mover ramo abaixo</translation>
+    </message>
+    <message>
+        <source>Scroll branch</source>
+        <translation type="obsolete">Contrair ramo</translation>
+    </message>
+    <message>
+        <source>Unscroll all</source>
+        <translation type="obsolete">Expandir ramos</translation>
+    </message>
+    <message>
+        <source>Find</source>
+        <translation type="obsolete">Pesquisar</translation>
+    </message>
+    <message>
+        <source>Open URL</source>
+        <translation type="obsolete">Abrir URL</translation>
+    </message>
+    <message>
+        <source>Edit URL</source>
+        <translation type="obsolete">Editar URL</translation>
+    </message>
+    <message>
+        <source>Use heading of selected branch as URL</source>
+        <translation type="obsolete">Usar tópico do ramo selecionado como URL</translation>
+    </message>
+    <message>
+        <source>Create URL to Bugzilla</source>
+        <translation type="obsolete">Criar URL para o Bugzilla</translation>
+    </message>
+    <message>
+        <source>Jump to another vym map, if needed load it first</source>
+        <translation type="obsolete">Ir para outro mapa VYM, se necessário ele será carregado antes</translation>
+    </message>
+    <message>
+        <source>Edit link to another vym map</source>
+        <translation type="obsolete">Editar ligação para outro mapa VYM</translation>
+    </message>
+    <message>
+        <source>Delete link to another vym map</source>
+        <translation type="obsolete">Apagar ligação para outro mapa VYM</translation>
+    </message>
+    <message>
+        <source>Edit Map Info</source>
+        <translation type="obsolete">Editar Informações</translation>
+    </message>
+    <message>
+        <source>edit Heading</source>
+        <translation type="obsolete">Editar Tópico</translation>
+    </message>
+    <message>
+        <source>Delete Selection</source>
+        <translation type="obsolete">Apagar Seleção</translation>
+    </message>
+    <message>
+        <source>Add a branch as child of selection</source>
+        <translation type="obsolete">Adicionar ramo como filho da seleção</translation>
+    </message>
+    <message>
+        <source>Add a branch above selection</source>
+        <translation type="obsolete">Adicionar ramo acima da seleção</translation>
+    </message>
+    <message>
+        <source>Add a branch below selection</source>
+        <translation type="obsolete">Adicionar ramo abaixo da seleção</translation>
+    </message>
+    <message>
+        <source>Add map at selection</source>
+        <translation type="obsolete">Adicionar mapa à seleção</translation>
+    </message>
+    <message>
+        <source>Replace selection with map</source>
+        <translation type="obsolete">Substituir seleção com mapa</translation>
+    </message>
+    <message>
+        <source>Save selection</source>
+        <translation type="obsolete">Salvar seleção</translation>
+    </message>
+    <message>
+        <source>Select upper branch</source>
+        <translation type="obsolete">Selecionar ramo mais acima</translation>
+    </message>
+    <message>
+        <source>Select lower branch</source>
+        <translation type="obsolete">Selecionar ramo mais abaixo</translation>
+    </message>
+    <message>
+        <source>Select left branch</source>
+        <translation type="obsolete">Selecionar ramo da esquerda</translation>
+    </message>
+    <message>
+        <source>Select right branch</source>
+        <translation type="obsolete">Selecionar ramo da direita</translation>
+    </message>
+    <message>
+        <source>Select first branch</source>
+        <translation type="obsolete">Selecionar primeiro ramo</translation>
+    </message>
+    <message>
+        <source>Select last branch</source>
+        <translation type="obsolete">Selecionar último ramo</translation>
+    </message>
+    <message>
+        <source>Add Image</source>
+        <translation type="obsolete">Adicionar Imagem</translation>
+    </message>
+    <message>
+        <source>Set Color</source>
+        <translation type="obsolete">Definir Cor</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1883"/>
+        <source>Set &amp;Color</source>
+        <translation>Definir &amp;Cor</translation>
+    </message>
+    <message>
+        <source>Pick color
+Hint: You can pick a color from another branch and color using CTRL+Left Button</source>
+        <translation type="obsolete">Capturar cor
+Dica: Você pode capturar a cor de outro ramo ou região usando CTRL+Botão esquerdo do mouse</translation>
+    </message>
+    <message>
+        <source>Color branch</source>
+        <translation type="obsolete">Cor do ramo</translation>
+    </message>
+    <message>
+        <source>Color Subtree</source>
+        <translation type="obsolete">Cor da Subárvore</translation>
+    </message>
+    <message>
+        <source>Line</source>
+        <translation type="obsolete">Linha</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1928"/>
+        <source>Linkstyle Line</source>
+        <translation>Estilo de Linhas</translation>
+    </message>
+    <message>
+        <source>Linkstyle Parabel</source>
+        <translation type="obsolete">Estilo de Parábolas</translation>
+    </message>
+    <message>
+        <source>PolyLine</source>
+        <translation type="obsolete">Muti-linhas</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1942"/>
+        <source>Linkstyle Thick Line</source>
+        <translation>Estilo de Linhas Largas</translation>
+    </message>
+    <message>
+        <source>PolyParabel</source>
+        <translation type="obsolete">Multi-parábolas</translation>
+    </message>
+    <message>
+        <source>Linkstyle Thick Parabel</source>
+        <translation type="obsolete">Estilo de Parábolas Largas</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <translation type="obsolete">Nenhum Quadro</translation>
+    </message>
+    <message>
+        <source>Rectangle</source>
+        <translation type="obsolete">Retângulo</translation>
+    </message>
+    <message>
+        <source>Use same color for links and headings</source>
+        <translation type="obsolete">Usar a mesma cor para ligações e tópicos</translation>
+    </message>
+    <message>
+        <source>Set Link Color</source>
+        <translation type="obsolete">Definir Cor da Ligação</translation>
+    </message>
+    <message>
+        <source>Set Background Color</source>
+        <translation type="obsolete">Definir Cor de Fundo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1981"/>
+        <source>Set &amp;Background Color</source>
+        <translation>Definir Cor de &amp;Fundo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1995"/>
+        <source>&amp;View</source>
+        <translation>&amp;Visualizar</translation>
+    </message>
+    <message>
+        <source>Zoom reset</source>
+        <translation type="obsolete">Normal</translation>
+    </message>
+    <message>
+        <source>Zoom in</source>
+        <translation type="obsolete">Ampliar</translation>
+    </message>
+    <message>
+        <source>Zoom out</source>
+        <translation type="obsolete">Reduzir</translation>
+    </message>
+    <message>
+        <source>&amp;Next Window</source>
+        <translation type="obsolete">&amp;Próxima Janela</translation>
+    </message>
+    <message>
+        <source>&amp;Previous Window</source>
+        <translation type="obsolete">Janela &amp;Anterior</translation>
+    </message>
+    <message>
+        <source>Use modifier to color branches</source>
+        <translation type="obsolete">Usar modificador para colorir ramos</translation>
+    </message>
+    <message>
+        <source>&amp;Settings</source>
+        <translation type="obsolete">&amp;Configurações</translation>
+    </message>
+    <message>
+        <source>Set application to open pdf files</source>
+        <translation type="obsolete">Definir aplicação externa para abrir PDF</translation>
+    </message>
+    <message>
+        <source>Edit branch after adding it</source>
+        <translation type="obsolete">Editar ramo depois de adicionar</translation>
+    </message>
+    <message>
+        <source>Select branch after adding it</source>
+        <translation type="obsolete">Selecionar ramo depois de adicionar</translation>
+    </message>
+    <message>
+        <source>Select heading before editing</source>
+        <translation type="obsolete">Selecionar tópico antes de editar</translation>
+    </message>
+    <message>
+        <source>&amp;Test</source>
+        <translation type="obsolete">&amp;Testar</translation>
+    </message>
+    <message>
+        <source>Open VYM Documentation (pdf)</source>
+        <translation type="obsolete">Documentação do VYM (pdf)</translation>
+    </message>
+    <message>
+        <source>Information about QT toolkit</source>
+        <translation type="obsolete">Informações sobre ferramentas QT</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3460"/>
+        <source>Overwrite</source>
+        <translation>Sobrescrever</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3188"/>
+        <location filename="../mainwindow.cpp" line="3235"/>
+        <location filename="../mainwindow.cpp" line="3461"/>
+        <source>Cancel</source>
+        <translation>Cancelar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3187"/>
+        <source>Open anyway</source>
+        <translation>Forçar abrir</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3234"/>
+        <source>Create</source>
+        <translation>Criar</translation>
+    </message>
+    <message>
+        <source>Critical Load Error</source>
+        <translation type="obsolete">Erro Crítico ao Carregar</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="obsolete">Não foi possível encontrar um mapa (.xml) dentro do arquivo .vym.
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3303"/>
+        <source>Load vym map</source>
+        <translation>Carregar mapa VYM</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3306"/>
+        <source>Import: Add vym map to selection</source>
+        <translation>Importar: Adicionar mapa à seleção</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3309"/>
+        <source>Import: Replace selection with vym map</source>
+        <translation>Importar: Substituir seleção com um mapa</translation>
+    </message>
+    <message>
+        <source>Save Error</source>
+        <translation type="obsolete">Erro ao Salvar</translation>
+    </message>
+    <message>
+        <source>
+could not be removed before saving</source>
+        <translation type="obsolete">
+não foi possível remover antes de salvar</translation>
+    </message>
+    <message>
+        <source>compressed (vym default)</source>
+        <translation type="obsolete">comprimido (padrão)</translation>
+    </message>
+    <message>
+        <source>uncompressed</source>
+        <translation type="obsolete">descomprimido</translation>
+    </message>
+    <message>
+        <source>Export XML to directory</source>
+        <translation type="obsolete">Exportar XML para diretório</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3775"/>
+        <source>Save modified map before closing it</source>
+        <translation>Salvar mapa modificado antes de fechar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3776"/>
+        <source>Discard changes</source>
+        <translation>Descartas alterações</translation>
+    </message>
+    <message>
+        <source>This map is not saved yet. Do you want to</source>
+        <translation type="obsolete">Este mapa não foi salvo ainda. Quer fazê-lo agora?</translation>
+    </message>
+    <message>
+        <source>Save map</source>
+        <translation type="obsolete">Salvar mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5045"/>
+        <source>VYM -Information:</source>
+        <translation>VYM - Informações:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <location filename="../mainwindow.cpp" line="4130"/>
+        <source>Critical Error</source>
+        <translation>Erro Crítico</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5000"/>
+        <location filename="../mainwindow.cpp" line="5010"/>
+        <source>Set application to zip/unzip files</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5028"/>
+        <source>Directory with vym macros:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5041"/>
+        <source>Number of undo/redo levels:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5046"/>
+        <source>Settings have been changed. The next map opened will have &quot;%1&quot; undo/redo levels</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5066"/>
+        <source>Number of seconds before autosave:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5076"/>
+        <source>Set author for new maps (used in lockfile)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5077"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5088"/>
+        <source>Number of parents shown in find results:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5098"/>
+        <source>Number of parents shown for a task:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3092"/>
+        <source>(readonly)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5433"/>
+        <source>History for %1</source>
+        <comment>Window Caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5456"/>
+        <source>Export in last used format (%1) to: %2</source>
+        <comment>status tip</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5787"/>
+        <source>Critcal error</source>
+        <translation>Erro crítico</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find the documentation
+vym.pdf in various places.</source>
+        <translation type="obsolete">Não foi possível encontrar a documentação
+(vym.pdf) em sua instalação.</translation>
+    </message>
+    <message>
+        <source>Add a branch by inserting and making selection its child</source>
+        <translation type="obsolete">Adicionar ramo ao inserir e selecionar seus filhos</translation>
+    </message>
+    <message>
+        <source>Remove only branch and keep its childs</source>
+        <translation type="obsolete">Apagar apenas ramos e manter seus filhos</translation>
+    </message>
+    <message>
+        <source>Remove childs of branch</source>
+        <translation type="obsolete">Apagar filhos do ramo</translation>
+    </message>
+    <message>
+        <source>Use modifier to copy</source>
+        <translation type="obsolete">Usar modificador para copiar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2723"/>
+        <source>Add</source>
+        <translation>Adicionar</translation>
+    </message>
+    <message>
+        <source>Use modifier to draw xLinks</source>
+        <translation type="obsolete">Usar modificador para criar Ligações Externas</translation>
+    </message>
+    <message>
+        <source>Use exclusive flags in flag toolbars</source>
+        <translation type="obsolete">Usar emblemas exclusivos na barra de tarefas</translation>
+    </message>
+    <message>
+        <source>Set application to open external links</source>
+        <translation type="obsolete">Definir aplicação externa para abrir URL</translation>
+    </message>
+    <message>
+        <source>Delete key for deleting branches</source>
+        <translation type="obsolete">Tecla Delete para apagar ramos</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3179"/>
+        <source>The map %1
+is already opened.Opening the same map in multiple editors may lead 
+to confusion when finishing working with vym.Do you want to</source>
+        <translation>O mapa %1
+já está aberto. Abrir o mesmo mapa múltiplas vezes pode
+causar perda de dados pois as mudanças em um não será automaticamente
+replicada no outro. Deseja continuar?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3228"/>
+        <source>This map does not exist:
+  %1
+Do you want to create a new one?</source>
+        <translation>Este mapa não existe:
+%1
+Deseja criar um novo?</translation>
+    </message>
+    <message>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="obsolete">O mapa %1
+não usa o formato de arquivo comprimido.
+Salvar no formato descomprimido também salvará imagens
+e emblemas que podem sobrescrever arquivos já presentes no diretório.
+Deseja continuar salvando este mapa?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3413"/>
+        <source>Saved  %1</source>
+        <translation>Salvo %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3417"/>
+        <source>Couldn&apos;t save </source>
+        <translation>Não foi possível salvar </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3455"/>
+        <source>The file %1
+exists already. Do you want to</source>
+        <translation>O arquivo %1
+já existe. Deseja continuar?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3770"/>
+        <source>The map %1 has been modified but not saved yet. Do you want to</source>
+        <translation>O mapa %1 foi modificado mas não foi salvo ainda. Deseja salvar?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4131"/>
+        <source>Couldn&apos;t open map %1</source>
+        <translation>Não foi possível abrir o mapa %1</translation>
+    </message>
+    <message>
+        <source>Exit</source>
+        <translation type="obsolete">Sair</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="obsolete">Refazer</translation>
+    </message>
+    <message>
+        <source>Create URL to FATE</source>
+        <translation type="obsolete">Criar URL para FATE</translation>
+    </message>
+    <message>
+        <source>Include top and bottom position of images into branch</source>
+        <translation type="obsolete">Incluir posicionamento superior e inferior das imagens ao ramo</translation>
+    </message>
+    <message>
+        <source>Include left and right position of images into branch</source>
+        <translation type="obsolete">Incluir posicionamento esquerdo e direito das imagens ao ramo</translation>
+    </message>
+    <message>
+        <source>Hide link</source>
+        <translation type="obsolete">Ocultar ligação</translation>
+    </message>
+    <message>
+        <source>Note</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Nota</translation>
+    </message>
+    <message>
+        <source>WWW Document (external)</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Documento de Internet (externo)</translation>
+    </message>
+    <message>
+        <source>Link to another vym map</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Ligar a outro mapa do VYM</translation>
+    </message>
+    <message>
+        <source>subtree is scrolled</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">subárvore está contraída</translation>
+    </message>
+    <message>
+        <source>subtree is temporary scrolled</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">subárvore está temporariamente contraída</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2291"/>
+        <source>Take care!</source>
+        <comment>Standardflag</comment>
+        <translation>Cuidado!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2295"/>
+        <source>Really?</source>
+        <comment>Standardflag</comment>
+        <translation>Mesmo?</translation>
+    </message>
+    <message>
+        <source>ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">pronto!</translation>
+    </message>
+    <message>
+        <source>Not ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Faltando!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2274"/>
+        <source>This won&apos;t work!</source>
+        <comment>Standardflag</comment>
+        <translation>Não vai funcionar!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2299"/>
+        <source>Good</source>
+        <comment>Standardflag</comment>
+        <translation>Bom</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2303"/>
+        <source>Bad</source>
+        <comment>Standardflag</comment>
+        <translation>Ruim</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2312"/>
+        <source>Time critical</source>
+        <comment>Standardflag</comment>
+        <translation>Falta de tempo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2318"/>
+        <source>Idea!</source>
+        <comment>Standardflag</comment>
+        <translation>Idéia!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2322"/>
+        <source>Important</source>
+        <comment>Standardflag</comment>
+        <translation>Importante</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2326"/>
+        <source>Unimportant</source>
+        <comment>Standardflag</comment>
+        <translation>Desnecessário</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2339"/>
+        <source>I like this</source>
+        <comment>Standardflag</comment>
+        <translation>Eu gosto</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2343"/>
+        <source>I do not like this</source>
+        <comment>Standardflag</comment>
+        <translation>Eu não gosto</translation>
+    </message>
+    <message>
+        <source>I just love... </source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Amor...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2356"/>
+        <source>Dangerous</source>
+        <comment>Standardflag</comment>
+        <translation>Perigoso</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2364"/>
+        <source>This will help</source>
+        <comment>Standardflag</comment>
+        <translation>Vai ajudar</translation>
+    </message>
+    <message>
+        <source>About VYM</source>
+        <translation type="obsolete">Sobre VYM</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <location filename="../mainwindow.cpp" line="3596"/>
+        <source>Import</source>
+        <translation>Importar</translation>
+    </message>
+    <message>
+        <source>KDE Bookmarks</source>
+        <translation type="obsolete">Favoritos KDE</translation>
+    </message>
+    <message>
+        <source>Export as ASCII</source>
+        <translation type="obsolete">Exportar como texto</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <location filename="../mainwindow.cpp" line="1087"/>
+        <location filename="../mainwindow.cpp" line="1091"/>
+        <location filename="../mainwindow.cpp" line="1095"/>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <source>(still experimental)</source>
+        <translation>(ainda em testes)</translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">Exportar como LaTeX</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1110"/>
+        <source>&amp;Print</source>
+        <translation>Im&amp;primir</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <location filename="../mainwindow.cpp" line="3724"/>
+        <source>Export to</source>
+        <translation>Exportar para</translation>
+    </message>
+    <message>
+        <source>Hide object in exports</source>
+        <translation type="obsolete">Ocultar objeto ao exportar</translation>
+    </message>
+    <message>
+        <source>Hide object in exported maps</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">Ocultar objeto ao exportar mapa</translation>
+    </message>
+    <message>
+        <source>Use hide flag during exports </source>
+        <translation type="obsolete">Usar marcação de ocultação ao exportar </translation>
+    </message>
+    <message>
+        <source>Open URL in new tab</source>
+        <translation type="obsolete">Abrir URL em nova aba</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="238"/>
+        <source>Note Editor</source>
+        <translation type="unfinished">Editor de Notas</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="245"/>
+        <source>Heading Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="260"/>
+        <source>Search results list</source>
+        <comment>FindResultWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <comment>Toolbar for file actions</comment>
+        <translation type="obsolete">&amp;Mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2913"/>
+        <source>File actions toolbar</source>
+        <comment>Toolbar for file actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1067"/>
+        <source>PDF%1</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1071"/>
+        <source>SVG%1</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1040"/>
+        <source>Repeat last export (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2931"/>
+        <source>Edit actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="252"/>
+        <source>Script Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="314"/>
+        <source>Task list</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="273"/>
+        <source>Script Editor</source>
+        <comment>ScriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="280"/>
+        <source>Property Editor</source>
+        <comment>PropertyEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="287"/>
+        <source>History window</source>
+        <comment>HistoryWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="218"/>
+        <source>Main window</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="219"/>
+        <source>Map Editors</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="220"/>
+        <source>Text Editors</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="967"/>
+        <source>&amp;Map</source>
+        <comment>Menu for file actions</comment>
+        <translation type="unfinished">&amp;Mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="992"/>
+        <source>&amp;Restore last session</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1208"/>
+        <source>Add attribute</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1316"/>
+        <source>&amp;Detach</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1317"/>
+        <source>Detach branch and use as mapcenter</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1334"/>
+        <source>Sort children backwards</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1411"/>
+        <source>Expand all branches</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1419"/>
+        <source>Expand one level</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1389"/>
+        <source>Collapse one level</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1400"/>
+        <source>Collapse unselected levels</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1355"/>
+        <source>Unscroll children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1047"/>
+        <source>Webpage (HTML)...</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1051"/>
+        <source>Text (ASCII)...</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <source>Text with tasks</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1360"/>
+        <source>Grow selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1369"/>
+        <source>Shrink selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1378"/>
+        <source>Reset selection size</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1429"/>
+        <source>References Context menu</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1498"/>
+        <source>Bugzilla handling</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1499"/>
+        <source>Create URL to SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1510"/>
+        <source>Get data from SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1519"/>
+        <source>Get data from SUSE Bugzilla for subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1528"/>
+        <source>SUSE Fate tool handling</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1529"/>
+        <source>Create URL to SUSE FATE tool</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1537"/>
+        <source>vymlinks - linking maps</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1574"/>
+        <source>Exports</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1586"/>
+        <source>Tasks</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1587"/>
+        <source>Toggle task</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1598"/>
+        <source>Cycle task status</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1609"/>
+        <source>Reset sleep</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1620"/>
+        <location filename="../mainwindow.cpp" line="1643"/>
+        <location filename="../mainwindow.cpp" line="1654"/>
+        <location filename="../mainwindow.cpp" line="1665"/>
+        <location filename="../mainwindow.cpp" line="1676"/>
+        <source>Sleep %1 days</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1632"/>
+        <source>Sleep %1 day</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1687"/>
+        <location filename="../mainwindow.cpp" line="1698"/>
+        <source>Sleep %1 weeks</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1730"/>
+        <source>Removing parts of a map</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1753"/>
+        <source>Various</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1771"/>
+        <source>Add   ...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1792"/>
+        <source>Selections</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1793"/>
+        <source>Select</source>
+        <comment>Select menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1795"/>
+        <source>Toggle target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1804"/>
+        <source>Goto target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1812"/>
+        <source>Move to target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1848"/>
+        <source>Search functions</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1864"/>
+        <source>Find duplicate URLs</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2613"/>
+        <source>Number of visible parents in task editor</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2618"/>
+        <source>Number of visible parents in find results window</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Info</source>
+        <translation type="obsolete">Informação</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1446"/>
+        <source>Open all URLs in subtree (including scrolled branches)</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1461"/>
+        <source>Extract URLs from note</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1754"/>
+        <source>Add timestamp</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1743"/>
+        <source>Remove children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2972"/>
+        <source>Zoom toolbar</source>
+        <comment>View Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2042"/>
+        <source>Center on selection</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2982"/>
+        <source>Editors toolbar</source>
+        <comment>Editor Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2994"/>
+        <source>Modifier modes toolbar</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2242"/>
+        <location filename="../mainwindow.cpp" line="2245"/>
+        <source>URL to Bugzilla </source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2248"/>
+        <source>Map target</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2265"/>
+        <source>Standard Flags toolbar</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2279"/>
+        <source>Status - ok,done</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2283"/>
+        <source>Status - work in progress</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2287"/>
+        <source>Status - missing, not started</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2385"/>
+        <source>forward</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2397"/>
+        <source>Don&apos;t flagrget</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2630"/>
+        <source>Automatic layout</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2641"/>
+        <source>Test</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2803"/>
+        <source>Follow XLink</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished">Seguir Ligação Externa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3126"/>
+        <source>unnamed</source>
+        <comment>MainWindow: name for new and empty file</comment>
+        <translation type="unfinished">sem nome</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3264"/>
+        <source>Loading: %1</source>
+        <comment>Progress dialog while loading maps</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3563"/>
+        <source>Load Freemind map</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <source>Export as CSV</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3745"/>
+        <location filename="../mainwindow.cpp" line="3875"/>
+        <location filename="../mainwindow.cpp" line="3918"/>
+        <location filename="../mainwindow.cpp" line="4260"/>
+        <location filename="../mainwindow.cpp" line="5800"/>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Warning</source>
+        <translation>Aviso</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3746"/>
+        <source>Couldn&apos;t find configuration for export to LibreOffice
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3876"/>
+        <location filename="../mainwindow.cpp" line="5801"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <translation>Não foi possível encontrar um programa para abrir %1.
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>Por favor use Configurações-&gt;</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="4981"/>
+        <source>Set application to open an URL</source>
+        <translation>Definir aplicação externa para abrir URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3919"/>
+        <source>Couldn&apos;t start %1 to open a new tab in %2.</source>
+        <translation>Não foi possível executar %1 para abrir uma nova aba em %2.</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4017"/>
+        <source>HTML</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4018"/>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4019"/>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4020"/>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4025"/>
+        <source>Set URL to a local file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4244"/>
+        <source>Enter sleep time (number of days or date YYYY-MM-DD or DD.MM[.YYYY]</source>
+        <comment>task sleep time dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4261"/>
+        <source>Couldn&apos;t set sleep time to %1.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4286"/>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4304"/>
+        <source>branches</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4305"/>
+        <source>notes</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4306"/>
+        <source>images</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4307"/>
+        <source>tasks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4308"/>
+        <source>slides</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4309"/>
+        <source>xLinks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4967"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Set application to open PDF files</source>
+        <translation>Definir aplicação externa para abrir PDF</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2307"/>
+        <source>Oh no!</source>
+        <comment>Standardflag</comment>
+        <translation>Ahh não!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="124"/>
+        <source>Main window</source>
+        <comment>Shortcut scope</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1021"/>
+        <source>Firefox Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation type="unfinished">Favoritos do Firefox</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <source>Import Dir%1</source>
+        <comment>Import Filters</comment>
+        <translation type="unfinished">Importar Diretório %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1733"/>
+        <source>Remove only branch and keep its children </source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1878"/>
+        <source>Formatting</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2174"/>
+        <source>Modifier modes</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2315"/>
+        <source>Call...</source>
+        <comment>Standardflag</comment>
+        <translation>Telefonar...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2330"/>
+        <source>Very important!</source>
+        <comment>Standardflag</comment>
+        <translation>Muito importante!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2334"/>
+        <source>Very unimportant!</source>
+        <comment>Standardflag</comment>
+        <translation>Desprezível!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2347"/>
+        <source>Rose</source>
+        <comment>Standardflag</comment>
+        <translation>Rosa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2353"/>
+        <source>Surprise!</source>
+        <comment>Standardflag</comment>
+        <translation>Surpresa!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2360"/>
+        <source>Info</source>
+        <comment>Standardflag</comment>
+        <translation>Informação</translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <translation type="obsolete">Favoritos do Firefox</translation>
+    </message>
+    <message>
+        <source>Show Note Editor</source>
+        <translation type="obsolete">Mostrar Editor de Notas</translation>
+    </message>
+    <message>
+        <source>Show history window</source>
+        <translation type="obsolete">Mostrar janela de histórico</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3533"/>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <source>Bookmarks</source>
+        <translation>Favoritos</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start %1 to open a new tab</source>
+        <translation type="obsolete">Não foi possível executar %1 para abrir uma nova aba</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <translation type="obsolete">Exportar mapa como imagem</translation>
+    </message>
+    <message>
+        <source>Standard Flags</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation type="obsolete">Emblemas Padrões</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find configuration for export to Open Office
+</source>
+        <translation type="vanished">Não foi possível encontrar configuração para exportar para OpenOffice.org
+</translation>
+    </message>
+    <message>
+        <source>No matches found for &quot;%1&quot;</source>
+        <translation type="obsolete">Nenhum resultado para &quot;%1&quot;</translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <translation type="obsolete">&amp;Mapa</translation>
+    </message>
+    <message>
+        <source>Open all URLs in subtree</source>
+        <translation type="obsolete">Abrir todas URLs da subárvore</translation>
+    </message>
+    <message>
+        <source>Open all vym links in subtree</source>
+        <translation type="obsolete">Abrir todas ligações da subárvore</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation type="obsolete">Não foi possível criar diretório temporário antes de carregar
+</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation type="obsolete">Não foi possível criar diretório temporário antes de salvar
+</translation>
+    </message>
+    <message>
+        <source>Sorry, currently only Konqueror and Mozilla support tabbed browsing.</source>
+        <translation type="obsolete">Navegação por abas só é compatível pelos navegadores Konqueror e Mozilla.</translation>
+    </message>
+    <message>
+        <source>&amp;New...</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">&amp;Novo...</translation>
+    </message>
+    <message>
+        <source>New map</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">Novo mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="985"/>
+        <source>&amp;Open...</source>
+        <comment>File menu</comment>
+        <translation>&amp;Abrir...</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">Abrir</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1000"/>
+        <source>Open Recent</source>
+        <comment>File menu</comment>
+        <translation>Abrir Recentes</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1003"/>
+        <source>&amp;Save...</source>
+        <comment>File menu</comment>
+        <translation>&amp;Salvar...</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">Salvar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1011"/>
+        <source>Save &amp;As...</source>
+        <comment>File menu</comment>
+        <translation>Salvar &amp;Como...</translation>
+    </message>
+    <message>
+        <source>Save &amp;As</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">Salvar &amp;Como</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1017"/>
+        <source>Import</source>
+        <comment>File menu</comment>
+        <translation>Importar</translation>
+    </message>
+    <message>
+        <source>Import %1</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">Importar %1</translation>
+    </message>
+    <message>
+        <source>KDE bookmarks</source>
+        <translation type="obsolete">Favoritos KDE</translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Favoritos do Firefox</translation>
+    </message>
+    <message>
+        <source>Import %1</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Importar %1</translation>
+    </message>
+    <message>
+        <source>Import Dir%1</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Importar Diretório %1</translation>
+    </message>
+    <message>
+        <source>Import directory structure (experimental)</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Importar diretório (em testes)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1038"/>
+        <source>Export</source>
+        <comment>File menu</comment>
+        <translation>Exportar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1063"/>
+        <source>Image%1</source>
+        <comment>File export menu</comment>
+        <translation>Imagem %1</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Exportar mapa como imagem</translation>
+    </message>
+    <message>
+        <source>Export in Open Document Format used e.g. in Open Office </source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Exportar para formato Open Document Formato, ex: usado por OpenOffice.org</translation>
+    </message>
+    <message>
+        <source>Export as %1</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Exportar como %1</translation>
+    </message>
+    <message>
+        <source> webpage (XHTML)</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">página (XHTML)</translation>
+    </message>
+    <message>
+        <source>Export as %1</source>
+        <translation type="obsolete">Exportar como %1</translation>
+    </message>
+    <message>
+        <source>KDE Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Favoritos KDE</translation>
+    </message>
+    <message>
+        <source>Print</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Imprimir</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1118"/>
+        <source>&amp;Close Map</source>
+        <comment>File menu</comment>
+        <translation>&amp;Fechar Mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1124"/>
+        <source>E&amp;xit</source>
+        <comment>File menu</comment>
+        <translation>Sai&amp;r</translation>
+    </message>
+    <message>
+        <source>&amp;Actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="obsolete">Barra de &amp;Ações</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Editar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1139"/>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation>Desfa&amp;zer</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1150"/>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Refazer</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1161"/>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Copiar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1172"/>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation>Recor&amp;tar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1185"/>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation>C&amp;olar</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Editar tópico</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1197"/>
+        <source>Delete Selection</source>
+        <comment>Edit menu</comment>
+        <translation>Apagar seleção</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1232"/>
+        <source>Add branch as child</source>
+        <comment>Edit menu</comment>
+        <translation>Adicionar ramo como filho</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1242"/>
+        <source>Add branch (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>Adicionar ramo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1252"/>
+        <location filename="../mainwindow.cpp" line="1262"/>
+        <source>Add branch above</source>
+        <comment>Edit menu</comment>
+        <translation>Adicionar ramo acima</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1272"/>
+        <location filename="../mainwindow.cpp" line="1281"/>
+        <source>Add branch below</source>
+        <comment>Edit menu</comment>
+        <translation>Adicionar ramo abaixo</translation>
+    </message>
+    <message>
+        <source>Move up</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Mover acima</translation>
+    </message>
+    <message>
+        <source>Move down</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Mover abaixo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1343"/>
+        <source>Scroll branch</source>
+        <comment>Edit menu</comment>
+        <translation>Contrair ramo</translation>
+    </message>
+    <message>
+        <source>Unscroll all scrolled branches</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Expandir ramos contraídos</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1849"/>
+        <location filename="../mainwindow.cpp" line="1857"/>
+        <source>Find...</source>
+        <comment>Edit menu</comment>
+        <translation>Pesquisar...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1430"/>
+        <source>Open URL</source>
+        <comment>Edit menu</comment>
+        <translation>Abrir URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1438"/>
+        <source>Open URL in new tab</source>
+        <comment>Edit menu</comment>
+        <translation>Abrir URL em nova aba</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1454"/>
+        <source>Open all URLs in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Abrir todas URLs da subárvore</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1470"/>
+        <source>Edit URL...</source>
+        <comment>Edit menu</comment>
+        <translation>Editar URL...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1488"/>
+        <source>Use heading for URL</source>
+        <comment>Edit menu</comment>
+        <translation>Usar tópico como URL</translation>
+    </message>
+    <message>
+        <source>Create URL to Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Criar URL para o Bugzilla</translation>
+    </message>
+    <message>
+        <source>Create URL to FATE</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Criar URL para FATE</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1538"/>
+        <source>Open linked map</source>
+        <comment>Edit menu</comment>
+        <translation>Abrir mapa ligado</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1552"/>
+        <source>Open all vym links in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Abrir todas ligações da subárvore</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1560"/>
+        <source>Edit vym link...</source>
+        <comment>Edit menu</comment>
+        <translation>Editar ligação...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1567"/>
+        <source>Delete vym link</source>
+        <comment>Edit menu</comment>
+        <translation>Apagar ligação</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1575"/>
+        <source>Hide in exports</source>
+        <comment>Edit menu</comment>
+        <translation>Ocultar ao exportar</translation>
+    </message>
+    <message>
+        <source>Edit Map Info...</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Editar Informações...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1710"/>
+        <source>Add map (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>Adicionar mapa (novo)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1717"/>
+        <source>Add map (replace)</source>
+        <comment>Edit menu</comment>
+        <translation>Adicionar mapa (substituir)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1724"/>
+        <source>Save selection</source>
+        <comment>Edit menu</comment>
+        <translation>Salvar seleção</translation>
+    </message>
+    <message>
+        <source>Remove only branch </source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Remover apenas ramos</translation>
+    </message>
+    <message>
+        <source>Remove childs</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Remover filhos</translation>
+    </message>
+    <message>
+        <source>Select upper branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Selecionar ramo mais acima</translation>
+    </message>
+    <message>
+        <source>Select lower branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Selecionar ramo mais abaixo</translation>
+    </message>
+    <message>
+        <source>Select left branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Selecionar ramo da esquerda</translation>
+    </message>
+    <message>
+        <source>Select child branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Selecionar ramo filho</translation>
+    </message>
+    <message>
+        <source>Select first branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Selecionar primeiro ramo</translation>
+    </message>
+    <message>
+        <source>Select last branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Selecionar último ramo</translation>
+    </message>
+    <message>
+        <source>Add Image...</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Adicionar Imagem...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1876"/>
+        <source>F&amp;ormat</source>
+        <comment>Format menu</comment>
+        <translation>&amp;Formatação</translation>
+    </message>
+    <message>
+        <source>Format Actions</source>
+        <comment>Format Toolbar name</comment>
+        <translation type="obsolete">Ações de Formatação</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1889"/>
+        <source>Pic&amp;k color</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Capturar cor</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1898"/>
+        <source>Color &amp;branch</source>
+        <comment>Edit menu</comment>
+        <translation>Cor do &amp;ramo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1907"/>
+        <source>Color sub&amp;tree</source>
+        <comment>Edit menu</comment>
+        <translation>Cor da subár&amp;vore</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <comment>Branch attribute</comment>
+        <translation type="obsolete">Nenhuma Quadro</translation>
+    </message>
+    <message>
+        <source>RectangleBranch attribute</source>
+        <translation type="obsolete">Propriedade do ramo retangular</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <comment>Branch attribute</comment>
+        <translation type="obsolete">Incluir imagens verticalmente</translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <comment>Branch attribute</comment>
+        <translation type="obsolete">Incluir imagens horizontalmente</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1958"/>
+        <source>Hide link if object is not selected</source>
+        <comment>Branch attribute</comment>
+        <translation>Ocultar ligações se objeto não for selecionado</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1964"/>
+        <source>&amp;Use color of heading for link</source>
+        <comment>Branch attribute</comment>
+        <translation>&amp;Usar cor do tópico para ligações</translation>
+    </message>
+    <message>
+        <source>View Actions</source>
+        <comment>View Toolbar name</comment>
+        <translation type="obsolete">Visualizar Ações</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2034"/>
+        <source>reset Zoom</source>
+        <comment>View action</comment>
+        <translation>Normal</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2002"/>
+        <source>Zoom in</source>
+        <comment>View action</comment>
+        <translation>Ampliar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2010"/>
+        <source>Zoom out</source>
+        <comment>View action</comment>
+        <translation>Reduzir</translation>
+    </message>
+    <message>
+        <source>Show Note Editor</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Mostrar Editor de Notas</translation>
+    </message>
+    <message>
+        <source>Show history window</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Mostrar janela de histórico</translation>
+    </message>
+    <message>
+        <source>Next Window</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Próxima Janela</translation>
+    </message>
+    <message>
+        <source>Previous Window</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Janela Anterior</translation>
+    </message>
+    <message>
+        <source>Modes when using modifiers</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation type="obsolete">Modos quando usando modificadores</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2178"/>
+        <source>Use modifier to color branches</source>
+        <comment>Mode modifier</comment>
+        <translation>Usar modificador para colorir ramos</translation>
+    </message>
+    <message>
+        <source>Use modifier to copy</source>
+        <comment>Mode modifier</comment>
+        <translation type="obsolete">Usar modificador para copiar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2194"/>
+        <source>Use modifier to draw xLinks</source>
+        <comment>Mode modifier</comment>
+        <translation>Usar modificador para criar Ligações Externas</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2531"/>
+        <source>Set application to open pdf files</source>
+        <comment>Settings action</comment>
+        <translation>Definir aplicação externa para abrir PDF</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2535"/>
+        <source>Set application to open external links</source>
+        <comment>Settings action</comment>
+        <translation>Definir aplicação externa para abrir URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2581"/>
+        <source>Edit branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>Editar ramo depois de adicionar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2587"/>
+        <source>Select branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>Selecionar ramo depois de adicionar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2593"/>
+        <source>Select existing heading</source>
+        <comment>Settings action</comment>
+        <translation>Selecionar tópico</translation>
+    </message>
+    <message>
+        <source>Delete key</source>
+        <comment>Settings action</comment>
+        <translation type="obsolete">Tecla Delete</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2599"/>
+        <source>Exclusive flags</source>
+        <comment>Settings action</comment>
+        <translation>Emblemas exclusivos</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2605"/>
+        <source>Use hide flags</source>
+        <comment>Settings action</comment>
+        <translation>Usar emblemas ocultos</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2673"/>
+        <source>&amp;Help</source>
+        <comment>Help menubar entry</comment>
+        <translation>A&amp;juda</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2676"/>
+        <source>Open VYM Documentation (pdf) </source>
+        <comment>Help action</comment>
+        <translation>Documentação do VYM (pdf)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2702"/>
+        <source>About VYM</source>
+        <comment>Help action</comment>
+        <translation>Sobre VYM</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2706"/>
+        <source>About QT</source>
+        <comment>Help action</comment>
+        <translation>Sobre QT</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2735"/>
+        <source>Remove</source>
+        <comment>Context menu name</comment>
+        <translation>Remover</translation>
+    </message>
+    <message>
+        <source>URLs and vymLinks</source>
+        <comment>Context menu name</comment>
+        <translation type="obsolete">URLs e ligações</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2798"/>
+        <source>Edit XLink</source>
+        <comment>Context menu name</comment>
+        <translation>Editar Ligação Externa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2809"/>
+        <source>Follow XLink</source>
+        <comment>Context menu name</comment>
+        <translation type="unfinished">Seguir Ligação Externa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2818"/>
+        <source>Save image</source>
+        <comment>Context action</comment>
+        <translation>Salvar imagem</translation>
+    </message>
+    <message>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <comment>write directory</comment>
+        <translation type="obsolete">O diretório %1 não está vazio.
+Deseja sobrescrever o conteúdo?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="971"/>
+        <source>&amp;New map</source>
+        <comment>File menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="978"/>
+        <source>&amp;Copy to new map</source>
+        <comment>File menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1059"/>
+        <source>Text (A&amp;O report)...</source>
+        <comment>Export format</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <source>Spreadsheet</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1101"/>
+        <source>Properties</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1135"/>
+        <source>E&amp;dit</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1221"/>
+        <source>Add mapcenter</source>
+        <comment>Canvas context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1290"/>
+        <source>Move branch up</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Mover ramo acima</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1303"/>
+        <source>Move branch down</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Mover ramo abaixo</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1325"/>
+        <source>Sort children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1479"/>
+        <source>Edit local URL...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1545"/>
+        <source>Open linked map in background tab</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1765"/>
+        <source>Map properties...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1779"/>
+        <source>Property window</source>
+        <comment>Dialog to edit properties of selection</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1820"/>
+        <source>Select previous</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1830"/>
+        <source>Select next</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1840"/>
+        <source>Unselect all</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1918"/>
+        <source>Select default font</source>
+        <comment>Branch attribute</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1935"/>
+        <source>Linkstyle Curve</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1949"/>
+        <source>Linkstyle Thick Curve</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1971"/>
+        <source>Set &amp;Link Color</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1976"/>
+        <source>Set &amp;Selection Color</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1986"/>
+        <source>Set &amp;Background image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1996"/>
+        <source>Toolbars</source>
+        <comment>Toolbars overview in view menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1997"/>
+        <source>Views</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2018"/>
+        <source>Rotate counterclockwise</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2026"/>
+        <source>Rotate rclockwise</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2053"/>
+        <source>Note editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2064"/>
+        <source>Heading editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2076"/>
+        <source>Tree editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2084"/>
+        <source>Task editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2094"/>
+        <source>Slide editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2102"/>
+        <source>Script editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2110"/>
+        <source>History Window</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2124"/>
+        <source>Antialiasing</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2131"/>
+        <source>Smooth pixmap transformations</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2139"/>
+        <source>Next Map</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2146"/>
+        <source>Previous Map</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2153"/>
+        <source>Next slide</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2160"/>
+        <source>Previous slide</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2213"/>
+        <location filename="../mainwindow.cpp" line="2216"/>
+        <location filename="../mainwindow.cpp" line="2219"/>
+        <location filename="../mainwindow.cpp" line="2223"/>
+        <location filename="../mainwindow.cpp" line="2226"/>
+        <location filename="../mainwindow.cpp" line="2229"/>
+        <location filename="../mainwindow.cpp" line="2233"/>
+        <location filename="../mainwindow.cpp" line="2236"/>
+        <source>Note</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">Nota</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2239"/>
+        <source>URL to Document </source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2251"/>
+        <source>Link to another vym map</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">Ligar a outro mapa do VYM</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2254"/>
+        <source>subtree is scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">subárvore está contraída</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2257"/>
+        <source>subtree is temporary scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">subárvore está temporariamente contraída</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2260"/>
+        <source>Hide object in exported maps</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">Ocultar objeto ao exportar mapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2350"/>
+        <source>I just love...</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2369"/>
+        <source>Important</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Importante</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2376"/>
+        <source>Priority</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2381"/>
+        <source>Back</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2389"/>
+        <source>Look here</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2393"/>
+        <source>Dangerous</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">Perigoso</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2401"/>
+        <source>Flag</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2406"/>
+        <source>Home</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2410"/>
+        <source>Telephone</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2414"/>
+        <source>Music</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2418"/>
+        <source>Mailbox</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2422"/>
+        <source>Maix</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2426"/>
+        <source>Password</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2430"/>
+        <source>To be improved</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2434"/>
+        <source>Stop</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2438"/>
+        <source>Magic</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2442"/>
+        <source>To be discussed</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2446"/>
+        <source>Reminder</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2450"/>
+        <source>Excellent</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2454"/>
+        <source>Linux</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2458"/>
+        <source>Sweet</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2514"/>
+        <source>Settings</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2518"/>
+        <source>Check for release notes and updates</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2525"/>
+        <source>Set author for new maps</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2539"/>
+        <source>Set application to zip/unzip files</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2543"/>
+        <source>Set path for macros</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2547"/>
+        <source>Set number of undo levels</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2553"/>
+        <source>Autosave</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2559"/>
+        <source>Autosave time</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2572"/>
+        <source>Write backup file on save</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2698"/>
+        <source>Debug info</source>
+        <comment>Option to show debugging info</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <source>Couldn&apos;t save %1,
+because of existing lockfile:
+
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5788"/>
+        <source>Couldn&apos;t find the documentation %1 in:
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5816"/>
+        <source>Load vym example map</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <source>Please allow vym to download release notes!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5968"/>
+        <source>&lt;html&gt;&lt;h3&gt;Do you allow vym to check online for updates or release notes?&lt;/h3&gt;If you allow, vym will &lt;ul&gt;&lt;li&gt;check once for release notes&lt;/li&gt;&lt;li&gt;check regulary for updates and notify you in case you should update, e.g. if there are important bug fixes available&lt;/li&gt;&lt;li&gt;receive a cookie with a random ID and send vym version and platform name and the ID  (e.g. &quot;Windows&quot; or &quot;Linux&quot;) back to me, Uwe Drechsel.&lt;p&gt;As vym developer I am motivated to see many people using vym. Of course I am curious to see, on which system vym is used. Maintaining each of the systems requires a lot of my (spare) time.&lt;/p&gt; &lt;p&gt;No other data than above will be sent, especially no private data will be collected or sent.(Check the source code, if you don&apos;t believe.)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;If you do not allow, &lt;ul&gt;&lt;li&gt;nothing will be downloaded and especially I will &lt;b&gt;not be motivated&lt;/b&gt; to spend some more thousands of hours on developing a free software tool.&lt;/ul&gt;Please allow vym to check for updates :-)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5997"/>
+        <source>Allow</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5998"/>
+        <source>Do not allow</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6004"/>
+        <source>Thank you for enabling downloads!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6027"/>
+        <source>Update information</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6033"/>
+        <source>vym is up to date.</source>
+        <comment>MainWindow</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6084"/>
+        <source>Checking for updates...</source>
+        <comment>MainWindow</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Please allow vym to check for updates!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2623"/>
+        <source>Animation</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2680"/>
+        <source>Open VYM example maps </source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2685"/>
+        <source>Download and show release notes</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2689"/>
+        <source>Check, if updates are available</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2694"/>
+        <source>Show keyboard shortcuts</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2755"/>
+        <source>Tasks</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2772"/>
+        <source>References (URLs, vymLinks, ...)</source>
+        <comment>Context menu name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2796"/>
+        <source>XLinks</source>
+        <comment>Menu for file actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2922"/>
+        <source>Undo and clipboard toolbar</source>
+        <comment>Toolbar for redo/undo and clipboard</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2948"/>
+        <source>Selection toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2956"/>
+        <source>URLs and vymLinks toolbar</source>
+        <comment>Toolbar for URLs and vymlinks</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2964"/>
+        <source>Colors toolbar</source>
+        <comment>Colors toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3314"/>
+        <source>or</source>
+        <comment>File Dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3444"/>
+        <source>Save map as</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3994"/>
+        <source>Enter URL:</source>
+        <translation type="unfinished">Informe URL:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4021"/>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">Imagens</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4183"/>
+        <location filename="../mainwindow.cpp" line="4185"/>
+        <source>Link to another map</source>
+        <translation type="unfinished">Ligar a outro mapa</translation>
+    </message>
+</context>
+<context>
+    <name>MapEditor</name>
+    <message>
+        <source>Critical Parse Error</source>
+        <translation type="obsolete">Erro Crítico ao Ler</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="obsolete">Sobrescrever</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Cancelar</translation>
+    </message>
+    <message>
+        <source>Critical Export Error</source>
+        <translation type="obsolete">Erro Crítico ao Exportar</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">Erro Crítico</translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation type="obsolete">Informe URL:</translation>
+    </message>
+    <message>
+        <source>vym map</source>
+        <translation type="obsolete">mapa VYM</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <translation type="obsolete">Imagens</translation>
+    </message>
+    <message>
+        <source>Critical Import Error</source>
+        <translation type="obsolete">Erro Crítico ao Importar</translation>
+    </message>
+    <message>
+        <source>New Map</source>
+        <comment>Heading of mapcenter in new map</comment>
+        <translation type="obsolete">Novo Mapa</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="obsolete">O arquivo %1 já existe.
+Deseja sobrescrevê-lo?</translation>
+    </message>
+    <message>
+        <source>MapEditor::exportXML couldn&apos;t open %1</source>
+        <translation type="obsolete">MapEditor::exportXML não foi possível abrir %1</translation>
+    </message>
+    <message>
+        <source>Cannot find the directory %1</source>
+        <translation type="obsolete">Não foi possível encontrar o diretório %1</translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation type="obsolete">Ligar a outro mapa</translation>
+    </message>
+    <message>
+        <source>Load image</source>
+        <translation type="obsolete">Carregar imagem</translation>
+    </message>
+    <message>
+        <source>Choose directory structure to import</source>
+        <translation type="obsolete">Escolha o diretório para importar</translation>
+    </message>
+    <message>
+        <source>unnamed</source>
+        <translation type="obsolete">sem nome</translation>
+    </message>
+    <message>
+        <source>History for </source>
+        <translation type="obsolete">Histórico</translation>
+    </message>
+    <message>
+        <source>Save image</source>
+        <translation type="obsolete">Salvar imagem</translation>
+    </message>
+    <message>
+        <source>Critical Parse Error while reading %1</source>
+        <translation type="obsolete">Erro Crítico ao ler %1</translation>
+    </message>
+    <message>
+        <source>Could not read %1</source>
+        <translation type="obsolete">Não foi possível ler %1</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="obsolete">Aviso</translation>
+    </message>
+    <message>
+        <source>Can&apos;t get color of heading,
+there&apos;s no branch selected</source>
+        <translation type="obsolete">Não é possível usar cor do tópico,
+não existe nenhum ramo selecionado</translation>
+    </message>
+    <message>
+        <source>Critical Load Error</source>
+        <translation type="obsolete">Erro Crítico ao Carregar</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation type="obsolete">Não foi possível criar diretório temporário antes de carregar
+</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="obsolete">Não foi possível encontrar um mapa (.xml) dentro do arquivo .vym.
+</translation>
+    </message>
+    <message>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="obsolete">O mapa %1
+não usa o formato de arquivo comprimido.
+Salvar no formato descomprimido também salvará imagens
+e emblemas que podem sobrescrever arquivos já presentes no diretório.
+Deseja continuar salvando este mapa?</translation>
+    </message>
+    <message>
+        <source>compressed (vym default)</source>
+        <translation type="obsolete">comprimido (padrão)</translation>
+    </message>
+    <message>
+        <source>uncompressed</source>
+        <translation type="obsolete">descomprimido</translation>
+    </message>
+    <message>
+        <source>Save Error</source>
+        <translation type="obsolete">Erro ao Salvar</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation type="obsolete">Não foi possível criar diretório temporário antes de salvar
+</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <translation type="obsolete">Exportar mapa como imagem</translation>
+    </message>
+    <message>
+        <source>Export XML to directory</source>
+        <translation type="obsolete">Exportar XML para diretório</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Imagens</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="43"/>
+        <source>Map Editor</source>
+        <comment>Shortcut scope</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="111"/>
+        <location filename="../mapeditor.cpp" line="116"/>
+        <source>Edit heading</source>
+        <comment>MapEditor</comment>
+        <translation type="unfinished">Editar tópico</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>MapEditor</comment>
+        <translation type="obsolete">Salvar</translation>
+    </message>
+    <message>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Recor&amp;tar</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Copiar</translation>
+    </message>
+    <message>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Desfa&amp;zer</translation>
+    </message>
+    <message>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Refazer</translation>
+    </message>
+    <message>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">C&amp;olar</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="510"/>
+        <source>Print vym map</source>
+        <comment>MapEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>NoteEditor</name>
+    <message>
+        <location filename="../noteeditor.cpp" line="13"/>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished">Editor de Notas</translation>
+    </message>
+</context>
+<context>
+    <name>Process</name>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">Erro Crítico</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation type="obsolete">Não foi possível executar %1</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="obsolete">%1 não terminou normalmente</translation>
+    </message>
+</context>
+<context>
+    <name>QObject</name>
+    <message>
+        <source>This is not an image.</source>
+        <translation type="obsolete">Imagem inválida.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <location filename="../exports.cpp" line="381"/>
+        <location filename="../exports.cpp" line="511"/>
+        <location filename="../exports.cpp" line="954"/>
+        <location filename="../exports.cpp" line="1048"/>
+        <location filename="../exports.cpp" line="1128"/>
+        <location filename="../exports.cpp" line="1236"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <location filename="../exports.cpp" line="1333"/>
+        <location filename="../exports.cpp" line="1343"/>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Critical Export Error</source>
+        <translation>Erro Crítico ao Exportar</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="956"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <source>Could not write %1</source>
+        <translation>Não foi possível criar %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="147"/>
+        <source>Exporting to %1 will overwrite the existing file:
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="146"/>
+        <source>Warning: Overwriting file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="503"/>
+        <source>Export as CSV</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="837"/>
+        <source>Contents:</source>
+        <comment>Used in HTML export</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="893"/>
+        <source>Export aborted.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <comment>ExportHTML</comment>
+        <translation type="obsolete">Aviso</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <comment>ExportHTML</comment>
+        <translation type="obsolete">Não foi possível abrir %1</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <translation type="obsolete">Não foi possível abrir %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="934"/>
+        <source>Trying to create directory for flags:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="935"/>
+        <source>Could not create %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="909"/>
+        <location filename="../exports.cpp" line="933"/>
+        <location filename="../exports.cpp" line="944"/>
+        <source>Critical</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <source>Could not export as AO to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="381"/>
+        <source>Could not export as ASCII to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="511"/>
+        <source>Could not export as CSV to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="910"/>
+        <source>Could not find stylesheet %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="920"/>
+        <source>Error</source>
+        <comment>ExportHTML</comment>
+        <translation type="unfinished">Erro</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="921"/>
+        <source>Could not copy
+%1 to
+%2</source>
+        <comment>ExportHTML</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="945"/>
+        <source>Could not copy %1 to %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="955"/>
+        <source>Trying to save HTML file:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="236"/>
+        <location filename="../exports.cpp" line="382"/>
+        <location filename="../exports.cpp" line="512"/>
+        <location filename="../exports.cpp" line="957"/>
+        <location filename="../exports.cpp" line="1049"/>
+        <location filename="../exports.cpp" line="1130"/>
+        <location filename="../exports.cpp" line="1309"/>
+        <source>Export failed.</source>
+        <translation>Falha ao exportar.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1048"/>
+        <source>Could not export as OrgMode to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1129"/>
+        <source>Could not export as LaTeX to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1189"/>
+        <source>Export as LibreOffice Impress presentation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1236"/>
+        <source>No objects in map!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1333"/>
+        <source>Couldn&apos;t read settings from &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1343"/>
+        <source>Check &quot;%1&quot; in
+%2</source>
+        <translation>Verifique &quot;%1&quot; em
+%2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Could not read %1</source>
+        <translation>Não foi possível ler %1</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="257"/>
+        <location filename="../file.cpp" line="272"/>
+        <location filename="../file.cpp" line="296"/>
+        <location filename="../file.cpp" line="305"/>
+        <location filename="../file.cpp" line="313"/>
+        <location filename="../file.cpp" line="323"/>
+        <location filename="../file.cpp" line="332"/>
+        <location filename="../file.cpp" line="340"/>
+        <location filename="../file.cpp" line="347"/>
+        <location filename="../file.cpp" line="356"/>
+        <location filename="../file.cpp" line="377"/>
+        <location filename="../file.cpp" line="400"/>
+        <location filename="../file.cpp" line="410"/>
+        <location filename="../file.cpp" line="423"/>
+        <location filename="../main.cpp" line="411"/>
+        <location filename="../xsltproc.cpp" line="78"/>
+        <location filename="../xsltproc.cpp" line="84"/>
+        <source>Critical Error</source>
+        <translation>Erro Crítico</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="258"/>
+        <source>Couldn&apos;t move existing file out of the way before saving.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="273"/>
+        <location filename="../file.cpp" line="378"/>
+        <source>Couldn&apos;t start tool to decompress data.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="297"/>
+        <source>Couldn&apos;t start zip to compress data.</source>
+        <translation>Não foi possível executar &quot;zip&quot; para comprimir dados.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="306"/>
+        <source>zip didn&apos;t exit normally</source>
+        <translation>&quot;zip&quot; não terminou normalmente</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="324"/>
+        <source>Couldn&apos;t rename %1 back to %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="333"/>
+        <source>Couldn&apos;t remove target of old symbolic link %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="341"/>
+        <source>Couldn&apos;t rename output to target of old symbolic link %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="348"/>
+        <source>Couldn&apos;t link from %1 to target of old symbolic link %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="357"/>
+        <source>Saved %1, but couldn&apos;t remove %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="401"/>
+        <source>Couldn&apos;t start unzip to decompress data.</source>
+        <translation>Não foi possível executar &quot;unzip&quot; para descomprimir dados.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="411"/>
+        <source>unzip didn&apos;t exit normally</source>
+        <translation>&quot;unzip&quot; não terminou normalmente.</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="79"/>
+        <source>Could not start %1</source>
+        <translation>Não foi possível executar %1</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="85"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation>%1 não terminou normalmente</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="obsolete">O arquivo %1 já existe.
+Deseja sobrescrevê-lo?</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="90"/>
+        <source>Overwrite</source>
+        <translation>Sobrescrever</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="91"/>
+        <source>Cancel</source>
+        <translation>Cancelar</translation>
+    </message>
+    <message>
+        <source>Sorry, no preview for
+multiple selected files.</source>
+        <translation type="obsolete">Nenhuma previsualização
+para os arquivos selecionados.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="560"/>
+        <location filename="../exports.cpp" line="590"/>
+        <source>Exporting the %1 bookmarks will overwrite
+your existing bookmarks file.</source>
+        <translation>Exportando o %1 como favoritos vai sobrescrever
+seus favoritos atuais.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="561"/>
+        <location filename="../exports.cpp" line="591"/>
+        <source>Warning: Overwriting %1 bookmarks</source>
+        <translation>Aviso: Sobrescrevendo %1 favoritos</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="579"/>
+        <location filename="../macros.cpp" line="39"/>
+        <location filename="../main.cpp" line="377"/>
+        <source>Warning</source>
+        <translation>Aviso</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="580"/>
+        <source>Couldn&apos;t find script %1
+to notifiy Browsers of changed bookmarks.</source>
+        <translation>Não foi possível encontrar o script %1
+para notificar navegadores da alteração dos favoritos.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="56"/>
+        <location filename="../imports.cpp" line="18"/>
+        <location filename="../main.cpp" line="475"/>
+        <location filename="../scripteditor.cpp" line="77"/>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Error</source>
+        <translation>Erro</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="57"/>
+        <location filename="../imports.cpp" line="19"/>
+        <source>Couldn&apos;t access temporary directory
+</source>
+        <translation>Não foi possível entrar no diretório temporário
+</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <location filename="../exports.cpp" line="373"/>
+        <source>Export as ASCII</source>
+        <translation type="unfinished">Exportar como texto</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <source>(still experimental)</source>
+        <translation type="unfinished">(ainda em testes)</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="84"/>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <comment>write directory</comment>
+        <translation type="unfinished">O diretório %1 não está vazio.
+Deseja sobrescrever o conteúdo?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3792"/>
+        <source>No Bugzilla client found.  For openSUSE you can install by (running as root):
+
+</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3797"/>
+        <source>Alternatively you can also add the repository
+and install the perl module for Bugzilla access using YaST</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3800"/>
+        <source>Warning: Couldn&apos;t find Bugzilla client</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <comment>Shortcut group</comment>
+        <translation type="obsolete">Editor de Notas</translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="412"/>
+        <source>Couldn&apos;t find tool to unzip data. Please download and install 7z and set path in Settings menu:
+ </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="476"/>
+        <location filename="../scripteditor.cpp" line="78"/>
+        <source>Couldn&apos;t open &quot;%1&quot;
+%2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="80"/>
+        <source>Warning: Version Problem</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="81"/>
+        <source>&lt;h3&gt;Map is newer than VYM&lt;/h3&gt;&lt;p&gt;The map you are just trying to load was saved using vym %1. The version of this vym is %2. If you run into problems after pressing the ok-button below, updating vym should help.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="40"/>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Please use Settings-&gt;</source>
+        <translation type="unfinished">Por favor use Configurações-&gt;</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Set directory for vym macros</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Couldn&apos;t save &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>ScriptEditor</name>
+    <message>
+        <location filename="../scripteditor.ui" line="14"/>
+        <source>Form</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="49"/>
+        <source>Tab 1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="55"/>
+        <source>Save to selected slide</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="91"/>
+        <location filename="../scripteditor.ui" line="145"/>
+        <source>Run</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="105"/>
+        <source>Tab 2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="121"/>
+        <source>Current key:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="131"/>
+        <source>Load</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="138"/>
+        <source>Save</source>
+        <translation type="unfinished">Salvar</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Warning</source>
+        <translation type="unfinished">Aviso</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="45"/>
+        <source>Slide</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="46"/>
+        <source>Macro</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="65"/>
+        <source>Save</source>
+        <comment>ScriptEditor</comment>
+        <translation type="unfinished">Salvar</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <source>Couldn&apos;t get model to save script into slide!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Couldn&apos;t find slide to save script into slide!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="143"/>
+        <source>Save script</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="155"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation type="unfinished">O arquivo %1
+já existe.
+Deseja sobrescrevê-lo?</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="160"/>
+        <source>Overwrite</source>
+        <translation type="unfinished">Sobrescrever</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="161"/>
+        <source>Cancel</source>
+        <translation type="unfinished">Cancelar</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="184"/>
+        <source>Load script</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="194"/>
+        <source>Error</source>
+        <translation type="unfinished">Erro</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="195"/>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>ShowTextDialog</name>
+    <message>
+        <location filename="../showtextdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>Diálogo</translation>
+    </message>
+    <message>
+        <location filename="../showtextdialog.ui" line="50"/>
+        <source>Close</source>
+        <translation>Fechar</translation>
+    </message>
+</context>
+<context>
+    <name>SimpleScriptEditor</name>
+    <message>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation type="obsolete">O arquivo %1
+já existe.
+Deseja sobrescrevê-lo?</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="obsolete">Sobrescrever</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Cancelar</translation>
+    </message>
+    <message>
+        <source>Error</source>
+        <translation type="obsolete">Erro</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <translation type="obsolete">Salvar</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <translation type="obsolete">Abrir</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Fechar</translation>
+    </message>
+</context>
+<context>
+    <name>TaskEditor</name>
+    <message>
+        <location filename="../taskeditor.cpp" line="38"/>
+        <source>Current map</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="45"/>
+        <source>Active tasks</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="52"/>
+        <source>New tasks</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="68"/>
+        <location filename="../taskeditor.cpp" line="73"/>
+        <source>Edit heading</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished">Editar tópico</translation>
+    </message>
+</context>
+<context>
+    <name>TaskModel</name>
+    <message>
+        <location filename="../taskmodel.cpp" line="127"/>
+        <source>Prio</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="129"/>
+        <source>Status</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="131"/>
+        <source>Age total</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="133"/>
+        <source>Age mod.</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="135"/>
+        <source>Sleep</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="137"/>
+        <source>Map</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="139"/>
+        <source>Task</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>TextEditor</name>
+    <message>
+        <location filename="../texteditor.cpp" line="273"/>
+        <source>&amp;Import...</source>
+        <translation>&amp;Importar...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="283"/>
+        <source>&amp;Export...</source>
+        <translation>E&amp;xportar...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="293"/>
+        <source>Export &amp;As... (HTML)</source>
+        <translation>Exportar Como... (&amp;HTML)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="298"/>
+        <source>Export &amp;As...(ASCII)</source>
+        <translation>Exportar Como... (&amp;Texto)</translation>
+    </message>
+    <message>
+        <source>Print Note</source>
+        <translation type="obsolete">Imprimir Nota</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="308"/>
+        <source>&amp;Print...</source>
+        <translation>Im&amp;primir...</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <translation type="vanished">&amp;Editar</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="332"/>
+        <source>&amp;Undo</source>
+        <translation>Desfa&amp;zer</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="341"/>
+        <source>&amp;Redo</source>
+        <translation>&amp;Refazer</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="351"/>
+        <source>Select and copy &amp;all</source>
+        <translation>Selecionar e copiar &amp;tudo</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="359"/>
+        <source>&amp;Copy</source>
+        <translation>&amp;Copiar</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="368"/>
+        <source>Cu&amp;t</source>
+        <translation>Recor&amp;tar</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="377"/>
+        <source>&amp;Paste</source>
+        <translation>C&amp;olar</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="316"/>
+        <source>&amp;Delete All</source>
+        <translation>&amp;Apagar Tudo</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="271"/>
+        <location filename="../texteditor.cpp" line="325"/>
+        <location filename="../texteditor.cpp" line="389"/>
+        <source>Texteditor</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="329"/>
+        <source>Edi&amp;t</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="390"/>
+        <source>Font hints</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="396"/>
+        <source>&amp;Font hint</source>
+        <translation>&amp;Fonte Sugerida</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="407"/>
+        <source>&amp;Richtext</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="417"/>
+        <source>Fonts</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="443"/>
+        <source>Format</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="448"/>
+        <source>&amp;Color...</source>
+        <translation>&amp;Cor...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="454"/>
+        <source>&amp;Bold</source>
+        <translation>&amp;Negrito</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="464"/>
+        <source>&amp;Italic</source>
+        <translation>&amp;Itálico</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="474"/>
+        <source>&amp;Underline</source>
+        <translation>&amp;Sublinhado</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="512"/>
+        <source>&amp;Left</source>
+        <translation>&amp;Esquerda</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="518"/>
+        <source>C&amp;enter</source>
+        <translation>Ce&amp;ntralizado</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="524"/>
+        <source>&amp;Right</source>
+        <translation>&amp;Direita</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="530"/>
+        <source>&amp;Justify</source>
+        <translation>&amp;Justificado</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="540"/>
+        <source>&amp;Settings</source>
+        <translation>&amp;Configurações</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="543"/>
+        <source>Set &amp;fixed font</source>
+        <translation>Definir fonte fi&amp;xa</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="548"/>
+        <source>Set &amp;variable font</source>
+        <translation>Definir fonte &amp;variável</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="553"/>
+        <source>&amp;fixed font is default</source>
+        <translation>Fonte fi&amp;xa como padrão</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="704"/>
+        <source>Export Note to single file</source>
+        <translation>Exportar Nota como Arquivo</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="724"/>
+        <location filename="../texteditor.cpp" line="800"/>
+        <source>Overwrite</source>
+        <translation>Sobrescrever</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="725"/>
+        <location filename="../texteditor.cpp" line="801"/>
+        <source>Cancel</source>
+        <translation>Cancelar</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="785"/>
+        <source>Export Note to single file (ASCII)</source>
+        <translation>Exportar Nota para Arquivo (Texto)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="828"/>
+        <source>Print</source>
+        <comment>TextEditor</comment>
+        <translation type="unfinished">Imprimir</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="488"/>
+        <source>Subs&amp;cript</source>
+        <translation>S&amp;ubscrito</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="49"/>
+        <source>Text Editor</source>
+        <comment>Text Editor Window caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="498"/>
+        <source>Su&amp;perscript</source>
+        <translation>So&amp;brescrito</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="566"/>
+        <source>Note Editor</source>
+        <translation>Editor de Notas</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="392"/>
+        <source>F&amp;ormat</source>
+        <translation>&amp;Formatação</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="326"/>
+        <source>Edit Actions</source>
+        <translation>Ações de Edição</translation>
+    </message>
+    <message>
+        <source>Format Actions</source>
+        <translation type="obsolete">Ações de Formatação</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="267"/>
+        <source>Note Actions</source>
+        <translation>Ações de Notas</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="48"/>
+        <source>Ready</source>
+        <comment>Statusbar message</comment>
+        <translation>Pronto</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="174"/>
+        <source>No filename available for this note.</source>
+        <comment>Statusbar message</comment>
+        <translation>Nenhum arquivo está disponível para esta nota.</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation type="obsolete">Editor de Notas</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="269"/>
+        <source>&amp;Note</source>
+        <comment>Menubar</comment>
+        <translation>&amp;Nota</translation>
+    </message>
+    <message>
+        <source>Import</source>
+        <comment>Status tip for Note menu</comment>
+        <translation type="obsolete">Importar</translation>
+    </message>
+    <message>
+        <source>Export Note (HTML)</source>
+        <comment>Status tip for Note menu</comment>
+        <translation type="obsolete">Exportar Nota em HTML</translation>
+    </message>
+    <message>
+        <source>Export Note As (HTML) </source>
+        <comment>Status tip for Note Menu</comment>
+        <translation type="obsolete">Exportar Nota em HTML</translation>
+    </message>
+    <message>
+        <source>Export Note As (ASCII) </source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Exportar Nota em Texto</translation>
+    </message>
+    <message>
+        <source>Print Note</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Imprimir Nota</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Desfazer</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Refazer</translation>
+    </message>
+    <message>
+        <source>Select and copy all</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Selecionar e copiar tudo</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Copiar</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Recortar</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Colar</translation>
+    </message>
+    <message>
+        <source>Delete all</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Apagar tudo</translation>
+    </message>
+    <message>
+        <source>Toggle font hint for the whole text</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Usa sugestão de fonte enquanto digita</translation>
+    </message>
+    <message>
+        <source>Set fixed font</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Definir fonta fixa</translation>
+    </message>
+    <message>
+        <source>Set variable font</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Definir fonte variável</translation>
+    </message>
+    <message>
+        <source>Used fixed font by default</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Usar fonte fixa pro padrão</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="719"/>
+        <location filename="../texteditor.cpp" line="795"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation>O arquivo %1
+já existe.
+Deseja sobrescrevê-lo?</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="743"/>
+        <source>Couldn&apos;t export note </source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation>Não foi possível exportar nota</translation>
+    </message>
+</context>
+<context>
+    <name>TreeEditor</name>
+    <message>
+        <location filename="../treeeditor.cpp" line="27"/>
+        <source>Select upper object</source>
+        <comment>Tree Editor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../treeeditor.cpp" line="33"/>
+        <source>Select lower object</source>
+        <comment>Tree Editor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>VymModel</name>
+    <message>
+        <location filename="../vymmodel.cpp" line="126"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="149"/>
+        <source>unnamed</source>
+        <translation type="unfinished">sem nome</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="445"/>
+        <location filename="../vymmodel.cpp" line="481"/>
+        <location filename="../vymmodel.cpp" line="566"/>
+        <location filename="../vymmodel.cpp" line="622"/>
+        <source>Critical Parse Error</source>
+        <translation type="unfinished">Erro Crítico ao Ler</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="501"/>
+        <location filename="../vymmodel.cpp" line="551"/>
+        <source>Critical Load Error</source>
+        <translation type="unfinished">Erro Crítico ao Carregar</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="502"/>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation type="unfinished">Não foi possível criar diretório temporário antes de carregar
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="552"/>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="unfinished">Não foi possível encontrar um mapa (.xml) dentro do arquivo .vym.
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="980"/>
+        <source>unknown user</source>
+        <comment>Default for lockfiles of maps</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1003"/>
+        <source>Warning: Map already opended</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="671"/>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="unfinished">O mapa %1
+não usa o formato de arquivo comprimido.
+Salvar no formato descomprimido também salvará imagens
+e emblemas que podem sobrescrever arquivos já presentes no diretório.
+Deseja continuar salvando este mapa?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="679"/>
+        <source>compressed (vym default)</source>
+        <translation type="unfinished">comprimido (padrão)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="680"/>
+        <source>uncompressed</source>
+        <translation type="unfinished">descomprimido</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="681"/>
+        <location filename="../vymmodel.cpp" line="864"/>
+        <source>Cancel</source>
+        <translation type="unfinished">Cancelar</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="710"/>
+        <location filename="../vymmodel.cpp" line="715"/>
+        <source>Save Error</source>
+        <translation type="unfinished">Erro ao Salvar</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="711"/>
+        <source>%1
+could not be removed before saving</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="716"/>
+        <source>%1
+could not be renamed before saving</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="728"/>
+        <source>Critical Save Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="729"/>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation type="unfinished">Não foi possível criar diretório temporário antes de salvar
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <location filename="../vymmodel.cpp" line="5783"/>
+        <source>Images</source>
+        <translation type="unfinished">Imagens</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <source>All</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="792"/>
+        <source>Load image</source>
+        <translation type="unfinished">Carregar imagem</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="844"/>
+        <source>Save image</source>
+        <translation type="unfinished">Salvar imagem</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="856"/>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="unfinished">O arquivo %1 já existe.
+Deseja sobrescrevê-lo?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="863"/>
+        <source>Overwrite</source>
+        <translation type="unfinished">Sobrescrever</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Critical Error</source>
+        <translation type="unfinished">Erro Crítico</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <source>Unsupported format in %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Critical Import Error</source>
+        <translation type="unfinished">Erro Crítico ao Importar</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Cannot find the directory %1</source>
+        <translation type="unfinished">Não foi possível encontrar o diretório %1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="962"/>
+        <location filename="../vymmodel.cpp" line="965"/>
+        <source>Choose directory structure to import</source>
+        <translation type="unfinished">Escolha o diretório para importar</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="999"/>
+        <source>Map seems to be already opened in another vym instance!
+
+ Map is locked by &quot;%1&quot; on &quot;%2&quot;
+
+Please only delete the lockfile, if you are sure nobody else is currently working on this map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1008"/>
+        <source>Removed lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1014"/>
+        <source>Couldn&apos;t remove lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1021"/>
+        <source>Cannot create lockfile of map! It will be opened in readonly mode.
+
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1024"/>
+        <source>Warning</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished">Aviso</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1116"/>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1123"/>
+        <source>Reload</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1124"/>
+        <source>Ignore</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1013"/>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Warning</source>
+        <translation type="unfinished">Aviso</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <source>Redo failed:
+%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1274"/>
+        <source>Autosave disabled during undo.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2001"/>
+        <source>Note</source>
+        <comment>FindAll in VymModel</comment>
+        <translation type="unfinished">Nota</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2725"/>
+        <source>Image</source>
+        <comment>Default name for new image</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2958"/>
+        <source>New map</source>
+        <comment>New map</comment>
+        <translation type="unfinished">Novo mapa</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Script aborted:
+%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation type="obsolete">Informe URL:</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Imagens</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3822"/>
+        <source>Contacting Bugzilla...</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation type="obsolete">Ligar a outro mapa</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5185"/>
+        <source>Export map as image</source>
+        <translation type="unfinished">Exportar mapa como imagem</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Couldn&apos;t save QImage %1 in format %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5225"/>
+        <source>Export map as PDF</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5280"/>
+        <source>Export map as SVG</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5314"/>
+        <source>Export map as XML</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5321"/>
+        <source>Export XML to directory</source>
+        <translation type="unfinished">Exportar XML para diretório</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5367"/>
+        <source>Critical Export Error</source>
+        <translation type="unfinished">Erro Crítico ao Exportar</translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">Exportar como LaTeX</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>(still experimental)</source>
+        <translation type="unfinished">(ainda em testes)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>Export as csv</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5786"/>
+        <source>Load background image</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>VymProcess</name>
+    <message>
+        <location filename="../vymprocess.cpp" line="43"/>
+        <location filename="../vymprocess.cpp" line="48"/>
+        <source>Critical Error</source>
+        <translation type="unfinished">Erro Crítico</translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="44"/>
+        <source>Could not start %1</source>
+        <translation type="unfinished">Não foi possível executar %1</translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="49"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="unfinished">%1 não terminou normalmente</translation>
+    </message>
+</context>
+<context>
+    <name>VymView</name>
+    <message>
+        <location filename="../vymview.cpp" line="34"/>
+        <source>Tree Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymview.cpp" line="52"/>
+        <source>Slide Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>WarningDialog</name>
+    <message>
+        <source>VYM - Warning : Foo...</source>
+        <translation type="obsolete">VYM - Aviso : </translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished">Diálogo</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="91"/>
+        <source>showAgainBox</source>
+        <translation>showAgainBox</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="117"/>
+        <location filename="../warningdialog.cpp" line="45"/>
+        <source>Cancel</source>
+        <translation>Cancelar</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="124"/>
+        <source>Ok</source>
+        <translation>OK</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="10"/>
+        <source>Proceed</source>
+        <translation>Prosseguir</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="12"/>
+        <source>Show this message again</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+</TS>
diff --git a/lang/vym.ru.ts b/lang/vym.ru.ts
new file mode 100644 (file)
index 0000000..4d84c89
--- /dev/null
@@ -0,0 +1,5209 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="ru_RU">
+<context>
+    <name>AboutDialog</name>
+    <message>
+        <location filename="../aboutdialog.cpp" line="106"/>
+        <source>Credits</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="221"/>
+        <source>License</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="226"/>
+        <source>Ok</source>
+        <comment>Ok Button</comment>
+        <translation></translation>
+    </message>
+</context>
+<context>
+    <name>AboutTextBrowser</name>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Please use Settings-&gt;</source>
+        <translation> Используйте пункт &quot;Настройки&quot;-&gt;</translation>
+    </message>
+    <message>
+        <source>Set application to open an URL</source>
+        <translation type="obsolete">Выберите приложение для открытия URL</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="246"/>
+        <source>Warning</source>
+        <comment>About window</comment>
+        <translation>Внимание</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="247"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <comment>About window</comment>
+        <translation>Не найдено приложение для %1.
+</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Set application to open an URL...</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Attribute Dialog</name>
+    <message>
+        <source>AttributeDialog - Edit %1</source>
+        <translation type="obsolete">Редактировать %1</translation>
+    </message>
+</context>
+<context>
+    <name>AttributeDialog</name>
+    <message>
+        <source>Attributes</source>
+        <translation type="obsolete">Аттрибуты</translation>
+    </message>
+    <message>
+        <source>Add key</source>
+        <translation type="obsolete">Добавить ключ</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Закрыть</translation>
+    </message>
+</context>
+<context>
+    <name>AttributeWidget</name>
+    <message>
+        <source>Form</source>
+        <translation type="obsolete">Форма</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyEditor</name>
+    <message>
+        <location filename="../branchpropeditor.ui" line="20"/>
+        <source>Branch Property Editor</source>
+        <translation type="unfinished">Редактор свойств ветви</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="30"/>
+        <source>Frame</source>
+        <translation type="unfinished">Обрамление</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="51"/>
+        <source>Geometry</source>
+        <translation type="unfinished">Форма</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="64"/>
+        <source>No Frame</source>
+        <translation type="unfinished">Без обрамления</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="69"/>
+        <source>Rectangle</source>
+        <translation type="unfinished">Прямоугольник</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="74"/>
+        <source>Rounded Rectangle</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="79"/>
+        <source>Ellipse</source>
+        <translation type="unfinished">Эллипс</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="84"/>
+        <source>Cloud</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="105"/>
+        <source>Padding</source>
+        <translation type="unfinished">Отступы</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="112"/>
+        <source>Borderline width</source>
+        <translation type="unfinished">Ширина границы</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="136"/>
+        <source>Include children</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="169"/>
+        <source>Colors</source>
+        <translation type="unfinished">Цвета</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="209"/>
+        <source>Borderline color</source>
+        <translation type="unfinished">Цвет границы</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="232"/>
+        <source>Background color</source>
+        <translation type="unfinished">Цвет фона</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="261"/>
+        <source>Layout</source>
+        <translation type="unfinished">Разметка</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="269"/>
+        <source>Include images horizontally</source>
+        <translation type="unfinished">Размещать изображения горизонтально</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="276"/>
+        <source>Include images vertically</source>
+        <translation type="unfinished">Размещать изображения вертикально</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="283"/>
+        <source>Free positioning of children (experimental!)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="306"/>
+        <source>Link</source>
+        <translation type="unfinished">Ссылка</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="312"/>
+        <source>Hide link if unselected</source>
+        <translation type="unfinished">Скрыть невыбранную ссылку</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="333"/>
+        <source>Attributes</source>
+        <translation type="unfinished">Аттрибуты</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="359"/>
+        <source>+</source>
+        <translation type="unfinished">+</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="366"/>
+        <source>-</source>
+        <translation type="unfinished">-</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.cpp" line="19"/>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished">Редактор свойств</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyWindow</name>
+    <message>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation type="obsolete">Редактор свойств</translation>
+    </message>
+    <message>
+        <source>Name</source>
+        <comment>Branchprop window: Attribute name</comment>
+        <translation type="obsolete">Имя</translation>
+    </message>
+    <message>
+        <source>Value</source>
+        <comment>Branchprop window: Attribute value</comment>
+        <translation type="obsolete">Значение</translation>
+    </message>
+    <message>
+        <source>Type</source>
+        <comment>Branchprop window: Attribute type</comment>
+        <translation type="obsolete">Тип</translation>
+    </message>
+    <message>
+        <source>Branch Property Editor</source>
+        <translation type="obsolete">Редактор свойств ветви</translation>
+    </message>
+    <message>
+        <source>Frame</source>
+        <translation type="obsolete">Обрамление</translation>
+    </message>
+    <message>
+        <source>Geometry</source>
+        <translation type="obsolete">Форма</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <translation type="obsolete">Без обрамления</translation>
+    </message>
+    <message>
+        <source>Rectangle</source>
+        <translation type="obsolete">Прямоугольник</translation>
+    </message>
+    <message>
+        <source>Ellipse</source>
+        <translation type="obsolete">Эллипс</translation>
+    </message>
+    <message>
+        <source>Padding</source>
+        <translation type="obsolete">Отступы</translation>
+    </message>
+    <message>
+        <source>Borderline width</source>
+        <translation type="obsolete">Ширина границы</translation>
+    </message>
+    <message>
+        <source>Colors</source>
+        <translation type="obsolete">Цвета</translation>
+    </message>
+    <message>
+        <source>Borderline color</source>
+        <translation type="obsolete">Цвет границы</translation>
+    </message>
+    <message>
+        <source>Background color</source>
+        <translation type="obsolete">Цвет фона</translation>
+    </message>
+    <message>
+        <source>Layout</source>
+        <translation type="obsolete">Разметка</translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <translation type="obsolete">Размещать изображения горизонтально</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <translation type="obsolete">Размещать изображения вертикально</translation>
+    </message>
+    <message>
+        <source>Link</source>
+        <translation type="obsolete">Ссылка</translation>
+    </message>
+    <message>
+        <source>Hide link if unselected</source>
+        <translation type="obsolete">Скрыть невыбранную ссылку</translation>
+    </message>
+    <message>
+        <source>Attributes</source>
+        <translation type="obsolete">Аттрибуты</translation>
+    </message>
+    <message>
+        <source>+</source>
+        <translation type="obsolete">+</translation>
+    </message>
+    <message>
+        <source>-</source>
+        <translation type="obsolete">-</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Закрыть</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadAgent</name>
+    <message>
+        <location filename="../downloadagent.cpp" line="191"/>
+        <location filename="../downloadagent.cpp" line="195"/>
+        <source>Warning</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>EditXLinkDialog</name>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="20"/>
+        <source>Edit XLink</source>
+        <translation>Изменить XLink</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="40"/>
+        <source>Arrow begin:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="63"/>
+        <source>XLink width:</source>
+        <translation>Ширина XLink:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="79"/>
+        <source>Use color of heading</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="177"/>
+        <source>Line style:</source>
+        <extracomment>Linestyle in Edit XLink dialog</extracomment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="190"/>
+        <source>Arrow end:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="253"/>
+        <source>Close</source>
+        <translation type="unfinished">Закрыть</translation>
+    </message>
+    <message>
+        <source>Set color of heading</source>
+        <translation type="obsolete">Цвет заголовка</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="109"/>
+        <source>XLink color:</source>
+        <translation>Цвет XLink:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="151"/>
+        <source>Use as default:</source>
+        <translation>Использовать по умолчанию:</translation>
+    </message>
+    <message>
+        <source>Quit and delete XLink</source>
+        <translation type="obsolete">Выйти и удалить XLink</translation>
+    </message>
+    <message>
+        <source>Ok</source>
+        <translation type="obsolete">OK</translation>
+    </message>
+</context>
+<context>
+    <name>ExportHTMLDialog</name>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="26"/>
+        <source>Export HTML</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="61"/>
+        <source>Export to directory:</source>
+        <translation type="unfinished">Экспорт в каталог:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="90"/>
+        <location filename="../exporthtmldialog.ui" line="267"/>
+        <location filename="../exporthtmldialog.ui" line="280"/>
+        <location filename="../exporthtmldialog.ui" line="353"/>
+        <source>Browse</source>
+        <translation type="unfinished">Обзор</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="117"/>
+        <source>Options</source>
+        <translation type="unfinished">Опции</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="138"/>
+        <source>Image of map</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="145"/>
+        <source>Include images</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="152"/>
+        <source>Table of contents</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="159"/>
+        <source>Task flags</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="166"/>
+        <source>General flags</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="173"/>
+        <source>Number sections</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="231"/>
+        <source>Copy CSS from </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="251"/>
+        <source>Use CSS from</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Include image</source>
+        <translation type="obsolete">Include image</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="186"/>
+        <source>Colored headings in text</source>
+        <translation type="unfinished">Цветные заголовки в тексте</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="199"/>
+        <source>Save settings in map</source>
+        <translation type="unfinished">Сохранить настройки в карте</translation>
+    </message>
+    <message>
+        <source>show output of external scripts</source>
+        <translation type="obsolete">показывать вывод внешних скриптов</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="216"/>
+        <source>Stylesheets</source>
+        <translation type="unfinished">Стили</translation>
+    </message>
+    <message>
+        <source>CSS:</source>
+        <translation type="obsolete">CSS:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="297"/>
+        <source>Scripts</source>
+        <translation type="unfinished">Сценарии</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="327"/>
+        <source>After Export:</source>
+        <translation type="unfinished">После экспорта:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="382"/>
+        <source>Cancel</source>
+        <translation type="unfinished">Отмена</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="389"/>
+        <source>Export</source>
+        <translation type="unfinished">Экспортировать</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>Warning</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>The settings saved in the map would like to run script:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="123"/>
+        <source>VYM - Export HTML to directory</source>
+        <translation type="unfinished">VYM - Экспортировать HTML в папку</translation>
+    </message>
+</context>
+<context>
+    <name>ExportXHTMLDialog</name>
+    <message>
+        <source>Export XHTML</source>
+        <translation type="obsolete">Экспорт в XHTML</translation>
+    </message>
+    <message>
+        <source>Export to directory:</source>
+        <translation type="obsolete">Экспорт в каталог:</translation>
+    </message>
+    <message>
+        <source>Browse</source>
+        <translation type="obsolete">Обзор</translation>
+    </message>
+    <message>
+        <source>Options</source>
+        <translation type="obsolete">Опции</translation>
+    </message>
+    <message>
+        <source>show output of external scripts</source>
+        <translation type="obsolete">показывать вывод внешних скриптов</translation>
+    </message>
+    <message>
+        <source>Include image</source>
+        <translation type="obsolete">Include image</translation>
+    </message>
+    <message>
+        <source>Colored headings in text</source>
+        <translation type="obsolete">Цветные заголовки в тексте</translation>
+    </message>
+    <message>
+        <source>Save settings in map</source>
+        <translation type="obsolete">Сохранить настройки в карте</translation>
+    </message>
+    <message>
+        <source>Stylesheets</source>
+        <translation type="obsolete">Стили</translation>
+    </message>
+    <message>
+        <source>XSL:</source>
+        <translation type="obsolete">XSL:</translation>
+    </message>
+    <message>
+        <source>CSS:</source>
+        <translation type="obsolete">CSS:</translation>
+    </message>
+    <message>
+        <source>Scripts</source>
+        <translation type="obsolete">Сценарии</translation>
+    </message>
+    <message>
+        <source>Before export:</source>
+        <translation type="obsolete">До экспорта:</translation>
+    </message>
+    <message>
+        <source>After Export:</source>
+        <translation type="obsolete">После экспорта:</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <translation type="obsolete">Экспортировать</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Отмена</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="obsolete">Предупреждение</translation>
+    </message>
+    <message>
+        <source>The settings saved in the map would like to run scripts:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation type="obsolete">The settings saved in the map would like to run scripts:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</translation>
+    </message>
+    <message>
+        <source>VYM - Export HTML to directory</source>
+        <translation type="obsolete">VYM - Экспортировать HTML в папку</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <translation type="obsolete">Ошибка при открытии %1</translation>
+    </message>
+    <message>
+        <source>Could not write %1</source>
+        <translation type="obsolete">Ошибка при записи %1</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">Критическая ошибка</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation type="obsolete">Ошибка при запуске %1</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="obsolete">%1 завершился с ошибкой</translation>
+    </message>
+    <message>
+        <source>show warnings of xslt processor</source>
+        <translation type="obsolete">показывать предупреждения XSLT процессора</translation>
+    </message>
+</context>
+<context>
+    <name>ExtraInfoDialog</name>
+    <message>
+        <location filename="../extrainfodialog.ui" line="15"/>
+        <source>VYM - Info</source>
+        <translation>VYM - Информация</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="36"/>
+        <source>Map:</source>
+        <translation>Карта:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="53"/>
+        <source>Title:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="63"/>
+        <source>Author:</source>
+        <translation>Автор:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="86"/>
+        <source>Comment:</source>
+        <translation>Комментарии:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="96"/>
+        <source>Statistics:</source>
+        <translation>Статистика:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="139"/>
+        <source>Cancel</source>
+        <translation>Отмена</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="146"/>
+        <source>Close</source>
+        <translation>Закрыть</translation>
+    </message>
+</context>
+<context>
+    <name>FindWidget</name>
+    <message>
+        <location filename="../findwidget.cpp" line="25"/>
+        <source>Find:</source>
+        <comment>FindWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>FindWindow</name>
+    <message>
+        <source>Clear</source>
+        <translation type="obsolete">Очистить</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Отмена</translation>
+    </message>
+    <message>
+        <source>Find</source>
+        <translation type="obsolete">Найти</translation>
+    </message>
+    <message>
+        <source>Find Text</source>
+        <translation type="obsolete">Найти текст</translation>
+    </message>
+    <message>
+        <source>Text to find:</source>
+        <translation type="obsolete">Искать текст:</translation>
+    </message>
+</context>
+<context>
+    <name>Heading of mapcenter in new map</name>
+    <message>
+        <source>New map</source>
+        <translation type="vanished">Новая Карта</translation>
+    </message>
+</context>
+<context>
+    <name>HeadingEditor</name>
+    <message>
+        <location filename="../headingeditor.cpp" line="9"/>
+        <source>Heading Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HistoryWindow</name>
+    <message>
+        <location filename="../historywindow.ui" line="13"/>
+        <source>Dialog</source>
+        <translation>Dialog</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="50"/>
+        <source>Redo</source>
+        <translation>Вернуть</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="72"/>
+        <source>Time</source>
+        <translation>Время</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="77"/>
+        <source>Comment</source>
+        <translation>Комментарий</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="85"/>
+        <source>Undo</source>
+        <translation>Отменить</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="122"/>
+        <source>Close</source>
+        <translation>Закрыть</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="17"/>
+        <source>Action</source>
+        <comment>Table with actions</comment>
+        <translation>Действия</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="20"/>
+        <source>Comment</source>
+        <comment>Table with actions</comment>
+        <translation>Комментировать</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="23"/>
+        <source>Undo action</source>
+        <comment>Table with actions</comment>
+        <translation>Вернуть действие</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="125"/>
+        <source>Current state</source>
+        <comment>Current bar in history hwindow</comment>
+        <translation>Текущее состояние</translation>
+    </message>
+</context>
+<context>
+    <name>LineEditDialog</name>
+    <message>
+        <location filename="../lineeditdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="26"/>
+        <source>TextLabel</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="89"/>
+        <location filename="../lineeditdialog.cpp" line="17"/>
+        <source>Cancel</source>
+        <translation type="unfinished">Отмена</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="99"/>
+        <location filename="../lineeditdialog.cpp" line="9"/>
+        <source>Ok</source>
+        <translation type="unfinished">OK</translation>
+    </message>
+</context>
+<context>
+    <name>LockedFileDialog</name>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="116"/>
+        <location filename="../lockedfiledialog.cpp" line="7"/>
+        <source>Delete lockfile</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="123"/>
+        <location filename="../lockedfiledialog.cpp" line="6"/>
+        <source>Open readonly</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Main</name>
+    <message>
+        <source>Close Map</source>
+        <translation type="obsolete">Закрыть Карту</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <translation type="obsolete">Отменить</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <translation type="obsolete">Копировать</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="obsolete">Вырезать</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <translation type="obsolete">Вставить</translation>
+    </message>
+    <message>
+        <source>Move branch up</source>
+        <translation type="obsolete">Переместить вверх</translation>
+    </message>
+    <message>
+        <source>Move branch down</source>
+        <translation type="obsolete">Переместить вниз</translation>
+    </message>
+    <message>
+        <source>Scroll branch</source>
+        <translation type="obsolete">Свернуть ветвь</translation>
+    </message>
+    <message>
+        <source>Find</source>
+        <translation type="obsolete">Найти</translation>
+    </message>
+    <message>
+        <source>Open URL</source>
+        <translation type="obsolete">Открыть URL</translation>
+    </message>
+    <message>
+        <source>Edit URL</source>
+        <translation type="obsolete">Редактировать URL</translation>
+    </message>
+    <message>
+        <source>Use heading of selected branch as URL</source>
+        <translation type="obsolete">Использовать заголовок выбранной ветви как URL</translation>
+    </message>
+    <message>
+        <source>Jump to another vym map, if needed load it first</source>
+        <translation type="obsolete">Перейти на другую vym-Карту если необходимо загрузить её первой</translation>
+    </message>
+    <message>
+        <source>Edit link to another vym map</source>
+        <translation type="obsolete">Редактировать ссылку на другую vym-Карту</translation>
+    </message>
+    <message>
+        <source>Delete link to another vym map</source>
+        <translation type="obsolete">Удалить ссылку на другую vym-Карту</translation>
+    </message>
+    <message>
+        <source>Edit Map Info</source>
+        <translation type="obsolete">Изменить данные о Карте</translation>
+    </message>
+    <message>
+        <source>edit Heading</source>
+        <translation type="obsolete">Изменить заголовок</translation>
+    </message>
+    <message>
+        <source>Delete Selection</source>
+        <translation type="obsolete">Удалить выделенное</translation>
+    </message>
+    <message>
+        <source>Add a branch as child of selection</source>
+        <translation type="obsolete">Добавить новый дочерний узел</translation>
+    </message>
+    <message>
+        <source>Add a branch above selection</source>
+        <translation type="obsolete">Новый дочерний узел до выбранного</translation>
+    </message>
+    <message>
+        <source>Add a branch below selection</source>
+        <translation type="obsolete">Новый дочерний узел после выбранного</translation>
+    </message>
+    <message>
+        <source>Add map at selection</source>
+        <translation type="obsolete">Добавить Карту к выделенному</translation>
+    </message>
+    <message>
+        <source>Replace selection with map</source>
+        <translation type="obsolete">Заменить выделенное на Карту</translation>
+    </message>
+    <message>
+        <source>Save selection</source>
+        <translation type="obsolete">Сохранить выделенное</translation>
+    </message>
+    <message>
+        <source>Select upper branch</source>
+        <translation type="obsolete">Выбрать ветвь верхнего уровня</translation>
+    </message>
+    <message>
+        <source>Select lower branch</source>
+        <translation type="obsolete">Выбрать ветвь нижнего уровня</translation>
+    </message>
+    <message>
+        <source>Select left branch</source>
+        <translation type="obsolete">Выбрать левую ветвь</translation>
+    </message>
+    <message>
+        <source>Select right branch</source>
+        <translation type="obsolete">Выбрать правую ветвь</translation>
+    </message>
+    <message>
+        <source>Select first branch</source>
+        <translation type="obsolete">Выбрать первую ветвь</translation>
+    </message>
+    <message>
+        <source>Select last branch</source>
+        <translation type="obsolete">Выбрать последнюю ветвь</translation>
+    </message>
+    <message>
+        <source>Add Image</source>
+        <translation type="obsolete">Добавить изображение</translation>
+    </message>
+    <message>
+        <source>Set Color</source>
+        <translation type="obsolete">Цвет</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1883"/>
+        <source>Set &amp;Color</source>
+        <translation>&amp;Цвет</translation>
+    </message>
+    <message>
+        <source>Pick color
+Hint: You can pick a color from another branch and color using CTRL+Left Button</source>
+        <translation type="obsolete">Выбор цвета
+Подсказка: Вы можете использовать цвет другой ветви используя CTRL+ЛеваяКлавишаМыши</translation>
+    </message>
+    <message>
+        <source>Color branch</source>
+        <translation type="obsolete">Цвет ветви</translation>
+    </message>
+    <message>
+        <source>Color Subtree</source>
+        <translation type="obsolete">Цвет поддерева</translation>
+    </message>
+    <message>
+        <source>Line</source>
+        <translation type="obsolete">Линия</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1928"/>
+        <source>Linkstyle Line</source>
+        <translation>Линия-ссылка</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1942"/>
+        <source>Linkstyle Thick Line</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Use same color for links and headings</source>
+        <translation type="obsolete">Использовать один цвет для ссылок и заголовков</translation>
+    </message>
+    <message>
+        <source>Set Link Color</source>
+        <translation type="obsolete">Установить цвет сслыки</translation>
+    </message>
+    <message>
+        <source>Set Background Color</source>
+        <translation type="obsolete">Установить цвет фона</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1981"/>
+        <source>Set &amp;Background Color</source>
+        <translation>&amp;Установить цвет фона</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1995"/>
+        <source>&amp;View</source>
+        <translation>&amp;Вид</translation>
+    </message>
+    <message>
+        <source>Zoom reset</source>
+        <translation type="obsolete">Масштаб по-умолчанию</translation>
+    </message>
+    <message>
+        <source>Zoom in</source>
+        <translation type="obsolete">Увеличить</translation>
+    </message>
+    <message>
+        <source>Zoom out</source>
+        <translation type="obsolete">Уменьшить</translation>
+    </message>
+    <message>
+        <source>&amp;Settings</source>
+        <translation type="obsolete">&amp;Настройки</translation>
+    </message>
+    <message>
+        <source>Set application to open pdf files</source>
+        <translation type="obsolete">Установить приложение для открытия pdf</translation>
+    </message>
+    <message>
+        <source>Edit branch after adding it</source>
+        <translation type="obsolete">Редактировать ветвь после добавления</translation>
+    </message>
+    <message>
+        <source>Select branch after adding it</source>
+        <translation type="obsolete">Выбрать ветвь после добавления</translation>
+    </message>
+    <message>
+        <source>Select heading before editing</source>
+        <translation type="obsolete">Выбрать заголовок после редактирования</translation>
+    </message>
+    <message>
+        <source>&amp;Test</source>
+        <translation type="obsolete">&amp;Тест</translation>
+    </message>
+    <message>
+        <source>Open VYM Documentation (pdf)</source>
+        <translation type="obsolete">Открыть документацию VYM (pdf)</translation>
+    </message>
+    <message>
+        <source>Information about QT toolkit</source>
+        <translation type="obsolete">Информация о QT</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3460"/>
+        <source>Overwrite</source>
+        <translation>Перезаписать</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3188"/>
+        <location filename="../mainwindow.cpp" line="3235"/>
+        <location filename="../mainwindow.cpp" line="3461"/>
+        <source>Cancel</source>
+        <translation>Отмена</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1878"/>
+        <source>Formatting</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1997"/>
+        <source>Views</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2685"/>
+        <source>Download and show release notes</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2689"/>
+        <source>Check, if updates are available</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3187"/>
+        <source>Open anyway</source>
+        <translation>Открывать всегда</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3234"/>
+        <source>Create</source>
+        <translation>Создать</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3303"/>
+        <source>Load vym map</source>
+        <translation>Загрузить карту в формате VYM</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3306"/>
+        <source>Import: Add vym map to selection</source>
+        <translation>Импортирование: Добавить vym-Карту к выделению</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3309"/>
+        <source>Import: Replace selection with vym map</source>
+        <translation>Импортирование: Заменить выделение vym-Картой</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3775"/>
+        <source>Save modified map before closing it</source>
+        <translation>Сохранить изменнеую Карту перед закрытием</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3776"/>
+        <source>Discard changes</source>
+        <translation>Отменить изменения</translation>
+    </message>
+    <message>
+        <source>This map is not saved yet. Do you want to</source>
+        <translation type="obsolete">Эта карта не сохранена. Вы хотите</translation>
+    </message>
+    <message>
+        <source>Save map</source>
+        <translation type="obsolete">Сохранить Карту</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5045"/>
+        <source>VYM -Information:</source>
+        <translation>Информация VYM:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <location filename="../mainwindow.cpp" line="4130"/>
+        <source>Critical Error</source>
+        <translation>Критическая ошибка</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5787"/>
+        <source>Critcal error</source>
+        <translation>Критическая ошибка</translation>
+    </message>
+    <message>
+        <source>Remove only branch and keep its childs</source>
+        <translation type="obsolete">Удалить только ветвь и сохранить дочерние узлы</translation>
+    </message>
+    <message>
+        <source>Remove childs of branch</source>
+        <translation type="obsolete">Удалить потомков ветви</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2723"/>
+        <source>Add</source>
+        <translation>Добавить</translation>
+    </message>
+    <message>
+        <source>Set application to open external links</source>
+        <translation type="obsolete">Выберите приложение для открытия внешних ссылок</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="238"/>
+        <source>Note Editor</source>
+        <translation type="unfinished">Редактор Заметок</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="245"/>
+        <source>Heading Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="260"/>
+        <source>Search results list</source>
+        <comment>FindResultWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <comment>Toolbar for file actions</comment>
+        <translation type="obsolete">&amp;Карта</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2913"/>
+        <source>File actions toolbar</source>
+        <comment>Toolbar for file actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1067"/>
+        <source>PDF%1</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1071"/>
+        <source>SVG%1</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1040"/>
+        <source>Repeat last export (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2931"/>
+        <source>Edit actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="252"/>
+        <source>Script Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="314"/>
+        <source>Task list</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="273"/>
+        <source>Script Editor</source>
+        <comment>ScriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="218"/>
+        <source>Main window</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="219"/>
+        <source>Map Editors</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="220"/>
+        <source>Text Editors</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="967"/>
+        <source>&amp;Map</source>
+        <comment>Menu for file actions</comment>
+        <translation type="unfinished">&amp;Карта</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="992"/>
+        <source>&amp;Restore last session</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1208"/>
+        <source>Add attribute</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1316"/>
+        <source>&amp;Detach</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1317"/>
+        <source>Detach branch and use as mapcenter</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1334"/>
+        <source>Sort children backwards</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1411"/>
+        <source>Expand all branches</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1419"/>
+        <source>Expand one level</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1389"/>
+        <source>Collapse one level</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1400"/>
+        <source>Collapse unselected levels</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1355"/>
+        <source>Unscroll children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <source>Spreadsheet</source>
+        <translation type="unfinished">Таблица</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1101"/>
+        <source>Properties</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1290"/>
+        <source>Move branch up</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Переместить вверх</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1303"/>
+        <source>Move branch down</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Переместить вниз</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1360"/>
+        <source>Grow selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1369"/>
+        <source>Shrink selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1378"/>
+        <source>Reset selection size</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1429"/>
+        <source>References Context menu</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1498"/>
+        <source>Bugzilla handling</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1499"/>
+        <source>Create URL to SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1510"/>
+        <source>Get data from SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1519"/>
+        <source>Get data from SUSE Bugzilla for subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1528"/>
+        <source>SUSE Fate tool handling</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1529"/>
+        <source>Create URL to SUSE FATE tool</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1537"/>
+        <source>vymlinks - linking maps</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1574"/>
+        <source>Exports</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1586"/>
+        <source>Tasks</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1587"/>
+        <source>Toggle task</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1598"/>
+        <source>Cycle task status</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1609"/>
+        <source>Reset sleep</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1620"/>
+        <location filename="../mainwindow.cpp" line="1643"/>
+        <location filename="../mainwindow.cpp" line="1654"/>
+        <location filename="../mainwindow.cpp" line="1665"/>
+        <location filename="../mainwindow.cpp" line="1676"/>
+        <source>Sleep %1 days</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1632"/>
+        <source>Sleep %1 day</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1687"/>
+        <location filename="../mainwindow.cpp" line="1698"/>
+        <source>Sleep %1 weeks</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1730"/>
+        <source>Removing parts of a map</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1753"/>
+        <source>Various</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1765"/>
+        <source>Map properties...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1771"/>
+        <source>Add   ...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1792"/>
+        <source>Selections</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1793"/>
+        <source>Select</source>
+        <comment>Select menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1795"/>
+        <source>Toggle target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1804"/>
+        <source>Goto target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1812"/>
+        <source>Move to target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1840"/>
+        <source>Unselect all</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1848"/>
+        <source>Search functions</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1864"/>
+        <source>Find duplicate URLs</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2053"/>
+        <source>Note editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2064"/>
+        <source>Heading editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2525"/>
+        <source>Set author for new maps</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2613"/>
+        <source>Number of visible parents in task editor</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2618"/>
+        <source>Number of visible parents in find results window</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Info</source>
+        <translation type="obsolete">Информация</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1446"/>
+        <source>Open all URLs in subtree (including scrolled branches)</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1461"/>
+        <source>Extract URLs from note</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1754"/>
+        <source>Add timestamp</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1743"/>
+        <source>Remove children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2972"/>
+        <source>Zoom toolbar</source>
+        <comment>View Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2042"/>
+        <source>Center on selection</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2982"/>
+        <source>Editors toolbar</source>
+        <comment>Editor Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2994"/>
+        <source>Modifier modes toolbar</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="280"/>
+        <source>Property Editor</source>
+        <comment>PropertyEditor</comment>
+        <translation type="unfinished">Редактор свойств</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="287"/>
+        <source>History window</source>
+        <comment>HistoryWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1047"/>
+        <source>Webpage (HTML)...</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1051"/>
+        <source>Text (ASCII)...</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <source>Text with tasks</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1059"/>
+        <source>Text (A&amp;O report)...</source>
+        <comment>Export format</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1135"/>
+        <source>E&amp;dit</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1545"/>
+        <source>Open linked map in background tab</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1820"/>
+        <source>Select previous</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1830"/>
+        <source>Select next</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1918"/>
+        <source>Select default font</source>
+        <comment>Branch attribute</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1996"/>
+        <source>Toolbars</source>
+        <comment>Toolbars overview in view menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2018"/>
+        <source>Rotate counterclockwise</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2026"/>
+        <source>Rotate rclockwise</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2076"/>
+        <source>Tree editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2084"/>
+        <source>Task editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2094"/>
+        <source>Slide editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2102"/>
+        <source>Script editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2153"/>
+        <source>Next slide</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2160"/>
+        <source>Previous slide</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2242"/>
+        <location filename="../mainwindow.cpp" line="2245"/>
+        <source>URL to Bugzilla </source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2248"/>
+        <source>Map target</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2265"/>
+        <source>Standard Flags toolbar</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2279"/>
+        <source>Status - ok,done</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2283"/>
+        <source>Status - work in progress</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2287"/>
+        <source>Status - missing, not started</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2385"/>
+        <source>forward</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2397"/>
+        <source>Don&apos;t flagrget</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2630"/>
+        <source>Automatic layout</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2641"/>
+        <source>Test</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2694"/>
+        <source>Show keyboard shortcuts</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2698"/>
+        <source>Debug info</source>
+        <comment>Option to show debugging info</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2755"/>
+        <source>Tasks</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2796"/>
+        <source>XLinks</source>
+        <comment>Menu for file actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2803"/>
+        <source>Follow XLink</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished">Перейти по XLink</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2922"/>
+        <source>Undo and clipboard toolbar</source>
+        <comment>Toolbar for redo/undo and clipboard</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2948"/>
+        <source>Selection toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2956"/>
+        <source>URLs and vymLinks toolbar</source>
+        <comment>Toolbar for URLs and vymlinks</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2964"/>
+        <source>Colors toolbar</source>
+        <comment>Colors toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3126"/>
+        <source>unnamed</source>
+        <comment>MainWindow: name for new and empty file</comment>
+        <translation type="unfinished">vym-map</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3179"/>
+        <source>The map %1
+is already opened.Opening the same map in multiple editors may lead 
+to confusion when finishing working with vym.Do you want to</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3228"/>
+        <source>This map does not exist:
+  %1
+Do you want to create a new one?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3264"/>
+        <source>Loading: %1</source>
+        <comment>Progress dialog while loading maps</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3314"/>
+        <source>or</source>
+        <comment>File Dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3413"/>
+        <source>Saved  %1</source>
+        <translation>Сохранено %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3417"/>
+        <source>Couldn&apos;t save </source>
+        <translation>Ошибка при сохранении</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3444"/>
+        <source>Save map as</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3455"/>
+        <source>The file %1
+exists already. Do you want to</source>
+        <translation>Файл %1
+уже существует. Вы хотите</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <source>Couldn&apos;t save %1,
+because of existing lockfile:
+
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3746"/>
+        <source>Couldn&apos;t find configuration for export to LibreOffice
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3770"/>
+        <source>The map %1 has been modified but not saved yet. Do you want to</source>
+        <translation>Карта %1 была измененеа, но изменения не сохранены. Вы хотите</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3994"/>
+        <source>Enter URL:</source>
+        <translation type="unfinished">Введите URL:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4017"/>
+        <source>HTML</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4018"/>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">Текст</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4019"/>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">Таблица</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4020"/>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">Текстовый документ</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4021"/>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4025"/>
+        <source>Set URL to a local file</source>
+        <translation type="unfinished">Задать URL на локальный файл</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4131"/>
+        <source>Couldn&apos;t open map %1</source>
+        <translation>Ошибка при открытии Карты %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <source>Please allow vym to download release notes!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5968"/>
+        <source>&lt;html&gt;&lt;h3&gt;Do you allow vym to check online for updates or release notes?&lt;/h3&gt;If you allow, vym will &lt;ul&gt;&lt;li&gt;check once for release notes&lt;/li&gt;&lt;li&gt;check regulary for updates and notify you in case you should update, e.g. if there are important bug fixes available&lt;/li&gt;&lt;li&gt;receive a cookie with a random ID and send vym version and platform name and the ID  (e.g. &quot;Windows&quot; or &quot;Linux&quot;) back to me, Uwe Drechsel.&lt;p&gt;As vym developer I am motivated to see many people using vym. Of course I am curious to see, on which system vym is used. Maintaining each of the systems requires a lot of my (spare) time.&lt;/p&gt; &lt;p&gt;No other data than above will be sent, especially no private data will be collected or sent.(Check the source code, if you don&apos;t believe.)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;If you do not allow, &lt;ul&gt;&lt;li&gt;nothing will be downloaded and especially I will &lt;b&gt;not be motivated&lt;/b&gt; to spend some more thousands of hours on developing a free software tool.&lt;/ul&gt;Please allow vym to check for updates :-)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5997"/>
+        <source>Allow</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5998"/>
+        <source>Do not allow</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6004"/>
+        <source>Thank you for enabling downloads!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6027"/>
+        <source>Update information</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6033"/>
+        <source>vym is up to date.</source>
+        <comment>MainWindow</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6084"/>
+        <source>Checking for updates...</source>
+        <comment>MainWindow</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Please allow vym to check for updates!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Exit</source>
+        <translation type="obsolete">Выход</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="obsolete">Вернуть</translation>
+    </message>
+    <message>
+        <source>Hide link</source>
+        <translation type="obsolete">Скрыть ссылку</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2291"/>
+        <source>Take care!</source>
+        <comment>Standardflag</comment>
+        <translation>Аккуратнее!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2295"/>
+        <source>Really?</source>
+        <comment>Standardflag</comment>
+        <translation>Уверены?</translation>
+    </message>
+    <message>
+        <source>ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">OK!</translation>
+    </message>
+    <message>
+        <source>Not ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Не ОK!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2274"/>
+        <source>This won&apos;t work!</source>
+        <comment>Standardflag</comment>
+        <translation>Не будет работать!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2299"/>
+        <source>Good</source>
+        <comment>Standardflag</comment>
+        <translation>Хорошо</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2303"/>
+        <source>Bad</source>
+        <comment>Standardflag</comment>
+        <translation>Плохо</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2312"/>
+        <source>Time critical</source>
+        <comment>Standardflag</comment>
+        <translation>Временные рамки</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2318"/>
+        <source>Idea!</source>
+        <comment>Standardflag</comment>
+        <translation>О, идея!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2322"/>
+        <source>Important</source>
+        <comment>Standardflag</comment>
+        <translation>Важно</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2326"/>
+        <source>Unimportant</source>
+        <comment>Standardflag</comment>
+        <translation>Неважно</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2339"/>
+        <source>I like this</source>
+        <comment>Standardflag</comment>
+        <translation>Мне это нравится</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2343"/>
+        <source>I do not like this</source>
+        <comment>Standardflag</comment>
+        <translation>Мне это не нравится</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2356"/>
+        <source>Dangerous</source>
+        <comment>Standardflag</comment>
+        <translation>Опасность</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2364"/>
+        <source>This will help</source>
+        <comment>Standardflag</comment>
+        <translation>Должно помочь</translation>
+    </message>
+    <message>
+        <source>About VYM</source>
+        <translation type="obsolete">О View Your Mind</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <location filename="../mainwindow.cpp" line="3596"/>
+        <source>Import</source>
+        <translation>Импортировать</translation>
+    </message>
+    <message>
+        <source>KDE Bookmarks</source>
+        <translation type="obsolete">Закладки KDE</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <location filename="../mainwindow.cpp" line="1087"/>
+        <location filename="../mainwindow.cpp" line="1091"/>
+        <location filename="../mainwindow.cpp" line="1095"/>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <source>(still experimental)</source>
+        <translation>(still experimental)</translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">Экспортировать в LaTeX</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1110"/>
+        <source>&amp;Print</source>
+        <translation>&amp;Печать</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <location filename="../mainwindow.cpp" line="3724"/>
+        <source>Export to</source>
+        <translation>Экспортировать в</translation>
+    </message>
+    <message>
+        <source>Hide object in exports</source>
+        <translation type="obsolete">Скрыть объект при экспорте</translation>
+    </message>
+    <message>
+        <source>Use hide flag during exports </source>
+        <translation type="obsolete">Не экспортировать помеченные объекты</translation>
+    </message>
+    <message>
+        <source>Open URL in new tab</source>
+        <translation type="obsolete">Открыть URL в новой закладке</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3745"/>
+        <location filename="../mainwindow.cpp" line="3875"/>
+        <location filename="../mainwindow.cpp" line="3918"/>
+        <location filename="../mainwindow.cpp" line="4260"/>
+        <location filename="../mainwindow.cpp" line="5800"/>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Warning</source>
+        <translation>Предупреждение</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3876"/>
+        <location filename="../mainwindow.cpp" line="5801"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <translation>Не найдено приложение для открытия %1.</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Please use Settings-&gt;</source>
+        <translation> Используйте пункт &quot;Настройки&quot;-&gt;</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="4981"/>
+        <source>Set application to open an URL</source>
+        <translation>Выберите приложение для открытия URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3919"/>
+        <source>Couldn&apos;t start %1 to open a new tab in %2.</source>
+        <translation>Ошибка при запуске %1 для открытия в новой закладке %2.</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4183"/>
+        <location filename="../mainwindow.cpp" line="4185"/>
+        <source>Link to another map</source>
+        <translation type="unfinished">Ссылка на другую Карту</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4244"/>
+        <source>Enter sleep time (number of days or date YYYY-MM-DD or DD.MM[.YYYY]</source>
+        <comment>task sleep time dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4261"/>
+        <source>Couldn&apos;t set sleep time to %1.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4304"/>
+        <source>branches</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4305"/>
+        <source>notes</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4306"/>
+        <source>images</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4307"/>
+        <source>tasks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4308"/>
+        <source>slides</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4309"/>
+        <source>xLinks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4967"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Set application to open PDF files</source>
+        <translation>Выберите приложение для открытия PDF документов</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2307"/>
+        <source>Oh no!</source>
+        <comment>Standardflag</comment>
+        <translation>Вот блин!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2315"/>
+        <source>Call...</source>
+        <comment>Standardflag</comment>
+        <translation>Звонок...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2330"/>
+        <source>Very important!</source>
+        <comment>Standardflag</comment>
+        <translation>Очень важно!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2334"/>
+        <source>Very unimportant!</source>
+        <comment>Standardflag</comment>
+        <translation>Совсем неважно!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2347"/>
+        <source>Rose</source>
+        <comment>Standardflag</comment>
+        <translation>Розочка</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2353"/>
+        <source>Surprise!</source>
+        <comment>Standardflag</comment>
+        <translation>Сюрприз!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2360"/>
+        <source>Info</source>
+        <comment>Standardflag</comment>
+        <translation>Информация</translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <translation type="obsolete">Закладки Firefox</translation>
+    </message>
+    <message>
+        <source>Show Note Editor</source>
+        <translation type="obsolete">Показать редактор заметок</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3533"/>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <source>Bookmarks</source>
+        <translation>Закладки</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start %1 to open a new tab</source>
+        <translation type="obsolete">Ошибка при запуске %1 для открытия в новой закладке</translation>
+    </message>
+    <message>
+        <source>Standard Flags</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation type="obsolete">Стандартные флаги</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find configuration for export to Open Office
+</source>
+        <translation type="vanished">Ошибка конфигурации экспорта в Open Office
+</translation>
+    </message>
+    <message>
+        <source>No matches found for &quot;%1&quot;</source>
+        <translation type="obsolete">Совпадений не найдено для &quot;%1&quot;</translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <translation type="obsolete">&amp;Карта</translation>
+    </message>
+    <message>
+        <source>Open all URLs in subtree</source>
+        <translation type="obsolete">Открыть все URL в поддереве</translation>
+    </message>
+    <message>
+        <source>Open all vym links in subtree</source>
+        <translation type="obsolete">Открыть все vym-ссылки в поддереве</translation>
+    </message>
+    <message>
+        <source>Sorry, currently only Konqueror and Mozilla support tabbed browsing.</source>
+        <translation type="obsolete">Извините, в данный момент только Konwueror и Mozilla поддерживают закладки.</translation>
+    </message>
+    <message>
+        <source>New map</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">Новая Карта</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="985"/>
+        <source>&amp;Open...</source>
+        <comment>File menu</comment>
+        <translation>&amp;Открыть...</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">Открыть</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1000"/>
+        <source>Open Recent</source>
+        <comment>File menu</comment>
+        <translation>Открыть последние</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1003"/>
+        <source>&amp;Save...</source>
+        <comment>File menu</comment>
+        <translation>&amp;Сохранить...</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">Сохранить</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1011"/>
+        <source>Save &amp;As...</source>
+        <comment>File menu</comment>
+        <translation>Сохранить &amp;как...</translation>
+    </message>
+    <message>
+        <source>Save &amp;As</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">Сохранить &amp;как</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1017"/>
+        <source>Import</source>
+        <comment>File menu</comment>
+        <translation>Импортировать</translation>
+    </message>
+    <message>
+        <source>Import %1</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">Импортировать %1</translation>
+    </message>
+    <message>
+        <source>KDE bookmarks</source>
+        <translation type="obsolete">Закладки KDE</translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Закладки Firefox</translation>
+    </message>
+    <message>
+        <source>Import %1</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Импортировать %1</translation>
+    </message>
+    <message>
+        <source>Import Dir%1</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Папка для импортирования %1</translation>
+    </message>
+    <message>
+        <source>Import directory structure (experimental)</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Import directory structure (experimental)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1038"/>
+        <source>Export</source>
+        <comment>File menu</comment>
+        <translation>Экспортировать</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1063"/>
+        <source>Image%1</source>
+        <comment>File export menu</comment>
+        <translation>Изображение%1</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Экспортировать Карту как изображение</translation>
+    </message>
+    <message>
+        <source>Export in Open Document Format used e.g. in Open Office </source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Экспортировать в формат Open Document (Open Office)</translation>
+    </message>
+    <message>
+        <source>Export as %1</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Экспоритровать в %1</translation>
+    </message>
+    <message>
+        <source> webpage (XHTML)</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">веб-страница (XHTML)</translation>
+    </message>
+    <message>
+        <source>Export as %1</source>
+        <translation type="obsolete">Экспоритровать в %1</translation>
+    </message>
+    <message>
+        <source>KDE Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Закладки KDE</translation>
+    </message>
+    <message>
+        <source>Print</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Печать</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1118"/>
+        <source>&amp;Close Map</source>
+        <comment>File menu</comment>
+        <translation>&amp;Закрыть Карту</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1124"/>
+        <source>E&amp;xit</source>
+        <comment>File menu</comment>
+        <translation>&amp;Выход</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Правка</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1139"/>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Отменить</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1150"/>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Вернуть</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1161"/>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Копировать</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1172"/>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation>Выреза&amp;ть</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1185"/>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Вставить</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Изменить заголовок</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1197"/>
+        <source>Delete Selection</source>
+        <comment>Edit menu</comment>
+        <translation>Удалить выделенное</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1232"/>
+        <source>Add branch as child</source>
+        <comment>Edit menu</comment>
+        <translation>Добавить дочернюю ветвь</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1242"/>
+        <source>Add branch (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>Добавить ветвь (insert)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1252"/>
+        <location filename="../mainwindow.cpp" line="1262"/>
+        <source>Add branch above</source>
+        <comment>Edit menu</comment>
+        <translation>Добавить ветвь перед текущей</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1272"/>
+        <location filename="../mainwindow.cpp" line="1281"/>
+        <source>Add branch below</source>
+        <comment>Edit menu</comment>
+        <translation>Добавить ветвь после текущей</translation>
+    </message>
+    <message>
+        <source>Move up</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Переместить вверх</translation>
+    </message>
+    <message>
+        <source>Move down</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Переместить вниз</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1343"/>
+        <source>Scroll branch</source>
+        <comment>Edit menu</comment>
+        <translation>Свернуть ветвь</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1849"/>
+        <location filename="../mainwindow.cpp" line="1857"/>
+        <source>Find...</source>
+        <comment>Edit menu</comment>
+        <translation>Найти...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1430"/>
+        <source>Open URL</source>
+        <comment>Edit menu</comment>
+        <translation>Открыть URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="124"/>
+        <source>Main window</source>
+        <comment>Shortcut scope</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1438"/>
+        <source>Open URL in new tab</source>
+        <comment>Edit menu</comment>
+        <translation>Открыть URL в новой закладке</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1454"/>
+        <source>Open all URLs in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Открыть все URL в поддереве</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1470"/>
+        <source>Edit URL...</source>
+        <comment>Edit menu</comment>
+        <translation>Изменить URL...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1488"/>
+        <source>Use heading for URL</source>
+        <comment>Edit menu</comment>
+        <translation>Use heading for URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1538"/>
+        <source>Open linked map</source>
+        <comment>Edit menu</comment>
+        <translation>Open linked map</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1552"/>
+        <source>Open all vym links in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Открыть все  ссылки в поддереве</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1560"/>
+        <source>Edit vym link...</source>
+        <comment>Edit menu</comment>
+        <translation>Редактировать ссылку...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1567"/>
+        <source>Delete vym link</source>
+        <comment>Edit menu</comment>
+        <translation>Удалить ссылку</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1575"/>
+        <source>Hide in exports</source>
+        <comment>Edit menu</comment>
+        <translation>Скрыть при экспортировании</translation>
+    </message>
+    <message>
+        <source>Edit Map Info...</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Изменить данные Карты...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1710"/>
+        <source>Add map (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>Добавить Карту (вставить)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1717"/>
+        <source>Add map (replace)</source>
+        <comment>Edit menu</comment>
+        <translation>Добавить Карту (заменить)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1724"/>
+        <source>Save selection</source>
+        <comment>Edit menu</comment>
+        <translation>Сохранить выделенное</translation>
+    </message>
+    <message>
+        <source>Remove only branch </source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Удалить только ветвь</translation>
+    </message>
+    <message>
+        <source>Remove childs</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Удалить дочерние ветви</translation>
+    </message>
+    <message>
+        <source>Select left branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Выбрать левую ветвь</translation>
+    </message>
+    <message>
+        <source>Select child branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Выбрать дочернюю ветвь</translation>
+    </message>
+    <message>
+        <source>Select first branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Выбрать первую ветвь</translation>
+    </message>
+    <message>
+        <source>Select last branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Выбрать последнюю ветвь</translation>
+    </message>
+    <message>
+        <source>Add Image...</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Добавить изображение...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1876"/>
+        <source>F&amp;ormat</source>
+        <comment>Format menu</comment>
+        <translation>Ф&amp;ормат</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1889"/>
+        <source>Pic&amp;k color</source>
+        <comment>Edit menu</comment>
+        <translation>Выб&amp;рать цвет</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1898"/>
+        <source>Color &amp;branch</source>
+        <comment>Edit menu</comment>
+        <translation>Цвет &amp;ветви</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1907"/>
+        <source>Color sub&amp;tree</source>
+        <comment>Edit menu</comment>
+        <translation>Цвет под&amp;дерева</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1958"/>
+        <source>Hide link if object is not selected</source>
+        <comment>Branch attribute</comment>
+        <translation>Скрыть ссылку если объект не выбран</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1964"/>
+        <source>&amp;Use color of heading for link</source>
+        <comment>Branch attribute</comment>
+        <translation>&amp;Использовать цвет заголовка для ссылки</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2034"/>
+        <source>reset Zoom</source>
+        <comment>View action</comment>
+        <translation>reset Zoom</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2002"/>
+        <source>Zoom in</source>
+        <comment>View action</comment>
+        <translation>Увеличить</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1021"/>
+        <source>Firefox Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation type="unfinished">Закладки Firefox</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <source>Import Dir%1</source>
+        <comment>Import Filters</comment>
+        <translation type="unfinished">Папка для импортирования %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1733"/>
+        <source>Remove only branch and keep its children </source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2010"/>
+        <source>Zoom out</source>
+        <comment>View action</comment>
+        <translation>Уменьшить</translation>
+    </message>
+    <message>
+        <source>Show Note Editor</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Редактор Заметок</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2178"/>
+        <source>Use modifier to color branches</source>
+        <comment>Mode modifier</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2194"/>
+        <source>Use modifier to draw xLinks</source>
+        <comment>Mode modifier</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2531"/>
+        <source>Set application to open pdf files</source>
+        <comment>Settings action</comment>
+        <translation>Установить приложение для открытия pdf</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2535"/>
+        <source>Set application to open external links</source>
+        <comment>Settings action</comment>
+        <translation>Выберите приложение для открытия внешних ссылок</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2581"/>
+        <source>Edit branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>Редактировать ветвь после добавления</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2587"/>
+        <source>Select branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>Выбрать ветвь после добавления</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2593"/>
+        <source>Select existing heading</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Delete key</source>
+        <comment>Settings action</comment>
+        <translation type="obsolete">Удалить</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2599"/>
+        <source>Exclusive flags</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2605"/>
+        <source>Use hide flags</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2673"/>
+        <source>&amp;Help</source>
+        <comment>Help menubar entry</comment>
+        <translation>&amp;Справка</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2676"/>
+        <source>Open VYM Documentation (pdf) </source>
+        <comment>Help action</comment>
+        <translation>Открыть документацию VYM (pdf)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2702"/>
+        <source>About VYM</source>
+        <comment>Help action</comment>
+        <translation>Информация о программе</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2706"/>
+        <source>About QT</source>
+        <comment>Help action</comment>
+        <translation>Информация о QT</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2735"/>
+        <source>Remove</source>
+        <comment>Context menu name</comment>
+        <translation>Удалить</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2798"/>
+        <source>Edit XLink</source>
+        <comment>Context menu name</comment>
+        <translation>Изменить XLink</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2809"/>
+        <source>Follow XLink</source>
+        <comment>Context menu name</comment>
+        <translation>Перейти по XLink</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2818"/>
+        <source>Save image</source>
+        <comment>Context action</comment>
+        <translation>Сохранить изображение</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="971"/>
+        <source>&amp;New map</source>
+        <comment>File menu</comment>
+        <translation>Новая Кар&amp;та</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="978"/>
+        <source>&amp;Copy to new map</source>
+        <comment>File menu</comment>
+        <translation>&amp;Копировать в новую карту</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1221"/>
+        <source>Add mapcenter</source>
+        <comment>Canvas context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1325"/>
+        <source>Sort children</source>
+        <comment>Edit menu</comment>
+        <translation>Сортировать дочерние ветви</translation>
+    </message>
+    <message>
+        <source>Unscroll childs</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Развернуть дочерние ветви</translation>
+    </message>
+    <message>
+        <source>Unscroll all scrolled branches in selected subtree</source>
+        <translation type="obsolete">Развернуть свернутые ветви в выбранном поддереве</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1479"/>
+        <source>Edit local URL...</source>
+        <comment>Edit menu</comment>
+        <translation>Редактировать локальный URL...</translation>
+    </message>
+    <message>
+        <source>Edit local URL</source>
+        <translation type="obsolete">Редактировать локальный URL</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Создать URL в Novell Bugzilla</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell Bugzilla</source>
+        <translation type="obsolete">Создать URL в Novell Bugzilla</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell FATE</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Создать URL в Novell FATE</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell FATE</source>
+        <translation type="obsolete">Создать URL в Novell FATE</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1779"/>
+        <source>Property window</source>
+        <comment>Dialog to edit properties of selection</comment>
+        <translation>Свойства</translation>
+    </message>
+    <message>
+        <source>Set properties for selection</source>
+        <translation type="obsolete">Установить свойства выделения</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1935"/>
+        <source>Linkstyle Curve</source>
+        <translation>Linkstyle Curve</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1949"/>
+        <source>Linkstyle Thick Curve</source>
+        <translation>Linkstyle Thick Curve</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1971"/>
+        <source>Set &amp;Link Color</source>
+        <translation>Установить цвет &amp;сслыки</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1976"/>
+        <source>Set &amp;Selection Color</source>
+        <translation>Установить &amp;цвет выделения</translation>
+    </message>
+    <message>
+        <source>Set Selection Color</source>
+        <translation type="obsolete">Установить цвет выделения</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1986"/>
+        <source>Set &amp;Background image</source>
+        <translation>Установить фоновое &amp;изображение</translation>
+    </message>
+    <message>
+        <source>Set Background image</source>
+        <translation type="obsolete">Установить фоновое изображение</translation>
+    </message>
+    <message>
+        <source>Show selection</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Показать выделенный узел</translation>
+    </message>
+    <message>
+        <source>Show selection</source>
+        <translation type="obsolete">Показать выделенный узел</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2110"/>
+        <source>History Window</source>
+        <comment>View action</comment>
+        <translation>История изменений</translation>
+    </message>
+    <message>
+        <source>Show History Window</source>
+        <translation type="obsolete">Показать Историю Изменений</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2124"/>
+        <source>Antialiasing</source>
+        <comment>View action</comment>
+        <translation>Сглаживание</translation>
+    </message>
+    <message>
+        <source>Antialiasing</source>
+        <translation type="obsolete">Сглаживание</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2131"/>
+        <source>Smooth pixmap transformations</source>
+        <comment>View action</comment>
+        <translation>Smooth pixmap transformations</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2139"/>
+        <source>Next Map</source>
+        <comment>View action</comment>
+        <translation>Следующая Карта</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2146"/>
+        <source>Previous Map</source>
+        <comment>View action</comment>
+        <translation>Предыдущая Карта</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2174"/>
+        <source>Modifier modes</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2213"/>
+        <location filename="../mainwindow.cpp" line="2216"/>
+        <location filename="../mainwindow.cpp" line="2219"/>
+        <location filename="../mainwindow.cpp" line="2223"/>
+        <location filename="../mainwindow.cpp" line="2226"/>
+        <location filename="../mainwindow.cpp" line="2229"/>
+        <location filename="../mainwindow.cpp" line="2233"/>
+        <location filename="../mainwindow.cpp" line="2236"/>
+        <source>Note</source>
+        <comment>SystemFlag</comment>
+        <translation>Заметки</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2239"/>
+        <source>URL to Document </source>
+        <comment>SystemFlag</comment>
+        <translation>URL документа </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2251"/>
+        <source>Link to another vym map</source>
+        <comment>SystemFlag</comment>
+        <translation>Ссылка на другую vym-Карту</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2254"/>
+        <source>subtree is scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation>subtree is scrolled</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2257"/>
+        <source>subtree is temporary scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation>subtree is temporary scrolled</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2260"/>
+        <source>Hide object in exported maps</source>
+        <comment>SystemFlag</comment>
+        <translation>Скрыть объект при экспорте</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2350"/>
+        <source>I just love...</source>
+        <comment>Standardflag</comment>
+        <translation>Просто люблю...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2369"/>
+        <source>Important</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Важно</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2376"/>
+        <source>Priority</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Приоритет</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2381"/>
+        <source>Back</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Назад</translation>
+    </message>
+    <message>
+        <source>Forward</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="obsolete">Фперёд</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2389"/>
+        <source>Look here</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Посмотреть тут</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2393"/>
+        <source>Dangerous</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Опасность</translation>
+    </message>
+    <message>
+        <source>Don&apos;t forget</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="obsolete">Не забыть</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2401"/>
+        <source>Flag</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Флаг</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2406"/>
+        <source>Home</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Дом</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2410"/>
+        <source>Telephone</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Телефон</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2414"/>
+        <source>Music</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Музыка</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2418"/>
+        <source>Mailbox</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Почта</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2422"/>
+        <source>Maix</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Maix</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2426"/>
+        <source>Password</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Пароль</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2430"/>
+        <source>To be improved</source>
+        <comment>Freemind-Flag</comment>
+        <translation>На улучшение</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2434"/>
+        <source>Stop</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Стоп</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2438"/>
+        <source>Magic</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Magic</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2442"/>
+        <source>To be discussed</source>
+        <comment>Freemind-Flag</comment>
+        <translation>На обсуждение</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2446"/>
+        <source>Reminder</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Напоминание</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2450"/>
+        <source>Excellent</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Великолепно</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2454"/>
+        <source>Linux</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Linux</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2458"/>
+        <source>Sweet</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Мило</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2514"/>
+        <source>Settings</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2518"/>
+        <source>Check for release notes and updates</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2539"/>
+        <source>Set application to zip/unzip files</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2543"/>
+        <source>Set path for macros</source>
+        <comment>Settings action</comment>
+        <translation>Установить папку для макросов</translation>
+    </message>
+    <message>
+        <source>Set path for macros</source>
+        <translation type="obsolete">Установить папку для макросов</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2547"/>
+        <source>Set number of undo levels</source>
+        <comment>Settings action</comment>
+        <translation>Установить количество уровней отмены</translation>
+    </message>
+    <message>
+        <source>Set number of undo levels</source>
+        <translation type="obsolete">Установить количество уровней отмены</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2553"/>
+        <source>Autosave</source>
+        <comment>Settings action</comment>
+        <translation>Автосохранение</translation>
+    </message>
+    <message>
+        <source>Autosave</source>
+        <translation type="obsolete">Автосохранение</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2559"/>
+        <source>Autosave time</source>
+        <comment>Settings action</comment>
+        <translation>Интервал автосохранения</translation>
+    </message>
+    <message>
+        <source>Autosave time</source>
+        <translation type="obsolete">Интервал автосохранения</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2572"/>
+        <source>Write backup file on save</source>
+        <comment>Settings action</comment>
+        <translation>Создать резрвную копию при сохранении</translation>
+    </message>
+    <message>
+        <source>Write backup file on save</source>
+        <translation type="obsolete">Создать резрвную копию при сохранении</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2623"/>
+        <source>Animation</source>
+        <comment>Settings action</comment>
+        <translation>Анимация</translation>
+    </message>
+    <message>
+        <source>Animation</source>
+        <translation type="obsolete">Анимация</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2680"/>
+        <source>Open VYM example maps </source>
+        <comment>Help action</comment>
+        <translation>Открыть примеры карт</translation>
+    </message>
+    <message>
+        <source>Open VYM example maps </source>
+        <translation type="obsolete">Открыть примеры карт</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2772"/>
+        <source>References (URLs, vymLinks, ...)</source>
+        <comment>Context menu name</comment>
+        <translation>Ссылки ( URLs, vym-Cсылки, ...)</translation>
+    </message>
+    <message>
+        <source>&amp;%1 %2</source>
+        <translation type="obsolete">&amp;%1 %2</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3563"/>
+        <source>Load Freemind map</source>
+        <translation>Загрузить Карту в формате FreeMind</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <source>Export as CSV</source>
+        <translation>Экспортировать в CVS</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4286"/>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished">%1 объектов на карте
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5000"/>
+        <location filename="../mainwindow.cpp" line="5010"/>
+        <source>Set application to zip/unzip files</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5028"/>
+        <source>Directory with vym macros:</source>
+        <translation>Папка с vym-макросами:</translation>
+    </message>
+    <message>
+        <source>QInputDialog::getInteger()</source>
+        <translation type="obsolete">QInputDialog::getInteger()</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5041"/>
+        <source>Number of undo/redo levels:</source>
+        <translation>Количество уровней отмены/повтора:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5046"/>
+        <source>Settings have been changed. The next map opened will have &quot;%1&quot; undo/redo levels</source>
+        <translation>Настройки были измененеы. Следующая открытая карта будет использовать &quot;%1&quot; уровней повтора/отмены</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5066"/>
+        <source>Number of seconds before autosave:</source>
+        <translation>Интервал автосохранения (сек.):</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5076"/>
+        <source>Set author for new maps (used in lockfile)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5077"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5088"/>
+        <source>Number of parents shown in find results:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5098"/>
+        <source>Number of parents shown for a task:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3092"/>
+        <source>(readonly)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5433"/>
+        <source>History for %1</source>
+        <comment>Window Caption</comment>
+        <translation>История для %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5456"/>
+        <source>Export in last used format (%1) to: %2</source>
+        <comment>status tip</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5788"/>
+        <source>Couldn&apos;t find the documentation %1 in:
+%2</source>
+        <translation>Не найдена документация %1 в: %2</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5816"/>
+        <source>Load vym example map</source>
+        <translation>Загрузить примеры карт</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation type="obsolete">Couldn&apos;t find a macro at  %1.
+</translation>
+    </message>
+    <message>
+        <source>Set directory for vym macros</source>
+        <translation type="obsolete">Установить папку для vym-макросов</translation>
+    </message>
+</context>
+<context>
+    <name>MapEditor</name>
+    <message>
+        <source>Critical Parse Error</source>
+        <translation type="obsolete">Критическая ошибка Разбора</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="obsolete">Перезаписать</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Отмена</translation>
+    </message>
+    <message>
+        <source>Critical Export Error</source>
+        <translation type="obsolete">Критическая ошибка Экспорта</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">Критическая ошибка</translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation type="obsolete">Введите URL:</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <translation type="obsolete">Изображения</translation>
+    </message>
+    <message>
+        <source>Critical Import Error</source>
+        <translation type="obsolete">Критическая ошибка Импорта</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="obsolete">Файл %1уже существует.Перезаписать?</translation>
+    </message>
+    <message>
+        <source>MapEditor::exportXML couldn&apos;t open %1</source>
+        <translation type="obsolete">MapEditor::exportXML couldn&apos;t open %1</translation>
+    </message>
+    <message>
+        <source>Cannot find the directory %1</source>
+        <translation type="obsolete">Папка %1 не найдена</translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation type="obsolete">Ссылка на другую Карту</translation>
+    </message>
+    <message>
+        <source>Load image</source>
+        <translation type="obsolete">Загрузить изображение</translation>
+    </message>
+    <message>
+        <source>Choose directory structure to import</source>
+        <translation type="obsolete">Выберите структуруа папок для экспорта</translation>
+    </message>
+    <message>
+        <source>unnamed</source>
+        <translation type="obsolete">vym-map</translation>
+    </message>
+    <message>
+        <source>Save image</source>
+        <translation type="obsolete">Сохранить изображение</translation>
+    </message>
+    <message>
+        <source>Critical Parse Error while reading %1</source>
+        <translation type="obsolete">Критическая ошибка Разбора при чтении %1</translation>
+    </message>
+    <message>
+        <source>Could not read %1</source>
+        <translation type="obsolete">Ошибка при чтении %1</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="obsolete">Предупреждение</translation>
+    </message>
+    <message>
+        <source>Can&apos;t get color of heading,
+there&apos;s no branch selected</source>
+        <translation type="obsolete">Невозможно получить цвет заголовка
+ни одна ветвь не выбрана</translation>
+    </message>
+    <message>
+        <source>Critical Load Error</source>
+        <translation type="obsolete">Критическая ошибка Загрузки</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation type="obsolete">Ошибка при создании временной папки перед загрузкой</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="obsolete">Не найдена Карта (*.xml) в .vym архиве.
+</translation>
+    </message>
+    <message>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="obsolete">The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</translation>
+    </message>
+    <message>
+        <source>compressed (vym default)</source>
+        <translation type="obsolete">compressed (vym default)</translation>
+    </message>
+    <message>
+        <source>uncompressed</source>
+        <translation type="obsolete">uncompressed</translation>
+    </message>
+    <message>
+        <source>Save Error</source>
+        <translation type="obsolete">Ошибка сохранения</translation>
+    </message>
+    <message>
+        <source>%1
+could not be removed before saving</source>
+        <translation type="obsolete">%1 не может быть удалено перед сохранением</translation>
+    </message>
+    <message>
+        <source>%1
+could not be renamed before saving</source>
+        <translation type="obsolete">%1 не может быть удалено перед сохранением</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation type="obsolete">Ошибка при создании временной папки перед сохранением
+</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <translation type="obsolete">Экспортировать Карту как изображение</translation>
+    </message>
+    <message>
+        <source>Export XML to directory</source>
+        <translation type="obsolete">Экспортировать XML в папку</translation>
+    </message>
+    <message>
+        <source>Autosave disabled during undo.</source>
+        <translation type="obsolete">Автосохранение отключено во время &quot;отмены&quot;.</translation>
+    </message>
+    <message>
+        <source>Load background image</source>
+        <translation type="obsolete">Загрузить фоновый рисунок</translation>
+    </message>
+    <message>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Текст</translation>
+    </message>
+    <message>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Таблица</translation>
+    </message>
+    <message>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Текстовый документ</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Изображение</translation>
+    </message>
+    <message>
+        <source>Set URL to a local file</source>
+        <translation type="obsolete">Задать URL на локальный файл</translation>
+    </message>
+    <message>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation type="obsolete">%1 объектов на карте
+</translation>
+    </message>
+    <message>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation type="obsolete">Файл Карты на диске был изменен:
+
+%1
+
+Вы хотите загрузить изменненую карту с диска?</translation>
+    </message>
+    <message>
+        <source>Reload</source>
+        <translation type="obsolete">Перезагрузить</translation>
+    </message>
+    <message>
+        <source>Ignore</source>
+        <translation type="obsolete">Пропустить</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="43"/>
+        <source>Map Editor</source>
+        <comment>Shortcut scope</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="111"/>
+        <location filename="../mapeditor.cpp" line="116"/>
+        <source>Edit heading</source>
+        <comment>MapEditor</comment>
+        <translation type="unfinished">Изменить заголовок</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>MapEditor</comment>
+        <translation type="obsolete">Сохранить</translation>
+    </message>
+    <message>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Выреза&amp;ть</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Копировать</translation>
+    </message>
+    <message>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Отменить</translation>
+    </message>
+    <message>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Вернуть</translation>
+    </message>
+    <message>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Вставить</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="510"/>
+        <source>Print vym map</source>
+        <comment>MapEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>NoteEditor</name>
+    <message>
+        <location filename="../noteeditor.cpp" line="13"/>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished">Редактор Заметок</translation>
+    </message>
+</context>
+<context>
+    <name>Process</name>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">Критическая ошибка</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation type="obsolete">Ошибка при запуске %1</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="obsolete">%1 завершился с ошибкой</translation>
+    </message>
+</context>
+<context>
+    <name>QObject</name>
+    <message>
+        <source>This is not an image.</source>
+        <translation type="obsolete">Это не файл изображения.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <location filename="../exports.cpp" line="381"/>
+        <location filename="../exports.cpp" line="511"/>
+        <location filename="../exports.cpp" line="954"/>
+        <location filename="../exports.cpp" line="1048"/>
+        <location filename="../exports.cpp" line="1128"/>
+        <location filename="../exports.cpp" line="1236"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <location filename="../exports.cpp" line="1333"/>
+        <location filename="../exports.cpp" line="1343"/>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Critical Export Error</source>
+        <translation>Критическая ошибка Экспорта</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="956"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <source>Could not write %1</source>
+        <translation>Ошибка при записи %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="147"/>
+        <source>Exporting to %1 will overwrite the existing file:
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="146"/>
+        <source>Warning: Overwriting file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="503"/>
+        <source>Export as CSV</source>
+        <translation type="unfinished">Экспортировать в CVS</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="837"/>
+        <source>Contents:</source>
+        <comment>Used in HTML export</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="893"/>
+        <source>Export aborted.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <comment>ExportHTML</comment>
+        <translation type="obsolete">Ошибка при открытии %1</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <translation type="obsolete">Ошибка при открытии %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="934"/>
+        <source>Trying to create directory for flags:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="935"/>
+        <source>Could not create %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="909"/>
+        <location filename="../exports.cpp" line="933"/>
+        <location filename="../exports.cpp" line="944"/>
+        <source>Critical</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <source>Could not export as AO to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="381"/>
+        <source>Could not export as ASCII to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="511"/>
+        <source>Could not export as CSV to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="910"/>
+        <source>Could not find stylesheet %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="920"/>
+        <source>Error</source>
+        <comment>ExportHTML</comment>
+        <translation type="unfinished">Ошибка</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="921"/>
+        <source>Could not copy
+%1 to
+%2</source>
+        <comment>ExportHTML</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="945"/>
+        <source>Could not copy %1 to %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="955"/>
+        <source>Trying to save HTML file:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="236"/>
+        <location filename="../exports.cpp" line="382"/>
+        <location filename="../exports.cpp" line="512"/>
+        <location filename="../exports.cpp" line="957"/>
+        <location filename="../exports.cpp" line="1049"/>
+        <location filename="../exports.cpp" line="1130"/>
+        <location filename="../exports.cpp" line="1309"/>
+        <source>Export failed.</source>
+        <translation>Ошибка Экспорта.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1048"/>
+        <source>Could not export as OrgMode to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1129"/>
+        <source>Could not export as LaTeX to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1189"/>
+        <source>Export as LibreOffice Impress presentation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1236"/>
+        <source>No objects in map!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1333"/>
+        <source>Couldn&apos;t read settings from &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1343"/>
+        <source>Check &quot;%1&quot; in
+%2</source>
+        <translation>Проверьте &quot;%1&quot; в %2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Could not read %1</source>
+        <translation>Ошибка при чтении %1</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="257"/>
+        <location filename="../file.cpp" line="272"/>
+        <location filename="../file.cpp" line="296"/>
+        <location filename="../file.cpp" line="305"/>
+        <location filename="../file.cpp" line="313"/>
+        <location filename="../file.cpp" line="323"/>
+        <location filename="../file.cpp" line="332"/>
+        <location filename="../file.cpp" line="340"/>
+        <location filename="../file.cpp" line="347"/>
+        <location filename="../file.cpp" line="356"/>
+        <location filename="../file.cpp" line="377"/>
+        <location filename="../file.cpp" line="400"/>
+        <location filename="../file.cpp" line="410"/>
+        <location filename="../file.cpp" line="423"/>
+        <location filename="../main.cpp" line="411"/>
+        <location filename="../xsltproc.cpp" line="78"/>
+        <location filename="../xsltproc.cpp" line="84"/>
+        <source>Critical Error</source>
+        <translation>Критическая ошибка</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="258"/>
+        <source>Couldn&apos;t move existing file out of the way before saving.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="273"/>
+        <location filename="../file.cpp" line="378"/>
+        <source>Couldn&apos;t start tool to decompress data.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="297"/>
+        <source>Couldn&apos;t start zip to compress data.</source>
+        <translation>Ошибка при запуске zip для сжатия данных.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="306"/>
+        <source>zip didn&apos;t exit normally</source>
+        <translation>&quot;zip&quot; завершился с ошибкой</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="324"/>
+        <source>Couldn&apos;t rename %1 back to %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="333"/>
+        <source>Couldn&apos;t remove target of old symbolic link %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="341"/>
+        <source>Couldn&apos;t rename output to target of old symbolic link %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="348"/>
+        <source>Couldn&apos;t link from %1 to target of old symbolic link %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="357"/>
+        <source>Saved %1, but couldn&apos;t remove %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="401"/>
+        <source>Couldn&apos;t start unzip to decompress data.</source>
+        <translation>Ошибка при запуске unzip для распаковки данных.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="411"/>
+        <source>unzip didn&apos;t exit normally</source>
+        <translation>unzip завершился с ошибкой</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="79"/>
+        <source>Could not start %1</source>
+        <translation>Ошибка при запуске %1</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="85"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation>%1 завершился с ошибкой</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="obsolete">Файл %1 уже существует.
+Перезаписать ?</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="90"/>
+        <source>Overwrite</source>
+        <translation>Перезаписать</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="91"/>
+        <source>Cancel</source>
+        <translation>Отмена</translation>
+    </message>
+    <message>
+        <source>Sorry, no preview for
+multiple selected files.</source>
+        <translation type="obsolete">Предпросмотр для нескольких выбранных файлов невозможен.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="560"/>
+        <location filename="../exports.cpp" line="590"/>
+        <source>Exporting the %1 bookmarks will overwrite
+your existing bookmarks file.</source>
+        <translation>Экспорт закладок %1 перезапишет 
+ваш существующий файл закладок.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="561"/>
+        <location filename="../exports.cpp" line="591"/>
+        <source>Warning: Overwriting %1 bookmarks</source>
+        <translation>Предупреждение: Перезапись закладок %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="579"/>
+        <location filename="../macros.cpp" line="39"/>
+        <location filename="../main.cpp" line="377"/>
+        <source>Warning</source>
+        <translation>Предупреждение</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="580"/>
+        <source>Couldn&apos;t find script %1
+to notifiy Browsers of changed bookmarks.</source>
+        <translation>Сценарий %1
+для уведомления браузера о изменении
+закладок не найден.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="56"/>
+        <location filename="../imports.cpp" line="18"/>
+        <location filename="../main.cpp" line="475"/>
+        <location filename="../scripteditor.cpp" line="77"/>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Error</source>
+        <translation>Ошибка</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="57"/>
+        <location filename="../imports.cpp" line="19"/>
+        <source>Couldn&apos;t access temporary directory
+</source>
+        <translation>Невозможно получить доступ к временной папке</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <location filename="../exports.cpp" line="373"/>
+        <source>Export as ASCII</source>
+        <translation>Экспортировать в ASCII</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <source>(still experimental)</source>
+        <translation>(still experimental)</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="84"/>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <comment>write directory</comment>
+        <translation>Папка %1 уже содержит информацию.
+Возможно приведет к утере важной информации.Перезаписать? </translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation type="obsolete">Ошибка при открытии %1.</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <comment>Shortcut group</comment>
+        <translation type="obsolete">Редактор Заметок</translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="412"/>
+        <source>Couldn&apos;t find tool to unzip data. Please download and install 7z and set path in Settings menu:
+ </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="476"/>
+        <location filename="../scripteditor.cpp" line="78"/>
+        <source>Couldn&apos;t open &quot;%1&quot;
+%2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3792"/>
+        <source>No Bugzilla client found.  For openSUSE you can install by (running as root):
+
+</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3797"/>
+        <source>Alternatively you can also add the repository
+and install the perl module for Bugzilla access using YaST</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3800"/>
+        <source>Warning: Couldn&apos;t find Bugzilla client</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="80"/>
+        <source>Warning: Version Problem</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="81"/>
+        <source>&lt;h3&gt;Map is newer than VYM&lt;/h3&gt;&lt;p&gt;The map you are just trying to load was saved using vym %1. The version of this vym is %2. If you run into problems after pressing the ok-button below, updating vym should help.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="40"/>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation type="unfinished">Couldn&apos;t find a macro at  %1.
+</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Please use Settings-&gt;</source>
+        <translation type="unfinished"> Используйте пункт &quot;Настройки&quot;-&gt;</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Set directory for vym macros</source>
+        <translation type="unfinished">Установить папку для vym-макросов</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Couldn&apos;t save &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>ScriptEditor</name>
+    <message>
+        <location filename="../scripteditor.ui" line="14"/>
+        <source>Form</source>
+        <translation type="unfinished">Форма</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="49"/>
+        <source>Tab 1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="55"/>
+        <source>Save to selected slide</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="91"/>
+        <location filename="../scripteditor.ui" line="145"/>
+        <source>Run</source>
+        <translation type="unfinished">Выполнить</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="105"/>
+        <source>Tab 2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="121"/>
+        <source>Current key:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="131"/>
+        <source>Load</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="138"/>
+        <source>Save</source>
+        <translation type="unfinished">Сохранить</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Warning</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="45"/>
+        <source>Slide</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="46"/>
+        <source>Macro</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="65"/>
+        <source>Save</source>
+        <comment>ScriptEditor</comment>
+        <translation type="unfinished">Сохранить</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <source>Couldn&apos;t get model to save script into slide!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Couldn&apos;t find slide to save script into slide!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="143"/>
+        <source>Save script</source>
+        <translation type="unfinished">Сохранить сценарий</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="155"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="160"/>
+        <source>Overwrite</source>
+        <translation type="unfinished">Перезаписать</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="161"/>
+        <source>Cancel</source>
+        <translation type="unfinished">Отмена</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="184"/>
+        <source>Load script</source>
+        <translation type="unfinished">Загрузить сценарий</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="194"/>
+        <source>Error</source>
+        <translation type="unfinished">Ошибка</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="195"/>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>ShowTextDialog</name>
+    <message>
+        <location filename="../showtextdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>Форма ввода</translation>
+    </message>
+    <message>
+        <location filename="../showtextdialog.ui" line="50"/>
+        <source>Close</source>
+        <translation>Закрыть</translation>
+    </message>
+</context>
+<context>
+    <name>SimpleScriptEditor</name>
+    <message>
+        <source>Save script</source>
+        <translation type="obsolete">Сохранить сценарий</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation type="obsolete">Файл %1
+уже существует.
+Перезаписать?</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="obsolete">Перезаписать</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Отмена</translation>
+    </message>
+    <message>
+        <source>Load script</source>
+        <translation type="obsolete">Загрузить сценарий</translation>
+    </message>
+    <message>
+        <source>Error</source>
+        <translation type="obsolete">Ошибка</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation type="obsolete">Ошибка при открытии %1.
+</translation>
+    </message>
+    <message>
+        <source>Simple Script Editor</source>
+        <translation type="obsolete">Простой редактор сценариев</translation>
+    </message>
+    <message>
+        <source>Save as</source>
+        <translation type="obsolete">Сохранить как</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <translation type="obsolete">Сохранить</translation>
+    </message>
+    <message>
+        <source>Qt::CTRL + Qt::Key_S</source>
+        <translation type="obsolete">Qt::CTRL + Qt::Key_S</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <translation type="obsolete">Открыть</translation>
+    </message>
+    <message>
+        <source>Qt::CTRL +Qt::Key_O</source>
+        <translation type="obsolete">Qt::CTRL +Qt::Key_O</translation>
+    </message>
+    <message>
+        <source>Run</source>
+        <translation type="obsolete">Выполнить</translation>
+    </message>
+    <message>
+        <source>Qt::CTRL + Qt::Key_R</source>
+        <translation type="obsolete">Qt::CTRL + Qt::Key_R</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Закрыть</translation>
+    </message>
+</context>
+<context>
+    <name>TaskEditor</name>
+    <message>
+        <location filename="../taskeditor.cpp" line="38"/>
+        <source>Current map</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="45"/>
+        <source>Active tasks</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="52"/>
+        <source>New tasks</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="68"/>
+        <location filename="../taskeditor.cpp" line="73"/>
+        <source>Edit heading</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished">Изменить заголовок</translation>
+    </message>
+</context>
+<context>
+    <name>TaskModel</name>
+    <message>
+        <location filename="../taskmodel.cpp" line="127"/>
+        <source>Prio</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="129"/>
+        <source>Status</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="131"/>
+        <source>Age total</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="133"/>
+        <source>Age mod.</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="135"/>
+        <source>Sleep</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="137"/>
+        <source>Map</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="139"/>
+        <source>Task</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>TextEditor</name>
+    <message>
+        <location filename="../texteditor.cpp" line="273"/>
+        <source>&amp;Import...</source>
+        <translation>&amp;Импортировать...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="283"/>
+        <source>&amp;Export...</source>
+        <translation>&amp;Экспортировать...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="293"/>
+        <source>Export &amp;As... (HTML)</source>
+        <translation>Экспортировать &amp;как... (HTML)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="298"/>
+        <source>Export &amp;As...(ASCII)</source>
+        <translation>Экспортировать &amp;как... (ASСII)</translation>
+    </message>
+    <message>
+        <source>Print Note</source>
+        <translation type="obsolete">Печать Заметки</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="308"/>
+        <source>&amp;Print...</source>
+        <translation>&amp;PПечать...</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <translation type="vanished">&amp;Правка</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="332"/>
+        <source>&amp;Undo</source>
+        <translation>&amp;Отменить</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="341"/>
+        <source>&amp;Redo</source>
+        <translation>&amp;Вернуть</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="351"/>
+        <source>Select and copy &amp;all</source>
+        <translation>Выбрать и копировать &amp;всё</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="359"/>
+        <source>&amp;Copy</source>
+        <translation>&amp;Копировать</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="368"/>
+        <source>Cu&amp;t</source>
+        <translation>Выреза&amp;ть</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="377"/>
+        <source>&amp;Paste</source>
+        <translation>&amp;Вставить</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="316"/>
+        <source>&amp;Delete All</source>
+        <translation>&amp;Удалить всё</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="49"/>
+        <source>Text Editor</source>
+        <comment>Text Editor Window caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="271"/>
+        <location filename="../texteditor.cpp" line="325"/>
+        <location filename="../texteditor.cpp" line="389"/>
+        <source>Texteditor</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="329"/>
+        <source>Edi&amp;t</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="390"/>
+        <source>Font hints</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="396"/>
+        <source>&amp;Font hint</source>
+        <translation>&amp;Font hint</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="407"/>
+        <source>&amp;Richtext</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="417"/>
+        <source>Fonts</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="443"/>
+        <source>Format</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="448"/>
+        <source>&amp;Color...</source>
+        <translation>&amp;Цвет...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="454"/>
+        <source>&amp;Bold</source>
+        <translation>&amp;Полужирный</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="464"/>
+        <source>&amp;Italic</source>
+        <translation>&amp;Курсив</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="474"/>
+        <source>&amp;Underline</source>
+        <translation>&amp;Подчеркивание</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="512"/>
+        <source>&amp;Left</source>
+        <translation>&amp;Слева</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="518"/>
+        <source>C&amp;enter</source>
+        <translation>&amp;Центр</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="524"/>
+        <source>&amp;Right</source>
+        <translation>&amp;Справа</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="530"/>
+        <source>&amp;Justify</source>
+        <translation>&amp;Растянуть</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="540"/>
+        <source>&amp;Settings</source>
+        <translation>&amp;Настройки</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="543"/>
+        <source>Set &amp;fixed font</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="548"/>
+        <source>Set &amp;variable font</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="553"/>
+        <source>&amp;fixed font is default</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="704"/>
+        <source>Export Note to single file</source>
+        <translation>Экспортировать заметки в один файл</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="724"/>
+        <location filename="../texteditor.cpp" line="800"/>
+        <source>Overwrite</source>
+        <translation>Перезаписать</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="725"/>
+        <location filename="../texteditor.cpp" line="801"/>
+        <source>Cancel</source>
+        <translation>Отмена</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="785"/>
+        <source>Export Note to single file (ASCII)</source>
+        <translation>Экспортировать Заметку в один файл (ASCII)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="828"/>
+        <source>Print</source>
+        <comment>TextEditor</comment>
+        <translation type="unfinished">Печать</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="488"/>
+        <source>Subs&amp;cript</source>
+        <translation>Под&amp;строчный</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="498"/>
+        <source>Su&amp;perscript</source>
+        <translation>На&amp;дстрочный</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="566"/>
+        <source>Note Editor</source>
+        <translation>Редактор Заметок</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="392"/>
+        <source>F&amp;ormat</source>
+        <translation>Ф&amp;ормат</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="326"/>
+        <source>Edit Actions</source>
+        <translation>Edit Actions</translation>
+    </message>
+    <message>
+        <source>Format Actions</source>
+        <translation type="obsolete">Format Actions</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="267"/>
+        <source>Note Actions</source>
+        <translation>Note Actions</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="48"/>
+        <source>Ready</source>
+        <comment>Statusbar message</comment>
+        <translation>Готово</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="174"/>
+        <source>No filename available for this note.</source>
+        <comment>Statusbar message</comment>
+        <translation>Не задано имя файла для текущей заметки.</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation type="obsolete">Редактор Заметок</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="269"/>
+        <source>&amp;Note</source>
+        <comment>Menubar</comment>
+        <translation>Заме&amp;тка</translation>
+    </message>
+    <message>
+        <source>Import</source>
+        <comment>Status tip for Note menu</comment>
+        <translation type="obsolete">Импортировать</translation>
+    </message>
+    <message>
+        <source>Export Note (HTML)</source>
+        <comment>Status tip for Note menu</comment>
+        <translation type="obsolete">Экспортировать заметки (HTML)</translation>
+    </message>
+    <message>
+        <source>Export Note As (HTML) </source>
+        <comment>Status tip for Note Menu</comment>
+        <translation type="obsolete">Экспортировать заметки как (HTML)</translation>
+    </message>
+    <message>
+        <source>Export Note As (ASCII) </source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Экспортировать заметки как (ASCII)</translation>
+    </message>
+    <message>
+        <source>Print Note</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Печать Заметок</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Отменить</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Вернуть</translation>
+    </message>
+    <message>
+        <source>Select and copy all</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Выбрать и копировать всё</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Копировать</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Вырезать</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Вставить</translation>
+    </message>
+    <message>
+        <source>Delete all</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Удалить всё</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="719"/>
+        <location filename="../texteditor.cpp" line="795"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation type="unfinished">Файл %1 уже существует. Перезаписать?</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="743"/>
+        <source>Couldn&apos;t export note </source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation>Ошибка при экспорте Заметок</translation>
+    </message>
+</context>
+<context>
+    <name>TreeEditor</name>
+    <message>
+        <location filename="../treeeditor.cpp" line="27"/>
+        <source>Select upper object</source>
+        <comment>Tree Editor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../treeeditor.cpp" line="33"/>
+        <source>Select lower object</source>
+        <comment>Tree Editor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>VymModel</name>
+    <message>
+        <location filename="../vymmodel.cpp" line="126"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="149"/>
+        <source>unnamed</source>
+        <translation type="unfinished">vym-map</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="445"/>
+        <location filename="../vymmodel.cpp" line="481"/>
+        <location filename="../vymmodel.cpp" line="566"/>
+        <location filename="../vymmodel.cpp" line="622"/>
+        <source>Critical Parse Error</source>
+        <translation type="unfinished">Критическая ошибка Разбора</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="501"/>
+        <location filename="../vymmodel.cpp" line="551"/>
+        <source>Critical Load Error</source>
+        <translation type="unfinished">Критическая ошибка Загрузки</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="502"/>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation type="unfinished">Ошибка при создании временной папки перед загрузкой</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="552"/>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="unfinished">Не найдена Карта (*.xml) в .vym архиве.
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="980"/>
+        <source>unknown user</source>
+        <comment>Default for lockfiles of maps</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1003"/>
+        <source>Warning: Map already opended</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="671"/>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="unfinished">The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="679"/>
+        <source>compressed (vym default)</source>
+        <translation type="unfinished">compressed (vym default)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="680"/>
+        <source>uncompressed</source>
+        <translation type="unfinished">uncompressed</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="681"/>
+        <location filename="../vymmodel.cpp" line="864"/>
+        <source>Cancel</source>
+        <translation type="unfinished">Отмена</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="710"/>
+        <location filename="../vymmodel.cpp" line="715"/>
+        <source>Save Error</source>
+        <translation type="unfinished">Ошибка сохранения</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="711"/>
+        <source>%1
+could not be removed before saving</source>
+        <translation type="unfinished">%1 не может быть удалено перед сохранением</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="716"/>
+        <source>%1
+could not be renamed before saving</source>
+        <translation type="unfinished">%1 не может быть удалено перед сохранением</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="728"/>
+        <source>Critical Save Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="729"/>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation type="unfinished">Ошибка при создании временной папки перед сохранением
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <location filename="../vymmodel.cpp" line="5783"/>
+        <source>Images</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <source>All</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="792"/>
+        <source>Load image</source>
+        <translation type="unfinished">Загрузить изображение</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="844"/>
+        <source>Save image</source>
+        <translation type="unfinished">Сохранить изображение</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="856"/>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="unfinished">Файл %1
+уже существует.
+Перезаписать? {1 ?}</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="863"/>
+        <source>Overwrite</source>
+        <translation type="unfinished">Перезаписать</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Critical Error</source>
+        <translation type="unfinished">Критическая ошибка</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <source>Unsupported format in %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Critical Import Error</source>
+        <translation type="unfinished">Критическая ошибка Импорта</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Cannot find the directory %1</source>
+        <translation type="unfinished">Папка %1 не найдена</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="962"/>
+        <location filename="../vymmodel.cpp" line="965"/>
+        <source>Choose directory structure to import</source>
+        <translation type="unfinished">Выберите структуруа папок для экспорта</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="999"/>
+        <source>Map seems to be already opened in another vym instance!
+
+ Map is locked by &quot;%1&quot; on &quot;%2&quot;
+
+Please only delete the lockfile, if you are sure nobody else is currently working on this map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1008"/>
+        <source>Removed lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1014"/>
+        <source>Couldn&apos;t remove lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1021"/>
+        <source>Cannot create lockfile of map! It will be opened in readonly mode.
+
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1024"/>
+        <source>Warning</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1116"/>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation type="unfinished">Файл Карты на диске был изменен:
+
+%1
+
+Вы хотите загрузить изменненую карту с диска?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1123"/>
+        <source>Reload</source>
+        <translation type="unfinished">Перезагрузить</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1124"/>
+        <source>Ignore</source>
+        <translation type="unfinished">Пропустить</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1013"/>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Warning</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <source>Redo failed:
+%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1274"/>
+        <source>Autosave disabled during undo.</source>
+        <translation type="unfinished">Автосохранение отключено во время &quot;отмены&quot;.</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2001"/>
+        <source>Note</source>
+        <comment>FindAll in VymModel</comment>
+        <translation type="unfinished">Заметки</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2725"/>
+        <source>Image</source>
+        <comment>Default name for new image</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2958"/>
+        <source>New map</source>
+        <comment>New map</comment>
+        <translation type="unfinished">Новая Карта</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Script aborted:
+%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation type="obsolete">Введите URL:</translation>
+    </message>
+    <message>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Текст</translation>
+    </message>
+    <message>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Таблица</translation>
+    </message>
+    <message>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Текстовый документ</translation>
+    </message>
+    <message>
+        <source>Set URL to a local file</source>
+        <translation type="obsolete">Задать URL на локальный файл</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3822"/>
+        <source>Contacting Bugzilla...</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation type="obsolete">Ссылка на другую Карту</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5185"/>
+        <source>Export map as image</source>
+        <translation type="unfinished">Экспортировать Карту как изображение</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Couldn&apos;t save QImage %1 in format %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5225"/>
+        <source>Export map as PDF</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5280"/>
+        <source>Export map as SVG</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5314"/>
+        <source>Export map as XML</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5321"/>
+        <source>Export XML to directory</source>
+        <translation type="unfinished">Экспортировать XML в папку</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5367"/>
+        <source>Critical Export Error</source>
+        <translation type="unfinished">Критическая ошибка Экспорта</translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">Экспортировать в LaTeX</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>(still experimental)</source>
+        <translation type="unfinished">(still experimental)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>Export as csv</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5786"/>
+        <source>Load background image</source>
+        <translation type="unfinished">Загрузить фоновый рисунок</translation>
+    </message>
+</context>
+<context>
+    <name>VymProcess</name>
+    <message>
+        <location filename="../vymprocess.cpp" line="43"/>
+        <location filename="../vymprocess.cpp" line="48"/>
+        <source>Critical Error</source>
+        <translation type="unfinished">Критическая ошибка</translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="44"/>
+        <source>Could not start %1</source>
+        <translation type="unfinished">Ошибка при запуске %1</translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="49"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="unfinished">%1 завершился с ошибкой</translation>
+    </message>
+</context>
+<context>
+    <name>VymView</name>
+    <message>
+        <location filename="../vymview.cpp" line="34"/>
+        <source>Tree Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymview.cpp" line="52"/>
+        <source>Slide Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>WarningDialog</name>
+    <message>
+        <source>VYM - Warning : Foo...</source>
+        <translation type="obsolete">VYM - Предупреждение: Фyy...</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="91"/>
+        <source>showAgainBox</source>
+        <translation>showAgainBox</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="117"/>
+        <location filename="../warningdialog.cpp" line="45"/>
+        <source>Cancel</source>
+        <translation>Отмена</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="124"/>
+        <source>Ok</source>
+        <translation>OK</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="10"/>
+        <source>Proceed</source>
+        <translation>Продолжить</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="12"/>
+        <source>Show this message again</source>
+        <translation>Показывать это сообщение</translation>
+    </message>
+</context>
+</TS>
diff --git a/lang/vym.sv.ts b/lang/vym.sv.ts
new file mode 100644 (file)
index 0000000..4020fa8
--- /dev/null
@@ -0,0 +1,5287 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="en_US">
+<context>
+    <name>AboutDialog</name>
+    <message>
+        <location filename="../aboutdialog.cpp" line="106"/>
+        <source>Credits</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="221"/>
+        <source>License</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="226"/>
+        <source>Ok</source>
+        <comment>Ok Button</comment>
+        <translation>Ok</translation>
+    </message>
+</context>
+<context>
+    <name>AboutTextBrowser</name>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>Använd inställeningar -&gt;</translation>
+    </message>
+    <message>
+        <source>Set application to open an URL</source>
+        <translation type="obsolete">Sätt applikation att öppna URL</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="246"/>
+        <source>Warning</source>
+        <comment>About window</comment>
+        <translation>Varning</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="247"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <comment>About window</comment>
+        <translation>Kunde inte hitta visare att öppna %1.
+</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Set application to open an URL...</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Attribute Dialog</name>
+    <message>
+        <source>AttributeDialog - Edit definitions</source>
+        <translation type="obsolete">AttributeDialog - Redigera definitionerna</translation>
+    </message>
+    <message>
+        <source>AttributeDialog - Edit %1</source>
+        <translation type="obsolete">AttributeDialog  - Redigera %1</translation>
+    </message>
+</context>
+<context>
+    <name>AttributeDialog</name>
+    <message>
+        <source>Attributes</source>
+        <translation type="obsolete">Egenskaperna</translation>
+    </message>
+    <message>
+        <source>Add key</source>
+        <translation type="obsolete">Lägg till nyckel</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Stäng</translation>
+    </message>
+</context>
+<context>
+    <name>AttributeWidget</name>
+    <message>
+        <source>Form</source>
+        <translation type="obsolete">Formulär</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyEditor</name>
+    <message>
+        <location filename="../branchpropeditor.ui" line="20"/>
+        <source>Branch Property Editor</source>
+        <translation type="unfinished">Gren egenskapsredigerare</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="30"/>
+        <source>Frame</source>
+        <translation type="unfinished">Ram</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="51"/>
+        <source>Geometry</source>
+        <translation type="unfinished">Geometri</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="64"/>
+        <source>No Frame</source>
+        <translation type="unfinished">Ingen ram</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="69"/>
+        <source>Rectangle</source>
+        <translation type="unfinished">Rectangle</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="74"/>
+        <source>Rounded Rectangle</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="79"/>
+        <source>Ellipse</source>
+        <translation type="unfinished">Ellips</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="84"/>
+        <source>Cloud</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="105"/>
+        <source>Padding</source>
+        <translation type="unfinished">Stoppning</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="112"/>
+        <source>Borderline width</source>
+        <translation type="unfinished">Kantlinje bredd</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="136"/>
+        <source>Include children</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="169"/>
+        <source>Colors</source>
+        <translation type="unfinished">Färger</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="209"/>
+        <source>Borderline color</source>
+        <translation type="unfinished">Kantlinje färger</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="232"/>
+        <source>Background color</source>
+        <translation type="unfinished">Bakgrund färger</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="261"/>
+        <source>Layout</source>
+        <translation type="unfinished">Layout</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="269"/>
+        <source>Include images horizontally</source>
+        <translation type="unfinished">Inkludera bilder horisontell</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="276"/>
+        <source>Include images vertically</source>
+        <translation type="unfinished">Inkludera bilder vertikal</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="283"/>
+        <source>Free positioning of children (experimental!)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="306"/>
+        <source>Link</source>
+        <translation type="unfinished">Länk</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="312"/>
+        <source>Hide link if unselected</source>
+        <translation type="unfinished">gömm länk om inte valt</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="333"/>
+        <source>Attributes</source>
+        <translation type="unfinished">Egenskaperna</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="359"/>
+        <source>+</source>
+        <translation type="unfinished">+</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="366"/>
+        <source>-</source>
+        <translation type="unfinished">-</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.cpp" line="19"/>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished">Egenskapsredigerare</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyWindow</name>
+    <message>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation type="obsolete">Egenskapsredigerare</translation>
+    </message>
+    <message>
+        <source>Name</source>
+        <comment>Branchprop window: Attribute name</comment>
+        <translation type="obsolete">Namn</translation>
+    </message>
+    <message>
+        <source>Value</source>
+        <comment>Branchprop window: Attribute value</comment>
+        <translation type="obsolete">Värde</translation>
+    </message>
+    <message>
+        <source>Type</source>
+        <comment>Branchprop window: Attribute type</comment>
+        <translation type="obsolete">Typ</translation>
+    </message>
+    <message>
+        <source>Branch Property Editor</source>
+        <translation type="obsolete">Gren egenskapsredigerare</translation>
+    </message>
+    <message>
+        <source>Frame</source>
+        <translation type="obsolete">Ram</translation>
+    </message>
+    <message>
+        <source>Geometry</source>
+        <translation type="obsolete">Geometri</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <translation type="obsolete">Ingen ram</translation>
+    </message>
+    <message>
+        <source>Rectangle</source>
+        <translation type="obsolete">Rectangle</translation>
+    </message>
+    <message>
+        <source>Ellipse</source>
+        <translation type="obsolete">Ellips</translation>
+    </message>
+    <message>
+        <source>Padding</source>
+        <translation type="obsolete">Stoppning</translation>
+    </message>
+    <message>
+        <source>Borderline width</source>
+        <translation type="obsolete">Kantlinje bredd</translation>
+    </message>
+    <message>
+        <source>Colors</source>
+        <translation type="obsolete">Färger</translation>
+    </message>
+    <message>
+        <source>Borderline color</source>
+        <translation type="obsolete">Kantlinje färger</translation>
+    </message>
+    <message>
+        <source>Background color</source>
+        <translation type="obsolete">Bakgrund färger</translation>
+    </message>
+    <message>
+        <source>Layout</source>
+        <translation type="obsolete">Layout</translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <translation type="obsolete">Inkludera bilder horisontell</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <translation type="obsolete">Inkludera bilder vertikal</translation>
+    </message>
+    <message>
+        <source>Link</source>
+        <translation type="obsolete">Länk</translation>
+    </message>
+    <message>
+        <source>Hide link if unselected</source>
+        <translation type="obsolete">gömm länk om inte valt</translation>
+    </message>
+    <message>
+        <source>Attributes</source>
+        <translation type="obsolete">Egenskaperna</translation>
+    </message>
+    <message>
+        <source>+</source>
+        <translation type="obsolete">+</translation>
+    </message>
+    <message>
+        <source>-</source>
+        <translation type="obsolete">-</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Stäng</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadAgent</name>
+    <message>
+        <location filename="../downloadagent.cpp" line="191"/>
+        <location filename="../downloadagent.cpp" line="195"/>
+        <source>Warning</source>
+        <translation type="unfinished">Varning</translation>
+    </message>
+</context>
+<context>
+    <name>EditXLinkDialog</name>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="20"/>
+        <source>Edit XLink</source>
+        <translation>Redigera XLänk</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="40"/>
+        <source>Arrow begin:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="63"/>
+        <source>XLink width:</source>
+        <translation>XLänk bredd:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="79"/>
+        <source>Use color of heading</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="177"/>
+        <source>Line style:</source>
+        <extracomment>Linestyle in Edit XLink dialog</extracomment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="190"/>
+        <source>Arrow end:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="253"/>
+        <source>Close</source>
+        <translation type="unfinished">Stäng</translation>
+    </message>
+    <message>
+        <source>Set color of heading</source>
+        <translation type="obsolete">Sätt rubriks färg</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="109"/>
+        <source>XLink color:</source>
+        <translation>XLänk färg:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="151"/>
+        <source>Use as default:</source>
+        <translation>Använd som huvudsaklig:</translation>
+    </message>
+    <message>
+        <source>Quit and delete XLink</source>
+        <translation type="obsolete">Slut och ta bort XLänk</translation>
+    </message>
+    <message>
+        <source>Ok</source>
+        <translation type="obsolete">Ok</translation>
+    </message>
+</context>
+<context>
+    <name>ExportHTMLDialog</name>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="26"/>
+        <source>Export HTML</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="61"/>
+        <source>Export to directory:</source>
+        <translation type="unfinished">Exportera till register:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="90"/>
+        <location filename="../exporthtmldialog.ui" line="267"/>
+        <location filename="../exporthtmldialog.ui" line="280"/>
+        <location filename="../exporthtmldialog.ui" line="353"/>
+        <source>Browse</source>
+        <translation type="unfinished">Bläddra</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="117"/>
+        <source>Options</source>
+        <translation type="unfinished">Optioner</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="138"/>
+        <source>Image of map</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="145"/>
+        <source>Include images</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="152"/>
+        <source>Table of contents</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="159"/>
+        <source>Task flags</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="166"/>
+        <source>General flags</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="173"/>
+        <source>Number sections</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="231"/>
+        <source>Copy CSS from </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="251"/>
+        <source>Use CSS from</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Include image</source>
+        <translation type="obsolete">Inkludera en bild</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="186"/>
+        <source>Colored headings in text</source>
+        <translation type="unfinished">Färgat rubrikerna i text</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="199"/>
+        <source>Save settings in map</source>
+        <translation type="unfinished">Spara installeringar i kartan</translation>
+    </message>
+    <message>
+        <source>show output of external scripts</source>
+        <translation type="obsolete">Visa output av yttre skrifter</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="216"/>
+        <source>Stylesheets</source>
+        <translation type="unfinished">Stilarkerna</translation>
+    </message>
+    <message>
+        <source>CSS:</source>
+        <translation type="obsolete">CSS:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="297"/>
+        <source>Scripts</source>
+        <translation type="unfinished">Skrifter</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="327"/>
+        <source>After Export:</source>
+        <translation type="unfinished">Efter export:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="382"/>
+        <source>Cancel</source>
+        <translation type="unfinished">Avbryt</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="389"/>
+        <source>Export</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>Warning</source>
+        <translation type="unfinished">Varning</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>The settings saved in the map would like to run script:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="123"/>
+        <source>VYM - Export HTML to directory</source>
+        <translation type="unfinished">VYM - Exportera HTML till register</translation>
+    </message>
+</context>
+<context>
+    <name>ExportXHTMLDialog</name>
+    <message>
+        <source>Export XHTML</source>
+        <translation type="obsolete">Exportera XHTML</translation>
+    </message>
+    <message>
+        <source>Export to directory:</source>
+        <translation type="obsolete">Exportera till register:</translation>
+    </message>
+    <message>
+        <source>Browse</source>
+        <translation type="obsolete">Bläddra</translation>
+    </message>
+    <message>
+        <source>Options</source>
+        <translation type="obsolete">Optioner</translation>
+    </message>
+    <message>
+        <source>show output of external scripts</source>
+        <translation type="obsolete">Visa output av yttre skrifter</translation>
+    </message>
+    <message>
+        <source>Include image</source>
+        <translation type="obsolete">Inkludera en bild</translation>
+    </message>
+    <message>
+        <source>Colored headings in text</source>
+        <translation type="obsolete">Färgat rubrikerna i text</translation>
+    </message>
+    <message>
+        <source>Save settings in map</source>
+        <translation type="obsolete">Spara installeringar i kartan</translation>
+    </message>
+    <message>
+        <source>Stylesheets</source>
+        <translation type="obsolete">Stilarkerna</translation>
+    </message>
+    <message>
+        <source>XSL:</source>
+        <translation type="obsolete">XSL:</translation>
+    </message>
+    <message>
+        <source>CSS:</source>
+        <translation type="obsolete">CSS:</translation>
+    </message>
+    <message>
+        <source>Scripts</source>
+        <translation type="obsolete">Skrifter</translation>
+    </message>
+    <message>
+        <source>Before export:</source>
+        <translation type="obsolete">Förran export:</translation>
+    </message>
+    <message>
+        <source>After Export:</source>
+        <translation type="obsolete">Efter export:</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <translation type="obsolete">Export</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Avbryt</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="obsolete">Varning</translation>
+    </message>
+    <message>
+        <source>The settings saved in the map would like to run scripts:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation type="obsolete">Inställeningar sparad i kartan vill exekutera skripter:
+
+%1
+
+Justera om du är säkert att du vill tillåta det i systemet!</translation>
+    </message>
+    <message>
+        <source>VYM - Export HTML to directory</source>
+        <translation type="obsolete">VYM - Exportera HTML till register</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <translation type="obsolete">Kann inte öppna %1</translation>
+    </message>
+    <message>
+        <source>Could not write %1</source>
+        <translation type="obsolete">Kann inte skriva %1</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">Kritisk fel</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation type="obsolete">Kann inte starta %1</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="obsolete">%1 kunde inte avsluta normalt</translation>
+    </message>
+    <message>
+        <source>show warnings of xslt processor</source>
+        <translation type="obsolete">Visa varningar av xslt processor</translation>
+    </message>
+</context>
+<context>
+    <name>ExtraInfoDialog</name>
+    <message>
+        <location filename="../extrainfodialog.ui" line="15"/>
+        <source>VYM - Info</source>
+        <translation>VYM - Info</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="36"/>
+        <source>Map:</source>
+        <translation>Karta:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="53"/>
+        <source>Title:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="63"/>
+        <source>Author:</source>
+        <translation>Skapare:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="86"/>
+        <source>Comment:</source>
+        <translation>Kommentar:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="96"/>
+        <source>Statistics:</source>
+        <translation>Statistik:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="139"/>
+        <source>Cancel</source>
+        <translation>Avbryt</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="146"/>
+        <source>Close</source>
+        <translation>Stäng</translation>
+    </message>
+</context>
+<context>
+    <name>FindWidget</name>
+    <message>
+        <location filename="../findwidget.cpp" line="25"/>
+        <source>Find:</source>
+        <comment>FindWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>FindWindow</name>
+    <message>
+        <source>Clear</source>
+        <translation type="obsolete">Klar</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Avbryt</translation>
+    </message>
+    <message>
+        <source>Find</source>
+        <translation type="obsolete">Sök</translation>
+    </message>
+    <message>
+        <source>Find Text</source>
+        <translation type="obsolete">Hitta text</translation>
+    </message>
+    <message>
+        <source>Text to find:</source>
+        <translation type="obsolete">Text att hitta:</translation>
+    </message>
+</context>
+<context>
+    <name>Heading of mapcenter in new map</name>
+    <message>
+        <source>New map</source>
+        <translation type="vanished">Ny karta</translation>
+    </message>
+</context>
+<context>
+    <name>HeadingEditor</name>
+    <message>
+        <location filename="../headingeditor.cpp" line="9"/>
+        <source>Heading Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HistoryWindow</name>
+    <message>
+        <location filename="../historywindow.ui" line="13"/>
+        <source>Dialog</source>
+        <translation>Dialog</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="50"/>
+        <source>Redo</source>
+        <translation>Gör om</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="72"/>
+        <source>Time</source>
+        <translation>Tid</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="77"/>
+        <source>Comment</source>
+        <translation>Kommentar</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="85"/>
+        <source>Undo</source>
+        <translation>Ångra</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="122"/>
+        <source>Close</source>
+        <translation>Stäng</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="17"/>
+        <source>Action</source>
+        <comment>Table with actions</comment>
+        <translation>Aktion</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="20"/>
+        <source>Comment</source>
+        <comment>Table with actions</comment>
+        <translation>Kommentar</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="23"/>
+        <source>Undo action</source>
+        <comment>Table with actions</comment>
+        <translation>Ångra aktion</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="125"/>
+        <source>Current state</source>
+        <comment>Current bar in history hwindow</comment>
+        <translation>Nuvarande tillstånd</translation>
+    </message>
+</context>
+<context>
+    <name>LineEditDialog</name>
+    <message>
+        <location filename="../lineeditdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished">Dialog</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="26"/>
+        <source>TextLabel</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="89"/>
+        <location filename="../lineeditdialog.cpp" line="17"/>
+        <source>Cancel</source>
+        <translation type="unfinished">Avbryt</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="99"/>
+        <location filename="../lineeditdialog.cpp" line="9"/>
+        <source>Ok</source>
+        <translation type="unfinished">Ok</translation>
+    </message>
+</context>
+<context>
+    <name>LockedFileDialog</name>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished">Dialog</translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="116"/>
+        <location filename="../lockedfiledialog.cpp" line="7"/>
+        <source>Delete lockfile</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="123"/>
+        <location filename="../lockedfiledialog.cpp" line="6"/>
+        <source>Open readonly</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Main</name>
+    <message>
+        <source>Close Map</source>
+        <translation type="obsolete">Stäng karta</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <translation type="obsolete">Ångra</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <translation type="obsolete">Kopiera</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="obsolete">Klipp ut</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <translation type="obsolete">Klistra in</translation>
+    </message>
+    <message>
+        <source>Move branch up</source>
+        <translation type="obsolete">Flyttä gren uppåt</translation>
+    </message>
+    <message>
+        <source>Move branch down</source>
+        <translation type="obsolete">Flyttä gren nedåt</translation>
+    </message>
+    <message>
+        <source>Scroll branch</source>
+        <translation type="obsolete">Rulla gren</translation>
+    </message>
+    <message>
+        <source>Find</source>
+        <translation type="obsolete">Sök</translation>
+    </message>
+    <message>
+        <source>Open URL</source>
+        <translation type="obsolete">Öppna URL</translation>
+    </message>
+    <message>
+        <source>Edit URL</source>
+        <translation type="obsolete">Redigera URL</translation>
+    </message>
+    <message>
+        <source>Use heading of selected branch as URL</source>
+        <translation type="obsolete">Använda rubrik av utvald gren som URL</translation>
+    </message>
+    <message>
+        <source>Jump to another vym map, if needed load it first</source>
+        <translation type="obsolete">Övergå till andra vym karta, om man behöver ladda det först</translation>
+    </message>
+    <message>
+        <source>Edit link to another vym map</source>
+        <translation type="obsolete">Redigera link till andra vym karta</translation>
+    </message>
+    <message>
+        <source>Delete link to another vym map</source>
+        <translation type="obsolete">Ta bort link till andra vym karta</translation>
+    </message>
+    <message>
+        <source>Edit Map Info</source>
+        <translation type="obsolete">Redigera karta info</translation>
+    </message>
+    <message>
+        <source>edit Heading</source>
+        <translation type="obsolete">redigera Rubrik</translation>
+    </message>
+    <message>
+        <source>Delete Selection</source>
+        <translation type="obsolete">Ta bort selektion</translation>
+    </message>
+    <message>
+        <source>Add a branch as child of selection</source>
+        <translation type="obsolete">Lägg till en gren som barn av selektion </translation>
+    </message>
+    <message>
+        <source>Add a branch above selection</source>
+        <translation type="obsolete">Lägg till en gren ovanför selektion</translation>
+    </message>
+    <message>
+        <source>Add a branch below selection</source>
+        <translation type="obsolete">Lägg till en gren nedanför selektion</translation>
+    </message>
+    <message>
+        <source>Add map at selection</source>
+        <translation type="obsolete">Lägg till en karta till selektion</translation>
+    </message>
+    <message>
+        <source>Replace selection with map</source>
+        <translation type="obsolete">Ersätt selektion med en karta</translation>
+    </message>
+    <message>
+        <source>Save selection</source>
+        <translation type="obsolete">Spara selektion</translation>
+    </message>
+    <message>
+        <source>Select upper branch</source>
+        <translation type="obsolete">Välj övre gren</translation>
+    </message>
+    <message>
+        <source>Select lower branch</source>
+        <translation type="obsolete">Välj lägre gren</translation>
+    </message>
+    <message>
+        <source>Select left branch</source>
+        <translation type="obsolete">Välj vänstra gren</translation>
+    </message>
+    <message>
+        <source>Select right branch</source>
+        <translation type="obsolete">Välj högra gren</translation>
+    </message>
+    <message>
+        <source>Select first branch</source>
+        <translation type="obsolete">Välj första gren</translation>
+    </message>
+    <message>
+        <source>Select last branch</source>
+        <translation type="obsolete">Välj sista gren</translation>
+    </message>
+    <message>
+        <source>Add Image</source>
+        <translation type="obsolete">Lägg till en bild</translation>
+    </message>
+    <message>
+        <source>Set Color</source>
+        <translation type="obsolete">Sätt färg</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1883"/>
+        <source>Set &amp;Color</source>
+        <translation>Sätt &amp;färg</translation>
+    </message>
+    <message>
+        <source>Pick color
+Hint: You can pick a color from another branch and color using CTRL+Left Button</source>
+        <translation type="obsolete">Välj färg
+Tips: Man kan välj en färg från andra gren och färga med hjälp av CTRL + vänstra knapp</translation>
+    </message>
+    <message>
+        <source>Color branch</source>
+        <translation type="obsolete">Färga grenen</translation>
+    </message>
+    <message>
+        <source>Color Subtree</source>
+        <translation type="obsolete">Färg subträd</translation>
+    </message>
+    <message>
+        <source>Line</source>
+        <translation type="obsolete">Linje</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1928"/>
+        <source>Linkstyle Line</source>
+        <translation>Länkstil linje</translation>
+    </message>
+    <message>
+        <source>PolyLine</source>
+        <translation type="obsolete">PolyLinje</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1942"/>
+        <source>Linkstyle Thick Line</source>
+        <translation>Länkstil tjock linje</translation>
+    </message>
+    <message>
+        <source>PolyParabel</source>
+        <translation type="obsolete">PolyParabel</translation>
+    </message>
+    <message>
+        <source>Use same color for links and headings</source>
+        <translation type="obsolete">Använd samma färg för länkar och rubriker</translation>
+    </message>
+    <message>
+        <source>Set Link Color</source>
+        <translation type="obsolete">Sätt länkfärg</translation>
+    </message>
+    <message>
+        <source>Set Background Color</source>
+        <translation type="obsolete">Sätt bakgrundsfärg</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1981"/>
+        <source>Set &amp;Background Color</source>
+        <translation>Sätt &amp;bakgrundsfärg</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1995"/>
+        <source>&amp;View</source>
+        <translation>&amp;Visa</translation>
+    </message>
+    <message>
+        <source>Zoom reset</source>
+        <translation type="obsolete">Normal zoom</translation>
+    </message>
+    <message>
+        <source>Zoom in</source>
+        <translation type="obsolete">Zooma in</translation>
+    </message>
+    <message>
+        <source>Zoom out</source>
+        <translation type="obsolete">Zooma ut</translation>
+    </message>
+    <message>
+        <source>Use modifier to color branches</source>
+        <translation type="obsolete">Använd modierare att färga grenar</translation>
+    </message>
+    <message>
+        <source>&amp;Settings</source>
+        <translation type="obsolete">&amp;Inställningar</translation>
+    </message>
+    <message>
+        <source>Set application to open pdf files</source>
+        <translation type="obsolete">Sätt program att öppna pdf-filer</translation>
+    </message>
+    <message>
+        <source>Edit branch after adding it</source>
+        <translation type="obsolete">Redigera gren efter tilläggning</translation>
+    </message>
+    <message>
+        <source>Select branch after adding it</source>
+        <translation type="obsolete">Välj gren efter tilläggning</translation>
+    </message>
+    <message>
+        <source>Select heading before editing</source>
+        <translation type="obsolete">Välj rubrik före redigering</translation>
+    </message>
+    <message>
+        <source>&amp;Test</source>
+        <translation type="obsolete">&amp;Test</translation>
+    </message>
+    <message>
+        <source>Open VYM Documentation (pdf)</source>
+        <translation type="obsolete">Öppna VYM dokumentation (pdf)</translation>
+    </message>
+    <message>
+        <source>Information about QT toolkit</source>
+        <translation type="obsolete">Information om QT toolkit</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3460"/>
+        <source>Overwrite</source>
+        <translation>Överskriva</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3188"/>
+        <location filename="../mainwindow.cpp" line="3235"/>
+        <location filename="../mainwindow.cpp" line="3461"/>
+        <source>Cancel</source>
+        <translation>Avbryt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="124"/>
+        <source>Main window</source>
+        <comment>Shortcut scope</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="252"/>
+        <source>Script Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="314"/>
+        <source>Task list</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="273"/>
+        <source>Script Editor</source>
+        <comment>ScriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="218"/>
+        <source>Main window</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="219"/>
+        <source>Map Editors</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="220"/>
+        <source>Text Editors</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="967"/>
+        <source>&amp;Map</source>
+        <comment>Menu for file actions</comment>
+        <translation type="unfinished">&amp;Karta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="992"/>
+        <source>&amp;Restore last session</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1021"/>
+        <source>Firefox Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation type="unfinished">Firefox bokmärken</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <source>Import Dir%1</source>
+        <comment>Import Filters</comment>
+        <translation type="unfinished">Importera mapp%1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1059"/>
+        <source>Text (A&amp;O report)...</source>
+        <comment>Export format</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <source>Spreadsheet</source>
+        <translation type="unfinished">Visuell kalkyl</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1101"/>
+        <source>Properties</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1290"/>
+        <source>Move branch up</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Flyttä gren uppåt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1303"/>
+        <source>Move branch down</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">Flyttä gren nedåt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1429"/>
+        <source>References Context menu</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1498"/>
+        <source>Bugzilla handling</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1499"/>
+        <source>Create URL to SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1510"/>
+        <source>Get data from SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1519"/>
+        <source>Get data from SUSE Bugzilla for subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1528"/>
+        <source>SUSE Fate tool handling</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1529"/>
+        <source>Create URL to SUSE FATE tool</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1537"/>
+        <source>vymlinks - linking maps</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1545"/>
+        <source>Open linked map in background tab</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1574"/>
+        <source>Exports</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1586"/>
+        <source>Tasks</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1587"/>
+        <source>Toggle task</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1598"/>
+        <source>Cycle task status</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1609"/>
+        <source>Reset sleep</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1620"/>
+        <location filename="../mainwindow.cpp" line="1643"/>
+        <location filename="../mainwindow.cpp" line="1654"/>
+        <location filename="../mainwindow.cpp" line="1665"/>
+        <location filename="../mainwindow.cpp" line="1676"/>
+        <source>Sleep %1 days</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1632"/>
+        <source>Sleep %1 day</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1687"/>
+        <location filename="../mainwindow.cpp" line="1698"/>
+        <source>Sleep %1 weeks</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1730"/>
+        <source>Removing parts of a map</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1733"/>
+        <source>Remove only branch and keep its children </source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1753"/>
+        <source>Various</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1765"/>
+        <source>Map properties...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1771"/>
+        <source>Add   ...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1792"/>
+        <source>Selections</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1793"/>
+        <source>Select</source>
+        <comment>Select menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1840"/>
+        <source>Unselect all</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2053"/>
+        <source>Note editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2064"/>
+        <source>Heading editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2525"/>
+        <source>Set author for new maps</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2613"/>
+        <source>Number of visible parents in task editor</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2618"/>
+        <source>Number of visible parents in find results window</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2698"/>
+        <source>Debug info</source>
+        <comment>Option to show debugging info</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <source>Couldn&apos;t save %1,
+because of existing lockfile:
+
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <source>Please allow vym to download release notes!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5968"/>
+        <source>&lt;html&gt;&lt;h3&gt;Do you allow vym to check online for updates or release notes?&lt;/h3&gt;If you allow, vym will &lt;ul&gt;&lt;li&gt;check once for release notes&lt;/li&gt;&lt;li&gt;check regulary for updates and notify you in case you should update, e.g. if there are important bug fixes available&lt;/li&gt;&lt;li&gt;receive a cookie with a random ID and send vym version and platform name and the ID  (e.g. &quot;Windows&quot; or &quot;Linux&quot;) back to me, Uwe Drechsel.&lt;p&gt;As vym developer I am motivated to see many people using vym. Of course I am curious to see, on which system vym is used. Maintaining each of the systems requires a lot of my (spare) time.&lt;/p&gt; &lt;p&gt;No other data than above will be sent, especially no private data will be collected or sent.(Check the source code, if you don&apos;t believe.)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;If you do not allow, &lt;ul&gt;&lt;li&gt;nothing will be downloaded and especially I will &lt;b&gt;not be motivated&lt;/b&gt; to spend some more thousands of hours on developing a free software tool.&lt;/ul&gt;Please allow vym to check for updates :-)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5997"/>
+        <source>Allow</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5998"/>
+        <source>Do not allow</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6004"/>
+        <source>Thank you for enabling downloads!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6027"/>
+        <source>Update information</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6033"/>
+        <source>vym is up to date.</source>
+        <comment>MainWindow</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6084"/>
+        <source>Checking for updates...</source>
+        <comment>MainWindow</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Please allow vym to check for updates!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Info</source>
+        <translation type="obsolete">Info</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1918"/>
+        <source>Select default font</source>
+        <comment>Branch attribute</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1047"/>
+        <source>Webpage (HTML)...</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1051"/>
+        <source>Text (ASCII)...</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <source>Text with tasks</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1996"/>
+        <source>Toolbars</source>
+        <comment>Toolbars overview in view menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1997"/>
+        <source>Views</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2018"/>
+        <source>Rotate counterclockwise</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2026"/>
+        <source>Rotate rclockwise</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2076"/>
+        <source>Tree editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2084"/>
+        <source>Task editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2094"/>
+        <source>Slide editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2102"/>
+        <source>Script editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2153"/>
+        <source>Next slide</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2160"/>
+        <source>Previous slide</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2514"/>
+        <source>Settings</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2685"/>
+        <source>Download and show release notes</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2689"/>
+        <source>Check, if updates are available</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2694"/>
+        <source>Show keyboard shortcuts</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2755"/>
+        <source>Tasks</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2796"/>
+        <source>XLinks</source>
+        <comment>Menu for file actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3187"/>
+        <source>Open anyway</source>
+        <translation>Öppna trots allt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3234"/>
+        <source>Create</source>
+        <translation>Skapa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3303"/>
+        <source>Load vym map</source>
+        <translation>Öppna vym karta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3306"/>
+        <source>Import: Add vym map to selection</source>
+        <translation>Importera: Lägg vym karta till selektion</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3309"/>
+        <source>Import: Replace selection with vym map</source>
+        <translation>Importera: Ersätta selektion med vym karta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3314"/>
+        <source>or</source>
+        <comment>File Dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3444"/>
+        <source>Save map as</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3746"/>
+        <source>Couldn&apos;t find configuration for export to LibreOffice
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3775"/>
+        <source>Save modified map before closing it</source>
+        <translation>Spara modifierad karta före avstängning</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3776"/>
+        <source>Discard changes</source>
+        <translation>Avbryta förändringar</translation>
+    </message>
+    <message>
+        <source>This map is not saved yet. Do you want to</source>
+        <translation type="obsolete">Den här kartan är inte sparad. Vill du </translation>
+    </message>
+    <message>
+        <source>Save map</source>
+        <translation type="obsolete">Spara kartan</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5045"/>
+        <source>VYM -Information:</source>
+        <translation>VYM -Information:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <location filename="../mainwindow.cpp" line="4130"/>
+        <source>Critical Error</source>
+        <translation>Kritisk fel</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5787"/>
+        <source>Critcal error</source>
+        <translation>Kritisk fel</translation>
+    </message>
+    <message>
+        <source>Add a branch by inserting and making selection its child</source>
+        <translation type="obsolete">Lisää haara </translation>
+    </message>
+    <message>
+        <source>Remove only branch and keep its childs</source>
+        <translation type="obsolete">Ta bort bara gren och spara barn</translation>
+    </message>
+    <message>
+        <source>Remove childs of branch</source>
+        <translation type="obsolete">Ta bort barn av gren</translation>
+    </message>
+    <message>
+        <source>Use modifier to copy</source>
+        <translation type="obsolete">Använd modifierare att kopiera</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2723"/>
+        <source>Add</source>
+        <translation>Lägg till</translation>
+    </message>
+    <message>
+        <source>Use modifier to draw xLinks</source>
+        <translation type="obsolete">Använd modifierare att rita xLänkar</translation>
+    </message>
+    <message>
+        <source>Use exclusive flags in flag toolbars</source>
+        <translation type="obsolete">Använd exklusiva flaggor </translation>
+    </message>
+    <message>
+        <source>Set application to open external links</source>
+        <translation type="obsolete">Sätt program att öppna externa länkar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="238"/>
+        <source>Note Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="245"/>
+        <source>Heading Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="260"/>
+        <source>Search results list</source>
+        <comment>FindResultWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <comment>Toolbar for file actions</comment>
+        <translation type="obsolete">&amp;Karta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2913"/>
+        <source>File actions toolbar</source>
+        <comment>Toolbar for file actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2931"/>
+        <source>Edit actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="280"/>
+        <source>Property Editor</source>
+        <comment>PropertyEditor</comment>
+        <translation type="unfinished">Egenskapsredigerare</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="287"/>
+        <source>History window</source>
+        <comment>HistoryWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1135"/>
+        <source>E&amp;dit</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1208"/>
+        <source>Add attribute</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1316"/>
+        <source>&amp;Detach</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1317"/>
+        <source>Detach branch and use as mapcenter</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1334"/>
+        <source>Sort children backwards</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1411"/>
+        <source>Expand all branches</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1419"/>
+        <source>Expand one level</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1389"/>
+        <source>Collapse one level</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1400"/>
+        <source>Collapse unselected levels</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1355"/>
+        <source>Unscroll children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1360"/>
+        <source>Grow selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1369"/>
+        <source>Shrink selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1378"/>
+        <source>Reset selection size</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1795"/>
+        <source>Toggle target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1804"/>
+        <source>Goto target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1812"/>
+        <source>Move to target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1820"/>
+        <source>Select previous</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1830"/>
+        <source>Select next</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1848"/>
+        <source>Search functions</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1864"/>
+        <source>Find duplicate URLs</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1446"/>
+        <source>Open all URLs in subtree (including scrolled branches)</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1461"/>
+        <source>Extract URLs from note</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1754"/>
+        <source>Add timestamp</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1743"/>
+        <source>Remove children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2972"/>
+        <source>Zoom toolbar</source>
+        <comment>View Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2042"/>
+        <source>Center on selection</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2982"/>
+        <source>Editors toolbar</source>
+        <comment>Editor Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2994"/>
+        <source>Modifier modes toolbar</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2242"/>
+        <location filename="../mainwindow.cpp" line="2245"/>
+        <source>URL to Bugzilla </source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2248"/>
+        <source>Map target</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2265"/>
+        <source>Standard Flags toolbar</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2279"/>
+        <source>Status - ok,done</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2283"/>
+        <source>Status - work in progress</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2287"/>
+        <source>Status - missing, not started</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2385"/>
+        <source>forward</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2397"/>
+        <source>Don&apos;t flagrget</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Delete key for deleting branches</source>
+        <translation type="obsolete">Ta bort nyckel för att borttaga grenar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2630"/>
+        <source>Automatic layout</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2641"/>
+        <source>Test</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2803"/>
+        <source>Follow XLink</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished">Följa xLänk</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2922"/>
+        <source>Undo and clipboard toolbar</source>
+        <comment>Toolbar for redo/undo and clipboard</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2948"/>
+        <source>Selection toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2956"/>
+        <source>URLs and vymLinks toolbar</source>
+        <comment>Toolbar for URLs and vymlinks</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2964"/>
+        <source>Colors toolbar</source>
+        <comment>Colors toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3126"/>
+        <source>unnamed</source>
+        <comment>MainWindow: name for new and empty file</comment>
+        <translation type="unfinished">namnlös</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3179"/>
+        <source>The map %1
+is already opened.Opening the same map in multiple editors may lead 
+to confusion when finishing working with vym.Do you want to</source>
+        <translation>Kartan %1
+är redan öppnad. Öppning den samma kartan i många redigerare kan 
+åstadkomma problem när man slutar att arbeta med vym. Vill du</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3228"/>
+        <source>This map does not exist:
+  %1
+Do you want to create a new one?</source>
+        <translation>Kartan finns inte:
+  %1
+Vill du skapa en ny?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3264"/>
+        <source>Loading: %1</source>
+        <comment>Progress dialog while loading maps</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3413"/>
+        <source>Saved  %1</source>
+        <translation>Sparad  %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3417"/>
+        <source>Couldn&apos;t save </source>
+        <translation>Kunde inte spara </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3455"/>
+        <source>The file %1
+exists already. Do you want to</source>
+        <translation>Filen %1
+finns redan. Vill du</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3770"/>
+        <source>The map %1 has been modified but not saved yet. Do you want to</source>
+        <translation>Kartan %1 har varit modifierad men inte sparad. Vill du</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3994"/>
+        <source>Enter URL:</source>
+        <translation type="unfinished">Inskriv URL:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4017"/>
+        <source>HTML</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4018"/>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">Text</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4019"/>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">Visuell kalkyl</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4020"/>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">Textdokument</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4021"/>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">Bilder</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4025"/>
+        <source>Set URL to a local file</source>
+        <translation type="unfinished">Sätt URL tlii lokal fil</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4131"/>
+        <source>Couldn&apos;t open map %1</source>
+        <translation>Kunde inte öppna kartan %1</translation>
+    </message>
+    <message>
+        <source>Exit</source>
+        <translation type="obsolete">Avsluta</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="obsolete">Gör om</translation>
+    </message>
+    <message>
+        <source>Hide link</source>
+        <translation type="obsolete">Gömma länk</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2291"/>
+        <source>Take care!</source>
+        <comment>Standardflag</comment>
+        <translation>Var rädd om...!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2295"/>
+        <source>Really?</source>
+        <comment>Standardflag</comment>
+        <translation>Säkert?</translation>
+    </message>
+    <message>
+        <source>ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Ok!</translation>
+    </message>
+    <message>
+        <source>Not ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">Inte ok!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2274"/>
+        <source>This won&apos;t work!</source>
+        <comment>Standardflag</comment>
+        <translation>Det ska inte fungera!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2299"/>
+        <source>Good</source>
+        <comment>Standardflag</comment>
+        <translation>Bra</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2303"/>
+        <source>Bad</source>
+        <comment>Standardflag</comment>
+        <translation>Dåligt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2312"/>
+        <source>Time critical</source>
+        <comment>Standardflag</comment>
+        <translation>Tidkritiskt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2318"/>
+        <source>Idea!</source>
+        <comment>Standardflag</comment>
+        <translation>Idé!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2322"/>
+        <source>Important</source>
+        <comment>Standardflag</comment>
+        <translation>Viktigt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2326"/>
+        <source>Unimportant</source>
+        <comment>Standardflag</comment>
+        <translation>Inte viktigt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2339"/>
+        <source>I like this</source>
+        <comment>Standardflag</comment>
+        <translation>Jag tycker om det här</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2343"/>
+        <source>I do not like this</source>
+        <comment>Standardflag</comment>
+        <translation>Jag tycker inte om det här</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2356"/>
+        <source>Dangerous</source>
+        <comment>Standardflag</comment>
+        <translation>Farligt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2364"/>
+        <source>This will help</source>
+        <comment>Standardflag</comment>
+        <translation>Den här ska hjälp</translation>
+    </message>
+    <message>
+        <source>About VYM</source>
+        <translation type="obsolete">Om VYM</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <location filename="../mainwindow.cpp" line="3596"/>
+        <source>Import</source>
+        <translation>Importera</translation>
+    </message>
+    <message>
+        <source>KDE Bookmarks</source>
+        <translation type="obsolete">KDE bokmärken</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <location filename="../mainwindow.cpp" line="1087"/>
+        <location filename="../mainwindow.cpp" line="1091"/>
+        <location filename="../mainwindow.cpp" line="1095"/>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <source>(still experimental)</source>
+        <translation type="unfinished">(fortfarande experimentell)</translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">Exportera som LaTeX</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1110"/>
+        <source>&amp;Print</source>
+        <translation>&amp;Skriv ut</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <location filename="../mainwindow.cpp" line="3724"/>
+        <source>Export to</source>
+        <translation>Exportera till</translation>
+    </message>
+    <message>
+        <source>Hide object in exports</source>
+        <translation type="obsolete">Gömma objekt i exporteringar</translation>
+    </message>
+    <message>
+        <source>Use hide flag during exports </source>
+        <translation type="obsolete">Använd gömma flaggan när exportering </translation>
+    </message>
+    <message>
+        <source>Open URL in new tab</source>
+        <translation type="obsolete">Öppna URL i ny flick</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3745"/>
+        <location filename="../mainwindow.cpp" line="3875"/>
+        <location filename="../mainwindow.cpp" line="3918"/>
+        <location filename="../mainwindow.cpp" line="4260"/>
+        <location filename="../mainwindow.cpp" line="5800"/>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Warning</source>
+        <translation>Varning</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3876"/>
+        <location filename="../mainwindow.cpp" line="5801"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <translation>Kunde inte hittas en visare att öppna %1.
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>Använd Inställningar-&gt;</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="4981"/>
+        <source>Set application to open an URL</source>
+        <translation>Sätt program att öppna URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3919"/>
+        <source>Couldn&apos;t start %1 to open a new tab in %2.</source>
+        <translation>Kunde inte starta %1 att öppna en ny flick i %2.</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4967"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Set application to open PDF files</source>
+        <translation>Sätt program att öppna PDF-filer</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2307"/>
+        <source>Oh no!</source>
+        <comment>Standardflag</comment>
+        <translation>Nej men inte!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1878"/>
+        <source>Formatting</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2315"/>
+        <source>Call...</source>
+        <comment>Standardflag</comment>
+        <translation>Ringa...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2330"/>
+        <source>Very important!</source>
+        <comment>Standardflag</comment>
+        <translation>Jätte viktigt!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2334"/>
+        <source>Very unimportant!</source>
+        <comment>Standardflag</comment>
+        <translation>Inte viktigt!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2347"/>
+        <source>Rose</source>
+        <comment>Standardflag</comment>
+        <translation>Rosa</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2353"/>
+        <source>Surprise!</source>
+        <comment>Standardflag</comment>
+        <translation>Överraskning!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2360"/>
+        <source>Info</source>
+        <comment>Standardflag</comment>
+        <translation>Info</translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <translation type="obsolete">Firefox bokmärken</translation>
+    </message>
+    <message>
+        <source>Show Note Editor</source>
+        <translation type="obsolete">Visa anteckningsredigerare</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3533"/>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <source>Bookmarks</source>
+        <translation>Bokmärken</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start %1 to open a new tab</source>
+        <translation type="obsolete">Kunde inte starta %1 att öppna ny flick</translation>
+    </message>
+    <message>
+        <source>Standard Flags</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation type="obsolete">Standard flaggor</translation>
+    </message>
+    <message>
+        <source>No matches found for &quot;%1&quot;</source>
+        <translation type="obsolete">&quot;1%&quot; hittades inte</translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <translation type="obsolete">&amp;Karta</translation>
+    </message>
+    <message>
+        <source>Open all URLs in subtree</source>
+        <translation type="obsolete">Öppna alla URLs i subträd</translation>
+    </message>
+    <message>
+        <source>Open all vym links in subtree</source>
+        <translation type="obsolete">Öppna alla vym länkar i subträd</translation>
+    </message>
+    <message>
+        <source>New map</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">Ny karta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="985"/>
+        <source>&amp;Open...</source>
+        <comment>File menu</comment>
+        <translation>&amp;Öppna...</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">Öppna</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1000"/>
+        <source>Open Recent</source>
+        <comment>File menu</comment>
+        <translation>Senaste dokument</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1003"/>
+        <source>&amp;Save...</source>
+        <comment>File menu</comment>
+        <translation>&amp;Spara...</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">Spara</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1011"/>
+        <source>Save &amp;As...</source>
+        <comment>File menu</comment>
+        <translation>Spara &amp;som...</translation>
+    </message>
+    <message>
+        <source>Save &amp;As</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">Spara &amp;som</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1017"/>
+        <source>Import</source>
+        <comment>File menu</comment>
+        <translation>Importera</translation>
+    </message>
+    <message>
+        <source>Import %1</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">Importera %1</translation>
+    </message>
+    <message>
+        <source>KDE bookmarks</source>
+        <translation type="obsolete">KDE bokmärken</translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Firefox bokmärken</translation>
+    </message>
+    <message>
+        <source>Import %1</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Importera %1</translation>
+    </message>
+    <message>
+        <source>Import Dir%1</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Importera mapp%1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1038"/>
+        <source>Export</source>
+        <comment>File menu</comment>
+        <translation>Exportera</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1063"/>
+        <source>Image%1</source>
+        <comment>File export menu</comment>
+        <translation>Bild%1</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Exportera karta som en bild</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1067"/>
+        <source>PDF%1</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1071"/>
+        <source>SVG%1</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export in Open Document Format used e.g. in Open Office </source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Exportera som Open Document Format (Open Office) </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1040"/>
+        <source>Repeat last export (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export as %1</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">Exportera som %1</translation>
+    </message>
+    <message>
+        <source> webpage (XHTML)</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete"> websidan (XHTML)</translation>
+    </message>
+    <message>
+        <source>Export as %1</source>
+        <translation type="obsolete">Exportera som %1</translation>
+    </message>
+    <message>
+        <source>KDE Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">KDE bokmärken</translation>
+    </message>
+    <message>
+        <source>Print</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Skriv ut</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1118"/>
+        <source>&amp;Close Map</source>
+        <comment>File menu</comment>
+        <translation>&amp;Stäng kartan</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1124"/>
+        <source>E&amp;xit</source>
+        <comment>File menu</comment>
+        <translation>A&amp;vsluta</translation>
+    </message>
+    <message>
+        <source>&amp;Actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="obsolete">&amp;Aktivitet verktygsrad</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Redigera</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1139"/>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Ångra</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1150"/>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Göra om</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1161"/>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Kopiera</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1172"/>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation>&amp;Klip ut</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1185"/>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation>Klistra &amp;in</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Redigera rubrik</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1197"/>
+        <source>Delete Selection</source>
+        <comment>Edit menu</comment>
+        <translation>Ta bort selektion</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1232"/>
+        <source>Add branch as child</source>
+        <comment>Edit menu</comment>
+        <translation>Lägg till gren som ett barn</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1242"/>
+        <source>Add branch (insert)</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1252"/>
+        <location filename="../mainwindow.cpp" line="1262"/>
+        <source>Add branch above</source>
+        <comment>Edit menu</comment>
+        <translation>Lägg till gren ovanför</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1272"/>
+        <location filename="../mainwindow.cpp" line="1281"/>
+        <source>Add branch below</source>
+        <comment>Edit menu</comment>
+        <translation>Lägg till gren inunder</translation>
+    </message>
+    <message>
+        <source>Move up</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Längre fram</translation>
+    </message>
+    <message>
+        <source>Move down</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Längre bak</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1343"/>
+        <source>Scroll branch</source>
+        <comment>Edit menu</comment>
+        <translation>Rulla gren</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1849"/>
+        <location filename="../mainwindow.cpp" line="1857"/>
+        <source>Find...</source>
+        <comment>Edit menu</comment>
+        <translation>Sök...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1430"/>
+        <source>Open URL</source>
+        <comment>Edit menu</comment>
+        <translation>Öppna URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1438"/>
+        <source>Open URL in new tab</source>
+        <comment>Edit menu</comment>
+        <translation>Öppna URL i ny flick</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1454"/>
+        <source>Open all URLs in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Öppna alla URLs i subträd</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1470"/>
+        <source>Edit URL...</source>
+        <comment>Edit menu</comment>
+        <translation>Redigera URL...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1488"/>
+        <source>Use heading for URL</source>
+        <comment>Edit menu</comment>
+        <translation>Använd rubrik för URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1538"/>
+        <source>Open linked map</source>
+        <comment>Edit menu</comment>
+        <translation>Öppna linkad karta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1552"/>
+        <source>Open all vym links in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>Öppna alla vym länkar i subträd</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1560"/>
+        <source>Edit vym link...</source>
+        <comment>Edit menu</comment>
+        <translation>Redigera vym länk...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1567"/>
+        <source>Delete vym link</source>
+        <comment>Edit menu</comment>
+        <translation>Ta bort vym länk</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1575"/>
+        <source>Hide in exports</source>
+        <comment>Edit menu</comment>
+        <translation>Gömma i exporteringar</translation>
+    </message>
+    <message>
+        <source>Edit Map Info...</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Redigera kartainfo...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1710"/>
+        <source>Add map (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>Lägg till karta (i nuvarande)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1717"/>
+        <source>Add map (replace)</source>
+        <comment>Edit menu</comment>
+        <translation>Lägg till karta (ersätt)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1724"/>
+        <source>Save selection</source>
+        <comment>Edit menu</comment>
+        <translation>Spara selektion</translation>
+    </message>
+    <message>
+        <source>Remove only branch </source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Ta bort bara gren </translation>
+    </message>
+    <message>
+        <source>Remove childs</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Ta bort barn</translation>
+    </message>
+    <message>
+        <source>Select upper branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Välj övre gren</translation>
+    </message>
+    <message>
+        <source>Select lower branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Välj lägre gren</translation>
+    </message>
+    <message>
+        <source>Select left branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Välj vänstra gren</translation>
+    </message>
+    <message>
+        <source>Select child branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Välj barngren</translation>
+    </message>
+    <message>
+        <source>Select first branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Välj första gren</translation>
+    </message>
+    <message>
+        <source>Select last branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Välj sista gren</translation>
+    </message>
+    <message>
+        <source>Add Image...</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Lägg till bild...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1876"/>
+        <source>F&amp;ormat</source>
+        <comment>Format menu</comment>
+        <translation>F&amp;ormat</translation>
+    </message>
+    <message>
+        <source>Format Actions</source>
+        <comment>Format Toolbar name</comment>
+        <translation type="obsolete">Format aktiviteter</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1889"/>
+        <source>Pic&amp;k color</source>
+        <comment>Edit menu</comment>
+        <translation>Väl&amp;j färg</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1898"/>
+        <source>Color &amp;branch</source>
+        <comment>Edit menu</comment>
+        <translation>Färga &amp;gren</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1907"/>
+        <source>Color sub&amp;tree</source>
+        <comment>Edit menu</comment>
+        <translation>Färga sub&amp;träd</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1958"/>
+        <source>Hide link if object is not selected</source>
+        <comment>Branch attribute</comment>
+        <translation>Gömma länk om objekt är inte valt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1964"/>
+        <source>&amp;Use color of heading for link</source>
+        <comment>Branch attribute</comment>
+        <translation>&amp;Använd färg av rubrik för länk</translation>
+    </message>
+    <message>
+        <source>View Actions</source>
+        <comment>View Toolbar name</comment>
+        <translation type="obsolete">Visa aktiviteter</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2034"/>
+        <source>reset Zoom</source>
+        <comment>View action</comment>
+        <translation>Normal zoom</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2002"/>
+        <source>Zoom in</source>
+        <comment>View action</comment>
+        <translation>Zooma in</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2010"/>
+        <source>Zoom out</source>
+        <comment>View action</comment>
+        <translation>Zooma ut</translation>
+    </message>
+    <message>
+        <source>Show Note Editor</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Visa anteckningsredigerare</translation>
+    </message>
+    <message>
+        <source>Modes when using modifiers</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation type="obsolete">Sätt när man användar modifierar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2178"/>
+        <source>Use modifier to color branches</source>
+        <comment>Mode modifier</comment>
+        <translation>Använd modifierare att färga grenar</translation>
+    </message>
+    <message>
+        <source>Use modifier to copy</source>
+        <comment>Mode modifier</comment>
+        <translation type="obsolete">Använd modifierare att kopiera</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2194"/>
+        <source>Use modifier to draw xLinks</source>
+        <comment>Mode modifier</comment>
+        <translation>Använd modifierare add rita xLänkar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2531"/>
+        <source>Set application to open pdf files</source>
+        <comment>Settings action</comment>
+        <translation>Sätt program att öppna pdf-filer</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2535"/>
+        <source>Set application to open external links</source>
+        <comment>Settings action</comment>
+        <translation>Sätt program att öppna externa länkar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2581"/>
+        <source>Edit branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>Redigera gren efter tillläggning</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2587"/>
+        <source>Select branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>Väl gren efter tillläggning</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2593"/>
+        <source>Select existing heading</source>
+        <comment>Settings action</comment>
+        <translation>Välj existering rubrik</translation>
+    </message>
+    <message>
+        <source>Delete key</source>
+        <comment>Settings action</comment>
+        <translation type="obsolete">Ta bort nyckel</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2599"/>
+        <source>Exclusive flags</source>
+        <comment>Settings action</comment>
+        <translation>Exklusiva flaggor</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2605"/>
+        <source>Use hide flags</source>
+        <comment>Settings action</comment>
+        <translation>Använd gömma flaggor</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2673"/>
+        <source>&amp;Help</source>
+        <comment>Help menubar entry</comment>
+        <translation>&amp;Hjälp</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2676"/>
+        <source>Open VYM Documentation (pdf) </source>
+        <comment>Help action</comment>
+        <translation>Öppna VYM dokumentation (pdf) </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2702"/>
+        <source>About VYM</source>
+        <comment>Help action</comment>
+        <translation>Om VYM</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2706"/>
+        <source>About QT</source>
+        <comment>Help action</comment>
+        <translation>Om QT</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2735"/>
+        <source>Remove</source>
+        <comment>Context menu name</comment>
+        <translation>Ta bort</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2798"/>
+        <source>Edit XLink</source>
+        <comment>Context menu name</comment>
+        <translation>Redigera xlänk</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2809"/>
+        <source>Follow XLink</source>
+        <comment>Context menu name</comment>
+        <translation type="unfinished">Följa xLänk</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2818"/>
+        <source>Save image</source>
+        <comment>Context action</comment>
+        <translation>Spara bild</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="971"/>
+        <source>&amp;New map</source>
+        <comment>File menu</comment>
+        <translation>&amp;Ny karta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="978"/>
+        <source>&amp;Copy to new map</source>
+        <comment>File menu</comment>
+        <translation>&amp;Kopiera till ny karta</translation>
+    </message>
+    <message>
+        <source>Copy selection to mapcenter of a new map</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">Kopiera selektion till kartacenter av ny karta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1221"/>
+        <source>Add mapcenter</source>
+        <comment>Canvas context menu</comment>
+        <translation>Lägg till kartacenter</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1325"/>
+        <source>Sort children</source>
+        <comment>Edit menu</comment>
+        <translation>Ställa barn i ordning</translation>
+    </message>
+    <message>
+        <source>Unscroll childs</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">Rulla  barn öppen</translation>
+    </message>
+    <message>
+        <source>Unscroll all scrolled branches in selected subtree</source>
+        <translation type="obsolete">Rulla öppen alla rullad grenar i utvald subträd</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1479"/>
+        <source>Edit local URL...</source>
+        <comment>Edit menu</comment>
+        <translation>Redigera lokal URL...</translation>
+    </message>
+    <message>
+        <source>Edit local URL</source>
+        <translation type="obsolete">Redigera lokal URL</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Skapa URL till Novell Bugzilla</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell Bugzilla</source>
+        <translation type="obsolete">Skapa URL till Novell Bugzilla</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell FATE</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">Skapa URL till Novell FATE</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell FATE</source>
+        <translation type="obsolete">Skapa URL till Novell FATE</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1779"/>
+        <source>Property window</source>
+        <comment>Dialog to edit properties of selection</comment>
+        <translation>Egenskaper fönstret</translation>
+    </message>
+    <message>
+        <source>Set properties for selection</source>
+        <translation type="obsolete">Sätt egenskaper för selektion</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1935"/>
+        <source>Linkstyle Curve</source>
+        <translation>Länkstil kurva</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1949"/>
+        <source>Linkstyle Thick Curve</source>
+        <translation>Länkstil tjock kurva</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1971"/>
+        <source>Set &amp;Link Color</source>
+        <translation>Sätt &amp;länkfärg</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1976"/>
+        <source>Set &amp;Selection Color</source>
+        <translation>Sätt &amp;selektion färg</translation>
+    </message>
+    <message>
+        <source>Set Selection Color</source>
+        <translation type="obsolete">Sätt selektion färg</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1986"/>
+        <source>Set &amp;Background image</source>
+        <translation>Sätt &amp;bakgrundsbild</translation>
+    </message>
+    <message>
+        <source>Set Background image</source>
+        <translation type="obsolete">Sätt bakgrundsbild</translation>
+    </message>
+    <message>
+        <source>Show selection</source>
+        <comment>View action</comment>
+        <translation type="obsolete">Visa selektion</translation>
+    </message>
+    <message>
+        <source>Show selection</source>
+        <translation type="obsolete">Visa selektion</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2110"/>
+        <source>History Window</source>
+        <comment>View action</comment>
+        <translation>Historik fönstret</translation>
+    </message>
+    <message>
+        <source>Show History Window</source>
+        <translation type="obsolete">Visa historik fönstret</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2124"/>
+        <source>Antialiasing</source>
+        <comment>View action</comment>
+        <translation>Kantutjämning</translation>
+    </message>
+    <message>
+        <source>Antialiasing</source>
+        <translation type="obsolete">Kantutjämning</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2131"/>
+        <source>Smooth pixmap transformations</source>
+        <comment>View action</comment>
+        <translation>Mjuk pixmap -ändringar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2139"/>
+        <source>Next Map</source>
+        <comment>View action</comment>
+        <translation>Följande karta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2146"/>
+        <source>Previous Map</source>
+        <comment>View action</comment>
+        <translation>Förra karta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2174"/>
+        <source>Modifier modes</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2213"/>
+        <location filename="../mainwindow.cpp" line="2216"/>
+        <location filename="../mainwindow.cpp" line="2219"/>
+        <location filename="../mainwindow.cpp" line="2223"/>
+        <location filename="../mainwindow.cpp" line="2226"/>
+        <location filename="../mainwindow.cpp" line="2229"/>
+        <location filename="../mainwindow.cpp" line="2233"/>
+        <location filename="../mainwindow.cpp" line="2236"/>
+        <source>Note</source>
+        <comment>SystemFlag</comment>
+        <translation>Anteckning</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2239"/>
+        <source>URL to Document </source>
+        <comment>SystemFlag</comment>
+        <translation>URL till dokument </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2251"/>
+        <source>Link to another vym map</source>
+        <comment>SystemFlag</comment>
+        <translation>Länk till andra vym-karta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2254"/>
+        <source>subtree is scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation>Subträd är rullad</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2257"/>
+        <source>subtree is temporary scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation>Subträd är temporält rullad</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2260"/>
+        <source>Hide object in exported maps</source>
+        <comment>SystemFlag</comment>
+        <translation>Gömma objekt i exporterad kartor</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2350"/>
+        <source>I just love...</source>
+        <comment>Standardflag</comment>
+        <translation>Jag bara älskar...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2369"/>
+        <source>Important</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Viktigt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2376"/>
+        <source>Priority</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Prioritet</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2381"/>
+        <source>Back</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Föregående</translation>
+    </message>
+    <message>
+        <source>Forward</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="obsolete">Vidare</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2389"/>
+        <source>Look here</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Titta här</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2393"/>
+        <source>Dangerous</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Farlig</translation>
+    </message>
+    <message>
+        <source>Don&apos;t forget</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="obsolete">Glöm inte</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2401"/>
+        <source>Flag</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Flagga</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2406"/>
+        <source>Home</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Hemma</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2410"/>
+        <source>Telephone</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Telefon</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2414"/>
+        <source>Music</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Musik</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2418"/>
+        <source>Mailbox</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Brevlåda</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2422"/>
+        <source>Maix</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2426"/>
+        <source>Password</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Lösenord</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2430"/>
+        <source>To be improved</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2434"/>
+        <source>Stop</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Stanna</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2438"/>
+        <source>Magic</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Magiskt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2442"/>
+        <source>To be discussed</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Ska vara diskuterad</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2446"/>
+        <source>Reminder</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Påminnelse</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2450"/>
+        <source>Excellent</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Utmärkt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2454"/>
+        <source>Linux</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Linux</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2458"/>
+        <source>Sweet</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Söt</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2518"/>
+        <source>Check for release notes and updates</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2539"/>
+        <source>Set application to zip/unzip files</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2543"/>
+        <source>Set path for macros</source>
+        <comment>Settings action</comment>
+        <translation>Sätt stig för macros</translation>
+    </message>
+    <message>
+        <source>Set path for macros</source>
+        <translation type="obsolete">Sätt stig för macros</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2547"/>
+        <source>Set number of undo levels</source>
+        <comment>Settings action</comment>
+        <translation>Sätt antal av ångranivåer</translation>
+    </message>
+    <message>
+        <source>Set number of undo levels</source>
+        <translation type="obsolete">Sätt antal av ångranivåer</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2553"/>
+        <source>Autosave</source>
+        <comment>Settings action</comment>
+        <translation>Automatsparning</translation>
+    </message>
+    <message>
+        <source>Autosave</source>
+        <translation type="obsolete">Automatsparning</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2559"/>
+        <source>Autosave time</source>
+        <comment>Settings action</comment>
+        <translation>Automatsparnings interval</translation>
+    </message>
+    <message>
+        <source>Autosave time</source>
+        <translation type="obsolete">Automatsparnings interval</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2572"/>
+        <source>Write backup file on save</source>
+        <comment>Settings action</comment>
+        <translation>Skriva säkerhetskopiafil när man sparar</translation>
+    </message>
+    <message>
+        <source>Write backup file on save</source>
+        <translation type="obsolete">Skriva säkerhetskopiafil när man sparar</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2623"/>
+        <source>Animation</source>
+        <comment>Settings action</comment>
+        <translation>Animation</translation>
+    </message>
+    <message>
+        <source>Animation</source>
+        <translation type="obsolete">Animation</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2680"/>
+        <source>Open VYM example maps </source>
+        <comment>Help action</comment>
+        <translation>Öppna VYM exempel-kartor </translation>
+    </message>
+    <message>
+        <source>Open VYM example maps </source>
+        <translation type="obsolete">Öppna VYM exempel-kartor </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2772"/>
+        <source>References (URLs, vymLinks, ...)</source>
+        <comment>Context menu name</comment>
+        <translation>Referenser (URLs, vymLinks, ...)</translation>
+    </message>
+    <message>
+        <source>&amp;%1 %2</source>
+        <translation type="obsolete">&amp;%1 %2</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3563"/>
+        <source>Load Freemind map</source>
+        <translation>Öppna Freemind karta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <source>Export as CSV</source>
+        <translation>Exportera som CSV</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4183"/>
+        <location filename="../mainwindow.cpp" line="4185"/>
+        <source>Link to another map</source>
+        <translation type="unfinished">Länk till en annan karta</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4244"/>
+        <source>Enter sleep time (number of days or date YYYY-MM-DD or DD.MM[.YYYY]</source>
+        <comment>task sleep time dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4261"/>
+        <source>Couldn&apos;t set sleep time to %1.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4286"/>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished">%1 saker på mapp
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4304"/>
+        <source>branches</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4305"/>
+        <source>notes</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4306"/>
+        <source>images</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4307"/>
+        <source>tasks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4308"/>
+        <source>slides</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4309"/>
+        <source>xLinks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5000"/>
+        <location filename="../mainwindow.cpp" line="5010"/>
+        <source>Set application to zip/unzip files</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5028"/>
+        <source>Directory with vym macros:</source>
+        <translation>Mappen med vym macros:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5041"/>
+        <source>Number of undo/redo levels:</source>
+        <translation>Antal av ångra/gör om nivåer:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5046"/>
+        <source>Settings have been changed. The next map opened will have &quot;%1&quot; undo/redo levels</source>
+        <translation>Inställningar har förändrats. Följande kartan öppnad ska har &quot;%1&quot; ångra/göra om nivår</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5066"/>
+        <source>Number of seconds before autosave:</source>
+        <translation>Sekunder förr automatsparning:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5076"/>
+        <source>Set author for new maps (used in lockfile)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5077"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5088"/>
+        <source>Number of parents shown in find results:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5098"/>
+        <source>Number of parents shown for a task:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3092"/>
+        <source>(readonly)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5433"/>
+        <source>History for %1</source>
+        <comment>Window Caption</comment>
+        <translation>Historik för %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5456"/>
+        <source>Export in last used format (%1) to: %2</source>
+        <comment>status tip</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5788"/>
+        <source>Couldn&apos;t find the documentation %1 in:
+%2</source>
+        <translation>Kunde inte hittas dokumentation %1 i:(new line)%2</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5816"/>
+        <source>Load vym example map</source>
+        <translation>Öppna VYM exempel-karta</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation type="obsolete">Kunde inte hitta en macro på  %1.
+</translation>
+    </message>
+    <message>
+        <source>Set directory for vym macros</source>
+        <translation type="obsolete">Sätt mapp för vym macros</translation>
+    </message>
+</context>
+<context>
+    <name>MapEditor</name>
+    <message>
+        <source>Critical Parse Error</source>
+        <translation type="obsolete">Kritisk parse fel</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="obsolete">Överskriv</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Avbryt</translation>
+    </message>
+    <message>
+        <source>Critical Export Error</source>
+        <translation type="obsolete">Kritiskt export fel</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">Kritiskt fel</translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation type="obsolete">Inskriv URL:</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <translation type="obsolete">Bilder</translation>
+    </message>
+    <message>
+        <source>Critical Import Error</source>
+        <translation type="obsolete">Kritisk import fel</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="obsolete">Filen %1 redan finns.
+Vill du överskriva den?</translation>
+    </message>
+    <message>
+        <source>MapEditor::exportXML couldn&apos;t open %1</source>
+        <translation type="obsolete">MapEditor::exportXML kunde inte öppna %1</translation>
+    </message>
+    <message>
+        <source>Cannot find the directory %1</source>
+        <translation type="obsolete">Kann inte hitta register %1</translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation type="obsolete">Länk till en annan karta</translation>
+    </message>
+    <message>
+        <source>Load image</source>
+        <translation type="obsolete">Ladda en bild</translation>
+    </message>
+    <message>
+        <source>Choose directory structure to import</source>
+        <translation type="obsolete">Välj registerstruktur att importera</translation>
+    </message>
+    <message>
+        <source>unnamed</source>
+        <translation type="obsolete">namnlös</translation>
+    </message>
+    <message>
+        <source>Save image</source>
+        <translation type="obsolete">Spara bild</translation>
+    </message>
+    <message>
+        <source>Critical Parse Error while reading %1</source>
+        <translation type="obsolete">Kritisk XXX fel medan läser %1</translation>
+    </message>
+    <message>
+        <source>Could not read %1</source>
+        <translation type="obsolete">Kunnde inte läsa %1</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="obsolete">Varning</translation>
+    </message>
+    <message>
+        <source>Can&apos;t get color of heading,
+there&apos;s no branch selected</source>
+        <translation type="obsolete">Kann inte hämta färg av rubrik,
+det finns ingen gren valt</translation>
+    </message>
+    <message>
+        <source>Critical Load Error</source>
+        <translation type="obsolete">Kritisk XX fel (kato joku aikasempi...)</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation type="obsolete">Kunnde inte skapa tillfälligt register förrän XXX kas aik</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="obsolete">Kunnde inte hitta en karta (*.xml) in i .vym arkivet.
+</translation>
+    </message>
+    <message>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="obsolete">Kartan %1
+använde inte tryckt vym fil format.
+Att skriva det upptryckt ska också skriva bilder 
+och flaggor och så kan överskriva filer in i givit register
+
+Vill du skriva kartan</translation>
+    </message>
+    <message>
+        <source>compressed (vym default)</source>
+        <translation type="obsolete">tryckt (vym huvudsaklig)</translation>
+    </message>
+    <message>
+        <source>uncompressed</source>
+        <translation type="obsolete">upptryckt</translation>
+    </message>
+    <message>
+        <source>Save Error</source>
+        <translation type="obsolete">Sparningsfel</translation>
+    </message>
+    <message>
+        <source>%1
+could not be removed before saving</source>
+        <translation type="obsolete">%1
+kunnde inte att vara bort tagit förrän sparning ?x!0000</translation>
+    </message>
+    <message>
+        <source>%1
+could not be renamed before saving</source>
+        <translation type="obsolete">%1
+kunnde inte att vara nämnad igen förrän sparn</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation type="obsolete">Kunnde inte skapa tillfälligt register förrän sparning
+</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <translation type="obsolete">Export karta som bild</translation>
+    </message>
+    <message>
+        <source>Export XML to directory</source>
+        <translation type="obsolete">Export XML till register</translation>
+    </message>
+    <message>
+        <source>Autosave disabled during undo.</source>
+        <translation type="obsolete">Automatisk sparning avstängd under ångra.</translation>
+    </message>
+    <message>
+        <source>Load background image</source>
+        <translation type="obsolete">Ladda bakgrund bild</translation>
+    </message>
+    <message>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Text</translation>
+    </message>
+    <message>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Visuell kalkyl</translation>
+    </message>
+    <message>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Textdokument</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Bilder</translation>
+    </message>
+    <message>
+        <source>Set URL to a local file</source>
+        <translation type="obsolete">Sätt URL tlii lokal fil</translation>
+    </message>
+    <message>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation type="obsolete">%1 saker på mapp
+</translation>
+    </message>
+    <message>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation type="obsolete">Filen av kartan  på skiva har förändrats
+
+   %1
+
+Vill du ha äterladda kartan med ny fil?</translation>
+    </message>
+    <message>
+        <source>Reload</source>
+        <translation type="obsolete">Återladda</translation>
+    </message>
+    <message>
+        <source>Ignore</source>
+        <translation type="obsolete">Passera</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="43"/>
+        <source>Map Editor</source>
+        <comment>Shortcut scope</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="111"/>
+        <location filename="../mapeditor.cpp" line="116"/>
+        <source>Edit heading</source>
+        <comment>MapEditor</comment>
+        <translation type="unfinished">Redigera rubrik</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>MapEditor</comment>
+        <translation type="obsolete">Spara</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Kopiera</translation>
+    </message>
+    <message>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Ångra</translation>
+    </message>
+    <message>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">&amp;Göra om</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="510"/>
+        <source>Print vym map</source>
+        <comment>MapEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>NoteEditor</name>
+    <message>
+        <location filename="../noteeditor.cpp" line="13"/>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Process</name>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="obsolete">%1 kunde inte avsluta normalt</translation>
+    </message>
+</context>
+<context>
+    <name>QObject</name>
+    <message>
+        <source>This is not an image.</source>
+        <translation type="obsolete">Den här är inte en bild.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <location filename="../exports.cpp" line="381"/>
+        <location filename="../exports.cpp" line="511"/>
+        <location filename="../exports.cpp" line="954"/>
+        <location filename="../exports.cpp" line="1048"/>
+        <location filename="../exports.cpp" line="1128"/>
+        <location filename="../exports.cpp" line="1236"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <location filename="../exports.cpp" line="1333"/>
+        <location filename="../exports.cpp" line="1343"/>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Critical Export Error</source>
+        <translation type="unfinished">Kritisk export fel</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="956"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <source>Could not write %1</source>
+        <translation type="unfinished">Kunde inte skriva %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="147"/>
+        <source>Exporting to %1 will overwrite the existing file:
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="146"/>
+        <source>Warning: Overwriting file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="503"/>
+        <source>Export as CSV</source>
+        <translation type="unfinished">Exportera som CSV</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="837"/>
+        <source>Contents:</source>
+        <comment>Used in HTML export</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="893"/>
+        <source>Export aborted.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <comment>ExportHTML</comment>
+        <translation type="obsolete">Varning</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <comment>ExportHTML</comment>
+        <translation type="obsolete">Kann inte öppna %1</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <translation type="obsolete">Kann inte öppna %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="934"/>
+        <source>Trying to create directory for flags:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="935"/>
+        <source>Could not create %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="909"/>
+        <location filename="../exports.cpp" line="933"/>
+        <location filename="../exports.cpp" line="944"/>
+        <source>Critical</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <source>Could not export as AO to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="381"/>
+        <source>Could not export as ASCII to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="511"/>
+        <source>Could not export as CSV to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="910"/>
+        <source>Could not find stylesheet %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="920"/>
+        <source>Error</source>
+        <comment>ExportHTML</comment>
+        <translation type="unfinished">Fel</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="921"/>
+        <source>Could not copy
+%1 to
+%2</source>
+        <comment>ExportHTML</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="945"/>
+        <source>Could not copy %1 to %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="955"/>
+        <source>Trying to save HTML file:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="236"/>
+        <location filename="../exports.cpp" line="382"/>
+        <location filename="../exports.cpp" line="512"/>
+        <location filename="../exports.cpp" line="957"/>
+        <location filename="../exports.cpp" line="1049"/>
+        <location filename="../exports.cpp" line="1130"/>
+        <location filename="../exports.cpp" line="1309"/>
+        <source>Export failed.</source>
+        <translation type="unfinished">Export misslyckades.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1048"/>
+        <source>Could not export as OrgMode to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1129"/>
+        <source>Could not export as LaTeX to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1189"/>
+        <source>Export as LibreOffice Impress presentation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1236"/>
+        <source>No objects in map!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1333"/>
+        <source>Couldn&apos;t read settings from &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1343"/>
+        <source>Check &quot;%1&quot; in
+%2</source>
+        <translation type="unfinished">Inspektera &quot;%1&quot; i
+%2</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Could not read %1</source>
+        <translation type="unfinished">Kunnde inte läsa %1</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="257"/>
+        <location filename="../file.cpp" line="272"/>
+        <location filename="../file.cpp" line="296"/>
+        <location filename="../file.cpp" line="305"/>
+        <location filename="../file.cpp" line="313"/>
+        <location filename="../file.cpp" line="323"/>
+        <location filename="../file.cpp" line="332"/>
+        <location filename="../file.cpp" line="340"/>
+        <location filename="../file.cpp" line="347"/>
+        <location filename="../file.cpp" line="356"/>
+        <location filename="../file.cpp" line="377"/>
+        <location filename="../file.cpp" line="400"/>
+        <location filename="../file.cpp" line="410"/>
+        <location filename="../file.cpp" line="423"/>
+        <location filename="../main.cpp" line="411"/>
+        <location filename="../xsltproc.cpp" line="78"/>
+        <location filename="../xsltproc.cpp" line="84"/>
+        <source>Critical Error</source>
+        <translation type="unfinished">Kritisk fel</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="258"/>
+        <source>Couldn&apos;t move existing file out of the way before saving.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="273"/>
+        <location filename="../file.cpp" line="378"/>
+        <source>Couldn&apos;t start tool to decompress data.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="297"/>
+        <source>Couldn&apos;t start zip to compress data.</source>
+        <translation type="unfinished">Kunde inte börja zip till koncentrerat data.</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="306"/>
+        <source>zip didn&apos;t exit normally</source>
+        <translation type="unfinished">zip avslutade inte normalt</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="324"/>
+        <source>Couldn&apos;t rename %1 back to %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="333"/>
+        <source>Couldn&apos;t remove target of old symbolic link %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="341"/>
+        <source>Couldn&apos;t rename output to target of old symbolic link %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="348"/>
+        <source>Couldn&apos;t link from %1 to target of old symbolic link %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="357"/>
+        <source>Saved %1, but couldn&apos;t remove %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="401"/>
+        <source>Couldn&apos;t start unzip to decompress data.</source>
+        <translation type="unfinished">Kunde inte börja unzip för att xxxx</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="411"/>
+        <source>unzip didn&apos;t exit normally</source>
+        <translation type="unfinished">unzip avslutade inte normalt</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="79"/>
+        <source>Could not start %1</source>
+        <translation type="unfinished">Kunde inte börja %1</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="85"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="unfinished">%1 kunde inte avsluta normalt</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="obsolete">Filen %1 finns redan.
+Vill du överskriva den?</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="90"/>
+        <source>Overwrite</source>
+        <translation>Överskriva</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="91"/>
+        <source>Cancel</source>
+        <translation>Avbryt</translation>
+    </message>
+    <message>
+        <source>Sorry, no preview for
+multiple selected files.</source>
+        <translation type="obsolete">Förlåt, ingen förhansvisning för
+multipel valt filer.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="560"/>
+        <location filename="../exports.cpp" line="590"/>
+        <source>Exporting the %1 bookmarks will overwrite
+your existing bookmarks file.</source>
+        <translation type="unfinished">Exportering %1 bokmärke ska överskriva
+din nuvarande bokmärke fil.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="561"/>
+        <location filename="../exports.cpp" line="591"/>
+        <source>Warning: Overwriting %1 bookmarks</source>
+        <translation type="unfinished">Varning: Överskrivning %1 bokmärken</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="579"/>
+        <location filename="../macros.cpp" line="39"/>
+        <location filename="../main.cpp" line="377"/>
+        <source>Warning</source>
+        <translation>Varning</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="580"/>
+        <source>Couldn&apos;t find script %1
+to notifiy Browsers of changed bookmarks.</source>
+        <translation type="unfinished">Kunde inte hitta script %1
+att avisera bläddrarna av förändrad bokmärken.</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="56"/>
+        <location filename="../imports.cpp" line="18"/>
+        <location filename="../main.cpp" line="475"/>
+        <location filename="../scripteditor.cpp" line="77"/>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Error</source>
+        <translation type="unfinished">Fel</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="57"/>
+        <location filename="../imports.cpp" line="19"/>
+        <source>Couldn&apos;t access temporary directory
+</source>
+        <translation type="unfinished">kunde inte tillgång tillfälligt register
+</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <location filename="../exports.cpp" line="373"/>
+        <source>Export as ASCII</source>
+        <translation type="unfinished">Export som ASCII</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <source>(still experimental)</source>
+        <translation type="unfinished">(fortfarande experimentell)</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="84"/>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <comment>write directory</comment>
+        <translation type="unfinished">Registret %1 är inte tom.
+Ska du äventyra att överskriva innehållet av det?</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation type="obsolete">Kunnde inte öppna %1.
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3792"/>
+        <source>No Bugzilla client found.  For openSUSE you can install by (running as root):
+
+</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3797"/>
+        <source>Alternatively you can also add the repository
+and install the perl module for Bugzilla access using YaST</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3800"/>
+        <source>Warning: Couldn&apos;t find Bugzilla client</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="412"/>
+        <source>Couldn&apos;t find tool to unzip data. Please download and install 7z and set path in Settings menu:
+ </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="476"/>
+        <location filename="../scripteditor.cpp" line="78"/>
+        <source>Couldn&apos;t open &quot;%1&quot;
+%2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="80"/>
+        <source>Warning: Version Problem</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="81"/>
+        <source>&lt;h3&gt;Map is newer than VYM&lt;/h3&gt;&lt;p&gt;The map you are just trying to load was saved using vym %1. The version of this vym is %2. If you run into problems after pressing the ok-button below, updating vym should help.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="40"/>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation type="unfinished">Kunde inte hitta en macro på  %1.
+</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Please use Settings-&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Set directory for vym macros</source>
+        <translation type="unfinished">Sätt mapp för vym macros</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Couldn&apos;t save &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>ScriptEditor</name>
+    <message>
+        <location filename="../scripteditor.ui" line="14"/>
+        <source>Form</source>
+        <translation type="unfinished">Formulär</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="49"/>
+        <source>Tab 1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="55"/>
+        <source>Save to selected slide</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="91"/>
+        <location filename="../scripteditor.ui" line="145"/>
+        <source>Run</source>
+        <translation type="unfinished">Kör</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="105"/>
+        <source>Tab 2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="121"/>
+        <source>Current key:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="131"/>
+        <source>Load</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="138"/>
+        <source>Save</source>
+        <translation type="unfinished">Spara</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Warning</source>
+        <translation type="unfinished">Varning</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="45"/>
+        <source>Slide</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="46"/>
+        <source>Macro</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="65"/>
+        <source>Save</source>
+        <comment>ScriptEditor</comment>
+        <translation type="unfinished">Spara</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <source>Couldn&apos;t get model to save script into slide!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Couldn&apos;t find slide to save script into slide!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="143"/>
+        <source>Save script</source>
+        <translation type="unfinished">Spara script</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="155"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="160"/>
+        <source>Overwrite</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="161"/>
+        <source>Cancel</source>
+        <translation type="unfinished">Avbryt</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="184"/>
+        <source>Load script</source>
+        <translation type="unfinished">Ladda script</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="194"/>
+        <source>Error</source>
+        <translation type="unfinished">Fel</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="195"/>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>ShowTextDialog</name>
+    <message>
+        <location filename="../showtextdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>Dialog</translation>
+    </message>
+    <message>
+        <location filename="../showtextdialog.ui" line="50"/>
+        <source>Close</source>
+        <translation>Stäng</translation>
+    </message>
+</context>
+<context>
+    <name>SimpleScriptEditor</name>
+    <message>
+        <source>Save script</source>
+        <translation type="obsolete">Spara script</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation type="obsolete">Filen %1
+redan finns.
+Vill du överskriva det?</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="obsolete">Överskriva</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">Avbryt</translation>
+    </message>
+    <message>
+        <source>Load script</source>
+        <translation type="obsolete">Ladda script</translation>
+    </message>
+    <message>
+        <source>Error</source>
+        <translation type="obsolete">Fel</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation type="obsolete">Kunde inte öppna %1.
+</translation>
+    </message>
+    <message>
+        <source>Simple Script Editor</source>
+        <translation type="obsolete">Enelt script redaktör</translation>
+    </message>
+    <message>
+        <source>Save as</source>
+        <translation type="obsolete">Spara som</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <translation type="obsolete">Spara</translation>
+    </message>
+    <message>
+        <source>Qt::CTRL + Qt::Key_S</source>
+        <translation type="obsolete">Qt::CTRL + Qt::Key_S</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <translation type="obsolete">Öppna</translation>
+    </message>
+    <message>
+        <source>Qt::CTRL +Qt::Key_O</source>
+        <translation type="obsolete">Qt::CTRL +Qt::Key_O</translation>
+    </message>
+    <message>
+        <source>Run</source>
+        <translation type="obsolete">Kör</translation>
+    </message>
+    <message>
+        <source>Qt::CTRL + Qt::Key_R</source>
+        <translation type="obsolete">Qt::CTRL + Qt::Key_R</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">Stäng</translation>
+    </message>
+</context>
+<context>
+    <name>TaskEditor</name>
+    <message>
+        <location filename="../taskeditor.cpp" line="38"/>
+        <source>Current map</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="45"/>
+        <source>Active tasks</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="52"/>
+        <source>New tasks</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="68"/>
+        <location filename="../taskeditor.cpp" line="73"/>
+        <source>Edit heading</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished">Redigera rubrik</translation>
+    </message>
+</context>
+<context>
+    <name>TaskModel</name>
+    <message>
+        <location filename="../taskmodel.cpp" line="127"/>
+        <source>Prio</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="129"/>
+        <source>Status</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="131"/>
+        <source>Age total</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="133"/>
+        <source>Age mod.</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="135"/>
+        <source>Sleep</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="137"/>
+        <source>Map</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="139"/>
+        <source>Task</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>TextEditor</name>
+    <message>
+        <location filename="../texteditor.cpp" line="273"/>
+        <source>&amp;Import...</source>
+        <translation type="unfinished">&amp;Importera...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="283"/>
+        <source>&amp;Export...</source>
+        <translation type="unfinished">&amp;Exportera...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="293"/>
+        <source>Export &amp;As... (HTML)</source>
+        <translation type="unfinished">Export &amp;Som... (HTML)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="298"/>
+        <source>Export &amp;As...(ASCII)</source>
+        <translation type="unfinished">Export &amp;Som...(ASCII)</translation>
+    </message>
+    <message>
+        <source>Print Note</source>
+        <translation type="obsolete">Skriva ut anteckning</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="308"/>
+        <source>&amp;Print...</source>
+        <translation type="unfinished">&amp;Skriva ut...</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <translation type="obsolete">&amp;Redigera</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="332"/>
+        <source>&amp;Undo</source>
+        <translation type="unfinished">&amp;Ångra</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="341"/>
+        <source>&amp;Redo</source>
+        <translation type="unfinished">&amp;Göra om</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="351"/>
+        <source>Select and copy &amp;all</source>
+        <translation type="unfinished">Val och kopiera &amp;allt</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="359"/>
+        <source>&amp;Copy</source>
+        <translation type="unfinished">&amp;Kopiera</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="368"/>
+        <source>Cu&amp;t</source>
+        <translation type="unfinished">&amp;Klipp</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="377"/>
+        <source>&amp;Paste</source>
+        <translation type="unfinished">&amp;Infoga</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="316"/>
+        <source>&amp;Delete All</source>
+        <translation type="unfinished">&amp;Ta bort alla</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="271"/>
+        <location filename="../texteditor.cpp" line="325"/>
+        <location filename="../texteditor.cpp" line="389"/>
+        <source>Texteditor</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="329"/>
+        <source>Edi&amp;t</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="390"/>
+        <source>Font hints</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="396"/>
+        <source>&amp;Font hint</source>
+        <translation type="unfinished">&amp;Font råd</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="407"/>
+        <source>&amp;Richtext</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="417"/>
+        <source>Fonts</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="443"/>
+        <source>Format</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="448"/>
+        <source>&amp;Color...</source>
+        <translation type="unfinished">&amp;Färg...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="454"/>
+        <source>&amp;Bold</source>
+        <translation type="unfinished">&amp;Fet</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="464"/>
+        <source>&amp;Italic</source>
+        <translation type="unfinished">&amp;Kursiv</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="474"/>
+        <source>&amp;Underline</source>
+        <translation type="unfinished">&amp;Understruken</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="512"/>
+        <source>&amp;Left</source>
+        <translation type="unfinished">&amp;Vänsterjustera</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="518"/>
+        <source>C&amp;enter</source>
+        <translation type="unfinished">C&amp;entrera</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="524"/>
+        <source>&amp;Right</source>
+        <translation type="unfinished">&amp;Högerjustera</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="530"/>
+        <source>&amp;Justify</source>
+        <translation type="unfinished">&amp;Marginaljustera</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="540"/>
+        <source>&amp;Settings</source>
+        <translation type="unfinished">&amp;Inställningar</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="543"/>
+        <source>Set &amp;fixed font</source>
+        <translation type="unfinished">Sätt &amp;fastställd font</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="548"/>
+        <source>Set &amp;variable font</source>
+        <translation type="unfinished">Sätt &amp;varierande font</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="553"/>
+        <source>&amp;fixed font is default</source>
+        <translation type="unfinished">&amp;fastställd font är antagande</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="704"/>
+        <source>Export Note to single file</source>
+        <translation type="unfinished">Exportera anteckning till en fil</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="724"/>
+        <location filename="../texteditor.cpp" line="800"/>
+        <source>Overwrite</source>
+        <translation type="unfinished">Överskriva</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="725"/>
+        <location filename="../texteditor.cpp" line="801"/>
+        <source>Cancel</source>
+        <translation>Avbryt</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="785"/>
+        <source>Export Note to single file (ASCII)</source>
+        <translation type="unfinished">Exportera anteckning till en fil (ASCII)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="828"/>
+        <source>Print</source>
+        <comment>TextEditor</comment>
+        <translation type="unfinished">Skriv ut</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="488"/>
+        <source>Subs&amp;cript</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="49"/>
+        <source>Text Editor</source>
+        <comment>Text Editor Window caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="498"/>
+        <source>Su&amp;perscript</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="566"/>
+        <source>Note Editor</source>
+        <translation type="unfinished">Anteknings redigerare</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="392"/>
+        <source>F&amp;ormat</source>
+        <translation type="unfinished">F&amp;ormat</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="326"/>
+        <source>Edit Actions</source>
+        <translation type="unfinished">Redigera aktiviteter</translation>
+    </message>
+    <message>
+        <source>Format Actions</source>
+        <translation type="obsolete">Format aktiviteter</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="267"/>
+        <source>Note Actions</source>
+        <translation type="unfinished">Antecknings aktiviteter</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="48"/>
+        <source>Ready</source>
+        <comment>Statusbar message</comment>
+        <translation type="unfinished">Färdig</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="174"/>
+        <source>No filename available for this note.</source>
+        <comment>Statusbar message</comment>
+        <translation type="unfinished">Ingen filnamn ledig för den här antekning</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation type="obsolete">Antecknings redigerare</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="269"/>
+        <source>&amp;Note</source>
+        <comment>Menubar</comment>
+        <translation type="unfinished">&amp;Anteckning</translation>
+    </message>
+    <message>
+        <source>Import</source>
+        <comment>Status tip for Note menu</comment>
+        <translation type="obsolete">Importera</translation>
+    </message>
+    <message>
+        <source>Export Note (HTML)</source>
+        <comment>Status tip for Note menu</comment>
+        <translation type="obsolete">Exportera anteckning (HTML)</translation>
+    </message>
+    <message>
+        <source>Export Note As (HTML) </source>
+        <comment>Status tip for Note Menu</comment>
+        <translation type="obsolete">Exportera anteckning som (HTML) </translation>
+    </message>
+    <message>
+        <source>Export Note As (ASCII) </source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Exportera anteckning som (ASCII) </translation>
+    </message>
+    <message>
+        <source>Print Note</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Skriv ut anteckning</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Ångra</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Gör om</translation>
+    </message>
+    <message>
+        <source>Select and copy all</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Välj och kopiera all</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Kopiera</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Klipp ut</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Klistra in</translation>
+    </message>
+    <message>
+        <source>Delete all</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Ta bort all</translation>
+    </message>
+    <message>
+        <source>Toggle font hint for the whole text</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Font tips för den hela texten</translation>
+    </message>
+    <message>
+        <source>Set fixed font</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Sätt fastställd font</translation>
+    </message>
+    <message>
+        <source>Set variable font</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Sätt varierande font</translation>
+    </message>
+    <message>
+        <source>Used fixed font by default</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">Använt fixattuu fonttii som förmodan</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="719"/>
+        <location filename="../texteditor.cpp" line="795"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation type="unfinished">Filen %1
+finns redan.
+Skall den skrivas över?</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="743"/>
+        <source>Couldn&apos;t export note </source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation type="unfinished">Kunde inte exportera anteckning </translation>
+    </message>
+</context>
+<context>
+    <name>TreeEditor</name>
+    <message>
+        <location filename="../treeeditor.cpp" line="27"/>
+        <source>Select upper object</source>
+        <comment>Tree Editor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../treeeditor.cpp" line="33"/>
+        <source>Select lower object</source>
+        <comment>Tree Editor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>VymModel</name>
+    <message>
+        <location filename="../vymmodel.cpp" line="126"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="149"/>
+        <source>unnamed</source>
+        <translation type="unfinished">namnlös</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="445"/>
+        <location filename="../vymmodel.cpp" line="481"/>
+        <location filename="../vymmodel.cpp" line="566"/>
+        <location filename="../vymmodel.cpp" line="622"/>
+        <source>Critical Parse Error</source>
+        <translation type="unfinished">Kritisk parse fel</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="501"/>
+        <location filename="../vymmodel.cpp" line="551"/>
+        <source>Critical Load Error</source>
+        <translation type="unfinished">Kritisk XX fel (kato joku aikasempi...)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="502"/>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation type="unfinished">Kunnde inte skapa tillfälligt register förrän XXX kas aik</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="552"/>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="unfinished">Kunnde inte hitta en karta (*.xml) in i .vym arkivet.
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="980"/>
+        <source>unknown user</source>
+        <comment>Default for lockfiles of maps</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1003"/>
+        <source>Warning: Map already opended</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="671"/>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="unfinished">Kartan %1
+använde inte tryckt vym fil format.
+Att skriva det upptryckt ska också skriva bilder 
+och flaggor och så kan överskriva filer in i givit register
+
+Vill du skriva kartan</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="679"/>
+        <source>compressed (vym default)</source>
+        <translation type="unfinished">tryckt (vym huvudsaklig)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="680"/>
+        <source>uncompressed</source>
+        <translation type="unfinished">upptryckt</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="681"/>
+        <location filename="../vymmodel.cpp" line="864"/>
+        <source>Cancel</source>
+        <translation type="unfinished">Avbryt</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="710"/>
+        <location filename="../vymmodel.cpp" line="715"/>
+        <source>Save Error</source>
+        <translation type="unfinished">Sparningsfel</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="711"/>
+        <source>%1
+could not be removed before saving</source>
+        <translation type="unfinished">%1
+kunnde inte att vara bort tagit förrän sparning ?x!0000</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="716"/>
+        <source>%1
+could not be renamed before saving</source>
+        <translation type="unfinished">%1
+kunnde inte att vara nämnad igen förrän sparn</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="728"/>
+        <source>Critical Save Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="729"/>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation type="unfinished">Kunnde inte skapa tillfälligt register förrän sparning
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <location filename="../vymmodel.cpp" line="5783"/>
+        <source>Images</source>
+        <translation type="unfinished">Bilder</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <source>All</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="792"/>
+        <source>Load image</source>
+        <translation type="unfinished">Ladda en bild</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="844"/>
+        <source>Save image</source>
+        <translation type="unfinished">Spara bild</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="856"/>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="unfinished">Filen %1
+redan finns.
+Vill du överskriva det? {1 ?}</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="863"/>
+        <source>Overwrite</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Critical Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <source>Unsupported format in %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Critical Import Error</source>
+        <translation type="unfinished">Kritisk import fel</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Cannot find the directory %1</source>
+        <translation type="unfinished">Kann inte hitta register %1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="962"/>
+        <location filename="../vymmodel.cpp" line="965"/>
+        <source>Choose directory structure to import</source>
+        <translation type="unfinished">Välj registerstruktur att importera</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="999"/>
+        <source>Map seems to be already opened in another vym instance!
+
+ Map is locked by &quot;%1&quot; on &quot;%2&quot;
+
+Please only delete the lockfile, if you are sure nobody else is currently working on this map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1008"/>
+        <source>Removed lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1014"/>
+        <source>Couldn&apos;t remove lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1021"/>
+        <source>Cannot create lockfile of map! It will be opened in readonly mode.
+
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1024"/>
+        <source>Warning</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished">Varning</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1116"/>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation type="unfinished">Filen av kartan  på skiva har förändrats
+
+   %1
+
+Vill du ha äterladda kartan med ny fil?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1123"/>
+        <source>Reload</source>
+        <translation type="unfinished">Återladda</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1124"/>
+        <source>Ignore</source>
+        <translation type="unfinished">Passera</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1013"/>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Warning</source>
+        <translation type="unfinished">Varning</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <source>Redo failed:
+%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1274"/>
+        <source>Autosave disabled during undo.</source>
+        <translation type="unfinished">Automatisk sparning avstängd under ångra.</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2001"/>
+        <source>Note</source>
+        <comment>FindAll in VymModel</comment>
+        <translation type="unfinished">Anteckning</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2725"/>
+        <source>Image</source>
+        <comment>Default name for new image</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2958"/>
+        <source>New map</source>
+        <comment>New map</comment>
+        <translation type="unfinished">Ny karta</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Script aborted:
+%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation type="obsolete">Inskriv URL:</translation>
+    </message>
+    <message>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Text</translation>
+    </message>
+    <message>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Visuell kalkyl</translation>
+    </message>
+    <message>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Textdokument</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">Bilder</translation>
+    </message>
+    <message>
+        <source>Set URL to a local file</source>
+        <translation type="obsolete">Sätt URL tlii lokal fil</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3822"/>
+        <source>Contacting Bugzilla...</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation type="obsolete">Länk till en annan karta</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5185"/>
+        <source>Export map as image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Couldn&apos;t save QImage %1 in format %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5225"/>
+        <source>Export map as PDF</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5280"/>
+        <source>Export map as SVG</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5314"/>
+        <source>Export map as XML</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5321"/>
+        <source>Export XML to directory</source>
+        <translation type="unfinished">Export XML till register</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5367"/>
+        <source>Critical Export Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">Exportera som LaTeX</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>(still experimental)</source>
+        <translation type="unfinished">(fortfarande experimentell)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>Export as csv</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5786"/>
+        <source>Load background image</source>
+        <translation type="unfinished">Ladda bakgrund bild</translation>
+    </message>
+</context>
+<context>
+    <name>VymProcess</name>
+    <message>
+        <location filename="../vymprocess.cpp" line="43"/>
+        <location filename="../vymprocess.cpp" line="48"/>
+        <source>Critical Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="44"/>
+        <source>Could not start %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="49"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="unfinished">%1 kunde inte avsluta normalt</translation>
+    </message>
+</context>
+<context>
+    <name>VymView</name>
+    <message>
+        <location filename="../vymview.cpp" line="34"/>
+        <source>Tree Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymview.cpp" line="52"/>
+        <source>Slide Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>WarningDialog</name>
+    <message>
+        <source>VYM - Warning : Foo...</source>
+        <translation type="obsolete">VYM - Varning : Foo...</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished">Dialog</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="91"/>
+        <source>showAgainBox</source>
+        <translation type="unfinished">visaIgenBox</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="117"/>
+        <location filename="../warningdialog.cpp" line="45"/>
+        <source>Cancel</source>
+        <translation>Avbryt</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="124"/>
+        <source>Ok</source>
+        <translation type="unfinished">Ok</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="10"/>
+        <source>Proceed</source>
+        <translation type="unfinished">Fortsätta</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="12"/>
+        <source>Show this message again</source>
+        <translation type="unfinished">Visa det här meddelandet igen</translation>
+    </message>
+</context>
+</TS>
diff --git a/lang/vym.zh_CN.ts b/lang/vym.zh_CN.ts
new file mode 100644 (file)
index 0000000..3e313a0
--- /dev/null
@@ -0,0 +1,5582 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="zh_CN">
+<context>
+    <name>AboutDialog</name>
+    <message>
+        <location filename="../aboutdialog.cpp" line="106"/>
+        <source>Credits</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="221"/>
+        <source>License</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="226"/>
+        <source>Ok</source>
+        <comment>Ok Button</comment>
+        <translation>确定</translation>
+    </message>
+</context>
+<context>
+    <name>AboutTextBrowser</name>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>请使用 &quot;设置&quot;-&gt;</translation>
+    </message>
+    <message>
+        <source>Set application to open an URL</source>
+        <translation type="obsolete">设置用于打开 URL 的应用程序</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="246"/>
+        <source>Warning</source>
+        <comment>About window</comment>
+        <translation>警告</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="247"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <comment>About window</comment>
+        <translation>无法找到阅读器以打开 %1。
+</translation>
+    </message>
+    <message>
+        <location filename="../aboutdialog.cpp" line="248"/>
+        <source>Set application to open an URL...</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Attribute Dialog</name>
+    <message>
+        <source>AttributeDialog - Edit definitions</source>
+        <translation type="obsolete">属性对话框 - 编辑定义</translation>
+    </message>
+    <message>
+        <source>AttributeDialog - Edit %1</source>
+        <translation type="obsolete">属性对话框 - 编辑 %1</translation>
+    </message>
+</context>
+<context>
+    <name>AttributeDialog</name>
+    <message>
+        <source>Attributes</source>
+        <translation type="obsolete">属性</translation>
+    </message>
+    <message>
+        <source>Add key</source>
+        <translation type="obsolete">添加键</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">关闭</translation>
+    </message>
+</context>
+<context>
+    <name>AttributeWidget</name>
+    <message>
+        <source>Form</source>
+        <translation type="obsolete">表单</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyEditor</name>
+    <message>
+        <location filename="../branchpropeditor.ui" line="20"/>
+        <source>Branch Property Editor</source>
+        <translation type="unfinished">分支属性编辑器</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="30"/>
+        <source>Frame</source>
+        <translation type="unfinished">边框</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="51"/>
+        <source>Geometry</source>
+        <translation type="unfinished">几何</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="64"/>
+        <source>No Frame</source>
+        <translation type="unfinished">无边框</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="69"/>
+        <source>Rectangle</source>
+        <translation type="unfinished">矩形</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="74"/>
+        <source>Rounded Rectangle</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="79"/>
+        <source>Ellipse</source>
+        <translation type="unfinished">椭圆</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="84"/>
+        <source>Cloud</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="105"/>
+        <source>Padding</source>
+        <translation type="unfinished">填充</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="112"/>
+        <source>Borderline width</source>
+        <translation type="unfinished">边缘宽度</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="136"/>
+        <source>Include children</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="169"/>
+        <source>Colors</source>
+        <translation type="unfinished">颜色</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="209"/>
+        <source>Borderline color</source>
+        <translation type="unfinished">边缘颜色</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="232"/>
+        <source>Background color</source>
+        <translation type="unfinished">背景颜色</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="261"/>
+        <source>Layout</source>
+        <translation type="unfinished">布局</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="269"/>
+        <source>Include images horizontally</source>
+        <translation type="unfinished">在水平方向包含图象</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="276"/>
+        <source>Include images vertically</source>
+        <translation type="unfinished">在垂直方向包含图象</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="283"/>
+        <source>Free positioning of children (experimental!)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="306"/>
+        <source>Link</source>
+        <translation type="unfinished">链接</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="312"/>
+        <source>Hide link if unselected</source>
+        <translation type="unfinished">未选中时隐藏链接</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="333"/>
+        <source>Attributes</source>
+        <translation type="unfinished">属性</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="359"/>
+        <source>+</source>
+        <translation type="unfinished">+</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.ui" line="366"/>
+        <source>-</source>
+        <translation type="unfinished">-</translation>
+    </message>
+    <message>
+        <location filename="../branchpropeditor.cpp" line="19"/>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished">属性编辑器</translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyWindow</name>
+    <message>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation type="obsolete">属性编辑器</translation>
+    </message>
+    <message>
+        <source>Name</source>
+        <comment>Branchprop window: Attribute name</comment>
+        <translation type="obsolete">名</translation>
+    </message>
+    <message>
+        <source>Value</source>
+        <comment>Branchprop window: Attribute value</comment>
+        <translation type="obsolete">值</translation>
+    </message>
+    <message>
+        <source>Type</source>
+        <comment>Branchprop window: Attribute type</comment>
+        <translation type="obsolete">类型</translation>
+    </message>
+    <message>
+        <source>Branch Property Editor</source>
+        <translation type="obsolete">分支属性编辑器</translation>
+    </message>
+    <message>
+        <source>Frame</source>
+        <translation type="obsolete">边框</translation>
+    </message>
+    <message>
+        <source>Geometry</source>
+        <translation type="obsolete">几何</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <translation type="obsolete">无边框</translation>
+    </message>
+    <message>
+        <source>Rectangle</source>
+        <translation type="obsolete">矩形</translation>
+    </message>
+    <message>
+        <source>Ellipse</source>
+        <translation type="obsolete">椭圆</translation>
+    </message>
+    <message>
+        <source>Padding</source>
+        <translation type="obsolete">填充</translation>
+    </message>
+    <message>
+        <source>Borderline width</source>
+        <translation type="obsolete">边缘宽度</translation>
+    </message>
+    <message>
+        <source>Colors</source>
+        <translation type="obsolete">颜色</translation>
+    </message>
+    <message>
+        <source>Borderline color</source>
+        <translation type="obsolete">边缘颜色</translation>
+    </message>
+    <message>
+        <source>Background color</source>
+        <translation type="obsolete">背景颜色</translation>
+    </message>
+    <message>
+        <source>Layout</source>
+        <translation type="obsolete">布局</translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <translation type="obsolete">在水平方向包含图象</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <translation type="obsolete">在垂直方向包含图象</translation>
+    </message>
+    <message>
+        <source>Link</source>
+        <translation type="obsolete">链接</translation>
+    </message>
+    <message>
+        <source>Hide link if unselected</source>
+        <translation type="obsolete">未选中时隐藏链接</translation>
+    </message>
+    <message>
+        <source>Attributes</source>
+        <translation type="obsolete">属性</translation>
+    </message>
+    <message>
+        <source>+</source>
+        <translation type="obsolete">+</translation>
+    </message>
+    <message>
+        <source>-</source>
+        <translation type="obsolete">-</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">关闭</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadAgent</name>
+    <message>
+        <location filename="../downloadagent.cpp" line="191"/>
+        <location filename="../downloadagent.cpp" line="195"/>
+        <source>Warning</source>
+        <translation type="unfinished">警告</translation>
+    </message>
+</context>
+<context>
+    <name>EditXLinkDialog</name>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="20"/>
+        <source>Edit XLink</source>
+        <translation>编辑 XLink</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="40"/>
+        <source>Arrow begin:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="63"/>
+        <source>XLink width:</source>
+        <translation>XLink 宽度:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="79"/>
+        <source>Use color of heading</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="177"/>
+        <source>Line style:</source>
+        <extracomment>Linestyle in Edit XLink dialog</extracomment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="190"/>
+        <source>Arrow end:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="253"/>
+        <source>Close</source>
+        <translation type="unfinished">关闭</translation>
+    </message>
+    <message>
+        <source>Set color of heading</source>
+        <translation type="obsolete">设为与标题颜色相同</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="109"/>
+        <source>XLink color:</source>
+        <translation>XLink 颜色:</translation>
+    </message>
+    <message>
+        <location filename="../editxlinkdialog.ui" line="151"/>
+        <source>Use as default:</source>
+        <translation>设为默认:</translation>
+    </message>
+    <message>
+        <source>Quit and delete XLink</source>
+        <translation type="obsolete">退出并删除 XLink</translation>
+    </message>
+    <message>
+        <source>Ok</source>
+        <translation type="obsolete">确定</translation>
+    </message>
+</context>
+<context>
+    <name>ExportHTMLDialog</name>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="26"/>
+        <source>Export HTML</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="61"/>
+        <source>Export to directory:</source>
+        <translation type="unfinished">导出至目录:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="90"/>
+        <location filename="../exporthtmldialog.ui" line="267"/>
+        <location filename="../exporthtmldialog.ui" line="280"/>
+        <location filename="../exporthtmldialog.ui" line="353"/>
+        <source>Browse</source>
+        <translation type="unfinished">浏览</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="117"/>
+        <source>Options</source>
+        <translation type="unfinished">选项</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="138"/>
+        <source>Image of map</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="145"/>
+        <source>Include images</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="152"/>
+        <source>Table of contents</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="159"/>
+        <source>Task flags</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="166"/>
+        <source>General flags</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="173"/>
+        <source>Number sections</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="231"/>
+        <source>Copy CSS from </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="251"/>
+        <source>Use CSS from</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Include image</source>
+        <translation type="obsolete">包含图象</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="186"/>
+        <source>Colored headings in text</source>
+        <translation type="unfinished">标题含有颜色</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="199"/>
+        <source>Save settings in map</source>
+        <translation type="unfinished">在该导图中保存设置</translation>
+    </message>
+    <message>
+        <source>show output of external scripts</source>
+        <translation type="obsolete">显示外部脚本输出</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="216"/>
+        <source>Stylesheets</source>
+        <translation type="unfinished">样式表</translation>
+    </message>
+    <message>
+        <source>CSS:</source>
+        <translation type="obsolete">CSS:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="297"/>
+        <source>Scripts</source>
+        <translation type="unfinished">脚本</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="327"/>
+        <source>After Export:</source>
+        <translation type="unfinished">导出后:</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="382"/>
+        <source>Cancel</source>
+        <translation type="unfinished">取消</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.ui" line="389"/>
+        <source>Export</source>
+        <translation type="unfinished">导出</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>Warning</source>
+        <translation type="unfinished">警告</translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="99"/>
+        <source>The settings saved in the map would like to run script:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exporthtmldialog.cpp" line="123"/>
+        <source>VYM - Export HTML to directory</source>
+        <translation type="unfinished">VYM - 导出 HTML 至目录</translation>
+    </message>
+</context>
+<context>
+    <name>ExportXHTMLDialog</name>
+    <message>
+        <source>Export XHTML</source>
+        <translation type="obsolete">导出为 XHTML</translation>
+    </message>
+    <message>
+        <source>Export to directory:</source>
+        <translation type="obsolete">导出至目录:</translation>
+    </message>
+    <message>
+        <source>Browse</source>
+        <translation type="obsolete">浏览</translation>
+    </message>
+    <message>
+        <source>Options</source>
+        <translation type="obsolete">选项</translation>
+    </message>
+    <message>
+        <source>show output of external scripts</source>
+        <translation type="obsolete">显示外部脚本输出</translation>
+    </message>
+    <message>
+        <source>Include image</source>
+        <translation type="obsolete">包含图象</translation>
+    </message>
+    <message>
+        <source>Colored headings in text</source>
+        <translation type="obsolete">标题含有颜色</translation>
+    </message>
+    <message>
+        <source>Save settings in map</source>
+        <translation type="obsolete">在该导图中保存设置</translation>
+    </message>
+    <message>
+        <source>showWarnings e.g. if directory is not empty</source>
+        <translation type="obsolete">显示警告,例如当目录非空时</translation>
+    </message>
+    <message>
+        <source>Stylesheets</source>
+        <translation type="obsolete">样式表</translation>
+    </message>
+    <message>
+        <source>XSL:</source>
+        <translation type="obsolete">XSL:</translation>
+    </message>
+    <message>
+        <source>CSS:</source>
+        <translation type="obsolete">CSS:</translation>
+    </message>
+    <message>
+        <source>Scripts</source>
+        <translation type="obsolete">脚本</translation>
+    </message>
+    <message>
+        <source>Before export:</source>
+        <translation type="obsolete">导出前:</translation>
+    </message>
+    <message>
+        <source>After Export:</source>
+        <translation type="obsolete">导出后:</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <translation type="obsolete">导出</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">取消</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="obsolete">警告</translation>
+    </message>
+    <message>
+        <source>The settings saved in the map would like to run scripts:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation type="obsolete">该导图保存的设置中需要执行脚本:
+
+%1
+
+请检查您是否真的想要允许此事
+发生在您的系统上!</translation>
+    </message>
+    <message>
+        <source>VYM - Export HTML to directory</source>
+        <translation type="obsolete">VYM - 导出 HTML 至目录</translation>
+    </message>
+    <message>
+        <source>VYM - Path to CSS file</source>
+        <translation type="obsolete">VYM - CSS 文件路径</translation>
+    </message>
+    <message>
+        <source>VYM - Path to XSL file</source>
+        <translation type="obsolete">VYM - XSL 文件路径</translation>
+    </message>
+    <message>
+        <source>VYM - Path to pre export script</source>
+        <translation type="obsolete">VYM - 预导出脚本路径</translation>
+    </message>
+    <message>
+        <source>VYM - Path to post export script</source>
+        <translation type="obsolete">VYM - 导出后脚本路径</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <translation type="obsolete">无法打开 %1</translation>
+    </message>
+    <message>
+        <source>Could not write %1</source>
+        <translation type="obsolete">无法写入 %1</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">严重错误</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation type="obsolete">无法启动 %1</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="obsolete">%1 未正常退出</translation>
+    </message>
+    <message>
+        <source>show warnings of xslt processor</source>
+        <translation type="obsolete">显示 XSLT 处理器的警告</translation>
+    </message>
+</context>
+<context>
+    <name>ExtraInfoDialog</name>
+    <message>
+        <location filename="../extrainfodialog.ui" line="15"/>
+        <source>VYM - Info</source>
+        <translation>VYM - 信息</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="36"/>
+        <source>Map:</source>
+        <translation>导图名称:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="53"/>
+        <source>Title:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="63"/>
+        <source>Author:</source>
+        <translation>作者:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="86"/>
+        <source>Comment:</source>
+        <translation>注释:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="96"/>
+        <source>Statistics:</source>
+        <translation>统计:</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="139"/>
+        <source>Cancel</source>
+        <translation>取消</translation>
+    </message>
+    <message>
+        <location filename="../extrainfodialog.ui" line="146"/>
+        <source>Close</source>
+        <translation>关闭</translation>
+    </message>
+</context>
+<context>
+    <name>FindWidget</name>
+    <message>
+        <location filename="../findwidget.cpp" line="25"/>
+        <source>Find:</source>
+        <comment>FindWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>FindWindow</name>
+    <message>
+        <source>Clear</source>
+        <translation type="obsolete">清除</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">取消</translation>
+    </message>
+    <message>
+        <source>Find</source>
+        <translation type="obsolete">查找</translation>
+    </message>
+    <message>
+        <source>Find Text</source>
+        <translation type="obsolete">查找文本</translation>
+    </message>
+    <message>
+        <source>Text to find:</source>
+        <translation type="obsolete">请输入要查找的文本:</translation>
+    </message>
+</context>
+<context>
+    <name>Heading of mapcenter in new map</name>
+    <message>
+        <source>New map</source>
+        <translation type="vanished">新建导图</translation>
+    </message>
+</context>
+<context>
+    <name>HeadingEditor</name>
+    <message>
+        <location filename="../headingeditor.cpp" line="9"/>
+        <source>Heading Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HistoryWindow</name>
+    <message>
+        <location filename="../historywindow.ui" line="13"/>
+        <source>Dialog</source>
+        <translation>对话框</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="50"/>
+        <source>Redo</source>
+        <translation>重做</translation>
+    </message>
+    <message>
+        <source>New Row</source>
+        <translation type="obsolete">新行</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="72"/>
+        <source>Time</source>
+        <translation>时间</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="77"/>
+        <source>Comment</source>
+        <translation>注释</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="85"/>
+        <source>Undo</source>
+        <translation>撤销</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.ui" line="122"/>
+        <source>Close</source>
+        <translation>关闭</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="17"/>
+        <source>Action</source>
+        <comment>Table with actions</comment>
+        <translation>动作</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="20"/>
+        <source>Comment</source>
+        <comment>Table with actions</comment>
+        <translation>注释</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="23"/>
+        <source>Undo action</source>
+        <comment>Table with actions</comment>
+        <translation>撤销动作</translation>
+    </message>
+    <message>
+        <location filename="../historywindow.cpp" line="125"/>
+        <source>Current state</source>
+        <comment>Current bar in history hwindow</comment>
+        <translation>当前状态</translation>
+    </message>
+</context>
+<context>
+    <name>LineEditDialog</name>
+    <message>
+        <location filename="../lineeditdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished">对话框</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="26"/>
+        <source>TextLabel</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="89"/>
+        <location filename="../lineeditdialog.cpp" line="17"/>
+        <source>Cancel</source>
+        <translation type="unfinished">取消</translation>
+    </message>
+    <message>
+        <location filename="../lineeditdialog.ui" line="99"/>
+        <location filename="../lineeditdialog.cpp" line="9"/>
+        <source>Ok</source>
+        <translation type="unfinished">确定</translation>
+    </message>
+</context>
+<context>
+    <name>LockedFileDialog</name>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished">对话框</translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="116"/>
+        <location filename="../lockedfiledialog.cpp" line="7"/>
+        <source>Delete lockfile</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../lockedfiledialog.ui" line="123"/>
+        <location filename="../lockedfiledialog.cpp" line="6"/>
+        <source>Open readonly</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Main</name>
+    <message>
+        <source>Close Map</source>
+        <translation type="obsolete">关闭导图</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <translation type="obsolete">撤销</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <translation type="obsolete">复制</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="obsolete">剪切</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <translation type="obsolete">粘贴</translation>
+    </message>
+    <message>
+        <source>Move branch up</source>
+        <translation type="obsolete">上移分支</translation>
+    </message>
+    <message>
+        <source>Move branch down</source>
+        <translation type="obsolete">下移分支</translation>
+    </message>
+    <message>
+        <source>Scroll branch</source>
+        <translation type="obsolete">卷起分支</translation>
+    </message>
+    <message>
+        <source>Unscroll all</source>
+        <translation type="obsolete">展开全部</translation>
+    </message>
+    <message>
+        <source>Find</source>
+        <translation type="obsolete">查找</translation>
+    </message>
+    <message>
+        <source>Open URL</source>
+        <translation type="obsolete">打开 URL</translation>
+    </message>
+    <message>
+        <source>Edit URL</source>
+        <translation type="obsolete">编辑 URL</translation>
+    </message>
+    <message>
+        <source>Use heading of selected branch as URL</source>
+        <translation type="obsolete">使用当前选定分支的标题作为 URL</translation>
+    </message>
+    <message>
+        <source>Create URL to Bugzilla</source>
+        <translation type="obsolete">创建至 Bugzilla 的 URL</translation>
+    </message>
+    <message>
+        <source>Jump to another vym map, if needed load it first</source>
+        <translation type="obsolete">跳至另一 vym 导图,如有需要则预先载入</translation>
+    </message>
+    <message>
+        <source>Edit link to another vym map</source>
+        <translation type="obsolete">编辑至另一 vym 导图的链接</translation>
+    </message>
+    <message>
+        <source>Delete link to another vym map</source>
+        <translation type="obsolete">删除至另一 vym 导图的链接</translation>
+    </message>
+    <message>
+        <source>Edit Map Info</source>
+        <translation type="obsolete">编辑导图信息</translation>
+    </message>
+    <message>
+        <source>edit Heading</source>
+        <translation type="obsolete">编辑标题</translation>
+    </message>
+    <message>
+        <source>Delete Selection</source>
+        <translation type="obsolete">删除选中项</translation>
+    </message>
+    <message>
+        <source>Add a branch as child of selection</source>
+        <translation type="obsolete">为选中项添加子分支</translation>
+    </message>
+    <message>
+        <source>Add a branch above selection</source>
+        <translation type="obsolete">在选中项上方添加分支</translation>
+    </message>
+    <message>
+        <source>Add a branch below selection</source>
+        <translation type="obsolete">在选中项下方添加分支</translation>
+    </message>
+    <message>
+        <source>Add map at selection</source>
+        <translation type="obsolete">在选中处添加导图</translation>
+    </message>
+    <message>
+        <source>Replace selection with map</source>
+        <translation type="obsolete">用导图替换选中项</translation>
+    </message>
+    <message>
+        <source>Save selection</source>
+        <translation type="obsolete">保存选中项</translation>
+    </message>
+    <message>
+        <source>Select upper branch</source>
+        <translation type="obsolete">选择上方分支</translation>
+    </message>
+    <message>
+        <source>Select lower branch</source>
+        <translation type="obsolete">选择下方分支</translation>
+    </message>
+    <message>
+        <source>Select left branch</source>
+        <translation type="obsolete">选择左方分支</translation>
+    </message>
+    <message>
+        <source>Select right branch</source>
+        <translation type="obsolete">选择右方分支</translation>
+    </message>
+    <message>
+        <source>Select first branch</source>
+        <translation type="obsolete">选择第一个分支</translation>
+    </message>
+    <message>
+        <source>Select last branch</source>
+        <translation type="obsolete">选择最后一个分支</translation>
+    </message>
+    <message>
+        <source>Add Image</source>
+        <translation type="obsolete">添加图象</translation>
+    </message>
+    <message>
+        <source>Set Color</source>
+        <translation type="obsolete">设置颜色</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1883"/>
+        <source>Set &amp;Color</source>
+        <translation>设置颜色(&amp;C)</translation>
+    </message>
+    <message>
+        <source>Pick color
+Hint: You can pick a color from another branch and color using CTRL+Left Button</source>
+        <translation type="obsolete">选取颜色
+提示:您可以使用 CTRL+鼠标左键 从其他分支和颜色里选取颜色</translation>
+    </message>
+    <message>
+        <source>Color branch</source>
+        <translation type="obsolete">着色该分支</translation>
+    </message>
+    <message>
+        <source>Color Subtree</source>
+        <translation type="obsolete">着色子树</translation>
+    </message>
+    <message>
+        <source>Line</source>
+        <translation type="obsolete">直线</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1928"/>
+        <source>Linkstyle Line</source>
+        <translation>直线链接样式</translation>
+    </message>
+    <message>
+        <source>Linkstyle Parabel</source>
+        <translation type="obsolete">抛物线链接样式</translation>
+    </message>
+    <message>
+        <source>PolyLine</source>
+        <translation type="obsolete">多股直线</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1942"/>
+        <source>Linkstyle Thick Line</source>
+        <translation>粗直线链接样式</translation>
+    </message>
+    <message>
+        <source>PolyParabel</source>
+        <translation type="obsolete">多股抛物线</translation>
+    </message>
+    <message>
+        <source>Linkstyle Thick Parabel</source>
+        <translation type="obsolete">粗抛物线链接样式</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <translation type="obsolete">无边框</translation>
+    </message>
+    <message>
+        <source>Rectangle</source>
+        <translation type="obsolete">矩形</translation>
+    </message>
+    <message>
+        <source>Use same color for links and headings</source>
+        <translation type="obsolete">对链接和标题使用相同颜色</translation>
+    </message>
+    <message>
+        <source>Set Link Color</source>
+        <translation type="obsolete">设置链接颜色</translation>
+    </message>
+    <message>
+        <source>Set Background Color</source>
+        <translation type="obsolete">设置背景颜色</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1981"/>
+        <source>Set &amp;Background Color</source>
+        <translation>设置背景颜色(&amp;B)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1995"/>
+        <source>&amp;View</source>
+        <translation>查看(&amp;V)</translation>
+    </message>
+    <message>
+        <source>Zoom reset</source>
+        <translation type="obsolete">正常大小</translation>
+    </message>
+    <message>
+        <source>Zoom in</source>
+        <translation type="obsolete">放大</translation>
+    </message>
+    <message>
+        <source>Zoom out</source>
+        <translation type="obsolete">缩小</translation>
+    </message>
+    <message>
+        <source>&amp;Next Window</source>
+        <translation type="obsolete">下一窗口(&amp;N)</translation>
+    </message>
+    <message>
+        <source>&amp;Previous Window</source>
+        <translation type="obsolete">上一窗口(&amp;P)</translation>
+    </message>
+    <message>
+        <source>Use modifier to color branches</source>
+        <translation type="obsolete">使用修饰键着色分支</translation>
+    </message>
+    <message>
+        <source>&amp;Settings</source>
+        <translation type="obsolete">设置(&amp;S)</translation>
+    </message>
+    <message>
+        <source>Set application to open pdf files</source>
+        <translation type="obsolete">设置用于打开 pdf 文件的应用程序</translation>
+    </message>
+    <message>
+        <source>Edit branch after adding it</source>
+        <translation type="obsolete">添加分支后编辑该分支</translation>
+    </message>
+    <message>
+        <source>Select branch after adding it</source>
+        <translation type="obsolete">添加分支后选中该分支</translation>
+    </message>
+    <message>
+        <source>Select heading before editing</source>
+        <translation type="obsolete">在编辑前选中标题文本</translation>
+    </message>
+    <message>
+        <source>&amp;Test</source>
+        <translation type="obsolete">测试(&amp;T)</translation>
+    </message>
+    <message>
+        <source>Open VYM Documentation (pdf)</source>
+        <translation type="obsolete">打开 VYM 文档(pdf)</translation>
+    </message>
+    <message>
+        <source>Information about QT toolkit</source>
+        <translation type="obsolete">关于 QT 工具包的信息</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3460"/>
+        <source>Overwrite</source>
+        <translation>覆盖</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3188"/>
+        <location filename="../mainwindow.cpp" line="3235"/>
+        <location filename="../mainwindow.cpp" line="3461"/>
+        <source>Cancel</source>
+        <translation>取消</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3187"/>
+        <source>Open anyway</source>
+        <translation>继续打开</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3234"/>
+        <source>Create</source>
+        <translation>新建</translation>
+    </message>
+    <message>
+        <source>Critical Load Error</source>
+        <translation type="obsolete">严重载入错误</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="obsolete">无法在 .vym 存档中找到导图(*.xml)。
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3303"/>
+        <source>Load vym map</source>
+        <translation>载入 vym 导图</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3306"/>
+        <source>Import: Add vym map to selection</source>
+        <translation>导入:将 vym 导图添加至选中项</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3309"/>
+        <source>Import: Replace selection with vym map</source>
+        <translation>导入:将选中项替换为 vym 导图</translation>
+    </message>
+    <message>
+        <source>Save Error</source>
+        <translation type="obsolete">保存错误</translation>
+    </message>
+    <message>
+        <source>
+could not be removed before saving</source>
+        <translation type="obsolete">
+无法在保存前删除</translation>
+    </message>
+    <message>
+        <source>compressed (vym default)</source>
+        <translation type="obsolete">压缩(vym 默认)</translation>
+    </message>
+    <message>
+        <source>uncompressed</source>
+        <translation type="obsolete">未压缩</translation>
+    </message>
+    <message>
+        <source>Export XML to directory</source>
+        <translation type="obsolete">导出 XML 至目录</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3775"/>
+        <source>Save modified map before closing it</source>
+        <translation>关闭前保存已修改的导图</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3776"/>
+        <source>Discard changes</source>
+        <translation>丢弃修改</translation>
+    </message>
+    <message>
+        <source>This map is not saved yet. Do you want to</source>
+        <translation type="obsolete">该导图尚未保存。您希望</translation>
+    </message>
+    <message>
+        <source>Save map</source>
+        <translation type="obsolete">保存导图</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5045"/>
+        <source>VYM -Information:</source>
+        <translation>VYM - 信息:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <location filename="../mainwindow.cpp" line="4130"/>
+        <source>Critical Error</source>
+        <translation>严重错误</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5787"/>
+        <source>Critcal error</source>
+        <translation>严重错误</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find the documentation
+vym.pdf in various places.</source>
+        <translation type="obsolete">无法在任何位置找到文档 vym.pdf。</translation>
+    </message>
+    <message>
+        <source>Add a branch by inserting and making selection its child</source>
+        <translation type="obsolete">添加分支并使选中项成为其子分支</translation>
+    </message>
+    <message>
+        <source>Remove only branch and keep its childs</source>
+        <translation type="obsolete">仅删除该分支但保留其子分支</translation>
+    </message>
+    <message>
+        <source>Remove childs of branch</source>
+        <translation type="obsolete">删除该分支的子分支</translation>
+    </message>
+    <message>
+        <source>Use modifier to copy</source>
+        <translation type="obsolete">使用修饰键复制</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2723"/>
+        <source>Add</source>
+        <translation>添加</translation>
+    </message>
+    <message>
+        <source>Use modifier to draw xLinks</source>
+        <translation type="obsolete">使用修饰键绘制 xLinks</translation>
+    </message>
+    <message>
+        <source>Use exclusive flags in flag toolbars</source>
+        <translation type="obsolete">使标记工具栏中的标记互斥</translation>
+    </message>
+    <message>
+        <source>Set application to open external links</source>
+        <translation type="obsolete">设置用于打开外部链接的应用程序</translation>
+    </message>
+    <message>
+        <source>Delete key for deleting branches</source>
+        <translation type="obsolete">使用删除键删除分支</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3179"/>
+        <source>The map %1
+is already opened.Opening the same map in multiple editors may lead 
+to confusion when finishing working with vym.Do you want to</source>
+        <translation>导图 %1
+已打开。当使用 vym 完成工作时,在多个编辑器中打开同一导图
+可能会导致混乱。您希望</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3228"/>
+        <source>This map does not exist:
+  %1
+Do you want to create a new one?</source>
+        <translation>该导图不存在:
+       %1
+您希望新建一个吗?</translation>
+    </message>
+    <message>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="obsolete">导图 %1
+未使用 vym 压缩文件格式。
+如果写入的话,图象与标记都会写入,这可能导致
+指定目录中的文件被覆盖。
+
+您希望写入导图吗</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3413"/>
+        <source>Saved  %1</source>
+        <translation>已保存 %1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3417"/>
+        <source>Couldn&apos;t save </source>
+        <translation>无法保存      </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3455"/>
+        <source>The file %1
+exists already. Do you want to</source>
+        <translation>文件 %1
+已存在。您希望</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3770"/>
+        <source>The map %1 has been modified but not saved yet. Do you want to</source>
+        <translation>导图 %1 已更改但尚未保存。您希望</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4131"/>
+        <source>Couldn&apos;t open map %1</source>
+        <translation>无法打开导图 %1</translation>
+    </message>
+    <message>
+        <source>Exit</source>
+        <translation type="obsolete">退出</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="obsolete">重做</translation>
+    </message>
+    <message>
+        <source>Create URL to FATE</source>
+        <translation type="obsolete">创建至 FATE 的 URL</translation>
+    </message>
+    <message>
+        <source>Include top and bottom position of images into branch</source>
+        <translation type="obsolete">将图象上下位置包括进分支</translation>
+    </message>
+    <message>
+        <source>Include left and right position of images into branch</source>
+        <translation type="obsolete">将图象左右位置包括进分支</translation>
+    </message>
+    <message>
+        <source>Hide link</source>
+        <translation type="obsolete">隐藏链接</translation>
+    </message>
+    <message>
+        <source>Note</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">注解</translation>
+    </message>
+    <message>
+        <source>WWW Document (external)</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">WWW 文档(外部)</translation>
+    </message>
+    <message>
+        <source>Link to another vym map</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">至另一 vym 导图的链接</translation>
+    </message>
+    <message>
+        <source>subtree is scrolled</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">子树已卷起</translation>
+    </message>
+    <message>
+        <source>subtree is temporary scrolled</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">子树暂时卷起</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2291"/>
+        <source>Take care!</source>
+        <comment>Standardflag</comment>
+        <translation>当心!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2295"/>
+        <source>Really?</source>
+        <comment>Standardflag</comment>
+        <translation>真的?</translation>
+    </message>
+    <message>
+        <source>ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">ok!</translation>
+    </message>
+    <message>
+        <source>Not ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">不 ok!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2274"/>
+        <source>This won&apos;t work!</source>
+        <comment>Standardflag</comment>
+        <translation>这样不行的!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2299"/>
+        <source>Good</source>
+        <comment>Standardflag</comment>
+        <translation>好的</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2303"/>
+        <source>Bad</source>
+        <comment>Standardflag</comment>
+        <translation>坏的</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2312"/>
+        <source>Time critical</source>
+        <comment>Standardflag</comment>
+        <translation>时间紧迫</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2318"/>
+        <source>Idea!</source>
+        <comment>Standardflag</comment>
+        <translation>想法!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2322"/>
+        <source>Important</source>
+        <comment>Standardflag</comment>
+        <translation>重要</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2326"/>
+        <source>Unimportant</source>
+        <comment>Standardflag</comment>
+        <translation>不重要</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2339"/>
+        <source>I like this</source>
+        <comment>Standardflag</comment>
+        <translation>我喜欢</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2343"/>
+        <source>I do not like this</source>
+        <comment>Standardflag</comment>
+        <translation>我不喜欢</translation>
+    </message>
+    <message>
+        <source>I just love... </source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">我就是爱……        </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2356"/>
+        <source>Dangerous</source>
+        <comment>Standardflag</comment>
+        <translation>危险</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2364"/>
+        <source>This will help</source>
+        <comment>Standardflag</comment>
+        <translation>这会起到帮助的</translation>
+    </message>
+    <message>
+        <source>About VYM</source>
+        <translation type="obsolete">关于 VYM</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <location filename="../mainwindow.cpp" line="3596"/>
+        <source>Import</source>
+        <translation>导入</translation>
+    </message>
+    <message>
+        <source>KDE Bookmarks</source>
+        <translation type="obsolete">KDE 书签</translation>
+    </message>
+    <message>
+        <source>Export as ASCII</source>
+        <translation type="obsolete">导出为 ASCII</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <location filename="../mainwindow.cpp" line="1087"/>
+        <location filename="../mainwindow.cpp" line="1091"/>
+        <location filename="../mainwindow.cpp" line="1095"/>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <source>(still experimental)</source>
+        <translation>(仍处于试验阶段)</translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">导出为 LaTeX</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1110"/>
+        <source>&amp;Print</source>
+        <translation>打印(&amp;P)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3707"/>
+        <location filename="../mainwindow.cpp" line="3724"/>
+        <source>Export to</source>
+        <translation>导出至</translation>
+    </message>
+    <message>
+        <source>Hide object in exports</source>
+        <translation type="obsolete">导出时隐藏对象</translation>
+    </message>
+    <message>
+        <source>Hide object in exported maps</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">导出时将被隐藏的对象</translation>
+    </message>
+    <message>
+        <source>Use hide flag during exports </source>
+        <translation type="obsolete">不导出标有隐藏标记的对象      </translation>
+    </message>
+    <message>
+        <source>Open URL in new tab</source>
+        <translation type="obsolete">在新标签页打开 URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="238"/>
+        <source>Note Editor</source>
+        <translation type="unfinished">注解编辑器</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="245"/>
+        <source>Heading Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="260"/>
+        <source>Search results list</source>
+        <comment>FindResultWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <comment>Toolbar for file actions</comment>
+        <translation type="obsolete">导图(&amp;M)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2913"/>
+        <source>File actions toolbar</source>
+        <comment>Toolbar for file actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2931"/>
+        <source>Edit actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="252"/>
+        <source>Script Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="314"/>
+        <source>Task list</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="273"/>
+        <source>Script Editor</source>
+        <comment>ScriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="218"/>
+        <source>Main window</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="219"/>
+        <source>Map Editors</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="220"/>
+        <source>Text Editors</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="967"/>
+        <source>&amp;Map</source>
+        <comment>Menu for file actions</comment>
+        <translation type="unfinished">导图(&amp;M)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="992"/>
+        <source>&amp;Restore last session</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1208"/>
+        <source>Add attribute</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1316"/>
+        <source>&amp;Detach</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1317"/>
+        <source>Detach branch and use as mapcenter</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1334"/>
+        <source>Sort children backwards</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1411"/>
+        <source>Expand all branches</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1419"/>
+        <source>Expand one level</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1389"/>
+        <source>Collapse one level</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1400"/>
+        <source>Collapse unselected levels</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1355"/>
+        <source>Unscroll children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1083"/>
+        <source>Spreadsheet</source>
+        <translation type="unfinished">电子表格</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1101"/>
+        <source>Properties</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1290"/>
+        <source>Move branch up</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">上移分支</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1303"/>
+        <source>Move branch down</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">下移分支</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1360"/>
+        <source>Grow selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1369"/>
+        <source>Shrink selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1378"/>
+        <source>Reset selection size</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1429"/>
+        <source>References Context menu</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1498"/>
+        <source>Bugzilla handling</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1499"/>
+        <source>Create URL to SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1510"/>
+        <source>Get data from SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1519"/>
+        <source>Get data from SUSE Bugzilla for subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1528"/>
+        <source>SUSE Fate tool handling</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1529"/>
+        <source>Create URL to SUSE FATE tool</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1537"/>
+        <source>vymlinks - linking maps</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1574"/>
+        <source>Exports</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1586"/>
+        <source>Tasks</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1587"/>
+        <source>Toggle task</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1598"/>
+        <source>Cycle task status</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1609"/>
+        <source>Reset sleep</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1620"/>
+        <location filename="../mainwindow.cpp" line="1643"/>
+        <location filename="../mainwindow.cpp" line="1654"/>
+        <location filename="../mainwindow.cpp" line="1665"/>
+        <location filename="../mainwindow.cpp" line="1676"/>
+        <source>Sleep %1 days</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1632"/>
+        <source>Sleep %1 day</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1687"/>
+        <location filename="../mainwindow.cpp" line="1698"/>
+        <source>Sleep %1 weeks</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1730"/>
+        <source>Removing parts of a map</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1753"/>
+        <source>Various</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1765"/>
+        <source>Map properties...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1771"/>
+        <source>Add   ...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1792"/>
+        <source>Selections</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1793"/>
+        <source>Select</source>
+        <comment>Select menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1795"/>
+        <source>Toggle target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1804"/>
+        <source>Goto target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1812"/>
+        <source>Move to target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1840"/>
+        <source>Unselect all</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1848"/>
+        <source>Search functions</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1864"/>
+        <source>Find duplicate URLs</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2053"/>
+        <source>Note editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2064"/>
+        <source>Heading editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2525"/>
+        <source>Set author for new maps</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2613"/>
+        <source>Number of visible parents in task editor</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2618"/>
+        <source>Number of visible parents in find results window</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Info</source>
+        <translation type="obsolete">信息</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1446"/>
+        <source>Open all URLs in subtree (including scrolled branches)</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1461"/>
+        <source>Extract URLs from note</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1754"/>
+        <source>Add timestamp</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1743"/>
+        <source>Remove children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2972"/>
+        <source>Zoom toolbar</source>
+        <comment>View Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2042"/>
+        <source>Center on selection</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2982"/>
+        <source>Editors toolbar</source>
+        <comment>Editor Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2994"/>
+        <source>Modifier modes toolbar</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="280"/>
+        <source>Property Editor</source>
+        <comment>PropertyEditor</comment>
+        <translation type="unfinished">属性编辑器</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="287"/>
+        <source>History window</source>
+        <comment>HistoryWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1047"/>
+        <source>Webpage (HTML)...</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1051"/>
+        <source>Text (ASCII)...</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1055"/>
+        <source>Text with tasks</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1059"/>
+        <source>Text (A&amp;O report)...</source>
+        <comment>Export format</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1135"/>
+        <source>E&amp;dit</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1545"/>
+        <source>Open linked map in background tab</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1820"/>
+        <source>Select previous</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1830"/>
+        <source>Select next</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1918"/>
+        <source>Select default font</source>
+        <comment>Branch attribute</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1996"/>
+        <source>Toolbars</source>
+        <comment>Toolbars overview in view menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2018"/>
+        <source>Rotate counterclockwise</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2026"/>
+        <source>Rotate rclockwise</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2076"/>
+        <source>Tree editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2084"/>
+        <source>Task editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2094"/>
+        <source>Slide editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2102"/>
+        <source>Script editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2153"/>
+        <source>Next slide</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2160"/>
+        <source>Previous slide</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2242"/>
+        <location filename="../mainwindow.cpp" line="2245"/>
+        <source>URL to Bugzilla </source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2248"/>
+        <source>Map target</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2265"/>
+        <source>Standard Flags toolbar</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2279"/>
+        <source>Status - ok,done</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2283"/>
+        <source>Status - work in progress</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2287"/>
+        <source>Status - missing, not started</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2385"/>
+        <source>forward</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2397"/>
+        <source>Don&apos;t flagrget</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2630"/>
+        <source>Automatic layout</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2641"/>
+        <source>Test</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2694"/>
+        <source>Show keyboard shortcuts</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2698"/>
+        <source>Debug info</source>
+        <comment>Option to show debugging info</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2755"/>
+        <source>Tasks</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2796"/>
+        <source>XLinks</source>
+        <comment>Menu for file actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2803"/>
+        <source>Follow XLink</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished">跟随 XLink</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2922"/>
+        <source>Undo and clipboard toolbar</source>
+        <comment>Toolbar for redo/undo and clipboard</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2948"/>
+        <source>Selection toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2956"/>
+        <source>URLs and vymLinks toolbar</source>
+        <comment>Toolbar for URLs and vymlinks</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2964"/>
+        <source>Colors toolbar</source>
+        <comment>Colors toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3126"/>
+        <source>unnamed</source>
+        <comment>MainWindow: name for new and empty file</comment>
+        <translation type="unfinished">未命名</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3264"/>
+        <source>Loading: %1</source>
+        <comment>Progress dialog while loading maps</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3314"/>
+        <source>or</source>
+        <comment>File Dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3444"/>
+        <source>Save map as</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3497"/>
+        <source>Couldn&apos;t save %1,
+because of existing lockfile:
+
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3503"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3745"/>
+        <location filename="../mainwindow.cpp" line="3875"/>
+        <location filename="../mainwindow.cpp" line="3918"/>
+        <location filename="../mainwindow.cpp" line="4260"/>
+        <location filename="../mainwindow.cpp" line="5800"/>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Warning</source>
+        <translation>警告</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3746"/>
+        <source>Couldn&apos;t find configuration for export to LibreOffice
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3876"/>
+        <location filename="../mainwindow.cpp" line="5801"/>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <translation>无法找到阅读器以打开 %1。
+</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Please use Settings-&gt;</source>
+        <translation>请使用 &quot;设置&quot;-&gt;</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3877"/>
+        <location filename="../mainwindow.cpp" line="4981"/>
+        <source>Set application to open an URL</source>
+        <translation>设置用于打开 URL 的应用程序</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3919"/>
+        <source>Couldn&apos;t start %1 to open a new tab in %2.</source>
+        <translation>无法在 %2 中启动 %1 以打开一个新标签。</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3994"/>
+        <source>Enter URL:</source>
+        <translation type="unfinished">请输入 URL:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4017"/>
+        <source>HTML</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4018"/>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">文本</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4019"/>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">电子表格</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4020"/>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">文本文档</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4021"/>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">图象</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4025"/>
+        <source>Set URL to a local file</source>
+        <translation type="unfinished">设置到本地文档的 URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4183"/>
+        <location filename="../mainwindow.cpp" line="4185"/>
+        <source>Link to another map</source>
+        <translation type="unfinished">至另一导图的链接</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4244"/>
+        <source>Enter sleep time (number of days or date YYYY-MM-DD or DD.MM[.YYYY]</source>
+        <comment>task sleep time dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4261"/>
+        <source>Couldn&apos;t set sleep time to %1.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4286"/>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished">在导图上的 %1 条目</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4304"/>
+        <source>branches</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4305"/>
+        <source>notes</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4306"/>
+        <source>images</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4307"/>
+        <source>tasks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4308"/>
+        <source>slides</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4309"/>
+        <source>xLinks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="4967"/>
+        <location filename="../mainwindow.cpp" line="5802"/>
+        <source>Set application to open PDF files</source>
+        <translation>设置用于打开 pdf 文件的应用程序</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5947"/>
+        <source>Please allow vym to download release notes!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5968"/>
+        <source>&lt;html&gt;&lt;h3&gt;Do you allow vym to check online for updates or release notes?&lt;/h3&gt;If you allow, vym will &lt;ul&gt;&lt;li&gt;check once for release notes&lt;/li&gt;&lt;li&gt;check regulary for updates and notify you in case you should update, e.g. if there are important bug fixes available&lt;/li&gt;&lt;li&gt;receive a cookie with a random ID and send vym version and platform name and the ID  (e.g. &quot;Windows&quot; or &quot;Linux&quot;) back to me, Uwe Drechsel.&lt;p&gt;As vym developer I am motivated to see many people using vym. Of course I am curious to see, on which system vym is used. Maintaining each of the systems requires a lot of my (spare) time.&lt;/p&gt; &lt;p&gt;No other data than above will be sent, especially no private data will be collected or sent.(Check the source code, if you don&apos;t believe.)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;If you do not allow, &lt;ul&gt;&lt;li&gt;nothing will be downloaded and especially I will &lt;b&gt;not be motivated&lt;/b&gt; to spend some more thousands of hours on developing a free software tool.&lt;/ul&gt;Please allow vym to check for updates :-)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5997"/>
+        <source>Allow</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5998"/>
+        <source>Do not allow</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6004"/>
+        <source>Thank you for enabling downloads!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6027"/>
+        <source>Update information</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6033"/>
+        <source>vym is up to date.</source>
+        <comment>MainWindow</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6084"/>
+        <source>Checking for updates...</source>
+        <comment>MainWindow</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="6112"/>
+        <source>Please allow vym to check for updates!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2307"/>
+        <source>Oh no!</source>
+        <comment>Standardflag</comment>
+        <translation>哦不!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="124"/>
+        <source>Main window</source>
+        <comment>Shortcut scope</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1021"/>
+        <source>Firefox Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation type="unfinished">Firefox 书签</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1034"/>
+        <source>Import Dir%1</source>
+        <comment>Import Filters</comment>
+        <translation type="unfinished">导入目录%1</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1733"/>
+        <source>Remove only branch and keep its children </source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1878"/>
+        <source>Formatting</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1997"/>
+        <source>Views</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2174"/>
+        <source>Modifier modes</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2315"/>
+        <source>Call...</source>
+        <comment>Standardflag</comment>
+        <translation>打电话……</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2330"/>
+        <source>Very important!</source>
+        <comment>Standardflag</comment>
+        <translation>非常重要!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2334"/>
+        <source>Very unimportant!</source>
+        <comment>Standardflag</comment>
+        <translation>非常不重要!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2347"/>
+        <source>Rose</source>
+        <comment>Standardflag</comment>
+        <translation>玫瑰</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2353"/>
+        <source>Surprise!</source>
+        <comment>Standardflag</comment>
+        <translation>惊喜!</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2360"/>
+        <source>Info</source>
+        <comment>Standardflag</comment>
+        <translation>信息</translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <translation type="obsolete">Firefox 书签</translation>
+    </message>
+    <message>
+        <source>Show Note Editor</source>
+        <translation type="obsolete">显示注解编辑器</translation>
+    </message>
+    <message>
+        <source>Show history window</source>
+        <translation type="obsolete">显示历史窗口</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3533"/>
+        <location filename="../mainwindow.cpp" line="3536"/>
+        <source>Bookmarks</source>
+        <translation>书签</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start %1 to open a new tab</source>
+        <translation type="obsolete">无法启动 %1 以打开一个新标签。</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <translation type="obsolete">将导图导出为图象</translation>
+    </message>
+    <message>
+        <source>Standard Flags</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation type="obsolete">标记工具栏</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find configuration for export to Open Office
+</source>
+        <translation type="vanished">无法找到配置以导出成 OpenOffice.org
+</translation>
+    </message>
+    <message>
+        <source>No matches found for &quot;%1&quot;</source>
+        <translation type="obsolete">无法为 &quot;%1&quot; 找到匹配</translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <translation type="obsolete">导图(&amp;M)</translation>
+    </message>
+    <message>
+        <source>Open all URLs in subtree</source>
+        <translation type="obsolete">打开子树中的所有 URL</translation>
+    </message>
+    <message>
+        <source>Open all vym links in subtree</source>
+        <translation type="obsolete">打开子树中的所有链接</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation type="obsolete">无法在载入前创建临时目录
+</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation type="obsolete">无法在保存前创建临时目录</translation>
+    </message>
+    <message>
+        <source>Sorry, currently only Konqueror and Mozilla support tabbed browsing.</source>
+        <translation type="obsolete">对不起,当前只有 Konqueror 和 Mozilla 支持标签浏览。</translation>
+    </message>
+    <message>
+        <source>&amp;New...</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">新建(&amp;N)...</translation>
+    </message>
+    <message>
+        <source>New map</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">新建导图</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="985"/>
+        <source>&amp;Open...</source>
+        <comment>File menu</comment>
+        <translation>打开(&amp;O)...</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">打开</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1000"/>
+        <source>Open Recent</source>
+        <comment>File menu</comment>
+        <translation>最近打开的文件</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1003"/>
+        <source>&amp;Save...</source>
+        <comment>File menu</comment>
+        <translation>保存(&amp;S)...</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">保存</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1011"/>
+        <source>Save &amp;As...</source>
+        <comment>File menu</comment>
+        <translation>另存为(&amp;A)...</translation>
+    </message>
+    <message>
+        <source>Save &amp;As</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">另存为(&amp;A)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1017"/>
+        <source>Import</source>
+        <comment>File menu</comment>
+        <translation>导入</translation>
+    </message>
+    <message>
+        <source>Import %1</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">导入 %1</translation>
+    </message>
+    <message>
+        <source>KDE bookmarks</source>
+        <translation type="obsolete">KDE 书签</translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Firefox 书签</translation>
+    </message>
+    <message>
+        <source>Import %1</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">导入 %1</translation>
+    </message>
+    <message>
+        <source>Import Dir%1</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">导入目录%1</translation>
+    </message>
+    <message>
+        <source>Import directory structure (experimental)</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">导入目录结构(仍处于试验阶段)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1038"/>
+        <source>Export</source>
+        <comment>File menu</comment>
+        <translation>导出</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1063"/>
+        <source>Image%1</source>
+        <comment>File export menu</comment>
+        <translation>图象%1</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">将导图导出为图象</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1067"/>
+        <source>PDF%1</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1071"/>
+        <source>SVG%1</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export in Open Document Format used e.g. in Open Office </source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">导出为用于 OpenOffice.org 等的 ODF(Open Document Format) 格式    </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1040"/>
+        <source>Repeat last export (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export as %1</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">导出为 %1</translation>
+    </message>
+    <message>
+        <source> webpage (XHTML)</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">  网页(XHTML)</translation>
+    </message>
+    <message>
+        <source>Export as %1</source>
+        <translation type="obsolete">导出为 %1</translation>
+    </message>
+    <message>
+        <source>KDE Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">KDE 书签</translation>
+    </message>
+    <message>
+        <source>Print</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">打印</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1118"/>
+        <source>&amp;Close Map</source>
+        <comment>File menu</comment>
+        <translation>关闭导图(&amp;C)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1124"/>
+        <source>E&amp;xit</source>
+        <comment>File menu</comment>
+        <translation>退出(&amp;X)</translation>
+    </message>
+    <message>
+        <source>&amp;Actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="obsolete">动作工具栏(&amp;A)</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">编辑(&amp;E)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1139"/>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation>撤销(&amp;U)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1150"/>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation>重做(&amp;R)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1161"/>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation>复制(&amp;C)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1172"/>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation>剪切(&amp;T)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1185"/>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation>粘贴(&amp;P)</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">编辑标题</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1197"/>
+        <source>Delete Selection</source>
+        <comment>Edit menu</comment>
+        <translation>删除选中项</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1232"/>
+        <source>Add branch as child</source>
+        <comment>Edit menu</comment>
+        <translation>添加子分支</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1242"/>
+        <source>Add branch (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>添加父分支</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1252"/>
+        <location filename="../mainwindow.cpp" line="1262"/>
+        <source>Add branch above</source>
+        <comment>Edit menu</comment>
+        <translation>在上方添加分支</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1272"/>
+        <location filename="../mainwindow.cpp" line="1281"/>
+        <source>Add branch below</source>
+        <comment>Edit menu</comment>
+        <translation>在下方添加分支</translation>
+    </message>
+    <message>
+        <source>Move up</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">上移</translation>
+    </message>
+    <message>
+        <source>Move down</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">下移</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1343"/>
+        <source>Scroll branch</source>
+        <comment>Edit menu</comment>
+        <translation>卷起分支</translation>
+    </message>
+    <message>
+        <source>Unscroll all scrolled branches</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">展开所有卷起的分支</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1849"/>
+        <location filename="../mainwindow.cpp" line="1857"/>
+        <source>Find...</source>
+        <comment>Edit menu</comment>
+        <translation>查找...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1430"/>
+        <source>Open URL</source>
+        <comment>Edit menu</comment>
+        <translation>打开 URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1438"/>
+        <source>Open URL in new tab</source>
+        <comment>Edit menu</comment>
+        <translation>在新标签页打开 URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1454"/>
+        <source>Open all URLs in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>打开子树中的所有 URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1470"/>
+        <source>Edit URL...</source>
+        <comment>Edit menu</comment>
+        <translation>编辑 URL...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1488"/>
+        <source>Use heading for URL</source>
+        <comment>Edit menu</comment>
+        <translation>将标题作为 URL</translation>
+    </message>
+    <message>
+        <source>Create URL to Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">创建至 Bugzilla 的 URL</translation>
+    </message>
+    <message>
+        <source>Create URL to FATE</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">创建至 FATE 的 URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1538"/>
+        <source>Open linked map</source>
+        <comment>Edit menu</comment>
+        <translation>打开链接的导图</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1552"/>
+        <source>Open all vym links in subtree</source>
+        <comment>Edit menu</comment>
+        <translation>打开子树中的所有链接</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1560"/>
+        <source>Edit vym link...</source>
+        <comment>Edit menu</comment>
+        <translation>编辑 vym 链接...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1567"/>
+        <source>Delete vym link</source>
+        <comment>Edit menu</comment>
+        <translation>删除 vym 链接...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1575"/>
+        <source>Hide in exports</source>
+        <comment>Edit menu</comment>
+        <translation>导出时隐藏</translation>
+    </message>
+    <message>
+        <source>Edit Map Info...</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">编辑导图信息...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1710"/>
+        <source>Add map (insert)</source>
+        <comment>Edit menu</comment>
+        <translation>添加导图(插入)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1717"/>
+        <source>Add map (replace)</source>
+        <comment>Edit menu</comment>
+        <translation>添加导图(替换)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1724"/>
+        <source>Save selection</source>
+        <comment>Edit menu</comment>
+        <translation>保存选中项</translation>
+    </message>
+    <message>
+        <source>Remove only branch </source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">仅删除该分支</translation>
+    </message>
+    <message>
+        <source>Remove childs</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">删除子分支</translation>
+    </message>
+    <message>
+        <source>Select upper branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">选择上方分支</translation>
+    </message>
+    <message>
+        <source>Select lower branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">选择下方分支</translation>
+    </message>
+    <message>
+        <source>Select left branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">选择左方分支</translation>
+    </message>
+    <message>
+        <source>Select child branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">选择子分支</translation>
+    </message>
+    <message>
+        <source>Select first branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">选择第一个分支</translation>
+    </message>
+    <message>
+        <source>Select last branch</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">选择最后一个分支</translation>
+    </message>
+    <message>
+        <source>Add Image...</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">添加图象...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1876"/>
+        <source>F&amp;ormat</source>
+        <comment>Format menu</comment>
+        <translation>格式(&amp;O)</translation>
+    </message>
+    <message>
+        <source>Format Actions</source>
+        <comment>Format Toolbar name</comment>
+        <translation type="obsolete">格式工具栏</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1889"/>
+        <source>Pic&amp;k color</source>
+        <comment>Edit menu</comment>
+        <translation>选取颜色(&amp;K)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1898"/>
+        <source>Color &amp;branch</source>
+        <comment>Edit menu</comment>
+        <translation>着色该分支(&amp;B)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1907"/>
+        <source>Color sub&amp;tree</source>
+        <comment>Edit menu</comment>
+        <translation>着色子树(&amp;T)</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <comment>Branch attribute</comment>
+        <translation type="obsolete">无边框</translation>
+    </message>
+    <message>
+        <source>RectangleBranch attribute</source>
+        <translation type="obsolete">举行分支属性</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <comment>Branch attribute</comment>
+        <translation type="obsolete">在垂直方向包含图象</translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <comment>Branch attribute</comment>
+        <translation type="obsolete">在水平方向包含图象</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1958"/>
+        <source>Hide link if object is not selected</source>
+        <comment>Branch attribute</comment>
+        <translation>当对象未选中时隐藏链接</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1964"/>
+        <source>&amp;Use color of heading for link</source>
+        <comment>Branch attribute</comment>
+        <translation>让链接使用标题的颜色(&amp;U)</translation>
+    </message>
+    <message>
+        <source>View Actions</source>
+        <comment>View Toolbar name</comment>
+        <translation type="obsolete">查看工具栏</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2034"/>
+        <source>reset Zoom</source>
+        <comment>View action</comment>
+        <translation>正常大小</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2002"/>
+        <source>Zoom in</source>
+        <comment>View action</comment>
+        <translation>放大</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2010"/>
+        <source>Zoom out</source>
+        <comment>View action</comment>
+        <translation>缩小</translation>
+    </message>
+    <message>
+        <source>Show Note Editor</source>
+        <comment>View action</comment>
+        <translation type="obsolete">显示注解编辑器</translation>
+    </message>
+    <message>
+        <source>Show history window</source>
+        <comment>View action</comment>
+        <translation type="obsolete">显示历史窗口</translation>
+    </message>
+    <message>
+        <source>Next Window</source>
+        <comment>View action</comment>
+        <translation type="obsolete">下一窗口</translation>
+    </message>
+    <message>
+        <source>Previous Window</source>
+        <comment>View action</comment>
+        <translation type="obsolete">上一窗口</translation>
+    </message>
+    <message>
+        <source>Modes when using modifiers</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation type="obsolete">修饰键模式工具栏</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2178"/>
+        <source>Use modifier to color branches</source>
+        <comment>Mode modifier</comment>
+        <translation>使用修饰键着色分支</translation>
+    </message>
+    <message>
+        <source>Use modifier to copy</source>
+        <comment>Mode modifier</comment>
+        <translation type="obsolete">使用修饰键复制</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2194"/>
+        <source>Use modifier to draw xLinks</source>
+        <comment>Mode modifier</comment>
+        <translation>使用修饰键绘制 xLinks</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2531"/>
+        <source>Set application to open pdf files</source>
+        <comment>Settings action</comment>
+        <translation>设置用于打开 pdf 文件的应用程序</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2535"/>
+        <source>Set application to open external links</source>
+        <comment>Settings action</comment>
+        <translation>设置用于打开外部链接的应用程序</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2581"/>
+        <source>Edit branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>添加分支后编辑该分支</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2587"/>
+        <source>Select branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation>添加分支后选中该分支</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2593"/>
+        <source>Select existing heading</source>
+        <comment>Settings action</comment>
+        <translation>选中已存在的标题文本</translation>
+    </message>
+    <message>
+        <source>Delete key</source>
+        <comment>Settings action</comment>
+        <translation type="obsolete">删除键</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2599"/>
+        <source>Exclusive flags</source>
+        <comment>Settings action</comment>
+        <translation>互斥标记</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2605"/>
+        <source>Use hide flags</source>
+        <comment>Settings action</comment>
+        <translation>使用隐藏标记</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2673"/>
+        <source>&amp;Help</source>
+        <comment>Help menubar entry</comment>
+        <translation>帮助(&amp;H)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2676"/>
+        <source>Open VYM Documentation (pdf) </source>
+        <comment>Help action</comment>
+        <translation>打开 VYM 文档(pdf)    </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2685"/>
+        <source>Download and show release notes</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2689"/>
+        <source>Check, if updates are available</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2702"/>
+        <source>About VYM</source>
+        <comment>Help action</comment>
+        <translation>关于 VYM</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2706"/>
+        <source>About QT</source>
+        <comment>Help action</comment>
+        <translation>关于 QT</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2735"/>
+        <source>Remove</source>
+        <comment>Context menu name</comment>
+        <translation>删除</translation>
+    </message>
+    <message>
+        <source>URLs and vymLinks</source>
+        <comment>Context menu name</comment>
+        <translation type="obsolete">URL 以及 vym链接</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2798"/>
+        <source>Edit XLink</source>
+        <comment>Context menu name</comment>
+        <translation>编辑 XLink</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2809"/>
+        <source>Follow XLink</source>
+        <comment>Context menu name</comment>
+        <translation type="unfinished">跟随 XLink</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2818"/>
+        <source>Save image</source>
+        <comment>Context action</comment>
+        <translation>保存图象</translation>
+    </message>
+    <message>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <comment>write directory</comment>
+        <translation type="obsolete">目录 %1 非空。
+您希望冒险覆盖其内容吗?</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="971"/>
+        <source>&amp;New map</source>
+        <comment>File menu</comment>
+        <translation>新建导图(&amp;N)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="978"/>
+        <source>&amp;Copy to new map</source>
+        <comment>File menu</comment>
+        <translation>复制到新导图(&amp;C)</translation>
+    </message>
+    <message>
+        <source>Copy selection to mapcenter of a new map</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">复制选区到新导图的图心</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1221"/>
+        <source>Add mapcenter</source>
+        <comment>Canvas context menu</comment>
+        <translation>添加图心</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1325"/>
+        <source>Sort children</source>
+        <comment>Edit menu</comment>
+        <translation>子分支排序</translation>
+    </message>
+    <message>
+        <source>Unscroll childs</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">展开子分支</translation>
+    </message>
+    <message>
+        <source>Unscroll all scrolled branches in selected subtree</source>
+        <translation type="obsolete">在选择子树里展开所有卷起的分支</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1479"/>
+        <source>Edit local URL...</source>
+        <comment>Edit menu</comment>
+        <translation>编辑本地 URL...</translation>
+    </message>
+    <message>
+        <source>Edit local URL</source>
+        <translation type="obsolete">编辑本地 URL</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">创建至 Novell Bugzilla 的 URL</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell Bugzilla</source>
+        <translation type="obsolete">创建至 Novell Bugzilla 的 URL</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell FATE</source>
+        <comment>Edit menu</comment>
+        <translation type="vanished">创建至 Novell FATE 的 URL</translation>
+    </message>
+    <message>
+        <source>Create URL to Novell FATE</source>
+        <translation type="obsolete">创建至 Novell FATE 的 URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1779"/>
+        <source>Property window</source>
+        <comment>Dialog to edit properties of selection</comment>
+        <translation>属性窗口</translation>
+    </message>
+    <message>
+        <source>Set properties for selection</source>
+        <translation type="obsolete">设置选区属性</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1935"/>
+        <source>Linkstyle Curve</source>
+        <translation>曲线链接样式</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1949"/>
+        <source>Linkstyle Thick Curve</source>
+        <translation>粗曲线链接样式</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1971"/>
+        <source>Set &amp;Link Color</source>
+        <translation>设置链接颜色(&amp;L)</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1976"/>
+        <source>Set &amp;Selection Color</source>
+        <translation>设置选区颜色(&amp;S)</translation>
+    </message>
+    <message>
+        <source>Set Selection Color</source>
+        <translation type="obsolete">设置选区颜色</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="1986"/>
+        <source>Set &amp;Background image</source>
+        <translation>设置背景图像(&amp;B)</translation>
+    </message>
+    <message>
+        <source>Set Background image</source>
+        <translation type="obsolete">设置背景图像</translation>
+    </message>
+    <message>
+        <source>Show selection</source>
+        <comment>View action</comment>
+        <translation type="obsolete">显示选区</translation>
+    </message>
+    <message>
+        <source>Show selection</source>
+        <translation type="obsolete">显示选区</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2110"/>
+        <source>History Window</source>
+        <comment>View action</comment>
+        <translation>历史窗口</translation>
+    </message>
+    <message>
+        <source>Show History Window</source>
+        <translation type="obsolete">显示历史窗口</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2124"/>
+        <source>Antialiasing</source>
+        <comment>View action</comment>
+        <translation>反锯齿</translation>
+    </message>
+    <message>
+        <source>Antialiasing</source>
+        <translation type="obsolete">反锯齿</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2131"/>
+        <source>Smooth pixmap transformations</source>
+        <comment>View action</comment>
+        <translation>平滑位图变形</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2139"/>
+        <source>Next Map</source>
+        <comment>View action</comment>
+        <translation>下一导图</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2146"/>
+        <source>Previous Map</source>
+        <comment>View action</comment>
+        <translation>上一导图</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2213"/>
+        <location filename="../mainwindow.cpp" line="2216"/>
+        <location filename="../mainwindow.cpp" line="2219"/>
+        <location filename="../mainwindow.cpp" line="2223"/>
+        <location filename="../mainwindow.cpp" line="2226"/>
+        <location filename="../mainwindow.cpp" line="2229"/>
+        <location filename="../mainwindow.cpp" line="2233"/>
+        <location filename="../mainwindow.cpp" line="2236"/>
+        <source>Note</source>
+        <comment>SystemFlag</comment>
+        <translation>注解</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2239"/>
+        <source>URL to Document </source>
+        <comment>SystemFlag</comment>
+        <translation>到文档的 URL</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2251"/>
+        <source>Link to another vym map</source>
+        <comment>SystemFlag</comment>
+        <translation>至另一 vym 导图的链接</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2254"/>
+        <source>subtree is scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation>子树已卷起</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2257"/>
+        <source>subtree is temporary scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation>子树暂时卷起</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2260"/>
+        <source>Hide object in exported maps</source>
+        <comment>SystemFlag</comment>
+        <translation>导出时将被隐藏的对象</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2350"/>
+        <source>I just love...</source>
+        <comment>Standardflag</comment>
+        <translation>我只是喜欢 ...</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2369"/>
+        <source>Important</source>
+        <comment>Freemind-Flag</comment>
+        <translation>重要</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2376"/>
+        <source>Priority</source>
+        <comment>Freemind-Flag</comment>
+        <translation>优先级</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2381"/>
+        <source>Back</source>
+        <comment>Freemind-Flag</comment>
+        <translation>返回</translation>
+    </message>
+    <message>
+        <source>Forward</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="obsolete">前进</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2389"/>
+        <source>Look here</source>
+        <comment>Freemind-Flag</comment>
+        <translation>看这里</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2393"/>
+        <source>Dangerous</source>
+        <comment>Freemind-Flag</comment>
+        <translation>危险</translation>
+    </message>
+    <message>
+        <source>Don&apos;t forget</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="obsolete">不要忘记</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2401"/>
+        <source>Flag</source>
+        <comment>Freemind-Flag</comment>
+        <translation>标记</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2406"/>
+        <source>Home</source>
+        <comment>Freemind-Flag</comment>
+        <translation>家</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2410"/>
+        <source>Telephone</source>
+        <comment>Freemind-Flag</comment>
+        <translation>电话</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2414"/>
+        <source>Music</source>
+        <comment>Freemind-Flag</comment>
+        <translation>音乐</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2418"/>
+        <source>Mailbox</source>
+        <comment>Freemind-Flag</comment>
+        <translation>邮箱</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2422"/>
+        <source>Maix</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Maix</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2426"/>
+        <source>Password</source>
+        <comment>Freemind-Flag</comment>
+        <translation>密码</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2430"/>
+        <source>To be improved</source>
+        <comment>Freemind-Flag</comment>
+        <translation>将要改进</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2434"/>
+        <source>Stop</source>
+        <comment>Freemind-Flag</comment>
+        <translation>停止</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2438"/>
+        <source>Magic</source>
+        <comment>Freemind-Flag</comment>
+        <translation>神奇</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2442"/>
+        <source>To be discussed</source>
+        <comment>Freemind-Flag</comment>
+        <translation>将要讨论</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2446"/>
+        <source>Reminder</source>
+        <comment>Freemind-Flag</comment>
+        <translation>提醒</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2450"/>
+        <source>Excellent</source>
+        <comment>Freemind-Flag</comment>
+        <translation>优异</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2454"/>
+        <source>Linux</source>
+        <comment>Freemind-Flag</comment>
+        <translation>Linux</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2458"/>
+        <source>Sweet</source>
+        <comment>Freemind-Flag</comment>
+        <translation>甜蜜</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2514"/>
+        <source>Settings</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2518"/>
+        <source>Check for release notes and updates</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2539"/>
+        <source>Set application to zip/unzip files</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2543"/>
+        <source>Set path for macros</source>
+        <comment>Settings action</comment>
+        <translation>设置宏路径</translation>
+    </message>
+    <message>
+        <source>Set path for macros</source>
+        <translation type="obsolete">设置宏路径</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2547"/>
+        <source>Set number of undo levels</source>
+        <comment>Settings action</comment>
+        <translation>设置 undo 级</translation>
+    </message>
+    <message>
+        <source>Set number of undo levels</source>
+        <translation type="obsolete">设置 undo 级</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2553"/>
+        <source>Autosave</source>
+        <comment>Settings action</comment>
+        <translation>自动保存</translation>
+    </message>
+    <message>
+        <source>Autosave</source>
+        <translation type="obsolete">自动保存</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2559"/>
+        <source>Autosave time</source>
+        <comment>Settings action</comment>
+        <translation>自动保存时间</translation>
+    </message>
+    <message>
+        <source>Autosave time</source>
+        <translation type="obsolete">自动保存时间</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2572"/>
+        <source>Write backup file on save</source>
+        <comment>Settings action</comment>
+        <translation>保存时备份</translation>
+    </message>
+    <message>
+        <source>Write backup file on save</source>
+        <translation type="obsolete">保存时备份</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2623"/>
+        <source>Animation</source>
+        <comment>Settings action</comment>
+        <translation>动画</translation>
+    </message>
+    <message>
+        <source>Animation</source>
+        <translation type="obsolete">动画</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2680"/>
+        <source>Open VYM example maps </source>
+        <comment>Help action</comment>
+        <translation>打开  VYM 的例子导图</translation>
+    </message>
+    <message>
+        <source>Open VYM example maps </source>
+        <translation type="obsolete">打开  VYM 的例子导图</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="2772"/>
+        <source>References (URLs, vymLinks, ...)</source>
+        <comment>Context menu name</comment>
+        <translation>引用 (URL, vym链接...)</translation>
+    </message>
+    <message>
+        <source>&amp;%1 %2</source>
+        <translation type="obsolete">&amp;%1 %2</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3563"/>
+        <source>Load Freemind map</source>
+        <translation>导入 Freemid 导图</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3678"/>
+        <source>Export as CSV</source>
+        <translation>导出为 CSV</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5000"/>
+        <location filename="../mainwindow.cpp" line="5010"/>
+        <source>Set application to zip/unzip files</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5028"/>
+        <source>Directory with vym macros:</source>
+        <translation>vym宏的目录:</translation>
+    </message>
+    <message>
+        <source>QInputDialog::getInteger()</source>
+        <translation type="obsolete">QInputDialog::getInteger()</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5041"/>
+        <source>Number of undo/redo levels:</source>
+        <translation>撤消级别 :</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5046"/>
+        <source>Settings have been changed. The next map opened will have &quot;%1&quot; undo/redo levels</source>
+        <translation>设置已更改。下一个导图将有 %1 个撤消级别</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5066"/>
+        <source>Number of seconds before autosave:</source>
+        <translation>自动保存的秒数:</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5076"/>
+        <source>Set author for new maps (used in lockfile)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5077"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5088"/>
+        <source>Number of parents shown in find results:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5098"/>
+        <source>Number of parents shown for a task:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="3092"/>
+        <source>(readonly)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5433"/>
+        <source>History for %1</source>
+        <comment>Window Caption</comment>
+        <translation>%1 的历史</translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5456"/>
+        <source>Export in last used format (%1) to: %2</source>
+        <comment>status tip</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5788"/>
+        <source>Couldn&apos;t find the documentation %1 in:
+%2</source>
+        <translation>在:
+%2 中找不到%1 的文档 </translation>
+    </message>
+    <message>
+        <location filename="../mainwindow.cpp" line="5816"/>
+        <source>Load vym example map</source>
+        <translation>载入 vym 例子导图</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation type="obsolete">在 %1 不能找到宏
+</translation>
+    </message>
+    <message>
+        <source>Set directory for vym macros</source>
+        <translation type="obsolete">设置宏目录</translation>
+    </message>
+</context>
+<context>
+    <name>MapEditor</name>
+    <message>
+        <source>Critical Parse Error</source>
+        <translation type="obsolete">严重解析错误</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="obsolete">覆盖</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">取消</translation>
+    </message>
+    <message>
+        <source>Critical Export Error</source>
+        <translation type="obsolete">严重导出错误</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">严重错误</translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation type="obsolete">请输入 URL:</translation>
+    </message>
+    <message>
+        <source>vym map</source>
+        <translation type="obsolete">vym 导图</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <translation type="obsolete">图象</translation>
+    </message>
+    <message>
+        <source>Critical Import Error</source>
+        <translation type="obsolete">严重导入错误</translation>
+    </message>
+    <message>
+        <source>New Map</source>
+        <comment>Heading of mapcenter in new map</comment>
+        <translation type="obsolete">新建导图</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="obsolete">文件 %1 已存在。
+您希望覆盖它吗?</translation>
+    </message>
+    <message>
+        <source>MapEditor::exportXML couldn&apos;t open %1</source>
+        <translation type="obsolete">导图编辑器:导出 XML 无法打开 %1</translation>
+    </message>
+    <message>
+        <source>Cannot find the directory %1</source>
+        <translation type="obsolete">无法找到目录 %1</translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation type="obsolete">至另一导图的链接</translation>
+    </message>
+    <message>
+        <source>Load image</source>
+        <translation type="obsolete">载入图象</translation>
+    </message>
+    <message>
+        <source>Choose directory structure to import</source>
+        <translation type="obsolete">请选择要导入的目录结构</translation>
+    </message>
+    <message>
+        <source>unnamed</source>
+        <translation type="obsolete">未命名</translation>
+    </message>
+    <message>
+        <source>History for </source>
+        <translation type="obsolete">历史    </translation>
+    </message>
+    <message>
+        <source>Save image</source>
+        <translation type="obsolete">保存图象</translation>
+    </message>
+    <message>
+        <source>Critical Parse Error while reading %1</source>
+        <translation type="obsolete">试图读取 %1 时发生严重解析错误</translation>
+    </message>
+    <message>
+        <source>Could not read %1</source>
+        <translation type="obsolete">无法读取 %1</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="obsolete">警告</translation>
+    </message>
+    <message>
+        <source>Can&apos;t get color of heading,
+there&apos;s no branch selected</source>
+        <translation type="obsolete">无法取得标题颜色,
+未选中任何分支</translation>
+    </message>
+    <message>
+        <source>Critical Load Error</source>
+        <translation type="obsolete">严重载入错误</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation type="obsolete">无法在载入前创建临时目录
+</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="obsolete">无法在 .vym 存档中找到导图(*.xml)。
+</translation>
+    </message>
+    <message>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="obsolete">导图 %1
+未使用 vym 压缩文件格式。
+如果写入的话,图象与标记都会写入,这可能导致
+指定目录中的文件被覆盖。
+
+您希望写入导图吗</translation>
+    </message>
+    <message>
+        <source>compressed (vym default)</source>
+        <translation type="obsolete">压缩(vym 默认)</translation>
+    </message>
+    <message>
+        <source>uncompressed</source>
+        <translation type="obsolete">未压缩</translation>
+    </message>
+    <message>
+        <source>Save Error</source>
+        <translation type="obsolete">保存错误</translation>
+    </message>
+    <message>
+        <source>%1
+could not be removed before saving</source>
+        <translation type="obsolete">%1
+在保存时不能移除</translation>
+    </message>
+    <message>
+        <source>%1
+could not be renamed before saving</source>
+        <translation type="obsolete">%1
+在保存时不能重命名</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation type="obsolete">无法在保存前创建临时目录</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <translation type="obsolete">将导图导出为图象</translation>
+    </message>
+    <message>
+        <source>Export XML to directory</source>
+        <translation type="obsolete">导出 XML 至目录</translation>
+    </message>
+    <message>
+        <source>Autosave disabled during undo.</source>
+        <translation type="obsolete">在撤消时禁用自动保存。</translation>
+    </message>
+    <message>
+        <source>Load background image</source>
+        <translation type="obsolete">载入背景图像</translation>
+    </message>
+    <message>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">文本</translation>
+    </message>
+    <message>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">电子表格</translation>
+    </message>
+    <message>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">文本文档</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">图象</translation>
+    </message>
+    <message>
+        <source>Set URL to a local file</source>
+        <translation type="obsolete">设置到本地文档的 URL</translation>
+    </message>
+    <message>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation type="obsolete">在导图上的 %1 条目</translation>
+    </message>
+    <message>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation type="obsolete">在磁盘上的导图文件发生了更改:
+
+%1
+
+您想要从新文件中重新载入吗?</translation>
+    </message>
+    <message>
+        <source>Reload</source>
+        <translation type="obsolete">重新载入</translation>
+    </message>
+    <message>
+        <source>Ignore</source>
+        <translation type="obsolete">忽略</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="43"/>
+        <source>Map Editor</source>
+        <comment>Shortcut scope</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="111"/>
+        <location filename="../mapeditor.cpp" line="116"/>
+        <source>Edit heading</source>
+        <comment>MapEditor</comment>
+        <translation type="unfinished">编辑标题</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>MapEditor</comment>
+        <translation type="obsolete">保存</translation>
+    </message>
+    <message>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">剪切(&amp;T)</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">复制(&amp;C)</translation>
+    </message>
+    <message>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">撤销(&amp;U)</translation>
+    </message>
+    <message>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">重做(&amp;R)</translation>
+    </message>
+    <message>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">粘贴(&amp;P)</translation>
+    </message>
+    <message>
+        <location filename="../mapeditor.cpp" line="510"/>
+        <source>Print vym map</source>
+        <comment>MapEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>NoteEditor</name>
+    <message>
+        <location filename="../noteeditor.cpp" line="13"/>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished">注解编辑器</translation>
+    </message>
+</context>
+<context>
+    <name>Process</name>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">严重错误</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation type="obsolete">无法启动 %1</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="obsolete">%1 未正常退出</translation>
+    </message>
+</context>
+<context>
+    <name>QObject</name>
+    <message>
+        <source>This is not an image.</source>
+        <translation type="obsolete">这不是图象。</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <location filename="../exports.cpp" line="381"/>
+        <location filename="../exports.cpp" line="511"/>
+        <location filename="../exports.cpp" line="954"/>
+        <location filename="../exports.cpp" line="1048"/>
+        <location filename="../exports.cpp" line="1128"/>
+        <location filename="../exports.cpp" line="1236"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <location filename="../exports.cpp" line="1333"/>
+        <location filename="../exports.cpp" line="1343"/>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Critical Export Error</source>
+        <translation>严重导出错误</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="956"/>
+        <location filename="../exports.cpp" line="1308"/>
+        <source>Could not write %1</source>
+        <translation>无法写入 %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="147"/>
+        <source>Exporting to %1 will overwrite the existing file:
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="146"/>
+        <source>Warning: Overwriting file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="503"/>
+        <source>Export as CSV</source>
+        <translation type="unfinished">导出为 CSV</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="837"/>
+        <source>Contents:</source>
+        <comment>Used in HTML export</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="893"/>
+        <source>Export aborted.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <comment>ExportHTML</comment>
+        <translation type="obsolete">警告</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <comment>ExportHTML</comment>
+        <translation type="obsolete">无法打开 %1</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <translation type="obsolete">无法打开 %1</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="934"/>
+        <source>Trying to create directory for flags:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="935"/>
+        <source>Could not create %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="909"/>
+        <location filename="../exports.cpp" line="933"/>
+        <location filename="../exports.cpp" line="944"/>
+        <source>Critical</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="235"/>
+        <source>Could not export as AO to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="381"/>
+        <source>Could not export as ASCII to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="511"/>
+        <source>Could not export as CSV to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="910"/>
+        <source>Could not find stylesheet %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="920"/>
+        <source>Error</source>
+        <comment>ExportHTML</comment>
+        <translation type="unfinished">错误</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="921"/>
+        <source>Could not copy
+%1 to
+%2</source>
+        <comment>ExportHTML</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="945"/>
+        <source>Could not copy %1 to %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="955"/>
+        <source>Trying to save HTML file:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="236"/>
+        <location filename="../exports.cpp" line="382"/>
+        <location filename="../exports.cpp" line="512"/>
+        <location filename="../exports.cpp" line="957"/>
+        <location filename="../exports.cpp" line="1049"/>
+        <location filename="../exports.cpp" line="1130"/>
+        <location filename="../exports.cpp" line="1309"/>
+        <source>Export failed.</source>
+        <translation>导出失败。</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1048"/>
+        <source>Could not export as OrgMode to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1129"/>
+        <source>Could not export as LaTeX to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1189"/>
+        <source>Export as LibreOffice Impress presentation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1236"/>
+        <source>No objects in map!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1333"/>
+        <source>Couldn&apos;t read settings from &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1343"/>
+        <source>Check &quot;%1&quot; in
+%2</source>
+        <translation>在 %2 中检查
+&quot;%1&quot;</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="1362"/>
+        <location filename="../exports.cpp" line="1369"/>
+        <location filename="../exports.cpp" line="1376"/>
+        <source>Could not read %1</source>
+        <translation>无法读取 %1</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="257"/>
+        <location filename="../file.cpp" line="272"/>
+        <location filename="../file.cpp" line="296"/>
+        <location filename="../file.cpp" line="305"/>
+        <location filename="../file.cpp" line="313"/>
+        <location filename="../file.cpp" line="323"/>
+        <location filename="../file.cpp" line="332"/>
+        <location filename="../file.cpp" line="340"/>
+        <location filename="../file.cpp" line="347"/>
+        <location filename="../file.cpp" line="356"/>
+        <location filename="../file.cpp" line="377"/>
+        <location filename="../file.cpp" line="400"/>
+        <location filename="../file.cpp" line="410"/>
+        <location filename="../file.cpp" line="423"/>
+        <location filename="../main.cpp" line="411"/>
+        <location filename="../xsltproc.cpp" line="78"/>
+        <location filename="../xsltproc.cpp" line="84"/>
+        <source>Critical Error</source>
+        <translation>严重错误</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="258"/>
+        <source>Couldn&apos;t move existing file out of the way before saving.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="273"/>
+        <location filename="../file.cpp" line="378"/>
+        <source>Couldn&apos;t start tool to decompress data.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="297"/>
+        <source>Couldn&apos;t start zip to compress data.</source>
+        <translation>无法启动 zip 以压缩数据。</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="306"/>
+        <source>zip didn&apos;t exit normally</source>
+        <translation>zip 未正常退出</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="324"/>
+        <source>Couldn&apos;t rename %1 back to %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="333"/>
+        <source>Couldn&apos;t remove target of old symbolic link %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="341"/>
+        <source>Couldn&apos;t rename output to target of old symbolic link %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="348"/>
+        <source>Couldn&apos;t link from %1 to target of old symbolic link %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="357"/>
+        <source>Saved %1, but couldn&apos;t remove %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="401"/>
+        <source>Couldn&apos;t start unzip to decompress data.</source>
+        <translation>无法启动 unzip 以解压数据。</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="411"/>
+        <source>unzip didn&apos;t exit normally</source>
+        <translation>unzip 未正常退出</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="79"/>
+        <source>Could not start %1</source>
+        <translation>无法启动 %1</translation>
+    </message>
+    <message>
+        <location filename="../xsltproc.cpp" line="85"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation>%1 未正常退出</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="obsolete">文件 %1 已存在。您希望覆盖它吗?</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="90"/>
+        <source>Overwrite</source>
+        <translation>覆盖</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="91"/>
+        <source>Cancel</source>
+        <translation>取消</translation>
+    </message>
+    <message>
+        <source>Sorry, no preview for
+multiple selected files.</source>
+        <translation type="obsolete">对不起,无法预览
+多个选中文件。</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="560"/>
+        <location filename="../exports.cpp" line="590"/>
+        <source>Exporting the %1 bookmarks will overwrite
+your existing bookmarks file.</source>
+        <translation>导出 %1 书签将覆盖您现有的书签。</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="561"/>
+        <location filename="../exports.cpp" line="591"/>
+        <source>Warning: Overwriting %1 bookmarks</source>
+        <translation>警告:正在覆盖 %1 书签</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="579"/>
+        <location filename="../macros.cpp" line="39"/>
+        <location filename="../main.cpp" line="377"/>
+        <source>Warning</source>
+        <translation>警告</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="580"/>
+        <source>Couldn&apos;t find script %1
+to notifiy Browsers of changed bookmarks.</source>
+        <translation>无法找到脚本 %1
+以提醒浏览器书签已更改。</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="56"/>
+        <location filename="../imports.cpp" line="18"/>
+        <location filename="../main.cpp" line="475"/>
+        <location filename="../scripteditor.cpp" line="77"/>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Error</source>
+        <translation>错误</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="57"/>
+        <location filename="../imports.cpp" line="19"/>
+        <source>Couldn&apos;t access temporary directory
+</source>
+        <translation>无法访问临时目录
+</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <location filename="../exports.cpp" line="373"/>
+        <source>Export as ASCII</source>
+        <translation>导出为 ASCII</translation>
+    </message>
+    <message>
+        <location filename="../exports.cpp" line="223"/>
+        <source>(still experimental)</source>
+        <translation>(仍处于试验阶段)</translation>
+    </message>
+    <message>
+        <location filename="../file.cpp" line="84"/>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <comment>write directory</comment>
+        <translation>目录 %1 非空。
+您希望冒险覆盖其内容吗?</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation type="obsolete">不能打开 %1.
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3792"/>
+        <source>No Bugzilla client found.  For openSUSE you can install by (running as root):
+
+</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3797"/>
+        <source>Alternatively you can also add the repository
+and install the perl module for Bugzilla access using YaST</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3800"/>
+        <source>Warning: Couldn&apos;t find Bugzilla client</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <comment>Shortcut group</comment>
+        <translation type="obsolete">注解编辑器</translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="412"/>
+        <source>Couldn&apos;t find tool to unzip data. Please download and install 7z and set path in Settings menu:
+ </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main.cpp" line="476"/>
+        <location filename="../scripteditor.cpp" line="78"/>
+        <source>Couldn&apos;t open &quot;%1&quot;
+%2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="80"/>
+        <source>Warning: Version Problem</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../xml-vym.cpp" line="81"/>
+        <source>&lt;h3&gt;Map is newer than VYM&lt;/h3&gt;&lt;p&gt;The map you are just trying to load was saved using vym %1. The version of this vym is %2. If you run into problems after pressing the ok-button below, updating vym should help.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="40"/>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation type="unfinished">在 %1 不能找到宏
+</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Please use Settings-&gt;</source>
+        <translation type="unfinished">请使用 &quot;设置&quot;-&gt;</translation>
+    </message>
+    <message>
+        <location filename="../macros.cpp" line="41"/>
+        <source>Set directory for vym macros</source>
+        <translation type="unfinished">设置宏目录</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="96"/>
+        <source>Couldn&apos;t save &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>ScriptEditor</name>
+    <message>
+        <location filename="../scripteditor.ui" line="14"/>
+        <source>Form</source>
+        <translation type="unfinished">表单</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="49"/>
+        <source>Tab 1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="55"/>
+        <source>Save to selected slide</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="91"/>
+        <location filename="../scripteditor.ui" line="145"/>
+        <source>Run</source>
+        <translation type="unfinished">运行</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="105"/>
+        <source>Tab 2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="121"/>
+        <source>Current key:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="131"/>
+        <source>Load</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.ui" line="138"/>
+        <source>Save</source>
+        <translation type="unfinished">保存</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Warning</source>
+        <translation type="unfinished">警告</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="45"/>
+        <source>Slide</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="46"/>
+        <source>Macro</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="65"/>
+        <source>Save</source>
+        <comment>ScriptEditor</comment>
+        <translation type="unfinished">保存</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="111"/>
+        <source>Couldn&apos;t get model to save script into slide!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="117"/>
+        <source>Couldn&apos;t find slide to save script into slide!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="143"/>
+        <source>Save script</source>
+        <translation type="unfinished">保存脚本</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="155"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="160"/>
+        <source>Overwrite</source>
+        <translation type="unfinished">覆盖</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="161"/>
+        <source>Cancel</source>
+        <translation type="unfinished">取消</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="184"/>
+        <source>Load script</source>
+        <translation type="unfinished">加载脚本</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="194"/>
+        <source>Error</source>
+        <translation type="unfinished">错误</translation>
+    </message>
+    <message>
+        <location filename="../scripteditor.cpp" line="195"/>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation type="unfinished">不能打开 %1.
+</translation>
+    </message>
+</context>
+<context>
+    <name>ShowTextDialog</name>
+    <message>
+        <location filename="../showtextdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation>对话框</translation>
+    </message>
+    <message>
+        <location filename="../showtextdialog.ui" line="50"/>
+        <source>Close</source>
+        <translation>关闭</translation>
+    </message>
+</context>
+<context>
+    <name>SimpleScriptEditor</name>
+    <message>
+        <source>Save script</source>
+        <translation type="obsolete">保存脚本</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation type="obsolete">文件 %1 
+已存在。
+您希望覆盖它吗?</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="obsolete">覆盖</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">取消</translation>
+    </message>
+    <message>
+        <source>Load script</source>
+        <translation type="obsolete">加载脚本</translation>
+    </message>
+    <message>
+        <source>Error</source>
+        <translation type="obsolete">错误</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation type="obsolete">不能打开 %1.
+</translation>
+    </message>
+    <message>
+        <source>Simple Script Editor</source>
+        <translation type="obsolete">简单脚本编辑器</translation>
+    </message>
+    <message>
+        <source>Save as</source>
+        <translation type="obsolete">另存为</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <translation type="obsolete">保存</translation>
+    </message>
+    <message>
+        <source>Qt::CTRL + Qt::Key_S</source>
+        <translation type="obsolete">Qt::CTRL + Qt::Key_S</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <translation type="obsolete">打开</translation>
+    </message>
+    <message>
+        <source>Qt::CTRL +Qt::Key_O</source>
+        <translation type="obsolete">Qt::CTRL +Qt::Key_O</translation>
+    </message>
+    <message>
+        <source>Run</source>
+        <translation type="obsolete">运行</translation>
+    </message>
+    <message>
+        <source>Qt::CTRL + Qt::Key_R</source>
+        <translation type="obsolete">Qt::CTRL + Qt::Key_R</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">关闭</translation>
+    </message>
+</context>
+<context>
+    <name>TaskEditor</name>
+    <message>
+        <location filename="../taskeditor.cpp" line="38"/>
+        <source>Current map</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="45"/>
+        <source>Active tasks</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="52"/>
+        <source>New tasks</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskeditor.cpp" line="68"/>
+        <location filename="../taskeditor.cpp" line="73"/>
+        <source>Edit heading</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished">编辑标题</translation>
+    </message>
+</context>
+<context>
+    <name>TaskModel</name>
+    <message>
+        <location filename="../taskmodel.cpp" line="127"/>
+        <source>Prio</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="129"/>
+        <source>Status</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="131"/>
+        <source>Age total</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="133"/>
+        <source>Age mod.</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="135"/>
+        <source>Sleep</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="137"/>
+        <source>Map</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../taskmodel.cpp" line="139"/>
+        <source>Task</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>TextEditor</name>
+    <message>
+        <location filename="../texteditor.cpp" line="273"/>
+        <source>&amp;Import...</source>
+        <translation>导入(&amp;I)...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="283"/>
+        <source>&amp;Export...</source>
+        <translation>导出(&amp;E)...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="293"/>
+        <source>Export &amp;As... (HTML)</source>
+        <translation>导出为(&amp;A)... (HTML)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="298"/>
+        <source>Export &amp;As...(ASCII)</source>
+        <translation>导出为(&amp;A)... (ASCII)</translation>
+    </message>
+    <message>
+        <source>Print Note</source>
+        <translation type="obsolete">打印注解</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="308"/>
+        <source>&amp;Print...</source>
+        <translation>打印(&amp;P)...</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <translation type="vanished">编辑(&amp;E)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="332"/>
+        <source>&amp;Undo</source>
+        <translation>撤销(&amp;U)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="341"/>
+        <source>&amp;Redo</source>
+        <translation>重做(&amp;R)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="351"/>
+        <source>Select and copy &amp;all</source>
+        <translation>选择并复制全部(&amp;A)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="359"/>
+        <source>&amp;Copy</source>
+        <translation>复制(&amp;C)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="368"/>
+        <source>Cu&amp;t</source>
+        <translation>剪切(&amp;T)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="377"/>
+        <source>&amp;Paste</source>
+        <translation>粘贴(&amp;P)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="316"/>
+        <source>&amp;Delete All</source>
+        <translation>删除全部(&amp;D)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="271"/>
+        <location filename="../texteditor.cpp" line="325"/>
+        <location filename="../texteditor.cpp" line="389"/>
+        <source>Texteditor</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="329"/>
+        <source>Edi&amp;t</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="390"/>
+        <source>Font hints</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="396"/>
+        <source>&amp;Font hint</source>
+        <translation>字体微调(&amp;F)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="407"/>
+        <source>&amp;Richtext</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="417"/>
+        <source>Fonts</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="443"/>
+        <source>Format</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="448"/>
+        <source>&amp;Color...</source>
+        <translation>颜色(&amp;C)...</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="454"/>
+        <source>&amp;Bold</source>
+        <translation>粗体(&amp;B)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="464"/>
+        <source>&amp;Italic</source>
+        <translation>斜体(&amp;I)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="474"/>
+        <source>&amp;Underline</source>
+        <translation>下划线(&amp;U)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="512"/>
+        <source>&amp;Left</source>
+        <translation>左对齐(&amp;L)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="518"/>
+        <source>C&amp;enter</source>
+        <translation>居中(&amp;E)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="524"/>
+        <source>&amp;Right</source>
+        <translation>右对齐(&amp;R)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="530"/>
+        <source>&amp;Justify</source>
+        <translation>两端对齐(&amp;J)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="540"/>
+        <source>&amp;Settings</source>
+        <translation>设置(&amp;S)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="543"/>
+        <source>Set &amp;fixed font</source>
+        <translation>设置等宽字体(&amp;F)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="548"/>
+        <source>Set &amp;variable font</source>
+        <translation>设置非等宽字体(&amp;V)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="553"/>
+        <source>&amp;fixed font is default</source>
+        <translation>默认使用等宽字体(&amp;F)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="704"/>
+        <source>Export Note to single file</source>
+        <translation>导出注解至文件</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="724"/>
+        <location filename="../texteditor.cpp" line="800"/>
+        <source>Overwrite</source>
+        <translation>覆盖</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="725"/>
+        <location filename="../texteditor.cpp" line="801"/>
+        <source>Cancel</source>
+        <translation>取消</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="785"/>
+        <source>Export Note to single file (ASCII)</source>
+        <translation>导出注解至文件(ASCII)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="828"/>
+        <source>Print</source>
+        <comment>TextEditor</comment>
+        <translation type="unfinished">打印</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="488"/>
+        <source>Subs&amp;cript</source>
+        <translation>下标(&amp;C)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="49"/>
+        <source>Text Editor</source>
+        <comment>Text Editor Window caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="498"/>
+        <source>Su&amp;perscript</source>
+        <translation>上标(&amp;P)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="566"/>
+        <source>Note Editor</source>
+        <translation>注解编辑器</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="392"/>
+        <source>F&amp;ormat</source>
+        <translation>格式(&amp;O)</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="326"/>
+        <source>Edit Actions</source>
+        <translation>编辑工具栏</translation>
+    </message>
+    <message>
+        <source>Format Actions</source>
+        <translation type="obsolete">格式工具栏</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="267"/>
+        <source>Note Actions</source>
+        <translation>注解</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="48"/>
+        <source>Ready</source>
+        <comment>Statusbar message</comment>
+        <translation>就绪</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="174"/>
+        <source>No filename available for this note.</source>
+        <comment>Statusbar message</comment>
+        <translation>该注解无可用文件名</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation type="obsolete">注解编辑器</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="269"/>
+        <source>&amp;Note</source>
+        <comment>Menubar</comment>
+        <translation>注解(&amp;N)</translation>
+    </message>
+    <message>
+        <source>Import</source>
+        <comment>Status tip for Note menu</comment>
+        <translation type="obsolete">导入</translation>
+    </message>
+    <message>
+        <source>Export Note (HTML)</source>
+        <comment>Status tip for Note menu</comment>
+        <translation type="obsolete">导出注解(HTML)</translation>
+    </message>
+    <message>
+        <source>Export Note As (HTML) </source>
+        <comment>Status tip for Note Menu</comment>
+        <translation type="obsolete">导出注解为 (HTML)    </translation>
+    </message>
+    <message>
+        <source>Export Note As (ASCII) </source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">导出注解为 (ASCII)   </translation>
+    </message>
+    <message>
+        <source>Print Note</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">打印注解</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">撤销</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">重做</translation>
+    </message>
+    <message>
+        <source>Select and copy all</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">选择并复制全部</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">复制</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">剪切</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">粘贴</translation>
+    </message>
+    <message>
+        <source>Delete all</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">删除全部</translation>
+    </message>
+    <message>
+        <source>Toggle font hint for the whole text</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">切换全文字体微调状态</translation>
+    </message>
+    <message>
+        <source>Set fixed font</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">设置等宽字体</translation>
+    </message>
+    <message>
+        <source>Set variable font</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">设置非等宽字体</translation>
+    </message>
+    <message>
+        <source>Used fixed font by default</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">默认使用等宽字体</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="719"/>
+        <location filename="../texteditor.cpp" line="795"/>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation>文件 %1 已存在。
+您希望覆盖它吗?</translation>
+    </message>
+    <message>
+        <location filename="../texteditor.cpp" line="743"/>
+        <source>Couldn&apos;t export note </source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation>无法导出注解        </translation>
+    </message>
+</context>
+<context>
+    <name>TreeEditor</name>
+    <message>
+        <location filename="../treeeditor.cpp" line="27"/>
+        <source>Select upper object</source>
+        <comment>Tree Editor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../treeeditor.cpp" line="33"/>
+        <source>Select lower object</source>
+        <comment>Tree Editor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>VymModel</name>
+    <message>
+        <location filename="../vymmodel.cpp" line="126"/>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="149"/>
+        <source>unnamed</source>
+        <translation type="unfinished">未命名</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="445"/>
+        <location filename="../vymmodel.cpp" line="481"/>
+        <location filename="../vymmodel.cpp" line="566"/>
+        <location filename="../vymmodel.cpp" line="622"/>
+        <source>Critical Parse Error</source>
+        <translation type="unfinished">严重解析错误</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="501"/>
+        <location filename="../vymmodel.cpp" line="551"/>
+        <source>Critical Load Error</source>
+        <translation type="unfinished">严重载入错误</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="502"/>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation type="unfinished">无法在载入前创建临时目录
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="552"/>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="unfinished">无法在 .vym 存档中找到导图(*.xml)。
+</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="980"/>
+        <source>unknown user</source>
+        <comment>Default for lockfiles of maps</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1003"/>
+        <source>Warning: Map already opended</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="671"/>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="unfinished">导图 %1
+未使用 vym 压缩文件格式。
+如果写入的话,图象与标记都会写入,这可能导致
+指定目录中的文件被覆盖。
+
+您希望写入导图吗</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="679"/>
+        <source>compressed (vym default)</source>
+        <translation type="unfinished">压缩(vym 默认)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="680"/>
+        <source>uncompressed</source>
+        <translation type="unfinished">未压缩</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="681"/>
+        <location filename="../vymmodel.cpp" line="864"/>
+        <source>Cancel</source>
+        <translation type="unfinished">取消</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="710"/>
+        <location filename="../vymmodel.cpp" line="715"/>
+        <source>Save Error</source>
+        <translation type="unfinished">保存错误</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="711"/>
+        <source>%1
+could not be removed before saving</source>
+        <translation type="unfinished">%1
+在保存时不能移除</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="716"/>
+        <source>%1
+could not be renamed before saving</source>
+        <translation type="unfinished">%1
+在保存时不能重命名</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="728"/>
+        <source>Critical Save Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="729"/>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation type="unfinished">无法在保存前创建临时目录</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <location filename="../vymmodel.cpp" line="5783"/>
+        <source>Images</source>
+        <translation type="unfinished">图象</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="787"/>
+        <location filename="../vymmodel.cpp" line="840"/>
+        <source>All</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="792"/>
+        <source>Load image</source>
+        <translation type="unfinished">载入图象</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="844"/>
+        <source>Save image</source>
+        <translation type="unfinished">保存图象</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="856"/>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="unfinished">文件 %1 已存在。
+您希望覆盖它吗? {1 ?}</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="863"/>
+        <source>Overwrite</source>
+        <translation type="unfinished">覆盖</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Critical Error</source>
+        <translation type="unfinished">严重错误</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="878"/>
+        <source>Unsupported format in %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="880"/>
+        <source>Couldn&apos;t save %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Critical Import Error</source>
+        <translation type="unfinished">严重导入错误</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="910"/>
+        <source>Cannot find the directory %1</source>
+        <translation type="unfinished">无法找到目录 %1</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="962"/>
+        <location filename="../vymmodel.cpp" line="965"/>
+        <source>Choose directory structure to import</source>
+        <translation type="unfinished">请选择要导入的目录结构</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="999"/>
+        <source>Map seems to be already opened in another vym instance!
+
+ Map is locked by &quot;%1&quot; on &quot;%2&quot;
+
+Please only delete the lockfile, if you are sure nobody else is currently working on this map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1008"/>
+        <source>Removed lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1014"/>
+        <source>Couldn&apos;t remove lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1021"/>
+        <source>Cannot create lockfile of map! It will be opened in readonly mode.
+
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1024"/>
+        <source>Warning</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished">警告</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1116"/>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation type="unfinished">在磁盘上的导图文件发生了更改:
+
+%1
+
+您想要从新文件中重新载入吗?</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1123"/>
+        <source>Reload</source>
+        <translation type="unfinished">重新载入</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1124"/>
+        <source>Ignore</source>
+        <translation type="unfinished">忽略</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1013"/>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Warning</source>
+        <translation type="unfinished">警告</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1239"/>
+        <source>Redo failed:
+%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="1274"/>
+        <source>Autosave disabled during undo.</source>
+        <translation type="unfinished">在撤消时禁用自动保存。</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2001"/>
+        <source>Note</source>
+        <comment>FindAll in VymModel</comment>
+        <translation type="unfinished">注解</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2725"/>
+        <source>Image</source>
+        <comment>Default name for new image</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="2958"/>
+        <source>New map</source>
+        <comment>New map</comment>
+        <translation type="unfinished">新建导图</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5148"/>
+        <source>Script aborted:
+%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation type="obsolete">请输入 URL:</translation>
+    </message>
+    <message>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">文本</translation>
+    </message>
+    <message>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">电子表格</translation>
+    </message>
+    <message>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">文本文档</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">图象</translation>
+    </message>
+    <message>
+        <source>Set URL to a local file</source>
+        <translation type="obsolete">设置到本地文档的 URL</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="3822"/>
+        <source>Contacting Bugzilla...</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation type="obsolete">至另一导图的链接</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5185"/>
+        <source>Export map as image</source>
+        <translation type="unfinished">将导图导出为图象</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5200"/>
+        <source>Couldn&apos;t save QImage %1 in format %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5225"/>
+        <source>Export map as PDF</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5280"/>
+        <source>Export map as SVG</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5314"/>
+        <source>Export map as XML</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5321"/>
+        <source>Export XML to directory</source>
+        <translation type="unfinished">导出 XML 至目录</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5367"/>
+        <source>Critical Export Error</source>
+        <translation type="unfinished">严重导出错误</translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">导出为 LaTeX</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>(still experimental)</source>
+        <translation type="unfinished">(仍处于试验阶段)</translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5449"/>
+        <source>Export as csv</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymmodel.cpp" line="5786"/>
+        <source>Load background image</source>
+        <translation type="unfinished">载入背景图像</translation>
+    </message>
+</context>
+<context>
+    <name>VymProcess</name>
+    <message>
+        <location filename="../vymprocess.cpp" line="43"/>
+        <location filename="../vymprocess.cpp" line="48"/>
+        <source>Critical Error</source>
+        <translation type="unfinished">严重错误</translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="44"/>
+        <source>Could not start %1</source>
+        <translation type="unfinished">无法启动 %1</translation>
+    </message>
+    <message>
+        <location filename="../vymprocess.cpp" line="49"/>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="unfinished">%1 未正常退出</translation>
+    </message>
+</context>
+<context>
+    <name>VymView</name>
+    <message>
+        <location filename="../vymview.cpp" line="34"/>
+        <source>Tree Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../vymview.cpp" line="52"/>
+        <source>Slide Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>WarningDialog</name>
+    <message>
+        <source>VYM - Warning : Foo...</source>
+        <translation type="obsolete">VYM - 警告:Foo...</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="14"/>
+        <source>Dialog</source>
+        <translation type="unfinished">对话框</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="91"/>
+        <source>showAgainBox</source>
+        <translation>再次提醒</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="117"/>
+        <location filename="../warningdialog.cpp" line="45"/>
+        <source>Cancel</source>
+        <translation>取消</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.ui" line="124"/>
+        <source>Ok</source>
+        <translation>确定</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="10"/>
+        <source>Proceed</source>
+        <translation>进行</translation>
+    </message>
+    <message>
+        <location filename="../warningdialog.cpp" line="12"/>
+        <source>Show this message again</source>
+        <translation>再次显示这条消息</translation>
+    </message>
+</context>
+</TS>
diff --git a/lang/vym.zh_TW.ts b/lang/vym.zh_TW.ts
new file mode 100644 (file)
index 0000000..04ef445
--- /dev/null
@@ -0,0 +1,4571 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1">
+<context>
+    <name>AboutDialog</name>
+    <message>
+        <source>Ok</source>
+        <translation type="obsolete">確定</translation>
+    </message>
+    <message>
+        <source>Ok</source>
+        <comment>Ok Button</comment>
+        <translation type="unfinished">確定</translation>
+    </message>
+    <message>
+        <source>Credits</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>License</source>
+        <comment>Help-&gt;About vym dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>AboutTextBrowser</name>
+    <message>
+        <source>Warning</source>
+        <comment>About window</comment>
+        <translation type="unfinished">警告</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <comment>About window</comment>
+        <translation type="unfinished">找不到檢視器以開啟 %1。</translation>
+    </message>
+    <message>
+        <source>Please use Settings-&gt;</source>
+        <translation type="unfinished">請使用 設定值-&gt;</translation>
+    </message>
+    <message>
+        <source>Set application to open an URL...</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyEditor</name>
+    <message>
+        <source>Branch Property Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Frame</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Geometry</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <translation type="unfinished">無圖框</translation>
+    </message>
+    <message>
+        <source>Rectangle</source>
+        <translation type="unfinished">矩形</translation>
+    </message>
+    <message>
+        <source>Rounded Rectangle</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Ellipse</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cloud</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Padding</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Borderline width</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Include children</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Colors</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Borderline color</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Background color</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Layout</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <translation type="unfinished">水平地含入圖像</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <translation type="unfinished">垂直地含入圖像</translation>
+    </message>
+    <message>
+        <source>Link</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Hide link if unselected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Attributes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>-</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Property Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Free positioning of children (experimental!)</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>BranchPropertyWindow</name>
+    <message>
+        <source>No Frame</source>
+        <translation type="obsolete">無圖框</translation>
+    </message>
+    <message>
+        <source>Rectangle</source>
+        <translation type="obsolete">矩形</translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <translation type="obsolete">水平地含入圖像</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <translation type="obsolete">垂直地含入圖像</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">關閉</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadAgent</name>
+    <message>
+        <source>Warning</source>
+        <translation type="unfinished">警告</translation>
+    </message>
+</context>
+<context>
+    <name>EditXLinkDialog</name>
+    <message>
+        <source>Edit XLink</source>
+        <translation>編輯 XLink</translation>
+    </message>
+    <message>
+        <source>XLink width:</source>
+        <translation>XLink 寬度:</translation>
+    </message>
+    <message>
+        <source>Set color of heading</source>
+        <translation type="obsolete">設定標頭的顏色</translation>
+    </message>
+    <message>
+        <source>XLink color:</source>
+        <translation>XLink 顏色:</translation>
+    </message>
+    <message>
+        <source>Use as default:</source>
+        <translation>做為預設:</translation>
+    </message>
+    <message>
+        <source>Delete XLink</source>
+        <translation type="obsolete">刪除 XLink</translation>
+    </message>
+    <message>
+        <source>Ok</source>
+        <translation type="obsolete">確定</translation>
+    </message>
+    <message>
+        <source>Use color of heading</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Line style:</source>
+        <extracomment>Linestyle in Edit XLink dialog</extracomment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Arrow begin:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Arrow end:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="unfinished">關閉</translation>
+    </message>
+</context>
+<context>
+    <name>ExportHTMLDialog</name>
+    <message>
+        <source>Export HTML</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export to directory:</source>
+        <translation type="unfinished">匯出至目錄:</translation>
+    </message>
+    <message>
+        <source>Browse</source>
+        <translation type="unfinished">瀏覽</translation>
+    </message>
+    <message>
+        <source>Options</source>
+        <translation type="unfinished">選項</translation>
+    </message>
+    <message>
+        <source>Include image</source>
+        <translation type="obsolete">包含圖像</translation>
+    </message>
+    <message>
+        <source>Colored headings in text</source>
+        <translation type="unfinished">文字中著色的標頭</translation>
+    </message>
+    <message>
+        <source>Save settings in map</source>
+        <translation type="unfinished">在圖中儲存設定值</translation>
+    </message>
+    <message>
+        <source>show output of external scripts</source>
+        <translation type="obsolete">顯示外部命令稿的輸出</translation>
+    </message>
+    <message>
+        <source>Stylesheets</source>
+        <translation type="unfinished">樣式表</translation>
+    </message>
+    <message>
+        <source>CSS:</source>
+        <translation type="obsolete">CSS:</translation>
+    </message>
+    <message>
+        <source>Scripts</source>
+        <translation type="unfinished">命令稿</translation>
+    </message>
+    <message>
+        <source>After Export:</source>
+        <translation type="unfinished">匯出之後:</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">取消</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <translation type="unfinished">匯出</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="unfinished">警告</translation>
+    </message>
+    <message>
+        <source>The settings saved in the map would like to run script:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>VYM - Export HTML to directory</source>
+        <translation type="unfinished">VYM - 匯出 HTML 到目錄</translation>
+    </message>
+    <message>
+        <source>Image of map</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Table of contents</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Task flags</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>General flags</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Number sections</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Copy CSS from </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Use CSS from</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Include images</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>ExportXHTMLDialog</name>
+    <message>
+        <source>Export XHTML</source>
+        <translation type="obsolete">匯出 XHTML</translation>
+    </message>
+    <message>
+        <source>Browse</source>
+        <translation type="obsolete">瀏覽</translation>
+    </message>
+    <message>
+        <source>Options</source>
+        <translation type="obsolete">選項</translation>
+    </message>
+    <message>
+        <source>Include image</source>
+        <translation type="obsolete">包含圖像</translation>
+    </message>
+    <message>
+        <source>show output of external scripts</source>
+        <translation type="obsolete">顯示外部命令稿的輸出</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <translation type="obsolete">匯出</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">取消</translation>
+    </message>
+    <message>
+        <source>VYM - Export HTML to directory</source>
+        <translation type="obsolete">VYM - 匯出 HTML 到目錄</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">嚴重錯誤</translation>
+    </message>
+    <message>
+        <source>Export to directory:</source>
+        <translation type="obsolete">匯出至目錄:</translation>
+    </message>
+    <message>
+        <source>Colored headings in text</source>
+        <translation type="obsolete">文字中著色的標頭</translation>
+    </message>
+    <message>
+        <source>showWarnings e.g. if directory is not empty</source>
+        <translation type="obsolete">showWarnings 例如:如果目錄並非為空</translation>
+    </message>
+    <message>
+        <source>Stylesheets</source>
+        <translation type="obsolete">樣式表</translation>
+    </message>
+    <message>
+        <source>CSS:</source>
+        <translation type="obsolete">CSS:</translation>
+    </message>
+    <message>
+        <source>XSL:</source>
+        <translation type="obsolete">XSL:</translation>
+    </message>
+    <message>
+        <source>VYM - Path to CSS file</source>
+        <translation type="obsolete">VYM - 到 CSS 檔案的路徑</translation>
+    </message>
+    <message>
+        <source>VYM - Path to XSL file</source>
+        <translation type="obsolete">VYM - 到 XSL 檔案的路徑</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="obsolete">警告</translation>
+    </message>
+    <message>
+        <source>Save settings in map</source>
+        <translation type="obsolete">在圖中儲存設定值</translation>
+    </message>
+    <message>
+        <source>Scripts</source>
+        <translation type="obsolete">命令稿</translation>
+    </message>
+    <message>
+        <source>Before export:</source>
+        <translation type="obsolete">匯出之前:</translation>
+    </message>
+    <message>
+        <source>After Export:</source>
+        <translation type="obsolete">匯出之後:</translation>
+    </message>
+    <message>
+        <source>VYM - Path to pre export script</source>
+        <translation type="obsolete">VYM - 到匯出前命令稿的路徑</translation>
+    </message>
+    <message>
+        <source>VYM - Path to post export script</source>
+        <translation type="obsolete">VYM - 到匯出後命令稿的路徑</translation>
+    </message>
+    <message>
+        <source>The settings saved in the map would like to run scripts:
+
+%1
+
+Please check, if you really
+want to allow this in your system!</source>
+        <translation type="obsolete">在圖中儲存的設定值想要執行命令稿:
+
+%1
+
+請檢查一下,是否真的允許在您的系統中如此做!</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <translation type="obsolete">無法開啟 %1</translation>
+    </message>
+    <message>
+        <source>Could not write %1</source>
+        <translation type="obsolete">無法寫入 %1</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation type="obsolete">無法開啟 %1</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="obsolete">%1 並未正常離開</translation>
+    </message>
+</context>
+<context>
+    <name>ExtraInfoDialog</name>
+    <message>
+        <source>VYM - Info</source>
+        <translation>VYM - 資訊</translation>
+    </message>
+    <message>
+        <source>Map:</source>
+        <translation>圖譜:</translation>
+    </message>
+    <message>
+        <source>Author:</source>
+        <translation>作者:</translation>
+    </message>
+    <message>
+        <source>Comment:</source>
+        <translation>註釋:</translation>
+    </message>
+    <message>
+        <source>Statistics:</source>
+        <translation>統計:</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>取消</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation>關閉</translation>
+    </message>
+    <message>
+        <source>Title:</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>FindWidget</name>
+    <message>
+        <source>Find:</source>
+        <comment>FindWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>FindWindow</name>
+    <message>
+        <source>Clear</source>
+        <translation type="obsolete">清空</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">取消</translation>
+    </message>
+    <message>
+        <source>Find</source>
+        <translation type="obsolete">尋找</translation>
+    </message>
+    <message>
+        <source>Find Text</source>
+        <translation type="obsolete">尋找文字</translation>
+    </message>
+</context>
+<context>
+    <name>Heading of mapcenter in new map</name>
+    <message>
+        <source>New map</source>
+        <translation type="obsolete">新圖譜</translation>
+    </message>
+</context>
+<context>
+    <name>HeadingEditor</name>
+    <message>
+        <source>Heading Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HistoryWindow</name>
+    <message>
+        <source>Dialog</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished">重做</translation>
+    </message>
+    <message>
+        <source>Time</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Comment</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished">復原</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="unfinished">關閉</translation>
+    </message>
+    <message>
+        <source>Action</source>
+        <comment>Table with actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Comment</source>
+        <comment>Table with actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Undo action</source>
+        <comment>Table with actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Current state</source>
+        <comment>Current bar in history hwindow</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>LineEditDialog</name>
+    <message>
+        <source>Dialog</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>TextLabel</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">取消</translation>
+    </message>
+    <message>
+        <source>Ok</source>
+        <translation type="unfinished">確定</translation>
+    </message>
+</context>
+<context>
+    <name>LockedFileDialog</name>
+    <message>
+        <source>Dialog</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Delete lockfile</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Open readonly</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Main</name>
+    <message>
+        <source>&amp;File</source>
+        <translation type="obsolete">檔案(&amp;F)</translation>
+    </message>
+    <message>
+        <source>&amp;New...</source>
+        <translation type="obsolete">新增(&amp;N)…</translation>
+    </message>
+    <message>
+        <source>&amp;Open...</source>
+        <translation type="obsolete">開啟(&amp;O)…</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <translation type="obsolete">儲存</translation>
+    </message>
+    <message>
+        <source>&amp;Save...</source>
+        <translation type="obsolete">儲存(&amp;S)…</translation>
+    </message>
+    <message>
+        <source>Save &amp;As...</source>
+        <translation type="obsolete">另存新檔(&amp;A)…</translation>
+    </message>
+    <message>
+        <source>Import directory structure (experimental)</source>
+        <translation type="obsolete">匯入目錄結構 (實驗性質)</translation>
+    </message>
+    <message>
+        <source>Print</source>
+        <translation type="obsolete">列印</translation>
+    </message>
+    <message>
+        <source>Close Map</source>
+        <translation type="obsolete">關閉圖譜</translation>
+    </message>
+    <message>
+        <source>&amp;Close Map</source>
+        <translation type="obsolete">關閉圖譜(&amp;C)</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <translation type="obsolete">編輯(&amp;E)</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <translation type="obsolete">復原</translation>
+    </message>
+    <message>
+        <source>&amp;Undo</source>
+        <translation type="obsolete">復原(&amp;U)</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <translation type="obsolete">複製</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <translation type="obsolete">複製(&amp;C)</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="obsolete">剪下</translation>
+    </message>
+    <message>
+        <source>Cu&amp;t</source>
+        <translation type="obsolete">剪下(&amp;T)</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <translation type="obsolete">貼上</translation>
+    </message>
+    <message>
+        <source>&amp;Paste</source>
+        <translation type="obsolete">貼上(&amp;P)</translation>
+    </message>
+    <message>
+        <source>Move branch up</source>
+        <translation type="obsolete">向上移動分支</translation>
+    </message>
+    <message>
+        <source>Move up</source>
+        <translation type="obsolete">向上移動</translation>
+    </message>
+    <message>
+        <source>Move branch down</source>
+        <translation type="obsolete">向下移動分支</translation>
+    </message>
+    <message>
+        <source>Move down</source>
+        <translation type="obsolete">向下移動</translation>
+    </message>
+    <message>
+        <source>Scroll branch</source>
+        <translation type="obsolete">捲曲分支</translation>
+    </message>
+    <message>
+        <source>Unscroll all</source>
+        <translation type="obsolete">復原所有捲曲</translation>
+    </message>
+    <message>
+        <source>Unscroll all scrolled branches</source>
+        <translation type="obsolete">復原所有已捲曲的分支</translation>
+    </message>
+    <message>
+        <source>Find</source>
+        <translation type="obsolete">尋找</translation>
+    </message>
+    <message>
+        <source>Find...</source>
+        <translation type="obsolete">尋找…</translation>
+    </message>
+    <message>
+        <source>Open URL</source>
+        <translation type="obsolete">開啟 URL</translation>
+    </message>
+    <message>
+        <source>Edit URL</source>
+        <translation type="obsolete">編輯 URL</translation>
+    </message>
+    <message>
+        <source>Edit URL...</source>
+        <translation type="obsolete">編輯 URL…</translation>
+    </message>
+    <message>
+        <source>Use heading of selected branch as URL</source>
+        <translation type="obsolete">使用已選取分支的標頭做為 URL</translation>
+    </message>
+    <message>
+        <source>Use heading for URL</source>
+        <translation type="obsolete">使用標頭做為 URL</translation>
+    </message>
+    <message>
+        <source>Jump to another vym map, if needed load it first</source>
+        <translation type="obsolete">跳到另外的 vym 圖譜,如果有需要就先載入它</translation>
+    </message>
+    <message>
+        <source>Jump to map</source>
+        <translation type="obsolete">跳到圖譜</translation>
+    </message>
+    <message>
+        <source>Edit link to another vym map</source>
+        <translation type="obsolete">編輯到另外 vym 圖譜的連結</translation>
+    </message>
+    <message>
+        <source>edit Heading</source>
+        <translation type="obsolete">編輯標頭</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <translation type="obsolete">編輯標頭</translation>
+    </message>
+    <message>
+        <source>Delete Selection</source>
+        <translation type="obsolete">刪除選擇</translation>
+    </message>
+    <message>
+        <source>Add a branch as child of selection</source>
+        <translation type="obsolete">加入分支做為所選子項</translation>
+    </message>
+    <message>
+        <source>Add branch as child</source>
+        <translation type="obsolete">加入分支做為子項</translation>
+    </message>
+    <message>
+        <source>Add a branch above selection</source>
+        <translation type="obsolete">在所選之上加入分支</translation>
+    </message>
+    <message>
+        <source>Add branch above</source>
+        <translation type="obsolete">在上方加入分支</translation>
+    </message>
+    <message>
+        <source>Add a branch below selection</source>
+        <translation type="obsolete">在所選之下加入分支</translation>
+    </message>
+    <message>
+        <source>Add branch below</source>
+        <translation type="obsolete">在下方加入分支</translation>
+    </message>
+    <message>
+        <source>Select upper branch</source>
+        <translation type="obsolete">選取上層分支</translation>
+    </message>
+    <message>
+        <source>Select lower branch</source>
+        <translation type="obsolete">選取下層分支</translation>
+    </message>
+    <message>
+        <source>Select left branch</source>
+        <translation type="obsolete">選取左側分支</translation>
+    </message>
+    <message>
+        <source>Select right branch</source>
+        <translation type="obsolete">選取右側分支</translation>
+    </message>
+    <message>
+        <source>Select child branch</source>
+        <translation type="obsolete">選取子分支</translation>
+    </message>
+    <message>
+        <source>Select first branch</source>
+        <translation type="obsolete">選取首項分支</translation>
+    </message>
+    <message>
+        <source>Select last branch</source>
+        <translation type="obsolete">選取末項分支</translation>
+    </message>
+    <message>
+        <source>Add Image</source>
+        <translation type="obsolete">加入圖像</translation>
+    </message>
+    <message>
+        <source>Set Color</source>
+        <translation type="obsolete">設定顏色</translation>
+    </message>
+    <message>
+        <source>Set &amp;Color</source>
+        <translation>設定顏色(&amp;C)</translation>
+    </message>
+    <message>
+        <source>Pick color
+Hint: You can pick a color from another branch and color using CTRL+Left Button</source>
+        <translation type="obsolete">揀取顏色
+提示:您可以使用 CTRL+Left 按鈕,從另外的分支和顏色去揀取顏色</translation>
+    </message>
+    <message>
+        <source>Pic&amp;k color</source>
+        <translation type="obsolete">揀取顏色(&amp;K)</translation>
+    </message>
+    <message>
+        <source>Color branch</source>
+        <translation type="obsolete">顏色分支</translation>
+    </message>
+    <message>
+        <source>Color &amp;branch</source>
+        <translation type="obsolete">顏色分支(&amp;B)</translation>
+    </message>
+    <message>
+        <source>Color Subtree</source>
+        <translation type="obsolete">顏色子樹</translation>
+    </message>
+    <message>
+        <source>Color sub&amp;tree</source>
+        <translation type="obsolete">顏色子樹(&amp;T)</translation>
+    </message>
+    <message>
+        <source>Line</source>
+        <translation type="obsolete">直線</translation>
+    </message>
+    <message>
+        <source>Linkstyle Line</source>
+        <translation>連結樣式 直線</translation>
+    </message>
+    <message>
+        <source>Linkstyle Parabel</source>
+        <translation type="obsolete">連結樣式 拋物線</translation>
+    </message>
+    <message>
+        <source>PolyLine</source>
+        <translation type="obsolete">多重直線</translation>
+    </message>
+    <message>
+        <source>Linkstyle Thick Line</source>
+        <translation>連結樣式 粗線</translation>
+    </message>
+    <message>
+        <source>PolyParabel</source>
+        <translation type="obsolete">多重拋物線</translation>
+    </message>
+    <message>
+        <source>Linkstyle Thick Parabel</source>
+        <translation type="obsolete">連結樣式 粗拋物線</translation>
+    </message>
+    <message>
+        <source>No Frame</source>
+        <translation type="obsolete">無圖框</translation>
+    </message>
+    <message>
+        <source>Rectangle</source>
+        <translation type="obsolete">矩形</translation>
+    </message>
+    <message>
+        <source>Use same color for links and headings</source>
+        <translation type="obsolete">使用相同顏色做為連結和標頭</translation>
+    </message>
+    <message>
+        <source>&amp;Use color of heading for link</source>
+        <translation type="obsolete">使用標頭的顏色做為連結(&amp;U)</translation>
+    </message>
+    <message>
+        <source>Set Link Color</source>
+        <translation type="obsolete">設定連結顏色</translation>
+    </message>
+    <message>
+        <source>Set &amp;Link Color...</source>
+        <translation type="obsolete">設定連結顏色(&amp;L)…</translation>
+    </message>
+    <message>
+        <source>Set Background Color</source>
+        <translation type="obsolete">設定背景顏色</translation>
+    </message>
+    <message>
+        <source>Set &amp;Background Color</source>
+        <translation>設定背景顏色(&amp;B)</translation>
+    </message>
+    <message>
+        <source>&amp;View</source>
+        <translation>檢視(&amp;V)</translation>
+    </message>
+    <message>
+        <source>Zoom reset</source>
+        <translation type="obsolete">重置縮放</translation>
+    </message>
+    <message>
+        <source>reset Zoom</source>
+        <translation type="obsolete">重置縮放</translation>
+    </message>
+    <message>
+        <source>Zoom in</source>
+        <translation type="obsolete">放大</translation>
+    </message>
+    <message>
+        <source>Zoom out</source>
+        <translation type="obsolete">縮小</translation>
+    </message>
+    <message>
+        <source>&amp;Next Window</source>
+        <translation type="obsolete">下一個視窗(&amp;N)</translation>
+    </message>
+    <message>
+        <source>Next Window</source>
+        <translation type="obsolete">下一個視窗</translation>
+    </message>
+    <message>
+        <source>&amp;Previous Window</source>
+        <translation type="obsolete">前一個視窗(&amp;P)</translation>
+    </message>
+    <message>
+        <source>Previous Window</source>
+        <translation type="obsolete">前一個視窗</translation>
+    </message>
+    <message>
+        <source>&amp;Settings</source>
+        <translation type="obsolete">設定值(&amp;S)</translation>
+    </message>
+    <message>
+        <source>Set application to open pdf files</source>
+        <translation type="obsolete">設定開啟 pdf 檔案的應用程式</translation>
+    </message>
+    <message>
+        <source>Set application to open an URL</source>
+        <translation>設定開啟 URL 的應用程式</translation>
+    </message>
+    <message>
+        <source>Edit branch after adding it</source>
+        <translation type="obsolete">加入分支之後編輯它</translation>
+    </message>
+    <message>
+        <source>Select branch after adding it</source>
+        <translation type="obsolete">加入分支之後選取它</translation>
+    </message>
+    <message>
+        <source>Select heading before editing</source>
+        <translation type="obsolete">編輯標頭之前選取它</translation>
+    </message>
+    <message>
+        <source>Select existing heading</source>
+        <translation type="obsolete">選取現有標頭</translation>
+    </message>
+    <message>
+        <source>&amp;Test</source>
+        <translation type="obsolete">測試(&amp;T)</translation>
+    </message>
+    <message>
+        <source>test flag</source>
+        <translation type="obsolete">測試旗標</translation>
+    </message>
+    <message>
+        <source>&amp;Help</source>
+        <translation type="obsolete">求助(&amp;H)</translation>
+    </message>
+    <message>
+        <source>Open VYM Documentation (pdf)</source>
+        <translation type="obsolete">開啟 VYM 文件 (pdf)</translation>
+    </message>
+    <message>
+        <source>About VYM</source>
+        <translation type="obsolete">關於 VYM</translation>
+    </message>
+    <message>
+        <source>Information about QT toolkit</source>
+        <translation type="obsolete">關於 QT 工具組的資訊</translation>
+    </message>
+    <message>
+        <source>About QT</source>
+        <translation type="obsolete">關於 QT</translation>
+    </message>
+    <message>
+        <source>Save image</source>
+        <translation type="obsolete">儲存圖像</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation>覆寫</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>取消</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save </source>
+        <translation>無法儲存 </translation>
+    </message>
+    <message>
+        <source>Save modified map before closing it</source>
+        <translation>關閉已修改圖譜之前儲存它</translation>
+    </message>
+    <message>
+        <source>Discard changes</source>
+        <translation>捨棄變更</translation>
+    </message>
+    <message>
+        <source>This map is not saved yet. Do you want to</source>
+        <translation type="obsolete">此圖譜尚未儲存。您想要</translation>
+    </message>
+    <message>
+        <source>Save map</source>
+        <translation type="obsolete">儲存圖譜</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation>嚴重錯誤</translation>
+    </message>
+    <message>
+        <source>Save &amp;As</source>
+        <translation type="obsolete">另存新檔(&amp;A)</translation>
+    </message>
+    <message>
+        <source>Open Recent</source>
+        <translation type="obsolete">開啟最近使用</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <translation type="obsolete">匯出</translation>
+    </message>
+    <message>
+        <source>Edit Map Info</source>
+        <translation type="obsolete">編輯圖譜資訊</translation>
+    </message>
+    <message>
+        <source>Edit Map Info...</source>
+        <translation type="obsolete">編輯圖譜資訊…</translation>
+    </message>
+    <message>
+        <source>Open anyway</source>
+        <translation>無論如何都開啟</translation>
+    </message>
+    <message>
+        <source>Export XML to directory</source>
+        <translation type="obsolete">匯出 XML 到目錄</translation>
+    </message>
+    <message>
+        <source>Critcal error</source>
+        <translation>嚴重錯誤</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find the documentation
+vym.pdf in various places.</source>
+        <translation type="obsolete">在各處都找不到文件 vym.pdf。</translation>
+    </message>
+    <message>
+        <source>Create</source>
+        <translation>建立</translation>
+    </message>
+    <message>
+        <source>Create URL to Bugzilla</source>
+        <translation type="obsolete">建立到 Bugzilla 的 URL</translation>
+    </message>
+    <message>
+        <source>Delete link to another vym map</source>
+        <translation type="obsolete">刪除到另外 vym 圖譜的連結</translation>
+    </message>
+    <message>
+        <source>Edit vym link</source>
+        <translation type="obsolete">編輯 vym 連結</translation>
+    </message>
+    <message>
+        <source>Edit vym link...</source>
+        <translation type="obsolete">編輯 vym 連結…</translation>
+    </message>
+    <message>
+        <source>Delete vym link</source>
+        <translation type="obsolete">刪除 vym 連結</translation>
+    </message>
+    <message>
+        <source>Critical Load Error</source>
+        <translation type="obsolete">嚴重的載入錯誤</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="obsolete">在 .vym 檔案夾中找不到圖譜 (*.xml)。</translation>
+    </message>
+    <message>
+        <source>VYM -Information:</source>
+        <translation>VYM - 資訊:</translation>
+    </message>
+    <message>
+        <source>compressed (vym default)</source>
+        <translation type="obsolete">已壓縮 (vym 預設)</translation>
+    </message>
+    <message>
+        <source>uncompressed</source>
+        <translation type="obsolete">未壓縮</translation>
+    </message>
+    <message>
+        <source>Add map at selection</source>
+        <translation type="obsolete">於所選處加入圖譜</translation>
+    </message>
+    <message>
+        <source>Replace selection with map</source>
+        <translation type="obsolete">以圖譜置換所選</translation>
+    </message>
+    <message>
+        <source>Save selection</source>
+        <translation type="obsolete">儲存所選</translation>
+    </message>
+    <message>
+        <source>Load vym map</source>
+        <translation>載入 vym 圖譜</translation>
+    </message>
+    <message>
+        <source>Import: Add vym map to selection</source>
+        <translation>匯入:加入 vym 圖譜到所選</translation>
+    </message>
+    <message>
+        <source>Import: Replace selection with vym map</source>
+        <translation>匯入:以 vym 圖譜置換所選</translation>
+    </message>
+    <message>
+        <source>Save Error</source>
+        <translation type="obsolete">儲存錯誤</translation>
+    </message>
+    <message>
+        <source>
+could not be removed before saving</source>
+        <translation type="obsolete">儲存之前無法移除</translation>
+    </message>
+    <message>
+        <source>Use modifier to color branches</source>
+        <translation type="obsolete">於顏色分支使用修飾鍵</translation>
+    </message>
+    <message>
+        <source>New map</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">新圖譜</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">開啟</translation>
+    </message>
+    <message>
+        <source>File Actions</source>
+        <translation type="obsolete">檔案動作</translation>
+    </message>
+    <message>
+        <source>Edit Actions</source>
+        <translation type="obsolete">編輯動作</translation>
+    </message>
+    <message>
+        <source>View Actions</source>
+        <translation type="obsolete">檢視動作</translation>
+    </message>
+    <message>
+        <source>Modes when using modifiers</source>
+        <translation type="obsolete">使用修飾鍵時模式</translation>
+    </message>
+    <message>
+        <source>Standard Flags</source>
+        <translation type="obsolete">標準旗標</translation>
+    </message>
+    <message>
+        <source>Add a branch by inserting and making selection its child</source>
+        <translation type="obsolete">藉由插入加入分支並選擇它的子項</translation>
+    </message>
+    <message>
+        <source>Add branch (insert)</source>
+        <translation type="obsolete">加入分支 (插入)</translation>
+    </message>
+    <message>
+        <source>Remove only branch and keep its childs</source>
+        <translation type="obsolete">只移除分支並保持它的子項</translation>
+    </message>
+    <message>
+        <source>Remove only branch </source>
+        <translation type="obsolete">只移除分支 </translation>
+    </message>
+    <message>
+        <source>Remove childs of branch</source>
+        <translation type="obsolete">移除分支的子項</translation>
+    </message>
+    <message>
+        <source>Remove childs</source>
+        <translation type="obsolete">移除子項</translation>
+    </message>
+    <message>
+        <source>Use modifier to copy</source>
+        <translation type="obsolete">使用修飾鍵去複製</translation>
+    </message>
+    <message>
+        <source>Add</source>
+        <translation>加入</translation>
+    </message>
+    <message>
+        <source>Remove</source>
+        <translation type="obsolete">移除</translation>
+    </message>
+    <message>
+        <source>Edit XLink</source>
+        <translation type="obsolete">編輯 XLink</translation>
+    </message>
+    <message>
+        <source>Goto XLink</source>
+        <translation type="obsolete">前往 XLink</translation>
+    </message>
+    <message>
+        <source>No xLink available</source>
+        <translation type="obsolete">沒有可用的 xLink</translation>
+    </message>
+    <message>
+        <source>Use modifier to draw xLinks</source>
+        <translation type="obsolete">使用修飾鍵去繪製 xLinks</translation>
+    </message>
+    <message>
+        <source>Use exclusive flags in flag toolbars</source>
+        <translation type="obsolete">在旗標工具列中使用互斥旗標</translation>
+    </message>
+    <message>
+        <source>Set application to open external links</source>
+        <translation type="obsolete">設定開啟外部連結的應用程式</translation>
+    </message>
+    <message>
+        <source>Pasting into new branch</source>
+        <translation type="obsolete">貼入新分支中</translation>
+    </message>
+    <message>
+        <source>pasting into new branch</source>
+        <translation type="obsolete">貼入新分支中</translation>
+    </message>
+    <message>
+        <source>Delete key for deleting branches</source>
+        <translation type="obsolete">用於刪除分支的刪除鍵</translation>
+    </message>
+    <message>
+        <source>Delete key</source>
+        <translation type="obsolete">刪除鍵</translation>
+    </message>
+    <message>
+        <source>Exclusive flags</source>
+        <translation type="obsolete">互斥旗標</translation>
+    </message>
+    <message>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <translation type="obsolete">目錄 %1 並未清空。
+您要冒險覆寫它的內容嗎?</translation>
+    </message>
+    <message>
+        <source>The map %1
+is already opened.Opening the same map in multiple editors may lead
+ to confusion when finishing working with vym.Do you want to</source>
+        <translation type="obsolete">圖譜 %1
+已經開啟。在多個編輯器中開啟相同圖譜,
+也許會在 vym 完成工作時造成困惑。您想要</translation>
+    </message>
+    <message>
+        <source>This map does not exist:
+  %1
+Do you want to create a new one?</source>
+        <translation>此圖譜不存在:
+  %1
+您要建立一個新的嗎?</translation>
+    </message>
+    <message>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="obsolete">圖譜 %1
+並未使用壓縮過的 vym 檔案格式。
+以未壓縮的方式寫入它將會寫入圖像和旗標,
+因而也許會覆寫給定目錄中的檔案。
+
+您要寫入圖譜</translation>
+    </message>
+    <message>
+        <source>Saved  %1</source>
+        <translation>已儲存  %1</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already. Do you want to</source>
+        <translation>檔案 %1
+已經存在。您想要</translation>
+    </message>
+    <message>
+        <source>The map %1 has been modified but not saved yet. Do you want to</source>
+        <translation>圖譜 %1 已被修改但尚未儲存。您想要</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open map %1</source>
+        <translation>無法開啟圖譜 %1</translation>
+    </message>
+    <message>
+        <source>Set application to open pdf files  ...</source>
+        <translation type="obsolete">設定開啟 pdf 檔案的應用程式…</translation>
+    </message>
+    <message>
+        <source>Set application to open external links...</source>
+        <translation type="obsolete">設定開啟外部連結的應用程式…</translation>
+    </message>
+    <message>
+        <source>Exit</source>
+        <translation type="obsolete">離開</translation>
+    </message>
+    <message>
+        <source>E&amp;xit</source>
+        <translation type="obsolete">離開(&amp;X)</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="obsolete">重做</translation>
+    </message>
+    <message>
+        <source>&amp;Redo</source>
+        <translation type="obsolete">重做(&amp;R)</translation>
+    </message>
+    <message>
+        <source>Create URL to FATE</source>
+        <translation type="obsolete">建立到 FATE 的 URL</translation>
+    </message>
+    <message>
+        <source>Include top and bottom position of images into branch</source>
+        <translation type="obsolete">在分支中含入圖像頂部和底部的位置</translation>
+    </message>
+    <message>
+        <source>Include images vertically</source>
+        <translation type="obsolete">垂直地含入圖像</translation>
+    </message>
+    <message>
+        <source>Include left and right position of images into branch</source>
+        <translation type="obsolete">在分支中含入圖像的左右位置</translation>
+    </message>
+    <message>
+        <source>Include images horizontally</source>
+        <translation type="obsolete">水平地含入圖像</translation>
+    </message>
+    <message>
+        <source>Hide link</source>
+        <translation type="obsolete">隱藏連結</translation>
+    </message>
+    <message>
+        <source>Hide link if object is not selected</source>
+        <translation type="obsolete">如果物件並未選取就隱藏連結</translation>
+    </message>
+    <message>
+        <source>Note</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">註記</translation>
+    </message>
+    <message>
+        <source>WWW Document (external)</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">WWW 文件 (外部)</translation>
+    </message>
+    <message>
+        <source>Link to another vym map</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">連結到另外的 vym 圖譜</translation>
+    </message>
+    <message>
+        <source>subtree is scrolled</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">子樹已捲曲</translation>
+    </message>
+    <message>
+        <source>subtree is temporary scrolled</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">子樹為暫時捲曲</translation>
+    </message>
+    <message>
+        <source>Take care!</source>
+        <comment>Standardflag</comment>
+        <translation>注意!</translation>
+    </message>
+    <message>
+        <source>Really?</source>
+        <comment>Standardflag</comment>
+        <translation>真的?</translation>
+    </message>
+    <message>
+        <source>ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">確定!</translation>
+    </message>
+    <message>
+        <source>Not ok!</source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">未定!</translation>
+    </message>
+    <message>
+        <source>This won&apos;t work!</source>
+        <comment>Standardflag</comment>
+        <translation>這不可行!</translation>
+    </message>
+    <message>
+        <source>Good</source>
+        <comment>Standardflag</comment>
+        <translation>良好</translation>
+    </message>
+    <message>
+        <source>Bad</source>
+        <comment>Standardflag</comment>
+        <translation>不好</translation>
+    </message>
+    <message>
+        <source>Time critical</source>
+        <comment>Standardflag</comment>
+        <translation>關鍵時間</translation>
+    </message>
+    <message>
+        <source>Idea!</source>
+        <comment>Standardflag</comment>
+        <translation>點子!</translation>
+    </message>
+    <message>
+        <source>Important</source>
+        <comment>Standardflag</comment>
+        <translation>重要</translation>
+    </message>
+    <message>
+        <source>Unimportant</source>
+        <comment>Standardflag</comment>
+        <translation>不重要</translation>
+    </message>
+    <message>
+        <source>I like this</source>
+        <comment>Standardflag</comment>
+        <translation>我喜歡</translation>
+    </message>
+    <message>
+        <source>I do not like this</source>
+        <comment>Standardflag</comment>
+        <translation>我不喜歡</translation>
+    </message>
+    <message>
+        <source>I just love... </source>
+        <comment>Standardflag</comment>
+        <translation type="obsolete">我就是喜愛…</translation>
+    </message>
+    <message>
+        <source>Dangerous</source>
+        <comment>Standardflag</comment>
+        <translation>危險</translation>
+    </message>
+    <message>
+        <source>This will help</source>
+        <comment>Standardflag</comment>
+        <translation>會有用處</translation>
+    </message>
+    <message>
+        <source>Call test function</source>
+        <translation type="obsolete">呼叫測試功能</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save %1</source>
+        <translation type="unfinished">無法儲存 %1</translation>
+    </message>
+    <message>
+        <source>Import</source>
+        <translation>匯入</translation>
+    </message>
+    <message>
+        <source>KDE Bookmarks</source>
+        <translation type="obsolete">KDE 書籤</translation>
+    </message>
+    <message>
+        <source>Export in Open Document Format used e.g. in Open Office </source>
+        <translation type="obsolete">匯出例如在 OpenOffice.org 使用的開放文件格式</translation>
+    </message>
+    <message>
+        <source>Export as ASCII</source>
+        <translation type="obsolete">匯出為 ASCII</translation>
+    </message>
+    <message>
+        <source>(still experimental)</source>
+        <translation>(仍然是實驗性質)</translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">匯出為 LaTeX</translation>
+    </message>
+    <message>
+        <source>&amp;Print</source>
+        <translation>列印(&amp;P)</translation>
+    </message>
+    <message>
+        <source>Add map (insert)</source>
+        <translation type="obsolete">加入圖譜 (插入)</translation>
+    </message>
+    <message>
+        <source>Add map (replace)</source>
+        <translation type="obsolete">加入圖譜 (置換)</translation>
+    </message>
+    <message>
+        <source>Export as</source>
+        <translation type="obsolete">匯出為</translation>
+    </message>
+    <message>
+        <source>Export to</source>
+        <translation>匯出至</translation>
+    </message>
+    <message>
+        <source>Hide object in exports</source>
+        <translation type="obsolete">在匯出中隱藏物件</translation>
+    </message>
+    <message>
+        <source>Hide in exports</source>
+        <translation type="obsolete">隱藏在匯出中</translation>
+    </message>
+    <message>
+        <source>Hide object in exported maps</source>
+        <comment>Systemflag</comment>
+        <translation type="obsolete">在匯出的圖譜中隱藏物件</translation>
+    </message>
+    <message>
+        <source>Use hide flag during exports </source>
+        <translation type="obsolete">在匯出期間使用隱藏旗標 </translation>
+    </message>
+    <message>
+        <source>Use hide flags</source>
+        <translation type="obsolete">使用隱藏旗標</translation>
+    </message>
+    <message>
+        <source>Open URL in new tab</source>
+        <translation type="obsolete">在新頁標中開啟 URL</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation>警告</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a viewer to open %1.
+</source>
+        <translation>找不到檢視器以開啟 %1。</translation>
+    </message>
+    <message>
+        <source>Please use Settings-&gt;</source>
+        <translation>請使用 設定值-&gt;</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start %1 to open a new tab in %2.</source>
+        <translation>無法啟動 %1 以在 %2 中開啟新的頁標。</translation>
+    </message>
+    <message>
+        <source>Set application to open PDF files</source>
+        <translation>設定開啟 PDF 檔案的應用程式</translation>
+    </message>
+    <message>
+        <source>Oh no!</source>
+        <comment>Standardflag</comment>
+        <translation>噢,不要!</translation>
+    </message>
+    <message>
+        <source>Call...</source>
+        <comment>Standardflag</comment>
+        <translation>呼叫…</translation>
+    </message>
+    <message>
+        <source>Very important!</source>
+        <comment>Standardflag</comment>
+        <translation>很重要!</translation>
+    </message>
+    <message>
+        <source>Very unimportant!</source>
+        <comment>Standardflag</comment>
+        <translation>很不重要!</translation>
+    </message>
+    <message>
+        <source>Rose</source>
+        <comment>Standardflag</comment>
+        <translation>玫瑰</translation>
+    </message>
+    <message>
+        <source>Surprise!</source>
+        <comment>Standardflag</comment>
+        <translation>驚喜!</translation>
+    </message>
+    <message>
+        <source>Info</source>
+        <comment>Standardflag</comment>
+        <translation>資訊</translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <translation type="obsolete">Firefox 書籤</translation>
+    </message>
+    <message>
+        <source>F&amp;ormat</source>
+        <translation type="obsolete">格式(&amp;O)</translation>
+    </message>
+    <message>
+        <source>Show Note Editor</source>
+        <translation type="obsolete">顯示註記編輯器</translation>
+    </message>
+    <message>
+        <source>Show history window</source>
+        <translation type="obsolete">顯示歷史視窗</translation>
+    </message>
+    <message>
+        <source>Bookmarks</source>
+        <translation>書籤</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start %1 to open a new tab</source>
+        <translation type="obsolete">無法啟動 %1 去開啟新的頁標</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find configuration for export to Open Office
+</source>
+        <translation type="vanished">找不到用於匯出至 OpenOffice.org 的配置</translation>
+    </message>
+    <message>
+        <source>No matches found for &quot;%1&quot;</source>
+        <translation type="obsolete">找不到與「%1」相符者</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <translation type="unfinished">註記編輯器</translation>
+    </message>
+    <message>
+        <source>Heading Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Search results list</source>
+        <comment>FindResultWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>File actions toolbar</source>
+        <comment>Toolbar for file actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;New map</source>
+        <comment>File menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>New map</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">新圖譜</translation>
+    </message>
+    <message>
+        <source>&amp;Copy to new map</source>
+        <comment>File menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;Open...</source>
+        <comment>File menu</comment>
+        <translation type="unfinished">開啟(&amp;O)…</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <comment>Status tip File menu</comment>
+        <translation type="obsolete">開啟</translation>
+    </message>
+    <message>
+        <source>Open Recent</source>
+        <comment>File menu</comment>
+        <translation type="unfinished">開啟最近使用</translation>
+    </message>
+    <message>
+        <source>&amp;Save...</source>
+        <comment>File menu</comment>
+        <translation type="unfinished">儲存(&amp;S)…</translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">儲存</translation>
+    </message>
+    <message>
+        <source>Save &amp;As...</source>
+        <comment>File menu</comment>
+        <translation type="unfinished">另存新檔(&amp;A)…</translation>
+    </message>
+    <message>
+        <source>Save &amp;As</source>
+        <comment>Status tip file menu</comment>
+        <translation type="obsolete">另存新檔(&amp;A)</translation>
+    </message>
+    <message>
+        <source>Import</source>
+        <comment>File menu</comment>
+        <translation type="unfinished">匯入</translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">Firefox 書籤</translation>
+    </message>
+    <message>
+        <source>Import directory structure (experimental)</source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">匯入目錄結構 (實驗性質)</translation>
+    </message>
+    <message>
+        <source>Export</source>
+        <comment>File menu</comment>
+        <translation type="unfinished">匯出</translation>
+    </message>
+    <message>
+        <source>Image%1</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export in Open Document Format used e.g. in Open Office </source>
+        <comment>status tip file menu</comment>
+        <translation type="obsolete">匯出例如在 OpenOffice.org 使用的開放文件格式</translation>
+    </message>
+    <message>
+        <source>Print</source>
+        <comment>File menu</comment>
+        <translation type="obsolete">列印</translation>
+    </message>
+    <message>
+        <source>&amp;Close Map</source>
+        <comment>File menu</comment>
+        <translation type="unfinished">關閉圖譜(&amp;C)</translation>
+    </message>
+    <message>
+        <source>E&amp;xit</source>
+        <comment>File menu</comment>
+        <translation type="unfinished">離開(&amp;X)</translation>
+    </message>
+    <message>
+        <source>Edit actions toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">編輯(&amp;E)</translation>
+    </message>
+    <message>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">復原(&amp;U)</translation>
+    </message>
+    <message>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">重做(&amp;R)</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">複製(&amp;C)</translation>
+    </message>
+    <message>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">剪下(&amp;T)</translation>
+    </message>
+    <message>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">貼上(&amp;P)</translation>
+    </message>
+    <message>
+        <source>Delete Selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">刪除選擇</translation>
+    </message>
+    <message>
+        <source>Add attribute</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add mapcenter</source>
+        <comment>Canvas context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add branch as child</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">加入分支做為子項</translation>
+    </message>
+    <message>
+        <source>Add branch (insert)</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">加入分支 (插入)</translation>
+    </message>
+    <message>
+        <source>Add branch above</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">在上方加入分支</translation>
+    </message>
+    <message>
+        <source>Add branch below</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">在下方加入分支</translation>
+    </message>
+    <message>
+        <source>Move up</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">向上移動</translation>
+    </message>
+    <message>
+        <source>Move down</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">向下移動</translation>
+    </message>
+    <message>
+        <source>&amp;Detach</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Detach branch and use as mapcenter</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Sort children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Sort children backwards</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scroll branch</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">捲曲分支</translation>
+    </message>
+    <message>
+        <source>Expand all branches</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Expand one level</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Collapse one level</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Collapse unselected levels</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Unscroll children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Find...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">尋找…</translation>
+    </message>
+    <message>
+        <source>Find duplicate URLs</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Open URL</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">開啟 URL</translation>
+    </message>
+    <message>
+        <source>Open URL in new tab</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">在新頁標中開啟 URL</translation>
+    </message>
+    <message>
+        <source>Open all URLs in subtree (including scrolled branches)</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Open all URLs in subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Edit URL...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">編輯 URL…</translation>
+    </message>
+    <message>
+        <source>Edit local URL...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Use heading for URL</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">使用標頭做為 URL</translation>
+    </message>
+    <message>
+        <source>Open linked map</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Open all vym links in subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Edit vym link...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">編輯 vym 連結…</translation>
+    </message>
+    <message>
+        <source>Delete vym link</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">刪除 vym 連結</translation>
+    </message>
+    <message>
+        <source>Hide in exports</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">隱藏在匯出中</translation>
+    </message>
+    <message>
+        <source>Add timestamp</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Edit Map Info...</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">編輯圖譜資訊…</translation>
+    </message>
+    <message>
+        <source>Add map (insert)</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">加入圖譜 (插入)</translation>
+    </message>
+    <message>
+        <source>Add map (replace)</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">加入圖譜 (置換)</translation>
+    </message>
+    <message>
+        <source>Save selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">儲存所選</translation>
+    </message>
+    <message>
+        <source>Remove only branch </source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">只移除分支 </translation>
+    </message>
+    <message>
+        <source>Remove children</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Property window</source>
+        <comment>Dialog to edit properties of selection</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>F&amp;ormat</source>
+        <comment>Format menu</comment>
+        <translation type="unfinished">格式(&amp;O)</translation>
+    </message>
+    <message>
+        <source>Pic&amp;k color</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">揀取顏色(&amp;K)</translation>
+    </message>
+    <message>
+        <source>Color &amp;branch</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">顏色分支(&amp;B)</translation>
+    </message>
+    <message>
+        <source>Color sub&amp;tree</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">顏色子樹(&amp;T)</translation>
+    </message>
+    <message>
+        <source>Linkstyle Curve</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Linkstyle Thick Curve</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Hide link if object is not selected</source>
+        <comment>Branch attribute</comment>
+        <translation type="unfinished">如果物件並未選取就隱藏連結</translation>
+    </message>
+    <message>
+        <source>&amp;Use color of heading for link</source>
+        <comment>Branch attribute</comment>
+        <translation type="unfinished">使用標頭的顏色做為連結(&amp;U)</translation>
+    </message>
+    <message>
+        <source>Set &amp;Link Color</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Set &amp;Selection Color</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Set &amp;Background image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Zoom toolbar</source>
+        <comment>View Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Zoom in</source>
+        <comment>View action</comment>
+        <translation type="unfinished">放大</translation>
+    </message>
+    <message>
+        <source>Zoom out</source>
+        <comment>View action</comment>
+        <translation type="unfinished">縮小</translation>
+    </message>
+    <message>
+        <source>reset Zoom</source>
+        <comment>View action</comment>
+        <translation type="unfinished">重置縮放</translation>
+    </message>
+    <message>
+        <source>Center on selection</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Editors toolbar</source>
+        <comment>Editor Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Show Note Editor</source>
+        <comment>View action</comment>
+        <translation type="obsolete">顯示註記編輯器</translation>
+    </message>
+    <message>
+        <source>History Window</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Antialiasing</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Smooth pixmap transformations</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Next Map</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Previous Map</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Modifier modes toolbar</source>
+        <comment>Modifier Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Use modifier to color branches</source>
+        <comment>Mode modifier</comment>
+        <translation type="unfinished">於顏色分支使用修飾鍵</translation>
+    </message>
+    <message>
+        <source>Use modifier to copy</source>
+        <comment>Mode modifier</comment>
+        <translation type="obsolete">使用修飾鍵去複製</translation>
+    </message>
+    <message>
+        <source>Use modifier to draw xLinks</source>
+        <comment>Mode modifier</comment>
+        <translation type="unfinished">使用修飾鍵去繪製 xLinks</translation>
+    </message>
+    <message>
+        <source>Note</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">註記</translation>
+    </message>
+    <message>
+        <source>URL to Document </source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>URL to Bugzilla </source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Link to another vym map</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">連結到另外的 vym 圖譜</translation>
+    </message>
+    <message>
+        <source>subtree is scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">子樹已捲曲</translation>
+    </message>
+    <message>
+        <source>subtree is temporary scrolled</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">子樹為暫時捲曲</translation>
+    </message>
+    <message>
+        <source>Hide object in exported maps</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished">在匯出的圖譜中隱藏物件</translation>
+    </message>
+    <message>
+        <source>Standard Flags toolbar</source>
+        <comment>Standard Flag Toolbar</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Status - ok,done</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Status - work in progress</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Status - missing, not started</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>I just love...</source>
+        <comment>Standardflag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Important</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">重要</translation>
+    </message>
+    <message>
+        <source>Priority</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Back</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>forward</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Look here</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Dangerous</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished">危險</translation>
+    </message>
+    <message>
+        <source>Don&apos;t flagrget</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Flag</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Home</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Telephone</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Music</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Mailbox</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Maix</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Password</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>To be improved</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Stop</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Magic</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>To be discussed</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Reminder</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Excellent</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Linux</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Sweet</source>
+        <comment>Freemind-Flag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Set application to open pdf files</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">設定開啟 pdf 檔案的應用程式</translation>
+    </message>
+    <message>
+        <source>Set application to open external links</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">設定開啟外部連結的應用程式</translation>
+    </message>
+    <message>
+        <source>Set path for macros</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Set number of undo levels</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Autosave</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Autosave time</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Write backup file on save</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Edit branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">加入分支之後編輯它</translation>
+    </message>
+    <message>
+        <source>Select branch after adding it</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">加入分支之後選取它</translation>
+    </message>
+    <message>
+        <source>Select existing heading</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">選取現有標頭</translation>
+    </message>
+    <message>
+        <source>Delete key</source>
+        <comment>Settings action</comment>
+        <translation type="obsolete">刪除鍵</translation>
+    </message>
+    <message>
+        <source>Exclusive flags</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">互斥旗標</translation>
+    </message>
+    <message>
+        <source>Use hide flags</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished">使用隱藏旗標</translation>
+    </message>
+    <message>
+        <source>Animation</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Automatic layout</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Test</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;Help</source>
+        <comment>Help menubar entry</comment>
+        <translation type="unfinished">求助(&amp;H)</translation>
+    </message>
+    <message>
+        <source>Open VYM Documentation (pdf) </source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Open VYM example maps </source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>About VYM</source>
+        <comment>Help action</comment>
+        <translation type="unfinished">關於 VYM</translation>
+    </message>
+    <message>
+        <source>About QT</source>
+        <comment>Help action</comment>
+        <translation type="unfinished">關於 QT</translation>
+    </message>
+    <message>
+        <source>Remove</source>
+        <comment>Context menu name</comment>
+        <translation type="unfinished">移除</translation>
+    </message>
+    <message>
+        <source>References (URLs, vymLinks, ...)</source>
+        <comment>Context menu name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Edit XLink</source>
+        <comment>Context menu name</comment>
+        <translation type="unfinished">編輯 XLink</translation>
+    </message>
+    <message>
+        <source>Save image</source>
+        <comment>Context action</comment>
+        <translation type="unfinished">儲存圖像</translation>
+    </message>
+    <message>
+        <source>unnamed</source>
+        <comment>MainWindow: name for new and empty file</comment>
+        <translation type="unfinished">未命名</translation>
+    </message>
+    <message>
+        <source>The map %1
+is already opened.Opening the same map in multiple editors may lead 
+to confusion when finishing working with vym.Do you want to</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>PDF%1</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>SVG%1</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Repeat last export (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Grow selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Shrink selection</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Reset selection size</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Toggle target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Goto target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Move to target...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Extract URLs from note</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Map target</source>
+        <comment>SystemFlag</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Follow XLink</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Follow XLink</source>
+        <comment>Context menu name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Firefox Bookmarks</source>
+        <comment>Import filters</comment>
+        <translation type="unfinished">Firefox 書籤</translation>
+    </message>
+    <message>
+        <source>Import Dir%1</source>
+        <comment>Import Filters</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Remove only branch and keep its children </source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Loading: %1</source>
+        <comment>Progress dialog while loading maps</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>E&amp;dit</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Select default font</source>
+        <comment>Branch attribute</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Toolbars</source>
+        <comment>Toolbars overview in view menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Undo and clipboard toolbar</source>
+        <comment>Toolbar for redo/undo and clipboard</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>URLs and vymLinks toolbar</source>
+        <comment>Toolbar for URLs and vymlinks</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Colors toolbar</source>
+        <comment>Colors toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation type="unfinished">輸入 URL:</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished">圖像</translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation type="unfinished">連結到另外的圖譜</translation>
+    </message>
+    <message>
+        <source>Select previous</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Select next</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Selection toolbar</source>
+        <comment>Toolbar name</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Script Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Task list</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Script Editor</source>
+        <comment>ScriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Toggle task</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cycle task status</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Reset sleep</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Sleep %1 days</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Sleep %1 day</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Sleep %1 weeks</source>
+        <comment>Task sleep</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Select</source>
+        <comment>Select menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Unselect all</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate counterclockwise</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate rclockwise</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Tree editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Task editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Slide editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Script editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Settings</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Show keyboard shortcuts</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Tasks</source>
+        <comment>Context menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>or</source>
+        <comment>File Dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Save map as</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Property Editor</source>
+        <comment>PropertyEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>History window</source>
+        <comment>HistoryWidget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Open linked map in background tab</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Next slide</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Previous slide</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Main window</source>
+        <comment>Shortcut scope</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Main window</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Map Editors</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Text Editors</source>
+        <comment>Shortcut group</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;Map</source>
+        <comment>Menu for file actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;Restore last session</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>References Context menu</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Bugzilla handling</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Create URL to SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Get data from SUSE Bugzilla</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Get data from SUSE Bugzilla for subtree</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>SUSE Fate tool handling</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Create URL to SUSE FATE tool</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>vymlinks - linking maps</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Exports</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Tasks</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Removing parts of a map</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Various</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add   ...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Selections</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Search functions</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Formatting</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Views</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Modifier modes</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Check for release notes and updates</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Set application to zip/unzip files</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Download and show release notes</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Check, if updates are available</source>
+        <comment>Help action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>XLinks</source>
+        <comment>Menu for file actions</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Info</source>
+        <translation type="obsolete">資訊</translation>
+    </message>
+    <message>
+        <source>Spreadsheet</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Properties</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Move branch up</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">向上移動分支</translation>
+    </message>
+    <message>
+        <source>Move branch down</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished">向下移動分支</translation>
+    </message>
+    <message>
+        <source>Map properties...</source>
+        <comment>Edit menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Note editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Heading editor</source>
+        <comment>View action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Set author for new maps</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Number of visible parents in task editor</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Number of visible parents in find results window</source>
+        <comment>Settings action</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Webpage (HTML)...</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Text (ASCII)...</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Text with tasks</source>
+        <comment>File export menu</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Text (A&amp;O report)...</source>
+        <comment>Export format</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Debug info</source>
+        <comment>Option to show debugging info</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save %1,
+because of existing lockfile:
+
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Load Freemind map</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export as CSV</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find configuration for export to LibreOffice
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>HTML</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Text</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Spreadsheet</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Textdocument</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Set URL to a local file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Enter sleep time (number of days or date YYYY-MM-DD or DD.MM[.YYYY]</source>
+        <comment>task sleep time dialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t set sleep time to %1.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>%1 items on map
+</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>branches</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>notes</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>images</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>tasks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>slides</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>xLinks</source>
+        <comment>Info about map</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Set application to zip/unzip files</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Directory with vym macros:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Number of undo/redo levels:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Settings have been changed. The next map opened will have &quot;%1&quot; undo/redo levels</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Number of seconds before autosave:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Set author for new maps (used in lockfile)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Number of parents shown in find results:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Number of parents shown for a task:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>(readonly)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>History for %1</source>
+        <comment>Window Caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export in last used format (%1) to: %2</source>
+        <comment>status tip</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find the documentation %1 in:
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Load vym example map</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Please allow vym to download release notes!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;html&gt;&lt;h3&gt;Do you allow vym to check online for updates or release notes?&lt;/h3&gt;If you allow, vym will &lt;ul&gt;&lt;li&gt;check once for release notes&lt;/li&gt;&lt;li&gt;check regulary for updates and notify you in case you should update, e.g. if there are important bug fixes available&lt;/li&gt;&lt;li&gt;receive a cookie with a random ID and send vym version and platform name and the ID  (e.g. &quot;Windows&quot; or &quot;Linux&quot;) back to me, Uwe Drechsel.&lt;p&gt;As vym developer I am motivated to see many people using vym. Of course I am curious to see, on which system vym is used. Maintaining each of the systems requires a lot of my (spare) time.&lt;/p&gt; &lt;p&gt;No other data than above will be sent, especially no private data will be collected or sent.(Check the source code, if you don&apos;t believe.)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;If you do not allow, &lt;ul&gt;&lt;li&gt;nothing will be downloaded and especially I will &lt;b&gt;not be motivated&lt;/b&gt; to spend some more thousands of hours on developing a free software tool.&lt;/ul&gt;Please allow vym to check for updates :-)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Allow</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Do not allow</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Thank you for enabling downloads!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Update information</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>vym is up to date.</source>
+        <comment>MainWindow</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Checking for updates...</source>
+        <comment>MainWindow</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Please allow vym to check for updates!</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>MapEditor</name>
+    <message>
+        <source>Critical Parse Error</source>
+        <translation type="obsolete">嚴重的解析錯誤</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="obsolete">覆寫</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">取消</translation>
+    </message>
+    <message>
+        <source>Critical Export Error</source>
+        <translation type="obsolete">嚴重的匯出錯誤</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">嚴重錯誤</translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation type="obsolete">輸入 URL:</translation>
+    </message>
+    <message>
+        <source>vym map</source>
+        <translation type="obsolete">vym 圖譜</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <translation type="obsolete">圖像</translation>
+    </message>
+    <message>
+        <source>vym - save image as</source>
+        <translation type="obsolete">vym - 儲存圖像為</translation>
+    </message>
+    <message>
+        <source>Critical Import Error</source>
+        <translation type="obsolete">嚴重的匯入錯誤</translation>
+    </message>
+    <message>
+        <source>Critical Parse Error by reading backupFile</source>
+        <translation type="obsolete">讀取備份檔時嚴重的解析錯誤</translation>
+    </message>
+    <message>
+        <source>New Map</source>
+        <comment>Heading of mapcenter in new map</comment>
+        <translation type="obsolete">新圖譜</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="obsolete">檔案 %1 已經存在。您要覆寫它嗎?</translation>
+    </message>
+    <message>
+        <source>MapEditor::exportXML couldn&apos;t open %1</source>
+        <translation type="obsolete">MapEditor::exportXML 無法開啟 %1</translation>
+    </message>
+    <message>
+        <source>Temporary directory %1 used for undo is gone. 
+I will create a new one, but at the moment no undo is available.
+Maybe you want to reload your original data.
+
+Sorry for any inconveniences.</source>
+        <translation type="obsolete">用於復原的暫存目錄 %1 已經不見。
+我將建立一個新的,但是目前沒有任何復原可用。
+您也許想要重新載入原來的資料。
+
+造成您的困擾請多多包涵。</translation>
+    </message>
+    <message>
+        <source>Cannot find the directory %1</source>
+        <translation type="obsolete">找不到目錄 %1</translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation type="obsolete">連結到另外的圖譜</translation>
+    </message>
+    <message>
+        <source>Load image</source>
+        <translation type="obsolete">載入圖像</translation>
+    </message>
+    <message>
+        <source>Save image as %1</source>
+        <translation type="obsolete">儲存圖像為 %1</translation>
+    </message>
+    <message>
+        <source>Choose directory structure to import</source>
+        <translation type="obsolete">選擇目錄結構以匯入</translation>
+    </message>
+    <message>
+        <source>unnamed</source>
+        <translation type="obsolete">未命名</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="obsolete">警告</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find script %1
+to notifiy Browsers of changed bookmarks.</source>
+        <translation type="obsolete">找不到命令稿 %1
+以在瀏覽器中註記變更的書籤。</translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <comment>MapEditor</comment>
+        <translation type="unfinished">編輯標頭</translation>
+    </message>
+    <message>
+        <source>Print vym map</source>
+        <comment>MapEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>MapEditor</comment>
+        <translation type="obsolete">儲存</translation>
+    </message>
+    <message>
+        <source>Map Editor</source>
+        <comment>Shortcut scope</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cu&amp;t</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">剪下(&amp;T)</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">複製(&amp;C)</translation>
+    </message>
+    <message>
+        <source>&amp;Undo</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">復原(&amp;U)</translation>
+    </message>
+    <message>
+        <source>&amp;Redo</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">重做(&amp;R)</translation>
+    </message>
+    <message>
+        <source>&amp;Paste</source>
+        <comment>Edit menu</comment>
+        <translation type="obsolete">貼上(&amp;P)</translation>
+    </message>
+</context>
+<context>
+    <name>NoteEditor</name>
+    <message>
+        <source>Note Editor</source>
+        <comment>Window caption</comment>
+        <translation type="unfinished">註記編輯器</translation>
+    </message>
+</context>
+<context>
+    <name>Process</name>
+    <message>
+        <source>Critical Error</source>
+        <translation type="obsolete">嚴重錯誤</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="obsolete">%1 並未正常離開</translation>
+    </message>
+</context>
+<context>
+    <name>QObject</name>
+    <message>
+        <source>This is not an image.</source>
+        <translation type="obsolete">這並非圖像。</translation>
+    </message>
+    <message>
+        <source>Critical Export Error</source>
+        <translation>重要匯出錯誤</translation>
+    </message>
+    <message>
+        <source>Could not write %1</source>
+        <translation>無法寫入 %1</translation>
+    </message>
+    <message>
+        <source>Export failed.</source>
+        <translation>匯出失敗。</translation>
+    </message>
+    <message>
+        <source>Check &quot;%1&quot; in
+%2</source>
+        <translation>在 %2 中檢查「%1」</translation>
+    </message>
+    <message>
+        <source>Could not read %1</source>
+        <translation>無法讀取 %1</translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation>嚴重錯誤</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start zip to compress data.</source>
+        <translation>無法啟動 zip 去壓縮資料。</translation>
+    </message>
+    <message>
+        <source>zip didn&apos;t exit normally</source>
+        <translation>zip 並未正常離開</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start unzip to decompress data.</source>
+        <translation>無法啟動 unzip 去解壓縮資料。</translation>
+    </message>
+    <message>
+        <source>unzip didn&apos;t exit normally</source>
+        <translation>unzip 並未正常離開</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation>無法啟動 %1</translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation>%1 並未正常離開</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="obsolete">檔案 %1 已經存在。
+您要覆寫它嗎?</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation>覆寫</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>取消</translation>
+    </message>
+    <message>
+        <source>Sorry, no preview for
+multiple selected files.</source>
+        <translation type="obsolete">抱歉,無法預覽多個已選檔案。</translation>
+    </message>
+    <message>
+        <source>Exporting the %1 bookmarks will overwrite
+your existing bookmarks file.</source>
+        <translation>匯出 %1 書籤將會覆寫
+您的現有書籤檔案。</translation>
+    </message>
+    <message>
+        <source>Warning: Overwriting %1 bookmarks</source>
+        <translation>警告:正在覆寫 %1 項書籤</translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation>警告</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find script %1
+to notifiy Browsers of changed bookmarks.</source>
+        <translation>找不到命令稿 %1
+去在瀏覽器中註記變更的書籤。</translation>
+    </message>
+    <message>
+        <source>Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t access temporary directory
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Exporting to %1 will overwrite the existing file:
+%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Warning: Overwriting file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export as ASCII</source>
+        <translation type="unfinished">匯出為 ASCII</translation>
+    </message>
+    <message>
+        <source>(still experimental)</source>
+        <translation type="unfinished">(仍然是實驗性質)</translation>
+    </message>
+    <message>
+        <source>Export aborted.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <comment>ExportHTML</comment>
+        <translation type="obsolete">警告</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <comment>ExportHTML</comment>
+        <translation type="obsolete">無法開啟 %1</translation>
+    </message>
+    <message>
+        <source>Could not open %1</source>
+        <translation type="obsolete">無法開啟 %1</translation>
+    </message>
+    <message>
+        <source>Trying to create directory for flags:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Could not create %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Trying to save HTML file:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>No objects in map!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>The directory %1 is not empty.
+Do you risk to overwrite its contents?</source>
+        <comment>write directory</comment>
+        <translation type="unfinished">目錄 %1 並未清空。
+您要冒險覆寫它的內容嗎?</translation>
+    </message>
+    <message>
+        <source>No Bugzilla client found.  For openSUSE you can install by (running as root):
+
+</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Alternatively you can also add the repository
+and install the perl module for Bugzilla access using YaST</source>
+        <comment>VymModel, how to install Bugzilla client module</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Warning: Couldn&apos;t find Bugzilla client</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open &quot;%1&quot;
+%2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t read settings from &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t move existing file out of the way before saving.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t rename %1 back to %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Saved %1, but couldn&apos;t remove %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Warning: Version Problem</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;h3&gt;Map is newer than VYM&lt;/h3&gt;&lt;p&gt;The map you are just trying to load was saved using vym %1. The version of this vym is %2. If you run into problems after pressing the ok-button below, updating vym should help.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export as CSV</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Contents:</source>
+        <comment>Used in HTML export</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Critical</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Could not find stylesheet %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Error</source>
+        <comment>ExportHTML</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Could not copy
+%1 to
+%2</source>
+        <comment>ExportHTML</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Could not copy %1 to %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a macro at  %1.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Please use Settings-&gt;</source>
+        <translation type="unfinished">請使用 設定值-&gt;</translation>
+    </message>
+    <message>
+        <source>Set directory for vym macros</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t start tool to decompress data.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <comment>Shortcut group</comment>
+        <translation type="obsolete">註記編輯器</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find tool to unzip data. Please download and install 7z and set path in Settings menu:
+ </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Could not export as AO to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Could not export as ASCII to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Could not export as CSV to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Could not export as OrgMode to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Could not export as LaTeX to %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export as LibreOffice Impress presentation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t remove target of old symbolic link %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t rename output to target of old symbolic link %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t link from %1 to target of old symbolic link %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>ScriptEditor</name>
+    <message>
+        <source>Form</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Run</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="unfinished">警告</translation>
+    </message>
+    <message>
+        <source>Save script</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation type="unfinished">檔案 %1 已經存在。
+您要覆寫它嗎? {1
+?}</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="unfinished">覆寫</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">取消</translation>
+    </message>
+    <message>
+        <source>Load script</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open %1.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Tab 1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Save to selected slide</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Tab 2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Current key:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Load</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <translation type="unfinished">儲存</translation>
+    </message>
+    <message>
+        <source>Slide</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Macro</source>
+        <comment>Mode in scriptEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Save</source>
+        <comment>ScriptEditor</comment>
+        <translation type="unfinished">儲存</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t get model to save script into slide!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find slide to save script into slide!</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>ShowTextDialog</name>
+    <message>
+        <source>VYM - Info</source>
+        <translation type="obsolete">VYM - 資訊</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation>關閉</translation>
+    </message>
+    <message>
+        <source>History of %1</source>
+        <translation type="obsolete">%1 的歷史記錄</translation>
+    </message>
+    <message>
+        <source>Dialog</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>SimpleScriptEditor</name>
+    <message>
+        <source>Save</source>
+        <translation type="obsolete">儲存</translation>
+    </message>
+    <message>
+        <source>Open</source>
+        <translation type="obsolete">開啟</translation>
+    </message>
+    <message>
+        <source>Close</source>
+        <translation type="obsolete">關閉</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save as&apos;</comment>
+        <translation type="obsolete">檔案 %1 已經存在。
+您要覆寫它嗎? {1
+?}</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="obsolete">覆寫</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="obsolete">取消</translation>
+    </message>
+</context>
+<context>
+    <name>TaskEditor</name>
+    <message>
+        <source>Current map</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Active tasks</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Edit heading</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished">編輯標頭</translation>
+    </message>
+    <message>
+        <source>New tasks</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>TaskModel</name>
+    <message>
+        <source>Prio</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Status</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Age total</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Age mod.</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Sleep</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Map</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Task</source>
+        <comment>TaskEditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>TextEditor</name>
+    <message>
+        <source>&amp;File</source>
+        <translation type="obsolete">檔案(&amp;F)</translation>
+    </message>
+    <message>
+        <source>Import</source>
+        <translation type="obsolete">匯入</translation>
+    </message>
+    <message>
+        <source>&amp;Import...</source>
+        <translation>匯入(&amp;I)…</translation>
+    </message>
+    <message>
+        <source>&amp;Export...</source>
+        <translation>匯出(&amp;E)…</translation>
+    </message>
+    <message>
+        <source>Print Note</source>
+        <translation type="obsolete">列印註記</translation>
+    </message>
+    <message>
+        <source>&amp;Print...</source>
+        <translation>列印(&amp;P)…</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <translation type="vanished">編輯(&amp;E)</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <translation type="obsolete">復原</translation>
+    </message>
+    <message>
+        <source>&amp;Undo</source>
+        <translation>復原(&amp;U)</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="obsolete">重做</translation>
+    </message>
+    <message>
+        <source>&amp;Redo</source>
+        <translation>重做(&amp;R)</translation>
+    </message>
+    <message>
+        <source>Select and copy all</source>
+        <translation type="obsolete">全部選取並複製</translation>
+    </message>
+    <message>
+        <source>Select and copy &amp;all</source>
+        <translation>全部選取並複製(&amp;A)</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <translation type="obsolete">複製</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <translation>複製(&amp;C)</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="obsolete">剪下</translation>
+    </message>
+    <message>
+        <source>Cu&amp;t</source>
+        <translation>剪下(&amp;T)</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <translation type="obsolete">貼上</translation>
+    </message>
+    <message>
+        <source>&amp;Paste</source>
+        <translation>貼上(&amp;P)</translation>
+    </message>
+    <message>
+        <source>Delete all</source>
+        <translation type="obsolete">刪除全部</translation>
+    </message>
+    <message>
+        <source>&amp;Delete All</source>
+        <translation>刪除全部(&amp;D)</translation>
+    </message>
+    <message>
+        <source>&amp;Settings</source>
+        <translation>設定值(&amp;S)</translation>
+    </message>
+    <message>
+        <source>Set fixed font</source>
+        <translation type="obsolete">設定定寬字型</translation>
+    </message>
+    <message>
+        <source>Set &amp;fixed font</source>
+        <translation>設定定寬字型(&amp;F)</translation>
+    </message>
+    <message>
+        <source>Set variable font</source>
+        <translation type="obsolete">設定變寬字型</translation>
+    </message>
+    <message>
+        <source>Set &amp;variable font</source>
+        <translation>設定變寬字型(&amp;V)</translation>
+    </message>
+    <message>
+        <source>Used fixed font by default</source>
+        <translation type="obsolete">預設使用的定寬字型</translation>
+    </message>
+    <message>
+        <source>&amp;fixed font is default</source>
+        <translation>定寬字型為預設(&amp;F)</translation>
+    </message>
+    <message>
+        <source>Export Note (HTML)</source>
+        <translation type="obsolete">匯出註記 (HTML)</translation>
+    </message>
+    <message>
+        <source>Export Note As (HTML) </source>
+        <translation type="obsolete">匯出註記為 (HTML) </translation>
+    </message>
+    <message>
+        <source>Export &amp;As... (HTML)</source>
+        <translation>匯出為(HTML)(&amp;A)…</translation>
+    </message>
+    <message>
+        <source>Export Note As (ASCII) </source>
+        <translation type="obsolete">匯出註記為 (ASCII) </translation>
+    </message>
+    <message>
+        <source>Export &amp;As...(ASCII)</source>
+        <translation>匯出為(ASCII)(&amp;A)…</translation>
+    </message>
+    <message>
+        <source>&amp;Color...</source>
+        <translation>顏色(&amp;C)…</translation>
+    </message>
+    <message>
+        <source>&amp;Bold</source>
+        <translation>粗體(&amp;B)</translation>
+    </message>
+    <message>
+        <source>&amp;Italic</source>
+        <translation>斜體(&amp;I)</translation>
+    </message>
+    <message>
+        <source>&amp;Underline</source>
+        <translation>底線(&amp;U)</translation>
+    </message>
+    <message>
+        <source>&amp;Left</source>
+        <translation>靠左(&amp;L)</translation>
+    </message>
+    <message>
+        <source>C&amp;enter</source>
+        <translation>置中(&amp;E)</translation>
+    </message>
+    <message>
+        <source>&amp;Right</source>
+        <translation>靠右(&amp;R)</translation>
+    </message>
+    <message>
+        <source>&amp;Justify</source>
+        <translation>對齊(&amp;J)</translation>
+    </message>
+    <message>
+        <source>Export Note to single file</source>
+        <translation>匯出註記到單一檔案</translation>
+    </message>
+    <message>
+        <source>The file </source>
+        <translation type="obsolete">檔案 </translation>
+    </message>
+    <message>
+        <source> exists already. Do you want to overwrite it?</source>
+        <translation type="obsolete"> 已經存在。您要覆寫它嗎?</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation>覆寫</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>取消</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t export note </source>
+        <translation type="obsolete">無法匯出註記 </translation>
+    </message>
+    <message>
+        <source>Export Note to single file (ASCII)</source>
+        <translation>匯出註記到單一檔案 (ASCII)</translation>
+    </message>
+    <message>
+        <source>Convert paragraphs to linebreaks</source>
+        <translation type="obsolete">轉換段落為斷列</translation>
+    </message>
+    <message>
+        <source>&amp;Convert Paragraphs</source>
+        <translation type="obsolete">轉換段落(&amp;C)</translation>
+    </message>
+    <message>
+        <source>Join all lines of a paragraph</source>
+        <translation type="obsolete">聯結段落中所有的列</translation>
+    </message>
+    <message>
+        <source>&amp;Join lines</source>
+        <translation type="obsolete">聯結各列(&amp;J)</translation>
+    </message>
+    <message>
+        <source>Toggle font hint for the whole text</source>
+        <translation type="obsolete">切換整篇文字的字型修飾</translation>
+    </message>
+    <message>
+        <source>&amp;Font hint</source>
+        <translation>字型修飾(&amp;F)</translation>
+    </message>
+    <message>
+        <source>Subs&amp;cript</source>
+        <translation>下標(&amp;C)</translation>
+    </message>
+    <message>
+        <source>Su&amp;perscript</source>
+        <translation>上標(&amp;P)</translation>
+    </message>
+    <message>
+        <source>Note Editor</source>
+        <translation>註記編輯器</translation>
+    </message>
+    <message>
+        <source>F&amp;ormat</source>
+        <translation>格式(&amp;O)</translation>
+    </message>
+    <message>
+        <source>Ready</source>
+        <comment>Statusbar message</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Text Editor</source>
+        <comment>Text Editor Window caption</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>No filename available for this note.</source>
+        <comment>Statusbar message</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Note Actions</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;Note</source>
+        <comment>Menubar</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Import</source>
+        <comment>Status tip for Note menu</comment>
+        <translation type="obsolete">匯入</translation>
+    </message>
+    <message>
+        <source>Export Note (HTML)</source>
+        <comment>Status tip for Note menu</comment>
+        <translation type="obsolete">匯出註記 (HTML)</translation>
+    </message>
+    <message>
+        <source>Export Note As (HTML) </source>
+        <comment>Status tip for Note Menu</comment>
+        <translation type="obsolete">匯出註記為 (HTML) </translation>
+    </message>
+    <message>
+        <source>Export Note As (ASCII) </source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">匯出註記為 (ASCII) </translation>
+    </message>
+    <message>
+        <source>Print Note</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">列印註記</translation>
+    </message>
+    <message>
+        <source>Edit Actions</source>
+        <translation type="unfinished">編輯動作</translation>
+    </message>
+    <message>
+        <source>Undo</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">復原</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">重做</translation>
+    </message>
+    <message>
+        <source>Select and copy all</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">全部選取並複製</translation>
+    </message>
+    <message>
+        <source>Copy</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">複製</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">剪下</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">貼上</translation>
+    </message>
+    <message>
+        <source>Delete all</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">刪除全部</translation>
+    </message>
+    <message>
+        <source>Toggle font hint for the whole text</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">切換整篇文字的字型修飾</translation>
+    </message>
+    <message>
+        <source>&amp;Richtext</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Set fixed font</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">設定定寬字型</translation>
+    </message>
+    <message>
+        <source>Set variable font</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">設定變寬字型</translation>
+    </message>
+    <message>
+        <source>Used fixed font by default</source>
+        <comment>Status tip for note menu</comment>
+        <translation type="obsolete">預設使用的定寬字型</translation>
+    </message>
+    <message>
+        <source>The file %1
+exists already.
+Do you want to overwrite it?</source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation type="unfinished">檔案 %1 已經存在。
+您要覆寫它嗎? {1
+?}</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t export note </source>
+        <comment>dialog &apos;save note as&apos;</comment>
+        <translation type="unfinished">無法匯出註記 </translation>
+    </message>
+    <message>
+        <source>Print</source>
+        <comment>TextEditor</comment>
+        <translation type="unfinished">列印</translation>
+    </message>
+    <message>
+        <source>Font hints</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fonts</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Format</source>
+        <comment>toolbar in texteditor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Texteditor</source>
+        <comment>Shortcuts</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Edi&amp;t</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>TreeEditor</name>
+    <message>
+        <source>Select upper object</source>
+        <comment>Tree Editor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Select lower object</source>
+        <comment>Tree Editor</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>VymModel</name>
+    <message>
+        <source>unnamed</source>
+        <translation type="unfinished">未命名</translation>
+    </message>
+    <message>
+        <source>Critical Parse Error</source>
+        <translation type="unfinished">嚴重的解析錯誤</translation>
+    </message>
+    <message>
+        <source>Critical Load Error</source>
+        <translation type="unfinished">嚴重的載入錯誤</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before load
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t find a map (*.xml) in .vym archive.
+</source>
+        <translation type="unfinished">在 .vym 檔案夾中找不到圖譜 (*.xml)。</translation>
+    </message>
+    <message>
+        <source>The map %1
+did not use the compressed vym file format.
+Writing it uncompressed will also write images 
+and flags and thus may overwrite files in the given directory
+
+Do you want to write the map</source>
+        <translation type="unfinished">圖譜 %1
+並未使用壓縮過的 vym 檔案格式。
+以未壓縮的方式寫入它將會寫入圖像和旗標,
+因而也許會覆寫給定目錄中的檔案。
+
+您要寫入圖譜</translation>
+    </message>
+    <message>
+        <source>compressed (vym default)</source>
+        <translation type="unfinished">已壓縮 (vym 預設)</translation>
+    </message>
+    <message>
+        <source>uncompressed</source>
+        <translation type="unfinished">未壓縮</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">取消</translation>
+    </message>
+    <message>
+        <source>Save Error</source>
+        <translation type="unfinished">儲存錯誤</translation>
+    </message>
+    <message>
+        <source>%1
+could not be removed before saving</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>%1
+could not be renamed before saving</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t create temporary directory before save
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <translation type="unfinished">圖像</translation>
+    </message>
+    <message>
+        <source>Load image</source>
+        <translation type="unfinished">載入圖像</translation>
+    </message>
+    <message>
+        <source>Save image</source>
+        <translation type="unfinished">儲存圖像</translation>
+    </message>
+    <message>
+        <source>The file %1 exists already.
+Do you want to overwrite it?</source>
+        <translation type="unfinished">檔案 %1 已經存在。
+您要覆寫它嗎? {1
+?} {1 ?}</translation>
+    </message>
+    <message>
+        <source>Overwrite</source>
+        <translation type="unfinished">覆寫</translation>
+    </message>
+    <message>
+        <source>Critical Import Error</source>
+        <translation type="unfinished">嚴重的匯入錯誤</translation>
+    </message>
+    <message>
+        <source>Cannot find the directory %1</source>
+        <translation type="unfinished">找不到目錄 %1</translation>
+    </message>
+    <message>
+        <source>Choose directory structure to import</source>
+        <translation type="unfinished">選擇目錄結構以匯入</translation>
+    </message>
+    <message>
+        <source>The file of the map  on disk has changed:
+
+   %1
+
+Do you want to reload that map with the new file?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Reload</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Ignore</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Autosave disabled during undo.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Note</source>
+        <comment>FindAll in VymModel</comment>
+        <translation type="unfinished">註記</translation>
+    </message>
+    <message>
+        <source>Enter URL:</source>
+        <translation type="obsolete">輸入 URL:</translation>
+    </message>
+    <message>
+        <source>Images</source>
+        <comment>Filedialog</comment>
+        <translation type="obsolete">圖像</translation>
+    </message>
+    <message>
+        <source>Contacting Bugzilla...</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Link to another map</source>
+        <translation type="obsolete">連結到另外的圖譜</translation>
+    </message>
+    <message>
+        <source>Export map as image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export XML to directory</source>
+        <translation type="unfinished">匯出 XML 到目錄</translation>
+    </message>
+    <message>
+        <source>Critical Export Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Load background image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export map as PDF</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Critical Error</source>
+        <translation type="unfinished">嚴重錯誤</translation>
+    </message>
+    <message>
+        <source>Unsupported format in %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save %1</source>
+        <translation type="unfinished">無法儲存 %1</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t save QImage %1 in format %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All</source>
+        <comment>Filedialog</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <translation type="unfinished">警告</translation>
+    </message>
+    <message>
+        <source>Redo failed:
+%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Script aborted:
+%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export as LaTeX</source>
+        <translation type="obsolete">匯出為 LaTeX</translation>
+    </message>
+    <message>
+        <source>(still experimental)</source>
+        <translation type="unfinished">(仍然是實驗性質)</translation>
+    </message>
+    <message>
+        <source>Export as csv</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Critical Save Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>unknown user</source>
+        <comment>Default for lockfiles of maps</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Warning: Map already opended</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Image</source>
+        <comment>Default name for new image</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>New map</source>
+        <comment>New map</comment>
+        <translation type="unfinished">新圖譜</translation>
+    </message>
+    <message>
+        <source>Export map as SVG</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export map as XML</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>unknown user</source>
+        <comment>default name for map author in settings</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cannot create lockfile of map! It will be opened in readonly mode.
+
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Warning</source>
+        <comment>VymModel</comment>
+        <translation type="unfinished">警告</translation>
+    </message>
+    <message>
+        <source>Map seems to be already opened in another vym instance!
+
+ Map is locked by &quot;%1&quot; on &quot;%2&quot;
+
+Please only delete the lockfile, if you are sure nobody else is currently working on this map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Removed lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t remove lockfile for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>VymProcess</name>
+    <message>
+        <source>Critical Error</source>
+        <translation type="unfinished">嚴重錯誤</translation>
+    </message>
+    <message>
+        <source>Could not start %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>%1 didn&apos;t exit normally</source>
+        <translation type="unfinished">%1 並未正常離開</translation>
+    </message>
+</context>
+<context>
+    <name>VymView</name>
+    <message>
+        <source>Tree Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Slide Editor</source>
+        <comment>Title of dockable editor widget</comment>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>WarningDialog</name>
+    <message>
+        <source>VYM - Warning : Foo...</source>
+        <translation type="obsolete">VYM - 警告:Foo…</translation>
+    </message>
+    <message>
+        <source>textLabel</source>
+        <translation type="obsolete">textLabel</translation>
+    </message>
+    <message>
+        <source>showAgainBox</source>
+        <translation>showAgainBox</translation>
+    </message>
+    <message>
+        <source>Proceed</source>
+        <translation>繼續</translation>
+    </message>
+    <message>
+        <source>Show this message again</source>
+        <translation>再次顯示此訊息</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>取消</translation>
+    </message>
+    <message>
+        <source>Ok</source>
+        <translation>確定</translation>
+    </message>
+    <message>
+        <source>Dialog</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+</TS>
diff --git a/lineeditdialog.cpp b/lineeditdialog.cpp
new file mode 100644 (file)
index 0000000..bc1460a
--- /dev/null
@@ -0,0 +1,42 @@
+#include "lineeditdialog.h"
+#include "settings.h"
+
+extern Settings settings;
+
+LineEditDialog::LineEditDialog(QWidget* parent):QDialog (parent)
+{
+    ui.setupUi(this);
+    ui.okButton->setText(tr("Ok"));
+}
+
+void LineEditDialog::showCancelButton (bool b)
+{
+    if (b)
+    {
+       ui.cancelButton->show();
+       ui.cancelButton->setText(tr("Cancel"));
+    } else
+       ui.cancelButton->hide();
+}
+
+void LineEditDialog::setLabel (const QString &s)
+{
+    ui.label->setText(s);
+}
+
+void LineEditDialog::setCaption(const QString &s)
+{
+    QDialog::setWindowTitle("VYM - "+s);
+}
+
+void LineEditDialog::setText (const QString &s)
+{
+    ui.lineEdit->setText(s);
+    ui.lineEdit->selectAll();
+}
+
+QString LineEditDialog::getText ()
+{
+    return ui.lineEdit->text();
+}
+
diff --git a/lineeditdialog.h b/lineeditdialog.h
new file mode 100644 (file)
index 0000000..68c0d4f
--- /dev/null
@@ -0,0 +1,26 @@
+#ifndef LINEEDITDIALOG_H
+#define LINEEDITDIALOG_H
+
+#include "ui_lineeditdialog.h"
+
+class LineEditDialog : public QDialog
+{
+    Q_OBJECT
+
+public:
+    LineEditDialog(QWidget* parent = 0);
+
+public slots:
+    virtual void showCancelButton( bool b );
+    virtual void setCaption( const QString & s );
+    virtual void setLabel( const QString & s );
+    virtual void setText( const QString & s );
+    virtual QString getText ();
+
+private:
+    void init();
+    Ui::LineEditDialog ui;
+
+};
+
+#endif // LINEEDITDIALOG_H
diff --git a/lineeditdialog.ui b/lineeditdialog.ui
new file mode 100644 (file)
index 0000000..c799bce
--- /dev/null
@@ -0,0 +1,142 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>LineEditDialog</class>
+ <widget class="QDialog" name="LineEditDialog">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>545</width>
+    <height>116</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>Dialog</string>
+  </property>
+  <property name="accessibleName">
+   <string notr="true"/>
+  </property>
+  <layout class="QVBoxLayout" name="verticalLayout">
+   <item>
+    <widget class="QLabel" name="label">
+     <property name="accessibleName">
+      <string notr="true"/>
+     </property>
+     <property name="text">
+      <string>TextLabel</string>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <widget class="QLineEdit" name="lineEdit">
+     <property name="accessibleName">
+      <string notr="true"/>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <spacer name="verticalSpacer">
+     <property name="orientation">
+      <enum>Qt::Vertical</enum>
+     </property>
+     <property name="sizeHint" stdset="0">
+      <size>
+       <width>20</width>
+       <height>26</height>
+      </size>
+     </property>
+    </spacer>
+   </item>
+   <item>
+    <layout class="QHBoxLayout">
+     <property name="spacing">
+      <number>6</number>
+     </property>
+     <property name="leftMargin">
+      <number>0</number>
+     </property>
+     <property name="topMargin">
+      <number>0</number>
+     </property>
+     <property name="rightMargin">
+      <number>0</number>
+     </property>
+     <property name="bottomMargin">
+      <number>0</number>
+     </property>
+     <item>
+      <spacer>
+       <property name="orientation">
+        <enum>Qt::Horizontal</enum>
+       </property>
+       <property name="sizeType">
+        <enum>QSizePolicy::Expanding</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>73</width>
+         <height>31</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+     <item>
+      <widget class="QPushButton" name="cancelButton">
+       <property name="accessibleName">
+        <string/>
+       </property>
+       <property name="text">
+        <string>Cancel</string>
+       </property>
+       <property name="autoDefault">
+        <bool>false</bool>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="okButton">
+       <property name="text">
+        <string>Ok</string>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
+  </layout>
+ </widget>
+ <resources/>
+ <connections>
+  <connection>
+   <sender>okButton</sender>
+   <signal>clicked()</signal>
+   <receiver>LineEditDialog</receiver>
+   <slot>accept()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>539</x>
+     <y>87</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>272</x>
+     <y>127</y>
+    </hint>
+   </hints>
+  </connection>
+  <connection>
+   <sender>cancelButton</sender>
+   <signal>clicked()</signal>
+   <receiver>LineEditDialog</receiver>
+   <slot>reject()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>490</x>
+     <y>87</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>219</x>
+     <y>223</y>
+    </hint>
+   </hints>
+  </connection>
+ </connections>
+</ui>
diff --git a/linkablemapobj.cpp b/linkablemapobj.cpp
new file mode 100644 (file)
index 0000000..8e04271
--- /dev/null
@@ -0,0 +1,633 @@
+#include <iostream>
+#include <math.h>
+#include <cstdlib>
+
+#include "linkablemapobj.h"
+#include "branchobj.h"
+#include "vymmodel.h"
+
+extern bool debug;
+
+/////////////////////////////////////////////////////////////////
+// LinkableMapObj
+/////////////////////////////////////////////////////////////////
+
+LinkableMapObj::LinkableMapObj(QGraphicsItem* parent, TreeItem *ti) :MapObj(parent,ti)
+{
+    //qDebug() << "Const LinkableMapObj this="<<this<<"  ti="<<ti<<"  treeItem="<<treeItem;
+    parObj=(LinkableMapObj*)parent; //FIXME-4 try to get rid of parObj and use parentItem() instead
+    init ();
+}
+
+LinkableMapObj::~LinkableMapObj()
+{
+    //qDebug()<< "Destructor LMO  this="<<this<<" style="<<style<<" l="<<l<<"  p="<<p<<"  segment="<<segment.count();
+    delLink();
+}
+
+void LinkableMapObj::init ()
+{
+    parObjTmpBuf=NULL;
+    tmpParent=false;
+    parPos=QPointF(0,0);
+    childRefPos=QPointF(0,0);
+    floatRefPos=QPointF(0,0);
+    link2ParPos=false;
+    l=NULL;
+    p=NULL;
+    orientation=UndefinedOrientation;
+    linkwidth=20;      
+    thickness_start=8;
+    style=UndefinedStyle;
+    linkpos=Bottom;
+    arcsegs=13;
+    
+// TODO instead of linkcolor pen.color() could be used all around
+    pen.setWidth (1);
+    pen.setColor (linkcolor);
+    pen.setCapStyle ( Qt::RoundCap );
+
+    useBottomline=false;
+    bottomline=NULL;
+
+    topPad=botPad=leftPad=rightPad=0;
+
+    repositionRequest=false;
+
+    // Rel Positions
+    relPos=QPointF(0,0);
+    useRelPos=false;
+}
+
+void LinkableMapObj::createBottomLine()
+{
+    bottomline=scene()->addLine(QLineF(1,1,1,1),pen);
+    bottomline->setZValue(dZ_LINK);
+}
+
+void LinkableMapObj::delLink()
+{
+    if (bottomline)
+    {
+       delete (bottomline);
+       bottomline=NULL;
+    }  
+    switch (style)
+    {
+       case Line:
+           delete (l);
+           break;
+       case Parabel:
+           while (!segment.isEmpty()) delete segment.takeFirst();
+           break;
+       case PolyLine:
+           delete (p);
+           break;
+       case PolyParabel:
+           delete (p);
+           break;
+       default:
+           break;
+    }      
+}
+
+void LinkableMapObj::copy (LinkableMapObj* other)
+{
+    MapObj::copy(other);
+    bboxTotal=other->bboxTotal;
+    setLinkStyle(other->style);
+    setLinkColor (other->linkcolor);
+    relPos=other->relPos;
+    treeItem=other->treeItem;
+}
+
+void LinkableMapObj::setParObj(LinkableMapObj* o)
+{
+    parObj=o;
+    setParentItem (parObj);
+}
+
+void LinkableMapObj::setParObjTmp(LinkableMapObj*,QPointF,int) 
+{
+}
+
+void LinkableMapObj::unsetParObjTmp()
+{
+}
+
+bool LinkableMapObj::hasParObjTmp()
+{
+    return tmpParent;
+}
+
+void LinkableMapObj::setUseRelPos (const bool &b)
+{
+    useRelPos=b;
+}
+
+bool LinkableMapObj::getUseRelPos ()
+{
+    return useRelPos;
+}
+
+void LinkableMapObj::setRelPos()
+{
+    if (parObj)
+       setRelPos (absPos - parObj->getChildRefPos() );
+    else
+       qWarning()<<"LMO::setRelPos parObj==0   this="<<this;
+}
+
+void LinkableMapObj::setRelPos(const QPointF &p)
+{
+    if (parObj)
+    {      
+       relPos=p;
+       useRelPos=true;
+       setOrientation();
+    }  else
+       qWarning()<<"LMO::setRelPos (p)  parObj==0   this="<<this;
+}
+
+QPointF LinkableMapObj::getRelPos()
+{
+    if (!parObj) 
+    {
+       qWarning()<<"LMO::getRelPos parObj==0   this="<<this;
+       return QPointF();
+    }
+    return relPos;
+}
+
+qreal LinkableMapObj::getTopPad()
+{
+    return topPad;
+}
+
+qreal LinkableMapObj::getLeftPad()
+{
+    return leftPad;
+}
+
+qreal LinkableMapObj::getRightPad()
+{
+    return rightPad;
+}
+
+LinkableMapObj::Style LinkableMapObj::getDefLinkStyle (TreeItem *parent)
+{
+    VymModel *model=treeItem->getModel();
+    if (!model)
+    {
+       qWarning ("LMO::getDefLinkStyle   model=NULL");
+       //return UndefinedStyle;
+    }
+    Style ls=model->getMapLinkStyle();
+    int depth=1+parent->depth();
+    if (depth==0) return UndefinedStyle;
+    switch (ls)
+    {
+       case Line: 
+           return ls;
+           break;
+       case Parabel:
+           return ls;
+           break;
+       case PolyLine:  
+           if (depth>1)
+               return Line;
+           else    
+               return ls;
+           break;
+       case PolyParabel:   
+           if (depth>1)
+               return Parabel;
+           else    
+               return ls;
+           break;
+       default: 
+           break;  
+    }  
+    return UndefinedStyle;
+}
+
+void LinkableMapObj::setLinkStyle(Style newstyle)
+{
+    //qDebug()<<"LMO::setLinkStyle s="<<newstyle;      //FIXME-4 called very often?!?!
+    //qDebug()<<"LMO::setLinkStyle s="<<newstyle<<" for "<<this<<" "<<treeItem->getHeading()<<"  parObj="<<parObj;
+    delLink();
+       
+    style=newstyle;
+
+    QGraphicsLineItem *cl;
+    switch (style)
+    {
+       case Line: 
+           l = scene()->addLine(QLineF(1,1,1,1),pen);
+           l->setZValue(dZ_LINK);
+           if (visible)
+               l->show();
+           else
+               l->hide();
+           createBottomLine();
+           break;
+       case Parabel:
+           for (int i=0;i<arcsegs;i++)
+           {
+               cl = scene()->addLine(QLineF(i*5,0,i*10,100),pen);
+               cl->setZValue(dZ_LINK);
+               if (visible)
+                   cl->show();
+               else
+                   cl->hide();
+               segment.append(cl);
+           }
+           pa0.resize (arcsegs+1);
+           createBottomLine();
+           break;
+       case PolyLine:  
+           p =scene()->addPolygon(QPolygonF(),pen,linkcolor);
+           p->setZValue(dZ_LINK);
+           if (visible)
+               p->show();
+           else
+               p->hide();
+           pa0.resize (3);
+           createBottomLine();
+           break;
+       case PolyParabel:       
+           p = scene()->addPolygon(QPolygonF(),pen,linkcolor);
+           p->setZValue(dZ_LINK);
+           if (visible)
+               p->show();
+           else
+               p->hide();
+           pa0.resize (arcsegs*2+2);
+           pa1.resize (arcsegs+1);
+           pa2.resize (arcsegs+1);
+           createBottomLine();
+           break;
+       default: 
+           break;      
+    }   
+}
+
+LinkableMapObj::Style LinkableMapObj::getLinkStyle()
+{
+    return style;
+}
+
+void LinkableMapObj::setLinkPos(Position lp)
+{
+    linkpos=lp;
+}
+
+LinkableMapObj::Position LinkableMapObj::getLinkPos()
+{
+    return linkpos;
+}
+
+void LinkableMapObj::setLinkColor()
+{
+    // Overloaded in BranchObj and children
+    // here only set default color
+    VymModel *model=treeItem->getModel();
+    if (model)
+       setLinkColor (model->getMapDefLinkColor());
+}
+
+void LinkableMapObj::setLinkColor(QColor col)
+{
+    linkcolor=col;
+    pen.setColor(col);
+    if (bottomline) bottomline->setPen( pen );
+    switch (style)
+    {
+       case Line:
+           l->setPen( pen);
+           break;  
+       case Parabel:   
+           for (int i=0; i<segment.size(); ++i)
+               segment.at(i)->setPen( pen);
+           break;
+       case PolyLine:
+           p->setBrush( QBrush(col));
+           p->setPen( pen);
+           break;
+       case PolyParabel:   
+           p->setBrush( QBrush(col));
+           p->setPen( pen);
+           break;
+       default:
+           break;
+    } 
+}
+
+QColor LinkableMapObj::getLinkColor()
+{
+    return linkcolor;
+}
+
+void LinkableMapObj::setVisibility (bool v)
+{
+    MapObj::setVisibility (v);
+    updateVisibility();
+}
+
+void LinkableMapObj::setOrientation()
+{
+    if (!parObj)
+    {
+        orientation = UndefinedOrientation;
+        return;
+    }
+
+    // calc orientation depending on position rel to parent
+    if (useRelPos)
+    {
+        if (relPos.x() < 0)
+            orientation = LeftOfCenter;
+        else
+            orientation = RightOfCenter;
+    }  else
+        // use the orientation of the parent:
+        orientation = parObj->getOrientation();
+}
+
+void LinkableMapObj::updateVisibility()
+{
+    bool visnow=visible;
+
+    // Hide links of unselected objects (if wanted)
+    if (((MapItem*)treeItem)->getHideLinkUnselected()
+       && !treeItem->getModel()->isSelected(treeItem) )
+       visnow=false;
+
+    if (visnow) 
+    {
+       if (bottomline)
+       {
+           if (useBottomline)
+               bottomline->show();
+           else        
+               bottomline->hide();
+       }
+
+       switch (style)
+       {
+           case Line:
+               if (l) l->show();
+               break;
+           case Parabel:   
+               for (int i=0; i<segment.size(); ++i)
+                   segment.at(i)->show();
+               break;  
+           case PolyLine:
+               if (p) 
+                   p->show();
+               else 
+                   qDebug()<< "LMO::updateVis p==0 (PolyLine)"; //FIXME-4
+               break;
+           case PolyParabel:   
+               if (p) 
+                   p->show();
+               else
+            qDebug()<< "LMO::updateVis p==0 (PolyParabel) "<<treeItem->getHeadingPlain(); //FIXME-4
+               break;
+           default:
+               break;
+       }
+    } else 
+    {
+       if (bottomline) bottomline->hide();
+       switch (style)
+       {
+           case Line:
+               if (l) l->hide();
+               break;
+           case Parabel:   
+               for (int i=0; i<segment.size(); ++i)
+                   segment.at(i)->hide();
+               break;  
+           case PolyLine:
+               if (p) p->hide();
+               break;
+           case PolyParabel:   
+               if (p) p->hide();
+               break;
+           default:
+               break;
+       }
+    }  
+}
+
+void LinkableMapObj::updateLinkGeometry()
+{
+    // needs:
+    // childRefPos of parent
+    // orient   of parent
+    // style
+    //
+    // sets:
+    // orientation
+    // childRefPos    (by calling setDockPos())
+    // parPos      (by calling setDockPos())
+    //  bottomlineY
+    // drawing of the link itself
+
+    // updateLinkGeometry is called from move, but called from constructor we don't
+    // have parents yet...
+
+    if (style == UndefinedStyle)
+    {
+        setDockPos();
+        return;
+    }
+
+    switch (linkpos)
+    {
+        case Middle:
+            bottomlineY = bbox.top() + bbox.height()/2;        // draw link to middle (of frame)
+            break;
+        case Bottom:
+            //bottomlineY = bbox.bottom()-1;  // draw link to bottom of box
+            bottomlineY = bbox.bottom()  - botPad;  
+            break;
+    }
+    
+    double p2x, p2y;                           // Set P2 Before setting
+    if (!link2ParPos)
+    {
+        p2x = QPointF( parObj->getChildRefPos() ).x();   // P1, we have to look at
+        p2y = QPointF( parObj->getChildRefPos() ).y();   // orientation
+    } else
+    {
+        p2x = QPointF( parObj->getParPos() ).x();
+        p2y = QPointF( parObj->getParPos() ).y();
+    }
+
+    setOrientation();
+    setDockPos(); // Call overloaded method
+
+    double p1x = parPos.x();  // Link is drawn from P1 to P2
+    double p1y = parPos.y();
+
+    double vx = p2x - p1x;    // V=P2-P1
+    double vy = p2y - p1y;
+
+    int z;
+    // Hack to z-move links to MapCenter (d==1) below MCOs frame (d==0) //FIXME-4 no longer used?
+    if (treeItem->depth()<2)
+        //z=(treeItem->depth() -2)*dZ_DEPTH + dZ_LINK;
+        z =- dZ_LINK;
+    else
+        z = dZ_LINK;
+
+    //qDebug()<<"LMO::updateGeo d="<<treeItem->depth()<<"  this="<<this<<"  "<<treeItem->getHeading();
+
+    // Draw the horizontal line below heading (from childRefPos to ParPos)
+    if (bottomline) 
+    {
+        bottomline->setLine (QLineF (childRefPos.x(), childRefPos.y(), p1x, p1y) );
+        bottomline->setZValue (z);
+    }
+
+    double a;  // angle
+    if (vx > -0.000001 && vx < 0.000001)
+        a = M_PI_2;
+    else
+        a = atan( vy / vx );
+    // "turning point" for drawing polygonal links
+    QPointF tp ( -qRound(sin (a) * thickness_start), qRound(cos (a) * thickness_start));
+    
+    // Draw the link
+    switch (style)
+    {
+    case Line:
+        l->setLine( QLine(qRound (parPos.x()),
+                          qRound(parPos.y()),
+                          qRound(p2x),
+                          qRound(p2y) ));
+        l->setZValue (z);
+        break;
+    case Parabel:
+        parabel (pa0, p1x,p1y,p2x,p2y);
+        for (int i=0; i<segment.size(); ++i)
+        {
+            segment.at(i)->setLine(QLineF( pa0.at(i).x(), pa0.at(i).y(), pa0.at(i + 1).x(),pa0.at(i + 1).y()));
+            segment.at(i)->setZValue (z);
+        }
+        break;
+    case PolyLine:
+        pa0.clear();
+        pa0 << QPointF (qRound(p2x + tp.x()), qRound(p2y + tp.y()));
+        pa0 << QPointF (qRound(p2x - tp.x()), qRound(p2y - tp.y()));
+        pa0 << QPointF (qRound (parPos.x()), qRound(parPos.y()) );
+        p->setPolygon(QPolygonF (pa0));
+        p->setZValue (z);
+        break;
+    case PolyParabel:
+        parabel (pa1, p1x,p1y,p2x+tp.x(),p2y+tp.y());
+        parabel (pa2, p1x,p1y,p2x-tp.x(),p2y-tp.y());
+        pa0.clear();
+        for (int i = 0; i <= arcsegs; i++)
+            pa0 << QPointF (pa1.at(i));
+        for (int i = 0; i<= arcsegs; i++)
+            pa0 << QPointF (pa2.at(arcsegs-i));
+        p->setPolygon(QPolygonF (pa0));
+        p->setZValue (z);
+        break;
+    default:
+        break;
+    }
+}
+    
+QPointF LinkableMapObj::getChildRefPos()
+{
+    return childRefPos;
+}
+
+QPointF LinkableMapObj::getFloatRefPos()
+{
+    return floatRefPos;
+}
+
+QPointF LinkableMapObj::getParPos()
+{
+    return parPos;
+}
+
+LinkableMapObj::Orientation LinkableMapObj::getOrientation()
+{
+    return orientation;
+}
+
+void LinkableMapObj::reposition()  // virtual
+{
+}
+
+void LinkableMapObj::requestReposition()   
+{
+    if (!repositionRequest)
+    {
+       // Pass on the request to parental objects, if this hasn't
+       // been done yet
+       repositionRequest=true;
+       if (parObj) parObj->requestReposition();
+    }
+}
+
+void LinkableMapObj::forceReposition()
+{
+    // Sometimes a reposition has to be done immediatly: For example
+    // if the note editor flag changes, there is no user event in mapeditor
+    // which could collect requests for a reposition.
+    // Then we have to call forceReposition()
+    // But no rule without exception: While loading a map or undoing it,
+    // we want to block expensive repositioning, but just do it once at
+    // the end, thus check first:
+
+    VymModel *model=treeItem->getModel();
+    if (model->isRepositionBlocked()) return;  
+    
+    // Pass on the request to parent objects, if this hasn't been done yet
+    if (parObj) 
+       parObj->forceReposition(); 
+    else 
+       reposition(); 
+}
+
+bool LinkableMapObj::repositionRequested()
+{
+    return repositionRequest;
+}
+
+void LinkableMapObj::parabel (QPolygonF &ya, qreal p1x, qreal p1y, qreal p2x, qreal p2y)
+
+{
+    qreal vx = p2x - p1x;    // V=P2-P1
+    qreal vy = p2y - p1y;
+
+    qreal dx;              // delta x during calculation of parabel
+    
+    qreal pnx;             // next point
+    qreal pny;
+    qreal m;
+
+    if (vx > -0.0001 && vx < 0.0001)
+       m = 0;
+    else    
+       m = (vy / (vx*vx));
+    dx = vx/(arcsegs);
+    ya.clear();
+    ya << QPointF (p1x,p1y);
+    for (int i=1; i <= arcsegs; i++)
+    {  
+       pnx = p1x + dx;
+       pny = m * (pnx - parPos.x()) * (pnx - parPos.x()) + parPos.y();
+       ya << QPointF (pnx, pny);
+       p1x = pnx;
+       p1y = pny;
+    }  
+}
+
diff --git a/linkablemapobj.h b/linkablemapobj.h
new file mode 100644 (file)
index 0000000..5189d04
--- /dev/null
@@ -0,0 +1,150 @@
+#ifndef LINKABLEMAPOBJ_H
+#define LINKABLEMAPOBJ_H
+
+#include "animpoint.h"
+#include "vymnote.h"
+#include "headingobj.h"
+#include "flagrowobj.h"
+
+#define MAX_DEPTH 999
+
+class VymModel;
+class TreeItem;
+
+/*! \brief This class adds links to MapObj 
+
+The links are connecting the branches (BranchObj) and images (FloatImageObj) in the map.
+*/
+
+class LinkableMapObj:public MapObj {
+public:
+    /*! Orientation of an object depends on the position relative to the parent */
+    enum Orientation {
+        UndefinedOrientation,   //!< Undefined
+        LeftOfCenter,           //!< Object is left of center
+        RightOfCenter           //!< Object is right of center
+    };
+
+    /*! Various drawing styles for links */
+    enum Style {
+        UndefinedStyle,        //!< Undefined
+        Line,          //!< Straight line
+        Parabel,       //!< Parabel
+        PolyLine,      //!< Polygon (thick line)
+        PolyParabel    //!< Thick parabel
+    };
+
+    /*! Vertical position of link in object */
+    enum Position {
+        Middle, //!< Link is drawn in the middle of object
+        Bottom  //!< Link is drawn at bottom of object
+    };
+
+
+    /*! Hint if link should use the default link color or the color of heading */
+    enum ColorHint {
+        DefaultColor,  //!< Link uses the default color
+        HeadingColor   //!< Link uses the color of heading
+    };
+
+    LinkableMapObj ();
+    LinkableMapObj (QGraphicsItem*, TreeItem *ti=NULL);
+    virtual ~LinkableMapObj ();
+protected:
+    virtual void init ();
+    virtual void createBottomLine();
+public:
+    virtual void delLink();
+    virtual void copy (LinkableMapObj*);
+
+    void setChildObj (LinkableMapObj*);
+    virtual void setParObj (LinkableMapObj*);
+    virtual void setParObjTmp (LinkableMapObj*,QPointF,int);   // Only for moving Obj around
+    virtual void unsetParObjTmp();                     // reuse original ParObj
+    virtual bool hasParObjTmp();
+
+    virtual void setUseRelPos (const bool&);
+    virtual bool getUseRelPos();
+    virtual void setRelPos();              // set relPos to current parentPos
+    virtual void setRelPos(const QPointF&);
+    virtual QPointF getRelPos();
+
+    virtual qreal getTopPad();
+    virtual qreal getLeftPad();
+    virtual qreal getRightPad();
+    Style getDefLinkStyle(TreeItem *parent);
+    void setLinkStyle(Style);
+    Style getLinkStyle();
+
+    void setLinkPos (Position);
+    Position getLinkPos ();
+
+    virtual void setLinkColor();           // sets color according to colorhint, overloaded
+    virtual void setLinkColor(QColor);
+    QColor getLinkColor();
+    virtual void setVisibility (bool);
+    virtual void setOrientation();
+    virtual void updateVisibility();       //! hides/unhides link depending on selection
+
+    /*! update parPos, childRefPos
+    depending on pos
+    redraw link with given style */
+    virtual void updateLinkGeometry();
+
+    virtual void setDockPos()=0;           // sets childRefPos and parPos
+    QPointF getChildRefPos();              // returns pos where children dock
+    QPointF getFloatRefPos();              // returns pos where floats dock
+    QPointF getParPos();                    // returns pos where parents dock
+    Orientation getOrientation();          // get orientation
+
+    virtual void reposition();
+    virtual void requestReposition();      // do reposition after next user event
+    virtual void forceReposition();        // to force a reposition now (outside
+    // of mapeditor e.g. in noteeditor
+    virtual bool repositionRequested();
+
+    virtual void calcBBoxSizeWithChildren()=0;// calc size of  BBox including children recursivly
+
+protected:
+    void parabel(QPolygonF &, qreal, qreal, qreal, qreal);  // Create Parabel connecting two points
+
+    QPointF childRefPos;
+    QPointF floatRefPos;
+    QPointF parPos;
+    bool link2ParPos;              // While moving around, sometimes link to parent
+
+    Orientation orientation;
+    qreal linkwidth;               // width of a link
+    QRectF bboxTotal;              // bounding box including children
+
+    LinkableMapObj* parObj;
+    LinkableMapObj* parObjTmpBuf;   // temporary buffer the original parent
+    bool tmpParent;
+
+    int thickness_start;           // for StylePoly*
+    Style style;                   // Current style
+    Position linkpos;              // Link at bottom of object or middle of height
+    QColor linkcolor;               // Link color
+    QPen pen;
+    QGraphicsLineItem* l;           // line style
+    QGraphicsPolygonItem* p;       // poly styles
+    int arcsegs;                    // arc: number of segments
+    QList <QGraphicsLineItem*> segment; // a part of e.g. the parabel
+    QPolygonF pa0;                 // For drawing of PolyParabel and PolyLine
+    QPolygonF pa1;                 // For drawing of PolyParabel
+    QPolygonF pa2;                 // For drawing of PolyParabel
+
+    QGraphicsLineItem* bottomline;  // on bottom of BBox
+    bool useBottomline;                    //! Hint if bottomline should be used
+    qreal bottomlineY;              // vertical offset of dockpos to pos
+
+    bool repositionRequest;        //
+
+    qreal topPad, botPad,
+    leftPad, rightPad;          // padding within bbox
+
+    QPointF  relPos;               // position relative to childRefPos of parent
+    bool useRelPos;
+
+};
+#endif
diff --git a/lockedfiledialog.cpp b/lockedfiledialog.cpp
new file mode 100644 (file)
index 0000000..845eda5
--- /dev/null
@@ -0,0 +1,28 @@
+#include "lockedfiledialog.h"
+
+LockedFileDialog::LockedFileDialog(QWidget* parent):QDialog (parent)
+{
+    ui.setupUi(this);
+    ui.openReadonlyButton->setText(tr("Open readonly"));
+    ui.deleteLockfileButton->setText(tr("Delete lockfile"));
+}
+
+LockedFileDialog::Result LockedFileDialog::execDialog()
+{
+    // Really show dialog
+    if (QDialog::exec() == QDialog::Accepted)
+        return OpenReadonly;
+    else
+        return DeleteLockfile;
+}
+
+
+void LockedFileDialog::setText (const QString &s)
+{
+    ui.warningTE->setText(s);
+}
+
+void LockedFileDialog::setCaption(const QString &s)
+{
+    QDialog::setWindowTitle("VYM - "+s);
+}
diff --git a/lockedfiledialog.h b/lockedfiledialog.h
new file mode 100644 (file)
index 0000000..e3fc233
--- /dev/null
@@ -0,0 +1,25 @@
+#ifndef LOCKEDFILEDIALOG_H
+#define LOCKEDFILEDIALOG_H
+
+#include "ui_lockedfiledialog.h"
+
+class LockedFileDialog : public QDialog
+{
+    Q_OBJECT
+
+public:
+    enum Result {OpenReadonly, DeleteLockfile};
+
+    LockedFileDialog(QWidget* parent = 0);
+    Result execDialog();
+
+public slots:
+    virtual void setText( const QString & s );
+    virtual void setCaption( const QString & s );
+
+private:
+    void init();
+    Ui::LockedFileDialog ui;
+};
+
+#endif 
diff --git a/lockedfiledialog.ui b/lockedfiledialog.ui
new file mode 100644 (file)
index 0000000..e180756
--- /dev/null
@@ -0,0 +1,166 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>LockedFileDialog</class>
+ <widget class="QDialog" name="LockedFileDialog">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>557</width>
+    <height>177</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>Dialog</string>
+  </property>
+  <layout class="QVBoxLayout" name="verticalLayout">
+   <item>
+    <widget class="QTextEdit" name="warningTE">
+     <property name="palette">
+      <palette>
+       <active>
+        <colorrole role="Base">
+         <brush brushstyle="SolidPattern">
+          <color alpha="255">
+           <red>238</red>
+           <green>238</green>
+           <blue>238</blue>
+          </color>
+         </brush>
+        </colorrole>
+       </active>
+       <inactive>
+        <colorrole role="Base">
+         <brush brushstyle="SolidPattern">
+          <color alpha="255">
+           <red>238</red>
+           <green>238</green>
+           <blue>238</blue>
+          </color>
+         </brush>
+        </colorrole>
+       </inactive>
+       <disabled>
+        <colorrole role="Base">
+         <brush brushstyle="SolidPattern">
+          <color alpha="255">
+           <red>238</red>
+           <green>238</green>
+           <blue>238</blue>
+          </color>
+         </brush>
+        </colorrole>
+       </disabled>
+      </palette>
+     </property>
+     <property name="frameShape">
+      <enum>QFrame::NoFrame</enum>
+     </property>
+     <property name="frameShadow">
+      <enum>QFrame::Plain</enum>
+     </property>
+     <property name="readOnly">
+      <bool>true</bool>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <spacer name="verticalSpacer">
+     <property name="orientation">
+      <enum>Qt::Vertical</enum>
+     </property>
+     <property name="sizeHint" stdset="0">
+      <size>
+       <width>20</width>
+       <height>26</height>
+      </size>
+     </property>
+    </spacer>
+   </item>
+   <item>
+    <layout class="QHBoxLayout">
+     <property name="spacing">
+      <number>6</number>
+     </property>
+     <property name="leftMargin">
+      <number>0</number>
+     </property>
+     <property name="topMargin">
+      <number>0</number>
+     </property>
+     <property name="rightMargin">
+      <number>0</number>
+     </property>
+     <property name="bottomMargin">
+      <number>0</number>
+     </property>
+     <item>
+      <spacer>
+       <property name="orientation">
+        <enum>Qt::Horizontal</enum>
+       </property>
+       <property name="sizeType">
+        <enum>QSizePolicy::Expanding</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>73</width>
+         <height>31</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+     <item>
+      <widget class="QPushButton" name="deleteLockfileButton">
+       <property name="text">
+        <string>Delete lockfile</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="openReadonlyButton">
+       <property name="text">
+        <string>Open readonly</string>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
+  </layout>
+ </widget>
+ <resources/>
+ <connections>
+  <connection>
+   <sender>openReadonlyButton</sender>
+   <signal>pressed()</signal>
+   <receiver>LockedFileDialog</receiver>
+   <slot>accept()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>518</x>
+     <y>234</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>272</x>
+     <y>127</y>
+    </hint>
+   </hints>
+  </connection>
+  <connection>
+   <sender>deleteLockfileButton</sender>
+   <signal>pressed()</signal>
+   <receiver>LockedFileDialog</receiver>
+   <slot>reject()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>436</x>
+     <y>232</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>219</x>
+     <y>223</y>
+    </hint>
+   </hints>
+  </connection>
+ </connections>
+</ui>
diff --git a/macros.cpp b/macros.cpp
new file mode 100644 (file)
index 0000000..a615c78
--- /dev/null
@@ -0,0 +1,49 @@
+#include "macros.h"
+
+#include "settings.h"
+
+#include <QDir>
+#include <QTextStream>
+
+extern Settings settings;
+extern QDir vymBaseDir;
+extern QString macroPath;
+
+QString Macros::getPath (const int &i)
+{
+    QString pad;
+    int n=i;
+    if (i%13 <10)
+        pad="0";
+    else
+        pad="";
+
+    QString prefix;
+    if (i<13) 
+        prefix="";
+    else
+    {
+        prefix="s";
+        n=i-12;
+    }
+    return macroPath + QString("macro-%1%2%3.vys").arg(prefix).arg(pad).arg(n);
+}
+
+QString Macros::getMacro (const int &i)    
+{
+    QString fn=getPath(i);
+
+    QFile f (fn);
+    if ( !f.open( QIODevice::ReadOnly ) )
+    {
+        QObject::tr("Warning"),
+                QObject::tr("Couldn't find a macro at  %1.\n").arg(fn)+
+                QObject::tr("Please use Settings->")+QObject::tr("Set directory for vym macros");
+        return QString();
+    }
+
+    QTextStream ts( &f );
+    QString macro= ts.readAll();
+
+   return macro;
+}
diff --git a/macros.h b/macros.h
new file mode 100644 (file)
index 0000000..fac3cac
--- /dev/null
+++ b/macros.h
@@ -0,0 +1,11 @@
+#ifndef MACROS_H
+#define MACROS_H
+
+#include <QString>
+
+class Macros {
+public:
+    QString getPath (const int &i);
+    QString getMacro (const int &i);
+};
+#endif
diff --git a/macros/macro-01.vys b/macros/macro-01.vys
new file mode 100644 (file)
index 0000000..f2e242f
--- /dev/null
@@ -0,0 +1,2 @@
+# Macro F1
+colorSubtree ("#ff0000");
diff --git a/macros/macro-02.vys b/macros/macro-02.vys
new file mode 100644 (file)
index 0000000..9a904e6
--- /dev/null
@@ -0,0 +1,2 @@
+# Macro F2
+colorSubtree ("#d95100");
diff --git a/macros/macro-03.vys b/macros/macro-03.vys
new file mode 100644 (file)
index 0000000..77514bd
--- /dev/null
@@ -0,0 +1,2 @@
+# Macro F3 
+colorSubtree ("#009900");
diff --git a/macros/macro-04.vys b/macros/macro-04.vys
new file mode 100644 (file)
index 0000000..73f74c7
--- /dev/null
@@ -0,0 +1,2 @@
+#Macro F4
+colorSubtree ("#00aa7f");
diff --git a/macros/macro-05.vys b/macros/macro-05.vys
new file mode 100644 (file)
index 0000000..2ce00d9
--- /dev/null
@@ -0,0 +1,2 @@
+# Macro F5 
+colorSubtree ("#aa00ff");
diff --git a/macros/macro-06.vys b/macros/macro-06.vys
new file mode 100644 (file)
index 0000000..3f10db6
--- /dev/null
@@ -0,0 +1,2 @@
+# Macro F6
+colorSubtree ("#c466ff");
diff --git a/macros/macro-07.vys b/macros/macro-07.vys
new file mode 100644 (file)
index 0000000..510ef44
--- /dev/null
@@ -0,0 +1,2 @@
+# Macro F7
+colorSubtree ("#0000ff");
diff --git a/macros/macro-08.vys b/macros/macro-08.vys
new file mode 100644 (file)
index 0000000..62e88e8
--- /dev/null
@@ -0,0 +1,3 @@
+# Macro F8
+colorSubtree ("#616147");
+toggleFlag ("clock");
diff --git a/macros/macro-09.vys b/macros/macro-09.vys
new file mode 100644 (file)
index 0000000..d7a89d3
--- /dev/null
@@ -0,0 +1,2 @@
+# Macro F9
+toggleFrameIncludeChildren();
diff --git a/macros/macro-10.vys b/macros/macro-10.vys
new file mode 100644 (file)
index 0000000..112b687
--- /dev/null
@@ -0,0 +1,2 @@
+# Macro F10
+setFrameType ("NoFrame");
diff --git a/macros/macro-11.vys b/macros/macro-11.vys
new file mode 100644 (file)
index 0000000..ab42974
--- /dev/null
@@ -0,0 +1,2 @@
+# Macro F11
+setFrameType ("Ellipse");
diff --git a/macros/macro-12.vys b/macros/macro-12.vys
new file mode 100644 (file)
index 0000000..bb5d279
--- /dev/null
@@ -0,0 +1,4 @@
+# Macro F12
+setFrameType ("RoundedRectangle");
+setFramePadding (10);
+setFrameIncludeChildren (true);
diff --git a/macros/macro-s01.vys b/macros/macro-s01.vys
new file mode 100644 (file)
index 0000000..212f8be
--- /dev/null
@@ -0,0 +1,3 @@
+# Macro F1 + Shift
+toggleTask();
+toggleFlag("cross-red");
diff --git a/macros/macro-s02.vys b/macros/macro-s02.vys
new file mode 100644 (file)
index 0000000..34d759c
--- /dev/null
@@ -0,0 +1 @@
+# Macro F2 + Shift
diff --git a/macros/macro-s03.vys b/macros/macro-s03.vys
new file mode 100644 (file)
index 0000000..9c1f8b9
--- /dev/null
@@ -0,0 +1 @@
+# Macro F3 + Shift
diff --git a/macros/macro-s04.vys b/macros/macro-s04.vys
new file mode 100644 (file)
index 0000000..35287a1
--- /dev/null
@@ -0,0 +1 @@
+# Macro F4 + Shift
diff --git a/macros/macro-s05.vys b/macros/macro-s05.vys
new file mode 100644 (file)
index 0000000..e187e6f
--- /dev/null
@@ -0,0 +1 @@
+# Macro F5 + Shift
diff --git a/macros/macro-s06.vys b/macros/macro-s06.vys
new file mode 100644 (file)
index 0000000..6403c87
--- /dev/null
@@ -0,0 +1 @@
+# Macro F6 + Shift
diff --git a/macros/macro-s07.vys b/macros/macro-s07.vys
new file mode 100644 (file)
index 0000000..f194071
--- /dev/null
@@ -0,0 +1 @@
+# Macro F7 + Shift
diff --git a/macros/macro-s08.vys b/macros/macro-s08.vys
new file mode 100644 (file)
index 0000000..fe7bf7e
--- /dev/null
@@ -0,0 +1 @@
+# Macro F8 + Shift
diff --git a/macros/macro-s09.vys b/macros/macro-s09.vys
new file mode 100644 (file)
index 0000000..a9b24bd
--- /dev/null
@@ -0,0 +1 @@
+# Macro F9 + Shift
diff --git a/macros/macro-s10.vys b/macros/macro-s10.vys
new file mode 100644 (file)
index 0000000..59b514f
--- /dev/null
@@ -0,0 +1 @@
+# Macro F10 + Shift
diff --git a/macros/macro-s11.vys b/macros/macro-s11.vys
new file mode 100644 (file)
index 0000000..305bf2a
--- /dev/null
@@ -0,0 +1 @@
+# Macro F11 + Shift
diff --git a/macros/macro-s12.vys b/macros/macro-s12.vys
new file mode 100644 (file)
index 0000000..7b24e5e
--- /dev/null
@@ -0,0 +1 @@
+# Macro F12 + Shift
diff --git a/macros/slideeditor-snapshot.vys b/macros/slideeditor-snapshot.vys
new file mode 100644 (file)
index 0000000..0aec4c3
--- /dev/null
@@ -0,0 +1,5 @@
+# Template for taking snapshots in slideeditor
+
+setMapZoom(CURRENT_ZOOM);
+setMapRotation(CURRENT_ANGLE);
+centerOnID(CURRENT_ID);
diff --git a/main.cpp b/main.cpp
new file mode 100644 (file)
index 0000000..e3fccfa
--- /dev/null
+++ b/main.cpp
@@ -0,0 +1,509 @@
+#include <QApplication>
+#include <QMessageBox>
+
+#include <cstdlib>
+#include <iostream>
+using namespace std;
+
+#include "command.h"
+#include "findwidget.h"
+#include "findresultwidget.h"
+#include "flagrow.h"
+#include "flagrowobj.h"
+#include "headingeditor.h"
+#include "macros.h"
+#include "mainwindow.h"
+#include "noteeditor.h"
+#include "options.h"
+#include "settings.h"
+#include "scripteditor.h"
+#include "shortcuts.h"
+#include "taskeditor.h"
+#include "taskmodel.h"
+#include "version.h"
+
+#if defined(VYM_DBUS)
+#include <sys/types.h>         // To retrieve PID for use in DBUS
+#endif
+
+#if defined(Q_OS_WIN32)
+#define WIN32_LEAN_AND_MEAN
+#include <windows.h>
+#define getpid GetCurrentProcessId
+#else
+#include <unistd.h>
+#endif
+
+#if defined(VYM_DBUS)
+#include <QtDBus/QDBusConnection>
+#include <QtDBus/QDBusError>
+#endif
+
+QString vymName;
+QString vymVersion;
+QString vymHome;
+QString vymBuildDate;
+QString vymCodeName;
+QString vymInstanceName;
+QString vymPlatform;
+QString localeName;
+
+QTextStream vout(stdout);        // vymout - Testing for now. Flush after writing...
+
+bool bugzillaClientAvailable;  // openSUSE specific currently
+
+TaskModel     *taskModel;
+TaskEditor    *taskEditor;
+ScriptEditor  *scriptEditor;
+HeadingEditor *headingEditor;      
+NoteEditor    *noteEditor;     // used in Constr. of LinkableMapObj
+// initialized in mainwindow
+Main *mainWindow;              // used in BranchObj::select()          
+FindWidget *findWidget;
+FindResultWidget *findResultWidget;
+
+Macros macros;
+
+uint itemLastID=0;             // Unique ID for all items in all models
+
+QString tmpVymDir;             // All temp files go there, created in mainwindow
+QString clipboardDir;          // Clipboard used in all mapEditors
+QString clipboardFile;         // Clipboard used in all mapEditors
+QDir vymBaseDir;               // Containing all styles, scripts, images, ...
+QDir lastImageDir;
+QDir lastMapDir;
+QDir lastExportDir;
+#if defined(Q_OS_WIN32)
+QDir vymInstallDir;
+#endif
+QString iconPath;              // Pointing to icons used for toolbars
+QString flagsPath;             // Pointing to flags
+QString macroPath;              // Pointing to macros
+
+bool clipboardEmpty;           
+bool debug;             // global debugging flag
+bool testmode;                 // Used to disable saving of autosave setting
+FlagRow *systemFlagsMaster; 
+FlagRow *standardFlagsMaster;  
+
+Switchboard switchboard;
+
+Settings settings ("InSilmaril","vym"); // Organization, Application name
+QString zipToolPath;    // Platform dependant zip tool
+
+QList <Command*> modelCommands;
+
+Options options;
+ImageIO imageIO;
+
+int statusbarTime=10000;
+
+int warningCount=0;
+int criticalCount=0;
+int fatalCount=0;
+
+void msgHandler (QtMsgType type, const QMessageLogContext &context, const QString &msg)
+{
+    QByteArray localMsg = msg.toLocal8Bit();
+    switch (type)
+    {
+    case QtDebugMsg:
+        fprintf(stderr, "%s (%s:%u, %s)\n", localMsg.constData(), context.file, context.line, context.function);
+        break;
+    case QtWarningMsg:
+        fprintf(stderr, "Warning: %s (%s:%u, %s)\n", localMsg.constData(), context.file, context.line, context.function);
+        warningCount++;
+        break;
+    case QtCriticalMsg:
+        fprintf(stderr, "Critical: %s (%s:%u, %s)\n", localMsg.constData(), context.file, context.line, context.function);
+        criticalCount++;
+        break;
+    case QtFatalMsg:
+        fprintf(stderr, "Fatal: %s (%s:%u, %s)\n", localMsg.constData(), context.file, context.line, context.function);
+        fatalCount++;
+    default:
+        fprintf(stderr, "Info: %s (%s:%u, %s)\n", localMsg.constData(), context.file, context.line, context.function);
+    }
+}
+
+int main(int argc, char* argv[])
+{
+    QApplication app(argc,argv);
+
+    vymName=__VYM_NAME;
+    vymVersion=__VYM_VERSION;
+    vymBuildDate=__VYM_BUILD_DATE;
+    vymCodeName=__VYM_CODENAME;
+    vymHome=__VYM_HOME;
+
+    // Install our own handler for messages
+    qInstallMessageHandler(msgHandler);
+
+    // Testing for now
+    vout.setCodec("UTF-8");
+
+    // Reading and initializing options commandline options
+    options.add ("batch", Option::Switch, "b", "batch");
+    options.add ("commands", Option::Switch, "c", "commands");
+    options.add ("commandslatex", Option::Switch, "cl", "commandslatex");
+    options.add ("debug", Option::Switch, "d", "debug");
+    options.add ("help", Option::Switch, "h", "help");
+    options.add ("local", Option::Switch, "l", "local");
+    options.add ("locale", Option::String, "locale", "locale");
+    options.add ("name", Option::String, "n", "name");
+    options.add ("quit", Option::Switch, "q", "quit");
+    options.add ("run", Option::String, "r", "run");
+    options.add ("restore", Option::Switch, "R", "restore");
+    options.add ("shortcuts", Option::Switch, "s", "shortcuts");
+    options.add ("shortcutsLaTeX", Option::Switch, "sl", "shortcutsLaTeX");
+    options.add ("testmode", Option::Switch, "t", "testmode");
+    options.add ("version", Option::Switch, "v","version");
+    options.setHelpText (
+                "VYM - View Your Mind\n"
+                "--------------------\n\n"
+                "Information about vym can be found in vym.pdf,\n"
+                "which should be part of the vym package.\n"
+                "It is also available at the project homepage:\n\n"
+                "http://www.InSilmaril.de/vym\n\n"
+                "Usage: vym [OPTION]... [FILE]... \n"
+                "Open FILEs with vym\n\n"
+                "-b           batch       batch mode: hide windows\n"
+                "-c           commands   List all available commands\n"
+                "-d           debug       Show debugging output\n"
+                "-h           help        Show this help text\n"
+                "-l           local       Run with ressources in current directory\n"
+                "--locale     locale      Override system locale setting to select language\n"
+                "-n  STRING   name        Set name of instance for DBus access\n"
+                "-q           quit        Quit immediatly after start for benchmarking\n"
+                "-r  FILE     run         Run script\n"
+                "-R           restore     Restore last session\n"
+                "-s           shortcuts   Show Keyboard shortcuts on start\n"
+                "--sl         LaTeX       Show Keyboard shortcuts in LaTeX format on start\n"
+                "-t           testmode    Test mode, e.g. no autosave and changing of its setting\n"
+                "-v           version     Show vym version\n"
+                );
+
+    if (options.parse())
+    {
+        cout << endl << qPrintable( options.getHelpText())<<endl;
+        return 1;
+    }
+
+    if (options.isOn ("version"))
+    {
+        cout << "VYM - View Your Mind (c) 2004-"<< QDate::currentDate().year()<<" Uwe Drechsel "  << endl
+             <<"   Version: "<<__VYM_VERSION <<endl
+            <<"Build date: "<<__VYM_BUILD_DATE << endl
+           <<"  "<<__VYM_CODENAME<<endl;
+
+        return 0;
+    }
+    
+    // Update some configurations, which were moved in 2.4.0
+    // This code should be removed later, e.g. in 2.6.0...
+    QStringList settingsChanged;
+    settingsChanged  << "readerURL"
+                     << "readerPDF"
+                     << "autosave/use"
+                     << "autosave/ms"
+                     << "writeBackupFile"
+                     << "printerName"
+                     << "printerFormat"
+                     << "printerFileName";
+    foreach (QString s, settingsChanged)
+    {
+        if (settings.contains("/mainwindow/" + s))
+        {
+            settings.setValue("/system/" + s, settings.value("/mainwindow/" + s));
+            settings.remove  ("/mainwindow/" + s);
+        }
+    }
+
+    if (settings.contains( "/mainwindow/readerURL") )
+        settings.setValue( "/system/readerURL", settings.value( "/mainwindow/readerURL"));
+
+    taskModel = new TaskModel();
+
+    debug=options.isOn ("debug");
+    //debug=true;
+    testmode=options.isOn ("testmode");
+
+    QString pidString=QString ("%1").arg(getpid());
+    if (debug) qDebug()<< "vym PID="<<pidString;
+
+#if defined(VYM_DBUS)
+    // Register for DBUS
+    QDBusConnection dbusConnection=QDBusConnection::sessionBus();
+    if (!dbusConnection.registerService ("org.insilmaril.vym-"+pidString))
+    {
+        fprintf(stderr, "%s\n",
+                qPrintable(QDBusConnection::sessionBus().lastError().message()));
+        exit(1);
+    }
+#endif
+
+    if (options.isOn ("name"))
+        vymInstanceName=options.getArg ("name");
+    else
+        vymInstanceName=pidString;
+    
+    bool debugBuild=false;
+#ifdef QT_DEBUG
+    qDebug()<<"QT_DEBUG is set";
+    debugBuild=true;
+#endif
+
+    // Use /usr/share/vym or /usr/local/share/vym or . ?
+    // First try options
+    if (options.isOn ("local") || debugBuild)
+    {
+        vymBaseDir.setPath (vymBaseDir.currentPath());
+    } else
+        // then look for environment variable
+        if (getenv("VYMHOME")!=0)
+        {
+            vymBaseDir.setPath (getenv("VYMHOME"));
+        } else
+            // ok, let's find my way on my own
+        {
+#if defined (Q_OS_MACX)
+            // Executable is in vym.app/Contents/MacOS, so go up first:
+            vymBaseDir = QCoreApplication::applicationDirPath();
+            vymBaseDir.cdUp();
+            vymBaseDir.cd("Resources");
+#elif defined (Q_OS_WIN32)
+            QString basePath;
+
+            wchar_t wbuf[512];
+            if (GetModuleFileName(NULL, wbuf, 512))
+            {
+                QString mfn(QString::fromWCharArray(wbuf));
+                mfn.replace('\\', '/');
+                int i=mfn.lastIndexOf('/');
+                if (i<0)
+                {
+                    QMessageBox::critical(0,
+                        "Error",
+                        "Couldn't setup vymBasePath");
+                    return 0;
+                }
+                if (mfn.right(mfn.length() -i -1) != "vym.exe")
+                {
+                    QMessageBox::critical(0,
+                        "Error",
+                        "vym executable not known as vym.exe");
+                    return 0;
+                }
+                basePath=mfn.left(i);
+            }
+            if (basePath.isEmpty())
+                basePath = vymBaseDir.currentPath();
+
+            vymInstallDir.setPath(basePath);
+            vymBaseDir.setPath(basePath);
+#else
+            vymBaseDir.setPath ("/usr/share/vym");
+            if (!vymBaseDir.exists())
+            {
+                vymBaseDir.setPath ("/usr/local/share/vym");
+                if (!vymBaseDir.exists())
+                    vymBaseDir.setPath(vymBaseDir.currentPath() );
+            }
+#endif
+        }
+
+    // Platform specific settings
+    vymPlatform = QSysInfo::prettyProductName();
+
+#if defined(Q_OS_MACX)
+#elif defined(Q_OS_WIN32)
+    zipToolPath = settings.value("/system/zipToolPath", "c:\\Program Files\\7-Zip\\7z.exe").toString();
+#elif defined(Q_OS_LINUX)
+#else
+#endif
+    iconPath=vymBaseDir.path()+"/icons/";
+    flagsPath=vymBaseDir.path()+"/flags/";
+    macroPath=vymBaseDir.path() + "/macros/";
+
+    // Some directories
+    QDir useDir;
+    if (options.isOn ("local"))
+        useDir=QDir().current();
+    else
+        useDir=QDir().home();
+    lastImageDir=useDir;
+    lastMapDir=useDir;
+    lastExportDir=useDir;
+
+    if (options.isOn ("help"))
+    {
+        cout << qPrintable (options.getHelpText())<<endl;
+        return 0;
+    }
+
+    // Initialize translations
+    if (options.isOn ("locale"))
+    {
+        localeName = options.getArg ("locale");
+        if (debug) qDebug() << "Main:  using option for locale";
+    }
+    else
+    {
+#if defined(Q_OS_LINUX)
+        if (debug) qDebug() << "Main:  (OS Linux)   using $LANG for locale";
+        localeName = QProcessEnvironment::systemEnvironment().value("LANG","en");
+#else
+        if (debug) qDebug() << "Main:  (OS other)   using  QLocale::system().uiLanguages(  using for locale";
+        localeName = QLocale::system().uiLanguages().first();
+
+        if (localeName.contains("-"))
+        {
+            if (debug) qDebug() << "Main:  Replacing '-' with '_' in locale";
+            localeName.replace( "-", "_");
+        }
+#endif
+    }
+    
+    if (debug) 
+    {
+        qDebug() << "Main:     localName: " << localeName;
+        qDebug() << "Main:  translations: " << localeName, vymBaseDir.path() + "/lang";
+        qDebug() << "Main:   uiLanguages: " << QLocale::system().uiLanguages();
+        qDebug() << "Main:          LANG: " << QProcessEnvironment::systemEnvironment().value("LANG","foobar");
+    }
+  
+    QTranslator vymTranslator;
+    if (!vymTranslator.load( QString("vym.%1").arg( localeName ), vymBaseDir.path() + "/lang") )
+        QMessageBox::warning( 0, QObject::tr( "Warning" ),
+                               QString("Couldn't load translations for locale \"%1\" in\n%2")
+                               .arg(localeName)
+                               .arg(vymBaseDir.path() + "/lang") );
+    app.installTranslator( &vymTranslator );
+
+    // Initializing the master rows of flags
+    systemFlagsMaster=new FlagRow;
+    systemFlagsMaster->setName ("systemFlagsMaster");
+    standardFlagsMaster=new FlagRow;
+    standardFlagsMaster->setName ("standardFlagsMaster");
+
+    // Initialize editors
+    noteEditor = new NoteEditor("noteeditor");
+    noteEditor->setWindowIcon (QPixmap (":/vym-editor.png"));
+    headingEditor = new HeadingEditor("headingeditor");
+
+    // Check if there is a BugzillaClient
+    QFileInfo fi(vymBaseDir.path()+"/scripts/BugzillaClient.pm");
+    //bugzillaClientAvailable=fi.exists();
+    bugzillaClientAvailable=true;   //FIXME-3 add real check again
+
+    // Initialize mainwindow
+#if defined(Q_OS_WIN32)
+    Main m(0, Qt::Window | Qt::MSWindowsOwnDC);
+#else
+    Main m;
+#endif
+
+    // Check for zip tools (at least on windows...)
+#if defined(Q_OS_WIN32)
+    QFile zipTool(zipToolPath);
+    if (!zipTool.exists() )
+    {
+        QMessageBox::critical( 0, QObject::tr( "Critical Error" ),
+                               QObject::tr("Couldn't find tool to unzip data. "
+                                           "Please download and install 7z and set "
+                                           "path in Settings menu:\n ") +
+                                           "http://www.7-zip.org/");
+         m.settingsZipTool();
+    }
+#endif
+
+    m.setWindowIcon (QPixmap (":/vym.png"));
+    m.fileNew();
+
+    if (options.isOn ("commands"))
+    {
+        cout << "Available commands:\n";
+        cout << "==================:\n";
+        foreach (Command* c, modelCommands)
+            cout << c->getDescription().toStdString() << endl;
+        return 0;
+    }
+
+    if (options.isOn ("commandslatex"))
+    {
+        foreach (Command* c, modelCommands)
+            cout << c->getDescriptionLaTeX().toStdString() << endl;
+        return 0;
+    }
+
+    if (options.isOn ("batch"))
+        m.hide();
+    else
+    {
+        // Paint Mainwindow first time
+        qApp->processEvents();
+        m.show();
+    }
+
+    // Show release notes, if not already done
+    m.checkReleaseNotes();
+
+    // Check for updates
+    m.checkUpdates();
+
+    if (options.isOn("shortcuts")) switchboard.printASCII();    //FIXME-3 global switchboard and exit after listing
+
+    m.loadCmdLine();
+
+    // For whatever reason tableView is not sorted initially
+    taskEditor->sort();
+
+    // Restore last session
+    if (options.isOn ("restore"))
+        m.fileRestoreSession();
+
+    // Run script
+    if (options.isOn ("run"))
+    {
+        QString script;
+        QString fn=options.getArg ("run");
+        if ( !fn.isEmpty() )
+        {
+            QFile f( fn );
+            if ( !f.open( QFile::ReadOnly|QFile::Text ) )
+            {
+                QString error (QObject::tr("Error"));
+                QString msg (QObject::tr("Couldn't open \"%1\"\n%2.").arg(fn).arg(f.errorString()));
+                if (options.isOn("batch"))
+                    qWarning ()<<error+": "+msg;
+                else QMessageBox::warning(0, error,msg);
+                return 0;
+            }
+
+            QTextStream in( &f );
+            script=in.readAll();
+            f.close();
+            m.executeEverywhere (script);
+            m.setScriptFile (fn);
+        }
+    }
+    
+    // For benchmarking we may want to quit instead of entering event loop
+    if (options.isOn ("quit")) return 0;
+
+    // Enable some last minute cleanup
+    QObject::connect( &app, SIGNAL(lastWindowClosed()), &app, SLOT(quit()) );
+
+    app.exec();
+
+    // Cleanup
+    delete noteEditor;
+
+    int s = warningCount + criticalCount + fatalCount;
+    if ( s > 0 ) 
+        qDebug() << "vym exiting with:\n" << 
+        warningCount << " warning messages\n" << 
+        criticalCount<<" critical messages\n" <<
+        fatalCount<<" fatal messages";
+    return s;
+}
diff --git a/mainwindow.cpp b/mainwindow.cpp
new file mode 100644 (file)
index 0000000..7a53f53
--- /dev/null
@@ -0,0 +1,6159 @@
+#include "mainwindow.h"
+
+#include <iostream>
+#include <typeinfo>
+
+#ifndef Q_OS_WIN
+#include <unistd.h>
+#endif
+
+#if defined(VYM_DBUS)
+#include "adaptorvym.h"
+#endif
+
+#include <QColorDialog>
+#include <QDockWidget>
+#include <QFontDialog>
+#include <QInputDialog>
+#include <QMenuBar>
+#include <QPrinter>
+#include <QStatusBar>
+#include <QTextStream>
+
+#include "aboutdialog.h"
+#include "branchpropeditor.h"
+#include "branchitem.h"
+#include "command.h"
+#include "downloadagent.h"
+#include "exportoofiledialog.h"
+#include "exports.h"
+#include "file.h"
+#include "findresultwidget.h"
+#include "findresultmodel.h"
+#include "flagrow.h"
+#include "headingeditor.h"
+#include "historywindow.h"
+#include "imports.h"
+#include "lineeditdialog.h"
+#include "macros.h"
+#include "mapeditor.h"
+#include "misc.h"
+#include "options.h"
+#include "vymprocess.h"
+#include "scripteditor.h"
+#include "settings.h"
+#include "shortcuts.h"
+#include "noteeditor.h"
+#include "task.h"
+#include "taskeditor.h"
+#include "taskmodel.h"
+#include "treeeditor.h"
+#include "version.h"
+#include "warningdialog.h"
+#include "xlinkitem.h"
+
+QPrinter *printer;
+
+//#include <modeltest.h>    
+
+#if defined(VYM_DBUS)
+#include <QDBusConnection>
+#endif
+
+extern NoteEditor    *noteEditor;
+extern HeadingEditor *headingEditor;
+extern ScriptEditor  *scriptEditor;
+extern Main *mainWindow;
+extern FindResultWidget *findResultWidget;  
+extern TaskEditor *taskEditor;
+extern TaskModel *taskModel;
+extern Macros macros;
+extern QString tmpVymDir;
+extern QString clipboardDir;
+extern QString clipboardFile;
+extern bool clipboardEmpty;
+extern int statusbarTime;
+extern FlagRow *standardFlagsMaster;   
+extern FlagRow *systemFlagsMaster;
+extern QString vymName;
+extern QString vymVersion;
+extern QString vymPlatform;
+extern QString vymBuildDate;
+extern QString localeName;
+extern bool debug;
+extern bool testmode;
+extern QTextStream vout;
+extern bool bugzillaClientAvailable;
+extern Switchboard switchboard;
+
+
+extern QList <Command*> modelCommands;
+
+QMenu* branchAddContextMenu;
+QMenu* branchContextMenu;
+QMenu* branchLinksContextMenu;
+QMenu* branchRemoveContextMenu;
+QMenu* branchXLinksContextMenuEdit;
+QMenu* branchXLinksContextMenuFollow;
+QMenu* canvasContextMenu;
+QMenu* floatimageContextMenu;
+QMenu* targetsContextMenu;
+QMenu* taskContextMenu;
+QMenu* fileLastMapsMenu;
+QMenu* fileImportMenu;
+QMenu* fileExportMenu;
+
+extern Settings settings;
+extern Options options;
+extern ImageIO imageIO;
+
+extern QDir vymBaseDir;
+extern QDir lastImageDir;
+extern QDir lastMapDir;
+#if defined(Q_OS_WIN32)
+extern QDir vymInstallDir;
+#endif
+extern QString zipToolPath;
+
+Main::Main(QWidget* parent, Qt::WindowFlags f) : QMainWindow(parent,f)
+{
+    mainWindow = this;
+
+    setWindowTitle ("VYM - View Your Mind");
+
+    shortcutScope = tr("Main window","Shortcut scope");
+
+    // Load window settings
+    #if defined(Q_OS_WIN32)
+    if (settings.value("/mainwindow/geometry/maximized", false).toBool())
+    {
+       setWindowState(Qt::WindowMaximized);
+    }
+    else
+    #endif
+    {
+       resize (settings.value("/mainwindow/geometry/size", QSize (1024,900)).toSize());
+       move   (settings.value("/mainwindow/geometry/pos",  QPoint(50,50)).toPoint());
+    }
+
+    // Sometimes we may need to remember old selections
+    prevSelection="";
+
+    // Default color
+    currentColor=Qt::black;
+
+    // Create unique temporary directory
+    bool ok;
+    tmpVymDir=makeTmpDir (ok,"vym");
+    if (!ok)
+    {
+       qWarning ("Mainwindow: Could not create temporary directory, failed to start vym");
+       exit (1);
+    }
+    if (debug) qDebug ()<<"tmpDir="<<tmpVymDir;
+
+    // Create direcctory for clipboard
+    clipboardDir=tmpVymDir+"/clipboard";
+    clipboardFile="map.xml";
+    QDir d(clipboardDir);
+    d.mkdir (clipboardDir);
+    makeSubDirs (clipboardDir);
+    clipboardEmpty=true;
+
+    // Remember PID of our friendly webbrowser
+    browserPID=new qint64;
+    *browserPID=0;
+
+    // Define commands in API (used globally)
+    setupAPI();
+
+    // Initialize some settings, which are platform dependant
+    QString p,s;
+
+       // application to open URLs
+       p="/system/readerURL";
+       #if defined(Q_OS_WIN)
+           // Assume that system has been set up so that
+           // Explorer automagically opens up the URL
+           // in the user's preferred browser.
+           s=settings.value (p,"explorer").toString();
+       #elif defined(Q_OS_MACX)
+           s=settings.value (p,"/usr/bin/open").toString();
+       #else
+           s=settings.value (p,"xdg-open").toString();
+       #endif
+       settings.setValue( p,s);
+
+       // application to open PDFs
+       p="/system/readerPDF";
+       #if defined(Q_OS_WIN)
+           s=settings.value (p,"explorer").toString();
+       #elif defined(Q_OS_MACX)
+           s=settings.value (p,"/usr/bin/open").toString();
+       #else
+           s=settings.value (p,"xdg-open").toString();
+       #endif
+       settings.setValue( p,s);
+
+    // width of xLinksMenu
+    xLinkMenuWidth=60;
+
+    // Create Layout
+    QWidget* centralWidget = new QWidget (this);
+    QVBoxLayout *layout=new QVBoxLayout (centralWidget);
+    setCentralWidget(centralWidget);   
+
+    // Create tab widget which holds the maps
+    tabWidget= new QTabWidget (centralWidget);
+    connect(tabWidget, SIGNAL( currentChanged( int  ) ), 
+            this, SLOT( editorChanged( ) ) );
+
+    // Allow closing of tabs (introduced in Qt 4.5)
+    tabWidget->setTabsClosable( true ); 
+    connect(tabWidget, SIGNAL(tabCloseRequested(int)), 
+            this, SLOT( fileCloseMap(int) ));
+
+    layout->addWidget (tabWidget);
+
+    switchboard.addGroup("MainWindow",tr("Main window","Shortcut group"));
+    switchboard.addGroup("MapEditor",tr("Map Editors","Shortcut group"));
+    switchboard.addGroup("TextEditor",tr("Text Editors","Shortcut group"));
+
+    // Setup actions
+    setupFileActions();
+    setupEditActions();
+    setupSelectActions();
+    setupFormatActions();
+    setupViewActions();
+    setupModeActions();
+    setupNetworkActions();
+    setupSettingsActions();
+    setupContextMenus();
+    setupMacros();
+    setupToolbars();
+    setupFlagActions();
+
+    // Dock widgets ///////////////////////////////////////////////
+    QDockWidget *dw;
+    dw = new QDockWidget ();
+    dw->setWidget (noteEditor);
+    dw->setObjectName ("NoteEditor");
+    dw->setWindowTitle(noteEditor->getEditorTitle() );
+    dw->hide();
+    noteEditorDW=dw;
+    addDockWidget (Qt::LeftDockWidgetArea,dw);
+
+    dw = new QDockWidget ();
+    dw->setWidget (headingEditor);
+    dw->setObjectName ("HeadingEditor");
+    dw->setWindowTitle(headingEditor->getEditorTitle() );
+    dw->hide();
+    headingEditorDW=dw;
+    addDockWidget (Qt::BottomDockWidgetArea,dw);
+
+    dw = new QDockWidget (tr("Script Editor"));
+    dw->setWidget (scriptEditor);
+    dw->setObjectName ("ScriptEditor");
+    dw->hide();
+    scriptEditorDW=dw;
+    addDockWidget (Qt::LeftDockWidgetArea,dw);
+
+    findResultWidget=new FindResultWidget ();
+    dw= new QDockWidget (tr ("Search results list","FindResultWidget"));
+    dw->setWidget (findResultWidget);
+    dw->setObjectName ("FindResultWidget");
+    dw->hide();        
+    addDockWidget (Qt::RightDockWidgetArea,dw);
+    connect (
+       findResultWidget, SIGNAL (noteSelected (QString, int)),
+       this, SLOT (selectInNoteEditor (QString, int)));
+    connect (
+       findResultWidget, SIGNAL (findPressed (QString) ), 
+       this, SLOT (editFindNext(QString) ) );
+
+    scriptEditor = new ScriptEditor(this);
+    dw= new QDockWidget (tr ("Script Editor","ScriptEditor"));
+    dw->setWidget (scriptEditor);
+    dw->setObjectName ("ScriptEditor");
+    dw->hide();        
+    addDockWidget (Qt::LeftDockWidgetArea,dw);
+
+    branchPropertyEditor = new BranchPropertyEditor();
+    dw = new QDockWidget (tr("Property Editor","PropertyEditor"));
+    dw->setWidget (branchPropertyEditor);
+    dw->setObjectName ("PropertyEditor");
+    dw->hide();
+    addDockWidget (Qt::LeftDockWidgetArea,dw);
+
+    historyWindow=new HistoryWindow();
+    dw = new QDockWidget (tr("History window","HistoryWidget"));
+    dw->setWidget (historyWindow);
+    dw->setObjectName ("HistoryWidget");
+    dw->hide();
+    addDockWidget (Qt::RightDockWidgetArea,dw);
+    connect (dw, SIGNAL (visibilityChanged(bool ) ), this, SLOT (updateActions()));
+
+    // Connect NoteEditor, so that we can update flags if text changes
+    connect (noteEditor, SIGNAL (textHasChanged() ), this, SLOT (updateNoteFlag()));
+    connect (noteEditor, SIGNAL (windowClosed() ), this, SLOT (updateActions()));
+
+    // Connect heading editor
+    connect (headingEditor, SIGNAL (textHasChanged() ), this, SLOT (updateHeading()));
+
+    connect( scriptEditor, SIGNAL( runScript ( QString ) ),  this, SLOT( execute( QString ) ) );
+
+    // Switch back  to MapEditor using Esc 
+    QAction* a = new QAction(this);
+    a->setShortcut (Qt::Key_Escape);
+    a->setShortcutContext (Qt::ApplicationShortcut);
+    a->setCheckable(false);
+    a->setEnabled (true);
+    addAction(a);
+    connect (a , SIGNAL (triggered() ), this, SLOT (setFocusMapEditor()));
+    
+    // Create TaskEditor after setting up above actions, allow cloning 
+    taskEditor = new TaskEditor ();
+    dw= new QDockWidget (tr ("Task list","TaskEditor"));
+    dw->setWidget (taskEditor);
+    dw->setObjectName ("TaskEditor");
+    dw->hide();
+    addDockWidget (Qt::TopDockWidgetArea,dw);
+    connect (dw, SIGNAL (visibilityChanged(bool ) ), this, SLOT (updateActions()));
+    //FIXME -0 connect (taskEditor, SIGNAL (focusReleased() ), this, SLOT (setFocusMapEditor()));
+
+    if (options.isOn("shortcutsLaTeX")) switchboard.printLaTeX();
+
+    if (settings.value( "/mainwindow/showTestMenu",false).toBool()) setupTestActions();
+    setupHelpActions();
+
+    // Status bar and progress bar there
+    statusBar();
+    progressMax=0;
+    progressCounter=0;
+    progressCounterTotal=0;
+
+    progressDialog.setAutoReset(false);
+    progressDialog.setAutoClose(false);
+    progressDialog.setMinimumWidth (600);
+    //progressDialog.setWindowModality (Qt::WindowModal);   // That forces mainwindo to update and slows down
+    progressDialog.setCancelButton (NULL);
+
+    restoreState (settings.value("/mainwindow/state",0).toByteArray());
+
+    // Global Printer
+    printer=new QPrinter (QPrinter::HighResolution );  
+
+    // Enable testmenu
+    //settings.setValue( "mainwindow/showTestMenu", true);
+    updateGeometry();
+
+#if defined(VYM_DBUS)
+    // Announce myself on DBUS
+    new AdaptorVym (this);    // Created and not deleted as documented in Qt
+    if (!QDBusConnection::sessionBus().registerObject ("/vym",this))
+       qWarning ("MainWindow: Couldn't register DBUS object!");
+#endif    
+
+}
+
+Main::~Main()
+{
+    // qDebug()<<"Destr Mainwindow"<<flush;
+
+    // Save Settings
+
+    if (!testmode) 
+    {
+       #if defined(Q_OS_WIN32)
+       settings.setValue ("/mainwindow/geometry/maximized", isMaximized());
+       #endif
+       settings.setValue ("/mainwindow/geometry/size", size());
+       settings.setValue ("/mainwindow/geometry/pos", pos());
+       settings.setValue ("/mainwindow/state",saveState(0));
+
+       settings.setValue ("/mainwindow/view/AntiAlias",actionViewToggleAntiAlias->isChecked());
+       settings.setValue ("/mainwindow/view/SmoothPixmapTransform",actionViewToggleSmoothPixmapTransform->isChecked());
+       settings.setValue( "/system/autosave/use",actionSettingsToggleAutosave->isChecked() );
+       settings.setValue ("/system/autosave/ms", settings.value("/system/autosave/ms",60000)); 
+       settings.setValue ("/mainwindow/autoLayout/use",actionSettingsToggleAutoLayout->isChecked() );
+       settings.setValue( "/mapeditor/editmode/autoSelectNewBranch",actionSettingsAutoSelectNewBranch->isChecked() );
+       settings.setValue( "/system/writeBackupFile",actionSettingsWriteBackupFile->isChecked() );
+
+       settings.setValue("/system/printerName",printer->printerName());
+       settings.setValue("/system/printerFormat",printer->outputFormat());
+       settings.setValue("/system/printerFileName",printer->outputFileName());
+       settings.setValue( "/mapeditor/editmode/autoSelectText",actionSettingsAutoSelectText->isChecked() );
+       settings.setValue( "/mapeditor/editmode/autoEditNewBranch",actionSettingsAutoEditNewBranch->isChecked() );
+       settings.setValue( "/mapeditor/editmode/useFlagGroups",actionSettingsUseFlagGroups->isChecked() );
+       settings.setValue( "/export/useHideExport",actionSettingsUseHideExport->isChecked() );
+       settings.setValue( "/system/version", vymVersion );
+       settings.setValue( "/system/builddate", vymBuildDate );
+    }
+    //
+    // call the destructors
+    delete noteEditorDW;
+    delete historyWindow;
+    delete branchPropertyEditor;
+
+    // Remove temporary directory
+    removeDir (QDir(tmpVymDir));
+}
+
+void Main::loadCmdLine()
+{
+    QStringList flist=options.getFileList();
+    QStringList::Iterator it=flist.begin();
+
+    initProgressCounter (flist.count());
+    while (it !=flist.end() )
+    {
+       FileType type=getMapType (*it);
+       fileLoad (*it, NewMap,type);
+       *it++;
+    }  
+    removeProgressCounter();
+}
+
+
+void Main::statusMessage(const QString &s)
+{
+    // Surpress messages while progressdialog during 
+    // load is active
+    statusBar()->showMessage( s,statusbarTime);
+}
+
+void Main::setProgressMaximum (int max)        {
+    if (progressCounter==0)
+    {
+       // Init range only on first time, when progressCounter still 0
+       // Normalize range to 1000
+       progressDialog.setRange (0,1000);
+       progressDialog.setValue (1);
+    }
+    progressCounter++; // Another map is loaded
+
+    progressMax=max*1000;
+    QApplication::processEvents();
+}
+
+void Main::addProgressValue (float v) 
+
+{
+    int progress_value= (v + progressCounter -1)*1000/progressCounterTotal;
+/*
+    qDebug() << "addVal v="<<v
+        <<"  cur="<<progressDialog.value()
+        <<"  pCounter="<<progressCounter
+        <<"  pCounterTotal="<<progressCounterTotal
+         <<"  newv="<< progress_value
+        ;
+        */
+
+    // Make sure the progress dialog shows, even if value == 0
+    if (progress_value < 1) progress_value = 1; 
+    progressDialog.setValue ( progress_value );
+    if (progress_value == 1) QApplication::processEvents();
+}
+
+void Main::initProgressCounter(uint n)
+{
+    progressCounterTotal=n;
+}
+
+void Main::removeProgressCounter()
+{
+    // Hide dialog again
+    progressCounter=0;
+    progressCounterTotal=0;
+    progressDialog.reset();
+    progressDialog.hide();
+}
+
+void Main::closeEvent (QCloseEvent* event)
+{
+    if (fileExitVYM())
+       event->ignore();
+    else       
+       event->accept();
+}
+
+// Define commands for models
+void Main::setupAPI()
+{
+    Command *c = new Command ("addBranch",Command::Branch);
+    c->addPar (Command::Int, true, "Index of new branch");
+    modelCommands.append(c);
+
+    c=new Command ("addBranchBefore",Command::Branch);
+    modelCommands.append(c);
+
+    c=new Command ("addMapCenter",Command::Any);
+    c->addPar (Command::Double,false, "Position x");
+    c->addPar (Command::Double,false, "Position y");
+    modelCommands.append(c);
+
+    c=new Command ("addMapInsert",Command::Any);
+    c->addPar (Command::String,false, "Filename of map to load");
+    c->addPar (Command::Int,true, "Index where map is inserted");
+    c->addPar (Command::Int,true, "Content filter");
+    modelCommands.append(c);
+
+    c=new Command ("addMapReplace",Command::Branch);
+    c->addPar (Command::String,false, "Filename of map to load");
+    modelCommands.append(c);
+
+    c=new Command ("addSlide",Command::Branch);
+    modelCommands.append(c);
+
+    c=new Command ("addXLink",Command::BranchLike);
+    c->addPar (Command::String, false, "Begin of XLink");
+    c->addPar (Command::String, false, "End of XLink");
+    c->addPar (Command::Int,    true, "Width of XLink");
+    c->addPar (Command::Color,  true, "Color of XLink");
+    c->addPar (Command::String, true, "Penstyle of XLink");
+    modelCommands.append(c);
+
+    c=new Command ("branchCount",Command::Any);
+    modelCommands.append(c);
+
+    c=new Command ("centerCount",Command::BranchLike);
+    modelCommands.append(c);
+
+    c=new Command ("centerOnID",Command::Any);
+    c->addPar (Command::String,false, "UUID of object to center on");
+    modelCommands.append(c);
+
+    c=new Command ("clearFlags",Command::BranchLike);
+    modelCommands.append(c);
+
+    c=new Command ("colorBranch",Command::Branch);
+    c->addPar (Command::Color,true, "New color");
+    modelCommands.append(c);
+
+    c=new Command ("colorSubtree",Command::Branch);
+    c->addPar (Command::Color,true, "New color");
+    modelCommands.append(c);
+
+    c=new Command ("copy",Command::BranchOrImage);
+    modelCommands.append(c);
+
+    c=new Command ("cut",Command::BranchOrImage);
+    modelCommands.append(c);
+
+    c=new Command ("cycleTask",Command::BranchOrImage);
+    c->addPar (Command::Bool,true, "True, if cycling in reverse order");
+    modelCommands.append(c);
+
+    c=new Command ("delete",Command::TreeItem);
+    modelCommands.append(c);
+
+    c=new Command ("deleteChildren",Command::Branch);
+    modelCommands.append(c);
+
+    c=new Command ("deleteKeepChildren",Command::Branch);
+    modelCommands.append(c);
+
+    c=new Command ("deleteSlide",Command::Any);
+    c->addPar (Command::Int,false,"Index of slide to delete");
+    modelCommands.append(c);
+
+    c=new Command ("exportAO",Command::Any);
+    c->addPar (Command::String,false,"Filename for export");
+    modelCommands.append(c);
+
+    c=new Command ("exportASCII",Command::Any);
+    c->addPar (Command::String,false,"Filename for export");
+    c->addPar (Command::Bool,false,"Flag, if tasks should be appended");
+    modelCommands.append(c);
+
+    c=new Command ("exportCSV",Command::Any);
+    c->addPar (Command::String,false,"Filename for export");
+    modelCommands.append(c);
+
+    c=new Command ("exportHTML",Command::Any);
+    c->addPar (Command::String,false,"Path used for export");
+    c->addPar (Command::String,false,"Filename for export");
+    modelCommands.append(c);
+
+    c=new Command ("exportImage",Command::Any);
+    c->addPar (Command::String,false,"Filename for export");
+    c->addPar (Command::String,true,"Image format");
+    modelCommands.append(c);
+
+    c=new Command ("exportImpress",Command::Any);
+    c->addPar (Command::String,false,"Filename for export");
+    c->addPar (Command::String,false,"Configuration file for export");
+    modelCommands.append(c);
+
+    c=new Command ("exportLast",Command::Any);
+    modelCommands.append(c);
+
+    c=new Command ("exportLaTeX",Command::Any);
+    c->addPar (Command::String,false,"Filename for export");
+    modelCommands.append(c);
+
+    c=new Command ("exportOrgMode",Command::Any);
+    c->addPar (Command::String,false,"Filename for export");
+    modelCommands.append(c);
+
+    modelCommands.append(c);
+
+    c=new Command ("exportPDF",Command::Any);
+    c->addPar (Command::String,false,"Filename for export");
+    modelCommands.append(c);
+
+    c=new Command ("exportPDF",Command::Any);
+    c->addPar (Command::String,false,"Filename for export");
+    modelCommands.append(c);
+
+    c=new Command ("exportSVG",Command::Any);
+    c->addPar (Command::String,false,"Filename for export");
+    modelCommands.append(c);
+
+    c=new Command ("exportXML",Command::Any);
+    c->addPar (Command::String,false,"Path used for export");
+    c->addPar (Command::String,false,"Filename for export");
+    modelCommands.append(c);
+
+    c=new Command ("getDestPath",Command::Any);
+    modelCommands.append(c);
+
+    c=new Command ("getFileDir",Command::Any);
+    modelCommands.append(c);
+
+    c=new Command ("getFrameType",Command::Branch);
+    modelCommands.append(c);
+
+    c=new Command ("getHeadingPlainText",Command::TreeItem);
+    modelCommands.append(c);
+
+    c=new Command ("getHeadingXML",Command::TreeItem);
+    modelCommands.append(c);
+
+    c=new Command ("getMapAuthor",Command::Any);
+    modelCommands.append(c);
+
+    c=new Command ("getMapComment",Command::Any);
+    modelCommands.append(c);
+
+    c=new Command ("getMapTitle",Command::Any);
+    modelCommands.append(c);
+
+    c=new Command ("getNotePlainText",Command::TreeItem);
+    modelCommands.append(c);
+
+    c=new Command ("getNoteXML",Command::TreeItem);
+    modelCommands.append(c);
+
+    c=new Command ("getSelectString",Command::TreeItem);
+    modelCommands.append(c);
+
+    c=new Command ("getTaskSleepDays",Command::Branch);
+    modelCommands.append(c);
+
+    c=new Command ("getURL",Command::TreeItem); 
+    modelCommands.append(c);
+
+    c=new Command ("getVymLink",Command::Branch); 
+    modelCommands.append(c);
+
+    c=new Command ("getXLinkColor",Command::XLink);
+    modelCommands.append(c);
+
+    c=new Command ("getXLinkWidth",Command::XLink);
+    modelCommands.append(c);
+
+    c=new Command ("getXLinkPenStyle",Command::XLink);
+    modelCommands.append(c);
+
+    c=new Command ("getXLinkStyleBegin",Command::XLink);
+    modelCommands.append(c);
+
+    c=new Command ("getXLinkStyleEnd",Command::XLink);
+    modelCommands.append(c);
+
+    c=new Command ("hasActiveFlag",Command::TreeItem);
+    c->addPar (Command::String,false,"Name of flag");
+    modelCommands.append(c);
+
+    c=new Command ("hasNote",Command::Branch); 
+    modelCommands.append(c);
+
+    c=new Command ("hasRichTextNote",Command::Branch); 
+    modelCommands.append(c);
+
+    c=new Command ("hasTask",Command::Branch); 
+    modelCommands.append(c);
+
+    c=new Command ("importDir",Command::Branch);
+    c->addPar (Command::String,false,"Directory name to import");
+    modelCommands.append(c);
+
+    c=new Command ("isScrolled",Command::Branch); 
+    modelCommands.append(c);
+
+    c=new Command ("loadImage",Command::Branch); 
+    c->addPar (Command::String,false,"Filename of image");
+    modelCommands.append(c);
+
+    c=new Command ("loadNote",Command::Branch); 
+    c->addPar (Command::String,false,"Filename of note");
+    modelCommands.append(c);
+
+    c=new Command ("moveDown",Command::Branch); 
+    modelCommands.append(c);
+
+    c=new Command ("moveUp",Command::Branch); 
+    modelCommands.append(c);
+
+    c=new Command ("moveSlideDown",Command::Any); 
+    modelCommands.append(c);
+
+    c=new Command ("moveSlideUp",Command::Any); 
+    modelCommands.append(c);
+
+    c=new Command ("move",Command::BranchOrImage); 
+    c->addPar (Command::Double,false,"Position x");
+    c->addPar (Command::Double,false,"Position y");
+    modelCommands.append(c);
+
+    c=new Command ("moveRel",Command::BranchOrImage); 
+    c->addPar (Command::Double,false,"Position x");
+    c->addPar (Command::Double,false,"Position y");
+    modelCommands.append(c);
+
+    c=new Command ("nop",Command::Any); 
+    modelCommands.append(c);
+
+    c=new Command ("note2URLs",Command::Branch); 
+    modelCommands.append(c);
+
+    //internally required for undo/redo of changing VymText:
+    c=new Command ("parseVymText",Command::Branch);
+    c->addPar (Command::String,false,"parse XML of VymText, e.g for Heading or VymNote");
+    modelCommands.append(c);
+
+    c=new Command ("paste",Command::Branch);
+    modelCommands.append(c);
+
+    c=new Command ("redo",Command::Any); 
+    modelCommands.append(c);
+
+    c=new Command ("relinkTo",Command::TreeItem);   // FIXME different number of parameters for Image or Branch
+    c->addPar (Command::String,false,"Selection string of parent");
+    c->addPar (Command::Int,false,"Index position");
+    c->addPar (Command::Double,true,"Position x");
+    c->addPar (Command::Double,true,"Position y");
+    modelCommands.append(c);
+
+    c=new Command ("saveImage",Command::Image); 
+    c->addPar (Command::String,false,"Filename of image to save");
+    c->addPar (Command::String,false,"Format of image to save");
+    modelCommands.append(c);
+
+    c=new Command ("saveNote",Command::Branch); 
+    c->addPar (Command::String,false,"Filename of note to save");
+    modelCommands.append(c);
+
+    c=new Command ("scroll",Command::Branch); 
+    modelCommands.append(c);
+
+    c=new Command ("select",Command::Any); 
+    c->addPar (Command::String,false,"Selection string");
+    modelCommands.append(c);
+
+    c=new Command ("selectID",Command::Any); 
+    c->addPar (Command::String,false,"Unique ID");
+    modelCommands.append(c);
+
+    c=new Command ("selectLastBranch",Command::Branch); 
+    modelCommands.append(c);
+
+    c=new Command ("selectLastImage",Command::Branch); 
+    modelCommands.append(c);
+
+    c=new Command ("selectLatestAdded",Command::Any); 
+    modelCommands.append(c);
+
+    c=new Command ("selectParent",Command::Branch); 
+    modelCommands.append(c);
+
+    c=new Command ("setFlag",Command::TreeItem); 
+    c->addPar (Command::String,false,"Name of flag");
+    modelCommands.append(c);
+
+    c=new Command ("setTaskSleep",Command::Branch); 
+    c->addPar (Command::String,false,"Days to sleep");
+    modelCommands.append(c);
+
+    c=new Command ("setFrameIncludeChildren",Command::BranchOrImage); 
+    c->addPar (Command::Bool,false,"Include or don't include children in frame");
+    modelCommands.append(c);
+
+    c=new Command ("setFrameType",Command::BranchOrImage); 
+    c->addPar (Command::String,false,"Type of frame");
+    modelCommands.append(c);
+
+    c=new Command ("setFramePenColor",Command::BranchOrImage); 
+    c->addPar (Command::Color,false,"Color of frame border line");
+    modelCommands.append(c);
+
+    c=new Command ("setFrameBrushColor",Command::BranchOrImage); 
+    c->addPar (Command::Color,false,"Color of frame background");
+    modelCommands.append(c);
+
+    c=new Command ("setFramePadding",Command::BranchOrImage); 
+    c->addPar (Command::Int,false,"Padding around frame");
+    modelCommands.append(c);
+
+    c=new Command ("setFrameBorderWidth",Command::BranchOrImage); 
+    c->addPar (Command::Int,false,"Width of frame borderline");
+    modelCommands.append(c);
+
+    c=new Command ("setHeadingPlainText",Command::TreeItem); 
+    c->addPar (Command::String,false,"New heading");
+    modelCommands.append(c);
+
+    c=new Command ("setHideExport",Command::BranchOrImage); 
+    c->addPar (Command::Bool,false,"Set if item should be visible in export");
+    modelCommands.append(c);
+
+    c=new Command ("setIncludeImagesHorizontally",Command::Branch); 
+    c->addPar (Command::Bool,false,"Set if images should be included horizontally in parent branch");
+    modelCommands.append(c);
+
+    c=new Command ("setIncludeImagesVertically",Command::Branch); 
+    c->addPar (Command::Bool,false,"Set if images should be included vertically in parent branch");
+    modelCommands.append(c);
+
+    c=new Command ("setHideLinksUnselected",Command::BranchOrImage); 
+    c->addPar (Command::Bool,false,"Set if links of items should be visible for unselected items");
+    modelCommands.append(c);
+
+    c=new Command ("setMapAnimCurve",Command::Any); 
+    c->addPar (Command::Int,false,"EasingCurve used in animation in MapEditor");
+    modelCommands.append(c);
+
+    c=new Command ("setMapAuthor",Command::Any); 
+    c->addPar (Command::String,false,"");
+    modelCommands.append(c);
+
+    c=new Command ("setMapAnimDuration",Command::Any); 
+    c->addPar (Command::Int,false,"Duration of animation in MapEditor in milliseconds");
+    modelCommands.append(c);
+
+    c=new Command ("setMapBackgroundColor",Command::Any); 
+    c->addPar (Command::Color,false,"Color of map background");
+    modelCommands.append(c);
+
+    c=new Command ("setMapComment",Command::Any); 
+    c->addPar (Command::String,false,"");
+    modelCommands.append(c);
+
+    c=new Command ("setMapTitle",Command::Any); 
+    c->addPar (Command::String,false,"");
+    modelCommands.append(c);
+
+    c=new Command ("setMapDefLinkColor",Command::Any); 
+    c->addPar (Command::Color,false,"Default color of links");
+    modelCommands.append(c);
+
+    c=new Command ("setMapLinkStyle",Command::Any); 
+    c->addPar (Command::String,false,"Link style in map");
+    modelCommands.append(c);
+
+    c=new Command ("setMapRotation",Command::Any); 
+    c->addPar (Command::Double,false,"Rotation of map");
+    modelCommands.append(c);
+
+    c=new Command ("setMapTitle",Command::Any); 
+    c->addPar (Command::String,false,"");
+    modelCommands.append(c);
+
+    c=new Command ("setMapZoom",Command::Any); 
+    c->addPar (Command::Double,false,"Zoomfactor of map");
+    modelCommands.append(c);
+
+    c=new Command ("setNotePlainText",Command::Branch); 
+    c->addPar (Command::String,false,"Note of branch");
+    modelCommands.append(c);
+
+    c=new Command ("setScale",Command::Image); 
+    c->addPar (Command::Double,false,"Scale image x");
+    c->addPar (Command::Double,false,"Scale image y");
+    modelCommands.append(c);
+
+    c=new Command ("setSelectionColor",Command::Any); 
+    c->addPar (Command::Color,false,"Color of selection box");
+    modelCommands.append(c);
+
+    c=new Command ("setURL",Command::TreeItem); 
+    c->addPar (Command::String,false,"URL of TreeItem");
+    modelCommands.append(c);
+
+    c=new Command ("setVymLink",Command::Branch); 
+    c->addPar (Command::String,false,"Vymlink of branch");
+    modelCommands.append(c);
+
+    c=new Command ("setXLinkColor", Command::XLink); 
+    c->addPar (Command::String,false,"Color of xlink");
+    modelCommands.append(c);
+
+    c=new Command ("setXLinkLineStyle", Command::XLink); 
+    c->addPar (Command::String,false,"Style of xlink");
+    modelCommands.append(c);
+
+    c=new Command ("setXLinkStyleBegin", Command::XLink); 
+    c->addPar (Command::String,false,"Style of xlink begin");
+    modelCommands.append(c);
+
+    c=new Command ("setXLinkStyleEnd", Command::XLink); 
+    c->addPar (Command::String,false,"Style of xlink end");
+    modelCommands.append(c);
+
+    c=new Command ("setXLinkWidth", Command::XLink); 
+    c->addPar (Command::Int,false,"Width of xlink");
+    modelCommands.append(c);
+
+    c=new Command ("sleep",Command::Any); 
+    c->addPar (Command::Int,false,"Sleep (seconds)");
+    modelCommands.append(c);
+
+    c=new Command ("sortChildren",Command::Branch); 
+    c->addPar (Command::Bool,true,"Sort children of branch in revers order if set");
+    modelCommands.append(c);
+
+    c=new Command ("toggleFlag",Command::Branch); 
+    c->addPar (Command::String,false,"Name of flag to toggle");
+    modelCommands.append(c);
+
+    c=new Command ("toggleFrameIncludeChildren",Command::Branch); 
+    modelCommands.append(c);
+
+    c=new Command ("toggleScroll",Command::Branch); 
+    modelCommands.append(c);
+
+    c=new Command ("toggleTarget",Command::Branch); 
+    modelCommands.append(c);
+
+    c=new Command ("toggleTask",Command::Branch); 
+    modelCommands.append(c);
+
+    c=new Command ("undo",Command::Any); 
+    modelCommands.append(c);
+
+    c=new Command ("unscroll",Command::Branch); 
+    modelCommands.append(c);
+
+    c=new Command ("unscrollChildren",Command::Branch); 
+    modelCommands.append(c);
+
+    c=new Command ("unselectAll",Command::Any); 
+    modelCommands.append(c);
+
+    c=new Command ("unsetFlag",Command::Branch); 
+    c->addPar (Command::String,false,"Name of flag to unset");
+    modelCommands.append(c);
+}
+
+void Main::cloneActionMapEditor( QAction *a, QKeySequence ks)
+{
+    a->setShortcut ( ks );
+    a->setShortcutContext ( Qt::WidgetShortcut );
+    mapEditorActions.append ( a );
+}
+
+// File Actions
+void Main::setupFileActions()
+{
+    QString tag = tr ("&Map","Menu for file actions");
+    QMenu *fileMenu = menuBar()->addMenu ( tag );
+
+    QAction *a;
+    a = new QAction(QPixmap( ":/filenew.png"), tr( "&New map","File menu" ),this);
+    switchboard.addSwitch ("fileMapNew", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileNew() ) );
+    cloneActionMapEditor( a, Qt::CTRL + Qt::Key_N);
+    fileMenu->addAction(a);
+    actionFileNew=a;
+
+    a = new QAction(QPixmap( ":/filenewcopy.png"), tr( "&Copy to new map","File menu" ),this);
+    switchboard.addSwitch ("fileMapNewCopy", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileNewCopy() ) );
+    cloneActionMapEditor( a, Qt::CTRL + Qt::SHIFT + Qt::Key_C);
+    fileMenu->addAction(a);
+    actionFileNewCopy=a;
+
+    a = new QAction( QPixmap( ":/fileopen.png"), tr( "&Open..." ,"File menu"),this);
+    switchboard.addSwitch ("fileMapOpen", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileLoad() ) );
+    cloneActionMapEditor( a, Qt::CTRL + Qt::Key_L);
+    fileMenu->addAction(a);
+    actionFileOpen=a;
+
+    a = new QAction(tr( "&Restore last session","Edit menu" ), this);
+    a->setShortcut (Qt::ALT + Qt::Key_R );
+    switchboard.addSwitch ("fileMapRestore", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileRestoreSession() ) );
+    fileMenu->addAction(a);
+    actionListFiles.append(a);   
+    actionCopy=a;
+
+    fileLastMapsMenu = fileMenu->addMenu (tr("Open Recent","File menu"));
+    fileMenu->addSeparator();
+
+    a = new QAction( QPixmap( ":/filesave.png"), tr( "&Save...","File menu" ), this);
+    switchboard.addSwitch ("fileMapSave", shortcutScope, a, tag);
+    cloneActionMapEditor( a, Qt::CTRL + Qt::Key_S);
+    fileMenu->addAction(a);
+    restrictedMapActions.append( a );
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileSave() ) );
+    actionFileSave=a;
+
+    a = new QAction( QPixmap(":/filesaveas.png"), tr( "Save &As...","File menu" ), this);
+    fileMenu->addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileSaveAs() ) );
+
+    fileMenu->addSeparator();
+
+    fileImportMenu = fileMenu->addMenu (tr("Import","File menu"));
+
+    if (settings.value( "/mainwindow/showTestMenu",false).toBool()) 
+    {
+        a = new QAction( QPixmap(), tr("Firefox Bookmarks","Import filters"),this);
+        connect( a, SIGNAL( triggered() ), this, SLOT( fileImportFirefoxBookmarks() ) );
+        fileImportMenu->addAction(a);
+    }
+
+    a = new QAction("Freemind...",this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileImportFreemind() ) );
+    fileImportMenu->addAction(a);
+
+    a = new QAction("Mind Manager...",this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileImportMM() ) );
+    fileImportMenu->addAction(a);
+
+    a = new QAction( tr( "Import Dir%1","Import Filters").arg("..." + tr("(still experimental)") ), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileImportDir() ) );
+    fileImportMenu->addAction(a);
+
+    fileExportMenu = fileMenu->addMenu (tr("Export","File menu"));
+
+    a = new QAction( QPixmap(":/file-document-export.png"),tr("Repeat last export (%1)").arg("-"), this);
+    switchboard.addSwitch ("fileExportLast", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileExportLast() ) );
+    cloneActionMapEditor( a, Qt::ALT + Qt::Key_E );
+    fileExportMenu->addAction(a);
+    actionFileExportLast=a;
+
+    a = new QAction(  tr("Webpage (HTML)...","File export menu"),this );
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileExportHTML() ) );
+    fileExportMenu->addAction(a);
+
+    a = new QAction( tr("Text (ASCII)...","File export menu"), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileExportASCII() ) );
+    fileExportMenu->addAction(a);
+
+    a = new QAction( tr("Text with tasks","File export menu") + " (ASCII)... "  + tr("(still experimental)"), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileExportASCIITasks() ) );
+    fileExportMenu->addAction(a);
+
+    a = new QAction( tr("Text (A&O report)...","Export format"), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileExportAO() ) );
+    fileExportMenu->addAction(a);
+
+    a = new QAction( tr("Image%1","File export menu").arg("..."), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileExportImage() ) );
+    fileExportMenu->addAction(a);
+
+    a = new QAction( tr("PDF%1","File export menu").arg("..."), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileExportPDF() ) );
+    fileExportMenu->addAction(a);
+
+    a = new QAction( tr("SVG%1","File export menu").arg("..."), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileExportSVG() ) );
+    fileExportMenu->addAction(a);
+
+    a = new QAction( "LibreOffice...", this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileExportImpress() ) );
+    fileExportMenu->addAction(a);
+
+    a = new QAction( "XML..." , this );
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileExportXML() ) );
+    fileExportMenu->addAction(a);
+
+    a = new QAction( tr("Spreadsheet") + " (CSV)... " + tr("(still experimental)"), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileExportCSV() ) );
+    fileExportMenu->addAction(a);
+
+    a = new QAction( "Taskjuggler... " + tr("(still experimental)"), this );
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileExportTaskjuggler() ) );
+    fileExportMenu->addAction(a);
+
+    a = new QAction( "OrgMode... " + tr("(still experimental)"), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileExportOrgMode() ) );
+    fileExportMenu->addAction(a);
+
+    a = new QAction( "LaTeX... " + tr("(still experimental)"), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileExportLaTeX() ) );
+    fileExportMenu->addAction(a);
+
+    fileMenu->addSeparator();
+
+    a = new QAction( tr( "Properties"), this);
+    switchboard.addSwitch ("editMapProperties", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editMapProperties() ) );
+    fileMenu->addAction(a);
+    actionListFiles.append (a);   
+    actionMapProperties = a;
+
+    fileMenu->addSeparator();
+
+    a = new QAction(QPixmap( ":/fileprint.png"), tr( "&Print")+QString("..."), this);
+    a->setShortcut ( Qt::CTRL + Qt::Key_P);
+    switchboard.addSwitch ("fileMapPrint", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( filePrint() ) );
+    fileMenu->addAction(a);
+    unrestrictedMapActions.append (a);
+    actionFilePrint=a;
+
+    a = new QAction( QPixmap(":/fileclose.png"), tr( "&Close Map","File menu" ), this);
+    a->setShortcut (Qt::CTRL + Qt::Key_W );     
+    switchboard.addSwitch ("fileMapClose", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileCloseMap() ) );
+    fileMenu->addAction(a);
+
+    a = new QAction(QPixmap(":/exit.png"), tr( "E&xit","File menu"), this);
+    a->setShortcut (Qt::CTRL + Qt::Key_Q );      
+    switchboard.addSwitch ("fileExit", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( fileExitVYM() ) );
+    fileMenu->addAction(a);
+}
+
+
+//Edit Actions
+void Main::setupEditActions()
+{
+    QString tag = tr("E&dit","Edit menu") ;
+    QMenu *editMenu = menuBar()->addMenu( tag );
+
+    QAction *a;
+    a = new QAction( QPixmap( ":/undo.png"), tr( "&Undo","Edit menu" ),this);
+    a->setShortcut (Qt::CTRL + Qt::Key_Z);
+    a->setShortcutContext (Qt::WidgetShortcut);
+    a->setEnabled (false);
+    editMenu->addAction(a);
+    mapEditorActions.append( a );
+    restrictedMapActions.append( a );
+    switchboard.addSwitch ("mapUndo", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editUndo() ) );
+    actionUndo=a;
+
+    a = new QAction( QPixmap( ":/redo.png"), tr( "&Redo","Edit menu" ), this); 
+    a->setShortcut (Qt::CTRL + Qt::Key_Y);
+    a->setShortcutContext (Qt::WidgetShortcut);
+    editMenu->addAction(a);
+    restrictedMapActions.append( a );
+    mapEditorActions.append( a );
+    switchboard.addSwitch ("mapRedo", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editRedo() ) );
+    actionRedo=a;
+
+    editMenu->addSeparator();
+    a = new QAction(QPixmap( ":/editcopy.png"), tr( "&Copy","Edit menu" ), this);
+    a->setShortcut (Qt::CTRL + Qt::Key_C );
+    a->setShortcutContext (Qt::WidgetShortcut);
+    a->setEnabled (false);
+    editMenu->addAction(a);
+    unrestrictedMapActions.append ( a );
+    mapEditorActions.append( a );
+    switchboard.addSwitch ("mapCopy", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editCopy() ) );
+    actionCopy=a;
+
+    a = new QAction(QPixmap( ":/editcut.png" ), tr( "Cu&t","Edit menu" ), this);
+    a->setShortcut (Qt::CTRL + Qt::Key_X );
+    a->setEnabled (false);
+    a->setShortcutContext (Qt::WidgetShortcut);
+    editMenu->addAction(a);
+    restrictedMapActions.append( a );
+    mapEditorActions.append( a );
+    restrictedMapActions.append( a );
+    switchboard.addSwitch ("mapCut", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editCut() ) );
+    addAction (a);
+    actionCut=a;
+
+    a = new QAction(QPixmap( ":/editpaste.png"), tr( "&Paste","Edit menu" ),this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editPaste() ) );
+    a->setShortcut (Qt::CTRL + Qt::Key_V );
+    a->setShortcutContext (Qt::WidgetShortcut);
+    a->setEnabled (false);
+    editMenu->addAction(a);
+    restrictedMapActions.append( a );
+    mapEditorActions.append( a );
+    switchboard.addSwitch ("mapPaste", shortcutScope, a, tag);
+    actionPaste=a;
+
+    // Shortcut to delete selection
+    a = new QAction( tr( "Delete Selection","Edit menu" ),this);
+    a->setShortcut ( Qt::Key_Delete);           
+    a->setShortcutContext (Qt::WindowShortcut);
+    switchboard.addSwitch ("mapDelete", shortcutScope, a, tag);
+    addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editDeleteSelection() ) );
+    editMenu->addAction(a);
+    actionListItems.append (a);
+    actionDelete=a;
+
+    // Shortcut to add attribute
+    a= new QAction(tr( "Add attribute" ), this);
+    if (settings.value( "/mainwindow/showTestMenu",false).toBool() )
+    {
+       //a->setShortcut ( Qt::Key_Q);  
+       a->setShortcutContext (Qt::WindowShortcut);
+        switchboard.addSwitch ("mapAddAttribute", shortcutScope, a, tag);
+    }
+    connect( a, SIGNAL( triggered() ), this, SLOT( editAddAttribute() ) );
+    editMenu->addAction(a);
+    actionAddAttribute= a;
+
+
+    // Shortcut to add mapcenter
+    a= new QAction(QPixmap(":/newmapcenter.png"),tr( "Add mapcenter","Canvas context menu" ), this);
+    a->setShortcut ( Qt::Key_C);    
+    a->setShortcutContext (Qt::WindowShortcut);
+    switchboard.addSwitch ("mapAddCenter", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editAddMapCenter() ) );
+    editMenu->addAction(a);
+    actionListFiles.append (a);
+    actionAddMapCenter = a;
+
+
+    // Shortcut to add branch
+    a = new QAction(QPixmap(":/newbranch.png"), tr( "Add branch as child","Edit menu" ), this);
+    switchboard.addSwitch ("mapEditNewBranch", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editNewBranch() ) );
+    cloneActionMapEditor( a, Qt::Key_A );
+    taskEditorActions.append( a );
+    actionListBranches.append(a);
+    actionAddBranch=a;
+
+
+    // Add branch by inserting it at selection
+    a = new QAction(tr( "Add branch (insert)","Edit menu" ),this);
+    a->setShortcut ( Qt::ALT + Qt::Key_A );     
+    a->setShortcutContext (Qt::WindowShortcut);
+    switchboard.addSwitch ("mapEditAddBranchBefore", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editNewBranchBefore() ) );
+    editMenu->addAction(a);
+    actionListBranches.append(a);
+    actionAddBranchBefore=a;
+
+    // Add branch above
+    a = new QAction(tr( "Add branch above","Edit menu" ), this);
+    a->setShortcut (Qt::SHIFT+Qt::Key_Insert );          
+    a->setShortcutContext (Qt::WindowShortcut);
+    switchboard.addSwitch ("mapEditAddBranchAbove", shortcutScope, a, tag);
+    addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editNewBranchAbove() ) );
+    a->setEnabled (false);
+    actionListBranches.append(a);
+    actionAddBranchAbove=a;
+
+    a = new QAction(tr( "Add branch above","Edit menu" ), this);
+    a->setShortcut (Qt::SHIFT+Qt::Key_A );      
+    a->setShortcutContext (Qt::WindowShortcut);
+    switchboard.addSwitch ("mapEditAddBranchAboveAlt", shortcutScope, a, tag);
+    addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editNewBranchAbove() ) );
+    actionListBranches.append(a);
+    editMenu->addAction(a);
+
+    // Add branch below 
+    a = new QAction(tr( "Add branch below","Edit menu" ), this);
+    a->setShortcut (Qt::CTRL +Qt::Key_Insert );          
+    a->setShortcutContext (Qt::WindowShortcut);
+    switchboard.addSwitch ("mapEditAddBranchBelow", shortcutScope, a, tag);
+    addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editNewBranchBelow() ) );
+    a->setEnabled (false);
+    actionListBranches.append(a);
+
+    a = new QAction(tr( "Add branch below","Edit menu" ), this);
+    a->setShortcut (Qt::CTRL +Qt::Key_A );      
+    a->setShortcutContext (Qt::WindowShortcut);
+    switchboard.addSwitch ("mapEditAddBranchBelowAlt", shortcutScope, a, tag);
+    addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editNewBranchBelow() ) );
+    actionListBranches.append(a);
+    actionAddBranchBelow=a; 
+
+    a = new QAction(QPixmap(":/up.png" ), tr( "Move branch up","Edit menu" ), this);
+    a->setShortcut (Qt::Key_PageUp );          
+    a->setShortcutContext (Qt::WidgetShortcut);
+    //a->setEnabled (false);
+    mapEditorActions.append( a );
+    taskEditorActions.append( a );
+    restrictedMapActions.append( a );
+    actionListBranches.append (a);
+    editMenu->addAction(a);
+    switchboard.addSwitch ("mapEditMoveBranchUp", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editMoveUp() ) );
+    actionMoveUp=a;
+
+    a = new QAction( QPixmap( ":/down.png"), tr( "Move branch down","Edit menu" ),this);
+    a->setShortcut ( Qt::Key_PageDown );         
+    a->setShortcutContext (Qt::WidgetShortcut);
+    //a->setEnabled (false);
+    mapEditorActions.append( a );
+    taskEditorActions.append( a );
+    restrictedMapActions.append( a );
+    actionListBranches.append (a);
+    editMenu->addAction(a);
+    switchboard.addSwitch ("mapEditMoveBranchDown", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editMoveDown() ) );
+    actionMoveDown=a;
+
+    a = new QAction(QPixmap(), tr( "&Detach","Context menu" ),this);
+    a->setStatusTip ( tr( "Detach branch and use as mapcenter","Context menu" ) );
+    a->setShortcut ( Qt::Key_D );               
+    switchboard.addSwitch ("mapDetachBranch", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editDetach() ) );
+    editMenu->addAction(a);
+    actionListBranches.append (a);
+    actionDetach=a;
+
+    a = new QAction( QPixmap(":/editsort.png" ), tr( "Sort children","Edit menu" ), this );
+    a->setEnabled (true);
+    a->setShortcut ( Qt::Key_O );                
+    switchboard.addSwitch ("mapSortBranches", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editSortChildren() ) );
+    editMenu->addAction(a);
+    actionListBranches.append (a);
+    actionSortChildren=a;
+
+    a = new QAction( QPixmap(":/editsortback.png" ), tr( "Sort children backwards","Edit menu" ), this );
+    a->setEnabled (true);
+    a->setShortcut ( Qt::SHIFT + Qt::Key_O );          
+    switchboard.addSwitch ("mapSortBranchesReverse", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editSortBackChildren() ) );
+    editMenu->addAction(a);
+    actionListBranches.append (a);
+    actionSortBackChildren=a;  
+
+    a = new QAction( QPixmap(":/flag-scrolled-right.png"), tr( "Scroll branch","Edit menu" ), this);
+    a->setShortcut ( Qt::Key_S );                
+    switchboard.addSwitch ("mapToggleScroll", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editToggleScroll() ) );
+    editMenu->addAction(a);
+    actionListBranches.append (a);
+    a->setEnabled (false);
+    a->setCheckable(true);
+    addAction (a);
+    actionListBranches.append(a);
+    actionToggleScroll=a;
+
+    a = new QAction( tr( "Unscroll children","Edit menu" ), this);
+    editMenu->addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editUnscrollChildren() ) );
+    actionListBranches.append (a);
+
+    a = new QAction( tr( "Grow selection","Edit menu" ), this);
+    a->setShortcut ( Qt::CTRL + Qt::Key_Plus);   
+    switchboard.addSwitch ("mapGrowSelection", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editGrowSelectionSize() ) );
+    editMenu->addAction(a);
+    actionListBranches.append (a);
+    actionListItems.append (a);
+    actionGrowSelectionSize=a;
+
+    a = new QAction( tr( "Shrink selection","Edit menu" ), this);
+    a->setShortcut ( Qt::CTRL + Qt::Key_Minus);           
+    switchboard.addSwitch ("mapShrinkSelection", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editShrinkSelectionSize() ) );
+    editMenu->addAction(a);
+    actionListBranches.append (a);
+    actionListItems.append (a);
+    actionShrinkSelectionSize=a;
+
+    a = new QAction( tr( "Reset selection size","Edit menu" ), this);
+    a->setShortcut ( Qt::CTRL + Qt::Key_0);        
+    switchboard.addSwitch ("mapResetSelectionSize", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editResetSelectionSize() ) );
+    editMenu->addAction(a);
+    actionListBranches.append (a);
+    actionListItems.append (a);
+    actionResetSelectionSize=a;
+
+    editMenu->addSeparator();
+
+    a = new QAction( QPixmap(), "TE: " + tr( "Collapse one level","Edit menu" ), this);
+    a->setShortcut ( Qt::Key_Less + Qt::CTRL); 
+    switchboard.addSwitch ("mapCollapseOneLevel", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editCollapseOneLevel() ) );
+    editMenu->addAction(a);
+    a->setEnabled (false);
+    a->setCheckable(false);
+    actionListBranches.append(a);
+    addAction (a);
+    actionCollapseOneLevel=a;  
+
+    a = new QAction( QPixmap(), "TE: " + tr( "Collapse unselected levels","Edit menu" ), this);
+    a->setShortcut ( Qt::Key_Less);      
+    switchboard.addSwitch ("mapCollapseUnselectedLevels", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editCollapseUnselected() ) );
+    editMenu->addAction(a);
+    a->setEnabled (false);
+    a->setCheckable(false);
+    actionListBranches.append(a);
+    addAction (a);
+    actionCollapseUnselected=a;
+
+    a = new QAction( QPixmap(), tr( "Expand all branches","Edit menu" ), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editExpandAll() ) );
+    actionExpandAll=a;
+    actionExpandAll->setEnabled (false);
+    actionExpandAll->setCheckable(false);
+    actionListBranches.append(actionExpandAll);
+    addAction (a);
+
+    a = new QAction( QPixmap(), tr( "Expand one level","Edit menu" ), this);
+    a->setShortcut ( Qt::Key_Greater );            
+    switchboard.addSwitch ("mapExpandOneLevel", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editExpandOneLevel() ) );
+    a->setEnabled (false);
+    a->setCheckable(false);
+    addAction (a);
+    actionListBranches.append(a);
+    actionExpandOneLevel=a;
+
+    tag = tr("References Context menu","Shortcuts");
+    a = new QAction( QPixmap(":/flag-url.png"), tr( "Open URL","Edit menu" ), this);
+    a->setShortcut (Qt::SHIFT + Qt::Key_U );
+    switchboard.addSwitch ("mapOpenUrl", shortcutScope, a, tag);
+    addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editOpenURL() ) );
+    actionListBranches.append (a);
+    actionOpenURL=a;
+
+    a = new QAction( tr( "Open URL in new tab","Edit menu" ), this);
+    //a->setShortcut (Qt::CTRL+Qt::Key_U );
+    switchboard.addSwitch ("mapOpenUrlTab", shortcutScope, a, tag);
+    addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editOpenURLTab() ) );
+    actionListBranches.append (a);
+    actionOpenURLTab=a;
+
+    a = new QAction( tr( "Open all URLs in subtree (including scrolled branches)","Edit menu" ), this);
+    a->setShortcut ( Qt::CTRL + Qt::Key_U );
+    switchboard.addSwitch ("mapOpenUrlsSubTree", shortcutScope, a, tag);
+    addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editOpenMultipleVisURLTabs() ) );
+    actionListBranches.append(a);
+    actionOpenMultipleVisURLTabs=a;
+
+    a = new QAction( tr( "Open all URLs in subtree","Edit menu" ), this);
+    switchboard.addSwitch ("mapOpenMultipleUrlTabs", shortcutScope, a, tag);
+    addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editOpenMultipleURLTabs() ) );
+    actionListBranches.append(a);
+    actionOpenMultipleURLTabs=a;
+
+    a = new QAction(QPixmap(), tr( "Extract URLs from note","Edit menu"), this);
+    a->setShortcut ( Qt::SHIFT + Qt::Key_N );
+    a->setShortcutContext (Qt::WindowShortcut);
+    switchboard.addSwitch ("mapUrlsFromNote", shortcutScope, a, tag);
+    addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editNote2URLs() ) );
+    actionListBranches.append(a);
+    actionGetURLsFromNote=a;
+
+    a = new QAction(QPixmap(":/flag-urlnew.png"), tr( "Edit URL...","Edit menu"), this);
+    a->setShortcut ( Qt::Key_U );
+    a->setShortcutContext (Qt::WindowShortcut);
+    switchboard.addSwitch ("mapEditURL", shortcutScope, a, tag);
+    addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editURL() ) );
+    actionListBranches.append(a);
+    actionURLNew=a;
+
+    a = new QAction(QPixmap(), tr( "Edit local URL...","Edit menu"), this);
+    //a->setShortcut (Qt::SHIFT +  Qt::Key_U );
+    a->setShortcutContext (Qt::WindowShortcut);
+    switchboard.addSwitch ("mapEditLocalURL", shortcutScope, a, tag);
+    addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editLocalURL() ) );
+    actionListBranches.append(a);
+    actionLocalURL=a;
+
+    a = new QAction( tr( "Use heading for URL","Edit menu" ), this);
+    a->setShortcut ( Qt::ALT + Qt::Key_U );
+    a->setShortcutContext (Qt::ApplicationShortcut);
+    a->setEnabled (false);
+    switchboard.addSwitch ("mapHeading2URL", shortcutScope, a, tag);
+    addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editHeading2URL() ) );
+    actionListBranches.append(a);
+    actionHeading2URL=a;
+
+    tag = tr("Bugzilla handling","Shortcuts");
+    a = new QAction(tr( "Create URL to SUSE Bugzilla","Edit menu" ), this);
+    a->setEnabled (false);
+    actionListBranches.append(a);
+    a->setShortcut ( Qt::Key_B );
+    a->setShortcutContext (Qt::WindowShortcut);
+    switchboard.addSwitch ("mapUseHeadingForURL", shortcutScope, a, tag);
+    addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editBugzilla2URL() ) );
+    actionListBranches.append(a);
+    actionBugzilla2URL=a;
+
+    a = new QAction(tr( "Get data from SUSE Bugzilla","Edit menu" ), this);
+    a->setShortcut ( Qt::Key_B + Qt::SHIFT);
+    a->setShortcutContext (Qt::WindowShortcut);
+    switchboard.addSwitch ("mapUpdateFromBugzilla", shortcutScope, a, tag);
+    addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( getBugzillaData() ) );
+    actionListBranches.append(a);
+    actionGetBugzillaData=a;
+
+    a = new QAction(tr( "Get data from SUSE Bugzilla for subtree","Edit menu" ), this);
+    a->setShortcut ( Qt::Key_B + Qt::CTRL);
+    a->setShortcutContext (Qt::WindowShortcut);
+    switchboard.addSwitch ("mapUpdateSubTreeFromBugzilla", shortcutScope, a, tag);
+    addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( getBugzillaDataSubtree() ) );
+    actionListBranches.append(a);
+    actionGetBugzillaDataSubtree=a;
+
+    tag = tr("SUSE Fate tool handling","Shortcuts");
+    a = new QAction(tr( "Create URL to SUSE FATE tool","Edit menu" ), this);
+    a->setEnabled (false);
+    switchboard.addSwitch ("mapFate2URL", shortcutScope, a, tag);
+    actionListBranches.append(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editFATE2URL() ) );
+    actionListBranches.append(a);
+    actionFATE2URL=a;
+
+    tag = tr("vymlinks - linking maps","Shortcuts");
+    a = new QAction(QPixmap(":/flag-vymlink.png"), tr( "Open linked map","Edit menu" ), this);
+    a->setEnabled (false);
+    switchboard.addSwitch ("mapOpenVymLink", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editOpenVymLink() ) );
+    actionListBranches.append (a);
+    actionOpenVymLink=a;
+
+    a = new QAction(QPixmap(":/flag-vymlink.png"), tr( "Open linked map in background tab","Edit menu" ), this);
+    a->setEnabled (false);
+    switchboard.addSwitch ("mapOpenVymLink", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editOpenVymLinkBackground() ) );
+    actionListBranches.append (a);
+    actionOpenVymLinkBackground=a;
+
+    a = new QAction(QPixmap(), tr( "Open all vym links in subtree","Edit menu" ), this);
+    a->setEnabled (false);
+    switchboard.addSwitch ("mapOpenMultipleVymLinks", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editOpenMultipleVymLinks() ) );
+    actionListBranches.append(a);
+    actionOpenMultipleVymLinks=a;
+
+
+    a = new QAction(QPixmap(":/flag-vymlinknew.png"), tr( "Edit vym link...","Edit menu" ), this);
+    a->setEnabled (false);
+    switchboard.addSwitch ("mapEditVymLink", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editVymLink() ) );
+    actionListBranches.append(a);
+    actionEditVymLink=a;
+
+    a = new QAction(tr( "Delete vym link","Edit menu" ),this);
+    a->setEnabled (false);
+    switchboard.addSwitch ("mapDeleteVymLink", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editDeleteVymLink() ) );
+    actionListBranches.append(a);
+    actionDeleteVymLink=a;
+
+    tag = tr("Exports","Shortcuts");
+    a = new QAction(QPixmap(":/flag-hideexport.png"), tr( "Hide in exports","Edit menu" ), this);
+    a->setShortcut (Qt::Key_H );
+    a->setShortcutContext (Qt::WindowShortcut);
+    a->setCheckable(true);
+    a->setEnabled (false);
+    addAction(a);
+    switchboard.addSwitch ("mapToggleHideExport", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editToggleHideExport() ) );
+    actionListItems.append (a);
+    actionToggleHideExport=a;
+
+    tag = tr("Tasks","Shortcuts");
+    a = new QAction(QPixmap(":/flag-task.png"), tr( "Toggle task","Edit menu" ), this);
+    a->setShortcut (Qt::Key_W + Qt::SHIFT);
+    a->setShortcutContext (Qt::WindowShortcut);
+    a->setCheckable(true);
+    a->setEnabled (false);
+    addAction(a);
+    switchboard.addSwitch ("mapToggleTask", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editToggleTask() ) );
+    actionListBranches.append (a);
+    actionToggleTask=a;
+
+    a = new QAction(QPixmap(), tr( "Cycle task status","Edit menu" ), this);
+    a->setShortcut (Qt::Key_W );
+    a->setShortcutContext (Qt::WindowShortcut);
+    a->setCheckable(false);
+    a->setEnabled (false);
+    addAction(a);
+    switchboard.addSwitch ("mapCycleTaskStatus", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editCycleTaskStatus() ) );
+    actionListBranches.append (a);
+    actionCycleTaskStatus=a;
+
+    a = new QAction(QPixmap(), tr( "Reset sleep","Task sleep" ), this);
+    a->setShortcutContext (Qt::WindowShortcut);
+    a->setCheckable(false);
+    a->setEnabled (false);
+    a->setData (0);
+    addAction(a);
+    switchboard.addSwitch ("mapResetSleep", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editTaskSleepN() ) );
+    actionListBranches.append (a);
+    actionTaskSleep0=a;
+
+    a = new QAction(QPixmap(), tr( "Sleep %1 days","Task sleep" ).arg("n")+"...", this);
+    a->setShortcutContext (Qt::WindowShortcut);
+    a->setShortcut (Qt::Key_Q + Qt::SHIFT);
+    a->setCheckable(false);
+    a->setEnabled (false);
+    a->setData (-1);
+    addAction(a);
+    switchboard.addSwitch ("mapTaskSleepN", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editTaskSleepN() ) );
+    actionListBranches.append (a);
+    actionTaskSleepN=a;
+
+    a = new QAction(QPixmap(), tr( "Sleep %1 day","Task sleep" ).arg(1), this);
+    a->setShortcutContext (Qt::WindowShortcut);
+    a->setCheckable(false);
+    a->setEnabled (false);
+    a->setData (1);
+    addAction(a);
+    switchboard.addSwitch ("mapTaskSleep1", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editTaskSleepN() ) );
+    actionListBranches.append (a);
+    actionTaskSleep1=a;
+
+    a = new QAction(QPixmap(), tr( "Sleep %1 days","Task sleep" ).arg(2), this);
+    a->setShortcutContext (Qt::WindowShortcut);
+    a->setCheckable(false);
+    a->setEnabled (false);
+    a->setData (2);
+    addAction(a);
+    switchboard.addSwitch ("mapTaskSleep2", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editTaskSleepN() ) );
+    actionListBranches.append (a);
+    actionTaskSleep2=a;
+
+    a = new QAction(QPixmap(), tr( "Sleep %1 days","Task sleep" ).arg(3), this);
+    a->setShortcutContext (Qt::WindowShortcut);
+    a->setCheckable(false);
+    a->setEnabled (false);
+    a->setData (3);
+    addAction(a);
+    switchboard.addSwitch ("mapTaskSleep3", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editTaskSleepN() ) );
+    actionListBranches.append (a);
+    actionTaskSleep3=a;
+
+    a = new QAction(QPixmap(), tr( "Sleep %1 days","Task sleep" ).arg(5), this); 
+    a->setShortcutContext (Qt::WindowShortcut);
+    a->setCheckable(false);
+    a->setEnabled (false);
+    a->setData (5);
+    addAction(a);
+    switchboard.addSwitch ("mapTaskSleep5", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editTaskSleepN() ) );
+    actionListBranches.append (a);
+    actionTaskSleep5=a;
+
+    a = new QAction(QPixmap(), tr( "Sleep %1 days","Task sleep" ).arg(7), this);
+    a->setShortcutContext (Qt::WindowShortcut);
+    a->setCheckable(false);
+    a->setEnabled (false);
+    a->setData (7);
+    addAction(a);
+    switchboard.addSwitch ("mapTaskSleep7", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editTaskSleepN() ) );
+    actionListBranches.append (a);
+    actionTaskSleep7=a;
+
+    a = new QAction(QPixmap(), tr( "Sleep %1 weeks","Task sleep" ).arg(2), this);
+    a->setShortcutContext (Qt::WindowShortcut);
+    a->setCheckable(false);
+    a->setEnabled (false);
+    a->setData (14);
+    addAction(a);
+    switchboard.addSwitch ("mapTaskSleep14", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editTaskSleepN() ) );
+    actionListBranches.append (a);
+    actionTaskSleep14=a;
+
+    a = new QAction(QPixmap(), tr( "Sleep %1 weeks","Task sleep" ).arg(4), this);
+    a->setShortcutContext (Qt::WindowShortcut);
+    a->setCheckable(false);
+    a->setEnabled (false);
+    a->setData (28);
+    addAction(a);
+    switchboard.addSwitch ("mapTaskSleep28", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editTaskSleepN() ) );
+    actionListBranches.append (a);
+    actionTaskSleep28=a;
+
+    // Import at selection (adding to selection)
+    a = new QAction( tr( "Add map (insert)","Edit menu" ),this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editImportAdd() ) );
+    a->setEnabled (false);
+    actionListBranches.append(a);
+    actionImportAdd=a;
+
+    // Import at selection (replacing selection)
+    a = new QAction( tr( "Add map (replace)","Edit menu" ), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editImportReplace() ) );
+    a->setEnabled (false);
+    actionListBranches.append(a);
+    actionImportReplace=a;
+
+    // Save selection 
+    a = new QAction( tr( "Save selection","Edit menu" ), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editSaveBranch() ) );
+    a->setEnabled (false);
+    actionListBranches.append(a);
+    actionSaveBranch=a;
+
+    tag = tr("Removing parts of a map","Shortcuts");
+
+    // Only remove branch, not its children
+    a = new QAction(tr( "Remove only branch and keep its children ","Edit menu" ), this);
+    a->setShortcut (Qt::ALT + Qt::Key_X );
+    connect( a, SIGNAL( triggered() ), this, SLOT( editDeleteKeepChildren() ) );
+    a->setEnabled (false);
+    addAction(a);
+    switchboard.addSwitch ("mapDeleteKeepChildren", shortcutScope, a, tag);
+    actionListBranches.append(a);
+    actionDeleteKeepChildren=a;
+
+    // Only remove children of a branch
+    a = new QAction( tr( "Remove children","Edit menu" ), this);
+    a->setShortcut (Qt::SHIFT + Qt::Key_X );
+    addAction(a);
+    switchboard.addSwitch ("mapDeleteChildren", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editDeleteChildren() ) );
+    a->setEnabled (false);
+    addAction (a);
+    actionListBranches.append(a);
+    actionDeleteChildren=a;
+
+    tag = tr("Various","Shortcuts");
+    a = new QAction(tr( "Add timestamp","Edit menu" ), this);
+    a->setEnabled (false);
+    actionListBranches.append(a);
+    a->setShortcut ( Qt::Key_T ); 
+    a->setShortcutContext (Qt::WindowShortcut);
+    addAction(a);
+    switchboard.addSwitch ("mapAddTimestamp", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editAddTimestamp() ) );
+    actionListBranches.append (a);
+    actionAddTimestamp=a;
+
+    a = new QAction(tr( "Map properties...","Edit menu" ),this);
+    a->setEnabled (true);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editMapProperties() ) );
+    actionListFiles.append (a);
+    actionMapInfo=a;
+
+    a = new QAction( tr( "Add   ...","Edit menu" ), this);
+    a->setShortcutContext (Qt::WindowShortcut);
+    a->setShortcut (Qt::Key_I + Qt::SHIFT);    
+    addAction(a);
+    switchboard.addSwitch ("mapLoadImage", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editLoadImage() ) );
+    actionLoadImage=a;
+
+    a = new QAction( tr( "Property window","Dialog to edit properties of selection" )+QString ("..."), this);
+    a->setShortcut ( Qt::Key_P );       
+    a->setShortcutContext (Qt::WindowShortcut);
+    a->setCheckable (true);
+    addAction(a);
+    switchboard.addSwitch ("mapTogglePropertEditor", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( windowToggleProperty() ) );
+    actionViewTogglePropertyEditor=a;
+}
+
+// Select Actions
+void Main::setupSelectActions()
+{
+    QString tag = tr("Selections","Shortcuts");
+    QMenu *selectMenu = menuBar()->addMenu( tr("Select","Select menu") );
+    QAction *a;
+    a = new QAction( QPixmap(":/flag-target.png"), tr( "Toggle target...","Edit menu"), this);
+    a->setShortcut (Qt::SHIFT + Qt::Key_T );           
+    a->setCheckable(true);
+    selectMenu->addAction(a);
+    switchboard.addSwitch ("mapToggleTarget", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editToggleTarget() ) );
+    actionListBranches.append (a);
+    actionToggleTarget=a;
+
+    a = new QAction( QPixmap(":/flag-target.png"), tr( "Goto target...","Edit menu"), this);
+    a->setShortcut (Qt::Key_G );               
+    selectMenu->addAction(a);
+    switchboard.addSwitch ("mapGotoTarget", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editGoToTarget() ) );
+    actionListBranches.append (a);
+    actionGoToTarget=a;
+
+    a = new QAction( QPixmap(":/flag-target.png"), tr( "Move to target...","Edit menu"), this);
+    a->setShortcut (Qt::Key_M );               
+    selectMenu->addAction(a);
+    switchboard.addSwitch ("mapMoveToTarget", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editMoveToTarget() ) );
+    actionListBranches.append (a);
+    actionMoveToTarget=a;
+
+    a = new QAction( QPixmap(":/selectprevious.png"), tr( "Select previous","Edit menu"), this);
+    a->setShortcut (Qt::CTRL+ Qt::Key_O );     
+    a->setShortcutContext (Qt::WidgetShortcut);
+    selectMenu->addAction(a);
+    actionListFiles.append (a);
+    mapEditorActions.append ( a );
+    switchboard.addSwitch ("mapSelectPrevious", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editSelectPrevious() ) );
+    actionSelectPrevious=a;
+
+    a = new QAction( QPixmap(":/selectnext.png"), tr( "Select next","Edit menu"), this);
+    a->setShortcut (Qt::CTRL + Qt::Key_I );
+    a->setShortcutContext (Qt::WidgetShortcut);
+    selectMenu->addAction(a);
+    actionListFiles.append (a);
+    mapEditorActions.append ( a );
+    switchboard.addSwitch ("mapSelectNext", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editSelectNext() ) );
+    actionSelectNext=a;
+
+    a = new QAction( tr( "Unselect all","Edit menu"), this);
+    //a->setShortcut (Qt::CTRL + Qt::Key_I );
+    selectMenu->addAction(a);
+    switchboard.addSwitch ("mapSelectNothing", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editSelectNothing() ) );
+    actionListFiles.append (a);
+    actionSelectNothing=a;
+
+    tag = tr("Search functions","Shortcuts");
+    a = new QAction( QPixmap(":/find.png"), tr( "Find...","Edit menu"), this);
+    a->setShortcut (Qt::CTRL + Qt::Key_F );    
+    selectMenu->addAction(a);
+    switchboard.addSwitch ("mapFind", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editOpenFindResultWidget() ) );
+    actionListFiles.append(a);
+    actionFind=a;
+
+    a = new QAction( QPixmap(":/find.png"), tr( "Find...","Edit menu"), this);
+    a->setShortcut (Qt::Key_Slash );   
+    selectMenu->addAction(a);
+    switchboard.addSwitch ("mapFindAlt", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editOpenFindResultWidget() ) );
+    actionListFiles.append(a);
+
+    a = new QAction( tr( "Find duplicate URLs","Edit menu"), this);
+    a->setShortcut (Qt::SHIFT + Qt::Key_F);    
+    switchboard.addSwitch ("mapFindDuplicates", shortcutScope, a, tag);
+    if (settings.value( "/mainwindow/showTestMenu",false).toBool() ) 
+       selectMenu->addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editFindDuplicateURLs() ) );
+
+}
+
+// Format Actions
+void Main::setupFormatActions()
+{
+    QMenu *formatMenu = menuBar()->addMenu (tr ("F&ormat","Format menu"));
+
+    QString tag = tr("Formatting","Shortcuts");
+
+    QAction *a;
+    QPixmap pix( 16,16);
+    pix.fill (Qt::black);
+    a= new QAction(pix, tr( "Set &Color" )+QString("..."), this);
+    formatMenu->addAction(a);
+    switchboard.addSwitch ("mapFormatColor", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( formatSelectColor() ) );
+    actionFormatColor=a;
+
+    a= new QAction( QPixmap(":/formatcolorpicker.png"), tr( "Pic&k color","Edit menu" ), this);
+    a->setShortcut (Qt::CTRL + Qt::Key_K );
+    formatMenu->addAction(a);
+    switchboard.addSwitch ("mapFormatColorPicker", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( formatPickColor() ) );
+    a->setEnabled (false);
+    actionListBranches.append(a);
+    actionFormatPickColor=a;
+
+    a= new QAction(QPixmap(":/formatcolorbranch.png"), tr( "Color &branch","Edit menu" ), this);
+    //a->setShortcut (Qt::CTRL + Qt::Key_B + Qt::SHIFT);
+    formatMenu->addAction(a);
+    switchboard.addSwitch ("mapFormatColorBranch", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( formatColorBranch() ) );
+    a->setEnabled (false);
+    actionListBranches.append(a);
+    actionFormatColorBranch=a;
+
+    a= new QAction(QPixmap(":/formatcolorsubtree.png"), tr( "Color sub&tree","Edit menu" ), this);
+    //a->setShortcut (Qt::CTRL + Qt::Key_B);   // Color subtree
+    formatMenu->addAction(a);
+    switchboard.addSwitch ("mapFormatColorSubtree", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( formatColorSubtree() ) );
+    a->setEnabled (false);
+    actionListBranches.append(a);
+    actionFormatColorSubtree=a;
+
+    formatMenu->addSeparator();
+
+    a= new QAction( tr( "Select default font","Branch attribute" )+"...",  this);
+    a->setCheckable(false);
+    connect( a, SIGNAL( triggered() ), this, SLOT( formatSelectFont() ) );
+    formatMenu->addAction (a);
+    actionFormatFont=a;
+
+    formatMenu->addSeparator();
+
+    actionGroupFormatLinkStyles=new QActionGroup ( this);
+    actionGroupFormatLinkStyles->setExclusive (true);
+    a= new QAction( tr( "Linkstyle Line" ), actionGroupFormatLinkStyles);
+    a->setCheckable(true);
+    restrictedMapActions.append( a );
+    formatMenu->addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( formatLinkStyleLine() ) );
+    actionFormatLinkStyleLine=a;
+
+    a= new QAction( tr( "Linkstyle Curve" ), actionGroupFormatLinkStyles);
+    a->setCheckable(true);
+    restrictedMapActions.append( a );
+    formatMenu->addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( formatLinkStyleParabel() ) );
+    actionFormatLinkStyleParabel=a;
+
+    a= new QAction( tr( "Linkstyle Thick Line" ), actionGroupFormatLinkStyles );
+    a->setCheckable(true);
+    restrictedMapActions.append( a );
+    formatMenu->addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( formatLinkStylePolyLine() ) );
+    actionFormatLinkStylePolyLine=a;
+
+    a= new QAction( tr( "Linkstyle Thick Curve" ), actionGroupFormatLinkStyles);
+    a->setCheckable(true);
+    a->setChecked (true);
+    restrictedMapActions.append( a );
+    formatMenu->addAction (a);
+    formatMenu->addSeparator();
+    connect( a, SIGNAL( triggered() ), this, SLOT( formatLinkStylePolyParabel() ) );
+    actionFormatLinkStylePolyParabel=a;
+
+    a = new QAction( tr( "Hide link if object is not selected","Branch attribute" ), this);
+    a->setCheckable(true);
+    connect( a, SIGNAL( triggered() ), this, SLOT( formatHideLinkUnselected() ) );
+    actionListBranches.append (a);
+    actionFormatHideLinkUnselected=a;
+
+    a= new QAction( tr( "&Use color of heading for link","Branch attribute" ),  this);
+    a->setCheckable(true);
+    connect( a, SIGNAL( triggered() ), this, SLOT( formatToggleLinkColorHint() ) );
+    formatMenu->addAction (a);
+    actionFormatLinkColorHint=a;
+
+    pix.fill (Qt::white);
+    a= new QAction( pix, tr( "Set &Link Color")+"..." , this  );
+    formatMenu->addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( formatSelectLinkColor() ) );
+    actionFormatLinkColor=a;
+
+    a= new QAction( pix, tr( "Set &Selection Color")+"...", this  );
+    formatMenu->addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( formatSelectSelectionColor() ) );
+    actionFormatSelectionColor=a;
+
+    a= new QAction( pix, tr( "Set &Background Color" )+"...", this );
+    formatMenu->addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( formatSelectBackColor() ) );
+    actionFormatBackColor=a;
+
+    a= new QAction( pix, tr( "Set &Background image" )+"...", this );
+    formatMenu->addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( formatSelectBackImage() ) );
+    actionFormatBackImage=a;
+}
+
+// View Actions
+void Main::setupViewActions()
+{
+    QMenu *viewMenu = menuBar()->addMenu ( tr( "&View" ));
+    toolbarsMenu=viewMenu->addMenu (tr("Toolbars","Toolbars overview in view menu") );
+    QString tag = tr("Views","Shortcuts");
+
+    viewMenu->addSeparator();  
+
+    QAction *a;
+    a = new QAction( QPixmap(":/viewmag+.png"), tr( "Zoom in","View action" ), this);
+    a->setShortcut(Qt::Key_Plus);
+    viewMenu->addAction (a);
+    switchboard.addSwitch ("mapZoomIn", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT(viewZoomIn() ) );
+    actionListFiles.append (a);
+    actionZoomIn=a;
+
+    a = new QAction( QPixmap(":/viewmag-.png"), tr( "Zoom out","View action" ), this);
+    a->setShortcut(Qt::Key_Minus);
+    viewMenu->addAction (a);
+    switchboard.addSwitch ("mapZoomOut", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( viewZoomOut() ) );
+    actionListFiles.append (a);
+    actionZoomOut=a;
+
+    a = new QAction( QPixmap(":/rotate-ccw.png"), tr( "Rotate counterclockwise","View action" ), this);
+    a->setShortcut( Qt::SHIFT + Qt::Key_R);
+    viewMenu->addAction (a);
+    switchboard.addSwitch ("mapRotateCounterClockwise", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( viewRotateCounterClockwise() ) );
+    actionListFiles.append (a);
+    actionRotateCounterClockwise=a;
+
+    a = new QAction( QPixmap(":/rotate-cw.png"), tr( "Rotate rclockwise","View action" ), this);
+    a->setShortcut(Qt::Key_R);
+    viewMenu->addAction (a);
+    switchboard.addSwitch ("mapRotateClockwise", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( viewRotateClockwise() ) );
+    actionListFiles.append (a);
+    actionRotateClockwise=a;
+
+    a = new QAction(QPixmap(":/viewmag-reset.png"), tr( "reset Zoom","View action" ), this);
+    a->setShortcut (Qt::Key_Comma);
+    switchboard.addSwitch ("mapZoomReset", shortcutScope, a, tag);
+    viewMenu->addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT(viewZoomReset() ) );
+    actionListFiles.append (a);
+    actionZoomReset=a;
+
+    a = new QAction( QPixmap(":/viewshowsel.png"), tr( "Center on selection","View action" ), this);
+    a->setShortcut(Qt::Key_Period);
+    viewMenu->addAction (a);
+    switchboard.addSwitch ("mapCenterOn", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( viewCenter() ) );
+    actionListFiles.append (a);
+    actionCenterOn=a;
+
+    viewMenu->addSeparator();  
+
+    //a=noteEditorDW->toggleViewAction();
+    a = new QAction(QPixmap(":/flag-note.png"), tr( "Note editor","View action" ),this);
+    a->setShortcut ( Qt::Key_N );
+    a->setShortcutContext (Qt::WidgetShortcut);
+    a->setCheckable(true);
+    viewMenu->addAction (a);
+    mapEditorActions.append( a );
+    switchboard.addSwitch ("mapToggleNoteEditor", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT(windowToggleNoteEditor() ) );
+    actionViewToggleNoteEditor=a;
+
+    //a=headingEditorDW->toggleViewAction();
+    a = new QAction(QPixmap(":/headingeditor.png"), tr( "Heading editor","View action" ),this);
+    a->setCheckable(true);
+    a->setIcon (QPixmap(":/headingeditor.png"));
+    a->setShortcut ( Qt::Key_E );
+    a->setShortcutContext (Qt::WidgetShortcut);
+    mapEditorActions.append( a );
+    viewMenu->addAction (a);
+    switchboard.addSwitch ("mapToggleHeadingEditor", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT(windowToggleHeadingEditor() ) );
+    actionViewToggleHeadingEditor=a;
+
+    // Original icon is "category" from KDE
+    a = new QAction(QPixmap(":/treeeditor.png"), tr( "Tree editor","View action" ),this);
+    a->setShortcut ( Qt::CTRL + Qt::Key_T );
+    a->setCheckable(true);
+    viewMenu->addAction (a);
+    switchboard.addSwitch ("mapToggleTreeEditor", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT(windowToggleTreeEditor() ) );
+    actionViewToggleTreeEditor=a;
+
+    a = new QAction(QPixmap(":/taskeditor.png"), tr( "Task editor","View action" ),this);
+    a->setCheckable(true);
+    a->setShortcut ( Qt::Key_Q );
+    a->setShortcutContext (Qt::WidgetShortcut);
+    mapEditorActions.append( a );
+    viewMenu->addAction (a);
+    switchboard.addSwitch ("mapToggleTaskEditor", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT(windowToggleTaskEditor() ) );
+    actionViewToggleTaskEditor=a;
+
+    a = new QAction(QPixmap(":/slideeditor.png"), tr( "Slide editor","View action" ),this);
+    a->setShortcut ( Qt::SHIFT + Qt::Key_S );
+    a->setCheckable(true);
+    viewMenu->addAction (a);
+    switchboard.addSwitch ("mapToggleSlideEditor", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT(windowToggleSlideEditor() ) );
+    actionViewToggleSlideEditor=a;
+
+    a = new QAction(QPixmap(":/scripteditor.png"), tr("Script editor","View action"), this);
+    a->setShortcut ( Qt::ALT + Qt::Key_S );
+    a->setCheckable(true);
+    viewMenu->addAction (a);
+    switchboard.addSwitch ("mapToggleScriptEditor", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( windowToggleScriptEditor() ) );
+    actionViewToggleScriptEditor=a;
+
+    a = new QAction(QPixmap(":/history.png"),  tr( "History Window","View action" ),this );
+    a->setShortcut ( Qt::CTRL + Qt::Key_H  );
+    a->setShortcutContext (Qt::WidgetShortcut);
+    a->setCheckable(true);
+    viewMenu->addAction (a);
+    mapEditorActions.append( a );
+    switchboard.addSwitch ("mapToggleHistoryWindow", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT(windowToggleHistory() ) );
+    actionViewToggleHistoryWindow=a;
+
+    viewMenu->addAction (actionViewTogglePropertyEditor);
+
+    viewMenu->addSeparator();  
+
+    a = new QAction(tr( "Antialiasing","View action" ),this );
+    a->setCheckable(true);
+    a->setChecked (settings.value("/mainwindow/view/AntiAlias",true).toBool());
+    viewMenu->addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT(windowToggleAntiAlias() ) );
+    actionViewToggleAntiAlias=a;
+
+    a = new QAction(tr( "Smooth pixmap transformations","View action" ),this );
+    a->setStatusTip (a->text());
+    a->setCheckable(true);
+    a->setChecked (settings.value("/mainwindow/view/SmoothPixmapTransformation",true).toBool());
+    viewMenu->addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT(windowToggleSmoothPixmap() ) );
+    actionViewToggleSmoothPixmapTransform=a;
+
+    a = new QAction(tr( "Next Map","View action" ), this);
+    a->setStatusTip (a->text());
+    a->setShortcut (Qt::SHIFT+ Qt::Key_Right );
+    viewMenu->addAction (a);
+    switchboard.addSwitch ("mapPrevious", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT(windowNextEditor() ) );
+
+    a = new QAction (tr( "Previous Map","View action" ), this );
+    a->setStatusTip (a->text());
+    a->setShortcut (Qt::SHIFT+ Qt::Key_Left );
+    viewMenu->addAction (a);
+    switchboard.addSwitch ("mapNext", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT(windowPreviousEditor() ) );
+
+    a = new QAction (tr( "Next slide","View action" ), this );
+    a->setStatusTip (a->text());
+    a->setShortcut (Qt::Key_Space);
+    viewMenu->addAction (a);
+    switchboard.addSwitch ("mapNextSlide", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT(nextSlide() ) );
+
+    a = new QAction (tr( "Previous slide","View action" ), this );
+    a->setStatusTip (a->text());
+    a->setShortcut (Qt::Key_Backspace);
+    viewMenu->addAction (a);
+    switchboard.addSwitch ("mapPreviousSlide", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT(previousSlide() ) );
+}
+
+// Mode Actions
+void Main::setupModeActions()
+{
+    //QPopupMenu *menu = new QPopupMenu( this );
+    //menuBar()->insertItem( tr( "&Mode (using modifiers)" ), menu );
+
+    QString tag = tr("Modifier modes","Shortcuts");
+    QAction *a;
+    actionGroupModModes=new QActionGroup ( this);
+    actionGroupModModes->setExclusive (true);
+    a= new QAction( QPixmap(":/modecolor.png"), tr( "Use modifier to color branches","Mode modifier" ), actionGroupModModes);
+    a->setShortcut (Qt::Key_J);
+    addAction(a);
+    switchboard.addSwitch ("mapModModeColor", shortcutScope, a, tag);
+    a->setCheckable(true);
+    a->setChecked(true);
+    actionListFiles.append (a);
+    actionModModeColor=a;
+
+    a->setShortcut( Qt::Key_K); 
+    addAction(a);
+    switchboard.addSwitch ("mapModModeCopy", shortcutScope, a, tag);
+    a->setCheckable(true);
+    actionListFiles.append (a);
+    actionModModeCopy=a;
+
+    a= new QAction(QPixmap(":/modelink.png"), tr( "Use modifier to draw xLinks","Mode modifier" ), actionGroupModModes );
+    a->setShortcut (Qt::Key_L);
+    addAction(a);
+    switchboard.addSwitch ("mapModModeXLink", shortcutScope, a, tag);
+    a->setCheckable(true);
+    actionListFiles.append (a);
+    actionModModeXLink=a;
+}
+
+// Flag Actions
+void Main::setupFlagActions()
+{
+    // Create System Flags
+    Flag *flag;
+
+    // Tasks
+    // Origin: ./share/icons/oxygen/48x48/status/task-reject.png
+    flag=new Flag(":/flag-task-new.png");
+    flag->setGroup("system-tasks");
+    setupFlag (flag,NULL,"system-task-new",tr("Note","SystemFlag"));
+    flag=new Flag(":/flag-task-new-morning.png");
+    flag->setGroup("system-tasks");
+    setupFlag (flag,NULL,"system-task-new-morning",tr("Note","SystemFlag"));
+    flag=new Flag(":/flag-task-new-sleeping.png");
+    flag->setGroup("system-tasks");
+    setupFlag (flag,NULL,"system-task-new-sleeping",tr("Note","SystemFlag"));
+    // Origin: ./share/icons/oxygen/48x48/status/task-reject.png
+    flag=new Flag(":/flag-task-wip.png");
+    flag->setGroup("system-tasks");
+    setupFlag (flag,NULL,"system-task-wip",tr("Note","SystemFlag"));
+    flag=new Flag(":/flag-task-wip-morning.png");
+    flag->setGroup("system-tasks");
+    setupFlag (flag,NULL,"system-task-wip-morning",tr("Note","SystemFlag"));
+    flag=new Flag(":/flag-task-wip-sleeping.png");
+    flag->setGroup("system-tasks");
+    setupFlag (flag,NULL,"system-task-wip-sleeping",tr("Note","SystemFlag"));
+    // Origin: ./share/icons/oxygen/48x48/status/task-complete.png
+    flag=new Flag(":/flag-task-finished.png");
+    flag->setGroup("system-tasks");
+    setupFlag (flag,NULL,"system-task-finished",tr("Note","SystemFlag"));
+
+    flag=new Flag(":/flag-note.png");
+    setupFlag (flag,NULL,"system-note",tr("Note","SystemFlag"));
+
+    flag=new Flag(":/flag-url.png");
+    setupFlag (flag,NULL,"system-url",tr("URL to Document ","SystemFlag"));
+
+    flag=new Flag(":/flag-url-bugzilla-novell.png");
+    setupFlag (flag,NULL,"system-url-bugzilla-novell",tr("URL to Bugzilla ","SystemFlag"));
+
+    flag=new Flag(":/flag-url-bugzilla-novell-closed.png");
+    setupFlag (flag,NULL,"system-url-bugzilla-novell-closed",tr("URL to Bugzilla ","SystemFlag"));
+
+    flag=new Flag(":/flag-target.png");
+    setupFlag (flag,NULL,"system-target",tr("Map target","SystemFlag"));
+
+    flag=new Flag(":/flag-vymlink.png");
+    setupFlag (flag,NULL,"system-vymLink",tr("Link to another vym map","SystemFlag"));
+
+    flag=new Flag(":/flag-scrolled-right.png");
+    setupFlag (flag,NULL,"system-scrolledright",tr("subtree is scrolled","SystemFlag"));
+
+    flag=new Flag(":/flag-tmpUnscrolled-right.png");
+    setupFlag (flag,NULL,"system-tmpUnscrolledRight",tr("subtree is temporary scrolled","SystemFlag"));
+
+    flag=new Flag(":/flag-hideexport.png");
+    setupFlag (flag,NULL,"system-hideInExport",tr("Hide object in exported maps","SystemFlag"));
+
+    addToolBarBreak();
+
+    // Create Standard Flags
+    standardFlagsToolbar=addToolBar (tr ("Standard Flags toolbar","Standard Flag Toolbar"));
+    standardFlagsToolbar->setObjectName ("standardFlagTB");
+    standardFlagsMaster->setToolBar (standardFlagsToolbar);
+
+    // Add entry now, to avoid chicken and egg problem and position toolbar 
+    // after all others:
+    toolbarsMenu->addAction (standardFlagsToolbar->toggleViewAction() );
+
+    flag=new Flag(":/flag-stopsign.png");
+    setupFlag (flag,standardFlagsToolbar,"stopsign",tr("This won't work!","Standardflag"),Qt::Key_1);
+    flag->unsetGroup();
+
+    flag=new Flag(":/flag-hook-green.png");
+    flag->setGroup("standard-status");
+    setupFlag (flag,standardFlagsToolbar,"hook-green",tr("Status - ok,done","Standardflag"),Qt::Key_2);
+
+    flag=new Flag(":/flag-wip.png");
+    flag->setGroup("standard-status");
+    setupFlag (flag,standardFlagsToolbar,"wip",tr("Status - work in progress","Standardflag"),Qt::Key_3);
+
+    flag=new Flag(":/flag-cross-red.png");
+    flag->setGroup("standard-status");
+    setupFlag (flag,standardFlagsToolbar,"cross-red",tr("Status - missing, not started","Standardflag"),Qt::Key_4);
+
+    flag=new Flag(":/flag-exclamationmark.png");
+    flag->setGroup("standard-mark");
+    setupFlag (flag,standardFlagsToolbar,"exclamationmark",tr("Take care!","Standardflag"),Qt::Key_Exclam);
+
+    flag=new Flag(":/flag-questionmark.png");
+    flag->setGroup("standard-mark");
+    setupFlag (flag,standardFlagsToolbar,"questionmark",tr("Really?","Standardflag"),Qt::Key_Question);
+
+    flag=new Flag(":/flag-smiley-good.png");
+    flag->setGroup("standard-smiley");
+    setupFlag (flag,standardFlagsToolbar,"smiley-good",tr("Good","Standardflag"),Qt::Key_ParenRight);
+
+    flag=new Flag(":/flag-smiley-sad.png");
+    flag->setGroup("standard-smiley");
+    setupFlag (flag,standardFlagsToolbar,"smiley-sad",tr("Bad","Standardflag"),Qt::Key_ParenLeft);
+
+    flag=new Flag(":/flag-smiley-omb.png");
+    flag->setGroup("standard-smiley");
+    setupFlag (flag,standardFlagsToolbar,"smiley-omb",tr("Oh no!","Standardflag"));
+    // Original omg.png (in KDE emoticons)
+    flag->unsetGroup();
+
+    flag=new Flag(":/flag-clock.png");
+    setupFlag (flag,standardFlagsToolbar,"clock",tr("Time critical","Standardflag"));
+
+    flag=new Flag(":/flag-phone.png");
+    setupFlag (flag,standardFlagsToolbar,"phone",tr("Call...","Standardflag"));
+
+    flag=new Flag(":/flag-lamp.png");
+    setupFlag (flag,standardFlagsToolbar,"lamp",tr("Idea!","Standardflag"),Qt::Key_Asterisk);
+
+    flag=new Flag(":/flag-arrow-up.png");
+    flag->setGroup("standard-arrow");
+    setupFlag (flag,standardFlagsToolbar,"arrow-up",tr("Important","Standardflag"),Qt::SHIFT + Qt::Key_PageUp);
+
+    flag=new Flag(":/flag-arrow-down.png");
+    flag->setGroup("standard-arrow");
+    setupFlag (flag,standardFlagsToolbar,"arrow-down",tr("Unimportant","Standardflag"),Qt::SHIFT + Qt::Key_PageDown);
+
+    flag=new Flag(":/flag-2arrow-up.png");
+    flag->setGroup("standard-arrow");
+    setupFlag (flag,standardFlagsToolbar,"2arrow-up",tr("Very important!","Standardflag"),Qt::SHIFT + +Qt::CTRL + Qt::Key_PageUp);
+
+    flag=new Flag(":/flag-2arrow-down.png");
+    flag->setGroup("standard-arrow");
+    setupFlag (flag,standardFlagsToolbar,"2arrow-down",tr("Very unimportant!","Standardflag"),Qt::SHIFT + Qt::CTRL + Qt::Key_PageDown);
+    flag->unsetGroup();
+
+    flag=new Flag(":/flag-thumb-up.png");
+    flag->setGroup("standard-thumb");
+    setupFlag (flag,standardFlagsToolbar,"thumb-up",tr("I like this","Standardflag"));
+
+    flag=new Flag(":/flag-thumb-down.png");
+    flag->setGroup("standard-thumb");
+    setupFlag (flag,standardFlagsToolbar,"thumb-down",tr("I do not like this","Standardflag"));
+    flag->unsetGroup();
+
+    flag=new Flag(":/flag-rose.png");
+    setupFlag (flag,standardFlagsToolbar,"rose",tr("Rose","Standardflag"));
+
+    flag=new Flag(":/flag-heart.png");
+    setupFlag (flag,standardFlagsToolbar,"heart",tr("I just love...","Standardflag"));
+
+    flag=new Flag(":/flag-present.png");
+    setupFlag (flag,standardFlagsToolbar,"present",tr("Surprise!","Standardflag"));
+
+    flag=new Flag(":/flag-flash.png");
+    setupFlag (flag,standardFlagsToolbar,"flash",tr("Dangerous","Standardflag"));
+
+    // Original: xsldbg_output.png
+    flag=new Flag(":/flag-info.png");
+    setupFlag (flag,standardFlagsToolbar,"info",tr("Info","Standardflag"),Qt::Key_I);
+
+    // Original khelpcenter.png
+    flag=new Flag(":/flag-lifebelt.png");
+    setupFlag (flag,standardFlagsToolbar,"lifebelt",tr("This will help","Standardflag"));
+
+    // Freemind flags
+    flag=new Flag(":/freemind/warning.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,  "freemind-warning",tr("Important","Freemind-Flag"));
+
+    for (int i=1; i<8; i++)
+    {
+       flag=new Flag(QString(":/freemind/priority-%1.png").arg(i));
+       flag->setVisible(false);
+       flag->setGroup ("Freemind-priority");
+       setupFlag (flag,standardFlagsToolbar, QString("freemind-priority-%1").arg(i),tr("Priority","Freemind-Flag"));
+    }
+
+    flag=new Flag(":/freemind/back.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,"freemind-back",tr("Back","Freemind-Flag"));
+
+    flag=new Flag(":/freemind/forward.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,"freemind-forward",tr("forward","Freemind-Flag"));
+
+    flag=new Flag(":/freemind/attach.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,"freemind-attach",tr("Look here","Freemind-Flag"));
+
+    flag=new Flag(":/freemind/clanbomber.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,"freemind-clanbomber",tr("Dangerous","Freemind-Flag"));
+
+    flag=new Flag(":/freemind/desktopnew.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,"freemind-desktopnew",tr("Don't flagrget","Freemind-Flag"));
+
+    flag=new Flag(":/freemind/flag.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,"freemind-flag",tr("Flag","Freemind-Flag"));
+
+
+    flag=new Flag(":/freemind/gohome.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,"freemind-gohome",tr("Home","Freemind-Flag"));
+
+    flag=new Flag(":/freemind/kaddressbook.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,"freemind-kaddressbook",tr("Telephone","Freemind-Flag"));
+
+    flag=new Flag(":/freemind/knotify.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,"freemind-knotify",tr("Music","Freemind-Flag"));
+
+    flag=new Flag(":/freemind/korn.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,"freemind-korn",tr("Mailbox","Freemind-Flag"));
+
+    flag=new Flag(":/freemind/mail.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,"freemind-mail",tr("Maix","Freemind-Flag"));
+
+    flag=new Flag(":/freemind/password.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,"freemind-password",tr("Password","Freemind-Flag"));
+
+    flag=new Flag(":/freemind/pencil.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,"freemind-pencil",tr("To be improved","Freemind-Flag"));
+
+    flag=new Flag(":/freemind/stop.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,"freemind-stop",tr("Stop","Freemind-Flag"));
+
+    flag=new Flag(":/freemind/wizard.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,"freemind-wizard",tr("Magic","Freemind-Flag"));
+
+    flag=new Flag(":/freemind/xmag.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,"freemind-xmag",tr("To be discussed","Freemind-Flag"));
+
+    flag=new Flag(":/freemind/bell.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,"freemind-bell",tr("Reminder","Freemind-Flag"));
+
+    flag=new Flag(":/freemind/bookmark.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,"freemind-bookmark",tr("Excellent","Freemind-Flag"));
+
+    flag= new Flag(":/freemind/penguin.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,"freemind-penguin",tr("Linux","Freemind-Flag"));
+
+    flag=new Flag (":/freemind/licq.png");
+    flag->setVisible(false);
+    setupFlag (flag,standardFlagsToolbar,"freemind-licq",tr("Sweet","Freemind-Flag"));
+}
+
+void Main::setupFlag (Flag *flag, QToolBar *tb, const QString &name, const QString &tooltip, const QKeySequence &keyseq)
+{
+    flag->setName(name);
+    flag->setToolTip (tooltip);
+    QAction *a;
+    if (tb)
+    {
+        a=new QAction (flag->getPixmap(),name,this);
+        // StandardFlag
+        flag->setAction (a);
+        a->setVisible (flag->isVisible());
+        a->setCheckable(true);
+        a->setObjectName(name);
+        a->setToolTip(tooltip);
+        if (keyseq != 0)
+        {
+            a->setShortcut (keyseq);
+            a->setShortcutContext (Qt::WidgetShortcut);
+
+            // Allow mapEditors to actually trigger this action
+            mapEditorActions.append( a );
+            taskEditorActions.append( a );
+        }
+
+        tb->addAction(a);
+        connect (a, SIGNAL( triggered() ), this, SLOT( standardFlagChanged() ) );
+        standardFlagsMaster->addFlag (flag);
+    } else
+    {
+        // SystemFlag
+        systemFlagsMaster->addFlag (flag);
+    }
+}
+
+// Network Actions
+void Main::setupNetworkActions()
+{
+    if (!settings.value( "/mainwindow/showTestMenu",false).toBool() ) return;
+
+    QAction *a;
+
+    a = new QAction(  "Start TCPserver for MapEditor",this);
+    //a->setShortcut ( Qt::ALT + Qt::Key_T );   
+    connect( a, SIGNAL( triggered() ), this, SLOT( networkStartServer() ) );
+
+    a = new QAction(  "Connect MapEditor to server",this);
+    //a->setShortcut ( Qt::ALT + Qt::Key_C );
+    connect( a, SIGNAL( triggered() ), this, SLOT( networkConnect() ) );
+}
+
+// Settings Actions
+void Main::setupSettingsActions()
+{
+    QMenu *settingsMenu = menuBar()->addMenu( tr( "Settings" ));
+
+    QAction *a;
+
+    a = new QAction( tr( "Check for release notes and updates","Settings action"), this);
+    a->setCheckable(true);
+    a->setChecked ( settings.value ("/downloads/enabled",true).toBool());
+    connect( a, SIGNAL( triggered() ), this, SLOT( settingsToggleDownloads() ) );
+    settingsMenu->addAction (a);
+    actionSettingsToggleDownloads = a;
+
+    a = new QAction( tr( "Set author for new maps","Settings action"), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( settingsDefaultMapAuthor() ) );
+    settingsMenu->addAction (a);
+
+    settingsMenu->addSeparator();
+
+    a = new QAction( tr( "Set application to open pdf files","Settings action"), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( settingsPDF() ) );
+    settingsMenu->addAction (a);
+
+    a = new QAction( tr( "Set application to open external links","Settings action"), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( settingsURL() ) );
+    settingsMenu->addAction (a);
+
+    a = new QAction( tr( "Set application to zip/unzip files","Settings action"), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( settingsZipTool() ) );
+    settingsMenu->addAction (a);
+
+    a = new QAction( tr( "Set path for macros","Settings action")+"...", this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( settingsMacroDir() ) );
+    settingsMenu->addAction (a);
+
+    a = new QAction( tr( "Set number of undo levels","Settings action")+"...", this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( settingsUndoLevels() ) );
+    settingsMenu->addAction (a);
+
+    settingsMenu->addSeparator();
+
+    a = new QAction( tr( "Autosave","Settings action"), this);
+    a->setCheckable(true);
+    a->setChecked ( settings.value ("/system/autosave/use",true).toBool());
+    settingsMenu->addAction (a);
+    actionSettingsToggleAutosave=a;
+
+    a = new QAction( tr( "Autosave time","Settings action")+"...", this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( settingsAutosaveTime() ) );
+    settingsMenu->addAction (a);
+    actionSettingsAutosaveTime=a;
+
+    // Disable certain actions during testing
+    if (testmode)
+    {
+       actionSettingsToggleAutosave->setChecked (false);
+       actionSettingsToggleAutosave->setEnabled (false);
+       actionSettingsAutosaveTime->setEnabled (false);
+    }
+
+    a = new QAction( tr( "Write backup file on save","Settings action"), this);
+    a->setCheckable(true);
+    a->setChecked ( settings.value ("/system/writeBackupFile",false).toBool());
+    connect( a, SIGNAL( triggered() ), this, SLOT( settingsToggleWriteBackupFile() ) );
+    settingsMenu->addAction (a);
+    actionSettingsWriteBackupFile=a;
+
+    settingsMenu->addSeparator();
+
+    a = new QAction( tr( "Edit branch after adding it","Settings action" ), this );
+    a->setCheckable(true);
+    a->setChecked ( settings.value ("/mapeditor/editmode/autoEditNewBranch",true).toBool());
+    settingsMenu->addAction (a);
+    actionSettingsAutoEditNewBranch=a;
+
+    a= new QAction( tr( "Select branch after adding it","Settings action" ), this );
+    a->setCheckable(true);
+    a->setChecked ( settings.value ("/mapeditor/editmode/autoSelectNewBranch",false).toBool() );
+    settingsMenu->addAction (a);
+    actionSettingsAutoSelectNewBranch=a;
+
+    a= new QAction(tr( "Select existing heading","Settings action" ), this);
+    a->setCheckable(true);
+    a->setChecked ( settings.value ("/mapeditor/editmode/autoSelectText",true).toBool() );
+    settingsMenu->addAction (a);
+    actionSettingsAutoSelectText=a;
+
+    a= new QAction( tr( "Exclusive flags","Settings action" ), this);
+    a->setCheckable(true);
+    a->setChecked ( settings.value ("/mapeditor/editmode/useFlagGroups",true).toBool() );
+    settingsMenu->addAction (a);
+    actionSettingsUseFlagGroups=a;
+
+    a= new QAction( tr( "Use hide flags","Settings action" ), this);
+    a->setCheckable(true);
+    a->setChecked ( settings.value ("/export/useHideExport",true).toBool() );
+    settingsMenu->addAction (a);
+    actionSettingsUseHideExport=a;
+
+    settingsMenu->addSeparator();
+
+    a = new QAction( tr( "Number of visible parents in task editor","Settings action"), this); 
+    connect( a, SIGNAL( triggered() ), this, SLOT( settingsShowParentsLevelTasks() ) );
+    settingsMenu->addAction (a);
+    actionSettingsShowParentsLevelTasks=a;
+
+    a = new QAction( tr( "Number of visible parents in find results window","Settings action"), this); 
+    connect( a, SIGNAL( triggered() ), this, SLOT( settingsShowParentsLevelFindResults() ) );
+    settingsMenu->addAction (a);
+    actionSettingsShowParentsLevelFindResults=a;
+
+    a = new QAction( tr( "Animation","Settings action"), this);
+    a->setCheckable(true);
+    a->setChecked (settings.value("/animation/use",true).toBool() );
+    connect( a, SIGNAL( triggered() ), this, SLOT( settingsToggleAnimation() ) );
+    settingsMenu->addAction (a);
+    actionSettingsUseAnimation=a;
+
+    a = new QAction( tr( "Automatic layout","Settings action"), this);
+    a->setCheckable(true);
+    a->setChecked ( settings.value ("/mainwindow/autoLayout/use",true).toBool());
+    connect( a, SIGNAL( triggered() ), this, SLOT( settingsToggleAutoLayout() ) );
+    settingsMenu->addAction (a);
+    actionSettingsToggleAutoLayout=a;
+}
+
+// Test Actions
+void Main::setupTestActions()
+{
+    QMenu *testMenu = menuBar()->addMenu( tr( "Test" ));
+
+    QString tag = "Testing";
+    QAction *a;
+    a = new QAction( "Test function 1" , this);
+    a->setShortcut (Qt::ALT + Qt::Key_T); 
+    testMenu->addAction(a);
+    switchboard.addSwitch ("mapTest1", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( testFunction1() ) );
+
+    a = new QAction( "Test function 2" , this);
+    testMenu->addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( testFunction2() ) );
+
+    a = new QAction( "Toggle hide export mode" , this);
+    a->setCheckable (true);
+    a->setChecked (false);
+    testMenu->addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( toggleHideExport() ) );
+    actionToggleHideMode=a;
+
+    a = new QAction( "Toggle winter mode" , this);
+    a->setShortcut (Qt::ALT + Qt::Key_Asterisk); 
+    testMenu->addAction(a);
+    switchboard.addSwitch ("mapWinterMode", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( toggleWinter() ) );
+    actionToggleWinter=a;
+}
+
+// Help Actions
+void Main::setupHelpActions()
+{
+    QMenu *helpMenu = menuBar()->addMenu ( tr( "&Help","Help menubar entry" ));
+
+    QAction *a;
+    a = new QAction(  tr( "Open VYM Documentation (pdf) ","Help action" ), this );
+    helpMenu->addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( helpDoc() ) );
+
+    a = new QAction(  tr( "Open VYM example maps ","Help action" ), this );
+    helpMenu->addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( helpDemo() ) );
+    helpMenu->addSeparator();
+
+    a = new QAction(  tr( "Download and show release notes","Help action" ), this );
+    helpMenu->addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( checkReleaseNotes() ) );
+
+    a = new QAction(  tr( "Check, if updates are available","Help action" ), this );
+    helpMenu->addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( checkUpdates() ) );
+    helpMenu->addSeparator();
+
+    a = new QAction(  tr( "Show keyboard shortcuts","Help action" ), this );
+    helpMenu->addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( helpShortcuts() ) );
+
+    a = new QAction( tr("Debug info","Option to show debugging info") , this);  
+    helpMenu->addAction(a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( debugInfo() ) );
+
+    a = new QAction( tr( "About VYM","Help action" ), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( helpAbout() ) );
+    helpMenu->addAction (a);
+
+    a = new QAction( tr( "About QT","Help action" ), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( helpAboutQT() ) );
+    helpMenu->addAction (a);
+}
+
+// Context Menus
+void Main::setupContextMenus()
+{
+    // Context menu for goto/move targets  (populated on demand)
+    targetsContextMenu = new QMenu (this);
+
+    // Context Menu for branch or mapcenter
+    branchContextMenu =new QMenu (this);
+    branchContextMenu->addAction (actionViewTogglePropertyEditor);
+    branchContextMenu->addSeparator(); 
+
+       // Submenu "Add"
+       branchAddContextMenu =branchContextMenu->addMenu (tr("Add"));
+       branchAddContextMenu->addAction (actionPaste );
+       branchAddContextMenu->addAction ( actionAddMapCenter );
+       branchAddContextMenu->addAction ( actionAddBranch );
+       branchAddContextMenu->addAction ( actionAddBranchBefore );
+       branchAddContextMenu->addAction ( actionAddBranchAbove);
+       branchAddContextMenu->addAction ( actionAddBranchBelow );
+       branchAddContextMenu->addSeparator();   
+       branchAddContextMenu->addAction ( actionImportAdd );
+       branchAddContextMenu->addAction ( actionImportReplace );
+
+       // Submenu "Remove"
+       branchRemoveContextMenu =branchContextMenu->addMenu (tr ("Remove","Context menu name"));
+       branchRemoveContextMenu->addAction (actionCut);
+       branchRemoveContextMenu->addAction ( actionDelete );
+       branchRemoveContextMenu->addAction ( actionDeleteKeepChildren );
+       branchRemoveContextMenu->addAction ( actionDeleteChildren );
+       
+
+    branchContextMenu->addAction(actionSaveBranch);
+    branchContextMenu->addAction( actionFileNewCopy);
+    branchContextMenu->addAction(actionDetach);
+
+    branchContextMenu->addSeparator(); 
+    branchContextMenu->addAction ( actionLoadImage);
+    if (settings.value( "/mainwindow/showTestMenu",false).toBool() )
+       branchContextMenu->addAction ( actionAddAttribute);
+
+
+    branchContextMenu->addSeparator();  
+
+    // Context menu for tasks
+    taskContextMenu = branchContextMenu->addMenu (tr("Tasks","Context menu"));
+       taskContextMenu->addAction (actionToggleTask);
+       taskContextMenu->addAction (actionCycleTaskStatus);
+       taskContextMenu->addSeparator();
+       taskContextMenu->addAction (actionTaskSleep0);
+       taskContextMenu->addAction (actionTaskSleepN);
+       taskContextMenu->addAction (actionTaskSleep1);
+       taskContextMenu->addAction (actionTaskSleep2);
+       taskContextMenu->addAction (actionTaskSleep3);
+       taskContextMenu->addAction (actionTaskSleep5);
+       taskContextMenu->addAction (actionTaskSleep7);
+       taskContextMenu->addAction (actionTaskSleep14);
+       taskContextMenu->addAction (actionTaskSleep28);
+
+    // Submenu for Links (URLs, vymLinks)
+    branchLinksContextMenu =new QMenu (this);
+
+       branchLinksContextMenu=branchContextMenu->addMenu(tr("References (URLs, vymLinks, ...)","Context menu name"));  
+       branchLinksContextMenu->addAction ( actionOpenURL );
+       branchLinksContextMenu->addAction ( actionOpenURLTab );
+       branchLinksContextMenu->addAction ( actionOpenMultipleVisURLTabs );
+       branchLinksContextMenu->addAction ( actionOpenMultipleURLTabs );
+       branchLinksContextMenu->addAction ( actionURLNew );
+       branchLinksContextMenu->addAction ( actionLocalURL );
+       branchLinksContextMenu->addAction ( actionGetURLsFromNote );
+       branchLinksContextMenu->addAction ( actionHeading2URL );
+       branchLinksContextMenu->addAction ( actionBugzilla2URL );
+       branchLinksContextMenu->addAction ( actionGetBugzillaData );
+       branchLinksContextMenu->addAction ( actionGetBugzillaDataSubtree );
+       if (settings.value( "/mainwindow/showTestMenu",false).toBool() )
+           branchLinksContextMenu->addAction ( actionFATE2URL );
+       branchLinksContextMenu->addSeparator(); 
+       branchLinksContextMenu->addAction ( actionOpenVymLink );
+       branchLinksContextMenu->addAction ( actionOpenVymLinkBackground );
+       branchLinksContextMenu->addAction ( actionOpenMultipleVymLinks );
+       branchLinksContextMenu->addAction ( actionEditVymLink );
+       branchLinksContextMenu->addAction ( actionDeleteVymLink );
+       
+
+    // Context Menu for XLinks in a branch menu
+    // This will be populated "on demand" in updateActions
+    QString tag = tr ("XLinks","Menu for file actions");
+    branchContextMenu->addSeparator(); 
+    branchXLinksContextMenuEdit =branchContextMenu->addMenu (tr ("Edit XLink","Context menu name"));
+    connect( 
+       branchXLinksContextMenuEdit, SIGNAL( triggered(QAction *) ), 
+       this, SLOT( editEditXLink(QAction * ) ) );
+    QAction *a;
+    a = new QAction( tr("Follow XLink","Context menu") , this);
+    a->setShortcut (Qt::Key_F); 
+    addAction(a);
+    switchboard.addSwitch ("mapFollowXLink", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( popupFollowXLink() ) );
+
+    branchXLinksContextMenuFollow =branchContextMenu->addMenu (tr ("Follow XLink","Context menu name"));
+    connect( 
+       branchXLinksContextMenuFollow, SIGNAL( triggered(QAction *) ), 
+       this, SLOT( editFollowXLink(QAction * ) ) );
+
+
+
+    // Context menu for floatimage
+    floatimageContextMenu =new QMenu (this);
+    a= new QAction (tr ("Save image","Context action"),this);
+    connect (a, SIGNAL (triggered()), this, SLOT (editSaveImage()));
+    floatimageContextMenu->addAction (a);
+
+    floatimageContextMenu->addSeparator();  
+    floatimageContextMenu->addAction(actionCopy);
+    floatimageContextMenu->addAction(actionCut);
+
+    floatimageContextMenu->addSeparator();  
+    floatimageContextMenu->addAction ( actionFormatHideLinkUnselected );
+
+    // Context menu for canvas
+    canvasContextMenu =new QMenu (this);
+
+    canvasContextMenu->addAction (actionAddMapCenter);
+
+    canvasContextMenu->addSeparator();   
+
+    canvasContextMenu->addAction(actionMapProperties);
+    canvasContextMenu->addAction(actionFormatFont);
+
+    canvasContextMenu->addSeparator();   
+
+    canvasContextMenu->addActions(actionGroupFormatLinkStyles->actions() );
+
+    canvasContextMenu->addSeparator();   
+
+    canvasContextMenu->addAction(actionFormatLinkColorHint);
+
+    canvasContextMenu->addSeparator();   
+
+    canvasContextMenu->addAction(actionFormatLinkColor);
+    canvasContextMenu->addAction(actionFormatSelectionColor);
+    canvasContextMenu->addAction(actionFormatBackColor);
+    //if (settings.value( "/mainwindow/showTestMenu",false).toBool() )
+    //    canvasContextMenu->addAction( actionFormatBackImage );  //FIXME-3 makes vym too slow: postponed for later version 
+
+
+    // Menu for last opened files
+    // Create actions
+    for (int i = 0; i < MaxRecentFiles; ++i) 
+    {
+       recentFileActions[i] = new QAction(this);
+       recentFileActions[i]->setVisible(false);
+       fileLastMapsMenu->addAction(recentFileActions[i]);
+       connect(recentFileActions[i], SIGNAL(triggered()),
+               this, SLOT(fileLoadRecent()));
+    }
+    setupRecentMapsMenu();
+}
+
+void Main::setupRecentMapsMenu()
+{
+    QStringList files = settings.value("/mainwindow/recentFileList").toStringList();
+
+    int numRecentFiles = qMin(files.size(), (int)MaxRecentFiles);
+
+    for (int i = 0; i < numRecentFiles; ++i) {
+       QString text = QString("&%1 %2").arg(i + 1).arg(files[i]);
+       recentFileActions[i]->setText(text);
+       recentFileActions[i]->setData(files[i]);
+       recentFileActions[i]->setVisible(true);
+    }
+    for (int j = numRecentFiles; j < MaxRecentFiles; ++j)
+       recentFileActions[j]->setVisible(false);
+}
+
+void Main::setupMacros()
+{
+    for (int i = 0; i <= 12; i++) 
+    {
+       macroActions[i] = new QAction(this);
+       macroActions[i]->setData(i);
+       addAction (macroActions[i]);
+       connect(macroActions[i], SIGNAL(triggered()), this, SLOT(callMacro()));
+    }          
+    macroActions[0]->setShortcut ( Qt::Key_F1 );
+    macroActions[1]->setShortcut ( Qt::Key_F2 );
+    macroActions[2]->setShortcut ( Qt::Key_F3 );
+    macroActions[3]->setShortcut ( Qt::Key_F4 );
+    macroActions[4]->setShortcut ( Qt::Key_F5 );
+    macroActions[5]->setShortcut ( Qt::Key_F6 );
+    macroActions[6]->setShortcut ( Qt::Key_F7 );
+    macroActions[7]->setShortcut ( Qt::Key_F8 );
+    macroActions[8]->setShortcut ( Qt::Key_F9 );
+    macroActions[9]->setShortcut ( Qt::Key_F10 );
+    macroActions[10]->setShortcut ( Qt::Key_F11 );
+    macroActions[11]->setShortcut ( Qt::Key_F12 );
+
+    macroActions[12]->setShortcut ( Qt::Key_F1 + Qt::SHIFT);
+}
+
+void Main::setupToolbars()
+{
+    // File actions
+    fileToolbar = addToolBar( tr ("File actions toolbar","Toolbar for file actions"));
+    fileToolbar->setObjectName ("fileTB");
+    fileToolbar->addAction(actionFileNew);
+    fileToolbar->addAction(actionFileOpen);
+    fileToolbar->addAction(actionFileSave);
+    fileToolbar->addAction(actionFileExportLast);
+    fileToolbar->addAction(actionFilePrint);
+
+    // Undo/Redo and clipboard
+    clipboardToolbar =addToolBar( tr ("Undo and clipboard toolbar","Toolbar for redo/undo and clipboard"));
+    clipboardToolbar->setObjectName ("clipboard toolbar");
+    clipboardToolbar->addAction (actionUndo);
+    clipboardToolbar->addAction (actionRedo);
+    clipboardToolbar->addAction (actionCopy);
+    clipboardToolbar->addAction (actionCut);
+    clipboardToolbar->addAction (actionPaste);
+
+    // Basic edits
+    editActionsToolbar = addToolBar( tr ("Edit actions toolbar","Toolbar name") );
+    editActionsToolbar->setObjectName ("basic edit actions TB");
+    editActionsToolbar->addAction (actionAddMapCenter);
+    editActionsToolbar->addAction (actionAddBranch);
+    editActionsToolbar->addAction (actionMoveUp);
+    editActionsToolbar->addAction (actionMoveDown);
+    editActionsToolbar->addAction (actionSortChildren);
+    editActionsToolbar->addAction (actionSortBackChildren);
+    editActionsToolbar->addAction (actionToggleScroll);
+    editActionsToolbar->addAction (actionToggleHideExport);
+    editActionsToolbar->addAction (actionToggleTask);
+    //editActionsToolbar->addAction (actionExpandAll);
+    //editActionsToolbar->addAction (actionExpandOneLevel);
+    //editActionsToolbar->addAction (actionCollapseOneLevel);
+    //editActionsToolbar->addAction (actionCollapseUnselected);
+
+    // Selections
+    selectionToolbar = addToolBar( tr ("Selection toolbar","Toolbar name") );
+    selectionToolbar->setObjectName ("toolbar for selecting items");
+    selectionToolbar->addAction (actionToggleTarget);
+    selectionToolbar->addAction (actionSelectPrevious);
+    selectionToolbar->addAction (actionSelectNext);
+    selectionToolbar->addAction (actionFind);
+
+    // URLs and vymLinks
+    referencesToolbar=addToolBar( tr ("URLs and vymLinks toolbar","Toolbar for URLs and vymlinks"));
+    referencesToolbar->setObjectName ("URLs and vymlinks toolbar");
+    //referencesToolbar->addAction (actionOpenURL); //FIXME-4 removed 2015-06-22
+    referencesToolbar->addAction (actionURLNew);
+    //referencesToolbar->addAction (actionOpenVymLink)//FIXME-4 removed 2015-06-22;
+    referencesToolbar->addAction (actionEditVymLink);
+
+    // Format and colors
+    colorsToolbar = addToolBar( tr("Colors toolbar","Colors toolbar name"));
+    colorsToolbar->setObjectName ("colorsTB");
+    colorsToolbar->addAction(actionFormatColor);
+    colorsToolbar->addAction(actionFormatPickColor);
+    colorsToolbar->addAction(actionFormatColorBranch);
+    colorsToolbar->addAction(actionFormatColorSubtree);
+
+    // Zoom
+    zoomToolbar = addToolBar( tr("Zoom toolbar","View Toolbar name") );
+    zoomToolbar->setObjectName ("viewTB");
+    zoomToolbar->addAction(actionZoomIn);
+    zoomToolbar->addAction(actionZoomOut);
+    zoomToolbar->addAction(actionZoomReset);
+    zoomToolbar->addAction(actionCenterOn);
+    zoomToolbar->addAction(actionRotateCounterClockwise);
+    zoomToolbar->addAction(actionRotateClockwise);
+
+    // Editors
+    editorsToolbar = addToolBar( tr("Editors toolbar","Editor Toolbar name") );
+    editorsToolbar->setObjectName ("editorsTB");
+    editorsToolbar->addAction (actionViewToggleNoteEditor);
+    editorsToolbar->addAction (actionViewToggleHeadingEditor);
+    editorsToolbar->addAction (actionViewToggleTreeEditor);
+    editorsToolbar->addAction (actionViewToggleTaskEditor);
+    editorsToolbar->addAction (actionViewToggleSlideEditor);
+    editorsToolbar->addAction (actionViewToggleScriptEditor);
+    editorsToolbar->addAction (actionViewToggleHistoryWindow);
+
+
+    // Modifier modes
+    modModesToolbar = addToolBar( tr ("Modifier modes toolbar","Modifier Toolbar name") );
+    modModesToolbar->setObjectName ("modesTB");
+    modModesToolbar->addAction(actionModModeColor);
+    modModesToolbar->addAction(actionModModeCopy);
+    modModesToolbar->addAction(actionModModeXLink);
+    
+    // Add all toolbars to View menu
+    toolbarsMenu->addAction (fileToolbar->toggleViewAction() );
+    toolbarsMenu->addAction (clipboardToolbar->toggleViewAction() );
+    toolbarsMenu->addAction (editActionsToolbar->toggleViewAction() );
+    toolbarsMenu->addAction (selectionToolbar->toggleViewAction() );
+    toolbarsMenu->addAction (colorsToolbar->toggleViewAction() );
+    toolbarsMenu->addAction (zoomToolbar->toggleViewAction() );
+    toolbarsMenu->addAction (modModesToolbar->toggleViewAction() );
+    toolbarsMenu->addAction (referencesToolbar->toggleViewAction() );
+    toolbarsMenu->addAction (editorsToolbar->toggleViewAction() );
+
+    // Default visibility to not overload new users
+    fileToolbar->show();
+    clipboardToolbar->show();
+    editActionsToolbar->show();
+    selectionToolbar->hide();
+    colorsToolbar->show();
+    zoomToolbar->show();
+    modModesToolbar->hide();
+    referencesToolbar->hide();
+    editorsToolbar->hide();
+
+}
+
+VymView* Main::currentView() const
+{
+    if ( tabWidget->currentWidget() )
+    {
+       int i=tabWidget->currentIndex();
+       if (i>=0 && i< vymViews.count() ) return vymViews.at(i);
+    }
+    return NULL;
+}
+
+MapEditor* Main::currentMapEditor() const
+{
+    if ( tabWidget->currentWidget())
+       return vymViews.at(tabWidget->currentIndex())->getMapEditor();
+    return NULL;    
+}
+
+uint  Main::currentModelID() const
+{
+    VymModel *m=currentModel();
+    if (m)
+       return m->getModelID();
+    else
+       return 0;    
+}
+
+VymModel* Main::currentModel() const
+{
+    VymView *vv=currentView();
+    if (vv) 
+       return vv->getModel();
+    else
+       return NULL;    
+}
+
+VymModel* Main::getModel(uint id) const        
+{
+    if (id <=0) return NULL;
+
+    // Used in BugAgent
+    for (int i=0; i<vymViews.count();i++)
+       if (vymViews.at(i)->getModel()->getModelID()==id)
+           return vymViews.at(i)->getModel();
+    return NULL;    
+}
+
+void Main::gotoModel (VymModel *m)
+{
+    for (int i=0; i<vymViews.count();i++)
+       if (vymViews.at(i)->getModel()==m)
+       {
+           tabWidget->setCurrentIndex (i);
+           return;
+       }
+}
+
+int Main::modelCount()
+{
+    return vymViews.count();
+}
+
+void Main::updateTabName( VymModel *vm)
+{
+    for( int i = 0; i < vymViews.count(); i++)
+    {
+        if (vymViews.at(i)->getModel() == vm )
+        {
+            if ( vm->isReadOnly() )
+                tabWidget->setTabText( i, vm->getFileName() + " " + tr("(readonly)") );
+            else
+                tabWidget->setTabText( i, vm->getFileName() );
+            break;
+        }
+    }
+}
+
+void Main::editorChanged()
+{
+    VymModel *vm=currentModel();
+    if (vm) 
+    {  
+       updateNoteEditor (vm->getSelectedIndex() );
+       updateQueries (vm);
+
+       taskEditor->setMapName (vm->getMapName() );
+    }  
+
+    // Update actions to in menus and toolbars according to editor
+    updateActions();
+}
+
+void Main::fileNew()
+{
+    VymModel *vm=new VymModel;
+
+    /////////////////////////////////////
+//  new ModelTest(vm, this);   
+    /////////////////////////////////////
+
+    VymView *vv=new VymView (vm);
+    vymViews.append (vv);
+
+    tabWidget->addTab (vv,tr("unnamed","MainWindow: name for new and empty file"));
+    tabWidget->setCurrentIndex (vymViews.count() );
+    vv->initFocus();
+
+    // Create MapCenter for empty map
+    vm->addMapCenter(false);
+    vm->makeDefault();
+
+    // For the very first map we do not have flagrows yet...
+    vm->select("mc:");
+
+    // Switch to new tab
+    tabWidget->setCurrentIndex (tabWidget->count() -1);
+}
+
+void Main::fileNewCopy() 
+{
+    QString fn="unnamed";
+    VymModel *srcModel=currentModel();
+    if (srcModel)
+    {
+       srcModel->copy();
+       fileNew();
+       VymModel *dstModel=vymViews.last()->getModel();
+       if (dstModel->select("mc:0"))
+           dstModel->loadMap (clipboardDir+"/"+clipboardFile,ImportReplace);
+       else
+           qWarning ()<<"Main::fileNewCopy couldn't select mapcenter";
+    }
+}
+
+File::ErrorCode Main::fileLoad(QString fn, const LoadMode &lmode, const FileType &ftype) 
+{
+    File::ErrorCode err=File::Success;
+
+    // fn is usually the archive, mapfile the file after uncompressing
+    QString mapfile;
+
+    // Make fn absolute (needed for unzip)
+    fn=QDir (fn).absolutePath();
+
+    VymModel *vm;
+
+    if (lmode==NewMap)
+    {
+       // Check, if map is already loaded
+       int i=0;
+       while (i<=tabWidget->count() -1)
+       {
+           if (vymViews.at(i)->getModel()->getFilePath() == fn)
+           {
+               // Already there, ask for confirmation
+               QMessageBox mb( vymName,
+                   tr("The map %1\nis already opened."
+                   "Opening the same map in multiple editors may lead \n"
+                   "to confusion when finishing working with vym."
+                   "Do you want to").arg(fn),
+                   QMessageBox::Warning,
+                   QMessageBox::Yes | QMessageBox::Default,
+                   QMessageBox::Cancel | QMessageBox::Escape,
+                   QMessageBox::NoButton);
+               mb.setButtonText( QMessageBox::Yes, tr("Open anyway") );
+               mb.setButtonText( QMessageBox::Cancel, tr("Cancel"));
+               switch( mb.exec() ) 
+               {
+                   case QMessageBox::Yes:
+                       // end loop and load anyway
+                       i=tabWidget->count();
+                       break;
+                   case QMessageBox::Cancel:
+                       // do nothing
+                       return File::Aborted;
+                       break;
+               }
+           }
+           i++;
+       }
+    }
+
+
+    // Try to load map
+    if ( !fn.isEmpty() )
+    {
+       vm = currentModel();
+       // Check first, if mapeditor exists
+       // If it is not default AND we want a new map, 
+       // create a new mapeditor in a new tab
+       if ( lmode==NewMap && (!vm || !vm->isDefault() )  )
+       {
+           vm=new VymModel;
+           VymView *vv=new VymView (vm);
+           vymViews.append (vv);
+
+           tabWidget->addTab (vv,fn);
+           vv->initFocus();
+       }
+       
+       // Check, if file exists (important for creating new files
+       // from command line
+       if (!QFile(fn).exists() )
+       {
+           QMessageBox mb( vymName,
+               tr("This map does not exist:\n  %1\nDo you want to create a new one?").arg(fn),
+               QMessageBox::Question,
+               QMessageBox::Yes ,
+               QMessageBox::Cancel | QMessageBox::Default,
+               QMessageBox::NoButton );
+
+           mb.setButtonText( QMessageBox::Yes, tr("Create"));
+           mb.setButtonText( QMessageBox::No, tr("Cancel"));
+
+            VymModel *vm = currentMapEditor()->getModel();
+           switch( mb.exec() ) 
+           {
+               case QMessageBox::Yes:
+                   // Create new map
+                    vm->setFilePath(fn);
+                    updateTabName( vm );
+                   statusBar()->showMessage( "Created " + fn , statusbarTime );
+                   return File::Success;
+                       
+               case QMessageBox::Cancel:
+                   // don't create new map
+                   statusBar()->showMessage( "Loading " + fn + " failed!", statusbarTime );
+                   int cur=tabWidget->currentIndex();
+                   tabWidget->setCurrentIndex (tabWidget->count()-1);
+                   fileCloseMap();
+                   tabWidget->setCurrentIndex (cur);
+                   return File::Aborted;
+           }
+       }   
+
+       if (err!=File::Aborted)
+       {
+           // Save existing filename in case  we import
+           QString fn_org = vm->getFilePath();
+
+           // Finally load map into mapEditor
+           progressDialog.setLabelText (tr("Loading: %1","Progress dialog while loading maps").arg(fn));
+           vm->setFilePath (fn);
+           vm->saveStateBeforeLoad (lmode,fn);
+           err = vm->loadMap(fn,lmode,ftype);
+
+           // Restore old (maybe empty) filepath, if this is an import
+           if (lmode != NewMap)
+               vm->setFilePath (fn_org);
+       }   
+
+       // Finally check for errors and go home
+       if (err == File::Aborted) 
+       {
+           if (lmode == NewMap) fileCloseMap();
+           statusBar()->showMessage( "Could not load " + fn, statusbarTime );
+       } else 
+       {
+           if (lmode == NewMap)
+            {
+                vm->setFilePath (fn);
+                updateTabName( vm );
+                actionFilePrint->setEnabled (true);
+            }  
+           editorChanged();
+           vm->emitShowSelection();
+            addRecentMap( fn );
+           statusBar()->showMessage( "Loaded " + fn, statusbarTime );
+       }   
+    }
+    return err;
+}
+
+
+void Main::fileLoad(const LoadMode &lmode)
+{
+    QString caption;
+    switch (lmode)
+    {
+       case NewMap:
+           caption=vymName+ " - " +tr("Load vym map");
+           break;
+       case ImportAdd:
+           caption=vymName+ " - " +tr("Import: Add vym map to selection");
+           break;
+       case ImportReplace:
+           caption=vymName+ " - " +tr("Import: Replace selection with vym map");
+           break;
+    }
+
+    QString filter;
+    filter+="VYM map " + tr("or","File Dialog") +" Freemind map" + " (*.xml *.vym *.vyp *.mm);;";  
+    filter+="VYM map (*.vym *.vyp);;";
+    filter+="VYM Backups (*.vym~);;";
+    filter+="Freemind map (*.mm);;";
+    filter+="XML (*.xml);;";
+    filter+="All (* *.*)";
+    QStringList fns=QFileDialog::getOpenFileNames( 
+           this,
+           caption,
+           lastMapDir.path(), 
+           filter);
+
+    if (!fns.isEmpty() )
+    {
+        initProgressCounter (fns.count() );
+       lastMapDir.setPath(fns.first().left(fns.first().lastIndexOf ("/")) );
+       foreach (QString fn, fns)
+           fileLoad(fn, lmode, getMapType (fn) );                 
+    }
+    removeProgressCounter();
+
+    fileSaveSession();
+}
+
+void Main::fileLoad()
+{
+    fileLoad (NewMap);
+    tabWidget->setCurrentIndex (tabWidget->count()-1);
+}
+
+void Main::fileSaveSession()
+{
+    QStringList flist;
+    for (int i=0;i<vymViews.count(); i++)
+       flist.append (vymViews.at(i)->getModel()->getFilePath() );
+    settings.setValue("/mainwindow/sessionFileList", flist);
+}
+
+void Main::fileRestoreSession()
+{
+    QStringList flist= settings.value("/mainwindow/sessionFileList").toStringList();
+    QStringList::Iterator it=flist.begin();
+
+    initProgressCounter (flist.count());
+    while (it !=flist.end() )
+    {
+        FileType type=getMapType (*it);
+        fileLoad (*it, NewMap,type);
+        *it++;
+    }
+    removeProgressCounter();
+}
+
+void Main::fileLoadRecent()
+{
+    QAction *action = qobject_cast<QAction *>(sender());
+    if (action)
+    {
+        initProgressCounter ();
+        QString fn=action->data().toString();
+        FileType type=getMapType (fn);
+        fileLoad (fn, NewMap,type);
+        removeProgressCounter();
+        tabWidget->setCurrentIndex (tabWidget->count()-1);
+    }
+}
+
+void Main::addRecentMap (const QString &fileName)
+{
+
+    QStringList files = settings.value("/mainwindow/recentFileList").toStringList();
+    files.removeAll(fileName);
+    files.prepend(fileName);
+    while (files.size() > MaxRecentFiles)
+        files.removeLast();
+
+    settings.setValue("/mainwindow/recentFileList", files);
+
+    setupRecentMapsMenu();
+}
+
+void Main::fileSave(VymModel *m, const SaveMode &savemode)
+{
+    if (!m) return;
+
+    if (m->isReadOnly() ) return;
+
+    if ( m->getFilePath().isEmpty() )
+    {
+        // We have  no filepath yet,
+        // call fileSaveAs() now, this will call fileSave()
+        // again.
+        // First switch to editor
+        fileSaveAs(savemode);
+        return; // avoid saving twice...
+    }
+
+    if (m->save (savemode)==File::Success)
+    {
+        statusBar()->showMessage(
+                    tr("Saved  %1").arg(m->getFilePath()),
+                    statusbarTime );
+    } else
+        statusBar()->showMessage(
+                    tr("Couldn't save ").arg(m->getFilePath()),
+                    statusbarTime );
+}
+
+void Main::fileSave()
+{
+    fileSave (currentModel(), CompleteMap);
+}
+
+void Main::fileSave(VymModel *m)
+{
+    fileSave (m,CompleteMap);
+}
+
+void Main::fileSaveAs(const SaveMode& savemode)
+{
+    if (currentMapEditor())
+    {
+        QString filter;
+        if (savemode == CompleteMap)
+            filter = "VYM map (*.vym)";
+        else
+            filter = "VYM part of map (*vyp)";
+        filter += ";;All (* *.*)";
+
+        QString fn = QFileDialog::getSaveFileName (
+                    this,
+                    tr("Save map as"),
+                    lastMapDir.path(),
+                    filter,
+                    NULL,
+                    QFileDialog::DontConfirmOverwrite);
+        if (!fn.isEmpty() )
+        {
+            // Check for existing file
+            if (QFile (fn).exists())
+            {
+                QMessageBox mb( vymName,
+                                tr("The file %1\nexists already. Do you want to").arg(fn),
+                                QMessageBox::Warning,
+                                QMessageBox::Yes | QMessageBox::Default,
+                                QMessageBox::Cancel | QMessageBox::Escape,
+                                QMessageBox::NoButton);
+                mb.setButtonText( QMessageBox::Yes, tr("Overwrite") );
+                mb.setButtonText( QMessageBox::Cancel, tr("Cancel"));
+                switch( mb.exec() )
+                {
+                case QMessageBox::Yes:
+                    // save
+                    break;
+                case QMessageBox::Cancel:
+                    // do nothing
+                    return;
+                    break;
+                }
+                lastMapDir.setPath(fn.left(fn.lastIndexOf ("/")) );
+            } else
+            {
+                // New file, add extension to filename, if missing
+                // This is always .vym or .vyp, depending on savemode
+                if (savemode == CompleteMap)
+                {
+                    if (!fn.contains (".vym") && !fn.contains (".xml"))
+                        fn += ".vym";
+                } else
+                {
+                    if (!fn.contains (".vyp") && !fn.contains (".xml"))
+                        fn += ".vyp";
+                }
+            }
+
+            // Save now
+            VymModel *m = currentModel();
+            QString fn_org = m->getFilePath(); // Restore fn later, if savemode != CompleteMap
+            if (savemode == CompleteMap )
+            {
+                // Check for existing lockfile
+                QFile lockFile( fn + ".lock" );
+                if (lockFile.exists() )
+                {
+                    QMessageBox::critical( 0, tr( "Critical Error" ), tr("Couldn't save %1,\nbecause of existing lockfile:\n\n%2").arg(fn).arg( lockFile.fileName()  ));
+                    return;
+                }
+
+                if ( !m->renameMap( fn ) )
+                {
+                    QMessageBox::critical( 0, tr( "Critical Error" ), tr("Couldn't save %1").arg( fn ));
+                    return;
+                }
+            }
+            fileSave(m, savemode);
+
+            // Set name of tab
+            if (savemode == CompleteMap)
+                updateTabName( m );
+            else
+            {   // Renaming map to original name, because we only saved the selected part of it
+                m->setFilePath (fn_org);
+            }
+            return;
+
+        }
+    }
+}
+
+void Main::fileSaveAs()
+{
+    fileSaveAs (CompleteMap);
+}
+
+void Main::fileImportFirefoxBookmarks()
+{
+    QFileDialog fd;
+    fd.setDirectory (vymBaseDir.homePath()+"/.mozilla/firefox");
+    fd.setFileMode (QFileDialog::ExistingFiles);
+    QStringList filters;
+    filters<<"Firefox "+tr("Bookmarks")+" (*.html)";
+    fd.setNameFilters(filters);
+    fd.setAcceptMode (QFileDialog::AcceptOpen);
+    fd.setWindowTitle(tr("Import")+" "+"Firefox "+tr("Bookmarks"));
+
+    if ( fd.exec() == QDialog::Accepted )
+    {
+       ImportFirefoxBookmarks im;
+       QStringList flist = fd.selectedFiles();
+       QStringList::Iterator it = flist.begin();
+       while( it != flist.end() ) 
+       {
+           im.setFile (*it);
+           if (im.transform() && 
+               File::Aborted!=fileLoad (im.getTransformedFile(),NewMap,FreemindMap) && 
+               currentMapEditor() )
+               currentMapEditor()->getModel()->setFilePath ("");
+           ++it;
+       }
+    }
+}
+
+void Main::fileImportFreemind()
+{
+    QStringList filters;
+    filters <<"Freemind map (*.mm)"<<"All files (*)";
+    QFileDialog fd;
+    fd.setDirectory (lastMapDir);
+    fd.setFileMode (QFileDialog::ExistingFiles);
+    fd.setNameFilters (filters);
+    fd.setWindowTitle(vymName+ " - " +tr("Load Freemind map"));
+    fd.setAcceptMode (QFileDialog::AcceptOpen);
+
+    QString fn;
+    if ( fd.exec() == QDialog::Accepted )
+    {
+       lastMapDir=fd.directory().path();
+       QStringList flist = fd.selectedFiles();
+       QStringList::Iterator it = flist.begin();
+       while( it != flist.end() ) 
+       {
+           fn = *it;
+           if ( fileLoad (fn,NewMap, FreemindMap)  )
+           {   
+               currentMapEditor()->getModel()->setFilePath ("");
+           }   
+           ++it;
+       }
+    }
+}
+
+
+void Main::fileImportMM()
+{
+    ImportMM im;
+
+    QFileDialog fd;
+    fd.setDirectory (lastMapDir);
+    fd.setFileMode (QFileDialog::ExistingFiles);
+    QStringList filters;
+    filters<<"Mind Manager (*.mmap)";
+    fd.setNameFilters (filters);
+    fd.setAcceptMode (QFileDialog::AcceptOpen);
+    fd.setWindowTitle(tr("Import")+" "+"Mind Manager");
+
+    if ( fd.exec() == QDialog::Accepted )
+    {
+       lastMapDir=fd.directory();
+       QStringList flist = fd.selectedFiles();
+       QStringList::Iterator it = flist.begin();
+       while( it != flist.end() ) 
+       {
+           im.setFile (*it);
+           if (im.transform() && 
+               File::Success==fileLoad (im.getTransformedFile(),NewMap,VymMap) && 
+               currentMapEditor() )
+               currentMapEditor()->getModel()->setFilePath ("");
+           ++it;
+       }
+    }
+}
+
+void Main::fileImportDir()
+{
+    VymModel *m=currentModel();
+    if (m) m->importDir();
+}
+
+void Main::fileExportXML()
+{
+    VymModel *m=currentModel();
+    if (m) m->exportXML();
+}
+
+void Main::fileExportHTML() 
+{
+    VymModel *m=currentModel();
+    if (m) m->exportHTML();
+}
+
+void Main::fileExportImage()   
+{
+    VymModel *m=currentModel();
+    if (m) m->exportImage();
+}
+
+void Main::fileExportPDF()     
+{
+    VymModel *m=currentModel();
+    if (m) m->exportPDF();
+}
+
+void Main::fileExportSVG()     
+{
+    VymModel *m=currentModel();
+    if (m) m->exportSVG();
+}
+
+void Main::fileExportAO()
+{
+    VymModel *m=currentModel();
+    if (m) m->exportAO();
+}
+
+void Main::fileExportASCII()
+{
+    VymModel *m=currentModel();
+    if (m) m->exportASCII();
+}
+
+void Main::fileExportASCIITasks()
+{
+    VymModel *m=currentModel();
+    if (m) m->exportASCII(true);
+}
+
+void Main::fileExportCSV()  //FIXME-3 not scriptable yet
+{
+    VymModel *m=currentModel();
+    if (m)
+    {
+       ExportCSV ex;
+       ex.setModel (m);
+       ex.addFilter ("CSV (*.csv)");
+       ex.setDirPath(lastImageDir.absolutePath());
+       ex.setWindowTitle(vymName+ " -" + tr("Export as CSV") + " " + tr("(still experimental)"));
+       if (ex.execDialog() ) 
+       {
+           m->setExportMode(true);
+           ex.doExport();
+           m->setExportMode(false);
+       }
+    }
+}
+
+void Main::fileExportLaTeX()
+{
+    VymModel *m=currentModel();
+    if (m) m->exportLaTeX();
+}
+
+void Main::fileExportOrgMode() 
+{
+    VymModel *m=currentModel();
+    if (m) m->exportOrgMode();
+}
+
+void Main::fileExportTaskjuggler()  //FIXME-3 not scriptable yet
+{
+    ExportTaskjuggler ex;
+    VymModel *m=currentModel();
+    if (m)
+    {
+        ex.setModel (m);
+        ex.setWindowTitle ( vymName + " - " + tr("Export to") + " Taskjuggler" + tr("(still experimental)"));
+        ex.setDirPath (lastImageDir.absolutePath());
+        ex.addFilter ("Taskjuggler (*.tjp)");
+
+        if (ex.execDialog() )
+        {
+            m->setExportMode(true);
+            ex.doExport();
+            m->setExportMode(false);
+        }
+    }
+}
+
+void Main::fileExportImpress() 
+{
+    ExportOOFileDialog fd;
+    // TODO add preview in dialog
+    fd.setWindowTitle(vymName+" - "+tr("Export to")+" LibreOffice");
+    fd.setDirectory (QDir().current());
+    fd.setAcceptMode (QFileDialog::AcceptSave);
+    fd.setFileMode (QFileDialog::AnyFile);
+    if (fd.foundConfig())
+    {
+        if ( fd.exec() == QDialog::Accepted )
+        {
+            if (!fd.selectedFiles().isEmpty())
+            {
+                QString fn=fd.selectedFiles().first();
+                if (!fn.contains (".odp")) fn +=".odp";
+
+                //lastImageDir=fn.left(fn.findRev ("/"));
+                VymModel *m=currentModel();
+                if (m) m->exportImpress (fn,fd.selectedConfig());
+            }
+        }
+    } else
+    {
+        QMessageBox::warning(0,
+                             tr("Warning"),
+                             tr("Couldn't find configuration for export to LibreOffice\n"));
+    }
+}
+
+void Main::fileExportLast()
+{
+    VymModel *m=currentModel();
+    if (m) m->exportLast();
+}
+
+bool Main::fileCloseMap(int i)
+{
+    VymModel *m;
+    VymView *vv;
+    if ( i<0) i  = tabWidget->currentIndex();
+
+    vv = vymViews.at(i);
+    m  = vv->getModel();
+
+    if (m)
+    {
+        if (m->hasChanged())
+        {
+            QMessageBox mb( vymName,
+                            tr("The map %1 has been modified but not saved yet. Do you want to").arg(m->getFileName()),
+                            QMessageBox::Warning,
+                            QMessageBox::Yes | QMessageBox::Default,
+                            QMessageBox::No,
+                            QMessageBox::Cancel | QMessageBox::Escape );
+            mb.setButtonText( QMessageBox::Yes, tr("Save modified map before closing it") );
+            mb.setButtonText( QMessageBox::No, tr("Discard changes"));
+            mb.setModal (true);
+            mb.show();
+            switch( mb.exec() )
+            {
+            case QMessageBox::Yes:
+                // save and close
+                fileSave(m, CompleteMap);
+                break;
+            case QMessageBox::No:
+                // close  without saving
+                break;
+            case QMessageBox::Cancel:
+                // do nothing
+                return true;
+            }
+        }
+
+        vymViews.removeAt (i);
+        tabWidget->removeTab (i);
+
+        // Destroy stuff, order is important
+        delete (m->getMapEditor());
+        delete(vv);
+        delete (m);
+
+        updateActions();
+        return false;
+    }
+    return true; // Better don't exit vym if there is no currentModel()...
+}
+
+void Main::filePrint()
+{
+    if (currentMapEditor())
+       currentMapEditor()->print();
+}
+
+bool Main::fileExitVYM()    
+{
+    fileSaveSession();
+
+    // Check if one or more editors have changed
+    while (vymViews.count()>0)
+    {
+        tabWidget->setCurrentIndex(0);
+        if (fileCloseMap()) return true;
+    }
+    qApp->quit();
+    return false;
+}
+
+void Main::editUndo()
+{
+    VymModel *m=currentModel();
+    if (m) m->undo();
+}
+
+void Main::editRedo()     
+{
+    VymModel *m=currentModel();
+    if (m) m->redo();
+}
+
+void Main::gotoHistoryStep (int i)     
+{
+    VymModel *m=currentModel();
+    if (m) m->gotoHistoryStep(i);
+}
+
+void Main::editCopy()
+{
+    VymModel *m=currentModel();
+    if (m) m->copy();
+}
+
+void Main::editPaste()
+{
+    VymModel *m=currentModel();
+    if (m) m->paste();
+}
+
+void Main::editCut()
+{
+    VymModel *m=currentModel();
+    if (m) m->cut();
+}
+
+bool Main::openURL(const QString &url)
+{
+    if (url.isEmpty()) return false;
+
+    QString browser=settings.value("/system/readerURL" ).toString();
+    QStringList args;
+    args<<url;
+    if (!QProcess::startDetached(browser,args,QDir::currentPath(),browserPID))
+    {
+        // try to set path to browser
+        QMessageBox::warning(0, 
+            tr("Warning"),
+            tr("Couldn't find a viewer to open %1.\n").arg(url)+
+            tr("Please use Settings->")+tr("Set application to open an URL"));
+        settingsURL() ; 
+        return false;
+    }   
+    return true;
+}
+
+void Main::openTabs(QStringList urls)
+{
+    if (urls.isEmpty()) return;
+       
+    QStringList args;
+    QString browser=settings.value("/system/readerURL" ).toString();
+#if defined(VYM_DBUS)
+    if ( browser.contains("konqueror") && 
+            (browserPID==0 || !QDBusConnection::sessionBus().interface()->registeredServiceNames().value().contains (QString("org.kde.konqueror-%1").arg(*browserPID)))
+       )        
+    {
+        // Start a new browser, if there is not one running already or
+        // if a previously started konqueror is gone.
+        if (debug) qDebug() <<"Main::openTabs no konqueror with PID "<<*browserPID<<" found";
+        openURL(urls.takeFirst());
+        if (debug) qDebug() << "Main::openTabs Started konqueror, new PID is "<<*browserPID;
+    }
+
+    if (browser.contains("konqueror"))
+    {
+        foreach (QString u, urls) 
+        {
+            // Open new browser
+            // Try to open new tab in existing konqueror started previously by vym
+            args.clear();
+
+            args<< QString("org.kde.konqueror-%1").arg(*browserPID)<<
+                "/konqueror/MainWindow_1"<<
+                "newTab" << 
+                u <<
+                "false";
+            if (!QProcess::startDetached ("qdbus",args))
+            {
+                QMessageBox::warning(0, 
+                    tr("Warning"),
+                    tr("Couldn't start %1 to open a new tab in %2.").arg("qdbus").arg("konqueror"));
+                return;
+            }
+        }
+        return;        
+    } 
+#endif
+    //
+    // Other browser, e.g. xdg-open
+    // Just open all urls and leave it to the system to cope with it
+    foreach (QString u, urls) 
+    {
+        openURL(u);
+
+        // Now give the browser some time before opening the next tab
+#if defined(Q_OS_WIN32)
+        // There's no sleep in VCEE, replace it with Qt's QThread::wait().
+        this->thread()->wait(1000);
+#else
+        sleep (1);     
+#endif
+    }
+}
+
+
+void Main::editOpenURL()
+{
+    // Open new browser
+    VymModel *m=currentModel();
+    if (m)
+    {  
+       QString url=m->getURL();
+       if (url=="") return;
+        openURL(url);
+    }  
+}
+void Main::editOpenURLTab()
+{
+    VymModel *m=currentModel();
+    if (m)
+    {  
+       QStringList urls;
+       urls.append(m->getURL());
+       openTabs (urls);
+    }  
+}
+
+void Main::editOpenMultipleVisURLTabs(bool ignoreScrolled)
+{
+    VymModel *m=currentModel();
+    if (m)
+    {  
+       QStringList urls;
+       urls=m->getURLs(ignoreScrolled);
+       openTabs (urls);
+    }  
+}
+
+void Main::editOpenMultipleURLTabs()
+{
+    editOpenMultipleVisURLTabs (false);
+}
+
+void Main::editNote2URLs()
+{
+    VymModel *m=currentModel();
+    if (m) m->note2URLs();
+}
+
+void Main::editURL()
+{
+    VymModel *m=currentModel();
+    if (m) 
+    {
+       QInputDialog *dia=new QInputDialog (this);
+       dia->setLabelText (tr("Enter URL:"));
+       dia->setWindowTitle (vymName);
+       dia->setInputMode (QInputDialog::TextInput);
+       TreeItem *selti=m->getSelectedItem();
+       if (selti) dia->setTextValue (selti->getURL());
+       dia->resize(width()*0.6,80);
+        centerDialog(dia);
+
+       if ( dia->exec() ) m->setURL (dia->textValue() );
+        delete dia;
+    }
+}
+
+void Main::editLocalURL()
+{
+    VymModel *m=currentModel();
+    if (m) 
+    {
+       TreeItem *selti=m->getSelectedItem();
+       if (selti)
+       {           
+           QString filter;
+           filter+="All files (*);;";
+           filter+=tr("HTML","Filedialog") + " (*.html,*.htm);;";
+           filter+=tr("Text","Filedialog") + " (*.txt);;";
+           filter+=tr("Spreadsheet","Filedialog") + " (*.odp,*.sxc);;";
+           filter+=tr("Textdocument","Filedialog") +" (*.odw,*.sxw);;";
+           filter+=tr("Images","Filedialog") + " (*.png *.bmp *.xbm *.jpg *.png *.xpm *.gif *.pnm)";
+
+           QString fn=QFileDialog::getOpenFileName( 
+               this,
+               vymName+" - " +tr("Set URL to a local file"), 
+               lastMapDir.path(), 
+               filter);
+
+           if (!fn.isEmpty() )
+           {
+               lastMapDir.setPath(fn.left(fn.lastIndexOf ("/")) );
+               if (!fn.startsWith("file://") ) 
+                   fn="file://" + fn;
+               m->setURL (fn);
+           }
+       }
+    }
+}
+
+void Main::editHeading2URL()
+{
+    VymModel *m=currentModel();
+    if (m) m->editHeading2URL();
+}
+
+void Main::editBugzilla2URL()
+{
+    VymModel *m=currentModel();
+    if (m) m->editBugzilla2URL();
+}
+
+void Main::getBugzillaData()
+{
+    VymModel *m=currentModel();
+    /*
+    QProgressDialog progress ("Doing stuff","cancl",0,10,this);
+    progress.setWindowModality(Qt::WindowModal);
+    //progress.setCancelButton (NULL);
+    progress.show();
+    progress.setMinimumDuration (0);
+    progress.setValue (1);
+    progress.setValue (5);
+    progress.update();
+    */
+    /*
+    QProgressBar *pb=new QProgressBar;
+    pb->setMinimum (0);
+    pb->setMaximum (0);
+    pb->show();
+    pb->repaint();
+    */
+    if (m) m->getBugzillaData(false);
+}
+
+void Main::getBugzillaDataSubtree()
+{
+    VymModel *m=currentModel();
+    if (m) m->getBugzillaData(true);
+}
+
+void Main::editFATE2URL()
+{
+    VymModel *m=currentModel();
+    if (m) m->editFATE2URL();
+}
+
+void Main::editHeading()
+{
+    MapEditor *me=currentMapEditor();
+    if (me) me->editHeading();
+}
+
+void Main::editHeadingFinished(VymModel *m)
+{
+    if (m)
+    {
+        if (!actionSettingsAutoSelectNewBranch->isChecked() &&
+                !prevSelection.isEmpty())
+            m->select(prevSelection);
+        prevSelection = "";
+    }
+}
+
+void Main::openVymLinks(const QStringList &vl, bool background)
+{
+    QStringList vlmin;
+    int index = -1;
+    for (int j = 0; j < vl.size(); ++j)
+    {
+       // compare path with already loaded maps
+        QString absPath = QFileInfo(vl.at(j)).absoluteFilePath();
+       index = -1;
+       for (int i = 0;i <= vymViews.count() -1; i++)
+       {
+           if ( absPath == vymViews.at(i)->getModel()->getFilePath() )
+           {
+               index = i;
+               break;
+           }
+       }   
+       if (index < 0) vlmin.append ( absPath );
+    }
+
+    
+    progressCounterTotal = vlmin.size();
+    for (int j = 0; j < vlmin.size(); j++)
+    {
+       // Load map
+       if (!QFile(vlmin.at(j)).exists() )
+           QMessageBox::critical( 0, tr( "Critical Error" ),
+              tr("Couldn't open map %1").arg(vlmin.at(j)));
+       else
+       {
+           fileLoad (vlmin.at(j), NewMap,VymMap);
+            if (!background) 
+                tabWidget->setCurrentIndex (tabWidget->count()-1);     
+       }
+    }      
+    // Go to tab containing the map
+    if (index >= 0)
+       tabWidget->setCurrentIndex (index);     
+    removeProgressCounter();
+}
+
+void Main::editOpenVymLink(bool background)
+{
+    VymModel *m = currentModel();
+    if (m)
+    {
+       QStringList vl;
+       vl.append(m->getVymLink()); 
+       openVymLinks (vl, background);
+    }
+}
+
+void Main::editOpenVymLinkBackground()
+{
+    editOpenVymLink (true);
+}
+
+void Main::editOpenMultipleVymLinks()
+{
+    QString currentVymLink;
+    VymModel *m = currentModel();
+    if (m)
+    {
+       QStringList vl = m->getVymLinks();
+       openVymLinks (vl, true);
+    }
+}
+
+void Main::editVymLink()
+{
+    VymModel *m = currentModel();
+    if (m)
+    {
+       BranchItem *bi = m->getSelectedBranch();
+       if (bi)
+       {           
+           QStringList filters;
+           filters <<"VYM map (*.vym)";
+           QFileDialog fd;
+           fd.setWindowTitle (vymName+" - " +tr("Link to another map"));
+           fd.setNameFilters (filters);
+           fd.setWindowTitle(vymName+" - " +tr("Link to another map"));
+           fd.setDirectory (lastMapDir);
+           fd.setAcceptMode (QFileDialog::AcceptOpen);
+           if (! bi->getVymLink().isEmpty() )
+               fd.selectFile( bi->getVymLink() );
+           fd.show();
+
+           QString fn;
+           if ( fd.exec() == QDialog::Accepted &&!fd.selectedFiles().isEmpty() )
+           {
+               QString fn = fd.selectedFiles().first();
+               lastMapDir = QDir (fd.directory().path());
+               m->setVymLink (fn);
+           }
+       }
+    }
+}
+
+void Main::editDeleteVymLink()
+{
+    VymModel *m=currentModel();
+    if (m) m->deleteVymLink(); 
+}
+
+void Main::editToggleHideExport()
+{
+    VymModel *m=currentModel();
+    if (m) m->toggleHideExport();   
+}
+
+void Main::editToggleTask()
+{
+    VymModel *m=currentModel();
+    if (m) m->toggleTask();   
+}
+
+void Main::editCycleTaskStatus()
+{
+    VymModel *m=currentModel();
+    if (m) m->cycleTaskStatus();   
+}
+
+void Main::editTaskSleepN()
+{
+    VymModel *m=currentModel();
+    if (m) 
+    {
+       int n=((QAction*)sender())->data().toInt();
+       Task *task=m->getSelectedTask();
+       if (task)
+       {
+           bool ok=true;
+            QString s;
+           if (n<0)
+            {
+                n=task->getDaysSleep();
+                if (n<=0) n=0;
+
+                LineEditDialog *dia=new LineEditDialog(this);
+                dia->setLabel(tr("Enter sleep time (number of days or date YYYY-MM-DD or DD.MM[.YYYY]","task sleep time dialog"));
+                dia->setText(QString("%1").arg(n));
+                centerDialog (dia);
+                if (dia->exec() == QDialog::Accepted)
+                {
+                    ok=true;
+                    s=dia->getText();
+                } else
+                    ok=false;
+
+                delete dia;
+            } else
+                s=QString("%1").arg(n);
+
+            if (ok && !m->setTaskSleep(s) )
+                QMessageBox::warning(0, 
+                    tr("Warning"),
+                    tr("Couldn't set sleep time to %1.\n").arg(s));
+       }
+    }
+}
+
+void Main::editAddTimestamp()
+{
+    VymModel *m=currentModel();
+    if (m) m->addTimestamp();  
+}
+
+void Main::editMapProperties()    
+{
+    VymModel *m = currentModel();
+    if (!m) return;
+
+    ExtraInfoDialog dia;
+    dia.setMapName  ( m->getFileName() );
+    dia.setMapTitle ( m->getTitle() );
+    dia.setAuthor   ( m->getAuthor() );
+    dia.setComment  ( m->getComment() );
+    dia.setReadOnly ( m->isReadOnly() );
+
+    // Calc some stats
+    QString stats;
+    stats += tr("%1 items on map\n","Info about map").arg (m->getScene()->items().size(),6);
+
+    uint b  = 0;
+    uint f  = 0;
+    uint n  = 0;
+    uint xl = 0;
+    BranchItem *cur  = NULL;
+    BranchItem *prev = NULL;
+    m->nextBranch(cur, prev);
+    while (cur) 
+    {
+        if (!cur->getNote().isEmpty() ) n++;
+        f += cur->imageCount();
+        b++;
+        xl += cur->xlinkCount();
+        m->nextBranch(cur,prev);
+    }
+
+    stats += QString ("%1 %2\n").arg (m->branchCount(),6).arg(tr("branches","Info about map") );
+    stats += QString ("%1 %2\n").arg (n,6).arg(tr("notes","Info about map") );
+    stats += QString ("%1 %2\n").arg (f,6).arg(tr("images","Info about map") );
+    stats += QString ("%1 %2\n").arg (m->taskCount(),6 ).arg(tr("tasks","Info about map") );
+    stats += QString ("%1 %2\n").arg (m->slideCount(),6 ).arg(tr("slides","Info about map") );
+    stats += QString ("%1 %2\n").arg (xl/2,6).arg(tr("xLinks","Info about map") );
+    dia.setStats (stats);
+
+    // Finally show dialog
+    if (dia.exec() == QDialog::Accepted)
+    {
+       m->setAuthor (dia.getAuthor() );
+       m->setComment (dia.getComment() );
+       m->setTitle (dia.getMapTitle() );
+    }
+}
+
+void Main::editMoveUp()
+{
+    MapEditor *me = currentMapEditor();
+    VymModel  *m  = currentModel();
+    if (me && m && me->getState() != MapEditor::EditingHeading) m->moveUp();
+}
+
+void Main::editMoveDown()
+{
+    MapEditor *me = currentMapEditor();
+    VymModel  *m  = currentModel();
+    if (me && m && me->getState() != MapEditor::EditingHeading) m->moveDown();
+}
+
+void Main::editDetach()
+{
+    VymModel *m=currentModel();
+    if (m) m->detach();
+}
+
+void Main::editSortChildren()
+{
+    VymModel *m=currentModel();
+    if (m) m->sortChildren(false);
+}
+
+void Main::editSortBackChildren()
+{
+    VymModel *m=currentModel();
+    if (m) m->sortChildren(true);
+}
+
+void Main::editToggleScroll()
+{
+    VymModel *m=currentModel();
+    if (m) m->toggleScroll();
+}
+
+void Main::editExpandAll()
+{
+    VymModel *m=currentModel();
+    if (m) m->emitExpandAll();
+}
+
+void Main::editExpandOneLevel()
+{
+    VymModel *m=currentModel();
+    if (m) m->emitExpandOneLevel();
+}
+
+void Main::editCollapseOneLevel()
+{
+    VymModel *m=currentModel();
+    if (m) m->emitCollapseOneLevel();
+}
+
+void Main::editCollapseUnselected()
+{
+    VymModel *m=currentModel();
+    if (m) m->emitCollapseUnselected();
+}
+
+void Main::editUnscrollChildren()
+{
+    VymModel *m=currentModel();
+    if (m) m->unscrollChildren();
+}
+
+void Main::editGrowSelectionSize()
+{
+    VymModel *m=currentModel();
+    if (m) m->growSelectionSize();
+}
+
+void Main::editShrinkSelectionSize()
+{
+    VymModel *m=currentModel();
+    if (m) m->shrinkSelectionSize();
+}
+
+void Main::editResetSelectionSize()
+{
+    VymModel *m=currentModel();
+    if (m) m->resetSelectionSize();
+}
+
+void Main::editAddAttribute()
+{
+    VymModel *m=currentModel();
+    if (m) 
+    {
+
+       m->addAttribute();
+    }
+}
+
+void Main::editAddMapCenter() 
+{
+    VymModel *m=currentModel();
+    if (m) 
+    {
+       m->select (m->addMapCenter ());
+       MapEditor *me=currentMapEditor();
+       if (me) 
+       {
+        m->setHeadingPlainText("");
+           me->editHeading();
+       }    
+    }
+}
+
+void Main::editNewBranch()
+{
+    VymModel *m=currentModel();
+    if (m)
+    {
+       BranchItem *bi=m->addNewBranch();
+       if (!bi) return;
+
+       if (actionSettingsAutoEditNewBranch->isChecked() 
+            && !actionSettingsAutoSelectNewBranch->isChecked() )
+           prevSelection=m->getSelectString();
+       else    
+           prevSelection=QString();
+
+       if (actionSettingsAutoSelectNewBranch->isChecked()  
+           || actionSettingsAutoEditNewBranch->isChecked()) 
+       {
+           m->select (bi);
+           if (actionSettingsAutoEditNewBranch->isChecked())
+               currentMapEditor()->editHeading();
+       }
+    }  
+}
+
+void Main::editNewBranchBefore()
+{
+    VymModel *m=currentModel();
+    if (m)
+    {
+       BranchItem *bi=m->addNewBranchBefore();
+
+       if (bi) 
+           m->select (bi);
+       else
+           return;
+
+       if (actionSettingsAutoEditNewBranch->isChecked())
+       {
+           if (!actionSettingsAutoSelectNewBranch->isChecked())
+               prevSelection=m->getSelectString(bi); 
+           currentMapEditor()->editHeading();
+       }
+    }  
+}
+
+void Main::editNewBranchAbove()        
+{
+    VymModel *m=currentModel();
+    if (m)
+    {
+       BranchItem *selbi=m->getSelectedBranch();
+       if (selbi)
+       {
+           BranchItem *bi=m->addNewBranch(selbi,-3);
+
+           if (bi) 
+               m->select (bi);
+           else
+               return;
+
+           if (actionSettingsAutoEditNewBranch->isChecked())
+           {
+               if (!actionSettingsAutoSelectNewBranch->isChecked())
+                   prevSelection=m->getSelectString (bi);      
+               currentMapEditor()->editHeading();
+           }
+       }
+    }  
+}
+
+void Main::editNewBranchBelow()
+{
+    VymModel *m=currentModel();
+    if (m)
+    {
+       BranchItem *selbi=m->getSelectedBranch();
+       if (selbi)
+       {
+           BranchItem *bi=m->addNewBranch(selbi,-1);
+
+           if (bi) 
+               m->select (bi);
+           else
+               return;
+
+           if (actionSettingsAutoEditNewBranch->isChecked())
+           {
+               if (!actionSettingsAutoSelectNewBranch->isChecked())
+                   prevSelection=m->getSelectString(bi);
+               currentMapEditor()->editHeading();
+           }
+       }
+    }  
+}
+
+void Main::editImportAdd()
+{
+    fileLoad (ImportAdd);
+}
+
+void Main::editImportReplace()
+{
+    fileLoad (ImportReplace);
+}
+
+void Main::editSaveBranch() 
+{
+    fileSaveAs (PartOfMap);
+}
+
+void Main::editDeleteKeepChildren()
+{
+    VymModel *m=currentModel();
+     if (m) m->deleteKeepChildren();
+}
+
+void Main::editDeleteChildren()
+{
+    VymModel *m=currentModel();
+    if (m) m->deleteChildren();
+}
+
+void Main::editDeleteSelection()
+{
+    VymModel *m=currentModel();
+    if (m) m->deleteSelection();
+}
+
+void Main::editLoadImage()
+{
+    VymModel *m=currentModel();
+    if (m) m->loadImage();
+}
+
+void Main::editSaveImage()
+{
+    VymModel *m=currentModel();
+    if (m) m->saveImage();
+}
+
+void Main::editEditXLink(QAction *a)
+{
+    VymModel *m=currentModel();
+    if (m)
+    {
+       BranchItem *selbi=m->getSelectedBranch();
+       if (selbi)
+       {
+           Link *l=selbi->getXLinkItemNum(branchXLinksContextMenuEdit->actions().indexOf(a))->getLink();
+           if (l && m->select (l->getBeginLinkItem() ) )
+               m->editXLink();
+       }    
+    }  
+}
+
+void Main::popupFollowXLink()
+{
+    branchXLinksContextMenuFollow->exec( QCursor::pos());
+}
+
+void Main::editFollowXLink(QAction *a)
+{
+    VymModel *m=currentModel();
+
+    if (m)
+       m->followXLink(branchXLinksContextMenuFollow->actions().indexOf(a));
+}
+
+void Main::editToggleTarget()  
+{
+    VymModel *m=currentModel();
+    if (m) m->toggleTarget();
+}
+
+bool Main::initTargetsMenu( VymModel *model, QMenu *menu)
+{
+    if (model)
+    {
+        ItemList targets = model->getTargets();
+
+        menu->clear();
+
+        QStringList targetNames;
+        QList <uint> targetIDs;
+
+        // Build QStringList with all names of targets
+        QMap<uint,QString>::const_iterator i;
+        i = targets.constBegin();
+        while (i != targets.constEnd()) 
+        {
+            targetNames.append( i.value() );
+            targetIDs.append( i.key() );
+            ++i;
+        }
+
+        // Sort list of names
+        targetNames.sort( Qt::CaseInsensitive );
+
+        // Build menu based on sorted names
+        while ( !targetNames.isEmpty() )
+        {
+            // Find target by value
+            i = targets.constBegin();
+            while (i != targets.constEnd()) 
+            {
+                if ( i.value() == targetNames.first() ) break;
+                ++i;
+            }
+
+            menu->addAction( targetNames.first() )->setData( i.key() );
+            targetNames.removeFirst();
+            targets.remove( i.key() );
+        }
+        return true;
+    }
+    return false;
+}
+
+void Main::editGoToTarget()  
+{
+    VymModel *model = currentModel();
+    if (initTargetsMenu( model, targetsContextMenu ) )
+    {
+       QAction *a = targetsContextMenu->exec (QCursor::pos());
+       if (a) model->select (model->findID (a->data().toUInt() ) );
+    }
+}
+
+void Main::editMoveToTarget()  
+{
+    VymModel *model = currentModel();
+    if (initTargetsMenu( model, targetsContextMenu ) )
+    {
+       QAction *a = targetsContextMenu->exec (QCursor::pos());
+       if (a) 
+       {
+           TreeItem *ti = model->findID ( a->data().toUInt() );
+           BranchItem *selbi = model->getSelectedBranch();
+           if (!selbi) return;
+
+           if (ti && ti->isBranchLikeType() && selbi)
+           {
+               BranchItem *pi = selbi->parentBranch();
+               // If branch below exists, select that one
+               // Makes it easier to quickly resort using the MoveTo function
+               BranchItem *below = pi->getBranchNum( selbi->num() + 1 );
+               LinkableMapObj *lmo = selbi->getLMO();
+               QPointF orgPos;
+               if (lmo) orgPos = lmo->getAbsPos();
+
+               if (model->relinkBranch ( selbi, (BranchItem*)ti, -1, true, orgPos) )
+               {
+                   if (below) 
+                       model->select (below);
+                   else    
+                       if (pi) model->select (pi);
+               }    
+           }       
+       }
+    }
+}
+
+void Main::editSelectPrevious()  
+{
+    VymModel *m=currentModel();
+    if (m) m->selectPrevious();
+}
+
+void Main::editSelectNext()  
+{
+    VymModel *m=currentModel();
+    if (m) m->selectNext();
+}
+
+void Main::editSelectNothing()  
+{
+    VymModel *m=currentModel();
+    if (m) m->unselectAll();
+}
+
+void Main::editOpenFindResultWidget()  
+{
+    if (!findResultWidget->parentWidget()->isVisible())
+    {
+//     findResultWidget->parentWidget()->show();
+       findResultWidget->popup();
+    } else 
+       findResultWidget->parentWidget()->hide();
+}
+
+#include "findwidget.h" // FIXME-4 Integrated FRW and FW
+void Main::editFindNext(QString s)  
+{
+    Qt::CaseSensitivity cs=Qt::CaseInsensitive;
+    VymModel *m=currentModel();
+    if (m) 
+    {
+       if (m->findAll (findResultWidget->getResultModel(),s,cs) )
+           findResultWidget->setStatus (FindWidget::Success);
+       else
+           findResultWidget->setStatus (FindWidget::Failed);
+    }
+}
+
+void Main::editFindDuplicateURLs() //FIXME-4 feature: use FindResultWidget for display
+{
+    VymModel *m=currentModel();
+    if (m) m->findDuplicateURLs();
+}
+
+void Main::updateQueries (VymModel* ) //FIXME-4 disabled for now to avoid selection in FRW
+{
+    return;
+/*
+    qDebug() << "MW::updateQueries m="<<m<<"   cM="<<currentModel();
+    if (m && currentModel()==m)
+    {
+       QString s=findResultWidget->getFindText();
+       if (!s.isEmpty() ) editFindNext (s);
+    }  
+*/
+}
+
+void Main::formatPickColor()
+{
+    VymModel *m=currentModel();
+    if (m)
+       setCurrentColor ( m->getCurrentHeadingColor() );
+}
+
+QColor Main::getCurrentColor()
+{
+    return currentColor;
+}
+
+void Main::setCurrentColor(QColor c)
+{
+    QPixmap pix( 16, 16 );
+    pix.fill( c );
+    actionFormatColor->setIcon( pix );
+    currentColor=c;
+}
+
+void Main::formatSelectColor()
+{
+    QColor col = QColorDialog::getColor((currentColor ), this );
+    if ( !col.isValid() ) return;
+    setCurrentColor( col );
+}
+
+void Main::formatColorBranch()
+{
+    VymModel *m=currentModel();
+    if (m) m->colorBranch(currentColor);
+}
+
+void Main::formatColorSubtree()
+{
+    VymModel *m=currentModel();
+    if (m) m->colorSubtree (currentColor);
+}
+
+void Main::formatLinkStyleLine()
+{
+    VymModel *m=currentModel();
+    if (m)
+    {
+       m->setMapLinkStyle("StyleLine");
+        actionFormatLinkStyleLine->setChecked(true);
+    }
+}
+
+void Main::formatLinkStyleParabel()
+{
+    VymModel *m=currentModel();
+    if (m)
+    {
+       m->setMapLinkStyle("StyleParabel");
+        actionFormatLinkStyleParabel->setChecked(true);
+    }
+}
+
+void Main::formatLinkStylePolyLine()
+{
+    VymModel *m=currentModel();
+    if (m)
+    {
+       m->setMapLinkStyle("StylePolyLine");
+        actionFormatLinkStylePolyLine->setChecked(true);
+    }
+}
+
+void Main::formatLinkStylePolyParabel()
+{
+    VymModel *m=currentModel();
+    if (m)
+    {
+       m->setMapLinkStyle("StylePolyParabel");
+        actionFormatLinkStylePolyParabel->setChecked(true);
+    }
+}
+
+void Main::formatSelectBackColor()
+{
+    VymModel *m=currentModel();
+    if (m) m->selectMapBackgroundColor();
+}
+
+void Main::formatSelectBackImage()
+{
+    VymModel *m=currentModel();
+    if (m)
+       m->selectMapBackgroundImage();
+}
+
+void Main::formatSelectLinkColor()
+{
+    VymModel *m=currentModel();
+    if (m)
+    {
+       QColor col = QColorDialog::getColor( m->getMapDefLinkColor(), this );
+       m->setMapDefLinkColor( col );
+    }
+}
+
+void Main::formatSelectSelectionColor()
+{
+    VymModel *m=currentModel();
+    if (m)
+    {
+       QColor col = QColorDialog::getColor( m->getMapDefLinkColor(), this );
+       m->setSelectionColor (col);
+    }
+
+}
+
+void Main::formatSelectFont()
+{
+    VymModel *m=currentModel();
+    if (m) 
+    {
+       bool ok;
+       QFont font = QFontDialog::getFont( &ok, m->getMapDefaultFont(), this);
+       if (ok) m->setMapDefaultFont (font);
+    }
+}
+
+void Main::formatToggleLinkColorHint()
+{
+    VymModel *m=currentModel();
+    if (m) m->toggleMapLinkColorHint();
+}
+
+void Main::formatHideLinkUnselected()  //FIXME-4 get rid of this with imagepropertydialog
+{
+    VymModel *m=currentModel();
+    if (m)
+       m->setHideLinkUnselected(actionFormatHideLinkUnselected->isChecked());
+}
+
+void Main::viewZoomReset()
+{
+    MapEditor *me=currentMapEditor();
+    if (me) me->setViewCenterTarget();
+}
+
+void Main::viewZoomIn()
+{
+    MapEditor *me=currentMapEditor();
+    if (me) me->setZoomFactorTarget (me->getZoomFactorTarget()*1.15);
+}
+
+void Main::viewZoomOut()
+{
+    MapEditor *me=currentMapEditor();
+    if (me) me->setZoomFactorTarget (me->getZoomFactorTarget()*0.85);
+}
+
+void Main::viewRotateCounterClockwise()
+{
+    MapEditor *me=currentMapEditor();
+    if (me) me->setAngleTarget (me->getAngleTarget()-10);
+}
+
+void Main::viewRotateClockwise()
+{
+    MapEditor *me=currentMapEditor();
+    if (me) me->setAngleTarget (me->getAngleTarget()+10);
+}
+
+void Main::viewCenter()
+{
+    VymModel *m=currentModel();
+    if (m) m->emitShowSelection();
+}
+
+void Main::networkStartServer()
+{
+    VymModel *m=currentModel();
+    if (m) m->newServer();
+}
+
+void Main::networkConnect()
+{
+    VymModel *m=currentModel();
+    if (m) m->connectToServer();
+}
+
+void Main::downloadFinished()   // only used for drop events in mapeditor and VM::downloadImage 
+{
+    QString s;
+    DownloadAgent *agent = static_cast<DownloadAgent*>(sender());
+    agent->isSuccess() ? s="Success" : s="Error  "; 
+
+    /*
+    qDebug()<<"Main::downloadFinished ";
+    qDebug()<<"  result" <<  s;
+    qDebug()<<"     msg" << agent->getResultMessage();
+    */
+
+    QString script = agent->getFinishedScript();
+    VymModel *model=getModel (agent->getFinishedScriptModelID());
+    if (!script.isEmpty() && model)
+    {
+        script.replace("$TMPFILE",agent->getDestination());
+        model->execute(script);
+    }
+}
+
+bool Main::settingsPDF()
+{
+    // Default browser is set in constructor
+    bool ok;
+    QString text = QInputDialog::getText(
+       this,
+       "VYM", tr("Set application to open PDF files")+":", QLineEdit::Normal,
+       settings.value("/system/readerPDF").toString(), &ok);
+    if (ok)
+       settings.setValue ("/system/readerPDF",text);
+    return ok;
+}
+
+
+bool Main::settingsURL()
+{
+    // Default browser is set in constructor
+    bool ok;
+    QString text = QInputDialog::getText(
+       this,
+       "VYM", tr("Set application to open an URL")+":", QLineEdit::Normal,
+       settings.value("/system/readerURL").toString()
+       , &ok);
+    if (ok)
+       settings.setValue ("/system/readerURL",text);
+    return ok;
+}
+
+void Main::settingsZipTool()
+{
+    // Default zip tool is 7z on windows, zip/unzip elsewhere
+    bool ok = false;
+
+#if defined(Q_OS_WIN32)
+    QString filter;
+    filter = "Windows executable (*.exe);;";
+
+    QString fn = QFileDialog::getOpenFileName( 
+        this,
+        vymName + " - " + tr("Set application to zip/unzip files") + ":", 
+        zipToolPath,
+        filter);
+
+    if (!fn.isEmpty() ) ok = true;
+
+#else
+
+    QString fn = QInputDialog::getText(
+                this,
+                vymName, tr("Set application to zip/unzip files")+":", QLineEdit::Normal,
+                zipToolPath, &ok);
+#endif
+
+    if (ok)
+    {
+        zipToolPath = fn;
+        settings.setValue ("/system/zipToolPath", zipToolPath);
+    }
+}
+
+void Main::settingsMacroDir()
+{
+    QDir defdir(vymBaseDir.path() + "/macros");
+    if (!defdir.exists())
+       defdir=vymBaseDir;
+    QDir dir=QFileDialog::getExistingDirectory (
+       this,
+       tr ("Directory with vym macros:"), 
+       settings.value ("/macros/macroDir",defdir.path()).toString()
+    );
+    if (dir.exists())
+       settings.setValue ("/macros/macroDir",dir.absolutePath());
+}
+
+void Main::settingsUndoLevels()            
+{
+    bool ok;
+    int i = QInputDialog::getInt(
+       this, 
+       "QInputDialog::getInt()",
+       tr("Number of undo/redo levels:"), settings.value("/history/stepsTotal",1000).toInt(), 0, 100000, 1, &ok);
+    if (ok)
+    {
+       settings.setValue ("/history/stepsTotal",i);
+       QMessageBox::information( this, tr( "VYM -Information:" ),
+          tr("Settings have been changed. The next map opened will have \"%1\" undo/redo levels").arg(i)); 
+   }   
+}
+
+bool Main::useAutosave()
+{
+    return actionSettingsToggleAutosave->isChecked();
+}
+
+void Main::setAutosave(bool b)
+{
+    actionSettingsToggleAutosave->setChecked(b);
+}
+
+void Main::settingsAutosaveTime()
+{
+    bool ok;
+    int i = QInputDialog::getInt(
+       this, 
+       vymName,
+       tr("Number of seconds before autosave:"), settings.value("/system/autosave/ms").toInt() / 1000, 10, 60000, 1, &ok);
+    if (ok)
+       settings.setValue ("/system/autosave/ms",i * 1000);
+}
+
+void Main::settingsDefaultMapAuthor()      
+{
+    bool ok;
+    QString s = QInputDialog::getText(
+                this,
+                vymName, tr("Set author for new maps (used in lockfile)") + ":", QLineEdit::Normal,
+                settings.value("/user/name", tr("unknown user","default name for map author in settings")).toString(), 
+                &ok);
+    if (ok) settings.setValue("/user/name", s);
+}
+
+void Main::settingsShowParentsLevelFindResults()           
+{
+    bool ok;
+    int i = QInputDialog::getInt(
+       this, 
+       vymName,
+       tr("Number of parents shown in find results:"), findResultWidget->getResultModel()->getShowParentsLevel(), 0, 10, 0, &ok);
+    if (ok) findResultWidget->getResultModel()->setShowParentsLevel(i);
+}
+
+void Main::settingsShowParentsLevelTasks()         
+{
+    bool ok;
+    int i = QInputDialog::getInt(
+       this, 
+       vymName,
+       tr("Number of parents shown for a task:"), taskModel->getShowParentsLevel(), 0, 10, 0, &ok);
+    if (ok) taskModel->setShowParentsLevel(i);
+}
+
+void Main::settingsToggleAutoLayout()
+{
+    settings.setValue ("/mainwindow/autoLayout/use",actionSettingsToggleAutoLayout->isChecked() );
+}
+
+void Main::settingsToggleWriteBackupFile()
+{
+    settings.setValue ("/system/writeBackupFile",actionSettingsWriteBackupFile->isChecked() );
+}
+
+void Main::settingsToggleAnimation()
+{
+    settings.setValue ("/animation/use",actionSettingsUseAnimation->isChecked() );
+}
+
+void Main::settingsToggleDownloads()
+{
+    downloadsEnabled(true);
+}
+
+void Main::windowToggleNoteEditor()
+{
+    if (noteEditor->parentWidget()->isVisible() )
+        noteEditor->parentWidget()->hide();
+    else
+    {
+        noteEditor->parentWidget()->show();
+        noteEditor->setFocus();
+    }
+}
+
+void Main::windowToggleTreeEditor()
+{
+    if ( tabWidget->currentWidget())
+       vymViews.at(tabWidget->currentIndex())->toggleTreeEditor();
+}
+
+void Main::windowToggleTaskEditor()
+{
+    if (taskEditor->parentWidget()->isVisible() )
+    {
+       taskEditor->parentWidget()->hide();
+       actionViewToggleTaskEditor->setChecked (false);
+    } else
+    {
+       taskEditor->parentWidget()->show();
+       actionViewToggleTaskEditor->setChecked (true);
+    }
+}
+
+void Main::windowToggleSlideEditor()
+{
+    if ( tabWidget->currentWidget())
+       vymViews.at(tabWidget->currentIndex())->toggleSlideEditor();
+}
+
+void Main::windowToggleScriptEditor()
+{
+    if (scriptEditor->parentWidget()->isVisible() )
+    {
+       scriptEditor->parentWidget()->hide();
+       actionViewToggleScriptEditor->setChecked (false);
+    } else
+    {
+       scriptEditor->parentWidget()->show();
+       actionViewToggleScriptEditor->setChecked (true);
+    }
+}
+
+void Main::windowToggleHistory()
+{
+    if (historyWindow->isVisible())
+       historyWindow->parentWidget()->hide();
+    else    
+       historyWindow->parentWidget()->show();
+}
+
+void Main::windowToggleProperty()
+{
+    if (branchPropertyEditor->parentWidget()->isVisible())
+       branchPropertyEditor->parentWidget()->hide();
+    else    
+       branchPropertyEditor->parentWidget()->show();
+    branchPropertyEditor->setModel (currentModel() );
+}
+
+void Main::windowShowHeadingEditor()
+{
+    headingEditorDW->show();
+}
+
+void Main::windowToggleHeadingEditor()
+{
+    if (headingEditor->parentWidget()->isVisible() )
+        headingEditor->parentWidget()->hide();
+    else
+    {
+        headingEditor->parentWidget()->show();
+        headingEditor->setFocus();
+    }
+}
+
+void Main::windowToggleAntiAlias()
+{
+    bool b=actionViewToggleAntiAlias->isChecked();
+    MapEditor *me;
+    for (int i=0;i<vymViews.count();i++)
+    {
+       me=vymViews.at(i)->getMapEditor();
+       if (me) me->setAntiAlias(b);
+    }  
+
+}
+
+bool Main::isAliased()
+{
+    return actionViewToggleAntiAlias->isChecked();
+}
+
+bool Main::hasSmoothPixmapTransform()
+{
+    return actionViewToggleSmoothPixmapTransform->isChecked();
+}
+
+void Main::windowToggleSmoothPixmap()
+{
+    bool b=actionViewToggleSmoothPixmapTransform->isChecked();
+    MapEditor *me;
+    for (int i=0;i<vymViews.count();i++)
+    {
+       
+       me=vymViews.at(i)->getMapEditor();
+       if (me) me->setSmoothPixmap(b);
+    }  
+}
+
+void Main::updateHistory(SimpleSettings &undoSet)
+{
+    historyWindow->update (undoSet);
+}
+
+void Main::updateHeading()
+{
+    VymModel *m=currentModel();
+    if (m) m->setHeading (headingEditor->getVymText() );
+}
+
+void Main::updateNoteFlag() 
+{
+    // this slot is connected to noteEditor::textHasChanged()
+    VymModel *m=currentModel();
+    if (m) m->updateNoteFlag();
+}
+
+void Main::updateNoteEditor(QModelIndex index ) //FIXME-4 maybe change to TreeItem as parameter?
+{
+    if (index.isValid() )
+    {
+        TreeItem *ti=((VymModel*) QObject::sender())->getItem(index);
+        /*
+    qDebug()<< "Main::updateNoteEditor model="<<sender()
+        << "  item="<<ti->getHeading()<<" ("<<ti<<")";
+    qDebug()<< "RT="<<ti->getNote().isRichText();
+    */
+        if (ti)
+            noteEditor->setNote (ti->getNote() );
+        updateDockWidgetTitles( ti->getModel());
+    }
+}
+
+void Main::selectInNoteEditor(QString s,int i)
+{
+    // TreeItem is already selected at this time, therefor
+    // the note is already in the editor
+    noteEditor->findText (s,0,i);
+}
+
+void Main::setFocusMapEditor()
+{
+    VymView *vv=currentView();
+    if (vv) vv->setFocusMapEditor();
+}
+
+void Main::changeSelection (VymModel *model, const QItemSelection &newsel, const QItemSelection &)
+{
+    branchPropertyEditor->setModel (model ); 
+
+    if (model && model == currentModel() )
+    {
+       TreeItem *ti;
+       if (!newsel.indexes().isEmpty() )
+        {
+            ti = model->getItem(newsel.indexes().first());
+
+            // Update note editor
+            if (!ti->hasEmptyNote() )
+                noteEditor->setNote(ti->getNote() );
+            else
+                noteEditor->setNote(VymNote() );
+            // Show URL and link in statusbar
+            QString status;
+            QString s = ti->getURL();
+            if (!s.isEmpty() ) status += "URL: " + s + "  ";
+            s = ti->getVymLink();
+            if (!s.isEmpty() ) status += "Link: " + s;
+            if (!status.isEmpty() ) statusMessage (status);
+
+            headingEditor->setVymText (ti->getHeading() );
+
+            // Select in TaskEditor, if necessary
+            Task *t = NULL;
+            if (ti->isBranchLikeType() )
+                t = ((BranchItem*)ti)->getTask();
+
+            if (t)
+                taskEditor->select (t);
+            else
+                taskEditor->clearSelection();
+        } else
+            noteEditor->setInactive();
+
+        updateActions();
+    }
+}
+
+void Main::updateDockWidgetTitles( VymModel *model)
+{
+    QString s;
+    if (model && !model->isRepositionBlocked() ) 
+    {
+       BranchItem *bi = model->getSelectedBranch();
+        if (bi) s = bi->getHeadingPlain();
+
+        noteEditor->setEditorTitle(s);
+        noteEditorDW->setWindowTitle (noteEditor->getEditorTitle() );
+    }
+}
+
+void Main::updateActions()
+{
+    // updateActions is also called when satellites are closed 
+    actionViewToggleNoteEditor->setChecked (noteEditor->parentWidget()->isVisible());
+    actionViewToggleTaskEditor->setChecked (taskEditor->parentWidget()->isVisible());
+    actionViewToggleHistoryWindow->setChecked (historyWindow->parentWidget()->isVisible());
+    actionViewTogglePropertyEditor->setChecked (branchPropertyEditor->parentWidget()->isVisible());
+    actionViewToggleScriptEditor->setChecked (scriptEditor->parentWidget()->isVisible());
+
+    VymView *vv=currentView();
+    if (vv)
+    {
+       actionViewToggleTreeEditor->setChecked ( vv->treeEditorIsVisible() );
+       actionViewToggleSlideEditor->setChecked( vv->slideEditorIsVisible() );
+    } else     
+    {
+       actionViewToggleTreeEditor->setChecked  ( false );
+       actionViewToggleSlideEditor->setChecked ( false );
+    }
+
+    VymModel  *m =currentModel();
+    if ( m ) 
+    {
+        // readonly mode
+        if (m->isReadOnly() )
+        {
+            // Disable toolbars
+            standardFlagsMaster->setEnabled (false);
+
+            // Disable map related actions
+            foreach (QAction *a, restrictedMapActions)
+                a->setEnabled( false );
+
+            // FIXME-2 updateactions: refactor actionListFiles: probably not needed, wrong actions there atm
+        } else
+        {   // not readonly     // FIXME-2 updateactions: maybe only required in testing, as mode should not change
+            
+            // Enable toolbars
+            standardFlagsMaster->setEnabled (true);
+
+            // Enable map related actions
+            foreach (QAction *a, restrictedMapActions)
+                a->setEnabled( true );
+
+        }
+       // Enable all files actions first   
+       for (int i=0; i<actionListFiles.size(); ++i)    
+           actionListFiles.at(i)->setEnabled(true);
+
+        foreach (QAction *a, unrestrictedMapActions)
+            a->setEnabled( true  );
+        
+       // Disable other actions for now
+       for (int i=0; i<actionListBranches.size(); ++i) 
+           actionListBranches.at(i)->setEnabled(false);
+
+       for (int i=0; i<actionListItems.size(); ++i) 
+           actionListItems.at(i)->setEnabled(false);
+
+       // Link style in context menu
+       switch (m->getMapLinkStyle())
+       {
+           case LinkableMapObj::Line: 
+               actionFormatLinkStyleLine->setChecked(true);
+               break;
+           case LinkableMapObj::Parabel:
+               actionFormatLinkStyleParabel->setChecked(true);
+               break;
+           case LinkableMapObj::PolyLine:  
+               actionFormatLinkStylePolyLine->setChecked(true);
+               break;
+           case LinkableMapObj::PolyParabel:   
+               actionFormatLinkStylePolyParabel->setChecked(true);
+               break;
+           default:
+               break;
+       }       
+
+       // Update colors
+       QPixmap pix( 16, 16 );
+       pix.fill( m->getMapBackgroundColor() );
+       actionFormatBackColor->setIcon( pix );
+       pix.fill( m->getSelectionColor() );
+       actionFormatSelectionColor->setIcon( pix );
+       pix.fill( m->getMapDefLinkColor() );
+       actionFormatLinkColor->setIcon( pix );
+
+       // Selection history
+       if (!m->canSelectPrevious() )
+           actionSelectPrevious->setEnabled(false);
+
+       if (!m->canSelectNext() )
+           actionSelectNext->setEnabled(false);
+           
+       if (!m->getSelectedItem() )
+           actionSelectNothing->setEnabled (false);
+
+       // Save
+       if (! m->hasChanged() )
+           actionFileSave->setEnabled( false);
+
+       // Undo/Redo
+       if (! m->isUndoAvailable())
+           actionUndo->setEnabled( false);
+
+       if (! m->isRedoAvailable())
+           actionRedo->setEnabled( false);
+
+       // History window
+       historyWindow->setWindowTitle (vymName + " - " +tr("History for %1","Window Caption").arg(m->getFileName()));
+
+       // Expanding/collapsing
+       actionExpandAll->setEnabled (true);
+       actionExpandOneLevel->setEnabled (true);
+       actionCollapseOneLevel->setEnabled (true);
+       actionCollapseUnselected->setEnabled (true);
+
+       if (m->getMapLinkColorHint()==LinkableMapObj::HeadingColor) 
+           actionFormatLinkColorHint->setChecked(true);
+       else    
+           actionFormatLinkColorHint->setChecked(false);
+
+       // Export last
+       QString s, t, u, v;
+       if (m && m->exportLastAvailable(s,t,u, v) )
+           actionFileExportLast->setEnabled (true);
+       else
+       {
+           actionFileExportLast->setEnabled (false);
+           t=u="";
+           s=" - ";
+       }       
+       actionFileExportLast->setText( tr( "Export in last used format (%1) to: %2","status tip" ).arg(s).arg(u));
+
+       TreeItem *selti=m->getSelectedItem();
+       BranchItem *selbi=m->getSelectedBranch();
+
+       if (selti)
+       {   // Tree Item selected
+           actionToggleTarget->setChecked (selti->isTarget() );
+           actionDelete->setEnabled (true);
+           actionDeleteChildren->setEnabled (true);
+
+           if (selbi || selti->getType()==TreeItem::Image)
+           {
+               actionFormatHideLinkUnselected->setChecked (((MapItem*)selti)->getHideLinkUnselected());
+               actionFormatHideLinkUnselected->setEnabled (true);
+           }
+
+           if (selbi)  
+           {   // Branch Item selected
+               for (int i=0; i<actionListBranches.size(); ++i) 
+                   actionListBranches.at(i)->setEnabled(true);
+
+               actionHeading2URL->setEnabled (true);  
+
+               // Note
+                actionGetURLsFromNote->setEnabled (!selbi->getNote().isEmpty());
+
+               // Take care of xlinks  
+               // FIXME-4 similar code in mapeditor mousePressEvent
+               int b=selbi->xlinkCount();
+               branchXLinksContextMenuEdit->setEnabled(b);
+               branchXLinksContextMenuFollow->setEnabled(b);
+               branchXLinksContextMenuEdit->clear();
+               branchXLinksContextMenuFollow->clear();
+               if (b)
+               {
+                   BranchItem *bi;
+                   QString s;
+                   for (int i=0; i<selbi->xlinkCount();++i)
+                   {
+                       bi=selbi->getXLinkItemNum(i)->getPartnerBranch();
+                       if (bi)
+                       {
+                s=bi->getHeadingPlain();
+                           if (s.length()>xLinkMenuWidth)
+                               s=s.left(xLinkMenuWidth)+"...";
+                           branchXLinksContextMenuEdit->addAction (s);
+                           branchXLinksContextMenuFollow->addAction (s);
+                       }   
+                   }
+               }
+               //Standard Flags
+               standardFlagsMaster->updateToolBar (selbi->activeStandardFlagNames() );
+
+               // System Flags
+               actionToggleScroll->setEnabled (true);
+               if ( selbi->isScrolled() )
+                   actionToggleScroll->setChecked(true);
+               else    
+                   actionToggleScroll->setChecked(false);
+
+               actionGetBugzillaDataSubtree->setEnabled (bugzillaClientAvailable);
+               if ( selti->getURL().isEmpty() )
+               {
+                   actionOpenURL->setEnabled (false);
+                   actionOpenURLTab->setEnabled (false);
+                   actionGetBugzillaData->setEnabled (false);
+               }   
+               else    
+               {
+                   actionOpenURL->setEnabled (true);
+                   actionOpenURLTab->setEnabled (true);
+                   actionGetBugzillaData->setEnabled (
+                       selti->getURL().contains("bugzilla") && bugzillaClientAvailable);
+               }
+               if ( selti->getVymLink().isEmpty() )
+               {
+                   actionOpenVymLink->setEnabled (false);
+                   actionOpenVymLinkBackground->setEnabled (false);
+                   actionDeleteVymLink->setEnabled (false);
+               } else  
+               {
+                   actionOpenVymLink->setEnabled (true);
+                   actionOpenVymLinkBackground->setEnabled (true);
+                   actionDeleteVymLink->setEnabled (true);
+               }   
+
+               if (!selbi->canMoveUp()) 
+                   actionMoveUp->setEnabled (false);
+
+               if (!selbi->canMoveDown()) 
+                   actionMoveDown->setEnabled (false);
+
+               if (selbi->branchCount() <2 )
+               {
+                   actionSortChildren->setEnabled (false);
+                   actionSortBackChildren->setEnabled (false);
+               }
+
+               actionToggleHideExport->setEnabled (true);  
+               actionToggleHideExport->setChecked (selbi->hideInExport() );    
+
+               actionToggleTask->setEnabled (true);  
+               if (!selbi->getTask() )
+                   actionToggleTask->setChecked (false);
+               else
+                   actionToggleTask->setChecked (true);
+
+               if (!clipboardEmpty)
+                   actionPaste->setEnabled (true); 
+               else    
+                   actionPaste->setEnabled (false);    
+
+               actionToggleTarget->setEnabled (true);
+           }   // end of BranchItem
+
+           if ( selti->getType()==TreeItem::Image)
+           {
+               for (int i=0; i<actionListBranches.size(); ++i) 
+                   actionListBranches.at(i)->setEnabled(false);
+
+               standardFlagsMaster->setEnabled (false);
+
+               actionOpenURL->setEnabled (false);
+               actionOpenVymLink->setEnabled (false);
+               actionOpenVymLinkBackground->setEnabled (false);
+               actionDeleteVymLink->setEnabled (false);    
+               actionToggleHideExport->setEnabled (true);  
+               actionToggleHideExport->setChecked (selti->hideInExport() );    
+
+               actionToggleTarget->setEnabled (true);
+
+               actionPaste->setEnabled (false); 
+               actionDelete->setEnabled (true);
+
+               actionGrowSelectionSize->setEnabled (true);
+               actionShrinkSelectionSize->setEnabled (true);
+               actionResetSelectionSize->setEnabled (true);
+           }   // Image
+       } // TreeItem 
+       
+       // Check (at least for some) multiple selection //FIXME-4
+       QList <TreeItem*> selItems=m->getSelectedItems();
+       if (selItems.count()>0 )
+       {
+           actionDelete->setEnabled (true);
+           actionToggleHideExport->setEnabled (true);  
+           actionToggleHideExport->setChecked (false); 
+       }
+
+       QList <BranchItem*> selbis=m->getSelectedBranches();
+       if (selbis.count()>0 )
+           actionFormatColorBranch->setEnabled (true);
+
+    } else
+    {
+        // No map available 
+        for (int i=0; i<actionListFiles.size(); ++i)   
+            actionListFiles.at(i)->setEnabled(false);
+
+        foreach (QAction *a, unrestrictedMapActions)
+            a->setEnabled( false );
+
+        // Disable toolbars
+        standardFlagsMaster->setEnabled (false);
+    }
+}
+
+Main::ModMode Main::getModMode()
+{
+    if (actionModModeColor->isChecked()) return ModModeColor;
+    if (actionModModeCopy->isChecked()) return ModModeCopy;
+    if (actionModModeXLink->isChecked()) return ModModeXLink;
+    return ModModeNone;
+}
+
+bool Main::autoEditNewBranch()
+{
+    return actionSettingsAutoEditNewBranch->isChecked();
+}
+
+bool Main::autoSelectNewBranch()
+{
+    return actionSettingsAutoSelectNewBranch->isChecked();
+}
+
+void Main::setScriptFile (const QString &fn)
+{
+    scriptEditor->setScriptFile (fn);
+}
+
+QVariant Main::execute (const QString &script)
+{
+    VymModel *m=currentModel();
+    if (m) return m->execute (script);
+    return QVariant();
+}
+
+void Main::executeEverywhere (const QString &script)
+{
+    foreach (VymView *vv,vymViews)
+    {
+       VymModel *m=vv->getModel();
+       if (m) m->execute (script);
+    }
+}
+
+void Main::gotoWindow (const int &n)
+{
+    if (n < tabWidget->count() && n>=0 )
+       tabWidget->setCurrentIndex (n);
+}
+
+void Main::windowNextEditor()
+{
+    if (tabWidget->currentIndex() < tabWidget->count())
+       tabWidget->setCurrentIndex (tabWidget->currentIndex() +1);
+}
+
+void Main::windowPreviousEditor()
+{
+    if (tabWidget->currentIndex() >0)
+       tabWidget->setCurrentIndex (tabWidget->currentIndex() -1);
+}
+
+void Main::nextSlide()
+{
+    VymView *cv=currentView();
+    if (cv) cv->nextSlide();
+}
+
+
+void Main::previousSlide()
+{
+    VymView *cv=currentView();
+    if (cv) cv->previousSlide();
+}
+
+void Main::standardFlagChanged()
+{
+    MapEditor *me = currentMapEditor();
+    VymModel  *m  = currentModel();
+    if (me && m && me->getState() != MapEditor::EditingHeading) 
+    {
+        if ( actionSettingsUseFlagGroups->isChecked() )
+            m->toggleStandardFlag(sender()->objectName(),standardFlagsMaster);
+        else
+            m->toggleStandardFlag(sender()->objectName());
+        updateActions();
+    }
+}
+
+void Main::testFunction1()
+{
+    /*
+    VymModel *m = currentModel();
+    if (m)
+    {
+        m->getMapEditor()->minimizeView();
+    }
+    */
+
+    /*
+    QString zp = "c:\\Program Files\\7-Zip\\7z.exe";
+    QString zipName = "c:\\Users\\uwdr9542\\x\\ü1.vym";
+    QString zipDir  = "c:\\Users\\uwdr9542\\x\\y\\";
+    */
+    QString zp = "c:/Program Files/7-Zip/7z.exe";
+    QString zipName = "c:/Users/uwdr9542/x/ü1.vym";
+    QString zipDir  = "c:/Users/uwdr9542/x/y/";
+
+    zp = QDir::toNativeSeparators(zp);
+    zipName = QDir::toNativeSeparators(zipName);
+    zipDir  = QDir::toNativeSeparators(zipDir);
+    QStringList args;
+    args << "a" << zipName << "-tzip" << "-scsUTF-8" << "-sccUTF-8" << "*" ;
+
+    VymProcess *zipProc=new VymProcess ();
+    zipProc->setWorkingDirectory (zipDir);
+
+    zipProc->start(zipToolPath, args);
+    qDebug() << "7z:" << zp;
+    qDebug() << "7z started in dir: " << zipProc->workingDirectory();
+    qDebug() << "args:" << args;
+    qDebug() << zipProc->getStdout()<<flush;
+}
+
+void Main::testFunction2()
+{
+}
+
+void Main::toggleWinter()
+{
+    if (!currentMapEditor()) return;
+    currentMapEditor()->toggleWinter();
+}
+
+void Main::toggleHideExport()
+{
+    VymModel *m=currentModel();
+    if (!m) return;
+    if (actionToggleHideMode->isChecked() )
+        m->setHideTmpMode (TreeItem::HideExport);
+    else
+        m->setHideTmpMode (TreeItem::HideNone);
+}
+
+void Main::testCommand()
+{
+    if (!currentMapEditor()) return;
+    scriptEditor->show();
+}
+
+void Main::helpDoc()
+{
+    QString locale = QLocale::system().name();
+    QString docname;
+    if (locale.left(2)=="es")
+       docname="vym_es.pdf";
+    else    
+       docname="vym.pdf";
+
+    QStringList searchList;
+    QDir docdir;
+    #if defined(Q_OS_MACX)
+        searchList << vymBaseDir.path() + "/doc";
+    #elif defined(Q_OS_WIN32)
+        searchList << vymInstallDir.path() + "doc/" + docname;
+    #else
+       #if defined(VYM_DOCDIR)
+           searchList << VYM_DOCDIR;
+       #endif
+        // default path in SUSE LINUX
+        searchList << "/usr/share/doc/packages/vym";
+    #endif
+
+    searchList << "doc";    // relative path for easy testing in tarball
+    searchList << "/usr/share/doc/vym";        // Debian
+    searchList << "/usr/share/doc/packages";// Knoppix
+
+    bool found=false;
+    QFile docfile;
+    for (int i=0; i<searchList.count(); ++i)
+    {
+       docfile.setFileName(searchList.at(i)+"/"+docname);
+       if (docfile.exists())
+       {
+           found=true;
+           break;
+       }   
+    }
+
+    if (!found)
+    {
+       QMessageBox::critical(0, 
+           tr("Critcal error"),
+        tr("Couldn't find the documentation %1 in:\n%2").arg(docname).arg(searchList.join("\n")));
+       return;
+    }  
+
+    QStringList args;
+    VymProcess *pdfProc = new VymProcess();
+    args << QDir::toNativeSeparators(docfile.fileName());
+
+    if (!pdfProc->startDetached( settings.value("/system/readerPDF").toString(),args) )
+    {
+       // error handling
+       QMessageBox::warning(0, 
+           tr("Warning"),
+           tr("Couldn't find a viewer to open %1.\n").arg(docfile.fileName())+
+           tr("Please use Settings->")+tr("Set application to open PDF files"));
+       settingsPDF();  
+       return;
+    }
+}
+
+void Main::helpDemo()
+{
+    QStringList filters;
+    filters <<"VYM example map (*.vym)";
+    QFileDialog fd;
+    fd.setDirectory (vymBaseDir.path() + "/demos");
+    fd.setFileMode (QFileDialog::ExistingFiles);
+    fd.setNameFilters (filters);
+    fd.setWindowTitle (vymName+ " - " +tr("Load vym example map"));
+    fd.setAcceptMode (QFileDialog::AcceptOpen);
+
+    QString fn;
+    if ( fd.exec() == QDialog::Accepted )
+    {
+        lastMapDir=fd.directory().path();
+        QStringList flist = fd.selectedFiles();
+        QStringList::Iterator it = flist.begin();
+        initProgressCounter( flist.count());
+        while( it != flist.end() )
+        {
+            fn = *it;
+            fileLoad(*it, NewMap,VymMap);
+            ++it;
+        }
+        removeProgressCounter();
+    }
+}
+
+void Main::helpShortcuts()
+{
+    ShowTextDialog dia;
+    dia.useFixedFont (true);
+    dia.setText( switchboard.getASCII() );
+    dia.exec();
+}
+
+void Main::debugInfo()  
+{
+    QString s;
+    s = QString ("Platform: %1\n").arg(vymPlatform);
+    s += QString ("localeName: %1\nPath: %2\n")
+        .arg(localeName)
+        .arg(vymBaseDir.path() + "/lang");
+    s += QString("vymBaseDir: %1\n").arg(vymBaseDir.path());
+    s += QString("currentPath: %1\n").arg(QDir::currentPath());
+    s += QString("appDirPath: %1\n").arg(QCoreApplication::applicationDirPath());
+    QMessageBox mb;
+    mb.setText(s);
+    mb.exec();
+}
+
+void Main::helpAbout()
+{
+    AboutDialog ad;
+    ad.setMinimumSize(500,500);
+    ad.resize (QSize (500,500));
+    ad.exec();
+}
+
+void Main::helpAboutQT()
+{
+    QMessageBox::aboutQt( this, "Qt Application Example" );
+}
+
+void Main::callMacro ()
+{
+    QAction *action = qobject_cast<QAction *>(sender());
+    int i=-1;
+    if (action)
+    {
+        i=action->data().toInt();
+        QString s=macros.getMacro (i+1);
+        if (!s.isEmpty())
+        {
+            VymModel *m=currentModel();
+            if (m) m->execute(s);
+        }
+    }  
+}
+
+void Main::downloadReleaseNotesFinished()
+{
+    DownloadAgent *agent = static_cast<DownloadAgent*>(sender());
+    QString s;
+    
+    if (agent->isSuccess() )
+    {
+        QString page;
+        if (agent->isSuccess() )
+        {
+            if ( loadStringFromDisk(agent->getDestination(), page) )
+            {
+                ShowTextDialog dia(this);
+                dia.setText(page);
+                dia.exec();
+
+                // Don't load the release notes automatically again
+                settings.setValue("/downloads/releaseNotes/shownVersion", __VYM_VERSION);
+            } 
+        }
+    } else
+    {
+        if (debug)
+        {
+            qDebug()<<"Main::downloadReleaseNotesFinished ";
+            qDebug()<<"  result: failed";
+            qDebug()<<"     msg: " << agent->getResultMessage();
+        }
+    }
+}
+
+void Main::checkReleaseNotes()
+{
+    bool userTriggered;
+    if (qobject_cast<QAction *>(sender()) )
+        userTriggered = true;
+    else
+        userTriggered = false;
+
+    if (downloadsEnabled())
+    {
+        if ( userTriggered ||
+             versionLowerThanVym( settings.value("/downloads/releaseNotes/shownVersion", "0.0.1").toString() ) )
+        {
+            QUrl releaseNotesUrl(
+                //QString("http://localhost/release-notes.php?vymVersion=%1") /
+                QString("http://www.insilmaril.de/vym/release-notes.php?vymVersion=%1")
+                .arg(vymVersion)
+            );
+            DownloadAgent *agent = new DownloadAgent(releaseNotesUrl);
+            connect (agent, SIGNAL( downloadFinished()), this, SLOT(downloadReleaseNotesFinished()));
+            QTimer::singleShot(0, agent, SLOT(execute()));
+        }
+    } else
+    {
+        // No downloads enabled
+        if (userTriggered)
+        {
+            // Notification: vym could not download release notes
+            QMessageBox::warning(0,  tr("Warning"), tr("Please allow vym to download release notes!"));
+            if (downloadsEnabled(userTriggered)) checkUpdates();
+        }
+    }
+}
+
+bool Main::downloadsEnabled (bool userTriggered)
+{
+    bool result;
+    if (!userTriggered && settings.value("/downloads/enabled", false).toBool())
+    {
+        result = true;
+    } else
+    {
+        QDate lastAsked = settings.value("/downloads/permissionLastAsked", QDate(1970,1,1) ).toDate();
+        if (userTriggered ||
+            !settings.contains("/downloads/permissionLastAsked") ||
+            lastAsked.daysTo( QDate::currentDate()) > 7
+           )
+        {
+            QString infotext;
+            infotext = tr("<html>"
+                          "<h3>Do you allow vym to check online for updates or release notes?</h3>"
+                          "If you allow, vym will "
+                          "<ul>"
+                            "<li>check once for release notes</li>"
+                            "<li>check regulary for updates and notify you in case you should update, e.g. if there are "
+                              "important bug fixes available</li>"
+                            "<li>receive a cookie with a random ID and send vym version and platform name and the ID  "
+                              "(e.g. \"Windows\" or \"Linux\") back to me, Uwe Drechsel."
+                              "<p>As vym developer I am motivated to see "
+                              "many people using vym. Of course I am curious to see, on which system vym is used. Maintaining each "
+                              "of the systems requires a lot of my (spare) time.</p> "
+                              "<p>No other data than above will be sent, especially no private data will be collected or sent."
+                              "(Check the source code, if you don't believe.)"
+                              "</p>"
+                            "</li>"
+                          "</ul>"
+                          "If you do not allow, "
+                          "<ul>"
+                            "<li>nothing will be downloaded and especially I will <b>not be motivated</b> "
+                            "to spend some more thousands of hours on developing a free software tool."
+                          "</ul>"
+                          "Please allow vym to check for updates :-)"
+                          );
+            QMessageBox mb( vymName, infotext,
+                QMessageBox::Information,
+                QMessageBox::Yes | QMessageBox::Default,
+                QMessageBox::Cancel | QMessageBox::Escape,
+                QMessageBox::NoButton);
+            mb.setButtonText( QMessageBox::Yes, tr("Allow") );
+            mb.setButtonText( QMessageBox::Cancel, tr("Do not allow"));
+            switch( mb.exec() )
+            {
+                case QMessageBox::Yes:
+                    result = true;
+                    QMessageBox::information(0, vymName,
+                        tr("Thank you for enabling downloads!"));
+                break;
+                default :
+                    result = false;
+                break;
+            }
+        } else
+            result = false;
+        actionSettingsToggleDownloads->setChecked( result );
+        settings.setValue("/downloads/enabled", result);
+        settings.setValue("/downloads/permissionLastAsked", QDate::currentDate().toString(Qt::ISODate));
+    }
+    return result;
+}
+
+void Main::downloadUpdatesFinished(bool userTriggered)
+{
+    DownloadAgent *agent = static_cast<DownloadAgent*>(sender());
+    QString s;
+
+    if (agent->isSuccess() )
+    {
+        ShowTextDialog dia;
+        dia.setWindowTitle( vymName + " - " + tr("Update information") );
+        QString page;
+        if (loadStringFromDisk(agent->getDestination(), page) )
+        {
+            if (page.contains("vymisuptodate"))
+            {
+                statusMessage( tr("vym is up to date.","MainWindow"));
+                if (userTriggered)
+                {
+                    // Notification: vym is up to date!
+                    dia.setHtml( page );
+                    dia.exec();
+                }
+            } else if (page.contains("vymneedsupdate"))
+            {
+                // Notification: updates available
+                dia.setHtml( page );
+                dia.exec();
+            } else 
+            {
+                // Notification: Unknown version found
+                dia.setHtml( page );
+                dia.exec();
+            } 
+
+            // Prepare to check again later
+            settings.setValue("/downloads/updates/lastChecked", QDate::currentDate().toString(Qt::ISODate));
+        } else
+            statusMessage( "Couldn't load update page from " + agent->getDestination());
+
+    } else
+    {
+        statusMessage( "Check for updates failed.");
+        if (debug)
+        {
+            qDebug()<<"Main::downloadUpdatesFinished ";
+            qDebug()<<"  result: failed";
+            qDebug()<<"     msg: " << agent->getResultMessage();
+        }
+    }
+}
+void Main::downloadUpdatesFinishedInt()
+{
+    downloadUpdatesFinished(true);
+}
+
+void Main::downloadUpdates(bool userTriggered)
+{
+    QUrl updatesUrl(
+        QString("http://www.insilmaril.de/vym/updates.php?vymVersion=%1")
+        .arg(vymVersion)
+    );
+    DownloadAgent *agent = new DownloadAgent(updatesUrl);
+    if (userTriggered)
+        connect (agent, SIGNAL( downloadFinished()), this, SLOT(downloadUpdatesFinishedInt()));
+    else
+        connect (agent, SIGNAL( downloadFinished()), this, SLOT(downloadUpdatesFinished()));
+    statusMessage( tr("Checking for updates...","MainWindow"));
+    QTimer::singleShot(0, agent, SLOT(execute()));
+}
+
+void Main::checkUpdates()
+{
+    bool userTriggered;
+    if (qobject_cast<QAction *>(sender()) )
+        userTriggered = true;
+    else
+        userTriggered = false;
+
+    if (downloadsEnabled())
+    {
+        // Too much time passed since last update check?
+        QDate lastChecked = settings.value("/downloads/updates/lastChecked", QDate(1970,1,1) ).toDate();
+        if ( !lastChecked.isValid()) lastChecked = QDate(1970,1,1);
+        if ( lastChecked.daysTo( QDate::currentDate()) > settings.value("/downloads/updates/checkInterval",3).toInt() ||
+             userTriggered == true)
+        {
+            downloadUpdates( userTriggered );
+        }
+    } else
+    {
+        // No downloads enabled
+        if (userTriggered)
+        {
+            // Notification: vym could not check for updates
+            QMessageBox::warning(0,  tr("Warning"), tr("Please allow vym to check for updates!"));
+            if (downloadsEnabled(userTriggered)) checkUpdates();
+        }
+    }
+}
diff --git a/mainwindow.h b/mainwindow.h
new file mode 100644 (file)
index 0000000..39df41a
--- /dev/null
@@ -0,0 +1,538 @@
+#ifndef MAINWINDOW_H
+#define MAINWINDOW_H
+
+#include <QMainWindow>
+#include <QProgressDialog>
+
+#include "branchpropeditor.h"
+#include "extrainfodialog.h"
+#include "flag.h"
+#include "file.h"
+#include "historywindow.h"
+#include "mapeditor.h"
+#include "texteditor.h"
+#include "vymview.h"
+
+class Main : public QMainWindow 
+{
+    Q_OBJECT
+
+public:
+    /*! Modifier modes are used when CTRL together with a mouse button is pressed */
+    enum ModMode {
+       ModModeNone,    //!< Unused
+       ModModeColor,   //!< Pick color from object
+       ModModeCopy,    //!< Copy object
+       ModModeXLink    //!< Create a XLink (XLinkObj) from selected object
+       };
+
+    Main(QWidget* parent=0, Qt::WindowFlags f=0);
+    ~Main();
+    void loadCmdLine();
+
+private:
+    QProgressDialog progressDialog;
+    int progressMax;
+    int progressCounter;
+    int progressCounterTotal;
+public:        
+    void statusMessage (const QString &);
+    void setProgressMaximum (int max);
+    void addProgressValue (float v);
+    void initProgressCounter(uint n=1);
+    void removeProgressCounter();
+
+public slots:
+    void fileNew();
+    void fileNewCopy();
+
+protected:
+    void closeEvent( QCloseEvent* );
+
+private:
+    void setupAPI();
+
+    /*! Helper method to clone actions later in MapEditor */
+    void cloneActionMapEditor( QAction *a, QKeySequence ks);
+
+    void setupFileActions();
+    void setupEditActions();
+    void setupSelectActions();
+    void setupFormatActions();
+    void setupViewActions();
+    void setupModeActions();
+    void setupWindowActions();
+    void setupFlag(
+       Flag *flag, 
+       QToolBar *tb, 
+       const QString &name, 
+       const QString &tooltip,
+       const QKeySequence &ks=0
+       );
+    void setupFlagActions();
+    void setupNetworkActions();
+    void setupSettingsActions();
+    void setupTestActions();
+    void setupHelpActions();
+    void setupContextMenus();
+    void setupRecentMapsMenu();
+    void setupMacros();
+    void setupToolbars();
+    VymView* currentView() const;
+public:        
+    MapEditor* currentMapEditor() const;
+    VymModel* currentModel() const;
+    uint currentModelID() const;
+    VymModel* getModel(uint) const;
+    void gotoModel (VymModel *m);
+    int modelCount();
+    void updateTabName(VymModel *vm);
+    
+private slots:
+    void editorChanged();
+
+    File::ErrorCode fileLoad(QString ,const LoadMode &, const FileType &ftype);
+    void fileLoad(const LoadMode &);
+    void fileLoad();
+    void fileSaveSession();
+public slots:    
+    void fileRestoreSession();
+private slots:    
+    void fileLoadRecent();
+    void addRecentMap (const QString &);
+    void fileSave(VymModel*, const SaveMode & );
+    void fileSave();
+public slots:  
+    void fileSave(VymModel*);  // autosave from MapEditor
+private slots: 
+    void fileSaveAs();
+    void fileSaveAs(const SaveMode &);
+    void fileImportFirefoxBookmarks();
+    void fileImportFreemind();
+    void fileImportMM();
+    void fileImportDir();
+    void fileExportXML();
+    void fileExportHTML();
+    void fileExportImage();
+    void fileExportPDF();
+    void fileExportSVG();
+    void fileExportAO();
+    void fileExportASCII();
+    void fileExportASCIITasks();
+    void fileExportCSV();
+    void fileExportOrgMode();
+    void fileExportLaTeX();
+    void fileExportTaskjuggler();
+    void fileExportImpress();
+    void fileExportLast();
+    bool fileCloseMap(int i = -1);  // Optionally pass number of tab
+    void filePrint();
+    bool fileExitVYM();
+
+public slots:
+    void editUndo();   
+    void editRedo();   
+    void gotoHistoryStep (int);
+private slots: 
+    void editCopy();   
+    void editPaste();  
+    void editCut(); 
+
+public slots:    
+    void updateQueries (VymModel*);
+private:
+    bool openURL(const QString &url);
+    void openTabs(QStringList);
+public slots:
+    void editOpenURL();
+    void editOpenURLTab();
+private slots:
+    void editOpenMultipleVisURLTabs(bool ignoreScrolled=true);
+    void editOpenMultipleURLTabs();
+    void editNote2URLs();
+    void editURL();
+    void editLocalURL();
+    void editHeading2URL();
+    void editBugzilla2URL();
+    void getBugzillaData();
+    void getBugzillaDataSubtree();
+    void editFATE2URL();
+    void openVymLinks(const QStringList &, bool background=false);
+    void editVymLink();
+    void editOpenMultipleVymLinks();
+public slots:
+    void editHeading();
+    void editHeadingFinished(VymModel *m);
+    void editOpenVymLink(bool background=false);
+    void editOpenVymLinkBackground();
+private slots:
+    void editDeleteVymLink();
+    void editToggleHideExport();
+    void editToggleTask();
+    void editCycleTaskStatus();
+    void editTaskSleepN();
+    void editAddTimestamp();
+    void editMapProperties();
+    void editMoveUp(); 
+    void editMoveDown();    
+    void editDetach(); 
+    void editSortChildren();
+    void editSortBackChildren();
+    void editToggleScroll();
+    void editExpandAll();
+    void editExpandOneLevel();
+    void editCollapseOneLevel();
+    void editCollapseUnselected();
+    void editUnscrollChildren();
+    void editGrowSelectionSize();
+    void editShrinkSelectionSize();
+    void editResetSelectionSize();
+    void editAddAttribute();
+    void editAddMapCenter();
+    void editNewBranch();
+    void editNewBranchBefore();
+    void editNewBranchAbove();
+    void editNewBranchBelow();
+    void editImportAdd();
+    void editImportReplace();
+    void editSaveBranch();
+    void editDeleteKeepChildren();
+    void editDeleteChildren();
+    void editDeleteSelection();
+    void editLoadImage();
+    void editSaveImage();
+    void popupFollowXLink ();
+    void editFollowXLink (QAction *);
+    void editEditXLink (QAction *);
+
+private slots:    
+    void editToggleTarget();
+    bool initTargetsMenu( VymModel *model, QMenu *menu);
+    void editGoToTarget();
+    void editMoveToTarget();
+    void editSelectPrevious();
+    void editSelectNext();
+    void editSelectNothing();
+    void editOpenFindResultWidget();
+    void editFindNext(QString s);
+    void editFindDuplicateURLs();
+
+public slots:
+    void formatPickColor();
+    QColor getCurrentColor();
+    void setCurrentColor(QColor);
+
+private slots:    
+    void formatSelectColor();
+    void formatColorBranch();
+    void formatColorSubtree();
+    void formatLinkStyleLine();
+    void formatLinkStyleParabel();
+    void formatLinkStylePolyLine();
+    void formatLinkStylePolyParabel();
+    void formatSelectBackColor();
+    void formatSelectBackImage();
+    void formatSelectLinkColor();
+    void formatSelectSelectionColor();
+    void formatSelectFont();
+    void formatToggleLinkColorHint();
+    void formatHideLinkUnselected();
+
+public slots:
+    void viewZoomReset();
+    void viewZoomIn();
+    void viewZoomOut();
+    void viewRotateCounterClockwise();
+    void viewRotateClockwise();
+    void viewCenter();
+
+public slots:
+    void networkStartServer();
+    void networkConnect();
+    void downloadFinished();
+    bool settingsPDF();
+    bool settingsURL();
+    void settingsZipTool();
+    void settingsMacroDir();
+    void settingsUndoLevels();
+
+public:
+    bool useAutosave();
+    void setAutosave( bool b);
+
+public slots:
+    void settingsAutosaveTime();
+    void settingsDefaultMapAuthor();
+    void settingsShowParentsLevelTasks();
+    void settingsShowParentsLevelFindResults();
+    void settingsToggleAutoLayout();
+    void settingsToggleWriteBackupFile();
+    void settingsToggleAnimation();
+    void settingsToggleDownloads();
+
+    void windowToggleNoteEditor();
+    void windowToggleTreeEditor();
+    void windowToggleTaskEditor();
+    void windowToggleSlideEditor();
+    void windowToggleScriptEditor();
+    void windowToggleHistory();
+    void windowToggleProperty();
+    void windowShowHeadingEditor();
+    void windowToggleHeadingEditor();
+    void updateHistory(SimpleSettings &);
+    void windowToggleAntiAlias();
+public:
+    bool isAliased();
+    bool hasSmoothPixmapTransform();
+public slots:
+    void windowToggleSmoothPixmap();
+    void updateHeading();
+    void updateNoteFlag();
+    void updateNoteEditor (QModelIndex index);
+    void selectInNoteEditor (QString s, int i);
+    void setFocusMapEditor();
+    void changeSelection (VymModel *model,const QItemSelection &newSel, const QItemSelection &delSel);
+    void updateDockWidgetTitles(VymModel *model);
+
+    void updateActions();
+    ModMode getModMode();
+    bool autoEditNewBranch();
+    bool autoSelectNewBranch();
+    void setScriptFile(const QString &fn);
+    QVariant execute(const QString &);
+    void executeEverywhere (const QString &);
+    void gotoWindow (const int &n);
+
+private slots:
+    void windowNextEditor();
+    void windowPreviousEditor();
+    void nextSlide();
+    void previousSlide();
+
+    void standardFlagChanged();
+
+    void testFunction1();
+    void testFunction2();
+    void toggleWinter();
+    void toggleHideExport();
+    void testCommand();
+
+    void helpDoc();
+    void helpDemo();
+    void helpShortcuts();
+    void debugInfo();
+    void helpAbout();
+    void helpAboutQT();
+
+    void callMacro ();
+    void downloadReleaseNotesFinished();
+
+public slots:
+    void checkReleaseNotes();
+    bool downloadsEnabled(bool userTriggered = false);
+    void downloadUpdatesFinished(bool userTriggered = false);
+    void downloadUpdatesFinishedInt();
+    void downloadUpdates(bool userTriggered);
+    void checkUpdates();
+
+private:
+    QString shortcutScope;          //! For listing shortcuts
+    QTabWidget *tabWidget;
+    qint64 *browserPID;
+
+    QStringList imageTypes;
+
+    QList <VymView*> vymViews;     //! Keeps track of models and views related to a tab 
+    QString prevSelection;
+
+    HistoryWindow *historyWindow;
+
+    QDockWidget *headingEditorDW;
+    QDockWidget *noteEditorDW;
+    QDockWidget *scriptEditorDW;
+
+    BranchPropertyEditor *branchPropertyEditor;
+
+public:
+    QList <QAction*> mapEditorActions;      //! allows mapEditor to clone actions and shortcuts
+    QList <QAction*> taskEditorActions;     //! allows taskEditor to clone actions and shortcuts
+private:
+    QList <QAction*> restrictedMapActions;  //! Actions reqire map and write access
+    QList <QAction*> unrestrictedMapActions;//! Actions require map, but work also in readonly, e.g. print, copy
+    QList <QAction*> actionListFiles;       //! File related actions, e.g. load, save, restore session
+    QList <QAction*> actionListBranches;
+    QList <QAction*> actionListItems;
+
+    QColor currentColor;
+
+    int xLinkMenuWidth;
+
+    QMenu *recentFilesMenu;
+    enum { MaxRecentFiles = 9 };
+    QAction *recentFileActions[MaxRecentFiles];
+
+    QAction *macroActions[13];
+    QStringList macro;
+
+    QMenu *toolbarsMenu;
+    QToolBar *fileToolbar;
+    QToolBar *clipboardToolbar;
+    QToolBar *editActionsToolbar;
+    QToolBar *selectionToolbar;
+    QToolBar *editorsToolbar;
+    QToolBar *colorsToolbar;
+    QToolBar *zoomToolbar;
+    QToolBar *modModesToolbar;
+    QToolBar *referencesToolbar;
+    QToolBar *standardFlagsToolbar;
+
+    QAction* actionFileNew;
+    QAction* actionFileNewCopy;
+    QAction* actionFileOpen;
+    QAction* actionFileRestoreSession;
+    QAction* actionFileSave;
+    QAction* actionFilePrint;
+    QAction* actionMapProperties;
+    QAction* actionFileExportLast;
+    QAction* actionUndo;
+    QAction* actionRedo;
+    QAction *actionCopy;
+    QAction *actionCut;
+    QAction *actionPaste;
+    QAction *actionMoveUp;
+    QAction *actionMoveDown;
+    QAction *actionDetach;
+    QAction *actionSortChildren;
+    QAction *actionSortBackChildren;
+    QAction *actionToggleScroll;
+    QAction *actionExpandAll;
+    QAction *actionExpandOneLevel;
+    QAction *actionCollapseOneLevel;
+    QAction *actionCollapseUnselected;
+    QAction* actionOpenURL;
+    QAction* actionOpenURLTab;
+    QAction* actionOpenMultipleVisURLTabs;
+    QAction* actionOpenMultipleURLTabs;
+    QAction* actionGetURLsFromNote;
+    QAction* actionURLNew;
+    QAction* actionLocalURL;
+    QAction* actionHeading2URL;
+    QAction* actionBugzilla2URL;
+    QAction* actionGetBugzillaData;
+    QAction* actionGetBugzillaDataSubtree;
+    QAction* actionFATE2URL;
+    QAction *actionOpenVymLink;
+    QAction *actionOpenVymLinkBackground;
+    QAction *actionOpenMultipleVymLinks;
+    QAction *actionEditVymLink;
+    QAction *actionDeleteVymLink;
+    QAction *actionAddTimestamp;
+    QAction *actionToggleTask;
+    QAction *actionCycleTaskStatus;
+    QAction *actionTaskSleep0;
+    QAction *actionTaskSleepN;
+    QAction *actionTaskSleep1;
+    QAction *actionTaskSleep2;
+    QAction *actionTaskSleep3;
+    QAction *actionTaskSleep5;
+    QAction *actionTaskSleep7;
+    QAction *actionTaskSleep14;
+    QAction *actionTaskSleep28;
+    QAction *actionToggleHideExport;
+    QAction *actionMapInfo;
+    QAction *actionHeading;
+    QAction *actionDelete;
+    QAction *actionAddAttribute;
+public:
+    QAction *actionAddMapCenter;
+
+private:    
+    QAction *actionAddBranch;
+    QAction *actionAddBranchBefore;
+    QAction *actionAddBranchAbove;
+    QAction *actionAddBranchBelow;
+    QAction *actionDeleteKeepChildren;
+    QAction *actionDeleteChildren;
+    QAction *actionImportAdd;
+    QAction *actionImportReplace;
+    QAction *actionSaveBranch;
+    QAction *actionLoadImage;
+
+    QAction *actionGrowSelectionSize;
+    QAction *actionShrinkSelectionSize;
+    QAction *actionResetSelectionSize;
+
+    QAction *actionToggleTarget;
+    QAction *actionGoToTarget;
+    QAction *actionMoveToTarget;
+    QAction *actionSelectPrevious;
+    QAction *actionSelectNext;
+    QAction *actionSelectNothing;
+    QAction *actionFind;
+
+    QAction *actionFormatColor;
+    QAction *actionFormatPickColor;
+    QAction *actionFormatColorBranch;
+    QAction *actionFormatColorSubtree;
+    QAction *actionFormatLinkColorHint;
+    QAction *actionFormatBackColor;
+    QAction *actionFormatBackImage;
+    QAction *actionFormatLinkColor;
+    QAction *actionFormatSelectionColor;
+    QAction *actionFormatFont;
+
+    QAction *actionZoomIn;
+    QAction *actionZoomOut;
+    QAction *actionZoomReset;
+    QAction *actionRotateCounterClockwise;
+    QAction *actionRotateClockwise;
+    QAction *actionCenterOn;
+
+    QActionGroup *actionGroupModModes;
+    QAction *actionModModeColor;
+    QAction *actionModModeXLink;
+    QAction *actionModModeCopy;
+
+    QAction *actionToggleHideMode;
+
+    QAction *actionToggleWinter;
+
+    QActionGroup *actionGroupFormatFrameTypes;
+
+    QActionGroup *actionGroupFormatLinkStyles;
+    QAction *actionFormatLinkStyleLine;
+    QAction *actionFormatLinkStyleParabel;
+    QAction *actionFormatLinkStylePolyLine;
+    QAction *actionFormatLinkStylePolyParabel;
+    QAction *actionFormatHideLinkUnselected;
+
+    QAction *actionViewToggleNoteEditor;
+    QAction *actionViewToggleHeadingEditor;
+    QAction *actionViewToggleTreeEditor;
+    QAction *actionViewToggleTaskEditor;
+    QAction *actionViewToggleSlideEditor;
+    QAction *actionViewToggleScriptEditor;
+    QAction *actionViewToggleHistoryWindow;
+    QAction *actionViewTogglePropertyEditor;
+    QAction *actionViewToggleAntiAlias;
+    QAction *actionViewToggleSmoothPixmapTransform;
+    QAction* actionViewCenter;
+
+    QAction* actionSettingsAutoEditNewBranch;
+    QAction* actionSettingsAutoSelectNewBranch;
+    QAction* actionSettingsAutoSelectText;
+    QAction* actionSettingsUseFlagGroups;
+    QAction* actionSettingsUseHideExport;
+    QAction* actionSettingsToggleAutosave;
+    QAction* actionSettingsAutosaveTime;
+    QAction* actionSettingsShowParentsLevelTasks;
+    QAction* actionSettingsShowParentsLevelFindResults;
+    QAction* actionSettingsToggleAutoLayout;
+    QAction* actionSettingsWriteBackupFile;
+    QAction* actionSettingsToggleDownloads;
+    QAction* actionSettingsUseAnimation;
+};
+
+
+#endif
+
diff --git a/mapeditor.cpp b/mapeditor.cpp
new file mode 100644 (file)
index 0000000..8f64910
--- /dev/null
@@ -0,0 +1,2126 @@
+#include "mapeditor.h"
+
+#include <QGraphicsProxyWidget>
+#include <QMenuBar>
+#include <QObject>
+#include <QPrinter>
+#include <QPrintDialog>
+#include <QScrollBar>
+
+#include "branchitem.h"
+#include "geometry.h"
+#include "mainwindow.h"
+#include "misc.h"
+#include "shortcuts.h"
+#include "warningdialog.h"
+#include "xlinkitem.h"
+
+
+extern Main *mainWindow;
+extern QString tmpVymDir;
+extern QString clipboardDir;
+extern QString clipboardFile;
+extern bool clipboardEmpty;
+extern bool debug;
+extern QPrinter *printer;
+
+extern QMenu* branchContextMenu;
+extern QMenu* canvasContextMenu;
+extern QMenu* floatimageContextMenu;
+extern QMenu* taskContextMenu;
+
+extern Switchboard switchboard;
+extern Settings settings;
+
+extern QTextStream vout;
+
+///////////////////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////////////////
+MapEditor::MapEditor( VymModel *vm)    
+{
+    //qDebug() << "Constructor ME "<<this;
+
+    QString shortcutScope = tr("Map Editor","Shortcut scope");
+    mapScene= new QGraphicsScene(NULL);
+    mapScene->setBackgroundBrush (QBrush(Qt::white, Qt::SolidPattern));
+
+    zoomFactor=zoomFactorTarget=1;
+    angle=angleTarget=0;
+
+    model=vm;
+    model->registerEditor(this);
+    model->makeDefault();   // No changes in model so far
+
+    setScene (mapScene);
+
+    // Create bitmap cursors, platform dependant
+    HandOpenCursor=QCursor (QPixmap(":/cursorhandopen.png"),1,1);      
+    PickColorCursor=QCursor ( QPixmap(":/cursorcolorpicker.png"), 5,27 ); 
+    CopyCursor=QCursor ( QPixmap(":/cursorcopy.png"), 1,1 ); 
+    XLinkCursor=QCursor ( QPixmap(":/cursorxlink.png"), 1,7 ); 
+
+    editingBO=NULL;
+
+    printFrame=true;
+    printFooter=true;
+
+    setAcceptDrops (true);  
+
+    // Shortcuts and actions
+    QAction *a;
+
+    a = new QAction("Select upper branch", this);
+    a->setShortcut (Qt::Key_Up );
+    a->setShortcutContext (Qt::WidgetShortcut);
+    connect( a, SIGNAL( triggered() ), this, SLOT( cursorUp() ) );
+    addAction (a);
+
+    a = new QAction( "Select lower branch",this);
+    a->setShortcut ( Qt::Key_Down );
+    a->setShortcutContext (Qt::WidgetShortcut);
+    addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( cursorDown() ) );
+
+    a = new QAction( "Select left branch", this);
+    a->setShortcut (Qt::Key_Left );
+//  a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( cursorLeft() ) );
+
+    a = new QAction( "Select child branch", this);
+    a->setShortcut (Qt::Key_Right);
+//  a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( cursorRight() ) );
+
+    a = new QAction(  "Select first branch", this);
+    a->setShortcut (Qt::Key_Home );
+    a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( cursorFirst() ) );
+
+    a = new QAction( "Select last branch",this);
+    a->setShortcut ( Qt::Key_End );
+    a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( cursorLast() ) );
+
+    // Action to embed LineEdit for heading in Scene
+    lineEdit=NULL;
+
+    a = new QAction( tr( "Edit heading","MapEditor" ), this);
+    a->setShortcut ( Qt::Key_Return );                 //Edit heading
+    a->setShortcutContext (Qt::WidgetShortcut);
+    addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editHeading() ) );
+    a = new QAction( tr( "Edit heading","MapEditor" ), this);
+    a->setShortcut ( Qt::Key_Enter);                   //Edit heading
+    a->setShortcutContext (Qt::WidgetShortcut);
+    addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editHeading() ) );
+
+    // Selections
+    selectionColor =QColor (255,255,0);
+    
+    // Panning 
+    panningTimer=new QTimer (this);
+    vPan=QPointF();
+    connect (panningTimer, SIGNAL (timeout()), this, SLOT (panView() ));
+
+    // Clone actions defined in MainWindow
+    foreach (QAction* qa, mainWindow->mapEditorActions)
+    {
+        a = new QAction( this );
+        a->setShortcut( qa->shortcut() );
+        a->setShortcutContext( qa->shortcutContext() );
+        connect( a, SIGNAL( triggered() ), qa, SLOT( trigger() ) );
+        addAction(a);
+    }
+
+    setState (Neutral);
+
+    // Attributes   //TODO  testing only...
+    QString k;
+    AttributeDef *ad;
+    attrTable= new AttributeTable();
+    k="A - StringList";
+    ad=attrTable->addKey (k,StringList);
+    if (ad)
+    {
+       QStringList sl;
+       sl <<"val 1"<<"val 2"<< "val 3";
+       ad->setValue (QVariant (sl));
+    }
+    //attrTable->addValue ("Key A","P 1");
+    //attrTable->addValue ("Key A","P 2");
+    //attrTable->addValue ("Key A","P 3");
+    //attrTable->addValue ("Key A","P 4");
+    k="B - FreeString";
+    ad=attrTable->addKey (k,FreeString);
+    if (ad)
+    {
+       //attrTable->addValue ("Key B","w1");
+       //attrTable->addValue ("Key B","w2");
+    }
+    k="C - UniqueString";
+    ad=attrTable->addKey (k,UniqueString);
+    if (ad)
+    {
+    //attrTable->addKey ("Key Prio");
+    //attrTable->addValue ("Key Prio","Prio 1");
+    //attrTable->addValue ("Key Prio","Prio 2");
+    }
+
+    winter=NULL;
+}
+
+MapEditor::~MapEditor()
+{
+    //qDebug ()<<"Destr MapEditor this="<<this;
+}
+
+VymModel* MapEditor::getModel()
+{
+    return model;
+}
+
+QGraphicsScene * MapEditor::getScene()
+{
+    return mapScene;
+}
+
+void MapEditor::panView()
+{
+    if (!vPan.isNull() ) 
+    {
+       // Scroll if needed
+       // To avoid jumping of the sceneView, only 
+       // show selection, if not tmp linked
+       qreal px=0;
+       qreal py=0;
+       if (vPan.x()<0) 
+           px=vPan.x();
+       else if (vPan.x()>0 )
+           px=width()+vPan.x();
+       if (vPan.y()<0) 
+           py=vPan.y();
+       else if (vPan.y()>0 ) 
+           py=height()+vPan.y();
+
+       QPointF q=mapToScene (QPoint(px,py));
+       QRectF r=QRectF (q,QPointF (q.x()+1,q.y()+1));
+
+       // Expand view if necessary
+       setScrollBarPosTarget (r);
+
+       // Stop possible other animations
+       if (scrollBarPosAnimation.state()==QAbstractAnimation::Running)
+           scrollBarPosAnimation.stop();
+
+       // Do linear animation
+       horizontalScrollBar()->setValue(horizontalScrollBar()->value() + vPan.x() );
+       verticalScrollBar()->setValue  (  verticalScrollBar()->value() + vPan.y() );
+
+       // Update currently moving object
+       moveObject ();
+    }
+}
+
+void MapEditor::scrollTo (const QModelIndex &index) 
+{
+    if (index.isValid())
+    {
+       LinkableMapObj* lmo=NULL;
+       TreeItem *ti= static_cast<TreeItem*>(index.internalPointer());
+       if (ti->getType()==TreeItem::Image ||ti->isBranchLikeType() )
+           lmo=((MapItem*)ti)->getLMO();
+       if (lmo) 
+       {
+           QRectF r=lmo->getBBox();
+           setScrollBarPosTarget (r);
+           animateScrollBars();
+       }   
+    }
+}
+
+void MapEditor::setScrollBarPosTarget (QRectF rect)
+{
+    // Expand viewport, if rect is not contained
+    if (!sceneRect().contains (rect) )
+       setSceneRect(sceneRect().united (rect));
+
+    int xmargin=0;
+    int ymargin=0;
+
+    // Prepare scrolling
+    qreal width = viewport()->width();
+    qreal height = viewport()->height();
+    QRectF viewRect = matrix().mapRect(rect);
+
+    qreal left = horizontalScrollBar()->value();
+    qreal right = left + width;
+    qreal top = verticalScrollBar()->value();
+    qreal bottom = top + height;
+
+    scrollBarPosTarget=getScrollBarPos();
+
+    if (viewRect.left() <= left + xmargin) {
+        // need to scroll from the left
+       scrollBarPosTarget.setX(int(viewRect.left() - xmargin - 0.5));
+    }
+    if (viewRect.right() >= right - xmargin) {
+        // need to scroll from the right
+       scrollBarPosTarget.setX(int(viewRect.right() - width + xmargin + 0.5));
+    }
+    if (viewRect.top() <= top + ymargin) {
+        // need to scroll from the top
+       scrollBarPosTarget.setY(int(viewRect.top() - ymargin - 0.5));
+    }
+    if (viewRect.bottom() >= bottom - ymargin) {
+        // need to scroll from the bottom
+       scrollBarPosTarget.setY(int(viewRect.bottom() - height + ymargin + 0.5));
+    }
+
+}
+
+QPointF MapEditor::getScrollBarPosTarget()
+{
+    return scrollBarPosTarget;
+}
+
+
+void MapEditor::setScrollBarPos(const QPointF &p)
+{
+    scrollBarPos=p;
+    horizontalScrollBar()->setValue(int(p.x()));
+    verticalScrollBar()->setValue(int(p.y()));
+}
+
+QPointF MapEditor::getScrollBarPos()
+{
+    return QPointF (horizontalScrollBar()->value(),verticalScrollBar()->value());
+    //return scrollBarPos;
+}
+
+void MapEditor::animateScrollBars()
+{
+    if (scrollBarPosAnimation.state()==QAbstractAnimation::Running)
+       scrollBarPosAnimation.stop();
+    
+    if (settings.value ("/animation/use/",true).toBool() )
+    {
+       scrollBarPosAnimation.setTargetObject (this);
+       scrollBarPosAnimation.setPropertyName ("scrollBarPos");
+       scrollBarPosAnimation.setDuration(settings.value("/animation/duration/scrollbar",2000).toInt() );
+       scrollBarPosAnimation.setEasingCurve ( QEasingCurve::OutQuint);
+       scrollBarPosAnimation.setStartValue(
+           QPointF (horizontalScrollBar()->value() ,
+                    verticalScrollBar()->value() ) );
+       scrollBarPosAnimation.setEndValue(scrollBarPosTarget);
+       scrollBarPosAnimation.start();
+    } else
+       setScrollBarPos (scrollBarPosTarget);
+}
+
+void MapEditor::setZoomFactorTarget (const qreal &zft)
+{
+    zoomFactorTarget=zft;
+    if (zoomAnimation.state()==QAbstractAnimation::Running)
+       zoomAnimation.stop();
+    if (settings.value ("/animation/use/",true).toBool() )
+    {
+       zoomAnimation.setTargetObject (this);
+       zoomAnimation.setPropertyName ("zoomFactor");
+       zoomAnimation.setDuration(settings.value("/animation/duration/zoom",2000).toInt() );
+       zoomAnimation.setEasingCurve ( QEasingCurve::OutQuint);
+       zoomAnimation.setStartValue(zoomFactor);
+       zoomAnimation.setEndValue(zft);
+       zoomAnimation.start();
+    } else
+       setZoomFactor (zft);
+}
+
+qreal MapEditor::getZoomFactorTarget()
+{
+    return zoomFactorTarget;
+}
+
+
+void MapEditor::setZoomFactor(const qreal &zf)
+{
+    zoomFactor=zf;
+    updateMatrix();
+}
+
+qreal MapEditor::getZoomFactor()
+{
+    return zoomFactor;
+}
+
+void MapEditor::setAngleTarget (const qreal &at)
+{
+    angleTarget=at;
+    if (rotationAnimation.state()==QAbstractAnimation::Running)
+       rotationAnimation.stop();
+    if (settings.value ("/animation/use/",true).toBool() )
+    {
+       rotationAnimation.setTargetObject (this);
+       rotationAnimation.setPropertyName ("angle");
+       rotationAnimation.setDuration(settings.value("/animation/duration/rotation",2000).toInt() );
+       rotationAnimation.setEasingCurve ( QEasingCurve::OutQuint);
+       rotationAnimation.setStartValue(angle);
+       rotationAnimation.setEndValue(at);
+       rotationAnimation.start();
+    } else
+       setAngle (angleTarget);
+}
+
+qreal MapEditor::getAngleTarget()
+{
+    return angleTarget;
+}
+
+
+void MapEditor::setAngle(const qreal &a)
+{
+    angle=a;
+    updateMatrix();
+}
+
+qreal MapEditor::getAngle()
+{
+    return angle;
+}
+
+void MapEditor::setViewCenterTarget (
+    const QPointF &p, 
+    const qreal &zft, 
+    const qreal &at,
+    const int duration,
+    const QEasingCurve &easingCurve)
+{
+    viewCenterTarget=p;
+    zoomFactorTarget=zft;
+    angleTarget=at;
+
+    viewCenter=mapToScene(viewport()->geometry()).boundingRect().center();
+
+    if (viewCenterAnimation.state()==QAbstractAnimation::Running)
+       viewCenterAnimation.stop();
+    if (rotationAnimation.state()==QAbstractAnimation::Running)
+       rotationAnimation.stop();
+    if (zoomAnimation.state()==QAbstractAnimation::Running)
+       zoomAnimation.stop();
+    
+    if (settings.value ("/animation/use/",true).toBool() )
+    {
+       viewCenterAnimation.setTargetObject (this);
+       viewCenterAnimation.setPropertyName ("viewCenter");
+       viewCenterAnimation.setDuration(
+           settings.value("/animation/duration/scrollbar",duration).toInt() );
+       viewCenterAnimation.setEasingCurve (easingCurve );
+       viewCenterAnimation.setStartValue( viewCenter );
+       viewCenterAnimation.setEndValue(viewCenterTarget);
+       viewCenterAnimation.start();
+
+       rotationAnimation.setTargetObject (this);
+       rotationAnimation.setPropertyName ("angle");
+       rotationAnimation.setDuration(settings.value("/animation/duration/rotation",duration).toInt() );
+       rotationAnimation.setEasingCurve ( easingCurve );
+       rotationAnimation.setStartValue(angle);
+       rotationAnimation.setEndValue(angleTarget);
+       rotationAnimation.start();
+
+       zoomAnimation.setTargetObject (this);
+       zoomAnimation.setPropertyName ("zoomFactor");
+       zoomAnimation.setDuration(settings.value("/animation/duration/zoom",duration).toInt() );
+       zoomAnimation.setEasingCurve ( easingCurve );
+       zoomAnimation.setStartValue(zoomFactor);
+       zoomAnimation.setEndValue(zoomFactorTarget);
+       zoomAnimation.start();
+
+    } else
+    {
+       setAngle (angleTarget);
+       setZoomFactor (zft);
+       setViewCenter (viewCenterTarget);
+    }
+}
+
+void MapEditor::setViewCenterTarget ()
+{
+    MapItem *selti=(MapItem*)(model->getSelectedItem() );
+    if (selti)
+    {
+       LinkableMapObj *lmo=selti->getLMO();
+       if (lmo)
+           setViewCenterTarget (lmo->getBBox().center(), 1, 0);
+    }
+}
+
+QPointF MapEditor::getViewCenterTarget ()
+{
+    return viewCenterTarget;
+}
+
+void MapEditor::setViewCenter (const QPointF &vc)
+{
+    centerOn (vc);
+}
+
+QPointF MapEditor::getViewCenter()
+{
+    return viewCenter;
+}
+
+void MapEditor::updateMatrix()
+{
+    double a    = M_PI/180 * angle;
+    double sina = sin((double)a);
+    double cosa = cos((double)a);
+
+    QMatrix zm(zoomFactor, 0, 0, zoomFactor, 0, 0);
+    //QMatrix translationMatrix(1, 0, 0, 1, 50.0, 50.0);
+    QMatrix rm(cosa, sina, -sina, cosa, 0, 0);
+    setMatrix (zm * rm);
+}
+
+void MapEditor::minimizeView()
+{
+    setSceneRect( scene()->itemsBoundingRect() );
+}
+
+void MapEditor::print()
+{
+    QRectF totalBBox=getTotalBBox();
+
+    // Try to set orientation automagically
+    // Note: Interpretation of generated postscript is amibiguous, if 
+    // there are problems with landscape mode, see
+    // http://sdb.suse.de/de/sdb/html/jsmeix_print-cups-landscape-81.html
+
+    if (totalBBox.width()>totalBBox.height())
+       // recommend landscape
+       printer->setOrientation (QPrinter::Landscape);
+    else    
+       // recommend portrait
+       printer->setOrientation (QPrinter::Portrait);
+
+    QPrintDialog dialog (printer, this);
+    dialog.setWindowTitle(tr("Print vym map","MapEditor")); 
+    if (dialog.exec() == QDialog::Accepted)
+    {
+       QPainter pp(printer);
+
+       pp.setRenderHint(QPainter::Antialiasing,true);
+
+       // Don't print the visualisation of selection
+       model->unselectAll();
+
+       QRectF mapRect=totalBBox;
+       QGraphicsRectItem *frame=NULL;
+
+       if (printFrame) 
+       {
+           // Print frame around map
+           mapRect.setRect (totalBBox.x()-10, totalBBox.y()-10, 
+               totalBBox.width()+20, totalBBox.height()+20);
+           frame=mapScene->addRect (mapRect, QPen(Qt::black),QBrush(Qt::NoBrush));
+           frame->setZValue(0);
+           frame->show();    
+       }       
+
+
+       double paperAspect = (double)printer->width()   / (double)printer->height();
+       double   mapAspect = (double)mapRect.width() / (double)mapRect.height();
+       int viewBottom;
+       if (mapAspect>=paperAspect)
+       {
+           // Fit horizontally to paper width
+           //pp.setViewport(0,0, printer->width(),(int)(printer->width()/mapAspect) ); 
+           viewBottom=(int)(printer->width()/mapAspect);   
+       }   else
+       {
+           // Fit vertically to paper height
+           //pp.setViewport(0,0,(int)(printer->height()*mapAspect),printer->height()); 
+           viewBottom=printer->height();   
+       }   
+       
+       if (printFooter) 
+       {
+           // Print footer below map
+           QFont font;     
+           font.setPointSize(10);
+           pp.setFont (font);
+           QRectF footerBox(0,viewBottom,printer->width(),15);
+           pp.drawText ( footerBox,Qt::AlignLeft,"VYM - " +model->getFileName());
+           pp.drawText ( footerBox, Qt::AlignRight, QDate::currentDate().toString(Qt::TextDate));
+       }
+       mapScene->render (
+           &pp, 
+           QRectF (0,0,printer->width(),printer->height()-15),
+           QRectF(mapRect.x(),mapRect.y(),mapRect.width(),mapRect.height())
+       );
+       
+       // Viewport has paper dimension
+       if (frame)  delete (frame);
+
+       // Restore selection
+       model->reselect();
+    }
+}
+
+QRectF MapEditor::getTotalBBox()  
+{                                  
+    minimizeView();
+    return sceneRect();
+}
+
+QImage MapEditor::getImage( QPointF &offset) 
+{
+    QRectF mapRect = getTotalBBox();   // minimized sceneRect
+    
+    int d = 10;        // border
+    offset = QPointF( mapRect.x() -d/2, mapRect.y() - d/2 );
+    QImage pix( mapRect.width() + d, mapRect.height() + d, QImage::Format_RGB32 );
+
+    QPainter pp (&pix);
+    pp.setRenderHints(renderHints());
+    mapScene->render ( &pp, 
+       // Destination:
+       QRectF( 0, 0, mapRect.width() + d, mapRect.height() + d ),   
+       // Source in scene:
+       QRectF( mapRect.x() - d/2, mapRect.y() -d/2, mapRect.width() + d, mapRect.height() + d));
+    return pix;
+}
+
+
+void MapEditor::setAntiAlias (bool b)
+{
+    setRenderHint(QPainter::Antialiasing,b);
+}
+
+void MapEditor::setSmoothPixmap(bool b)
+{
+    setRenderHint(QPainter::SmoothPixmapTransform,b);
+}
+
+void MapEditor::autoLayout()
+{
+    // Create list with all bounding polygons
+    QList <LinkableMapObj*> mapobjects;
+    QList <ConvexPolygon> polys; 
+    ConvexPolygon p;
+    QList <Vector> vectors;
+    QList <Vector> orgpos;
+    QStringList headings;   //FIXME-3 testing only
+    Vector v;
+    BranchItem *bi;
+    BranchItem *bi2;
+    BranchObj *bo;
+
+    // Outer loop: Iterate until we no more changes in orientation 
+    bool orientationChanged=true;
+    while (orientationChanged)
+    {
+       BranchItem *ri=model->getRootItem();
+       for (int i=0;i<ri->branchCount();++i)
+       {
+           bi=ri->getBranchNum (i);
+           bo=(BranchObj*)bi->getLMO();
+           if (bo)
+           {
+               mapobjects.append (bo);
+               p=bo->getBoundingPolygon();
+               p.calcCentroid();
+               polys.append(p);
+               vectors.append (QPointF(0,0));
+               orgpos.append (p.at(0));
+        headings.append (bi->getHeadingPlain());
+           }
+           for (int j=0;j<bi->branchCount();++j)
+           {
+               bi2=bi->getBranchNum (j);
+               bo=(BranchObj*)bi2->getLMO();
+               if (bo)
+               {
+                   mapobjects.append (bo);
+                   p=bo->getBoundingPolygon();
+                   p.calcCentroid();
+                   polys.append(p);
+                   vectors.append (QPointF(0,0));
+                   orgpos.append (p.at(0));
+            headings.append (bi2->getHeadingPlain());
+               }   
+           }
+       }
+
+       // Iterate moving bounding polygons until we have no more collisions
+       int collisions=1;
+       while (collisions>0)
+       {
+           collisions=0;
+           for (int i=0; i<polys.size()-1; ++i)
+           {
+               for (int j=i+1; j<polys.size();++j)
+               {
+                   if (polygonCollision (polys.at(i),polys.at(j), QPointF(0,0)).intersect )
+                   {
+                       collisions++;
+                       if (debug) qDebug() << "Collision: "<<headings[i]<<" - "<<headings[j];
+                       v=polys.at(j).centroid()-polys.at(i).centroid();
+                       v.normalize();
+                       // Add random direction, if only two polygons with identical y or x
+                       if (v.x()==0 || v.y()==0) 
+                       {
+                           Vector w (cos (double((int)rand()%1000)),sin(double((int)rand()%1000)));
+                           w.normalize();
+                           v=v+w;
+                       }
+                       
+                       // Scale translation vector by area of polygons
+                       vectors[j]=v*10000/polys.at(j).weight();        
+                       vectors[i]=v*10000/polys.at(i).weight();        
+                       vectors[i].invert();
+                       //FIXME-3 outer loop, "i" get's changed several times...
+                       // Better not move away from centroid of 2 colliding polys, 
+                       // but from centroid of _all_
+                   }  
+               }
+           }
+           for (int i=0;i<vectors.size();i++)
+           {
+               //qDebug() << " v="<<vectors[i]<<" "<<headings[i];
+               if (!vectors[i].isNull() )
+               polys[i].translate (vectors[i]);
+           }
+        // if (debug) qDebug()<< "Collisions total: "<<collisions;
+        // collisions=0;
+       }   
+
+       // Finally move the real objects and update 
+       QList <LinkableMapObj::Orientation> orients;
+       for (int i=0;i<polys.size();i++)
+       {
+           Vector v=polys[i].at(0)-orgpos[i];
+           orients.append (mapobjects[i]->getOrientation());
+           if (!v.isNull())
+           {
+               if (debug) qDebug()<<" Moving "<<polys.at(i).weight()<<" "<<mapobjects[i]->getAbsPos()<<" -> "<<mapobjects[i]->getAbsPos() + v<<"  "<<headings[i];
+               //mapobjects[i]->moveBy(v.x(),v.y() );
+               //mapobjects[i]->setRelPos();
+               model->startAnimation ((BranchObj*)mapobjects[i], v);
+               if (debug) qDebug()<<i<< " Weight: "<<polys.at(i).weight()<<" "<<v<<" "<<headings.at(i);
+           }
+       }   
+       /*
+       model->reposition();    
+       orientationChanged=false;
+       for (int i=0;i<polys.size();i++)
+           if (orients[i]!=mapobjects[i]->getOrientation())
+           {
+               orientationChanged=true;
+               break;
+           }
+       */
+    
+       break;
+
+       //orientationChanged=false;
+    } // loop if orientation has changed
+
+    model->emitSelectionChanged();
+}
+
+TreeItem* MapEditor::findMapItem (QPointF p,TreeItem *exclude)
+{
+    // Search XLinks
+    Link *link;
+    for (int i=0; i<model->xlinkCount(); i++ )
+    {
+       link=model->getXLinkNum(i);
+       if (link)
+       {
+           XLinkObj *xlo=link->getXLinkObj();
+           if (xlo && xlo->isInClickBox (p)) 
+            {
+                // Found XLink, now return the nearest XLinkItem of p
+                qreal d0=Geometry::distance(p, xlo->getBeginPos());
+                qreal d1=Geometry::distance(p, xlo->getEndPos());
+                if (d0>d1)
+                    return link->getBeginLinkItem();
+                else
+                    return link->getEndLinkItem();
+            }
+       }
+    }
+
+    // Search branches (and their childs, e.g. images
+    // Start with mapcenter, no images allowed at rootItem
+    int i=0;
+    BranchItem *bi=model->getRootItem()->getFirstBranch();
+    TreeItem *found=NULL;
+    while (bi)
+    {
+       found=bi->findMapItem (p, exclude);
+       if (found) return found;
+       i++;
+       bi=model->getRootItem()->getBranchNum(i);
+    }
+    return NULL;
+}
+
+AttributeTable* MapEditor::attributeTable()
+{
+    return attrTable;
+}
+
+void MapEditor::testFunction1()
+{
+}
+    
+void MapEditor::testFunction2()
+{
+    autoLayout();
+}
+
+#include "winter.h"
+void MapEditor::toggleWinter()
+{
+    if (winter)
+    {
+        delete winter;
+        winter=NULL;
+    } else
+    {
+        winter=new Winter (this);
+        QList <QRectF> obstacles;
+        BranchObj *bo;
+        BranchItem *cur=NULL;
+        BranchItem *prev=NULL;
+        model->nextBranch(cur,prev);
+        while (cur) 
+        {
+            if (!cur->hasHiddenExportParent())
+            {
+                // Branches
+                bo=(BranchObj*)(cur->getLMO());
+                if (bo && bo->isVisibleObj())
+                    obstacles.append(bo->getBBox());
+            }
+            model->nextBranch(cur,prev);
+        }
+        winter->setObstacles(obstacles);
+    }
+}
+    
+BranchItem* MapEditor::getBranchDirectAbove (BranchItem *bi)
+{
+    if (bi)
+    {
+       int i=bi->num();
+       if (i>0) return bi->parent()->getBranchNum(i-1);
+    }
+    return NULL;
+}
+
+BranchItem* MapEditor::getBranchAbove (BranchItem *selbi)
+{
+    if (selbi)
+    {
+       int dz=selbi->depth();  // original depth
+       bool invert=false;
+       if (selbi->getLMO()->getOrientation()==LinkableMapObj::LeftOfCenter)
+           invert=true;
+
+       BranchItem *bi;
+
+       // Look for branch with same parent but directly above
+       if (dz==1 && invert)
+           bi=getBranchDirectBelow(selbi);
+       else
+           bi=getBranchDirectAbove (selbi);
+
+       if (bi) 
+           // direct predecessor
+           return bi;
+
+       // Go towards center and look for predecessor
+       while (selbi->depth()>0)
+       {
+           selbi=(BranchItem*)(selbi->parent());
+           if (selbi->depth()==1 && invert)
+               bi=getBranchDirectBelow (selbi);
+           else
+               bi=getBranchDirectAbove (selbi);
+           if (bi)
+           {
+               // turn 
+               selbi=bi;
+               while (selbi->depth()<dz)
+               {
+                   // try to get back to original depth dz
+                   bi=selbi->getLastBranch();
+                   if (!bi) 
+                   {
+                       return selbi;
+                   }
+                   selbi=bi;
+               }
+               return selbi;
+           }
+       }
+    }
+    return NULL;
+}
+
+BranchItem* MapEditor::getBranchDirectBelow(BranchItem *bi)
+{
+    if (bi)
+    {
+       int i=bi->num();
+       if (i+1<bi->parent()->branchCount()) return bi->parent()->getBranchNum(i+1);
+    }
+    return NULL;
+}
+
+BranchItem* MapEditor::getBranchBelow (BranchItem *selbi)
+{
+    if (selbi)
+    {
+       BranchItem *bi;
+       int dz=selbi->depth();  // original depth
+       bool invert=false;
+       if (selbi->getLMO()->getOrientation()==LinkableMapObj::LeftOfCenter)
+           invert=true;
+
+
+       // Look for branch with same parent but directly below
+       if (dz==1 && invert)
+           bi=getBranchDirectAbove (selbi);
+       else
+           bi=getBranchDirectBelow (selbi);
+       if (bi) 
+           // direct successor
+           return bi;
+
+
+       // Go towards center and look for neighbour
+       while (selbi->depth()>0)
+       {
+           selbi=(BranchItem*)(selbi->parent());
+           if (selbi->depth()==1 && invert)
+               bi=getBranchDirectAbove (selbi);
+           else
+               bi=getBranchDirectBelow (selbi);
+           if (bi)
+           {
+               // turn 
+               selbi=bi;
+               while (selbi->depth()<dz)
+               {
+                   // try to get back to original depth dz
+                   bi=selbi->getFirstBranch();
+                   if (!bi) 
+                   {
+                       return selbi;
+                   }
+                   selbi=bi;
+               }
+               return selbi;
+           }
+       }
+    }
+    return NULL;
+}
+
+BranchItem* MapEditor::getLeftBranch (BranchItem *bi)  
+{
+    if (bi)
+    {
+       if (bi->depth()==0)
+       { 
+           // Special case: use alternative selection index
+           BranchItem *newbi=bi->getLastSelectedBranchAlt();  
+           if (!newbi)
+           {
+               BranchObj *bo;
+               // Try to find a mainbranch left of center
+               for (int i=0; i<bi->branchCount(); i++)
+               {
+                   newbi=bi->getBranchNum(i);
+                   bo=newbi->getBranchObj();
+                   if (bo && bo->getOrientation()==LinkableMapObj::LeftOfCenter)
+                       break;
+               }
+           }
+           return newbi;
+       }
+       if (bi->getBranchObj()->getOrientation()==LinkableMapObj::RightOfCenter)    
+           // right of center
+           return (BranchItem*)(bi->parent());
+       else
+           // left of center
+           if (bi->getType()== TreeItem::Branch )
+               return bi->getLastSelectedBranch();
+    }
+    return NULL;
+}
+
+BranchItem* MapEditor::getRightBranch(BranchItem *bi)
+{
+    if (bi)
+    {
+       if (bi->depth()==0)
+       {
+           // Special case: use alternative selection index
+           BranchItem *newbi=bi->getLastSelectedBranch();  
+           if (!newbi)
+           {
+               BranchObj *bo;
+               // Try to find a mainbranch right of center
+               for (int i=0; i<bi->branchCount(); i++)
+               {
+                   newbi=bi->getBranchNum(i);
+                   bo=newbi->getBranchObj();
+                   if (bo && bo->getOrientation()==LinkableMapObj::RightOfCenter)
+            qDebug()<<"BI found right: "<<newbi->getHeadingPlain();
+               }
+           }
+           return newbi;
+       }
+       if (bi->getBranchObj()->getOrientation()==LinkableMapObj::LeftOfCenter) 
+           // left of center
+           return (BranchItem*)(bi->parent());
+       else
+           // right of center
+           if (bi->getType()== TreeItem::Branch )
+               return (BranchItem*)bi->getLastSelectedBranch();
+    }
+    return NULL;
+}
+
+
+
+void MapEditor::cursorUp()
+{
+    if (state == MapEditor::EditingHeading) return;
+
+    BranchItem *bi=model->getSelectedBranch();
+    if (bi) model->select (getBranchAbove(bi));
+}
+
+void MapEditor::cursorDown()   
+
+{
+    if (state == MapEditor::EditingHeading) return;
+
+    BranchItem *bi=model->getSelectedBranch();
+    if (bi) model->select (getBranchBelow(bi));
+}
+
+void MapEditor::cursorLeft()
+{
+    BranchItem *bi=getLeftBranch (model->getSelectedBranch());
+    if (bi) model->select (bi);
+}
+
+void MapEditor::cursorRight()  
+{
+    BranchItem *bi=getRightBranch (model->getSelectedBranch());
+    if (bi) model->select (bi);
+}
+
+void MapEditor::cursorFirst()  
+{
+    model->selectFirstBranch();
+}
+
+void MapEditor::cursorLast()   
+{
+    model->selectLastBranch();
+}
+
+
+void MapEditor::editHeading()
+{
+    if (state==EditingHeading)
+    {
+        editHeadingFinished();
+        return;
+    }
+
+    BranchObj *bo=model->getSelectedBranchObj();
+    BranchItem *bi=model->getSelectedBranch();
+    if (bo && bo)
+    {
+        VymText heading = bi->getHeading();
+        if (heading.isRichText())
+        {
+            mainWindow->windowShowHeadingEditor();
+            return;
+        }
+        model->setSelectionBlocked(true);
+
+        lineEdit=new QLineEdit;
+        QGraphicsProxyWidget *pw=mapScene->addWidget (lineEdit);
+        pw->setZValue (Z_LINEEDIT);
+        lineEdit->setCursor(Qt::IBeamCursor);
+        lineEdit->setCursorPosition(1);
+
+        QPointF tl=bo->getOrnamentsBBox().topLeft();
+        QPointF br=tl + QPointF (230,30);
+        QRectF r (tl, br);
+        lineEdit->setGeometry(r.toRect() );
+
+        setScrollBarPosTarget ( r );
+        scene()->update();
+
+        // Set focus to MapEditor first
+        // To avoid problems with Cursor up/down
+        setFocus();
+
+        animateScrollBars();
+        lineEdit->setText (heading.getTextASCII() );
+        lineEdit->setFocus();
+        lineEdit->selectAll(); // Hack to enable cursor in lineEdit
+        lineEdit->deselect();  // probably a Qt bug...
+        setState (EditingHeading);
+    }
+}
+
+void MapEditor::editHeadingFinished()
+{
+    setState (Neutral);
+    //lineEdit->releaseKeyboard();
+    lineEdit->clearFocus();
+    QString s=lineEdit->text();
+    s.replace (QRegExp ("\\n")," ");   // Don't paste newline chars
+    model->setHeadingPlainText (s);
+    model->setSelectionBlocked(false);
+    delete (lineEdit);
+    lineEdit=NULL;
+
+    animateScrollBars();
+
+    // Maybe reselect previous branch 
+    mainWindow->editHeadingFinished (model);
+
+    //Autolayout to avoid overlapping branches with longer headings
+    if (settings.value("/mainwindow/autoLayout/use","true")=="true")
+       autoLayout();
+}
+
+
+void MapEditor::contextMenuEvent ( QContextMenuEvent * e )
+{
+    // Lineedits are already closed by preceding
+    // mouseEvent, we don't need to close here.
+
+    QPointF p = mapToScene(e->pos());
+    TreeItem *ti=findMapItem (p, NULL);        
+    
+    if (ti) 
+    {  // MapObj was found
+       model->select (ti);
+
+       LinkableMapObj* lmo=NULL;
+       BranchItem* selbi=model->getSelectedBranch();
+       if (ti) lmo=((MapItem*)ti)->getLMO();
+
+       // Context Menu 
+       if (lmo && selbi )
+       {
+           QString foname=((BranchObj*)lmo)->getSystemFlagName(p);
+           if (foname.startsWith ("system-task")) 
+               taskContextMenu->popup (e->globalPos() );
+           else        
+               // Context Menu on branch or mapcenter
+               branchContextMenu->popup(e->globalPos() );
+       } else
+       {
+           if (model->getSelectedImage() )
+           {
+               // Context Menu on floatimage
+               floatimageContextMenu->popup(e->globalPos() );
+           } else
+           {
+               if (model->getSelectedXLink() )
+                   // Context Menu on XLink
+                   model->editXLink();
+           }
+       }   
+    } else 
+    { // No MapObj found, we are on the Canvas itself
+       // Context Menu on scene
+       
+       // Open context menu synchronously to position new mapcenter
+       model->setContextPos (p);
+       canvasContextMenu->exec(e->globalPos() );
+       model->unsetContextPos ();
+    } 
+    e->accept();
+}
+
+void MapEditor::keyPressEvent(QKeyEvent* e)
+{
+    if (e->key()==Qt::Key_PageUp || e->key()==Qt::Key_PageDown)
+       // Ignore PageUP/Down to avoid scrolling with keys
+       return;
+
+    if (e->modifiers() & Qt::ShiftModifier)
+    {
+       switch (mainWindow->getModMode())
+       {
+           case Main::ModModeColor: 
+               setCursor (PickColorCursor);
+               break;
+           case Main::ModModeCopy: 
+               setCursor (CopyCursor);
+               break;
+           case Main::ModModeXLink: 
+               setCursor (XLinkCursor);
+               break;
+           default :
+               setCursor (Qt::ArrowCursor);
+               break;
+       } 
+    }  
+    QGraphicsView::keyPressEvent(e); 
+}
+
+void MapEditor::keyReleaseEvent(QKeyEvent* e)
+{
+    if (!(e->modifiers() & Qt::ControlModifier))
+       setCursor (Qt::ArrowCursor);
+}
+
+void MapEditor::mousePressEvent(QMouseEvent* e)        
+{
+    // Ignore right clicks or wile editing heading
+    if (e->button() == Qt::RightButton || model->isSelectionBlocked() )
+    {
+       e->ignore();
+       QGraphicsView::mousePressEvent(e);
+       return;
+    }
+
+    // Check if we need to reset zoomFactor
+    if (e->button() == Qt::MidButton && e->modifiers() & Qt::ControlModifier )
+    {
+       setZoomFactorTarget (1);
+       setAngleTarget (0);
+       return;
+    }
+
+    QPointF p = mapToScene(e->pos());
+    TreeItem *ti=findMapItem (p, NULL);
+    LinkableMapObj* lmo=NULL;
+    if (ti) lmo=((MapItem*)ti)->getLMO();
+
+    QString sysFlagName;
+    if (lmo) sysFlagName=((BranchObj*)lmo)->getSystemFlagName(p);
+    
+    /*
+    qDebug() << "ME::mouse pressed\n";
+    qDebug() << "  lmo="<<lmo;
+    qDebug() << "   ti="<<ti;
+    if (ti) qDebug() << "   ti="<<ti->getHeading();
+    qDebug() << " flag="<<sysFlagName;
+    */
+    
+    // Check PickColor modifier (before selecting object!) 
+    if (ti && (e->modifiers() & Qt::ShiftModifier) &&
+       mainWindow->getModMode()==Main::ModModeColor)
+    {
+       setState (PickingColor);
+       mainWindow->setCurrentColor (ti->getHeadingColor() );
+       if ((e->modifiers() & Qt::ShiftModifier) && (e->modifiers() & Qt::ControlModifier) )
+           model->colorBranch(ti->getHeadingColor());
+       else    
+           model->colorSubtree(ti->getHeadingColor());
+       return;
+    }  
+
+    // Check vymlink  modifier (before selecting object!) 
+    if (ti && sysFlagName=="system-vymLink")
+    {
+        model->select(ti);
+        if (e->modifiers() & Qt::ControlModifier)
+            mainWindow->editOpenVymLink(true);
+        else
+            mainWindow->editOpenVymLink(false);
+        return;
+    }
+    
+    // Select the clicked object 
+    if (ti && e->modifiers() & Qt::ControlModifier)
+       model->selectToggle (ti);
+    else
+       model->select (ti);
+
+    e->accept();
+
+    //Take care of  remaining system flags _or_ modifier modes
+    if (lmo )
+    {
+       if (!sysFlagName.isEmpty())
+       {
+           // systemFlag clicked
+           if (sysFlagName.contains("system-url")) 
+           {
+               if (e->modifiers() & Qt::ControlModifier)
+                   mainWindow->editOpenURLTab();
+               else    
+                   mainWindow->editOpenURL();
+           }   
+           else if (sysFlagName=="system-vymLink")
+           {
+               if (e->modifiers() & Qt::ControlModifier)
+                   mainWindow->editOpenVymLink(true);
+                else
+                   mainWindow->editOpenVymLink(false);
+               // tabWidget may change, better return now
+               // before segfaulting...
+           } else if (sysFlagName=="system-note")      
+               mainWindow->windowToggleNoteEditor();
+           else if (sysFlagName=="hideInExport")           
+               model->toggleHideExport();
+           else if (sysFlagName.startsWith("system-task-") )
+               model->cycleTaskStatus();
+           return; 
+       } else
+       {
+           // Take care of xLink: Open context menu with targets
+           // if clicked near to begin of xlink
+           if (ti->xlinkCount()>0 && ti->getType() != TreeItem::MapCenter && lmo->getBBox().width()>30)
+           {
+               if ((lmo->getOrientation()!=LinkableMapObj::RightOfCenter && p.x() < lmo->getBBox().left()+10)  ||
+                   (lmo->getOrientation()!=LinkableMapObj::LeftOfCenter && p.x() > lmo->getBBox().right()-10) ) 
+               {
+                   //FIXME-4 similar code in mainwindow::updateActions
+                   QMenu menu;
+                   QList <QAction*> alist;
+                   QList <BranchItem*> blist;
+                   for (int i=0;i<ti->xlinkCount();i++)
+                   {
+                       XLinkItem *xli=ti->getXLinkItemNum(i);
+                       BranchItem *bit=xli->getPartnerBranch();
+                       if (bit) alist.append (new QAction(ti->getXLinkItemNum(i)->getPartnerBranch()->getHeadingPlain(),&menu));
+                   }   
+                   menu.addActions (alist);    
+                   QAction *ra=menu.exec (e->globalPos() );
+                   if (ra)
+                       model->select (blist.at( alist.indexOf(ra)));
+                   while (!alist.isEmpty())
+                   {
+                       QAction *a=alist.takeFirst();
+                       delete a;
+                   }   
+                   return;
+               }   
+           }
+       }
+    }  
+
+    // XLink modifier, create new XLink 
+    BranchItem* selbi = model->getSelectedBranch();
+    if (selbi &&
+        mainWindow->getModMode()==Main::ModModeXLink &&
+        (e->modifiers() & Qt::ShiftModifier))
+    {   
+       setState (DrawingLink);
+       tmpLink=new Link (model);
+       tmpLink->setBeginBranch (selbi);
+       tmpLink->createMapObj();
+        tmpLink->setStyleBegin("None");
+        tmpLink->setStyleEnd("None");
+       tmpLink->setEndPoint ( mapToScene (e->pos() ) );
+       tmpLink->updateLink();
+       return;
+    }
+
+    // Start moving around
+    if (lmo) 
+    {  
+       // Left Button      Move Branches
+       if (e->button() == Qt::LeftButton )
+       {
+           // No system flag clicked, take care of moving copymodes or simply moving
+           movingObj_offset.setX( p.x() - lmo->x() );  
+           movingObj_offset.setY( p.y() - lmo->y() );  
+           movingObj_orgPos.setX (lmo->x() );
+           movingObj_orgPos.setY (lmo->y() );
+           if (ti->depth()>0)
+           {
+               lmo->setRelPos();   
+               movingObj_orgRelPos=lmo->getRelPos();
+           }
+
+           // If modMode==copy, then we want to "move" the _new_ object around
+           // then we need the offset from p to the _old_ selection, because of tmp
+           if (mainWindow->getModMode()==Main::ModModeCopy &&
+               e->modifiers() & Qt::ShiftModifier)
+           {
+               if (selbi)
+               {
+                   setState (CopyingObject);
+                   model->copy();
+                   model->paste();
+                   model->select (selbi->getLastBranch());
+                   model->reposition();
+               }
+           } else
+               setState (MovingObject);
+
+           movingObj=model->getSelectedLMO();  
+       } else
+           // Middle Button    Toggle Scroll
+           // (On Mac OS X this won't work, but we still have 
+           // a button in the toolbar)
+           if (e->button() == Qt::MidButton )
+               model->toggleScroll();
+    } else 
+    {  // No lmo found, check XLinks
+       if (ti)
+       {
+           if (ti->getType()==TreeItem::XLink)
+           {
+               XLinkObj* xlo=(XLinkObj*) ((MapItem*)ti)->getMO() ;
+               if (xlo)
+               {
+                   setState (EditingLink);
+                   int i=xlo->ctrlPointInClickBox(p);
+                   if (i>=0) xlo->setSelection (i);
+                    movingObj_offset.setX( p.x() - xlo->x() ); 
+                    movingObj_offset.setY( p.y() - xlo->y() ); 
+                    movingObj_orgPos.setX (xlo->x() );
+                    movingObj_orgPos.setY (xlo->y() );
+
+               }
+           }
+       }
+       else    
+       { // No MapObj found, we are on the scene itself
+           // Left Button          move Pos of sceneView
+           if (e->button() == Qt::LeftButton )
+           {
+               setState (MovingView);
+               movingObj=NULL; // move Content not Obj
+               movingObj_offset=e->globalPos();
+               movingCont_start=QPointF (
+                   horizontalScrollBar()->value(),
+                   verticalScrollBar()->value());
+               movingVec=QPointF(0,0);
+               setCursor(HandOpenCursor);
+           } 
+       } 
+    }
+}
+
+void MapEditor::mouseMoveEvent(QMouseEvent* e)  
+{
+    // Show mouse position for debugging in statusBar
+    if (debug && e->modifiers() & Qt::ControlModifier )
+       mainWindow->statusMessage(
+            QString("ME::mousePressEvent  Scene: %1  widget: %2").
+            arg(qpointFToString(mapToScene (e->pos()))).
+            arg(qpointFToString(e->pos())));
+
+    TreeItem *seli=model->getSelectedItem();
+
+    MapObj* mosel=NULL;    
+    if (seli )
+       mosel=((MapItem*)seli)->getMO();
+
+    // Move the selected MapObj
+    if ( mosel && (state==MovingObject || state==CopyingObject || state==EditingLink)) 
+    {  
+       int margin=50;
+
+       // Check if we have to scroll
+       vPan.setX(0);
+       vPan.setY(0);
+       if (e->y() >=0 && e->y() <= margin)
+           vPan.setY( e->y() - margin );
+       else if ( e->y() <= height() && e->y() > height()-margin )
+           vPan.setY(e->y() - height() + margin );
+       if ( e->x() >=0 && e->x() <= margin)
+           vPan.setX( e->x() - margin );
+       else if ( e->x() <= width() && e->x() > width()-margin )
+           vPan.setX(e->x() - width() + margin );
+
+       pointerPos=e->pos();
+       pointerMod=e->modifiers();
+       moveObject ();
+    } // selection && moving_obj
+       
+    // Draw a link from one branch to another
+    if (state==DrawingLink)
+    {
+       tmpLink->setEndPoint ( mapToScene (e->pos() ) );
+       tmpLink->updateLink();
+    }   
+    
+    // Move sceneView 
+    if (state==MovingView && e->buttons() == Qt::LeftButton ) 
+    {
+       QPointF p=e->globalPos();
+       movingVec.setX(-p.x() + movingObj_offset.x() );
+       movingVec.setY(-p.y() + movingObj_offset.y() );
+       horizontalScrollBar()->setSliderPosition((int)( movingCont_start.x()+movingVec.x() ));
+       verticalScrollBar()->setSliderPosition((int)( movingCont_start.y()+movingVec.y() ) );
+       scrollBarPosAnimation.stop();   // Avoid flickering
+    }
+}
+
+void MapEditor::moveObject ()  
+{
+    if (!panningTimer->isActive() )
+       panningTimer->start(50);
+
+    QPointF p = mapToScene(pointerPos);
+    TreeItem *seli=model->getSelectedItem();
+    LinkableMapObj* lmosel=NULL;    
+    if (seli)
+       lmosel=((MapItem*)seli)->getLMO();
+
+    objectMoved=true;
+    // reset cursor if we are moving and don't copy
+    if (mainWindow->getModMode()!=Main::ModModeCopy)
+       setCursor (Qt::ArrowCursor);
+
+    // Check if we could link 
+    TreeItem *ti=findMapItem (p, seli);
+    BranchItem *dsti=NULL;
+    LinkableMapObj* dst=NULL;
+    if (ti && ti!=seli && ti->isBranchLikeType())
+    {
+       dsti=(BranchItem*)ti;
+       dst=dsti->getLMO(); 
+    } else
+       dsti=NULL;
+    
+    if (lmosel)
+    {
+       if (seli->getType()==TreeItem::Image)
+       {
+           FloatImageObj *fio=(FloatImageObj*)lmosel;
+           fio->moveCenter   (p.x() - movingObj_offset.x(), p.y() - movingObj_offset.y() );    
+           fio->setRelPos();
+           fio->updateLinkGeometry(); //no need for reposition, if we update link here
+            model->emitSelectionChanged();  // position has changed
+
+           // Relink float to new mapcenter or branch, if shift is pressed 
+           // Only relink, if selection really has a new parent
+           if ( pointerMod==Qt::ShiftModifier && dsti &&  dsti != seli->parent()  )
+           {
+               // Also save the move which was done so far
+               QString pold=qpointFToString(movingObj_orgRelPos);
+               QString pnow=qpointFToString(fio->getRelPos());
+               model->saveState(
+                   seli,
+                   "moveRel "+pold,
+                   seli,
+                   "moveRel "+pnow,
+                   QString("Move %1 to relative position %2").arg(model->getObjectName(lmosel)).arg(pnow));
+               model->reposition();
+
+               model->relinkImage ((ImageItem*) seli,dsti);
+               model->select (seli);
+           }
+       } else  if (seli->isBranchLikeType() )
+       {   // selection != a FloatObj  
+           if (seli->depth()==0)       
+           {
+               // Move mapcenter
+               lmosel->move   (p-movingObj_offset);    
+               if (pointerMod==Qt::ShiftModifier) 
+               {
+                   // Move only mapcenter, leave its children where they are
+                   QPointF v;
+                   v=lmosel->getAbsPos();
+                   for (int i=0; i<seli->branchCount(); ++i)
+                   {
+                       seli->getBranchObjNum(i)->setRelPos();
+                       seli->getBranchObjNum(i)->setOrientation();
+                   }
+               } 
+           } else
+           {   
+               if (seli->depth()==1)
+               {
+                   // Move mainbranch
+                   if (!lmosel->hasParObjTmp())
+                       lmosel->move(p-movingObj_offset);       
+                   lmosel->setRelPos();
+               } else
+               {
+                   // d>1, move ordinary branch
+                   if (lmosel->getOrientation() == LinkableMapObj::LeftOfCenter)
+                       // Add width of bbox here, otherwise alignRelTo will cause jumping around
+                       lmosel->move(
+                           p.x()  - movingObj_offset.x(), 
+                           p.y()  - movingObj_offset.y() + lmosel->getTopPad() );          
+                   else    
+                       lmosel->move(p.x() - movingObj_offset.x(), p.y() - movingObj_offset.y() - lmosel->getTopPad());
+                    BranchItem *selbi = ((BranchItem*)seli);
+                    if ( selbi->parentBranch()->getChildrenLayout() == BranchItem::FreePositioning) lmosel->setRelPos();
+               } 
+
+           } // depth>0
+
+           // Maybe we can relink temporary?
+           if (dsti)
+           {
+               if (pointerMod==Qt::ControlModifier)
+               {
+                   // Special case: CTRL to link below dst
+                   lmosel->setParObjTmp (dst,p,+1);
+               } else if (pointerMod==Qt::ShiftModifier)
+                   lmosel->setParObjTmp (dst,p,-1);
+               else
+                   lmosel->setParObjTmp (dst,p,0);
+           } else  
+               lmosel->unsetParObjTmp();
+
+           // reposition subbranch
+           lmosel->reposition();
+
+           QItemSelection sel=model->getSelectionModel()->selection();
+           updateSelection(sel,sel);   // position has changed
+
+            // In winter mode shake snow from heading
+            if (winter) model->emitDataChanged(seli);
+       } // Moving branchLikeType 
+    } // End of lmosel!=NULL
+    else if (seli && seli->getType()==TreeItem::XLink)
+    {
+       // Move XLink control point
+       MapObj* mosel=((MapItem*)seli)->getMO();
+       if (mosel) 
+       {
+           mosel->move( p-movingObj_offset );  // FIXME-3 Missing savestate 
+            model->setChanged();
+           model->emitSelectionChanged();
+       }
+    } else
+       qWarning("ME::moveObject  Huh? I'm confused.");
+
+    scene()->update();
+
+    return;
+}
+
+void MapEditor::mouseReleaseEvent(QMouseEvent* e)
+{
+    QPointF p = mapToScene(e->pos());
+    TreeItem *seli=model->getSelectedItem();
+
+    TreeItem *dsti=NULL;
+    if (seli) dsti=findMapItem(p, seli);
+    LinkableMapObj* dst=NULL;
+    BranchItem *selbi=model->getSelectedBranch();
+    if (dsti && dsti->isBranchLikeType ()) 
+       dst=((MapItem*)dsti)->getLMO(); 
+    else
+       dsti=NULL;
+
+
+    // Have we been picking color?
+    if (state==PickingColor)
+    {
+       setCursor (Qt::ArrowCursor);
+       // Check if we are over another branch
+       if (dst) 
+       {   
+           if (e->modifiers() & Qt::ShiftModifier)
+               model->colorBranch (mainWindow->getCurrentColor());
+           else    
+               model->colorSubtree (mainWindow->getCurrentColor());
+       } 
+       setState (Neutral);
+       return;
+    }
+
+    // Have we been drawing a link?
+    if (state==DrawingLink)    
+    {
+       setState (Neutral);
+       // Check if we are over another branch
+       if (dsti)
+       {   
+           tmpLink->setEndBranch ( ((BranchItem*)dsti) );
+            tmpLink->activate();
+           tmpLink->updateLink();
+           if (model->createLink (tmpLink) )
+           {
+               model->saveState(       
+                   tmpLink->getBeginLinkItem(),"delete ()",
+                   seli,QString("addXLink (\"%1\",\"%2\",%3,\"%4\")")
+                       .arg(model->getSelectString(tmpLink->getBeginBranch()))
+                       .arg(model->getSelectString(tmpLink->getEndBranch()))
+                       .arg(tmpLink->getPen().width())
+                       .arg(tmpLink->getPen().color().name()),
+                   QString("Adding Link from %1 to %2").arg(model->getObjectName(seli)).arg(model->getObjectName (dsti)));     
+               return;
+           }
+       } 
+       delete (tmpLink);
+       tmpLink=NULL;
+       return;
+    }
+    
+    // Have we been moving something?
+    if ( seli && state==MovingObject) 
+    {  
+       panningTimer->stop();
+       if (seli->getType()==TreeItem::Image)
+       {
+           FloatImageObj *fio=(FloatImageObj*)( ((MapItem*)seli)->getLMO());
+           if(fio)
+           {
+               // Moved Image, we need to reposition
+               QString pold=qpointFToString(movingObj_orgRelPos);
+               QString pnow=qpointFToString(fio->getRelPos());
+               model->saveState(
+                   seli,
+                   "moveRel " + pold,
+                   seli,
+                   "moveRel " + pnow,
+                   QString("Move %1 to relative position %2").arg(model->getObjectName(seli)).arg(pnow));
+
+                model->emitDataChanged(seli->parent()); // Parent of image has changed
+               model->reposition();
+           }   
+       }
+
+       if (selbi && selbi->depth()==0)
+       {   
+            if (movingObj_orgPos != selbi->getBranchObj()->getAbsPos())        
+            {
+                QString pold=qpointFToString(movingObj_orgPos);
+                QString pnow=qpointFToString(selbi->getBranchObj()->getAbsPos());      
+
+                model->saveState(
+                    selbi,
+                    "move "+pold,
+                    selbi,
+                    "move "+pnow,
+                    QString("Move mapcenter %1 to position %2").arg(model->getObjectName(selbi)).arg(pnow));
+            }
+       }
+    
+       if (seli->isBranchLikeType() ) //(seli->getType() == TreeItem::Branch )
+       {   // A branch was moved
+           LinkableMapObj* lmosel=NULL;        
+           lmosel=((MapItem*)seli)->getLMO();
+               
+           // save the position in case we link to mapcenter
+           QPointF savePos=QPointF (lmosel->getAbsPos()  );
+
+           // Reset the temporary drawn link to the original one
+           lmosel->unsetParObjTmp();
+
+           // For Redo we may need to save original selection
+           QString preSelStr=model->getSelectString(seli);
+
+           if (dsti && objectMoved)
+           {
+               // We have a destination, relink to that
+               BranchObj* selbo=model->getSelectedBranchObj();
+
+               QString preParStr=model->getSelectString (seli->parent() );
+               QString preNum=QString::number (seli->num(),10);
+               QString preDstParStr;
+
+               if (e->modifiers() & Qt::ShiftModifier && dsti->parent() )
+               {   // Link above dst   
+                   preDstParStr=model->getSelectString (dsti->parent() );
+                   model->relinkBranch (
+                       (BranchItem*)seli,
+                       (BranchItem*)dsti->parent(),
+                       ((BranchItem*)dsti)->num(),
+                       true);
+               } else 
+               if (e->modifiers() & Qt::ControlModifier && dsti->parent() )
+               {
+                   // Link below dst   
+                   preDstParStr=model->getSelectString (dsti->parent() );
+                   model->relinkBranch (
+                       (BranchItem*)seli,
+                       (BranchItem*)dsti->parent(),
+                       ((BranchItem*)dsti)->num()+1,
+                       true);
+               } else  
+               {   // Append to dst
+                   preDstParStr=model->getSelectString(dsti);
+                   model->relinkBranch (
+                       (BranchItem*)seli,
+                       (BranchItem*)dsti,
+                       -1,
+                       true,
+                       movingObj_orgPos);
+                   if (dsti->depth()==0) selbo->move (savePos);
+               } 
+           } else
+           {
+               // No destination, undo  temporary move 
+
+               if (seli->depth()==1)
+               {
+                   // The select string might be different _after_ moving around.
+                   // Therefor reposition and then use string of old selection, too
+                   model->reposition();
+
+                    QPointF rp(lmosel->getRelPos());
+                    if (rp != movingObj_orgRelPos)
+                    {
+                        QString ps=qpointFToString(rp);
+                        model->saveState(
+                            model->getSelectString(lmosel), "moveRel "+qpointFToString(movingObj_orgRelPos), 
+                            preSelStr, "moveRel "+ps, 
+                            QString("Move %1 to relative position %2").arg(model->getObjectName(lmosel)).arg(ps));
+                    }
+               }
+
+        if (selbi->parentBranch()->getChildrenLayout() == BranchItem::FreePositioning)
+        {
+            lmosel->setRelPos();
+            model->reposition();
+        }else
+        {
+
+
+            // Draw the original link, before selection was moved around
+            if (settings.value("/animation/use",true).toBool()
+                    && seli->depth()>1
+                    //             && distance (lmosel->getRelPos(),movingObj_orgRelPos)<3
+                    )
+            {
+                lmosel->setRelPos();    // calc relPos first for starting point
+
+                model->startAnimation(
+                            (BranchObj*)lmosel,
+                            lmosel->getRelPos(),
+                            movingObj_orgRelPos
+                            );
+            } else
+                model->reposition();
+        }
+        }
+    }
+       // Finally resize scene, if needed
+       scene()->update();
+       movingObj=NULL;     
+       objectMoved=false;
+       vPan=QPoint ();
+    } else 
+       // maybe we moved View: set old cursor
+       setCursor (Qt::ArrowCursor);
+
+    if (state!=EditingHeading) setState (Neutral);   // Continue editing after double click!
+
+    QGraphicsView::mouseReleaseEvent(e);
+}
+
+void MapEditor::mouseDoubleClickEvent(QMouseEvent* e)
+{
+    if (e->button() == Qt::LeftButton )
+    {
+       QPointF p = mapToScene(e->pos());
+       TreeItem *ti=findMapItem (p, NULL);
+       LinkableMapObj *lmo;
+       if (ti) 
+       {   
+            if (state==EditingHeading) editHeadingFinished();
+           model->select (ti);
+           BranchItem* selbi=model->getSelectedBranch();
+           if (selbi)
+           {
+               lmo=((MapItem*)ti)->getLMO();
+               QString foname=((BranchObj*)lmo)->getSystemFlagName(p);
+               if (!foname.isEmpty()) return;  // Don't edit heading when double clicking system flag
+
+           }
+           e->accept();
+           editHeading();
+       }
+    }
+}
+
+void MapEditor::wheelEvent(QWheelEvent* e)
+{
+    if (e->modifiers() & Qt::ControlModifier && e->orientation()==Qt::Vertical)
+    {
+       if (e->delta()>0)
+           setZoomFactorTarget (zoomFactorTarget*1.15);
+       else    
+           setZoomFactorTarget (zoomFactorTarget*0.85);
+    } else     
+    {
+       scrollBarPosAnimation.stop();
+       QGraphicsView::wheelEvent (e);
+    }
+}
+
+void MapEditor::focusOutEvent (QFocusEvent*)
+{
+    //qDebug()<<"ME::focusOutEvent"<<e->reason();
+    if (state==EditingHeading) editHeadingFinished();
+}
+
+void MapEditor::resizeEvent (QResizeEvent* e)
+{
+    QGraphicsView::resizeEvent( e );
+}
+
+void MapEditor::dragEnterEvent(QDragEnterEvent *event)
+{
+    //for (unsigned int i=0;event->format(i);i++) // Debug mime type
+    // cerr << event->format(i) << endl;
+
+    if (event->mimeData()->hasImage())
+       event->acceptProposedAction();
+    else    
+       if (event->mimeData()->hasUrls())
+           event->acceptProposedAction();
+}
+
+void MapEditor::dragMoveEvent(QDragMoveEvent *)
+{
+}
+
+void MapEditor::dragLeaveEvent(QDragLeaveEvent *event)
+{
+    event->accept();
+}
+
+void MapEditor::dropEvent(QDropEvent *event)
+{
+    BranchItem *selbi=model->getSelectedBranch();
+    if (selbi)
+    {
+        if (debug)
+        {
+            foreach (QString format,event->mimeData()->formats())
+                qDebug()<< "MapEditor: Dropped format: "<<qPrintable (format);
+            foreach (QUrl url,event->mimeData()->urls())
+            {
+                qDebug()<< "  URL-path:" <<url.path();
+                qDebug()<< "URL-string:" <<url.toString();
+                qDebug()<< "       enc:" <<url.toEncoded();
+                qDebug()<< "     valid:" <<url.isValid();
+            }
+            qDebug()    << "============== mimeData ===================";
+            qDebug()    << "has-img : " << event->mimeData()->hasImage();
+            qDebug()    << "has-urls: " << event->mimeData()->hasUrls();
+            qDebug()    << "    text: " << event->mimeData()->text();
+            qDebug()    << "===========================================";
+        }
+
+        if (event->mimeData()->hasUrls())
+        {
+            // Try text representation first, which works on windows, but in 
+            // Linux only for https, not local images
+            QString url = event->mimeData()->text();
+            if (url.isEmpty() )
+            {
+                QByteArray ba = event->mimeData()->urls().first().path().toLatin1();
+                QByteArray ba2;
+                for (int i = 0; i < ba.count(); i++)
+                    if (ba.at(i) != 0) ba2.append(ba.at(i));
+                url = ba2;
+            }
+
+
+            BranchItem *bi = NULL;
+            // Workaround to avoid adding empty branches
+            if (!url.isEmpty())
+            {
+                if (url.startsWith("file://")) url.remove(0,7);
+
+#if defined(Q_OS_WIN32)
+                if (url.startsWith("/")) url.remove(0,1);
+#endif
+                if (isImage (url))
+                {
+                    if (debug) qDebug() << "dropped url seems to be image: " << url;
+                    // Image, try to download or set image from local file
+                    //model->downloadImage (url);
+                    model->loadImage(bi, url);
+                    if (debug) qDebug() << "finished loading image";
+                } else
+                {
+                    bi = model->addNewBranch();
+                    if (bi)
+                    {
+                        model->select(bi);
+                        if (url.endsWith(".vym", Qt::CaseInsensitive))
+                            model->setVymLink(url);
+                        else
+                        {
+                            model->setURL(url);
+                            model->setHeadingPlainText(url);
+                        }
+
+                        model->select (bi->parent());
+                    }
+                }
+            }
+        }
+    }
+    event->acceptProposedAction();
+}
+
+void MapEditor::setState (EditorState s)
+{
+    if (state!=Neutral && s!=Neutral)
+       qWarning ()<<"MapEditor::setState  switching directly from "<<state<<" to "<<s;
+    state=s;
+    /* if (debug)
+    {
+        QString s;
+        switch (state)
+        {
+        case Neutral: s="Neutral";break;
+        case EditingHeading: s="EditingHeading";break;
+        case EditingLink: s="EditingLink";break;
+        case MovingObject: s="MovingObject";break;
+        case MovingView: s="MovingView";break;
+        case PickingColor: s="PickingColor";break;
+        case CopyingObject: s="CopyingObject";break;
+        case DrawingLink: s="DrawingLink";break;
+        }
+        qDebug()<<"MapEditor: State "<<s<< " of "<<model->getMapName();
+    }
+    */
+}
+
+MapEditor::EditorState MapEditor::getState()
+{
+    return state;
+}
+
+void MapEditor::updateSelection(QItemSelection nsel,QItemSelection dsel)       
+{
+    QList <MapItem*> itemsSelected;
+    QList <MapItem*> itemsDeselected;
+
+    QItemSelection sel=model->getSelectionModel()->selection();
+    foreach (QModelIndex ix,sel.indexes() )
+    {
+       MapItem *mi= static_cast<MapItem*>(ix.internalPointer());
+       if (mi->isBranchLikeType() 
+           ||mi->getType()==TreeItem::Image 
+           ||mi->getType()==TreeItem::XLink)
+           if (!itemsSelected.contains(mi)) 
+               itemsSelected.append (mi);
+    }
+    foreach (QModelIndex ix,dsel.indexes() )
+    {
+       MapItem *mi= static_cast<MapItem*>(ix.internalPointer());
+       if (mi->isBranchLikeType() 
+           ||mi->getType()==TreeItem::Image 
+           ||mi->getType()==TreeItem::XLink)
+           if (!itemsDeselected.contains(mi)) 
+               itemsDeselected.append (mi);
+    }
+
+    // Trim list of selection paths 
+    while (itemsSelected.count() < selPathList.count() )
+       delete selPathList.takeFirst();
+
+    // Reduce polygons
+    while (itemsSelected.count() < selPathList.count() )
+       delete selPathList.takeFirst();
+
+    // Add additonal polygons
+    QGraphicsPathItem *sp;
+    while (itemsSelected.count() > selPathList.count() )
+    {
+       sp = mapScene->addPath(
+           QPainterPath(), 
+           QPen(selectionColor),
+           selectionColor);
+       sp->show();
+       selPathList.append (sp);
+    }
+
+
+    // Reposition polygons 
+    for (int i=0; i<itemsSelected.count();++i)
+    {
+       MapObj *mo=itemsSelected.at(i)->getMO();
+       sp=selPathList.at(i);
+       sp->setPath (mo->getClickPath() );
+       sp->setPen (selectionColor);    
+       sp->setBrush (selectionColor);  
+       sp->setParentItem (mo); 
+       sp->setZValue (dZ_SELBOX);
+
+       // Reposition also LineEdit for heading during animation
+       if (lineEdit) lineEdit->move (mo->getAbsPos().toPoint() );
+    }
+
+    scene()->update();  
+}
+
+void MapEditor::updateData (const QModelIndex &sel)
+{
+    TreeItem *ti= static_cast<TreeItem*>(sel.internalPointer());
+
+/* testing
+    qDebug() << "ME::updateData";
+    if (!ti) 
+    {
+       qDebug() << "  ti=NULL";
+       return;
+    }
+    qDebug() << "  ti="<<ti;
+    qDebug() << "  h="<<ti->getHeadingPlain();
+*/
+    
+    if (ti && ti->isBranchLikeType())
+    {
+       BranchObj *bo=(BranchObj*) ( ((MapItem*)ti)->getLMO());
+       bo->updateData();
+    }
+
+    if (winter)
+    {
+        QList <QRectF> obstacles;
+        BranchObj *bo;
+        BranchItem *cur=NULL;
+        BranchItem *prev=NULL;
+        model->nextBranch(cur,prev);
+        while (cur) 
+        {
+            if (!cur->hasHiddenExportParent())
+            {
+                // Branches
+                bo=(BranchObj*)(cur->getLMO());
+                if (bo && bo->isVisibleObj())
+                    obstacles.append(bo->getBBox());
+            }
+            model->nextBranch(cur,prev);
+        }
+        winter->setObstacles(obstacles);
+    }
+}
+
+void MapEditor::setSelectionColor (QColor col)
+{
+    selectionColor=col;
+    selectionColor.setAlpha (220);
+    QItemSelection sel=model->getSelectionModel()->selection();
+    updateSelection(sel,sel);
+}
+
+
+QColor MapEditor::getSelectionColor ()
+{
+    return selectionColor;
+}
+
+
diff --git a/mapeditor.h b/mapeditor.h
new file mode 100644 (file)
index 0000000..ba6faa9
--- /dev/null
@@ -0,0 +1,228 @@
+#ifndef MAPEDITOR_H
+#define MAPEDITOR_H
+
+#include <QGraphicsView>
+#include <QItemSelectionModel>
+#include <QLineEdit>   
+#include <QPropertyAnimation>  
+
+#include "attribute.h"
+#include "xlink.h"
+#include "ornamentedobj.h"
+#include "settings.h"
+#include "vymmodel.h"
+
+
+class XLinkItem;
+class Winter;
+
+/*! \brief Main widget in vym to display and edit a map */
+
+
+class MapEditor : public QGraphicsView {    
+    Q_OBJECT
+
+public:
+    enum EditorState {
+       Neutral,
+       EditingHeading,
+       EditingLink,
+       MovingObject,
+       MovingView,
+       PickingColor,
+       CopyingObject,
+       DrawingLink
+    };
+
+    MapEditor(VymModel *vm);
+    ~MapEditor();
+    VymModel* getModel();
+    QGraphicsScene * getScene();
+    MapEditor::EditorState getState();
+
+// Animation of scrollbars
+Q_PROPERTY(QPointF scrollBarPos READ getScrollBarPos WRITE setScrollBarPos)
+
+protected:
+    QPointF scrollBarPos;
+    QPointF scrollBarPosTarget;
+    QPropertyAnimation scrollBarPosAnimation;
+    QTimer *panningTimer;
+    QPointF vPan;                      //! Direction of panning during moving of object
+    QPoint pointerPos;                 //! Pointer position in widget coordinates
+    Qt::KeyboardModifiers pointerMod;  //! modifiers of move event
+
+private slots:
+    void panView();
+
+public:
+    void scrollTo (const QModelIndex &index);
+    void setScrollBarPosTarget (QRectF rect);  //!  ensureVisible of rect
+    QPointF getScrollBarPosTarget ();
+    void setScrollBarPos (const QPointF &p);
+    QPointF getScrollBarPos();
+    void animateScrollBars();
+
+// Animation of zoom
+Q_PROPERTY(qreal zoomFactor READ getZoomFactor WRITE setZoomFactor)
+
+protected:
+    qreal zoomFactor;
+    qreal zoomFactorTarget;
+    QPropertyAnimation zoomAnimation;
+
+public:
+    void setZoomFactorTarget (const qreal &zf);
+    qreal getZoomFactorTarget();
+    void setZoomFactor (const qreal &zf);
+    qreal getZoomFactor();
+
+// Animation of rotation
+Q_PROPERTY(qreal angle READ getAngle WRITE setAngle)
+
+protected:
+    qreal angle;
+    qreal angleTarget;
+    QPropertyAnimation rotationAnimation;
+
+public:
+    void setAngleTarget (const qreal &a);
+    qreal getAngleTarget();
+    void setAngle (const qreal &a);
+    qreal getAngle();
+
+
+// Animation of viewCenter    
+Q_PROPERTY (QPointF viewCenter READ getViewCenter WRITE setViewCenter)
+
+protected:
+    QPointF viewCenter;
+    QPointF viewCenterTarget;
+
+public:
+    void setViewCenterTarget (
+       const QPointF &p, 
+       const qreal &zft, 
+       const qreal &at,
+       const int duration=2000,
+       const QEasingCurve &easingCurve=QEasingCurve::OutQuint);
+    void setViewCenterTarget ();    //! Convenience function, center on selected item
+    QPointF getViewCenterTarget();
+    void setViewCenter (const QPointF &p);
+    QPointF getViewCenter();
+    QPropertyAnimation viewCenterAnimation;
+
+    void updateMatrix();           //! Sets transformation matrix with current rotation and zoom values
+    void minimizeView();
+
+// xmas egg
+protected:
+    Winter *winter;
+
+public:
+    void print();                  //!< Print the map
+    QRectF getTotalBBox();         //!< Bounding box of all items in map
+    QImage getImage (QPointF &offset); //!< Get a pixmap of the map
+    void setAntiAlias (bool);      //!< Set or unset antialiasing
+    void setSmoothPixmap(bool);            //!< Set or unset smoothing of pixmaps
+public slots:  
+    void autoLayout();             //!< Auto layout of map by using collision detection
+    void testFunction1();              //! just testing new stuff
+    void testFunction2();              //! just testing new stuff
+
+public:
+    TreeItem *findMapItem (QPointF p,TreeItem *exclude);    //! find item in map at position p. Ignore item exclude 
+
+    AttributeTable* attributeTable();  // FIXME-3 Not used, testing only
+    void toggleWinter();
+
+    BranchItem* getBranchDirectAbove(BranchItem *bi);  //! get branch direct above bi (in TreeView) 
+    BranchItem* getBranchAbove(BranchItem *bi);                //! get branch above bi (in TreeView) 
+    BranchItem* getBranchDirectBelow(BranchItem *bi);  //! bet branch direct below bi (in TreeView)
+    BranchItem* getBranchBelow(BranchItem *bi);                //! bet branch below bi (in TreeView)
+    BranchItem* getLeftBranch(BranchItem *bi);         //! bet branch left of bi (in TreeView)
+    BranchItem* getRightBranch(BranchItem *bi);                //! bet branch right of bi (in TreeView)
+
+public slots:
+    void cursorUp();
+    void cursorDown();
+    void cursorLeft();
+    void cursorRight();
+    void cursorFirst();
+    void cursorLast();
+    void editHeading();
+    void editHeadingFinished();
+private:
+    QLineEdit *lineEdit;
+
+protected:
+    virtual void contextMenuEvent ( QContextMenuEvent *e );
+    virtual void keyPressEvent(QKeyEvent*);
+    virtual void keyReleaseEvent(QKeyEvent*);
+    virtual void mousePressEvent(QMouseEvent*);
+    virtual void mouseMoveEvent(QMouseEvent*);
+    void moveObject ();
+    virtual void mouseReleaseEvent(QMouseEvent*);
+    virtual void mouseDoubleClickEvent(QMouseEvent*);
+    virtual void wheelEvent(QWheelEvent*);
+    virtual void focusOutEvent (QFocusEvent*);
+    virtual void resizeEvent( QResizeEvent * );
+
+    void dragEnterEvent (QDragEnterEvent *);
+    void dragMoveEvent (QDragMoveEvent *);
+    void dragLeaveEvent (QDragLeaveEvent *);
+    void dropEvent (QDropEvent *);
+
+
+private:
+    QGraphicsScene *mapScene;
+    VymModel *model;           //!< Vym Map, includding several mapCenters
+
+    bool adjustCanvasRequested;        // collect requests until end of user event
+    BranchObj *editingBO;      // entering Text into BO
+
+    QCursor HandOpenCursor;    // cursor while moving canvas view
+    QCursor PickColorCursor;   // cursor while picking color 
+    QCursor CopyCursor;                // cursor while picking color 
+    QCursor XLinkCursor;       // cursor while picking color 
+    EditorState state; 
+
+    void setState (EditorState);
+    bool objectMoved;          // true if object was not clicked, but moved with mouse
+
+    // Temporary used for linkx
+    Link* tmpLink;
+
+    MapObj* movingObj;             // moving a MapObj
+    QPointF movingObj_orgPos;      // org. pos of mouse before move
+    QPointF movingObj_orgRelPos;    // org. relative pos of mouse before move
+    QPointF movingObj_offset;      // offset of mousepointer to object
+    QPointF movingCont_start;      // inital pos of moving Content or
+    QPointF movingVec;             // how far has Content moved
+
+    QPointF contextMenuPos;        // position where context event was triggered
+
+    AttributeTable *attrTable;
+
+    bool printFrame;           // Print frame around map
+    bool printFooter;          // Print footer below map
+
+    QPoint exportOffset;       // set before export, used in save
+
+//////////// Selection related
+signals:
+    void selectionChanged(const QItemSelection &, const QItemSelection &);
+
+private:    
+    QList <QGraphicsPathItem*> selPathList;
+    QColor selectionColor;
+
+public slots:
+    void updateSelection(QItemSelection ,QItemSelection); // update selection
+    void updateData (const QModelIndex&); // update data
+public:
+    void setSelectionColor (QColor c);
+    QColor getSelectionColor ();
+};
+#endif
+
diff --git a/mapitem.cpp b/mapitem.cpp
new file mode 100644 (file)
index 0000000..3dd4b2f
--- /dev/null
@@ -0,0 +1,187 @@
+#include "mapitem.h"
+
+#include "linkablemapobj.h"
+#include "ornamentedobj.h"
+
+#include <QDebug>
+
+MapItem::MapItem()
+{
+    init();
+}
+
+MapItem::MapItem(const QList<QVariant> &data, TreeItem *parent):TreeItem (data,parent)
+{
+    init();
+}
+
+void MapItem::init()
+{
+    mo=NULL;
+    posMode=Unused;
+    hideLinkUnselected=false;
+}
+
+void MapItem::appendChild (TreeItem *item)
+{
+    TreeItem::appendChild (item);
+
+    // FIXME-4 maybe access parent in MapObjs directly via treeItem
+    // and remove this here...
+
+    // If lmo exists, also set parObj there
+    LinkableMapObj *lmo=getLMO();
+    if (lmo)
+    {
+       LinkableMapObj *itemLMO=((MapItem*)item)->getLMO();
+       if (itemLMO)
+           itemLMO->setParObj (lmo);
+    }
+}
+
+void MapItem::setRelPos (const QPointF &p)
+{
+    posMode=Relative;
+    pos=p;
+    LinkableMapObj *lmo=getLMO();
+    if (lmo)
+    {
+       ((OrnamentedObj*)lmo)->setUseRelPos (true);
+       ((OrnamentedObj*)lmo)->move2RelPos(p);
+    }
+}
+
+void MapItem::setAbsPos (const QPointF &p)
+{
+    posMode=Absolute;
+    pos=p;
+    if (mo) mo->move (p);
+}
+
+void MapItem::setPositionMode (PositionMode mode)
+{
+    posMode=mode;
+}
+
+MapItem::PositionMode MapItem::getPositionMode ()
+{
+    return posMode;
+}
+
+void MapItem::setHideLinkUnselected (bool b)
+{
+    hideLinkUnselected=b;
+    LinkableMapObj *lmo=getLMO();
+    if (lmo) 
+    {
+       //lmo->setHideLinkUnselected();
+       lmo->setVisibility (lmo->isVisibleObj());
+       lmo->updateLinkGeometry();
+    }  
+}
+
+bool MapItem::getHideLinkUnselected()
+{
+    return hideLinkUnselected;
+}   
+
+QString MapItem::getMapAttr () 
+{
+    QString s;
+    LinkableMapObj *lmo=getLMO();
+
+    if (parentItem==rootItem)
+       posMode=Absolute;
+    else
+    {
+       if (type==TreeItem::Image ||depth()==1 || lmo->getUseRelPos() )
+           posMode=Relative;   //FiXME-2 shouldn't this be replaced by relPos?
+       else
+           posMode=Unused;
+    }
+    switch (posMode)
+    {
+       case Relative:  
+           if (lmo) pos=lmo->getRelPos();
+           s= attribut("relPosX",QString().setNum(pos.x())) +
+              attribut("relPosY",QString().setNum(pos.y())); 
+           break;
+       case Absolute:  
+           if (mo) pos=mo->getAbsPos();
+           s=attribut("absPosX",QString().setNum(pos.x())) +
+             attribut("absPosY",QString().setNum(pos.y())); 
+           break;
+       default: break;
+    }
+    if (hideLinkUnselected)
+       s+=attribut ("hideLink","true");
+    else
+       s+=attribut ("hideLink","false");
+
+    // Rotation angle
+    MapObj *mo=getMO();
+    if (mo)
+       angle=mo->getRotation();
+    if (angle!=0)      
+       s+=attribut("rotation",QString().setNum(angle) );
+       
+    return s;
+}
+
+QRectF MapItem::getBBoxURLFlag ()
+{
+    QStringList list=systemFlags.activeFlagNames().filter ("system-url");
+    if (list.count()>1)
+    {
+       qWarning()<<"MapItem::getBBoxURLFlag found more than one system-url*";
+       return QRectF ();
+    }  
+    return getBBoxFlag (list.first());
+}
+
+QRectF MapItem::getBBoxFlag (const QString &fname)
+{
+    LinkableMapObj *lmo=getLMO();
+    if (lmo)
+       return ((OrnamentedObj*)lmo)->getBBoxFlag (fname);
+    else    
+       return QRectF ();
+}
+
+void MapItem::setRotation(const qreal &a)
+{
+    angle=a;
+    MapObj *mo=getMO();
+    if (mo) mo->setRotation (a);
+}
+
+MapObj* MapItem::getMO()
+{
+    return mo;
+}
+
+LinkableMapObj* MapItem::getLMO()
+{
+    if (isBranchLikeType() || type==Image)
+       return (LinkableMapObj*)mo;
+    else
+       return NULL;
+}
+
+void MapItem::initLMO()
+{
+    LinkableMapObj *lmo=getLMO();
+    if (!lmo) return;
+    switch (posMode)
+    {
+       case Relative:  
+           lmo->setRelPos (pos);
+           break;
+       case Absolute:  
+           lmo->move (pos);
+           break;
+       default:
+           break;
+    }
+}
+
diff --git a/mapitem.h b/mapitem.h
new file mode 100644 (file)
index 0000000..3559a36
--- /dev/null
+++ b/mapitem.h
@@ -0,0 +1,79 @@
+#ifndef MAPITEM_H
+#define MAPITEM_H
+
+#include <QPointF>
+
+#include "treeitem.h"
+
+class MapObj;
+class LinkableMapObj;
+
+/*! /brief MapItem is used to store information of MapObj and inherited
+   classes.
+    This is done even while no QGraphicsView is availabe. This is useful
+    if e.g. on a small device like a cellphone the full map is not used,
+    but just a treeview instead.
+*/
+
+class MapItem:public TreeItem
+{
+public:
+    enum PositionMode {Unused,Absolute,Relative};
+protected:
+    QPointF pos;
+    PositionMode posMode;
+
+public:
+    MapItem();
+    MapItem(const QList<QVariant> &data, TreeItem *parent = 0);
+
+    void init();
+
+    /*! Overloaded from TreeItem. Used to set parObj in LinkableMapObj */
+    virtual void appendChild (TreeItem *item);
+
+    /*! Used to save relative position while map is not in QGraphicsView */
+    virtual void setRelPos(const QPointF&); 
+
+    /*! Used to save absolute position while map is not in QGraphicsView */
+    virtual void setAbsPos(const QPointF&); 
+
+    /*! Tell object to use e.g. absolute positioning for mapcenter. 
+       Defaulst is MapItem::Unused */
+    void setPositionMode (PositionMode mode);
+    PositionMode getPositionMode ();
+
+
+protected:
+    bool hideLinkUnselected;
+public:
+    /*! Hide link if item is not selected */
+    virtual void setHideLinkUnselected(bool);
+
+    /*! Check if link is hidden for unselected items */
+    virtual bool getHideLinkUnselected();
+
+    virtual QString getMapAttr();   //! Get attributes for saving as XML
+
+    virtual QRectF getBBoxURLFlag();//! get bbox of url flag
+    virtual QRectF getBBoxFlag   (const QString &fname);    //! get bbox of flag
+    virtual void setRotation (const qreal &a);
+
+
+protected:
+    MapObj *mo;
+    qreal angle;
+
+public:
+    /*! Returns pointer to related LinkableMapObj in QGraphicsView */
+    virtual         MapObj* getMO();
+    virtual LinkableMapObj* getLMO();
+
+    /*! Initialize LinkableMapObj with data in MapItem */
+    virtual void initLMO();
+
+};
+
+
+#endif
diff --git a/mapobj.cpp b/mapobj.cpp
new file mode 100644 (file)
index 0000000..3ec8c95
--- /dev/null
@@ -0,0 +1,170 @@
+#include <QDebug>
+
+#include "geometry.h"
+#include "mapobj.h"
+#include "misc.h"
+
+/////////////////////////////////////////////////////////////////
+// MapObj
+/////////////////////////////////////////////////////////////////
+MapObj::MapObj (QGraphicsItem *parent, TreeItem *ti):QGraphicsItem (parent)
+{
+    //qDebug() << "Const MapObj (this,ti)=("<<this<<","<<ti<<")";
+    treeItem=ti;
+    init ();
+}
+
+MapObj::~MapObj ()
+{
+    //qDebug() << "Destr MapObj "<<this;
+    foreach (QGraphicsItem *i,childItems() ) 
+       // Avoid tha QGraphicsScene deletes children
+       i->setParentItem (NULL);
+}
+
+void MapObj::init ()
+{
+    absPos=QPointF(0,0);
+    visible=true;
+    boundingPolygon=NULL;
+}
+
+void MapObj::copy(MapObj* other)
+{
+    absPos=other->absPos;
+    bbox.setX (other->bbox.x() );
+    bbox.setY (other->bbox.y() );
+    bbox.setSize (QSizeF(other->bbox.width(), other->bbox.height() ) );
+}
+
+void MapObj::setTreeItem (TreeItem *ti)
+{
+    treeItem=ti;
+}
+
+TreeItem* MapObj::getTreeItem () const
+{
+    return treeItem;
+}
+
+qreal MapObj::x() 
+{
+    return getAbsPos().x();
+}
+
+qreal MapObj::y() 
+{
+    return getAbsPos().y();
+}
+
+qreal MapObj::width() 
+{
+    return bbox.width();
+}
+
+qreal MapObj::height() 
+{
+    return bbox.height();
+}
+
+QPointF MapObj::getAbsPos() 
+{
+    return absPos;
+}
+
+QString MapObj::getPos()
+{
+    return qpointFToString(absPos);
+}
+
+void MapObj::move (double x, double y) 
+{
+    MapObj::move (QPointF(x,y));
+}
+
+void MapObj::move (QPointF p)
+{
+    absPos=p;
+    bbox.moveTo (p);
+    clickPoly=QPolygonF (bbox);
+}
+
+void MapObj::moveBy (double x, double y) 
+{
+    QPointF v(x,y);
+    MapObj::move (absPos + v );
+    bbox.moveTo (bbox.topLeft() + v);
+    clickPoly.translate (v);
+}
+
+QRectF MapObj::boundingRect () const 
+{
+    return QRectF();
+}
+
+void MapObj::paint(QPainter*, const QStyleOptionGraphicsItem*, QWidget*)
+{
+}
+
+QRectF MapObj::getBBox()
+{
+    return bbox;
+}
+
+ConvexPolygon MapObj::getBoundingPolygon()
+{
+    QPolygonF p;
+    p<<bbox.topLeft()<<bbox.topRight()<<bbox.bottomRight()<<bbox.bottomLeft();
+    return p;
+}
+
+QPolygonF MapObj::getClickPoly()
+{
+    return clickPoly;
+}
+
+QPainterPath MapObj::getClickPath()
+{
+    QPainterPath p;
+    QRectF br=clickPoly.boundingRect();
+    p.moveTo (br.topLeft() );
+    p.lineTo (br.topRight() );
+    p.lineTo (br.bottomRight() );
+    p.lineTo (br.bottomLeft() );
+    p.lineTo (br.topLeft() );
+    return p;
+}
+
+bool MapObj::isInClickBox (const QPointF &p)
+{
+    return  clickPoly.containsPoint (p,Qt::OddEvenFill);
+}
+
+QSizeF MapObj::getSize()
+{
+    return bbox.size();
+}
+
+
+void MapObj::setRotation (const qreal &a)
+{
+    angle=a;
+}
+
+qreal MapObj::getRotation ()
+{
+    return angle;
+}
+
+bool MapObj::isVisibleObj()
+{
+    return visible;
+}
+
+void MapObj::setVisibility(bool v)
+{
+    visible=v;
+}
+
+void MapObj::positionBBox() {}
+void MapObj::calcBBoxSize() {}
diff --git a/mapobj.h b/mapobj.h
new file mode 100644 (file)
index 0000000..6f32d2e
--- /dev/null
+++ b/mapobj.h
@@ -0,0 +1,77 @@
+#ifndef MAPOBJ_H
+#define MAPOBJ_H
+
+#include <QGraphicsItem>
+
+#include "xmlobj.h"
+
+#define dZ_BBOX         0   // testing
+#define dZ_DEPTH      100
+#define dZ_FRAME_LOW   10      
+#define dZ_LINK        20
+#define dZ_XLINK       40
+#define dZ_SELBOX      60
+#define dZ_FLOATIMG    70
+#define dZ_ICON        80
+#define dZ_TEXT        90
+#define  Z_INIT      9999
+#define  Z_LINEEDIT 10000 
+
+class ConvexPolygon;
+
+#include "treeitem.h"
+
+/*! \brief Base class for all objects visible on a map
+*/
+
+class MapObj:public XMLObj, public QGraphicsItem {
+public:
+    MapObj (QGraphicsItem *parent=NULL,TreeItem *ti=NULL);
+    virtual ~MapObj ();
+    virtual void init ();
+    virtual void copy (MapObj*);
+
+    virtual void setTreeItem(TreeItem *);
+    virtual TreeItem* getTreeItem() const;
+
+    virtual qreal x();
+    virtual qreal y();
+    virtual qreal width();
+    virtual qreal height();
+    virtual QPointF getAbsPos();
+    virtual QString getPos();                  //! Return position as string (x,y)
+    virtual void move (double x,double y);      //! move to absolute Position
+    virtual void move (QPointF p);
+    virtual void moveBy (double x,double y);    //! move to relative Position
+
+    virtual QRectF boundingRect () const;    
+    virtual void paint(QPainter*, const QStyleOptionGraphicsItem*, QWidget*);
+
+    virtual QRectF getBBox();                  //! returns bounding box
+    virtual ConvexPolygon getBoundingPolygon();        //! return bounding convex polygon
+    virtual QPolygonF getClickPoly();          //! returns polygon to click
+    virtual QPainterPath getClickPath();       //! returns path to click
+    virtual bool isInClickBox (const QPointF &p);   //! Checks if p is in clickBox
+    virtual QSizeF getSize();                  //! returns size of bounding box
+
+    virtual void setRotation(const qreal &a);
+    virtual qreal getRotation();
+    virtual bool isVisibleObj();
+    virtual void setVisibility(bool);
+    virtual void positionBBox();       
+    virtual void calcBBoxSize();
+
+protected:  
+    QRectF bbox;                   // bounding box of MO itself
+    QPolygonF clickPoly;                   // area where mouseclicks are found
+    QPointF absPos;                // Position on canvas
+    bool visible;
+
+    qreal angle;                   //! Rotation angle
+
+    TreeItem *treeItem;                    //! Crossrefence to treemodel
+
+    QGraphicsPolygonItem *boundingPolygon;     //FIXME-3 testing only
+};
+
+#endif
diff --git a/misc.cpp b/misc.cpp
new file mode 100644 (file)
index 0000000..31225e1
--- /dev/null
+++ b/misc.cpp
@@ -0,0 +1,230 @@
+#include "misc.h"
+
+#include "geometry.h"
+
+#include <math.h>
+#include <stdlib.h>
+
+#include <QDebug>
+#include <QDialog>
+#include <QString>
+
+QString richTextToPlain (QString r, const QString &indent, const int &width)
+{
+    Q_UNUSED( width );
+
+    // Avoid failing assert with mingw
+    if (r.isEmpty()) return r;
+
+    QRegExp rx;
+    rx.setMinimal(true);
+
+    // Remove all <style...> ...</style>
+    rx.setPattern("<style.*>.*</style>");
+    r.replace (rx,"");
+
+    // convert all "<br*>" to "\n"
+    rx.setPattern ("<br.*>");
+    r.replace (rx,"\n");
+
+    // convert all "</p>" to "\n"
+    rx.setPattern ("</p>");
+    r.replace (rx,"\n");
+
+    // remove all remaining tags
+    rx.setPattern ("<.*>");
+    r.replace (rx,"");
+
+    // If string starts with \n now, remove it.
+    // It would be wrong in an OOo export for example
+    while (r.length() > 0 && r.at(0)=='\n') r.remove (0,1);
+
+    // convert "&", "<" and ">"
+    rx.setPattern ("&gt;");
+    r.replace (rx,">");
+    rx.setPattern ("&lt;");
+    r.replace (rx,"<");
+    rx.setPattern ("&amp;");
+    r.replace (rx,"&");
+    rx.setPattern ("&quot;");
+    r.replace (rx,"\"");
+
+    // Indent everything
+    rx.setPattern ("^\n");
+    r.replace (rx,indent);
+    r = indent + r;   // Don't forget first line
+
+    return r;
+}
+
+QString qpointToString (const QPoint &p)
+{ return "(" + QString("%1").arg(p.x()) +","+ QString ("%1").arg (p.y()) +")"; }
+
+QString qpointFToString (const QPointF &p)
+{ return "(" + QString("%1").arg(p.x()) +","+ QString ("%1").arg (p.y()) +")"; }
+
+QString VectorToString (const Vector &p)
+{ return "(" + QString("%1").arg(p.x()) +","+ QString ("%1").arg (p.y()) +")"; }
+
+ostream &operator<< (ostream &stream, QPoint const &p)
+{ 
+    stream << "("<<p.x()<<","<<p.y()<<")";
+    return stream;
+}
+
+ostream &operator<< (ostream &stream, QPointF const &p)
+{ 
+    stream << "("<<p.x()<<","<<p.y()<<")";
+    return stream;
+}
+
+ostream &operator<< (ostream &stream, QRectF const &r)
+{ 
+    stream << "tL="<<r.topLeft()<<" - (w,h)="<<r.width()<<","<<r.height()<<"  bR="<<r.bottomRight();
+    return stream;
+}
+
+ostream &operator<< (ostream &stream, Vector const &p)
+{ 
+    stream << "("<<p.x()<<","<<p.y()<<")";
+    return stream;
+}
+
+qreal getAngle(const QPointF &p)
+{   
+    // Calculate angle of vector to x-axis
+    if (p.x()==0)
+    {
+       if (p.y()>=0)
+           return M_PI_2;
+       else
+           return 3* M_PI_2;
+    } else
+    {
+       if (p.x()>0) 
+       {
+           if (p.y()<0)
+               return (qreal)( - atan ( (qreal)(p.y()) / (qreal)(p.x()) ) );
+           else        
+               return (qreal)( 2*M_PI - atan ( (qreal)(p.y()) / (qreal)(p.x()) ) );
+       }    
+       else    
+           return (qreal)(M_PI -atan ( (qreal)(p.y()) / (qreal)(p.x()) ) );
+    }  
+    /*
+    // Calculate angle of vector to y-axis
+    if (p.y()==0)
+    {
+       if (p.x()>=0)
+           return M_PI_2;
+       else
+           return 3* M_PI_2;
+    } else
+    {
+       if (p.y()>0) 
+           return (qreal)(M_PI  - atan ( (qreal)(p.x()) / (qreal)(p.y()) ) );
+       else    
+           if (p.x()<0)
+               return (qreal)( 2*M_PI - atan ( (qreal)(p.x()) / (qreal)(p.y()) ) );
+           else    
+               return (qreal)( - atan ( (qreal)(p.x()) / (qreal)(p.y()) ) );
+    }  
+    */
+}
+
+qreal min(qreal a, qreal b)
+{
+    if (a<b)
+       return a;
+    return b;
+}
+
+qreal max(qreal a, qreal b)
+{
+    if (a>b)
+       return a;
+    return b;
+}
+
+qreal roof (qreal x)
+{
+    if (x<=0.5)
+       return  x;
+    else
+       return 1-x;
+}
+
+int round_int (qreal x)
+{
+    return (x > 0.0) ? (x + 0.5) : (x - 0.5);
+}
+
+Qt::PenStyle penStyle (const QString &s, bool &ok)
+{
+    ok=true;
+    Qt::PenStyle p(Qt::NoPen);
+    if (s=="Qt::NoPen")
+       p=Qt::SolidLine;
+    if (s=="Qt::SolidLine")
+       p=Qt::SolidLine;
+    else if (s=="Qt::DashLine")
+       p=Qt::DashLine;
+    else if (s=="Qt::DotLine")
+       p=Qt::DotLine;
+    else if (s=="Qt::DashDotLine")
+       p=Qt::DashDotLine;
+    else if (s=="Qt::DashDotDotLine")
+       p=Qt::DashDotDotLine;
+    else
+    {
+       qWarning()<<"misc.cpp penStyle - Unknown style s="<<s;
+       ok=false;
+    }
+    return p;
+}
+
+QString penStyleToString (Qt::PenStyle p) 
+{
+    switch (p)
+    {
+       case Qt::NoPen:
+           return "Qt::NoPen";
+       case Qt::SolidLine:
+           return "Qt::SolidLine";
+       case Qt::DashLine:
+           return "Qt::DashLine";
+       case Qt::DotLine:
+           return "Qt::DotLine";
+       case Qt::DashDotLine:
+           return "Qt::DashDotLine";
+       case Qt::DashDotDotLine:
+           return "Qt::DashDotDotLine";
+       default:
+           return "";
+    }
+}
+
+QPointF point (const QString &s, bool &ok)
+{
+    ok=true;
+    bool okx, oky;
+    qreal x=s.section (',',0,0).toFloat (&okx);
+    qreal y=s.section (',',1,1).toFloat (&oky);
+    if (okx && oky) 
+       return QPointF (x,y);
+    else       
+       qWarning()<<"misc.cpp Couldn't create QPointF from "<<s<<"  ok="<<okx<<","<<oky;
+       ok=false;
+       return QPointF();
+}
+   
+QString pointToString (const QPointF &p)
+{
+    return QString("%1,%2").arg(p.x()).arg(p.y());
+}
+
+void centerDialog (QDialog *dia)
+{
+    dia->move(QCursor::pos() - 0.5 * QPoint(dia->rect().width(),dia->rect().height() ) );
+}
+
diff --git a/misc.h b/misc.h
new file mode 100644 (file)
index 0000000..e043898
--- /dev/null
+++ b/misc.h
@@ -0,0 +1,38 @@
+#ifndef MISC_H
+#define MISC_H
+
+#include <Qt>
+#include <iostream>
+using namespace std;
+
+class QString;
+class QPoint;
+class QPointF;
+class QRectF;
+class Vector;
+class QDialog;
+
+/////////////////////////////////////////////////////////////////////////////
+QString richTextToPlain (QString r);
+QString qpointToString (const QPoint &p);
+QString qpointFToString (const QPointF &p);
+QString VectorToString (const Vector &p);
+
+extern ostream &operator<< (ostream &stream, QPoint const &p);
+extern ostream &operator<< (ostream &stream, QPointF const &p);
+extern ostream &operator<< (ostream &stream, QRectF const &r);
+extern ostream &operator<< (ostream &stream, Vector const &p);
+
+qreal getAngle(const QPointF &);
+qreal min (qreal,qreal);
+qreal max (qreal,qreal);
+qreal roof (qreal x);    
+int round_int (qreal x);
+
+Qt::PenStyle penStyle (const QString &, bool &ok);
+QString penStyleToString (Qt::PenStyle);
+QPointF point (const QString &s, bool &ok);
+QString pointToString (const QPointF &p);
+
+void centerDialog(QDialog *dia);
+#endif
diff --git a/mkdtemp.cpp b/mkdtemp.cpp
new file mode 100644 (file)
index 0000000..17e348a
--- /dev/null
@@ -0,0 +1,63 @@
+
+#include <QDir>
+#include <stdint.h>
+#ifndef _WIN32
+#include <sys/time.h>
+
+extern "C" {
+pid_t getpid (void);
+}
+#else
+#include <windows.h>
+#define getpid GetCurrentProcessId
+#include <time.h>
+#include <direct.h>
+#endif
+
+
+QString
+mkdtemp(QString tmpl)
+{
+    static const char letters[] =
+        "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
+
+    static uint64_t value;
+
+    const unsigned int ATTEMPTS_MIN = (62 * 62 * 62);
+
+    if (tmpl.length() < 6 || !tmpl.endsWith("XXXXXX"))
+    {
+        return QString();
+    }
+
+    uint64_t random_time_bits = time(NULL);
+
+    value += (random_time_bits ^ getpid());
+
+    unsigned int count;
+    for (count = 0; count < ATTEMPTS_MIN; value += 7777, ++count)
+    {
+        uint64_t v = value;
+        QString XXXXXX;
+        XXXXXX.append(letters[v % 62]);
+        v /= 62;
+        XXXXXX.append(letters[v % 62]);
+        v /= 62;
+        XXXXXX.append(letters[v % 62]);
+        v /= 62;
+        XXXXXX.append(letters[v % 62]);
+        v /= 62;
+        XXXXXX.append(letters[v % 62]);
+        v /= 62;
+        XXXXXX.append(letters[v % 62]);
+
+        tmpl.replace(tmpl.length()-6,6,XXXXXX);
+        QDir dir;
+        if (dir.exists(tmpl))
+            continue;
+        if (dir.mkpath(tmpl)){
+            return tmpl;
+        }
+    }
+    return QString();
+}
diff --git a/mkdtemp.h b/mkdtemp.h
new file mode 100644 (file)
index 0000000..ea4ecc5
--- /dev/null
+++ b/mkdtemp.h
@@ -0,0 +1,6 @@
+#ifndef MKDTEMP_H
+#define MKDTEMP_H
+
+extern QString mkdtemp(QString _template);
+
+#endif
diff --git a/mysortfilterproxymodel.cpp b/mysortfilterproxymodel.cpp
new file mode 100644 (file)
index 0000000..ecead5e
--- /dev/null
@@ -0,0 +1,37 @@
+//#include <QtGui>
+
+#include "mysortfilterproxymodel.h"
+
+MySortFilterProxyModel::MySortFilterProxyModel(QObject *parent)
+    : QSortFilterProxyModel(parent)
+{
+}
+//! [0]
+
+/*
+//! [1]
+void MySortFilterProxyModel::setFilterMinimumDate(const QDate &date)
+{
+    minDate = date;
+    invalidateFilter();
+}
+//! [1]
+
+//! [2]
+void MySortFilterProxyModel::setFilterMaximumDate(const QDate &date)
+{
+    maxDate = date;
+    invalidateFilter();
+}
+*/
+
+bool MySortFilterProxyModel::filterAcceptsRow(int sourceRow,   // FIXME-3 find a way to show _all_ rows which match, independent of parent
+        const QModelIndex &sourceParent) const
+{
+    QModelIndex index0 = sourceModel()->index(sourceRow, 0, sourceParent);
+    QModelIndex index1 = sourceModel()->index(sourceRow, 1, sourceParent);
+
+    return (sourceModel()->data(index0).toString().contains(filterRegExp())
+            || sourceModel()->data(index1).toString().contains(filterRegExp()));
+}
+
diff --git a/mysortfilterproxymodel.h b/mysortfilterproxymodel.h
new file mode 100644 (file)
index 0000000..e089b77
--- /dev/null
@@ -0,0 +1,35 @@
+#ifndef MYSORTFILTERPROXYMODEL_H
+#define MYSORTFILTERPROXYMODEL_H
+
+//#include <QDate>
+#include <QSortFilterProxyModel>
+
+//! [0]
+class MySortFilterProxyModel : public QSortFilterProxyModel
+{
+    Q_OBJECT
+
+public:
+    MySortFilterProxyModel(QObject *parent = 0);
+/*
+
+    QDate filterMinimumDate() const { return minDate; }
+    void setFilterMinimumDate(const QDate &date);
+
+    QDate filterMaximumDate() const { return maxDate; }
+    void setFilterMaximumDate(const QDate &date);
+protected:
+*/
+    bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const;
+    /*
+    bool lessThan(const QModelIndex &left, const QModelIndex &right) const;
+
+private:
+    bool dateInRange(const QDate &date) const;
+
+    QDate minDate;
+    QDate maxDate;
+*/
+};
+
+#endif
diff --git a/noteeditor.cpp b/noteeditor.cpp
new file mode 100644 (file)
index 0000000..ba1710d
--- /dev/null
@@ -0,0 +1,46 @@
+#include "noteeditor.h"
+
+#include <QMenuBar>
+
+#include "vymnote.h"
+#include "settings.h"
+extern Settings settings;
+extern QString vymName;
+
+NoteEditor::NoteEditor(QString scope):TextEditor()
+{
+    editorName = tr("Note Editor","Name of editor shown as window title");
+    setWindowTitle("");
+
+    menuBar()->show();
+
+    // Load Settings
+    init(scope);
+}
+
+NoteEditor::~NoteEditor() {}
+
+VymNote NoteEditor::getNote()
+{
+    VymNote note;
+    if (actionFormatRichText->isChecked() )
+        note.setRichText( getText());
+    else
+        note.setPlainText( getText());
+    note.setFontHint (getFontHint() );
+    note.setFilenameHint (getFilenameHint () );
+    return note;
+}
+
+void NoteEditor::setNote (const VymNote &note)  
+{
+    if (note.isRichText ())
+        setRichText(note.getText());
+    else
+    {
+        setPlainText(note.getText());
+        setFontHint (note.getFontHint() );
+    }
+    setFilenameHint (note.getFilenameHint() );
+}
diff --git a/noteeditor.h b/noteeditor.h
new file mode 100644 (file)
index 0000000..4d1012e
--- /dev/null
@@ -0,0 +1,19 @@
+#ifndef NOTEEDITOR_H 
+#define NOTEEDITOR_H
+
+
+#include "texteditor.h"
+
+class VymNote;
+
+class NoteEditor : public TextEditor {
+    Q_OBJECT
+public:
+    NoteEditor(QString scope);
+    ~NoteEditor();
+
+    VymNote getNote();
+    void setNote(const VymNote &note);
+};
+
+#endif
diff --git a/options.cpp b/options.cpp
new file mode 100644 (file)
index 0000000..172024e
--- /dev/null
@@ -0,0 +1,142 @@
+#include "options.h"
+
+#include <iostream>
+#include <QApplication>
+
+
+using namespace std;
+
+
+Option::Option()
+{
+    name="";
+    sName="";
+    lName="";
+    type=Switch;
+    sarg="";
+    active=false;
+}
+
+Option::Option (const QString &n, const Type &t, const QString &s, const QString &l)
+{
+    sName="-"+s;
+    lName="--"+l;
+    type=t;
+    name=n;
+}
+
+void Option::set(const QString &n, const Type &t, const QString &s, const QString &l)
+{
+    sName="-"+s;
+    lName="--"+l;
+    type=t;
+    name=n;
+}
+
+QString Option::getName () { return name; }
+QString Option::getShort () { return sName; }
+QString Option::getLong() { return lName; }
+Option::Type Option::getType() { return type; }
+void Option::setArg(const QString& s) { sarg=s; }
+QString Option::getArg() { return sarg; }   
+void Option::setActive() { active=true; }   
+bool Option::isActive() { return active; }
+
+///////////////////////////////////////////////////////////////
+Options::Options() {}  
+
+int Options::parse()
+{
+    QStringList arglist=qApp->arguments();
+
+    // Get program name
+    progname=arglist.first();
+    arglist.pop_front();
+
+    // Work through rest of options
+    bool isFile;
+    int i=0;
+    for (i=0; i< arglist.size(); ++i)
+    {
+       isFile=true;
+       if (arglist[i].left(1)=="-")
+       {
+           // Compare given option to all defined options
+           for (int j=0; j < optlist.size(); ++j)
+           {
+               if (arglist.at(i)==optlist.value(j).getShort() || 
+                   arglist.at(i)==optlist.value(j).getLong())
+               {   
+                   optlist[j].setActive();
+                   isFile=false;
+                   if (optlist[j].getType()==Option::String)
+                   {
+                       i++;
+                       if (i==arglist.size())
+                       {
+                           qWarning ("Error: argument to option missing");
+                           return 1;
+                       }
+                       optlist[j].setArg (arglist[i]);
+                       isFile=false;
+                   }
+                   break;
+               } 
+           }
+           if (isFile)
+           {
+               qWarning("Error: Unknown argument ");
+               return 1;
+           }
+       } else
+           filelist.append (arglist[i]);
+    }
+    return 0;
+}
+
+void Options::add (Option o)
+{
+    optlist.append (o);
+}
+
+void Options::add (const QString &n, const Option::Type &t=Option::Switch, const QString &s="", const QString &l="")
+{
+    Option o;
+    o.set (n,t,s,l);
+    optlist.append (o);
+}
+
+void Options::setHelpText (const QString &s)
+{
+    helptext=s;
+}
+    
+QString Options::getHelpText ()
+{
+    return helptext;
+}
+
+QString Options::getProgramName()
+{
+    return progname;
+}
+
+QStringList Options::getFileList ()
+{
+    return filelist;
+}
+
+bool Options::isOn(const QString &s)
+{
+    for (int i=0; i<optlist.size(); ++i)
+       if (optlist[i].getName()==s && optlist[i].isActive() )
+           return true;
+    return false;
+}
+
+QString Options::getArg(const QString &s)
+{
+    for (int i=0; i<optlist.size(); ++i)
+       if (optlist[i].getName()==s) return optlist[i].getArg();
+    return QString();
+}
diff --git a/options.h b/options.h
new file mode 100644 (file)
index 0000000..03d06ac
--- /dev/null
+++ b/options.h
@@ -0,0 +1,60 @@
+#ifndef OPTIONS_H
+#define OPTIONS_H
+
+#include <QStringList>
+
+/*! \brief A single option which is listed in Options */
+class Option
+{
+public:
+    /*! Types of options */
+    enum Type  {
+       Switch, //!< No paramater
+       String  //!< Parameter is a string
+    };
+
+    Option();
+    Option(const QString &, const Type &, const QString &, const QString &);
+    void set (const QString &, const Type &, const QString &, const QString &);
+    QString getName();
+    QString getShort();
+    QString getLong();
+    Type getType();
+    void setArg(const QString &);
+    QString getArg();
+    void setActive();
+    bool isActive();
+private:
+    QString name;
+    Type type;
+    QString sName;
+    QString lName;
+    QString sarg;
+    bool active;
+};
+
+
+/*! \brief Simple class to deal with command line options */
+
+class Options
+{
+public:
+    Options();
+    int parse();
+    void add (Option );
+    void add (const QString &,const Option::Type &, const QString &, const QString&);
+    void setHelpText(const QString&);
+    QString getHelpText();
+    QString getProgramName();
+    QStringList getFileList();
+    bool isOn (const QString &);
+    QString getArg (const QString &);
+
+private:
+    QString progname;
+    QString helptext;
+    QStringList filelist;
+    QList <Option> optlist;
+};
+
+#endif
diff --git a/ornamentedobj.cpp b/ornamentedobj.cpp
new file mode 100644 (file)
index 0000000..bf4ae2e
--- /dev/null
@@ -0,0 +1,326 @@
+#include <QDebug>
+
+#include "branchitem.h"
+#include "ornamentedobj.h"
+#include "linkablemapobj.h"
+#include "vymmodel.h"
+
+extern bool debug;
+
+/////////////////////////////////////////////////////////////////
+// OrnamentedObj
+/////////////////////////////////////////////////////////////////
+
+OrnamentedObj::OrnamentedObj(QGraphicsItem *parent,TreeItem *ti) :LinkableMapObj(parent,ti)
+{
+    //qDebug()<< "Const OrnamentedObj (s,ti) ti="<<ti;
+    treeItem=ti;
+    init ();
+}
+
+OrnamentedObj::~OrnamentedObj()
+{
+    delete heading;
+    delete systemFlags;
+    delete standardFlags;
+    delete frame;
+}
+
+
+void OrnamentedObj::init ()
+{
+    heading = new HeadingObj(this);
+    heading->setTreeItem (treeItem);
+    heading->move (absPos.x(), absPos.y());
+
+    systemFlags=new FlagRowObj(this);
+    standardFlags=new FlagRowObj(this);
+
+    frame = new FrameObj (this);
+    frame->setTreeItem (treeItem);
+
+    angle=0;
+}
+
+void OrnamentedObj::copy (OrnamentedObj* other)
+{
+    LinkableMapObj::copy(other);
+    heading->copy(other->heading);
+    setColor   (other->heading->getColor());   
+
+    systemFlags->copy (other->systemFlags);
+    standardFlags->copy (other->standardFlags);
+
+    ornamentsBBox=other->ornamentsBBox;
+}
+
+void OrnamentedObj::setLinkColor()
+{
+    VymModel *model=treeItem->getModel();
+    if (!model) return;
+    if (model->getMapLinkColorHint()==HeadingColor)
+       LinkableMapObj::setLinkColor (heading->getColor());
+    else    
+       LinkableMapObj::setLinkColor (model->getMapDefLinkColor());
+}
+
+void OrnamentedObj::setColor (QColor col)
+{
+    heading->setColor(col);
+    setLinkColor();
+}
+
+QColor OrnamentedObj::getColor ()
+{
+    return heading->getColor();
+}
+
+QRectF OrnamentedObj::getBBoxHeading()
+{
+    return heading->getBBox();
+}
+
+void OrnamentedObj::setRotation (const qreal &a)
+{
+    MapObj::setRotation (a);
+    heading->setRotation(a); // FIXME-4 duplicated code...
+}
+
+FrameObj* OrnamentedObj::getFrame()
+{
+    return frame;
+}
+
+FrameObj::FrameType OrnamentedObj::getFrameType()
+{
+    return frame->getFrameType();
+}
+
+QString OrnamentedObj::getFrameTypeName()
+{
+    return frame->getFrameTypeName();
+}
+
+void OrnamentedObj::setFrameType(const FrameObj::FrameType &t)
+{
+    frame->setFrameType(t);
+    if (t == FrameObj::NoFrame)
+    {
+       linkpos=LinkableMapObj::Bottom;
+       useBottomline=true;
+    } else  
+    {
+       linkpos=LinkableMapObj::Middle;
+       useBottomline=false;
+    }
+    updateVisibility();        // Update bottomline
+    calcBBoxSize();
+    positionBBox();
+    requestReposition();
+}
+
+void OrnamentedObj::setFrameType(const QString &s)
+{
+    setFrameType(frame->getFrameType (s));
+}
+
+void OrnamentedObj::setFramePadding (const int &i)
+{
+    frame->setPadding (i);
+    calcBBoxSize();
+    positionBBox();
+    requestReposition();
+}
+
+int OrnamentedObj::getFramePadding ()
+{
+    return frame->getPadding();
+}
+
+void OrnamentedObj::setFrameBorderWidth (const int &i)
+{
+    frame->setBorderWidth(i);
+    calcBBoxSize();
+    positionBBox();
+    requestReposition();
+}
+
+int OrnamentedObj::getFrameBorderWidth()
+{
+    return frame->getBorderWidth();
+}
+
+void OrnamentedObj::setFramePenColor(QColor col)
+{
+    frame->setPenColor (col);
+}
+
+QColor OrnamentedObj::getFramePenColor()
+{
+    return frame->getPenColor ();
+}
+
+void OrnamentedObj::setFrameBrushColor(QColor col)
+{
+    frame->setBrushColor (col);
+}
+
+QColor OrnamentedObj::getFrameBrushColor()
+{
+    return frame->getBrushColor ();
+}
+
+void OrnamentedObj::setFrameIncludeChildren(bool b)
+{
+    calcBBoxSizeWithChildren();
+    frame->setFrameIncludeChildren (b);
+    requestReposition();
+}
+
+bool OrnamentedObj::getFrameIncludeChildren()
+{
+    return frame->getFrameIncludeChildren ();
+}
+
+QRectF OrnamentedObj::getOrnamentsBBox()
+{
+    return ornamentsBBox;
+}
+
+void OrnamentedObj::positionContents()
+{
+    double x=absPos.x();
+    double y=absPos.y();
+    double dp=frame->getTotalPadding();
+    double dp2=dp/2;
+    double ox=leftPad + dp;
+    double oy=topPad  + dp;
+    
+    // vertical align heading to bottom
+    heading->setZValue (dZ_TEXT);
+    heading->setTransformOriginPoint (
+       QPointF ( ox + systemFlags->getBBox().width(),
+                 oy + ornamentsBBox.height() - heading->getHeight() 
+               ) );
+    heading->move (ox + x + systemFlags->getBBox().width(),
+                  oy + y + ornamentsBBox.height() - heading->getHeight() 
+                   );
+    // Flags
+    systemFlags-> move (ox +x , oy + y );
+    systemFlags->setZValue (dZ_ICON);
+    standardFlags->move (ox +x + heading->getWidth() + systemFlags->getBBox().width() , oy + y );
+    standardFlags->setZValue (dZ_ICON);
+
+    ornamentsBBox.moveTopLeft ( QPointF (ox+x,oy+y));
+    clickPoly=QPolygonF (ornamentsBBox);
+
+    // Update bboxTotal coordinate (size set already)
+    if (orientation==LinkableMapObj::LeftOfCenter )
+       bboxTotal.setRect (
+           bbox.x()+(bbox.width() - bboxTotal.width()) , 
+           bbox.y()+bbox.height()/2 - bboxTotal.height()/2,
+           bboxTotal.width(),
+           bboxTotal.height());
+    else
+       bboxTotal.setRect (
+           bbox.x(), 
+           bbox.y()+bbox.height()/2 - bboxTotal.height()/2,
+           bboxTotal.width(),
+           bboxTotal.height());
+
+    // Update frame
+    dp=frame->getXPadding();
+    dp2=dp / 2;
+    frame->setZValue (dZ_FRAME_LOW);
+    if (treeItem && 
+       treeItem->isBranchLikeType() && 
+       ((BranchItem*)treeItem)->getFrameIncludeChildren() 
+       )
+       frame->setRect( QRectF(
+           bboxTotal.x()+dp2,
+           bboxTotal.y()+dp2,
+           bboxTotal.width()-dp,
+           bboxTotal.height()-dp));
+     else
+       frame->setRect( QRectF(
+           bbox.x() + dp,
+           bbox.y() + dp,
+           bbox.width() - 2 * dp,
+           bbox.height() - 2 * dp));
+}
+
+void OrnamentedObj::move (double x, double y)
+{
+    MapObj::move (x,y);
+    positionBBox();
+}
+
+void OrnamentedObj::move (QPointF p)
+{
+    move (p.x(), p.y());
+}   
+
+void OrnamentedObj::moveBy (double x, double y)
+{
+    MapObj::moveBy (x,y);
+    frame->moveBy (x,y);
+    systemFlags->moveBy (x,y);
+    standardFlags->moveBy (x,y);
+    heading->moveBy (x,y);
+    updateLinkGeometry();
+    requestReposition();
+}
+
+void OrnamentedObj::moveBy (QPointF p)
+{
+    moveBy (p.x(), p.y());
+}   
+
+void OrnamentedObj::move2RelPos(double x, double y)
+{
+    setRelPos (QPointF(x,y));
+    if (parObj)
+    {
+       QPointF p=parObj->getChildRefPos();
+       move (p.x() + x, p.y() + y);
+    }
+}
+
+void OrnamentedObj::move2RelPos(QPointF p)
+{
+    move2RelPos (p.x(), p.y());
+}
+
+void OrnamentedObj::activateStandardFlag(Flag *flag)
+{
+    standardFlags->activate(flag);
+    calcBBoxSize();
+    positionBBox();
+    move (absPos.x(), absPos.y() );
+    forceReposition();
+}
+
+void OrnamentedObj::deactivateStandardFlag(const QString &name)
+{
+    standardFlags->deactivate(name);
+    calcBBoxSize();
+    positionBBox();
+    move (absPos.x(),absPos.y() );
+    forceReposition();
+}
+
+
+QString OrnamentedObj::getSystemFlagName(const QPointF &p) 
+{
+    return systemFlags->getFlagName(p);        
+}
+
+QRectF OrnamentedObj::getBBoxFlag (const QString &s)
+{
+    FlagObj *fo=systemFlags->findFlag (s);
+    if (fo) return fo->getBBox();
+    fo=standardFlags->findFlag (s);
+    if (fo) return fo->getBBox();
+    return QRectF();
+}
+
diff --git a/ornamentedobj.h b/ornamentedobj.h
new file mode 100644 (file)
index 0000000..0a2717b
--- /dev/null
@@ -0,0 +1,72 @@
+#ifndef ORNAMENTEDOBJ_H
+#define ORNAMENTEDOBJ_H
+
+#include "frameobj.h"
+#include "linkablemapobj.h"
+
+class TreeItem;
+
+/*! \brief Adds various ornaments and data to the class LinkableMapObj
+
+The ornaments are:
+    - frame
+    - note
+    - references
+    - flags
+    - standard flags
+    - system flags
+ */
+//    - attributes (key/value pairs)  
+
+class OrnamentedObj:public LinkableMapObj {
+public:        
+    OrnamentedObj (QGraphicsItem* parent, TreeItem *ti=NULL);
+    virtual ~OrnamentedObj ();
+    virtual void init ();
+    virtual void copy (OrnamentedObj*);
+
+    virtual void setLinkColor();       // sets color according to colorhint, overloaded
+    virtual void setColor(QColor);     // set the color of text and link
+    QColor getColor ();                    // get color of heading
+    QRectF getBBoxHeading();
+
+    virtual void setRotation (const qreal &a);
+    virtual FrameObj* getFrame();
+    virtual FrameObj::FrameType getFrameType ();
+    virtual QString getFrameTypeName ();
+    virtual void setFrameType (const FrameObj::FrameType &);
+    virtual void setFrameType (const QString &);
+    virtual void setFramePadding (const int &);
+    virtual int  getFramePadding ();
+    virtual void setFrameBorderWidth(const int &);
+    virtual int  getFrameBorderWidth ();
+    virtual void setFramePenColor (QColor);
+    virtual QColor getFramePenColor ();
+    virtual void setFrameBrushColor (QColor);
+    virtual QColor getFrameBrushColor ();
+    virtual void setFrameIncludeChildren (bool);
+    virtual bool getFrameIncludeChildren ();
+    virtual QRectF getOrnamentsBBox();
+
+    virtual void positionContents();
+    virtual void move   (double,double);
+    virtual void move   (QPointF);
+    virtual void moveBy (double,double);
+    virtual void moveBy (QPointF);
+    virtual void move2RelPos (QPointF);            // move relativly to parent^
+    virtual void move2RelPos (double,double);
+
+    virtual void activateStandardFlag(Flag *flag);
+    virtual void deactivateStandardFlag(const QString &name);
+    virtual QString getSystemFlagName (const QPointF &p);
+    virtual QRectF getBBoxFlag (const QString &name);
+
+protected:
+    HeadingObj *heading;       // Heading
+    FlagRowObj *systemFlags;       // System Flags
+    FlagRowObj *standardFlags;     // Standard Flags
+    FrameObj *frame;           // frame around object
+    QRectF ornamentsBBox;      // bbox of flags and heading
+};
+
+#endif
diff --git a/parser.cpp b/parser.cpp
new file mode 100644 (file)
index 0000000..1c3e278
--- /dev/null
@@ -0,0 +1,630 @@
+#include "parser.h"
+
+#include <QDebug>
+#include <QRegExp>
+#include <iostream>
+
+#include "command.h"
+#include "treeitem.h"
+
+extern QList <Command*> modelCommands;
+
+Parser::Parser()
+{
+    initParser();
+}
+
+void Parser::initParser()
+{
+    initAtom();
+    current=-1;
+}
+
+void Parser::initAtom()
+{
+    atom="";
+    com="";
+    paramList.clear();
+    errLevel=NoError;
+    errDescription="";
+    errMessage="";
+}
+
+void Parser::parseAtom (QString s)
+{
+    initAtom();
+    QRegExp re;
+    int pos;
+
+    // Strip WS at beginning
+    while (s.length() > 0 && (
+               s.at(0) == '\n' ||
+               s.at(0) == '\r' ||
+               s.at(0) == ' ') )
+        s = s.mid(1);
+    if (s.length() == 0)
+        return;
+
+    // Get command
+    re.setPattern ("^(\\w*)");
+    pos=re.indexIn (s);
+    if (pos>=0)
+       com=re.cap(1);
+
+    // Get parameters
+    paramList.clear();
+    QString t;
+    int leftParenthesis;
+    int rightParenthesis;
+    if (!nextParenthesisContents(s, leftParenthesis, rightParenthesis, t)) return;
+
+    paramList = findParameters(t);
+    atom = s;
+}
+
+QString Parser::getAtom()
+{
+    return atom;
+}
+
+QString Parser::getCommand()
+{
+    return com;
+}
+
+QStringList Parser::getParameters()
+{
+    return paramList;
+}
+
+int Parser::parCount()
+{
+    return paramList.count();
+}
+
+QString Parser::errorMessage()
+{
+    QString l;
+    switch (errLevel)
+    {
+       case NoError: l="No Error"; break;
+       case Warning: l="Warning"; break;
+       case Aborted: l="Aborted"; break;
+        default: l="";
+    }
+    return QString ("Error Level: '%1'  Command: '%2' Description: '%3'")
+       .arg(l).arg(com).arg(errDescription);
+}
+
+QString Parser::errorDescription()
+{
+    return errDescription;
+}
+
+ErrorLevel Parser::errorLevel()
+{
+    return errLevel;
+}
+
+void Parser::setError(ErrorLevel level, const QString &description)
+{
+    errDescription=description;
+    errLevel=level;
+}
+
+bool Parser::checkParameters(TreeItem *selti)
+{
+    foreach (Command *c, modelCommands)
+    {
+       if (c->getName() == com)
+       {
+           // Check type of selection
+           if (selti)
+           {
+               bool ok;
+               ok=false;
+               TreeItem::Type st=selti->getType();
+               Command::SelectionType ct=c->getSelectionType();
+               if (ct==Command::TreeItem || ct==Command::BranchOrImage)
+               {
+                   if (st==TreeItem::MapCenter ||
+                       st==TreeItem::Branch ||
+                       st==TreeItem::XLink ||
+                       st==TreeItem::Image ) 
+                       ok=true;
+               } else if ( ct==Command::BranchOrImage )
+               {
+                   if (st==TreeItem::MapCenter ||
+                       st==TreeItem::Branch ||
+                       st==TreeItem::Image ) 
+                       ok=true;
+               } else if ( ct==Command::Branch || ct==Command::BranchLike)
+               {
+
+                   if (st == TreeItem::MapCenter ||
+                       st == TreeItem::Branch )
+                       ok=true;
+               } else if ( ct==Command::Image )            
+               {
+                   if (st==TreeItem::Image )
+                       ok=true;
+               } else if ( ct==Command::Any)       
+               {
+                   ok=true;
+               } else if ( ct==Command::XLink)     
+               {
+                   if (st==TreeItem::XLink)
+                       ok=true;
+               } else
+                   qWarning()<<"Parser::checkParameters  Unknown selection type";
+               if (!ok)
+               {
+                   setError (Aborted, "Selection does not match command");
+                   return false;
+               }
+           }
+
+           // Check for number of parameters
+           int optPars=0;
+           for (int i=0; i < c->parCount(); i++ )
+               if (c->isParOptional(i) ) optPars++;
+           if (paramList.count() < (c->parCount() - optPars) ||
+               paramList.count() > c->parCount() )
+           {
+               QString expected;
+               if (optPars>0)
+                   expected=QString("%1..%2").arg(c->parCount()-optPars).arg(c->parCount() );
+               else 
+                   expected=QString().setNum(c->parCount());
+               setError (
+                   Aborted,
+                   QString("Wrong number of parameters: Expected %1, but found %2").arg(expected).arg(paramList.count()));
+               return false;
+           }
+
+           // Check types of parameters
+           bool ok;
+           for (int i=0; i < paramList.count(); i++ )
+           {   
+               switch (c->getParType(i) )
+               {
+                   case Command::String:
+                       parString (ok,i);
+                        if (!ok) 
+                        {
+                            // Convert to string implicitly
+                            paramList[i]='"' + paramList[i] + '"';
+                            ok=true;
+                        }
+                       break;
+                   case Command::Int:  
+                       parInt (ok,i);
+                       break;
+                   case Command::Double:       
+                       parDouble (ok,i);
+                       break;
+                   case Command::Color:        
+                       parColor (ok,i);
+                       break;
+                   case Command::Bool: 
+                       parBool (ok,i);
+                       break;
+                   default: ok=false;  
+               }
+               if (!ok)
+               {
+                   setError (
+                       Aborted, 
+                       QString("Parameter %1 has wrong type").arg(i));
+                   return false;
+               }
+           }
+           resetError();
+           return true;
+       }    
+    } 
+    setError (Aborted,"Unknown command");
+    return false;
+}
+
+void Parser::resetError ()
+{
+    errMessage="";
+    errDescription="";
+    errLevel=NoError;
+}
+
+bool Parser::checkParCount (const int &expected)
+{
+    if (paramList.count()!=expected)
+    {
+       setError (
+           Aborted,
+           QString("Wrong number of parameters: Expected %1, but found %2").arg(expected).arg(paramList.count()));
+       return false;
+    } 
+    return true;    
+}
+
+bool Parser::checkParIsInt(const int &index)
+{
+    bool ok;
+    if (index > paramList.count())
+    {
+       setError (
+           Aborted,
+           QString("Parameter index %1 is outside of parameter list").arg(index));
+       return false;
+    } else
+    {
+       paramList[index].toInt (&ok, 10);
+       if (!ok)
+       {
+           setError (
+               Aborted,
+               QString("Parameter %1 is not an integer").arg(index));
+           return false;
+       } 
+    }  
+    return true;
+}
+
+bool Parser::checkParIsDouble(const int &index)
+{
+    bool ok;
+    if (index > paramList.count())
+    {
+       setError (
+           Aborted,
+           QString("Parameter index %1 is outside of parameter list").arg(index));
+       return false;
+    } else
+    {
+       paramList[index].toDouble (&ok);
+       if (!ok)
+       {
+           setError (
+               Aborted,
+               QString("Parameter %1 is not double").arg(index));
+           return false;
+       } 
+    }  
+    return true;
+}
+
+int Parser::parInt (bool &ok,const uint &index)
+{
+    if (checkParIsInt (index))
+       return paramList[index].toInt (&ok, 10);
+    ok=false;
+    return 0;
+}
+
+QString Parser::parString (bool &ok, const int &index)
+{
+    // return the string at index, this could be also stored in
+    // a variable later
+    
+    // Try to find out if string boundaries are "" or ''
+    QRegExp rx;
+    int pos = paramList[index].indexOf("\"");
+    int n   = paramList[index].indexOf("'");
+
+    if ( n < 0 && pos < 0 )
+    {
+        // Neither " nor ' found
+        ok = false;
+        return "";
+    } else if ( pos >= 0 && n < 0) 
+        // Found ", but no ' 
+        rx.setPattern("\"(.*)\"");
+    else if ( n >= 0 && pos < 0) 
+        // Found ', but no "
+        rx.setPattern("'(.*)'");
+    else if ( pos > n )
+        // "" is within ''
+        rx.setPattern("'(.*)'");
+    else
+        // '' is within ""
+        rx.setPattern("\"(.*)\"");
+
+
+
+    QString r;
+    pos=rx.indexIn (paramList[index]);
+    if (pos>=0)
+    {
+       r = rx.cap (1);
+       ok = true;
+    } else    
+    {
+       r = "";
+       ok = false;
+    }
+    return r;
+}
+
+bool Parser::parBool (bool &ok,const int &index)
+{
+    // return the bool at index, this could be also stored in
+    // a variable later
+    QString r;
+    ok=true;
+    QString p=paramList[index];
+    if (p=="true" || p=="1")
+       return true;
+    else if (p=="false" || p=="0")
+       return false;
+    ok=false;
+    return ok;
+}
+
+QColor Parser::parColor(bool &ok,const int &index)
+{
+    // return the QColor at index
+    ok = false;
+    QString r;
+    QColor c;
+
+    // testscipts use single quotes, convert them first
+    paramList[index].replace ("'", "\"");
+    QRegExp re("\"(.*)\"");
+    int pos = re.indexIn (paramList[index]);
+    if (pos >= 0)
+    {
+       r = re.cap (1);
+       c.setNamedColor(r);
+       ok = c.isValid();
+    }  
+    return c;
+}
+
+double Parser::parDouble (bool &ok,const int &index)
+{
+    if (checkParIsDouble (index))
+       return paramList[index].toDouble (&ok);
+    ok=false;
+    return 0;
+}
+
+void Parser::setScript(const QString &s)
+{
+    script=s;
+}   
+
+QString Parser::getScript()
+{
+    return script;
+}   
+
+void Parser::execute()
+{
+    current=0;
+}   
+
+bool Parser::next() //FIXME-3 parser does not detect missing closing " or '("foo" ()'
+{
+    int start=current;
+    if (current<0) execute();
+    if (current+1>=script.length()) return false;
+
+    bool inQuote=false;
+    QChar bnd;
+
+    while (true)
+    {
+        // Check if we are inside a string
+        if (script.at(current) == '\"')
+        {
+            if (inQuote)
+            {
+                if (script.at(current) == bnd)
+                    inQuote=false;
+            } else
+            {
+                inQuote = true;
+                bnd = '\"';
+            }
+        } else if (script.at(current) == '\'' )
+        {
+            if (inQuote)
+            {
+                if (script.at(current) == bnd)
+                    inQuote=false;
+            } else
+            {
+                inQuote = true;
+                bnd = '\'';
+            }
+        }
+
+        // Check for EOL
+        if (script.at(current) == '\n')
+        {
+            if (current+1 < script.length())
+            {
+                current++;
+                if (script.at(current) == '\r')
+                    current++;
+            }
+        }
+
+        // Check if we are in a comment
+        if (!inQuote && script.at(current)=='#')
+        {
+            while (script.at(current)!='\n')
+            {
+                current++;
+                if (script.at(current) == '\r')
+                    current++;
+                if (current+1>=script.length())
+                    return false;
+            }
+            start=current;
+        }
+
+        // Check for end of atom
+        if (!inQuote && script.at(current)==';')
+        {
+            parseAtom(script.mid(start,current-start) );
+            current++;
+            return true;
+        }
+
+        // Check for end of script
+        if (current+1>=script.length() )
+        {
+            if (inQuote)
+            {
+                setError (Aborted,"Runaway string");
+                return false;
+            } else
+            {
+                atom=script.mid(start);
+                return true;
+            }
+        }
+        current++;
+    }
+}   
+
+QStringList Parser::getCommands() 
+{
+    QStringList list;
+    foreach (Command *c, modelCommands)
+       list.append (c->getName() );
+    return list;       
+}
+
+QStringList Parser::findParameters(const QString &s)
+{
+    QStringList ret;
+    int left = 0;
+    bool inquote = false;
+
+    // Try to find out if string boundaries are "" or ''
+    QString bnd;
+    int pos = s.indexOf("\"");
+    int n   = s.indexOf("'");
+
+    if ( n < 0 && pos < 0 )
+    {
+        // Neither " nor ' found, ignore later
+        bnd = "\"";
+    } else if ( pos >= 0 && n < 0) 
+        // Found ", but no ' 
+        bnd = "\"";
+    else if ( n >= 0 && pos < 0) 
+        // Found ', but no "
+        bnd = "'";
+    else if ( pos > n )
+        // "" is within ''
+        bnd = "'";
+    else
+        // '' is within ""
+        bnd = "\"";
+
+    pos = 0;
+    while (pos < s.length())
+    {
+        if (s.at(pos) == bnd ) 
+        {
+            if (inquote)
+                inquote = false;
+            else    
+                inquote = true;
+        }
+        if (s.at(pos) == ',' && !inquote)
+        {
+            ret << s.mid(left, pos - left );
+            left = pos + 1;
+        }
+        pos++;
+    }
+    if (left > 0) 
+        ret << s.mid(left, pos - left );
+    else
+        if (!s.isEmpty()) ret << s;
+    return ret;
+}
+
+bool Parser::nextParenthesisContents(
+        const QString &s, 
+        int &leftParenthesis, 
+        int &rightParenthesis, 
+        QString &contents)
+{
+    int pos = 0;
+    int leftP  = -1;
+    int rightP = -1;
+    int openParenthesis = 0;
+    bool inQuote = false;
+    QChar bnd;
+    while (pos < s.length())
+    {
+        // Check if we are inside a string
+        if (s.at(current) == '\"')
+        {
+            if (inQuote)
+            {
+                if (s.at(current) == bnd)
+                    inQuote=false;
+            } else
+            {
+                inQuote = true;
+                bnd = '\"';
+            }
+        } else if (s.at(current) == '\'' )
+        {
+            if (inQuote)
+            {
+                if (s.at(current) == bnd)
+                    inQuote=false;
+            } else
+            {
+                inQuote = true;
+                bnd = '\'';
+            }
+        }
+
+        if (s.at(pos) == '(' && !inQuote)
+        {
+            openParenthesis++;
+            if (openParenthesis == 1) leftP=pos;
+        }
+
+        if (s.at(pos) == ')' && !inQuote)
+        {
+            openParenthesis--;
+            if (openParenthesis == 0) rightP=pos;
+        }
+
+        if (openParenthesis < 0) 
+        {
+            setError(Aborted, "Error, too many closing parenthesis!");
+            return false;
+        }
+
+        pos++;
+    }
+
+    if (leftP < 0)
+    {
+        setError(Aborted, "Error: No left parenthesis found");
+        return false;
+    }
+
+    if (rightP < 0) 
+    {
+        setError(Aborted, "Error: No right parenthesis found");
+        return false;
+    }
+
+    contents = s.mid(leftP+1, rightP - leftP - 1);
+    pos = leftParenthesis;
+    leftParenthesis  = leftP;
+    rightParenthesis = rightP;
+
+    return true;
+}
+
diff --git a/parser.h b/parser.h
new file mode 100644 (file)
index 0000000..e4df328
--- /dev/null
+++ b/parser.h
@@ -0,0 +1,67 @@
+#ifndef PARSER_H
+#define PARSER_H
+
+#include <QColor>
+#include <QStringList>
+
+enum ErrorLevel {NoError,Warning,Aborted};
+
+class Command;
+class TreeItem;
+
+class Parser
+{
+public:
+    Parser();
+    void parseAtom (QString input);
+    QString getAtom();
+    QString getCommand();
+    QStringList getParameters();
+    int parCount();
+    QString errorMessage();
+    QString errorDescription();
+    ErrorLevel errorLevel();
+    void setError (ErrorLevel level,const QString &description);
+    void resetError();
+    bool checkParameters(TreeItem *selti);
+    bool checkParCount (const int &index);
+    bool checkParIsInt (const int &index);
+    bool checkParIsDouble (const int &index);
+    int parInt (bool &,const uint &index);
+    QString parString(bool &ok,const int &index);
+    bool parBool (bool &ok, const int &index);
+    QColor parColor (bool &ok, const int &index);
+    double parDouble (bool &ok, const int &index);
+
+    void setScript (const QString &);
+    QString getScript();
+    void execute();
+    bool next();
+
+    QStringList getCommands(); 
+
+protected:
+    QStringList findParameters(const QString &s);
+    bool nextParenthesisContents(
+            const QString &s, 
+            int &leftParenthesis, 
+            int &rightParenthesis, 
+            QString &contents);
+
+private:
+    void initParser();
+    void initAtom();
+
+    QString input;
+    QString atom;
+    QString com;
+    QStringList paramList;
+    int current;
+    QString script;
+
+    QString errMessage;
+    QString errDescription;
+    ErrorLevel errLevel;
+};
+
+#endif
diff --git a/scripteditor.cpp b/scripteditor.cpp
new file mode 100644 (file)
index 0000000..e914898
--- /dev/null
@@ -0,0 +1,222 @@
+#include "scripteditor.h"
+
+#include <QDebug> //FIXME-3 testing
+#include <QFileDialog>
+#include <QMessageBox>
+#include <QTextStream>
+
+#include "command.h"
+#include "macros.h"
+#include "mainwindow.h"
+#include "options.h"
+#include "slideitem.h"
+#include "slidemodel.h"
+#include "vymmodel.h"
+
+extern QString vymName;
+extern QList <Command*> modelCommands;
+extern QDir lastMapDir;
+extern Macros macros;
+extern Main *mainWindow;
+extern Options options;
+
+ScriptEditor::ScriptEditor (QWidget *parent):QWidget(parent)
+{
+    ui.setupUi (this);
+
+    //connect ( ui.openButton, SIGNAL (clicked() ), this, SLOT (openClicked() ));
+    connect ( ui.saveSlideButton, SIGNAL (clicked() ), this, SLOT (saveSlide() ));
+    //connect ( ui.saveAsButton, SIGNAL (clicked() ), this, SLOT (saveAsClicked() ));
+    connect ( ui.runButton,  SIGNAL (clicked() ), this, SLOT (runClicked() ));
+    connect ( ui.macroRunButton,  SIGNAL (clicked() ), this, SLOT (runClicked() ));
+    connect ( ui.macroLoadButton, SIGNAL (pressed()), this, SLOT (loadMacroClicked() ) );
+    connect ( ui.macroSaveButton, SIGNAL (pressed()), this, SLOT (saveMacroClicked() ) );
+
+
+    vymModelID=-1;
+
+    // Initialize Editor
+    QFont font;
+    font.setFamily("Courier");
+    font.setFixedPitch(true);
+    font.setPointSize(12);
+    ui.editor->setFont(font);
+
+    ui.modeTabWidget->setTabText(0,tr("Slide","Mode in scriptEditor"));
+    ui.modeTabWidget->setTabText(1,tr("Macro","Mode in scriptEditor"));
+
+    ui.keyCombo->insertItem(0, QString("---") );
+
+    // Init function key selection
+    for (int i=0; i<24; i++)
+    {
+        QString prefix="";
+        if (i>11) prefix="Shift +";
+        int n=i%12 + 1;
+        ui.keyCombo->insertItem(i, QString("%1 F%2").arg(prefix).arg(n) );
+    }
+    
+    highlighter = new Highlighter(ui.editor->document());
+    QStringList list;
+    foreach (Command *c, modelCommands)
+       list.append (c->getName() );
+    highlighter->addKeywords (list);
+
+    QAction *a = new QAction( tr( "Save","ScriptEditor" ), ui.editor);
+    a->setShortcut (Qt::CTRL + Qt::Key_S );     
+    a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( saveSlide() ) );
+}
+
+void ScriptEditor::setScriptFile(const QString &fn) 
+{
+    QFile f( fn );
+    if ( !f.open( QFile::ReadOnly|QFile::Text ) )
+    {
+       QString error (QObject::tr("Error"));
+       QString msg (QObject::tr("Couldn't open \"%1\"\n%2.").arg(fn).arg(f.errorString()));
+       if (options.isOn("batch"))
+           qWarning ()<<error+": "+msg;
+       else    
+           QMessageBox::warning(0, error,msg);
+       return;
+    }  
+
+    QTextStream in( &f );
+    ui.editor->setText (in.readAll());
+    f.close();
+}
+
+void ScriptEditor::saveFile()
+{
+    QFile f( filename );
+    if ( !f.open( QIODevice::WriteOnly ) ) 
+    {
+        QMessageBox::warning(0, QObject::tr("Error"),QObject::tr("Couldn't save \"%1\"").arg(filename));
+        return;
+    }
+
+    QTextStream t( &f );
+    t.setCodec("UTF-8");
+    t << ui.editor->toPlainText();
+    f.close();
+}
+
+void ScriptEditor::saveSlide()
+{
+    VymModel *vm=mainWindow->getModel(vymModelID);
+    if (!vm)
+    {
+       QMessageBox::warning(0,tr("Warning"),tr("Couldn't get model to save script into slide!"));
+       return;
+    }
+    SlideItem *si=vm->getSlideModel()->findSlideID(slideID);
+    if (!si)
+    {
+       QMessageBox::warning(0,tr("Warning"),tr("Couldn't find slide to save script into slide!"));
+       return;
+    }
+    si->setInScript(ui.editor->toPlainText());
+}
+
+void ScriptEditor::setSlideScript(uint model_id, uint slide_id,const QString &s)
+{
+    vymModelID=model_id;
+    slideID=slide_id;
+    mode=Slide;
+    ui.editor->setText(s);
+}
+
+void ScriptEditor::saveClicked()
+{
+    if (filename.isEmpty() )
+       saveAsClicked();
+    else
+       saveFile();
+}
+
+void ScriptEditor::saveAsClicked()
+{
+    QString fn = QFileDialog::getSaveFileName( 
+       this, 
+       QString (vymName + " - " +tr("Save script")),
+       QString (),
+       "VYM script (*.vys);;All files (*)",
+       0,
+       QFileDialog::DontConfirmOverwrite);
+       
+    if ( !fn.isEmpty() ) 
+    {
+       QFile file (fn);
+       if (file.exists())
+       {
+           QMessageBox mb( vymName,
+               tr("The file %1\nexists already.\nDo you want to overwrite it?","dialog 'save as'").arg(fn),
+           QMessageBox::Warning,
+           QMessageBox::Yes | QMessageBox::Default,
+           QMessageBox::Cancel | QMessageBox::Escape,
+           Qt::NoButton );
+           mb.setButtonText( QMessageBox::Yes, tr("Overwrite") );
+           mb.setButtonText( QMessageBox::No, tr("Cancel"));
+           switch( mb.exec() ) 
+           {
+               case QMessageBox::Yes:
+                   // save 
+                   filename = fn;
+                   saveFile();
+                   return;
+               case QMessageBox::Cancel:
+                   // do nothing
+                   return;
+           }
+       } 
+       filename=fn;
+       saveFile();
+    }
+}
+
+void ScriptEditor::openClicked()
+{
+    QString filter("VYM scripts (*.vys);;All (*)");
+    QString fn=QFileDialog::getOpenFileName( 
+       this,
+       vymName+" - " + tr("Load script"), 
+       lastMapDir.path(), 
+       filter);
+
+    if (!fn.isEmpty() )
+    {
+       QFile f( fn);
+       if ( !f.open( QIODevice::ReadOnly ) )
+       {
+           QMessageBox::warning(0, 
+               tr("Error"),
+               tr("Couldn't open %1.\n").arg(filename));
+           return;
+       }   
+
+       QTextStream ts( &f );
+    ts.setCodec("UTF-8");
+    ui.editor->setText( ts.readAll() );
+       f.close();
+       lastMapDir.setPath(fn.left(fn.lastIndexOf ("/")) );
+    }
+}
+
+void ScriptEditor::runClicked()
+{
+    emit runScript (ui.editor->toPlainText() );
+}
+
+void ScriptEditor::loadMacroClicked()
+{
+    QString m=macros.getMacro (ui.keyCombo->currentIndex()+1);
+    if (!m.isEmpty())
+    ui.editor->setText (m);
+}
+void ScriptEditor::saveMacroClicked()
+{
+    filename=macros.getPath(ui.keyCombo->currentIndex());
+    saveFile();
+}
diff --git a/scripteditor.h b/scripteditor.h
new file mode 100644 (file)
index 0000000..f6dd188
--- /dev/null
@@ -0,0 +1,46 @@
+#ifndef SCRIPTEDITOR_H
+#define SCRIPTEDITOR_H
+
+#include "ui_scripteditor.h"
+
+#include "highlighter.h"
+
+class VymModel;
+
+class ScriptEditor:public QWidget
+{
+    Q_OBJECT
+
+public:
+    enum Mode {Slide,File};
+private:
+    Mode mode;
+    uint vymModelID;
+    uint slideID;
+
+public:
+    ScriptEditor (QWidget* parent = 0);
+    void setScriptFile (const QString &fn);
+    void saveFile();
+    void setSlideScript(uint vymModelID, uint slideID, const QString &);
+
+public slots:
+    void saveSlide();
+    void saveClicked();
+    void saveAsClicked();
+    void openClicked();
+    void runClicked();
+    void loadMacroClicked();
+    void saveMacroClicked();
+
+signals:
+    void runScript (QString);
+    
+private:
+    Ui::ScriptEditor ui;
+    QString filename;
+    Highlighter *highlighter;
+};
+
+
+#endif 
diff --git a/scripteditor.ui b/scripteditor.ui
new file mode 100644 (file)
index 0000000..f5b4d65
--- /dev/null
@@ -0,0 +1,174 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>ScriptEditor</class>
+ <widget class="QWidget" name="ScriptEditor">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>714</width>
+    <height>507</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>Form</string>
+  </property>
+  <layout class="QVBoxLayout" name="verticalLayout_2">
+   <item>
+    <widget class="QTextEdit" name="editor">
+     <property name="sizePolicy">
+      <sizepolicy hsizetype="Expanding" vsizetype="MinimumExpanding">
+       <horstretch>0</horstretch>
+       <verstretch>0</verstretch>
+      </sizepolicy>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <widget class="QTabWidget" name="modeTabWidget">
+     <property name="sizePolicy">
+      <sizepolicy hsizetype="Expanding" vsizetype="MinimumExpanding">
+       <horstretch>0</horstretch>
+       <verstretch>0</verstretch>
+      </sizepolicy>
+     </property>
+     <property name="maximumSize">
+      <size>
+       <width>16777215</width>
+       <height>67</height>
+      </size>
+     </property>
+     <property name="currentIndex">
+      <number>0</number>
+     </property>
+     <widget class="QWidget" name="slideTab">
+      <property name="accessibleDescription">
+       <string/>
+      </property>
+      <attribute name="title">
+       <string>Tab 1</string>
+      </attribute>
+      <layout class="QGridLayout" name="gridLayout_2">
+       <item row="0" column="1">
+        <widget class="QPushButton" name="saveSlideButton">
+         <property name="text">
+          <string>Save to selected slide</string>
+         </property>
+         <property name="shortcut">
+          <string/>
+         </property>
+        </widget>
+       </item>
+       <item row="0" column="2">
+        <spacer name="horizontalSpacer">
+         <property name="orientation">
+          <enum>Qt::Horizontal</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>530</width>
+           <height>20</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
+       <item row="1" column="1">
+        <spacer name="verticalSpacer_2">
+         <property name="orientation">
+          <enum>Qt::Vertical</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>97</width>
+           <height>0</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
+       <item row="0" column="0">
+        <widget class="QPushButton" name="runButton">
+         <property name="text">
+          <string>Run</string>
+         </property>
+         <property name="shortcut">
+          <string/>
+         </property>
+        </widget>
+       </item>
+      </layout>
+     </widget>
+     <widget class="QWidget" name="macroTab">
+      <property name="enabled">
+       <bool>true</bool>
+      </property>
+      <attribute name="title">
+       <string>Tab 2</string>
+      </attribute>
+      <layout class="QGridLayout" name="gridLayout">
+       <item row="0" column="0">
+        <layout class="QVBoxLayout" name="verticalLayout">
+         <item>
+          <layout class="QHBoxLayout" name="horizontalLayout">
+           <property name="spacing">
+            <number>-1</number>
+           </property>
+           <property name="sizeConstraint">
+            <enum>QLayout::SetMinimumSize</enum>
+           </property>
+           <item>
+            <widget class="QLabel" name="label">
+             <property name="text">
+              <string>Current key:</string>
+             </property>
+            </widget>
+           </item>
+           <item>
+            <widget class="QComboBox" name="keyCombo"/>
+           </item>
+           <item>
+            <widget class="QPushButton" name="macroLoadButton">
+             <property name="text">
+              <string>Load</string>
+             </property>
+            </widget>
+           </item>
+           <item>
+            <widget class="QPushButton" name="macroSaveButton">
+             <property name="text">
+              <string>Save</string>
+             </property>
+            </widget>
+           </item>
+           <item>
+            <widget class="QPushButton" name="macroRunButton">
+             <property name="text">
+              <string>Run</string>
+             </property>
+            </widget>
+           </item>
+           <item>
+            <spacer name="horizontalSpacer_2">
+             <property name="orientation">
+              <enum>Qt::Horizontal</enum>
+             </property>
+             <property name="sizeHint" stdset="0">
+              <size>
+               <width>308</width>
+               <height>20</height>
+              </size>
+             </property>
+            </spacer>
+           </item>
+          </layout>
+         </item>
+        </layout>
+       </item>
+      </layout>
+     </widget>
+    </widget>
+   </item>
+  </layout>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/scriptoutput.cpp b/scriptoutput.cpp
new file mode 100644 (file)
index 0000000..846981c
--- /dev/null
@@ -0,0 +1,25 @@
+#include "scriptoutput.h"
+
+ScriptOutput::ScriptOutput()
+{
+    editor = new QTextEdit(this);
+
+    QVBoxLayout *layout = new QVBoxLayout;
+    layout->addWidget(editor);
+    setLayout(layout);
+}
+
+ScriptOutput::~ScriptOutput()
+{
+    delete layout;
+    delete editor;
+}
+
+void ScriptOutput::setText(const QString &text)
+{
+    editor->setText(text);
+}
+void ScriptOutput::append(const QString &text)
+{
+    editor->append(text);
+}
diff --git a/scriptoutput.h b/scriptoutput.h
new file mode 100644 (file)
index 0000000..13af2ec
--- /dev/null
@@ -0,0 +1,21 @@
+#ifndef SCRIPTOUTPUT_H
+#define SCRIPTOUTPUT_H
+
+#include <QTextEdit>
+#include <QVBoxLayout>
+
+class ScriptOutput:public QWidget
+{
+    Q_OBJECT
+public:
+    ScriptOutput();
+    ~ScriptOutput();
+    void setText(const QString &text);
+    void append(const QString &text);
+
+private:
+    QTextEdit *editor;
+    QVBoxLayout *layout;
+};
+
+#endif // SCRIPTOUTPUT_H
diff --git a/scripts/bugger b/scripts/bugger
new file mode 100755 (executable)
index 0000000..9663583
--- /dev/null
@@ -0,0 +1,17 @@
+#!/usr/bin/ruby
+
+require 'bicho'
+
+server = Bicho::Client.new('https://bugzilla.novell.com')
+ARGV.each do |id| 
+  server.get_bugs(id).each do |bug|  
+    puts "#{id}:short_desc:\"#{bug.summary}\""
+    puts "#{id}:priority:\"#{bug.priority}\""
+    puts "#{id}:severity:\"#{bug.severity}\""
+    puts "#{id}:deltats:\"#{bug.delta_ts}\""
+    puts "#{id}:bug_status:\"#{bug.status}\""
+    puts "#{id}:whiteboard:\"#{bug.whiteboard}\""
+  end  
+end
+
+
diff --git a/scripts/getbinaries b/scripts/getbinaries
new file mode 100755 (executable)
index 0000000..1a9f2ea
--- /dev/null
@@ -0,0 +1,58 @@
+#!/bin/bash
+
+CONFIG=makedist.config
+
+if [ ! -f $CONFIG ]; then
+    echo Configuration missing: $CONFIG
+    echo Please set the following variables in $CONFIG
+    echo in you current directory:
+    echo
+    echo 'VERSION=x.y.z   #use desired version'
+    echo 'BRANCH="master" #or e.g. "maintained-release"'
+    echo 'REMOTE="sf"     #depending on your git configuration'
+    exit
+else    
+    . $CONFIG
+fi    
+
+# Init
+OLDDIR=$(pwd)
+SRCDIR=$OLDDIR/vym
+TMPDIR=$OLDDIR/tmp
+
+echo "Getting sources for: vym"  
+echo "             Branch: $BRANCH"
+echo "             Branch: $VERSION"
+echo "  Working directory: $OLDDIR"
+echo 
+
+
+#Specific init:
+BINDIR=$OLDDIR/binaries
+DOCDIR=$TMPDIR/tex
+
+echo Creating $BINDIR...
+mkdir $BINDIR
+
+echo Remove current content from $BINDIR...
+rm $BINDIR/* 
+
+echo Copy README.txt INSTALL.txt LICENCSE.txt...
+cp $SRCDIR/README.txt $SRCDIR/INSTALL.txt $SRCDIR/LICENSE.txt $BINDIR
+
+echo Copy pdfs... 
+cp $DOCDIR/*.pdf $BINDIR
+
+echo Copy source tarball
+cp $OLDDIR/vym-$VERSION.tar.bz2 $BINDIR
+
+echo Get binaries from OBS
+osc getbinaries xUbuntu_11.10 i586
+osc getbinaries xUbuntu_11.10 x86_64
+osc getbinaries openSUSE_12.1 i586
+osc getbinaries openSUSE_12.1 x86_64
+
+echo Removing logfile
+rm $BINDIR/rpmlint.log
+
+ls -l $BINDIR
\ No newline at end of file
diff --git a/scripts/make-qrc.rb b/scripts/make-qrc.rb
new file mode 100755 (executable)
index 0000000..7a8f686
--- /dev/null
@@ -0,0 +1,29 @@
+#!/usr/bin/ruby
+#
+# Simple script to generate the resource file
+# So far only png images are considered
+
+require 'find'
+require 'pathname'
+
+outfile = 'vym.qrc'
+subdirs = ['flags','icons']
+
+content = "<!DOCTYPE RCC><RCC version=\"1.0\">\n"
+content << "  <qresource>\n"
+subdirs.each do |dir|
+  Find.find(dir) do |path|
+    # Create alias using the name of the subdir within dir
+    abs_path  = Pathname.new( File.expand_path( path) )
+    root_path = Pathname.new( File.expand_path( dir ) )
+    rel_path  = abs_path.relative_path_from( root_path )
+    
+    if path =~ /.*\.png$/
+      content << "    <file alias=\"#{rel_path.to_s}\">#{path}</file>\n" 
+    end
+  end
+end
+content << "  </qresource>"
+content << "</RCC>"
+
+File.write(outfile, content)
\ No newline at end of file
diff --git a/scripts/makedist-vym b/scripts/makedist-vym
new file mode 100755 (executable)
index 0000000..69f0e78
--- /dev/null
@@ -0,0 +1,116 @@
+#!/bin/bash
+
+CONFIG=makedist.config
+
+if [ ! -f $CONFIG ]; then
+    echo Configuration missing: $CONFIG
+    echo Please set the following variables in $CONFIG
+    echo in you current directory:
+    echo
+    echo 'VERSION=x.y.z   #use desired version'
+    echo 'BRANCH="master" #or e.g. "maintained-release"'
+    echo 'REMOTE="sf"     #depending on your git configuration'
+    exit
+else    
+    . $CONFIG
+fi    
+
+# Init
+OLDDIR=$(pwd)
+SRCDIR=$OLDDIR/vym
+TMPDIR=$OLDDIR/tmp
+
+echo "Getting sources for: vym"  
+echo "             Branch: $BRANCH"
+echo "             Branch: $VERSION"
+echo "  Working directory: $OLDDIR"
+echo 
+
+
+if [ -d $TMPDIR ]; then
+    read -n 1 -p "$TMPDIR exists: Remove it first? [y]" INPUT
+    if [ ! "$INPUT" = "n" ]; then
+       rm -rf $TMPDIR
+    fi 
+fi
+echo
+mkdir $TMPDIR
+
+read -n 1 -p "Pull from git repository ? [y]" INPUT
+DO_CHECKOUT=1
+if [ "$INPUT" = "n" ]; then
+    DO_CHECKOUT=0
+fi     
+echo
+
+read -n 1 -p "Create Documentation? [y]" INPUT
+DO_DOCS=1
+if [ "$INPUT" = "n" ]; then
+    DO_DOCS=0
+fi     
+echo
+
+read -n 1 -p "Create Tarball? [y]" INPUT
+DO_TARBALL=1
+if [ "$INPUT" = "n" ]; then
+    DO_TARBALL=0
+fi     
+echo
+
+echo -n "Remove unpacked sources after creating tarball? [y]"
+#echo "(do this before  \"osc addremove\")"
+read -n 1 INPUT
+DO_REMOVE=1
+if [ "$INPUT" = "n" ]; then
+    DO_REMOVE=0
+fi     
+echo
+
+# get data from repository
+if [ $DO_CHECKOUT = 1 ]; then
+    cd $OLDDIR
+    echo Removing $SRCDIR...
+    rm -rf $SRCDIR
+    git clone -b $BRANCH git://git.code.sf.net/p/vym/code vym
+fi     
+
+#VERSION=$(grep __VYM_VERSION $SRCDIR/version.h |  sed -e 's/^.*\"\(.*\)\"$/\1/g')
+TARBALLSRC=vym-$VERSION
+echo
+echo "Setting version from sources: $VERSION"
+echo
+
+# create documentation
+if [ $DO_DOCS = 1 ] ; then
+    cp -ra $SRCDIR/tex $TMPDIR
+    cp -ra $SRCDIR/icons $TMPDIR
+    cp -ra $SRCDIR/flags $TMPDIR
+    cd $TMPDIR/tex
+    for i in {1..3} ; do
+       pdflatex vym.tex
+       pdflatex vym_es.tex
+       pdflatex vym_fr.tex
+       sleep 1
+    done       
+    cd $OLDDIR
+fi
+
+cd $OLDDIR
+
+# create tarball
+if [ $DO_TARBALL = 1 ]; then
+    if [ -d $TARBALLSRC ] ;  then
+       rm -rf $TARBALLSRC
+    fi
+    cp -ra $SRCDIR $TARBALLSRC
+
+    # Copy doc
+    mkdir -p $TARBALLSRC/doc
+    cp $TMPDIR/tex/*.pdf $TARBALLSRC/doc
+
+    rm -rf $TARBALLSRC/.git
+    tar cvjf vym-$VERSION.tar.bz2 $TARBALLSRC
+    if [ $DO_REMOVE = 1 ]; then
+       rm -rf $TARBALLSRC
+    fi
+fi
diff --git a/scripts/screencast b/scripts/screencast
new file mode 100755 (executable)
index 0000000..588649b
--- /dev/null
@@ -0,0 +1,10 @@
+#!/bin/bash
+
+VYMDIR=~/vym/code
+MAP=$VYMDIR/../maps/screencasts/ao-report.vym
+
+$VYMDIR/vym -l -n test \
+  -geometry 1280x720+0+0 \
+  $MAP &
+
+xvidcap --audio no --cap_geometry 1280x720+0+0 --continue --file xxout.mpeg
diff --git a/scripts/vivym b/scripts/vivym
new file mode 100755 (executable)
index 0000000..69befe0
--- /dev/null
@@ -0,0 +1,64 @@
+#!/bin/bash
+
+OLD=`pwd`
+
+SAVEIFS=$IFS
+IFS=$(echo -en "\n\b")
+
+for MAP in $*; do
+    # Convert rel to abs path
+    case $MAP in 
+           /*)  ;;
+           *) MAP=$PWD/$MAP  ;;
+    esac
+    #echo MAP1=$MAP
+    # Create directory
+    DIR=`mktemp -d /tmp/vivym.XXXXXX`
+    unzip $MAP -d $DIR
+    FILE=${MAP##*/}
+    EXT=${FILE#*.}
+    BASE=${FILE%%.*}
+
+    if ! [ -e $DIR/$BASE.xml ] ; then 
+        # echo "Map is renamed, setting BASE=$BASE"
+        BASE=$(ls -1 $DIR/*.xml)
+        BASE=${BASE##*/}
+        BASE=${BASE%%.*}
+    fi
+    
+    #echo MAP=$MAP
+    #echo FILE=$FILE
+    #echo BASE=$BASE
+    #echo EXT=$EXT
+
+    # Count images
+    IMGCOUNT=$(ls $DIR/images |wc -l)
+    SLIDECOUNT=$(grep "<slide" $DIR/$BASE.xml | wc -l)
+    #echo "Found $IMGCOUNT images." 
+    #echo "Found $SLIDECOUNT slides."
+    #read
+
+    # Create backup for comparison after edit
+    BAK=$DIR/$BASE.xml.bak
+    cp $DIR/$BASE.xml $BAK
+
+    # Edit
+    $EDITOR $DIR/$BASE.xml
+
+    # Compare
+    if cmp $DIR/$BASE.xml $DIR/$BASE.xml.bak  &> /dev/null ; then 
+       echo "Map not changed." 
+    else  
+       # Missing: Zip again
+       #rm $BAK
+       cd $DIR
+       zip -r $MAP .
+
+    fi
+
+    #Clean up
+    cd $OLD
+    rm -rf $DIR
+done
+
+IFS=$SAVEIFS
\ No newline at end of file
diff --git a/scripts/vym-addmail.rb b/scripts/vym-addmail.rb
new file mode 100755 (executable)
index 0000000..0a97d99
--- /dev/null
@@ -0,0 +1,40 @@
+#!/usr/bin/ruby
+
+load File.expand_path("../vym-ruby.rb", __FILE__)
+require 'tempfile'
+require 'mail'
+
+mail_in = Tempfile.new("mail")
+begin
+  mail_in.write(ARGF.read)
+  mail_in.rewind
+  out = Tempfile.new("temp")
+  begin
+    mail = Mail.read(mail_in.path)
+
+    out <<  "Subject: #{mail.subject}\n"
+    out <<  "From: #{mail.header[:From]}\n"
+    out <<  "To: #{mail.header[:To]}\n"
+    out <<  "Cc: #{mail.header[:Cc]}\n"
+    out <<  "Date: #{mail.date.to_s}\n"
+    out <<  "\n"
+    out <<  mail.decoded
+
+    out.rewind
+
+    vym_mgr = VymManager.new
+    vym = vym_mgr.find('production') 
+
+    vym.addBranch 
+    vym.selectLastBranch 
+    vym.setHeading(mail.subject)
+    vym.loadNote(out.path)
+  ensure
+    out.close
+    out.unlink
+  end
+
+ensure
+  mail_in.close
+  mail_in.unlink
+end
diff --git a/scripts/vym-ruby.rb b/scripts/vym-ruby.rb
new file mode 100644 (file)
index 0000000..44d7410
--- /dev/null
@@ -0,0 +1,120 @@
+require 'dbus'
+
+$deb = false
+
+class Vym
+  def initialize (name)
+    @dbus = DBus::SessionBus.instance
+    @service = @dbus.service(name)
+    @service.introspect
+    @main = @service.object('vym')
+    @main.introspect
+    @main.default_iface = "org.insilmaril.vym.main.adaptor"
+
+    # Use metaprogramming to create methods for commands in vym
+    if modelCount > 0
+      m = model(1)
+      m.default_iface = "org.insilmaril.vym.model.adaptor"
+      s=m.listCommands
+      @model_commands = s[0].split ","
+      @model_commands.each do |c|
+       self.class.send(:define_method, c) do |*pars|
+         if pars.length == 0
+           puts " * Calling \"#{c}\":" if $deb
+           ret = m.execute("#{c} ()")
+         else  
+           # Build string with parameters
+           p = "";
+           a = []
+           pars.each do |p|
+             if p.kind_of? String
+               a << "'#{p}'"
+             else
+               a << p
+             end
+           end  
+           puts " * Calling \"#{c} (#{a.join(',')})\":" if $deb
+            ret = m.execute("#{c} (#{a.join(',')})")
+         end  
+
+         err = m.errorLevel[0]
+         if $deb
+           puts "     Returned: #{ret[0]}" if ret[0] != ""
+           puts "        Error: #{err}" if err > 0
+         end  
+         ret[0]
+       end
+      end
+    end
+  end
+
+  def modelCount
+    @main.modelCount[0]
+  end
+
+  def model (n)
+    if modelCount > 0 && n>=0
+      @model = @service.object "vymmodel_#{n}"
+      @model.default_iface = "org.insilmaril.vym.model.adaptor"
+      return @model
+    else
+      raise "Error: Model #{n} not accessible in #{@instance}!"
+    end  
+  end
+
+  def show_methods
+    puts "Main methods:"
+    @main[@main.default_iface].methods.each do |k,v|
+      puts "  #{k}"
+    end
+    if modelCount > 0
+      @model= @service.object 'vymmodel_1'
+      @model.default_iface = "org.insilmaril.vym.model.adaptor"
+      puts "Model methods:"
+      @model[@model.default_iface].methods.each do |k,v|
+        puts "  #{k}"
+      end
+    else
+      puts "No model!"
+    end  
+  end
+end
+
+class VymManager
+  def initialize
+    @dbus = DBus::SessionBus.instance
+  end
+
+  def running
+    list=@dbus.proxy.ListNames[0].find_all{|item| item =~/org\.insilmaril\.vym/ }
+  end
+
+  def show_running
+    puts "Running vym instances:\n  #{running.join "\n  "}"
+  end
+
+  def find (name)
+    list = running
+    #puts "Running vyms: #{list.length}"
+    if list.length == 0
+      return nil
+    end
+
+    for i in (0...list.length)
+      vym_service = @dbus.service(list.at(i))
+      vym_service.introspect
+      vym_main_obj = vym_service.object("vym");
+      vym_main_obj.introspect
+
+      vym_main_obj.default_iface = "org.insilmaril.vym.main.adaptor"
+
+      if vym_main_obj.getInstanceName[0] == name 
+        #puts "Found instance named '#{name}': #{list.at(i)}"
+        return Vym.new list.at(i)
+      end  
+    end
+    #raise "Could not find instance named \"test\""
+    return nil
+  end
+end
+
diff --git a/settings.cpp b/settings.cpp
new file mode 100644 (file)
index 0000000..c7eaaf1
--- /dev/null
@@ -0,0 +1,250 @@
+#include <iostream>
+
+#include <QDebug>
+
+#include <qregexp.h>
+#include "settings.h"
+#include "file.h"
+
+/////////////////////////////////////////////////////////////////
+// SimpleSettings
+/////////////////////////////////////////////////////////////////
+SimpleSettings::SimpleSettings()
+{
+    clear();        
+}
+
+SimpleSettings::~SimpleSettings()
+{
+}
+
+void SimpleSettings::clear()
+{
+    keylist.clear();
+    valuelist.clear();
+}
+
+bool SimpleSettings::readSettings (const QString &path)
+{
+    QString s;
+    if (!loadStringFromDisk(path,s)) 
+    {
+       qWarning ()<<"SimpleSettings::readSettings() Couldn't read "+path;
+       return false;
+    }  
+    QStringList lines;
+    lines=s.split (QRegExp("\n"));
+    int i;
+    QStringList::Iterator it=lines.begin();
+    while (it !=lines.end() )
+    {
+       i=(*it).indexOf("=",0);
+       keylist.append((*it).left(i));
+       valuelist.append((*it).right((*it).length()-i-1));
+       it++;
+    }
+    return true;
+}
+
+void SimpleSettings::writeSettings (const QString &path)
+{
+    QString s;
+    QStringList::Iterator itk=keylist.begin();
+    QStringList::Iterator itv=valuelist.begin();
+
+    // First search for value in settings saved in map
+    while (itk !=keylist.end() )
+    {
+       s+=*itk+"="+*itv+"\n";
+       itk++;
+       itv++;
+    }
+    if (!saveStringToDisk(path,s)) 
+       qWarning ()<<"SimpleSettings::writeSettings() Couldn't write "+path;
+}
+
+/*
+QString SimpleSettings::readValue (const QString &key)
+{
+    QStringList::Iterator itk=keylist.begin();
+    QStringList::Iterator itv=valuelist.begin();
+
+    // First search for value in settings saved in map
+    while (itk !=keylist.end() )
+    {
+       if (*itk == key)
+           return *itv;
+       itk++;
+       itv++;
+    }
+    qWarning ("SimpleSettings::readValue()  Couldn't find key "+key);
+    return "";
+}
+*/
+
+QString SimpleSettings::value (const QString &key, const QString &def)
+{
+    QStringList::Iterator itk=keylist.begin();
+    QStringList::Iterator itv=valuelist.begin();
+
+    // First search for value in settings saved in map
+    while (itk !=keylist.end() )
+    {
+       if (*itk == key)
+           return *itv;
+       itk++;
+       itv++;
+    }
+    return def;
+}
+
+int SimpleSettings::readNumValue (const QString &key, const int &def)
+{
+    QStringList::Iterator itk=keylist.begin();
+    QStringList::Iterator itv=valuelist.begin();
+
+    // First search for value in settings saved in map
+    while (itk !=keylist.end() )
+    {
+       if (*itk == key)
+       {
+           bool ok;
+           int i=(*itv).toInt(&ok,10);
+           if (ok)
+               return i;
+           else
+               return def;
+       }   
+       itk++;
+       itv++;
+    }
+    return def;
+}
+
+void SimpleSettings::setValue (const QString &key, const QString &value)
+{
+    QStringList::Iterator itk=keylist.begin();
+    QStringList::Iterator itv=valuelist.begin();
+
+    if (!key.isEmpty() )
+    {
+       // Search for existing Value first
+       while (itk !=keylist.end() )
+       {
+           if (*itk == key)
+           {
+               if (!value.isEmpty())
+                   *itv=value;
+               else
+                   *itv="";
+               *itv=value;
+               return;
+           }
+           itk++;
+           itv++;
+       }
+       
+       // If no Value exists, append a new one
+       keylist.append (key);
+       valuelist.append (value);
+    }
+}
+
+
+
+/////////////////////////////////////////////////////////////////
+// Settings
+/////////////////////////////////////////////////////////////////
+Settings::Settings()
+{
+    clear();        
+}
+
+Settings::Settings(const QString & organization, const QString & application )
+    :QSettings (organization, application)
+{
+    clear();        
+}
+
+Settings::~Settings()
+{
+}
+
+void Settings::clear()
+{
+    pathlist.clear();
+    keylist.clear();
+    valuelist.clear();
+}
+
+void Settings::clearLocal(const QString &fpath, const QString &key)
+{
+    int i=0;
+    while (i<pathlist.count() )
+    {
+       if (fpath == pathlist.at(i) && keylist.at(i).startsWith (key))
+       {
+            pathlist.removeAt(i);
+            keylist.removeAt(i);
+            valuelist.removeAt(i);
+       }   else
+            i++;
+    }
+}
+
+QVariant Settings::localValue ( const QString &fpath, const QString & key, QVariant def) 
+{
+    // First search for value in settings saved in map
+    int i=0;
+    while (i<pathlist.count() )
+    {
+        if (pathlist.at(i) == fpath && keylist.at(i) == key)
+           return valuelist.at(i);
+        i++;
+    }
+
+    // Fall back to global vym settings
+    return value (key,def);
+}   
+
+void Settings::setLocalValue (const QString &fpath, const QString &key, QVariant value)
+{
+    if (!fpath.isEmpty() && !key.isEmpty() && !value.isNull() )
+    {
+       // Search for existing Value first
+        int i=0;
+       while (i<pathlist.count())
+       {
+            if (pathlist.at(i) == fpath && keylist.at(i) == key)
+           {
+                valuelist[i]=value;
+               return;
+           }
+            i++;
+       }
+       
+       // If no Value exists, append a new one
+       pathlist.append (fpath);
+       keylist.append (key);
+       valuelist.append (value);   
+    }
+}
+
+QString Settings::getDataXML (const QString &fpath)
+{
+    QString s;
+    int i=0;
+    while (i<pathlist.count())
+    {
+       if (pathlist.at(i)==fpath)
+           if (!valuelist.at(i).isNull())
+        s += valueElement (
+            "setting",
+            getCDATA( valuelist.at(i).toString() ),
+            attribut ("key",keylist.at(i))
+               );
+        i++;
+    }
+    return s;
+}
+
diff --git a/settings.h b/settings.h
new file mode 100644 (file)
index 0000000..c32f8ef
--- /dev/null
@@ -0,0 +1,50 @@
+#ifndef SETTINGS_H
+#define SETTINGS_H
+
+#include <qsettings.h>
+#include <qstring.h>
+#include <qstringlist.h>
+
+#include "xmlobj.h"
+
+// Some helper functions and simplified settings class
+// to read and parse settings e.g.  in undo/redo directories
+
+class SimpleSettings
+{
+public:
+    SimpleSettings ();
+    ~SimpleSettings ();
+    void clear();
+    bool readSettings(const QString &);
+    void writeSettings(const QString &);
+    QString value (const QString &key, const QString &def=QString());
+    int readNumValue (const QString &, const int &def=0);
+    void setValue (const QString &,const QString &);
+private:    
+    QStringList keylist;
+    QStringList valuelist;
+};
+
+
+// Overloaded QSettings class, used to save some settings in 
+// a map instead of users home directory
+class Settings:public QSettings,public XMLObj
+{
+public:
+    Settings ();
+    Settings (const QString & , const QString &);
+    ~Settings ();
+    void clear();
+    void clearLocal (const QString &filepath, const QString &key);  //! Clear keys starting with key in filepath 
+    QVariant localValue ( const QString &, const QString &, QVariant); 
+    void setLocalValue (const QString &, const QString &, QVariant);
+    QString getDataXML (const QString &);
+
+protected:
+    QStringList pathlist;
+    QStringList keylist;
+    QList <QVariant> valuelist;
+};
+
+#endif
diff --git a/shortcuts.cpp b/shortcuts.cpp
new file mode 100644 (file)
index 0000000..ae8b4a4
--- /dev/null
@@ -0,0 +1,113 @@
+#include <QDebug>
+#include <QMultiMap>
+
+#include <iostream>
+using namespace std;
+
+#include "shortcuts.h"
+
+/////////////////////////////////////////////////////////////////
+// KeySwitch
+/////////////////////////////////////////////////////////////////
+KeySwitch::KeySwitch (
+        const QString &kIdentifier,
+        const QString &kName,
+        const QString &kGroup,
+        const QString &kTag,
+        const QKeySequence &kseq)
+{
+    identifier = kIdentifier;
+    name = kName;
+    group = kGroup;
+    tag = kTag;
+    keySequence = kseq;
+}
+
+/////////////////////////////////////////////////////////////////
+// Switchboard
+/////////////////////////////////////////////////////////////////
+Switchboard::Switchboard ()
+{
+}
+
+void Switchboard::addGroup( QString gIdentifier, QString gName)
+{
+    if (groups.contains(gIdentifier))
+    {
+        qDebug() << "Warning switchboard: Shortcut group " << gIdentifier << " already exists";
+        return;
+    }
+    groups.insert(gIdentifier, gName); 
+}
+
+void Switchboard::addSwitch( QString identifier, QString scope, QAction *action, QString tag)
+{
+    if (!switches.contains(identifier))
+    {
+        KeySwitch ksw(identifier, action->text(), scope, tag, action->shortcut());
+        switches.insert(scope, ksw);
+    } else
+        qDebug() << "Warning switchboard::addSwitch warning: Existing idenifier " << identifier;
+}
+
+QString Switchboard::getASCII()  
+{
+    QString s;
+    QString g;
+    foreach (g, switches.uniqueKeys())
+    {
+        s += "Scope " + g +":\n";
+        QList <KeySwitch> values=switches.values(g);
+        for (int i=0; i<values.size(); ++i)
+        {
+            QString desc=values.at(i).name;
+            QString   sc=values.at(i).keySequence.toString();
+            desc=desc.remove('&');
+            desc=desc.remove("...");
+            s += QString(" %1: %2\n").arg(sc,12).arg(desc);
+        }
+        s += "\n";
+    }
+
+    /*
+    foreach (g, actions.uniqueKeys())
+    {
+        s += g +"\n";
+        QList <QAction*> values=actions.values(g);
+        for (int i=0;i<values.size();++i)
+        {
+            QString desc=values.at(i)->text();
+            QString   sc=values.at(i)->shortcut().toString();
+            desc=desc.remove('&');
+            desc=desc.remove("...");
+            s+= QString(" %1: %2\n").arg(sc,12).arg(desc);
+        }
+    }
+    */
+    return s;
+}
+
+void Switchboard::printASCII ()        
+{
+    cout <<qPrintable(getASCII() );
+}
+
+void Switchboard::printLaTeX ()        
+{
+    QString g;
+    foreach (g,actions.uniqueKeys())
+    {
+        cout <<"Group: "<<qPrintable(g)<<"\\\\ \\hline"<<endl;
+        QList <QAction*> values=actions.values(g);
+        for (int i=0;i<values.size();++i)
+            if (!values.at(i)->shortcut().toString().isEmpty())
+            {
+                QString desc=values.at(i)->text();
+                QString   sc=values.at(i)->shortcut().toString();
+                desc=desc.remove('&');
+                desc=desc.remove("...");
+                cout << qPrintable( QString(" %1& %2").arg(sc,12).arg(desc) )<<endl;
+            }
+        cout <<endl;
+    }
+}
diff --git a/shortcuts.h b/shortcuts.h
new file mode 100644 (file)
index 0000000..5a7ce12
--- /dev/null
@@ -0,0 +1,38 @@
+#ifndef SHORTCUTS_H
+#define SHORTCUTS_H
+
+#include <QAction>
+#include <QShortcut>
+#include <QString>
+
+class KeySwitch {
+public:
+    KeySwitch(
+            const QString &kIdentifier, //! Unique identifier (still unused)
+            const QString &kName,       //! text saved in related action (translated)
+            const QString &kGroup,      //! Scope
+            const QString &kTag,        //! Tag, used for listing related shortcuts
+            const QKeySequence &kseq);  //! Keysequence from action
+    QString group;
+    QString name;
+    QString identifier;
+    QString tag;
+    QKeySequence keySequence;
+};
+
+class Switchboard {
+public:
+    Switchboard ();
+    void addGroup( QString gIdentifier, QString gName);
+    void addSwitch( QString identifier, QString scope, QAction *a, QString tag);
+    QString getASCII();
+    void printASCII();
+    void printLaTeX();
+protected:  
+    QMultiMap <QString,QAction*> actions;
+    QMultiMap <QString, KeySwitch> switches;
+    QMap <QString, QString> groups;
+    QStringList tags;
+};
+
+#endif
diff --git a/showtextdialog.cpp b/showtextdialog.cpp
new file mode 100644 (file)
index 0000000..d9f9c73
--- /dev/null
@@ -0,0 +1,45 @@
+#include "showtextdialog.h"
+
+#include <QFont>
+#include <QString>
+#include "settings.h"
+
+extern Settings settings;
+
+ShowTextDialog::ShowTextDialog (QWidget *parent):QDialog (parent)
+{
+    ui.setupUi (this);
+    ui.textBrowser->show();
+    ui.textBrowser->setOpenExternalLinks( true );
+}
+
+void ShowTextDialog::append  (const QString &s)
+{
+    ui.textBrowser->append (s);
+}
+
+void ShowTextDialog::setText (const QString &s)
+{
+    ui.textBrowser->setText (s);
+}
+
+void ShowTextDialog::setHtml (const QString &s)
+{
+    ui.textBrowser->setHtml (s);
+}
+
+void ShowTextDialog::useFixedFont (bool useFixedFont)
+{
+    QFont font;
+    if (useFixedFont) 
+        font.fromString (settings.value(
+                    "/satellite/noteeditor/fonts/fixedFont",
+                    "Courier,10,-1,5,48,0,0,0,1,0").toString() );
+     else
+        font.fromString (settings.value(
+                    "/satellite/noteeditor/fonts/varFont",
+                    "DejaVu Sans Mono,12,-1,0,50,0,0,0,0,0").toString() );
+     ui.textBrowser->setFont( font );
+}
+
+
diff --git a/showtextdialog.h b/showtextdialog.h
new file mode 100644 (file)
index 0000000..e5ab728
--- /dev/null
@@ -0,0 +1,24 @@
+#ifndef SHOWTEXTDIALOG_H
+#define SHOWTEXTDIALOG_H
+
+#include "ui_showtextdialog.h"
+
+// #include <QLayout>
+// #include <QTextBrowser>
+
+class ShowTextDialog:public QDialog
+{
+    Q_OBJECT
+public:
+    ShowTextDialog (QWidget *parent=0);
+    void append     (const QString &);
+    void setHtml    (const QString &);
+    void setText    (const QString &);
+    void useFixedFont (bool);
+    
+private:
+    Ui::ShowTextDialog ui;
+};
+
+#endif // SHOWTEXTDIALOG_H
+
diff --git a/showtextdialog.ui b/showtextdialog.ui
new file mode 100644 (file)
index 0000000..c87001e
--- /dev/null
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>ShowTextDialog</class>
+ <widget class="QDialog" name="ShowTextDialog">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>689</width>
+    <height>370</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>Dialog</string>
+  </property>
+  <layout class="QGridLayout">
+   <property name="margin">
+    <number>9</number>
+   </property>
+   <property name="spacing">
+    <number>6</number>
+   </property>
+   <item row="0" column="0">
+    <widget class="QTextBrowser" name="textBrowser"/>
+   </item>
+   <item row="1" column="0">
+    <layout class="QHBoxLayout">
+     <property name="spacing">
+      <number>6</number>
+     </property>
+     <property name="margin">
+      <number>0</number>
+     </property>
+     <item>
+      <spacer>
+       <property name="orientation">
+        <enum>Qt::Horizontal</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>131</width>
+         <height>31</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+     <item>
+      <widget class="QPushButton" name="okButton">
+       <property name="text">
+        <string>Close</string>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
+  </layout>
+ </widget>
+ <resources/>
+ <connections>
+  <connection>
+   <sender>okButton</sender>
+   <signal>clicked()</signal>
+   <receiver>ShowTextDialog</receiver>
+   <slot>accept()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>278</x>
+     <y>253</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>96</x>
+     <y>254</y>
+    </hint>
+   </hints>
+  </connection>
+ </connections>
+</ui>
diff --git a/slidecontrolwidget.cpp b/slidecontrolwidget.cpp
new file mode 100644 (file)
index 0000000..0f03599
--- /dev/null
@@ -0,0 +1,99 @@
+#include <QAction>
+#include <QDebug>
+#include <QLineEdit>
+#include <QVBoxLayout>
+
+#include <QPushButton>
+#include <QLabel>
+
+
+#include "slidecontrolwidget.h"
+#include "mainwindow.h"
+
+
+extern Main *mainWindow;
+
+SlideControlWidget::SlideControlWidget(QWidget *)
+{
+    QVBoxLayout* mainLayout = new QVBoxLayout; 
+    QHBoxLayout *row2Layout = new QHBoxLayout;
+    
+    previousButton = new QPushButton;
+    previousButton->setIcon ( QPixmap( ":/slideprevious.png") );
+    connect ( previousButton, SIGNAL( clicked() ), this, SLOT( previousPressed() ) );
+
+    nextButton = new QPushButton;
+    nextButton->setIcon ( QPixmap( ":/slidenext.png") );
+    connect ( nextButton, SIGNAL( clicked() ), this, SLOT( nextPressed() ) );
+
+    upButton = new QPushButton;
+    upButton->setIcon ( QPixmap( ":/up.png") );
+    connect ( upButton, SIGNAL( clicked() ), this, SLOT( upPressed() ) );
+
+    downButton = new QPushButton;
+    downButton->setIcon ( QPixmap( ":/down.png") );
+    connect ( downButton, SIGNAL( clicked() ), this, SLOT( downPressed() ) );
+
+    snapshotButton = new QPushButton;
+    //snapshotButton->setIcon (QPixmap ( ":/sliderecord.png" ));
+    // Original: /usr/share/icons/oxygen/32x32/devices/camera-photo.png
+    snapshotButton->setIcon (QPixmap ( ":/slide-camera.png" ));
+    connect ( snapshotButton, SIGNAL( clicked() ), this, SLOT( snapshotPressed() ) );
+
+    editButton = new QPushButton;
+    editButton->setIcon (QPixmap ( ":/scripteditor.png" ));   
+    connect ( editButton, SIGNAL( clicked() ), this, SLOT( editPressed() ) );
+
+    deleteButton = new QPushButton;
+    deleteButton->setIcon (QPixmap ( ":/edittrash.png" ));
+    connect ( deleteButton, SIGNAL( clicked() ), this, SLOT( deletePressed() ) );
+
+    row2Layout->addWidget(previousButton);
+    row2Layout->addWidget(nextButton);
+    row2Layout->addWidget(snapshotButton);
+    row2Layout->addWidget(editButton);
+    row2Layout->addWidget(deleteButton);
+    row2Layout->addWidget(upButton);
+    row2Layout->addWidget(downButton);
+
+    mainLayout->addLayout (row2Layout);
+
+    setLayout (mainLayout);
+}
+
+void SlideControlWidget::snapshotPressed()
+{
+    emit (takeSnapshot() );
+}
+
+void SlideControlWidget::editPressed()
+{
+    emit (editButtonPressed() );
+}
+
+void SlideControlWidget::deletePressed()
+{
+    emit (deleteButtonPressed() );
+}
+
+void SlideControlWidget::previousPressed()
+{
+    emit (previousButtonPressed() );
+}
+
+void SlideControlWidget::nextPressed()
+{
+    emit (nextButtonPressed() );
+}
+
+void SlideControlWidget::upPressed()
+{
+    emit (upButtonPressed() );
+}
+
+void SlideControlWidget::downPressed()
+{
+    emit (downButtonPressed() );
+}
+
+
diff --git a/slidecontrolwidget.h b/slidecontrolwidget.h
new file mode 100644 (file)
index 0000000..48d3fa7
--- /dev/null
@@ -0,0 +1,46 @@
+#ifndef SLIDECONTROLWIDGET_H 
+#define SLIDECONTROLWIDGET_H
+
+#include <QWidget>
+
+class QAction;
+class QPushButton;
+
+class SlideControlWidget: public QWidget
+{
+    Q_OBJECT
+
+public:
+    SlideControlWidget (QWidget *parent=NULL);
+
+public slots:  
+    void previousPressed();
+    void snapshotPressed();
+    void nextPressed();
+    void upPressed();
+    void downPressed();
+    void deletePressed();
+    void editPressed();
+
+signals:
+    void hideFindWidget();
+    void takeSnapshot();
+    void deleteButtonPressed();
+    void editButtonPressed();
+    void previousButtonPressed();
+    void nextButtonPressed();
+    void upButtonPressed();
+    void downButtonPressed();
+
+protected:
+    QPushButton *previousButton;
+    QPushButton *snapshotButton;
+    QPushButton *editButton;
+    QPushButton *deleteButton;
+    QPushButton *nextButton;
+    QPushButton *upButton;
+    QPushButton *downButton;
+};
+
+#endif
+
diff --git a/slideeditor.cpp b/slideeditor.cpp
new file mode 100644 (file)
index 0000000..a4add9f
--- /dev/null
@@ -0,0 +1,116 @@
+#include <QVBoxLayout>
+#include <QTreeView>
+
+#include "mainwindow.h"
+#include "slidecontrolwidget.h"
+#include "slidemodel.h"
+#include "slideitem.h"
+#include "vymmodel.h"
+
+#include "slideeditor.h"
+
+extern Main *mainWindow;
+extern SlideEditor *slideEditor;
+
+SlideEditor::SlideEditor(VymModel *m)
+{
+    vymModel=m;
+
+    // Create slides model
+    slideModel=vymModel->getSlideModel();
+
+    // Create TreeView
+    view = new QTreeView (this);
+    view->setModel (slideModel);
+    
+    slideModel->setSelectionModel ( view->selectionModel() );
+
+    // Create ControlWidget
+    slideControl= new SlideControlWidget (this);
+    connect (
+       slideControl, SIGNAL (takeSnapshot() ), 
+       this, SLOT (addSlide() ) );
+    connect (
+       slideControl, SIGNAL (editButtonPressed() ), 
+       mainWindow, SLOT (windowToggleScriptEditor() ) );
+    connect (
+       slideControl, SIGNAL (deleteButtonPressed() ), 
+       this, SLOT (deleteSlide() ) );
+    connect (
+       slideControl, SIGNAL (previousButtonPressed() ), 
+       this, SLOT (previousSlide() ) );
+    connect (
+       slideControl, SIGNAL (nextButtonPressed() ), 
+       this, SLOT (nextSlide() ) );
+    connect (
+       slideControl, SIGNAL (upButtonPressed() ), 
+       this, SLOT (moveSlideUp() ) );
+    connect (
+       slideControl, SIGNAL (downButtonPressed() ), 
+       this, SLOT (moveSlideDown() ) );
+
+    QVBoxLayout* mainLayout = new QVBoxLayout;
+
+    mainLayout->addWidget(view);
+    mainLayout->addWidget(slideControl);
+
+    setLayout (mainLayout);
+
+    // Selection
+    connect (view->selectionModel(),SIGNAL (selectionChanged (QItemSelection,QItemSelection)),
+       vymModel, SLOT (updateSlideSelection (QItemSelection,QItemSelection)));
+    connect (view->selectionModel(),SIGNAL (selectionChanged (QItemSelection,QItemSelection)),
+       this, SLOT (updateSelection (QItemSelection,QItemSelection)));
+
+//    connect (resultsModel, SIGNAL(layoutChanged() ), view, SLOT (expandAll() ));    
+}
+
+void SlideEditor::previousSlide()
+{
+    QModelIndex ix=slideModel->getSelectedIndex();
+    if (ix.isValid())
+        ix=view->indexAbove (ix);
+
+    if (ix.isValid())
+        view->selectionModel()->select (ix,QItemSelectionModel::ClearAndSelect );
+}
+
+void SlideEditor::nextSlide()
+{
+    QModelIndex ix=slideModel->getSelectedIndex();
+    if (ix.isValid())
+        ix=view->indexBelow (ix);
+    if (ix.isValid())
+        view->selectionModel()->select (ix,QItemSelectionModel::ClearAndSelect );
+}
+
+void SlideEditor::addSlide()
+{
+    vymModel->addSlide();
+}
+
+void SlideEditor::editSlide() // FIXME-4 not used yet
+{
+}
+
+void SlideEditor::deleteSlide() 
+{
+    SlideItem *si=slideModel->getSelectedItem();
+    vymModel->deleteSlide(si);
+}
+
+void SlideEditor::moveSlideUp() 
+{
+    vymModel->moveSlideUp ();  
+}
+
+void SlideEditor::moveSlideDown() 
+{
+    vymModel->moveSlideDown ();        
+}
+
+void SlideEditor::updateSelection(QItemSelection, QItemSelection)
+{
+    // FIXME-3 updateActions missing, e.g. state for moveUp/down
+}
+
diff --git a/slideeditor.h b/slideeditor.h
new file mode 100644 (file)
index 0000000..6a75377
--- /dev/null
@@ -0,0 +1,37 @@
+#ifndef SLIDEEDITOR_H 
+#define SLIDEEDITOR_H
+
+#include <QItemSelection>
+#include <QWidget>
+
+class SlideModel;
+class QTreeView;
+class SlideControlWidget;
+class VymModel;
+
+class SlideEditor: public QWidget
+{
+    Q_OBJECT
+
+public:
+    SlideEditor (VymModel *);
+
+public slots:  
+    void previousSlide();
+    void nextSlide();
+    void addSlide();
+    void editSlide();
+    void deleteSlide();
+    void moveSlideUp();
+    void moveSlideDown();
+    void updateSelection(QItemSelection ,QItemSelection);
+
+private:
+    VymModel *vymModel;
+    SlideModel *slideModel;
+    QTreeView *view;
+    SlideControlWidget *slideControl;
+};
+
+#endif
+
diff --git a/slideitem.cpp b/slideitem.cpp
new file mode 100644 (file)
index 0000000..ec4130f
--- /dev/null
@@ -0,0 +1,269 @@
+#include <QStringList>
+
+#include "slideitem.h"
+
+#include "slidemodel.h"
+#include "treeitem.h"
+#include "vymmodel.h"
+
+uint SlideItem::idLastSlide=0;    // make instance
+
+SlideItem::SlideItem(const QVector<QVariant> &data, SlideItem *parent, SlideModel *sm )
+{
+    parentItem = parent;
+    itemData = data;
+    idLastSlide++;
+    slideID=idLastSlide;
+    treeItemID=-1;
+    zoomFactor=-1;
+    duration=2000;
+    easingCurve.setType (QEasingCurve::OutQuint);
+
+    if (sm)
+       model=sm;
+    else
+       model=parent->getModel();
+
+    if (data.isEmpty()) itemData.append(QVariant("empty"));
+}
+
+SlideItem::~SlideItem()
+{
+    qDeleteAll(childItems);
+}
+
+SlideModel* SlideItem::getModel()
+{
+    return model;
+}
+
+uint SlideItem::getID()
+{
+    return slideID;
+}
+
+SlideItem *SlideItem::child(int number)
+{
+    return childItems.value(number);
+}
+
+int SlideItem::childCount() const
+{
+    return childItems.count();
+}
+
+int SlideItem::childNumber() const
+{
+    if (parentItem)
+        return parentItem->childItems.indexOf(const_cast<SlideItem*>(this));
+
+    return 0;
+}
+
+int SlideItem::columnCount() const
+{
+    return itemData.count();
+}
+
+QVariant SlideItem::data(int column) const
+{
+    return itemData.value(column);
+}
+
+int SlideItem::row() const
+{
+    if (parentItem)
+        return parentItem->childItems.indexOf(const_cast<SlideItem*>(this));
+
+    return 0;
+}
+
+void SlideItem::insertItem (int pos, SlideItem *si)
+{
+    if (pos<0) pos=0;
+    if (pos>childItems.count() ) pos=childItems.count();
+    childItems.insert (pos,si);
+    si->parentItem=this;
+}
+
+void SlideItem::removeItem (int pos)
+{
+    // Remove, but don't delete (needed for relinking)
+    if (pos<0 || pos > childItems.size()-1)
+       qWarning ("TreeItem::removeChild tried to remove non existing item?!");
+    else
+       childItems.removeAt (pos);
+}
+
+bool SlideItem::insertChildren(int position, int count, int columns)
+{
+    if (position < 0 || position > childItems.size())
+        return false;
+
+    for (int row = 0; row < count; ++row) {
+        QVector<QVariant> data(columns);
+        SlideItem *item = new SlideItem(data, this);
+        childItems.insert(position, item);
+    }
+
+    return true;
+}
+
+bool SlideItem::insertColumns(int position, int columns)
+{
+    if (position < 0 || position > itemData.size())
+        return false;
+
+    for (int column = 0; column < columns; ++column)
+        itemData.insert(position, QVariant());
+
+    foreach (SlideItem *child, childItems)
+        child->insertColumns(position, columns);
+
+    return true;
+}
+
+SlideItem *SlideItem::parent()
+{
+    return parentItem;
+}
+
+bool SlideItem::removeChildren(int position, int count)
+{
+    if (position < 0 || position + count > childItems.size())
+        return false;
+
+    for (int row = 0; row < count; ++row)
+        delete childItems.takeAt(position);
+
+    return true;
+}
+
+bool SlideItem::removeColumns(int position, int columns)
+{
+    if (position < 0 || position + columns > itemData.size())
+        return false;
+
+    for (int column = 0; column < columns; ++column)
+        itemData.remove(position);
+
+    foreach (SlideItem *child, childItems)
+        child->removeColumns(position, columns);
+
+    return true;
+}
+
+bool SlideItem::setData(int column, const QVariant &value)
+{
+    if (column < 0 || column >= itemData.size())
+        return false;
+
+    itemData[column] = value;
+    return true;
+}
+
+void SlideItem::setName (const QString &n)
+{
+    setData ( 0, QVariant (n) );
+}
+
+QString SlideItem::getName ()
+{
+    return data(0).toString();
+}
+
+void SlideItem::setTreeItem (TreeItem *ti)
+{
+    if (ti) 
+       treeItemID=ti->getID();
+    else
+       qWarning()<<"SlideItem::setTreeItem no ID!";
+}
+
+int SlideItem::getTreeItemID()
+{
+    return treeItemID;
+}
+
+void SlideItem::setInScript (const QString &s)
+{
+    inScript=s;
+}
+
+QString SlideItem::getInScript()
+{
+    return inScript;
+}
+
+void SlideItem::setOutScript (const QString &s)
+{
+    outScript=s;
+}
+
+QString SlideItem::getOutScript()
+{
+    return outScript;
+}
+
+void SlideItem::setZoomFactor (const qreal &zf)
+{
+    zoomFactor=zf;
+}
+
+qreal SlideItem::getZoomFactor()
+{
+    return zoomFactor;
+}
+
+void SlideItem::setRotationAngle (const qreal &zf)
+{
+    rotationAngle=zf;
+}
+
+qreal SlideItem::getRotationAngle()
+{
+    return rotationAngle;
+}
+
+void SlideItem::setDuration (const int  &d)
+{
+    duration=d;
+}
+
+int SlideItem::getDuration()
+{
+    return duration;
+}
+
+void SlideItem::setEasingCurve (const QEasingCurve &c)
+{
+    easingCurve=c;
+}
+
+QEasingCurve SlideItem::getEasingCurve()
+{
+    return easingCurve;
+}
+
+QString SlideItem::saveToDir()
+{
+    QString att_ins, att_outs;
+    if (inScript.isEmpty()) 
+    {
+       att_ins=attribut ("inScript",QString("select(\"%1\")").arg(model->getVymModel()->getSelectString (treeItemID ) ) );
+    } else
+       att_ins=attribut ("inScript",inScript );
+    if (!outScript.isEmpty()) att_outs=attribut ("outScript",outScript );
+
+    return singleElement ("slide",
+       attribut ("name",data(0).toString() ) +
+       attribut ("zoom",QString().setNum ( zoomFactor) ) +
+       attribut ("rotation",QString().setNum ( rotationAngle ) ) +
+       attribut ("duration",QString().setNum ( duration ) ) +
+       attribut ("curve",QString().setNum ( easingCurve.type() ) ) +
+       attribut ("mapitem",model->getVymModel()->getSelectString (treeItemID ) ) +
+       att_ins +
+       att_outs
+       );
+}
+
diff --git a/slideitem.h b/slideitem.h
new file mode 100644 (file)
index 0000000..5c31caa
--- /dev/null
@@ -0,0 +1,72 @@
+#ifndef SLIDEITEM_H
+#define SLIDEITEM_H
+
+#include <QEasingCurve>
+#include <QList>
+#include <QVariant>
+#include <QVector>
+
+#include "xmlobj.h"
+
+class TreeItem;
+class SlideModel;
+
+class SlideItem : public XMLObj 
+{
+public:
+    SlideItem(const QVector<QVariant> &data, SlideItem *parent = 0, SlideModel *sm = 0 );
+    ~SlideItem();
+    SlideModel* getModel(); 
+    uint getID();
+    SlideItem *child(int number);
+    int childCount() const;
+    int columnCount() const;
+    QVariant data(int column) const;
+    int row() const;
+    void insertItem (int pos, SlideItem *si);
+    void removeItem (int pos);
+    bool insertChildren(int position, int count, int columns);
+    bool insertColumns(int position, int columns);
+    SlideItem* parent();
+    bool removeChildren(int position, int count);
+    bool removeColumns(int position, int columns);
+    int childNumber() const;
+    bool setData(int column, const QVariant &value);
+    void setName (const QString &n);
+    QString getName ();
+    void setTreeItem (TreeItem *ti);
+    int getTreeItemID();
+    void setInScript (const QString &);
+    QString getInScript ();
+    void setOutScript (const QString &);
+    QString getOutScript ();
+    void setZoomFactor(const qreal &);
+    qreal getZoomFactor ();
+    void setRotationAngle(const qreal &);
+    qreal getRotationAngle ();
+    void setDuration (const int &);
+    int getDuration();
+    void setEasingCurve (const QEasingCurve &);
+    QEasingCurve getEasingCurve();
+    QString saveToDir();
+
+private:
+    SlideModel *model;
+    QList<SlideItem*> childItems;
+    QVector<QVariant> itemData;
+    SlideItem *parentItem;
+
+    static uint idLastSlide;   //! Last used unique ID for slide
+    uint slideID;
+
+    QString inScript;
+    QString outScript;
+
+    int treeItemID;
+    qreal zoomFactor;
+    qreal rotationAngle;
+    int duration;
+    QEasingCurve easingCurve;
+};
+
+#endif
diff --git a/slidemodel.cpp b/slidemodel.cpp
new file mode 100644 (file)
index 0000000..012ab4b
--- /dev/null
@@ -0,0 +1,341 @@
+#include "slidemodel.h"
+
+#include "slideitem.h"
+#include "vymmodel.h"
+
+#include <QDebug>
+#include <QItemSelectionModel>
+
+
+SlideModel::SlideModel( VymModel *vm)
+    : QAbstractItemModel(NULL)
+{
+    QVector<QVariant> rootData;
+    rootData << "Slide";
+    rootItem = new SlideItem(rootData, NULL,this);
+    vymModel=vm;
+}
+
+SlideModel::~SlideModel()
+{
+    delete rootItem;
+}
+
+void SlideModel::clear()
+{
+    if (rootItem->childCount()>0)
+       removeRows (0,rowCount (QModelIndex ()));
+}
+
+VymModel* SlideModel::getVymModel()
+{
+    return vymModel;
+}
+
+int SlideModel::columnCount(const QModelIndex & /* parent */) const
+{
+    return rootItem->columnCount();
+}
+
+QVariant SlideModel::data(const QModelIndex &index, int role) const
+{
+    if (!index.isValid())
+        return QVariant();
+
+    if (role != Qt::DisplayRole && role != Qt::EditRole)
+        return QVariant();
+
+    SlideItem *item = getItem(index);
+
+    return item->data(index.column());
+}
+
+Qt::ItemFlags SlideModel::flags(const QModelIndex &index) const
+{
+    if (!index.isValid())
+        return 0;
+
+    return Qt::ItemIsEditable | Qt::ItemIsEnabled | Qt::ItemIsSelectable;
+}
+
+QVariant SlideModel::headerData(int section, Qt::Orientation orientation,
+                               int role) const
+{
+    if (orientation == Qt::Horizontal && role == Qt::DisplayRole)
+        return rootItem->data(section);
+
+    return QVariant();
+}
+
+QModelIndex SlideModel::index (SlideItem *fri)
+{
+    if (!fri || !fri->parent())
+       return QModelIndex();
+    else    
+       return createIndex (fri->row(),0,fri);
+}
+
+
+QModelIndex SlideModel::index(int row, int column, const QModelIndex &parent) const
+{
+    if (parent.isValid() && parent.column() != 0)
+        return QModelIndex();
+
+    SlideItem *parentItem = getItem(parent);
+
+    SlideItem *childItem = parentItem->child(row);
+    if (childItem)
+        return createIndex(row, column, childItem);
+    else
+        return QModelIndex();
+}
+
+bool SlideModel::insertColumns(int position, int columns, const QModelIndex &parent)
+{
+    bool success;
+
+    beginInsertColumns(parent, position, position + columns - 1);
+    success = rootItem->insertColumns(position, columns);
+    endInsertColumns();
+
+    return success;
+}
+
+bool SlideModel::insertRows(int position, int rows, const QModelIndex &parent)
+{
+    SlideItem *parentItem = getItem(parent);
+    bool success;
+
+    beginInsertRows(parent, position, position + rows - 1);
+    success = parentItem->insertChildren(position, rows, rootItem->columnCount());
+    endInsertRows();
+
+    return success;
+}
+
+QModelIndex SlideModel::parent(const QModelIndex &index) const
+{
+    if (!index.isValid())
+        return QModelIndex();
+
+    SlideItem *childItem = getItem(index);
+    SlideItem *parentItem = childItem->parent();
+
+    if (parentItem == rootItem)
+        return QModelIndex();
+
+    return createIndex(parentItem->childNumber(), 0, parentItem);
+}
+
+bool SlideModel::removeColumns(int position, int columns, const QModelIndex &parent)
+{
+    bool success;
+
+    beginRemoveColumns(parent, position, position + columns - 1);
+    success = rootItem->removeColumns(position, columns);
+    endRemoveColumns();
+
+    if (rootItem->columnCount() == 0)
+        removeRows(0, rowCount());
+
+    return success;
+}
+
+bool SlideModel::removeRows(int position, int rows, const QModelIndex &parent)
+{
+    SlideItem *parentItem = getItem(parent);
+    bool success = true;
+
+    beginRemoveRows(parent, position, position + rows - 1);
+    success = parentItem->removeChildren(position, rows);
+    endRemoveRows();
+
+    return success;
+}
+
+int SlideModel::count()
+{
+    return rootItem->childCount();
+}
+
+int SlideModel::rowCount(const QModelIndex &parent) const
+{
+    SlideItem *parentItem = getItem(parent);
+
+    return parentItem->childCount();
+}
+
+bool SlideModel::setData(const QModelIndex &index, const QVariant &value,
+                        int role)
+{
+    if (role != Qt::EditRole)
+        return false;
+
+    SlideItem *item = getItem(index);
+    bool result = item->setData(index.column(), value);
+
+    if (result)
+        emit dataChanged(index, index);
+
+    return result;
+}
+
+bool SlideModel::setHeaderData(int section, Qt::Orientation orientation,
+                              const QVariant &value, int role)
+{
+    if (role != Qt::EditRole || orientation != Qt::Horizontal)
+        return false;
+
+    bool result = rootItem->setData(section, value);
+
+    if (result)
+        emit headerDataChanged(orientation, section, section);
+
+    return result;
+}
+
+SlideItem*  SlideModel::addSlide(SlideItem *dst, int n)
+{
+    SlideItem *si=NULL;
+    if (!dst) dst=rootItem;
+
+    emit (layoutAboutToBeChanged() );
+
+    QModelIndex parix=index (dst);
+    if (n<0) n=dst->childCount();
+    beginInsertRows (parix,n,n);
+    if (rootItem->insertChildren (n,1,0) )
+    {
+       QModelIndex ix=index(n,0,QModelIndex());
+       si=getItem(ix);
+    }
+    endInsertRows ();
+    emit (layoutChanged() );
+       
+    return si;
+}
+
+void SlideModel::deleteSlide(SlideItem *si)
+{
+    QModelIndex ix=index(si);
+    if (ix.isValid())
+    {
+       QModelIndex px=ix.parent();
+       int n=si->childNumber();
+       removeRows (n,1,px);
+    }
+}
+
+bool SlideModel::relinkSlide(
+    SlideItem *si,
+    SlideItem *dst,
+    int pos)
+{
+   if (si && dst)
+   {
+       emit (layoutAboutToBeChanged() );
+       SlideItem *pi=si->parent();
+
+       // Remove at current position
+       int n=si->childNumber();
+
+       beginRemoveRows (index(pi),n,n);
+       pi->removeItem (n);
+       endRemoveRows();
+
+       if (pos<0 ||pos>dst->childCount() ) pos=dst->childCount();
+    
+       // Insert at new position
+       beginInsertRows (index(dst),pos,pos);
+       dst->insertItem (pos, si);
+       endInsertRows();
+
+       emit (layoutChanged() );
+
+       selModel->select (index (si),QItemSelectionModel::ClearAndSelect  );
+
+       return true;
+    }
+    return false;
+}
+
+SlideItem* SlideModel::getItem (const QModelIndex &index) const
+{
+    if (index.isValid()) {
+        SlideItem *item = static_cast<SlideItem*>(index.internalPointer());
+        if (item) return item;
+    }
+    return rootItem;
+}
+
+SlideItem* SlideModel::getSlide (int n)
+{
+    if (n>=count() || n<0) return NULL;
+    return getItem (index (n, 0, QModelIndex() ));
+}
+
+SlideItem* SlideModel::findSlideID (uint n)
+{
+    for (int i=0; i<rootItem->childCount(); i++)
+       if (rootItem->child(i)->getID()==n)
+           return rootItem->child(i);
+    return NULL;           
+}
+
+QString SlideModel::saveToDir()
+{
+    QString s;
+    for (int i=0; i<rootItem->childCount(); i++)
+       s+=rootItem->child(i)->saveToDir();
+    return s;
+}
+
+void SlideModel::setSearchString( const QString &s)
+{
+    searchString=s;
+}
+
+QString SlideModel::getSearchString()
+{
+    return searchString;
+}
+
+void SlideModel::setSearchFlags( QTextDocument::FindFlags f)
+{
+    searchFlags=f;
+}
+
+QTextDocument::FindFlags SlideModel::getSearchFlags()
+{
+    return searchFlags;
+}
+
+void SlideModel::setSelectionModel(QItemSelectionModel *sm)
+{
+    selModel=sm;
+}
+
+QItemSelectionModel* SlideModel::getSelectionModel()
+{
+    return selModel;
+}
+
+QModelIndex SlideModel::getSelectedIndex()
+{
+    if (!selModel)
+    {
+       qDebug ()<<"SlideModel: No selection model!";
+       return QModelIndex();
+    }
+    QModelIndexList list=selModel->selectedIndexes();
+    if (!list.isEmpty() ) return list.first();
+    return QModelIndex();      
+}
+
+SlideItem* SlideModel::getSelectedItem ()
+{
+    QModelIndex ix=getSelectedIndex();
+    if (ix.isValid() ) return getItem (ix);
+    return NULL;
+}
+
diff --git a/slidemodel.h b/slidemodel.h
new file mode 100644 (file)
index 0000000..a0f6e40
--- /dev/null
@@ -0,0 +1,85 @@
+#ifndef SLIDEMODEL_H
+#define SLIDEMODEL_H
+
+#include <QAbstractItemModel>
+#include <QModelIndex>
+#include <QTextDocument>
+#include <QVariant>
+
+#include "xmlobj.h"
+
+class QItemSelectionModel;
+class SlideItem;
+class TreeItem;
+class VymModel;
+
+class SlideModel : public QAbstractItemModel, XMLObj
+{
+    Q_OBJECT
+
+public:
+    SlideModel( VymModel *vm);
+    ~SlideModel();
+    void clear();
+    
+    VymModel* getVymModel();
+    QVariant data(const QModelIndex &index, int role) const;
+    QVariant headerData(int section, Qt::Orientation orientation,
+                        int role = Qt::DisplayRole) const;
+
+    QModelIndex index (SlideItem *fri);
+    QModelIndex index(int row, int column,
+                      const QModelIndex &parent = QModelIndex()) const;
+    QModelIndex parent(const QModelIndex &index) const;
+
+    int count();
+    int rowCount(const QModelIndex &parent = QModelIndex()) const;
+    int columnCount(const QModelIndex &parent = QModelIndex()) const;
+
+    Qt::ItemFlags flags(const QModelIndex &index) const;
+    bool setData(const QModelIndex &index, const QVariant &value,
+                 int role = Qt::EditRole);
+    bool setHeaderData(int section, Qt::Orientation orientation,
+                       const QVariant &value, int role = Qt::EditRole);
+
+    bool insertColumns(int position, int columns,
+                       const QModelIndex &parent = QModelIndex());
+    bool removeColumns(int position, int columns,
+                       const QModelIndex &parent = QModelIndex());
+    bool insertRows(int position, int rows,
+                    const QModelIndex &parent = QModelIndex());
+    bool removeRows(int position, int rows,
+                    const QModelIndex &parent = QModelIndex());
+
+    SlideItem* addSlide ( SlideItem *dst=NULL, int n=-1);
+    void deleteSlide (SlideItem *si);
+    bool relinkSlide (SlideItem *si, SlideItem *dst, int pos);
+
+    SlideItem* getItem (const QModelIndex &index) const;
+    SlideItem* getSlide (int n); 
+    SlideItem* findSlideID (uint n);
+    QString saveToDir ();
+
+    void setSearchString( const QString &s);
+    QString getSearchString();
+    void setSearchFlags( QTextDocument::FindFlags f);
+    QTextDocument::FindFlags getSearchFlags();
+
+// Selection related
+public:
+    void setSelectionModel(QItemSelectionModel *);
+    QItemSelectionModel* getSelectionModel();
+    QModelIndex getSelectedIndex();
+    SlideItem* getSelectedItem();
+private:
+    QItemSelectionModel *selModel;
+    VymModel *vymModel;        // needed for saveToDir
+
+private:
+    SlideItem *rootItem;
+
+    QString searchString;
+    QTextDocument::FindFlags searchFlags;
+};
+
+#endif
diff --git a/styles/vym.css b/styles/vym.css
new file mode 100644 (file)
index 0000000..f5d73ec
--- /dev/null
@@ -0,0 +1,170 @@
+html { 
+    font-family:arial,sans-serif; 
+}
+
+body { 
+    margin:0; 
+    padding:10px; 
+    font-family:arial,
+    sans-serif; 
+    align:center;  
+    background-color:#ffffff; 
+}
+
+a, a:visited, a:link, a:active { 
+    color:#666666; 
+    text-decoration:none; 
+}
+
+a:hover { 
+    text-decoration:underline; 
+}
+
+/* VYM specific elements*/
+
+.vym-header{ 
+    width:96%; 
+    padding:2%; 
+    margin-bottom:10px; 
+    border:solid 1px black; 
+    background-color:#f0f0f0; 
+    text-align:center; 
+    vertical-align:center;
+    font-size: 2em;
+}
+.vym-toc{
+    background-color: #F9F9F9;
+    border: 1px solid #AAAAAA;
+    font-size: 95%;
+    padding: 5px
+}
+.vym-toc-title{
+    background-color: #F9F9F9;
+    font-size: 100%;
+}
+.vym-toc-branch-0{ text-indent: 0em; }
+.vym-toc-branch-1{ text-indent: 1em; }
+.vym-toc-branch-2{ text-indent: 2em; }
+.vym-toc-branch-3{ text-indent: 3em; }
+.vym-toc-branch-4{ text-indent: 4em; }
+.vym-toc-branch-5{ text-indent: 5em; }
+.vym-toc-branch-6{ text-indent: 6em; }
+.vym-toc-branch-7{ text-indent: 7em; }
+.vym-toc-branch-8{ text-indent: 8em; }
+.vym-toc-branch-9{ text-indent: 9em; }
+.vym-toc-number{ }
+.vym-toc-text{ }
+.vym-imagemap{
+    width:96%; 
+    padding:2%; 
+    margin-bottom:10px; 
+    border: 0px; 
+    text-align:center; 
+    vertical-align:center;
+}
+.imagemap{
+    border: 0px; 
+}
+.vym-BoxBottom { 
+    padding:10px; 
+    font-size:0.7em; 
+    border:solid 1px black; 
+    margin:0; 
+    background-color:#f0f0f0; 
+}
+.vym-BoxBottomR                
+{ 
+    padding-top:1em; 
+    color:#676767; 
+    text-align:right; 
+}
+.vym-footer { 
+    width:100%; 
+    border:1;
+}
+.vym-footerL { font-size:0.7em; color:#676767; text-align:left; width:33%}
+.vym-footerC { font-size:0.7em; color:#676767; text-align:center; width:33%}
+.vym-footerR { font-size:0.7em; color:#676767; text-align:right; width:33%}
+
+.vym-url {} 
+
+.vym-branch-0 { 
+}
+.vym-branch-1{
+}
+.vym-branch-2{
+    font-size: small;
+    font-weight: normal;
+}
+.vym-branch-3{
+    font-size: small;
+    font-weight: normal;
+}
+.vym-branch-4{
+    font-size: small;
+    font-weight: normal;
+}
+.vym-branch-5{
+    font-size: small;
+    font-weight: normal;
+}
+.vym-branch-6{
+    font-size: small;
+    font-weight: normal;
+}
+.vym-branch-7{
+    font-size: small;
+    font-weight: normal;
+}
+
+.vym-branch-8{
+    font-size: small;
+    font-weight: normal;
+}
+.vym-branch-9{
+    font-size: small;
+    font-weight: normal;
+}
+.vym-note { 
+    width:80%; 
+    border: solid 1px black; 
+    border-radius: 0.6em 0.6em 0.6em 0.6em;
+    border-color: #000000;
+    background-color: #eeeeee; 
+    font-size: small;
+    font-weight: normal;
+    overflow: auto;
+    padding: 0em 1em;
+}
+
+.vym-note-flag {
+    vertical-align:top;
+    width:30px;
+    height:30px;
+    background-image: url("flags/flag-note.png");
+    background-repeat: no-repeat;
+    background-position: left top;
+}
+
+.vym-note-paragraph { 
+    margin-top: 0px;
+    margin-bottom: 1em;
+}
+
+.vym-fixed-note-paragraph { 
+    margin: 0;
+}
+.standardflag { 
+    margin-left: 5px; 
+}
+
+.vym-list-ul-0 {
+    list-style-type: none;
+    list-style-position: inside;
+}
+
+.vym-list-ul-1 {
+    list-style-type: none;
+    list-style-position: outside;
+}
+
diff --git a/styles/vym2taskjuggler.xsl b/styles/vym2taskjuggler.xsl
new file mode 100644 (file)
index 0000000..171d3f3
--- /dev/null
@@ -0,0 +1,270 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<xsl:stylesheet name="VYM_TaskJuggler" version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+<xsl:output method="text"/>
+<xsl:template match="node()">
+       <xsl:apply-templates/>
+</xsl:template>
+<xsl:template match="/vymmap/mapcenter">
+project <xsl:value-of select="translate(heading, ' ', '_')"/> "<xsl:value-of select="heading"/>" "1.0" 2002-01-16 2002-05-28 {
+  # Pick a day during the project that will be reported as 'today' in
+  # the project reports. If not specified the current day will be
+  # used, but this will likely be ouside of the project range, so it
+  # can't be seen in the reports.
+  now 2002-03-05-13:00
+  # Hide the clock time. Only show the date.
+  timeformat "%Y-%m-%d"
+  # The currency for all money values is U.S. Dollars.
+  currency "USD"
+
+  # We want to compare the planned scenario, to one with the actual
+  # scenario
+  scenario plan "Planned" {
+    scenario actual "Actual"
+  }
+}
+# The daily default rate of all resources. This can be overriden for each
+# resource. We specify this, so that we can do a good calculation of
+# the costs of the project.
+rate 310.0
+
+# This is one way to form teams
+macro allocate_developers [
+  allocate dev1
+  allocate dev2 { limits { dailymax 4h } }
+  allocate dev3
+]
+
+flags team
+
+resource dev "In House" {
+  resource dev1 "Some Guy" { rate 330.00 }
+  resource dev2 "Some Other Guy"
+  resource dev3 "Some Last Guy on Vacation" { vacation 2002-02-01 - 2002-02-05 }
+
+  flags team
+}
+
+resource misc "Outsource" {
+  resource test "Out Sourcer1" { limits { dailymax 6.4h } rate 240.00 }
+  resource doc  "Out Source2" { rate 280.00 vacation 2002-03-11 - 2002-03-16 }
+
+  flags team
+}
+
+# In order to do a simple profit and loss analysis of the project we
+# specify accounts. One for the development costs, one for the
+# documentation costs and one account to credit the customer payments
+# to.
+account dev "Development" cost
+account doc "Documentation" cost
+account rev "Payments" revenue
+
+# Now we specify the work packages. The whole project is described as
+# a task that contains sub tasks. These sub tasks are then broken down
+# into smaller tasks and so on. The innermost tasks describe the real
+# work and have resources allocated to them. Many attributes of tasks
+# are inherited from the enclosing task. This saves you a lot of
+# writing.
+task  <xsl:value-of select="translate(heading, ' ', '_')"/> "<xsl:value-of select="heading"/>" {
+
+  # All work related costs will be booked to this account unless the
+  # sub tasks specifies it differently.
+  account dev
+
+       <xsl:call-template name="recursive"/>
+
+}
+
+# This task report is for use with the TaskJuggler GUI
+taskreport "Project Overview" {
+  columns start, end, effort, duration, completed, status, note, cost, revenue
+  scenario actual
+}
+
+# A resource report for use with the TaskJuggler GUI
+resourcereport "Resource Usage" {
+  columns effort, freeload, utilization, rate
+  scenario actual
+  hideresource 0
+}
+
+# For conveniance we would like each report to contain links to the
+# other reports. So we declare a macro with a fragment of raw HTML
+# code to be embedded into all the HTML reports.
+macro navbar [
+rawhead
+  '<table align="center" border="2" cellpadding="10"
+    style="background-color:#f3ebae; font-size:105%">
+  <tr>
+    <td><a href="Tasks-Overview.html">Tasks Overview</a></td>
+    <td><a href="Staff-Overview.html">Staff Overview</a></td>
+    <td><a href="Accounting.html">Accounting</a></td>
+    <td><a href="Calendar.html">Calendar</a></td>
+  </tr>
+  <tr>
+    <td><a href="Tasks-Details.html">Tasks Details</a></td>
+    <td><a href="Staff-Details.html">Staff Details</a></td>
+    <td><a href="Status-Report.html">Status Report</a></td>
+    <td><a href="acso.eps">GANTT Chart (Postscript)</a></td>
+  </tr>
+  </table>
+  <br/>'
+]
+
+# As the first report, we would like to have a general overview of all
+# tasks with their computed start and end dates. For better
+# readability we include a calendar like column that lists the effort
+# for each week.
+htmltaskreport "Tasks-Overview.html" {
+  # This report should contain the navigation bar we have declared
+  # above.
+  ${navbar}
+  # The report should be a table that contains several columns. The
+  # task and their information form the rows of the table. Since we
+  # don't like the title of the effort column, we change it to "Work".
+  columns hierarchindex, name, duration, effort { title "Work"},
+          start, end, weekly
+  # For this report we like to have the abbreviated weekday in front
+  # of the date. %a is the tag for this.
+  timeformat "%a %Y-%m-%d"
+
+  # Don't show load values.
+  barlabels empty
+  # Set a title for the report
+  headline "<xsl:value-of select="heading"/> Project"
+  # And a short description what this report is about.
+  caption "This table presents a management-level overview of the project. The values are days or man-days."
+}
+
+# Now a more detailed report that shows all jobs and the people
+# assigned to the tasks. It also features a comparison of the planned
+# and actual scenario.
+htmltaskreport "Tasks-Details.html" {
+  ${navbar}
+  # Now we use a daily calendar.
+  columns no, name, start, end, scenario, daily
+  #start 2002-03-01
+  #end 2002-04-01
+  # Show plan and delayed scenario values.
+  scenarios plan, actual
+  headline "<xsl:value-of select="heading"/> Project - March 2002"
+  caption "This table shows the load of each day for all the tasks.
+  Additionally the resources used for each task are listed. Since the
+  project start was delayed, the delayed schedule differs significantly
+  from the original plan."
+  # Don't hide any resources, that is show them all.
+  hideresource 0
+}
+
+# The previous report listed the resources per task. Now we generate a
+# report the lists all resources.
+htmlresourcereport "Staff-Overview.html" {
+  ${navbar}
+  # Add a column with the total effort per task.
+  columns no, name { cellurl "http://www.tj.org" }, scenario, weekly, effort
+  scenarios plan, actual
+  # Since we want to see the load values as hours per week, we switch
+  # the unit that loads are reported in to hours.
+  loadunit hours
+  headline "Weekly working hours for the <xsl:value-of select="heading"/> Project"
+}
+
+# Now a report similar to the above one but with much more details.
+htmlresourcereport "Staff-Details.html" {
+  ${navbar}
+  columns name, daily, effort
+  # To still keep the report readable we limit it to show only the
+  # data for March 2002.
+  start 2002-01-16
+  end 2002-04-01
+  hidetask 0
+  # The teams are virtual resources that we don't want to see. Since
+  # we have assigned a flag to those virtual resource, we can just
+  # hide them.
+  hideresource team
+  # We also like to have the report sorted alphabetically ascending by
+  # resource name.
+  sortresources nameup
+  loadunit hours
+  headline "Daily working hours for the <xsl:value-of select="heading"/> Project - March 2002"
+}
+
+htmlweeklycalendar "Calendar.html" {
+  ${navbar}
+  headline "Ongoing Tasks - March 2002"
+  start 2002-03-01
+  end 2002-04-01
+}
+
+htmlstatusreport "Status-Report.html" {
+  ${navbar}
+}
+
+# To conclude the HTML reports a report that shows how badly the
+# project is calculated is generated. The company won't get rich with
+# this project. Due to the slip, it actually needs some money from the
+# bank to pay the salaries.
+htmlaccountreport "Accounting.html" {
+  ${navbar}
+  # Besides the number of the account and the name we have a column
+  # with the total values (at the end of the project) and the values
+  # for each month of the project.
+  columns no, name, scenario, total, monthly
+  headline "P&#038;L for the Accounting Software Project"
+  caption "The table shows the profit and loss
+           analysis as well as the cashflow situation of the Accounting
+           Software Project."
+  # Since this is a cashflow calculation we show accumulated values
+  # per account.
+  accumulate
+  scenarios plan, actual
+}
+
+# Finally we generate an XML report that contains all info about the
+# scheduled project. This will be used by tjx2gantt to create a nice
+# Gantt chart of our project.
+xmlreport "<xsl:value-of select="translate(heading, ' ', '_')"/>.tjx" {
+# version 2
+}
+</xsl:template>
+<xsl:template name="recursive">
+       <xsl:for-each select="branch">
+               task <xsl:value-of select="translate(heading, ' ', '_')"/> "<xsl:value-of select="heading"/>" {
+               # I've included all of the Optional Attributes here.
+               # Commented out for your pleasure.      
+               #account
+               #allocate dev1
+               #complete
+               #depends 
+               #duration
+               #effort 20d
+               #endbuffer
+               #endcredit
+               #end, flags
+               #journalentry
+               #length
+               #maxend
+               #maxstart
+               #milestone
+               #minend
+               #minstart
+               #note
+               #precedes
+               #priority
+               #projectid
+               #reference
+               #responsible
+               #scheduled
+               #scheduling
+               #shift
+               #startbuffer
+               #startcredit
+               plan:start 2002-03-05
+               actual:start 2002-03-05
+               #statusnote
+               #supplement
+               <xsl:call-template name="recursive"/>
+               }
+       </xsl:for-each>
+</xsl:template>
+</xsl:stylesheet>
\ No newline at end of file
diff --git a/task.cpp b/task.cpp
new file mode 100644 (file)
index 0000000..588f280
--- /dev/null
+++ b/task.cpp
@@ -0,0 +1,259 @@
+#include "task.h"
+
+#include <QDebug>
+
+#include "branchitem.h"
+#include "taskmodel.h"
+#include "vymmodel.h"
+
+
+Task::Task(TaskModel *tm)
+{
+//    qDebug()<<"Constr. Task";
+    status=NotStarted;
+    awake=Task::WideAwake;
+    branch=NULL;
+    prio='X';
+    model=tm;
+    date_creation=QDateTime::currentDateTime();
+    date_sleep=QDate::currentDate();
+}
+
+Task::~Task()
+{
+//    qDebug()<<"Destr. Task";
+    if (branch) branch->setTask (NULL);
+}
+
+void Task::setModel (TaskModel* tm)
+{
+    model=tm;
+}
+
+void Task::cycleStatus(bool reverse)
+{
+    if (awake==Morning)
+    {
+       setAwake (WideAwake);
+       return;
+    }
+    int i=status;
+    reverse ?  i-- : i++;
+
+    if (i<0) i=2;
+    if (i>2) i=0;
+
+    setStatus ( (Task::Status) i );
+
+    if (branch) branch->updateTaskFlag ();
+}
+
+void Task::setStatus(const QString &s)
+{
+    if (s=="NotStarted")
+       setStatus(NotStarted);
+    else if (s=="WIP")
+       setStatus(WIP);
+    else if (s=="Finished")
+       setStatus(Finished);
+    else
+       qWarning()<<"Task::setStatus Unknown value: "<<s;
+}
+
+void Task::setStatus(Status s)
+{
+    if (s==status) return;
+    status=s;
+    if (branch) branch->updateTaskFlag();
+}
+
+Task::Status Task::getStatus()
+{
+    return status;
+}
+
+QString Task::getStatusString()            
+{
+    switch (status)
+    {
+       case NotStarted: return "NotStarted";
+       case WIP: return "WIP";
+       case Finished: return "Finished";
+    }
+    return "Undefined";
+}
+
+QString Task::getIconString()
+{
+    QString s;
+    switch (status) 
+    {
+        case NotStarted: 
+            s="task-new";
+            break;
+        case WIP: 
+            s="task-wip";
+            break;
+        case Finished: 
+            s="task-finished";
+        break;
+    }
+    if (status != Finished)
+        switch (awake) 
+        {
+            case Sleeping: 
+                s+="-sleeping";
+                break;
+            case Morning: 
+                s+="-morning";
+                break;
+            default: break;
+        }
+    return s;
+}
+
+void Task::setAwake(const QString &s)
+{
+    if (s=="Sleeping")
+       setAwake(Sleeping);
+    else if (s=="Morning")
+       setAwake(Morning);
+    else if (s=="WideAwake")
+       setAwake(WideAwake);
+    else
+       qWarning()<<"Task::setAwake Unknown value: "<<s;
+}
+
+void Task::setAwake(Task::Awake a)
+{
+    if (a==awake) return;
+    awake=a;
+    recalcAwake();
+    if (branch) branch->updateTaskFlag();
+}
+
+Task::Awake Task::getAwake()
+{
+    return awake;
+}
+
+QString Task::getAwakeString()     
+{
+    switch (getAwake() )
+    {
+       case Sleeping: return "Sleeping";
+       case Morning: return "Morning";
+       case WideAwake: return "WideAwake";
+    }
+    return "Undefined";
+}
+
+void Task::recalcAwake()
+{
+    if ( getDaysSleep() <= 0 && awake==Task::Sleeping)
+       setAwake(Task::Morning);
+}
+
+void Task::setPriority (int p)
+{
+    prio=p;
+}
+
+int Task::getPriority()
+{
+    return prio;
+}
+
+int Task::getAgeCreation()
+{
+    return date_creation.daysTo (QDateTime::currentDateTime() );
+}
+
+int Task::getAgeModified()
+{
+    if (date_modified.isValid() )
+       return date_modified.daysTo (QDateTime::currentDateTime() );
+    else
+       return getAgeCreation();
+}
+
+void Task::setDateCreation (const QString &s)
+{
+    date_creation=QDateTime().fromString (s,Qt::ISODate);
+}
+
+
+void Task::setDateModified()
+{
+    date_modified=QDateTime::currentDateTime();
+}
+
+void Task::setDateModified(const QString &s)
+{
+    date_modified=QDateTime().fromString (s,Qt::ISODate);
+}
+
+void Task::setDateSleep(int n)
+{
+    setDateSleep ( QDate::currentDate().addDays (n).toString(Qt::ISODate) );
+}
+
+void Task::setDateSleep(const QString &s)
+{
+    date_sleep=QDate().fromString (s,Qt::ISODate);
+    if (getDaysSleep()>0) 
+       setAwake(Sleeping);
+    else
+       setAwake (Morning);
+    if (status == Finished) setStatus(WIP); 
+}
+
+int Task::getDaysSleep()
+{
+    int d=0;
+    if (date_sleep.isValid() )
+       d=QDate::currentDate().daysTo (date_sleep);
+    return d;
+}
+
+void Task::setBranch (BranchItem *bi)
+{
+    branch=bi;
+    mapName=bi->getModel()->getMapName();
+}
+
+BranchItem* Task::getBranch ()
+{
+    return branch;
+}
+
+QString Task::getName ()
+{
+    if (branch)
+        return branch->getHeadingPlain();
+    else
+    {
+        qWarning()<<"Task::getName  no branch!";
+        return "UNDEFINED";
+    }
+}
+
+QString Task::getMapName ()
+{
+    return mapName;
+}
+
+QString Task::saveToDir()
+{
+    QString sleepAttr;
+    if (getDaysSleep()>0)
+       sleepAttr = attribut ("date_sleep",date_sleep.toString (Qt::ISODate) );
+    return singleElement ("task",
+       attribut ("status",getStatusString() ) +
+       attribut ("awake",getAwakeString() ) +
+       attribut ("date_creation",date_creation.toString (Qt::ISODate) ) +
+       attribut ("date_modified",date_modified.toString (Qt::ISODate) ) +
+       sleepAttr
+     );
+}
+
diff --git a/task.h b/task.h
new file mode 100644 (file)
index 0000000..9dd21b3
--- /dev/null
+++ b/task.h
@@ -0,0 +1,63 @@
+#ifndef TASK_H
+#define TASK_H
+
+#include <QString>
+
+#include <QDateTime>
+#include "xmlobj.h"
+
+class BranchItem;
+class QString;
+class TaskModel;
+class VymModel;
+
+class Task:public XMLObj {
+public:
+    enum Status {NotStarted,WIP,Finished};
+    enum Awake {Sleeping,Morning,WideAwake};
+
+    Task(TaskModel* tm);
+    ~Task();
+    void setModel (TaskModel* tm);
+    void cycleStatus(bool reverse=false);
+    void setStatus(const QString &s);
+    void setStatus(Status ts);
+    Status getStatus();        
+    QString getStatusString();
+    QString getIconString();    //! Used to create icons in task list and flags in mapview
+    void setAwake(const QString &s);
+    void setAwake(Awake a);
+    Awake getAwake();
+    QString getAwakeString();
+private:
+    void recalcAwake();
+public:
+    void setPriority(int  p);
+    int getPriority();
+    int getAgeCreation();
+    int getAgeModified();
+    void setDateCreation (const QString &s);
+    void setDateModified ();
+    void setDateModified (const QString &s);
+    void setDateSleep    (int n);
+    void setDateSleep    (const QString &s);
+    int getDaysSleep();
+    QString getName();
+    void setBranch (BranchItem *bi);
+    BranchItem* getBranch();
+    QString getMapName();
+    QString saveToDir();
+
+private:
+    TaskModel* model;
+    Status status; 
+    Awake awake;
+    int prio;
+    BranchItem *branch;
+    QString mapName;
+    QDateTime date_creation;
+    QDateTime date_modified;
+    QDate     date_sleep;
+};
+
+#endif
diff --git a/taskeditor.cpp b/taskeditor.cpp
new file mode 100644 (file)
index 0000000..a6f6919
--- /dev/null
@@ -0,0 +1,286 @@
+#include "taskeditor.h"
+
+#include <QAbstractTableModel>
+#include <QAction>
+#include <QDebug>
+#include <QHeaderView>
+#include <QMenu>
+#include <QSortFilterProxyModel>
+#include <QTextEdit>
+#include <QToolBar>
+#include <QVBoxLayout>
+
+#include "branchitem.h"
+#include "mainwindow.h"
+#include "task.h"
+#include "taskmodel.h"
+#include "vymmodel.h"
+
+extern Main *mainWindow;
+extern Settings settings;
+extern QMenu* taskContextMenu;
+extern TaskModel* taskModel;
+
+TaskEditor::TaskEditor(QWidget *)
+{
+    // Creat Table view
+    view = new QTableView; 
+
+    QVBoxLayout* mainLayout = new QVBoxLayout;
+
+    QToolBar *tb=new QToolBar ("TaskEditor filters");
+    tb->setToolButtonStyle (Qt::ToolButtonTextBesideIcon);
+    mainLayout->addWidget (tb);
+
+    // Original icon from KDE: /usr/share/icons/oxygen/16x16/actions/view-filter.png
+
+    QIcon icon=QIcon (":/view-filter.png");
+    QAction *a = new QAction(icon,  tr( "Current map","TaskEditor" ),this );
+    a->setCheckable(true);
+    a->setChecked  (settings.value("/taskeditor/filterMap", false).toBool());
+    tb->addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT(toggleFilterMap() ) );
+    actionToggleFilterMap = a;
+
+    a = new QAction(icon,  tr( "Active tasks","TaskEditor" ),this );
+    a->setCheckable(true);
+    a->setChecked  (settings.value("/taskeditor/filterActive", false).toBool());
+    tb->addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT(toggleFilterActive() ) );
+    actionToggleFilterActive = a;
+
+    a = new QAction(icon,  tr( "New tasks","TaskEditor" ),this );
+    a->setCheckable(true);
+    a->setChecked  (settings.value("/taskeditor/filterNew", false).toBool());
+    tb->addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT(toggleFilterNew() ) );
+    actionToggleFilterNew = a;
+
+    a = new QAction(icon,  "Flag", this); //tr( "Flags","TaskEditor" ),this );   // FIXME-1 add translation
+    a->setCheckable(true);
+    a->setChecked  (settings.value("/taskeditor/filterNew", false).toBool());
+    if (settings.value( "/mainwindow/showTestMenu",false).toBool())
+        tb->addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT(toggleFilterFlags() ) );
+    actionToggleFilterFlags = a;
+
+    // Forward Enter and Return to MapEditor
+    a = new QAction(icon, tr( "Edit heading","TaskEditor" ), this);
+    a->setShortcut ( Qt::Key_Return);          
+    a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    addAction (a);
+    connect( a, SIGNAL( triggered() ), mainWindow, SLOT( editHeading() ) );
+    a = new QAction( tr( "Edit heading","TaskEditor" ), this);
+    a->setShortcut ( Qt::Key_Enter);                   
+    a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    addAction (a);
+    connect( a, SIGNAL( triggered() ), mainWindow, SLOT( editHeading() ) );
+
+    // Clone actions defined in MainWindow
+    foreach (QAction* qa, mainWindow->taskEditorActions)
+    {
+        a = new QAction( this );
+        a->setShortcut( qa->shortcut() );
+        a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+        connect( a, SIGNAL( triggered() ), qa, SLOT( trigger() ) );
+        addAction(a);
+    }
+
+    mainLayout->addWidget (view);
+    setLayout (mainLayout);
+
+    view->setSelectionBehavior(QAbstractItemView::SelectRows);
+    view->horizontalHeader()->setStretchLastSection(true);
+    view->verticalHeader()->hide();
+    view->setEditTriggers(QAbstractItemView::NoEditTriggers);
+
+    filterActiveModel = new TaskFilterModel;
+    filterActiveModel->setSourceModel(taskModel);
+
+    view->setModel (filterActiveModel);
+    view->setSortingEnabled(true);
+    view->horizontalHeader()->setSortIndicator (0,Qt::AscendingOrder);
+
+    blockExternalSelect=false;
+
+    connect (
+       view->selectionModel(),SIGNAL (selectionChanged (QItemSelection,QItemSelection)),
+       this, SLOT (selectionChanged (QItemSelection,QItemSelection)));
+    
+    // layout changes trigger resorting
+    connect( taskModel, SIGNAL( layoutChanged() ), this, SLOT(sort() ) );
+
+    // Enable wordwrap when data changes
+    connect ( 
+        taskModel, SIGNAL( dataChanged( QModelIndex, QModelIndex)),
+        view, SLOT( resizeRowsToContents() ) );
+    connect ( 
+        view->horizontalHeader(), SIGNAL( sectionResized(int, int, int)),
+        view, SLOT( resizeRowsToContents() ) );
+
+
+    // Initialize view filters according to previous settings
+    setFilterMap();
+    setFilterActive();
+    setFilterNew();
+    setFilterFlags();
+
+    // Initialize column widths
+    QString s;
+    for (int i=0; i<6; i++)
+    {
+       s=QString("/taskeditor/columnWidth/%1").arg(i);
+       if (settings.contains (s) )
+           view->setColumnWidth (i, settings.value(s, 100).toInt() );
+    }
+
+    // Initialize display of parents of a task
+    bool ok;
+    int i=settings.value ("/taskeditor/showParentsLevel", 0).toInt(&ok);
+    if (ok) taskModel->setShowParentsLevel(i);
+
+}
+
+TaskEditor::~TaskEditor()
+{
+    settings.setValue ("/taskeditor/filterMap",actionToggleFilterMap->isChecked());
+    settings.setValue ("/taskeditor/filterActive",actionToggleFilterActive->isChecked());
+    settings.setValue ("/taskeditor/filterNew",actionToggleFilterNew->isChecked());
+    settings.setValue ("/taskeditor/showParentsLevel",taskModel->getShowParentsLevel() );
+    for (int i=0; i<7; i++)
+       settings.setValue (QString("/taskeditor/columnWidth/%1").arg(i),view->columnWidth(i) );
+}
+
+void TaskEditor::setMapName (const QString &n)
+{
+    currentMapName=n;
+    setFilterMap();
+}
+
+bool TaskEditor::isUsedFilterMap()
+{
+    return actionToggleFilterMap->isChecked();
+}
+
+void TaskEditor::setFilterMap () 
+{
+    if (isUsedFilterMap() )
+        filterActiveModel->setMapFilter(currentMapName);
+    else
+        filterActiveModel->setMapFilter(QString() );
+    sort();
+}
+
+bool TaskEditor::isUsedFilterActive()
+{
+    return actionToggleFilterActive->isChecked();
+}
+
+void TaskEditor::setFilterActive () 
+{
+    filterActiveModel->setFilter (actionToggleFilterActive->isChecked() );   
+    sort();    
+}
+
+void TaskEditor::setFilterNew ()
+{
+    filterActiveModel->setFilterNew (actionToggleFilterNew->isChecked() );
+    sort();
+}
+
+void TaskEditor::setFilterFlags ()  // FIXME-1 experimental
+{
+    filterActiveModel->setFilterFlags (actionToggleFilterFlags->isChecked() );
+    sort();
+}
+
+void TaskEditor::showSelection()
+{
+    QModelIndexList list=view->selectionModel()->selectedIndexes();
+    if (list.count()>0)
+       // Usually whole row is selected, so just go for first cell
+       view->scrollTo(taskModel->index(taskModel->getTask(list.first())), QAbstractItemView::EnsureVisible);
+}
+
+bool TaskEditor::select (Task *task)   
+{
+    if (task)
+    {
+       blockExternalSelect=true;
+       QModelIndex i0b=taskModel->index (task); 
+       QModelIndex i0e=taskModel->indexRowEnd (task); 
+
+       QModelIndex i1b=filterActiveModel->mapFromSource(i0b ); 
+       QModelIndex i1e=filterActiveModel->mapFromSource(i0e ); 
+
+       QItemSelection sel (i1b, i1e);
+
+       view->selectionModel()->select (sel, QItemSelectionModel::ClearAndSelect  );
+       blockExternalSelect=false;
+       return true;
+    }
+    return false;
+}
+
+void TaskEditor::clearSelection()
+{
+    view->selectionModel()->clearSelection();
+}
+
+void TaskEditor::selectionChanged ( const QItemSelection & selected, const QItemSelection & )
+{// FIXME-3 what, if multiple selection in MapEditor?
+    // Avoid segfault on quit, when selected is empty
+    if (selected.indexes().isEmpty() ) return;
+
+    QItemSelection sel0=filterActiveModel->mapSelectionToSource (selected);
+    QModelIndex ix=sel0.indexes().first();
+    Task *t=taskModel->getTask (ix);
+    if (t) 
+    {
+       BranchItem *bi=t->getBranch();
+       if (bi) 
+       {
+           VymModel *m=bi->getModel();
+           if (!blockExternalSelect) m->select (bi);
+           if (m!=mainWindow->currentModel() )
+               mainWindow->gotoModel (m);
+           view->setStyleSheet( 
+           QString ("selection-color: %1;" 
+                    "selection-background-color: %2;").arg(bi->getHeadingColor().name() ).arg(m->getSelectionColor().name() ) );
+           view->scrollTo (selected.indexes().first() );   
+       }
+    }
+}
+
+void TaskEditor::contextMenuEvent ( QContextMenuEvent * e )
+{
+    taskContextMenu->popup (e->globalPos() );
+}
+
+void TaskEditor::sort()
+{
+    QHeaderView *hv=view->horizontalHeader();
+    view->sortByColumn( hv->sortIndicatorSection(), hv->sortIndicatorOrder() );
+    filterActiveModel->invalidate();   
+
+}
+
+void TaskEditor::toggleFilterMap ()
+{
+    setFilterMap ();
+}
+
+void TaskEditor::toggleFilterActive ()
+{
+    setFilterActive();
+
+}
+void TaskEditor::toggleFilterNew ()
+{
+    setFilterNew();
+}
+
+void TaskEditor::toggleFilterFlags ()
+{
+    setFilterFlags();
+}
diff --git a/taskeditor.h b/taskeditor.h
new file mode 100644 (file)
index 0000000..da35836
--- /dev/null
@@ -0,0 +1,56 @@
+#ifndef TASKEDITOR_H 
+#define TASKEDITOR_H
+
+#include <QWidget>
+#include <QTableView>
+
+#include "taskfiltermodel.h"
+
+class BranchItem;
+class QTableView;
+class Task;
+class TaskModel;
+class QSortFilterProxyModel;
+
+class TaskEditor : public QWidget
+{
+    Q_OBJECT
+
+public:
+    TaskEditor (QWidget *parent=NULL);
+    ~TaskEditor ();
+    void setMapName (const QString &);
+    bool isUsedFilterMap ();
+    void setFilterMap  ();
+    bool isUsedFilterActive ();
+    void setFilterActive ();
+    void setFilterNew ();
+    void setFilterFlags ();
+    bool select (Task *task);
+    void clearSelection ();
+    void showSelection ();
+    void contextMenuEvent ( QContextMenuEvent * e );
+
+public slots:
+    void sort();
+
+private slots:
+    void selectionChanged (const QItemSelection & selected, const QItemSelection & );
+    void toggleFilterMap ();
+    void toggleFilterActive ();
+    void toggleFilterNew ();
+    void toggleFilterFlags ();
+
+private:
+    QTableView *view;
+    TaskFilterModel *filterActiveModel;
+    QString currentMapName;
+    QAction *actionToggleFilterMap;
+    QAction *actionToggleFilterActive;
+    QAction *actionToggleFilterNew;
+    QAction *actionToggleFilterFlags;
+    bool blockExternalSelect;
+};
+
+#endif
+
diff --git a/taskfiltermodel.cpp b/taskfiltermodel.cpp
new file mode 100644 (file)
index 0000000..fa3bde7
--- /dev/null
@@ -0,0 +1,54 @@
+#include "taskfiltermodel.h"
+#include "taskmodel.h"
+
+#include <QSortFilterProxyModel>
+
+#include "branchitem.h"
+
+extern TaskModel *taskModel;
+
+void TaskFilterModel::setFilter (bool b)
+{
+    useFilter = b;
+}
+
+void TaskFilterModel::setMapFilter (const QString &s)  
+{
+    mapFilter = s;
+}
+
+void TaskFilterModel::setFilterNew (bool b)
+{
+    filterNew = b;
+}
+
+void TaskFilterModel::setFilterFlags (bool b)
+{
+    filterFlags = b;
+}
+bool TaskFilterModel::filterAcceptsRow(int sourceRow, 
+         const QModelIndex &sourceParent) const
+{
+    QModelIndex ix = sourceModel()->index(sourceRow, 0, sourceParent);
+
+    // Filter by mapname
+    QString mapname = taskModel->getTask(ix)->getMapName();
+    if (mapname.isEmpty()) mapname = "justSomePseudoMapNameForFiltering";
+    if ( !mapFilter.isEmpty() && mapname != mapFilter )
+        return false;
+
+    // Filter new tasks
+    if (filterNew && taskModel->getTask(ix)->getAwake() != Task::Morning)
+        return false;
+
+    // Filter active tasks
+    if (useFilter && ((taskModel->getTask(ix)->getDaysSleep() > 0) || (taskModel->getTask(ix)->getStatus() == Task::Finished) ) )
+        return false;
+
+    // Filter flags  // FIXME-1 currently only "arrow-up"
+    if (filterFlags && !taskModel->getTask(ix)->getBranch()->hasActiveStandardFlag("arrow-up") )
+        return false;
+
+    return true;
+}
+
diff --git a/taskfiltermodel.h b/taskfiltermodel.h
new file mode 100644 (file)
index 0000000..6e02327
--- /dev/null
@@ -0,0 +1,22 @@
+#ifndef TASKFILTERMODEL_H
+#define TASKFILTERMODEL_H
+
+#include <QSortFilterProxyModel>
+
+class TaskFilterModel:public QSortFilterProxyModel
+{
+public:
+    void setFilter (bool b);
+    void setFilterNew (bool b);
+    void setMapFilter (const QString &s);
+    void setFilterFlags (bool b);
+protected:    
+    bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const;
+private:
+    bool useFilter;
+    QString mapFilter;
+    bool filterNew;
+    bool filterFlags;
+};
+
+#endif
diff --git a/taskmodel.cpp b/taskmodel.cpp
new file mode 100644 (file)
index 0000000..65b2f27
--- /dev/null
@@ -0,0 +1,323 @@
+#include "taskmodel.h"
+
+#include <QDebug>
+
+#include "branchitem.h"
+#include "branchobj.h"
+#include "task.h"
+#include "vymmodel.h"
+
+TaskModel::TaskModel(QObject *parent)
+    : QAbstractTableModel(parent)
+{
+    showParentsLevel = 0;
+}
+
+QModelIndex TaskModel::index (Task* t)
+{
+    int n=tasks.indexOf (t);
+    if (n<0)
+       return QModelIndex();
+    else    
+       return createIndex (n,0,t);
+}
+
+QModelIndex TaskModel::indexRowEnd (Task* t)
+{
+    int n=tasks.indexOf (t);
+    if (n<0)
+       return QModelIndex();
+    else    
+       return createIndex (n,6,t);
+}
+
+Task* TaskModel::getTask (const QModelIndex &ix) const
+{
+    if (ix.isValid() )
+       return tasks.at (ix.row() );
+    else
+       return NULL;
+}
+
+int TaskModel::rowCount(const QModelIndex &parent) const
+{
+    Q_UNUSED(parent);
+    return tasks.size();
+}
+
+int TaskModel::columnCount(const QModelIndex &parent) const
+{
+    Q_UNUSED(parent);
+    return 7;
+}
+
+QVariant TaskModel::data(const QModelIndex &index, int role) const
+{
+    if (!index.isValid())
+        return QVariant();
+    
+    if (index.row() >= tasks.size() || index.row() < 0)
+        return QVariant();
+
+    BranchItem *bi=tasks.at(index.row())->getBranch();
+    Task *t=tasks.at(index.row() );
+
+    if (role == Qt::DisplayRole) 
+    {
+        if (index.column() == 0)
+            return t->getPriority();
+        else if (index.column() == 1)
+            return t->getStatusString() + " - " +t->getAwakeString();
+        else if (index.column() == 2)
+            return t->getAgeCreation();
+        else if (index.column() == 3)
+            return t->getAgeModified();
+        else if (index.column() == 4)
+            return t->getDaysSleep();
+        else if (index.column() == 5)
+        {
+            QString s = bi->getModel()->getMapName();
+            if (s.isEmpty() )
+                return "-";    
+            else
+                return bi->getModel()->getMapName();
+        }
+        else if (index.column() == 6)
+        {
+            BranchItem *bi = tasks.at(index.row())->getBranch();
+            return bi->getHeadingPlainWithParents( showParentsLevel );
+        }
+    } else if (role == Qt::DecorationRole && index.column() == 1)
+    {
+        return QIcon(":/flag-" + t->getIconString() + ".png");
+    }
+    else // role != Qt::DisplayRole
+    {
+       if (role == Qt::ForegroundRole && bi ) 
+           return bi->getHeadingColor();
+       if (role == Qt::BackgroundRole && bi ) 
+        {
+            BranchItem *frameBI=bi->getFramedParentBranch(bi);
+            if (frameBI && index.column() != 5)
+            {
+                BranchObj *bo=frameBI->getBranchObj();
+                if (bo) 
+                    // Return frame background
+                    return bo->getFrameBrushColor();
+            }
+            else
+            {
+                // Return map background
+                return bi->getModel()->getMapBackgroundColor();
+            }
+        }
+    }  
+
+    return QVariant();
+}
+
+QVariant TaskModel::headerData(int section, Qt::Orientation orientation, int role) const
+{
+    if (role != Qt::DisplayRole)
+        return QVariant();
+
+    if (orientation == Qt::Horizontal) {
+        switch (section) {
+            case 0:
+                return tr("Prio","TaskEditor");
+            case 1:
+                return tr("Status","TaskEditor");
+            case 2:
+                return tr("Age total","TaskEditor");
+            case 3:
+                return tr("Age mod.","TaskEditor");
+            case 4:
+                return tr("Sleep","TaskEditor");
+            case 5:
+                return tr("Map","TaskEditor");
+            case 6:
+                return tr("Task","TaskEditor");
+            default:
+                return QVariant();
+        }
+    }
+    return QVariant();
+}
+
+bool TaskModel::insertRows(int position, int rows, const QModelIndex &index, Task* t)
+{
+    Q_UNUSED(index);
+    beginInsertRows(QModelIndex(), position, position+rows-1);
+
+    for (int row=0; row < rows; row++) 
+        tasks.insert(position, t);
+
+    endInsertRows();
+    return true;
+}
+
+bool TaskModel::removeRows(int position, int rows, const QModelIndex &index)
+{
+    Q_UNUSED(index);
+    beginRemoveRows(QModelIndex(), position, position+rows-1);
+
+    for (int row=0; row < rows; ++row) 
+        delete (tasks.takeAt(position)) ;
+
+    endRemoveRows();
+    return true;
+}
+
+bool TaskModel::setData(const QModelIndex &index, Task* t, int role)
+{
+    if (index.isValid() && role == Qt::EditRole) 
+    {
+        int row = index.row();
+
+        tasks.replace(row, t);
+        emit(dataChanged(index, index));
+
+        return true;
+    }
+
+    return false;
+}
+
+void TaskModel::emitDataChanged (Task* t)
+{
+    QModelIndex ix=index (t);
+    if (ix.isValid() )
+    {
+       int row=ix.row();
+       int col=0;
+       while (col<columnCount(QModelIndex() ) )
+       {
+           ix=createIndex (row, col, t);
+           if (ix.isValid() ) emit(dataChanged(ix,ix) );
+           col++;  
+       }    
+    }
+}
+
+Qt::ItemFlags TaskModel::flags(const QModelIndex &index) const
+{
+    if (!index.isValid())
+        return Qt::ItemIsEnabled;
+
+    return QAbstractTableModel::flags(index) | Qt::ItemIsEditable;
+}
+
+int TaskModel::count (VymModel *model)
+{
+    if (!model) return tasks.size();
+    int n=0;
+    foreach (Task *t,tasks) if (t->getBranch()->getModel()==model) n++;
+    return n;
+}
+
+Task* TaskModel::createTask (BranchItem *bi)
+{
+    if (bi)
+    {
+       foreach (Task* t, tasks)
+       {
+           if (t->getBranch()==bi)
+           {
+               qWarning()<<"TaskModel::createTask Branch exists already!";
+               return NULL;
+           }
+       }
+       Task* task=new Task(this);
+       task->setBranch (bi);
+        task->setAwake(Task::Morning);
+        insertRows(tasks.count(), 1, QModelIndex(),task);
+
+       bi->setTask (task);
+
+       return task;
+    }
+    qWarning()<<"TaskEditor::addItem - item exists";
+    return NULL;
+}
+
+void TaskModel::deleteTask (Task* t)
+{
+    int pos=tasks.indexOf(t);
+    if (pos>=0)
+       removeRows(pos, 1,QModelIndex() );
+}
+
+void TaskModel::recalcPriorities() 
+{
+    emit (layoutAboutToBeChanged() );
+    int minPrio=1000000;
+    foreach (Task *t,tasks)
+    {   
+       int p=0;
+       BranchItem *bi=t->getBranch();
+
+       // Status
+       switch (t->getStatus() )
+       {
+           case Task::NotStarted: break;
+           case Task::WIP: p+=10; break;
+           case Task::Finished: p+=2000; break;
+       }
+
+       // Awake and sleeping
+       switch (t->getAwake() )
+       {
+           case Task::Morning: p-=1000; break;
+           case Task::WideAwake: break;
+           case Task::Sleeping: p+=1000 + t->getDaysSleep(); break;
+       }
+
+       // Color (importance)
+       QColor c = bi->getHeadingColor();
+
+        // light blueish green
+       if (c == QColor ("#00aa7f") ) p -= 20;
+
+        // green (e.g. from vym < 2.6.3 with #005500)
+       if (c.red() == 0 && c.blue() == 0 && c.green() < 160) p -= 40;
+
+        // orange
+       if (c == QColor ("#d95100") ) p -= 60;
+
+        // red
+       if (c == QColor ("#ff0000") ) p -= 80;
+
+       // Flags
+       if (bi->hasActiveStandardFlag ("stopsign") ) p-=800;
+
+       // Age
+       p-=t->getAgeModified();
+       p-=t->getAgeCreation() * 1.0 / 365 * 80; // After a year, this is as important as "red"
+
+        // Position in subtree
+        p += bi->num();
+
+       t->setPriority (p);
+       if (p<minPrio) minPrio=p;
+    }
+    // Normalize, so that most important task has prio 1
+    foreach (Task *t,tasks)
+    {   
+       t->setPriority (1-  minPrio + t->getPriority() );
+       //emitDataChanged (t);
+    }
+
+    emit (layoutChanged() );
+}
+
+void TaskModel::setShowParentsLevel(uint i)
+{
+    showParentsLevel = i;
+    recalcPriorities(); // Triggers update of view
+}
+
+uint TaskModel::getShowParentsLevel()
+{
+    return showParentsLevel;
+}
+
diff --git a/taskmodel.h b/taskmodel.h
new file mode 100644 (file)
index 0000000..eab06d1
--- /dev/null
@@ -0,0 +1,45 @@
+#ifndef TASKMODEL_H
+#define TASKMODEL_H
+
+#include <QAbstractTableModel>
+#include <QList>
+
+#include "task.h"
+
+class BranchItem;
+class VymModel;
+
+class TaskModel : public QAbstractTableModel
+{
+    Q_OBJECT
+    
+public:
+    TaskModel(QObject *parent=0);
+    QModelIndex index (Task* t);
+    QModelIndex indexRowEnd (Task* t);
+    Task* getTask (const QModelIndex &ix) const;
+    int rowCount(const QModelIndex &parent) const;
+    int columnCount(const QModelIndex &parent) const;
+    QVariant data(const QModelIndex &index, int role) const;
+    QVariant headerData(int section, Qt::Orientation orientation, int role) const;
+    Qt::ItemFlags flags(const QModelIndex &index) const;
+//    bool setData(const QModelIndex &index, const QVariant &value, int role=Qt::EditRole);
+    bool setData(const QModelIndex &index, Task *t, int role=Qt::EditRole);
+    void emitDataChanged (Task *t);
+    bool insertRows(int position, int rows, const QModelIndex &index=QModelIndex(),Task *t=NULL);
+    bool removeRows(int position, int rows, const QModelIndex &index=QModelIndex());
+
+    int count (VymModel *model=NULL);
+    Task* createTask (BranchItem *bi);
+    void deleteTask (Task* t);
+    void recalcPriorities();
+
+    void setShowParentsLevel (uint i);
+    uint getShowParentsLevel ();
+
+private:
+    QList <Task*> tasks;
+    uint showParentsLevel;
+ };
+
+#endif
diff --git a/test/default.vym b/test/default.vym
new file mode 100644 (file)
index 0000000..47da18a
Binary files /dev/null and b/test/default.vym differ
diff --git a/test/example-2.4.0.vym b/test/example-2.4.0.vym
new file mode 100644 (file)
index 0000000..5235d13
Binary files /dev/null and b/test/example-2.4.0.vym differ
diff --git a/test/note-plain.txt b/test/note-plain.txt
new file mode 100644 (file)
index 0000000..1017347
--- /dev/null
@@ -0,0 +1,3 @@
+Plaintext note.
+Second line.
+<b>3rd line. not bold.</b>
\ No newline at end of file
diff --git a/test/note-richtext.xml b/test/note-richtext.xml
new file mode 100644 (file)
index 0000000..100e1a8
--- /dev/null
@@ -0,0 +1 @@
+<vymnote  textMode="richText"><![CDATA[<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:\'Arial\'; font-size:12pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:\'DejaVu Sans Mono\'; color:#000000;">Rich Text note with <b>not bold text</b></span></p></body></html>]]></vymnote>
diff --git a/test/note.html b/test/note.html
new file mode 100644 (file)
index 0000000..71dcc55
--- /dev/null
@@ -0,0 +1,5 @@
+<html>
+<body>
+  <b>bold</b>
+</body>
+</html>
\ No newline at end of file
diff --git a/test/start-test.sh b/test/start-test.sh
new file mode 100755 (executable)
index 0000000..76565ec
--- /dev/null
@@ -0,0 +1,20 @@
+#!/bin/bash
+
+SRCDIR=test
+VYMTESTDIR=$(mktemp -d /tmp/vym-test-XXXX)
+
+DEFAULTMAP=$SRCDIR/default.vym
+TESTMAP=$VYMTESTDIR/testmap.vym
+
+cp $DEFAULTMAP $TESTMAP
+
+vym  -l -t -n test $TESTMAP  & #-geometry 768x576-0+0 &
+
+PID=$!
+
+sleep 1
+
+$SRCDIR/vym-test.rb -d $VYMTESTDIR
+
+kill -s 15 $PID
+echo To clean up, do: rm -rf $VYMTESTDIR
diff --git a/test/vym-test.rb b/test/vym-test.rb
new file mode 100755 (executable)
index 0000000..6ea4bbb
--- /dev/null
@@ -0,0 +1,852 @@
+#!/usr/bin/env ruby
+
+require "#{ENV['PWD']}/scripts/vym-ruby"
+require 'date'
+require 'optparse'
+
+instance_name = 'test'
+
+options = {}
+OptionParser.new do |opts|
+  opts.banner = "Usage: vym-test.rb [options]"
+
+  opts.on('-d', '--directory  NAME', 'Directory name') { |s| options[:testdir] = s }
+end.parse!
+
+@testdir = options[:testdir]
+
+$tests_passed = 0
+$tests_failed = 0
+$tests_total  = 0
+
+def waitkey
+  puts "Press return to continue..."
+  STDIN.gets
+end
+
+def expect (comment, v_real, v_exp)
+  if v_exp == v_real
+    puts "    Ok: #{comment}"
+    $tests_passed += 1
+  else  
+    puts "Failed: #{comment}. Expected '#{v_exp}', but got '#{v_real}'"
+    $tests_failed += 1
+    waitkey
+  end  
+  $tests_total += 1
+end    
+
+def expect_error (comment, error)
+  if error.length ==  0
+    puts "Failed: #{comment}. Command did not return error."
+    $tests_failed += 1
+  else  
+    puts "    Ok: #{comment}"
+    $tests_passed += 1
+  end
+  $tests_total += 1
+end
+
+def heading (s)
+  puts "\n#{s}\n#{'-' * s.length}\n"
+end
+
+def init_map
+  # FIXME-2 Missing: check or init default map 
+  # Map Structure:
+  # MapCenter 0
+  #   Main A
+  #     branch a
+  #       branch a1
+  #       branch a2
+  #       branch a3
+  #   Main B
+  # MapCenter 1
+end
+
+def summary
+  puts "\nTests done  : #{$tests_total}"
+  puts "Tests passed: #{$tests_passed}"
+  puts "Tests failed: #{$tests_failed}"
+end
+
+vym_mgr=VymManager.new
+#vym_mgr.show_running
+
+vym=vym_mgr.find(instance_name)
+if !vym
+  puts "Couldn't find instance name \"#{instance_name}\", please start one:"
+  puts "vym -l -n \"#{instance-name}\" -t test/default.vym"
+  exit
+end
+
+
+#######################
+@center_0="mc:0"
+@center_1="mc:1"
+@main_a="mc:0,bo:0"
+  @branch_a=@main_a+",bo:0"
+  @branch_b=@main_a+",bo:1"
+  @branch_c=@main_a+",bo:2"
+@main_b="mc:0,bo:1"
+
+@n_centers=2
+
+#######################
+def test_basics (vym)
+  heading "Basic checks:"
+  init_map
+  vym.select @main_a
+  expect "select mainbranch A", vym.getSelectString, @main_a
+  expect "getHeadingPlainText", vym.getHeadingPlainText, "Main A"
+  expect "branchCount", vym.branchCount, 3
+
+  vym.selectLastBranch
+  expect "selectLastBranch", vym.getHeadingPlainText, "branch c"
+
+  vym.selectParent
+  expect "selectParent", vym.getHeadingPlainText, "Main A"
+
+  expect "getDestPath: Got #{vym.getDestPath}", vym.getDestPath, @testdir + "/testmap.vym" 
+  expect "getFileDir:  Got #{vym.getFileDir}", vym.getFileDir, @testdir + "/" 
+end
+
+#######################
+def test_export (vym)
+  heading "Export:"
+  init_map
+
+  #HTML
+  mapname = "export-html"
+  htmlpath = "#{@testdir}/#{mapname}.html"
+  flagpath = "#{@testdir}/flags/flag-stopsign.png"
+  pngpath = "#{@testdir}/#{mapname}.png"
+  csspath = "#{@testdir}/vym.css"
+  vym.exportHTML(@testdir,htmlpath)
+  expect "exportHTML: HTML file exists", File.exists?(htmlpath), true
+  expect "exportHTML: HTML image exists", File.exists?(pngpath), true
+  expect "exportHTML: HTML flags exists", File.exists?(flagpath), true
+  expect "exportHTML: HTML CSS exists", File.exists?(csspath), true
+  File.delete(htmlpath)
+  File.delete(flagpath)
+  File.delete(pngpath)
+  File.delete(csspath)
+  vym.exportLast
+  expect "exportLast: HTML #{htmlpath} file exists", File.exists?(htmlpath), true
+  expect "exportLast: HTML image exists", File.exists?(pngpath), true
+  expect "exportLast: HTML flags exists", File.exists?(flagpath), true
+  expect "exportLast: HTML CSS exists", File.exists?(csspath), true
+
+  #AO
+  filepath = "#{@testdir}/export-ao.txt"
+  vym.exportAO(filepath)
+  expect "exportAO:    AO file exists", File.exists?(filepath), true
+  File.delete(filepath)
+  vym.exportLast
+  expect "exportLast:  AO file exists", File.exists?(filepath), true
+
+  #ASCII
+  filepath = "#{@testdir}/export-ascii.txt"
+  vym.exportASCII(filepath,false)
+  expect "exportASCII: ASCII file exists", File.exists?(filepath), true
+  File.delete(filepath)
+  vym.exportLast
+  expect "exportLast:  ASCII file exists", File.exists?(filepath), true
+
+  #CSV
+  filepath = "#{@testdir}/export-csv.txt"
+  vym.exportCSV(filepath)
+  expect "exportCSV:    CSV file exists", File.exists?(filepath), true
+  File.delete(filepath)
+  vym.exportLast
+  expect "exportLast:  CSV file exists", File.exists?(filepath), true
+
+  #Image
+  filepath = "#{@testdir}/export-image.png"
+  vym.exportImage(filepath,"PNG")
+  expect "exportImage: PNG file exists", File.exists?(filepath), true
+  File.delete(filepath)
+  vym.exportLast
+  expect "exportLast:  PNG file exists", File.exists?(filepath), true
+
+  #LaTeX
+  filepath = "#{@testdir}/export-LaTeX.tex"
+  vym.exportLaTeX(filepath)
+  expect "exportLaTeX:  LaTeX file exists", File.exists?(filepath), true
+  File.delete(filepath)
+  vym.exportLast
+  expect "exportLast:   LaTeX file exists", File.exists?(filepath), true
+
+  #OrgMode
+  filepath = "#{@testdir}/export-orgmode.org"
+  vym.exportOrgMode(filepath)
+  expect "exportOrgMode:  OrgMode file exists", File.exists?(filepath), true
+  File.delete(filepath)
+  vym.exportLast
+  expect "exportLast:     OrgMode file exists", File.exists?(filepath), true
+
+  #PDF
+  filepath = "#{@testdir}/export-pdf.pdf"
+  vym.exportPDF(filepath)
+  expect "exportPDF:  PDF file exists", File.exists?(filepath), true
+  File.delete(filepath)
+  vym.exportLast
+  expect "exportLast: PDF file exists", File.exists?(filepath), true
+
+  #SVG
+  filepath = "#{@testdir}/export-svg.svg"
+  vym.exportSVG(filepath)
+  expect "exportSVG:  SVG file exists", File.exists?(filepath), true
+  File.delete(filepath)
+  vym.exportLast
+  expect "exportLast: SVG file exists", File.exists?(filepath), true
+
+  #XML
+  filepath = "#{@testdir}/export-xml.xml"
+  vym.exportXML(@testdir, filepath)
+  expect "exportXML: XML file exists", File.exists?(filepath), true
+  File.delete(filepath)
+  vym.exportLast
+  expect "exportLast: XML file exists", File.exists?(filepath), true
+
+  #OpenOffice Impress //FIXME-2
+  #KDE4 Bookmarks //FIXME-2
+  #Taskjuggler //FIXME-3
+end
+
+#######################
+def test_extrainfo (vym)
+  heading "Extra information:"
+  init_map
+  vym.setMapAuthor("Fra Erasmas")
+  expect "Set and get map author", vym.getMapAuthor, "Fra Erasmas"
+  vym.setMapComment("xy z")
+  expect "Set and get map comment", vym.getMapComment, "xy z"
+  vym.setMapTitle("vym rules!")
+  expect "Set and get map title", vym.getMapTitle, "vym rules!"
+end
+
+#######################
+def test_adding_branches (vym)
+  heading "Adding branches:"
+  init_map
+  vym.select @main_a
+  n=vym.branchCount
+  vym.addBranch()
+  expect( "addBranch", vym.branchCount, n+1 )
+
+  vym.selectLatestAdded
+  expect "selectLatestAdded", vym.getSelectString, @main_a+",bo:3"
+
+  vym.undo
+  expect( "Undo: addBranch", vym.branchCount, n )
+
+  init_map
+  vym.select @main_a
+  n=vym.branchCount
+  vym.select @branch_a
+  vym.addBranch(-3)
+  vym.addBranch(-1)
+  vym.select @main_a
+  expect "addBranchAbove/Below", vym.branchCount, n+2
+
+  vym.undo
+  vym.undo
+  expect "Undo: addBranchAbove/Below", vym.branchCount, n
+
+  init_map
+  vym.select @branch_a
+  vym.addBranchBefore
+  vym.select @main_a
+  expect "addBranchBefore: check branchcount",  vym.branchCount, n
+  vym.select @branch_a
+  expect "addBranchBefore: check heading", vym.getHeadingPlainText, ""
+  vym.undo
+  vym.select @main_a
+  expect "Undo: addBranchBefore", vym.branchCount, n  
+end
+
+#######################
+def test_adding_maps (vym)
+  heading "Adding maps"
+  init_map
+  vym.select @branch_a
+  n=vym.branchCount
+  vym.addMapReplace "test/default.vym"
+  vym.select @main_a
+  expect "addMapReplace: check branch count in #{@main_a}", vym.branchCount, n + @n_centers -1
+  vym.select @branch_a
+  expect "addMapReplace: check if #{@branch_a} is new", vym.branchCount, 2
+  
+  vym.undo
+  vym.select @main_a
+  expect "Undo: check branch count in #{@main_a}", vym.branchCount, 3
+  vym.select @branch_a
+  expect "Undo: check if #{@branch_a} is back", vym.branchCount, 3 
+  
+  init_map
+  vym.select @main_a
+  vym.addMapInsert "test/default.vym",1
+  vym.select @main_a
+  expect "addMapInsert: branch count",  vym.branchCount, n+2 
+  vym.select @main_a + ",bo:1"
+  expect "addMapInsert: new heading", vym.getHeadingPlainText, "MapCenter 0"
+  
+  vym.undo
+  vym.select @main_a
+  expect "Undo: check branch count in #{@main_a}", vym.branchCount, 3 
+  vym.select @branch_b
+  expect "Undo: check heading of  #{@branch_b}",  vym.getHeadingPlainText, "branch b"
+end
+
+#######################
+def test_scrolling (vym)
+  heading "Scrolling and unscrolling"
+  init_map
+  vym.select @main_a
+  vym.toggleScroll
+  expect "toggleScroll", vym.isScrolled, true
+  vym.undo
+  expect "undo toggleScroll", vym.isScrolled, false
+  vym.scroll
+  expect "scroll", vym.isScrolled, true
+  vym.unscroll
+  expect "unscroll", vym.isScrolled, false
+
+  init_map
+  vym.scroll
+  vym.select @branch_a
+  vym.scroll
+  vym.select @main_a
+  vym.unscrollChildren
+  vym.select @branch_a
+  expect "unscrollChildren", vym.isScrolled, false
+  vym.undo
+  expect "undo unscrollChildren", vym.isScrolled, true
+  vym.unscroll
+  vym.select @branch_a
+  vym.unscroll
+end
+
+#######################
+def test_moving_parts (vym)
+  heading "Moving parts"
+  init_map
+  vym.select @branch_a
+  vym.moveDown
+  vym.select @branch_a
+  expect "Moving down", vym.getHeadingPlainText, "branch b"
+  vym.undo
+  vym.select @branch_a
+  expect "Undo Moving down", vym.getHeadingPlainText, "branch a"
+  
+  init_map
+  vym.select @branch_b
+  vym.moveUp
+  vym.select @branch_a
+  expect "Moving up", vym.getHeadingPlainText, "branch b"
+  vym.undo
+  vym.select @branch_b
+  expect "Undo Moving up", vym.getHeadingPlainText, "branch b"
+  
+  init_map
+  vym.select @main_b
+  n=vym.branchCount
+  vym.select @branch_a
+  vym.relinkTo @main_b,0,0,0
+  vym.select @main_b
+  expect "RelinkTo #{@main_b}: branchCount increased there",  vym.branchCount, n+1
+
+  vym.undo
+  vym.select @branch_b
+  expect "Undo: RelinkTo #{@main_b}: branchCount decreased there", vym.branchCount, n
+  
+  init_map
+  vym.select @main_a
+  err = vym.relinkTo @branch_a,0,0,0
+  expect_error "RelinkTo myself fails.", err
+
+  vym
+  init_map
+  vym.select @branch_a
+  n=vym.branchCount
+  vym.select @main_b
+  vym.relinkTo @branch_a, 1, 0, 0
+  vym.select @branch_a
+  expect "RelinkTo #{@branch_a}, pos 1: branchCount increased there",  vym.branchCount, n+1
+  vym.select "#{@branch_a},bo:1"
+  expect "RelinkTo #{@branch_a}, pos 1: Mainbranch really moved", vym.getHeadingPlainText, "Main B"
+  vym.undo
+  vym.select @center_0
+  expect "Undo RelinkTo pos 1: branchCount of center", vym.branchCount, 2
+  # FIXME-2 still has wrong position, check position
+  vym.select @main_b
+  vym.moveRel 100,100
+end
+
+#######################
+def test_modify_branches (vym)
+  heading "Modifying branches"
+  init_map
+  vym.select @branch_a
+  vym.setHeadingPlainText "Changed!"
+  expect "setHeadingPlainText", vym.getHeadingPlainText, "Changed!"
+  vym.undo
+  expect "Undo: setHeadingPlainText", vym.getHeadingPlainText, "branch a"
+  vym.redo
+  expect "redo: setHeadingPlainText", vym.getHeadingPlainText, "Changed!" 
+  vym.undo
+end  
+  
+#######################
+def test_flags (vym)
+  heading "Flags"
+  init_map
+  vym.select @main_a
+  
+  def set_flags (v,a)
+    a.each do |f|
+    v.setFlag f
+    expect "Flag set: #{f}", v.hasActiveFlag(f), true
+    end
+  end
+  
+  def unset_flags (v,a)
+    a.each do |f|
+    v.unsetFlag f
+    expect "Flag unset: #{f}", v.hasActiveFlag(f), false
+    end
+  end
+  
+  # Group standard-mark
+  set_flags vym,[ "exclamationmark","questionmark"]
+  
+  # Group standard-status
+  set_flags vym, [ "hook-green", 
+    "wip", 
+    "cross-red", 
+    "stopsign" ]
+  
+  # Group standard-smiley
+  smileys = [ "smiley-good",
+      "smiley-sad",
+      "smiley-omb" ]
+  set_flags vym, smileys
+  
+  # Group standard-arrow
+  set_flags vym, [ "arrow-up", 
+    "arrow-down", 
+    "2arrow-up", 
+    "2arrow-down" ]
+  
+  # Group standard-thumb
+  set_flags vym, [ "thumb-up", "thumb-down" ]
+  
+  # Without group
+  set_flags vym, [ "clock",
+    "phone",
+    "lamp",
+    "rose",
+    "heart",
+    "present",
+    "flash",
+    "info",
+    "lifebelt" ]
+  
+  unset_flags vym, smileys
+  
+  vym.clearFlags
+  expect "clearFlags cleared exclamationmark", vym.hasActiveFlag( "exclamationmark" ), false
+  expect "clearFlags cleared smiley-good", vym.hasActiveFlag( "smiley-good" ), false
+  
+  vym.toggleFlag "lifebelt"
+  expect "toggleFlag: flag activated", vym.hasActiveFlag("lifebelt"),true
+  vym.toggleFlag "lifebelt"
+  expect "toggleFlag: flag deactivated", vym.hasActiveFlag("lifebelt"),false
+end
+
+#######################
+def test_delete_parts (vym)
+  heading "Deleting parts"
+  init_map
+  vym.select @main_a
+  n=vym.branchCount
+  vym.select @branch_a
+  m=vym.branchCount
+  vym.delete
+  vym.select @main_a
+  expect "Delete branch: branchcount",  vym.branchCount, n-1
+  vym.undo
+  vym.select @main_a
+  expect "Undo Delete branch: branchcount parent", vym.branchCount, n
+  vym.select @branch_a
+  expect "Undo Delete branch: branchcount restored branch", vym.branchCount, m
+  
+  init_map
+  vym.select @branch_a
+  n=vym.branchCount
+  vym.deleteChildren
+  vym.select @branch_a
+  expect "deleteChildren: branchcount", vym.branchCount, 0
+  vym.undo
+  vym.select @branch_a
+  expect "Undo: deleteChildren: branchcount", vym.branchCount, n
+  
+  init_map
+  vym.select @main_a
+  n=vym.branchCount
+  vym.select @branch_a
+  m=vym.branchCount
+  vym.deleteKeepChildren
+  vym.select @main_a
+  expect "deleteKeepChildren: branchcount", vym.branchCount, n+m-1
+  vym.undo
+  vym.select @main_a
+  expect "Undo: deleteKeepChildren: branchcount of parent", vym.branchCount, n
+  vym.select @branch_a
+  expect "Undo: deleteKeepChildren: branchcount of branch", vym.branchCount, m
+
+  init_map
+  n = vym.centerCount
+  vym.select @center_1
+  vym.delete
+  expect "Delete mapCenter: number of centers decreased", vym.centerCount, n-1
+  vym.undo
+  expect "Undo Delete mapCenter: number of centers increased", vym.centerCount, n
+end  
+
+#######################
+def test_copy_paste (vym)
+  heading "Copy, cut & Paste"
+  init_map
+  vym.select @main_a
+  n=vym.branchCount
+  
+  vym.copy
+  vym.paste
+  vym.selectLastBranch
+  s=vym.getSelectString
+  expect "Normal paste of branch, check heading of #{s}", vym.getHeadingPlainText, "Main A"
+  
+  vym.undo
+  vym.select @main_a
+  expect "Undo paste: branchCount of #{@main_a}", vym.branchCount, n
+  
+  vym.redo
+  vym.select s
+  expect "redo paste: check heading", vym.getHeadingPlainText, "Main A"
+  
+  vym.cut
+  vym.select @main_a
+  expect "cut: branchCount of #{@main_a}", vym.branchCount, n
+  vym.paste
+  vym.selectLastBranch
+  s=vym.getSelectString
+  expect "Normal paste of branch, check heading of #{s}", vym.getHeadingPlainText, "Main A"
+  vym.cut 
+end 
+
+#######################
+def test_references (vym)
+  heading "References"
+  init_map
+  vym.select @main_a
+  vym.setURL "www.insilmaril.de"
+  expect "setURL:", vym.getURL, "www.insilmaril.de"
+  vym.undo
+  expect "undo setURL", vym.getURL, ""
+  vym.redo
+  expect "redo setURL", vym.getURL, "www.insilmaril.de"
+  vym.setURL ""
+  expect "setURL: unset URL with empty string", vym.getURL, ""
+  
+  vl="default.vym"
+  vym.setVymLink vl
+  s=vym.getVymLink
+  expect "setVymLink returns absolute path", vym.getVymLink, vym.getFileDir + vl
+  vym.undo
+  expect "undo: setVymLink", vym.getVymLink, ""
+  vym.redo
+  expect "redo: setVymLink", vym.getVymLink, s
+  vym.undo
+end
+
+#######################
+def test_history (vym)
+  heading "History"
+  init_map
+  vym.select @main_a
+  vym.setHeadingPlainText "A"
+  vym.setHeadingPlainText "B"
+  vym.setHeadingPlainText "C"
+  vym.undo
+  vym.undo
+  vym.undo
+  expect "Undo 3 times", vym.getHeadingPlainText, "Main A"
+  vym.redo
+  expect "Redo once", vym.getHeadingPlainText, "A"
+  vym.copy
+  vym.redo
+  expect "Redo once more", vym.getHeadingPlainText, "B"
+  vym.redo
+  expect "Redo yet again", vym.getHeadingPlainText, "C"
+  vym.setHeadingPlainText "Main A"
+  vym.paste
+  vym.selectLastBranch
+  expect "Paste from the past", vym.getHeadingPlainText, "A"
+  vym.delete
+end  
+
+#######################
+def test_xlinks (vym)
+  heading "XLinks:"
+  init_map
+  vym.addXLink("mc:0,bo:0","mc:0,bo:1",2,"#ff0000","Qt::DashDotLine")
+  vym.selectLatestAdded
+  expect "Default color of XLink", vym.getXLinkColor, "#ff0000"
+  expect "Default width of XLink", vym.getXLinkWidth, 2
+  expect "Default style of XLink", vym.getXLinkPenStyle, "Qt::DashDotLine"
+  expect "Default style of XLink begin", vym.getXLinkStyleBegin, "HeadFull"
+  expect "Default style of XLink end",   vym.getXLinkStyleEnd, "HeadFull"
+
+  vym.setXLinkWidth(3)
+  expect "New width of XLink", vym.getXLinkWidth, 3
+  vym.undo
+  expect "Undo width of XLink", vym.getXLinkWidth, 2
+
+  vym.setXLinkColor("#00ff00")
+  expect "New color of XLink", vym.getXLinkColor, "#00ff00"
+  vym.undo
+  expect "Undo color of XLink", vym.getXLinkColor, "#ff0000"
+
+  vym.setXLinkLineStyle("Qt::SolidLine")
+  expect "New style of XLink", vym.getXLinkPenStyle, "Qt::SolidLine"
+  vym.undo
+  expect "Undo style of XLink", vym.getXLinkPenStyle, "Qt::DashDotLine"
+
+  vym.setXLinkStyleBegin("None")
+  expect "New style of XLink begin", vym.getXLinkStyleBegin, "None"
+  vym.undo
+  expect "Undo style of XLink begin", vym.getXLinkStyleBegin, "HeadFull"
+
+  vym.setXLinkStyleEnd("None")
+  expect "New style of XLink end", vym.getXLinkStyleEnd, "None"
+  vym.undo
+  expect "Undo style of XLink end", vym.getXLinkStyleEnd, "HeadFull"
+
+  vym.delete
+end
+
+#######################
+def test_tasks (vym)
+  heading "Tasks:"
+  init_map
+  vym.select @main_a
+  expect "Branch has no task before test", vym.hasTask, false
+  vym.toggleTask
+  expect "Toggle task", vym.hasTask, true
+  expect "Setting sleep days to 10", vym.setTaskSleep(10), true
+  expect "Task sleep when setting to integer", vym.getTaskSleepDays, 10
+
+  date_today = DateTime.now
+  date_later = date_today + 123
+  date_s = date_later.strftime("%Y-%m-%d") 
+  vym.setTaskSleep(date_s)
+  expect "Task sleep when setting to ISO date (#{date_s})", vym.getTaskSleepDays, 123
+end
+
+######################
+def test_notes (vym)
+  heading "Notes:"
+
+  # Plaintext notes basic actions 
+  init_map
+  vym.select @main_a
+  note_plain = "vymnote plaintext"
+  vym.setNotePlainText(note_plain)
+  expect "Set note to \"#{note_plain}\". Still plaintext?", vym.hasRichTextNote, false
+  vym.select @center_0
+  vym.select @main_a
+  expect "After reselect, is note plaintext?", vym.hasRichTextNote, false
+
+  note_plain = "<b>plaintext, not bold!</b>"
+  vym.setNotePlainText(note_plain)
+  expect "Set note to plaintext containing html tags. Still plaintext", vym.hasRichTextNote, false
+  note_new = vym.getNotePlainText
+  vym.select @center_0
+  vym.select @main_a
+  expect "After reselect, is note text unchanged?", vym.getNotePlainText, note_new
+  expect "After reselect, is note plaintext?", vym.hasRichTextNote, false
+
+  # Plaintext notes copy & paste
+  vym.copy
+  vym.paste
+  vym.selectLastBranch
+  s=vym.getSelectString
+  expect "After copy& paste: New note unchanged?", vym.getNotePlainText, note_plain
+  expect "After copy& paste: New note Still plaintext?", vym.hasRichTextNote, false
+  vym.delete
+
+  # Plaintext notes undo & redo
+  vym.select @main_a
+  vym.setNotePlainText('Foobar')
+  vym.undo
+  expect "Undo after setNotePlainText restores previous note", vym.getNotePlainText, note_plain
+  vym.redo
+  vym.select @main_a
+  expect "Redo restores previous note", vym.getNotePlainText, 'Foobar'
+
+  # Plaintext notes load & save
+  note_org = IO.read('test/note-plain.txt')
+  vym.loadNote("test/note-plain.txt") 
+  expect "Load plain text note from file. Still plaintext?", vym.hasRichTextNote, false
+  expect "Note contains 'not bold'", vym.getNotePlainText.include?("not bold"), true
+  filepath = "#{@testdir}/save-note.txt"
+  vym.saveNote(filepath)
+  expect "Save note to file. Check if it contains 'textMode=\"plainText\"'", IO.read(filepath).include?("textMode=\"plainText\""), true
+  expect "Save note to file. Check if it contains 'not bold'", IO.read(filepath).include?("not bold"), true
+  expect "Save note to file. Check if it contains '<b>' element", IO.read(filepath).include?("<b>"), true
+  expect "Save note to file. Check if it contains '<![CDATA['", IO.read(filepath).include?("<![CDATA["), true
+  
+  # Delete note
+  vym.setNotePlainText("")
+  expect "setNotePlainText(\"\") deletes note", vym.hasNote, false
+  
+  # RichText basic actions
+  init_map
+  vym.select @main_a
+  rt_note = '<vymnote  textMode="richText"><![CDATA[<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:\'Arial\'; font-size:12pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:\'DejaVu Sans Mono\'; color:#000000;">Rich Text note with <b>not bold text</b></span></p></body></html>]]></vymnote>'
+  vym.parseVymText(rt_note)
+  expect "parseVymText of richText note produces note", vym.hasNote, true
+  expect "parseVymText of richText note produces richText note", vym.hasRichTextNote, true
+  vym.select @center_0
+  vym.select @main_a
+  expect "After reselect, is note RichText?", vym.hasRichTextNote, true
+
+
+  # RichText notes copy & paste
+  rt_note = vym.getNoteXML  
+  vym.copy
+  vym.paste
+  vym.selectLastBranch
+  s=vym.getSelectString
+  expect "After copy& paste: New note Still RichText?", vym.hasRichTextNote, true
+  expect "After copy& paste: New note unchanged?", vym.getNoteXML, rt_note
+  vym.delete
+
+  # RichText notes undo & redo
+  vym.select @main_a
+  vym.setNotePlainText('Foobar')
+  vym.undo
+  expect "Undo after setNotePlainText restores RichText note", vym.getNoteXML, rt_note
+  vym.redo
+  vym.select @main_a
+  expect "Redo restores previous plaintext note", vym.getNotePlainText, 'Foobar'
+
+  # RichText notes load & save
+  vym.loadNote("test/note.html") 
+  expect "Load HTML note from file and try to detect textMode. Is RichText?", vym.hasRichTextNote, true
+  filepath = "#{@testdir}/save-note.txt"
+  vym.saveNote(filepath)
+  expect "Save note to file. Check if it contains 'textMode=\"richText\"'", IO.read(filepath).include?("textMode=\"richText\""), true
+  expect "Save note to file. Check if it contains 'bold'", IO.read(filepath).include?("bold"), true
+  expect "Save note to file. Check if it contains '<b>' element", IO.read(filepath).include?("<b>"), true
+  expect "Save note to file. Check if it contains '<![CDATA['", IO.read(filepath).include?("<![CDATA["), true
+  
+  # Delete note
+  vym.setNotePlainText("")
+  expect "setNotePlainText(\"\") deletes note", vym.hasNote, false
+
+  # Compatibility with version < 2.5.0  # FIXME missing
+end
+
+def test_headings (vym)
+  heading "Headings:"
+  # FIXME same checks like for notes above for headings
+end
+  
+######################
+def test_bugfixes (vym)
+  heading "Bugfixes:"
+  init_map
+  vym.select @main_b
+  expect "Mapcenter of #{@center_1} has no frame", vym.getFrameType, "NoFrame"
+end
+
+#######################
+test_basics(vym)
+test_export(vym)
+test_extrainfo(vym)
+test_adding_branches(vym)
+test_adding_maps(vym)
+test_scrolling(vym)
+test_moving_parts(vym)
+test_modify_branches(vym)
+test_flags(vym)
+test_delete_parts(vym)
+test_copy_paste(vym)
+test_references(vym)
+test_history(vym)
+test_xlinks(vym)
+test_tasks(vym)
+test_notes(vym)
+test_headings(vym)
+test_bugfixes(vym)
+summary
+
+=begin
+# Untested commands:
+#
+addSlide
+centerOnID
+colorBranch
+colorSubtree
+cycleTask
+delete (image)
+deleteSlide
+importDir
+loadImage
+loadNote
+move
+moveRel
+moveSlideDown
+moveSlideUp
+note2URLs
+    paste
+redo  
+relinkTo (for images)
+saveImage
+saveNote
+selectID
+selectLastImage
+selectLatestAdd
+setFrameBorderWidth
+setFrameBrushColor
+setFrameIncludeChildren
+setFramePadding
+setFramePenColor
+setFrameType
+    setHeading
+setHideExport
+setHideLinksUnselected
+setIncludeImagesHorizontally
+setIncludeImagesVertically
+setMapAnimCurve
+setMapAnimDuration
+setMapBackgroundColor
+setMapDefLinkColor
+setMapLinkStyle
+setMapRotation
+setMapZoom
+setNote
+setScale
+setSelectionColor
+setTaskSleep
+    setURL
+    setVymLink
+  so far:
+sortChildren
+toggleFrameIncludeChildren
+toggleTarget
+toggleTask
+=end
diff --git a/tex/commands.tex b/tex/commands.tex
new file mode 100644 (file)
index 0000000..eb38418
--- /dev/null
@@ -0,0 +1,817 @@
+\item addBranch\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+   Parameter: &  0:\\
+        Comment: & Index of new branch\\
+           Type: & Int\\
+       Optional: &  yes\\
+\end{tabular}
+
+\item addBranchBefore\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+\end{tabular}
+
+\item addMapCenter\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Position x\\
+           Type: & Double\\
+       Optional: &  No\\
+   Parameter: &  1:\\
+        Comment: & Position y\\
+           Type: & Double\\
+       Optional: &  No\\
+\end{tabular}
+
+\item addMapInsert\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Filename of map to load\\
+           Type: & String\\
+       Optional: &  No\\
+   Parameter: &  1:\\
+        Comment: & Index where map is inserted\\
+           Type: & Int\\
+       Optional: &  yes\\
+   Parameter: &  2:\\
+        Comment: & Content filter\\
+           Type: & Int\\
+       Optional: &  yes\\
+\end{tabular}
+
+\item addMapReplace\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+   Parameter: &  0:\\
+        Comment: & Filename of map to load\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item addSlide\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+\end{tabular}
+
+\item addXLink\\
+\begin{tabular}{rl}
+  Selection: & BranchLike\\
+   Parameter: &  0:\\
+        Comment: & Begin of XLink\\
+           Type: & String\\
+       Optional: &  No\\
+   Parameter: &  1:\\
+        Comment: & End of XLink\\
+           Type: & String\\
+       Optional: &  No\\
+   Parameter: &  2:\\
+        Comment: & Width of XLink\\
+           Type: & Int\\
+       Optional: &  yes\\
+   Parameter: &  3:\\
+        Comment: & Color of XLink\\
+           Type: & Color\\
+       Optional: &  yes\\
+   Parameter: &  4:\\
+        Comment: & Penstyle of XLink\\
+           Type: & String\\
+       Optional: &  yes\\
+\end{tabular}
+
+\item branchCount\\
+\begin{tabular}{rl}
+  Selection: & BranchLike\\
+\end{tabular}
+
+\item centerOnID\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & UUID of object to center on\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item clearFlags\\
+\begin{tabular}{rl}
+  Selection: & BranchLike\\
+\end{tabular}
+
+\item colorBranch\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+   Parameter: &  0:\\
+        Comment: & New color\\
+           Type: & Color\\
+       Optional: &  yes\\
+\end{tabular}
+
+\item colorSubtree\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+   Parameter: &  0:\\
+        Comment: & New color\\
+           Type: & Color\\
+       Optional: &  yes\\
+\end{tabular}
+
+\item copy\\
+\begin{tabular}{rl}
+  Selection: & BranchOrImage\\
+\end{tabular}
+
+\item cut\\
+\begin{tabular}{rl}
+  Selection: & BranchOrImage\\
+\end{tabular}
+
+\item cycleTask\\
+\begin{tabular}{rl}
+  Selection: & BranchOrImage\\
+   Parameter: &  0:\\
+        Comment: & True, if cycling in reverse order\\
+           Type: & Bool\\
+       Optional: &  yes\\
+\end{tabular}
+
+\item delete\\
+\begin{tabular}{rl}
+  Selection: & TreeItem\\
+\end{tabular}
+
+\item deleteChildren\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+\end{tabular}
+
+\item deleteKeepChildren\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+\end{tabular}
+
+\item deleteSlide\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Index of slide to delete\\
+           Type: & Int\\
+       Optional: &  No\\
+\end{tabular}
+
+\item exportAO\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Filename for export\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item exportASCII\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Filename for export\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item exportHTML\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Filename for export\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item exportImage\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Filename for export\\
+           Type: & String\\
+       Optional: &  No\\
+   Parameter: &  1:\\
+        Comment: & Image format\\
+           Type: & String\\
+       Optional: &  yes\\
+\end{tabular}
+
+\item exportLaTeX\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Filename for export\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item exportImpress\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Filename for export\\
+           Type: & String\\
+       Optional: &  No\\
+   Parameter: &  1:\\
+        Comment: & Configuration file for export\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item exportPDF\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Filename for export\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item exportPDF\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Filename for export\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item exportSVG\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Filename for export\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item exportXML\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Filename for export\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item getDestPath\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+\end{tabular}
+
+\item getFileDir\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+\end{tabular}
+
+\item getFrameType\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+\end{tabular}
+
+\item getHeading\\
+\begin{tabular}{rl}
+  Selection: & TreeItem\\
+\end{tabular}
+
+\item getSelectString\\
+\begin{tabular}{rl}
+  Selection: & TreeItem\\
+\end{tabular}
+
+\item getURL\\
+\begin{tabular}{rl}
+  Selection: & TreeItem\\
+\end{tabular}
+
+\item getVymLink\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+\end{tabular}
+
+\item getXLinkColor\\
+\begin{tabular}{rl}
+  Selection: & XLinkItem\\
+\end{tabular}
+
+\item getXLinkWidth\\
+\begin{tabular}{rl}
+  Selection: & XLinkItem\\
+\end{tabular}
+
+\item getXLinkPenStyle\\
+\begin{tabular}{rl}
+  Selection: & XLinkItem\\
+\end{tabular}
+
+\item hasActiveFlag\\
+\begin{tabular}{rl}
+  Selection: & TreeItem\\
+   Parameter: &  0:\\
+        Comment: & Name of flag\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item importDir\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+   Parameter: &  0:\\
+        Comment: & Directory name to import\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item isScrolled\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+\end{tabular}
+
+\item loadImage\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+   Parameter: &  0:\\
+        Comment: & Filename of image\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item loadNote\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+   Parameter: &  0:\\
+        Comment: & Filename of note\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item moveDown\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+\end{tabular}
+
+\item moveUp\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+\end{tabular}
+
+\item moveSlideDown\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+\end{tabular}
+
+\item moveSlideUp\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+\end{tabular}
+
+\item move\\
+\begin{tabular}{rl}
+  Selection: & BranchOrImage\\
+   Parameter: &  0:\\
+        Comment: & Position x\\
+           Type: & Double\\
+       Optional: &  No\\
+   Parameter: &  1:\\
+        Comment: & Position y\\
+           Type: & Double\\
+       Optional: &  No\\
+\end{tabular}
+
+\item moveRel\\
+\begin{tabular}{rl}
+  Selection: & BranchOrImage\\
+   Parameter: &  0:\\
+        Comment: & Position x\\
+           Type: & Double\\
+       Optional: &  No\\
+   Parameter: &  1:\\
+        Comment: & Position y\\
+           Type: & Double\\
+       Optional: &  No\\
+\end{tabular}
+
+\item nop\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+\end{tabular}
+
+\item note2URLs\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+\end{tabular}
+
+\item paste\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+\end{tabular}
+
+\item redo\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+\end{tabular}
+
+\item relinkTo\\
+\begin{tabular}{rl}
+  Selection: & TreeItem\\
+   Parameter: &  0:\\
+        Comment: & Selection string of parent\\
+           Type: & String\\
+       Optional: &  No\\
+   Parameter: &  1:\\
+        Comment: & Index position\\
+           Type: & Int\\
+       Optional: &  No\\
+   Parameter: &  2:\\
+        Comment: & Position x\\
+           Type: & Double\\
+       Optional: &  yes\\
+   Parameter: &  3:\\
+        Comment: & Position y\\
+           Type: & Double\\
+       Optional: &  yes\\
+\end{tabular}
+
+\item saveImage\\
+\begin{tabular}{rl}
+  Selection: & Image\\
+   Parameter: &  0:\\
+        Comment: & Filename of image to save\\
+           Type: & String\\
+       Optional: &  No\\
+   Parameter: &  1:\\
+        Comment: & Format of image to save\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item saveNote\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+   Parameter: &  0:\\
+        Comment: & Filename of note to save\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item scroll\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+\end{tabular}
+
+\item select\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Selection string\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item selectID\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Unique ID\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item selectLastBranch\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+\end{tabular}
+
+\item selectLastImage\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+\end{tabular}
+
+\item selectLatestAdded\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+\end{tabular}
+
+\item setFlag\\
+\begin{tabular}{rl}
+  Selection: & TreeItem\\
+   Parameter: &  0:\\
+        Comment: & Name of flag\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setTaskSleep\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+   Parameter: &  0:\\
+        Comment: & Days to sleep\\
+           Type: & Int\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setFrameIncludeChildren\\
+\begin{tabular}{rl}
+  Selection: & BranchOrImage\\
+   Parameter: &  0:\\
+        Comment: & Include or don't include children in frame\\
+           Type: & Bool\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setFrameType\\
+\begin{tabular}{rl}
+  Selection: & BranchOrImage\\
+   Parameter: &  0:\\
+        Comment: & Type of frame\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setFramePenColor\\
+\begin{tabular}{rl}
+  Selection: & BranchOrImage\\
+   Parameter: &  0:\\
+        Comment: & Color of frame border line\\
+           Type: & Color\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setFrameBrushColor\\
+\begin{tabular}{rl}
+  Selection: & BranchOrImage\\
+   Parameter: &  0:\\
+        Comment: & Color of frame background\\
+           Type: & Color\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setFramePadding\\
+\begin{tabular}{rl}
+  Selection: & BranchOrImage\\
+   Parameter: &  0:\\
+        Comment: & Padding around frame\\
+           Type: & Int\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setFrameBorderWidth\\
+\begin{tabular}{rl}
+  Selection: & BranchOrImage\\
+   Parameter: &  0:\\
+        Comment: & Width of frame borderline\\
+           Type: & Int\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setHeading\\
+\begin{tabular}{rl}
+  Selection: & TreeItem\\
+   Parameter: &  0:\\
+        Comment: & New heading\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setHideExport\\
+\begin{tabular}{rl}
+  Selection: & BranchOrImage\\
+   Parameter: &  0:\\
+        Comment: & Set if item should be visible in export\\
+           Type: & Bool\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setIncludeImagesHorizontally\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+   Parameter: &  0:\\
+        Comment: & Set if images should be included horizontally in parent branch\\
+           Type: & Bool\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setIncludeImagesVertically\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+   Parameter: &  0:\\
+        Comment: & Set if images should be included vertically in parent branch\\
+           Type: & Bool\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setHideLinksUnselected\\
+\begin{tabular}{rl}
+  Selection: & BranchOrImage\\
+   Parameter: &  0:\\
+        Comment: & Set if links of items should be visible for unselected items\\
+           Type: & Bool\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setMapAnimCurve\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & EasingCurve used in animation in MapEditor\\
+           Type: & Int\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setMapAuthor\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & \\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setMapAnimDuration\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Duration of animation in MapEditor in milliseconds\\
+           Type: & Int\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setMapComment\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & \\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setMapBackgroundColor\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Color of map background\\
+           Type: & Color\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setMapDefLinkColor\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Default color of links\\
+           Type: & Color\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setMapLinkStyle\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Link style in map\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setMapRotation\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Rotation of map\\
+           Type: & Double\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setMapZoom\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Zoomfactor of map\\
+           Type: & Double\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setNote\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+   Parameter: &  0:\\
+        Comment: & Note of branch\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setScale\\
+\begin{tabular}{rl}
+  Selection: & Image\\
+   Parameter: &  0:\\
+        Comment: & Scale image x\\
+           Type: & Double\\
+       Optional: &  No\\
+   Parameter: &  1:\\
+        Comment: & Scale image y\\
+           Type: & Double\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setSelectionColor\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Color of selection box\\
+           Type: & Color\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setURL\\
+\begin{tabular}{rl}
+  Selection: & TreeItem\\
+   Parameter: &  0:\\
+        Comment: & URL of TreeItem\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item setVymLink\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+   Parameter: &  0:\\
+        Comment: & Vymlink of branch\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item sleep\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+   Parameter: &  0:\\
+        Comment: & Sleep (seconds)\\
+           Type: & Int\\
+       Optional: &  No\\
+\end{tabular}
+
+\item sortChildren\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+   Parameter: &  0:\\
+        Comment: & Sort children of branch in revers order if set\\
+           Type: & Bool\\
+       Optional: &  yes\\
+\end{tabular}
+
+\item toggleFlag\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+   Parameter: &  0:\\
+        Comment: & Name of flag to toggle\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
+\item toggleFrameIncludeChildren\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+\end{tabular}
+
+\item toggleScroll\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+\end{tabular}
+
+\item toggleTarget\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+\end{tabular}
+
+\item toggleTask\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+\end{tabular}
+
+\item undo\\
+\begin{tabular}{rl}
+  Selection: & Any\\
+\end{tabular}
+
+\item unscroll\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+\end{tabular}
+
+\item unscrollChildren\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+\end{tabular}
+
+\item unsetFlag\\
+\begin{tabular}{rl}
+  Selection: & Branch\\
+   Parameter: &  0:\\
+        Comment: & Name of flag to unset\\
+           Type: & String\\
+       Optional: &  No\\
+\end{tabular}
+
diff --git a/tex/examples/branches.vym b/tex/examples/branches.vym
new file mode 100644 (file)
index 0000000..4e9361f
Binary files /dev/null and b/tex/examples/branches.vym differ
diff --git a/tex/examples/macros.vym b/tex/examples/macros.vym
new file mode 100644 (file)
index 0000000..0073d8d
Binary files /dev/null and b/tex/examples/macros.vym differ
diff --git a/tex/examples/windows-main.vym b/tex/examples/windows-main.vym
new file mode 100644 (file)
index 0000000..57a6a60
Binary files /dev/null and b/tex/examples/windows-main.vym differ
diff --git a/tex/examples/windows.vym b/tex/examples/windows.vym
new file mode 100644 (file)
index 0000000..3f26c42
Binary files /dev/null and b/tex/examples/windows.vym differ
diff --git a/tex/examples/xlinks.vym b/tex/examples/xlinks.vym
new file mode 100644 (file)
index 0000000..6c5a909
Binary files /dev/null and b/tex/examples/xlinks.vym differ
diff --git a/tex/images/branches-flags.png b/tex/images/branches-flags.png
new file mode 100644 (file)
index 0000000..afde328
Binary files /dev/null and b/tex/images/branches-flags.png differ
diff --git a/tex/images/branches-flags_es.png b/tex/images/branches-flags_es.png
new file mode 100644 (file)
index 0000000..a2bc876
Binary files /dev/null and b/tex/images/branches-flags_es.png differ
diff --git a/tex/images/branches-flags_fr.png b/tex/images/branches-flags_fr.png
new file mode 100644 (file)
index 0000000..655b830
Binary files /dev/null and b/tex/images/branches-flags_fr.png differ
diff --git a/tex/images/branches.png b/tex/images/branches.png
new file mode 100644 (file)
index 0000000..9b7a007
Binary files /dev/null and b/tex/images/branches.png differ
diff --git a/tex/images/branches_es.png b/tex/images/branches_es.png
new file mode 100644 (file)
index 0000000..88c2077
Binary files /dev/null and b/tex/images/branches_es.png differ
diff --git a/tex/images/branches_fr.png b/tex/images/branches_fr.png
new file mode 100644 (file)
index 0000000..b1e8f34
Binary files /dev/null and b/tex/images/branches_fr.png differ
diff --git a/tex/images/color-buttons.png b/tex/images/color-buttons.png
new file mode 100644 (file)
index 0000000..229421b
Binary files /dev/null and b/tex/images/color-buttons.png differ
diff --git a/tex/images/default-flags.png b/tex/images/default-flags.png
new file mode 100644 (file)
index 0000000..3c3d164
Binary files /dev/null and b/tex/images/default-flags.png differ
diff --git a/tex/images/example1.png b/tex/images/example1.png
new file mode 100644 (file)
index 0000000..dfe131f
Binary files /dev/null and b/tex/images/example1.png differ
diff --git a/tex/images/example1_es.png b/tex/images/example1_es.png
new file mode 100644 (file)
index 0000000..8ed6709
Binary files /dev/null and b/tex/images/example1_es.png differ
diff --git a/tex/images/example1_fr.png b/tex/images/example1_fr.png
new file mode 100644 (file)
index 0000000..e413b1a
Binary files /dev/null and b/tex/images/example1_fr.png differ
diff --git a/tex/images/export-oo.png b/tex/images/export-oo.png
new file mode 100644 (file)
index 0000000..8b58b7b
Binary files /dev/null and b/tex/images/export-oo.png differ
diff --git a/tex/images/export-oo_es.png b/tex/images/export-oo_es.png
new file mode 100644 (file)
index 0000000..96f272e
Binary files /dev/null and b/tex/images/export-oo_es.png differ
diff --git a/tex/images/find-window.png b/tex/images/find-window.png
new file mode 100644 (file)
index 0000000..403240e
Binary files /dev/null and b/tex/images/find-window.png differ
diff --git a/tex/images/find-window_es.png b/tex/images/find-window_es.png
new file mode 100644 (file)
index 0000000..8e0c9ef
Binary files /dev/null and b/tex/images/find-window_es.png differ
diff --git a/tex/images/flag-hideexport.png b/tex/images/flag-hideexport.png
new file mode 100644 (file)
index 0000000..8ebbb69
Binary files /dev/null and b/tex/images/flag-hideexport.png differ
diff --git a/tex/images/flag-target.png b/tex/images/flag-target.png
new file mode 100644 (file)
index 0000000..7ecbe22
Binary files /dev/null and b/tex/images/flag-target.png differ
diff --git a/tex/images/flag-url-bugzilla-novell.png b/tex/images/flag-url-bugzilla-novell.png
new file mode 100644 (file)
index 0000000..e5bc0b9
Binary files /dev/null and b/tex/images/flag-url-bugzilla-novell.png differ
diff --git a/tex/images/flag-url.png b/tex/images/flag-url.png
new file mode 100644 (file)
index 0000000..75ca5ac
Binary files /dev/null and b/tex/images/flag-url.png differ
diff --git a/tex/images/flag-urlnew.png b/tex/images/flag-urlnew.png
new file mode 100644 (file)
index 0000000..23d822f
Binary files /dev/null and b/tex/images/flag-urlnew.png differ
diff --git a/tex/images/flag-vymlink.png b/tex/images/flag-vymlink.png
new file mode 100644 (file)
index 0000000..5acc92b
Binary files /dev/null and b/tex/images/flag-vymlink.png differ
diff --git a/tex/images/flag-vymlinknew.png b/tex/images/flag-vymlinknew.png
new file mode 100644 (file)
index 0000000..aa56732
Binary files /dev/null and b/tex/images/flag-vymlinknew.png differ
diff --git a/tex/images/formatfixedfont.png b/tex/images/formatfixedfont.png
new file mode 100644 (file)
index 0000000..4e450fa
Binary files /dev/null and b/tex/images/formatfixedfont.png differ
diff --git a/tex/images/frames.png b/tex/images/frames.png
new file mode 100644 (file)
index 0000000..d3b1db5
Binary files /dev/null and b/tex/images/frames.png differ
diff --git a/tex/images/headingeditor.png b/tex/images/headingeditor.png
new file mode 100644 (file)
index 0000000..0b962a4
Binary files /dev/null and b/tex/images/headingeditor.png differ
diff --git a/tex/images/hiddenlink.png b/tex/images/hiddenlink.png
new file mode 100644 (file)
index 0000000..dd0d502
Binary files /dev/null and b/tex/images/hiddenlink.png differ
diff --git a/tex/images/hiddenlink_es.png b/tex/images/hiddenlink_es.png
new file mode 100644 (file)
index 0000000..59db18a
Binary files /dev/null and b/tex/images/hiddenlink_es.png differ
diff --git a/tex/images/hiddenlink_fr.png b/tex/images/hiddenlink_fr.png
new file mode 100644 (file)
index 0000000..8b5c69c
Binary files /dev/null and b/tex/images/hiddenlink_fr.png differ
diff --git a/tex/images/historywindow.png b/tex/images/historywindow.png
new file mode 100644 (file)
index 0000000..19d629e
Binary files /dev/null and b/tex/images/historywindow.png differ
diff --git a/tex/images/includeImages.png b/tex/images/includeImages.png
new file mode 100644 (file)
index 0000000..eef7e5c
Binary files /dev/null and b/tex/images/includeImages.png differ
diff --git a/tex/images/includeImages_es.png b/tex/images/includeImages_es.png
new file mode 100644 (file)
index 0000000..3ad7006
Binary files /dev/null and b/tex/images/includeImages_es.png differ
diff --git a/tex/images/includeImages_fr.png b/tex/images/includeImages_fr.png
new file mode 100644 (file)
index 0000000..2f854cd
Binary files /dev/null and b/tex/images/includeImages_fr.png differ
diff --git a/tex/images/macros.png b/tex/images/macros.png
new file mode 100644 (file)
index 0000000..7a7692b
Binary files /dev/null and b/tex/images/macros.png differ
diff --git a/tex/images/macros_fr.png b/tex/images/macros_fr.png
new file mode 100644 (file)
index 0000000..037a5ae
Binary files /dev/null and b/tex/images/macros_fr.png differ
diff --git a/tex/images/mainwindow.png b/tex/images/mainwindow.png
new file mode 100644 (file)
index 0000000..8b184d7
Binary files /dev/null and b/tex/images/mainwindow.png differ
diff --git a/tex/images/modmodes.png b/tex/images/modmodes.png
new file mode 100644 (file)
index 0000000..56441e1
Binary files /dev/null and b/tex/images/modmodes.png differ
diff --git a/tex/images/move-buttons.png b/tex/images/move-buttons.png
new file mode 100644 (file)
index 0000000..7bf8b8c
Binary files /dev/null and b/tex/images/move-buttons.png differ
diff --git a/tex/images/newmapcenter.png b/tex/images/newmapcenter.png
new file mode 100644 (file)
index 0000000..27a017b
Binary files /dev/null and b/tex/images/newmapcenter.png differ
diff --git a/tex/images/noteeditor.png b/tex/images/noteeditor.png
new file mode 100644 (file)
index 0000000..a1ceef5
Binary files /dev/null and b/tex/images/noteeditor.png differ
diff --git a/tex/images/noteeditor_es.png b/tex/images/noteeditor_es.png
new file mode 100644 (file)
index 0000000..2d192a6
Binary files /dev/null and b/tex/images/noteeditor_es.png differ
diff --git a/tex/images/noteeditor_fr.png b/tex/images/noteeditor_fr.png
new file mode 100644 (file)
index 0000000..94aba4d
Binary files /dev/null and b/tex/images/noteeditor_fr.png differ
diff --git a/tex/images/propwindow.png b/tex/images/propwindow.png
new file mode 100644 (file)
index 0000000..64d4591
Binary files /dev/null and b/tex/images/propwindow.png differ
diff --git a/tex/images/scripteditor.png b/tex/images/scripteditor.png
new file mode 100644 (file)
index 0000000..62a66e0
Binary files /dev/null and b/tex/images/scripteditor.png differ
diff --git a/tex/images/slideeditor.png b/tex/images/slideeditor.png
new file mode 100644 (file)
index 0000000..c1b2314
Binary files /dev/null and b/tex/images/slideeditor.png differ
diff --git a/tex/images/taskeditor.png b/tex/images/taskeditor.png
new file mode 100644 (file)
index 0000000..1a6e658
Binary files /dev/null and b/tex/images/taskeditor.png differ
diff --git a/tex/images/vym-logo-new.png b/tex/images/vym-logo-new.png
new file mode 100644 (file)
index 0000000..50a2cd3
Binary files /dev/null and b/tex/images/vym-logo-new.png differ
diff --git a/tex/images/windows-main.png b/tex/images/windows-main.png
new file mode 100644 (file)
index 0000000..3ecdf3a
Binary files /dev/null and b/tex/images/windows-main.png differ
diff --git a/tex/images/windows.png b/tex/images/windows.png
new file mode 100644 (file)
index 0000000..1b04a98
Binary files /dev/null and b/tex/images/windows.png differ
diff --git a/tex/images/windows_es.png b/tex/images/windows_es.png
new file mode 100644 (file)
index 0000000..1a881b2
Binary files /dev/null and b/tex/images/windows_es.png differ
diff --git a/tex/images/windows_fr.png b/tex/images/windows_fr.png
new file mode 100644 (file)
index 0000000..ef30a61
Binary files /dev/null and b/tex/images/windows_fr.png differ
diff --git a/tex/images/xlink-control.png b/tex/images/xlink-control.png
new file mode 100644 (file)
index 0000000..feb54ac
Binary files /dev/null and b/tex/images/xlink-control.png differ
diff --git a/tex/images/xlink-property.png b/tex/images/xlink-property.png
new file mode 100644 (file)
index 0000000..e1443bc
Binary files /dev/null and b/tex/images/xlink-property.png differ
diff --git a/tex/images/xlink.png b/tex/images/xlink.png
new file mode 100644 (file)
index 0000000..e9dd693
Binary files /dev/null and b/tex/images/xlink.png differ
diff --git a/tex/images/xlink_es.png b/tex/images/xlink_es.png
new file mode 100644 (file)
index 0000000..cfa9a72
Binary files /dev/null and b/tex/images/xlink_es.png differ
diff --git a/tex/images/xlink_fr.png b/tex/images/xlink_fr.png
new file mode 100644 (file)
index 0000000..231f318
Binary files /dev/null and b/tex/images/xlink_fr.png differ
diff --git a/tex/images/zoom-buttons.png b/tex/images/zoom-buttons.png
new file mode 100644 (file)
index 0000000..aa813ef
Binary files /dev/null and b/tex/images/zoom-buttons.png differ
diff --git a/tex/vym.tex b/tex/vym.tex
new file mode 100644 (file)
index 0000000..bdf4eb3
--- /dev/null
@@ -0,0 +1,1937 @@
+\documentclass[12pt,a4paper]{article}
+\usepackage[utf8]{inputenc}
+\usepackage{verbatim}
+\usepackage{hyperref}
+\usepackage{graphicx}
+
+\setlength{\headheight}{0cm}
+\setlength{\headsep}{0cm}
+\setlength{\topskip}{0cm}
+\setlength{\topmargin}{-0.5cm}
+
+\setlength{\parskip}{1.5ex}
+\setlength{\parindent}{0cm}
+\setlength{\oddsidemargin}{0cm}
+\setlength{\textwidth}{16cm}
+\setlength{\textheight}{27cm}
+
+\newlength{\maximgwidth}
+\setlength{\maximgwidth}{14cm}
+\newcommand{\maximage}[1]{  
+    \begin{center}
+        \includegraphics[width=\maximgwidth]{#1} 
+    \end{center}
+}
+\newcommand{\hint}[1]{
+    \begin{center} 
+        \begin{tabular}{|rp{12cm}|} \hline
+            {\bf Hint}:& #1\\   \hline
+        \end{tabular}
+            \marginpar{\Huge !} 
+    \end{center} 
+}
+
+\newcommand{\vym}{{\sc vym }}
+\newcommand{\ra}{$\longrightarrow$}
+\newcommand{\la}{$\longleftarrow$}
+\newcommand{\ua}{$\uparrow$}
+\newcommand{\da}{$\downarrow$}
+\newcommand{\key}[1]{[#1]}
+
+\newenvironment{code}[1] { \verbatim #1}{\endverbatim  }
+
+\hypersetup{bookmarks, bookmarksopen,
+  pdftitle={VYM - a tool for visual thinking },
+  pdfauthor={Uwe Drechsel},    
+  pdfsubject={map},
+  pdfkeywords={map, tool},
+  pdfpagemode={UseOutlines},                                 
+  bookmarksopenlevel={1},   
+  colorlinks={true},     
+  linkcolor={blue},
+  urlcolor={green},
+  citecolor={red}} 
+
+
+\begin{document}
+\title{
+    \includegraphics[width=8cm]{images/vym-logo-new.png} \\ 
+    VYM  -- View Your Mind \\ 
+    {\small Version 2.6.3} \\ 
+    {\b Usermanual }
+\author{\textcopyright Uwe Drechsel  }
+}
+
+
+\maketitle
+
+\newpage
+
+\tableofcontents
+
+\newpage
+
+\section*{Credits}
+Many people have sent me their feedback and ideas, and all of that has
+helped a lot to make \vym better. Thanks to all of you!
+
+For this manual I would like to send some special thanks to
+
+\begin{itemize}
+    \item {\em Peter Adamson} for lots of feedback and proofreading of my
+          far from perfect english
+    \item The team of {\em AClibre (Academia y Conocimiento Libre)}
+          in Colombia for their translation of
+          the manual to spanish:
+          \begin{center}
+            \begin{tabular}{|p{7cm}|p{5.5cm}|} \hline
+                Encargado & Actividad \\ \hline
+                \begin{itemize}
+                   \item Vanessa Carolina Guti\'errez Sanchez
+                   \item Erika Tatiana Luque Melo
+                   \item Jeffrey Steve Borb\'on Sanabria
+                   \item John Edisson Ortiz Rom\'an
+                \end{itemize} &
+                \begin{itemize}
+                    \item Traducci\'onl
+                    \item Revisi\'on y correcciones varias
+                    \item Estructuraci\'on y exporte
+                    \item Revisi\'on y correcciones varias
+                \end{itemize}     \\ \hline
+            \end{tabular}   
+        \end{center}
+\end{itemize}
+\newpage
+
+
+\section{Introduction}
+\subsection{What is a \vym map?}
+A \vym map (abbreviated below as {\em map}) is a tree-like structure:
+\maximage{images/example1.png}
+Such maps can be drawn by hand on a sheet of paper or flip chart and
+help to structure your thoughts. While a tree like structure like the
+illustration above can be drawn manually \vym offers much more features
+to work with such maps.  \vym is not just another drawing software
+application, but a tool to store and modify information in an intuitive
+way. For example you can reorder parts of the map by pressing a key or
+add various pieces of information like a complete email by a simple
+mouse click.
+
+Once you have finished collecting and organising your ideas, you can
+easily generate a variety of outputs including for example a
+presentation in Open~Office based on a {\em map}.
+
+\hint{You find the map shown above and others by clicking
+\begin{center}Help \ra Open vym examples\end{center} in the menu bar.}
+
+\subsection{Why should I use {\em maps}? Time, Space and your Brain.}
+\subsubsection*{Space}
+A {\em map} can concentrate very complex content in a small space such
+as a piece of paper. It helps to use both sides of your brain: the
+logical side and also your creative side (e.g. by using pictures,
+colours and keywords in a map, often called {\em anchors}).  It is a
+technique to help organize the way you think and stimulate your
+creativity: It can help you by developing, sorting and helping to
+memorise your ideas. 
+
+\subsubsection*{Time}
+Because you just use keywords and drawings, it is much faster than good
+old fashioned 'notes'. Your brain memorizes things by associating them
+with other things -- a {\em map} makes use of those connections and
+stimulates new associations. 
+
+
+\subsubsection*{Your Brain}
+In 1960 Prof. {\sc Roger Sperry} discovered that both hemispheres
+of the human brain undertake different tasks (of course both of them
+basically {\em can} do the same): 
+\begin{center}
+\begin{tabular}{|p{5.5cm}|p{5.5cm}|} \hline
+    Left side & Right side \\ \hline
+    \begin{itemize}
+       \item verbal speech and writing 
+       \item numbers
+       \item logical thinking
+       \item analysing and details
+       \item science
+       \item linear thinking
+       \item concept of time
+    \end{itemize} &
+    \begin{itemize}
+        \item body language
+        \item visual thinking, day dreams
+        \item intuition and emotion
+        \item overview of things
+        \item creativity
+        \item art, music, dancing
+        \item non-linear thinking, connecting things
+        \item spatial awareness
+    \end{itemize}     \\ \hline
+\end{tabular}   
+\end{center}
+In our science oriented western society we have learned to mainly rely
+on our left side of the brain, the "rational" one. In other cultures,
+such as the native americans and other "old" cultures, the right side is
+much more important. {\em Map} are just one way to stimulate the other
+side and make use of additional resources we all have.
+
+
+\subsection{Where could I use a {\em map}?}
+Here are some examples, how you can use those {\em maps}
+\begin{itemize}
+    \item to prepare articles, papers, books, talks, \ldots
+    \item to sort complex data
+    \item to memorize facts, peoples names, vocabulary, \ldots
+    \item to sort emails, files and bookmarks on your computer
+    \item to moderate conferences
+    \item to brainstorm solutions to problems
+    \item to record the tasks when planning a project
+\end{itemize}
+
+\subsection{What you shouldn't do with a {\em map}...}
+A {\em map} drawn by somebody shows the way that the author thinks.
+There is no question of right or wrong in the way it is drawn, so there
+is no way to criticise it. "It is, what it is" ({\sc F.~Lehmann}).The
+tool will be of considerable use to the author and only very limited use
+to anyone else. 
+
+However, when groups share in creating a {\em map} all of the group will
+benefit from its use. An example of such use is when a Tutor develops a
+{\em map} with a group of students during instruction. Another group use
+is when a Project leader gathers a group of specialists to help {\em
+map} the tasks that will be required to deliver a project.
+
+%\section{Tutorials}
+%TODO
+
+\subsection{Internet Ressources} 
+A good starting point to learn more about Mindmaps in general is Wikipedia:
+\begin{itemize}
+    \item English: 
+        \href{http://en.wikipedia.org/wiki/Mind_map}{http://en.wikipedia.org/wiki/Mind\_map}
+    \item German: 
+        \href{http://de.wikipedia.org/wiki/Mindmap}{http://de.wikipedia.org/wiki/Mindmap}
+\end{itemize}
+
+
+
+
+\section{The Concept of the \vym application}
+%FIXME-3 maybe add a general introduction here...
+\subsection{The Mainwindow and its satellites} \label{satellite}
+\vym comes with several windows, the central one is called {\em
+mainwindow}. It contains one or more
+tabs, each of these tabs has a {\em mapeditor} and optionionally a {\em
+tree editor}, representing a different view of the same data:
+\maximage{images/mainwindow.png}
+The (currently visible) main areas of the mainwindow are the {\em tree
+editor} to the left and the {\em mapeditor} to the right. Note that both
+editors represent the same data and share their selection: Both show the
+{\em heading} "Get valentine surprise".
+
+More windows, each having a special purpose, can be opened and arranged
+around or even in the mainwindow. These extra windows are called
+called {\em satellites}\footnote{
+    The advantage of having separate window instead of integrating them
+    in a combined workspace is flexibility in arranging the windows. For
+    example I usually have the {\em noteeditor} "behind" the {\em
+    mapeditor}. On Linux my windowmanager (KDE) allows me to enter text
+    into a small visible corner of the {\em noteeditor} without clicking
+    the mouse button to move focus to the window, so that it receives
+    input from keyboard. I just push the mouse around to set the
+    window focus, a concept which is useful also working with 
+    \href{http://www.gimp.org}{http://www.gimp.org}.
+}. 
+The next image below shows the {\em mainwindow}
+together with the {\em history window}. The mainwindow itself currently
+has three parts: {\em treeeditor}, {\em mapeditor} and at the bottom
+the {\em noteeditor}
+\maximage{images/windows.png}
+Most of the time you will work in the {\em mapeditor} by just adding new
+branches, moving around and reordering them. The various ways to do this
+will be explained in \ref{mapeditor}. You can store additional
+information e.g. the content of a email easily in a {\em branch}: Just
+type or copy\&paste it into the {\em noteeditor}. Working with notes is
+explained in \ref{noteeditor}
+
+Here is a list of the available satellite windows, the {\em dockable}
+feature is explained in next section \ref{dockable}:
+\begin{itemize}
+    \item 
+    Branch Property Window (see section \ref{propwindow})
+    \item 
+    \includegraphics[width=0.5cm]{../icons/find.png}
+    Find window to search for text (dockable)
+    \item 
+    \includegraphics[width=0.5cm]{../icons/headingeditor.png}
+    Heading editor (dockable, features are the same as in the
+    noteeditor, see section \ref {noteeditor})
+    \item 
+    \includegraphics[width=0.5cm]{../icons/history.png}
+    Historywindow (see section \ref{historywindow})
+    \item 
+    \includegraphics[width=0.5cm]{../flags/flag-note.png}
+    Noteeditor (dockable, see section \ref {noteeditor})
+    \item 
+    \includegraphics[width=0.5cm]{../icons/scripteditor.png}
+    Scripteditor (dockable, see section \ref {scripteditor})
+    \item 
+    \includegraphics[width=0.5cm]{../icons/slideeditor.png}
+    Slideeditor (dockable, see section \ref {slideeditor})
+    \item 
+    \includegraphics[width=0.5cm]{../icons/taskeditor.png}
+    Taskeditor (dockable, see section \ref {taskeditor})
+\end{itemize}
+
+\subsection{Dockable windows} \label{dockable}
+Beginning with \vym 1.13.0 some of the windows may be docked and become
+a part of an existing window. Or the other way round: Parts of a window
+may be "undocked" and become their own independent windows or can be
+placed in a different position within the mainwindow. Example: Toolbar
+above the map with flags can be placed below or besides of the map, or
+even float independantly.
+
+\subsection{Toolbars}
+The toolbars in the mainwindows give quick access to many functions and
+also display the state of selected objects in the map. For example a
+branch may show certain {\em flags}, the corresponding flags are also
+set in the toolbar. 
+
+\hint {Toolbars are {\em dockable} (see also section \ref{dockable}):
+You can reposition all toolbars by simply grabbing and dragging them
+with the toolbar handle to a new position. For example you can move the
+flags-toolbar from its original horizontal position on top of the
+mapeditor to a vertical position on the right side.  Or just insert it
+again at its original position. Also hiding some of the toolbars is
+possible by right-clicking on the toolbar handle.}
+
+\subsection{Menus and Context menus}
+At the top of each window you will find the menubar. The options
+provided there are similar to those you are probably used to from other
+applications. Note that many (and even more) options are available via
+{\em context menus}. Those are available if you right-click onto an
+object in a map (on Mac~OS~X Command-Click).
+
+\subsection{Maps}
+The  {\em map} has one or more {\em mapcenters}.  Each mapcenter has
+{\em branches} radiating out from the centre just like the trunk of a
+tree. Each branch in turn may have branches again.
+\maximage{images/branches.png} 
+We will call a branch directly connected to the mapcenter a {\em
+mainbranch}, because it determines the position of all its child
+branches.
+
+If you want to have more than one mapcenter, open the context menu by
+right-clicking onto the background of a map and select "Add mapcenter".
+Or just press \key{C}.
+The mapcenter and the branches all have a {\em heading}. This is the
+text you see in the mapeditor. Usually it should just be one or a few
+key words, so that one can easily keep track of the whole map.
+There are several ways to quickly edit the heading, see
+\ref{editheading}.
+
+
+In the toolbar above the mapeditor you see various symbols.
+    \maximage{images/default-flags.png}
+These are called {\em flags} and can be used to mark branches in the
+{\em map}, e.g. if something is important or questionable.  There are
+also more flags set by \vym automatically to show additional
+information, e.g. when a note is attached to a  particular branch.
+
+By default some of these flags are set exclusively e.g. when the 
+"thumb-up" flag is set, then the "thumb down" is reset and vice
+versa. You can change this default behaviour in the settings menu (see
+\ref{settings}).
+
+\section{Mapeditor} \label {mapeditor}
+\subsection{Start a new map}
+After \vym is started you will see the {\em mainwindow} with two parts: the {\em mapeditor} and the
+{\em tree editor}. Usually you will work in both windows, but at the
+moment we will just need the mapeditor. 
+
+Select the mapcenter "New map" in the middle of the mapeditor by
+left-clicking with the mouse. It will be highlighted yellow to show that
+is selected. There are several ways to add a new branch to the center:
+\begin{itemize}
+    \item Using the mouse: Open the context menu by clicking with the
+    right mouse button (CTRL-Click on Mac) onto the
+    mapcenter and choose Add \ra Add branch as child
+    \item Press \key{Ins} or \key{A}
+\end{itemize}
+A new branch will appear and you will be able to type the heading of the
+branch. Finish adding the new branch by pressing \key{Enter}.
+%tipp
+Sometimes it comes in handy to be able to add a new branch above or
+below the current one. 
+\begin{itemize}
+    \item Use \key{Shift-A} to add a branch above the selected one or... 
+    \item \key{Ctrl-A} to add one below. 
+\end{itemize}
+It is also possible to add a branch in such a way, that the current
+selection becomes the child of the new branch, which is like inserting
+it {\em before} the selection. This can be done using the context menu.
+
+\hint{To delete a branch press \key{CTRL-X}. If enabled in the Settings
+menu (see \ref{settings}), you can also use the \key{Del} key.}
+
+\subsection{Navigate through a map}
+\subsubsection*{Select branches}
+To select branches you can use the left button of your mouse or also the
+arrow keys. Depending on the {\em orientation} of a branch tap \key{\la}
+or \key{\ra} to move nearer to the mapcenter or deeper down into the
+branches. Within a set of branches, let's call them a {\em subtree}, you
+can use \key{PgUp} and \key{PgDn} to go up and down. You can also use
+\key{Home} and \key{End} to select the first and last branch.
+
+You can also select branches in the {\em tree editor}. Once this editor
+is active, you can also use \key{\ua} and \key {\da}, which have a
+slightly different meaning than in mapeditor: don't forget to click back
+into mapeditor to continue working there.
+
+There is also a {\em selection history:} Use \key{CTRL-I} and
+\key{CTRL-O} to go back to previous or later selections.
+
+\subsubsection*{Panning the view of a map}
+While adding more and more branches the size of the map may become
+larger than the mapeditor window. You can use the scrollbars on the
+right and the bottom of your mapeditor window to scroll the view up or
+down or left or right. It is easier to just scroll using the left mouse
+button: Click anywhere on the {\em canvas} itself. Choose an empty space
+somewhere between the branches. The mouse pointer will change from an
+arrow to a hand, now move or drag the visible map to show the desired
+part.
+
+If you select branches using the arrow keys, the map will scroll to
+ensure that the selected branch is always visible.
+
+\subsubsection*{Zooming the view of a map}
+Working with huge maps, the {\em zoom}-function comes in handy: You can
+use 
+\begin{itemize}
+    \item from the menu: View \ra Zoom in, View \ra Zoom out, View \ra reset Zoom.
+    \item the toolbar buttons 
+        \begin{center}
+            \includegraphics[width=3cm]{images/zoom-buttons.png}
+        \end{center}    
+\end{itemize}   
+Clicking the crossed magnifying lens icon will reset the zoomed view to
+its original size.  The keyboard shortcuts for zooming are \key{+} and
+\key{-}. \key{,} resets the zoom and \key{.} centers view on selection.
+
+Alternatively you can {\em zoom using the mouse}: Press \key{CTRL} while
+using the scrollwheel. With \key{CTRL} and middle-mouse you reset the
+zoom.
+
+\subsubsection*{Find Function} \label{findwindow}
+Choose Edit \ra Find or just press \key{CTRL+F} to open
+the Findwidget. The image below shows the findwidget above the
+noteeditor and the mapeditor:
+\begin{center}
+    \maximage{images/find-window.png}
+\end{center}    
+The text you enter here will be searched in all the
+branch headings and also in the associated notes. Just click on one of
+the results shown to select the found heading or an occurance in a note.
+In above example we searched for \lq opensuse\rq, which had a number of
+occurences in this map, e.g. in the note of \lq HowTo check into in
+editors on Factory\rq\ branch.
+
+Press \key{CTRL+F} again to hide the widget once it's no longer needed.
+Or you could also undock it (see \ref{dockable}).
+
+\subsubsection*{Keep the overview -- scroll a part of the map}
+A very big subtree of a map e.g. a branch with hundreds of child
+branches would make it very hard to keep an overview over the whole map.
+You can hide all the children of a branch by {\em scrolling} it -- in
+other software also called {\em folding}. Think of the whole subtree as
+painted onto a broadsheet newspaper. You can scroll or fold the paper to
+a small roll, leaving just the headline visible.
+
+To scroll or unscroll a branch and its children,
+\begin{itemize}
+    \item press the \key{S}
+    \item press the middle-mouse button or
+    \item choose the scroll icon from the toolbar.
+\end{itemize}
+If you select parts of a scrolled branch e.g. using the find function or
+by using the arrow-keys, it will unscroll temporary. This is shown as a
+scroll with a little hour glass. If the temporary unscrolled part is no
+longer needed, it will be hidden again automatically. It is also
+possible to unscroll all branches using "Edit\ra Unscroll all scrolled
+branches".
+
+You can also hide parts of the map while exporting it e.g. to a webpage
+or a presentation, see \ref{hideexport} for details.
+
+\subsection{Modify and move branches}
+\subsubsection*{Modify the heading}  \label{editheading}
+You can edit the heading by selecting the branch and then
+\begin{itemize}
+    \item pressing \key{Enter}
+    \item double-clicking with left mouse.
+\end{itemize}
+Just type the new heading (or edit the old one) and press \key{Enter}.
+You can also open the {\em heading editor} by pressing \key{E} or
+clicking 
+\maximage{images/headingeditor.png}
+%FIXME-2 Maybe add own section on HE: TextEditors-> HE,NE
+in the toolbar. The {\em heading editor} allows you to enter richtext, just
+like the {\em note editor} does for notes (see section \ref{noteeditor}).
+
+\subsubsection*{Move a branch}
+The easiest way to move a branch is to select it with left-mouse and
+drag it to the destination while keeping the mouse button pressed.
+Depending on the branch  it will be
+\begin{itemize}
+    \item moved to the destination or
+    \item {\em linked} to a new {\em parent} (mapcenter or branch)
+\end{itemize}
+If you drag the branch over another one or over the mapcenter, you will
+notice that the  link connecting it to the old parent will be changed to
+lead to the  new parent which is now under your mousepointer.  If you
+release the button now, the branch will be relinked.
+
+If you release the button in the middle of nowhere, the result will
+depend on the type of branch you are releasing:
+\begin{itemize}
+    \item A mainbranch is directly connected to the mapcenter.
+        It will stay on its new position.
+    \item An ordinary branch will "snap" back to its original position
+    \footnote{In newer versions of vym the "snap back" is animated.
+    Animation can be configured, see section \ref{settings}}. 
+\end{itemize}
+Thus you can easily rearrange the layout of the mainbranches to avoid
+overlapping of their subtrees.  There is another convenient way to move
+branches, especially if you want to {\em reorder} a subtree: You can
+move a branch up or down in a subtree by
+\begin{itemize}
+    \item pressing \key{\ua} and \key {\da}
+    \item selecting Edit \ra Move branch
+    \item clicking on the toolbar buttons:
+\end{itemize}
+        \begin{center}
+            \includegraphics[width=1.5cm]{images/move-buttons.png}
+        \end{center}    
+%tipp
+There is yet another way to move branches: If you press \key{Shift} or
+\key{Ctrl} while moving with the mouse, the branch will be added above
+or below the one the mouse pointer is over. This can also be used to
+reorder branches in a map.
+
+Another special way to move or select branches are {\em targets}, see
+\ref{targets}. Branches with targets use this flag:
+\begin{center}
+    \includegraphics[width=0.5cm]{images/flag-target.png}
+    \label{propwindow}
+\end{center}
+
+
+\subsection{Colours and Images - Using the right side of your brain}
+\subsubsection*{Change colour of a heading}
+You can also use colours to add more information to a map, e.g. use
+red, green and more colours to prioritize tasks. Again you can
+\begin{itemize}
+    \item use the menu and choose e.g Format \ra Set Color
+    \item use the toolbar
+        \begin{center}
+            \includegraphics[width=3cm]{images/color-buttons.png}
+        \end{center}    
+\end{itemize}
+The first button (black in the graphic above) shows the current colour.
+Clicking on it let's you choose another colour. You can also "pick"
+another colour by selecting a branch with the desired colour and using
+the "pick colour" button. Both of the icons showing a palette actually
+apply the current colour to the selected branch. While the first one
+just colours the heading of the selection, the last one also colours all
+the children of the selected branch.
+
+%tipp
+A very useful function is the {\em pick color modifier} of the mouse:
+Select the branch which should get the new colour, then press
+\key{Shift} and simultanously click with left-mouse on another branch to
+copy its colour to the currently selected subtree. If you only want to
+color the branch, not the whole subtree, press \key{Shift}+\key{Ctrl}
+simultanously. 
+
+\subsubsection*{Use flags}
+\vym provides various flags. They are usually displayed in the toolbar
+on top of the mapeditor window. (Note: Like all toolbars you can also
+move them to the left or the right side of the window or even detach
+them. Just grab the very left "dotted" part of the toolbar with your
+left-mouse button.) 
+\maximage{images/default-flags.png} 
+If you have a branch selected, you can set any number of flags by
+clicking them in the toolbar. The toolbar buttons change their state and
+always reflect the flags set in the selected branch. So, to remove a
+flag from a branch, select the branch and then click the highlighted
+flag on the toolbar.
+
+At present \vym uses two kinds of flags: {\em System Flags} and {\em
+Standard Flags}. The standard flags are those shown in the toolbar.
+System flags are set by \vym to indicate e.g. that there is additional
+information in a note (more on this in \ref{noteeditor}). Later versions
+of \vym may have another kind of flags, which may be edited by the user.
+
+\subsubsection*{Images}
+The easiest way to add an image to a branch is by dragging it e.g. from a
+webbrowser to the mapeditor while a branch is selected there.
+
+You can also add an image to a branch by opening the context menu of the
+branch. Right click the selected branch, choose "Add Image". A dialog
+window enables you choose the image to load. 
+\footnote{Supported image types are: PNG, BMP, XBM, XPM and PNM. It may
+    also support JPEG, MNG and GIF, if specially configured during
+    compilation (as done when \vym is part of SUSE LINUX).}
+While an image is selected in the dialog, a preview of the image is
+displayed. It is also possible to select multiple images.  
+
+You can position the image anywhere you want, just drag it with left
+mouse. To relink it to another branch, press \key{Shift} while moving
+it. To delete it, press \key{Del}. 
+
+If you right-click onto an image, a context menu will open which let's
+you first choose one of several image formats. Then a file dialog opens
+to save the image. 
+
+\hint{ This is used to "export" the image as separate file. As part of
+the map it always will be
+saved anyway in the map itself! You can also cut and
+copy images.}
+Note that it is not possible to add objects to an image, which would
+make working with the map much more complex if e.g. images could be
+linked to images.
+
+The option \lq{\bf Use for export} \rq controls the output of exports
+e.g. to HTML: If set to no, the image won't appear in the {\em text}
+part of the output. This is useful for large images or if images are
+used as a kind of frame e.g. the famous cloud symbol around a part of
+the map. Those shouldn't appear in the middle of the text.
+
+Resizing images has been added to /vym in version 1.13.20. Later
+versions will include more functionality like 
+changing its z-value (put it into background) etc.
+
+\subsubsection*{Frames}
+Various types of frame can be added to a branch in the {\em property window} (see
+\ref{propwindow}), e.g. ellipses, rectangle and cloud. The frames can
+optionally also include the children of the the framed branch, thus
+allowing even to "put boxes of contents into other boxes".
+Alternatively, you can use use images as frames: 
+\maximage{images/frames.png}
+
+\subsection{Design of map background and connecting links }
+The design of the background of a map and also of the links connecting
+various parts of the map can be changed by
+\begin{itemize}
+    \item Selecting Format from the menu
+    \item Right clicking on the canvas, which will open a context menu
+\end{itemize}
+
+\subsubsection*{Background }
+The colour is set (and also displayed) as "Set background colour".
+Alternatevily you can set an background image, though this is not
+recommended in general. Working on the map becomes slow and the image
+currently cannot be positioned freely.
+
+\subsubsection*{Link colour}
+Links connecting branches can be coloured in one of two ways:
+\begin{itemize}
+    \item use the same colour for the heading and for the branch link
+    line.
+    \item use {\em one} colour for all links and choose different
+    colours for the branch headings text. The default colour for branch
+    link lines is blue.
+\end{itemize}
+The latter can be set with "Set link colour". Check or uncheck the "Use
+colour of heading for link" option to toggle between the two designs for
+your map.
+
+\subsubsection*{Link style}
+\vym offers four different styles for the appearences of links:
+\begin{itemize}
+    \item Line
+    \item Parabel
+    \item Thick Line
+    \item Thick Parabel
+\end{itemize}
+The "thick" styles only apply to links starting at the mapcenter, link
+lines for the rest of the map are always painted "thin".
+
+\subsection{Links to other documents and webpages}
+\vym supports two kind of external links:
+\begin{itemize}
+    \item Documents, viewed with an external webbrowser.
+    Examples are {\tt .pdf} and {\tt .html} files. References 
+    are called {\em URLs} and marked with the globe
+    flag:
+    \begin{center}
+       \includegraphics[width=0.5cm]{images/flag-url.png}
+    \end{center}
+    A special type of URLs are those pointing to Novell Bugzilla, they have
+    the Bugzilla bug instead of the globe:
+    \begin{center}
+       \includegraphics[width=0.5cm]{images/flag-url-bugzilla-novell.png}
+    \end{center}
+    \vym even can get data from Novell Bugzilla, for details see
+    \ref{bugzilla}.
+
+
+    \item \vym maps, viewed in \vym itself. References are called
+    a {\em vymlinks} and marked with the \vym flag:
+    \begin{center}
+       \includegraphics[width=0.5cm]{images/flag-vymlink.png}
+    \end{center}
+\end{itemize}
+
+\subsubsection{How to create an URL} 
+Use one of the following:
+\begin{itemize}
+\item{Drag and drop URL from a webbrowser}
+\item{Use the "URLs and vymlinks toolbal:}
+    \begin{center}
+       \includegraphics[width=0.5cm]{images/flag-urlnew.png}
+    \end{center}
+\item{Keyboard shortcut:}
+    Press \key{U} or right-click  onto a
+    branch to open the contextmenu then choose "References\ra Edit URL". If
+    you want to use a file dialog to conveniently choose a local file you
+    can use~\key{U}. Also drag and drop from a browser can be used to create
+    a new branch with an URL.
+\item{Context menu:} 
+    Right click onto branch,
+    in the context menu there is also an option to open all URLs found
+    in the selected subtree of the map. That's useful to simultanously open
+    a collection of URLs in the webbrowser, especially if the browser can
+    open them in tabs.
+
+\end{itemize}
+
+After an URL was entered, a little globe will appear in the branch. By
+clicking on the globe in the toolbar or the context menu an external
+browser\footnote{
+    The browser can be changed in the Settings Menu (see \ref{settings}).}
+will be launched.
+For more information on working with bookmarks and webbrowsers see
+section \ref{bookmarks}.
+
+If support for Bugzilla is enabled (see \ref{bugzilla}), all Bugzilla
+references in a subtree can be updated automatically e.g. by pressing
+\key{CTRL-B}.
+
+\subsubsection{How to create a vymlink}
+Creation is possible both from the "URLs and vymlinks" toolbar or from
+the context menu of a branch:
+    \begin{center}
+       \includegraphics[width=0.5cm]{images/flag-vymlinknew.png}
+    \end{center}
+
+A file dialog opens where you can choose the map. 
+Clicking this flag beside the branch heading, in the toolbar or in the
+context menu of a branch will open the map in another tab (see
+\ref{tabs} for working with multiple maps). To delete an existing link,
+just right click the branch and select "Delete \vym link".
+
+\hint{Open a linked map in background by pressing \key{Ctrl} while
+clicking on the icon in the map}
+
+In the context menu there is also an option to open all vymlinks found
+in the selected subtree of the map. That's useful to simultanously open
+a collection of related maps\footnote{
+    Technical note: Internally \vym uses absolute paths, to avoid
+    opening several tabs containing the same map. When a map is saved,
+    this path is converted to a relative one 
+    (e.g. {\tt /home/user/vym.map} might become {\tt ./vym.map}. This
+    makes it fairly easy to use multiple maps on different computers or
+    export them to HTML in future.}.
+
+
+\subsection{Multiple maps} \label{tabs}
+You can work on multiple maps at the same time. Each new map is opened
+in another {\em tab}. The available tabs are shown just above the
+mapeditor. You can use the normal cut/copy/paste functions to
+copy data from one map to another.
+
+\subsection{Brainstorming} \label{brainstorming}
+When brainstorming you collect quickly a number of thoughts or ideas,
+without sorting, discussing or otherwise spending any amount of time on
+a particular idea.
+
+\vym helps you to quickly create mapcenter, either by pressing \key{C}
+or clicking the 
+    \begin{center}
+       \includegraphics[width=0.5cm]{images/newmapcenter.png}
+    \end{center}
+If you want to place the new  mapcenter at a specific position, you
+could also open the context menu by right-clicking on the background and
+selecting "Add mapcenter".
+
+Once you are done adding new items, you can start to sort them and
+arrange them by moving and relinking them to create a new map.
+
+\hint{If you have enabled \lq Automatic Layout\rq\ in the Settings menu,
+the new parts will move around to avoid overlapping}
+
+%TODO
+%\subsubsection{Menus}
+%\subsubsection{Keyboard shortcuts}
+
+% Settings
+% Images
+% Copy & Paste
+% Working with tabs (multiple maps)
+% Exporting
+% Scrolling
+
+\section{Noteeditor} \label {noteeditor}
+If you want to attach more text to a branch e.g. a complete email, a
+cooking recipe, or the whole source code of a software project, you can
+use the noteeditor. (The {\em Headingeditor} has the same features.)
+    \maximage{images/noteeditor.png}
+This editor displays text associated with a branch selected in the
+mapeditor. The noteeditor shows different background colours
+depending on whether text is associated with a selected branch.
+
+\subsection{States}
+Before you can type or paste text into it, you have
+to select a branch in the mapeditor. Note that the background colour\footnote{
+The backround colours can be changed in settings, e.g. if you use a dark
+theme and don't want to see a bright background in the editor}
+of the noteeditor indicates its state:
+\begin{itemize}
+    \item grey: no text entered yet
+    \item white: some text has been entered
+\end{itemize}   
+In the mapeditor itself, to signal that there is a note with more
+information for a particular branch, a little "note" flag will appear
+next to the heading of the branch. This is illustrated in the lower
+branch on the right hand side: 
+\maximage{images/branches-flags.png}
+
+\subsection{Import and export notes}
+The note is always saved automatically within the \vym map itself.
+Nevertheless sometimes it is nice to import a note from an external file
+or write it. In the Note Editor use "File\ra~Import" and
+"File\ra~Export" to do so. 
+
+\subsection{Edit and print note}
+Editing works like in any simple texteditor, including undo and redo
+functions. You can delete the complete note by clicking the trashcan.
+Only the note itself is printed by clicking the printer icon.
+
+\subsection{RichText: Colours, paragraphs and formatted text}
+Notes and also the headings of branches can either use a default font or
+all text attributes availabe in RichText, like bold, italic, colors,
+etc. To enable the latter, click the RichText button:
+\begin{center}
+    \includegraphics[width=0.5cm]{../icons/formatrichtext.png}
+\end{center}
+
+\subsection{Fonts and how to switch them quickly}
+If you just want to do quick notes and don't need fully formatted
+RichText as mentioned above, you still can select either a fixed font
+width font or a variable width font by clicking
+\begin{center}
+    \includegraphics[width=0.5cm]{../icons/formatfixedfont.png}
+\end{center}
+
+
+The fixed font is usually used for emails, source code etc.\ while the
+variable font is used for simple notes, where one doesn't need fixed
+character widths.  
+
+In the Settings menu both fonts can be set. The default font can also be
+toggled between the fixed and variable font by selecting or deselecting
+the "fixed font is default" menu item.
+
+\hint{Additionally to the default fonts any font installed on your system can
+be used. Please note, that the chosen font also will be used for HTML
+exports, so if your VYM mind map should  be exported to a web page
+you should only use fonts which are available generally.}
+
+\subsection{Find text}
+The noteeditor itself has no Find function, use Find in the mapeditor,
+which will also display occurences of text in notes (see
+\ref{findwindow}).
+
+\subsection{Paste text into note editor}
+Often you will paste text into the editor from another application e.g.
+an email.
+
+\section{Task editor} \label{taskeditor}
+Tasks are used to easily create and maintain a \lq Todo-list\rq. 
+The taskeditor is visible on the left side in the image below. 
+\begin{center}
+    \includegraphics[width=13cm]{images/taskeditor.png}
+\end{center}
+
+\subsection{Creating tasks}
+To create a task press \key{Shift + W}. The branch will get an
+additional flag and its name will be visible in the taskeditor.
+
+A task can have three different states:
+\begin{itemize}
+    \item Not started \includegraphics[width=0.5cm]{../flags/flag-task-new.png}
+    \item Work in progress
+    \includegraphics[width=0.5cm]{../flags/flag-task-wip.png}
+    \item Finished
+    \includegraphics[width=0.5cm]{../flags/flag-task-finished.png}
+\end{itemize}
+You can cycle these states by pressing \key{W}. 
+
+\subsection{Sleeping tasks for later reminders}
+A task may be set to \lq sleep\rq, which can be used to get a reminder
+after a certain amount of time. The flag will change to one of these:
+\begin{itemize}
+    \item Not started - sleeping
+    \includegraphics[width=0.5cm]{../flags/flag-task-new-sleeping.png}
+    \item Work in progress - sleeping
+    \includegraphics[width=0.5cm]{../flags/flag-task-wip-sleeping.png}
+\end{itemize}
+You can set the amount of days a task should sleep by right clicking on the task flag in the
+mapeditor or the task in the taskeditor. \lq Reset sleep\rq will wake up
+a currently sleeping task. These tasks will get a  new flag and status
+in the taskeditor:
+\begin{itemize}
+    \item Not started -
+    morning\includegraphics[width=0.5cm]{../flags/flag-task-new-morning.png}
+    \item Work in progress - morning
+    \includegraphics[width=0.5cm]{../flags/flag-task-wip-morning.png}
+\end{itemize}
+Additionally these poor tasks, which have just been woken up, will get a
+way higher priority, so that they pop up on top of your list in the
+taskeditor, see next section.
+
+\subsection{Priority of tasks}
+The tasks visible in the taskeditor are ordered by their {\em
+priorities}, listed on the left side of the editor. The lower(!) the
+priority, the more important is a task.
+
+There are several principles that influence the priority of a task:
+\begin{itemize}
+    \item
+    Old tasks tend to bubble up: If you have a task named \lq water the
+    flowers\rq\ and you have postponed it since 187 days, better delete
+    the task. And create a new task to dump the remains of the flowers.
+
+    \item
+    Colors in the map: If you use the Function keys to assigne the
+    colors red, amber, green, etc. the tasks will get a different
+    priority accordingly
+
+    \item
+    The stopsign flag
+    \includegraphics[width=0.5cm]{../flags/flag-stopsign.png} 
+    will increase the priority. Use it for your shipstoppers\ldots
+
+    \item
+    Sleeping tasks and finished tasks will tend to fall to the bottom of
+    your task list.
+
+    \item
+    The freshly woken up \lq morning tasks\rq\ will tend to pop up right
+    at the top, so that they cannot be missed. Remove the \lq
+    morning\rq\
+    state by pressing \key{W} once.
+\end{itemize}
+
+The priorities are calculated based on the next visible columns:
+\begin{itemize}
+    \item Status: Shows the state and if the task is currently sleeping
+    \item Age total: Days, since the task has been created
+    \item Age modified: Days, since the task has been changed
+    \item Sleep: Days, which will pass until task will wake up 
+    \item Position of tasks branch in its subtree (higher priority if
+        further up)
+\end{itemize}
+Note that the priorities cannot be set manually, but e.g. you can reset
+the \lq Age modified\rq\ by pressing \key{W} three times to cycle
+through the states. Also the priorites are maintained for all currently
+opened maps, so if the top priority in your current map is a sleeping
+2034, then there is another open map, which certainly has a priority~1
+task.
+
+\subsection{Keeping the overview}
+The taskeditor has filters:
+\begin{itemize}
+    \item Current map: Show only tasks from  current active map
+    \item Active tasks: Show only the tasks, which are neither finished
+    nor sleeping
+\end{itemize}
+
+
+\section{Slideeditor - presentations}\label{slideeditor}
+\vym can be used to do animated presentations using the slideeditor as
+seen on the right side of the image below:
+\begin{center}
+    \includegraphics[width=13cm]{images/slideeditor.png}
+\end{center}
+The slideeditor can be opened by pressing \key{S} or from the {\em View}
+menu. The (currently) available action are:
+\begin{itemize}
+    \item
+    \includegraphics[width=0.5cm]{../icons/slideprevious.png}
+    Select previous slide
+
+    \item
+    \includegraphics[width=0.5cm]{../icons/slidenext.png}
+    Select next slide
+
+    \item
+    \includegraphics[width=0.5cm]{../icons/slide-camera.png}
+    Create a new slide by snapshotting the current selection. The exact
+    set of actions performed when selecting the new snapshot defined in
+    a script called {\tt slideeditor-snapshot.vys}. The script is one of
+    the \vym macros, see \ref{macros}.
+
+    \item
+    \includegraphics[width=0.5cm]{../icons/scripteditor.png}
+    Open the scripteditor to manually edit the current slide \\
+    (More on scripting in appendix \ref{scripts}).
+    
+    \item
+    \includegraphics[width=0.5cm]{../icons/edittrash.png}
+    Delete the current slide
+    
+    \item
+    \includegraphics[width=0.5cm]{../icons/up.png}
+    Move current slide up in slidedeck
+    
+    \item
+    \includegraphics[width=0.5cm]{../icons/down.png}
+    Move current slide down in slidedeck
+\end{itemize}
+
+
+\section{Hello world - vym and other applications}
+This section is about how \vym can interact with other applications.
+Many applications can now read and write their data using XML, the
+eXtensible Markup Language. \vym also uses XML to save its maps, see
+\ref{fileformat} for a more detailed description. 
+
+So if you make use of another application that understands XML, chances
+are good that someone could write import/export filters for \vym.
+Volunteers are always welcome ;-)
+
+\subsection{Import} \label{import}
+
+\subsubsection*{Mind Manager}
+\vym has currently a very basic import filter to convert maps created by
+{\em Mind Manager}\footnote{Mind Manager is a commercial i.e. non free,
+software application by Mindjet for Windows and the Mac. Both names are
+registered trademarks by Mindjet. For more information see their website
+at \href{http://mindjet.com}{http://mindjet.com}} into \vym maps. Notes
+and pictures are not converted at the moment. You can import files with
+\begin{itemize}
+    \item File \ra Import\ra Mind Manager
+\end{itemize}
+
+
+\subsubsection*{Directory structure}
+\vym can read a directory structure. This is mainly for
+testing \vym e.g. to easily create huge maps used for benchmarks (yes,
+there is still room to optimize \vym ;-)
+
+\subsection{Export}  \label{export}
+\label{hideexport}
+Often you may not want to export the whole map, but just parts of it.
+For example you may have additional info you want to talk about in a
+presentation, while those parts should not be visible to the audience.
+To achieve this you can "hide" parts of the map during exports by
+setting the "hide in export" flag.
+\begin{center}
+    \includegraphics[width=0.5cm]{images/flag-hideexport.png}
+\end{center}
+You can toggle this flag in the toolbar or by pressing \key{H}.  Note
+that there is a global option in the settings menu ( \ref{settings}) to
+toggle the use of this flag. By default the flag is enabled.
+
+\subsubsection*{Last used format}
+Repeats the last export action without further dialogs like asking for
+directories. The associated export type and filepaths are stored within
+the map and thus map specific. Note: Not all export types support this
+feature yet.
+
+\subsubsection*{Image}
+\vym supports all image formats which are natively supported by the
+QT~toolkit:
+BMP, JPEG, PBM, PGM, PNG, PPN, XPM, and XBM.
+For use in websites and for sending images by email PNG is a good
+recommodation regarding quality and size of the image. \vym uses QTs
+default options for compressing the images.
+
+\subsubsection*{PDF}
+Exports to Portable Document Format.
+
+\subsubsection*{SVG}
+Exports to Scalable Vector Graphics.
+
+\subsubsection*{Open Office}
+Open Office beginning with version~2 uses the so called "Open Document
+Format", which can be written by \vym. The options are currently
+limited, but it possible to export presentations which can be opened in
+Open Office Impress. By selecting
+\begin{itemize}
+    \item File  \ra Export\ra Open Office
+\end{itemize}
+you get a file dialogue where you can choose the output file and the
+file type:
+    \maximage{images/export-oo.png}
+The file types represent various templates, which can be created with
+some manual work from an existing Open Office document. The structure of
+\vym map is then inserted into a template.  There are some limitations
+at the moment:
+\begin{itemize}
+    \item \vym can't take care of page lengths, so you have to check and
+    probably reedit in Open Office to avoid text running over the end of
+    a page
+    \item Images and flags are not used at the moment
+    \item Notes are just written as plain text, without RichText 
+    \item The full range of templates are not available in all
+    distributions.   
+\end{itemize}
+Some of the templates make use of {\em sections} i.e sections insert the
+headings of mainbranches as chapters for sections into the presentation.
+
+\subsubsection*{HTML (Webpages)}
+This is the format to use if you wish to create a webpage. To see an example
+visit the \vym homepage: 
+\href{http://www.InSilmaril.de/vym}{www.InSilmaril.de/vym}
+A dialog allows the user to set various options:
+\begin{itemize}
+    \item {\bf Include image:} If set, \vym will create an image map at
+    the top of the HTML output. Clicking on a branch in the map will
+    jump to the corresponding section in the output.
+
+    \item {\bf Colored headings:}
+    If set to yes, \vym will colour the headings in the text part  with the
+    same colours used in the \vym map.
+    \item {\bf Save settings:}
+    If set to yes, \vym will save above settings in the map.
+\end{itemize}
+
+\subsubsection*{A \& O -- Achievements and Objectives}
+A specialized form of ASCII export (see next section), which is used for
+workreports. Currently it is considered experimental.
+%FIXME-3 Details
+
+\subsubsection*{ASCII}
+Exporting a map as text is somewhat experimental at the moment. Later
+this will probably be done using stylesheets. So the output may change
+in future versions of \vym.
+
+\subsubsection*{CSV}
+Exports map into a Comma Separated Value file, which can be used to
+import into all kinds spreadsheet software.
+
+\subsubsection*{Taskjuggler}
+Used to export to Taskjuggler project management software. Currently
+considered experimental.
+
+\subsubsection*{\LaTeX}
+\vym can generate an input file for \LaTeX. Currently this is considered
+as experimental, there are no options (yet). 
+By selecting
+\begin{itemize}
+    \item File  \ra Export\ra \LaTeX 
+\end{itemize}
+you will be asked in a file dialog for the name of the output file. This
+file may then be included in a \LaTeX document using command: 
+\begin{verbatim}
+    \include{inputfile.tex}
+\end{verbatim}
+New in version 2.2.0: You can configure the names of the sections in the
+vym config file, depending on your platform e.g. in 
+\begin{verbatim}
+    $HOME/.config/InSilmaril/vym.conf
+\end{verbatim}
+Just add e.g. these entries>
+\begin{verbatim}
+    /export/latex/sectionName-0=chapter
+    /export/latex/sectionName-1=section
+    /export/latex/sectionName-2=subsection
+    /export/latex/sectionName-3=subsubsection
+    /export/latex/sectionName-4=paragraph
+\end{verbatim}
+
+
+\subsubsection*{XML} \label{xmlexport}
+The map is written into a directory both as an image and as an XML file.
+The directory is set in a file dialog. If the directory is not empty,
+you will be warned and offered choices if you are at risk of overwriting
+existing contents.
+
+It is possible to export different maps into the same directory. Each
+file generated will have the map's name as prefix, e.g. {\tt todo.vym}
+becomes {\tt todo.xml}, {\tt todo.png}, {\tt todo-image-1.png} and so
+on. This is useful if, for example, a website comprises several combined
+maps that have to be stored in the same directory.
+
+\subsubsection*{Export a part of a map}
+Select a branch you want to export together with its children, then open
+the context menu and choose {\em Save Selection}. This will create a
+file with the suffix {\tt .vyp}, which is an abbreviation for \lq vym
+part\rq.
+
+
+\section{Advanced usage}
+
+\subsection{Quickly sorting branches or postponing actions} \label{targets}
+Sometimes it's very handy to have a small number of shortcuts to quickly
+select a certain branch or move something somewhere and proceed with
+next item. This can be used for quick sorting to a number of
+destination. For example if used in timeplanning, you could quickly move something
+to "next tuesday". The destinations are called {\em targets} and are
+marked with 
+\begin{center}
+    \includegraphics[width=0.5cm]{images/flag-target.png}
+    \label{propwindow}
+\end{center}
+The target flag is toggled with \key{T}. If you want to "Goto" a target,
+press \key{G}. Similar if you want to "Move" a branch, press \key{M}.
+A context menu will open and lets you select the target.
+
+
+
+\subsection{Properties of an object} 
+For any branch you can open a satellite window (see \ref{satellite}):
+the {\em property window}:
+\begin{center}
+    \includegraphics[width=8cm]{images/propwindow.png}
+    \label{propwindow}
+\end{center}
+%FIXME create updated screenshot
+
+\subsubsection*{Frame}
+sets the appearance of the frame of a branch. Currently there are
+\begin{itemize}
+    \item No frame
+    \item Rectangle
+    \item Ellipse
+    \item Cloud
+\end{itemize}
+The "Include Children" checkmark is used to, well, include the children
+of the branch. "Padding" sets the distance between both neighbouring
+branches and frame and also the frame and branch itself. The "width"
+sets the thickness of the frame.
+
+Two colors can be assigned to background of the frame and frame itself.
+
+\subsubsection*{Layout}
+The images belonging to a branch can use different layouts, e.g.
+floating freely alongside or being included {\em within} the branch. For
+details and illustration see \ref{incimg}).
+
+\subsubsection*{Link}
+The advantage of hiding a link, which is the connection between a branch
+(or image) and its parent, is to make the branch itself appear a
+mapcenter of its own. Details are in   \ref{hidelink}).
+
+\subsection{Changing the history: Undo and Redo}
+\vym keeps track of all changes done in a map. The default number of
+changes which can be undone is~75. The complete history can be seen in
+the {\em historywindow}:
+    \maximage{images/historywindow.png}
+    \label{historywindow}
+A single step back be undone or redone with \key{CTRL-Z} or \key{CTRL-Y},
+or by using the buttons in the toolbar or the {\em historywindow}.
+Inside the {\em historywindow}, you can click on a line to unwind all
+actions done until that point in time -- or redo all changes by clicking
+on the last line.
+
+\hint{
+    You can "paste from the past": Go back in time by e.g. with
+    \key{CTRL-Z}, then copy to clipboard by pressing \key{CTRL-C}.
+
+    Now do all actions again, e.g. by \key{CTRL-Y} or clicking on the
+    last action in {\em historywindow}. Now paste from the past with
+    \key{CTRL-V}.
+}
+
+\subsection{Macros} \label{macros}
+Each function key
+\key{F1} to \key{F12} holds a macro, which is executed on the current
+selection if the key is pressed. The default macros change the colour of
+a subtree or set the frame of a branch:
+\begin{center}
+    \includegraphics[width=8cm]{images/macros.png}
+\end{center}
+Each macro is a \vym script, which is executed when the associated key
+is pressed. The default location of the scripts can be changed in the
+Settings menu. More information on using scripts in \vym is found in
+appendix~\ref{scripts}.
+
+\subsection{Bookmarks} \label{bookmarks}
+\subsubsection*{Open new tabs instead of new windows}
+If you use konqueror as your browser, \vym will remember the konqueror session which
+was opened first by \vym. You can also press \key{Ctrl} and click to
+open the link in a new tab.
+
+\vym can also open a new tab in Mozilla or Firefox using the remote
+command\footnote{
+    \href{http://www.mozilla.org/unix/remote.html}{http://www.mozilla.org/unix/remote.html}}
+of these browsers.
+
+\subsubsection*{Drag and Drop}
+If you want to keep bookmarks in a map, select a branch where you want
+to add the bookmark, then simply drag the URL from your browser to the
+map. Also you could use an existing heading as URL: Right click onto the
+branch and select "Use heading for URL".
+
+
+\subsubsection*{Directly access bookmark lists of a browser}
+Please see the sections \ref{import} and \ref{export} about
+Import and Export filters.
+
+\subsection{Associating images with a branch} \label{incimg}
+The default setting for an image is for it to float "freely". Images can
+be positioned anywhere on the canvas, but may end up in the same place
+as other parts of the map obscuring that part of the map.
+
+The solution is to insert or include them "into" a branch. This can be
+done via the property window (see \ref{propwindow}):
+\begin{itemize}
+    \item Include images horizontally
+    \item Include images vertically
+\end{itemize}
+The image is still positioned relative to its parent branch, but the
+heading and border of the branch frame adapt to the floating image, see
+below: \maximage{images/includeImages.png}
+
+\subsection{Modifier Modes} 
+Modifiers are for example the \key{Shift}- the \key{Ctrl}- ot the
+\key{Alt}-keys. When pressed while applying mouse actions, they will
+cause \vym to use a "modified" version of the action which usually would
+be done. 
+
+%\key{Ctrl} or \key{Alt}is pressed while releasing the branch, it will be
+%added above/below the target, not as child of the target.
+
+Without a modifier key pressed, the first mouse click on a branch just selects
+it. For the behaviour of the \key{Shift} modifier there are several
+options, which can be set from the modifier toolbar:
+\begin{center}
+    \includegraphics[width=3cm]{images/modmodes.png}
+\end{center}
+The default mode is to copy the colour from the clicked branch to the
+already selected branch. The figure above shows the toolbar with the
+default modifier selected. If press both \key{Shift}~$+$~\key{Ctrl} only
+the selected branch will change color, instead of the whole subtree.
+
+The second modifier lets you create links between branches called {\em
+xLinks}.  They will be explained in the next section \ref{xlinks}.
+
+\subsection{Hide links of unselected objects} \label{hidelink}
+Sometimes it would be useful to position a branch freely, just like a
+mainbranch or an image. This is possible for all branches, you can use a
+mainbranch and hide its connecting link to the mapcenter or hide the
+link between a child branch and its parent. This can be used e.g. for
+legends or a collection of vymLinks pointing to other maps:
+\begin{center}
+    \includegraphics[width=9cm]{images/hiddenlink.png}
+\end{center}
+To hide the link between a branch and its parent open the
+\ref{propwindow} and check "Hide link if object is not selected" on
+"Link" tab.
+
+
+\subsection{XLinks} \label{xlinks}
+So far all the data in the \vym map has been treelike. Using xLinks you
+can link one branch to any other, just like attaching a rope between two
+branches in a real tree. This is especially useful in complex maps,
+where you want to have crossreferences which can not be displayed on the
+same visible area of the {\em mapeditor} window. The following example
+map still fits on one screen, but shows how data can be crosslinked. In
+the graphics there is a link from a task (prepare a presentation) to
+general information: 
+\maximage{images/xlink-control.png}
+Note that a xLink which points to a branch, that is not visible (because
+it is scrolled), is just shown as a little horizontal arrow. In the
+image above have a look at the \lq Screenshot\rq\ branch.
+
+\subsubsection*{Create a xLink}
+Choose the link mode from the modifier toolbar (by clicking the toolbar
+icon or pressing \key{L}). Select the branch, where the xLink should
+start. Press the modifier key \key{Shift} 
+drag the mouse pointer to the branch where the link should end. (The
+link is drawn to follow the mouse pointer). When you release the mouse
+over a branch the xLink becomes permanent.
+
+\subsubsection*{Modify or delete a xLink}
+First select the link, either in the tree editor or by clicking the xLink
+itself in the mapeditor.  A dialogue opens, where you can set colour,
+width and also delete the xLink.
+
+You can also move the control points of the link to change the curve and
+change the appearance of the xlink by right clicking on one of
+the control points:
+\begin{center}
+\includegraphics[width=6cm]{images/xlink-property.png}
+\end{center}
+
+
+\subsubsection*{Follow a xLink}
+In a complex \vym map it sometimes comes in handy to be able to jump to
+the other end of a xLink. You can do this by opening the context menu of
+the branch and clicking on \lq Goto xLink\rq and selecting the xLink you
+want to follow. Even easier is to click on the lower right end of a
+branch -- a popup menu will show up with all xLinked branches. Click one
+of them to jump to it.
+
+
+\subsection{Adding and removing branches}
+The context menu of a branch shows some more ways to add and delete data
+e.g. you can delete a branch while keeping its children. The children
+become linked to the parent of the previously removed branch.  Similar
+branches can be inserted into existing maps. For keyboard shortcuts also
+have a look at the context menu.
+
+\subsection{Adding a whole map or a part of a map}
+Select a branch where you want to add a previously saved map ({\tt
+.vym})or a part of a map ({\tt .vyp}) , then open the context menu and
+choose {\em Add \ra Add Map (Insert)}. For the import you can choose
+between {\em Add Map (Insert)} and {\em Add Map (Replace)}: The imported
+data will be added after the selected branch.
+
+\subsection{Connecting \vym with Bugzilla}  \label{bugzilla}
+\vym can get data from SUSE Bugzilla, if you install an
+additional package. Make sure you have the ruby programming language and
+rubygems installed and get bicho\footnote{
+    \href{http://rubygems.org/gems/bicho}{http://rubygems.org/gems/bicho} }:
+\begin{verbatim}
+  gem install bicho
+\end{verbatim}
+
+Once you have the {\tt bicho} installed, you can just
+enter a bug\ ID into a heading and press \key{B}: \vym will create the
+URL from the ID and try to get the heading directly from Bugzilla.
+
+Also drag and drop of a URL from your webbrowser into \vym will trigger
+retrieving the data.  You can can also update a subtree of Bugzilla URLs
+by pressing \key{Ctrl+B}.
+
+
+\section{\vym on Mac OS X}
+%FIXME-3 Currently not yet supported on Mac OS X in 1.13.x
+
+%\subsection{Overview}
+%Sorry, currently (\vym 2.2.2) there is no Mac port available. Please
+%contact the author\footnote{
+%    Email Uwe Drechsel: \href{mailto:vym@insilmaril.de}{vym@insilmaril.de}} if
+%you are interested in a Mac version.
+
+%Basically there are two ways to run \vym on Macs:
+%\subsubsection*{Qt Mac Edition:}
+%    \vym here provides the well known Mac look and feel.  \vym is
+%    available as Mac OS X application package in contained in a disk
+%    image ({\tt vym.dmg}). It has been compiled and tested in
+%    Mac~OS~10.4.  This package includes  runtime libraries of Qt by
+%    Trolltech.
+    
+%\subsubsection*{X11 version} \vym can also be run using the Linux
+%version, but then menus and handling will also be those of the Linux
+%version e.g. The menu bar will look different. 
+
+\subsection {Contextmenu and special keys}
+Most Macs unfortunatly just have a single mouse button. In order to show
+the context menu which usually would be opened with the right mouse
+button, you can click while pressing the \key{kommand}-key.
+
+Especially on Laptops some of the keys usually used on PC keyboards seem
+to be missing. The Qt-Mac Edition of \vym has its own keyboard
+shortcuts. To find the shortcuts just have a look at all the menu
+entries, the shortcut is visible next to an entry. Toolbar buttons also
+may have shortcuts, just position the mouse pointer over a button and
+wait for the little help window to appear. 
+
+\subsection {Viewing external links}
+\vym on Mac uses the system call {\tt /usr/bin/open} to view links.
+Mac~OS determines automatically if the link is a pdf or www page and
+opens the right browser.
+
+\newpage
+
+\begin{appendix}
+
+\section{\vym initialisation process and configuration}
+\subsection {Settings menu} \label{settings}
+    The {\em Settings} menu allows to configure \vym to your needs:
+
+\subsubsection*{Set application to open PDF files} Choose a PDF
+    viewer like {\tt acrobat} or {\tt konqueror} which is installed on
+    your system.
+
+\subsubsection*{Set application to open external links}
+    Choose your favourite webbrowser here.
+
+\subsubsection*{Set path for macros}
+    Set the default search path for macros, which will be executed when
+    you press one of the function keys. Each key corresponds to a file
+    ({\tt macro-1.vys..macro12.vys}) in the search path.
+
+\subsubsection*{Set number of undo levels}
+    Sets the number of undo/redo levels. The default setting is
+    75~levels.
+
+\subsubsection*{Autosave and autosave time}
+    Automatic saving of modified maps can be toggled on or off. The
+    autosave time is entered in seconds.
+
+\subsubsection*{Write backup on save}
+    When saving a map called {\tt example.vym}, \vym will rename the
+    existing file to {\tt example.vym\~{}} before writing the {\tt
+    example.vym} itself.
+
+\subsubsection*{Edit branch after adding it}
+    If set, the heading of a new branch will be edited immediatly after
+    adding the branch.
+
+\subsubsection*{Select branch after adding it}
+    If set, a new branch will be selected immediatly after adding it.
+    When you "brainstorm" on a given keyword, you don't want to go
+    deeper and deeper into details, but keep the focus on the keyword.
+    So the default setting here is to {\em not} select the freshly added
+    branch.
+    
+\subsubsection*{Select existing heading}
+    If set and you begin to edit the heading of a branch, the heading
+    text in the dialog will be selected. Usefully to copy\&paste to
+    other applications.
+
+\subsubsection*{Delete key}
+    If set, the \key{Delete} is enabled to, well, delete objects. This
+    can be switched off to avoid confusing with the nearby
+    \key{Insert}-key on PC keyboards.
+
+\subsubsection*{Exclusive flags}
+    If set, some of the standard flags can only be used exclusively,
+    e.g.~the smileys.
+
+\subsubsection*{Use hide flags}
+    If set, every branch which also has the hide flag set (see
+    \ref{hideexport}) will be hidden in exports.
+
+\subsubsection*{Note editor is dockable}
+    If set (default), the note editor can be docked into the main
+    widget. Changing this setting needs a restart of \vym. Details see
+    \ref{dockable}.
+
+\subsubsection*{Animation}
+    If set (default), some animation will be used, e.g.\ for "snapping
+    back" of released branches.
+
+\subsubsection*{Autolayout} %FIXME-3
+    If set (not on default), \vym will try to autolayout mainbranches.
+    Currently considered experimental and only working under certain
+    circumstances. 
+
+\subsection{Configuration file}
+On startup \vym will look for a configuration for user specific settings
+like window positions, toolbars etc. If this file does not already
+exist, it will be created. The file is located in the users home
+directory. The exact position depends on the platform:
+\begin{center}
+\begin{tabular}{ll}
+    {\bf Platform}  & {\bf Configuration file} \\ \hline
+    Linux              & {\tt $\sim$/.config/InSilmaril/vym.conf  } \\
+    Mac OS X           & {\tt /Users/NAME/Library/Preferences/com.insilmaril.vym.plist  } \\
+    Windows (registry) & {\tt HKEY\_Current\_User/Software/InSilmaril/vym  } \\
+\end{tabular}
+\end{center}
+The file can be edited manually, or on Mac~OS~X with Property List
+Editor (installed with xtools). On windows you can use {\tt regedit.exe}.
+
+\subsection{Path to ressources}
+\vym will try to find its ressources (images, stylesheets, filters,
+etc.) in the following places:
+\begin{enumerate}
+    \item Path given by the environment variable {\tt VYMHOME}.
+    \item If called with the local option (see \ref{options} below),
+          \vym will look for its data in the current directory.
+    \item {\tt /usr/share/vym}
+    \item {\tt /usr/local/share/vym}
+\end{enumerate}
+
+\subsection{Command line options} \label{options} 
+\begin{verbatim}
+Usage: vym [OPTION]... [FILE]... 
+Open FILEs with vym
+
+-b           batch       batch mode: hide windows
+-c           commands     List all available commands
+-d           debug       Show debugging output
+-h           help        Show this help text
+-l           local       Run with ressources in current directory
+--locale     locale      Override system locale setting to select language
+-n  STRING   name        Set name of instance for DBus access
+-q           quit        Quit immediatly after start for benchmarking
+-r  FILE     run         Run script
+-R           restore     Restore last session
+-s           shortcuts   Show Keyboard shortcuts on start
+-sl          LaTeX       Show Keyboard shortcuts in LaTeX format on start
+-t           testmode    Test mode, e.g. no autosave and changing of its setting
+-v           version     Show vym version
+\end{verbatim}
+You can also give several filenames at the commandline to let \vym open
+several maps at once.
+
+\section{Scripts} \label{scripts}   
+\subsection{Overview}
+Scripts within \vym are so far just a set of instructions, telling \vym
+what to do. Scripts are internally used for
+\begin{itemize}
+    \item Undo and Redo
+    \item Macros on function keys
+    \item Slideshow
+\end{itemize}
+So far the scripts have no loop constructs, conditionals, variables,
+etc. The good news: You can use external ruby scripts to get all that,
+see the examples in \ref{examplescripts}.
+
+The scripts within \vym are edited using the {\em script editor}:
+\begin{center} \label{scripteditor}
+    \includegraphics[width=13cm]{images/scripteditor.png}
+\end{center}
+Open the scripteditor by pressing \key{Alt + S} or from the {\em
+View}-menu.
+
+\subsection{Example scripts}  \label{examplescripts}
+\subsubsection{Macro to create a rounded rectangle frame}
+\begin{code}
+\# Macro F12
+setFrameType ("RoundedRectangle");
+setFramePadding (10);
+setFrameIncludeChildren (true);
+\end{code}
+
+\subsubsection{Batch script to export all maps as images}
+This script can be used to export all maps in a directory
+automatically. If the script is named {\tt export-image.vys}, call \vym
+with
+\begin{code}
+\$ vym --quit --run export-image.vys *.vym
+\end{code}
+
+\subsubsection{Full scripting using ruby and DBUS}
+Nearly every action in \vym can be controlled via DBUS (on Linux
+machines). You can have several \vym instances running at the same time,
+e.g. for production and development. Before controlling one, you need to
+give it a name, here \lq test\rq\ is used:
+\begin{verbatim}
+vym -n test
+\end{verbatim}
+You can now access \vym via DBUS, if you have Qt installed, try {\tt
+qdbusviewer}. In the {\tt scripts} directory, which is part of \vym,
+you'll find the script {\tt vym-ruby.rb}. This rubyscript provides two
+classes to manage and control \vym instances. A short script to set the
+heading of a branch might be:
+\begin{verbatim}
+#!/usr/bin/env ruby
+
+require "#{ENV['PWD']}/scripts/vym-ruby"
+
+vym_mgr=VymManager.new
+vym=Vym.new(vym_mgr.find('test') )
+
+vym.select "mc:0"
+vym.setHeading "This is a new heading!"
+\end{verbatim}
+
+An full example how this is
+used is in the automated \vym testing:
+\begin{verbatim}
+test/vym-test.rb
+\end{verbatim}
+
+\subsection{Available commands}
+Start vym with the \lq command\rq\ option to get a listing of available
+commands:
+\begin{verbatim}
+  vym --commands --quit
+\end{verbatim}
+The currently available commands are:
+\begin{itemize}
+    \input{commands.tex}
+\end{itemize}
+
+
+
+\section{Contributing to \vym}
+So far I'd say I have written 98\% of the code on my own. No surprise,
+that \vym exactly fits my own needs. Nevertheless I would like to
+encourage all users of  \vym to contribute. Maybe not only with feature
+requests, but also with code, new import/export filters, translations
+etc. In this appendix I'll try to show how easy it is to expand the
+things you can do already with \vym. I really look forward to hear from
+you!
+
+\subsection{Getting help}
+
+\subsubsection*{Frequently asked questions}
+Please refer to the FAQ available on the \vym website:
+\begin{center}
+\href{http://www.InSilmaril.de/vym/faq.html}{http://www.InSilmaril.de/vym/faq.html}
+\end{center}
+
+\subsubsection*{Mailinglists}
+There are several mailinglists: {\tt vym-forum} is the \vym users forum to
+discuss various questions, while {\tt vym-devel} is intended for people
+interested in contributing to \vym. The third list is {\tt vym-trans} to
+coordinate translations. You can view the archives and subscribe at
+\begin{center}
+\href{https://sourceforge.net/mail/?group_id=127802}{https://sourceforge.net/mail/?group\_id=127802}
+\end{center}
+
+\subsubsection*{Contacting the author}\label{author}
+Especially for support questions please try the mailinglists first. If
+everything else fails you can contact the author Uwe Drechsel at
+\begin{center}
+\href{mailto:vym@InSilmaril.de}{vym@InSilmaril.de}
+\end{center}
+
+
+
+\subsection{How to report bugs}
+Though Sourceforge has its own bugreporting system, I'd rather prefer if
+you contact me directly (see \ref{author}) or even better: You can file
+a bugreport in Bugzilla, the bugtracking system of openSUSE:
+\begin{center}
+\href{http://en.opensuse.org/Submit_a_bug}{http://en.opensuse.org/Submit\_a\_bug}
+\end{center}
+I build \vym regulary for openSUSE, so you may report it against a
+recent version there, even if you  use another Operating System.
+Please don't forget to tell me what you are using:
+\begin{itemize}
+    \item the exact steps needed to reproduce the bug
+    \item the version and build date of \vym (see the Help \ra About
+    \vym)
+    \item hardware and Operating System
+\end{itemize}
+
+\subsection{Compiling from the sources}
+\subsubsection{Getting the sources} \label{getsources}
+You find the latest version of \vym at the project site:
+\begin{center}
+\href{https://sourceforge.net/projects/vym/}{https://sourceforge.net/projects/vym/}
+\end{center}
+There you can check them out of the source repository:\\
+
+\begin{verbatim}
+git clone git://vym.git.sourceforge.net/gitroot/vym/vym
+\end{verbatim}
+or access the git repository directly:
+\begin{center}
+\href{http://vym.git.sourceforge.net/git/gitweb-index.cgi}{http://vym.git.sourceforge.net/git/gitweb-index.cgi}
+\end{center}
+
+\subsubsection{The Qt toolkit}
+Qt is C++ toolkit for multiplatform GUI and application development. It
+provides single-source portability across MS~Windows, Mac~OS~X, Linux
+and all major commercial Unix variants. Qt is also available for
+embedded devices. Qt is a product of the Qt Company. For more information see
+\begin{center} 
+    \href{https://www.qt.io}{https://www.qt.io} 
+\end{center}
+
+
+
+\subsubsection{Compiling \vym }
+Make sure you have installed your Qt environment properly, see the Qt
+documentation for details. You need to have the Qt command {\tt qmake}
+in your {\tt PATH}-environment, then run
+\begin{code}
+\$ qmake
+$ make  
+$ make install
+\end{code}
+The last command {\tt make install} needs root-permissions. Of course it
+may be omitted, if you just want to test \vym. For testing you should
+also use the "-l" (local) option on startup (see \ref{options}).
+
+%\subsubsection*{Compiling \vym on Macs}
+%FIXME-3
+
+\subsection{\vym file format} \label{fileformat}
+\vym maps usually have the suffix "{\tt .vym}" and represent a
+compressed archive of data. If you want to have a closer look into the
+data structure map called "mapname.vym", just edit the XML data 
+by using the {\tt vivym} script or by uncompressing manually by calling
+\begin{code}
+\$ unzip mapname.vym
+\end{code}
+This will create directories named {\tt images} and {\tt flags} in your
+current directory and also the map itself, usually named {\tt
+mapname.xml}.  The XML structure of \vym is pretty self explaining, just
+have a look at {\tt mapname.xml}.
+
+This XML file can be loaded directly into \vym, it does not have to be
+compressed. If you want to compress all the data yourself, use
+\begin{code}
+\$ zip -r mapname.vym .
+\end{code}
+to compress all data in your current directory.
+
+\subsection{New features}
+There are lots of features which might find their way into \vym.
+Together with \vym you should have received a directory with several
+example maps. You find them by clicking Help \ra Open~vym~example~maps.
+There you will find the map {\tt vym-projectplan.vym}. It lists quite a
+lot of things to be done in future. If you have more ideas, contact the
+development team at {\tt vym-devel@lists.sourceforge.net}.
+
+
+\subsection{New languages support}
+In order to add a new language to \vym you need the sources (see
+\ref{getsources}) and an installation of Trolltechs QT. A part of QT are
+the development tools, from those tools especially the translation tool
+"Linguist" is needed. 
+
+In some Linux distributions the development tools are in an extra
+package, e.g. on SUSE LINUX you should have installed:
+\begin{code}
+libqt4-devel.rpm
+libqt4-devel-doc.rpm
+libqt4-devel-tools.rpm
+\end{code}
+If you don't have QT in your system, you can get it from 
+    \href{http://www.qt.nokia.com}{http://www.qt.nokia.com} Once you
+    are able to compile vym yourself, you can translate the text in vym
+    itself by performing the following steps:
+\begin{itemize}
+    \item Let's assume now your encoding is "NEW" instead of for example
+    "de" for german or "en" for english
+    
+    \item Copy the file {\tt lang/vym\_en.ts} to l{\tt ang/vym\_NEW.ts}
+    (The code itself contains the english version.)
+        
+    \item Add {\tt lang/vym\_NEW.ts} to the TRANSLATIONS section of
+    vym.pro
+
+    \item Run Linguist on {\tt vym\_NEW.ts} and do the translation
+
+    \item Run {\tt lrelease} to create {\tt vym\_NEW.qm}
+
+    \item Do a make install to install the new vym and check your
+    translation
+\end{itemize}
+
+If you feel brave, you can also translate the manual. It is written in
+LaTeX, you just have to change the file tex/vym.tex. (Linguist and Qt
+are not needed, but it is useful to know how to work with LaTeX and esp.
+pdflatex to create the PDF.) 
+
+Please mail me every translation you have done. I can also give you a
+developer access to the project, if you want to provide translations
+regulary.  
+
+\subsection{New export/import filters}
+\vym supports various kinds of filters. Data can be written directly,
+inserted into templates or it can be written as XML data and then
+processed by XSL transformations. 
+
+Most of the import/export functionality is available in the classes
+ImportBase and ExportBase and subclasses. All of them can be found in
+{\tt imports.h} and {\tt exports.h}.
+
+\subsubsection*{Direct import/export}
+An example for a direct export is the XML export. This method touches
+the implementation of nearly every object of \vym, so whenever possible
+you should better use a XSL transformation instead.
+
+If you still want to know how it is done, start looking at 
+{\tt MapEditor::saveToDir} in {\tt mapeditor.cpp}.
+
+\subsubsection*{Templates}
+Templates have been introduced to export to opendoc format used e.g. by
+Open~Office. While I read the spec ($>$ 500 pages) about the format\footnote{
+\href{http://www.oasis-open.org/}{http://www.oasis-open.org/}}\ 
+I had the feeling that I did not want to write the export from scratch. 
+It would be too complex to adapt the styles to your own wishes, e.g. the
+layout.
+
+Instead I analyzed existing Open~Office documents. I found out that
+there are lots of redundant bits of information in a standard
+presentation, for example each list item is contained in its own list.
+In the end I came up with the default presentation style, which still
+could be simplified, just in case you have free time\ldots
+
+The existing templates are still work in progress, before you spend too
+much time developing your own style, please contact me.  Basically the
+following steps are needed to build your own style:
+\begin{enumerate}
+    \item Create an example in Open Office. Use a title, authors name,
+    page heading etc.\ which you can easily grep for in the output file.
+    
+    \item Unzip  the Open Office document into a directory.
+
+    \item The main file is called {\tt content.xml}. All data is in one
+    single line. You can split the XML tags using the script {\tt
+    scripts/niceXML}, which is part of the \vym distribution.
+
+    \item Copy the output of {\tt niceXML} to {\tt
+    content-template.xml}.
+
+    \item Looking closer you will find lots of unused definitions, for
+    example of styles. You can delete or simply ignore them.
+
+    \item Try to find your title, authors name. \vym will replace the
+    following strings while exporting:
+    \begin{center}
+    \begin{tabular}{lp{4cm}}
+        {\tt <!-- INSERT TITLE -->}     & title of map \\
+        {\tt <!-- INSERT AUTHOR-->  }   & author \\
+        {\tt <!-- INSERT COMMENT -->}   & comment \\
+        {\tt <!-- INSERT PAGES-->}      & content of map \\
+    \end{tabular}
+    \end{center}
+    The content itself is generated in a similar way by inserting lists
+    into {\tt page-template}. Here the following substitutions are made:
+    \begin{center}
+    \begin{tabular}{lp{7cm}}
+        {\tt <!-- INSERT PAGE HEADING-->}       & heading of a page
+        (mainbranch or child of mainbranch, depending on the use of
+        sections) \\
+        {\tt <!-- INSERT LIST -->   }   & all children of the branch above \\
+    \end{tabular}
+    \end{center}
+\end{enumerate}
+Currently images are exported and notes just will appear as text
+without formatting and colours.
+
+
+\end{appendix}
+\end{document}
+
+%TODO
+%\subsubsection{Keyboard shortcuts}
+%Where does vym save its settings? -> ~/.qt/vymrc
+
+
+% INDEX
+% mapeditor
+% noteditor
+% headingeditor
+% findwidget
+% dockable
+% branch
+% mapcenter
+% heading
+% flag
+% orientation 
+% zoom
+% Toolbar
+% Find
+% statusbar
+% link
+% mainbranch
+% subtree
+% reorder
+% scroll
+% fold
+% vymlink
+% xlink
+% modMode
+% context menu
+% Mac OS X
+
+\end{document}
diff --git a/tex/vym_es.tex b/tex/vym_es.tex
new file mode 100644 (file)
index 0000000..5ef57de
--- /dev/null
@@ -0,0 +1,868 @@
+\documentclass{article}
+\usepackage{a4}
+\usepackage[latin1]{inputenc}
+\usepackage{verbatim}
+\usepackage{hyperref}
+\usepackage{graphicx}
+\usepackage{longtable}
+
+
+%\input{udmath}
+
+
+\hypersetup{bookmarks, bookmarksopen,
+  pdftitle={VYM - Una herramiento para pensamiento visual },
+  pdfauthor={Uwe Drechsel},    
+  pdfsubject={map},
+  pdfkeywords={map, tool},
+  pdfpagemode={UseOutlines},                                 
+  bookmarksopenlevel={1},   
+  colorlinks={true},     
+  linkcolor={blue},
+  urlcolor={green},
+  citecolor={red}} 
+
+
+\newcommand{\vym}{{\sc vym }}
+\newcommand{\ra}{$\longrightarrow$}
+\newcommand{\la}{$\longleftarrow$}
+\newcommand{\ua}{$\uparrow$}
+\newcommand{\da}{$\downarrow$}
+\newcommand{\key}[1]{[#1]}
+
+\begin{document}
+\title{
+    \includegraphics[width=8cm]{images/vym-logo-new.png}
+    \\
+VYM \\ -- \\View Your Mind\\ {\small Versi\'on 1.8.0}}
+\author{\textcopyright Uwe Drechsel  }
+
+
+\maketitle
+
+\newpage
+
+\tableofcontents
+
+\newpage
+\section{Creditos}
+\subsection{Autor}
+Uwe Drechsel
+\subsection{Traducci\'on}
+Traducci\'on a cargo del proyecto ACLibre (Academia y Conocimiento Libre)
+
+P\'agina web: 
+        \href{http://ieee.udistrital.edu.co/aclibre}{http://ieee.udistrital.edu.co/aclibre}
+
+Correo: 
+        \href{mailto:aclibre@gmail.com}{aclibre@gmail.com}
+\subsection{Participantes}
+\begin{center}
+\begin{tabular}{|p{7cm}|p{5.5cm}|} \hline
+    Encargado & Actividad \\ \hline
+    \begin{itemize}
+       \item Vanessa Carolina Guti\'errez Sanchez
+       \item Erika Tatiana Luque Melo
+       \item Jeffrey Steve Borb\'on Sanabria
+       \item John Edisson Ortiz Rom\'an
+    \end{itemize} &
+    \begin{itemize}
+        \item Traducci\'onl
+        \item Revisi\'on y correcciones varias
+        \item Estructuraci\'on y exporte
+        \item Revisi\'on y correcciones varias
+    \end{itemize}     \\ \hline
+\end{tabular}   
+\end{center}
+
+\section{Introducci\'on}
+\subsection{?`Qu\'e es un mapa \vym?}
+Un mapa \vym (en pocas palabras mapa) es una estructura con forma de \'arbol:
+\begin{center}
+    \includegraphics[width=12cm]{images/example1_es.png}
+\end{center}
+Estos mapas pueden ser dibujados a mano o en un portafolio y ayudan a estructurar ideas. Mientras que una estructura en forma de \'arbol, como las de arriba, puede ser dibujada a mano, \vym ofrece gran variedad de opciones para trabajar con estos mapas. \vym no es otro software de dibujo, sino una herramienta para guardar y modificar informaci\'on de una manera intuitiva. Por ejemplo, puede reordenar partes del mapa con solo presionar una tecla o agregar informaci\'on, como un correo electr\'onico completo, con solo hacer un click.
+
+Una vez que ha finalizado en recoger y organizar sus ideas, puede f\'acilmente generar por ejemplo, una presentaci\'on en OpenOffice basada en un mapa.
+
+\subsection{?`Por qu\'e debo usar mapas? Tiempo, Espacio y su Cerebro?}
+\subsubsection*{Espacio}
+Un mapa puede concentrar contenido muy complejo en un espacio peque\~no como por ejemplo un pedazo de papel. Los mapas ayudan a utilizar los dos lados del cerebro: tanto el l\'ogico como el creativo (mediante el uso de im\'agenes, colores y palabras claves en el mapa). Esta es una t\'ecnica para organizar la manera en que piensa: Puede ayudarlo a trav\'es del desarrollo, clasificaci\'on y memorizaci\'on de sus ideas.
+
+\subsubsection*{Tiempo}
+Como solo utiliza palabras claves y dibujos, es mucho mas r\'apido que las tradicionales notas. Su cerebro memoriza las cosas asoci\'andolas con otras - un mapa hace uso de esas conexiones y estimula nuevas asociaciones.
+
+
+\subsubsection*{Su Cerebro}
+En 1960 el Prof. Roger Sperry descubri\'o que los hemisferios del cerebro humano realizan diferentes tareas (por supuesto que ambos pueden realizar b\'asicamente lo mismo):
+\begin{center}
+\begin{tabular}{|p{5.5cm}|p{5.5cm}|} \hline
+    Lado izquierdo & Lado derecho \\ \hline
+    \begin{itemize}
+       \item Dialogo y Escritura
+       \item N\'umeros
+       \item Razonamiento L\'ogico
+       \item An\'alisis y Detalles
+       \item Ciencia
+       \item Razonamiento Lineal
+       \item Concepto del Tiempo
+    \end{itemize} &
+    \begin{itemize}
+        \item Lenguaje Corporal
+        \item Razonamiento visual, so\~nar despierto.
+        \item Intuici\'on y Emociones.
+        \item Perspectiva de las cosas.
+        \item Creatividad
+        \item Arte, M\'usica, Baile
+        \item Razonamiento no-lineal, conectando cosas
+        \item Ubicaci\'on en el espacio
+    \end{itemize}     \\ \hline
+\end{tabular}   
+\end{center}
+En nuestra sociedad orientada a la ciencia hemos aprendido a depender principalmente del lado izquierdo del cerebro, del "racional". En otras culturas, especialmente los nativo americanos y otras culturas antiguas, el lado derecho es mucho mas importante. Los mapas son solo una forma de estimular ese otro lado y hacer uso de los recursos adicionales que todos tenemos.
+
+
+\subsection{?`D\'onde puedo utilizar un mapa?}
+Aqu\'i hay algunos ejemplos de como puede utilizar los mapas:
+\begin{itemize}
+    \item Para preparar art\'iculos, ensayos, libros, charlas, \ldots
+    \item Para organizar informaci\'on compleja
+    \item Para memorizar hechos, personas, vocabulario, \ldots
+    \item Para ordenar correos electr\'onicos, archivos y marcadores en su computador
+    \item Para moderar conferencias.
+\end{itemize}
+
+\subsection{Que no debe hacer con un mapa...}
+Un mapa dibujado por alguien muestra la forma en que su autor piensa. No existe lo correcto o incorrecto en la forma en que es dibujado, as\'i que no existe forma de criticarlo. "Es, lo que es" ({\sc F.~Lehmann}).
+
+\subsection{Recursos de Internet} 
+Un buen punto de partida para conocer mas acerca de los mapas en general es la Wikipedia:
+\begin{itemize}
+    \item Ingl\'es: 
+        \href{http://en.wikipedia.org/wiki/Mind_map}{http://en.wikipedia.org/wiki/Mind\_map}
+    \item Alem\'an: 
+        \href{http://de.wikipedia.org/wiki/Mindmap}{http://de.wikipedia.org/wiki/Mindmap}
+\end{itemize}
+
+
+
+
+\section{Concepto de \vym}
+\subsection{Ventanas: Editor de mapas (mapeditor) y Editor de notas (noteeditor)}
+\vym utiliza 2 ventanas: Un editor para el mapa y otro para las notas que son parte del mapa. Las llamaremos  {\em mapeditor} y {\em noteeditor}: 
+\begin{center}
+    \includegraphics[width=8cm]{images/windows_es.png}
+\end{center}
+Usualmente trabajara en el {\em Editor de mapas} para agregar, mover y reordenar las ramas. Las diferentes maneras de realizar esto se explicaran en \ref{mapeditor}. Puede guardar informaci\'on adicional en una {\em rama}, por ejemplo el contenido de un correo electr\'onico: Simplemente escriba o copie y pegue el correo en el {\em Editor de notas}. El trabajo con notas es explicado en \ref{noteeditor}.
+
+\subsection{Barras del Men\'u y Men\'u desplegables}
+En el tope de cada ventana encontrar\'a una barra de men\'u. Las opciones que all\'i se encuentran son similares a aquellas de otras aplicaciones. Note que muchas de la opciones (e incluso muchas m\'as) est\'an disponibles en los men\'u desplegables. Los cuales aparecen si hace un click derecho sobre un objeto en el mapa (en Mac OS X Comando-Click).
+
+\subsection{Barra de Herramientas}
+La barra de herramientas en la ventana principal ofrece r\'apido acceso a muchas funciones y adem\'as permite visualizar el estado de un objeto. Por ejemplo una parte del mapa puede ser ocultada cuando el mapa se exporta a una presentaci\'on de Open Office. Para indicar esto en el mapa, la rama tendr\'a un peque\~no s\'imbolo en forma de nube, el cual tambi\'en puede ser activado en la barra de herramientas.
+
+Observe que puede reposicionar todas las barras de herramientas con solo arrastrarla. Por ejemplo puede mover la barra de herramientas con las banderas desde su posici\'on horizontal en la parte de arriba del Editor de mapas hasta una posici\'on vertical al lado derecho de la ventana. Incluso puede extraerlas y separarlas de las ventanas. O insertarla de nuevo en su posici\'on original.
+
+\subsection{Mapas}
+El mapa siempre tiene un {\em centro}. Este centro posee ramas como el tronco de un \'arbol. Cada {\em rama} a su vez albergar\'a otras {\em ramas}.
+\begin{center}
+    \includegraphics[width=10cm]{images/branches_es.png}
+\end{center}
+Llamaremos a las ramas conectadas directamente al centro del mapa {\em
+ramas principales}, ya que determinan la posici\'on de sus ramas hijas.
+
+El centro del mapa y todas las ramas tienen un {\em encabezado}. Este texto es el que se ve en el Editor de mapas. Por lo general debe ser una o pocas palabras, para tener un seguimiento mas sencillo del mapa.
+
+
+En la barra de herramientas sobre el editor de mapas pueden verse varios s\'imbolos.
+\begin{center}
+    \includegraphics[width=8cm]{images/default-flags.png}
+\end{center}
+Estos son llamados {\em banderas} y pueden ser utilizadas para marcar en las ramas del mapa, por ejemplo, si algo es importante o cuestionable. Tambi\'en hay mas banderas configuradas autom\'aticamente por el \vym para mostrar informaci\'on adicional, por ejemplo cuando a existe para una rama en particular.
+
+Por defecto algunas de estas banderas est\'an configuradas exclusivamente, por ejemplo cuando el pulgar hacia arriba esta seleccionado el pulgar hacia abajo no lo esta y vice versa. Puede modificar esta conducta por defecto en el men\' u de configuraciones.
+
+\section{Editor de Mapas} \label {mapeditor}
+\subsection{Abrir un mapa nuevo}
+Luego de iniciar el \vym, 2 ventanas se abrir\'an: el Editor de mapas y el Editor de notas. Por lo general trabajara en ambas ventanas, pero por los momentos nos detendremos en el Editor de mapas.
+
+Seleccione el centro del mapa "Nuevo mapa" en el medio del editor haciendo click izquierdo con el rat\'on. Cambiara a amarillo para mostrar que ha sido seleccionado. Existen varias formas de agregar una nueva rama al centro:
+\begin{itemize}
+    \item Utilizando el rat\'on: Abra el men\'u desplegable haciendo click con el bot\'on derecho del rat\'on (CTRL-Click en Mac) sobre el centro del mapa y escoge la opci\'on Adicionar \ra Agregar rama como hija. 
+    \item Presione \key{Ins} o \key{A}
+\end{itemize}
+Una rama nueva aparecer\'a y podr\'a escribir el encabezado de esa rama. Para finalizar presione \key{Enter}.
+
+A veces es \'util agregar una rama por encima o debajo de la actual, para ello utilice \key{Ins} junto a \key{Shift} o \key{Ctrl}. Tambi\'en es posible agregar una rama de manera que la selecci\'on actual se convierta en hija de la nueva rama, que seria como insertarla {\em antes} de lo seleccionado. Esto puede realizarse utilizando el men\'u desplegable.
+
+\subsection{Navegando a trav\'es del mapa}
+\subsubsection*{Seleccionar ramas}
+
+Para seleccionar las ramas puede utilizar el bot\'on izquierdo del rat\'on o las teclas con flechas. Dependiendo de la {\em orientaci\'on} de la rama pulse \key{\la} o \key{\ra} para acercarse o alejarse del centro del mapa. Dentro de un grupo de ramas, que reciben el nombre de sub-\'arbol, puede utilizar \key{\ua} o \key{\da} para ir hacia arriba o abajo. Tambi\'en puede utilizar \key{Pos1} y \key{End} para seleccionar la primera o la ultima rama.
+
+\subsubsection*{Zoom}
+Mientras agrega mas y mas ramas el mapa podr\'ia superar en tama\~no a la ventana del Editor de mapas. Puede utilizar las barras de desplazamiento a la derecha y en la parte de abajo de la ventana del Editor para arrastrarlo, pero es mas f\'acil hacerlo utilizando el bot\'on izquierdo del rat\'on: Haga click sobre el espacio en blanco entre las ramas. El puntero del rat\'on cambiara su forma de flecha al de una mano, ahora mueva la parte visible del mapa para mostrar la parte deseada.
+
+Si selecciona las ramas utilizando las flechas en el teclado, el mapa se arrastrara asegur\'andose de que la rama seleccionada este siempre visible.
+
+Para trabajar con mapas muy grandes, la funci\'on del {\em zoom} es muy \'util. Puede usar:
+
+\begin{itemize}
+    \item Desde el men\'u Vista \ra Acercar
+    \item Los botones de la barra de herramientas 
+        \begin{center}
+            \includegraphics[width=3cm]{images/zoom-buttons.png}
+        \end{center}    
+\end{itemize}   
+
+La lupa con la cruz devuelve el zoom a su tama\~no original.
+
+
+\subsubsection*{Funci\'on de B\'usqueda} \label{findwindow}
+Con mapas muy grandes existe la necesidad de contar con una funci\'on de b\'usqueda. Seleccione Editar \ra Buscar para abrir la ventana de b\'usqueda:
+\begin{center}
+    \includegraphics[width=6cm]{images/find-window_es.png}
+\end{center}
+El texto que introduzca aqu\'i sera buscado en todos los encabezados y en las notas. Cada vez que presione el bot\'on "Buscar" pasara a la siguiente coincidencia y sera seleccionada autom\'aticamente. Si la b\'usqueda fracasa aparecer\'a el siguiente mensaje "No matches found for <palabra>" o unos pocos segundos en la {\em barra de estado} en la parte de abajo del Editor de mapas. 
+
+\subsubsection*{Mantener la perspectiva --- arrastrar una parte del mapa}
+Un sub-\'arbol muy grande en un mapa, por ejemplo una rama con cientos de hijos, dificulta mantener la perspectiva de todo el mapa. Puede esconder todos los hijos de una rama acopl\'andolos a ella - esta funci\'on tambi\'en es llamada doblar {\em folding}. Imagine todo el sub-\'arbol dibujado sobre un gran peri\'odico. Puede acoplar o doblar el peri\'odico en un rollo peque\~no, dejando visible solo el encabezado.
+
+Para acoplar o desacoplar una rama y sus hijos, presione:
+\begin{itemize}
+    \item tecla \key{Scroll} o \key{S}
+    \item El bot\'on del centro del rat\'on o
+    \item Selecci\'on el peque\~no rollo en la barra de herramientas.
+\end{itemize}
+Si selecciona partes de una rama acoplada, por ejemplo utilizando la funci\'on de b\'usqueda o usando las flechas en el teclado, se desacoplara temporalmente. Para indicar esto, aparecer\'a un rollo con un reloj de arena. Si la parte temporalmente desacoplada ya no es necesaria, se ocultada de nuevo autom\'aticamente. Tambi\'en es posible desacoplar todas las ramas utilizando la opci\'on "Editar \ra Desacoplar todas las ramas acopladas". 
+
+Tambi\'en puede ocultar partes del mapa cuando lo exporta, por ejemplo a una p\'agina web o a una presentaci\'on, vea \ref{hideexport} para mas detalles.
+
+
+
+\subsection{Modificar y mover ramas}
+\subsubsection*{Modificar el encabezado}
+Puede editar el encabezado seleccionando la rama y luego:
+\begin{itemize}
+    \item presione \key{Enter}
+    \item haga doble click izquierdo con el rat\'on.
+\end{itemize}
+Luego escriba el nuevo encabezado (o edite el viejo) y presione \key{Enter}.
+
+\subsubsection*{Mover una rama}
+La manera mas f\'acil de hacerlo es presionando la rama con el bot\'on izquierdo del rat\'on y arrastrarla hacia el lugar deseado. Dependiendo de la rama esta:
+\begin{itemize}
+    \item Se mover\'a hasta su destino o
+    \item Se vincular\'a con un nuevo padre (el centro del mapa u otra rama)
+\end{itemize}
+Si arrastra la rama sobre otra o sobre el centro del mapa, notara que el link que la conectaba con su antiguo padre cambiara apuntando al nuevo que esta ahora debajo del puntero del rat\'on. Si suelta el bot\'on ahora, el link se actualizara.
+
+Si suelta el bot\'on en el medio de la nada, el resultado depender\'a del tipo de rama:
+\begin{itemize}
+    \item Una rama principal sera conectada directamente al centro de mapa y se quedara en su nueva posici\'on.
+    \item Una rama cualquiera saltara de nuevo a su posici\'on origina.
+\end{itemize}
+De esta manera puede f\'acilmente reorganizar como est\'an extendidas las ramas principales para evitar que cubran los sub-arboles. Tambi\'en existe otra forma de mover las ramas, especialmente si quiere {\em reorganizar} un sub-\'arbol: Puede mover una rama hacia arriba o abajo en un sub-\'arbol:
+
+\begin{itemize}
+    \item Presionando \key{\ua} y \key {\da}
+    \item Seleccionando Editar \ra Subir/Bajar
+    \item Haciendo click en los botones de la barra de herramientas:
+        \begin{center}
+            \includegraphics[width=1.5cm]{images/move-buttons.png}
+        \end{center}    
+\end{itemize}
+%tipp
+Todav\'ia existe una forma mas de mover las ramas: Si presiona \key{Shift} o
+\key{Ctrl} mientras mueve el rat\'on, la rama de agregara por encima o debajo de aquella sobre la cual se encuentre el puntero. Esto tambi\'en ayuda a reorganizar un mapa.
+
+\subsection{El lado izquierdo de su cerebro - colores e im\'agenes}
+\subsubsection*{Cambiar el color de un encabezado}
+Tambi\'en puede utilizar colores para agregar mas informaci\'on a un mapa, por ejemplo utilice rojo, verde y otros colores para dar prioridad a tareas.  De nuevo puede:
+\begin{itemize}
+    \item Utilizar el men\'u y escoger por ejemplo Format \ra Configurar Color
+    \item Utilizar la barra de herramientas
+        \begin{center}
+            \includegraphics[width=3cm]{images/color-buttons.png}
+        \end{center}    
+\end{itemize}
+El primer bot\'on (de color negro en la imagen de arriba) muestra en color actual. Haciendo click sobre el, le permitir\'a escoger otro color. Tambi\'en puede escoger otro color seleccionando la rama con el color deseado y utilizando el bot\'on de configurar color. Los botones que muestran unas paletas de color, colorean la rama seleccionada con el color actual. Mientras que la primera colorea el encabezado de la selecci\'on, la otra tambi\'en colorea los hijos de la rama seleccionada.
+
+%tipp
+Una funci\'on \'util es la de "copiar el color" utilizando el rat\'on: Seleccione la rama que desea colorear, luego presione \key{Ctrl} y simult\'aneamente haga click izquierdo con el rat\'on sobre otra rama para copiar el color a la primera. Los hijos de esa rama tambi\'en obtendr\'ian el nuevo color, si solo desea colorear lo seleccionado adicionalmente presione \key{Shift}.
+
+\subsubsection*{Uso de Banderas}
+\vym provee varias banderas. Las puede ver en la parte superior de de la ventana del Editor de mapas. (Nota: Como todas las barras de herramientas puede, moverla hacia el lado izquierdo o derecho e incluso extraerla. Solo agarre la parte punteada a la izquierda de la barra de herramientas con el bot\'on izquierdo del rat\'on.)
+\begin{center}
+    \includegraphics[width=8cm]{images/default-flags.png}
+\end{center}
+Si tiene una rama seleccionada, puede colocar cualquier numero de banderas con solo hacer click sobre ellas en la barra de herramientas. Los botones en la barra cambian su estado y siempre reflejan el conjunto de banderas en la rama seleccionada.
+
+Actualmente \vym utiliza 2 tipos de banderas: {\em Banderas del Sistema} y {\em Banderas Comunes}. Las bandera comunes son aquellas que aparecen en la barra de herramientas. Las banderas del sistemas son configuradas por el \vym para indicar por ejemplo que hay informaci\'on adicional en una nota (mas acerca de esto en \ref{noteeditor}). Las ultimas versiones de \vym puede que tengan otros tipos de banderas, que pueden ser editadas por el usuario.
+
+
+\subsubsection*{Im\'agenes}
+La forma mas f\'acil de agregar una imagen a una rama es arrastr\'andola, por ejemplo desde un navegador al Editor de mapas mientras la rama se encuentra seleccionada.
+
+Tambi\'en puede agregar una imagen a una rama utilizando el men\'u desplegable, seleccione la opci\'on Adicionar \ra Agregar Imagen. Una ventana de di\'alogo le permitir\'a escoger la imagen que se va a cargar\footnote{Tipo de im\'agenes soportadas: PNG, BMP, XBM, XPM y PNM. Puede que tambi\'en soporte JPEG, MNG y GIF, si es configurado durante la compilaci\'on (como se hace cuando \vym es parte de SUSE LINUX).}.
+Mientras seleccione una imagen en la ventana de di\'alogo, podr\'a tener una vista previa de ella. Tambi\'en es posible seleccionar m\'ultiples im\'agenes.
+
+Puede posicionar la imagen donde quiera, solo arrastrela con el bot\'on izquierdo del rat\'on. Para vincularla a otra rama, presione \key{Shift} mientras la mueve. Para borrarla presione \key{Del}.   
+
+Si hace click con el bot\'on derecho sobre una imagen, un men\'u desplegable se abrir\'a el cual le permitir\'a escoger una de varios formatos para im\'agenes. Luego se abrir\'a una ventana de di\'alogo para guardar la imagen. Pista: Esto es utilizado para "exportar" la imagen, de todas formas sera guardado en el mismo mapa!. Tambi\'en pude cortar y copiar la imagen, pero no es posible agregar objetos a una imagen\footnote{
+    Las im\'agenes son consideradas como "caracter\'isticas especiales". Trabajar con el mapa seria mas complejo si por ejemplo las im\'agenes estuvieran vinculadas a otras.}
+    
+La opci\'on \lq{\bf Exportar} \rq controla la salida de exportaciones por ejemplo a HTML: Si esta no esta configurada, la imagen no aparecer\'a en la parte del {\em texto} de salida. Esto es \'util cuando se manejan grandes im\'agenes o im\'agenes utilizadas como bordes, por ejemplo el famoso s\'imbolo en forma de nube en alguna parte del mapa. Esos no deben aparecer en medio del texto.
+
+Por los momentos el soporte de im\'agenes es preliminar: Las im\'agenes ser\'an guardadas junto al resto de la informaci\'on del mapa en el archivo {\tt .vym}.
+Versiones futuras incluir\'an mayor funcionalidad como redimensionar el tama\~no, cambiar los valores z (colocarla en el fondo), etc.
+
+\subsubsection*{Bordes}
+Un borde puede sera agregado a una rama haciendo click con el bot\'on derecho del rat\'on. Un men\'u desplegable aparecer\'a, en donde podr\'a seleccionarlo. Por el momento solo puede escoger entre un rect\'angulo y "Sin Borde", sin embargo puede utilizar im\'agenes como bordes. De un vistazo al mapa de demostraci\'on {\tt todo.vym}, donde el centro del mapa es una nube. Puede utilizar un programa de dibujo como el {\tt gimp} para crear im\'agenes, preferiblemente con un canal de transparencia, de esta forma podr\'a dise\~nar bordes que no utilizan lineas rectangulares, como la nube.
+
+\subsection{Dise\~no del Fondo}
+El dise\~no del fondo del mapa y los links que conectan a distintas partes del mapa pueden ser modificados:
+
+\begin{itemize}
+    \item Seleccionando la opci\'on Formato desde el men\'u.
+    \item Haciendo click derecho en el espacio entre las ramas, lo cual abrir\'a un men\'u desplegable.
+\end{itemize}
+
+\subsubsection*{Color de Fondo}
+El color es configurado (y adem\'as mostrado) en Configurar color de fondo.
+
+\subsubsection*{Color del Link}
+Los links que conectan  a las ramas tambi\'en pueden ser coloreados en cualquiera de las siguientes formas:
+\begin{itemize}
+    \item Utilice el color del encabezado donde se encuentra la rama
+    \item Utilice {\em un} color para todos los links. El color por defecto es azul.
+\end{itemize}
+El ultimo puede ser configurado con Set Link Color. Seleccione o no la opci\'on "Usar color para encabezado de enlace" para escoger uno de los 2 dise\~nos para su mapa.
+
+\subsubsection*{Estilo del Link}
+\vym Ofrece cuatro estilos diferentes para la apariencia de los links:
+\begin{itemize}
+    \item Linea
+    \item Par\'abola
+    \item Linea Gruesa
+    \item Par\'abola Gruesa
+    
+\end{itemize}
+Los estilos "grueso" solo se aplican a los links que comienzan en el centro del mapa, el resto del mapa sera dibujado normal.
+
+
+\subsection{Enlaces hacia otros documentos y p\'aginas web}
+\vym soporta dos tipos de enlaces:
+\begin{itemize}
+    \item Documentos, los cuales se abrir\'an en un navegador externo
+    \item Mapa \vym, que se abrir\'a en el mismo \vym.
+\end{itemize}
+Adicionalmente a los enlaces externos tambi\'en hay enlaces internos, que lo llevan de una rama a otra en el mapa. Esos son llamados {\em XLinks} y son explicados en la secci\'on ~\ref{xlinks}..
+
+\subsubsection*{Webbrowser}
+Navegadores modernos como el {\tt konqueror} pueden mostrar distintos tipos de archivos, tanto locales como de la internet. Para introducir la URL de cualquier documento, haga click derecho sobre la rama y seleccione "Editar URL". Introduzca la direcci\'on del documento (o copie y pegue desde el navegador). Los siguientes son ejemplos de direcciones validas:
+\begin{verbatim}
+    http://www.insilmaril.de/vym/index.html
+    file:/usr/share/doc/packages/vym/doc/vym.pdf
+\end{verbatim}
+Si se ha introducido una URL, un peque\~no globo aparecer\'a en la rama. Haciendo click en el globo que esta en la barra de herramientas o en el men\'u desplegable, un navegador \footnote{
+    El navegador puede ser cambiado en el men\'u de configuraci\'on.}
+externo se iniciara.
+\begin{center}
+    \includegraphics[width=0.5cm]{images/flag-url.png}
+\end{center}
+Para m\'as informaci\'on sobre el trabajo con marcadores y navegadores web observe la secci\'on \ref{bookmarks}.
+
+
+\subsubsection*{Mapa \vym}
+Para hacer un enlace a otro mapa haga click derecho sobre la rama y seleccione "Edit \ra Enter \vym Link". Una ventana de di\'alogo se abrir\'a donde puede escoger el mapa. Una rama con un enlace es se\~nalada con
+\begin{center}
+    \includegraphics[width=0.5cm]{images/flag-vymlink.png}
+\end{center}
+Haciendo click a esta bandera en la barra de herramientas  o en el men\'u desplegable de la rama, abrir\'a el mapa en otra pesta\~na (vea la secci\'on \ref{tabs} para trabajar con m\'ultiples mapas). Para borrar un enlace, solo presione el bot\'on "Cancelar".
+
+Nota: Internamente \vym trabaja con direcciones absolutas para evitar abrir varias ventanas que contengan el mismo mapa. Cuando se guarda un mapa, la direcci\'on se convierte a una relativa (por ejemplo{\tt /home/user/vym.map} se convertir\'ia en {\tt ./vym.map}). Esto facilita el uso de m\'ultiples mapas en distintas computadoras o para exportarlos a HTML en un futuro.
+
+\subsection{M\'ultiples mapas} \label{tabs}
+Puede trabajar en varios mapas al mismo tiempo. Cada mapa nuevo es abierto en una nueva {\em pesta\~na}. Las pesta\~nas disponibles se encuentran en la parte superior del editor de mapas. Puede utilizar las funciones de /cortar/copiar/pegar para copiar la informaci\'on de un mapa a otro.
+
+\section{Editor de notas} \label {noteeditor}
+Si desea guardar mas texto en una rama como un correo electr\'onico completo, una receta de cocina o todo el c\'odigo fuente de un software, puede utilizar el editor de notas.
+\begin{center}
+    \includegraphics[width=8cm]{images/noteeditor_es.png}
+\end{center}
+Este editor muestra el texto asociado a una rama seleccionada en el editor de mapas. Para visualizar que a lo mejor no hay texto todav\'ia, el editor de notas  muestra diferentes colores de fondo dependiendo de su estado:
+
+\subsection{Estados}
+Antes de que pueda escribir o pegar texto en el, tiene que seleccionar una rama en el editor de mapas.  F\'ijese que el color de fondo indica el estado del editor:
+\begin{itemize}
+    \item negro: no ha seleccionado ninguna rama
+    \item gris: no ha introducido texto
+    \item blanco: el texto esta disponible
+\end{itemize}   
+Para ver en el editor de mapas si una rama posee una nota con mas informaci\'on, una bandera aparecer\'a junto al encabezado de la rama. Observe la rama en la parte de abajo al lado derecho:
+\begin{center}
+    \includegraphics[width=8cm]{images/branches-flags_es.png}
+\end{center}
+
+\subsection{Importar y exportar notas}
+Las notas siempre son autom\'aticamente guardadas dentro de los archivos  de \vym. Sin embargo, a veces es bueno importarlas desde un archivo externo o escribirlas. Utilice "Archivo \ra Importar" y "Archivo \ra Exportar".
+
+\subsection{Editar e imprimir una nota}
+Editar se realiza de la misma forma que en cualquier editor de texto sencillo, incluyendo las funciones rehacer y deshacer. Puede borrar una nota completa haciendo click en la papelera. Solo se imprime la nota si hace click en el icono de la impresora.
+
+Cuando utiliza los mecanismos de copiar\&pegar del X11, el editor creara un p\'arrafo para cada linea nueva. Por lo general esto no se quiere, as\'i que puede convertir todos los p\'arrafos en una sola linea usando la funci\'on "Editar~\ra~Convertir P\'arrafos" o \key{ALT-X}..
+
+\subsection{RichText: Colores, p\'arrafos y texto con formato}
+\vym Soporta texto con formato (QT Rich Text) en el editor de notas desde la versi\'on 1.4.7. Colores y atributos del texto (por ejemplo cursiva, negrita) pueden ser seleccionados con los botones que se encuentran arriba del texto. El mismo texto es divido en p\'arrafos. Para cada p\'arrafo se puede configurar un formato (por ejemplo centrado, a la derecha). Un p\'arrafo finaliza cuando \key{Return} es introducido. Si simplemente desea comenzar una nueva linea, presione \key{CTRL-Return}.
+
+\subsection{Fuentes y como cambiarlas r\'apidamente}
+El editor de notas esta destinado para ser usado con notas simples y no como un editor de texto con todas las opciones. Debido a la cantidad de peticiones, ahora \vym soporta texto con formato en el editor de notas\footnote{
+    \\vym utiliza el formato QRichText, el cual es un subconjunto del formato provisto en HTML.}. 
+Dos fuentes por defectos son soportadas las cuales se pueden seleccionar en el men\'u de configuraci\'on. Una es una fuente de ancho definido y la otra es de ancho variable. La fuente de ancho definido es usualmente utilizada en correos electr\'onicos, c\'odigo fuente, etc. Mientras que la fuente de ancho variable es utilizada para notas sencillas, donde no se necesitan caracteres con el ancho definido. Se pueden cambiar las fuentes f\'acilmente utilizando el siguiente s\'imbolo en la barra de herramientas:
+\begin{center}
+    \includegraphics[width=0.5cm]{images/formatfixedfont.png}
+\end{center}
+En el men\'u de configuraci\'on ambas fuentes se pueden seleccionar e incluso establecer por defecto.
+
+Adicionalmente a las fuentes por defecto, cualquier fuente instalada en el sistema tambi\'en se podr\'a utilizar. Note que la fuente escogida tambi\'en sera utilizada para las exportaciones en HTML, por lo que deber\'ia usar solo fuentes que se encuentran disponibles generalmente.
+
+\subsection{B\'usqueda de texto}
+El editor de notas como tal no posee una funci\'on de b\'usqueda, utilice la que se encuentra en el editor de mapas, que adem\'as busca entre todas las notas (vea la secci\'on \ref{findwindow}).
+
+\subsection{Pegar texto en el editor de notas}
+En ocasiones pegara texto en el editor desde otra aplicaci\'on, por ejemplo un correo electr\'onico. Normalmente \vym generara un p\'arrafo por cada linea nueva. Por lo general esto es algo que usted no desea, por lo que puede escoger en el men\'u.
+
+\subsection{Acciones avanzadas}
+\subsubsection*{Editar \ra Convertir P\'arrafos:}
+Esto convierte texto seleccionado (o todo el texto sino selecciono algo) en lineas consecutivas. Esto es especialmente \'util cuando se trabaja con c\'odigo fuente.
+
+
+\subsubsection*{Editar \ra Unir L\'ineas:}
+Intenta dar formato al texto, de manera que las lineas vac\'ias sean utilizadas para limitar los p\'arrafos del texto seleccionado (o todo sino selecciono algo). Esta funci\'on es \'util para textos como correos electr\'onicos, res\'umenes de reuniones, etc.
+
+\section{Hola Mundo}
+Esta secci\'on muestra como \vym interact\'ua con otras aplicaciones. Otras aplicaciones pueden leer y escribir la informaci\'on utilizando XML (eXtensible Markup Language). \vym tambi\'en utiliza XML para guardar los mapas, vea la secci\'on \ref{fileformat}  para una descripci\'on mas detallada.
+
+As\'i que si su aplicaci\'on comprende XML, los dem\'as podr\'an escribir filtros para importar/exportar en \vym. Los voluntarios son siempre bienvenidos
+
+
+\subsection{Importar} \label{import}
+
+\subsubsection*{Marcadores KDE}
+El editor de marcadores integrado en KDE se encuentra de alguna forma limitado, as\'i que ¿porque no utilizar \vym para ordenar los marcadores? Para crear un mapa que contenga los marcadores en KDE seleccione
+\begin{itemize}
+    \item Archivo \ra Importar\ra KDE Bookmarks
+\end{itemize}
+
+\subsubsection*{Mind Manager}
+Actualmente \vym cuenta con un filtro b\'asico para convertir mapas creados por {\em Mind Manager}\footnote{
+Mind Manager es un software profesional de Mindjet. Ambos nombres son marcas registradas por Mindjet. Para mas informaci\'on visite su p\'agina web: \href{http://mindjet.de}{http://mindjet.de}} dentro de mapas \vym. Las notas e im\'agenes no son convertidas por los momentos. Puede importar archivos con
+
+\begin{itemize}
+    \item Archivo \ra Exportar \ra Open Office
+\end{itemize}
+
+
+\subsubsection*{Estructura del Directorio}
+\vym puede leer la estructura de un directorio. Esto es principalmente para probar \vym, por ejemplo puede crear f\'acilmente grandes mapas para realizar comparaciones (si, todav\'ia se puede optimizar \vym). ;-)
+
+
+\subsection{Exportar}  \label{export}
+\label{hideexport}
+Algunas veces no querr\'a exportar todo el mapa, sino solo una parte de el. Por ejemplo, puede tener informaci\'on adicional la cual mencionara en la presentaci\'on, esas partes no deben estar visibles a la audiencia. Para lograr esto puede "esconder" partes del mapa durante la exportaci\'on seleccionando la bandera de "esconder durante la exportaci\'on"
+\begin{center}
+    \includegraphics[width=0.5cm]{images/flag-hideexport.png}
+\end{center}
+Puede escoger esta bandera desde la barra de herramientas o presionando \key{H}. F\'ijese que existe una opci\'on global para el uso de esta bandera en el men\'u de configuraciones. Por defecto se encuentra habilitada.
+
+\subsubsection*{Open Office}
+Desde la versi\'on 2 se utiliza el formato de documento de Open Oficce, el cual puede ser escrito por \vym. Las opciones se encuentran limitadas, pero es posible exportar presentaciones que pueden ser abiertas en Open Office Impress. Seleccionando
+\begin{itemize}
+    \item Archivo \ra  Exportar \ra Open Office
+\end{itemize}
+Se abrir\'a una ventana de di\'alogo donde podr\'a escoger la salida y el tipo de archivo:
+\begin{center}
+    \includegraphics[width=12cm]{images/export-oo_es.png}
+\end{center}
+
+El tipo de archivo representa varias plantillas, las cuales se pueden crear con algo de trabajo a mano desde un documento existente en Open Office. Luego se inserta la estructura del mapa \vym en la plantilla. Existen algunas limitaciones por los momentos:
+\begin{itemize}
+    \item \vym no puede hacerse cargo del largo de las p\'agina, para evitar que el texto se corra mas all\'a del final de la p\'agina tendr\'a que revisarlo y probablemente editarlo en Open Office.
+    \item Las im\'agenes y banderas no se utilizan por los momentos
+    \item Las notas son escritas en textos simples sin RichText.
+\end{itemize}
+Algunas de las plantillas hacen uso de {\em secciones} por ejemplo inserta los encabezados de las ramas principales como cap\'itulos para secciones dentro de una presentaci\'on.
+Some of the templates make use of {\em sections} e.g. insert the
+headings of mainbranches as chapters for sections into the presentation.
+
+\subsubsection*{Imagen}
+\vym soportar todos los formatos de imagen que son originalmente soportadas por las herramientas de QT: BMP, JPEG, PBM, PGM, PNG, PPN, XPN y XBM. Para utilizar en sitios web y enviar im\'agenes por correo electr\'onico se recomienda PNG, el cual considera la calidad y el tama\~no de la imagen. \vym utiliza las opciones de QT por defecto para comprimir las im\'agenes.
+
+\subsubsection*{ASCII}
+    Exportar una imagen como texto es algo experimental hasta los momentos. Probablemente se podr\'a hacer luego con el uso de hojas de estilo. As\'i que el resultado puede cambiar en futuras versiones de \vym.
+
+\subsubsection*{\LaTeX}
+\vym puede generar un archivo de entrada para \LaTeX. Esto es considerado como experimental, todav\'ia no existen opciones. Seleccionado
+\begin{itemize}
+    \item   Archivo \ra Exportar \ra \LaTeX
+\end{itemize}
+    se le preguntara en una ventana de di\'alogo por el nombre del archivo de salida. Este archivo debe ser incluido en el documento \LaTeX utilizando el comando
+\begin{verbatim}
+    \include{inputfile.tex}
+\end{verbatim}
+
+\subsubsection*{Marcadores KDE}
+\vym sobreescribir\'a el archivo de marcadores de KDE e intentar\'a notificar a los konquerors el cambio del archivo v\'ia DCOP. 
+¡ \vym no crea copias de seguridad !
+\begin{itemize}
+    \item Archivo \ra Exportar \ra KDE Bookmarks
+\end{itemize}
+
+\subsubsection*{XHTML (Paginas Web)}
+
+Este es el formato que querr\'as utilizar para crear una p\'agina web. Por ejemplo observa la p\'agina oficial de \vym:
+\href{http://www.InSilmaril.de/vym}{www.InSilmaril.de/vym}
+
+Una explicaci\'on de como trabaja esto: 
+Antes de que un mapa es exportado a XHTML, sera escrito primero como XML en un directorio (ver \ref{xmlexport}). Luego el programa externo {\tt
+xsltproc} \footnote{En Linux SUSE xsltproc es instalado por defecto.}  
+sera llamado para procesar el archivo XML y genera el c\'odigo HTML. Una ventana de di\'alogo le permite escoger varias opciones:
+\begin{itemize}
+    \item {\bf Incluir una imagen:}  Si esta configurado, \vym creara un mapa de imagen en la parte superior de la salida HTML. Haciendo click sobre una rama del mapa lo llevara a la secci\'on correspondiente de la salida.
+    \item {\bf Encabezados con color:}
+    Si esta seleccionado, \vym coloreara los encabezados en el texto con los mismos colores del mapa.
+    \item {\bf Mostrar Advertencias: }
+    Si esta seleccionado, \vym preguntara primero antes de sobreescribir la informaci\'on,
+    \item {\bf Mostrar la salida:}
+    Esto resulta \'util principalmente para la depuraci\'on. Mostrara como el procesamiento del archivo XML trabaja, llamando a  {\tt xsltproc}.
+\end{itemize}
+Adem\'as las direcciones para el CSS y XSL stylesheets se pueden configurar. Por defecto en LINUX SUSE se encuentran en
+{\tt /usr/share/vym/styles}.
+
+
+ varios mapas combinados tienen que ser guardados en el mismo directorio.
+\subsubsection*{XML} \label{xmlexport}
+
+El mapa es escrito dentro de los directorios como una imagen y como XML. El directorio se selecciona en una ventana de di\'alogo. Si el directorio no esta vac\'io, se le preguntara si se arriesga a sobreescribir su contenido.
+
+Es posible exportar diferentes mapas a un mismo directorio. Cada archivo generado tendr\'a el nombre del mapa como un prefijo, por ejemplo {\tt todo.vym} se convertir\'a en {\tt todo.xml}, {\tt todo.png}, {\tt todo-image-1.png} y as\'i sucesivamente. Esto es \'util si por ejemplo para una p\'agina web.
+
+\subsubsection*{Exportar una parte del mapa}
+Seleccione la rama que desea exportar junto a sus hijos, luego en el men\'u desplegable y seleccione {\em Guardar Selecci\'on}. Esto creara un archivo con la extensi\'on {\tt .vyp}, el cual es la abreviaci\'on de \lq \vym part\rq.
+
+\section{Edici\'on Avanzada}
+
+\subsection{Como trabajar con Marcadores} \label{bookmarks}
+\subsubsection*{Abra una nueva pesta\~na en vez de una nueva ventana}
+Si usa konqueror como buscador, \vym recordar\'a el konqueror que fue abierto antes por \vym. Tambi\'en puede presionar \key{Ctrl} y de click para abrir el link en una nueva pesta\~na.
+
+\vym tambi\'en puede abrir pesta\~nas en Mozilla o Firefox usando el comando remoto\footnote{\href{http://www.mozilla.org/unix/remote.html}{http://www.mozilla.org/unix/remote.html}}
+para estos.
+
+\subsubsection*{Arrastrar y soltar}
+Si desea mantener el marcador en el mapa, seleccione una rama donde deseee agregar el marcador,
+despu\'es simplemente arrastre la URL desde su buscador hasta el mapa. Tambi\'en puede usar un encabezado existente como 
+URL: Click derecho sobre la rama y selecciones "Usar encabezado por URL".
+
+\subsubsection*{Acceso directo a la lista de marcadores de un buscador}
+Por favor observe las secciones \ref{import} y \ref{export} about
+Import and Export filters.
+
+\subsubsection*{URLs especiales}
+\vym puede tornar un encabezado existente de una rama en una URL. Actualmente
+este trabaja para ingreso de Bgus en un sistema de Bugtracking de Novell: Abra el 
+men\'u de contexto de una rama (usualmente click derecho en \'el) y seleccione
+\begin{itemize}
+    \item Crear URL con Bugzilla
+\end{itemize}
+La URL ser\'a constuida desde el n\'umero en la cabecera.
+
+\subsection{Incluir im\'agenes en uan rama} 
+La configuraci\'on por defecto de una im\'agen flotar "libremente". Estas pueden ser
+posicionadas en cualquier lugar, pero siempre terminar\'an en el mismo lugar como
+las otras partes del mapa.
+
+La soluci\'on es incluirla "dentro" de uan rama. Esto puede ser hecho v\'ia
+el men\'u de contexto de su rama padre:
+\begin{itemize}
+    \item Incluir imagen horizontalmente
+    \item Incluir imagen verticalmente
+\end{itemize}
+La imagen a\'un no est\'a posicionada relativa a su rama padre, pero el
+encabezado y borde de la rama se adaptan a la im\'agen flotante, observe a continuaci\'on:
+\begin{center}
+    \includegraphics[width=11cm]{images/includeImages_es.png}
+\end{center}
+
+\subsection{Modificadores} 
+Los modificadores son por ejemplo las teclas \key{Shift} o \key{Alt}. Mientras se presionan junto con el rat\'on, estos ocasionan que \vym utilice las acciones "modificadas". Por ejemplo puede mover las ramas con el rat\'on. Si presiona \key{Ctrl} o \key{Alt} mientras suelta la rama, esta sera agregada por encima o debajo del blanco pero no como un hijo.
+
+Sin un modificador presionado, el primer click a una rama solo la selecciona. Para crear el comportamiento de \key{Ctrl} hay varias opciones, que pueden ser seleccionadas desde la barra de herramientas:
+
+
+\begin{center}
+    \includegraphics[width=3cm]{images/modmodes.png}
+\end{center}
+Por defecto esta copiar el color de la rama donde hicimos click a la que seleccionaremos. En la barra de herramientas el modificador por defecto esta seleccionado para copiar el color de la rama.  El segundo modificador le permite f\'acilmente copiar el color de una rama entera con un solo click. El tercer modificador le permite crear {\em xLinks}, los cuales se explicaran en la siguientes secci\'on.
+
+\subsection{Esconder enlaces de objetos no seleccionados}
+A veces es \'util posicionar libremente una rama, como una rama principal o una imagen. Aunque esto no es posible (todav\'ia) para todas las ramas, puede utilizar una rama y ocultar su enlace de conexi\'on al centro del mapa. Se pude utilizar por ejemplo con leyendas o una colecci\'on de Links de \vym que apuntan a otros mapas:
+
+\begin{center}
+    \includegraphics[width=9cm]{images/hiddenlink_es.png}
+\end{center}
+
+
+\subsection{XLinks} \label{xlinks}
+Hasta ahora todo la informaci\'on en el mapa \vym se parece a la de un \'arbol. Utilizando xLinks puede enlazar una rama con otra, como amarrando una cuerda entre las dos ramas en un \'arbol real. Esto es muy \'util en mapas complejos, donde se quiera tener referencias cruzadas que no se ajusten al \'area visible en la pantalla. El siguiente ejemplo, el cual forma parte del paquete \vym, se ajusta a la pantalla, pero muestra como la informaci\'on puede estar entrelazada. En el gr\'afico hay un enlace desde una tarea (prepara una presentaci\'on) hacia informaci\'on general:
+
+\begin{center}
+    \includegraphics[width=12cm]{images/xlink_es.png}
+\end{center}
+F\'ijese que un xLink que apunta a una rama que no se encuentra visible (porque estas acoplada), se muestra como una peque\~na flecha horizontal. En la imagen de la pantalla arriba observe la rama \lq Jueves\rq\ .
+
+\subsubsection*{Crear un xLink}
+Seleccione el tipo de link en el modificador de la barra de herramientas (haciendo click o presionando \key{L}. Seleccione la rama donde el xLink comenzara. Presiones la tecla modificadora \key{Ctrl} y simult\'aneamente haga click sobre la rama donde el enlace terminara. (El enlace es dibujado antes de que suelte el bot\'on del rat\'on). Si suelta el rat\'on sobre una rama el xLink se volver\'a permanente.
+
+\subsubsection*{Modificar o borrar un xLink}
+En el men\'u desplegable de la rama seleccione la opci\'on \lq Editar xLink\rq. Un submen\'u contiene todos los xLinks de la rama (si existe alguno). Son nombrados como las ramas donde finalizan. Seleccione uno y se abrir\'a una ventana de di\'alogo, donde puede seleccionar el color, ancho o borrar el xLink.
+
+\subsubsection*{Seguir un xLink}
+En un mapa complejo \vym resulta \'util saltar al final del xLink. Puede realizar esto a trav\'es del men\'u desplegable de la rama y haciendo click en \lq Ir a xLink\rq y seleccione el xLink que desea seguir.
+
+\subsection{Agregando y removiendo ramas}
+El men\'u desplegable de una rama muestra mas formas de agregar y borrar informaci\'on por ejemplo puede borrar una rama y conservar sus hijos.  Los hijos se enlazan al padre de la rama que fue removida. Ramas parecidas pueden insertarse a mapas existentes. Para atajos en el teclado revise el men\'u desplegable.
+
+\subsection{Agregando un mapa o parte de el}
+Seleccione la rama donde desea agregar un mapa guardado ({\tt .vym}) o parte de un mapa ({\tt .vyp}), luego en el men\'u desplegable seleccione {\em Agregar \ra Importar}. Para importar puede escoger ente {\em Agregar o Reemplazar}: La informaci\'on importada se agregar\'a o reemplazar\'a la selecci\'on.
+
+\section{\vym en Mac OS X}
+\subsection{Descripci\'on}
+B\'asicamente existen 2 maneras para correr \vym en Macs:
+\subsubsection*{Edici\'on QT Mac:}
+    \vym esta disponible como una aplicaci\'on comprimida para Mac OS X. Ha sido compilada u probada en Mac OS 10.3, Pero tambi\'en debe trabajar en Tiger. Utilizando la versi\'on Mac de la librer\'ia Trolltechs QT. 
+\subsubsection*{X11}
+    \vym puede tambi\'en correr la versi\'on de Linux, pero entonces los men\'us y el manejo tambi\'en ser\'an como los de esa versi\'on de Linux, por ejemplo la barra del men\'u se vera diferente. 
+
+\subsection {Men\'u desplegable y teclas especiales}
+
+La mayor\'ia de las Mac desafortunadamente tienen un solo bot\'on para el rat\'on. Para mostrar el men\'u desplegable, el cual se abre con el bot\'on derecho del rat\'on, puede hacer click mientras presiona una tecla \key{kommand}.
+
+Especialmente en port\'atiles faltan algunas de las teclas utilizadas en los ordenadores de escritorio. La edici\'on QT-Mac de \vym tiene sus propios atajos por teclado. Para conseguir los atajos solo eche un vistazo a todas las funciones del men\'u, junto observara los atajos. Los botones de la barra de herramientas tambi\'en poseen atajos, solo coloque el puntero del rat\'on sobre el bot\'on y espere a que aparezca la peque\~na ventan de ayuda.
+
+\subsection {Visualizando enlaces externos}
+
+En Mac, \vym usa la llamada al sistema {\tt /usr/bin/open} para ver los enlaces. Mac OS determina autom\'aticamente si el enlaces es un 
+
+\begin{appendix}
+
+\section{Iniciando \vym}
+\subsection{Direcci\'on para recursos}
+\vym intentara encontrar sus recursos (im\'agenes, hojas de estilo, filtros, etc.) en las siguientes ubicaciones:
+\begin{enumerate}
+    \item Direcci\'on dada por la variable del entorno {\tt VYMHOME}.
+    \item 1.Si fue llamado por una opci\'on local (vea la secci\'on \ref{options} m\'as adelante), \vym buscara por la informaci\'on en el 
+    \item {\tt /usr/share/vym}
+    \item {\tt /usr/local/share/vym}
+\end{enumerate}
+
+\subsection{Opciones de la linea de comando.} \label{options}
+\vym tiene las siguientes opciones
+\begin{center}
+\begin{tabular}{ccp{8cm}}\\ 
+\bf Opci\'on    & \bf Comentario & \bf Descripci\'on \\ \hline
+v & versi\'on & Muestra la versi\'on de \vym \vym\\
+l & local   & Utiliza direcciones locales para hojas de estilo, traducciones, iconos, etc. \'Util para realizar pruebas\\
+h & ayuda   & Muestra ayuda\\
+q & abandonar   & Abandona inmediatamente luego de haber iniciado. \'Util para realizar comparaciones.\\
+\end{tabular}
+\end{center}
+Tambi\'en puede dar varios nombres de archivo en la linea de comando para que \vym abra varios mapas al mismo tiempo.
+\section{Contribuyendo con \vym}
+Hasta ahora he dicho que he escrito 98\% del c\'odigo yo mismo. No es sorpresa que \vym se adapte a mis necesidades. Sin embargo me gustar\'ia animar a todos los usuarios de \vym a contribuir. No solo con peticiones para mejorar opciones, sino tambi\'en con el c\'odigo, nuevos filtros para importar/exportar, traducciones, etc. En este ap\'endice tratare de mostrar lo f\'acil que es expandir las cosas que puede actualmente hacer con \vym. Espero pronto saber de ustedes!
+
+\subsection{Obteniendo ayuda}
+
+\subsubsection*{Preguntas t\'ipicas (FAQ)}
+Dir\'ijase a FAQ disponible en la p\'agina web de \vym:
+\begin{center}
+\href{http://www.InSilmaril.de/vym/faq.html}{http://www.InSilmaril.de/vym/faq.html}
+\end{center}
+
+\subsubsection*{Listas de correo}
+Existen dos listas de correo: {\tt vym-forum} es el foro de los usuarios de \vym para discutir las preguntas, mientras que {\tt vym-devel} esta dirigida a gente que desea contribuir con \vym. Puede revisar los archivos y suscribirse en
+\begin{center}
+\href{https://sourceforge.net/mail/?group_id=127802}{https://sourceforge.net/mail/?group\_id=127802}
+\end{center}
+
+\subsubsection*{Contactar al autor}\label{author}
+Intente en la listas de correo primero si necesita soporte t\'ecnico. Si todo lo anterior falla puede contactar al Uwe Drechsel a
+\begin{center}
+\href{mailto:vym@InSilmaril.de}{vym@InSilmaril.de}
+\end{center}
+
+\subsubsection*{Contactar los traductores}\label{author}
+Para indicar errores de traducci\'on, sugerencias y afines envie un correo a
+\begin{center}
+\href{mailto:aclibre@gmail.com}{aclibre@gmail.com}
+\end{center}
+
+
+
+\subsection{Como reportar errores}
+A pesar de que Sourceforge tiene su propio sistema para reportar errores, preferir\'ia que me contactara primero (vea la secci\'on \ref{author}) e incluso mejor: Puede reportar el error en Bugzilla, el sistema de reporte de errores del sistema de openSUSE:
+\begin{center}
+\href{http://en.opensuse.org/Submit_a_bug}{http://en.opensuse.org/Submit\_a\_bug}
+\end{center}
+Yo compilo \vym regularmente para openSUSE, as\'i que deber\'ia reportarlo all\'i aunque utilice otro Sistema Operativo. No olvide mencionar
+\begin{itemize}
+    \item Los pasos exactos necesarios para reproducir el error
+    \item La versi\'on y fecha del \vym (vea Ayuda \ra Acerca de \vym)
+    \vym)
+    \item Hardware y Sistema Operativo
+\end{itemize}
+
+\subsection{Compilando desde el C\'odigo Fuente}
+\subsubsection{Obteniendo las fuentes} \label{getsources}
+Encontrara la ultima versi\'on de \vym en el sitio del proyecto:
+\begin{center}
+\href{https://sourceforge.net/projects/vym/}{https://sourceforge.net/projects/vym/}
+\end{center}
+All\'i puede ver los repositorios (CVS) del c\'odigo fuente:
+
+\begin{verbatim}
+cvs -d:pserver:anonymous@cvs.sf.net:/cvsroot/vym checkout code
+\end{verbatim}
+
+\subsubsection{Herramientas Qt}
+Qt es un conjunto de herramientas de C++ para el desarrollo de aplicaciones e interfaces gr\'aficas multiplataforma. Provee de un solo c\'odigo portable entre MS Windows, Mac OS X, Linux y todas las variantes comerciales de Unix. Qt tambi\'en esta disponible para dispositivos integrados. Qt es un producto Trolltech. Para mas informaci\'on:
+\begin{center}
+\href{http://www.trolltech.com/qt/}{www.trolltech.com/qt} 
+\end{center}
+
+
+\subsubsection{Compilando \vym}
+Aseg\'urese de que instalo el entorno Qt apropiadamente, vea la documentaci\'on de Qt para mas detalles. Necesita tener el comando {\tt qmake} en las variables de entorno, luego ejecute
+
+\begin{verbatim}
+qmake
+make  
+make install
+\end{verbatim}
+El ultimo comando make install necesita los permisos de root. Por su puesto se puede omitir, si solo desea probar \vym.
+
+%\subsubsection*{Compiling \vym on Macs}
+%TODO
+
+\subsection{Formato de los archivos \vym } \label{fileformat}
+Por lo general los mapas tienen la extensi\'on "{\tt .vym}" y representan un archivo comprimido de la informaci\'on. Si desea tener una vista a fondo de la estructura de la informaci\'on del mapa llamado "mapname.\vym", descomprima el mapa manualmente utilizando
+\begin{verbatim}
+    unzip mapname.vym
+\end{verbatim}
+Esto creara directorios llamados {\tt images} y {\tt flags} en el directorio actual y en el propio mapa, por lo general llamado mapname.xml. La estructura XML de \vym se explica por si sola, solo eche un vistazo a {\tt mapname.xml}.
+
+El archivo XML puede ser cargado directamente en \vym, no tiene que estar comprimido. Si desea comprimir toda la informaci\'on utilice
+\begin{verbatim}
+    zip -r mapname.vym .
+\end{verbatim}
+para comprimir la informaci\'on del directorio donde se encuentra.
+
+\subsection{Nuevas Opciones}
+Existen muchas opciones que han encontrara en \vym. Junto con \vym recibi\'o un directorio con algunos mapas, por ejemplo en SUSE LINUX 
+\begin{center}
+    {\tt /usr/share/doc/packages/vym/demos}
+\end{center}
+donde encontrara el mapa {\tt todo.vym}. Muestra muchas cosas que se har\'an en el futuro. Si tiene mas ideas, conecte al equipo desarrollador a 
+{\tt vym-devel@lists.sourceforge.net}.
+
+
+\subsection{Soporte a nuevos lenguajes}
+Para agregar otro lenguaje a \vym necesita el c\'odigo fuente (vea la secci\'on \ref{getsources})  y la instalaci\'on de Trolltechs QT. Una parte de QT son las herramientas de desarrollo, de esas herramientas es necesaria la herramientas de traducci\'on "Lingü\'istica".
+
+En algunas distribuciones de Linux las herramientas de desarrollo se encuentran en un paquete extra, por ejemplo en SUSE LINUX debe instalar:
+\begin{verbatim}
+    qt3-devel.rpm
+    qt3-devel-doc.rpm
+    qt3-devel-tools.rpm
+    qt3-man.rpm
+\end{verbatim}
+Sino posee QT en su sistema, lo puede conseguir en 
+    \href{http://www.trolltech.com}{http://www.trolltech.com}
+Una vez que ya pueda compilar \vym, puede traducir el texto de \vym realizando los siguientes pasos:
+\begin{itemize}
+    \item Supongamos que la codificaci\'on es "Nueva" en lugar de "de" para el alem\'an o "es" para el espa\~nol
+    
+    \item Copie el archivo {\tt lang/vym\_en.ts} en {\tt ang/vym\_Nueva.ts} (El propio c\'odigo contiene la versi\'on en ingles). 
+        
+    \item Agregue  {\tt lang/vym\_Nueva.ts} a la secci\'on de TRADUCCIONES de \vym.pro. 
+
+    \item Ejecute Linguist en {\tt vym\_Nueva.ts} y realice la traducci\'on.  
+
+    \item Ejecute {\tt lrelease}  para crear {\tt vym\_Nueva.qm} to create 
+
+    \item Ejecute make install para instalar el nuevo \vym y revisar la traducci\'on.
+\end{itemize}
+
+Si lo desea tambi\'en puede traducir el manual. Esta escrito en LaTeX, solo debe cambiar el archivo text/\vym.tex. (Linguist o QT no se necesitan pero si se necesita saber como trabajar con LaTeX, espec\'ificamente pdfltex para crear un PDF).
+
+Por favor env\'ie todas las traducciones que realice. Tambi\'en puedo darle acceso como desarrollador en el proyecto, si desea proveer traducciones regularmente.
+
+\subsection{Nuevos filtros para exportar e importar}
+\vym soporta distintos tipos de filtros. La informaci\'on puede ser escrita directamente, insertada en plantillas o escrita como XML y luego procesada por transformaciones XSL.
+
+Muchas de las funciones de importar/exportar se encuentra en las clases ImportBase y ExportBase y subclases. Estas las pueden conseguir en {\tt imports.h} y {\tt exports.h}.
+
+\subsubsection*{Importa y Exportar directamente}
+n ejemplo de exportaci\'on directa es el de XML. Este m\'etodo toca las implementaciones de casi todos los objetos de \vym, as\'i que mientras pueda mejor utilice transformaci\'on XSL.
+
+Si todav\'ia quiere saber como se realiza esto, comience por observar
+{\tt MapEditor::saveToDir} en {\tt mapeditor.cpp}.
+
+\subsubsection*{Plantillas}
+Las plantillas se introducen para exportar a formatos opendoc utilizados por ejemplo por Open Office. Mientras leo las especificaciones (menor a 500 paginas) acerca del formato\footnote{
+\href{http://www.oasis-open.org/}{http://www.oasis-open.org/}}\ 
+me da la sensaci\'on de que no quiero escribir la exportaci\'on desde el inicio. Seria muy complejo adaptar el estilo a sus propios deseos, por ejemplo el layout.
+
+En su lugar analizo los documentos existentes del Open Office. Encontr\'e que existen un gran numero de bits redundantes en la informaci\'on de una presentaci\'on cl\'asica, por ejemplo cada lista de detalles es contenida en su propia lista. Al final expuse el estilo de la presentaci\'on por defecto, que todav\'ia puede ser simplificado, solo en caso de que tenga tiempo libre\ldots
+
+Las plantillas existentes todav\'ia est\'an bajo desarrollo, antes de que pase mucho tiempo desarrollando su propio estilo, por favor contacteme. B\'asicamente se necesitan los siguientes pasos para construir su propio estilo:
+\begin{enumerate}
+    \item Crea un ejemplo en Open Office. Utilice un titulo, nombre de autor, encabezado de pagina, etc. \ que f\'acilmente puede escoger para la salida del archivo.
+    
+    \item Descomprima el documento Open Office en un directorio.
+
+    \item El archivo principal es llamado {\tt content.xml}. Toda la informaci\'on esta en una sola linea. Puede dividir las etiquetas XML utilizando el script {\tt    scripts/niceXML}, el cual es parte de la distribuci\'on de \vym.
+
+    \item Copie la salida de  {\tt niceXML} en {\tt content-template.xml}.
+
+    \item Observe que encontrara un gran numero de definiciones sin utilizar, por ejemplo de algunos estilos. Los puede borrar o simplemente ignorarlos.
+
+    \item 1.Intente encontrar su titulo, nombre de autor. \vym reemplazara las siguientes cadenas mientras realiza la exportaci\'on:
+    \begin{center}
+    \begin{tabular}{lp{4cm}}
+        {\tt <!-- INSERT TITLE -->}     & title of map \\
+        {\tt <!-- INSERT AUTHOR-->  }   & author \\
+        {\tt <!-- INSERT COMMENT -->}   & comment \\
+        {\tt <!-- INSERT PAGES-->}      & content of map \\
+    \end{tabular}
+    \end{center}
+    El contenido es generado de manera similar insertando listas en {\tt page-template}. Se realizan las siguientes sustituciones:
+    \begin{center}
+    \begin{tabular}{lp{7cm}}
+        {\tt <!-- INSERT PAGE HEADING-->}       & Encabezado de la pagina (rama principal o                                     hijo de la rama principal, dependiendo                          del uso de las secciones). \\
+        {\tt <!-- INSERT LIST -->   }   & Todos los hijos de ramas de arriba. \\
+    \end{tabular}
+    \end{center}
+\end{enumerate}
+Actualmente las im\'agenes son exportadas y las notas solo aparecen como texto sin formato y colores.
+
+
+\subsubsection*{Transformaciones XSL}
+\vym utiliza transformaciones XSL mientras exporta (por ejemplo XHTML) e importa informaci\'on (por ejemplo marcadores KDE). Se necesita de un poco de c\'odigo para la interfaz gr\'afica del usuario, el resto es realizado utilizando la hoja de estilo {\tt .xsl} e invocando el procesador {\tt xsltproc}, el cual forma parte de libxslt, la librer\'ia XSLT C para GNOME.
+
+\end{appendix}
+\end{document}
+\end{document}
+
diff --git a/tex/vym_fr.lyx b/tex/vym_fr.lyx
new file mode 100644 (file)
index 0000000..61a2b4c
--- /dev/null
@@ -0,0 +1,11687 @@
+#LyX 1.6.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 345
+\begin_document
+\begin_header
+\textclass article
+\begin_preamble
+
+
+
+\usepackage{hyperref}
+
+
+%\usepackage{longtable}
+
+
+\setlength{\headheight}{0cm}
+\setlength{\headsep}{0cm}
+\setlength{\topskip}{0cm}
+\setlength{\topmargin}{-0.5cm}
+
+\setlength{\parskip}{1.5ex}
+\setlength{\parindent}{0cm}
+\setlength{\oddsidemargin}{0cm}
+\setlength{\textwidth}{16cm}
+\setlength{\textheight}{27cm}
+
+\newlength{\maximgwidth}
+\setlength{\maximgwidth}{14cm}
+\newcommand{\maximage}[1]{     
+\begin{center}
+\includegraphics[width=\maximgwidth]{#1} 
+\end{center}
+}
+\newcommand{\hint}[1]{
+\begin{center} 
+\begin{tabular}{|rp{12cm}|} \hline
+{\bf Astuce }:& #1\\   \hline
+\end{tabular}
+\marginpar{\Huge !} 
+\end{center} 
+}
+
+\newcommand{\vym}{{\sc vym }}
+\newcommand{\ra}{$\longrightarrow$}
+\newcommand{\la}{$\longleftarrow$}
+\newcommand{\ua}{$\uparrow$}
+\newcommand{\da}{$\downarrow$}
+\newcommand{\key}[1]{[#1]}
+
+%\newenvironment{code}[1]{ \verbatim #1}{\endverbatim  }
+
+\hypersetup{bookmarks, bookmarksopen,
+  pdftitle={VYM - a tool for visual thinking },
+  pdfauthor={Uwe Drechsel},    
+  pdfsubject={map},
+  pdfkeywords={map, tool},
+  pdfpagemode={UseOutlines},                                 
+  bookmarksopenlevel={1},   
+  colorlinks={true},     
+  linkcolor={blue},
+  urlcolor={green},
+  citecolor={red}} 
+\end_preamble
+\options a4paper
+\use_default_options false
+\language french
+\inputencoding utf8
+\font_roman default
+\font_sans default
+\font_typewriter default
+\font_default_family default
+\font_sc false
+\font_osf false
+\font_sf_scale 100
+\font_tt_scale 100
+
+\graphics default
+\paperfontsize 12
+\spacing single
+\use_hyperref false
+\papersize default
+\use_geometry false
+\use_amsmath 0
+\use_esint 0
+\cite_engine basic
+\use_bibtopic false
+\paperorientation portrait
+\secnumdepth 2
+\tocdepth 2
+\paragraph_separation indent
+\defskip medskip
+\quotes_language french
+\papercolumns 1
+\papersides 1
+\paperpagestyle default
+\tracking_changes false
+\output_changes false
+\author "" 
+\author "" 
+\end_header
+
+\begin_body
+
+\begin_layout Title
+\begin_inset Graphics
+       filename images/vym-logo-new.png
+       width 8cm
+
+\end_inset
+
+\begin_inset Newline newline
+\end_inset
+
+ VYM 
+\begin_inset Newline newline
+\end_inset
+
+ -- 
+\begin_inset Newline newline
+\end_inset
+
+View Your Mind
+\begin_inset Newline newline
+\end_inset
+
+\size small
+Version 1.12.2
+\begin_inset Newline newline
+\end_inset
+
+(version française)
+\end_layout
+
+\begin_layout Author
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+textcopyright
+\end_layout
+
+\end_inset
+
+ Uwe Drechsel 
+\end_layout
+
+\begin_layout Standard
+\begin_inset Newpage newpage
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset toc
+LatexCommand tableofcontents
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+\begin_inset Newpage newpage
+\end_inset
+
+
+\end_layout
+
+\begin_layout Section*
+Remerciements
+\end_layout
+
+\begin_layout Standard
+Beaucoup de gens m'ont envoyé leurs impressions et leurs idées et tout cela
+ m'a aidé à faire 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ meilleur.
+ Merci à tous !
+\end_layout
+
+\begin_layout Standard
+Pour ce manuel, je remercie particulièrement :
+\end_layout
+
+\begin_layout Itemize
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ Peter Adamson
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ pour un grand nombre de retours et pour la relecture de mon anglais très
+ imparfait,
+\end_layout
+
+\begin_layout Itemize
+L'équite du 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ AClibre (Academia y Conocimiento Libre)
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ en Colombie pour leur traduction du manuel en espagnol : 
+\end_layout
+
+\begin_deeper
+\begin_layout Standard
+\align center
+\begin_inset Tabular
+<lyxtabular version="3" rows="2" columns="2">
+<features>
+<column alignment="none" valignment="top" width="7cm">
+<column alignment="none" valignment="top" width="5.5cm">
+<row>
+<cell alignment="none" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Encargado 
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="none" valignment="top" topline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Actividad 
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="none" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Itemize
+Vanessa Carolina Gutiérrez Sanchez 
+\end_layout
+
+\begin_layout Itemize
+Erika Tatiana Luque Melo 
+\end_layout
+
+\begin_layout Itemize
+Jeffrey Steve Borbón Sanabria 
+\end_layout
+
+\begin_layout Itemize
+John Edisson Ortiz Román 
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="none" valignment="top" topline="true" bottomline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Itemize
+Traducciónl 
+\end_layout
+
+\begin_layout Itemize
+Revisión y correcciones varias 
+\end_layout
+
+\begin_layout Itemize
+Estructuración y exporte 
+\end_layout
+
+\begin_layout Itemize
+Revisión y correcciones varias 
+\end_layout
+
+\end_inset
+</cell>
+</row>
+</lyxtabular>
+
+\end_inset
+
+
+\end_layout
+
+\end_deeper
+\begin_layout Standard
+\begin_inset Newpage newpage
+\end_inset
+
+
+\end_layout
+
+\begin_layout Section*
+Note du traducteur
+\end_layout
+
+\begin_layout Standard
+Correspondances entre les mots de la version originale en anglais et la
+ version française.
+ Certains mots trop spécifiques à 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym 
+\end_layout
+
+\end_inset
+
+ ont été gardés en anglais.
+\end_layout
+
+\begin_layout Subsection*
+traduits
+\end_layout
+
+\begin_layout Description
+ancre 
+\emph on
+anchor 
+\end_layout
+
+\begin_layout Description
+canevas 
+\emph on
+layout 
+\end_layout
+
+\begin_layout Description
+carte 
+\emph on
+map 
+\end_layout
+
+\begin_layout Description
+défaire/refaire 
+\emph on
+undo/redo 
+\end_layout
+
+\begin_layout Description
+emoticon
+\emph on
+ smiley 
+\end_layout
+
+\begin_layout Description
+escamotage 
+\emph on
+folding 
+\end_layout
+
+\begin_layout Description
+fils 
+\emph on
+child 
+\end_layout
+
+\begin_layout Description
+indicateur 
+\emph on
+flag 
+\end_layout
+
+\begin_layout Description
+menu
+\begin_inset space ~
+\end_inset
+
+de
+\begin_inset space ~
+\end_inset
+
+contexte 
+\emph on
+context menu
+\emph default
+\end_layout
+
+\begin_layout Description
+menu
+\begin_inset space ~
+\end_inset
+
+des
+\begin_inset space ~
+\end_inset
+
+préférences 
+\emph on
+settings menu 
+\end_layout
+
+\begin_layout Description
+mode
+\begin_inset space ~
+\end_inset
+
+modificateur 
+\emph on
+modifier (CTRL) 
+\end_layout
+
+\begin_layout Description
+navigateur 
+\emph on
+webbrowser 
+\end_layout
+
+\begin_layout Description
+onglets 
+\emph on
+bookmark 
+\end_layout
+
+\begin_layout Description
+patrons 
+\emph on
+frame 
+\end_layout
+
+\begin_layout Description
+titre 
+\emph on
+heading 
+\end_layout
+
+\begin_layout Description
+signets 
+\emph on
+bookmark 
+\end_layout
+
+\begin_layout Description
+sous-arbre 
+\emph on
+jeu de branches en dessous
+\end_layout
+
+\begin_layout Description
+barre
+\begin_inset space ~
+\end_inset
+
+de
+\begin_inset space ~
+\end_inset
+
+travail
+\emph on
+ toolbars
+\end_layout
+
+\begin_layout Subsection*
+non traduits
+\end_layout
+
+\begin_layout Description
+mapeditor fenêtre d'édition de la carte 
+\end_layout
+
+\begin_layout Description
+mapcenter milieu du mapeditor 
+\end_layout
+
+\begin_layout Description
+noteeditor fenêtre d'édition des notes
+\end_layout
+
+\begin_layout Description
+
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status open
+
+\begin_layout Plain Layout
+
+
+\backslash
+clearpage 
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Section
+Introduction
+\end_layout
+
+\begin_layout Subsection
+Qu'est-ce qu'une carte 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ ?
+\end_layout
+
+\begin_layout Standard
+Une carte 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ (on abrégera sous le nom de 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ carte
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+) est une structure en forme d'arbre:
+\end_layout
+
+\begin_layout Standard
+\begin_inset Graphics
+       filename images/example1_fr.png
+
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+De telles cartes peuvent être faites à la main sur une feuille de papier
+ ou en brouillon et aident à structurer vos pensées.
+ Alors qu'une structure en forme d'arbre comme sur l'image ci-dessus peut
+ être tracée à la main, 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ offre des possibilités supplémentaires.
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ n'est pas un logiciel de dessin supplémentaire, mais un outil pour mémoriser
+ et modifier l'information de façon intuitive.
+ Par exemple, vous pouvez réorganiser des parties de la carte en appuyant
+ sur une touche ou ajouter des informations comme un email complet simplement
+ par un clic de souris.
+\end_layout
+
+\begin_layout Standard
+Un fois que vous avez fini de rassembler et d'organiser vos idées vous pouvez
+ générer des sorties ---basées sur une 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ carte
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+--- sous divers formats incluant une présentation dans Open-Office.
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+hint{
+\end_layout
+
+\end_inset
+
+Vous trouverez la carte ci-dessus et les autres en cliquant :
+\end_layout
+
+\begin_layout Standard
+\align center
+Help 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ Open vym examples 
+\end_layout
+
+\begin_layout Standard
+dans la barre de menu.
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsection
+Pourquoi utiliser des 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ cartes
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+? l'Espace, le Temps et votre cerveau
+\end_layout
+
+\begin_layout Subsubsection*
+Espace
+\end_layout
+
+\begin_layout Standard
+Une 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ carte
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ peut concentrer un contenu très complexe sur un petit espace comme une
+ feuille de papier.
+ Cela aide les deux côtés de votre cerveau : le côté logique et le côté
+ créatif (par exemple en utilisant des dessins, des couleurs et des mots
+ clé, souvent appelés 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ ancres
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ C'est une technique pour aider à organiser votre façon de penser et stimuler
+ votre créativité : cela vous aide en développant, classant et mémorisant
+ vos idées.
+\end_layout
+
+\begin_layout Subsubsection*
+Temps
+\end_layout
+
+\begin_layout Standard
+Parce que vous utilisez des mots clé et des dessins, c'est plus rapide que
+ les bonnes vieilles 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+og
+\end_layout
+
+\end_inset
+
+ notes 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+fg
+\end_layout
+
+\end_inset
+
+.
+ Votre cerveau mémorise les choses par association avec d'autres choses
+ -- une 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ carte
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ utilise ces connexions et stimule de nouvelles associations.
+\end_layout
+
+\begin_layout Subsubsection*
+Votre cerveau
+\end_layout
+
+\begin_layout Standard
+En 1960 le professeur 
+\shape smallcaps
+Roger Sperry
+\shape default
+ découvre que les deux hémisphères du cerveau humain s'occupent de domaines
+ différents mais 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ peuvent 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ faire les mêmes choses : 
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Tabular
+<lyxtabular version="3" rows="2" columns="2">
+<features>
+<column alignment="none" valignment="top" width="5.5cm">
+<column alignment="none" valignment="top" width="5.5cm">
+<row>
+<cell alignment="none" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Côté gauche 
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="none" valignment="top" topline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Côté droit
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="none" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Itemize
+expression verbale et écrite,
+\end_layout
+
+\begin_layout Itemize
+nombres,
+\end_layout
+
+\begin_layout Itemize
+pensée logique, 
+\end_layout
+
+\begin_layout Itemize
+analyse et détails,
+\end_layout
+
+\begin_layout Itemize
+science,
+\end_layout
+
+\begin_layout Itemize
+pensée linéaire,
+\end_layout
+
+\begin_layout Itemize
+concept de temps.
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="none" valignment="top" topline="true" bottomline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Itemize
+langage du corps, 
+\end_layout
+
+\begin_layout Itemize
+pensée visuelle, rêves éveillés,
+\end_layout
+
+\begin_layout Itemize
+intuition et émotion,
+\end_layout
+
+\begin_layout Itemize
+capacité de synthèse,
+\end_layout
+
+\begin_layout Itemize
+créativité,
+\end_layout
+
+\begin_layout Itemize
+art, musique, danse, 
+\end_layout
+
+\begin_layout Itemize
+pensée non linéaire, relation entre les choses,
+\end_layout
+
+\begin_layout Itemize
+conscience spatiale.
+\end_layout
+
+\end_inset
+</cell>
+</row>
+</lyxtabular>
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+Dans notre société des sciences occidentales, nous avons appris à relier
+ principalement le côté gauche de notre cerveau, le côté 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+og
+\end_layout
+
+\end_inset
+
+ rationel 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+fg
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{}
+\end_layout
+
+\end_inset
+
+.
+ Dans d'autres cultures, comme celles des vieilles cultures indiennes ou
+ d'autres 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+og
+\end_layout
+
+\end_inset
+
+ vieilles
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+fg
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{}
+\end_layout
+
+\end_inset
+
+ cultures, l'autre côté (le droit) est plus important.
+ Les 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ cartes
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ sont juste un moyen de stimuler l'autre coté et d'utiliser les capacités
+ supplémentaires dont nous disposons tous.
+\end_layout
+
+\begin_layout Subsection
+Où puis-je utiliser une 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ carte
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+?
+\end_layout
+
+\begin_layout Standard
+Voici quelques exemples et comment vous pouvez utiliser ces 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ cartes
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ : 
+\end_layout
+
+\begin_layout Itemize
+pour préparer des articles, des papiers, des livres, des discussions, etc,
+\end_layout
+
+\begin_layout Itemize
+pour trier des idées complexes, 
+\end_layout
+
+\begin_layout Itemize
+pour mémoriser des faits, des noms de personnes, du vocabulaire, etc, 
+\end_layout
+
+\begin_layout Itemize
+pour trier des emails, des fichiers et les signets de votre ordinateur,
+\end_layout
+
+\begin_layout Itemize
+la préparation d'un exposé, 
+\end_layout
+
+\begin_layout Itemize
+des séances de remue-méninges pour résoudre des problèmes, 
+\end_layout
+
+\begin_layout Itemize
+pour enregistrer les tâches lors de l'organisation d'un projet.
+\end_layout
+
+\begin_layout Subsection
+Ce que vous ne pouvez pas faire avec une 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ carte
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+...
+\end_layout
+
+\begin_layout Standard
+Une 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ carte
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ tracée par quelqu'un montre la façon de penser de son auteur.
+ Elle n'a pas à être juste ou fausse, elle n'est pas criticable.
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+og
+\end_layout
+
+\end_inset
+
+ C'est ce que c'est 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+fg
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{}
+\end_layout
+
+\end_inset
+
+(
+\shape smallcaps
+F.
+\begin_inset space ~
+\end_inset
+
+Lehmann
+\shape default
+).
+ L'outil est d'une très utile à son créateur mais d'un usage très limité
+ pour les autres.
+\end_layout
+
+\begin_layout Standard
+Cependant quand un groupe s'investit dans la création d'une 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ carte
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+, tout le groupe bénéficie de son utilisation.
+ Quand un professeur développe une 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ carte
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ avec un groupe d'élèves pendant un cours ou quand un chef de projet recueille
+ les informations d'un groupe de spcialistes pour l'aider à 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+og
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{}
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ encarter
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+fg
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{}
+\end_layout
+
+\end_inset
+
+ les tâches nécessaires pour réaliser ce projet.
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+%
+\backslash
+section{Tutorials}
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+%TODO
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsection
+Ressources internet
+\end_layout
+
+\begin_layout Standard
+Un bon point de départ est d'en apprendre plus sur les 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ cartes heuristiques
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ dans Wikipedia : 
+\end_layout
+
+\begin_layout Itemize
+Anglais : 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+href{http://en.wikipedia.org/wiki/Mind_map}{
+\end_layout
+
+\end_inset
+
+http://en.wikipedia.org/wiki/Mind_map
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+\end_layout
+
+\begin_layout Itemize
+Allemand : 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+href{http://de.wikipedia.org/wiki/Mindmap}{
+\end_layout
+
+\end_inset
+
+http://de.wikipedia.org/wiki/Mindmap
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+\end_layout
+
+\begin_layout Itemize
+Français : 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+href{http://fr.wikipedia.org/wiki/Mindmap}{
+\end_layout
+
+\end_inset
+
+http://fr.wikipedia.org/wiki/Mindmap
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ (N.d.T.)
+\end_layout
+
+\begin_layout Section
+Le Concept de 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+%TODO may add a general introduction here...
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsection
+La fenêtre principale et ses satellites
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "satellite"
+
+\end_inset
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ vient avec plusieurs fenêtres, celle centrale est le 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ mapeditor
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ D'autres fenêtres, chacune avec une fonction particulière peut être ouverte
+ et installée à côté de la fenêtre principale
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+L'avantage des fenêtres séparées par rapport à une seule est une plus grande
+ flexibilité dans leur position.
+ Par exemple j'utilise le 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ noteeditor
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+\begin_inset Quotes fld
+\end_inset
+
+derrière
+\begin_inset Quotes frd
+\end_inset
+
+ le 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ mapeditor
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ Sur Linux mon gestionnaire de fenêtres (KDE) me permet de rentrer du texte
+ dans un petit coin visible du 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ noteeditor
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ sans cliquer dessus avec la souris.
+ Je positionne la souris sur la fenêtre pour y concentrer le focus, un concept
+ utile aussi lorsqu'on travaille avec 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+href{http://www.gimp.org}{
+\end_layout
+
+\end_inset
+
+http://www.gimp.org
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\end_inset
+
+.
+ L'image en dessous montre le 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ mapeditor
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ avec le 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ noteeditor
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+} 
+\end_layout
+
+\end_inset
+
+souvent utilisé:
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Graphics
+       filename images/windows_fr.png
+       width 10cm
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+La plupart du temps vous travaillerez dans le 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ mapeditor
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ en ajoutant des nouvelles branches, en les déplaçant et en les réarrangeant.
+ Les diverses manières de le faire sont expliquées dans 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "mapeditor"
+
+\end_inset
+
+.
+ Vous pouvez enregistrer des informations complémentaires par exemple le
+ contenu d'un email facilement dans une 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ branche
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+: copiez et collez dans le 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ noteeditor
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ La façon de travailler avec des notes est expliqué dans 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "noteeditor"
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+Les fenêtres auxiliaires sont : 
+\end_layout
+
+\begin_layout Itemize
+Noteeditor (voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "noteeditor"
+
+\end_inset
+
+) 
+\end_layout
+
+\begin_layout Itemize
+Fenêtre historique (voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "historywindow"
+
+\end_inset
+
+) 
+\end_layout
+
+\begin_layout Itemize
+Fenêtre des propriétés des branches (voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "propwindow"
+
+\end_inset
+
+) 
+\end_layout
+
+\begin_layout Subsection
+Menus et menus de contexte
+\end_layout
+
+\begin_layout Standard
+En haut de chaque fenêtre se trouve la barre de menus.
+ Certaines options sont sans doute similaires à celles d'autres applications.
+ Notez que beaucoup (et sans doute plus) sont disponibles à travers les
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ menus de contexte
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ Ceux-ci sont disponibles si vous appuyez sur bouton droite de la souris
+ en pointant un objet (sur Mac
+\begin_inset space ~
+\end_inset
+
+OS
+\begin_inset space ~
+\end_inset
+
+X Command-Click).
+\end_layout
+
+\begin_layout Standard
+
+\end_layout
+
+\begin_layout Subsection
+Barres de travail
+\end_layout
+
+\begin_layout Standard
+Les barres de travail dans les fenêtres permettent un accès rapide à beaucoup
+ de fonctions et affichent l'état des objets sélectionnés dans la carte.
+ Par exemple une branche peut avoir certains 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ indicateurs
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ positionnés, ils sont aussi positionnés dans la barre de travail.
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+hint{
+\end_layout
+
+\end_inset
+
+Vous pouvez repositionner toutes les barres de travail en les déplaçant
+ simplement par la poignée.
+ Par exemple vous pouvez déplacer le menu de travail des indicateurs de
+ sa position d'origine en haut du mapeditor pour une position verticale
+ sur le côté droit, ou le remettre dans sa position originale.
+ Il est possible de cacher certains menus de travail en pointant sa poignée
+ et en cliquant sur le bouton droit de la souris.
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsection
+Cartes
+\end_layout
+
+\begin_layout Standard
+Chaque 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ carte
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ a son centre 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ mapcenter
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ Ce centre a des branches partant dans tous les sens comme celles d'un arbre.
+ Chaque branche peut aussi avoir d'autres branches.
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Graphics
+       filename images/branches_fr.png
+       width 12cm
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+Nous appellerons un branche directement connectée au mapcenter une 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\backslash
+em 
+\end_layout
+
+\end_inset
+
+branche principale
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ car elle détermine la position des autres branches 
+\begin_inset Quotes fld
+\end_inset
+
+fils
+\begin_inset Quotes frd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+Le mapcenter et les branches ont un 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ titre
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ C'est le texte que vous voyez dans le mapeditor.
+ C'est ordinairement un ou plusieurs mots clé, permettant de comprendre
+ facilement toute la carte.
+\end_layout
+
+\begin_layout Standard
+Dans la barre de menus au-dessous du  mapeditor on voit des symboles variés.
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Graphics
+       filename images/default-flags.png
+       width 10cm
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+Nous les appellerons 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ indicateurs
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ Ils sont utilisés pour marquer les branches dans la 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ carte
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+, par exemple si quelque chose est important ou douteux.
+ Il y a aussi des indicateurs positionnés automatiquement par 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ pour des informations supplémentaires, par exemple qu'une note est attachée
+ à une branche particulière.
+\end_layout
+
+\begin_layout Standard
+Par défaut certains de ces indicateurs sont affichés uniquement quand l'indicate
+ur 
+\begin_inset Quotes fld
+\end_inset
+
+pouce vers le haut
+\begin_inset Quotes frd
+\end_inset
+
+ est positionné.
+ Ils ne le sont plus lorsque l'indicateur 
+\begin_inset Quotes fld
+\end_inset
+
+pouce en bas
+\begin_inset Quotes frd
+\end_inset
+
+ est positionné.
+ Vous pouvez changer ce comportement par défaut dans le menu des préférences
+ (voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "settings"
+
+\end_inset
+
+).
+\end_layout
+
+\begin_layout Section
+Mapeditor
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "mapeditor"
+
+\end_inset
+
+\end_layout
+
+\begin_layout Subsection
+Commencer une nouvelle carte
+\end_layout
+
+\begin_layout Standard
+Au démarrage de 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ deux fenêtres vont s'ouvrir : le 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ mapeditor
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ et le 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ noteditor
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ Vous travaillerez avec les deux fenêtres mais pour l'instant nous n'avons
+ besoin que du mapeditor.
+\end_layout
+
+\begin_layout Standard
+Sélectionner le milieu de la carte 
+\begin_inset Quotes fld
+\end_inset
+
+NEW MAP
+\begin_inset Quotes frd
+\end_inset
+
+ dans le milieu du mapeditor en cliquant le bouton gauche de la souris.
+ Il va s'allumer en jaune pour montrer qu'il est sélectionné.
+ Il y a plusieurs moyens d'ajouter une nouvelle branche au centre :
+\end_layout
+
+\begin_layout Itemize
+avec la souris : ouvrir le menu du contexte en cliquant le bouton droit
+ de la souris (CTRL-Click sur Mac) sur le milieu de la carte et choisir
+\begin_inset Quotes fld
+\end_inset
+
+Add
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra 
+\end_layout
+
+\end_inset
+
+Add branch as child
+\begin_inset Quotes frd
+\end_inset
+
+ (ajouter une branche comme fils).
+\end_layout
+
+\begin_layout Itemize
+Appuyer sur les touches 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Ins
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ ou 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+A
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+\end_layout
+
+\begin_layout Standard
+Une nouvelle branche va apparaître et vous pouvez taper le titre de la branche.
+ Terminer l'ajout en appuyant sur 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Enter
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+%tipp
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+Quelquefois il est pratique d'ajouter une nouvelle branche au-dessus ou
+ au-dessous de la branche courante en faisant au choix :
+\end_layout
+
+\begin_layout Itemize
+Touche 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Shift-A
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ pour ajouter un branche au-dessus de celle sélectionnée,
+\end_layout
+
+\begin_layout Itemize
+Touche 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Ctrl-A
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ pour ajouter une branche en dessous.
+\end_layout
+
+\begin_layout Standard
+Il est aussi possible d'ajouter une branche qui soit le 
+\begin_inset Quotes fld
+\end_inset
+
+père
+\begin_inset Quotes frd
+\end_inset
+
+ de la branche courante, c'est à dire insérer 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\backslash
+em 
+\end_layout
+
+\end_inset
+
+devant
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+} 
+\end_layout
+
+\end_inset
+
+ la branche courante.
+ Cela peut-être fait par le menu de contexte.
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+hint{
+\end_layout
+
+\end_inset
+
+Pour effacer une branche appuyer sur 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+CTRL-X
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ Si cela est validé dans le menu des préférences (voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "settings"
+
+\end_inset
+
+), vous pouvez aussi utiliser la touche 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Del
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsection
+Circuler dans une carte
+\end_layout
+
+\begin_layout Subsubsection*
+Sélectionner des branches
+\end_layout
+
+\begin_layout Standard
+Pour sélectionner des branches vous pouvez utiliser le bouton gauche de
+ la souris ou les flèches de direction.
+ Suivant l'
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ orientation
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ du départ de la branche utiliser la touche 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+la
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ ou 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ pour se déplacer plus près de la racine ou plus profondément dans les branches.
+ Dans un jeu de branches que nous appellerons 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ sous-arbre
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+, vous pouvez utiliser 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ua
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ et 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+da
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ pour monter et descendre.
+ Vous pouvez aussi utilisez 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Home
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ et 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+End
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ pour sélectionner la première ou la dernière branche.
+\end_layout
+
+\begin_layout Subsubsection*
+Déplacer la partie visible de la carte
+\end_layout
+
+\begin_layout Standard
+À force d'ajouter des branches, la carte peut devenir plus grande que la
+ fenêtre du mapeditor.
+ Vous pouvez utiliser les ascenseurs à droite et en bas de la fenêtre pour
+ déplacer la vue.
+ C'est plus facile en utilisant le bouton gauche de la souris.
+ Cliquez n'importe où sur la 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\backslash
+em 
+\end_layout
+
+\end_inset
+
+surface active de la fenêtre
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ : choisissez un espace libre entre des branches.
+ Le pointeur de la souris va se transformer en main, maintenant déplacez
+ la souris pour voir la partie désirée.
+\end_layout
+
+\begin_layout Standard
+Si vous sélectionnez les branches en utilisant les flèches, la carte va
+ se déplacer pour que la branche sélectionnée soit toujours visible.
+\end_layout
+
+\begin_layout Subsubsection*
+Zoomer la carte
+\end_layout
+
+\begin_layout Standard
+Lorsqu'on travaille sur des grandes cartes, la fonction 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ zoom
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ devient pratique.
+ Vous pouvez utiliser :
+\end_layout
+
+\begin_layout Itemize
+à partir du menu : View 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ Zoom in, View 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ Zoom out, View 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ reset Zoom.
+\end_layout
+
+\begin_layout Itemize
+la barre de fonction
+\begin_inset space ~
+\end_inset
+
+
+\begin_inset Graphics
+       filename images/zoom-buttons.png
+       width 3cm
+
+\end_inset
+
+\end_layout
+
+\begin_layout Standard
+Cliquer sur la loupe avec la croix rouge ré-affiche la carte à sa taille
+ originale.
+\end_layout
+
+\begin_layout Subsubsection*
+Fonction de recherche
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "findwindow"
+
+\end_inset
+
+ Avec une grande carte, une fonction de recherche devient nécessaire.
+ Ouvrir la fenêtre de recherche :
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Graphics
+       filename images/find-window.png
+       width 6cm
+
+\end_inset
+
+\end_layout
+
+\begin_layout Standard
+La fonction va rechercher le texte dans toutes les branches et dans les
+ notes associées.
+ À chaque fois que vous appuyez sur le bouton 
+\begin_inset Quotes fld
+\end_inset
+
+Find
+\begin_inset Quotes frd
+\end_inset
+
+ il va rechercher la prochaine occurrence qui est sélectionnée automatiquement.
+ Si la recherche échoue, un court mess sage 
+\begin_inset Quotes fld
+\end_inset
+
+Nothing found
+\begin_inset Quotes frd
+\end_inset
+
+ (rien trouvé) va apparaître en bas dans la 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ barre de status
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ du mapeditor.
+\end_layout
+
+\begin_layout Subsubsection*
+\begin_inset CommandInset label
+LatexCommand label
+name "hideunselected"
+
+\end_inset
+
+Garder la visibilité, cacher une partie de la carte
+\end_layout
+
+\begin_layout Standard
+Une très grande arborescence (une branche avec une centaine d'enfants par
+ exemple) rend difficile la vue d'ensemble de la carte.
+ Vous pouvez cacher les enfants en les 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ enroulant
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ Cette fonction est souvent appelée 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ escamotage
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ (folding).
+ Pensez que tout le sous-arbre est dessiné sur un rouleau de papier.
+ Vous pouvez le dérouler ou l'enrouler pour ne voir que la première ligne.
+\end_layout
+
+\begin_layout Standard
+Pour escamoter ou ré-afficher une branche et ses fils vous pouvez au choix
+ : 
+\end_layout
+
+\begin_layout Itemize
+appuyez sur 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Scroll Lock
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ ou 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+S
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+,
+\end_layout
+
+\begin_layout Itemize
+appuyer sur le bouton milieu de la souris,
+\end_layout
+
+\begin_layout Itemize
+choisir l'icône sur le menu de travail.
+\end_layout
+
+\begin_layout Standard
+Si vous sélectionnez une branche cachée --par la fonction de recherche ou
+ en utilisant les flèches de direction par exemple-- elle va devenir provisoirem
+ent visible.
+ Cela est montré comme un défilement avec une petite loupe.
+ Si la partie 
+\begin_inset Quotes fld
+\end_inset
+
+dé-cachée
+\begin_inset Quotes frd
+\end_inset
+
+ n'est plus nécessaire, elle est de nouveau cachée automatiquement.
+ Il est possible de rendre toutes les branches visibles en utilisant le
+ menu 
+\begin_inset Quotes fld
+\end_inset
+
+Edit
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ Unscroll all scrolled branches
+\begin_inset Quotes frd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+Vous pouvez cacher des parties de la carte pour l'exporter dans une page
+ web ou pour une présentation par exemple voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "hideexport"
+
+\end_inset
+
+ pour plus de détails.
+\end_layout
+
+\begin_layout Subsection
+Modifier et déplacer les branches
+\end_layout
+
+\begin_layout Subsubsection*
+Modifier le titre
+\end_layout
+
+\begin_layout Standard
+On peut éditer le titre en sélectionnant la branche puis au choix :
+\end_layout
+
+\begin_layout Itemize
+appuyer sur 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Enter
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+\end_layout
+
+\begin_layout Itemize
+ou 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+F2
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+\end_layout
+
+\begin_layout Itemize
+faire un double clic avec le bouton gauche de la souris.
+\end_layout
+
+\begin_layout Standard
+Écrivez votre nouveau titre (ou éditez le) puis appuyez sur 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Enter
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ pour valider.
+\end_layout
+
+\begin_layout Subsubsection*
+Déplacer une branche
+\end_layout
+
+\begin_layout Standard
+Le moyen le plus simple de déplacer une branche est de la sélectionner avec
+ le bouton gauche de la souris et de la déplacer à sa destination en maintenant
+ le bouton enfoncé.
+ Suivant la branche elle sera :
+\end_layout
+
+\begin_layout Itemize
+déplacée vers la destination,
+\end_layout
+
+\begin_layout Itemize
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ liée 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ à un nouveau 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ parent
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ (mapcenter ou branche) 
+\end_layout
+
+\begin_layout Standard
+Si vous déplacez la branche au dessus d'une autre ou du mapcenter, vous
+ pourrez constater que le lien le connectant à l'ancien parent va être changé
+ pour aller au nouveau situé sous le curseur de la souris.
+ Si vous relâchez alors le bouton, la branche va être reliée.
+\end_layout
+
+\begin_layout Standard
+Si vous relâchez le bouton n'importe où, le résultat dépendra du type de
+ branche que vous déplacez :
+\end_layout
+
+\begin_layout Itemize
+Une branche principale directement connectée au mapcenter.
+ Il va rester à sa nouvelle position,
+\end_layout
+
+\begin_layout Itemize
+Une autre branche 
+\begin_inset Quotes fld
+\end_inset
+
+ordinaire
+\begin_inset Quotes frd
+\end_inset
+
+ va rejoindre sa position d'origine.
+\end_layout
+
+\begin_layout Standard
+Vous pouvez ainsi facilement réarranger la disposition des branches principales
+ pour qu'elles ne recouvrent pas leurs branches filles.
+ Il y a un autre avantage à déplacer les branches, surtout si vous voulez
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ réorganiser
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ un sous-arbre.
+ Vous pouvez monter ou descendre une branche par l'action suivante au choix
+ :
+\end_layout
+
+\begin_layout Itemize
+appuyer sur 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Page Up
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ ou 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Page Down
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+,
+\end_layout
+
+\begin_layout Itemize
+sélectionner Edit 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ Move branch,
+\end_layout
+
+\begin_layout Itemize
+appuyer sur les icônes de la barre de menu : 
+\begin_inset Graphics
+       filename images/move-buttons.png
+       width 1.5cm
+
+\end_inset
+
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+%tipp
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+Il y a un autre moyen de déplacer des branches : si vous appuyez sur 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Shift
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ or 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Ctrl
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ en bougeant la souris, la branche va être ajoutée au-dessus ou au-dessous
+ de la branche sur laquelle la souris est.
+ Cela peut être utilisé pour classer les branches dans une carte.
+\end_layout
+
+\begin_layout Subsection
+Des couleurs et des images : utiliser le côté droit de votre cerveau
+\end_layout
+
+\begin_layout Subsubsection*
+Changer la couler d'un titre
+\end_layout
+
+\begin_layout Standard
+Vous pouvez utiliser des couleurs pour mettre plus d'informations sur la
+ carte par exemple mettre du rouge, du vert et d'autres couleurs pour montrer
+ la priorité des tâches.
+ Pour ce faire : 
+\end_layout
+
+\begin_layout Itemize
+utiliser le menu et choisir : Format 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ Set Color 
+\end_layout
+
+\begin_layout Itemize
+utiliser la barre de menu :
+\end_layout
+
+\begin_deeper
+\begin_layout Standard
+\align center
+\begin_inset Graphics
+       filename images/color-buttons.png
+       width 3cm
+
+\end_inset
+
+\end_layout
+
+\end_deeper
+\begin_layout Standard
+Le premier bouton (noir dans la figure ci-dessus) montre la couleur courante.
+ Cliquer dessus vous permet de choisir une autre couleur.
+ Vous pouvez 
+\begin_inset Quotes fld
+\end_inset
+
+piquer
+\begin_inset Quotes frd
+\end_inset
+
+ la couleur d'une autre branche en la sélectionnant et en utilisant le bouton
+\begin_inset Quotes fld
+\end_inset
+
+pipette
+\begin_inset Quotes frd
+\end_inset
+
+.
+ Les deux icônes avec une palette colorent la branche sélectionnée avec
+ la couleur courante.
+ Alors que la première ne colore que la sélection, la deuxième colore tous
+ les fils de la branche sélectionnée.
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+%tipp
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+Une autre fonction très utile est le 
+\begin_inset Quotes fld
+\end_inset
+
+copier couleur
+\begin_inset Quotes frd
+\end_inset
+
+ en utilisant la souris : sélectionner une branche qui doit avoir la nouvelle
+ couleur appuyez 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Ctrl
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ et simultanément cliquez avec le bouton gauche sur une autre branche pour
+ copier sa couleur dans la branche sélectionnée.
+ Tout le sous-arbre sera coloré.
+ Si vous ne voulez colorer que la sélection appuyez sur 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Shift
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ au lieu de 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Ctrl
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Subsubsection*
+Utiliser les indicateurs
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ possède des indicateurs variés.
+ Ils sont visibles dans la barre de menu en haut de la mapeditor.
+ (Note : Comme toutes les barres de menu, vous pouvez les déplacer sur le
+ côté droit ou gauche ou même les détacher.
+ Prenez la ligne pointillée à gauche de la barre de menu avec le bouton
+ gauche de la souris.)
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Graphics
+       filename images/default-flags.png
+       width 10cm
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+Si vous avez une branche sélectionnée, vous pouvez positionner n'importe
+ quel indicateur en les cliquant sur la barre de menu.
+ Les boutons de la barre de menu changent d'état et reflètent l'état des
+ indicateurs de la branche sélectionnée.
+ Ainsi pour effacer un indicateur d'une branche, sélectionnez la branche
+ et cliquez sur le bouton de la barre de menu enfonce.
+\end_layout
+
+\begin_layout Standard
+Pour l'instant 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ utilise deux sortes d'indicateurs : les 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ Indicateurs Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ et les 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ Indicateurs Système
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ Les indicateurs standard sont ceux que l'on voit dans la barre de menu.
+ Les Indicateurs Système sont positionnés par 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ pour indiquer qu'il y a par exemple de l'information supplémentaire dans
+ une note (plus d'information dans 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "noteeditor"
+
+\end_inset
+
+).
+ Dans des versions futures de 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ il pourra y avoir une autre sorte d'indicateurs éditables par l'utilisateur.
+\end_layout
+
+\begin_layout Subsubsection*
+Images
+\end_layout
+
+\begin_layout Standard
+Le moyen le plus simple pour ajouter une image à une branche est de la déplaçer
+ par exemple à partir d'un navigateur dans le mapeditor pendant qu'elle
+ branche est sélectionnée.
+\end_layout
+
+\begin_layout Standard
+Vous pouvez aussi ajouter une image en ouvrant le menu contextuel d'une
+ branche.
+ Cliquez à droite sur la branche sélectionnée, choisissez 
+\begin_inset Quotes fld
+\end_inset
+
+Add Image
+\begin_inset Quotes frd
+\end_inset
+
+.
+ Une fenêtre de dialogue vous permet de la choisir.
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+Les formats d'images supportés sont : PNG, BMP, XBM, XPM et PNM.
+ Sont aussi supportables JPEG, MNG et GIF, si spécialement configuré pendant
+ la compilation dans  SUSE LINUX).
+\end_layout
+
+\end_inset
+
+ Quand une image est sélectionnée dans le dialogue, un aperçu est affiché.
+ Il est possible de sélectionner plusieurs images.
+\end_layout
+
+\begin_layout Standard
+Vous pouvez placer l'image où vous voulez, vous n'avez qu'à la déplacer
+ avec la souris en appuyant sur le bouton gauche.
+ Pour la lier à une autre branche, appuyer sur la touche 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Shift
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ en la déplaçant.
+ Pour l'effacer appuyer sur la touche 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Del
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+Si vous cliquez à droite sur une image, un menu de contexte s'ouvre qui
+ vous permet de sélectionner un des multiples format d'image.
+ Puis une fenêtre s'affiche pour sauver l'image.
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+hint{
+\end_layout
+
+\end_inset
+
+On utilise cela  pour 
+\begin_inset Quotes fld
+\end_inset
+
+exporter
+\begin_inset Quotes frd
+\end_inset
+
+ l'image, l'image sera sauvegardée dans la carte elle-même.
+ Vous pouvez aussi copier-coller des images mais il n'est pas possible de
+ lui ajouter des objets.
+ Les images sont considérées comme des 
+\begin_inset Quotes fld
+\end_inset
+
+particularités supplémentaires
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+extra feature (N.d.T.)
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes frd
+\end_inset
+
+.
+ Elles pourraient rendre le travail avec la carte beaucoup plus complexe
+ par exemple en liant des images à des images.
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+L'option 
+\begin_inset Quotes fld
+\end_inset
+
+Use for export
+\begin_inset Quotes frd
+\end_inset
+
+ contrôle la sortie des exportations par exemple en HTML : si positionné
+ à NON, l'image n'apparaîtra pas dans le 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ texte
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ de la sortie.
+ C'est utile pour les grandes images ou si des images sont utilisées comme
+ trames comme par exemple le nuage autour d'une partie de la carte.
+ Elle n'apparaîtront pas au milieu du texte.
+\end_layout
+
+\begin_layout Standard
+Pour le moment le support des images est provisoire : les images sont sauvées
+ avec les autres données de la carte dans le fichier 
+\family typewriter
+.vym
+\family default
+.
+ Des versions futures incluront plus de possibilités comme le redimensionnement
+ des images et changer sa transparence et l'inclure dans le fond de la carte),
+ etc.
+\end_layout
+
+\begin_layout Subsubsection*
+Trames
+\end_layout
+
+\begin_layout Standard
+Une trame peut être ajoutée à une branche dans la 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ fenêtre des propriétés
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ (voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "propwindow"
+
+\end_inset
+
+).
+ Vous pouvez aussi utiliser des images comme trames.
+ Regardez la carte de démonstration 
+\family typewriter
+todo.vym
+\family default
+ comme exemple, où le mapcenter est un nuage.
+ Vous pouvez utiliser un programme de dessin externe comme
+\family typewriter
+ gimp
+\family default
+ pour créer une image, de préférence avec un canal de transparence, ainsi
+ vous pouvez créer des trames qui n'ont pas de bord rectangulaire, comme
+ un nuage.
+\end_layout
+
+\begin_layout Subsection
+Conception du fond des cartes et des liens de connections
+\end_layout
+
+\begin_layout Standard
+La conception du fond d'une carte et aussi des liens reliant les diverses
+ parties de la carte peuvent être changés par :
+\end_layout
+
+\begin_layout Itemize
+la sélection du format à partir du menu,
+\end_layout
+
+\begin_layout Itemize
+en cliquant à droite sur le fond de la carte, ce qui ouvre un menu de contexte.
+\end_layout
+
+\begin_layout Subsubsection*
+Trame de fond
+\end_layout
+
+\begin_layout Standard
+La couleur est choisie (et aussi affichée) par 
+\begin_inset Quotes fld
+\end_inset
+
+Set background colour
+\begin_inset Quotes frd
+\end_inset
+
+.
+ Vous pouvez aussi choisir une image de fond d'écran quoique cela ne soit
+ pas recommandé.
+ Travailler sur la carte devient lent et l'image ne peut être positionnée
+ librement.
+\end_layout
+
+\begin_layout Subsubsection*
+Couleur des liaisons
+\end_layout
+
+\begin_layout Standard
+Les liaisons reliant les branches peuvent être colorées de deux façons :
+\end_layout
+
+\begin_layout Itemize
+utiliser la même couleur pour le titre et la ligne représentant la liaison,
+\end_layout
+
+\begin_layout Itemize
+utiliser 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ une
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ couleur pour toutes les liaisons et choisir des couleurs différentes pour
+ les titres.
+ La couleur par défaut des liaisons des branches est bleu.
+\end_layout
+
+\begin_layout Standard
+Cette dernière couleur peut être choisie par 
+\begin_inset Quotes fld
+\end_inset
+
+Set link colour
+\begin_inset Quotes frd
+\end_inset
+
+.
+ Positionner ou invalider l'option 
+\begin_inset Quotes fld
+\end_inset
+
+Use colour of heading for link
+\begin_inset Quotes frd
+\end_inset
+
+ pour basculer entre deux choix dans votre dessin.
+\end_layout
+
+\begin_layout Subsubsection*
+Style de liaison
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ offre quatre styles différents pour l'apparence des liaisons :
+\end_layout
+
+\begin_layout Itemize
+ligne,
+\end_layout
+
+\begin_layout Itemize
+parabole,
+\end_layout
+
+\begin_layout Itemize
+grosse ligne,
+\end_layout
+
+\begin_layout Itemize
+parabole épaisse.
+\end_layout
+
+\begin_layout Standard
+Les styles 
+\begin_inset Quotes fld
+\end_inset
+
+épais
+\begin_inset Quotes frd
+\end_inset
+
+ ne sont actifs que pour les liaisons partant du mapcenter, les liaisons
+ pour le reste de la carte sont toujours 
+\begin_inset Quotes fld
+\end_inset
+
+fines
+\begin_inset Quotes frd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Subsection
+Liens à d'autres documents et aux pages web
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ admet deux types de liens externes :
+\end_layout
+
+\begin_layout Itemize
+document qui va être ouvert dans un navigateur externe,
+\end_layout
+
+\begin_layout Itemize
+carte 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+, qui sera ouverte par 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ lui-même.
+\end_layout
+
+\begin_layout Standard
+En supplément aux liens externes, il y en a d'autres internes, reliant une
+ branche à une autre sur la même carte.
+ Elles sont appelées 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ XLinks
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ et sont expliquées à la section 
+\begin_inset space ~
+\end_inset
+
+
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "xlinks"
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Subsubsection*
+navigateur
+\end_layout
+
+\begin_layout Standard
+Les navigateurs modernes comme 
+\family typewriter
+konqueror et Firefox
+\family default
+ sont capables d'afficher des types de fichiers variés locaux ou sur Internet.
+ Pour saisir l'
+\begin_inset space ~
+\end_inset
+
+URL d'un document appuyez sur la touche 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+U
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ ou cliquez à droite sur une branche pour ouvrir le menu contextuel puis
+ choisir 
+\begin_inset Quotes fld
+\end_inset
+
+References
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ Edit URL
+\begin_inset Quotes frd
+\end_inset
+
+.
+ Si vous voulez ouvrir une fenêtre de dialogue pour choisir plus facilement
+ un fichier local tapez 
+\begin_inset space ~
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+SHIFT-U
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+Lorsqu'une URL a été entrée, un petit globe apparaît dans la branche.
+ On cliquant sur ce globe ou dans le menu contextuel, le navigateur
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+Le navigateur peut être changé dans le menu Settings (voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "settings"
+
+\end_inset
+
+).
+\end_layout
+
+\end_inset
+
+ externe sera lancé :
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Graphics
+       filename images/flag-url.png
+       width 0.5cm
+
+\end_inset
+
+\end_layout
+
+\begin_layout Standard
+Pour plus d'informations sur le travail avec les signets et les navigateurs
+ voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "bookmarks"
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+Dans le menu de contexte, il y a une option pour ouvrir toutes les URL trouvées
+ dans le sous-arbre de la branche sélectionnée.
+ C'est très pratique pour ouvrir tout un jeu de liens dans le navigateur
+ surtout si celui-ci dispose d'index (comme 
+\family typewriter
+konqueror
+\family default
+
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+ou 
+\family typewriter
+firefox
+\family default
+ (N.
+ d.
+ T.)
+\end_layout
+
+\end_inset
+
+).
+\end_layout
+
+\begin_layout Subsubsection*
+carte 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+\end_layout
+
+\begin_layout Standard
+Pour lier une branche à une autre carte 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym 
+\end_layout
+
+\end_inset
+
+ cliquer à droite sur une branche et choisir : 
+\begin_inset Quotes fld
+\end_inset
+
+Édit 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ links
+\begin_inset Quotes frd
+\end_inset
+
+.
+ Une fenêtre de dialogue sur les fichiers s'ouvre pour vous permettre de
+ choisir le fichier voulu.
+ Une branche avec un lien est marquée par :
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Graphics
+       filename images/flag-vymlink.png
+       width 0.5cm
+
+\end_inset
+
+\end_layout
+
+\begin_layout Standard
+Cliquer sur cet indicateur, dans la barre de menu ou dans le menu de contexte
+ va ouvrir cette carte dans un autre onglet.
+ (voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "tabs"
+
+\end_inset
+
+ pour le travail sur plusieurs cartes).
+ Pour effacer un lien existant, cliquer à droite sur la branche et choisir
+\begin_inset Quotes fld
+\end_inset
+
+Delete 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ link
+\begin_inset Quotes frd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+Dans le menu contextuel, il y a aussi une option pour ouvrir tous les liens
+ vers des fichiers 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym 
+\end_layout
+
+\end_inset
+
+ du sous-arbre de la branche sélectionnée dans la carte.
+ C'est utile pour ouvrir simultanément une collection de cartes en relation
+ avec la carte courante.
+\end_layout
+
+\begin_layout Standard
+Note technique : en interne 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ utilise des chemins absolus, pour éviter d'ouvrir plusieurs fois la même
+ carte.
+ Quand la carte est sauvegardée, le chemin est converti en relatif (par
+ exemple 
+\family typewriter
+/home/user/vym.map
+\family default
+ devient
+\family typewriter
+ ./vym.map
+\family default
+.
+ Cela rend aisé d'utiliser des cartes différentes sur plusieurs ordinateurs
+ et de les exporter en HTML pour plus tard.
+\end_layout
+
+\begin_layout Subsection
+cartes multiples
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "tabs"
+
+\end_inset
+
+ Vous pouvez travailler sur plusieurs cartes en même temps.
+ Chaque nouvelle carte est ouverte dans un 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ onglet
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ Les onglets des cartes disponibles sont situés en haut du mapeditor.
+ Vous pouvez utiliser les fonctions couper-copier-coller pour transférer
+ des données d'une carte à l'autre.
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+%todo
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+%TODO
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+%
+\backslash
+subsubsection{Menus}
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+%
+\backslash
+subsubsection{Keyboard shortcuts}
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+% Settings
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+% Images
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+% Copy & Paste
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+% Working with tabs (multiple maps)
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+% Exporting
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+% Scrolling
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Section
+Noteeditor
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "noteeditor"
+
+\end_inset
+
+Si vous voulez mettre plus de texte sur une branche (par exemple un email
+ complet ou une recette de cuisine ou une palanquée de code source) vous
+ pouvez utiliser le noteeditor.
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Graphics
+       filename images/noteeditor_fr.png
+       width 10cm
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+Cet éditeur affiche le texte associé à la branche sélectionnée dans le mapeditor.
+\end_layout
+
+\begin_layout Subsection
+États
+\end_layout
+
+\begin_layout Standard
+Avant de pouvoir écrire ou mettre du texte dans le noteeditor, vous devez
+ sélectionner une branche dans le mapeditor.
+ La couleur du fond du noteeditor indique son état : 
+\end_layout
+
+\begin_layout Itemize
+gris : pas de texte,
+\end_layout
+
+\begin_layout Itemize
+blanc : du texte existe.
+\end_layout
+
+\begin_layout Standard
+Dans le mapeditor, pour signaler qu'il y a une note avec plus d'informations
+ pour une branche particulière, un petit indicateur 
+\begin_inset Quotes fld
+\end_inset
+
+note
+\begin_inset Quotes frd
+\end_inset
+
+ apparaît dans l'entête de la branche.
+ Regardez dans la branche en bas à droite de la carte suivante:
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Graphics
+       filename images/branches-flags_fr.png
+       width 10cm
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsection
+Importer et exporter des notes 
+\end_layout
+
+\begin_layout Standard
+Une note est automatiquement sauvée dans la carte 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+.
+ Il est agréable d'importer une note à partir d'un fichier externe ou d'écrire
+ cette note dans un fichier externe.
+ Dans le noteeditor utiliser 
+\begin_inset Quotes fld
+\end_inset
+
+File
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+
+\begin_inset space ~
+\end_inset
+
+Import
+\begin_inset Quotes frd
+\end_inset
+
+ et 
+\begin_inset Quotes fld
+\end_inset
+
+File
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+
+\begin_inset space ~
+\end_inset
+
+Export
+\begin_inset Quotes frd
+\end_inset
+
+ pour l'import-export.
+\end_layout
+
+\begin_layout Subsection
+Éditer et imprimer une note
+\end_layout
+
+\begin_layout Standard
+L'édition fonctionne comme un éditeur de texte classique, incluant les fonctions
+ annule-recommence.
+ Vous pouvez effacer entièrement la note en cliquant sur la corbeille.
+ En cliquant sur le bouton d'impression seule la note et imprimée.
+\end_layout
+
+\begin_layout Subsection
+RichText: couleurs, paragraphes et texte formatté
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ supporte le texte formatté (QT Rich Text) dans le noteeditor depuis la
+ version 1.4.7.
+ Les couleurs et les attributs de texte (par exemple italique, gras) sont
+ positionnés avec les boutons au-dessus du texte.
+ Le texte lui-même est divisé en paragraphes.
+ Pour chaque paragraphe l'alignement peut être spécifié (par exemple centré
+ ou à droite).
+ Un paragraphe est terminé par appui sur la touche 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Return
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ Si vous voulez juste commencer une nouvelle ligne tapez 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+CTRL-Return
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Subsection
+Les fontes et comment les changer rapidement
+\end_layout
+
+\begin_layout Standard
+Le noteeditor est fait pour éditer de petites notes, ce n'est pas un traitement
+ de texte complet.
+ Suite à beaucoup de demandes, 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ supporte le texte formatté dans le noteeditor
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ utilise le format QRichtText, qui est un sous-ensemble du formattage fourni
+ en HTML.
+\end_layout
+
+\end_inset
+
+.
+ Deux fontes par défaut sont installées qui peuvent être choisies par le
+\begin_inset Quotes fld
+\end_inset
+
+Settings menu
+\begin_inset Quotes frd
+\end_inset
+
+ (voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "settings"
+
+\end_inset
+
+).
+ Une fonte à chasse fixe, l'autre variable.
+ La fonte à chasse fixe est utilisée pour les emails, le code source, etc
+ l'autre pour les simples notes.
+ Les deux fontes peuvent être facilement commutées en cliquant sur le bouton
+ suivant dans la barre de menu :
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Graphics
+       filename images/formatfixedfont.png
+       width 0.5cm
+
+\end_inset
+
+\end_layout
+
+\begin_layout Standard
+Dans le 
+\begin_inset Quotes fld
+\end_inset
+
+Settings menu
+\begin_inset Quotes frd
+\end_inset
+
+ les deux fontes peuvent être choisies.
+ La fonte par défaut peut aussi être changée en sélectionnant ou désélectionnant
+\begin_inset Quotes fld
+\end_inset
+
+fixed font is default
+\begin_inset Quotes frd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+En supplément toute fonte installée sur votre système peut être utilisée.
+ Notez que la fonte choisie sera aussi utilisée pour les exports HTML, si
+ vous voulez exporter votre carte 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym 
+\end_layout
+
+\end_inset
+
+ l'intranet ou sur le web, vous devrez utiliser des fontes disponibles partout.
+\end_layout
+
+\begin_layout Subsection
+Recherche de texte
+\end_layout
+
+\begin_layout Standard
+Le noteeditor n'a pas sa propre fonction de recherche, utiliser 
+\begin_inset Quotes fld
+\end_inset
+
+Find
+\begin_inset Quotes frd
+\end_inset
+
+ dans le mapeditor qui recherche également dans toutes les notes (voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "findwindow"
+
+\end_inset
+
+).
+\end_layout
+
+\begin_layout Subsection
+Coller du texte dans le noteeditor
+\end_layout
+
+\begin_layout Standard
+Vous voulez souvent coller du texte dans le noteeditor à partir d'une autre
+ application par exemple un email.
+ Normalement 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ va créer un nouveau paragraphe pour chaque ligne.
+ Si ce n'est pas ce que voulez vous pouvez choisir à partir de la barre
+ de menu
+\end_layout
+
+\begin_layout Section
+Hello world
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+\begin_inset Quotes fld
+\end_inset
+
+bonjour monde
+\begin_inset Quotes frd
+\end_inset
+
+ ou comment faire une carte de base
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+Cette section décrit comment 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ réagit au contact d'autres applications.
+ Maintenant beaucoup d'applications lisent et écrivent leurs données en
+ XML, le 
+\begin_inset Quotes fld
+\end_inset
+
+eXtensible Markup Language
+\begin_inset Quotes frd
+\end_inset
+
+.
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ utilise aussi XML pour sauver ses cartes, voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fileformat"
+
+\end_inset
+
+ pour une description plus détaillée.
+\end_layout
+
+\begin_layout Standard
+Si vous utilisez une autre application qui utilise le XML, il est possible
+ de faire un filtre d'import-export pour 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+.
+ Les volontaires sont accueillis avec plaisir ;-)
+\end_layout
+
+\begin_layout Subsection
+Import
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "import"
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsubsection*
+Signets KDE 
+\end_layout
+
+\begin_layout Standard
+L'éditeur de signets intégrés à KDE (Konqueror etc.) est limité, ainsi pourquoi
+ ne pas utiliser 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ pour gérer les signets? Pour créer une nouvelle carte contenant contenant
+ les signets courants choisir : 
+\begin_inset Quotes fld
+\end_inset
+
+File 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ Import
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ KDE Bookmarks
+\begin_inset Quotes frd
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsubsection*
+Mind Manager
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ a pour l'instant un filtre d'importation rudimentaire pour convertir les
+ cartes créées par 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ Mind Manager
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+Mind Manager est un logiciel commercial c'est à dire non libre.
+ Il est développée par Mindjet pour Windows et le Mac.
+ Les deux sont des marques enregistrées par Mindjet.
+ Pour plus d'informations voir leur site web 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+href{http://mindjet.com}{
+\end_layout
+
+\end_inset
+
+http://mindjet.com
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+ en cartes 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+.
+ Les notes et les images ne sont pas converties pour l'instant.
+ Vous pouvez importer des fichiers avec : 
+\begin_inset Quotes fld
+\end_inset
+
+File 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ Import
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ Mind Manager
+\begin_inset Quotes frd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Subsubsection*
+Structure et répertoires
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ peut lire une structure de répertoires.
+ C'est pour tester 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+, par exemple pour créer facilement de très grandes cartes utilisées pour
+ les essais (oui il y a encore de la place pour optimiser 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ ;-)
+\end_layout
+
+\begin_layout Subsection
+Export
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "export"
+
+\end_inset
+
+\begin_inset CommandInset label
+LatexCommand label
+name "hideexport"
+
+\end_inset
+
+ Souvent vous ne voulez pas exporter la carte entière, juste une partie.
+ Par exemple, vous pouvez avoir une information supplémentaire dont vous
+ voulez parler dans une présentation, alors que ces parties ne seront pas
+ visibles pendant la présentation.
+ Pour y arriver, vous pouvez 
+\begin_inset Quotes fld
+\end_inset
+
+cacher
+\begin_inset Quotes frd
+\end_inset
+
+ des parties de la carte pendant les exports en positionnant l'indicateur
+\begin_inset Quotes fld
+\end_inset
+
+hide in export
+\begin_inset Quotes frd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Graphics
+       filename images/flag-hideexport.png
+       width 0.5cm
+
+\end_inset
+
+\end_layout
+
+\begin_layout Standard
+Vous pouvez basculer cet indicateur à partir de la barre de menu ou en tapant
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+H
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ Notez qu'il y a une option globale dans le menu de préférences( 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "settings"
+
+\end_inset
+
+) pour basculer l'utilisation de cet indicateur.
+ Par défaut cet indicateur est validé.
+\end_layout
+
+\begin_layout Subsubsection*
+Open Office
+\end_layout
+
+\begin_layout Standard
+À partir de la version 2 Open utilise le 
+\begin_inset Quotes fld
+\end_inset
+
+Open Document Format
+\begin_inset Quotes frd
+\end_inset
+
+, qui peut être écrit par 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+.
+ Les options sont actuellement limitées.
+ Il est possible d'exporter des présentations qui peuvent être ouvertes
+ par Open Office Impress.
+ En sélectionnant : 
+\begin_inset Quotes fld
+\end_inset
+
+File 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ Export
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ Open Office
+\begin_inset Quotes frd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+Vous obtenez une fenêtre de dialogue où vous pouvez choisir le fichier de
+ sortie et le type de fichier:
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Graphics
+       filename images/export-oo_es.png
+       width 10cm
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+\align center
+Les types de fichiers représentent différents types de patrons, qui peuvent
+ être créés à partir d'un document Open Office avec un peu de travail manuel.
+ La structure de la carte 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ est alors insérée dans ce patron.
+ Il y a pour l'instant quelque limitations :
+\end_layout
+
+\begin_layout Itemize
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ ne peut gérer la longueur des pages, vous devez tester et sans doute re-éditer
+ le document Open Office pour éviter que le texte ne continue après la fin
+ de la page,
+\end_layout
+
+\begin_layout Itemize
+images et les indicateurs ne sont pas utilisés pour le moment,
+\end_layout
+
+\begin_layout Itemize
+les notes sont écrites en texte brut , sans RichText 
+\end_layout
+
+\begin_layout Itemize
+la gamme complète des patrons n'est pas disponible dans toutes les distributions.
+\end_layout
+
+\begin_layout Standard
+Certains patrons utilisent des 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ sections
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ c'est à dire qu'ils insèrent le titre des branches principales comme des
+ titres de section dans la présentation.
+\end_layout
+
+\begin_layout Subsubsection*
+Image
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ supporte tous les formats d'image qui sont nativement supportés par le
+ QT
+\begin_inset space ~
+\end_inset
+
+toolkit : BMP, JPEG, PBM, PGM, PNG, PPN, XPM et XBM.
+ Pour utilisation sur les sites web ou envoyer des images par email, PNG
+ est un bon compromis taille/qualité.
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ utilise les options par défaut de Qt pour comprimer les images.
+\end_layout
+
+\begin_layout Subsubsection*
+ASCII
+\end_layout
+
+\begin_layout Standard
+L'exportation en image est expérimental en ce moment.
+ Plus tard cela sans doute fait avec des feuilles de style.
+ La forme de la sortie risque de changer dans de futures versions de 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Subsubsection*
+LaTeX
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ peut générer un fichier d'entrée pour LaTeX.
+ C'est actuellement en développement, il n'y a pas d'option.
+ En sélectionnant : 
+\begin_inset Quotes fld
+\end_inset
+
+File 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ Export
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ LaTeX
+\begin_inset Quotes frd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+Vous allez ouvrir une fenêtre de dialogue pour le nom du fichier de sortie.
+ Cette feuille peut ensuite être inclue dans un document en utilisant la
+ commande : 
+\begin_inset ERT
+status open
+
+\begin_layout Plain Layout
+
+
+\backslash
+begin{verbatim}
+\end_layout
+
+\end_inset
+
+\begin_inset CommandInset include
+LatexCommand include
+filename "inputfile.tex"
+
+\end_inset
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+end{verbatim}
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsubsection*
+Bookmarks KDE 
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ va écraser le fichier des bookmarks KDE puis tenter de le notifier à Konqueror
+ en fonctionnement puis essayera de le notifier via DCOP que le fichier
+ a changé.
+\emph on
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ ne crée pas de sauvegarde ! 
+\emph default
+ Accessible par le menu : 
+\begin_inset Quotes fld
+\end_inset
+
+File 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ Export 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ KDE Bookmarks
+\begin_inset Quotes frd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Subsubsection*
+XHTML (Webpages)
+\end_layout
+
+\begin_layout Standard
+C'est le format à utiliser si vous voulez créer une page web.
+ Pour voir un exemple visitez la page d'entrée de 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ : 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+href{http://www.InSilmaril.de/vym}{
+\end_layout
+
+\end_inset
+
+www.InSilmaril.de/vym
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+Quelque explications sur son fonctionnement : avant d'exporter une carte
+ en XHTML, elle est d'abord écrite en XML dans un répertoire (voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "xmlexport"
+
+\end_inset
+
+).
+ Puis le programme externe 
+\family typewriter
+xsltproc
+\family default
+
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+Sur la distribution SUSE Linux et quelques autres distributions 
+\family typewriter
+xsltproc
+\family default
+ est installé par défaut.
+\end_layout
+
+\end_inset
+
+ va être appelé pour traiter le fichier XML et générer le code HTML.
+ Un dialogue permet à l'utilisateur de positionner diverses options :
+\end_layout
+
+\begin_layout Description
+
+\series bold
+Include image:
+\series default
+ si positionné, 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ va créer une une image de la carte au début de la sortie HTML.
+ Cliquer sur une branche va faire sauter à la section correspondante de
+ la sortie.
+\end_layout
+
+\begin_layout Description
+
+\series bold
+Colored headings:
+\series default
+ Si positionné à OUI, 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ va mettre les titres en couleur dans la partie texte avec les mêmes couleurs
+ que celles utilisées dans la carte 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+
+\series bold
+Show warnings:
+\series default
+ Si positionné, 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ va demander avant d'écrire les données.
+\end_layout
+
+\begin_layout Description
+
+\series bold
+Show output:
+\series default
+ Cela est utilisé principalement pour le dégogage.
+ On va voir comment s'effectue le traitement du fichier XML en appelant
+ le programme externe 
+\family typewriter
+xsltproc
+\family default
+.
+\end_layout
+
+\begin_layout Standard
+En complément les chemins des feuilles de styles CSS et XSL peuvent être
+ indiqués.
+ Par défaut sur SUSE
+\begin_inset space ~
+\end_inset
+
+Linux elles sont dans : 
+\family typewriter
+/usr/share/vym/styles
+\family default
+
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+N.dT.
+ idem pour la version 1.10.0 sur Debian Etch
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Subsubsection*
+XML
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "xmlexport"
+
+\end_inset
+
+ La carte est écrite dans un répertoire à la fois comme une image et comme
+ un fichier XML.
+ Le répertoire est choisi dans une fenêtre de dialogue.
+ Si le répertoire n'est pas vide, vous allez être averti et on va vous prévenir
+ que vous risquez d'écraser des fichiers.
+\end_layout
+
+\begin_layout Standard
+Il est possible d'exporter des cartes différentes dans le même répertoire.
+ Chaque fichier généré va avoir le nom de la carte comme préfixe, par exemple
+ e.g.
+\family typewriter
+todo.vym
+\family default
+ devient 
+\family typewriter
+todo.xml
+\family default
+, 
+\family typewriter
+todo.png
+\family default
+, 
+\family typewriter
+todo-image-1.png
+\family default
+ et ainsi de suite.
+ C'est utile si par exemple un site web comporte des cartes liées qui doivent
+ être rangées dans le même répertoire.
+\end_layout
+
+\begin_layout Subsubsection*
+Export d'une partie d'une carte
+\end_layout
+
+\begin_layout Standard
+Sélectionnez la branche que vous voulez exporter avec ses fils, puis ouvrez
+ le menu contextuel et choisissez 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ Save Selection
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ Cela va créer un fichier avec le suffixe 
+\family typewriter
+.vyp
+\family default
+, qui est une abréviation de 
+\begin_inset Quotes fld
+\end_inset
+
+vym part
+\begin_inset Quotes frd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Section
+Édition avancée
+\end_layout
+
+\begin_layout Subsection
+Propriétés d'un objet
+\end_layout
+
+\begin_layout Standard
+Pour chacune des branches vous pouvez ouvrir une fenêtre auxiliaire (voir
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "satellite"
+
+\end_inset
+
+): la 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ property window
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+fenêtre des propriétés
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+: 
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Graphics
+       filename images/propwindow.png
+       width 8cm
+
+\end_inset
+
+\begin_inset CommandInset label
+LatexCommand label
+name "propwindow"
+
+\end_inset
+
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+%FIXME create screenshot
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+%FIXME explain the tabs
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Itemize
+trame,
+\end_layout
+
+\begin_layout Itemize
+lien (voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "hideunselected"
+
+\end_inset
+
+) 
+\end_layout
+
+\begin_layout Itemize
+Layout (voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "incimg"
+
+\end_inset
+
+) 
+\end_layout
+
+\begin_layout Subsection
+Revoir l'histoire : défaire et refaire 
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+Undo and Redo
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ garde la trace de tous les changements faits à une carte.
+ Le nombre de modifications qui peuvent être défaites est de 75 par défaut.
+ L'historique complet peut être vu dans la 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ fenêtre d'historique
+\begin_inset ERT
+status open
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+:
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Graphics
+       filename images/historywindow.png
+       width 10cm
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset CommandInset label
+LatexCommand label
+name "historywindow"
+
+\end_inset
+
+ un simple pas en arrière peut être défait ou refait en tapant 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+CTRL-Z
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ ou 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+CTRL-Y
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+, ou en utilisant les boutons de la barre de menu ou la 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ fenêtre d'historique
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ Dans la 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ fenêtre d'historique
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+, vous pouvez cliquer sur une ligne pour détailler toutes les actions faites
+ jusqu'à ce moment, ou refaire toutes les actions en cliquant sur la dernière
+ ligne.
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+hint{
+\end_layout
+
+\end_inset
+
+ Vous pouvez 
+\begin_inset Quotes fld
+\end_inset
+
+coller à partir du passé
+\begin_inset Quotes frd
+\end_inset
+
+ : aller en arrière dans le temps avec la touche 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+CTRL-Z
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+, puis copier dans le tampon en tapant 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+CTRL-C
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+Maintenant pour refaire toutes les actions, par exemple en tapant sur la
+ touche 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+CTRL-Y
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ ou en cliquant sur la dernière action dans la 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ fenêtre d'historique
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ Maintenant collez à partir du passé avec la touche 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+CTRL-V
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsection
+Macros
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "macros"
+
+\end_inset
+
+ Les macros ont été ajoutées à 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ à la version
+\begin_inset space ~
+\end_inset
+
+1.9.0.
+ Jusqu'à présent elles sont provisoires, elles vont peut-être être remplacées
+ par un langage de script plus performant (les commandes seront approximativemen
+t les mêmes).
+\end_layout
+
+\begin_layout Standard
+Chaque touche de fonction (touches 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+F1
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ à 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+F12
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+) contient une macro, qui est exécutée sur la sélection courante lorsque
+ la touche est enfoncée.
+ Les macros par défaut changent la couleur d'un sous arbre ou positionnent
+ la trame d'une branche : 
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Graphics
+       filename images/macros_fr.png
+       width 8cm
+
+\end_inset
+
+\end_layout
+
+\begin_layout Standard
+Chaque macro est un script 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ qui est exécuté lorsque la touche correspondante est appuyée.
+ L'emplacement par défaut des macros peut être changé dans le 
+\begin_inset Quotes fld
+\end_inset
+
+Settings menu
+\begin_inset Quotes frd
+\end_inset
+
+.
+ Plus d'informations sur l'utilisation des scripts dans 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ peut être trouvé en appendice
+\begin_inset space ~
+\end_inset
+
+
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "scripts"
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Subsection
+Signets
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "bookmarks"
+
+\end_inset
+
+\end_layout
+
+\begin_layout Subsubsection*
+Ouvrir des nouveaux signets au lieu de nouvelles fenêtres
+\end_layout
+
+\begin_layout Standard
+Si vous utilisez 
+\family typewriter
+konqueror
+\family default
+ comme navigateur, 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ peut se rappeler de la session de 
+\family typewriter
+konqueror 
+\family default
+qui était ouverte en premier par 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+.
+ Vous pouvez appuyer sur les touches 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Ctrl
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ et cliquer pour ouvrir le lien dans un nouvel onglet.
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ peut aussi ouvrir une nouvel onglet dans Mozilla ou Firefox en utilisant
+ la commande à distance 
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+(remote command) à 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+href{http://www.mozilla.org/unix/remote.html}{
+\end_layout
+
+\end_inset
+
+http://www.mozilla.org/unix/remote.html
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+ de ces navigateurs.
+\end_layout
+
+\begin_layout Subsubsection*
+Copier/coller
+\end_layout
+
+\begin_layout Standard
+Si vous voulez mettre vos bookmarks dans une carte, sélectionnez une branche
+ où vous voulez ajouter le bookmark, puis collez simplement l'URL dans la
+ carte à partir de votre navigateur.
+ Vous pouvez aussi utiliser un titre existant comme URL : cliquez à droite
+ sur la branche et sélectionnez : 
+\begin_inset Quotes fld
+\end_inset
+
+Use heading for URL
+\begin_inset Quotes frd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Subsubsection*
+Accès direct à la liste des bookmarks d'un navigateur
+\end_layout
+
+\begin_layout Standard
+Voir les sections 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "import"
+
+\end_inset
+
+ et 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "export"
+
+\end_inset
+
+ sur les filtres d'import-export.
+\end_layout
+
+\begin_layout Subsubsection*
+URL spéciales
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ peut convertir un titre d'une branche existante en URL.
+ Cela marche pour Bugentries dans le système Novell Bugtracking : ouvrez
+ le menu de contexte d'une branche (en cliquant à droite) et sélectionnez
+ : 
+\begin_inset Quotes fld
+\end_inset
+
+Create URL to Bugzilla
+\begin_inset Quotes frd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+L'URL sera créé à partir du titre.
+\end_layout
+
+\begin_layout Subsection
+Associer des images à une branche
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "incimg"
+
+\end_inset
+
+ La configuration par défaut d'une image est de flotter 
+\begin_inset Quotes fld
+\end_inset
+
+librement
+\begin_inset Quotes frd
+\end_inset
+
+.
+ Les images peuvent être positionnées n'importe où dans le canevas cachant
+ la partie correspondante de la carte.
+\end_layout
+
+\begin_layout Standard
+La solution est de l'insérer ou de l'inclure 
+\begin_inset Quotes fld
+\end_inset
+
+dans
+\begin_inset Quotes frd
+\end_inset
+
+ une branche.
+ Cela est fait au travers de la fenêtre de propriétés (voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "propwindow"
+
+\end_inset
+
+) par les menus : 
+\end_layout
+
+\begin_layout Itemize
+include images horizontally 
+\end_layout
+
+\begin_layout Itemize
+include images vertically 
+\end_layout
+
+\begin_layout Standard
+L'images est positionnée relativement à sa branche mère, mais le titre et
+ la bordure s'adapte à l'image flottante, voir en dessous:
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Graphics
+       filename images/includeImages_fr.png
+       width 10cm
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsection
+Mode modificateur
+\end_layout
+
+\begin_layout Standard
+Les modificateurs sont par exemple la touche 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Shift
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+, 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Ctrl
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ ou 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Alt
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ Quand on appuie dessus pendant une action de la souris, 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ va effectuer une action différente de celle habituelle.
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+%
+\backslash
+key{Ctrl} or 
+\backslash
+key{Alt}is pressed while releasing the branch, it will be
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+%added above/below the target, not as child of the target.
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+Sans appuyer sur un modificateur, le premier clic sur la souris sélectionne
+ une branche.
+ Le comportement avec le modificateur 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Ctrl
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ est sujet à à plusieurs options, qui peuvent être positionnées dans la
+ barre de menu :
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Graphics
+       filename images/modmodes.png
+       width 3cm
+
+\end_inset
+
+\end_layout
+
+\begin_layout Standard
+Le mode par défaut est de copier la couleur de la branche cliquée vers la
+ branche sélectionnée.
+ La figure au-dessus montre la barre de menu avec le modificateur par défaut
+ sélectionné.
+ Le deuxième modificateur vous permet de couper une branche complète avec
+ un simple clic.
+ Le troisième modificateur vous permet de créer des liens entre branches
+ appelés 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ xLinks
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ Cela est expliqué dans la section suivante 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "xlinks"
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Subsection
+Cacher les liens d'objets non sélectionnés
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "hidelink"
+
+\end_inset
+
+ Il est pratique de positionner librement une branche, comme une branche
+ principale ou une image.
+ Cela est possible pour toutes les branches, vous pouvez utiliser une branche
+ principale et cacher ses liens de connexion au centre de la carte ou cacher
+ le lien entre une branche fils et son parent.
+ C'est utile par exemple pour les légendes ou pour une collection de liens
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym 
+\end_layout
+
+\end_inset
+
+ pointant vers d'autres cartes : 
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Graphics
+       filename images/hiddenlink_fr.png
+       width 9cm
+
+\end_inset
+
+\end_layout
+
+\begin_layout Standard
+Pour cacher le lien entre la branche et son parent ouvrir la fenêtre de
+ propriétés et sélectionner 
+\begin_inset Quotes fld
+\end_inset
+
+Hide link if object is not selected
+\begin_inset Quotes frd
+\end_inset
+
+ sur l'onglet 
+\begin_inset Quotes fld
+\end_inset
+
+Link
+\begin_inset Quotes frd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Subsection
+XLinks
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "xlinks"
+
+\end_inset
+
+ Jusqu'à maintenant les données dans la carte 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ étaient sous forme d'arbre.
+ En utilisant les xLinks vous pouvez lier une branche à n'importe quelle
+ autre, comme en attachant une corde entre deux branches dans un vrai arbre.
+ C'est très pratique dans des cartes compliquées, où vous avez des renvois
+ qui ne peuvent être affichés dans la même zone visible de la fenêtre du
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ mapeditor
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ La carte suivante tient sur un écran, mais montre comment les données peuvent
+ être reliées.
+ Dans le graphisme il y a un lien à partir d'une tâche (prepare a presentation)
+ à l'information générale:
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Graphics
+       filename images/xlink.png
+       width 10cm
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+\align left
+Notez qu'un xLink qui pointe sur une branche non visible (parce qu'elle
+ est 
+\begin_inset Quotes fld
+\end_inset
+
+enroulée
+\begin_inset Quotes frd
+\end_inset
+
+), est montrée par une flèche horizontale.
+ Regardez la branche 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+lq
+\end_layout
+
+\end_inset
+
+ Tuesday
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+rq
+\end_layout
+
+\end_inset
+
+ dans la capture d'écran ci-dessus.
+\end_layout
+
+\begin_layout Subsubsection*
+Créer un xLink
+\end_layout
+
+\begin_layout Standard
+Choisir le type de lien à partir de la barre de modifier (en cliquant l'icône
+ de la barre de menu ou en tapant 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+L
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+).
+ Sélectionner la branche d'où le xLink doit partir.
+ Appuyer sur le modifier 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Ctrl
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ puis cliquez la branche et amenez le curseur de la souris où le lien doit
+ se terminer.
+ Un lien est tracé qui suit le pointeur de la souris.
+ Le lien devient permanent quand vous relâchez le bouton de la souris .
+\end_layout
+
+\begin_layout Subsubsection*
+Modifier ou effacer un xLink
+\end_layout
+
+\begin_layout Standard
+Sélectionner une extrémité du xLink.
+ Ouvrir le menu contextuel et sélectionnez 
+\begin_inset Quotes fld
+\end_inset
+
+ Edit xLink
+\begin_inset Quotes frd
+\end_inset
+
+.
+ Un sous menu contenant tous les xLinks de la branche apparaît.
+ Sélectionnez en un et la fenêtre de dialogue xLink dialogue s'ouvre, où
+ vous pouvez sélectionner la couleur, la largeur et aussi effacer le xLink.
+\end_layout
+
+\begin_layout Subsubsection*
+Suivre un xLink
+\end_layout
+
+\begin_layout Standard
+Dans une carte 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ compliquée il est commode de sauter à l'autre extrémité d'un xLink.
+ Vous pouvez le faire en ouvrant le menu contextuel et en cliquant 
+\begin_inset Quotes fld
+\end_inset
+
+ Goto xLink
+\begin_inset Quotes frd
+\end_inset
+
+ puis en sélectionnant le xLink qui vous intéresse.
+\end_layout
+
+\begin_layout Subsection
+Ajouter et supprimer des branches
+\end_layout
+
+\begin_layout Standard
+Le menu contextuel d'une branche montre quelques moyens supplémentaires
+ pour ajouter ou supprimer des données.
+ Vous pouvez supprimer une branche tout en gardant ses enfants.
+ Les enfants sont alors liés au parent de la branche supprimée (son 
+\begin_inset Quotes fld
+\end_inset
+
+grand-parent
+\begin_inset Quotes frd
+\end_inset
+
+).
+ Des branches identiques peuvent être ajoutées à des cartes existantes.
+ Pour les raccourcis clavier regarder également dans le menu contextuel.
+\end_layout
+
+\begin_layout Subsection
+Ajouter une carte complète ou une partie
+\end_layout
+
+\begin_layout Standard
+Sélectionner la branche où vous voulez ajouter une carte sauvée précédemment
+ (
+\family typewriter
+.vym
+\family default
+) ou une partie de carte (
+\family typewriter
+.vyp
+\family default
+), puis ouvrez le menu contextuel et choisissez 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ Add 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ Add Map (Insert)
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+ Pour l'importation vous pouvez choisir entre 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ Add Map (Insert)
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ ou 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ Add Map (Replace)
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+: les données importées vont être ajoutées à la branche sélectionnée.
+\end_layout
+
+\begin_layout Section
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ sur Mac OS X
+\end_layout
+
+\begin_layout Subsection
+Vue d'ensemble
+\end_layout
+
+\begin_layout Standard
+Il y a deux moyens de faire fonctionner 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ sur les Macs : 
+\end_layout
+
+\begin_layout Subsubsection*
+Qt Mac Edition:
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ a là une l'apparence bien connue de Mac.
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ est disponible comme paquet d'application Mac OS X dans une image disque
+ (
+\family typewriter
+vym.dmg
+\family default
+).
+ Il a été compilé et testé sur Mac
+\begin_inset space ~
+\end_inset
+
+OS
+\begin_inset space ~
+\end_inset
+
+10.4.
+ Ce paquet inclut les librairies Qt de Trolltech.
+\end_layout
+
+\begin_layout Subsubsection*
+version X11 
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ peut aussi être lancé dans sa version Linux, mais les menus et l'utilisation
+ seront ceux de Linux c'est à dire que les barres de menu sont différentes.
+\end_layout
+
+\begin_layout Subsection
+Menu de contexte et touches spéciales
+\end_layout
+
+\begin_layout Standard
+La majorité des Macs n'a malheureusement qu'un bouton de souris.
+ Pour pour voir le menu contextuel qui normalement est ouvert avec un clic
+ droit, vous devez cliquer en appuyant sur la touche 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+command
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+Surtout sur les portables quelques touches utilisées sur les PC sont manquantes.
+ La version de 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ avec QT-Mac a ses propres raccourcis clavier.
+ Pour les trouver regardez les entrées des menus, les raccourcis visibles
+ à côté de cette entrée.
+ Les boutons de la barre de menu peuvent aussi avoir des raccourcis, positionnez
+ le curseur de la souris sur un bouton et la fenêtre d'aide apparaîtra.
+\end_layout
+
+\begin_layout Subsection
+Voir des liens externes
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ sur Mac utilise le système d'appel 
+\family typewriter
+/usr/bin/open
+\family default
+ pour voir les liens.
+ Mac
+\begin_inset space ~
+\end_inset
+
+OS détermine automatiquement si le lien est un pdf ou une page web et ouvre
+ le bon visionneur.
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+appendix 
+\end_layout
+
+\end_inset
+
+
+\begin_inset Newpage newpage
+\end_inset
+
+
+\end_layout
+
+\begin_layout Section
+\begin_inset CommandInset label
+LatexCommand label
+name "settings"
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ : processus d'initialisation et de configuration
+\end_layout
+
+\begin_layout Subsection
+Menu des préférences (Settings menu)
+\end_layout
+
+\begin_layout Standard
+Le 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+em
+\end_layout
+
+\end_inset
+
+ Menu des préférences 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ vous permet de configurer 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ suivant vos besoins :
+\end_layout
+
+\begin_layout Subsubsection*
+Choisir l'application pour ouvrir les fichiers PDF 
+\end_layout
+
+\begin_layout Standard
+Choisir un visionneur PDF installé sur votre système.
+\end_layout
+
+\begin_layout Subsubsection*
+Choisir le navigateur (vers les liens externes)
+\end_layout
+
+\begin_layout Standard
+Choisissez votre navigateur favori.
+\end_layout
+
+\begin_layout Subsubsection*
+Positionner le chemin pour les macros
+\end_layout
+
+\begin_layout Standard
+Le chemin par défaut pour exécuter les macros correspondantes quand vous
+ appuyez sur une des touches de fonction.
+ Chaque touche correspond à un fichier (
+\family typewriter
+macro-1.vys..macro12.vys
+\family default
+) dans le chemin de recherche.
+\end_layout
+
+\begin_layout Subsubsection*
+Niveaux défaire/refaire
+\end_layout
+
+\begin_layout Standard
+Fixer le nombre de défaire/refaire.
+ Par défaut :75.
+\end_layout
+
+\begin_layout Subsubsection*
+Sauvegarde automatique et temps entre sauvegardes
+\end_layout
+
+\begin_layout Standard
+La sauvegarde automatique des cartes peut être désactivée.
+ Le temps entre sauvegardes est indiqué en secondes.
+\end_layout
+
+\begin_layout Standard
+Quand la sauvegarde d'une carte est demandée 
+\family typewriter
+example.vym
+\family default
+, 
+\begin_inset ERT
+status open
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym 
+\end_layout
+
+\end_inset
+
+ renomme le fichier existant en 
+\family typewriter
+example.vym~
+\family default
+ avant d'écrire le fichier 
+\family typewriter
+example.vym.
+\end_layout
+
+\begin_layout Subsubsection*
+Éditer la branche après l'avoir créée
+\end_layout
+
+\begin_layout Standard
+Si positionné, le titre de la nouvelle branche va être édité immédiatement
+ après avoir été créé.
+\end_layout
+
+\begin_layout Subsubsection*
+Sélectionner la branche après l'avoir créé
+\end_layout
+
+\begin_layout Standard
+Si positionné, la nouvelle branche va être sélectionnée après avoir été
+ créée.
+ Quand vous réfléchissez sur un mot donné, vous ne voulez pas aller dans
+ les détails, mais garder l'attention sur ce mot.
+ Le choix par défaut est de 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\backslash
+em 
+\end_layout
+
+\end_inset
+
+ne pas
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+} 
+\end_layout
+
+\end_inset
+
+ sélectionner la nouvelle branche créée.
+\end_layout
+
+\begin_layout Subsubsection*
+Sélectionner la branche existante
+\end_layout
+
+\begin_layout Standard
+Si positionné et que vous commencez à éditer le titre de la branche, le
+ texte du titre va être sélectionné.
+ Pratique pour copier/coller dans d'autres applications.
+\end_layout
+
+\begin_layout Subsubsection*
+Touche effacement
+\end_layout
+
+\begin_layout Standard
+Si positionné, la touche 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Delete
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ est validée pour détruire les objets.
+ Attention aux confusions avec la touche 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+key{
+\end_layout
+
+\end_inset
+
+Insert
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+sur les claviers de PC.
+\end_layout
+
+\begin_layout Subsubsection*
+Indicateurs exclusif
+\end_layout
+
+\begin_layout Standard
+Si positionné quelques indicateurs peuvent être exclusifs, par exemple les
+ émoticons.
+\end_layout
+
+\begin_layout Subsubsection*
+Autoriser l'indicateur caché
+\end_layout
+
+\begin_layout Standard
+Si positionné, chaque branche qui a l'indicateur caché associé (voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "hideexport"
+
+\end_inset
+
+) ne sera pas présente dans les exports.
+\end_layout
+
+\begin_layout Subsection
+Fichier de configuration
+\end_layout
+
+\begin_layout Standard
+Au démarrage, 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ va regarder un fichier de configuration spécifique à l'utilisateur contenant
+ ses réglages personnels comme la position des fenêtres, les menus de travail,
+ etc.
+ Si ce fichier n'existe pas, il sera créé.
+ Le fichier est localisé dans la racine du répertoire de l'utilisateur.
+ Sa position exacte dépend de la plate-forme :
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Tabular
+<lyxtabular version="3" rows="3" columns="2">
+<features>
+<column alignment="center" valignment="top" width="0">
+<column alignment="left" valignment="top" width="0">
+<row>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\series bold
+Plate-forme
+\series default
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\series bold
+Fichier de configuration 
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Linux 
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" topline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+\begin_inset Formula $\sim$
+\end_inset
+
+/.config/InSilmaril/vym.conf
+\family default
+  
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Mac OS X 
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+/Users/NAME/Library/Preferences/com.insilmaril.vym.plist
+\family default
+  
+\end_layout
+
+\end_inset
+</cell>
+</row>
+</lyxtabular>
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+Le fichier peut être édité manuellement ou sur Mac
+\begin_inset space ~
+\end_inset
+
+OS
+\begin_inset space ~
+\end_inset
+
+X avec le Property List Editor (installé avec xtools).
+\end_layout
+
+\begin_layout Subsection
+Chemin vers les ressources
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ va essayer de trouver ses ressources (images, feuilles de style, filtres,
+ etc) aux endroits suivants :
+\end_layout
+
+\begin_layout Enumerate
+chemin donné par la variable d'environnement
+\family typewriter
+ VYMHOME
+\family default
+.
+\end_layout
+
+\begin_layout Enumerate
+Si appelé avec l'option 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+{
+\backslash
+em 
+\end_layout
+
+\end_inset
+
+local
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+} 
+\end_layout
+
+\end_inset
+
+ (voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "options"
+
+\end_inset
+
+ en dessous), 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ va chercher ses ressource dans le répertoire courant.
+\end_layout
+
+\begin_layout Enumerate
+
+\family typewriter
+/usr/share/vym
+\family default
+\end_layout
+
+\begin_layout Enumerate
+
+\family typewriter
+/usr/local/share/vym
+\family default
+\end_layout
+
+\begin_layout Subsection
+Options de la ligne de commande
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "options"
+
+\end_inset
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ a les options suivantes lors de l'appel en ligne de commande
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+chaque option doit être précédé du 
+\begin_inset Quotes fld
+\end_inset
+
+-
+\begin_inset Quotes frd
+\end_inset
+
+ classique (N.d.T.)
+\end_layout
+
+\end_inset
+
+ :
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Tabular
+<lyxtabular version="3" rows="7" columns="4">
+<features>
+<column alignment="center" valignment="top" width="0">
+<column alignment="center" valignment="top" width="0">
+<column alignment="center" valignment="top" width="0">
+<column alignment="none" valignment="top" width="8cm">
+<row>
+<cell alignment="none" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="none" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="none" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="none" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\series bold
+Option 
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\series bold
+Résumé 
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\series bold
+Argument 
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="none" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\series bold
+Description 
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+v 
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+version 
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="none" valignment="top" topline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+indiquer la version et le nom de code de 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+l 
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+local 
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="none" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Utiliser les chemins locaux pour les feuilles de style,les traductions,
+ les icônes, etc.
+\end_layout
+
+\begin_layout Plain Layout
+Pratique pour les tests
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+h 
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+aide 
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="none" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+montrer l'aide
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+r 
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+lancement 
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+fichier 
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="none" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+charger et lancer un script
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+q 
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+quitter 
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="none" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+quitter après le démarrage.
+ Utile pour les benchmarks.
+\end_layout
+
+\end_inset
+</cell>
+</row>
+</lyxtabular>
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+Vous pouvez aussi donner plusieurs noms de fichiers dans la ligne de commande
+ pour laisser 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ ouvrir plusieurs cartes à la fois.
+\end_layout
+
+\begin_layout Section
+Scripts
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "scripts"
+
+\end_inset
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+%FIXME
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+TODO: désolé cette section du manuel de 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ est provisoire.
+\end_layout
+
+\begin_layout Subsection
+Exemple de scripts
+\end_layout
+
+\begin_layout Subsubsection
+Exporter un jeu de cartes
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+begin{verbatim}
+\end_layout
+
+\end_inset
+
+ # Simple vym script to export images of various maps simultanously exportImage
+ (); 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+end{verbatim}
+\end_layout
+
+\end_inset
+
+ Le script au-dessus peut être utilisé pour exporter automatiquement toutes
+ les cartes d'un répertoire.
+ Si le script a pour nom 
+\family typewriter
+export-image.vys
+\family default
+, appeler 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ avec
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+begin{verbatim}
+\end_layout
+
+\end_inset
+
+ vym --quit --run export-image.vys *.vym 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+end{verbatim}
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Section
+Aider 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+J'ai écrit personnellement 98% du code moi-même.
+ Aucune surprise : 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ correspond exactement à mes besoins.
+ Néanmoins j'encourage tous les utilisateurs de 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ à contribuer.
+ Peut-être pas seulement avec des demandes d'extensions, mais aussi avec
+ du code, de nouveaux filtres import/export, des traductions, etc.
+ Dans cet appendice, je vais essayer de montrer combien il est facile de
+ développer avec 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+.
+ J'attends vraiment de vos nouvelles au sujet de vos futures extensions
+ !
+\end_layout
+
+\begin_layout Section
+Obtenir de l'aide
+\end_layout
+
+\begin_layout Subsection*
+Foire Aux Questions
+\end_layout
+
+\begin_layout Standard
+Pointer la FAQ disponible sur le site de 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ (en anglais) :
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+href{http://www.InSilmaril.de/vym/faq.html}{
+\end_layout
+
+\end_inset
+
+http://www.InSilmaril.de/vym/faq.html
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+\end_layout
+
+\begin_layout Subsection*
+Mailinglists
+\end_layout
+
+\begin_layout Standard
+Il y a deux mailinglists: 
+\end_layout
+
+\begin_layout Itemize
+
+\family typewriter
+vym-forum
+\family default
+ est le forum des utilisateurs 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ pour discuter de points divers, 
+\end_layout
+
+\begin_layout Itemize
+
+\family typewriter
+vym-devel
+\family default
+ est fait pour les gens qui veulent contribuer à 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+Vous pouvez voir les archives et vous inscrire à :
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+href{https://sourceforge.net/mail/?group_id=127802}{
+\end_layout
+
+\end_inset
+
+https://sourceforge.net/mail/?group_id=127802
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+\end_layout
+
+\begin_layout Subsection*
+Contacter l'auteur
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "author"
+
+\end_inset
+
+ En premier essayer les mailinglists.
+ Pour tout autre problème contacter l'auteur Uwe Drechsel à :
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+href{mailto:vym@InSilmaril.de}{
+\end_layout
+
+\end_inset
+
+vym@InSilmaril.de
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+\end_layout
+
+\begin_layout Section
+Comment reporter un bug
+\end_layout
+
+\begin_layout Standard
+Quoique Sourceforge ait son propre système de rapport de bugs, je préfère
+ que vous me contactiez directement (voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "author"
+
+\end_inset
+
+) ou encore mieux : vous pouvez mettre un rapport de bug dans Bugzilla,
+ le système de rapport de bugs de openSUSE : 
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+href{http://en.opensuse.org/Submit_a_bug}{
+\end_layout
+
+\end_inset
+
+http://en.opensuse.org/Submit_a_bug
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+\end_layout
+
+\begin_layout Standard
+Je construis 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ régulièrement pour openSUSE, vous pouvez faire un rapport pour une autre
+ version , même si vous utilisez un autre système d'exploitation.
+ N'oubliez pas de me dire lequel vous utilisez :
+\end_layout
+
+\begin_layout Itemize
+les manipulations exactes pour reproduire le bug,
+\end_layout
+
+\begin_layout Itemize
+la version et la date de construction de 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ (voir l'aide Help 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ About 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+) 
+\end_layout
+
+\begin_layout Itemize
+le matériel et le système d'exploitation
+\end_layout
+
+\begin_layout Section
+Compiler à partir des sources 
+\end_layout
+
+\begin_layout Subsection
+Obtenir les sources
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "getsources"
+
+\end_inset
+
+ Vous pouvez trouver la dernière version de 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ sur le site du projet :
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+href{https://sourceforge.net/projects/vym/}{
+\end_layout
+
+\end_inset
+
+https://sourceforge.net/projects/vym/
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+\end_layout
+
+\begin_layout Standard
+Là vous pouvez les extraire à partir à partir du dépot des source (CVS):
+\begin_inset Newline newline
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+begin{verbatim}
+\end_layout
+
+\end_inset
+
+ cvs -d:pserver:anonymous@cvs.sf.net:/cvsroot/vym checkout code 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+end{verbatim}
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsection
+le toolkit Qt 
+\end_layout
+
+\begin_layout Standard
+Qt est une trousse à outils C++ multiplateforme pour les GUI
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+GUI Graphical User Interface interface graphique pour l'utilisateur (N.d.T.)
+\end_layout
+
+\end_inset
+
+ et le développent d'applications.
+ Il fournit une portabilité avec le même source sur MS
+\begin_inset space ~
+\end_inset
+
+Windows, Mac
+\begin_inset space ~
+\end_inset
+
+OS
+\begin_inset space ~
+\end_inset
+
+X, Linux et toutes les versions principales commerciales d'Unix.
+ Qt est aussi disponible pour les systèmes embarqués.
+ Qt est un produit de la société Trolltech.
+ Pour plus d'informations voir :
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+href{http://www.trolltech.com/qt/}{
+\end_layout
+
+\end_inset
+
+www.trolltech.com/qt
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+\end_layout
+
+\begin_layout Subsection
+Compiler 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+\end_layout
+
+\begin_layout Standard
+Assurez vous que vous avez installé l'environnement QT proprement, voir
+ la documentation pour les détails.
+ Vous devez avoir la commande Qt
+\family typewriter
+ qmake
+\family default
+ dans votre variable d'environnement 
+\family typewriter
+PATH
+\family default
+, pusi lancez 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+begin{verbatim}
+\end_layout
+
+\end_inset
+
+ $ qmake 
+\begin_inset Formula $make$
+\end_inset
+
+ make install 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+end{verbatim}
+\end_layout
+
+\end_inset
+
+ La dernière commande 
+\family typewriter
+make install
+\family default
+ a besoin des droits root.
+ Elle n'est pas nécessaire si vous voulez juste tester 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+%
+\backslash
+subsubsection*{Compiling 
+\backslash
+vym on Macs}
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+%FIXME
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsection
+format des fichiers de 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "fileformat"
+
+\end_inset
+
+Les cartes 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ ont un suffixe 
+\family typewriter
+
+\begin_inset Quotes fld
+\end_inset
+
+.vym
+\family default
+
+\begin_inset Quotes frd
+\end_inset
+
+ et représentent une archive compressée des données.
+ Si vous voulez avoir une vue plus précise de la structure des données dans
+ la carte 
+\begin_inset Quotes fld
+\end_inset
+
+mapname.vym
+\begin_inset Quotes frd
+\end_inset
+
+, décompressez la en lançant la commande : 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+begin{verbatim}
+\end_layout
+
+\end_inset
+
+ $ unzip mapname.vym 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+end{verbatim}
+\end_layout
+
+\end_inset
+
+ Cela va créer les répertoires 
+\family typewriter
+images
+\family default
+ et
+\family typewriter
+ flags
+\family default
+ dans votre répertoire courant et aussi la carte elle-même, normalement
+ appelée 
+\family typewriter
+mapname.xml
+\family default
+.
+ La structure XML de 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ s'explique d'elle-même, jetez un 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+oe 
+\end_layout
+
+\end_inset
+
+il sur le fichier 
+\family typewriter
+mapname.xml
+\family default
+.
+\end_layout
+
+\begin_layout Standard
+Ce fichier XML peut être chargé directement dans 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+, il n'a pas besoin d'être compressé.
+ Si vous voulez compresser toutes les données vous-même faites 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+begin{verbatim}
+\end_layout
+
+\end_inset
+
+ $ zip -r mapname.vym .
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+end{verbatim}
+\end_layout
+
+\end_inset
+
+ pour compresser toutes vos données dans le répertoire courant.
+\end_layout
+
+\begin_layout Subsection
+Nouvelles fonctionnalités
+\end_layout
+
+\begin_layout Standard
+Il y a beaucoup de nouvelles fonctionnalités qui sont installées dans 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+.
+ Avec 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ vous avez reçu un répertoire avec un bon nombre d'exemples de cartes.
+ Vous les trouverez en cliquant Help 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+ra
+\end_layout
+
+\end_inset
+
+ Open
+\begin_inset space ~
+\end_inset
+
+vym
+\begin_inset space ~
+\end_inset
+
+example
+\begin_inset space ~
+\end_inset
+
+maps.
+ Vous y trouverez la carte 
+\family typewriter
+vym-projectplan.vym
+\family default
+.
+ Elle liste une foule de choses qui seront faites dans le futur.
+ Si vous avez d'autres idées, contactez l'équipe de développement à 
+\family typewriter
+vym-devel@lists.sourceforge.net
+\family default
+.
+\end_layout
+
+\begin_layout Subsection
+support pour de nouvelles langues
+\end_layout
+
+\begin_layout Standard
+Pour pouvoir ajouter une nouvelle langue à 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+, vous devez disposer des sources (voir 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "getsources"
+
+\end_inset
+
+) et de l'installation de Trolltechs QT.
+ une partie de QT sont des outils de développement, et particulièrement
+ l'outil de traduction 
+\begin_inset Quotes fld
+\end_inset
+
+Linguist
+\begin_inset Quotes frd
+\end_inset
+
+ qui est nécessaire.
+\end_layout
+
+\begin_layout Standard
+Dans quelques distributions Linux, les outils de développement sont un paquetage
+ spécial, par exemple sur SUSE LINUX vous devez avoir installé : 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+begin{verbatim}
+\end_layout
+
+\end_inset
+
+ libqt4-devel.rpm libqt4-devel-doc.rpm libqt4-devel-tools.rpm 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+end{verbatim}
+\end_layout
+
+\end_inset
+
+ Si vous n'avez pas QT de base sur votre système, vous pouvez l'obtenir
+ à : 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+href{http://www.trolltech.com}{
+\end_layout
+
+\end_inset
+
+http://www.trolltech.com
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+ Une fois que vous êtes capable de compiler, vous pouvez traduire le texte
+ dans 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym 
+\end_layout
+
+\end_inset
+
+ lui-même en faisant les actions suivantes :
+\end_layout
+
+\begin_layout Itemize
+supposons que nous voulons traduire une nouvelle langue 
+\begin_inset Quotes fld
+\end_inset
+
+NEW
+\begin_inset Quotes frd
+\end_inset
+
+ au lieu de 
+\begin_inset Quotes fld
+\end_inset
+
+de
+\begin_inset Quotes frd
+\end_inset
+
+ en allemand ou 
+\begin_inset Quotes fld
+\end_inset
+
+en
+\begin_inset Quotes frd
+\end_inset
+
+ en anglais,
+\end_layout
+
+\begin_layout Itemize
+copier le fichier 
+\family typewriter
+lang/vym_en.ts
+\family default
+ to l
+\family typewriter
+ang/vym_NEW.ts
+\family default
+ (Le code lui-même contient la version anglaise),
+\end_layout
+
+\begin_layout Itemize
+ajouter 
+\family typewriter
+lang/vym_NEW.ts
+\family default
+ dans la section TRANSLATIONS de vym.pro,
+\end_layout
+
+\begin_layout Itemize
+lancer Linguist sur 
+\family typewriter
+vym_NEW.ts
+\family default
+ et faire la traduction,
+\end_layout
+
+\begin_layout Itemize
+lancer 
+\family typewriter
+lrelease
+\family default
+ pour créer 
+\family typewriter
+vym_NEW.qm.
+\end_layout
+
+\begin_layout Itemize
+faire un make install pour installer le nouveau 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym 
+\end_layout
+
+\end_inset
+
+ et tester la traduction
+\end_layout
+
+\begin_layout Standard
+Si vous vous sentez courageux, vous pouvez traduire le manuel.
+ Il est écrit en LaTeX, vous devez juste changer le fichier 
+\family typewriter
+/tex/vym.tex
+\family default
+.
+ (Linguist et QT ne sont pas nécessaires, mais il est utile de savoir comment
+ travailler avec LaTeX et pdflatex pour créer le PDF.)
+\end_layout
+
+\begin_layout Standard
+S'il vous plaît envoyez moi la traduction que vous avez faite.
+ Je peux aussi vous donner une accès de développeur au projet, si vous voulez
+ fournir régulièrement des traductions.
+\end_layout
+
+\begin_layout Subsection
+Nouveaux filtres d'export/import 
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ supporte des types de filtres variés.
+ Les données peuvent être écrites directement, insérées dans des patrons
+ ou peuvent être écrites en données XML et  ensuite être travaillées par
+ des transformations XSL.
+\end_layout
+
+\begin_layout Standard
+La plupart des fonctionnalités d'import-export est disponible dans les classes
+ ImportBase, ExportBase et les classes dérivées.
+ Le tout se trouve dans 
+\family typewriter
+les fichiers imports.h
+\family default
+ et 
+\family typewriter
+exports.h
+\family default
+.
+\end_layout
+
+\begin_layout Subsection*
+import/export direct
+\end_layout
+
+\begin_layout Standard
+Un exemple pour l'export direct est l'export XML.
+ Cette méthode touche l'implémentation de pratiquement tous les objets de
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+, aussi autant que possible utilisez une transformation XSL à la place.
+\end_layout
+
+\begin_layout Standard
+Si vous voulez savoir comment cela est fait, commencez à regarder 
+\family typewriter
+MapEditor::saveToDir
+\family default
+ in 
+\family typewriter
+mapeditor.cpp
+\family default
+.
+\end_layout
+
+\begin_layout Subsection*
+patrons
+\end_layout
+
+\begin_layout Standard
+Les patrons ont été introduits pour exporter dans le format opendoc utilisé
+ par Open
+\begin_inset space ~
+\end_inset
+
+Office.
+ Pendant que je lisais la spécification du format (plus de 500 pages),
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+href{http://www.oasis-open.org/}{
+\end_layout
+
+\end_inset
+
+http://www.oasis-open.org/
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+}
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+ j'avais le sentiment que je ne voulais pas écrire l'export à partir de
+ rien.
+ Cela serait trop difficile pour adapter les styles à vos propres besoins
+ par exemple le canevas.
+\end_layout
+
+\begin_layout Standard
+En analysant un document Open
+\begin_inset space ~
+\end_inset
+
+Office existant, je trouvais qu'il y avait un grand nombre d'informations
+ redondantes dans une présentation standard, par exemple chaque Item d'une
+ liste est contenu dans sa propre liste.
+ À la fin j'en arrivai à un style de présentation par défaut, qui peut encore
+ être simplifié, si j'ai du temps de libre \SpecialChar \ldots{}
+
+\end_layout
+
+\begin_layout Standard
+Les patrons existants sont encore en évolution, avant de développer votre
+ propre style contactez moi.
+ De base les étapes suivantes sont nécessaires pour que vous construisiez
+ votre propre style :
+\end_layout
+
+\begin_layout Enumerate
+créer un exemple dans Open Office.
+ Utilisez un titre, les noms de auteurs, les entêtes de page, etc que vous
+ pourrez facilement piquer dans le fichier de sortie,
+\end_layout
+
+\begin_layout Enumerate
+décompressez le document Open Office dans un répertoire,
+\end_layout
+
+\begin_layout Enumerate
+le fichier principal est appelé
+\family typewriter
+ content.xml
+\family default
+.
+ Toutes les données sont sur une seule ligne.
+ Vous pouvez exploser les marques XML en utilisant le script 
+\family typewriter
+scripts/niceXML
+\family default
+, qui fait partie de la distribution de 
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Enumerate
+copiez la sortie de 
+\family typewriter
+niceXML
+\family default
+ dans 
+\family typewriter
+content-template.xml
+\family default
+.
+\end_layout
+
+\begin_layout Enumerate
+en regardant dans le détail , vous trouverez nombre de définitions inutilisées,
+ par exemple les styles.
+ Vous pouvez les effacer ou simplement les ignorer.
+\end_layout
+
+\begin_layout Enumerate
+Essayez de trouver votre titre, le nom de auteurs.
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ va remplacer les chaînes suivantes lors de l'export :
+\end_layout
+
+\begin_deeper
+\begin_layout Standard
+\align center
+\begin_inset Tabular
+<lyxtabular version="3" rows="4" columns="2">
+<features>
+<column alignment="left" valignment="top" width="0">
+<column alignment="none" valignment="top" width="4cm">
+<row>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+<!-- INSERT TITLE -->
+\family default
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="none" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+titre de la carte 
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+<!-- INSERT AUTHOR-->
+\family default
+  
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="none" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+auteur
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+<!-- INSERT COMMENT -->
+\family default
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="none" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+commentaire
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+<!-- INSERT PAGES-->
+\family default
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="none" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+contenu de la carte 
+\end_layout
+
+\end_inset
+</cell>
+</row>
+</lyxtabular>
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+Le contenu lui-même est généré d'une manière similaire en insérant des listes
+ dans 
+\family typewriter
+page-template
+\family default
+.
+ Les remplacements suivants sont effectues :
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Tabular
+<lyxtabular version="3" rows="2" columns="2">
+<features>
+<column alignment="left" valignment="top" width="0">
+<column alignment="none" valignment="top" width="7cm">
+<row>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+<!-- INSERT PAGE HEADING-->
+\family default
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="none" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+entête de la page (branche principale ou fils, dépendant de l'utilisation
+ des sections) 
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+<!-- INSERT LIST -->
+\family default
+  
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="none" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+tous les fils de la branche du dessus
+\end_layout
+
+\end_inset
+</cell>
+</row>
+</lyxtabular>
+
+\end_inset
+
+
+\end_layout
+
+\end_deeper
+\begin_layout Standard
+Actuellement les images sont exportées et les notes vont apparaître comme
+ du texte sans mise au format ni couleur.
+\end_layout
+
+\begin_layout Subsection*
+XSL Transformation
+\end_layout
+
+\begin_layout Standard
+\begin_inset ERT
+status collapsed
+
+\begin_layout Plain Layout
+
+
+\backslash
+vym
+\end_layout
+
+\end_inset
+
+ utilise des transformations XSL pour l'exportation (par exemple en XHTML)
+ et pour l'importation des données(par exemple les bookmarks KDE).
+ Il faut écrire un peu de code pour fournir le GUI, le reste est fait en
+ utilisant la feuille de style 
+\family typewriter
+.xsl
+\family default
+ et en appelant le processeur 
+\family typewriter
+xsltproc, 
+\family default
+qui fait partie de libxslun, la librairie C XSLT pour GNOME.
+\end_layout
+
+\end_body
+\end_document
diff --git a/tex/vym_fr.tex b/tex/vym_fr.tex
new file mode 100644 (file)
index 0000000..e74e7ac
--- /dev/null
@@ -0,0 +1,1886 @@
+%% LyX 1.6.2 created this file.  For more info, see http://www.lyx.org/.
+%% Do not edit unless you really know what you are doing.
+\documentclass[12pt,french,a4paper]{article}
+\usepackage[T1]{fontenc}
+\usepackage[utf8]{inputenc}
+\setcounter{secnumdepth}{2}
+\setcounter{tocdepth}{2}
+\usepackage{array}
+\usepackage{graphicx}
+
+\makeatletter
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% LyX specific LaTeX commands.
+%% Special footnote code from the package 'stblftnt.sty'
+%% Author: Robin Fairbairns -- Last revised Dec 13 1996
+\let\SF@@footnote\footnote
+\def\footnote{\ifx\protect\@typeset@protect
+    \expandafter\SF@@footnote
+  \else
+    \expandafter\SF@gobble@opt
+  \fi
+}
+\expandafter\def\csname SF@gobble@opt \endcsname{\@ifnextchar[%]
+  \SF@gobble@twobracket
+  \@gobble
+}
+\edef\SF@gobble@opt{\noexpand\protect
+  \expandafter\noexpand\csname SF@gobble@opt \endcsname}
+\def\SF@gobble@twobracket[#1]#2{}
+%% Because html converters don't know tabularnewline
+\providecommand{\tabularnewline}{\\}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% User specified LaTeX commands.
+
+
+
+\usepackage{hyperref}
+
+
+%\usepackage{longtable}
+
+
+\setlength{\headheight}{0cm}
+\setlength{\headsep}{0cm}
+\setlength{\topskip}{0cm}
+\setlength{\topmargin}{-0.5cm}
+
+\setlength{\parskip}{1.5ex}
+\setlength{\parindent}{0cm}
+\setlength{\oddsidemargin}{0cm}
+\setlength{\textwidth}{16cm}
+\setlength{\textheight}{27cm}
+
+\newlength{\maximgwidth}
+\setlength{\maximgwidth}{14cm}
+\newcommand{\maximage}[1]{     
+\begin{center}
+\includegraphics[width=\maximgwidth]{#1} 
+\end{center}
+}
+\newcommand{\hint}[1]{
+\begin{center} 
+\begin{tabular}{|rp{12cm}|} \hline
+{\bf Astuce }:& #1\\   \hline
+\end{tabular}
+\marginpar{\Huge !} 
+\end{center} 
+}
+
+\newcommand{\vym}{{\sc vym }}
+\newcommand{\ra}{$\longrightarrow$}
+\newcommand{\la}{$\longleftarrow$}
+\newcommand{\ua}{$\uparrow$}
+\newcommand{\da}{$\downarrow$}
+\newcommand{\key}[1]{[#1]}
+
+%\newenvironment{code}[1]{ \verbatim #1}{\endverbatim  }
+
+\hypersetup{bookmarks, bookmarksopen,
+  pdftitle={VYM - a tool for visual thinking },
+  pdfauthor={Uwe Drechsel},    
+  pdfsubject={map},
+  pdfkeywords={map, tool},
+  pdfpagemode={UseOutlines},                                 
+  bookmarksopenlevel={1},   
+  colorlinks={true},     
+  linkcolor={blue},
+  urlcolor={green},
+  citecolor={red}} 
+
+\makeatother
+
+\usepackage{babel}
+\addto\extrasfrench{\providecommand{\og}{\leavevmode\flqq~}\providecommand{\fg}{\ifdim\lastskip>\z@\unskip\fi~\frqq}}
+
+\begin{document}
+
+\title{\includegraphics[width=8cm]{images/vym-logo-new.png}
+\\
+ VYM \\
+ -- \\
+View Your Mind\\
+ {\small Version 1.12.0}\\
+{\small (version française)}}
+
+
+\author{\textcopyright Uwe Drechsel }
+
+\maketitle
+\newpage{}
+
+\tableofcontents{}
+
+\newpage{}
+
+
+\section*{Remerciements}
+
+Beaucoup de gens m'ont envoyé leurs impressions et leurs idées et
+tout cela m'a aidé à faire \vym meilleur. Merci à tous !
+
+Pour ce manuel, je remercie particulièrement :
+\begin{itemize}
+\item {\em Peter Adamson} pour un grand nombre de retours et pour la
+relecture de mon anglais très imparfait,
+\item L'équite du {\em AClibre (Academia y Conocimiento Libre)} en Colombie
+pour leur traduction du manuel en espagnol : 
+
+
+\begin{center}
+\begin{tabular}{|p{7cm}|p{5.5cm}|}
+\hline 
+Encargado  & Actividad \tabularnewline
+\hline 
+\begin{itemize}
+\item Vanessa Carolina Gutiérrez Sanchez 
+\item Erika Tatiana Luque Melo 
+\item Jeffrey Steve Borbón Sanabria 
+\item John Edisson Ortiz Román 
+\end{itemize}
+ & \begin{itemize}
+\item Traducciónl 
+\item Revisión y correcciones varias 
+\item Estructuración y exporte 
+\item Revisión y correcciones varias 
+\end{itemize}
+\tabularnewline
+\hline
+\end{tabular}
+\par\end{center}
+
+\end{itemize}
+\newpage{}
+
+
+\section*{Note du traducteur}
+
+Correspondances entre les mots de la version originale en anglais
+et la version française. Certains mots trop spécifiques à \vym  ont
+été gardés en anglais.
+
+
+\subsection*{traduits}
+\begin{description}
+\item [{ancre}] \emph{anchor }
+\item [{canevas}] \emph{layout }
+\item [{carte}] \emph{map }
+\item [{défaire/refaire}] \emph{undo/redo }
+\item [{emoticon}] \emph{smiley }
+\item [{escamotage}] \emph{folding }
+\item [{fils}] \emph{child }
+\item [{indicateur}] \emph{flag }
+\item [{menu~de~contexte}] \emph{context menu} 
+\item [{menu~des~préférences}] \emph{settings menu }
+\item [{mode~modificateur}] \emph{modifier (CTRL) }
+\item [{navigateur}] \emph{webbrowser }
+\item [{onglets}] \emph{bookmark }
+\item [{patrons}] \emph{frame }
+\item [{titre}] \emph{heading }
+\item [{signets}] \emph{bookmark }
+\item [{sous-arbre}] \emph{jeu de branches en dessous}
+\item [{barre~de~travail}] \emph{toolbars}
+\end{description}
+
+\subsection*{non traduits}
+\begin{description}
+\item [{mapeditor}] fenêtre d'édition de la carte 
+\item [{mapcenter}] milieu du mapeditor 
+\item [{noteeditor}] fenêtre d'édition des notes
+\item 
+\end{description}
+\clearpage 
+
+
+\section{Introduction}
+
+
+\subsection{Qu'est-ce qu'une carte \vym ?}
+
+Une carte \vym (on abrégera sous le nom de {\em carte}) est une
+structure en forme d'arbre : \maximage{images/example1_fr.png}
+De telles cartes peuvent être faites à la main sur une feuille de
+papier ou en brouillon et aident à structurer vos pensées. Alors qu'une
+structure en forme d'arbre comme sur l'image ci-dessus peut être tracée
+à la main, \vym offre des possibilités supplémentaires.
+
+\vym n'est pas un logiciel de dessin supplémentaire, mais un outil
+pour mémoriser et modifier l'information de façon intuitive. Par exemple,
+vous pouvez réorganiser des parties de la carte en appuyant sur une
+touche ou ajouter des informations comme un email complet simplement
+par un clic de souris.
+
+Un fois que vous avez fini de rassembler et d'organiser vos idées
+vous pouvez générer des sorties ---basées sur une {\em carte}---
+sous divers formats incluant une présentation dans Open-Office.
+
+\hint{Vous trouverez la carte ci-dessus et les autres en cliquant
+:
+
+\begin{center}
+Help \ra Open vym examples 
+\par\end{center}
+
+dans la barre de menu.}
+
+
+\subsection{Pourquoi utiliser des {\em cartes}? l'Espace, le Temps et votre
+cerveau}
+
+
+\subsubsection*{Espace}
+
+Une {\em carte} peut concentrer un contenu très complexe sur un
+petit espace comme une feuille de papier. Cela aide les deux côtés
+de votre cerveau : le côté logique et le côté créatif (par exemple
+en utilisant des dessins, des couleurs et des mots clé, souvent appelés
+{\em ancres}. C'est une technique pour aider à organiser votre
+façon de penser et stimuler votre créativité : cela vous aide en développant,
+classant et mémorisant vos idées.
+
+
+\subsubsection*{Temps}
+
+Parce que vous utilisez des mots clé et des dessins, c'est plus rapide
+que les bonnes vieilles \og notes \fg. Votre cerveau mémorise les
+choses par association avec d'autres choses -- une {\em carte}
+utilise ces connexions et stimule de nouvelles associations.
+
+
+\subsubsection*{Votre cerveau}
+
+En 1960 le professeur \textsc{Roger Sperry} découvre que les deux
+hémisphères du cerveau humain s'occupent de domaines différents mais
+{\em peuvent } faire les mêmes choses : 
+
+\begin{center}
+\begin{tabular}{|p{5.5cm}|p{5.5cm}|}
+\hline 
+Côté gauche  & Côté droit\tabularnewline
+\hline 
+\begin{itemize}
+\item expression verbale et écrite,
+\item nombres,
+\item pensée logique, 
+\item analyse et détails,
+\item science,
+\item pensée linéaire,
+\item concept de temps.
+\end{itemize}
+ & \begin{itemize}
+\item langage du corps, 
+\item pensée visuelle, rêves éveillés,
+\item intuition et émotion,
+\item capacité de synthèse,
+\item créativité,
+\item art, musique, danse, 
+\item pensée non linéaire, relation entre les choses,
+\item conscience spatiale.
+\end{itemize}
+\tabularnewline
+\hline
+\end{tabular}
+\par\end{center}
+
+Dans notre société des sciences occidentales, nous avons appris à
+relier principalement le côté gauche de notre cerveau, le côté \og
+rationel \fg{}. Dans d'autres cultures, comme celles des vieilles
+cultures indiennes ou d'autres \og vieilles\fg{} cultures, l'autre
+côté (le droit) est plus important. Les {\em cartes} sont juste
+un moyen de stimuler l'autre coté et d'utiliser les capacités supplémentaires
+dont nous disposons tous.
+
+
+\subsection{Où puis-je utiliser une {\em carte}?}
+
+Voici quelques exemples et comment vous pouvez utiliser ces {\em
+cartes} : 
+\begin{itemize}
+\item pour préparer des articles, des papiers, des livres, des discussions,
+etc, 
+\item pour trier des idées complexes, 
+\item pour mémoriser des faits, des noms de personnes, du vocabulaire, etc, 
+\item pour trier des emails, des fichiers et les signets de votre ordinateur, 
+\item la préparation d'un exposé, 
+\item des séances de remue-méninges pour résoudre des problèmes, 
+\item pour enregistrer les tâches lors de l'organisation d'un projet. 
+\end{itemize}
+
+\subsection{Ce que vous ne pouvez pas faire avec une {\em carte}...}
+
+Une {\em carte} tracée par quelqu'un montre la façon de penser
+de son auteur. Elle n'a pas à être juste ou fausse, elle n'est pas
+criticable.\og C'est ce que c'est \fg{}(\textsc{F.~Lehmann}).
+L'outil est d'une très utile à son créateur mais d'un usage très limité
+pour les autres.
+
+Cependant quand un groupe s'investit dans la création d'une {\em
+carte}, tout le groupe bénéficie de son utilisation. Quand un professeur
+développe une {\em carte} avec un groupe d'élèves pendant un cours
+ou quand un chef de projet recueille les informations d'un groupe
+de spcialistes pour l'aider à \og{}{\em encarter}\fg{} les
+tâches nécessaires pour réaliser ce projet.
+
+%\section{Tutorials}
+%TODO
+
+
+
+\subsection{Ressources internet}
+
+Un bon point de départ est d'en apprendre plus sur les {\em cartes
+heuristiques} dans Wikipedia : 
+\begin{itemize}
+\item Anglais : \href{http://en.wikipedia.org/wiki/Mind_map}{http://en.wikipedia.org/wiki/Mind\_map} 
+\item Allemand : \href{http://de.wikipedia.org/wiki/Mindmap}{http://de.wikipedia.org/wiki/Mindmap} 
+\item Français : \href{http://fr.wikipedia.org/wiki/Mindmap}{http://fr.wikipedia.org/wiki/Mindmap}
+(N.d.T.)
+\end{itemize}
+
+\section{Le Concept de \vym }
+
+%TODO may add a general introduction here...
+
+
+
+\subsection{La fenêtre principale et ses satellites}
+
+\label{satellite} \vym vient avec plusieurs fenêtres, celle centrale
+est le {\em mapeditor}. D'autres fenêtres, chacune avec une fonction
+particulière peut être ouverte et installée à côté de la fenêtre principale%
+\footnote{L'avantage des fenêtres séparées par rapport à une seule est une plus
+grande flexibilité dans leur position. Par exemple j'utilise le {\em
+noteeditor} \og derrière \fg{} le {\em mapeditor}. Sur Linux
+mon gestionnaire de fenêtres (KDE) me permet de rentrer du texte dans
+un petit coin visible du {\em noteeditor} sans cliquer dessus avec
+la souris. Je positionne la souris sur la fenêtre pour y concentrer
+le focus, un concept utile aussi lorsqu'on travaille avec \href{http://www.gimp.org}{http://www.gimp.org}. %
+}. L'image en dessous montre le {\em mapeditor} avec le {\em noteeditor} souvent
+utilisé : \maximage{images/windows_fr.png} La plupart du temps
+vous travaillerez dans le {\em mapeditor} en ajoutant des nouvelles
+branches, en les déplaçant et en les réarrangeant. Les diverses manières
+de le faire sont expliquées dans \ref{mapeditor}. Vous pouvez enregistrer
+des informations complémentaires par exemple le contenu d'un email
+facilement dans une {\em branche}: copiez et collez dans le {\em
+noteeditor}. La façon de travailler avec des notes est expliqué dans
+\ref{noteeditor}.
+
+Les fenêtres auxiliaires sont : 
+\begin{itemize}
+\item Noteeditor (voir \ref{noteeditor}) 
+\item Fenêtre historique (voir \ref{historywindow}) 
+\item Fenêtre des propriétés des branches (voir \ref{propwindow}) 
+\end{itemize}
+
+\subsection{Menus et menus de contexte}
+
+En haut de chaque fenêtre se trouve la barre de menus. Certaines options
+sont sans doute similaires à celles d'autres applications. Notez que
+beaucoup (et sans doute plus) sont disponibles à travers les {\em
+menus de contexte}. Ceux-ci sont disponibles si vous appuyez sur
+bouton droite de la souris en pointant un objet (sur Mac~OS~X Command-Click).
+
+
+
+
+\subsection{Barres de travail}
+
+Les barres de travail dans les fenêtres permettent un accès rapide
+à beaucoup de fonctions et affichent l'état des objets sélectionnés
+dans la carte. Par exemple une branche peut avoir certains {\em
+indicateurs} positionnés, ils sont aussi positionnés dans la barre
+de travail.
+
+\hint{Vous pouvez repositionner toutes les barres de travail en les
+déplaçant simplement par la poignée. Par exemple vous pouvez déplacer
+le menu de travail des indicateurs de sa position d'origine en haut
+du mapeditor pour une position verticale sur le côté droit, ou le
+remettre dans sa position originale. Il est possible de cacher certains
+menus de travail en pointant sa poignée et en cliquant sur le bouton
+droit de la souris.}
+
+
+\subsection{Cartes}
+
+Chaque {\em carte} a son centre {\em mapcenter}. Ce centre a
+des branches partant dans tous les sens comme celles d'un arbre. Chaque
+branche peut aussi avoir d'autres branches. \maximage{images/branches_fr.png}
+Nous appellerons un branche directement connectée au mapcenter une
+{\em branche principale} car elle détermine la position des autres
+branches \og fils \fg{}.
+
+Le mapcenter et les branches ont un {\em titre}. C'est le texte
+que vous voyez dans le mapeditor. C'est ordinairement un ou plusieurs
+mots clé, permettant de comprendre facilement toute la carte.
+
+Dans la barre de menus au-dessous du  mapeditor on voit des symboles
+variés. \maximage{images/default-flags.png} Nous les appellerons
+{\em indicateurs}. Ils sont utilisés pour marquer les branches
+dans la {\em carte}, par exemple si quelque chose est important
+ou douteux. Il y a aussi des indicateurs positionnés automatiquement
+par \vym pour des informations supplémentaires, par exemple qu'une
+note est attachée à une branche particulière.
+
+Par défaut certains de ces indicateurs sont affichés uniquement quand
+l'indicateur \og pouce vers le haut \fg{} est positionné. Ils ne
+le sont plus lorsque l'indicateur \og pouce en bas \fg{} est positionné.
+Vous pouvez changer ce comportement par défaut dans le menu des préférences
+(voir \ref{settings}).
+
+
+\section{Mapeditor}
+
+\label{mapeditor} 
+
+
+\subsection{Commencer une nouvelle carte}
+
+Au démarrage de \vym deux fenêtres vont s'ouvrir : le {\em mapeditor}
+et le {\em noteditor}. Vous travaillerez avec les deux fenêtres
+mais pour l'instant nous n'avons besoin que du mapeditor.
+
+Sélectionner le milieu de la carte \og NEW MAP \fg{} dans le milieu
+du mapeditor en cliquant le bouton gauche de la souris. Il va s'allumer
+en jaune pour montrer qu'il est sélectionné. Il y a plusieurs moyens
+d'ajouter une nouvelle branche au centre :
+\begin{itemize}
+\item avec la souris : ouvrir le menu du contexte en cliquant le bouton
+droit de la souris (CTRL-Click sur Mac) sur le milieu de la carte
+et choisir \og Add\ra Add branch as child \fg{} (ajouter une branche
+comme fils).
+\item Appuyer sur les touches \key{Ins} ou \key{A} 
+\end{itemize}
+Une nouvelle branche va apparaître et vous pouvez taper le titre de
+la branche. Terminer l'ajout en appuyant sur \key{Enter}. %tipp
+Quelquefois il est pratique d'ajouter une nouvelle branche au-dessus
+ou au-dessous de la branche courante en faisant au choix :
+\begin{itemize}
+\item Touche \key{Shift-A} pour ajouter un branche au-dessus de celle
+sélectionnée,
+\item Touche \key{Ctrl-A} pour ajouter une branche en dessous.
+\end{itemize}
+Il est aussi possible d'ajouter une branche qui soit le \og père \fg{}
+de la branche courante, c'est à dire insérer {\em devant}  la branche
+courante. Cela peut-être fait par le menu de contexte.
+
+\hint{Pour effacer une branche appuyer sur \key{CTRL-X}. Si cela
+est validé dans le menu des préférences (voir \ref{settings}), vous
+pouvez aussi utiliser la touche \key{Del}.}
+
+
+\subsection{Circuler dans une carte}
+
+
+\subsubsection*{Sélectionner des branches}
+
+Pour sélectionner des branches vous pouvez utiliser le bouton gauche
+de la souris ou les flèches de direction. Suivant l'{\em orientation}
+du départ de la branche utiliser la touche \key{\la} ou \key{\ra}
+pour se déplacer plus près de la racine ou plus profondément dans
+les branches. Dans un jeu de branches que nous appellerons {\em
+sous-arbre}, vous pouvez utiliser \key{\ua} et \key{\da} pour
+monter et descendre. Vous pouvez aussi utilisez \key{Home} et \key{End}
+pour sélectionner la première ou la dernière branche.
+
+
+\subsubsection*{Déplacer la partie visible de la carte}
+
+À force d'ajouter des branches, la carte peut devenir plus grande
+que la fenêtre du mapeditor. Vous pouvez utiliser les ascenseurs à
+droite et en bas de la fenêtre pour déplacer la vue. C'est plus facile
+en utilisant le bouton gauche de la souris. Cliquez n'importe où sur
+la {\em surface active de la fenêtre} : choisissez un espace libre
+entre des branches. Le pointeur de la souris va se transformer en
+main, maintenant déplacez la souris pour voir la partie désirée.
+
+Si vous sélectionnez les branches en utilisant les flèches, la carte
+va se déplacer pour que la branche sélectionnée soit toujours visible.
+
+
+\subsubsection*{Zoomer la carte}
+
+Lorsqu'on travaille sur des grandes cartes, la fonction {\em zoom}
+devient pratique. Vous pouvez utiliser :
+\begin{itemize}
+\item à partir du menu : View \ra Zoom in, View \ra Zoom out, View \ra
+reset Zoom. 
+\item la barre de fonction~\includegraphics[width=3cm]{images/zoom-buttons.png} 
+\end{itemize}
+Cliquer sur la loupe avec la croix rouge ré-affiche la carte à sa
+taille originale.
+
+
+\subsubsection*{Fonction de recherche}
+
+\label{findwindow} Avec une grande carte, une fonction de recherche
+devient nécessaire. Ouvrir la fenêtre de recherche :
+
+\begin{center}
+\includegraphics[width=6cm]{images/find-window.png} 
+\par\end{center}
+
+La fonction va rechercher le texte dans toutes les branches et dans
+les notes associées. À chaque fois que vous appuyez sur le bouton
+\og Find \fg{} il va rechercher la prochaine occurrence qui est
+sélectionnée automatiquement. Si la recherche échoue, un court mess
+sage \og Nothing found \fg{} (rien trouvé) va apparaître en bas
+dans la {\em barre de status} du mapeditor.
+
+
+\subsubsection*{\label{hideunselected}Garder la visibilité, cacher une partie de
+la carte}
+
+Une très grande arborescence (une branche avec une centaine d'enfants
+par exemple) rend difficile la vue d'ensemble de la carte. Vous pouvez
+cacher les enfants en les {\em enroulant}. Cette fonction est souvent
+appelée {\em escamotage} (folding). Pensez que tout le sous-arbre
+est dessiné sur un rouleau de papier. Vous pouvez le dérouler ou l'enrouler
+pour ne voir que la première ligne.
+
+Pour escamoter ou ré-afficher une branche et ses fils vous pouvez
+au choix : 
+\begin{itemize}
+\item appuyez sur \key{Scroll Lock} ou \key{S},
+\item appuyer sur le bouton milieu de la souris,
+\item choisir l'icône sur le menu de travail.
+\end{itemize}
+Si vous sélectionnez une branche cachée --par la fonction de recherche
+ou en utilisant les flèches de direction par exemple-- elle va devenir
+provisoirement visible. Cela est montré comme un défilement avec une
+petite loupe. Si la partie \og dé-cachée \fg{} n'est plus nécessaire,
+elle est de nouveau cachée automatiquement. Il est possible de rendre
+toutes les branches visibles en utilisant le menu \og Edit\ra Unscroll
+all scrolled branches \fg{}.
+
+Vous pouvez cacher des parties de la carte pour l'exporter dans une
+page web ou pour une présentation par exemple voir \ref{hideexport}
+pour plus de détails.
+
+
+\subsection{Modifier et déplacer les branches}
+
+
+\subsubsection*{Modifier le titre}
+
+On peut éditer le titre en sélectionnant la branche puis au choix
+:
+\begin{itemize}
+\item appuyer sur \key{Enter} 
+\item ou \key{F2} 
+\item faire un double clic avec le bouton gauche de la souris.
+\end{itemize}
+Écrivez votre nouveau titre (ou éditez le) puis appuyez sur \key{Enter}
+pour valider.
+
+
+\subsubsection*{Déplacer une branche}
+
+Le moyen le plus simple de déplacer une branche est de la sélectionner
+avec le bouton gauche de la souris et de la déplacer à sa destination
+en maintenant le bouton enfoncé. Suivant la branche elle sera :
+\begin{itemize}
+\item déplacée vers la destination,
+\item {\em liée } à un nouveau {\em parent} (mapcenter ou branche) 
+\end{itemize}
+Si vous déplacez la branche au dessus d'une autre ou du mapcenter,
+vous pourrez constater que le lien le connectant à l'ancien parent
+va être changé pour aller au nouveau situé sous le curseur de la souris.
+Si vous relâchez alors le bouton, la branche va être reliée.
+
+Si vous relâchez le bouton n'importe où, le résultat dépendra du type
+de branche que vous déplacez :
+\begin{itemize}
+\item Une branche principale directement connectée au mapcenter. Il va rester
+à sa nouvelle position,
+\item Une autre branche \og ordinaire \fg{} va rejoindre sa position d'origine.
+\end{itemize}
+Vous pouvez ainsi facilement réarranger la disposition des branches
+principales pour qu'elles ne recouvrent pas leurs branches filles.
+Il y a un autre avantage à déplacer les branches, surtout si vous
+voulez {\em réorganiser} un sous-arbre. Vous pouvez monter ou descendre
+une branche par l'action suivante au choix :
+\begin{itemize}
+\item appuyer sur \key{Page Up} ou \key{Page Down},
+\item sélectionner Edit \ra Move branch,
+\item appuyer sur les icônes de la barre de menu : \includegraphics[width=1.5cm]{images/move-buttons.png} 
+\end{itemize}
+%tipp
+Il y a un autre moyen de déplacer des branches : si vous appuyez sur
+\key{Shift} or \key{Ctrl} en bougeant la souris, la branche va
+être ajoutée au-dessus ou au-dessous de la branche sur laquelle la
+souris est. Cela peut être utilisé pour classer les branches dans
+une carte.
+
+
+\subsection{Des couleurs et des images : utiliser le côté droit de votre cerveau}
+
+
+\subsubsection*{Changer la couler d'un titre}
+
+Vous pouvez utiliser des couleurs pour mettre plus d'informations
+sur la carte par exemple mettre du rouge, du vert et d'autres couleurs
+pour montrer la priorité des tâches. Pour ce faire : 
+\begin{itemize}
+\item utiliser le menu et choisir : Format \ra Set Color 
+\item utiliser la barre de menu :
+
+
+\begin{center}
+\includegraphics[width=3cm]{images/color-buttons.png} 
+\par\end{center}
+
+\end{itemize}
+Le premier bouton (noir dans la figure ci-dessus) montre la couleur
+courante. Cliquer dessus vous permet de choisir une autre couleur.
+Vous pouvez \og piquer \fg{} la couleur d'une autre branche en la
+sélectionnant et en utilisant le bouton \og pipette \fg{}. Les deux
+icônes avec une palette colorent la branche sélectionnée avec la couleur
+courante. Alors que la première ne colore que la sélection, la deuxième
+colore tous les fils de la branche sélectionnée.
+
+%tipp
+Une autre fonction très utile est le \og copier couleur \fg{} en
+utilisant la souris : sélectionner une branche qui doit avoir la nouvelle
+couleur appuyez \key{Ctrl} et simultanément cliquez avec le bouton
+gauche sur une autre branche pour copier sa couleur dans la branche
+sélectionnée. Tout le sous-arbre sera coloré. Si vous ne voulez colorer
+que la sélection appuyez sur \key{Shift} au lieu de \key{Ctrl}.
+
+
+\subsubsection*{Utiliser les indicateurs}
+
+\vym possède des indicateurs variés. Ils sont visibles dans la barre
+de menu en haut de la mapeditor. (Note : Comme toutes les barres de
+menu, vous pouvez les déplacer sur le côté droit ou gauche ou même
+les détacher. Prenez la ligne pointillée à gauche de la barre de menu
+avec le bouton gauche de la souris.) \maximage{images/default-flags.png}
+Si vous avez une branche sélectionnée, vous pouvez positionner n'importe
+quel indicateur en les cliquant sur la barre de menu. Les boutons
+de la barre de menu changent d'état et reflètent l'état des indicateurs
+de la branche sélectionnée. Ainsi pour effacer un indicateur d'une
+branche, sélectionnez la branche et cliquez sur le bouton de la barre
+de menu enfonce.
+
+Pour l'instant \vym utilise deux sortes d'indicateurs : les {\em
+Indicateurs Standard} et les {\em Indicateurs Système}. Les indicateurs
+standard sont ceux que l'on voit dans la barre de menu. Les Indicateurs
+Système sont positionnés par \vym pour indiquer qu'il y a par exemple
+de l'information supplémentaire dans une note (plus d'information
+dans \ref{noteeditor}). Dans des versions futures de \vym il pourra
+y avoir une autre sorte d'indicateurs éditables par l'utilisateur.
+
+
+\subsubsection*{Images}
+
+Le moyen le plus simple pour ajouter une image à une branche est de
+la déplaçer par exemple à partir d'un navigateur dans le mapeditor
+pendant qu'elle branche est sélectionnée.
+
+Vous pouvez aussi ajouter une image en ouvrant le menu contextuel
+d'une branche. Cliquez à droite sur la branche sélectionnée, choisissez
+\og Add Image \fg{}. Une fenêtre de dialogue vous permet de la choisir.%
+\footnote{Les formats d'images supportés sont : PNG, BMP, XBM, XPM et PNM. Sont
+aussi supportables JPEG, MNG et GIF, si spécialement configuré pendant
+la compilation dans  SUSE LINUX).%
+} Quand une image est sélectionnée dans le dialogue, un aperçu est
+affiché. Il est possible de sélectionner plusieurs images.
+
+Vous pouvez placer l'image où vous voulez, vous n'avez qu'à la déplacer
+avec la souris en appuyant sur le bouton gauche. Pour la lier à une
+autre branche, appuyer sur la touche \key{Shift} en la déplaçant.
+Pour l'effacer appuyer sur la touche \key{Del}.
+
+Si vous cliquez à droite sur une image, un menu de contexte s'ouvre
+qui vous permet de sélectionner un des multiples format d'image. Puis
+une fenêtre s'affiche pour sauver l'image.
+
+\hint{On utilise cela  pour \og exporter \fg{} l'image, l'image
+sera sauvegardée dans la carte elle-même. Vous pouvez aussi copier-coller
+des images mais il n'est pas possible de lui ajouter des objets. Les
+images sont considérées comme des \og particularités supplémentaires%
+\footnote{extra feature (N.d.T.)%
+} \fg{}. Elles pourraient rendre le travail avec la carte beaucoup
+plus complexe par exemple en liant des images à des images.}
+
+L'option \og Use for export \fg{} contrôle la sortie des exportations
+par exemple en HTML : si positionné à NON, l'image n'apparaîtra pas
+dans le {\em texte} de la sortie. C'est utile pour les grandes
+images ou si des images sont utilisées comme trames comme par exemple
+le nuage autour d'une partie de la carte. Elle n'apparaîtront pas
+au milieu du texte.
+
+Pour le moment le support des images est provisoire : les images sont
+sauvées avec les autres données de la carte dans le fichier \texttt{.vym}.
+Des versions futures incluront plus de possibilités comme le redimensionnement
+des images et changer sa transparence et l'inclure dans le fond de
+la carte), etc.
+
+
+\subsubsection*{Trames}
+
+Une trame peut être ajoutée à une branche dans la {\em fenêtre des
+propriétés} (voir \ref{propwindow}). Vous pouvez aussi utiliser
+des images comme trames. Regardez la carte de démonstration \texttt{todo.vym}
+comme exemple, où le mapcenter est un nuage. Vous pouvez utiliser
+un programme de dessin externe comme\texttt{ gimp} pour créer une
+image, de préférence avec un canal de transparence, ainsi vous pouvez
+créer des trames qui n'ont pas de bord rectangulaire, comme un nuage.
+
+
+\subsection{Conception du fond des cartes et des liens de connections}
+
+La conception du fond d'une carte et aussi des liens reliant les diverses
+parties de la carte peuvent être changés par :
+\begin{itemize}
+\item la sélection du format à partir du menu,
+\item en cliquant à droite sur le fond de la carte, ce qui ouvre un menu
+de contexte.
+\end{itemize}
+
+\subsubsection*{Trame de fond}
+
+La couleur est choisie (et aussi affichée) par \og Set background
+colour \fg{}. Vous pouvez aussi choisir une image de fond d'écran
+quoique cela ne soit pas recommandé. Travailler sur la carte devient
+lent et l'image ne peut être positionnée librement.
+
+
+\subsubsection*{Couleur des liaisons}
+
+Les liaisons reliant les branches peuvent être colorées de deux façons
+: 
+\begin{itemize}
+\item utiliser la même couleur pour le titre et la ligne représentant la
+liaison,
+\item utiliser {\em une} couleur pour toutes les liaisons et choisir
+des couleurs différentes pour les titres. La couleur par défaut des
+liaisons des branches est bleu.
+\end{itemize}
+Cette dernière couleur peut être choisie par \og Set link colour \fg{}.
+Positionner ou invalider l'option \og Use colour of heading for link \fg{}
+pour basculer entre deux choix dans votre dessin.
+
+
+\subsubsection*{Style de liaison}
+
+\vym offre quatre styles différents pour l'apparence des liaisons
+:
+\begin{itemize}
+\item ligne,
+\item parabole,
+\item grosse ligne,
+\item parabole épaisse.
+\end{itemize}
+Les styles \og épais \fg{} ne sont actifs que pour les liaisons
+partant du mapcenter, les liaisons pour le reste de la carte sont
+toujours \og fines \fg{}.
+
+
+\subsection{Liens à d'autres documents et aux pages web}
+
+\vym admet deux types de liens externes :
+\begin{itemize}
+\item document qui va être ouvert dans un navigateur externe,
+\item carte \vym, qui sera ouverte par \vym lui-même.
+\end{itemize}
+En supplément aux liens externes, il y en a d'autres internes, reliant
+une branche à une autre sur la même carte. Elles sont appelées {\em
+XLinks} et sont expliquées à la section ~\ref{xlinks}.
+
+
+\subsubsection*{navigateur}
+
+Les navigateurs modernes comme \texttt{konqueror et Firefox} sont
+capables d'afficher des types de fichiers variés locaux ou sur Internet.
+Pour saisir l'~URL d'un document appuyez sur la touche \key{U}
+ou cliquez à droite sur une branche pour ouvrir le menu contextuel
+puis choisir \og References\ra Edit URL \fg{}. Si vous voulez ouvrir
+une fenêtre de dialogue pour choisir plus facilement un fichier local
+tapez ~\key{SHIFT-U}.
+
+Lorsqu'une URL a été entrée, un petit globe apparaît dans la branche.
+On cliquant sur ce globe ou dans le menu contextuel, le navigateur%
+\footnote{Le navigateur peut être changé dans le menu Settings (voir \ref{settings}).%
+} externe sera lancé :
+
+\begin{center}
+\includegraphics[width=0.5cm]{images/flag-url.png} 
+\par\end{center}
+
+Pour plus d'informations sur le travail avec les signets et les navigateurs
+voir \ref{bookmarks}.
+
+Dans le menu de contexte, il y a une option pour ouvrir toutes les
+URL trouvées dans le sous-arbre de la branche sélectionnée. C'est
+très pratique pour ouvrir tout un jeu de liens dans le navigateur
+surtout si celui-ci dispose d'index (comme \texttt{konqueror}%
+\footnote{ou \texttt{firefox} (N. d. T.)%
+}).
+
+
+\subsubsection*{carte \vym }
+
+Pour lier une branche à une autre carte \vym  cliquer à droite sur
+une branche et choisir : \og Édit \vym links \fg{}. Une fenêtre
+de dialogue sur les fichiers s'ouvre pour vous permettre de choisir
+le fichier voulu. Une branche avec un lien est marquée par :
+
+\begin{center}
+\includegraphics[width=0.5cm]{images/flag-vymlink.png} 
+\par\end{center}
+
+Cliquer sur cet indicateur, dans la barre de menu ou dans le menu
+de contexte va ouvrir cette carte dans un autre onglet. (voir \ref{tabs}
+pour le travail sur plusieurs cartes). Pour effacer un lien existant,
+cliquer à droite sur la branche et choisir \og Delete \vym link \fg{}.
+
+Dans le menu contextuel, il y a aussi une option pour ouvrir tous
+les liens vers des fichiers \vym  du sous-arbre de la branche sélectionnée
+dans la carte. C'est utile pour ouvrir simultanément une collection
+de cartes en relation avec la carte courante.
+
+Note technique : en interne \vym utilise des chemins absolus, pour
+éviter d'ouvrir plusieurs fois la même carte. Quand la carte est sauvegardée,
+le chemin est converti en relatif (par exemple \texttt{/home/user/vym.map}
+devient\texttt{ ./vym.map}. Cela rend aisé d'utiliser des cartes différentes
+sur plusieurs ordinateurs et de les exporter en HTML pour plus tard.
+
+
+\subsection{cartes multiples}
+
+\label{tabs} Vous pouvez travailler sur plusieurs cartes en même
+temps. Chaque nouvelle carte est ouverte dans un {\em onglet}.
+Les onglets des cartes disponibles sont situés en haut du mapeditor.
+Vous pouvez utiliser les fonctions couper-copier-coller pour transférer
+des données d'une carte à l'autre.
+
+%todo
+
+
+%TODO
+%\subsubsection{Menus}
+%\subsubsection{Keyboard shortcuts}
+
+
+% Settings
+% Images
+% Copy & Paste
+% Working with tabs (multiple maps)
+% Exporting
+% Scrolling
+
+
+
+\section{Noteeditor}
+
+\label{noteeditor}Si vous voulez mettre plus de texte sur une branche
+(par exemple un email complet ou une recette de cuisine ou une palanquée
+de code source) vous pouvez utiliser le noteeditor. \maximage{images/noteeditor_fr.png}
+Cet éditeur affiche le texte associé à la branche sélectionnée dans
+le mapeditor. 
+
+
+\subsection{États}
+
+Avant de pouvoir écrire ou mettre du texte dans le noteeditor, vous
+devez sélectionner une branche dans le mapeditor. La couleur du fond
+du noteeditor indique son état : 
+\begin{itemize}
+\item gris : pas de texte,
+\item blanc : du texte existe.
+\end{itemize}
+Dans le mapeditor, pour signaler qu'il y a une note avec plus d'informations
+pour une branche particulière, un petit indicateur \og note \fg{}
+apparaît dans l'entête de la branche. Regardez dans la branche en
+bas à droite de la carte suivante :\maximage{images/branches-flags_fr.png}
+
+
+\subsection{Importer et exporter des notes }
+
+Une note est automatiquement sauvée dans la carte \vym. Il est agréable
+d'importer une note à partir d'un fichier externe ou d'écrire cette
+note dans un fichier externe. Dans le noteeditor utiliser \og File\ra~Import \fg{}
+et \og File\ra~Export \fg{} pour l'import-export.
+
+
+\subsection{Éditer et imprimer une note}
+
+L'édition fonctionne comme un éditeur de texte classique, incluant
+les fonctions annule-recommence. Vous pouvez effacer entièrement la
+note en cliquant sur la corbeille. En cliquant sur le bouton d'impression
+seule la note et imprimée.
+
+
+\subsection{RichText: couleurs, paragraphes et texte formatté}
+
+\vym supporte le texte formatté (QT Rich Text) dans le noteeditor
+depuis la version 1.4.7. Les couleurs et les attributs de texte (par
+exemple italique, gras) sont positionnés avec les boutons au-dessus
+du texte. Le texte lui-même est divisé en paragraphes. Pour chaque
+paragraphe l'alignement peut être spécifié (par exemple centré ou
+à droite). Un paragraphe est terminé par appui sur la touche \key{Return}.
+Si vous voulez juste commencer une nouvelle ligne tapez \key{CTRL-Return}.
+
+
+\subsection{Les fontes et comment les changer rapidement}
+
+Le noteeditor est fait pour éditer de petites notes, ce n'est pas
+un traitement de texte complet. Suite à beaucoup de demandes, \vym
+supporte le texte formatté dans le noteeditor%
+\footnote{\vym utilise le format QRichtText, qui est un sous-ensemble du formattage
+fourni en HTML.%
+}. Deux fontes par défaut sont installées qui peuvent être choisies
+par le \og Settings menu \fg{} (voir \ref{settings}). Une fonte
+à chasse fixe, l'autre variable. La fonte à chasse fixe est utilisée
+pour les emails, le code source, etc l'autre pour les simples notes.
+Les deux fontes peuvent être facilement commutées en cliquant sur
+le bouton suivant dans la barre de menu :
+
+\begin{center}
+\includegraphics[width=0.5cm]{images/formatfixedfont.png} 
+\par\end{center}
+
+Dans le \og Settings menu \fg{} les deux fontes peuvent être choisies.
+La fonte par défaut peut aussi être changée en sélectionnant ou désélectionnant
+\og fixed font is default \fg{}.
+
+En supplément toute fonte installée sur votre système peut être utilisée.
+Notez que la fonte choisie sera aussi utilisée pour les exports HTML,
+si vous voulez exporter votre carte \vym  l'intranet ou sur le web,
+vous devrez utiliser des fontes disponibles partout.
+
+
+\subsection{Recherche de texte}
+
+Le noteeditor n'a pas sa propre fonction de recherche, utiliser \og Find \fg{}
+dans le mapeditor qui recherche également dans toutes les notes (voir
+\ref{findwindow}).
+
+
+\subsection{Coller du texte dans le noteeditor}
+
+Vous voulez souvent coller du texte dans le noteeditor à partir d'une
+autre application par exemple un email. Normalement \vym va créer
+un nouveau paragraphe pour chaque ligne. Si ce n'est pas ce que voulez
+vous pouvez choisir à partir de la barre de menu
+
+
+\section{Hello world%
+\footnote{\og bonjour monde \fg{} ou comment faire une carte de base%
+}}
+
+Cette section décrit comment \vym réagit au contact d'autres applications.
+Maintenant beaucoup d'applications lisent et écrivent leurs données
+en XML, le \og eXtensible Markup Language \fg{}. \vym utilise aussi
+XML pour sauver ses cartes, voir \ref{fileformat} pour une description
+plus détaillée.
+
+Si vous utilisez une autre application qui utilise le XML, il est
+possible de faire un filtre d'import-export pour \vym. Les volontaires
+sont accueillis avec plaisir ;-)
+
+
+\subsection{Import}
+
+\label{import}
+
+
+\subsubsection*{Signets KDE }
+
+L'éditeur de signets intégrés à KDE (Konqueror etc.) est limité, ainsi
+pourquoi ne pas utiliser \vym pour gérer les signets? Pour créer
+une nouvelle carte contenant contenant les signets courants choisir
+: \og File \ra Import\ra KDE Bookmarks \fg{}
+
+
+\subsubsection*{Mind Manager}
+
+\vym a pour l'instant un filtre d'importation rudimentaire pour convertir
+les cartes créées par {\em Mind Manager}%
+\footnote{Mind Manager est un logiciel commercial c'est à dire non libre. Il
+est développée par Mindjet pour Windows et le Mac. Les deux sont des
+marques enregistrées par Mindjet. Pour plus d'informations voir leur
+site web \href{http://mindjet.com}{http://mindjet.com}%
+} en cartes \vym. Les notes et les images ne sont pas converties pour
+l'instant. Vous pouvez importer des fichiers avec : \og File \ra
+Import\ra Mind Manager \fg{}.
+
+
+\subsubsection*{Structure et répertoires}
+
+\vym peut lire une structure de répertoires. C'est pour tester \vym,
+par exemple pour créer facilement de très grandes cartes utilisées
+pour les essais (oui il y a encore de la place pour optimiser \vym
+;-)
+
+
+\subsection{Export}
+
+\label{export} \label{hideexport} Souvent vous ne voulez pas exporter
+la carte entière, juste une partie. Par exemple, vous pouvez avoir
+une information supplémentaire dont vous voulez parler dans une présentation,
+alors que ces parties ne seront pas visibles pendant la présentation.
+Pour y arriver, vous pouvez \og cacher \fg{} des parties de la carte
+pendant les exports en positionnant l'indicateur \og hide in export \fg{}. 
+
+\begin{center}
+\includegraphics[width=0.5cm]{images/flag-hideexport.png} 
+\par\end{center}
+
+Vous pouvez basculer cet indicateur à partir de la barre de menu ou
+en tapant \key{H}. Notez qu'il y a une option globale dans le menu
+de préférences( \ref{settings}) pour basculer l'utilisation de cet
+indicateur. Par défaut cet indicateur est validé.
+
+
+\subsubsection*{Open Office}
+
+À partir de la version 2 Open utilise le \og Open Document Format \fg{},
+qui peut être écrit par \vym. Les options sont actuellement limitées.
+Il est possible d'exporter des présentations qui peuvent être ouvertes
+par Open Office Impress. En sélectionnant : \og File \ra Export\ra
+Open Office \fg{}.
+
+Vous obtenez une fenêtre de dialogue où vous pouvez choisir le fichier
+de sortie et le type de fichier : \maximage{images/export-oo.png}
+Les types de fichiers représentent différents types de patrons, qui
+peuvent être créés à partir d'un document Open Office avec un peu
+de travail manuel. La structure de la carte \vym est alors insérée
+dans ce patron. Il y a pour l'instant quelque limitations :
+\begin{itemize}
+\item \vym ne peut gérer la longueur des pages, vous devez tester et sans
+doute re-éditer le document Open Office pour éviter que le texte ne
+continue après la fin de la page,
+\item images et les indicateurs ne sont pas utilisés pour le moment,
+\item les notes sont écrites en texte brut , sans RichText 
+\item la gamme complète des patrons n'est pas disponible dans toutes les
+distributions.
+\end{itemize}
+Certains patrons utilisent des {\em sections} c'est à dire qu'ils
+insèrent le titre des branches principales comme des titres de section
+dans la présentation.
+
+
+\subsubsection*{Image}
+
+\vym supporte tous les formats d'image qui sont nativement supportés
+par le QT~toolkit : BMP, JPEG, PBM, PGM, PNG, PPN, XPM et XBM. Pour
+utilisation sur les sites web ou envoyer des images par email, PNG
+est un bon compromis taille/qualité. \vym utilise les options par
+défaut de Qt pour comprimer les images.
+
+
+\subsubsection*{ASCII}
+
+L'exportation en image est expérimental en ce moment. Plus tard cela
+sans doute fait avec des feuilles de style. La forme de la sortie
+risque de changer dans de futures versions de \vym.
+
+
+\subsubsection*{\protect\LaTeX{}}
+
+\vym peut générer un fichier d'entrée pour \LaTeX{}. C'est actuellement
+en développement, il n'y a pas d'option. En sélectionnant : \og File
+\ra Export\ra \LaTeX{} \fg{}.
+
+Vous allez ouvrir une fenêtre de dialogue pour le nom du fichier de
+sortie. Cette feuille peut ensuite être inclue dans un document en
+utilisant la commande : \begin{verbatim} \include{inputfile} \end{verbatim}
+
+
+\subsubsection*{Bookmarks KDE }
+
+\vym va écraser le fichier des bookmarks KDE puis tenter de le notifier
+à Konqueror en fonctionnement puis essayera de le notifier via DCOP
+que le fichier a changé. \emph{\vym ne crée pas de sauvegarde ! } Accessible
+par le menu : \og File \ra Export \ra KDE Bookmarks \fg{}.
+
+
+\subsubsection*{XHTML (Webpages)}
+
+C'est le format à utiliser si vous voulez créer une page web. Pour
+voir un exemple visitez la page d'entrée de \vym : \href{http://www.InSilmaril.de/vym}{www.InSilmaril.de/vym}
+
+Quelque explications sur son fonctionnement : avant d'exporter une
+carte en XHTML, elle est d'abord écrite en XML dans un répertoire
+(voir \ref{xmlexport}). Puis le programme externe \texttt{xsltproc}%
+\footnote{Sur la distribution SUSE Linux et quelques autres distributions \texttt{xsltproc}
+est installé par défaut.%
+} va être appelé pour traiter le fichier XML et générer le code HTML.
+Un dialogue permet à l'utilisateur de positionner diverses options
+:
+\begin{description}
+\item [{Include}] \textbf{image:} si positionné, \vym va créer une une
+image de la carte au début de la sortie HTML. Cliquer sur une branche
+va faire sauter à la section correspondante de la sortie.
+\item [{Colored}] \textbf{headings:} Si positionné à OUI, \vym va mettre
+les titres en couleur dans la partie texte avec les mêmes couleurs
+que celles utilisées dans la carte \vym. 
+\item [{Show}] \textbf{warnings:} Si positionné, \vym va demander avant
+d'écrire les données.
+\item [{Show}] \textbf{output:} Cela est utilisé principalement pour le
+dégogage. On va voir comment s'effectue le traitement du fichier XML
+en appelant le programme externe \texttt{xsltproc}. 
+\end{description}
+En complément les chemins des feuilles de styles CSS et XSL peuvent
+être indiqués. Par défaut sur SUSE~Linux elles sont dans : \texttt{/usr/share/vym/styles}%
+\footnote{N.dT. idem pour la version 1.10.0 sur Debian Etch%
+}.
+
+
+\subsubsection*{XML}
+
+\label{xmlexport} La carte est écrite dans un répertoire à la fois
+comme une image et comme un fichier XML. Le répertoire est choisi
+dans une fenêtre de dialogue. Si le répertoire n'est pas vide, vous
+allez être averti et on va vous prévenir que vous risquez d'écraser
+des fichiers.
+
+Il est possible d'exporter des cartes différentes dans le même répertoire.
+Chaque fichier généré va avoir le nom de la carte comme préfixe, par
+exemple e.g. \texttt{todo.vym} devient \texttt{todo.xml}, \texttt{todo.png},
+\texttt{todo-image-1.png} et ainsi de suite. C'est utile si par exemple
+un site web comporte des cartes liées qui doivent être rangées dans
+le même répertoire.
+
+
+\subsubsection*{Export d'une partie d'une carte}
+
+Sélectionnez la branche que vous voulez exporter avec ses fils, puis
+ouvrez le menu contextuel et choisissez {\em Save Selection}. Cela
+va créer un fichier avec le suffixe \texttt{.vyp}, qui est une abréviation
+de \og vym part \fg{}.
+
+
+\section{Édition avancée}
+
+
+\subsection{Propriétés d'un objet}
+
+Pour chacune des branches vous pouvez ouvrir une fenêtre auxiliaire
+(voir \ref{satellite}): la {\em property window%
+\footnote{fenêtre des propriétés%
+}}: 
+
+\begin{center}
+\includegraphics[width=8cm]{images/propwindow.png}
+\label{propwindow} 
+\par\end{center}
+
+%FIXME create screenshot
+%FIXME explain the tabs
+
+\begin{itemize}
+\item trame,
+\item lien (voir \ref{hideunselected}) 
+\item Layout (voir \ref{incimg}) 
+\end{itemize}
+
+\subsection{Revoir l'histoire : défaire et refaire %
+\footnote{Undo and Redo%
+}}
+
+\vym garde la trace de tous les changements faits à une carte. Le
+nombre de modifications qui peuvent être défaites est de 75 par défaut.
+L'historique complet peut être vu dans la {\em fenêtre d'historique}:
+\maximage{images/historywindow.png} \label{historywindow} un simple
+pas en arrière peut être défait ou refait en tapant \key{CTRL-Z}
+ou \key{CTRL-Y}, ou en utilisant les boutons de la barre de menu
+ou la {\em fenêtre d'historique}. Dans la {\em fenêtre d'historique},
+vous pouvez cliquer sur une ligne pour détailler toutes les actions
+faites jusqu'à ce moment, ou refaire toutes les actions en cliquant
+sur la dernière ligne.
+
+\hint{ Vous pouvez \og coller à partir du passé \fg{} : aller en
+arrière dans le temps avec la touche \key{CTRL-Z}, puis copier dans
+le tampon en tapant \key{CTRL-C}.
+
+Maintenant pour refaire toutes les actions, par exemple en tapant
+sur la touche \key{CTRL-Y} ou en cliquant sur la dernière action
+dans la {\em fenêtre d'historique}. Maintenant collez à partir
+du passé avec la touche \key{CTRL-V}. }
+
+
+\subsection{Macros}
+
+\label{macros} Les macros ont été ajoutées à \vym à la version~1.9.0.
+Jusqu'à présent elles sont provisoires, elles vont peut-être être
+remplacées par un langage de script plus performant (les commandes
+seront approximativement les mêmes).
+
+Chaque touche de fonction (touches \key{F1} à \key{F12}) contient
+une macro, qui est exécutée sur la sélection courante lorsque la touche
+est enfoncée. Les macros par défaut changent la couleur d'un sous
+arbre ou positionnent la trame d'une branche : 
+
+\begin{center}
+\includegraphics[width=8cm]{images/macros_fr.png} 
+\par\end{center}
+
+Chaque macro est un script \vym qui est exécuté lorsque la touche
+correspondante est appuyée. L'emplacement par défaut des macros peut
+être changé dans le \og Settings menu \fg{}. Plus d'informations
+sur l'utilisation des scripts dans \vym peut être trouvé en appendice~\ref{scripts}.
+
+
+\subsection{Signets}
+
+\label{bookmarks} 
+
+
+\subsubsection*{Ouvrir des nouveaux signets au lieu de nouvelles fenêtres}
+
+Si vous utilisez \texttt{konqueror} comme navigateur, \vym peut se
+rappeler de la session de \texttt{konqueror }qui était ouverte en
+premier par \vym. Vous pouvez appuyer sur les touches \key{Ctrl}
+et cliquer pour ouvrir le lien dans un nouvel onglet.
+
+\vym peut aussi ouvrir une nouvel onglet dans Mozilla ou Firefox
+en utilisant la commande à distance %
+\footnote{(remote command) à \href{http://www.mozilla.org/unix/remote.html}{http://www.mozilla.org/unix/remote.html}%
+} de ces navigateurs.
+
+
+\subsubsection*{Copier/coller}
+
+Si vous voulez mettre vos bookmarks dans une carte, sélectionnez une
+branche où vous voulez ajouter le bookmark, puis collez simplement
+l'URL dans la carte à partir de votre navigateur. Vous pouvez aussi
+utiliser un titre existant comme URL : cliquez à droite sur la branche
+et sélectionnez : \og Use heading for URL \fg{}.
+
+
+\subsubsection*{Accès direct à la liste des bookmarks d'un navigateur}
+
+Voir les sections \ref{import} et \ref{export} sur les filtres d'import-export.
+
+
+\subsubsection*{URL spéciales}
+
+\vym peut convertir un titre d'une branche existante en URL. Cela
+marche pour Bugentries dans le système Novell Bugtracking : ouvrez
+le menu de contexte d'une branche (en cliquant à droite) et sélectionnez
+: \og Create URL to Bugzilla \fg{}.
+
+L'URL sera créé à partir du titre.
+
+
+\subsection{Associer des images à une branche}
+
+\label{incimg} La configuration par défaut d'une image est de flotter
+\og librement \fg{}. Les images peuvent être positionnées n'importe
+où dans le canevas cachant la partie correspondante de la carte.
+
+La solution est de l'insérer ou de l'inclure \og dans \fg{} une
+branche. Cela est fait au travers de la fenêtre de propriétés (voir
+\ref{propwindow}) par les menus : 
+\begin{itemize}
+\item include images horizontally 
+\item include images vertically 
+\end{itemize}
+L'images est positionnée relativement à sa branche mère, mais le titre
+et la bordure s'adapte à l'image flottante, voir en dessous : \maximage{images/includeImages_fr.png}
+
+
+\subsection{Mode modificateur}
+
+Les modificateurs sont par exemple la touche \key{Shift}, \key{Ctrl}
+ou \key{Alt}. Quand on appuie dessus pendant une action de la souris,
+\vym va effectuer une action différente de celle habituelle.
+
+%\key{Ctrl} or \key{Alt}is pressed while releasing the branch, it will be
+%added above/below the target, not as child of the target.
+
+
+Sans appuyer sur un modificateur, le premier clic sur la souris sélectionne
+une branche. Le comportement avec le modificateur \key{Ctrl} est
+sujet à à plusieurs options, qui peuvent être positionnées dans la
+barre de menu :
+
+\begin{center}
+\includegraphics[width=3cm]{images/modmodes.png} 
+\par\end{center}
+
+Le mode par défaut est de copier la couleur de la branche cliquée
+vers la branche sélectionnée. La figure au-dessus montre la barre
+de menu avec le modificateur par défaut sélectionné. Le deuxième modificateur
+vous permet de couper une branche complète avec un simple clic. Le
+troisième modificateur vous permet de créer des liens entre branches
+appelés {\em xLinks}. Cela est expliqué dans la section suivante
+\ref{xlinks}.
+
+
+\subsection{Cacher les liens d'objets non sélectionnés}
+
+\label{hidelink} Il est pratique de positionner librement une branche,
+comme une branche principale ou une image. Cela est possible pour
+toutes les branches, vous pouvez utiliser une branche principale et
+cacher ses liens de connexion au centre de la carte ou cacher le lien
+entre une branche fils et son parent. C'est utile par exemple pour
+les légendes ou pour une collection de liens \vym  pointant vers
+d'autres cartes : 
+
+\begin{center}
+\includegraphics[width=9cm]{images/hiddenlink_fr.png} 
+\par\end{center}
+
+Pour cacher le lien entre la branche et son parent ouvrir la fenêtre
+de propriétés et sélectionner \og Hide link if object is not selected \fg{}
+sur l'onglet \og Link \fg{}.
+
+
+\subsection{XLinks}
+
+\label{xlinks} Jusqu'à maintenant les données dans la carte \vym
+étaient sous forme d'arbre. En utilisant les xLinks vous pouvez lier
+une branche à n'importe quelle autre, comme en attachant une corde
+entre deux branches dans un vrai arbre. C'est très pratique dans des
+cartes compliquées, où vous avez des renvois qui ne peuvent être affichés
+dans la même zone visible de la fenêtre du {\em mapeditor}. La
+carte suivante tient sur un écran, mais montre comment les données
+peuvent être reliées. Dans le graphisme il y a un lien à partir d'une
+tâche (prepare a presentation) à l'information générale : \maximage{images/xlink_fr.png}
+Notez qu'un xLink qui pointe sur une branche non visible (parce qu'elle
+est \og enroulée \fg{}), est montrée par une flèche horizontale.
+Regardez la branche \lq Tuesday\rq dans la capture d'écran ci-dessus.
+
+
+\subsubsection*{Créer un xLink}
+
+Choisir le type de lien à partir de la barre de modifier (en cliquant
+l'icône de la barre de menu ou en tapant \key{L}). Sélectionner
+la branche d'où le xLink doit partir. Appuyer sur le modifier \key{Ctrl}
+puis cliquez la branche et amenez le curseur de la souris où le lien
+doit se terminer. Un lien est tracé qui suit le pointeur de la souris.
+Le lien devient permanent quand vous relâchez le bouton de la souris
+.
+
+
+\subsubsection*{Modifier ou effacer un xLink}
+
+Sélectionner une extrémité du xLink. Ouvrir le menu contextuel et
+sélectionnez \og  Edit xLink \fg{}. Un sous menu contenant tous
+les xLinks de la branche apparaît. Sélectionnez en un et la fenêtre
+de dialogue xLink dialogue s'ouvre, où vous pouvez sélectionner la
+couleur, la largeur et aussi effacer le xLink.
+
+
+\subsubsection*{Suivre un xLink}
+
+Dans une carte \vym compliquée il est commode de sauter à l'autre
+extrémité d'un xLink. Vous pouvez le faire en ouvrant le menu contextuel
+et en cliquant \og  Goto xLink \fg{} puis en sélectionnant le xLink
+qui vous intéresse.
+
+
+\subsection{Ajouter et supprimer des branches}
+
+Le menu contextuel d'une branche montre quelques moyens supplémentaires
+pour ajouter ou supprimer des données. Vous pouvez supprimer une branche
+tout en gardant ses enfants. Les enfants sont alors liés au parent
+de la branche supprimée (son \og grand-parent \fg{}). Des branches
+identiques peuvent être ajoutées à des cartes existantes. Pour les
+raccourcis clavier regarder également dans le menu contextuel.
+
+
+\subsection{Ajouter une carte complète ou une partie}
+
+Sélectionner la branche où vous voulez ajouter une carte sauvée précédemment
+(\texttt{.vym}) ou une partie de carte (\texttt{.vyp}), puis ouvrez
+le menu contextuel et choisissez {\em Add \ra Add Map (Insert)}.
+Pour l'importation vous pouvez choisir entre {\em Add Map (Insert)}
+ou {\em Add Map (Replace)}: les données importées vont être ajoutées
+à la branche sélectionnée.
+
+
+\section{\vym sur Mac OS X}
+
+
+\subsection{Vue d'ensemble}
+
+Il y a deux moyens de faire fonctionner \vym sur les Macs : 
+
+
+\subsubsection*{Qt Mac Edition:}
+
+\vym a là une l'apparence bien connue de Mac. \vym est disponible
+comme paquet d'application Mac OS X dans une image disque (\texttt{vym.dmg}).
+Il a été compilé et testé sur Mac~OS~10.4. Ce paquet inclut les
+librairies Qt de Trolltech.
+
+
+\subsubsection*{version X11 }
+
+\vym peut aussi être lancé dans sa version Linux, mais les menus
+et l'utilisation seront ceux de Linux c'est à dire que les barres
+de menu sont différentes.
+
+
+\subsection{Menu de contexte et touches spéciales}
+
+La majorité des Macs n'a malheureusement qu'un bouton de souris. Pour
+pour voir le menu contextuel qui normalement est ouvert avec un clic
+droit, vous devez cliquer en appuyant sur la touche \key{command}.
+
+Surtout sur les portables quelques touches utilisées sur les PC sont
+manquantes. La version de \vym avec QT-Mac a ses propres raccourcis
+clavier. Pour les trouver regardez les entrées des menus, les raccourcis
+visibles à côté de cette entrée. Les boutons de la barre de menu peuvent
+aussi avoir des raccourcis, positionnez le curseur de la souris sur
+un bouton et la fenêtre d'aide apparaîtra.
+
+
+\subsection{Voir des liens externes}
+
+\vym sur Mac utilise le système d'appel \texttt{/usr/bin/open} pour
+voir les liens. Mac~OS détermine automatiquement si le lien est un
+pdf ou une page web et ouvre le bon visionneur.
+
+\appendix \newpage{}
+
+
+\section{\label{settings}\vym : processus d'initialisation et de configuration}
+
+
+\subsection{Menu des préférences (Settings menu)}
+
+Le {\em Menu des préférences } vous permet de configurer \vym
+suivant vos besoins :
+
+
+\subsubsection*{Choisir l'application pour ouvrir les fichiers PDF }
+
+Choisir un visionneur PDF installé sur votre système.
+
+
+\subsubsection*{Choisir le navigateur (vers les liens externes)}
+
+Choisissez votre navigateur favori.
+
+
+\subsubsection*{Positionner le chemin pour les macros}
+
+Le chemin par défaut pour exécuter les macros correspondantes quand
+vous appuyez sur une des touches de fonction. Chaque touche correspond
+à un fichier (\texttt{macro-1.vys..macro12.vys}) dans le chemin de
+recherche.
+
+
+\subsubsection*{Niveaux défaire/refaire}
+
+Fixer le nombre de défaire/refaire. Par défaut :75.
+
+
+\subsubsection*{Sauvegarde automatique et temps entre sauvegardes}
+
+La sauvegarde automatique des cartes peut être désactivée. Le temps
+entre sauvegardes est indiqué en secondes. 
+
+Quand la sauvegarde d'une carte est demandée \texttt{example.vym},
+\vym  renomme le fichier existant en \texttt{example.vym\textasciitilde{}}
+avant d'écrire le fichier \texttt{example.vym.}
+
+
+\subsubsection*{Éditer la branche après l'avoir créée}
+
+Si positionné, le titre de la nouvelle branche va être édité immédiatement
+après avoir été créé.
+
+
+\subsubsection*{Sélectionner la branche après l'avoir créé}
+
+Si positionné, la nouvelle branche va être sélectionnée après avoir
+été créée. Quand vous réfléchissez sur un mot donné, vous ne voulez
+pas aller dans les détails, mais garder l'attention sur ce mot. Le
+choix par défaut est de {\em ne pas}  sélectionner la nouvelle branche
+créée.
+
+
+\subsubsection*{Sélectionner la branche existante}
+
+Si positionné et que vous commencez à éditer le titre de la branche,
+le texte du titre va être sélectionné. Pratique pour copier/coller
+dans d'autres applications.
+
+
+\subsubsection*{Touche effacement}
+
+Si positionné, la touche \key{Delete} est validée pour détruire
+les objets. Attention aux confusions avec la touche \key{Insert}sur
+les claviers de PC.
+
+
+\subsubsection*{Indicateurs exclusif}
+
+Si positionné quelques indicateurs peuvent être exclusifs, par exemple
+les émoticons.
+
+
+\subsubsection*{Autoriser l'indicateur caché}
+
+Si positionné, chaque branche qui a l'indicateur caché associé (voir
+\ref{hideexport}) ne sera pas présente dans les exports.
+
+
+\subsection{Fichier de configuration}
+
+Au démarrage, \vym va regarder un fichier de configuration spécifique
+à l'utilisateur contenant ses réglages personnels comme la position
+des fenêtres, les menus de travail, etc. Si ce fichier n'existe pas,
+il sera créé. Le fichier est localisé dans la racine du répertoire
+de l'utilisateur. Sa position exacte dépend de la plate-forme :
+
+\begin{center}
+\begin{tabular}{cl}
+\textbf{Plate-forme}  & \textbf{Fichier de configuration }\tabularnewline
+\hline 
+Linux  & \texttt{$\sim$/.config/InSilmaril/vym.conf}  \tabularnewline
+Mac OS X  & \texttt{/Users/NAME/Library/Preferences/com.insilmaril.vym.plist}
+ \tabularnewline
+\end{tabular}
+\par\end{center}
+
+Le fichier peut être édité manuellement ou sur Mac~OS~X avec le
+Property List Editor (installé avec xtools).
+
+
+\subsection{Chemin vers les ressources}
+
+\vym va essayer de trouver ses ressources (images, feuilles de style,
+filtres, etc) aux endroits suivants :
+\begin{enumerate}
+\item chemin donné par la variable d'environnement\texttt{ VYMHOME}. 
+\item Si appelé avec l'option {\em local}  (voir \ref{options} en dessous),
+\vym va chercher ses ressource dans le répertoire courant.
+\item \texttt{/usr/share/vym} 
+\item \texttt{/usr/local/share/vym} 
+\end{enumerate}
+
+\subsection{Options de la ligne de commande}
+
+\label{options} \vym a les options suivantes lors de l'appel en
+ligne de commande%
+\footnote{chaque option doit être précédé du \og - \fg{} classique (N.d.T.)%
+} :
+
+\begin{center}
+\begin{tabular}{cccp{8cm}}
+ &  &  & \tabularnewline
+\textbf{Option } & \textbf{Résumé } & \textbf{Argument } & \textbf{Description }\tabularnewline
+\hline 
+v  & version  &  & indiquer la version et le nom de code de \vym\tabularnewline
+l  & local  &  & Utiliser les chemins locaux pour les feuilles de style,les traductions,
+les icônes, etc.
+
+Pratique pour les tests\tabularnewline
+h  & aide  &  & montrer l'aide\tabularnewline
+r  & lancement  & fichier  & charger et lancer un script\tabularnewline
+q  & quitter  &  & quitter après le démarrage. Utile pour les benchmarks.\tabularnewline
+\end{tabular}
+\par\end{center}
+
+Vous pouvez aussi donner plusieurs noms de fichiers dans la ligne
+de commande pour laisser \vym ouvrir plusieurs cartes à la fois.
+
+
+\section{Scripts}
+
+\label{scripts} %FIXME
+
+
+TODO: désolé cette section du manuel de \vym est provisoire.
+
+
+\subsection{Exemple de scripts}
+
+
+\subsubsection{Exporter un jeu de cartes}
+
+\begin{verbatim} \# Simple vym script to export images of various
+maps simultanously exportImage (); \end{verbatim} Le script au-dessus
+peut être utilisé pour exporter automatiquement toutes les cartes
+d'un répertoire. Si le script a pour nom \texttt{export-image.vys},
+appeler \vym avec\begin{verbatim} vym --quit --run export-image.vys
+{*}.vym \end{verbatim}
+
+
+\section{Aider \vym}
+
+J'ai écrit personnellement 98\% du code moi-même. Aucune surprise
+: \vym correspond exactement à mes besoins. Néanmoins j'encourage
+tous les utilisateurs de \vym à contribuer. Peut-être pas seulement
+avec des demandes d'extensions, mais aussi avec du code, de nouveaux
+filtres import/export, des traductions, etc. Dans cet appendice, je
+vais essayer de montrer combien il est facile de développer avec \vym.
+J'attends vraiment de vos nouvelles au sujet de vos futures extensions
+!
+
+
+\section{Obtenir de l'aide}
+
+
+\subsection*{Foire Aux Questions}
+
+Pointer la FAQ disponible sur le site de \vym (en anglais) :
+
+\begin{center}
+\href{http://www.InSilmaril.de/vym/faq.html}{http://www.InSilmaril.de/vym/faq.html} 
+\par\end{center}
+
+
+\subsection*{Mailinglists}
+
+Il y a deux mailinglists: 
+\begin{itemize}
+\item \texttt{vym-forum} est le forum des utilisateurs \vym pour discuter
+de points divers, 
+\item \texttt{vym-devel} est fait pour les gens qui veulent contribuer à
+\vym. 
+\end{itemize}
+Vous pouvez voir les archives et vous inscrire à :
+
+\begin{center}
+\href{https://sourceforge.net/mail/?group_id=127802}{https://sourceforge.net/mail/?group\_id=127802} 
+\par\end{center}
+
+
+\subsection*{Contacter l'auteur}
+
+\label{author} En premier essayer les mailinglists. Pour tout autre
+problème contacter l'auteur Uwe Drechsel à :
+
+\begin{center}
+\href{mailto:vym@InSilmaril.de}{vym@InSilmaril.de} 
+\par\end{center}
+
+
+\section{Comment reporter un bug}
+
+Quoique Sourceforge ait son propre système de rapport de bugs, je
+préfère que vous me contactiez directement (voir \ref{author}) ou
+encore mieux : vous pouvez mettre un rapport de bug dans Bugzilla,
+le système de rapport de bugs de openSUSE : 
+
+\begin{center}
+\href{http://en.opensuse.org/Submit_a_bug}{http://en.opensuse.org/Submit\_a\_bug} 
+\par\end{center}
+
+Je construis \vym régulièrement pour openSUSE, vous pouvez faire
+un rapport pour une autre version , même si vous utilisez un autre
+système d'exploitation. N'oubliez pas de me dire lequel vous utilisez
+:
+\begin{itemize}
+\item les manipulations exactes pour reproduire le bug,
+\item la version et la date de construction de \vym (voir l'aide Help \ra
+About \vym) 
+\item le matériel et le système d'exploitation
+\end{itemize}
+
+\section{Compiler à partir des sources }
+
+
+\subsection{Obtenir les sources}
+
+\label{getsources} Vous pouvez trouver la dernière version de \vym
+sur le site du projet :
+
+\begin{center}
+\href{https://sourceforge.net/projects/vym/}{https://sourceforge.net/projects/vym/} 
+\par\end{center}
+
+Là vous pouvez les extraire à partir à partir du dépot des source
+(CVS):\\
+
+
+\begin{verbatim} cvs -d:pserver:anonymous@cvs.sf.net:/cvsroot/vym
+checkout code \end{verbatim}
+
+
+\subsection{le toolkit Qt }
+
+Qt est une trousse à outils C++ multiplateforme pour les GUI%
+\footnote{GUI Graphical User Interface interface graphique pour l'utilisateur
+(N.d.T.)%
+} et le développent d'applications. Il fournit une portabilité avec
+le même source sur MS~Windows, Mac~OS~X, Linux et toutes les versions
+principales commerciales d'Unix. Qt est aussi disponible pour les
+systèmes embarqués. Qt est un produit de la société Trolltech. Pour
+plus d'informations voir :
+
+\begin{center}
+\href{http://www.trolltech.com/qt/}{www.trolltech.com/qt} 
+\par\end{center}
+
+
+\subsection{Compiler \vym }
+
+Assurez vous que vous avez installé l'environnement QT proprement,
+voir la documentation pour les détails. Vous devez avoir la commande
+Qt\texttt{ qmake} dans votre variable d'environnement \texttt{PATH},
+pusi lancez \begin{verbatim} \$ qmake $make$ make install \end{verbatim}
+La dernière commande \texttt{make install} a besoin des droits root.
+Elle n'est pas nécessaire si vous voulez juste tester \vym.
+
+%\subsubsection*{Compiling \vym on Macs}
+%FIXME
+
+
+
+\subsection{format des fichiers de \vym }
+
+\label{fileformat}Les cartes \vym ont un suffixe \texttt{\og .vym} \fg{}
+et représentent une archive compressée des données. Si vous voulez
+avoir une vue plus précise de la structure des données dans la carte
+\og mapname.vym \fg{}, décompressez la en lançant la commande :
+\begin{verbatim} \$ unzip mapname.vym \end{verbatim} Cela va créer
+les répertoires \texttt{images} et\texttt{ flags} dans votre répertoire
+courant et aussi la carte elle-même, normalement appelée \texttt{mapname.xml}.
+La structure XML de \vym s'explique d'elle-même, jetez un \oe il
+sur le fichier \texttt{mapname.xml}.
+
+Ce fichier XML peut être chargé directement dans \vym, il n'a pas
+besoin d'être compressé. Si vous voulez compresser toutes les données
+vous-même faites \begin{verbatim} \$ zip -r mapname.vym . \end{verbatim}
+pour compresser toutes vos données dans le répertoire courant.
+
+
+\subsection{Nouvelles fonctionnalités}
+
+Il y a beaucoup de nouvelles fonctionnalités qui sont installées dans
+\vym. Avec \vym vous avez reçu un répertoire avec un bon nombre
+d'exemples de cartes. Vous les trouverez en cliquant Help \ra Open~vym~example~maps.
+Vous y trouverez la carte \texttt{vym-projectplan.vym}. Elle liste
+une foule de choses qui seront faites dans le futur. Si vous avez
+d'autres idées, contactez l'équipe de développement à \texttt{vym-devel@lists.sourceforge.net}.
+
+
+\subsection{support pour de nouvelles langues}
+
+Pour pouvoir ajouter une nouvelle langue à \vym, vous devez disposer
+des sources (voir \ref{getsources}) et de l'installation de Trolltechs
+QT. une partie de QT sont des outils de développement, et particulièrement
+l'outil de traduction \og Linguist \fg{} qui est nécessaire.
+
+Dans quelques distributions Linux, les outils de développement sont
+un paquetage spécial, par exemple sur SUSE LINUX vous devez avoir
+installé : \begin{verbatim} libqt4-devel.rpm libqt4-devel-doc.rpm
+libqt4-devel-tools.rpm \end{verbatim} Si vous n'avez pas QT de base
+sur votre système, vous pouvez l'obtenir à : \href{http://www.trolltech.com}{http://www.trolltech.com}
+Une fois que vous êtes capable de compiler, vous pouvez traduire le
+texte dans \vym  lui-même en faisant les actions suivantes :
+\begin{itemize}
+\item supposons que nous voulons traduire une nouvelle langue \og NEW \fg{}
+au lieu de \og de \fg{} en allemand ou \og en \fg{} en anglais,
+\item copier le fichier \texttt{lang/vym\_en.ts} to l\texttt{ang/vym\_NEW.ts}
+(Le code lui-même contient la version anglaise),
+\item ajouter \texttt{lang/vym\_NEW.ts} dans la section TRANSLATIONS de
+vym.pro,
+\item lancer Linguist sur \texttt{vym\_NEW.ts} et faire la traduction,
+\item lancer \texttt{lrelease} pour créer \texttt{vym\_NEW.qm.}
+\item faire un make install pour installer le nouveau \vym  et tester la
+traduction
+\end{itemize}
+Si vous vous sentez courageux, vous pouvez traduire le manuel. Il
+est écrit en \LaTeX{}, vous devez juste changer le fichier \texttt{/tex/vym.tex}.
+(Linguist et QT ne sont pas nécessaires, mais il est utile de savoir
+comment travailler avec \LaTeX{} et pdflatex pour créer le PDF.)
+
+S'il vous plaît envoyez moi la traduction que vous avez faite. Je
+peux aussi vous donner une accès de développeur au projet, si vous
+voulez fournir régulièrement des traductions.
+
+
+\subsection{Nouveaux filtres d'export/import }
+
+\vym supporte des types de filtres variés. Les données peuvent être
+écrites directement, insérées dans des patrons ou peuvent être écrites
+en données XML et  ensuite être travaillées par des transformations
+XSL.
+
+La plupart des fonctionnalités d'import-export est disponible dans
+les classes ImportBase, ExportBase et les classes dérivées. Le tout
+se trouve dans \texttt{les fichiers imports.h} et \texttt{exports.h}.
+
+
+\subsection*{import/export direct}
+
+Un exemple pour l'export direct est l'export XML. Cette méthode touche
+l'implémentation de pratiquement tous les objets de \vym, aussi autant
+que possible utilisez une transformation XSL à la place.
+
+Si vous voulez savoir comment cela est fait, commencez à regarder
+\texttt{MapEditor::saveToDir} in \texttt{mapeditor.cpp}.
+
+
+\subsection*{patrons}
+
+Les patrons ont été introduits pour exporter dans le format opendoc
+utilisé par Open~Office. Pendant que je lisais la spécification du
+format (plus de 500 pages),%
+\footnote{ \href{http://www.oasis-open.org/}{http://www.oasis-open.org/}%
+} j'avais le sentiment que je ne voulais pas écrire l'export à partir
+de rien. Cela serait trop difficile pour adapter les styles à vos
+propres besoins par exemple le canevas.
+
+En analysant un document Open~Office existant, je trouvais qu'il
+y avait un grand nombre d'informations redondantes dans une présentation
+standard, par exemple chaque Item d'une liste est contenu dans sa
+propre liste. À la fin j'en arrivai à un style de présentation par
+défaut, qui peut encore être simplifié, si j'ai du temps de libre
+\ldots{}
+
+Les patrons existants sont encore en évolution, avant de développer
+votre propre style contactez moi. De base les étapes suivantes sont
+nécessaires pour que vous construisiez votre propre style :
+\begin{enumerate}
+\item créer un exemple dans Open Office. Utilisez un titre, les noms de
+auteurs, les entêtes de page, etc que vous pourrez facilement piquer
+dans le fichier de sortie,
+\item décompressez le document Open Office dans un répertoire,
+\item le fichier principal est appelé\texttt{ content.xml}. Toutes les données
+sont sur une seule ligne. Vous pouvez exploser les marques XML en
+utilisant le script \texttt{scripts/niceXML}, qui fait partie de la
+distribution de \vym. 
+\item copiez la sortie de \texttt{niceXML} dans \texttt{content-template.xml}.
+\item en regardant dans le détail , vous trouverez nombre de définitions
+inutilisées, par exemple les styles. Vous pouvez les effacer ou simplement
+les ignorer.
+\item Essayez de trouver votre titre, le nom de auteurs. \vym va remplacer
+les chaînes suivantes lors de l'export :
+
+
+\begin{center}
+\begin{tabular}{lp{4cm}}
+\texttt{<!-{}- INSERT TITLE -{}->}  & titre de la carte \tabularnewline
+\texttt{<!-{}- INSERT AUTHOR-{}->}   & auteur\tabularnewline
+\texttt{<!-{}- INSERT COMMENT -{}->}  & commentaire\tabularnewline
+\texttt{<!-{}- INSERT PAGES-{}->}  & contenu de la carte \tabularnewline
+\end{tabular}
+\par\end{center}
+
+Le contenu lui-même est généré d'une manière similaire en insérant
+des listes dans \texttt{page-template}. Les remplacements suivants
+sont effectues :
+
+\begin{center}
+\begin{tabular}{lp{7cm}}
+\texttt{<!-{}- INSERT PAGE HEADING-{}->}  & entête de la page (branche principale ou fils, dépendant de l'utilisation
+des sections) \tabularnewline
+\texttt{<!-{}- INSERT LIST -{}->}   & tous les fils de la branche du dessus\tabularnewline
+\end{tabular}
+\par\end{center}
+
+\end{enumerate}
+Actuellement les images sont exportées et les notes vont apparaître
+comme du texte sans mise au format ni couleur.
+
+
+\subsection*{XSL Transformation}
+
+\vym utilise des transformations XSL pour l'exportation (par exemple
+en XHTML) et pour l'importation des données(par exemple les bookmarks
+KDE). Il faut écrire un peu de code pour fournir le GUI, le reste
+est fait en utilisant la feuille de style \texttt{.xsl} et en appelant
+le processeur \texttt{xsltproc, }qui fait partie de libxslun, la librairie
+C XSLT pour GNOME.
+\end{document}
diff --git a/texteditor.cpp b/texteditor.cpp
new file mode 100644 (file)
index 0000000..03e7d4a
--- /dev/null
@@ -0,0 +1,1207 @@
+#include "texteditor.h"
+
+#include <QAction>
+#include <QActionGroup>
+#include <QApplication>
+#include <QColorDialog>
+#include <QComboBox>
+#include <QFileDialog>
+#include <QFontDialog>
+#include <QMenuBar>
+#include <QMessageBox>
+#include <QPrintDialog>
+#include <QPrinter>
+#include <QStatusBar>
+#include <QTextEdit>
+#include <QToolBar>
+
+#include <typeinfo>
+
+#include "settings.h"
+#include "shortcuts.h"
+
+extern int statusbarTime;
+extern Settings settings;
+
+extern QAction *actionViewToggleNoteEditor;
+
+extern QString vymName;
+
+extern Switchboard switchboard;
+
+extern QPrinter *printer;
+extern bool debug;
+
+///////////////////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////////////////
+
+TextEditor::TextEditor()
+{
+    statusBar()->hide();    // Hide sizeGrip on default, which comes with statusBar
+
+    e = new QTextEdit( this);
+    e->setFocus();
+    e->setTabStopWidth (20);           // unit is pixel
+    e->setAutoFillBackground (true);
+    e->installEventFilter(this);
+    connect (e, SIGNAL( textChanged() ), this, SLOT( editorChanged() ) );
+    setCentralWidget( e );
+    statusBar()->showMessage( tr("Ready","Statusbar message"), statusbarTime);
+
+    connect(e, SIGNAL(currentCharFormatChanged(const QTextCharFormat &)),
+            this, SLOT(formatChanged(const QTextCharFormat &)));
+
+    // Don't show menubar per default
+    menuBar()->hide();
+
+    // Toolbars
+    setupFileActions();
+    setupEditActions();
+    setupFormatActions();
+    setupSettingsActions();
+    
+    // Various states
+    blockChangedSignal=false;
+    setInactive();
+
+    editorName = "Text editor";
+    setEditorTitle("");
+}
+
+
+TextEditor::~TextEditor()
+{
+    // Save Settings
+    QString n = QString("/satellite/%1/").arg(shortcutScope);
+    settings.setValue( n + "geometry/size", size() );
+    settings.setValue( n + "geometry/pos", pos() );
+    settings.setValue( n + "state",saveState(0));
+
+    QString s;
+    if (actionSettingsFonthintDefault->isChecked() )
+       s = "fixed";
+    else    
+       s = "variable";
+    settings.setValue(n + "fonts/fonthintDefault",s );
+    settings.setValue(n + "fonts/varFont", varFont.toString() );
+    settings.setValue(n + "fonts/fixedFont", fixedFont.toString() );
+
+    settings.setValue(n + "colors/emptyEditor", colorEmptyEditor.name());
+    settings.setValue(n + "colors/filledEditor", colorFilledEditor.name());
+    settings.setValue(n + "colors/inactiveEditor", colorInactiveEditor.name());
+    settings.setValue(n + "colors/font", colorFont.name());
+}
+
+void TextEditor::init (const QString &scope) 
+{   
+    shortcutScope = scope;
+    QString n = QString("/satellite/%1/").arg(shortcutScope);
+    restoreState (settings.value(n + "state", 0).toByteArray());
+    filenameHint="";
+    fixedFont.fromString (settings.value(
+        n + "fonts/fixedFont", "Courier,12,-1,5,48,0,0,0,1,0").toString()
+                          );
+    varFont.fromString( settings.value(
+        n + "fonts/varFont", "DejaVu Sans Mono,12,-1,0,50,0,0,0,0,0").toString()
+                        );
+    QString s = settings.value (n + "fonts/fonthintDefault", "variable").toString();
+    if (s == "fixed")
+    {
+        actionSettingsFonthintDefault->setChecked (true);
+        e->setCurrentFont (fixedFont);
+    } else
+    {
+        actionSettingsFonthintDefault->setChecked (false);
+        e->setCurrentFont (varFont);
+    }
+    
+    // Default colors
+    QPixmap pix( 16, 16 );
+    colorEmptyEditor.setNamedColor(   settings.value(n + "colors/emptyEditor", "#969696").toString() );
+    pix.fill( colorEmptyEditor );
+    actionEmptyEditorColor->setIcon(pix);
+
+    colorFilledEditor.setNamedColor(  settings.value(n + "colors/filledEditor","#ffffff").toString() );
+    pix.fill( colorFilledEditor );
+    actionFilledEditorColor->setIcon(pix);
+
+    colorInactiveEditor.setNamedColor(settings.value(n + "colors/inactiveEditor","#000000").toString() );
+    pix.fill( colorInactiveEditor );
+    actionInactiveEditorColor->setIcon(pix);
+
+    colorFont.setNamedColor(          settings.value(n + "colors/font","#000000").toString() );
+    e->setTextColor( colorFont );
+    pix.fill( colorFont );
+    actionFontColor->setIcon(pix);
+}
+
+bool TextEditor::isEmpty()
+{
+    if (e->toPlainText().length()>0)
+       return false;
+    else
+       return true;
+}
+
+
+void TextEditor::setEditorTitle(const QString &s)
+{
+    QString h;
+    s.isEmpty() ? h = editorName : h = editorName + ": " + s;
+    editorTitle = h;
+    setWindowTitle (editorTitle);
+}
+
+QString TextEditor::getEditorTitle()
+{
+    return editorTitle;
+}
+
+void TextEditor::setEditorName( const QString &s)
+{
+    editorName = s;
+}
+
+void TextEditor::setFont (const QFont &font)
+{
+    blockChangedSignal = true;
+
+    QTextCursor tc=e->textCursor();
+    QTextCharFormat format=tc.charFormat();
+
+    tc.select(QTextCursor::Document);
+    format.setFont (font);
+    tc.setCharFormat (format);
+    tc.clearSelection();
+    fontChanged(fixedFont);
+
+    blockChangedSignal = false;
+}
+
+void TextEditor::setFontHint (const QString &fh)
+{
+    if (fh=="fixed")
+    {
+        actionFormatUseFixedFont->setChecked (true);
+        e->setCurrentFont (fixedFont);
+        setFont (fixedFont);
+    }
+    else
+    {
+        actionFormatUseFixedFont->setChecked (false);
+        e->setCurrentFont (varFont);
+        setFont (varFont);
+    }
+}
+
+QString TextEditor::getFontHint()
+{
+    if (actionFormatUseFixedFont->isChecked())
+        return "fixed";
+    else
+        return "var";
+}
+
+QString TextEditor::getFontHintDefault()
+{
+    if (actionSettingsFonthintDefault->isChecked())
+        return "fixed";
+    else
+        return "var";
+}
+
+void TextEditor::setFilename(const QString &fn)
+{
+    if (state==filledEditor)
+    {
+        if (fn.isEmpty() )
+        {
+            filename="";
+            statusBar()->showMessage( tr("No filename available for this note.","Statusbar message"), statusbarTime );
+        }
+        else
+        {
+            filename=fn;
+            statusBar()->showMessage( tr(QString( "Current filename is %1" ).arg( filename ).toUtf8(),"Statusbar message"), statusbarTime );
+        }
+    }
+}
+
+QString TextEditor::getFilename()
+{
+    return filename;
+}
+
+void TextEditor::setFilenameHint(const QString &fnh)
+{
+    filenameHint=fnh;
+}
+
+QString TextEditor::getFilenameHint()
+{
+    return filenameHint;
+}
+
+QString TextEditor::getText()
+{
+    if (e->toPlainText().isEmpty()) return QString();
+
+    if (actionFormatRichText->isChecked())
+        return e->toHtml();
+    else
+        return e->toPlainText();
+}
+
+VymText TextEditor::getVymText()
+{
+    VymText vt;
+
+    if (actionFormatRichText->isChecked())
+        vt.setRichText(e->toHtml());
+    else
+        vt.setPlainText(e->toPlainText());
+
+    if (actionFormatUseFixedFont->isChecked() )
+        vt.setFontHint(getFontHint());
+
+    return vt;
+}
+
+bool TextEditor::findText(const QString &t, const QTextDocument::FindFlags &flags)
+{
+    if (e->find (t,flags))
+        return true;
+    else
+        return false;
+}
+
+bool TextEditor::findText(const QString &t, const QTextDocument::FindFlags &flags, int i)
+{
+    // Position at beginning
+    QTextCursor c=e->textCursor();
+    c.setPosition (0,QTextCursor::MoveAnchor);
+    e->setTextCursor (c);
+
+    // Search for t
+    int j=0;
+    while (j<=i)
+    {
+        if (!e->find (t,flags)) return false;
+        j++;
+    }
+    return true;
+
+}
+
+void TextEditor::setTextCursor (const QTextCursor &cursor)
+{
+    e->setTextCursor (cursor);
+}
+
+QTextCursor TextEditor::getTextCursor()
+{
+    return e->textCursor();
+}
+
+void TextEditor::setFocus()
+{
+    e->setFocus();
+}
+
+void TextEditor::setupFileActions()
+{
+    QToolBar *tb = addToolBar ( tr("Note Actions") );
+    tb->setObjectName ("noteEditorFileActions");
+    QMenu *fileMenu = menuBar()->addMenu( tr( "&Note","Menubar" ));
+
+    QString tag = tr ("Texteditor","Shortcuts");
+    QAction *a;
+    a = new QAction( QPixmap( ":/fileopen.png"), tr( "&Import..." ),this);
+    a->setShortcut( Qt::CTRL + Qt::Key_O );
+    a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    switchboard.addSwitch( "textLoad", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( textLoad() ) );
+    tb->addAction (a);
+    fileMenu->addAction (a);
+    actionFileLoad=a;
+
+    fileMenu->addSeparator();
+    a = new QAction( QPixmap(":/filesave.png" ), tr( "&Export..." ), this);
+    a->setShortcut( Qt::CTRL + Qt::Key_S );
+    a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    switchboard.addSwitch( "textSave", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( textSave() ) );
+    tb->addAction (a);
+    fileMenu->addAction (a);
+    addAction (a);
+    actionFileSave=a;
+    
+    a = new QAction(  tr( "Export &As... (HTML)" ), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( textSaveAs() ) );
+    fileMenu->addAction (a);
+    actionFileSaveAs=a;
+
+    a = new QAction( tr( "Export &As...(ASCII)" ), this);
+    a->setShortcut(Qt::ALT + Qt::Key_X );
+    a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    switchboard.addSwitch( "textExportAsASCII", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( textExportAsASCII() ) );
+    fileMenu->addAction (a);
+    addAction (a);
+    actionFileSaveAs=a;
+
+    fileMenu->addSeparator();
+    a = new QAction( QPixmap(":/fileprint.png" ), tr( "&Print..." ),this);
+    a->setShortcut (Qt::CTRL + Qt::Key_P);
+    switchboard.addSwitch( "textPrint", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( textPrint() ) );
+    tb->addAction (a);
+    fileMenu->addAction (a);
+    actionFilePrint=a;
+    
+    a = new QAction( QPixmap( ":/edittrash.png"), tr( "&Delete All" ), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( reset() ) );
+    fileMenu->addAction (a);
+    tb->addAction (a);
+    actionFileDeleteAll=a;
+}
+
+void TextEditor::setupEditActions()
+{
+    QString tag = tr ("Texteditor","Shortcuts");
+    QToolBar *editToolBar = addToolBar ( tr( "Edit Actions" ));
+    editToolBar->setObjectName ("noteEditorEditActions");
+    editToolBar->hide();
+    QMenu *editMenu = menuBar()->addMenu ( tr( "Edi&t" ));
+
+    QAction *a;
+    a = new QAction(QPixmap(":/undo.png"), tr( "&Undo" ), this );
+    a->setShortcut(Qt::CTRL + Qt::Key_Z );
+    a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    switchboard.addSwitch( "textUndo", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), e, SLOT( undo() ) );
+    editMenu->addAction (a);
+    editToolBar->addAction (a);
+    actionEditUndo=a;
+    
+    a = new QAction(QPixmap(":/redo.png" ), tr( "&Redo" ),this);
+    a->setShortcut( Qt::CTRL + Qt::Key_Y );
+    a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    switchboard.addSwitch( "textRedo", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), e, SLOT( redo() ) );
+    editMenu->addAction (a);
+    editToolBar->addAction (a);
+    actionEditRedo=a;
+
+    editMenu->addSeparator();
+    a = new QAction(QPixmap(), tr( "Select and copy &all" ),this);
+    a->setShortcutContext (Qt::WidgetShortcut);
+    a->setShortcut( Qt::CTRL + Qt::Key_A );
+    switchboard.addSwitch( "textCopyAll", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( editCopyAll() ) );
+    editMenu->addAction (a);
+
+    editMenu->addSeparator();
+    a = new QAction(QPixmap(":/editcopy.png" ), tr( "&Copy" ),this);
+    a->setShortcut( Qt::CTRL + Qt::Key_C );
+    a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    switchboard.addSwitch( "textCopy", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), e, SLOT( copy() ) );
+    editMenu->addAction (a);
+    editToolBar->addAction (a);
+    actionEditCopy=a;
+    
+    a = new QAction(QPixmap(":/editcut.png" ), tr( "Cu&t" ),this);
+    a->setShortcut( Qt::CTRL + Qt::Key_X );
+    a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    switchboard.addSwitch( "textCut", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), e, SLOT( cut() ) );
+    editMenu->addAction (a);
+    editToolBar->addAction (a);
+    actionEditCut=a;
+
+    a = new QAction(QPixmap(":/editpaste.png" ), tr( "&Paste" ),this);
+    a->setShortcut( Qt::CTRL + Qt::Key_V );
+    a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    switchboard.addSwitch( "textPaste", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), e, SLOT( paste() ) );
+    editMenu->addAction (a);
+    editToolBar->addAction (a);
+    actionEditPaste=a;
+}
+
+void TextEditor::setupFormatActions()
+{
+    QString tag = tr ("Texteditor","Shortcuts");
+    QToolBar *fontHintsToolBar = addToolBar ( tr("Font hints","toolbar in texteditor" ));
+    fontHintsToolBar->setObjectName ("noteEditorFontToolBar");
+    QMenu *formatMenu = menuBar()->addMenu ( tr( "F&ormat" ));
+
+    QAction *a;
+
+    a = new QAction( QPixmap(":/formatfixedfont.png"), tr( "&Font hint" ), this );
+    a->setShortcut(Qt::CTRL + Qt::Key_H);
+    a->setCheckable (true);
+    a->setChecked (settings.value("/noteeditor/fonts/useFixedByDefault",false).toBool() );
+    switchboard.addSwitch( "textToggleFonthint", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( toggleFonthint() ) );
+    formatMenu->addAction (a);
+    fontHintsToolBar->addAction (a);
+    actionFormatUseFixedFont=a;
+
+    // Original icon: ./share/icons/oxygen/22x22/actions/format-text-color.png
+    a = new QAction( QPixmap(":/formatrichtext.png"), tr( "&Richtext" ), this);
+    a->setShortcut ( Qt::CTRL + Qt::Key_R);
+//    a->setShortcutContext (Qt::WidgetShortcut);
+    a->setCheckable (true);
+    switchboard.addSwitch( "textToggleRichText", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( toggleRichText() ) );
+    formatMenu->addAction (a);
+    fontHintsToolBar->addAction (a);
+    actionFormatRichText=a;
+
+    QToolBar *fontToolBar = addToolBar ( tr("Fonts","toolbar in texteditor" ));
+    fontToolBar->setObjectName ("noteEditorFontToolBar");
+
+    comboFont = new QComboBox;
+    fontToolBar->addWidget (comboFont);
+    QFontDatabase fontDB;
+    comboFont->insertItems ( 0,fontDB.families() );
+    connect( comboFont, SIGNAL( activated( const QString & ) ),
+             this, SLOT( textFamily( const QString & ) ) );
+
+    comboSize = new QComboBox;
+    fontToolBar->addWidget (comboSize);
+    QList<int> sizes=fontDB.standardSizes();
+    QList<int>::iterator it = sizes.begin();
+    int i=0;
+    while (it != sizes.end())
+    {
+        i++;
+        ++it; // increment i before using it
+        comboSize->insertItem ( i, QString::number(*it));
+    }
+    connect( comboSize, SIGNAL( activated( const QString & ) ),
+             this, SLOT( textSize( const QString & ) ) );
+
+    formatMenu->addSeparator();
+
+    QToolBar *formatToolBar = addToolBar ( tr("Format","toolbar in texteditor" ));
+    formatToolBar->setObjectName ("noteEditorFormatToolBar");
+
+    QPixmap pix( 16, 16 );
+    pix.fill( e->textColor());
+    a = new QAction( pix, tr( "&Color..." ), this);
+    formatMenu->addAction (a);
+    formatToolBar->addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( textColor() ) );
+    actionTextColor=a;
+
+    a = new QAction( QPixmap (":/text_bold.png"), tr( "&Bold" ), this);
+    a->setShortcut(Qt::CTRL + Qt::Key_B );
+    a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    switchboard.addSwitch( "textToggleBold", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( textBold() ) );
+    formatToolBar->addAction (a);
+    formatMenu->addAction (a);
+    a->setCheckable( true );
+    actionTextBold=a;
+    
+    a = new QAction( QPixmap(":/text_italic.png"), tr( "&Italic" ),  this);
+    a->setShortcut(Qt::CTRL + Qt::Key_I);
+    a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    switchboard.addSwitch( "textToggleItalic", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( textItalic() ) );
+    formatToolBar->addAction (a);
+    formatMenu->addAction (a);
+    a->setCheckable( true );
+    actionTextItalic=a;
+    
+    a = new QAction( QPixmap (":/text_under.png"), tr( "&Underline" ), this);
+    a->setShortcut(Qt::CTRL + Qt::Key_U );
+    a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    switchboard.addSwitch( "textToggleUnderline", shortcutScope, a, tag);
+    connect( a, SIGNAL( triggered() ), this, SLOT( textUnderline() ) );
+    formatToolBar->addAction (a);
+    formatMenu->addAction (a);
+    a->setCheckable( true );
+    //richTextWidgets.append((QWidget*)a);
+    actionTextUnderline=a;
+    formatMenu->addSeparator();
+
+    QActionGroup * actGrp2 = new QActionGroup( this );
+    actGrp2->setExclusive(true);
+    a = new QAction( QPixmap (":/text_sub.png"), tr( "Subs&cript" ),actGrp2 );
+    a->setShortcut( Qt::CTRL + Qt::SHIFT + Qt::Key_B );
+    a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    a->setCheckable( true );
+    formatToolBar->addAction (a);
+    formatMenu->addAction (a);
+    switchboard.addSwitch( "textToggleSub", shortcutScope, a, tag);
+    connect(a, SIGNAL(triggered()), this, SLOT(textVAlign()));
+    actionAlignSubScript=a;
+
+    a = new QAction( QPixmap (":/text_super.png"), tr( "Su&perscript" ),actGrp2  );
+    a->setShortcut( Qt::CTRL + Qt::SHIFT + Qt::Key_P );
+    a->setShortcutContext (Qt::WidgetWithChildrenShortcut);
+    a->setCheckable( true );
+    formatToolBar->addAction (a);
+    formatMenu->addAction (a);
+    switchboard.addSwitch( "textToggleSuper", shortcutScope, a, tag);
+    connect(a, SIGNAL(triggered()), this, SLOT(textVAlign()));
+    actionAlignSuperScript=a;
+    QActionGroup *grp = new QActionGroup( this );
+    connect( grp, SIGNAL( triggered( QAction* ) ), this, SLOT( textAlign( QAction* ) ) );
+
+    formatMenu->addSeparator();
+
+    a = new QAction( QPixmap (":/text_left.png"), tr( "&Left" ),grp );
+    //a->setShortcut( Qt::CTRL+Qt::Key_L );
+    a->setCheckable( true );
+    formatToolBar->addAction (a);
+    formatMenu->addAction (a);
+    actionAlignLeft=a;
+    a = new QAction( QPixmap (":/text_center.png"), tr( "C&enter" ),grp);
+    //a->setShortcut(  Qt::CTRL + Qt::Key_E);
+    a->setCheckable( true );
+    formatToolBar->addAction (a);
+    formatMenu->addAction (a);
+    actionAlignCenter=a;
+    a = new QAction( QPixmap (":/text_right.png" ), tr( "&Right" ), grp);
+    //a->setShortcut(Qt::CTRL + Qt::Key_R );
+    a->setCheckable( true );
+    formatToolBar->addAction (a);
+    formatMenu->addAction (a);
+    actionAlignRight=a;
+    a = new QAction( QPixmap ( ":/text_block.png"), tr( "&Justify" ), grp );
+    //a->setShortcut(Qt::CTRL + Qt::Key_J );
+    a->setCheckable( true );
+    formatToolBar->addAction (a);
+    formatMenu->addAction (a);
+    actionAlignJustify=a;
+}
+
+void TextEditor::setupSettingsActions()
+{
+    QMenu *settingsMenu = menuBar()->addMenu ( tr( "&Settings" ));
+
+    QAction *a;
+    a = new QAction(tr( "Set &fixed font" ), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( setFixedFont() ) );
+    settingsMenu->addAction (a);
+    actionSettingsFixedFont=a;
+
+    a = new QAction(tr( "Set &variable font" ), this);
+    connect( a, SIGNAL( triggered() ), this, SLOT( setVarFont() ) );
+    settingsMenu->addAction (a);
+    actionSettingsVarFont=a;
+
+    a = new QAction(tr( "&fixed font is default" ),  this);
+    a->setCheckable (true);
+    // set state later in constructor...
+    settingsMenu->addAction (a);
+    actionSettingsFonthintDefault=a;
+
+    settingsMenu->addSeparator();
+
+    a = new QAction( tr( "Set empty editor background color", "TextEditor") + "...", this  );
+    settingsMenu->addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( setEmptyEditorColor() ) );
+    actionEmptyEditorColor = a;
+
+    a = new QAction( tr( "Set filled editor background color", "TextEditor") + "...", this  );
+    settingsMenu->addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( setFilledEditorColor() ) );
+    actionFilledEditorColor = a;
+
+    a = new QAction( tr( "Set inactive editor background color", "TextEditor") + "...", this  );
+    settingsMenu->addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( setInactiveEditorColor() ) );
+    actionInactiveEditorColor = a;
+
+    a = new QAction( tr( "Set default font color", "TextEditor") + "...", this  );
+    settingsMenu->addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( setFontColor() ) );
+    actionFontColor = a;
+}
+
+void TextEditor::textLoad()
+{
+    if (state!=inactiveEditor)
+    {
+        if (!isEmpty())
+        {
+            QMessageBox mb( vymName + " - " +tr("Note Editor"),
+                            "Loading will overwrite the existing note",
+                            QMessageBox::Warning,
+                            QMessageBox::Yes | QMessageBox::Default,
+                            QMessageBox::Cancel,
+                            0 );
+            mb.setButtonText( QMessageBox::Yes, "Load note" );
+            switch( mb.exec() ) {
+            case QMessageBox::Cancel:
+                return;
+                break;
+            }
+        }
+        // Load note
+        QFileDialog *fd=new QFileDialog( this);
+        QStringList types;
+        types<< "Text (*.txt *.html)"<<
+                "VYM notes and HTML (*.html)" <<
+                "ASCII texts (*.txt)" <<
+                "All files (*)";
+        fd->setNameFilters (types);
+        fd->setDirectory (QDir().current());
+        fd->show();
+        QString fn;
+        if ( fd->exec() == QDialog::Accepted &&!fd->selectedFiles().isEmpty() )
+            fn = fd->selectedFiles().first();
+
+        if ( !fn.isEmpty() )
+        {
+            QFile f( fn );
+            if ( !f.open( QIODevice::ReadOnly ) )
+                return;
+
+            QTextStream ts( &f );
+            setTextAuto ( ts.readAll() );
+            editorChanged();
+        }
+    }
+}
+
+void TextEditor::closeEvent( QCloseEvent* ce )
+{
+    ce->accept();   // TextEditor can be reopened with show()
+    hide();
+    emit (windowClosed() );
+    return;
+}
+
+bool TextEditor::eventFilter( QObject *obj, QEvent *ev)
+{
+    if (obj == e ) {
+        if (ev->type() == QEvent::KeyPress) {
+            QKeyEvent *keyEvent = static_cast<QKeyEvent*>(ev);
+            if(keyEvent == QKeySequence::Paste) 
+            {
+                // switch editor mode to match clipboard content before pasting
+                const QClipboard *clipboard = QApplication::clipboard();
+                const QMimeData *mimeData = clipboard->mimeData();
+
+                if (mimeData->hasHtml()) setRichTextMode(true);
+            } 
+        }
+    }
+    // pass the event on to the parent class
+    return QMainWindow::eventFilter(obj, ev);
+}
+
+void TextEditor::editorChanged()
+{
+    if (isEmpty())
+        state=emptyEditor;
+    else
+        state=filledEditor;
+
+    if (state==emptyEditor)
+        setState (emptyEditor);
+    else
+        setState (filledEditor);
+    if (!blockChangedSignal) emit (textHasChanged() );
+}
+
+void TextEditor::setRichText(const QString &t)
+{
+    blockChangedSignal=true;
+    e->setReadOnly(false);
+    reset();
+
+    e->setHtml(t);
+    actionFormatRichText->setChecked (true);
+
+    updateActions();
+    blockChangedSignal=false;
+}
+
+void TextEditor::setPlainText(const QString &t)
+{
+    blockChangedSignal=true;
+    e->setReadOnly(false);
+    reset();
+
+    e->setPlainText(t);
+    actionFormatRichText->setChecked (false);
+
+    updateActions();
+    blockChangedSignal=false;
+}
+
+
+void TextEditor::setTextAuto(const QString &t)
+{
+    if (Qt::mightBeRichText (t))
+        setRichText( t);
+    else
+        setPlainText( t );
+}
+
+void TextEditor::setVymText( const VymText &vt)
+{
+    if (vt.isRichText())
+        setRichText(vt.getText());
+    else
+        setPlainText(vt.getText());
+}
+
+void TextEditor::setInactive()
+{
+    state=inactiveEditor;
+    e->setPlainText("");
+    setState (inactiveEditor);
+    e->setReadOnly (true);
+
+    updateActions();
+}
+
+void TextEditor::editCopyAll()
+{
+    e->selectAll();
+    e->copy();
+}
+
+void TextEditor::reset()
+{
+    e->selectAll();
+    e->textCursor().deleteChar();
+    e->setTextColor( colorFont );
+}
+
+void TextEditor::textSaveAs()  
+{
+    QString caption=tr ("Export Note to single file");
+    QString fn = QFileDialog::getSaveFileName(
+                this,
+                caption,
+                QString::null,
+                "VYM Note (HTML) (*.html);;All files (*)",
+                0,
+                QFileDialog::DontConfirmOverwrite );
+
+    if ( !fn.isEmpty() )
+    {
+        QFile file (fn);
+        if (file.exists())
+        {
+            QMessageBox mb( vymName,
+                            tr("The file %1\nexists already.\nDo you want to overwrite it?","dialog 'save note as'").arg(fn),
+                            QMessageBox::Warning,
+                            QMessageBox::Yes | QMessageBox::Default,
+                            QMessageBox::Cancel | QMessageBox::Escape,
+                            Qt::NoButton );
+            mb.setButtonText( QMessageBox::Yes, tr("Overwrite") );
+            mb.setButtonText( QMessageBox::No, tr("Cancel"));
+            switch( mb.exec() ) {
+            case QMessageBox::Yes:
+                // save
+                filename = fn;
+                textSave();
+                return;
+            case QMessageBox::Cancel:
+                // do nothing
+                break;
+            }
+        } else
+        {
+            filename = fn;
+            textSave();
+            return;
+        }
+    }
+    statusBar()->showMessage(tr( "Couldn't export note ","dialog 'save note as'") + fn, statusbarTime );
+}
+
+
+void TextEditor::textSave()
+{
+    if ( filename.isEmpty() )
+    {
+        textSaveAs();
+        return;
+    }
+
+    QString text = e->toHtml(); //FIXME-4 or plaintext? check...
+    QFile f( filename );
+    if ( !f.open( QIODevice::WriteOnly ) )
+    {
+        statusBar()->showMessage( QString("Could not write to %1").arg(filename),
+                                  statusbarTime );
+        return;
+    }
+
+    QTextStream t( &f );
+    t.setCodec("UTF-8");
+    t << text;
+    f.close();
+
+    e->document()->setModified( false );
+
+    statusBar()->showMessage( QString( "Note exported as %1" ).arg( filename ), statusbarTime );
+}
+
+void TextEditor::textExportAsASCII()
+{
+    QString fn,s;
+    if (!filenameHint.isEmpty())
+    {
+        if (!filenameHint.contains (".txt"))
+            s = filenameHint+".txt";
+        else
+            s = filenameHint;
+    } else
+        s = QString::null;
+    QString caption = tr("Export Note to single file (ASCII)");
+    fn = QFileDialog::getSaveFileName(this, caption, s, "VYM Note (ASCII) (*.txt);;All files (*)" );
+    int ret = -1;
+
+    if ( !fn.isEmpty() )
+    {
+        QFile file (fn);
+        if (file.exists())
+        {
+            QMessageBox mb( vymName,
+                            tr("The file %1\nexists already.\nDo you want to overwrite it?","dialog 'save note as'").arg(fn),
+                            QMessageBox::Warning,
+                            QMessageBox::Yes | QMessageBox::Default,
+                            QMessageBox::Cancel | QMessageBox::Escape,
+                            Qt::NoButton );
+            mb.setButtonText( QMessageBox::Yes, tr("Overwrite") );
+            mb.setButtonText( QMessageBox::No, tr("Cancel"));
+            ret=mb.exec();
+        }
+        if (ret==QMessageBox::Cancel)
+            return;
+
+        // save
+        if ( !file.open( QIODevice::WriteOnly ) )
+            statusBar()->showMessage( QString("Could not write to %1").arg(filename),
+                                      statusbarTime );
+        else
+        {
+            QTextStream t( &file );
+            t << getVymText().getTextASCII();
+            file.close();
+
+            statusBar()->showMessage( QString( "Note exported as %1" ).arg( fn ), statusbarTime );
+        }
+    }
+}
+
+
+void TextEditor::textPrint()
+{
+    QTextDocument *document = e->document();
+
+    QPrintDialog dialog (printer, this);
+    dialog.setWindowTitle(tr("Print","TextEditor"));
+    if (dialog.exec() != QDialog::Accepted)
+        return;
+
+    document->print(printer);
+}
+
+void TextEditor::textEditUndo()
+{
+}
+
+void TextEditor::toggleFonthint()
+{
+    if (!actionFormatUseFixedFont->isChecked() )
+    {
+        e->setCurrentFont (varFont);
+        setFont (varFont);
+    }
+    else
+    {
+        e->setCurrentFont (fixedFont);
+        setFont (fixedFont);
+    }
+    emit( textHasChanged() );
+}
+
+void TextEditor::setRichTextMode(bool b)
+{
+    if (b)
+    {
+        e->setHtml (e->toHtml());
+        actionFormatUseFixedFont->setEnabled(false);
+        actionFormatRichText->setChecked(true);
+    } else
+    {
+        e->setPlainText (e->toPlainText());
+        actionFormatUseFixedFont->setEnabled(true);
+        actionFormatRichText->setChecked(false);
+    }
+    updateActions();
+    emit( textHasChanged() );
+}
+
+void TextEditor::toggleRichText()
+{
+    if (actionFormatRichText->isChecked() )
+        setRichTextMode( true );
+    else
+        setRichTextMode( false );
+}
+
+void TextEditor::setFixedFont()
+{
+    bool ok;
+    QFont font =QFontDialog::getFont( &ok, fixedFont, this );
+    if ( ok ) fixedFont=font;
+}
+
+void TextEditor::setVarFont()
+{
+    bool ok;
+    QFont font =QFontDialog::getFont( &ok, varFont, this );
+    if ( ok ) varFont=font;
+}
+
+void TextEditor::textBold()
+{
+    if ( actionTextBold->isChecked())
+        e->setFontWeight( QFont::Bold );
+    else
+        e->setFontWeight( QFont::Normal);
+}
+
+void TextEditor::textUnderline()
+{
+    e->setFontUnderline( actionTextUnderline->isChecked() );
+}
+
+void TextEditor::textItalic()
+{
+    e->setFontItalic( actionTextItalic->isChecked() );
+}
+
+void TextEditor::textFamily( const QString &f )
+{
+    e->setFontFamily( f );
+}
+
+void TextEditor::textSize( const QString &p )
+{
+    e->setFontPointSize( p.toInt() );
+}
+
+
+void TextEditor::textColor()
+{
+    QColor col = QColorDialog::getColor( e->textColor(), this );
+    if ( !col.isValid() ) return;
+    e->setTextColor( col );
+    /*
+    QPixmap pix( 16, 16 );
+    pix.fill( col );
+    actionTextColor->setIcon( pix );
+    */
+}
+
+void TextEditor::textAlign( QAction *a ) 
+{
+    QTextCursor c = e->textCursor();
+
+    if ( a == actionAlignLeft )
+        e->setAlignment( Qt::AlignLeft );
+    else if ( a == actionAlignCenter )
+        e->setAlignment( Qt::AlignHCenter );
+    else if ( a == actionAlignRight )
+        e->setAlignment( Qt::AlignRight );
+    else if ( a == actionAlignJustify )
+        e->setAlignment( Qt::AlignJustify );
+}
+
+void TextEditor::textVAlign()
+{
+    QTextCharFormat format;
+
+    if ( sender() == actionAlignSuperScript && actionAlignSuperScript->isChecked()) {
+        format.setVerticalAlignment(QTextCharFormat::AlignSuperScript);
+    } else if (sender() == actionAlignSubScript && actionAlignSubScript->isChecked()) {
+        format.setVerticalAlignment(QTextCharFormat::AlignSubScript);
+    } else {
+        format.setVerticalAlignment(QTextCharFormat::AlignNormal);
+    }
+    e->mergeCurrentCharFormat(format);
+}
+
+
+void TextEditor::fontChanged( const QFont &f )
+{
+    int i=comboFont->findText(f.family());
+    if (i>=0) comboFont->setCurrentIndex (i);
+    i=comboSize->findText(QString::number(f.pointSize()));
+    if (i>=0) comboSize->setCurrentIndex(i);
+    actionTextBold->setChecked( f.bold() );
+    actionTextItalic->setChecked( f.italic() );
+    actionTextUnderline->setChecked( f.underline() );
+}
+
+void TextEditor::colorChanged( const QColor &c )
+{
+    QPixmap pix( 16, 16 );
+    pix.fill( c );
+    actionTextColor->setIcon( pix );
+}
+
+void TextEditor::formatChanged( const QTextCharFormat &f )
+{
+    if (!actionFormatRichText->isChecked() ) return;
+    fontChanged(f.font());
+    colorChanged(f.foreground().color());
+    alignmentChanged(e->alignment());
+    verticalAlignmentChanged (f.verticalAlignment());
+}
+
+void TextEditor::alignmentChanged( int a )
+{
+    if ( ( a == Qt::AlignLeft ) || ( a & Qt::AlignLeft ))
+        actionAlignLeft->setChecked( true );
+    else if ( ( a & Qt::AlignHCenter ) )
+        actionAlignCenter->setChecked( true );
+    else if ( ( a & Qt::AlignRight ) )
+        actionAlignRight->setChecked( true );
+    else if ( ( a & Qt::AlignJustify ) )
+        actionAlignJustify->setChecked( true );
+}
+
+void TextEditor::verticalAlignmentChanged(QTextCharFormat::VerticalAlignment a)
+{
+    actionAlignSubScript->setChecked (false);
+    actionAlignSuperScript->setChecked (false);
+    switch (a)
+    {
+    case QTextCharFormat::AlignSuperScript:
+        actionAlignSuperScript->setChecked (true);
+        break;
+    case QTextCharFormat::AlignSubScript:
+        actionAlignSubScript->setChecked (true);
+        break;
+    default: ;
+    }
+}
+
+void TextEditor::updateActions()
+{
+    bool b;
+    if (state==inactiveEditor)
+        b=false;
+    else
+        b=true;
+    actionFileLoad->setEnabled(b);
+    actionFileSave->setEnabled(b);
+    actionFileSaveAs->setEnabled(b);
+    actionFilePrint->setEnabled(b);
+    actionFileDeleteAll->setEnabled(b);
+    actionEditUndo->setEnabled(b);
+    actionEditRedo->setEnabled(b);
+    actionEditCopy->setEnabled(b);
+    actionEditCut->setEnabled(b);
+    actionEditPaste->setEnabled(b);
+    actionFormatUseFixedFont->setEnabled(b);
+    actionFormatRichText->setEnabled(b);
+    
+    if (!actionFormatRichText->isChecked() || !b)
+    {
+        comboFont->setEnabled (false);
+        comboSize->setEnabled (false);
+        actionTextColor->setEnabled (false);
+        actionTextBold->setEnabled (false);
+        actionTextUnderline->setEnabled(false);
+        actionTextItalic->setEnabled(false);
+        actionTextColor->setEnabled(false);
+        actionAlignSubScript->setEnabled(false);
+        actionAlignSuperScript->setEnabled(false);
+        actionAlignLeft->setEnabled(false);
+        actionAlignCenter->setEnabled(false);
+        actionAlignRight->setEnabled(false);
+        actionAlignJustify->setEnabled(false);
+    }
+    else
+    {
+        comboFont->setEnabled (true);
+        comboSize->setEnabled (true);
+        actionTextColor->setEnabled (true);
+        actionTextBold->setEnabled (true);
+        actionTextUnderline->setEnabled(true);
+        actionTextItalic->setEnabled(true);
+        actionTextColor->setEnabled(true);
+        actionAlignSubScript->setEnabled(true);
+        actionAlignSuperScript->setEnabled(true);
+        actionAlignLeft->setEnabled(true);
+        actionAlignCenter->setEnabled(true);
+        actionAlignRight->setEnabled(true);
+        actionAlignJustify->setEnabled(true);
+        actionFormatUseFixedFont->setEnabled(false);
+    }
+}
+
+void TextEditor::setState (EditorState s)
+{
+    
+    QPalette p = palette();
+    QColor c;
+    switch (s)
+    {
+        case emptyEditor:    c = colorEmptyEditor; break;
+        case filledEditor:   c = colorFilledEditor; break; 
+        case inactiveEditor: c = colorInactiveEditor;
+    }
+    p.setColor(QPalette::Active, static_cast<QPalette::ColorRole>(9), c);
+    p.setColor(QPalette::Inactive, static_cast<QPalette::ColorRole>(9), c);
+    e->setPalette(p);
+}
+
+void TextEditor::setEmptyEditorColor()
+{
+    QColor col = QColorDialog::getColor( colorEmptyEditor, NULL);
+    if ( !col.isValid() ) return;
+    colorEmptyEditor = col;
+    QPixmap pix( 16, 16 );
+    pix.fill( colorEmptyEditor );
+    actionEmptyEditorColor->setIcon(pix);
+}
+
+void TextEditor::setInactiveEditorColor()
+{
+    QColor col = QColorDialog::getColor( colorInactiveEditor, NULL);
+    if ( !col.isValid() ) return;
+    colorInactiveEditor = col;
+    QPixmap pix( 16, 16 );
+    pix.fill( colorInactiveEditor );
+    actionInactiveEditorColor->setIcon(pix);
+}
+
+void TextEditor::setFilledEditorColor()
+{
+    QColor col = QColorDialog::getColor( colorFilledEditor, NULL);
+    if ( !col.isValid() ) return;
+    colorFilledEditor = col;
+    QPixmap pix( 16, 16 );
+    pix.fill( colorFilledEditor );
+    actionFilledEditorColor->setIcon(pix);
+}
+
+void TextEditor::setFontColor()
+{
+    QColor col = QColorDialog::getColor( colorFont, NULL);
+    if ( !col.isValid() ) return;
+    colorFont = col;
+    QPixmap pix( 16, 16 );
+    pix.fill( colorFont );
+    actionFontColor->setIcon(pix);
+}
+
diff --git a/texteditor.h b/texteditor.h
new file mode 100644 (file)
index 0000000..5d461fe
--- /dev/null
@@ -0,0 +1,159 @@
+#ifndef TEXTEDITOR_H 
+#define TEXTEDITOR_H
+
+#include <QtGui>
+#include <QMainWindow>
+
+class QTextEdit;
+class QComboBox;
+
+#include "vymtext.h"
+
+enum EditorState {inactiveEditor,emptyEditor,filledEditor};
+
+class TextEditor : public QMainWindow
+{    Q_OBJECT
+public:
+    TextEditor();
+    ~TextEditor();
+
+    void init(const QString &ename);
+    bool isEmpty();
+    void setEditorName( const QString & );
+    void setEditorTitle(const QString &);
+    QString getEditorTitle();
+    void setFont (const QFont &);
+    void setFontHint(const QString&);
+    QString getFontHint();
+    QString getFontHintDefault();
+    void setFilename (const QString&);
+    QString getFilename ();
+    void setFilenameHint (const QString&);
+    QString getFilenameHint ();
+    QString getText();
+    VymText getVymText();
+
+    bool findText(const QString &, const QTextDocument::FindFlags &); 
+    bool findText(const QString &, const QTextDocument::FindFlags &,int i); 
+    void setTextCursor (const QTextCursor & cursor );
+    QTextCursor getTextCursor();
+    void setFocus();
+
+protected:
+    void setupFileActions();
+    void setupEditActions();
+    void setupFormatActions();
+    void setupSettingsActions();
+    void closeEvent( QCloseEvent* );
+    bool eventFilter(QObject *obj, QEvent *ev);
+
+public slots:
+    void editorChanged();          // received when text() changed
+    void setRichText(const QString &t);
+    void setPlainText(const QString &t);
+    void setTextAuto(const QString &);  // set Text and autodetect mode
+    void setVymText(const VymText &vt);
+    void setInactive();                    // Nothing can be entered
+    void editCopyAll();
+    void reset();
+
+signals:
+    void textHasChanged();
+    void windowClosed();
+    void fontFamilyHasChanged();
+    void fontSizeHasChanged();
+    
+private slots:
+    void textLoad();
+    void textSaveAs();
+    void textSave();
+    void textExportAsASCII();
+    void textPrint();
+    void textEditUndo();
+    void toggleFonthint();
+    void setRichTextMode(bool b);
+    void toggleRichText();
+    void setFixedFont();
+    void setVarFont();
+    void textBold();
+    void textUnderline();
+    void textItalic();
+    void textFamily( const QString &f );
+    void textSize( const QString &p );
+    void textColor();
+    void textAlign(QAction*);
+    void textVAlign();
+    void fontChanged( const QFont &f );
+    void colorChanged( const QColor &c );
+    void formatChanged (const QTextCharFormat &f);
+    void alignmentChanged( int a );
+    void verticalAlignmentChanged(QTextCharFormat::VerticalAlignment);
+    void updateActions();
+    void setState (EditorState);
+    void setEmptyEditorColor();
+    void setInactiveEditorColor();
+    void setFilledEditorColor();
+    void setFontColor();
+
+protected:
+    QString shortcutScope;  // used for settings and shortcut scopes
+    QTextEdit *e;
+    QPoint lastPos;        // save last position of window
+    QString editorName;     // Name of editor, e.g. note editor, heading editor, ...
+    QString editorTitle;    // window title: Editor name + selected branch
+    QString filename;
+    QString filenameHint;
+
+    QBrush emptyPaper;     // setting the background color
+    QBrush filledPaper;            // depending on the state
+    QBrush inactivePaper;   // depending on the state
+    EditorState state;
+    bool blockChangedSignal;
+
+    QColor colorEmptyEditor;
+    QColor colorFilledEditor;
+    QColor colorInactiveEditor;
+    QColor colorFont;
+
+    QFont varFont;
+    QFont fixedFont;
+    QComboBox *comboFont, *comboSize;
+    
+    QToolBar *editToolBar;
+    QToolBar *fontToolBar;
+    QToolBar *fontHintsToolBar;
+    QToolBar *formatToolBar;
+
+    QAction *actionFileLoad,
+    *actionFileSave,
+    *actionFileSaveAs,
+    *actionFilePrint,
+    *actionFileDeleteAll,
+    *actionEditUndo,
+    *actionEditRedo,
+    *actionEditCopy,
+    *actionEditCut,
+    *actionEditPaste,
+    *actionFormatUseFixedFont,
+    *actionFormatRichText,
+    *actionSettingsVarFont,
+    *actionSettingsFixedFont,
+    *actionSettingsFonthintDefault,
+    *actionEmptyEditorColor,
+    *actionFilledEditorColor,
+    *actionInactiveEditorColor,
+    *actionFontColor;
+
+    QAction *actionTextBold,
+    *actionTextUnderline,
+    *actionTextItalic,
+    *actionTextColor,
+    *actionAlignSubScript,
+    *actionAlignSuperScript,
+    *actionAlignLeft,
+    *actionAlignCenter,
+    *actionAlignRight,
+    *actionAlignJustify;
+};
+
+#endif
diff --git a/treedelegate.cpp b/treedelegate.cpp
new file mode 100644 (file)
index 0000000..78cd91e
--- /dev/null
@@ -0,0 +1,12 @@
+#include "treedelegate.h"
+
+TreeDelegate::TreeDelegate(QObject *) 
+{
+}
+
+///  #include "vymnote.h"
+QString TreeDelegate::displayText (const QVariant & value, const QLocale & ) const  
+{
+    return value.toString().trimmed();
+}
+
diff --git a/treedelegate.h b/treedelegate.h
new file mode 100644 (file)
index 0000000..b9c6e15
--- /dev/null
@@ -0,0 +1,19 @@
+#ifndef TREEDELEGATE_H 
+#define TREEDELEGATE_H
+
+#include <QStyledItemDelegate>
+
+class TreeDelegate:  public QStyledItemDelegate {
+    Q_OBJECT
+public:
+    TreeDelegate(QObject *parent=0);
+    QString displayText (const QVariant & value, const QLocale & locale ) const;
+    /*
+    void paint(QPainter *painter, const QStyleOptionViewItem &option,
+           const QModelIndex &index) const;
+    QSize sizeHint(const QStyleOptionViewItem &option,
+           const QModelIndex &index ) const;
+    */     
+};
+
+#endif
diff --git a/treeeditor.cpp b/treeeditor.cpp
new file mode 100644 (file)
index 0000000..9e4ee9b
--- /dev/null
@@ -0,0 +1,81 @@
+#include "treeeditor.h"
+
+#include <QAction>
+#include <QRegExp>
+
+#include "mainwindow.h"
+#include "vymmodel.h"
+
+extern Main *mainWindow;
+
+///////////////////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////////////////
+TreeEditor::TreeEditor(VymModel *m)
+{
+    model=m;
+    if (model) setModel(model);
+    init();
+}
+
+void TreeEditor::init()
+{
+    setSelectionMode (QAbstractItemView::ExtendedSelection);
+    header()->hide();
+
+    QAction *a;
+    // Shortcuts for navigating with cursor:
+    a = new QAction(tr( "Select upper object","Tree Editor" ), this);
+    a->setShortcut (Qt::Key_Up );
+    a->setShortcutContext (Qt::WidgetShortcut);
+    addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( cursorUp() ) );
+
+    a = new QAction( tr( "Select lower object","Tree Editor" ),this);
+    a->setShortcut ( Qt::Key_Down );
+    a->setShortcutContext (Qt::WidgetShortcut);
+    addAction (a);
+    connect( a, SIGNAL( triggered() ), this, SLOT( cursorDown() ) );
+
+    a = new QAction( this);
+    a->setShortcut ( Qt::Key_PageUp);
+    a->setShortcutContext (Qt::WidgetShortcut);
+    addAction (a);
+    connect( a, SIGNAL( triggered() ), mainWindow, SLOT( editMoveUp() ) );
+
+    a = new QAction( this);
+    a->setShortcut ( Qt::Key_PageDown );
+    a->setShortcutContext (Qt::WidgetShortcut);
+    addAction (a);
+    connect( a, SIGNAL( triggered() ), mainWindow, SLOT( editMoveDown() ) );
+}
+
+TreeEditor::~TreeEditor()
+{
+    //qDebug()<<"Destructor TreeEditor for "<<model->getMapName();
+}
+
+QModelIndex TreeEditor::getSelectedIndex()
+{
+    QModelIndexList list=selectionModel()->selectedIndexes();
+    if (list.isEmpty() )
+       return QModelIndex();
+    else
+       return list.first();
+}
+
+void TreeEditor::cursorUp()
+{
+    QModelIndex ix=getSelectedIndex();
+    ix=indexAbove (ix);
+    if (ix.isValid())
+       model->select (ix );
+}
+
+void TreeEditor::cursorDown()
+{
+    QModelIndex ix=getSelectedIndex();
+    ix=indexBelow (ix);
+    if (ix.isValid())
+       model->select (ix );
+}
+
diff --git a/treeeditor.h b/treeeditor.h
new file mode 100644 (file)
index 0000000..f5c0c14
--- /dev/null
@@ -0,0 +1,29 @@
+#ifndef TREEEDITOR_H
+#define TREEEDITOR_H
+
+#include <QTreeView>
+
+class VymModel;
+
+/*! \brief TreeView widget in vym to display and edit a map, based on
+ * QTreeView */
+
+
+class TreeEditor : public QTreeView {  
+    Q_OBJECT
+
+public:
+    TreeEditor(VymModel *m=NULL);
+    ~TreeEditor();
+    void init();
+    QModelIndex getSelectedIndex();
+private slots:
+    void cursorUp();
+    void cursorDown();
+
+private:
+    VymModel *model;
+};
+
+#endif
+
diff --git a/treeitem.cpp b/treeitem.cpp
new file mode 100644 (file)
index 0000000..fcb32d6
--- /dev/null
@@ -0,0 +1,847 @@
+#include <iostream>
+#include <QStringList>
+
+#include "attributeitem.h"
+#include "branchobj.h"
+#include "branchitem.h"
+#include "misc.h"
+#include "treeitem.h"
+#include "vymmodel.h"
+#include "xlinkitem.h"
+#include "xlinkobj.h"
+
+using namespace std;
+
+extern uint itemLastID;
+extern FlagRow* standardFlagsMaster;
+extern FlagRow* systemFlagsMaster;
+
+extern QTextStream vout;
+
+TreeItem::TreeItem()
+{
+    //qDebug() << "Constr. TI  this="<<this;
+    init();
+    itemData.clear();
+    rootItem=this;
+    parentItem=NULL;
+}
+
+TreeItem::TreeItem(const QList<QVariant> &data, TreeItem *parent)
+{
+    //qDebug() << "Constructor TreeItem this="<<this<<"  parent="<<parent;
+    init();
+    parentItem = parent;
+    itemData = data;
+    
+    rootItem=this;
+    if (parentItem )
+       rootItem=parentItem->rootItem;
+}
+
+TreeItem::~TreeItem()
+{
+    //qDebug()<<"Destr TreeItem this="<<this<<"  childcount="<<childItems.count();
+    TreeItem *ti;
+    while (!childItems.isEmpty())
+    {
+        ti = childItems.takeFirst();
+        delete ti;
+    }
+}
+
+
+void TreeItem::init()
+{
+    model=NULL;
+
+    // Assign ID  
+    itemLastID++;
+    id = itemLastID;
+    uuid = QUuid::createUuid();
+
+    branchOffset = 0;
+    branchCounter = 0;
+
+    imageOffset = 0;
+    imageCounter = 0;
+
+    attributeCounter = 0;
+    attributeOffset = 0;
+
+    xlinkCounter = 0;
+    xlinkOffset = 0;
+
+    target = false;
+
+    heading.clear();
+    note.setText("");
+
+    hidden = false;
+    hideExport = false;
+
+    backgroundColor = Qt::transparent;
+
+    standardFlags.setMasterRow (standardFlagsMaster);
+    systemFlags.setMasterRow (systemFlagsMaster);
+}
+
+void TreeItem::setModel (VymModel *m)
+{
+    model = m;
+}
+
+VymModel* TreeItem::getModel ()
+{
+    return model;
+}
+
+int TreeItem::getRowNumAppend (TreeItem *item)
+{   
+    switch (item->type)
+    {
+       case Attribute: return attributeOffset + attributeCounter;
+       case XLink: return xlinkOffset + xlinkCounter;
+       case Image: return imageOffset + imageCounter;
+       case MapCenter: return branchOffset + branchCounter;
+       case Branch: return branchOffset + branchCounter;
+       default: return -1;
+    }
+}
+
+void TreeItem::appendChild(TreeItem *item)
+{
+    item->parentItem=this;
+    item->rootItem=rootItem;
+    item->setModel (model);
+
+    if (item->type == Attribute)
+    {
+       // attribute are on top of list
+       childItems.insert (attributeCounter,item);
+       attributeCounter++;
+       xlinkOffset++;
+       imageOffset++;
+       branchOffset++;
+    }
+
+    if (item->type == XLink)
+    {
+       childItems.insert (xlinkCounter+xlinkOffset,item);
+       xlinkCounter++;
+       imageOffset++;
+       branchOffset++;
+    }
+
+    if (item->type == Image)
+    {
+       childItems.insert (imageCounter+imageOffset,item);
+       imageCounter++;
+       branchOffset++;
+    }
+
+    if (item->isBranchLikeType())
+    {
+       // branches are on bottom of list
+       childItems.append(item);
+       branchCounter++;
+
+       // Set correct type     
+       if (this==rootItem)
+           item->setType(MapCenter);
+       else
+           item->setType (Branch);
+    }
+}
+
+void TreeItem::removeChild(int row)
+{
+    if (row<0 || row > childItems.size()-1)
+       qWarning ("TreeItem::removeChild tried to remove non existing item?!");
+    else
+    {
+       if (childItems.at(row)->type==Attribute)
+       {
+           attributeCounter--;
+           xlinkOffset--;
+           imageOffset--;
+           branchOffset--;
+       }   
+       if (childItems.at(row)->type==XLink)
+       {
+           xlinkCounter--;
+           imageOffset--;
+           branchOffset--;
+       }   
+       if (childItems.at(row)->type==Image)
+       {
+           imageCounter--;
+           branchOffset--;
+       }   
+       if (childItems.at(row)->isBranchLikeType())
+           branchCounter--;
+
+       childItems.removeAt (row);
+    }
+}
+
+TreeItem *TreeItem::child(int row)
+{
+    return childItems.value(row);
+}
+
+int TreeItem::childCount() const
+{
+    return childItems.count();
+}
+
+int TreeItem::childNumber() const
+{
+    if (parentItem)
+        return parentItem->childItems.indexOf(const_cast<TreeItem*>(this));
+
+    return 0;
+}
+
+int TreeItem::columnCount() const
+{
+    return 1;
+}
+
+int TreeItem::branchCount() const
+{
+    return branchCounter;
+}
+
+int TreeItem::imageCount() const
+{
+    return imageCounter; 
+}
+
+int TreeItem::xlinkCount() const
+{
+    return xlinkCounter; 
+}
+
+int TreeItem::attributeCount() const 
+{
+    return attributeCounter; 
+}
+
+int TreeItem::row() const
+{
+    if (parentItem)
+        return parentItem->childItems.indexOf(const_cast<TreeItem*>(this));
+
+    qDebug() << "TI::row() pI=NULL this="<<this<<"  ***************";
+    return 0;
+}
+
+int TreeItem::depth() 
+{
+    // Rootitem d=-1
+    // MapCenter d=0
+    int d=-2;
+    TreeItem *ti=this;
+    while (ti!=NULL)
+    {
+       ti=ti->parent();
+       d++;
+    }
+    return d;
+}
+
+TreeItem *TreeItem::parent()
+{
+    //qDebug() << "TI::parent of "<<getHeadingStd()<<"  is "<<parentItem;
+    return parentItem;
+}
+
+bool TreeItem::isChildOf (TreeItem *ti)
+{
+    if (this==rootItem) return false;
+    if (parentItem==ti) return true;
+    if (parentItem==rootItem) return false;
+    return parentItem->isChildOf (ti);
+}
+
+int TreeItem::childNum()
+{
+    return parentItem->childItems.indexOf (this);
+}
+
+int TreeItem::num()
+{
+    if (!parentItem) return -1;
+    return parentItem->num (this);
+}
+
+int TreeItem::num (TreeItem *item)
+{
+    if (!item) return -1;
+    if (!childItems.contains(item)) return -1;
+    switch (item->getType())
+    {
+       case MapCenter: return childItems.indexOf (item) - branchOffset;
+       case Branch: return childItems.indexOf (item) - branchOffset;
+       case Image: return childItems.indexOf (item) - imageOffset;
+       case Attribute: return childItems.indexOf (item) - attributeOffset;
+       case XLink: return childItems.indexOf (item) - xlinkOffset;
+       default: return -1;
+    }
+}
+void TreeItem::setType(const Type t)
+{
+    type=t;
+    itemData[1]=getTypeName();
+}
+
+TreeItem::Type TreeItem::getType()
+{
+    if (type==Branch && depth()==0) return MapCenter;  // should not be necesssary
+    return type;
+}
+
+bool TreeItem::isBranchLikeType() const
+{
+    if (type==Branch ||type==MapCenter) return true;
+    return false;
+}
+
+QString TreeItem::getTypeName()
+{
+    switch (type)
+    {
+       case Undefined: return QString ("Undefined");
+       case MapCenter: return QString ("MapCenter");
+       case Branch: return QString ("Branch");
+       case Image: return QString ("Image");
+       case Attribute: return QString ("Attribute");
+       case XLink: return QString ("XLink");
+       default: return QString ("TreeItem::getTypeName no typename defined?!");
+    }
+}
+
+
+QVariant TreeItem::data(int column) const
+{
+    return itemData.value(column);
+}
+
+void TreeItem::setHeading (const VymText &vt)
+{
+    heading = vt;
+    itemData[0]= heading.getTextASCII();  // used in TreeEditor
+}
+
+void TreeItem::setHeadingPlainText (const QString &s)
+{
+    VymText vt;
+
+    vt.setPlainText(s);
+    
+    if (!heading.isRichText() )
+        // Keep current color
+        vt.setColor( heading.getColor() );
+    setHeading(vt);
+}
+
+Heading TreeItem::getHeading() const
+{
+    return heading;
+}
+
+QString TreeItem::getHeadingText ()
+{
+    return heading.getText();
+}
+
+std::string TreeItem::getHeadingStd () const
+{
+    return getHeadingPlain().toStdString();
+}
+
+QString TreeItem::getHeadingPlain() const
+{
+    // strip beginning and tailing WS
+    return heading.getTextASCII().trimmed();
+}
+
+QString TreeItem::getHeadingPlainWithParents(uint numberOfParents = 0) 
+{
+    QString s = getHeadingPlain();
+    if (numberOfParents > 0) 
+    {
+        TreeItem *ti = this;
+        int l = numberOfParents;
+        while ( l > 0 && ti->depth() > 0 )
+        {
+            ti = ti->parent();
+            if (ti)
+                s = ti->getHeadingPlain() + " -> " + s;
+            else
+                l = 0;
+            l--;
+        }
+    }
+    return s;
+}
+
+QString TreeItem::getHeadingDepth () // Indent by depth for debugging
+{
+    QString ds;
+    for (int i=0; i<depth(); i++) ds += "  ";
+    return ds + getHeadingPlain();
+}
+
+void TreeItem::setHeadingColor (QColor color)
+{
+    heading.setColor(color);
+}
+
+QColor TreeItem::getHeadingColor ()
+{
+    return heading.getColor();
+}
+
+void TreeItem::setBackgroundColor (QColor color)
+{
+    backgroundColor=color;
+}
+
+QColor TreeItem::getBackgroundColor() 
+{
+    return backgroundColor;
+}
+
+void TreeItem::setURL (const QString &u)
+{
+    url=u;
+    if (!url.isEmpty())
+    {
+       if (url.contains ("bugzilla.novell.com"))
+       {
+           systemFlags.activate ("system-url-bugzilla-novell");
+           if (systemFlags.isActive ("system-url"))
+               systemFlags.deactivate ("system-url");
+       } else
+       {
+           systemFlags.activate ("system-url");
+           if (systemFlags.isActive ("system-url-bugzilla-novell"))
+               systemFlags.deactivate ("system-url-bugzilla-novell");
+       }
+    }
+    else
+    {
+       if (systemFlags.isActive ("system-url"))
+           systemFlags.deactivate ("system-url");
+       if (systemFlags.isActive ("system-url-bugzilla-novell"))
+           systemFlags.deactivate ("system-url-bugzilla-novell");
+    }
+}
+
+QString TreeItem::getURL ()
+{
+    return url;
+}
+
+void TreeItem::setVymLink (const QString &vl)
+{
+    if (!vl.isEmpty())
+    {
+        // We need the relative (from loading)
+        // or absolute path (from User event)
+        // and build the absolute path.
+
+        QDir d(vl);
+        if (d.isAbsolute())
+            vymLink = vl;
+        else
+        {
+            // If we have relative, use path of
+            // current map to build absolute path
+            // based on path of current map and relative
+            // path to linked map
+            QString p=dirname(model->getDestPath());
+            vymLink = convertToAbs( p, vl);
+        }
+        systemFlags.activate("system-vymLink");
+    }
+    else
+    {
+        vymLink.clear();
+        systemFlags.deactivate("system-vymLink");
+    }
+}
+
+QString TreeItem::getVymLink ()
+{
+    return vymLink;
+}
+
+void TreeItem::toggleTarget ()
+{
+    systemFlags.toggle ("system-target");
+    target= systemFlags.isActive("system-target");
+    model->emitDataChanged(this);      // FIXME-4 better call from VM?
+}
+
+bool TreeItem::isTarget ()
+{
+    return target;
+}
+
+bool TreeItem::isNoteEmpty()
+{
+    return note.isEmpty();
+}
+
+void TreeItem::clearNote()
+{
+    note.clear();
+    systemFlags.deactivate ("system-note");
+}
+
+void TreeItem::setNote(const VymText &vt)
+{
+    note = vt;
+    if (!note.isEmpty() && !systemFlags.isActive ("system-note"))
+       systemFlags.activate ("system-note");
+    if (note.isEmpty() && systemFlags.isActive ("system-note"))
+       systemFlags.deactivate ("system-note");
+}
+
+void TreeItem::setNote(const VymNote &vn)
+{
+    note = vn;
+    if (!note.isEmpty() && !systemFlags.isActive ("system-note"))
+    systemFlags.activate ("system-note");
+    if (note.isEmpty() && systemFlags.isActive ("system-note"))
+    systemFlags.deactivate ("system-note");
+}
+
+bool TreeItem::hasEmptyNote()
+{
+    return note.isEmpty();
+}
+
+VymNote TreeItem::getNote()  
+{
+    return note;
+}
+
+QString TreeItem::getNoteASCII(const QString &indent, const int &width)
+{
+    return note.getTextASCII(indent,width);
+}
+
+QString TreeItem::getNoteASCII()
+{
+    return note.getTextASCII();
+}
+
+void TreeItem::activateStandardFlag (const QString &name)
+{
+    standardFlags.activate (name);
+    model->emitDataChanged(this);
+}
+
+void TreeItem::deactivateStandardFlag (const QString &name)
+{
+    standardFlags.deactivate (name);
+    model->emitDataChanged(this);
+}
+
+void TreeItem::deactivateAllStandardFlags ()
+{
+    standardFlags.deactivateAll ();
+    model->emitDataChanged(this);
+}
+
+void TreeItem::toggleStandardFlag(const QString &name, FlagRow *master)
+{
+    standardFlags.toggle (name,master);
+}
+
+void TreeItem::toggleSystemFlag(const QString &name, FlagRow *master)
+{
+    systemFlags.toggle (name,master);
+    model->emitDataChanged(this);
+}
+
+bool TreeItem::hasActiveStandardFlag (const QString &name)
+{
+    return standardFlags.isActive (name);
+}
+
+bool TreeItem::hasActiveSystemFlag (const QString &name)
+{
+    return systemFlags.isActive (name);
+}
+
+QStringList TreeItem::activeStandardFlagNames ()
+{
+    return standardFlags.activeFlagNames();
+}
+
+FlagRow* TreeItem::getStandardFlagRow()
+{
+    return &standardFlags;
+}
+
+QStringList TreeItem::activeSystemFlagNames ()
+{
+    return systemFlags.activeFlagNames();
+}
+
+bool TreeItem::canMoveDown()
+{
+    switch (type)
+    {
+       case Undefined: return false;
+       case MapCenter: 
+       case Branch: 
+           if (!parentItem) return false;
+           if (parentItem->num (this) < parentItem->branchCount()-1)
+               return true;
+           else
+               return false;
+           break;  
+       case Image: return false;
+       default: return false;
+    }
+}
+
+bool TreeItem::canMoveUp()
+{
+    switch (type)
+    {
+       case MapCenter: 
+       case Branch: 
+           if (!parentItem) return false;
+           if (parentItem->num (this) > 0)
+               return true;
+           else
+               return false;
+           break;  
+       default: return false;
+    }
+}
+
+uint TreeItem::getID()
+{
+    return id;
+}
+
+void TreeItem::setUuid(const QString &id)
+{
+    uuid=QUuid(id);
+}
+
+QUuid TreeItem::getUuid()
+{
+    return uuid;
+}
+
+TreeItem* TreeItem::getChildNum(const int &n)
+{
+    if (n>=0 && n<childItems.count() )
+       return childItems.at(n);
+    else
+       return NULL;
+}
+
+BranchItem* TreeItem::getFirstBranch()
+{
+    if (branchCounter>0)
+       return getBranchNum (0);
+    else
+       return NULL;
+}
+
+BranchItem* TreeItem::getLastBranch()
+{
+    if (branchCounter>0)
+       return getBranchNum (branchCounter-1);
+    else
+       return NULL;
+}
+
+ImageItem* TreeItem::getFirstImage()
+{
+    if (imageCounter>0)
+       return getImageNum (imageCounter-1);
+    else
+       return NULL;
+}
+
+ImageItem* TreeItem::getLastImage()
+{
+    if (imageCounter>0)
+       return getImageNum (imageCounter-1);
+    else
+       return NULL;
+}
+
+BranchItem* TreeItem::getNextBranch(BranchItem *currentBranch)
+{
+    if (!currentBranch) return NULL;
+    int n=num (currentBranch)+1;
+    if (n<branchCounter)
+       return getBranchNum (branchOffset + n);
+    else
+       return NULL;
+}
+
+
+BranchItem* TreeItem::getBranchNum(const int &n)
+{
+    if (n>=0 && n<branchCounter)
+       return (BranchItem*)getChildNum (branchOffset + n);
+    else
+       return NULL;
+}
+
+BranchObj* TreeItem::getBranchObjNum(const int &n)
+{
+    if (n>=0 && n<branchCounter)
+    {
+       BranchItem *bi=getBranchNum(n);
+       if (bi)
+       {
+           BranchObj *bo=(BranchObj*)(bi->getLMO());
+           if (bo)
+               return bo;
+           else
+               qDebug()<<"TI::getBONum bo=NULL";
+       }
+    } 
+    return NULL;
+}
+
+ImageItem* TreeItem::getImageNum (const int &n)
+{
+    if (n>=0 && n<imageCounter)
+       return (ImageItem*)getChildNum (imageOffset + n);
+    else
+       return NULL;
+}
+
+FloatImageObj* TreeItem::getImageObjNum (const int &n) 
+{
+    if (imageCounter>0 )
+       return (FloatImageObj*)(getImageNum(n)->getLMO());
+    else
+       return NULL;
+}
+
+AttributeItem* TreeItem::getAttributeNum (const int &n)
+{
+    if (n>=0 && n<attributeCounter)
+       return (AttributeItem*)getChildNum (attributeOffset + n);
+    else
+       return NULL;
+}
+
+XLinkItem* TreeItem::getXLinkItemNum (const int &n) 
+{
+    if (n>=0 && n<xlinkCounter )
+       return (XLinkItem*)getChildNum (xlinkOffset +n);
+    else
+       return NULL;
+}
+
+
+XLinkObj* TreeItem::getXLinkObjNum (const int &n)   
+{
+    if (xlinkCounter>0 )
+    {
+       XLinkItem *xli=getXLinkItemNum (n);
+       if (xli)
+       {
+           Link *l=xli->getLink();
+           if (l) return l->getXLinkObj();
+       }
+    }
+    return NULL;
+}
+
+
+void TreeItem::setHideTmp (HideTmpMode mode) 
+{
+    if (type==Image || type==Branch || type==MapCenter)
+//     ((ImageItem*)this)->updateVisibility();
+    {
+       //LinkableMapObj* lmo=((MapItem*)this)->getLMO();
+
+       if (mode==HideExport && (hideExport || hasHiddenExportParent() ) ) // FIXME-4  try to avoid calling hasScrolledParent repeatedly
+
+           // Hide stuff according to hideExport flag and parents
+           hidden=true;
+       else
+           // Do not hide, but still take care of scrolled status
+           hidden=false;
+       updateVisibility();
+       // And take care of my children
+       for (int i=0; i<branchCount(); ++i)
+           getBranchNum(i)->setHideTmp (mode); 
+    }
+}
+
+bool TreeItem::hasHiddenExportParent()
+{
+    // Calls parents recursivly to
+    // find out, if we or parents are temp. hidden
+
+    if (hidden || hideExport) return true;
+
+    if (parentItem) 
+       return parentItem->hasHiddenExportParent();
+    else
+       return false;
+}
+
+
+void TreeItem::setHideInExport(bool b) 
+{
+    if (type==MapCenter ||type==Branch || type==Image)
+    {
+       hideExport=b;
+       if (b)
+           systemFlags.activate("system-hideInExport");
+       else    
+           systemFlags.deactivate("system-hideInExport");
+    }
+}   
+
+bool TreeItem::hideInExport()
+{
+    return hideExport;
+}   
+
+void TreeItem::updateVisibility()
+{
+    // overloaded in derived objects
+}   
+
+bool TreeItem::isHidden()
+{
+    return hidden;
+}   
+
+QString TreeItem::getGeneralAttr()  
+{
+    QString s;
+    if (hideExport)
+        s+=attribut("hideInExport","true");
+    if (!url.isEmpty())
+       s+=attribut ("url",url);
+    if (!vymLink.isEmpty())
+       s+=attribut ("vymLink",convertToRel (model->getDestPath(),vymLink));    
+
+    if (target)
+       s+=attribut ("localTarget","true");
+    return s;  
+}
+
+
diff --git a/treeitem.h b/treeitem.h
new file mode 100644 (file)
index 0000000..f47a997
--- /dev/null
@@ -0,0 +1,222 @@
+#ifndef TREEITEM_H
+#define TREEITEM_H
+
+#include <QColor>
+#include <QUuid>
+#include <QList>
+#include <QVariant>
+
+#include "flagrow.h"
+#include "heading.h"
+#include "vymnote.h"
+#include "xmlobj.h"
+
+class AttributeItem;
+class BranchObj;
+class BranchItem;
+class FloatImageObj;
+class ImageItem;
+class LinkableMapObj;
+class QModelIndex;
+class VymModel;
+class XLinkItem;
+class XLinkObj;
+
+class TreeItem:public XMLObj
+{
+public:
+    enum Type {Undefined,MapCenter,Branch,Image,Attribute,XLink};
+    enum HideTmpMode {HideNone, HideExport};
+
+    TreeItem();
+    TreeItem(const QList<QVariant> &data, TreeItem *parent = 0);
+    virtual ~TreeItem();
+    void init();
+    virtual void clear()=0;
+
+    // General housekeeping
+    virtual void setModel (VymModel *m);
+    virtual VymModel* getModel();
+
+
+    /*! Return number of item, as it would be after it would have been appended.
+       This is used to notify view about layout changes before model is modified. */
+    virtual int getRowNumAppend (TreeItem *child);
+
+    virtual void appendChild (TreeItem *child);
+    virtual void removeChild (int row);
+
+    virtual TreeItem *child(int row);
+    virtual int childCount() const;
+    virtual int childNumber() const;
+    virtual int columnCount() const;
+    virtual int branchCount() const;
+    virtual int imageCount() const;
+    virtual int xlinkCount() const;
+    virtual int attributeCount() const;
+
+    virtual int row() const;
+    virtual int depth() ;
+    virtual TreeItem *parent();
+    virtual bool isChildOf (TreeItem *ti);
+
+    /*! Return number of item in parent by type, 
+       e.g. first branch has number 0           */
+    virtual int childNum();            //! Return number of item in list of all children
+    virtual int num();                 //! Return number of item by type
+    virtual int num (TreeItem *item);  //! Return number of item by type
+
+protected:
+    Type type;
+public:        
+    virtual void setType (const Type t);
+    virtual Type getType ();
+    virtual bool isBranchLikeType() const;
+    virtual QString getTypeName ();
+
+// Accessing data
+    virtual QVariant data (int column) const;
+
+
+protected:
+    Heading heading;
+    QColor backgroundColor;
+public:        
+    virtual void setHeading (const VymText &vt);
+    virtual void setHeadingPlainText (const QString &s);
+    virtual Heading getHeading() const;
+    virtual QString getHeadingText();
+    virtual std::string getHeadingStd() const; //! convenience function used for debugging
+    virtual QString getHeadingPlain() const;   //! Some views or methods can't cope with RichText
+    virtual QString getHeadingPlainWithParents(uint numberOfParents); //! Show also some of the parents
+    virtual QString getHeadingDepth();
+    virtual void setHeadingColor(QColor color);        //! Set color of heading. In BranchItem overloaded to update QGraphicsView
+    virtual QColor getHeadingColor();          //! Returns color of heading
+    virtual void setBackgroundColor(QColor color);//! Set color of frame brush, if LMO exists for item
+    virtual QColor getBackgroundColor();       //! Returns color of frame brush, if LMO exists for item
+
+
+protected:
+    QString url;
+public:
+    void setURL (const QString &url);          //! Set URL
+    QString getURL ();                         //! Get URL
+
+
+protected:
+    QString vymLink;
+public:
+    void setVymLink (const QString &url);          //! Set URL
+    QString getVymLink ();                         //! Get URL
+
+protected:
+    bool target;
+public:    
+    void toggleTarget();                       //! Toggle target status
+    bool isTarget();                           //! Returns true if item is is a target
+
+protected:
+    VymNote note;
+public:        
+    bool isNoteEmpty();
+    virtual void clearNote();
+    virtual bool hasEmptyNote();
+    virtual void setNote(const VymText &vt); //FIXME-3 setNote is called for every select or so???
+    virtual void setNote(const VymNote &vn);
+
+    virtual VymNote getNote();
+    virtual QString getNoteASCII(const QString &indent, const int &width); // returns note  (ASCII)
+    virtual QString getNoteASCII();        // returns note (ASCII)
+
+protected:
+    FlagRow standardFlags;
+    FlagRow systemFlags;
+public:        
+    virtual void activateStandardFlag(const QString &flag);
+    virtual void deactivateStandardFlag(const QString &flag);
+    virtual void deactivateAllStandardFlags();
+
+    /*! \brief Toggle a Flag 
+       If master is not NULL,, only one Flag from FlagRow master may 
+       be active simultanously, the others get deactivated.
+    */ 
+    virtual void toggleStandardFlag(const QString &flag, FlagRow *master=NULL);
+    virtual void toggleSystemFlag  (const QString &flag, FlagRow *master=NULL);
+    virtual bool hasActiveStandardFlag (const QString &flag);
+    virtual bool hasActiveSystemFlag   (const QString &flag);
+    virtual QStringList activeStandardFlagNames();
+    virtual FlagRow* getStandardFlagRow ();
+
+    virtual QStringList activeSystemFlagNames();
+
+    virtual bool canMoveDown();
+    virtual bool canMoveUp();
+
+protected:
+    uint id;
+    QUuid uuid;
+
+public:
+    virtual uint getID ();
+    virtual void setUuid (const QString &id);
+    virtual QUuid getUuid();
+
+    // Navigation and selection
+    virtual TreeItem* getChildNum(const int &n);
+    virtual BranchItem* getFirstBranch();
+    virtual BranchItem* getLastBranch();
+    virtual ImageItem* getFirstImage();
+    virtual ImageItem* getLastImage();
+
+    /*! Get next branch after current branch. Return NULL if there is no
+       next branch */
+    virtual BranchItem* getNextBranch(BranchItem* currentBranch);
+
+    virtual BranchItem* getBranchNum(const int &n);
+    virtual BranchObj* getBranchObjNum(const int &n);
+
+    virtual ImageItem* getImageNum(const int &n);
+    virtual FloatImageObj* getImageObjNum(const int &n);
+
+    virtual AttributeItem* getAttributeNum(const int &n);
+
+    virtual XLinkItem* getXLinkItemNum(const int &n);
+    virtual XLinkObj* getXLinkObjNum(const int &n);
+
+protected:
+    bool hideExport;                       //! Hide this item in export
+    bool hidden;                           //! Hidden in export if true
+public:
+    virtual void setHideTmp (HideTmpMode);
+    virtual bool hasHiddenExportParent ();
+    virtual void setHideInExport(bool);            // set export of object (and children)
+    virtual bool hideInExport();
+    virtual bool isHidden ();      
+    virtual void updateVisibility();       //! Sets visibility in LinkableMapObj, if existing
+
+    virtual QString getGeneralAttr();
+    
+protected:
+    VymModel *model;
+
+    QList<TreeItem*> childItems;
+    QList<QVariant> itemData;
+    TreeItem *parentItem;
+
+    /*!  Set rootItem (does not change, needed for some quick checks 
+        e.g. if some branch is mapCenter and isChildOf  */
+    TreeItem *rootItem;
+    int branchOffset;
+    int branchCounter;
+    int imageOffset;
+    int imageCounter;
+
+    int attributeOffset;
+    int attributeCounter;
+
+    int xlinkOffset;
+    int xlinkCounter;
+};
+
+#endif
diff --git a/treemodel.cpp b/treemodel.cpp
new file mode 100644 (file)
index 0000000..084c37d
--- /dev/null
@@ -0,0 +1,309 @@
+#include <QtGui>
+
+#include "attributeitem.h"
+#include "branchitem.h"
+#include "imageitem.h"
+#include "treeitem.h"
+#include "treemodel.h"
+#include "xlinkitem.h"
+
+TreeModel::TreeModel(QObject *parent)
+    : QAbstractItemModel(parent)
+{
+    //qDebug()<<"Constr TreeModel  this="<<this;
+    QList<QVariant> rootData;
+    rootData << "Heading" << "Type";
+    rootItem = new BranchItem(rootData);
+}
+
+TreeModel::~TreeModel()
+{
+    //qDebug()<<"Destr TreeModel  this="<<this;
+    delete rootItem;
+}
+
+QVariant TreeModel::data(const QModelIndex &index, int role) const
+{
+    if (!index.isValid())
+        return QVariant();
+
+    TreeItem *item = getItem (index);
+
+    if (role != Qt::DisplayRole)
+    {
+       if (role == Qt::ForegroundRole ) 
+           return item->getHeadingColor();
+       //if (role == Qt::BackgroundRole )  // does not look nice
+       //  return item->getBackgroundColor();
+       return QVariant();
+    }  
+
+
+    return item->data(index.column());
+}
+
+Qt::ItemFlags TreeModel::flags(const QModelIndex &index) const
+{
+    if (!index.isValid())
+        return Qt::NoItemFlags;
+
+    return Qt::ItemIsEnabled | Qt::ItemIsSelectable | Qt::ItemIsEditable;
+}
+
+QVariant TreeModel::headerData(int section, Qt::Orientation orientation,
+                               int role) const
+{
+    if (orientation == Qt::Horizontal && role == Qt::DisplayRole)
+        return rootItem->data(section);
+
+    return QVariant();
+}
+
+QModelIndex TreeModel::index (TreeItem* ti)
+{
+    if (!ti->parent())
+       return QModelIndex();
+    else    
+       return createIndex (ti->row(),0,ti);
+}
+
+QModelIndex TreeModel::index(int row, int column, const QModelIndex &parent)
+            const
+{
+    // Make sure to return invalid index for invalid values (see modeltest)
+    if (row<0 || column<0) return QModelIndex();
+    if (column!=0) return QModelIndex();
+
+    TreeItem *parentItem;
+
+    if (!parent.isValid())
+        parentItem = rootItem;
+    else
+        parentItem = getItem (parent);
+
+    TreeItem *childItem = parentItem->child(row);
+    if (childItem)
+        return createIndex(row, column, childItem);
+    else
+        return QModelIndex();
+}
+
+QModelIndex TreeModel::parent(const QModelIndex &index) const
+{
+    if (!index.isValid())
+        return QModelIndex();
+
+    TreeItem *ti= getItem (index);
+    TreeItem *parentItem = ti->parent();
+    if (parentItem == rootItem) return QModelIndex();
+    return createIndex(parentItem->childNumber(), 0, parentItem);
+}
+
+int TreeModel::rowCount(const QModelIndex &parent) const
+{
+    TreeItem *parentItem;
+
+    if (!parent.isValid())
+        parentItem = rootItem;
+    else
+        parentItem = getItem (parent);
+
+    return parentItem->childCount();
+}
+
+int TreeModel::columnCount(const QModelIndex &parent) const
+{
+    int c;
+    if (parent.isValid())
+        c= getItem (parent)->columnCount();
+    else
+        c= rootItem->columnCount();
+    return c;
+}
+
+void TreeModel::nextBranch (BranchItem* &current, BranchItem* &previous, bool deepLevelsFirst, BranchItem *start)    
+{
+    if (deepLevelsFirst)
+    {
+        // Walk through map beginning at current with previous==0
+        // Start at root, if current==NULL
+        if (!current) 
+        {
+            if (start)
+            {
+                current=start;
+                previous=current->parentBranch();
+            } else
+            {
+                previous=(BranchItem*)rootItem;
+                current = previous->getFirstBranch();
+                return;
+            }
+        }
+        
+        // Walk the tree by always turning "left" 
+        // and returning an element when going up
+        if (current == previous)
+        {
+            // Had leaf before, go up again.
+            if (start && start == current)
+            {
+                current=NULL;
+                return;
+            }
+            current = current->parentBranch();
+            if (!current) return;
+            return nextBranch(current, previous, deepLevelsFirst, start);
+        }
+
+       if (current->depth() > previous->depth() )
+       {   
+           // Coming from above, try to go deeper
+           if (current->branchCount() >0 )
+           {
+                // Turn "left" and go deeper
+               previous=current;
+               current=current->getFirstBranch();
+                return nextBranch (current, previous, deepLevelsFirst);
+           } else      
+            {
+                // turn around and go up again
+                previous=current;
+                return;
+            }
+       }   else
+        {
+            // Coming from below, try to go down again to siblings
+
+            BranchItem *sibling=current->getBranchNum (previous->num()+1);
+            if (sibling)
+            {   
+                // Found sibling of previous, go there
+                previous=current;
+                current=sibling;
+                return nextBranch (current, previous, deepLevelsFirst, start);
+            } else
+            {
+                // and go further up
+                if (current == rootItem) current = NULL;
+                previous = current;
+                return;
+            }
+        }
+    } else
+    {
+        // Walk through map beginning at current with previous==0
+        // Start at root, if current==NULL
+        if (!current) 
+        {
+            if (start) 
+            {
+                current=start;    
+                previous=(BranchItem*)(start->parent() );
+                return;
+            } else
+            {
+                previous=(BranchItem*)rootItem;
+                current = previous->getFirstBranch();
+                return;
+            }
+        }
+
+
+       if (current->depth() > previous->depth() )
+       {   
+            // Going deeper 
+           if (current->branchCount() >0 )
+           {
+                // Turn "left" and go deeper
+               previous=current;
+               current=current->getFirstBranch();
+                return;
+           } else      
+            {
+                // turn around and go up again
+                previous=current;
+                nextBranch (current, previous, deepLevelsFirst, start);
+                return;
+            }
+        } else
+        {
+            if (start && previous == start)
+            {
+                current=NULL;
+                return;
+            }
+
+            BranchItem *sibling=current->getBranchNum (previous->num()+1);
+            if (sibling)
+            {   
+                // Found sibling of previous, go there
+                previous=current;
+                current=sibling;
+                return; 
+            } else
+            {
+                // no sibling, go further up left
+                previous=current;
+                current = current->parentBranch();
+                if (!current)
+                {
+                    current = NULL;
+                    return;
+                } else
+                {
+                    nextBranch (current, previous, deepLevelsFirst, start);
+                }
+            }
+            return;
+        }
+    }
+}
+
+bool TreeModel::removeRows ( int row, int count, const QModelIndex & parent)
+{
+    int last=row+count-1;
+    TreeItem *pi;
+    if (parent.isValid())
+       pi=getItem (parent);
+    else
+       pi=rootItem;
+    TreeItem *ti;
+
+    for (int i=row; i<=last; i++)
+    {
+       ti=pi->getChildNum (row);
+       pi->removeChild (row);  // does not delete object!
+       delete ti;
+    }
+    return true;
+}
+
+TreeItem *TreeModel::getItem(const QModelIndex &index) const
+{
+    if (index.isValid()) {
+       TreeItem *item = static_cast<TreeItem*>(index.internalPointer());
+        if (item) return item;
+    }
+    return NULL;
+}
+
+BranchItem *TreeModel::getRootItem()
+{
+    return rootItem;
+}
+
+int TreeModel::xlinkCount()
+{
+    return xlinks.count();
+}
+
+Link* TreeModel::getXLinkNum (const int &n)
+{
+    if (n>=0 && n<xlinks.count())
+       return xlinks.at(n);
+    else
+       return NULL;
+
+}
+
diff --git a/treemodel.h b/treemodel.h
new file mode 100644 (file)
index 0000000..3a0ccbd
--- /dev/null
@@ -0,0 +1,52 @@
+#ifndef TREEMODEL_H
+#define TREEMODEL_H
+
+#include <QAbstractItemModel>
+#include <QModelIndex>
+#include <QVariant>
+
+
+class BranchItem;
+class TreeItem;
+class Link;
+class LinkableMapObj;
+
+class TreeModel : public QAbstractItemModel
+{
+    Q_OBJECT
+
+public:
+    TreeModel(QObject *parent = 0);
+    ~TreeModel();
+
+    QVariant data(const QModelIndex &index, int role) const;
+    Qt::ItemFlags flags(const QModelIndex &index) const;
+    QVariant headerData(int section, Qt::Orientation orientation,
+                        int role = Qt::DisplayRole) const;
+    QModelIndex index (TreeItem* ti);
+    QModelIndex index(int row, int column,
+                      const QModelIndex &parent = QModelIndex()) const;
+    QModelIndex parent(const QModelIndex &index) const;
+    int rowCount(const QModelIndex &parent = QModelIndex()) const;
+    int columnCount(const QModelIndex &parent = QModelIndex()) const;
+
+    void nextBranch (BranchItem* &current, BranchItem* &previous, bool deepLevelsFirst=false, BranchItem* start=NULL);
+
+    bool removeRows ( int row, int count, 
+               const QModelIndex & parent = QModelIndex() ); 
+
+    TreeItem* getItem (const QModelIndex &index) const;
+    BranchItem* getRootItem();
+
+    virtual int xlinkCount();
+    virtual Link* getXLinkNum (const int &n); 
+
+protected:
+    BranchItem *rootItem;
+
+    QList <Link*> xlinks;
+    QList <uint> deleteLaterIDs;
+
+};
+
+#endif
diff --git a/version.cpp b/version.cpp
new file mode 100644 (file)
index 0000000..a39525e
--- /dev/null
@@ -0,0 +1,65 @@
+#include "version.h"
+
+#include <QDebug>
+#include <QRegExp>
+
+bool versionLowerThanVym (const QString &v)
+{
+    // returns true, if Version v <  VYM_VERSION
+    if (v == __VYM_VERSION) 
+        return false;
+    else
+        return  versionLowerOrEqualThanVym(v);
+}
+
+
+bool versionLowerOrEqualThanVym (const QString &v)
+{
+    // returns true, if Version v <=  VYM_VERSION
+    return versionLowerOrEqual (v,__VYM_VERSION);
+}
+
+
+bool versionLowerOrEqual (const QString &v, const QString &vstatic)
+{
+    // returns true, if version v <= vstatic
+    bool ok = false;
+    int v1  = 0;
+    int v2  = 0;
+    int v3  = 0;
+    int vs1 = 0;
+    int vs2 = 0;
+    int vs3 = 0;
+
+    QRegExp rx("(\\d{1,3})\\.(\\d{1,3})\\.(\\d{1,3})");
+    int pos = rx.indexIn (v);
+    if (pos > -1)
+    {
+       v1 = rx.cap(1).toInt(&ok);
+       if (ok) v2 = rx.cap(2).toInt(&ok);
+       if (ok) v3 =rx.cap(3).toInt(&ok);
+    } 
+
+    pos=rx.indexIn (vstatic);
+    if (ok && pos>-1)
+    {
+       vs1=rx.cap(1).toInt(&ok);
+       if (ok) vs2=rx.cap(2).toInt(&ok);
+       if (ok) vs3=rx.cap(3).toInt(&ok);
+    } 
+
+    if (!ok) 
+    {
+       qWarning ()<<QString ("Warning: Checking version failed: v=%1  vstatic=%2").arg(v).arg(vstatic);
+       return false;
+    }  
+    
+    if (vs1 > v1) return true;
+    if (vs1 < v1) return false;
+    if (vs2 > v2) return true;
+    if (vs2 < v2) return false;
+    if (vs3 > v3) return true;
+    if (vs3 < v3) return false;
+    return true;    
+
+}
diff --git a/version.h b/version.h
new file mode 100644 (file)
index 0000000..89298ef
--- /dev/null
+++ b/version.h
@@ -0,0 +1,17 @@
+#ifndef VERSION_H 
+#define VERSION_H
+
+#include <QString>
+
+#define __VYM_NAME "VYM" 
+#define __VYM_VERSION "2.6.11"
+#define __VYM_CODENAME "Codename: Production release"
+//#define __VYM_CODENAME "Codename: development version, not for production!"
+#define __VYM_BUILD_DATE "2017-11-14"
+#define __VYM_HOME "http://www.insilmaril.de/vym"
+
+bool versionLowerThanVym(const QString &);
+bool versionLowerOrEqualThanVym(const QString &);
+bool versionLowerOrEqual(const QString &, const QString &);
+
+#endif
diff --git a/vym.pro b/vym.pro
new file mode 100644 (file)
index 0000000..f8b2ba6
--- /dev/null
+++ b/vym.pro
@@ -0,0 +1,289 @@
+TARGET     = vym
+TEMPLATE    = app
+LANGUAGE    = C++
+
+CONFIG += qt warn_on x86_64 
+
+QMAKE_MAC_SDK = macosx10.10
+
+QT += network 
+QT += xml 
+QT += svg 
+QT += printsupport
+
+QT += widgets
+
+#  include(tmp/modeltest/modeltest.pri)
+
+RESOURCES = vym.qrc
+
+unix:!macx:isEmpty(NO_DBUS) {
+    message("Compiling with DBUS")
+    DEFINES += VYM_DBUS
+    QT      += dbus 
+    HEADERS += adaptormodel.h adaptorvym.h 
+    SOURCES += adaptormodel.cpp adaptorvym.cpp 
+}
+
+win32 {
+    HEADERS += mkdtemp.h
+    SOURCES += mkdtemp.cpp
+    RC_FILE = vym.rc
+    # Manifest embedding was suggested by Qt docs somewhere...
+    win32: CONFIG += embed_manifest_exe
+
+    # Without this, M_PI, and M_PI_2 won`t be defined.
+    win32:DEFINES *= _USE_MATH_DEFINES
+
+    QT_QPA_PLATFORM_PLUGIN_PATH=%QTDIR%\plugins\platforms\
+}
+macx {
+    QMAK_MAC_SDK = macosx10.10
+    QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.10
+}
+
+TRANSLATIONS += lang/vym.de_DE.ts
+TRANSLATIONS += lang/vym.el.ts
+TRANSLATIONS += lang/vym.en.ts
+TRANSLATIONS += lang/vym.es.ts
+TRANSLATIONS += lang/vym.fr.ts
+TRANSLATIONS += lang/vym.hr_HR.ts
+TRANSLATIONS += lang/vym.ia.ts
+TRANSLATIONS += lang/vym.it.ts
+TRANSLATIONS += lang/vym.ja.ts
+TRANSLATIONS += lang/vym.pt_BR.ts
+TRANSLATIONS += lang/vym.ru.ts
+TRANSLATIONS += lang/vym.sv.ts
+TRANSLATIONS += lang/vym.zh_CN.ts
+TRANSLATIONS += lang/vym.zh_TW.ts
+TRANSLATIONS += lang/vym.cs_CZ.ts
+
+ICON =icons/vym.icns
+
+
+HEADERS        += \
+    aboutdialog.h \
+    taskfiltermodel.h \
+    animpoint.h \
+    arrowobj.h \
+    attribute.h \
+    attributeitem.h \
+#   attributedelegate.h\
+#   attributedialog.h \
+#   attributewidget.h \
+    branchitem.h \
+    branchobj.h \
+    branchpropeditor.h\
+    bugagent.h \
+    command.h \
+    dockeditor.h \
+    downloadagent.h \
+    editxlinkdialog.h \
+    exportoofiledialog.h \
+    exporthtmldialog.h\
+    exports.h \
+    extrainfodialog.h \
+    file.h \
+    findwidget.h \
+    findresultwidget.h \
+    findresultitem.h \
+    findresultmodel.h \
+    flag.h \
+    flagobj.h \
+    flagrowobj.h \
+    flagrow.h \
+    floatimageobj.h \
+    floatobj.h \
+    frameobj.h \
+    geometry.h \
+    heading.h \
+    headingeditor.h \
+    headingobj.h \
+    highlighter.h \
+    historywindow.h \
+    imageitem.h \
+    imageobj.h \
+    imports.h \
+    lineeditdialog.h \
+    linkablemapobj.h \
+    lockedfiledialog.h \
+    macros.h \
+    mainwindow.h \
+    mapeditor.h \
+    mapitem.h \
+    mapobj.h \
+    misc.h \
+    mysortfilterproxymodel.h \
+    noteeditor.h \
+    options.h \
+    ornamentedobj.h \
+    parser.h \
+    scripteditor.h\
+    settings.h \
+    shortcuts.h\
+    showtextdialog.h\
+    slidecontrolwidget.h\
+    slideeditor.h\
+    slideitem.h\
+    slidemodel.h\
+    task.h\
+    taskeditor.h\
+    taskmodel.h\
+    treedelegate.h \
+    treeeditor.h \
+    treeitem.h \
+    treemodel.h \
+    texteditor.h \
+    version.h \
+    vymlock.h \
+    vymmodel.h \
+    vymnote.h \
+    vymprocess.h \
+    vymtext.h \
+    vymview.h \
+    winter.h \
+    warningdialog.h \
+    xlink.h \
+    xlinkitem.h \
+    xlinkobj.h \
+    xml-base.h \
+    xml-vym.h \
+    xml-freemind.h \
+    xmlobj.h\
+    xsltproc.h 
+
+SOURCES        += \
+    aboutdialog.cpp \
+    taskfiltermodel.cpp \
+    animpoint.cpp \
+    arrowobj.cpp \
+    attribute.cpp \
+    attributeitem.cpp \
+#   attributedelegate.cpp \
+#   attributedialog.cpp \
+#   attributewidget.cpp \
+    branchitem.cpp \
+    branchobj.cpp \
+    branchpropeditor.cpp \
+    bugagent.cpp \
+    command.cpp \
+    dockeditor.cpp \
+    downloadagent.cpp \
+    editxlinkdialog.cpp \
+    exportoofiledialog.cpp \
+    exports.cpp \
+    exporthtmldialog.cpp \
+    extrainfodialog.cpp \
+    file.cpp \
+    findwidget.cpp \
+    findresultwidget.cpp \
+    findresultitem.cpp \
+    findresultmodel.cpp \
+    flag.cpp \
+    flagobj.cpp \
+    flagrow.cpp \
+    flagrowobj.cpp \
+    floatimageobj.cpp \
+    floatobj.cpp \
+    frameobj.cpp \
+    geometry.cpp \
+    heading.cpp \
+    headingeditor.cpp \
+    headingobj.cpp \
+    highlighter.cpp \
+    historywindow.cpp \
+    imageitem.cpp \
+    imageobj.cpp \
+    imports.cpp \
+    lineeditdialog.cpp \
+    linkablemapobj.cpp \
+    lockedfiledialog.cpp \
+    macros.cpp \
+    main.cpp \
+    mainwindow.cpp \
+    mapeditor.cpp \
+    mapitem.cpp \
+    mapobj.cpp \
+    misc.cpp \
+    mysortfilterproxymodel.cpp \
+    noteeditor.cpp \
+    options.cpp \
+    ornamentedobj.cpp \
+    parser.cpp \
+    scripteditor.cpp \
+    settings.cpp \
+    shortcuts.cpp\
+    showtextdialog.cpp \
+    slidecontrolwidget.cpp \
+    slideeditor.cpp \
+    slideitem.cpp \
+    slidemodel.cpp \
+    task.cpp \
+    taskeditor.cpp \
+    taskmodel.cpp \
+    texteditor.cpp \
+    treedelegate.cpp \
+    treeeditor.cpp \
+    treeitem.cpp \
+    treemodel.cpp \
+    version.cpp \
+    vymlock.cpp \
+    vymmodel.cpp \
+    vymnote.cpp \
+    vymprocess.cpp \
+    vymtext.cpp \
+    vymview.cpp \
+    warningdialog.cpp \
+    winter.cpp \
+    xlink.cpp \
+    xlinkitem.cpp \
+    xlinkobj.cpp \
+    xml-base.cpp \
+    xml-vym.cpp \
+    xml-freemind.cpp \
+    xmlobj.cpp \
+    xsltproc.cpp 
+
+FORMS = \
+    attributewidget.ui \
+    branchpropeditor.ui \
+    exporthtmldialog.ui \
+    extrainfodialog.ui \
+    editxlinkdialog.ui \
+    historywindow.ui \
+    lineeditdialog.ui \
+    lockedfiledialog.ui \
+    scripteditor.ui \
+    showtextdialog.ui \
+    warningdialog.ui \
+
+isEmpty( PREFIX ) {
+    PREFIX = /usr/local
+    count( INSTALLDIR, 1 ) {
+       PREFIX = $${INSTALLDIR}
+       message( "Please use PREFIX instead of INSTALLDIR" )
+    }
+}
+isEmpty( BINDIR ) {
+    BINDIR = $${PREFIX}/bin
+}
+isEmpty( DATADIR ) {
+    DATADIR = $${PREFIX}
+}
+
+message( "Installation directory" )
+message( $$PREFIX )
+
+
+target.path = $${BINDIR}
+INSTALLS += target
+
+language.files = lang/*.qm
+language.path = $${DATADIR}/vym/lang
+INSTALLS += language
+
+support.files = styles/ scripts/ icons/ flags/ macros/ exports/ demos/
+support.files += LICENSE.txt
+support.path = $${DATADIR}/vym
+INSTALLS += support 
+
diff --git a/vym.qrc b/vym.qrc
new file mode 100644 (file)
index 0000000..4d8a70e
--- /dev/null
+++ b/vym.qrc
@@ -0,0 +1,151 @@
+<!DOCTYPE RCC><RCC version="1.0">
+  <qresource>
+    <file alias="flag-2arrow-down.png">flags/flag-2arrow-down.png</file>
+    <file alias="flag-2arrow-up.png">flags/flag-2arrow-up.png</file>
+    <file alias="flag-arrow-down.png">flags/flag-arrow-down.png</file>
+    <file alias="flag-arrow-up.png">flags/flag-arrow-up.png</file>
+    <file alias="flag-clock.png">flags/flag-clock.png</file>
+    <file alias="flag-cross-red.png">flags/flag-cross-red.png</file>
+    <file alias="flag-exclamationmark.png">flags/flag-exclamationmark.png</file>
+    <file alias="flag-flash.png">flags/flag-flash.png</file>
+    <file alias="flag-heart.png">flags/flag-heart.png</file>
+    <file alias="flag-hideexport.png">flags/flag-hideexport.png</file>
+    <file alias="flag-hook-green.png">flags/flag-hook-green.png</file>
+    <file alias="flag-info.png">flags/flag-info.png</file>
+    <file alias="flag-lamp.png">flags/flag-lamp.png</file>
+    <file alias="flag-lifebelt.png">flags/flag-lifebelt.png</file>
+    <file alias="flag-note.png">flags/flag-note.png</file>
+    <file alias="flag-phone.png">flags/flag-phone.png</file>
+    <file alias="flag-present.png">flags/flag-present.png</file>
+    <file alias="flag-questionmark.png">flags/flag-questionmark.png</file>
+    <file alias="flag-rose.png">flags/flag-rose.png</file>
+    <file alias="flag-scrolled-right.png">flags/flag-scrolled-right.png</file>
+    <file alias="flag-smiley-good.png">flags/flag-smiley-good.png</file>
+    <file alias="flag-smiley-omb.png">flags/flag-smiley-omb.png</file>
+    <file alias="flag-smiley-sad.png">flags/flag-smiley-sad.png</file>
+    <file alias="flag-stopsign.png">flags/flag-stopsign.png</file>
+    <file alias="flag-target.png">flags/flag-target.png</file>
+    <file alias="flag-task-finished.png">flags/flag-task-finished.png</file>
+    <file alias="flag-task-new-morning.png">flags/flag-task-new-morning.png</file>
+    <file alias="flag-task-new-sleeping.png">flags/flag-task-new-sleeping.png</file>
+    <file alias="flag-task-new.png">flags/flag-task-new.png</file>
+    <file alias="flag-task-wip-morning.png">flags/flag-task-wip-morning.png</file>
+    <file alias="flag-task-wip-sleeping.png">flags/flag-task-wip-sleeping.png</file>
+    <file alias="flag-task-wip.png">flags/flag-task-wip.png</file>
+    <file alias="flag-task.png">flags/flag-task.png</file>
+    <file alias="flag-thumb-down.png">flags/flag-thumb-down.png</file>
+    <file alias="flag-thumb-up.png">flags/flag-thumb-up.png</file>
+    <file alias="flag-tmpUnscrolled-right.png">flags/flag-tmpUnscrolled-right.png</file>
+    <file alias="flag-url-16x16.png">flags/flag-url-16x16.png</file>
+    <file alias="flag-url-bugzilla-novell-closed.png">flags/flag-url-bugzilla-novell-closed.png</file>
+    <file alias="flag-url-bugzilla-novell.png">flags/flag-url-bugzilla-novell.png</file>
+    <file alias="flag-url.png">flags/flag-url.png</file>
+    <file alias="flag-urlnew.png">flags/flag-urlnew.png</file>
+    <file alias="flag-vymlink.png">flags/flag-vymlink.png</file>
+    <file alias="flag-vymlinknew.png">flags/flag-vymlinknew.png</file>
+    <file alias="flag-wip.png">flags/flag-wip.png</file>
+    <file alias="freemind/attach.png">flags/freemind/attach.png</file>
+    <file alias="freemind/back.png">flags/freemind/back.png</file>
+    <file alias="freemind/bell.png">flags/freemind/bell.png</file>
+    <file alias="freemind/bookmark.png">flags/freemind/bookmark.png</file>
+    <file alias="freemind/clanbomber.png">flags/freemind/clanbomber.png</file>
+    <file alias="freemind/desktopnew.png">flags/freemind/desktopnew.png</file>
+    <file alias="freemind/flag.png">flags/freemind/flag.png</file>
+    <file alias="freemind/forward.png">flags/freemind/forward.png</file>
+    <file alias="freemind/gohome.png">flags/freemind/gohome.png</file>
+    <file alias="freemind/help.png">flags/freemind/help.png</file>
+    <file alias="freemind/idea.png">flags/freemind/idea.png</file>
+    <file alias="freemind/kaddressbook.png">flags/freemind/kaddressbook.png</file>
+    <file alias="freemind/knotify.png">flags/freemind/knotify.png</file>
+    <file alias="freemind/korn.png">flags/freemind/korn.png</file>
+    <file alias="freemind/licq.png">flags/freemind/licq.png</file>
+    <file alias="freemind/mail.png">flags/freemind/mail.png</file>
+    <file alias="freemind/password.png">flags/freemind/password.png</file>
+    <file alias="freemind/pencil.png">flags/freemind/pencil.png</file>
+    <file alias="freemind/penguin.png">flags/freemind/penguin.png</file>
+    <file alias="freemind/priority-1.png">flags/freemind/priority-1.png</file>
+    <file alias="freemind/priority-2.png">flags/freemind/priority-2.png</file>
+    <file alias="freemind/priority-3.png">flags/freemind/priority-3.png</file>
+    <file alias="freemind/priority-4.png">flags/freemind/priority-4.png</file>
+    <file alias="freemind/priority-5.png">flags/freemind/priority-5.png</file>
+    <file alias="freemind/priority-6.png">flags/freemind/priority-6.png</file>
+    <file alias="freemind/priority-7.png">flags/freemind/priority-7.png</file>
+    <file alias="freemind/stop.png">flags/freemind/stop.png</file>
+    <file alias="freemind/warning.png">flags/freemind/warning.png</file>
+    <file alias="freemind/wizard.png">flags/freemind/wizard.png</file>
+    <file alias="freemind/xmag.png">flags/freemind/xmag.png</file>
+    <file alias="cursorcolorpicker.png">icons/cursorcolorpicker.png</file>
+    <file alias="cursorcolorpicker16.png">icons/cursorcolorpicker16.png</file>
+    <file alias="cursorcopy.png">icons/cursorcopy.png</file>
+    <file alias="cursorhandopen.png">icons/cursorhandopen.png</file>
+    <file alias="cursorhandopen16.png">icons/cursorhandopen16.png</file>
+    <file alias="cursorxlink.png">icons/cursorxlink.png</file>
+    <file alias="down.png">icons/down.png</file>
+    <file alias="editcopy.png">icons/editcopy.png</file>
+    <file alias="editcut.png">icons/editcut.png</file>
+    <file alias="editpaste.png">icons/editpaste.png</file>
+    <file alias="editsort.png">icons/editsort.png</file>
+    <file alias="editsortback.png">icons/editsortback.png</file>
+    <file alias="edittrash.png">icons/edittrash.png</file>
+    <file alias="exit.png">icons/exit.png</file>
+    <file alias="file-document-export.png">icons/file-document-export.png</file>
+    <file alias="fileclose.png">icons/fileclose.png</file>
+    <file alias="filenew.png">icons/filenew.png</file>
+    <file alias="filenewcopy.png">icons/filenewcopy.png</file>
+    <file alias="fileopen.png">icons/fileopen.png</file>
+    <file alias="fileprint.png">icons/fileprint.png</file>
+    <file alias="filesave.png">icons/filesave.png</file>
+    <file alias="filesaveas.png">icons/filesaveas.png</file>
+    <file alias="find.png">icons/find.png</file>
+    <file alias="formatcolorbranch.png">icons/formatcolorbranch.png</file>
+    <file alias="formatcolorpicker.png">icons/formatcolorpicker.png</file>
+    <file alias="formatcolorsubtree.png">icons/formatcolorsubtree.png</file>
+    <file alias="formatfixedfont.png">icons/formatfixedfont.png</file>
+    <file alias="formatrichtext.png">icons/formatrichtext.png</file>
+    <file alias="formatvarfont.png">icons/formatvarfont.png</file>
+    <file alias="headingeditor.png">icons/headingeditor.png</file>
+    <file alias="history.png">icons/history.png</file>
+    <file alias="linestyle-dash.png">icons/linestyle-dash.png</file>
+    <file alias="linestyle-dashdot.png">icons/linestyle-dashdot.png</file>
+    <file alias="linestyle-dashdotdot.png">icons/linestyle-dashdotdot.png</file>
+    <file alias="linestyle-dot.png">icons/linestyle-dot.png</file>
+    <file alias="linestyle-solid.png">icons/linestyle-solid.png</file>
+    <file alias="modecolor.png">icons/modecolor.png</file>
+    <file alias="modecopy.png">icons/modecopy.png</file>
+    <file alias="modelink.png">icons/modelink.png</file>
+    <file alias="newbranch.png">icons/newbranch.png</file>
+    <file alias="newmapcenter.png">icons/newmapcenter.png</file>
+    <file alias="redo.png">icons/redo.png</file>
+    <file alias="rotate-ccw.png">icons/rotate-ccw.png</file>
+    <file alias="rotate-cw.png">icons/rotate-cw.png</file>
+    <file alias="scripteditor.png">icons/scripteditor.png</file>
+    <file alias="selectnext.png">icons/selectnext.png</file>
+    <file alias="selectprevious.png">icons/selectprevious.png</file>
+    <file alias="slide-camera.png">icons/slide-camera.png</file>
+    <file alias="slideeditor.png">icons/slideeditor.png</file>
+    <file alias="slidenext.png">icons/slidenext.png</file>
+    <file alias="slideprevious.png">icons/slideprevious.png</file>
+    <file alias="sliderecord.png">icons/sliderecord.png</file>
+    <file alias="taskeditor.png">icons/taskeditor.png</file>
+    <file alias="text_block.png">icons/text_block.png</file>
+    <file alias="text_bold.png">icons/text_bold.png</file>
+    <file alias="text_center.png">icons/text_center.png</file>
+    <file alias="text_italic.png">icons/text_italic.png</file>
+    <file alias="text_left.png">icons/text_left.png</file>
+    <file alias="text_right.png">icons/text_right.png</file>
+    <file alias="text_sub.png">icons/text_sub.png</file>
+    <file alias="text_super.png">icons/text_super.png</file>
+    <file alias="text_under.png">icons/text_under.png</file>
+    <file alias="treeeditor.png">icons/treeeditor.png</file>
+    <file alias="undo.png">icons/undo.png</file>
+    <file alias="up.png">icons/up.png</file>
+    <file alias="view-filter.png">icons/view-filter.png</file>
+    <file alias="viewmag+.png">icons/viewmag+.png</file>
+    <file alias="viewmag-.png">icons/viewmag-.png</file>
+    <file alias="viewmag-reset.png">icons/viewmag-reset.png</file>
+    <file alias="viewshowsel.png">icons/viewshowsel.png</file>
+    <file alias="vym-128x128.png">icons/vym-128x128.png</file>
+    <file alias="vym-16x16.png">icons/vym-16x16.png</file>
+    <file alias="vym-editor.png">icons/vym-editor.png</file>
+    <file alias="vym.png">icons/vym.png</file>
+  </qresource></RCC>
\ No newline at end of file
diff --git a/vym.rc b/vym.rc
new file mode 100644 (file)
index 0000000..0961744
--- /dev/null
+++ b/vym.rc
@@ -0,0 +1 @@
+IDI_ICON1              ICON            DISCARDABLE     "icons/vym.ico"
diff --git a/vymlock.cpp b/vymlock.cpp
new file mode 100644 (file)
index 0000000..ad6fe40
--- /dev/null
@@ -0,0 +1,147 @@
+#include <QDebug>       
+#include <QFile>       
+#include <QRegularExpression>       
+
+#include "file.h"
+
+#include "vymlock.h"
+
+VymLock::VymLock() 
+{
+    init();
+}
+
+VymLock::VymLock( const QString &fn )
+{
+    init();
+    mapPath = fn;
+}
+
+VymLock::~VymLock()
+{
+    if ( state == lockedByMyself && !releaseLock()) 
+        qWarning() << "Destructor VymLock:  Removing LockFile failed";
+}
+
+void VymLock::init()
+{
+    state = undefined;
+}
+
+bool VymLock::tryLock()
+{
+    QFile lockFile( mapPath + ".lock");
+    if ( lockFile.exists() )
+    {
+        // File is already locked       
+        if (debug) qDebug() << "VymLock::tryLock  failed: LockFile exists";
+
+        QString s;
+        if (!loadStringFromDisk( mapPath, s) )
+            qWarning( "Failed to read from existing lockFile");
+        else
+        {
+            QRegularExpression re("^author:\\s\\\"(.*)\\\"$");
+            re.setPatternOptions( QRegularExpression::MultilineOption );
+            QRegularExpressionMatch match = re.match( s );
+            if ( match.hasMatch() ) author = match.captured(1);
+
+            re.setPattern("^host:\\s\\\"(.*)\\\"$");
+            match = re.match( s );
+            if ( match.hasMatch() ) host = match.captured(1);
+        }
+        state = lockedByOther;
+        return false; 
+    }
+
+    if (!lockFile.open(QFile::WriteOnly | QFile::Text))
+    {
+        if (debug) qWarning() << QString("VymLock::tryLock failed: Cannot open lockFile %1\n%2")
+                    .arg( mapPath + ".lock")
+                    .arg( lockFile.errorString() );
+        state = notWritable;
+        return false;
+    }
+
+    QString s;
+    if (!author.isEmpty() ) s  = QString( "author: \"%1\"\n").arg( author );
+    if (!host.isEmpty() )   s += QString( "host: \"%1\"\n").arg( host );
+
+    if (!s.isEmpty() )
+    {
+        QTextStream out( &lockFile );
+        out.setCodec( "UTF-8" );
+        out << s;
+    }
+
+    lockFile.close();
+    state = lockedByMyself;
+
+    return true;
+}
+
+VymLock::LockState VymLock::getState()
+{
+    return state;
+}
+
+bool VymLock::removeLock() 
+{
+    QFile LockFile( mapPath + ".lock" );
+    if (LockFile.remove() )
+        return true;
+    else
+        return false;
+}
+
+bool VymLock::releaseLock() 
+{
+    if (state == lockedByMyself)
+    {
+        QFile LockFile( mapPath + ".lock" );
+        if (LockFile.remove() )
+            return true;
+    }
+    return false;
+}
+
+bool VymLock::rename( const QString &newMapPath)
+{
+    QFile lockFile( mapPath + ".lock" );
+
+    if ( lockFile.rename( newMapPath + ".lock") )
+    {
+        mapPath = newMapPath;
+        return true;
+    }
+    return false;
+}
+
+void VymLock::setAuthor(const QString &s)
+{
+    author = s;
+}
+
+QString VymLock::getAuthor()
+{
+    return author;
+}
+
+void VymLock::setHost(const QString &s)
+{
+    host = s;
+}
+
+QString VymLock::getHost()
+{
+    return host;
+}
+void VymLock::setMapPath(const QString &s)
+{
+    mapPath = s;
+}
+
+QString VymLock::getMapPath()
+{
+    return mapPath;
+}
diff --git a/vymlock.h b/vymlock.h
new file mode 100644 (file)
index 0000000..a78a6ab
--- /dev/null
+++ b/vymlock.h
@@ -0,0 +1,34 @@
+#ifndef VYMLOCK_H
+#define VYMLOCK_H
+
+extern bool debug;
+
+class VymLock
+{
+public:
+    enum LockState {undefined, lockedByMyself, lockedByOther, notWritable};
+    VymLock();
+    VymLock( const QString &fn );
+    ~VymLock();
+    void init();
+    bool tryLock();
+    LockState getState();
+    bool removeLock();
+    bool releaseLock();
+    bool rename( const QString &newMapPath);
+    void setAuthor(const QString &s);
+    QString getAuthor();
+    void setHost(const QString &s);
+    QString getHost();
+    void setMapPath(const QString &s);
+    QString getMapPath();
+
+private:
+    QWidget *parent;
+    QString author;
+    QString host;
+    QString mapPath;
+    LockState state;
+};
+
+#endif
diff --git a/vymmodel.cpp b/vymmodel.cpp
new file mode 100644 (file)
index 0000000..9f59a39
--- /dev/null
@@ -0,0 +1,6898 @@
+#include <QApplication>
+#include <QSvgGenerator>
+
+#if defined(VYM_DBUS)
+#include <QtDBus/QDBusConnection>
+#endif
+
+#ifndef Q_OS_WIN
+#include <unistd.h>
+#else
+#define sleep Sleep
+#endif
+
+#include <QColorDialog>
+#include <QFileDialog>
+#include <QMessageBox>
+#include <QPrinter>
+
+#include "vymmodel.h"
+
+#include "attributeitem.h"
+#include "treeitem.h"
+#include "branchitem.h"
+#include "bugagent.h"
+#include "downloadagent.h"
+#include "editxlinkdialog.h"
+#include "exports.h"
+#include "exporthtmldialog.h"
+#include "file.h"
+#include "findresultmodel.h"
+#include "lockedfiledialog.h"
+#include "mainwindow.h"
+#include "misc.h"
+#include "noteeditor.h"
+#include "options.h"
+#include "parser.h"
+#include "vymprocess.h"
+#include "scripteditor.h" 
+#include "slideitem.h"
+#include "slidemodel.h"
+#include "taskeditor.h"
+#include "taskmodel.h"
+#include "warningdialog.h"
+#include "xlinkitem.h"
+#include "xlinkobj.h"
+#include "xml-freemind.h"
+#include "xmlobj.h"
+#include "xml-vym.h"
+
+#ifdef Q_OS_WIN
+#include <windows.h>
+#endif
+
+extern bool debug;
+extern bool testmode;
+extern Main *mainWindow;
+
+extern Settings settings;
+extern QString tmpVymDir;
+extern QString macroPath;
+
+extern NoteEditor *noteEditor;
+extern TaskEditor *taskEditor;
+extern ScriptEditor *scriptEditor;
+extern FlagRow *standardFlagsMaster;
+
+extern Options options;
+
+extern QString clipboardDir;
+extern QString clipboardFile;
+extern bool clipboardEmpty;
+
+extern ImageIO imageIO;
+
+extern TaskModel* taskModel;
+
+extern QString vymName;
+extern QString vymVersion;
+extern QDir vymBaseDir;
+
+extern QDir lastImageDir;
+extern QDir lastMapDir;
+extern QDir lastExportDir;
+
+extern bool bugzillaClientAvailable;
+
+extern Settings settings;
+
+uint VymModel::idLast=0;    // make instance
+
+VymModel::VymModel()
+{
+    //qDebug()<< "Const VymModel";
+    init();
+    rootItem->setModel (this);
+}
+
+VymModel::~VymModel() 
+{
+    //out << "Destr VymModel begin this="<<this<<"  "<<mapName<<flush;
+    mapEditor=NULL;
+    blockReposition=true;
+    autosaveTimer->stop();
+    fileChangedTimer->stop();
+    stopAllAnimation();
+
+    //qApp->processEvents();   // Update view (scene()->update() is not enough)
+    //qDebug() << "Destr VymModel end   this="<<this;
+}   
+
+void VymModel::clear() 
+{
+    while (rootItem->childCount() >0)
+    {
+       //qDebug()<<"VM::clear  ri="<<rootItem<<"  ri->count()="<<rootItem->childCount();
+       deleteItem (rootItem->getChildNum(0) );
+    }
+}
+
+void VymModel::init () 
+{
+    // No MapEditor yet
+    mapEditor       = NULL;
+
+    // Use default author
+    author = settings.value("/user/name", tr("unknown user","default name for map author in settings")).toString();
+
+    // States and IDs
+    idLast++;
+    modelID         = idLast;
+    mapChanged      = false;
+    mapDefault      = true;
+    mapUnsaved      = false;
+
+    // Selection history
+    selModel        = NULL;
+    selectionBlocked= false;
+    resetSelectionHistory();
+
+    resetHistory();
+
+    // Create tmp dirs
+    makeTmpDirectories();
+    
+    // Files
+    readonly        = false;
+    zipped          = true;
+    filePath        = "";
+    fileName        = tr("unnamed");
+    mapName         = fileName;
+    blockReposition = false;
+    blockSaveState  = false;
+
+    autosaveTimer   = new QTimer (this);
+    connect(autosaveTimer, SIGNAL(timeout()), this, SLOT(autosave()));
+
+    fileChangedTimer= new QTimer (this);       
+    fileChangedTimer->start(3000);
+    connect(fileChangedTimer, SIGNAL(timeout()), this, SLOT(fileChanged()));
+
+    // find routine
+    findReset();
+
+    // animations   // FIXME-4 switch to new animation system 
+    animationUse    = settings.value ("/animation/use",false).toBool();    // FIXME-4 add options to control _what_ is animated
+    animationTicks  = settings.value("/animation/ticks",20).toInt();
+    animationInterval=settings.value("/animation/interval",5).toInt();
+    animObjList.clear();    
+    animationTimer  = new QTimer (this);
+    connect(animationTimer, SIGNAL(timeout()), this, SLOT(animate()));
+
+    // View - map
+    defaultFont.setPointSizeF (16);
+    defLinkColor    = QColor (0,0,255);
+    linkcolorhint   = LinkableMapObj::DefaultColor;
+    linkstyle       = LinkableMapObj::PolyParabel;
+    defXLinkPen.setWidth (1);
+    defXLinkPen.setColor ( QColor (50,50,255) );
+    defXLinkPen.setStyle ( Qt::DashLine );
+    defXLinkStyleBegin = "HeadFull";
+    defXLinkStyleEnd   = "HeadFull";
+
+    hasContextPos   = false;
+
+    hidemode        = TreeItem::HideNone;
+
+    // Animation in MapEditor
+    zoomFactor      = 1;
+    rotationAngle   = 0;
+    animDuration    = 2000;
+    animCurve       = QEasingCurve::OutQuint;
+
+    // Initialize presentation slides
+    slideModel      = new SlideModel (this);
+    blockSlideSelection=false;
+
+    // Avoid recursions later
+    cleaningUpLinks = false;
+
+    // Network
+    netstate        = Offline;
+
+#if defined(VYM_DBUS)
+     // Announce myself on DBUS
+    new AdaptorModel(this);    // Created and not deleted as documented in Qt
+    if (!QDBusConnection::sessionBus().registerObject (QString("/vymmodel_%1").arg(modelID),this))
+       qWarning ("VymModel: Couldn't register DBUS object!");
+#endif
+}
+
+void VymModel::makeTmpDirectories()
+{
+    // Create unique temporary directories
+    tmpMapDir = tmpVymDir+QString("/model-%1").arg(modelID);
+    histPath = tmpMapDir+"/history";
+    QDir d;
+    d.mkdir (tmpMapDir);
+}
+
+MapEditor* VymModel::getMapEditor() 
+{
+    return mapEditor;
+}
+
+bool VymModel::isRepositionBlocked()
+{
+    return blockReposition;
+}
+
+void VymModel::updateActions() 
+{
+    // Tell mainwindow to update states of actions
+    mainWindow->updateActions();
+}
+
+
+
+QString VymModel::saveToDir(const QString &tmpdir, const QString &prefix, bool writeflags, const QPointF &offset, TreeItem *saveSel)
+{
+    // tmpdir      temporary directory to which data will be written
+    // prefix      mapname, which will be appended to images etc.
+    // 
+    // writeflags   Only write flags for "real" save of map, not undo
+    // offset      offset of bbox of whole map in scene. 
+    //             Needed for XML export
+
+    XMLObj xml;
+
+    // Save Header
+    QString ls;
+    switch (linkstyle)
+    {
+       case LinkableMapObj::Line: 
+           ls="StyleLine";
+           break;
+       case LinkableMapObj::Parabel:
+           ls="StyleParabel";
+           break;
+       case LinkableMapObj::PolyLine:  
+           ls="StylePolyLine";
+           break;
+       default:
+           ls="StylePolyParabel";
+           break;
+    }  
+
+    QString s="<?xml version=\"1.0\" encoding=\"utf-8\"?><!DOCTYPE vymmap>\n";
+    QString colhint="";
+    if (linkcolorhint==LinkableMapObj::HeadingColor) 
+       colhint=xml.attribut("linkColorHint","HeadingColor");
+
+    QString mapAttr=xml.attribut("version",vymVersion);
+    if (!saveSel)
+       mapAttr+= xml.attribut("author",author) +
+                 xml.attribut("title",title) +
+                 xml.attribut("comment",comment) +
+                 xml.attribut("date",getDate()) +
+                 xml.attribut("branchCount", QString().number(branchCount())) +
+                 xml.attribut("backgroundColor", mapEditor->getScene()->backgroundBrush().color().name() ) +
+                 xml.attribut("defaultFont", defaultFont.toString() ) +
+                 xml.attribut("selectionColor", mapEditor->getSelectionColor().name() ) +
+                 xml.attribut("linkStyle", ls ) +
+                 xml.attribut("linkColor", defLinkColor.name() ) +
+                 xml.attribut("defXLinkColor", defXLinkPen.color().name() ) +
+                 xml.attribut("defXLinkWidth", QString().setNum(defXLinkPen.width(),10) ) +
+                 xml.attribut("defXLinkPenStyle", penStyleToString (defXLinkPen.style() )) +
+                 xml.attribut("defXLinkStyleBegin", defXLinkStyleBegin) +
+                 xml.attribut("defXLinkStyleEnd", defXLinkStyleEnd) +
+                 xml.attribut("mapZoomFactor", QString().setNum(mapEditor->getZoomFactorTarget()) ) +
+                 xml.attribut("mapRotationAngle", QString().setNum(mapEditor->getAngleTarget()) ) +
+                 colhint; 
+    s+=xml.beginElement("vymmap",mapAttr); 
+    xml.incIndent();
+
+    // Find the used flags while traversing the tree   
+    standardFlagsMaster->resetUsedCounter();
+    
+
+    // Temporary list of links
+    QList <Link*> tmpLinks;
+
+    // Build xml recursivly
+    if (!saveSel)
+    {
+       // Save all mapcenters as complete map, if saveSel not set
+       s+=saveTreeToDir(tmpdir,prefix,offset,tmpLinks);
+
+       // Save local settings
+       s+=settings.getDataXML (destPath);
+
+       // Save selection
+       if (getSelectedItem() && !saveSel ) 
+           s+=xml.valueElement("select",getSelectString());
+
+    } else
+    {
+       switch (saveSel->getType())
+       {
+           case TreeItem::Branch:
+               // Save Subtree
+               s+=((BranchItem*)saveSel)->saveToDir(tmpdir,prefix,offset,tmpLinks);
+               break;
+           case TreeItem::MapCenter:
+               // Save Subtree
+               s+=((BranchItem*)saveSel)->saveToDir(tmpdir,prefix,offset,tmpLinks);
+               break;
+           case TreeItem::Image:
+               // Save Image
+               s+=((ImageItem*)saveSel)->saveToDir(tmpdir,prefix);
+               break;
+           default: 
+               // other types shouldn't be safed directly...
+               break;
+       }
+    }
+
+    // Save XLinks
+    for (int i=0; i<tmpLinks.count();++i)
+       s+=tmpLinks.at(i)->saveToDir();
+
+    // Save slides  
+    s+=slideModel->saveToDir();        
+
+    xml.decIndent();
+    s+=xml.endElement("vymmap");
+
+    if (writeflags) standardFlagsMaster->saveToDir (tmpdir+"/flags/","",writeflags);
+    return s;
+}
+
+QString VymModel::saveTreeToDir (const QString &tmpdir,const QString &prefix, const QPointF &offset, QList <Link*> &tmpLinks)
+{
+    QString s;
+    for (int i=0; i<rootItem->branchCount(); i++)
+       s+=rootItem->getBranchNum(i)->saveToDir (tmpdir,prefix,offset,tmpLinks);
+    return s;
+}
+
+void VymModel::setFilePath(QString fpath, QString destname)
+{
+    if (fpath.isEmpty() || fpath=="")
+    {
+       filePath="";
+       fileName="";
+       destPath="";
+    } else
+    {
+       filePath=fpath;     // becomes absolute path
+       fileName=fpath;     // gets stripped of path
+       destPath=destname;  // needed for vymlinks and during load to reset fileChangedTime
+
+       // If fpath is not an absolute path, complete it
+       filePath=QDir(fpath).absolutePath();
+       fileDir=filePath.left (1+filePath.lastIndexOf ("/"));
+
+       // Set short name, too. Search from behind:
+        fileName=basename(fileName);
+
+       // Forget the .vym (or .xml) for name of map
+       mapName=fileName.left(fileName.lastIndexOf(".",-1,Qt::CaseSensitive) );
+    }
+}
+
+void VymModel::setFilePath(QString fpath)
+{
+    setFilePath (fpath,fpath);
+}
+
+QString VymModel::getFileDir()
+{
+    return fileDir;
+}
+
+QString VymModel::getFilePath()
+{
+    return filePath;
+}
+
+QString VymModel::getFileName()
+{
+    return fileName;
+}
+
+QString VymModel::getMapName()
+{
+    return mapName;
+}
+
+QString VymModel::getDestPath()
+{
+    return destPath;
+}
+
+bool VymModel::parseVymText (const QString &s)
+{
+    bool ok = false;
+    BranchItem *bi = getSelectedBranch();
+    if (bi)
+    {
+        parseBaseHandler *handler = new parseVYMHandler;
+
+        bool blockSaveStateOrg=blockSaveState;
+        blockReposition=true;
+        blockSaveState=true;
+        QXmlInputSource source;
+        source.setData( s );
+        QXmlSimpleReader reader;
+        reader.setContentHandler( handler );
+        reader.setErrorHandler( handler );
+
+        handler->setInputString (s);
+        handler->setModel ( this );
+        handler->setLoadMode (ImportReplace, 0);
+
+        ok = reader.parse( source );
+        blockReposition=false;
+        blockSaveState=blockSaveStateOrg;
+        if ( ok )
+        {
+            emitNoteChanged( bi );
+            emitDataChanged( bi );
+            reposition();   // to generate bbox sizes
+        } else
+        {
+            QMessageBox::critical( 0, tr( "Critical Parse Error" ),
+                                   tr( handler->errorProtocol().toUtf8() ) );
+            // returnCode=1;
+            // Still return "success": the map maybe at least
+            // partially read by the parser
+        }
+    }
+    return ok;
+}
+
+File::ErrorCode VymModel::loadMap (
+    QString fname,
+    const LoadMode &lmode, 
+    const FileType &ftype,
+    const int &contentFilter,
+    int pos)
+{
+    File::ErrorCode err = File::Success;
+
+    // Get updated zoomFactor, before applying one read from file in the end
+    if (mapEditor) 
+    {
+       zoomFactor = mapEditor->getZoomFactorTarget();  
+       rotationAngle = mapEditor->getAngleTarget();
+    }
+
+    parseBaseHandler *handler;
+    fileType=ftype;
+    switch (fileType)
+    {
+       case VymMap: 
+           handler = new parseVYMHandler; 
+           ((parseVYMHandler*)handler)->setContentFilter (contentFilter);
+           break;
+       case FreemindMap : handler = new parseFreemindHandler; break;
+       default: 
+           QMessageBox::critical( 0, tr( "Critical Parse Error" ),
+                  "Unknown FileType in VymModel::load()");
+       return File::Aborted;   
+    }
+
+    bool zipped_org = zipped;
+
+    if (lmode == NewMap)
+    {
+       // Reset timestamp to check for later updates of file
+       fileChangedTime = QFileInfo (destPath).lastModified();
+
+       selModel->clearSelection();
+    } 
+
+    // Create temporary directory for packing
+    bool ok;
+    QString tmpZipDir = makeTmpDir (ok,"vym-pack");
+    if (!ok)
+    {
+       QMessageBox::critical( 0, tr( "Critical Load Error" ),
+          tr("Couldn't create temporary directory before load\n"));
+       return File::Aborted; 
+    }
+
+    if (fname.right(4) == ".xml" || fname.right(3) == ".mm")
+        err = File::NoZip;
+    else
+    {
+        // Try to unzip file
+        err = unzipDir (tmpZipDir,fname);
+    }
+    QString xmlfile;
+    if (err == File::NoZip)
+    {
+       xmlfile = fname;
+       zipped = false;
+    } else
+    {
+       zipped = true;
+       
+       // Look for mapname.xml
+       xmlfile = fname.left(fname.lastIndexOf(".", -1, Qt::CaseSensitive));
+       xmlfile = xmlfile.section( '/', -1 );
+       QFile mfile( tmpZipDir + "/" + xmlfile + ".xml");
+       if (!mfile.exists() )
+       {
+           // mapname.xml does not exist, well, 
+           // maybe someone renamed the mapname.vym file...
+           // Try to find any .xml in the toplevel 
+           // directory of the .vym file
+           QStringList filters;
+           filters<<"*.xml";
+           QStringList flist = QDir (tmpZipDir).entryList(filters);
+           if (flist.count() == 1) 
+           {
+               // Only one entry, take this one
+                xmlfile = tmpZipDir + "/"+flist.first();
+        } else
+        {
+            for ( QStringList::Iterator it = flist.begin(); it != flist.end(); ++it )
+                *it=tmpZipDir + "/" + *it;
+            // FIXME-4 Multiple entries, load all (but only the first one into this ME)
+            //mainWindow->fileLoadFromTmp (flist);
+            //returnCode=1;    // Silently forget this attempt to load
+            qWarning ("MainWindow::load (fn)  multimap found...");
+        }
+
+        if (flist.isEmpty() )
+        {
+            QMessageBox::critical( 0, tr( "Critical Load Error" ),
+                                   tr("Couldn't find a map (*.xml) in .vym archive.\n"));
+            err=File::Aborted;
+        }
+       } //file doesn't exist  
+       else
+           xmlfile=mfile.fileName();
+    }
+
+    QFile file( xmlfile);
+
+    // I am paranoid: file should exist anyway
+    // according to check in mainwindow.
+    if (!file.exists() )
+    {
+       QMessageBox::critical( 0, tr( "Critical Parse Error" ),
+                  tr(QString("Couldn't open map %1").arg(file.fileName()).toUtf8()));
+       err=File::Aborted;      
+    } else
+    {
+       bool blockSaveStateOrg = blockSaveState;
+       blockReposition = true;
+       blockSaveState  = true;
+       mapEditor->setViewportUpdateMode (QGraphicsView::NoViewportUpdate);
+       QXmlInputSource source( &file);
+       QXmlSimpleReader reader;
+       reader.setContentHandler( handler );
+       reader.setErrorHandler( handler );
+       handler->setModel ( this);
+
+       // We need to set the tmpDir in order  to load files with rel. path
+       QString tmpdir;
+       if (zipped)
+           tmpdir = tmpZipDir;
+       else
+           tmpdir = fname.left(fname.lastIndexOf("/", -1));    
+       handler->setTmpDir (tmpdir);
+       handler->setInputFile (file.fileName());
+       if (lmode == ImportReplace)
+           handler->setLoadMode (ImportReplace, pos);
+       else    
+           handler->setLoadMode (lmode, pos);
+
+       bool ok = reader.parse( source );
+       blockReposition = false;
+       blockSaveState  = blockSaveStateOrg;
+       mapEditor->setViewportUpdateMode (QGraphicsView::MinimalViewportUpdate);
+       file.close();
+       if ( ok ) 
+       {
+           reposition();   // to generate bbox sizes
+           emitSelectionChanged();
+
+           if (lmode == NewMap)
+           {
+               mapDefault = false;
+               mapChanged = false;
+               mapUnsaved = false;
+               autosaveTimer->stop();
+
+               resetHistory();
+               resetSelectionHistory();
+
+                if (! tryVymLock() && debug ) 
+                    qWarning() << "VM::loadMap  no lockfile created!";
+            }
+
+           // Recalc priorities and sort   
+           taskModel->recalcPriorities();
+       } else 
+       {
+           QMessageBox::critical( 0, tr( "Critical Parse Error" ),
+                      tr( handler->errorProtocol().toUtf8() ) );
+           // returnCode=1;    
+           // Still return "success": the map maybe at least
+           // partially read by the parser
+       }   
+    }  
+
+    // Delete tmpZipDir
+    removeDir (QDir(tmpZipDir));
+
+    // Restore original zip state
+    zipped = zipped_org;
+
+    updateActions();
+    
+    if (lmode!=NewMap) emitUpdateQueries();
+
+    if (mapEditor) 
+    {
+       mapEditor->setZoomFactorTarget (zoomFactor);
+       mapEditor->setAngleTarget (rotationAngle);
+    }
+
+    if (vymView) vymView->readSettings();  
+
+    qApp->processEvents();  // Update view (scene()->update() is not enough)
+    return err;
+}
+
+File::ErrorCode VymModel::save (const SaveMode &savemode)
+{
+    QString tmpZipDir;
+    QString mapFileName;
+    QString safeFilePath;
+
+    File::ErrorCode err=File::Success;
+
+    if (zipped)
+       // save as .xml
+       mapFileName=mapName+".xml";
+    else
+       // use name given by user, even if he chooses .doc
+       mapFileName=fileName;
+
+    // Look, if we should zip the data:
+    if (!zipped)
+    {
+       QMessageBox mb( vymName,
+           tr("The map %1\ndid not use the compressed "
+           "vym file format.\nWriting it uncompressed will also write images \n"
+           "and flags and thus may overwrite files in the "
+           "given directory\n\nDo you want to write the map").arg(filePath),
+           QMessageBox::Warning,
+           QMessageBox::Yes | QMessageBox::Default,
+           QMessageBox::No ,
+           QMessageBox::Cancel | QMessageBox::Escape);
+       mb.setButtonText( QMessageBox::Yes, tr("compressed (vym default)") );
+       mb.setButtonText( QMessageBox::No, tr("uncompressed") );
+       mb.setButtonText( QMessageBox::Cancel, tr("Cancel"));
+       switch( mb.exec() ) 
+       {
+           case QMessageBox::Yes:
+               // save compressed (default file format)
+               zipped=true;
+               break;
+           case QMessageBox::No:
+               // save uncompressed
+               zipped=false;
+               break;
+           case QMessageBox::Cancel:
+               // do nothing
+               return File::Aborted;
+               break;
+       }
+    }
+
+    // First backup existing file, we 
+    // don't want to add to old zip archives
+    QFile f(destPath);
+    if (f.exists())
+    {
+       if ( settings.value ("/mapeditor/writeBackupFile").toBool())
+       {
+           QString backupFileName(destPath + "~");
+           QFile backupFile(backupFileName);
+           if (backupFile.exists() && !backupFile.remove())
+           {
+               QMessageBox::warning(0, tr("Save Error"),
+                                    tr("%1\ncould not be removed before saving").arg(backupFileName));
+           }
+           else if (!f.rename(backupFileName))
+           {
+               QMessageBox::warning(0, tr("Save Error"),
+                                    tr("%1\ncould not be renamed before saving").arg(destPath));
+           }
+       }
+    }
+
+    if (zipped)
+    {
+       // Create temporary directory for packing
+       bool ok;
+       tmpZipDir=makeTmpDir (ok,"vym-zip");
+       if (!ok)
+       {
+           QMessageBox::critical( 0, tr( "Critical Save Error" ),
+              tr("Couldn't create temporary directory before save\n"));
+           return File::Aborted; 
+       }
+
+       safeFilePath=filePath;
+       setFilePath (tmpZipDir+"/"+ mapName+ ".xml", safeFilePath);
+    } // zipped
+
+    // Create mapName and fileDir
+    makeSubDirs (fileDir);
+
+    QString saveFile;
+    if (savemode==CompleteMap || selModel->selection().isEmpty())
+    {
+       // Save complete map
+        if (zipped)
+            // Use defined name for map within zipfile to avoid problems
+            //with zip library and umlauts (see #98)
+            saveFile=saveToDir (fileDir, "", true, QPointF(), NULL);
+        else
+            saveFile=saveToDir (fileDir, mapName + "-", true, QPointF(), NULL);
+    mapChanged=false;
+       mapUnsaved=false;
+       autosaveTimer->stop();
+    }
+    else    
+    {
+       // Save part of map
+    if (selectionType() == TreeItem::Image)
+           saveImage();
+       else    
+        saveFile = saveToDir (fileDir, mapName + "-", true, QPointF(), getSelectedBranch());
+       // TODO take care of multiselections
+    }  
+
+    bool saved;
+    if (zipped)
+        // Use defined map name "map.xml", if zipped. Introduce in 2.6.6
+        saved = saveStringToDisk(fileDir + "map.xml", saveFile);
+    else
+        // Use regular mapName, when saved as XML
+        saved = saveStringToDisk(fileDir + mapFileName, saveFile);
+    if (!saved)
+    {
+       err=File::Aborted;
+       qWarning ("ME::saveStringToDisk failed!");
+    }
+
+    if (zipped)
+    {
+       // zip
+       if (err==File::Success) err=zipDir (tmpZipDir,destPath);
+
+       // Delete tmpDir
+       removeDir (QDir(tmpZipDir));
+
+       // Restore original filepath outside of tmp zip dir
+       setFilePath (safeFilePath);
+    }
+
+    updateActions();
+    fileChangedTime=QFileInfo (destPath).lastModified();
+    return err;
+}
+
+void VymModel::loadImage (BranchItem *dst,const QString &fn)
+{
+    if (!dst) dst=getSelectedBranch();
+    if (dst)
+    {
+        QString filter=QString (tr("Images") + " (*.png *.bmp *.xbm *.jpg *.png *.xpm *.gif *.pnm *.svg);;"+tr("All","Filedialog") +" (*.*)");
+        QStringList fns;
+        if (fn.isEmpty() )
+            fns=QFileDialog::getOpenFileNames(
+                        NULL,
+                        vymName+" - " + tr("Load image"),
+                        lastImageDir.path(),
+                        filter);
+        else
+            fns.append (fn);
+
+        if (!fns.isEmpty() )
+        {
+            lastImageDir.setPath(fns.first().left(fns.first().lastIndexOf ("/")) );
+            QString s;
+            for (int j=0; j<fns.count(); j++)
+            {
+                s=fns.at(j);
+                ImageItem *ii=createImage(dst);
+                if (ii && ii->load (s) )
+                {
+                    saveState(
+                                (TreeItem*)ii,
+                                "delete ()",
+                                dst,
+                                QString ("loadImage (\"%1\")").arg(s ),
+                                QString("Add image %1 to %2").arg(s).arg(getObjectName(dst))
+                                );
+                    // Find nice position
+                    FloatImageObj *fio=(FloatImageObj*)(ii->getMO() );
+                    if (fio)
+                        fio->move2RelPos (0,0);
+
+                    // On default include image // FIXME-4 check, if we change default settings...
+                    select(dst);
+                    setIncludeImagesHor (false);
+                    setIncludeImagesVer (true);
+
+                    reposition();
+                } else
+                    // FIXME-4 loadFIO error handling
+                    qWarning ()<<"Failed to load "+s;
+            }
+
+        }
+    }
+}
+
+void VymModel::saveImage (ImageItem *ii, QString format, QString fn)                                                    
+{
+    if (!ii) ii=getSelectedImage();
+    if (ii)
+    {
+        QString filter=QString (tr("Images") + " (*.png *.bmp *.xbm *.jpg *.png *.xpm *.gif *.pnm *.svg);;"+tr("All","Filedialog") +" (*.*)");
+        if (fn.isEmpty() )
+            fn=QFileDialog::getSaveFileName(
+                        NULL,
+                        vymName+" - " + tr("Save image"),
+                        lastImageDir.path(),
+                        filter,
+                        NULL,
+                        QFileDialog::DontConfirmOverwrite);
+
+        if (!fn.isEmpty() )
+        {
+            lastImageDir.setPath(fn.left(fn.lastIndexOf ("/")) );
+            if (QFile (fn).exists() )
+            {
+                QMessageBox mb( vymName,
+                                tr("The file %1 exists already.\n"
+                                   "Do you want to overwrite it?").arg(fn),
+                                QMessageBox::Warning,
+                                QMessageBox::Yes | QMessageBox::Default,
+                                QMessageBox::Cancel | QMessageBox::Escape,
+                                QMessageBox::NoButton );
+
+                mb.setButtonText( QMessageBox::Yes, tr("Overwrite") );
+                mb.setButtonText( QMessageBox::No, tr("Cancel"));
+                switch( mb.exec() )
+                {
+                case QMessageBox::Yes:
+                    // save
+                    break;
+                case QMessageBox::Cancel:
+                    // do nothing
+                    return;
+                    break;
+                }
+            }
+            if (format.isEmpty() ) format=imageIO.guessType(fn);
+            if (format.isEmpty())
+                QMessageBox::critical (0,tr("Critical Error"),tr("Unsupported format in %1").arg(fn));
+            else if (!ii->save (fn, format) )
+                QMessageBox::critical (0,tr("Critical Error"),tr("Couldn't save %1").arg(fn));
+        }
+    }
+}
+
+
+void VymModel::importDirInt(BranchItem *dst, QDir d) 
+{
+    bool oldSaveState = blockSaveState;
+    blockSaveState = true;
+    BranchItem *bi = dst;
+    if (bi)
+    {
+       int beginDepth = bi->depth();
+
+       d.setFilter(QDir::AllEntries | QDir::Hidden);
+       QFileInfoList list = d.entryInfoList();
+       QFileInfo fi;
+
+       // Traverse directories
+       for (int i = 0; i < list.size(); ++i) 
+       {
+           fi = list.at(i);
+           if (fi.isDir() && fi.fileName() != "." && fi.fileName() != ".." )
+           {
+               bi = addNewBranchInt(dst, -2);
+                bi->setHeadingPlainText (fi.fileName() );
+               bi->setHeadingColor (QColor("blue"));
+               if ( !d.cd(fi.fileName()) ) 
+                   QMessageBox::critical (0,tr("Critical Import Error"),tr("Cannot find the directory %1").arg(fi.fileName()));
+               else 
+               {
+                   // Recursively add subdirs
+                    qDebug() << "Add subdir " << bi->getHeadingPlain();
+                   importDirInt (bi, d);
+                   d.cdUp();
+               }
+               emitDataChanged(bi);
+           }   
+       }       
+
+       for (int i = 0; i < list.size(); ++i) 
+       {
+           fi = list.at(i);
+           if (fi.isFile())
+           {
+               bi = addNewBranchInt (dst,-2);
+                bi->setHeadingPlainText (fi.fileName() );
+               bi->setHeadingColor (QColor("black"));
+               if (fi.fileName().right(4) == ".vym" )
+                   bi->setVymLink (fi.filePath());
+               emitDataChanged(bi);
+           }
+       }   
+
+       // Scroll at least some stuff
+       if (dst->branchCount()>1 && dst->depth()-beginDepth>2)
+           dst->toggleScroll();
+    }      
+    blockSaveState=oldSaveState;
+}
+
+void VymModel::importDirInt (const QString &s) 
+{
+    BranchItem *selbi = getSelectedBranch();
+    if (selbi)
+    {
+       saveStateChangingPart (selbi, selbi, QString ("importDir (\"%1\")").arg(s),QString("Import directory structure from %1").arg(s));
+
+       QDir d(s);
+       importDirInt (selbi, d);
+    }
+}   
+
+void VymModel::importDir()  
+{
+    BranchItem *selbi = getSelectedBranch();
+    if (selbi)
+    {
+       QStringList filters;
+       filters <<"VYM map (*.vym)";
+       QFileDialog fd;
+       fd.setWindowTitle (vymName + " - " +tr("Choose directory structure to import"));
+       fd.setFileMode (QFileDialog::DirectoryOnly);
+       fd.setNameFilters (filters);
+       fd.setWindowTitle(vymName + " - " + tr("Choose directory structure to import"));
+       fd.setAcceptMode (QFileDialog::AcceptOpen);
+
+       QString fn;
+       if ( fd.exec() == QDialog::Accepted &&!fd.selectedFiles().isEmpty() )
+       {
+           importDirInt (fd.selectedFiles().first() );
+           reposition();
+       }
+    }  
+}
+
+bool VymModel::tryVymLock()
+{
+    // Defaults for author and host in vymLock
+    QString defAuthor = settings.value("/user/name", tr( "unknown user", "Default for lockfiles of maps") ).toString();
+    QString defHost   = QHostInfo::localHostName();      
+    vymLock.setMapPath( filePath );
+    vymLock.setAuthor( settings.value( "/user/name", defAuthor ).toString() ); 
+    if ( getenv("HOST") != 0 ) 
+        vymLock.setHost( getenv("HOST") );
+    else
+        vymLock.setHost( defHost );
+    
+    // Now try to lock
+    if (!vymLock.tryLock() )
+    {
+        if (debug) qDebug() << "VymModel::tryLock failed!";
+        setReadOnly( true );
+        if (vymLock.getState() == VymLock::lockedByOther)
+        {
+            LockedFileDialog dia;
+            QString a = vymLock.getAuthor();
+            QString h = vymLock.getHost();
+            QString s = QString( tr("Map seems to be already opened in another vym instance!\n\n "
+                   "Map is locked by \"%1\" on \"%2\"\n\n"
+                   "Please only delete the lockfile, if you are sure nobody else is currently working on this map." )) .arg(a).arg(h);
+            dia.setText( s );
+            dia.setWindowTitle(tr("Warning: Map already opended","VymModel"));
+            if (dia.execDialog() == LockedFileDialog::DeleteLockfile)
+            {
+                if (vymLock.removeLock() )
+                {
+                    mainWindow->statusMessage (tr("Removed lockfile for %1").arg(mapName));
+                    setReadOnly(false);
+                    return true;
+                } else
+                    QMessageBox::warning(0,
+                             tr("Warning"),
+                             tr("Couldn't remove lockfile for %1").arg(mapName));
+            }
+        } else if (vymLock.getState() == VymLock::notWritable)
+        {
+            WarningDialog dia;
+            QString a = vymLock.getAuthor();
+            QString h = vymLock.getHost();
+            QString s = QString( tr("Cannot create lockfile of map! "
+                        "It will be opened in readonly mode.\n\n" ));
+            dia.setText( s );
+            dia.setWindowTitle(tr("Warning","VymModel"));
+            dia.showCancelButton( false );
+            //dia.setShowAgainName("/mainwindow/mapIsLocked");
+            dia.exec();
+        }
+        return false;
+    }
+    return true;
+}
+
+bool VymModel::renameMap( const QString &newPath)
+{
+    QString oldPath = filePath;
+    setFilePath ( newPath );
+    if (vymLock.getState() == VymLock::lockedByMyself)
+    {
+        // vymModel owns the lockfile, try to rename it
+        if (! vymLock.rename( fileName ))
+        {
+            qWarning ("Warning: VymModel::renameMap failed");
+            setFilePath( oldPath );
+            return false;
+        } else
+            return true;
+    }
+
+    // try to create new lockfile for the lock states: lockedByOther and notWritable
+    return tryVymLock();
+}
+
+void VymModel::setReadOnly( bool b )
+{
+    readonly = b;
+    mainWindow->updateTabName( this );
+}
+
+bool VymModel::isReadOnly()
+{
+    return readonly;
+}
+
+void VymModel::autosave()
+{
+    if (filePath=="") 
+    {
+       if (debug)
+           qDebug() << "VymModel::autosave rejected due to missing filePath\n";
+    }
+
+    QDateTime now=QDateTime().currentDateTime();
+
+    // Disable autosave, while we have gone back in history
+    int redosAvail=undoSet.readNumValue (QString("/history/redosAvail"));
+    if (redosAvail>0) return;
+
+    // Also disable autosave for new map without filename
+    if (filePath.isEmpty()) return;
+
+
+    if (mapUnsaved 
+       && mapChanged 
+       && mainWindow->useAutosave() 
+       && !testmode)
+    {
+       if (QFileInfo(filePath).lastModified()<=fileChangedTime) 
+           mainWindow->fileSave (this);
+       else
+           if (debug)
+               qDebug() <<"  ME::autosave  rejected, file on disk is newer than last save.\n"; 
+
+    }  
+}
+
+void VymModel::fileChanged()
+{
+    // Check if file on disk has changed meanwhile
+    if (!filePath.isEmpty())
+    {
+        if (readonly)
+        {
+            // unset readonly if lockfile is gone
+            if (vymLock.tryLock() ) setReadOnly( false );
+        } else
+        {
+            // FIXME-0 Check, if somebody else removed/replaced lockfile
+            // Here a unique vym ID would be needed to be checked
+            
+            QDateTime tmod = QFileInfo (filePath).lastModified();
+            if (tmod > fileChangedTime)
+            {
+                // FIXME-4 VM switch to current mapeditor and finish lineedits...
+                QMessageBox mb( vymName,
+                    tr("The file of the map  on disk has changed:\n\n"  
+                       "   %1\n\nDo you want to reload that map with the new file?").arg(filePath),
+                    QMessageBox::Question,
+                    QMessageBox::Yes ,
+                    QMessageBox::Cancel | QMessageBox::Default,
+                    QMessageBox::NoButton );
+
+                mb.setButtonText( QMessageBox::Yes, tr("Reload"));
+                mb.setButtonText( QMessageBox::No, tr("Ignore"));
+                switch( mb.exec() ) 
+                {
+                    case QMessageBox::Yes:
+                        // Reload map
+                        mainWindow->initProgressCounter (1);
+                        loadMap (filePath);  
+                        mainWindow->removeProgressCounter ();
+                        break;
+                    case QMessageBox::Cancel:
+                        fileChangedTime=tmod; // allow autosave to overwrite newer file!
+                }
+            }
+        }
+    }  
+}
+
+bool VymModel::isDefault()
+{
+    return mapDefault;
+}
+
+void VymModel::makeDefault()
+{
+    mapChanged=false;
+    mapDefault=true;
+}
+
+bool VymModel::hasChanged()
+{
+    return mapChanged;
+}
+
+void VymModel::setChanged()
+{
+    if (!mapChanged)
+       autosaveTimer->start(settings.value("/system/autosave/ms/",300000).toInt());
+    mapChanged=true;
+    mapDefault=false;
+    mapUnsaved=true;
+    findReset();
+    updateActions();
+}
+
+QString VymModel::getObjectName (LinkableMapObj *lmo)
+{
+    if (!lmo || !lmo->getTreeItem() ) return QString();
+    return getObjectName (lmo->getTreeItem() );
+}
+
+
+QString VymModel::getObjectName (TreeItem *ti)
+{
+    QString s;
+    if (!ti) return QString("Error: NULL has no name!");
+    s=ti->getHeadingPlain();
+    if (s=="") s="unnamed";
+
+    return QString ("%1 (%2)").arg(ti->getTypeName()).arg(s);
+}
+
+void VymModel::redo()
+{
+    // Can we undo at all?
+    if (redosAvail<1) return;
+
+    bool blockSaveStateOrg=blockSaveState;
+    blockSaveState=true;
+    
+    redosAvail--;
+
+    if (undosAvail<stepsTotal) undosAvail++;
+    curStep++;
+    if (curStep>stepsTotal) curStep=1;
+    QString undoCommand=  undoSet.value (QString("/history/step-%1/undoCommand").arg(curStep));
+    QString undoSelection=undoSet.value (QString("/history/step-%1/undoSelection").arg(curStep));
+    QString redoCommand=  undoSet.value (QString("/history/step-%1/redoCommand").arg(curStep));
+    QString redoSelection=undoSet.value (QString("/history/step-%1/redoSelection").arg(curStep));
+    QString comment=undoSet.value (QString("/history/step-%1/comment").arg(curStep));
+    QString version=undoSet.value ("/history/version");
+
+    /* TODO Maybe check for version, if we save the history
+    if (!checkVersion(version))
+       QMessageBox::warning(0,tr("Warning"),
+           tr("Version %1 of saved undo/redo data\ndoes not match current vym version %2.").arg(version).arg(vymVersion));
+    */ 
+
+    // Find out current undo directory
+    QString bakMapDir(QString(tmpMapDir+"/undo-%1").arg(curStep));
+
+    if (debug)
+    {
+       qDebug() << "VymModel::redo() begin\n";
+       qDebug() << "    undosAvail="<<undosAvail;
+       qDebug() << "    redosAvail="<<redosAvail;
+       qDebug() << "       curStep="<<curStep;
+       qDebug() << "    ---------------------------";
+       qDebug() << "    comment="<<comment;
+       qDebug() << "    undoCom="<<undoCommand;
+       qDebug() << "    undoSel="<<undoSelection;
+       qDebug() << "    redoCom="<<redoCommand;
+       qDebug() << "    redoSel="<<redoSelection;
+       qDebug() << "    ---------------------------";
+    }
+
+    // select  object before redo
+    if (!redoSelection.isEmpty())
+       select (redoSelection);
+
+    bool noErr;
+    QString errMsg;
+    parseAtom (redoCommand,noErr,errMsg);
+    if (!noErr) 
+    {
+       if (!options.isOn("batch") )
+           QMessageBox::warning(0,tr("Warning"),tr("Redo failed:\n%1").arg(errMsg));
+       qWarning()<< "VM::redo aborted:\n"<<errMsg;
+    }
+
+    blockSaveState=blockSaveStateOrg;
+
+    undoSet.setValue ("/history/undosAvail",QString::number(undosAvail));
+    undoSet.setValue ("/history/redosAvail",QString::number(redosAvail));
+    undoSet.setValue ("/history/curStep",QString::number(curStep));
+    undoSet.writeSettings(histPath);
+
+    mainWindow->updateHistory (undoSet);
+    updateActions();
+
+    /* TODO remove testing
+    qDebug() << "ME::redo() end\n";
+    qDebug() << "    undosAvail="<<undosAvail;
+    qDebug() << "    redosAvail="<<redosAvail;
+    qDebug() << "       curStep="<<curStep;
+    qDebug() << "    ---------------------------";
+    */
+}
+
+bool VymModel::isRedoAvailable()
+{
+    if (undoSet.readNumValue("/history/redosAvail",0)>0)
+       return true;
+    return false;
+}
+
+void VymModel::undo()  
+{
+    // Can we undo at all?
+    if (undosAvail<1) return;
+
+    mainWindow->statusMessage (tr("Autosave disabled during undo."));
+
+    bool blockSaveStateOrg=blockSaveState;
+    blockSaveState=true;
+    
+    QString undoCommand=  undoSet.value (QString("/history/step-%1/undoCommand").arg(curStep));
+    QString undoSelection=undoSet.value (QString("/history/step-%1/undoSelection").arg(curStep));
+    QString redoCommand=  undoSet.value (QString("/history/step-%1/redoCommand").arg(curStep));
+    QString redoSelection=undoSet.value (QString("/history/step-%1/redoSelection").arg(curStep));
+    QString comment=undoSet.value (QString("/history/step-%1/comment").arg(curStep));
+    QString version=undoSet.value ("/history/version");
+
+    /* TODO Maybe check for version, if we save the history
+    if (!checkVersion(version))
+       QMessageBox::warning(0,tr("Warning"),
+           tr("Version %1 of saved undo/redo data\ndoes not match current vym version %2.").arg(version).arg(vymVersion));
+    */
+
+    // Find out current undo directory
+    QString bakMapDir(QString(tmpMapDir+"/undo-%1").arg(curStep));
+
+    // select  object before undo
+    if (!undoSelection.isEmpty() && !select (undoSelection))
+    {
+       qWarning ("VymModel::undo()  Could not select object for undo");
+       return;
+    }
+
+    if (debug)
+    {
+       qDebug() << "VymModel::undo() begin\n";
+       qDebug() << "    undosAvail="<<undosAvail;
+       qDebug() << "    redosAvail="<<redosAvail;
+       qDebug() << "       curStep="<<curStep;
+       qDebug() << "    ---------------------------";
+       qDebug() << "    comment="<<comment;
+       qDebug() << "    undoCom="<<undoCommand;
+       qDebug() << "    undoSel="<<undoSelection;
+       qDebug() << "    redoCom="<<redoCommand;
+       qDebug() << "    redoSel="<<redoSelection;
+       qDebug() << "    ---------------------------";
+    }  
+
+    // select  object before undo
+    if (!undoSelection.isEmpty())
+       select (undoSelection);
+
+    // bool noErr;
+    QString errMsg;
+    //parseAtom (undoCommand,noErr,errMsg);
+    errMsg = QVariant(execute(undoCommand)).toString();
+    // FIXME-3 add noErr to parameters of execute above or ignore (error message already within parseAtom)
+    // 
+    /*
+    if (!noErr)
+    {
+        if (!options.isOn("batch") )
+            QMessageBox::warning(0,tr("Warning"),tr("Undo failed:\n%1").arg(errMsg));
+        qWarning()<< "VM::undo failed:\n"<<errMsg;
+    }
+    */
+
+    undosAvail--;
+    curStep--; 
+    if (curStep<1) curStep = stepsTotal;
+
+    redosAvail++;
+
+    blockSaveState = blockSaveStateOrg;
+/* testing only
+    qDebug() << "VymModel::undo() end\n";
+    qDebug() << "    undosAvail="<<undosAvail;
+    qDebug() << "    redosAvail="<<redosAvail;
+    qDebug() << "       curStep="<<curStep;
+    qDebug() << "    ---------------------------";
+*/
+
+    undoSet.setValue ("/history/undosAvail",QString::number(undosAvail));
+    undoSet.setValue ("/history/redosAvail",QString::number(redosAvail));
+    undoSet.setValue ("/history/curStep",QString::number(curStep));
+    undoSet.writeSettings(histPath);
+
+    mainWindow->updateHistory (undoSet);
+    updateActions();
+    //emitSelectionChanged();
+}
+
+bool VymModel::isUndoAvailable()
+{
+    if (undoSet.readNumValue("/history/undosAvail",0)>0)
+       return true;
+    return false;
+}
+
+void VymModel::gotoHistoryStep (int i)
+{
+    // Restore variables
+    int undosAvail=undoSet.readNumValue (QString("/history/undosAvail"));
+    int redosAvail=undoSet.readNumValue (QString("/history/redosAvail"));
+
+    if (i<0) i=undosAvail+redosAvail;
+
+    // Clicking above current step makes us undo things
+    if (i<undosAvail) 
+    {  
+       for (int j=0; j<undosAvail-i; j++) undo();
+       return;
+    }  
+    // Clicking below current step makes us redo things
+    if (i>undosAvail) 
+       for (int j=undosAvail; j<i; j++) 
+       {
+           if (debug) qDebug() << "VymModel::gotoHistoryStep redo "<<j<<"/"<<undosAvail<<" i="<<i;
+           redo();
+       }
+
+    // And ignore clicking the current row ;-) 
+}
+
+
+QString VymModel::getHistoryPath()
+{
+    QString histName(QString("history-%1").arg(curStep));
+    return (tmpMapDir+"/"+histName);
+}
+
+void VymModel::resetHistory()
+{
+    curStep=0;
+    redosAvail=0;
+    undosAvail=0;
+
+    stepsTotal=settings.value("/history/stepsTotal",100).toInt();
+    undoSet.setValue ("/history/stepsTotal",QString::number(stepsTotal));
+    mainWindow->updateHistory (undoSet);
+}
+
+void VymModel::saveState(
+    const SaveMode &savemode, 
+    const QString &undoSelection, 
+    const QString &undoCom, 
+    const QString &redoSelection, 
+    const QString &redoCom, 
+    const QString &comment, 
+    TreeItem *saveSel, 
+    QString dataXML)
+{
+    sendData(redoCom); //FIXME-4 testing
+
+    // Main saveState
+
+    if (blockSaveState) return;
+
+    if (debug) qDebug() << "VM::saveState() for  "<<mapName;
+    
+    // Find out current undo directory
+    if (undosAvail<stepsTotal) undosAvail++;
+    curStep++;
+    if (curStep>stepsTotal) curStep=1;
+    
+    QString histDir=getHistoryPath();
+    QString bakMapPath=histDir+"/map.xml";
+
+    // Create histDir if not available
+    QDir d(histDir);
+    if (!d.exists()) 
+       makeSubDirs (histDir);
+
+    // Save depending on how much needs to be saved 
+    QList <Link*> tmpLinks;
+    if (saveSel)
+       dataXML=saveToDir (histDir,mapName+"-",false, QPointF (),saveSel);
+       
+    QString undoCommand=undoCom;
+    QString redoCommand=redoCom;
+    if (savemode==PartOfMap )
+    {
+       undoCommand.replace ("PATH",bakMapPath);
+       redoCommand.replace ("PATH",bakMapPath);
+    }
+
+    if (!dataXML.isEmpty())
+       // Write XML Data to disk
+       saveStringToDisk (bakMapPath,dataXML);
+
+    // We would have to save all actions in a tree, to keep track of 
+    // possible redos after a action. Possible, but we are too lazy: forget about redos.
+    redosAvail=0;
+
+    // Write the current state to disk
+    undoSet.setValue ("/history/undosAvail",QString::number(undosAvail));
+    undoSet.setValue ("/history/redosAvail",QString::number(redosAvail));
+    undoSet.setValue ("/history/curStep",QString::number(curStep));
+    undoSet.setValue (QString("/history/step-%1/undoCommand").arg(curStep),undoCommand);
+    undoSet.setValue (QString("/history/step-%1/undoSelection").arg(curStep),undoSelection);
+    undoSet.setValue (QString("/history/step-%1/redoCommand").arg(curStep),redoCommand);
+    undoSet.setValue (QString("/history/step-%1/redoSelection").arg(curStep),redoSelection);
+    undoSet.setValue (QString("/history/step-%1/comment").arg(curStep),comment);
+    undoSet.setValue (QString("/history/version"),vymVersion);
+    undoSet.writeSettings(histPath);
+
+    if (debug)
+    {
+        //qDebug() << "          into="<< histPath;
+        qDebug() << "    stepsTotal="<<stepsTotal<<
+        ", undosAvail="<<undosAvail<<
+        ", redosAvail="<<redosAvail<<
+        ", curStep="<<curStep;
+        qDebug() << "    ---------------------------";
+        qDebug() << "    comment="<<comment;
+        qDebug() << "    undoCom="<<undoCommand;
+        qDebug() << "    undoSel="<<undoSelection;
+        qDebug() << "    redoCom="<<redoCommand;
+        qDebug() << "    redoSel="<<redoSelection;
+        if (saveSel) qDebug() << "    saveSel="<<qPrintable (getSelectString(saveSel));
+        qDebug() << "    ---------------------------";
+    }
+
+    mainWindow->updateHistory (undoSet);
+
+    setChanged();
+    updateActions();
+}
+
+
+void VymModel::saveStateChangingPart(TreeItem *undoSel, TreeItem* redoSel, const QString &rc, const QString &comment)
+{
+    // save the selected part of the map, Undo will replace part of map 
+    QString undoSelection="";
+    if (undoSel)
+       undoSelection=getSelectString(undoSel);
+    else
+       qWarning ("VymModel::saveStateChangingPart  no undoSel given!");
+    QString redoSelection="";
+    if (redoSel)
+       redoSelection=getSelectString(undoSel);
+    else
+       qWarning ("VymModel::saveStateChangingPart  no redoSel given!");
+       
+
+    saveState (PartOfMap,
+       undoSelection, "addMapReplace (\"PATH\")",
+       redoSelection, rc, 
+       comment, 
+       undoSel);
+}
+
+void VymModel::saveStateRemovingPart(TreeItem* redoSel, const QString &comment)
+{
+    if (!redoSel)
+    {
+       qWarning ("VymModel::saveStateRemovingPart  no redoSel given!");
+       return;
+    }
+    QString undoSelection;
+    QString redoSelection=getSelectString(redoSel);
+    if (redoSel->isBranchLikeType() )
+    {
+       // save the selected branch of the map, Undo will insert part of map 
+       if (redoSel->depth()>0)
+           undoSelection=getSelectString (redoSel->parent());
+       saveState (PartOfMap,
+           undoSelection, QString("addMapInsert (\"PATH\",%1,%2)").arg(redoSel->num()).arg(SlideContent),
+           redoSelection, "delete ()", 
+           comment, 
+           redoSel);
+    }
+}
+
+void VymModel::saveState(TreeItem *undoSel, const QString &uc, TreeItem *redoSel, const QString &rc, const QString &comment) 
+{
+    // "Normal" savestate: save commands, selections and comment
+    // so just save commands for undo and redo
+    // and use current selection, if empty parameter passed
+
+    QString redoSelection="";
+    if (redoSel) redoSelection=getSelectString(redoSel);
+    QString undoSelection="";
+    if (undoSel) undoSelection=getSelectString(undoSel);
+
+    saveState (UndoCommand,
+       undoSelection, uc,
+       redoSelection, rc, 
+       comment, 
+       NULL);
+}
+
+void VymModel::saveState(const QString &undoSel, const QString &uc, const QString &redoSel, const QString &rc, const QString &comment) 
+{
+    // "Normal" savestate: save commands, selections and comment
+    // so just save commands for undo and redo
+    // and use current selection
+    saveState (UndoCommand,
+       undoSel, uc,
+       redoSel, rc, 
+       comment, 
+       NULL);
+}
+
+void VymModel::saveState(const QString &uc, const QString &rc, const QString &comment) 
+{
+    // "Normal" savestate applied to model (no selection needed): 
+    // save commands  and comment
+    saveState (UndoCommand,
+       NULL, uc,
+       NULL, rc, 
+       comment, 
+       NULL);
+}
+
+void VymModel::saveStateMinimal(TreeItem *undoSel, const QString &uc, TreeItem *redoSel, const QString &rc, const QString &comment) 
+{   //  Save a change in string and merge
+    //  minor sequential  changes  */
+    QString redoSelection="";
+    if (redoSel) redoSelection=getSelectString(redoSel);
+    QString undoSelection="";
+    if (undoSel) undoSelection=getSelectString(undoSel);
+
+    saveState (UndoCommand,
+       undoSelection, uc,
+       redoSelection, rc, 
+       comment, 
+       NULL);
+}
+
+void VymModel::saveStateBeforeLoad (LoadMode lmode, const QString &fname)
+{ 
+    BranchItem *selbi=getSelectedBranch();
+    if (selbi) 
+    {
+       if (lmode==ImportAdd)
+           saveStateChangingPart(
+               selbi,
+               selbi,
+               QString("addMapInsert (\"%1\")").arg(fname),
+               QString("Add map %1 to %2").arg(fname).arg(getObjectName(selbi)));
+       if (lmode==ImportReplace)
+       {
+           BranchItem *pi=(BranchItem*)(selbi->parent());
+           saveStateChangingPart(
+               pi,
+               pi,
+               QString("addMapReplace(%1)").arg(fname),
+               QString("Add map %1 to %2").arg(fname).arg(getObjectName(selbi)));
+       }
+    }
+}
+
+
+
+QGraphicsScene* VymModel::getScene ()
+{
+    return mapEditor->getScene();
+}
+
+TreeItem* VymModel::findBySelectString(QString s)
+{
+    if (s.isEmpty() ) return NULL;
+
+    // Old maps don't have multiple mapcenters and don't save full path
+    if (s.left(2) !="mc") s="mc:0,"+s;
+
+    QStringList parts=s.split (",");
+    QString typ;
+    int n;
+    TreeItem *ti=rootItem;
+
+    while (!parts.isEmpty() )
+    {
+       typ=parts.first().left(2);
+       n=parts.first().right(parts.first().length() - 3).toInt();
+       parts.removeFirst();
+       if (typ=="mc" || typ=="bo")
+           ti=ti->getBranchNum (n);
+       else if (typ=="fi")
+           ti=ti->getImageNum (n);
+       else if (typ=="ai")
+           ti=ti->getAttributeNum (n);
+       else if (typ=="xl")
+           ti=ti->getXLinkItemNum (n);
+       if(!ti) return NULL;        
+    }
+    return  ti;
+}
+
+TreeItem* VymModel::findID (const uint &id)  
+{
+    BranchItem *cur=NULL;
+    BranchItem *prev=NULL;
+    nextBranch(cur,prev);
+    while (cur) 
+    {
+       if (id==cur->getID() ) return cur;
+       int j=0;
+       while (j<cur->xlinkCount() )
+       {
+           XLinkItem *xli=cur->getXLinkItemNum (j);
+           if (id==xli->getID() ) return xli;
+           j++;
+       }
+       j=0;
+       while (j<cur->imageCount() )
+       {
+           ImageItem *ii=cur->getImageNum (j);
+           if (id==ii->getID() ) return ii;
+           j++;
+       }
+       nextBranch(cur,prev);
+    }
+    return NULL;
+}
+
+TreeItem* VymModel::findUuid (const QUuid &id)  
+{
+    BranchItem *cur=NULL;
+    BranchItem *prev=NULL;
+    nextBranch(cur,prev);
+    while (cur) 
+    {
+       if (id==cur->getUuid() ) return cur;
+       int j=0;
+       while (j<cur->xlinkCount() )
+       {
+           XLinkItem *xli=cur->getXLinkItemNum (j);
+           if (id==xli->getUuid() ) return xli;
+           j++;
+       }
+       j=0;
+       while (j<cur->imageCount() )
+       {
+           ImageItem *ii=cur->getImageNum (j);
+           if (id==ii->getUuid() ) return ii;
+           j++;
+       }
+       nextBranch(cur,prev);
+    }
+    return NULL;
+}
+
+//////////////////////////////////////////////
+// Interface 
+//////////////////////////////////////////////
+void VymModel::setVersion (const QString &s)
+{
+    version=s;
+}
+
+QString VymModel::getVersion()
+{
+    return version;
+}
+
+void VymModel::setTitle (const QString &s)
+{
+    saveState (
+       QString ("setMapTitle (\"%1\")").arg(title),
+       QString ("setMapTitle (\"%1\")").arg(s),
+       QString ("Set title of map to \"%1\"").arg(s)
+    );
+    title=s;
+}
+
+QString VymModel::getTitle()
+{
+    return title;
+}
+
+void VymModel::setAuthor (const QString &s)
+{
+    saveState (
+       QString ("setMapAuthor (\"%1\")").arg(author),
+       QString ("setMapAuthor (\"%1\")").arg(s),
+       QString ("Set author of map to \"%1\"").arg(s)
+    );
+    author=s;
+}
+
+QString VymModel::getAuthor()
+{
+    return author;
+}
+
+void VymModel::setComment (const QString &s)
+{
+    saveState (
+       QString ("setMapComment (\"%1\")").arg(comment),
+       QString ("setMapComment (\"%1\")").arg(s),
+       QString ("Set comment of map")
+    );
+    comment=s;
+}
+
+QString VymModel::getComment ()
+{
+    return comment;
+}
+
+QString VymModel::getDate ()
+{
+    return QDate::currentDate().toString ("yyyy-MM-dd");
+}
+
+int VymModel::branchCount() 
+{
+    int c=0;
+    BranchItem *cur=NULL;
+    BranchItem *prev=NULL;
+    nextBranch(cur,prev);
+    while (cur) 
+    {
+       c++;
+       nextBranch(cur,prev);
+    }
+    return c;
+}
+
+void VymModel::setSortFilter (const QString &s)
+{
+    sortFilter=s;
+    emit (sortFilterChanged (sortFilter));
+}
+
+QString VymModel::getSortFilter ()
+{
+    return sortFilter;
+}
+
+void VymModel::setHeading(const VymText &vt, BranchItem *bi)
+{
+    Heading h_old;
+    Heading h_new;
+    h_new = vt;
+    QString s = vt.getTextASCII();
+    if (!bi) bi=getSelectedBranch();
+    if (bi)
+    {
+        h_old = bi->getHeading();
+        if (h_old == h_new) return;
+        saveState(
+            bi, "parseVymText ('" +  h_old.saveToDir() + "')",
+            bi, "parseVymText ('" +  h_new.saveToDir() + "')",
+            QString("Set heading of %1 to \"%2\"").arg(getObjectName(bi)).arg(s) );
+        bi->setHeading(vt);
+        emitDataChanged ( bi);
+        emitUpdateQueries ();
+        reposition();
+    }
+}
+
+void VymModel::setHeadingPlainText(const QString &s, BranchItem *bi)
+{
+    if (!bi) bi=getSelectedBranch();
+    if (bi)
+    {
+        VymText vt = bi->getHeading();
+        vt.setPlainText(s);
+        if (bi->getHeading() == vt) return;
+        setHeading (vt, bi);
+    }
+}
+
+Heading VymModel::getHeading()
+{
+    TreeItem *selti=getSelectedItem();
+    if (selti) return  selti->getHeading();
+    qWarning() << "VymModel::getHeading Nothing selected.";
+    return Heading();
+}
+
+void VymModel::setNote(const  VymNote &vn)
+{
+    TreeItem *selti=getSelectedItem();
+    if (selti) 
+    {
+        VymNote n_old;
+        VymNote n_new;
+        n_old = selti->getNote();
+        n_new = vn;
+        saveState(
+            selti,
+            "parseVymText ('" + n_old.saveToDir() + "')",
+            selti,
+            "parseVymText ('" + n_new.saveToDir() + "')",
+            QString("Set note of %1 to \"%2\"").arg(getObjectName(selti)).arg(n_new.getTextASCII().left(20) ) );
+        selti->setNote( n_new );
+        emitNoteChanged( selti );
+        emitDataChanged( selti );
+    }
+}
+
+VymNote VymModel::getNote()
+{
+    TreeItem *selti=getSelectedItem();
+    if (selti)
+    {
+        VymNote n = selti->getNote();
+        return n;
+    }
+    qWarning() << "VymModel::getNote Nothing selected.";
+    return VymNote();
+}
+
+bool VymModel::hasRichTextNote()
+{
+    TreeItem *selti=getSelectedItem();
+    if (selti)
+    {
+        return selti->getNote().isRichText();
+    }
+    return false;
+}
+
+void VymModel::loadNote (const QString &fn)
+{
+    BranchItem *selbi=getSelectedBranch();
+    if (selbi)
+    {
+        QString n;
+        if (!loadStringFromDisk (fn,n))
+            qWarning ()<<"VymModel::loadNote Couldn't load "<<fn;
+        else
+        {
+            VymNote vn;
+            vn.setAutoText(n);
+            setNote (vn);
+        }
+    } else
+        qWarning ("VymModel::loadNote no branch selected");
+}
+
+void VymModel::saveNote (const QString &fn)
+{
+    BranchItem *selbi = getSelectedBranch();
+    if (selbi)
+    {
+        VymNote n = selbi->getNote();
+        if ( n.isEmpty() )
+            qWarning ()<<"VymModel::saveNote  note is empty, won't save to "<<fn;
+        else
+        {
+            if (!saveStringToDisk (fn, n.saveToDir() ))
+                qWarning ()<<"VymModel::saveNote Couldn't save "<<fn;
+        }
+    } else
+        qWarning ("VymModel::saveNote no branch selected");
+}
+
+void VymModel::findDuplicateURLs()  // FIXME-3 needs GUI
+{
+    // Generate map containing _all_ URLs and branches
+    QString u;
+    QMap <QString,BranchItem*> map;
+    BranchItem *cur=NULL;
+    BranchItem *prev=NULL;
+    nextBranch(cur,prev);
+    while (cur) 
+    {
+       u=cur->getURL();
+       if (!u.isEmpty() )
+           map.insertMulti (u,cur);
+       nextBranch(cur,prev);
+    }
+
+    // Extract duplicate URLs
+    QMap <QString, BranchItem*>::const_iterator i=map.constBegin();
+    QMap <QString, BranchItem*>::const_iterator firstdup=map.constEnd();    //invalid
+    while (i != map.constEnd())
+    {
+       if (i!=map.constBegin() && i.key()==firstdup.key())
+       {
+           if (  i-1==firstdup )
+           {
+               qDebug() << firstdup.key();
+        qDebug() << " - "<< firstdup.value() <<" - "<<firstdup.value()->getHeading().getText();
+           }   
+        qDebug() << " - "<< i.value() <<" - "<<i.value()->getHeading().getText();
+       } else
+           firstdup=i;
+
+       ++i;
+    }
+}
+
+bool  VymModel::findAll (FindResultModel *rmodel, QString s, Qt::CaseSensitivity cs)   
+{
+    rmodel->clear();
+    rmodel->setSearchString (s);
+    rmodel->setSearchFlags (0);        //FIXME-4 translate cs to QTextDocument::FindFlag
+    bool hit = false;
+
+    BranchItem *cur  = NULL;
+    BranchItem *prev = NULL;
+    nextBranch(cur,prev);
+
+    FindResultItem *lastParent = NULL;
+    while (cur) 
+    {
+       lastParent = NULL;
+        if (cur->getHeading().getTextASCII().contains (s,cs))
+            {
+                lastParent = rmodel->addItem (cur);
+                hit = true;
+            }
+       QString n = cur->getNoteASCII();
+       int i = 0;
+       int j = 0;
+       while ( i >= 0)
+       {
+           i = n.indexOf (s,i,cs); 
+           if (i >= 0) 
+           {
+               // If not there yet, add "parent" item
+               if (!lastParent)
+               {
+                   lastParent = rmodel->addItem (cur);
+                   hit = true;
+                   if (!lastParent)
+                       qWarning() << "VymModel::findAll still no lastParent?!";
+                   /*
+                   else
+                       lastParent->setSelectable (false);
+                   */  
+               }   
+
+               // save index of occurence
+               QString e = n.mid(i-15, 30);
+               n.replace('\n', ' ');
+               rmodel->addSubItem (lastParent, QString(tr("Note", "FindAll in VymModel") + ": \"...%1...\"").arg(n.mid(i-8,80)), cur, j);
+               j++;
+               i++;
+           }
+       } 
+       nextBranch(cur, prev);
+    }
+    return hit;
+}
+
+BranchItem* VymModel::findText (QString s,Qt::CaseSensitivity cs)
+{
+    if (!s.isEmpty() && s!=findString)
+    {
+       findReset();
+       findString=s;
+    }
+
+    QTextDocument::FindFlags flags=0;
+    if (cs==Qt::CaseSensitive) flags=QTextDocument::FindCaseSensitively;
+
+    if (!findCurrent) 
+    {  // Nothing found or new find process
+       if (EOFind)
+           // nothing found, start again
+           EOFind=false;
+       findCurrent=NULL;   
+       findPrevious=NULL;  
+       nextBranch (findCurrent,findPrevious);
+    }  
+    bool searching=true;
+    bool foundNote=false;
+    while (searching && !EOFind)
+    {
+       if (findCurrent)
+       {
+           // Searching in Note
+        if (findCurrent->getNoteASCII().contains(findString,cs))
+           {
+               select (findCurrent);
+               if (noteEditor->findText(findString,flags)) 
+               {
+                   searching=false;
+                   foundNote=true;
+               }   
+           }
+           // Searching in Heading
+        if (searching && findCurrent->getHeading().getTextASCII().contains (findString,cs) )
+           {
+               select(findCurrent);
+               searching=false;
+           }
+       }   
+       if (!foundNote)
+       {
+           nextBranch(findCurrent,findPrevious);
+           if (!findCurrent) EOFind=true;
+       }
+    }  
+    if (!searching)
+       return getSelectedBranch();
+    else
+       return NULL;
+}
+
+void VymModel::findReset()
+{   // Necessary if text to find changes during a find process
+    findString.clear();
+    findCurrent=NULL;
+    findPrevious=NULL;
+    EOFind=false;
+}
+
+void VymModel::setURL(QString url) 
+{
+    TreeItem *selti=getSelectedItem();
+    if (selti->getURL()==url) return;
+    if (selti)
+    {
+       QString oldurl=selti->getURL();
+       selti->setURL (url);
+       saveState (
+           selti,
+           QString ("setURL (\"%1\")").arg(oldurl),
+           selti,
+           QString ("setURL (\"%1\")").arg(url),
+           QString ("set URL of %1 to %2").arg(getObjectName(selti)).arg(url)
+       );
+       if (url.contains("bugzilla.novell.com/"))
+           getBugzillaData(false);
+       emitDataChanged (selti);
+       reposition();
+    }
+}   
+
+QString VymModel::getURL()  
+{
+    TreeItem *selti=getSelectedItem();
+    if (selti)
+       return selti->getURL();
+    else    
+       return QString();
+}
+
+QStringList VymModel::getURLs(bool ignoreScrolled)  
+{
+    QStringList urls;
+    BranchItem *selbi=getSelectedBranch();
+    BranchItem *cur=NULL;
+    BranchItem *prev=NULL;
+    nextBranch (cur,prev,true,selbi);
+    while (cur) 
+    {
+       if (!cur->getURL().isEmpty()  && !(ignoreScrolled && cur->hasScrolledParent() )) 
+           urls.append( cur->getURL());
+       nextBranch(cur,prev,true,selbi);
+    }  
+    return urls;
+}
+
+
+void VymModel::setFrameType(const FrameObj::FrameType &t)   
+{
+    BranchItem *bi=getSelectedBranch();
+    if (bi)
+    {
+       BranchObj *bo=(BranchObj*)(bi->getLMO());
+       if (bo)
+       {
+           QString s=bo->getFrameTypeName();
+           bo->setFrameType (t);
+           saveState (bi, QString("setFrameType (\"%1\")").arg(s),
+               bi, QString ("setFrameType (\"%1\")").arg(bo->getFrameTypeName()),QString ("set type of frame to %1").arg(s));
+           reposition();
+           bo->updateLinkGeometry();
+       }
+    }
+}
+
+void VymModel::setFrameType(const QString &s)  
+{
+    BranchItem *bi=getSelectedBranch();
+    if (bi)
+    {
+       BranchObj *bo=(BranchObj*)(bi->getLMO());
+       if (bo)
+       {
+           saveState (bi, QString("setFrameType (\"%1\")").arg(bo->getFrameTypeName()),
+               bi, QString ("setFrameType (\"%1\")").arg(s),QString ("set type of frame to %1").arg(s));
+           bo->setFrameType (s);
+           reposition();
+           bo->updateLinkGeometry();
+       }
+    }
+}
+
+void VymModel::toggleFrameIncludeChildren ()     
+{
+    BranchItem *bi=getSelectedBranch();
+    if (bi)
+    {
+       bool b=bi->getFrameIncludeChildren();
+       setFrameIncludeChildren (!b);
+    }
+}
+
+void VymModel::setFrameIncludeChildren (bool b)            
+{
+    BranchItem *bi=getSelectedBranch();
+    if (bi)
+    {
+       QString u= b ? "false" : "true";
+       QString r=!b ? "false" : "true";
+       
+       saveState(
+           bi,
+           QString("setFrameIncludeChildren(%1)").arg(u),
+           bi, 
+           QString("setFrameIncludeChildren(%1)").arg(r),
+           QString("Include children in %1").arg(getObjectName(bi))
+       );  
+       bi->setFrameIncludeChildren (b);
+       emitDataChanged (bi);
+       reposition();
+    }
+}
+
+void VymModel::setFramePenColor(const QColor &c)    //FIXME-4 not saved if there is no LMO
+
+{
+    BranchItem *bi=getSelectedBranch();
+    if (bi)
+    {
+       BranchObj *bo=(BranchObj*)(bi->getLMO());
+       if (bo)
+       {
+           saveState (bi, QString("setFramePenColor (\"%1\")").arg(bo->getFramePenColor().name() ),
+               bi, QString ("setFramePenColor (\"%1\")").arg(c.name() ),QString ("set pen color of frame to %1").arg(c.name() ));
+           bo->setFramePenColor (c);
+       }   
+    }  
+}
+
+void VymModel::setFrameBrushColor(const QColor &c)  //FIXME-4 not saved if there is no LMO
+{
+    BranchItem *bi=getSelectedBranch();
+    if (bi)
+    {
+       BranchObj *bo=(BranchObj*)(bi->getLMO());
+       if (bo)
+       {
+           saveState (bi, QString("setFrameBrushColor (\"%1\")").arg(bo->getFrameBrushColor().name() ),
+               bi, QString ("setFrameBrushColor (\"%1\")").arg(c.name() ),QString ("set brush color of frame to %1").arg(c.name() ));
+           bo->setFrameBrushColor (c);
+           bi->setBackgroundColor (c); //FIXME-4 redundant with above
+       }   
+    }  
+}
+
+void VymModel::setFramePadding (const int &i) //FIXME-4 not saved if there is no LMO
+{
+    BranchItem *bi=getSelectedBranch();
+    if (bi)
+    {
+       BranchObj *bo=(BranchObj*)(bi->getLMO());
+       if (bo)
+       {
+           saveState (bi, QString("setFramePadding (\"%1\")").arg(bo->getFramePadding() ),
+               bi, QString ("setFramePadding (\"%1\")").arg(i),QString ("set brush color of frame to %1").arg(i));
+           bo->setFramePadding (i);
+           reposition();
+           bo->updateLinkGeometry();
+       }   
+    }  
+}
+
+void VymModel::setFrameBorderWidth(const int &i) //FIXME-4 not saved if there is no LMO
+{
+    BranchItem *bi=getSelectedBranch();
+    if (bi)
+    {
+       BranchObj *bo=(BranchObj*)(bi->getLMO());
+       if (bo)
+       {
+           saveState (bi, QString("setFrameBorderWidth (\"%1\")").arg(bo->getFrameBorderWidth() ),
+               bi, QString ("setFrameBorderWidth (\"%1\")").arg(i),QString ("set border width of frame to %1").arg(i));
+           bo->setFrameBorderWidth (i);
+           reposition();
+           bo->updateLinkGeometry();
+       }   
+    }  
+}
+
+void VymModel::setIncludeImagesVer(bool b)
+{
+    BranchItem *bi=getSelectedBranch();
+    if (bi && b!=bi->getIncludeImagesVer() )
+    {
+       QString u= b ? "false" : "true";
+       QString r=!b ? "false" : "true";
+       
+       saveState(
+           bi,
+           QString("setIncludeImagesVertically (%1)").arg(u),
+           bi, 
+           QString("setIncludeImagesVertically (%1)").arg(r),
+           QString("Include images vertically in %1").arg(getObjectName(bi))
+       );  
+       bi->setIncludeImagesVer(b);
+       emitDataChanged ( bi);   
+       reposition();
+    }  
+}
+
+void VymModel::setIncludeImagesHor(bool b)  
+{
+    BranchItem *bi=getSelectedBranch();
+    if (bi && b!=bi->getIncludeImagesHor() )
+    {
+       QString u= b ? "false" : "true";
+       QString r=!b ? "false" : "true";
+       
+       saveState(
+           bi,
+           QString("setIncludeImagesHorizontally (%1)").arg(u),
+           bi, 
+           QString("setIncludeImagesHorizontally (%1)").arg(r),
+           QString("Include images horizontally in %1").arg(getObjectName(bi))
+       );  
+       bi->setIncludeImagesHor(b);
+       emitDataChanged ( bi);
+       reposition();
+    }  
+}
+
+void VymModel::setChildrenLayout(BranchItem::LayoutHint layoutHint) // FIXME-3 no savestate yet
+{
+    BranchItem *bi=getSelectedBranch();
+    if (bi)
+    {
+        /*
+        QString u= b ? "false" : "true";
+        QString r=!b ? "false" : "true";
+
+        saveState(      
+            bi,
+            QString("setIncludeImagesHorizontally (%1)").arg(u),
+            bi,
+            QString("setIncludeImagesHorizontally (%1)").arg(r),
+            QString("Include images horizontally in %1").arg(getObjectName(bi))
+        );
+        */
+        bi->setChildrenLayout(layoutHint);
+        emitDataChanged ( bi);
+        reposition();
+    }
+}
+
+void VymModel::setHideLinkUnselected (bool b)
+{
+    TreeItem *ti=getSelectedItem();
+    if (ti && (ti->getType()==TreeItem::Image ||ti->isBranchLikeType()))
+    {
+       QString u= b ? "false" : "true";
+       QString r=!b ? "false" : "true";
+       
+       saveState(
+           ti,
+           QString("setHideLinkUnselected (%1)").arg(u),
+           ti, 
+           QString("setHideLinkUnselected (%1)").arg(r),
+           QString("Hide link of %1 if unselected").arg(getObjectName(ti))
+       );  
+       ((MapItem*)ti)->setHideLinkUnselected(b);
+    }
+}
+
+void VymModel::setHideExport(bool b, TreeItem *ti)
+{
+    if (!ti) ti=getSelectedItem();
+    if (ti && 
+       (ti->getType()==TreeItem::Image ||ti->isBranchLikeType()) &&
+       ti->hideInExport() !=b
+       )
+    {
+       ti->setHideInExport (b);
+       QString u= b ? "false" : "true";
+       QString r=!b ? "false" : "true";
+       
+       saveState(
+           ti,
+           QString ("setHideExport (%1)").arg(u),
+           ti,
+           QString ("setHideExport (%1)").arg(r),
+           QString ("Set HideExport flag of %1 to %2").arg(getObjectName(ti)).arg (r)
+       );  
+           emitDataChanged(ti);
+           emitSelectionChanged();
+       reposition(); 
+    }
+}
+
+void VymModel::toggleHideExport()
+{
+    QList <TreeItem*> selItems=getSelectedItems();
+    if (selItems.count()>0 )
+    {
+       foreach (TreeItem* ti, selItems)
+       {
+           bool b=!ti->hideInExport();
+           setHideExport (b,ti );
+       }
+    }
+}
+
+void VymModel::toggleTask() 
+{
+    BranchItem *selbi=getSelectedBranch();
+    if (selbi) 
+    {
+       saveStateChangingPart (
+           selbi,
+           selbi,
+           QString ("toggleTask()"),
+           QString ("Toggle task of %1").arg(getObjectName (selbi)) );
+       Task *task=selbi->getTask();
+       if (!task )
+       {
+           task=taskModel->createTask (selbi);
+           taskEditor->select(task); 
+       }
+       else
+           taskModel->deleteTask (task);
+
+       emitDataChanged(selbi);
+       emitSelectionChanged();
+       reposition();
+    }
+}
+
+void VymModel::cycleTaskStatus(bool reverse)
+{
+    BranchItem *selbi=getSelectedBranch();
+    if (selbi) 
+    {
+       Task *task=selbi->getTask();
+       if (task) 
+       {
+           saveStateChangingPart (
+               selbi,
+               selbi,
+               QString ("cycleTask()"),
+               QString ("Toggle task of %1").arg(getObjectName (selbi)) );
+           task->cycleStatus(reverse);
+           task->setDateModified();
+           
+           // make sure task is still visible
+           taskEditor->select (task);
+            emitDataChanged(selbi);
+            reposition();
+       }
+    }
+}
+
+bool VymModel::setTaskSleep(const QString &s) 
+{
+    BranchItem *selbi=getSelectedBranch();
+    if (selbi && !s.isEmpty() ) 
+    {
+       Task *task=selbi->getTask();
+       if (task ) 
+       {
+            bool ok;
+            int n=s.toInt(&ok);
+            if (!ok)
+            {
+                // Is s a date?
+                QDate d=QDate::fromString(s,Qt::ISODate);
+                d=QDate::fromString(s,Qt::ISODate);
+                if (d.isValid())
+                    // ISO date YYYY-MM-DD
+                    ok=true;
+                else
+                {
+                    d=QDate::fromString(s,Qt::DefaultLocaleShortDate);
+                    if (d.isValid()) 
+                        // Locale date, e.g. 24 Dec 2012
+                        ok=true;
+                    else
+                    {
+                        QRegExp re ("(\\d+).(\\d+).(\\d+)");
+                        re.setMinimal(false);
+                        int pos=re.indexIn(s);
+                        QStringList list=re.capturedTexts();
+                        if (pos>=0)
+                        {
+                            // German formate, e.g. 24.12.2012
+                            d=QDate(list.at(3).toInt(), list.at(2).toInt(), list.at(1).toInt());
+                            ok=true;
+                        } else
+                        {
+                            re.setPattern("(\\d+).(\\d+).");
+                            pos=re.indexIn(s);
+                            list=re.capturedTexts();
+                            if (pos>=0)
+                            {
+                                // Short German formate, e.g. 24.12.
+                                int month=list.at(2).toInt();
+                                int day=list.at(1).toInt();
+                                int year=QDate::currentDate().year();
+                                d=QDate(year, month, day);
+                                if (QDate::currentDate().daysTo(d) < 0)
+                                {
+                                    year++;
+                                    d=QDate(year, month, day);
+                                }
+                                ok=true;
+                            } else
+                            {
+                                re.setPattern("(\\d+).(\\d+).");
+                            }
+                        }
+                    }
+                }
+                if (ok) n=QDate::currentDate().daysTo(d);
+            }
+
+            if (ok)
+            {
+                int oldsleep=task->getDaysSleep();
+                task->setDateSleep (n);
+                task->setDateModified();
+                saveState (
+                    selbi,
+                    QString("setTaskSleep (%1)").arg(oldsleep),
+                    selbi,
+                    QString("setTaskSleep (%1)").arg(n),
+                    QString("setTaskSleep (%1)").arg(n) );
+                emitDataChanged (selbi);
+                reposition();
+                return true;
+            }
+       }
+    }
+    return false;
+}
+
+int VymModel::taskCount()
+{
+    return taskModel->count (this);
+}
+
+void VymModel::addTimestamp()  //FIXME-4 new function, localize
+{
+    BranchItem *selbi=addNewBranch();
+    if (selbi)
+    {
+       QDate today=QDate::currentDate();
+       QChar c='0';
+        selbi->setHeadingPlainText (
+        QString ("%1-%2-%3")
+            .arg(today.year(),4,10,c)
+            .arg(today.month(),2,10,c)
+            .arg(today.day(),2,10,c));
+       emitDataChanged ( selbi);       
+       reposition();
+       select (selbi);
+    }
+}
+
+
+void VymModel::copy()  
+{
+    if (readonly) return;
+
+    TreeItem *selti=getSelectedItem();
+    if (selti &&
+       (selti->getType() == TreeItem::Branch || 
+       selti->getType() == TreeItem::MapCenter  ||
+       selti->getType() == TreeItem::Image ))
+    {
+       // Copy to global clipboard
+       QString saveFile=saveToDir (clipboardDir, clipboardFile, true, QPointF(), selti);
+       if (!saveStringToDisk(clipboardDir + "/" + clipboardFile,saveFile))
+           qWarning ("ME::saveStringToDisk failed!");
+
+       clipboardEmpty=false;
+
+       if (redosAvail == 0)
+       {
+           // Copy also to history
+           QString s=getSelectString(selti);
+           saveState (PartOfMap, s, "nop ()", s, "copy ()","Copy selection to clipboard",selti  );
+           curClipboard=curStep;
+       }
+       updateActions();
+    }      
+}
+
+void VymModel::paste() 
+{   
+    if (readonly) return;
+
+    BranchItem *selbi=getSelectedBranch();
+    if (selbi)
+    {
+       saveStateChangingPart(
+           selbi,
+           selbi,
+           QString ("paste ()"),
+           QString("Paste")
+       );
+       bool zippedOrg=zipped;
+       loadMap (clipboardDir+"/"+clipboardFile,ImportAdd, VymMap,SlideContent);
+       zipped=zippedOrg;
+       reposition();
+    }
+}
+
+void VymModel::cut()   
+{
+    if (readonly) return;
+
+    TreeItem *selti=getSelectedItem();
+    if ( selti && (selti->isBranchLikeType() ||selti->getType()==TreeItem::Image))
+    {
+       copy();
+       deleteSelection();
+       reposition();
+    }
+}
+
+bool VymModel::moveUp(BranchItem *bi)
+{
+    if (readonly) return false;
+
+    bool oldState=blockSaveState;
+    blockSaveState=true;
+    bool result=false;
+    if (bi && bi->canMoveUp()) 
+       result=relinkBranch (bi,(BranchItem*)bi->parent(),bi->num()-1,false);
+    blockSaveState=oldState;
+    return result;
+}
+
+void VymModel::moveUp()        
+{
+    BranchItem *selbi=getSelectedBranch();
+    if (selbi)
+    {
+       QString oldsel=getSelectString(selbi);
+       if (moveUp (selbi))
+       {
+           saveState (
+               getSelectString(selbi),"moveDown ()",
+               oldsel,"moveUp ()",
+               QString("Move up %1").arg(getObjectName(selbi)));
+           select (selbi);             
+       }
+    }
+}
+
+bool VymModel::moveDown(BranchItem *bi)        
+{
+    if (readonly) return false;
+
+    bool oldState=blockSaveState;
+    blockSaveState=true;
+    bool result=false;
+    if (bi && bi->canMoveDown()) 
+       result=relinkBranch (bi,(BranchItem*)bi->parent(),bi->num()+1,false);
+    blockSaveState=oldState;
+    return result;
+}
+
+void VymModel::moveDown()   
+{
+    BranchItem *selbi=getSelectedBranch();
+    if (selbi)
+    {
+       QString oldsel=getSelectString(selbi);
+       if ( moveDown(selbi))
+       {
+           saveState (
+               getSelectString(selbi),"moveUp ()",
+               oldsel,"moveDown ()",
+               QString("Move down %1").arg(getObjectName(selbi)));
+           select (selbi);
+       }
+    }
+}
+
+void VymModel::detach()        
+{
+    BranchItem *selbi=getSelectedBranch();
+    if (selbi && selbi->depth()>0)
+    {
+       // if no relPos have been set before, try to use current rel positions   
+       if (selbi->getLMO())
+           for (int i=0; i<selbi->branchCount();++i)
+               selbi->getBranchNum(i)->getBranchObj()->setRelPos();
+       
+       QString oldsel=getSelectString();
+       int n=selbi->num();
+       QPointF p;
+       BranchObj *bo=selbi->getBranchObj();
+       if (bo) p=bo->getAbsPos();
+       QString parsel=getSelectString(selbi->parent());
+       if ( relinkBranch (selbi,rootItem,-1,true) )    
+           saveState (
+               getSelectString (selbi),
+               QString("relinkTo (\"%1\",%2,%3,%4)").arg(parsel).arg(n).arg(p.x()).arg(p.y()),
+               oldsel,
+               "detach ()",
+               QString("Detach %1").arg(getObjectName(selbi))
+           );
+    }
+}
+
+void VymModel::sortChildren(bool inverse) 
+{
+    BranchItem* selbi=getSelectedBranch();
+    if (selbi)
+    {
+       if(selbi->branchCount()>1)
+       {
+           if (!inverse)
+               saveStateChangingPart(
+                   selbi,selbi, "sortChildren ()",
+                   QString("Sort children of %1").arg(getObjectName(selbi)));
+           else            
+               saveStateChangingPart(
+                   selbi,selbi, "sortChildren (false)",
+                   QString("Inverse sort children of %1").arg(getObjectName(selbi)));
+
+           selbi->sortChildren(inverse);
+           select(selbi);
+           reposition();
+       }
+    }
+}
+
+BranchItem* VymModel::createMapCenter()
+{
+    BranchItem *newbi=addMapCenter (QPointF (0,0) );
+    return newbi;
+}
+
+BranchItem* VymModel::createBranch(BranchItem *dst) 
+{
+    if (dst)
+       return addNewBranchInt (dst,-2);
+    else
+       return NULL;
+}
+
+ImageItem* VymModel::createImage(BranchItem *dst)
+{
+    if (dst)
+    {
+        QModelIndex parix;
+        int n;
+
+        QList<QVariant> cData;
+        cData << tr("Image","Default name for new image") << "undef";
+
+        ImageItem *newii=new ImageItem(cData) ;
+        //newii->setHeading (QApplication::translate("Heading of new image in map", "new image"));
+
+        emit (layoutAboutToBeChanged() );
+
+        parix=index(dst);
+        if (!parix.isValid()) qDebug() << "VM::createII invalid index\n";
+        n=dst->getRowNumAppend(newii);
+        beginInsertRows (parix,n,n);
+        dst->appendChild (newii);
+        endInsertRows ();
+
+        emit (layoutChanged() );
+
+        // save scroll state. If scrolled, automatically select
+        // new branch in order to tmp unscroll parent...
+        newii->createMapObj();
+        latestAddedItem=newii;
+        reposition();
+        return newii;
+    }
+    return NULL;
+}
+
+bool VymModel::createLink(Link *link)
+{
+    BranchItem *begin=link->getBeginBranch();
+    BranchItem *end  =link->getEndBranch();
+
+    if (!begin || !end)
+    {
+       qWarning ()<<"VM::createXLinkNew part of XLink is NULL";
+       return false;
+    }
+
+    if (begin==end)
+    {
+       if (debug) qDebug()<<"VymModel::createLink begin==end, aborting";
+       return false;
+    }
+
+    // check, if link already exists
+    foreach (Link* l, xlinks)
+    {
+       if ( (l->getBeginBranch()==begin && l->getEndBranch()==end ) ||
+            (l->getBeginBranch()==end   && l->getEndBranch()==begin) )
+       {
+           qWarning()<<"VymModel::createLink link exists already, aborting";
+           return false;
+       }
+    }
+
+    QModelIndex parix;
+    int n;
+
+    QList<QVariant> cData;
+
+    cData << "new Link begin"<<"undef";
+    XLinkItem *newli=new XLinkItem(cData) ;    
+    newli->setLink (link);
+    link->setBeginLinkItem (newli);
+
+    emit (layoutAboutToBeChanged() );
+
+       parix=index(begin);
+       n=begin->getRowNumAppend(newli);
+       beginInsertRows (parix,n,n);
+       begin->appendChild (newli);     
+       endInsertRows ();
+
+    cData.clear();
+    cData << "new Link end"<<"undef";
+    newli=new XLinkItem(cData) ;       
+    newli->setLink (link);
+    link->setEndLinkItem (newli);
+
+       parix=index(end);
+       n=end->getRowNumAppend(newli);
+       beginInsertRows (parix,n,n);
+       end->appendChild (newli);       
+       endInsertRows ();
+
+    emit (layoutChanged() );
+
+    xlinks.append (link);
+    link->activate();
+
+    latestAddedItem=newli;
+
+    if (!link->getMO() ) 
+    {
+       link->createMapObj();
+       reposition();
+    } else
+        link->updateLink();
+
+    link->setStyleBegin( defXLinkStyleBegin );
+    link->setStyleEnd  ( defXLinkStyleEnd );
+    return true;
+}
+
+QColor VymModel::getXLinkColor()
+{
+    Link *l=getSelectedXLink();
+    if (l)
+       return l->getPen().color();
+    else
+       return QColor();
+}
+
+int VymModel::getXLinkWidth()
+{
+    Link *l=getSelectedXLink();
+    if (l)
+       return l->getPen().width();
+    else
+       return -1;
+}
+
+Qt::PenStyle VymModel::getXLinkPenStyle()
+{
+    Link *l=getSelectedXLink();
+    if (l)
+       return l->getPen().style();
+    else
+       return Qt::NoPen;
+}
+
+QString VymModel::getXLinkStyleBegin()
+{
+    Link *l=getSelectedXLink();
+    if (l)
+       return l->getStyleBeginString();
+    else
+       return QString();
+}
+
+QString VymModel::getXLinkStyleEnd()
+{
+    Link *l=getSelectedXLink();
+    if (l)
+       return l->getStyleEndString();
+    else
+       return QString();
+}
+
+AttributeItem* VymModel::addAttribute()            // Experimental, savestate missing
+
+{
+    BranchItem* selbi=getSelectedBranch();
+    if (selbi)
+    {
+       QList<QVariant> cData;
+       cData << "new attribute" << "undef";
+       AttributeItem *a=new AttributeItem (cData);
+       a->setType (AttributeItem::FreeString);
+       a->setKey   ("Foo Attrib");
+       a->setValue ("Att val");
+
+       if (addAttribute (selbi,a)) return a;
+    }
+    return NULL;
+}
+
+AttributeItem* VymModel::addAttribute(BranchItem *dst,AttributeItem *ai){
+    if (dst)
+    {
+       emit (layoutAboutToBeChanged() );
+
+       QModelIndex parix=index(dst);
+       int n=dst->getRowNumAppend (ai);
+       beginInsertRows (parix,n,n);    
+       dst->appendChild (ai);  
+       endInsertRows ();
+
+       emit (layoutChanged() );
+
+       ai->createMapObj(mapEditor->getScene() );   
+       reposition();
+       return ai;
+    }
+    return NULL;
+}
+
+BranchItem* VymModel::addMapCenter (bool saveStateFlag)
+{
+    if (!hasContextPos) 
+    {
+       // E.g. when called via keypresss:
+       // Place new MCO in middle of existing ones,
+       // Useful for "brainstorming" mode...
+       contextPos=QPointF();
+       BranchItem *bi;
+       BranchObj *bo;
+       for (int i=0;i<rootItem->branchCount();++i)
+       {
+           bi=rootItem->getBranchNum (i);
+           bo=(BranchObj*)bi->getLMO();
+           if (bo) contextPos+=bo->getAbsPos();
+           
+       }           
+       if (rootItem->branchCount()>1) 
+           contextPos*=1/(qreal)(rootItem->branchCount());
+    }
+
+
+    BranchItem *bi=addMapCenter (contextPos);
+    updateActions();
+    emitShowSelection();
+    if (saveStateFlag)
+        saveState (
+            bi,
+            "delete()",
+            NULL,
+            QString ("addMapCenter (%1,%2)").arg (contextPos.x()).arg(contextPos.y()),
+            QString ("Adding MapCenter to (%1,%2)").arg (contextPos.x()).arg(contextPos.y())
+        );
+            emitUpdateLayout();
+    return bi;
+}
+
+BranchItem* VymModel::addMapCenter(QPointF absPos)  
+// createMapCenter could then probably be merged with createBranch
+{
+
+    // Create TreeItem
+    QModelIndex parix=index(rootItem);
+
+    QList<QVariant> cData;
+    cData << "VM:addMapCenter" << "undef";
+    BranchItem *newbi=new BranchItem (cData,rootItem);
+    newbi->setHeadingPlainText (tr("New map", "New map"));
+    int n=rootItem->getRowNumAppend (newbi);
+
+    emit (layoutAboutToBeChanged() );
+    beginInsertRows (parix,n,n);
+
+    rootItem->appendChild (newbi);
+
+    endInsertRows();
+    emit (layoutChanged() );
+
+    // Create MapObj
+    newbi->setPositionMode (MapItem::Absolute);
+    BranchObj *bo=newbi->createMapObj(mapEditor->getScene() );
+    if (bo) bo->move (absPos);
+       
+    return newbi;
+}
+
+BranchItem* VymModel::addNewBranchInt(BranchItem *dst,int pos)
+{
+    // Depending on pos:
+    // -3      insert in children of parent  above selection 
+    // -2      add branch to selection 
+    // -1      insert in children of parent below selection 
+    // 0..n    insert in children of parent at pos
+
+    // Create TreeItem
+    QList<QVariant> cData;
+    cData << "" << "undef";
+
+    BranchItem *parbi = dst;
+    int n;
+    BranchItem *newbi = new BranchItem (cData);        
+
+    emit (layoutAboutToBeChanged() );
+
+    if (pos == -2)
+    {
+       n = parbi->getRowNumAppend (newbi);
+       beginInsertRows (index(parbi), n, n);   
+       parbi->appendChild (newbi); 
+       endInsertRows ();
+    }else if (pos == -1 || pos == -3)
+    {
+       // insert below selection
+       parbi=(BranchItem*)dst->parent();
+       n=dst->childNumber() + (3+pos)/2;   //-1 |-> 1;-3 |-> 0
+       beginInsertRows (index(parbi), n, n);   
+       parbi->insertBranch(n,newbi);   
+       endInsertRows ();
+    } else  
+    {  // pos >= 0
+       n=parbi->getRowNumAppend (newbi) - (parbi->branchCount()-pos);
+       beginInsertRows (index(parbi), n, n);   
+       parbi->insertBranch(pos,newbi); 
+       endInsertRows ();
+    }
+    emit (layoutChanged() );
+
+    newbi->createMapObj(mapEditor->getScene());
+    
+    // Set color of heading to that of parent
+    newbi->setHeadingColor (parbi->getHeadingColor());
+
+    reposition();
+    return newbi;
+}   
+
+BranchItem* VymModel::addNewBranch(BranchItem *bi, int pos)
+{
+    BranchItem *newbi=NULL;
+    if (!bi) bi=getSelectedBranch();
+
+    if (bi)
+    {
+       QString redosel=getSelectString(bi);
+       newbi=addNewBranchInt (bi,pos);
+       QString undosel=getSelectString(newbi);
+
+       if (newbi)
+       {
+           saveState(
+               undosel,        
+               "delete ()",
+               redosel,
+               QString ("addBranch (%1)").arg(pos),
+               QString ("Add new branch to %1").arg(getObjectName(bi)));       
+
+           reposition();
+           latestAddedItem=newbi;
+           // In Network mode, the client needs to know where the new branch is,
+           // so we have to pass on this information via saveState.
+           // TODO: Get rid of this positioning workaround
+           /* FIXME-4  network problem:  QString ps=qpointfToString (newbo->getAbsPos());
+           sendData ("selectLatestAdded ()");
+           sendData (QString("move %1").arg(ps));
+           sendSelection();
+           */
+       }
+    }  
+    return newbi;
+}
+
+
+BranchItem* VymModel::addNewBranchBefore()  
+{
+    BranchItem *newbi=NULL;
+    BranchItem *selbi=getSelectedBranch();
+    if (selbi && selbi->getType()==TreeItem::Branch)
+        // We accept no MapCenter here, so we _have_ a parent
+    {
+       // add below selection
+       newbi=addNewBranchInt (selbi,-1);
+
+       if (newbi)
+       {
+           //newbi->move2RelPos (p);
+
+           // Move selection to new branch
+           relinkBranch (selbi,newbi,0,true);
+
+           // Use color of child instead of parent
+           newbi->setHeadingColor (selbi->getHeadingColor() );
+           emitDataChanged (newbi);
+
+           saveState (newbi, "deleteKeepChildren ()", newbi, "addBranchBefore ()", 
+               QString ("Add branch before %1").arg(getObjectName(selbi)));
+       }
+    }  
+    return newbi;
+}
+
+bool VymModel::relinkBranch (
+    BranchItem *branch, 
+    BranchItem *dst, 
+    int pos, 
+    bool updateSelection,
+    QPointF orgPos)
+{
+    if (branch && dst)
+    {
+       // Check if we relink to ourselves
+       if (dst->isChildOf (branch) ) return false;
+        
+       if (updateSelection) unselectAll();
+       // Do we need to update frame type?
+       bool keepFrame=true;
+        
+       // Save old position for savestate
+       QString preSelStr=getSelectString (branch);
+       QString preNum=QString::number (branch->num(),10);
+       QString preParStr=getSelectString (branch->parent());
+
+       emit (layoutAboutToBeChanged() );
+       BranchItem *branchpi=(BranchItem*)branch->parent();
+       // Remove at current position
+       int n=branch->childNum();
+
+       beginRemoveRows (index(branchpi),n,n);
+       branchpi->removeChild (n);
+       endRemoveRows();
+
+       if (pos<0 ||pos>dst->branchCount() ) pos=dst->branchCount();
+
+       // Append as last branch to dst
+       if (dst->branchCount()==0)
+           n=0;
+       else    
+           n=dst->getFirstBranch()->childNumber(); 
+       beginInsertRows (index(dst),n+pos,n+pos);
+       dst->insertBranch (pos,branch);
+       endInsertRows();
+
+       // Correct type if necessesary
+       if ( branch->getType()==TreeItem::MapCenter && branch->depth() >0 ) 
+       {
+           branch->setType(TreeItem::Branch);
+           keepFrame=false;
+       }
+
+       // reset parObj, fonts, frame, etc in related LMO or other view-objects
+       branch->updateStyles(keepFrame);
+
+        emitDataChanged( branch );
+       reposition();   // both for moveUp/Down and relinking
+
+       // Savestate
+       QString postSelStr=getSelectString(branch);
+       QString postNum=QString::number (branch->num(),10);
+
+       QPointF savePos;
+       LinkableMapObj *lmosel=branch->getLMO();
+       if (lmosel) savePos=lmosel->getAbsPos();
+
+       if (!blockSaveState)
+       {   // Don't build strings when moving up/down
+           QString undoCom="relinkTo (\""+ 
+               preParStr+ "\"," + preNum  +"," + 
+               QString ("%1,%2").arg(orgPos.x()).arg(orgPos.y())+ ")";
+
+           QString redoCom="relinkTo (\""+ 
+               getSelectString (dst)  + "\"," + postNum + "," +
+               QString ("%1,%2").arg(savePos.x()).arg(savePos.y())+ ")";
+
+           saveState (
+               postSelStr,undoCom,
+               preSelStr, redoCom,
+               QString("Relink %1 to %2").arg(getObjectName(branch)).arg(getObjectName(dst)) );
+       }
+
+       // New parent might be invisible
+       branch->updateVisibility();
+
+       if (dst->isScrolled() )
+       {
+           if (updateSelection) select (dst);
+       }
+       else    
+           if (updateSelection) select (branch);
+       return true;
+    }
+    return false;
+}
+
+bool VymModel::relinkImage (ImageItem *image, BranchItem *dst)
+{
+    if (image && dst)
+    {
+       emit (layoutAboutToBeChanged() );
+
+       BranchItem *pi=(BranchItem*)(image->parent());
+       QString oldParString=getSelectString (pi);
+       // Remove at current position
+       int n=image->childNum();
+       beginRemoveRows (index(pi),n,n);
+       pi->removeChild (n);
+       endRemoveRows();
+
+       // Add at dst
+       QModelIndex dstix=index(dst);
+       n=dst->getRowNumAppend (image);
+       beginInsertRows (dstix,n,n+1);  
+       dst->appendChild (image);   
+       endInsertRows ();
+
+       // Set new parent also for lmo
+       if (image->getLMO() && dst->getLMO() )
+           image->getLMO()->setParObj (dst->getLMO() );
+
+       emit (layoutChanged() );
+       saveState(
+           image,
+           QString("relinkTo (\"%1\")").arg(oldParString), 
+           image,
+           QString ("relinkTo (\"%1\")").arg(getSelectString (dst)),
+           QString ("Relink floatimage to %1").arg(getObjectName(dst)));
+       return true;    
+    }
+    return false;
+}
+
+void VymModel::cleanupItems()
+{
+    while (!deleteLaterIDs.isEmpty())
+    {
+       TreeItem *ti=findID (deleteLaterIDs.takeFirst());
+       if (ti) deleteItem (ti);
+    }
+}
+
+void VymModel::deleteLater(uint id)    
+{
+    if (!deleteLaterIDs.contains(id))
+       deleteLaterIDs.append (id);
+}
+
+void VymModel::deleteSelection()    
+{
+    QList <uint> selectedIDs=getSelectedIDs();
+    foreach (uint id, selectedIDs)
+    {
+       TreeItem *ti=findID (id);
+       if (ti && ti->isBranchLikeType ())
+       {   // Delete branch
+           BranchItem *selbi=(BranchItem*)ti;
+           unselectAll();
+           saveStateRemovingPart (selbi, QString ("Delete %1").arg(getObjectName(selbi)));
+
+           BranchItem *pi=(BranchItem*)(deleteItem (selbi));
+           if (pi)
+           {
+               if (pi->isScrolled() && pi->branchCount()==0)
+                   pi->unScroll();
+               emitDataChanged(pi);
+               select (pi);
+           } else
+               emitDataChanged(rootItem); 
+           ti=NULL;            
+       }
+
+       // Delete other item
+       if (ti)
+       {
+           TreeItem *pi=ti->parent(); 
+           if (!pi) return;
+           if (ti->getType()==TreeItem::Image || ti->getType()==TreeItem::Attribute||ti->getType()==TreeItem::XLink)
+           {
+               saveStateChangingPart(
+                   pi, 
+                   ti,
+                   "delete ()",
+                   QString("Delete %1").arg(getObjectName(ti))
+               );
+               unselectAll();
+               deleteItem (ti);
+               emitDataChanged (pi);
+               select (pi);
+               reposition();
+           } else
+               qWarning ("VymmModel::deleteSelection()  unknown type?!");
+       }
+    }
+}
+
+void VymModel::deleteKeepChildren(bool saveStateFlag)
+//deleteKeepChildren FIXME-3+ does not work yet for mapcenters 
+//deleteKeepChildren FIXME-3+ children of scrolled branch stay invisible...
+{
+    BranchItem *selbi=getSelectedBranch();
+    BranchItem *pi;
+    if (selbi)
+    {
+       // Don't use this on mapcenter
+       if (selbi->depth()<1) return;
+
+       pi=(BranchItem*)(selbi->parent());
+       // Check if we have children at all to keep
+       if (selbi->branchCount()==0) 
+       {
+           deleteSelection();
+           return;
+       }
+
+       QPointF p;
+       if (selbi->getLMO()) p=selbi->getLMO()->getRelPos();
+       if (saveStateFlag) saveStateChangingPart(
+           pi,
+           pi,
+           "deleteKeepChildren ()",
+           QString("Remove %1 and keep its children").arg(getObjectName(selbi))
+       );
+
+       QString sel=getSelectString(selbi);
+       unselectAll();
+       bool oldSaveState=blockSaveState;
+       blockSaveState=true;
+       int pos=selbi->num();
+       BranchItem *bi=selbi->getFirstBranch();
+       while (bi)
+       {
+           relinkBranch (bi,pi,pos,true);
+           bi=selbi->getFirstBranch();
+           pos++;
+       }
+       deleteItem (selbi);
+       reposition();
+       emitDataChanged(pi);
+       select (sel);
+       BranchObj *bo=getSelectedBranchObj();
+       if (bo) 
+       {
+           bo->move2RelPos (p);
+           reposition();
+       }
+       blockSaveState=oldSaveState;
+    }  
+}
+
+void VymModel::deleteChildren()            
+
+{
+    BranchItem *selbi=getSelectedBranch();
+    if (selbi)
+    {      
+       saveStateChangingPart(
+           selbi, 
+           selbi,
+           "deleteChildren ()",
+           QString( "Remove children of branch %1").arg(getObjectName(selbi))
+       );
+       emit (layoutAboutToBeChanged() );
+
+       QModelIndex ix=index (selbi);
+       int n=selbi->branchCount()-1;
+       beginRemoveRows (ix,0,n);
+       removeRows (0,n+1,ix);
+       endRemoveRows();
+       if (selbi->isScrolled()) unscrollBranch (selbi);
+       emit (layoutChanged() );
+       reposition();
+    }  
+}
+
+TreeItem* VymModel::deleteItem (TreeItem *ti)
+{
+    if (ti)
+    {
+       TreeItem *pi=ti->parent();
+       //qDebug()<<"VM::deleteItem  start ti="<<ti<<"  "<<ti->getHeading()<<"  pi="<<pi<<"="<<pi->getHeading();
+
+       TreeItem::Type t=ti->getType();
+       
+       QModelIndex parentIndex=index(pi);
+
+       emit (layoutAboutToBeChanged() );
+
+       int n=ti->childNum();
+       beginRemoveRows (parentIndex,n,n);
+       removeRows (n,1,parentIndex);
+       endRemoveRows();
+
+       // Size of parent branch might change when deleting images
+       if (t==TreeItem::Image)
+       {
+           BranchObj *bo=(BranchObj*) ( ((BranchItem*)pi)->getMO() );
+           if (bo) bo->calcBBoxSize();
+       }
+
+       reposition();
+
+       emit (layoutChanged() );
+       emitUpdateQueries ();
+       if (!cleaningUpLinks) cleanupItems();
+
+       //qDebug()<<"VM::deleteItem  end   ti="<<ti;
+       if (pi->depth()>=0) return pi;
+    }  
+    return NULL;
+}
+
+void VymModel::deleteLink(Link* l)  
+{
+    if (xlinks.removeOne (l)) delete (l);
+}
+
+void VymModel::clearItem (TreeItem *ti)
+{
+    if (ti)
+    {
+       // Clear task (or other data in item itself)
+       ti->clear();
+
+       QModelIndex parentIndex=index(ti);
+       if (!parentIndex.isValid()) return;
+
+       int n=ti->childCount();
+       if (n==0) return;
+
+       emit (layoutAboutToBeChanged() );
+
+       beginRemoveRows (parentIndex,0,n-1);
+       removeRows (0,n,parentIndex);
+       endRemoveRows();
+
+
+       reposition();
+
+       emit (layoutChanged() );
+
+    }  
+    return ;
+}
+
+bool VymModel::scrollBranch(BranchItem *bi)
+{
+    if (bi) 
+    {
+       if (bi->isScrolled()) return false;
+       if (bi->branchCount()==0) return false;
+       if (bi->depth()==0) return false;
+       if (bi->toggleScroll())
+       {
+           QString u,r;
+           r="scroll";
+           u="unscroll";
+           saveState(
+               bi,
+               QString ("%1 ()").arg(u),
+               bi,
+               QString ("%1 ()").arg(r),
+               QString ("%1 %2").arg(r).arg(getObjectName(bi))
+           );
+           emitDataChanged(bi);
+           emitSelectionChanged();
+           reposition();
+           mapEditor->getScene()->update(); //Needed for _quick_ update,  even in 1.13.x 
+           return true;
+       }
+    }  
+    return false;
+}
+
+bool VymModel::unscrollBranch(BranchItem *bi)
+{
+    if (bi)
+    {
+       if (!bi->isScrolled()) return false;
+       if (bi->toggleScroll())
+       {
+           QString u,r;
+           u="scroll";
+           r="unscroll";
+           saveState(
+               bi,
+               QString ("%1 ()").arg(u),
+               bi,
+               QString ("%1 ()").arg(r),
+               QString ("%1 %2").arg(r).arg(getObjectName(bi))
+           );
+           emitDataChanged(bi);
+           emitSelectionChanged();
+           reposition();
+           mapEditor->getScene()->update(); //Needed for _quick_ update,  even in 1.13.x 
+           return true;
+       }   
+    }  
+    return false;
+}
+
+void VymModel::toggleScroll()  
+{
+    BranchItem *selbi=getSelectedBranch();
+    if (selbi)
+    {
+       if (selbi->isScrolled())
+           unscrollBranch (selbi);
+       else
+           scrollBranch (selbi);
+       // Note: saveState & reposition are called in above functions
+    }
+}
+
+void VymModel::unscrollChildren() 
+{
+    BranchItem *selbi=getSelectedBranch();
+    if (selbi)
+    {
+       saveStateChangingPart(
+           selbi,
+           selbi,
+           QString ("unscrollChildren ()"),
+           QString ("unscroll all children of %1").arg(getObjectName(selbi))
+       );  
+        BranchItem *prev=NULL;
+        BranchItem *cur=NULL;
+        nextBranch (cur,prev,true,selbi);
+       while (cur) 
+       {
+           if (cur->isScrolled())
+           {
+               cur->toggleScroll(); 
+               emitDataChanged (cur);
+            }
+           nextBranch (cur,prev,true,selbi);
+       }   
+       updateActions();
+       reposition();
+       // Would this help??? emitSelectionChanged();   
+    }  
+}
+
+void VymModel::setScale(qreal xn, qreal yn) 
+{
+    ImageItem *selii=getSelectedImage();
+    if (selii)
+    {
+       qreal sx=selii->getScaleX();
+       qreal sy=selii->getScaleY();
+       selii->setScale (xn,yn);
+       saveState ( 
+           selii,
+           QString ("setScale(%1,%2)").arg(sx).arg(sy),
+           selii,
+           QString ("setScale(%1,%2)").arg(xn).arg(yn),
+           QString ("Scale %1").arg(getObjectName(selii))
+       );  
+       reposition();
+    }  
+}
+
+void VymModel::growSelectionSize()  //FIXME-3 Also for heading in BranchItem?
+{
+    ImageItem *selii=getSelectedImage();
+    if (selii)
+    {
+       qreal f=0.05;
+       qreal sx=selii->getScaleX();
+       qreal sy=selii->getScaleY();
+       setScale (sx+f,sy+f);
+    }  
+}
+
+void VymModel::shrinkSelectionSize() 
+{
+    ImageItem *selii=getSelectedImage();
+    if (selii)
+    {
+       qreal f=0.05;
+       qreal sx=selii->getScaleX();
+       qreal sy=selii->getScaleY();
+       setScale (sx-f,sy-f);
+    }  
+}
+
+void VymModel::resetSelectionSize() 
+{
+    ImageItem *selii=getSelectedImage();
+    if (selii) setScale (1,1);
+}
+
+void VymModel::emitExpandAll() 
+{
+    emit (expandAll() );
+}
+
+void VymModel::emitExpandOneLevel() 
+{
+    emit (expandOneLevel () );
+}
+
+void VymModel::emitCollapseOneLevel()  
+{
+    emit (collapseOneLevel () );
+}
+
+void VymModel::emitCollapseUnselected()        
+{
+    emit (collapseUnselected() );
+}
+
+void VymModel::toggleTarget()  
+{
+    BranchItem *selbi=getSelectedBranch();
+    if (selbi)
+    {
+       selbi->toggleTarget(); 
+       reposition();
+       saveState ( 
+           selbi,
+           "toggleTarget()",
+           selbi,
+           "toggleTarget",
+           "Toggle target");
+    }
+}
+
+ItemList VymModel::getTargets()        
+{
+    ItemList targets;
+    
+    //rmodel->setSearchString (s);
+
+    BranchItem *cur=NULL;
+    BranchItem *prev=NULL;
+    nextBranch(cur,prev);
+
+    while (cur) 
+    {
+       if (cur->hasActiveSystemFlag("system-target"))
+            targets[cur->getID()] = (cur->getHeading()).getTextASCII();
+       nextBranch(cur,prev);
+    }
+    return targets; 
+}
+
+void VymModel::toggleStandardFlag (const QString &name, FlagRow *master)
+{
+    BranchItem *bi=getSelectedBranch();
+    if (bi) 
+    {
+       QString u,r;
+       if (bi->hasActiveStandardFlag(name))
+       {
+           r="unsetFlag";
+           u="setFlag";
+       }   
+       else
+       {
+           u="unsetFlag";
+           r="setFlag";
+       }   
+       saveState(
+           bi,
+           QString("%1 (\"%2\")").arg(u).arg(name), 
+           bi,
+           QString("%1 (\"%2\")").arg(r).arg(name),
+           QString("Toggling standard flag \"%1\" of %2").arg(name).arg(getObjectName(bi)));
+           bi->toggleStandardFlag (name, master);
+       emitDataChanged (bi);
+       reposition();
+    }
+}
+
+void VymModel::addFloatImage (const QImage &img) 
+{
+    BranchItem *selbi=getSelectedBranch();
+    if (selbi)
+    {
+       ImageItem *ii=createImage (selbi);
+       ii->load(img);
+       ii->setOriginalFilename("No original filename (image added by dropevent)"); 
+       QString s=getSelectString(selbi);
+       saveState (PartOfMap, s, "nop ()", s, "copy ()","Copy dropped image to clipboard",ii  );
+       saveState (ii,"delete ()", selbi,QString("paste(%1)").arg(curStep),"Pasting dropped image");
+       reposition();
+    }
+}
+
+
+void VymModel::colorBranch (QColor c)  
+{
+    QList <BranchItem*> selbis=getSelectedBranches();
+    foreach (BranchItem* selbi, selbis)
+    {
+       saveState(
+           selbi, 
+           QString ("colorBranch (\"%1\")").arg(selbi->getHeadingColor().name()),
+           selbi,
+           QString ("colorBranch (\"%1\")").arg(c.name()),
+           QString("Set color of %1 to %2").arg(getObjectName(selbi)).arg(c.name())
+       );  
+       selbi->setHeadingColor(c); // color branch
+       emitDataChanged (selbi);
+       taskEditor->showSelection();
+    }
+    mapEditor->getScene()->update();    
+}
+
+void VymModel::colorSubtree (QColor c, BranchItem *b) 
+{
+    QList <BranchItem*> selbis;
+    if (b) 
+       selbis.append (b);
+    else
+       selbis=getSelectedBranches();
+    foreach (BranchItem *bi,selbis)
+    {
+       saveStateChangingPart(
+           bi,
+           bi,
+           QString ("colorSubtree (\"%1\")").arg(c.name()),
+           QString ("Set color of %1 and children to %2").arg(getObjectName(bi)).arg(c.name())
+       );  
+       BranchItem *prev=NULL;
+       BranchItem *cur=NULL;
+        nextBranch (cur,prev,true,bi);
+       while (cur) 
+       {
+           cur->setHeadingColor(c); // color links, color children
+           emitDataChanged (cur);
+            nextBranch (cur,prev,true,bi);
+       }   
+    }
+    taskEditor->showSelection();
+    mapEditor->getScene()->update();
+}
+
+QColor VymModel::getCurrentHeadingColor()   
+{
+    BranchItem *selbi=getSelectedBranch();
+    if (selbi) return selbi->getHeadingColor();
+       
+    QMessageBox::warning(0,"Warning","Can't get color of heading,\nthere's no branch selected");
+    return Qt::black;
+}
+
+void VymModel::note2URLs()    
+{
+    BranchItem *selbi=getSelectedBranch();
+    if (selbi)
+    {      
+       saveStateChangingPart(
+           selbi,
+           selbi,
+           QString ("note2URLs()"),
+           QString ("Extract URLs from note of %1").arg(getObjectName(selbi))
+       );  
+
+    QString n = selbi->getNoteASCII();
+       if (n.isEmpty()) return;
+       QRegExp re ("(http.*)(\\s|\"|')");
+       re.setMinimal (true);
+
+       BranchItem *bi;
+       int pos = 0;
+       while ((pos = re.indexIn(n, pos)) != -1) 
+       {
+           bi=createBranch (selbi);
+            bi->setHeadingPlainText (re.cap(1));
+           bi->setURL (re.cap(1));
+           emitDataChanged (bi);
+           pos += re.matchedLength();
+       }
+       
+    }
+}
+
+void VymModel::editHeading2URL() 
+{
+    TreeItem *selti=getSelectedItem();
+    if (selti)
+    setURL (selti->getHeadingPlain());
+}   
+
+void VymModel::editBugzilla2URL()   
+{
+    TreeItem *selti=getSelectedItem();
+    if (selti)
+    {      
+    QString h=selti->getHeadingPlain();
+       QRegExp rx("(\\d+)");
+       if (rx.indexIn(h) !=-1)
+           setURL ("https://bugzilla.novell.com/show_bug.cgi?id="+rx.cap(1) );
+    }
+}   
+
+void VymModel::getBugzillaData(bool subtree)   
+{
+    if (!bugzillaClientAvailable)
+    {
+       WarningDialog dia;
+       dia.setText(
+           QObject::tr("No Bugzilla client found. "
+           " For openSUSE you can install by (running as root):\n\n","VymModel, how to install Bugzilla client module")+
+           "  zypper ar http://download.opensuse.org/repositories/openSUSE:/Tools/openSUSE_XX.Y/ openSUSE:Tools_XX.Y\n"+
+           "  zypper in perl-SUSE-BugzillaClient\n\n"+
+           "  and replace XX.Y with your version of openSUSE, e.g. 11.4\n\n"+
+           QObject::tr("Alternatively you can also add the repository\n"
+           "and install the perl module for Bugzilla access using YaST","VymModel, how to install Bugzilla client module")
+       );
+       dia.setWindowTitle(QObject::tr("Warning: Couldn't find Bugzilla client","VymModel"));
+       dia.setShowAgainName("/BugzillaClient/missing");
+       dia.exec();
+       return;
+    }
+    
+    BranchItem *selbi=getSelectedBranch();
+    if (selbi)
+    {      
+       QString url;
+       BranchItem *prev=NULL;
+       BranchItem *cur=NULL;
+        nextBranch (cur,prev,true,selbi);
+       while (cur) 
+       {
+           url=cur->getURL();
+           if (!url.isEmpty())
+           {
+               // Don't run query again if we are in update mode
+               if (!subtree || ! url.contains("buglist.cgi") )
+               {
+                   new BugAgent (cur,url);
+                   mainWindow->statusMessage (tr("Contacting Bugzilla...","VymModel"));
+               }
+           }
+           if (subtree) 
+               nextBranch (cur,prev,true,selbi);
+           else
+               cur=NULL;
+       }   
+    }
+}   
+
+void VymModel::editFATE2URL()
+{
+    TreeItem *selti=getSelectedItem();
+    if (selti)
+    {      
+    QString url= "http://keeper.suse.de:8080/webfate/match/id?value=ID"+selti->getHeadingPlain();
+       saveState(
+           selti,
+           "setURL (\""+selti->getURL()+"\")",
+           selti,
+           "setURL (\""+url+"\")",
+           QString("Use heading of %1 as link to FATE").arg(getObjectName(selti))
+       );  
+       selti->setURL (url);
+       // FIXME-4 updateActions();
+    }
+}   
+
+void VymModel::setVymLink (const QString &s)   //FIXME-4 fail, if s does not exist
+{
+    BranchItem *bi=getSelectedBranch();
+    if (bi)
+    {
+       saveState(
+           bi,
+           "setVymLink (\""+bi->getVymLink()+"\")", 
+           bi,
+           "setVymLink (\""+s+"\")", 
+           QString("Set vymlink of %1 to %2").arg(getObjectName(bi)).arg(s)
+       );  
+       bi->setVymLink(s);
+       emitDataChanged (bi);
+       reposition();
+    }
+}
+
+void VymModel::deleteVymLink()
+{
+    BranchItem *bi=getSelectedBranch();
+    if (bi)
+    {      
+       saveState(
+           bi,
+           "setVymLink (\""+bi->getVymLink()+"\")", 
+           bi,
+           "setVymLink (\"\")",
+           QString("Unset vymlink of %1").arg(getObjectName(bi))
+       );  
+       bi->setVymLink ("");
+       emitDataChanged (bi);
+       reposition();
+       updateActions();
+    }
+}
+
+QString VymModel::getVymLink()
+{
+    BranchItem *bi=getSelectedBranch();
+    if (bi)
+       return bi->getVymLink();
+    else    
+       return "";
+    
+}
+
+QStringList VymModel::getVymLinks() 
+{
+    QStringList links;
+    BranchItem *selbi=getSelectedBranch();
+    BranchItem *cur=NULL;
+    BranchItem *prev=NULL;
+    nextBranch (cur,prev,true,selbi);
+    while (cur) 
+    {
+       if (!cur->getVymLink().isEmpty()) links.append( cur->getVymLink());
+       nextBranch (cur,prev,true,selbi);
+    }  
+    return links;
+}
+
+
+void VymModel::followXLink(int i)   
+{
+    BranchItem *selbi=getSelectedBranch();
+    if (selbi)
+    {
+       selbi=selbi->getXLinkItemNum(i)->getPartnerBranch();
+       if (selbi) select (selbi);
+    }
+}
+
+void VymModel::editXLink()
+{
+    Link *l=getSelectedXLink();
+    if (l) 
+    {
+       EditXLinkDialog dia;
+       dia.setLink (l);
+       if (dia.exec() == QDialog::Accepted)
+       {
+           if (dia.useSettingsGlobal() )
+            {
+               setMapDefXLinkPen( l->getPen() );
+                setMapDefXLinkStyleBegin( l->getStyleBeginString() );
+                setMapDefXLinkStyleEnd( l->getStyleEndString() );
+            }
+       }
+    }   
+}
+
+void VymModel::setXLinkColor(const QString &new_col)
+{
+    Link *l = getSelectedXLink();
+    if (l) 
+    {
+        QPen pen = l->getPen();
+        QColor new_color = QColor( new_col );
+        QColor old_color = pen.color();
+        if (new_color == old_color) return;
+        pen.setColor( new_color);
+        l->setPen( pen );
+        saveState(
+                l->getBeginLinkItem(),
+                QString("setXLinkColor(\"%1\")").arg(old_color.name() ),
+                l->getBeginLinkItem(),
+                QString("setXLinkColor(\"%1\")").arg(new_color.name() ),
+                QString("set color of xlink to %1").arg(new_color.name() ) );
+    }   
+}
+
+void VymModel::setXLinkLineStyle(const QString &new_style)
+{
+    Link *l = getSelectedXLink();
+    if (l) 
+    {
+        QPen pen = l->getPen();
+        QString old_style = penStyleToString( pen.style() );
+        if (new_style == old_style) return;
+        bool ok;
+        pen.setStyle( penStyle(new_style, ok) );
+        l->setPen( pen );
+        saveState(
+                l->getBeginLinkItem(),
+                QString("setXLinkLineStyle(\"%1\")").arg(old_style),
+                l->getBeginLinkItem(),
+                QString("setXLinkLineStyle(\"%1\")").arg(new_style),
+                QString("set style of xlink to %1").arg(new_style) );
+    }   
+}
+
+void VymModel::setXLinkStyleBegin(const QString &new_style)
+{
+    Link *l=getSelectedXLink();
+    if (l) 
+    {
+        QString old_style = l->getStyleBeginString();
+        if (new_style == old_style) return;
+        l->setStyleBegin( new_style );
+        saveState(
+                l->getBeginLinkItem(),
+                QString("setXLinkStyleBegin(\"%1\")").arg(old_style),
+                l->getBeginLinkItem(),
+                QString("setXLinkStyleBegin(\"%1\")").arg(new_style),
+                "set style of xlink begin");
+    }   
+}
+
+void VymModel::setXLinkStyleEnd(const QString &new_style)
+{
+    Link *l=getSelectedXLink();
+    if (l) 
+    {
+        QString old_style = l->getStyleEndString();
+        if (new_style == old_style) return;
+        l->setStyleEnd( new_style );
+        saveState(
+                l->getBeginLinkItem(),
+                QString("setXLinkStyleEnd(\"%1\")").arg(old_style),
+                l->getBeginLinkItem(),
+                QString("setXLinkStyleEnd(\"%1\")").arg(new_style),
+                "set style of xlink end");
+    }   
+}
+
+void VymModel::setXLinkWidth(int new_width)
+{
+    Link *l=getSelectedXLink();
+    if (l) 
+    {
+        QPen pen = l->getPen();
+        int old_width = pen.width();
+        if (new_width == old_width) return;
+        pen.setWidth( new_width);
+        l->setPen( pen );
+        saveState(
+                l->getBeginLinkItem(),
+                QString("setXLinkWidth(%1)").arg(old_width),
+                l->getBeginLinkItem(),
+                QString("setXLinkWidth(%1)").arg(new_width),
+                "set width of xlink");
+    }   
+}
+
+//////////////////////////////////////////////
+// Scripting
+//////////////////////////////////////////////
+
+QVariant VymModel::parseAtom(const QString &atom, bool &noErr, QString &errorMsg)
+{
+    TreeItem* selti=getSelectedItem();
+    BranchItem *selbi=getSelectedBranch();
+    QString s,t;
+    double x,y;
+    int n;
+    bool b,ok;
+    QVariant returnValue="";
+
+    // Split string s into command and parameters
+    parser.parseAtom (atom);
+
+    if (parser.getCommand().length() == 0)
+    {
+        errorMsg.clear();
+        noErr=true;
+        return returnValue;
+    }
+
+    // Check set of parameters
+    if (parser.errorLevel()==NoError && parser.checkParameters(selti) )
+    {
+       QString com=parser.getCommand();
+    // - MS VS2013 compiler has nested if limit - work around that with
+    //   do{}while(0); and breaks
+    do {
+       /////////////////////////////////////////////////////////////////////
+       if (com=="addBranch")  
+       {
+           if (parser.parCount()==0)
+               addNewBranch ();
+           else
+               addNewBranch ( selbi,parser.parInt (ok,0) );
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="addBranchBefore")
+       {
+           addNewBranchBefore ();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com==QString("addMapCenter"))
+       {
+           x=parser.parDouble (ok,0);
+           y=parser.parDouble (ok,1);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com==QString("addMapInsert"))
+       {
+           t=parser.parString (ok,0);  // path to map
+           int contentFilter=0x0000;
+
+           int pc=parser.parCount();
+           int pos=-1; 
+           // Get position
+           if (pc>1)
+           {
+               pos=parser.parInt(ok,1);            // position
+               if (!ok)
+                   parser.setError (Aborted,"Couldn't read position");
+           }
+
+           // Get contentFilter (to filter e.g. slides)
+           if (pc>2)
+           {
+               contentFilter=parser.parInt (ok,2);
+               if (!ok)
+                   parser.setError (Aborted,"Couldn't read content Filter");
+           }
+           
+           if (parser.errorLevel() == NoError)
+           {
+               if (QDir::isRelativePath(t)) 
+                   t=(QDir::currentPath() + "/"+t);
+               saveStateBeforeLoad (ImportAdd, t);
+               if (File::Aborted==loadMap (t,ImportAdd,VymMap,contentFilter,pos) )
+                   parser.setError (Aborted,QString("Couldn't load %1").arg(t) );
+           }   
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com==QString("addMapReplace"))
+       {
+           t=parser.parString (ok,0);  // path to map
+           if (QDir::isRelativePath(t)) 
+               t=(QDir::currentPath() + "/"+t);
+           saveStateBeforeLoad (ImportReplace, t);
+           if (File::Aborted==loadMap (t,ImportReplace,VymMap) )
+               parser.setError (Aborted,QString("Couldn't load %1").arg(t) );
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com==QString("addSlide"))
+       {
+           addSlide();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com==QString("addXLink"))
+       {
+           s=parser.parString (ok,0);  // begin
+           t=parser.parString (ok,1);  // end
+           BranchItem *begin=(BranchItem*)findBySelectString(s);
+           BranchItem *end=(BranchItem*)findBySelectString(t);
+           if (begin && end)
+           {
+               if (begin->isBranchLikeType() && end->isBranchLikeType())
+               {
+                   Link *li=new Link (this);
+                   li->setBeginBranch ( (BranchItem*)begin );
+                   li->setEndBranch ( (BranchItem*)end);
+
+                   createLink (li);
+                   QPen pen=li->getPen();
+                   if (parser.parCount()>2)
+                   {
+                       int w=parser.parInt (ok,2); 
+                       if (ok) pen.setWidth(w);
+                   }
+                   if (parser.parCount()>3)
+                   {
+                       QColor col=parser.parColor (ok,3);
+                       if (ok) pen.setColor (col);
+                   }
+                   if (parser.parCount()>4)
+                   {
+                       QString st0=parser.parString (ok,4);
+                       if (ok)
+                       {
+                           Qt::PenStyle st1=penStyle (st0,ok);
+                           if (ok) 
+                               pen.setStyle (st1);
+                           else        
+                               parser.setError (Aborted, "Couldn't read penstyle");
+                       }
+                   }
+                   if (ok) li->setPen(pen);    
+               }
+               else
+                   parser.setError (Aborted,"begin or end of xLink are not branch or mapcenter");
+               
+           } else
+               parser.setError (Aborted,"Couldn't find begin or end of xLink");
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="branchCount")
+       { 
+           returnValue=selti->branchCount();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="centerCount")
+       { 
+           returnValue=rootItem->branchCount();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="centerOnID")
+       {
+           s=parser.parString(ok,0);
+           TreeItem *ti=findUuid(QUuid(s));
+           if (ti)
+            {
+               LinkableMapObj *lmo=((MapItem*)ti)->getLMO();
+               if (zoomFactor>0 && lmo)
+                   mapEditor->setViewCenterTarget (
+                       lmo->getBBox().center(),
+                       zoomFactor,
+                       rotationAngle,
+                       animDuration,
+                       animCurve);
+                else
+                    qWarning()<<"VymModel::centerOnID failed!";
+           } else
+               parser.setError(Aborted,QString("Could not find ID: \"%1\"").arg(s));
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="clearFlags")
+    {
+        selbi->deactivateAllStandardFlags();
+        reposition();
+        emitDataChanged(selbi);
+        setChanged();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="colorBranch")
+    {
+        QColor c=parser.parColor (ok,0);
+        colorBranch (c);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="colorSubtree")
+    {
+        QColor c=parser.parColor (ok,0);
+        colorSubtree (c);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="copy")
+       {
+           copy();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="cut")
+       {
+               cut();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="cycleTask")
+       {
+           ok=true;
+           if (parser.parCount()==0) b=false;
+           if (parser.parCount()==1) b=parser.parBool(ok,0);
+           if (ok) cycleTaskStatus (b);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="delete")
+       {
+           deleteSelection();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="deleteKeepChildren")
+       {
+           deleteKeepChildren();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="deleteChildren")
+       {
+           deleteChildren();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="deleteSlide")
+       {
+           n = parser.parInt (ok,0);
+           if (!ok || n < 0 || n >= slideModel->count() - 1)
+               parser.setError (Aborted,"Index out of range");
+           else    
+                deleteSlide(n);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="exportAO")
+       {
+           QString fname=parser.parString(ok,0); 
+           exportAO (fname,false);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="exportASCII")
+       {
+       QString fname  = parser.parString(ok, 0);
+       bool listTasks = parser.parBool(ok, 1);
+       exportASCII (listTasks, fname, false);
+       break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="exportCSV")
+       {
+          QString fname=parser.parString(ok,0); 
+          exportCSV (fname,false);
+       break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="exportHTML")
+       {
+           QString path=parser.parString(ok,0); 
+           QString fname=parser.parString(ok,1); 
+           exportHTML (path,fname,false);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="exportImage")
+       {
+           QString fname=parser.parString(ok,0); 
+           QString format="PNG";
+           if (parser.parCount()>=2)
+               format=parser.parString(ok,1);
+           exportImage (fname,false,format);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="exportImpress")
+       {
+           QString fn=parser.parString(ok,0); 
+           QString cf=parser.parString(ok,1); 
+           exportImpress (fn,cf);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="exportLast")
+       {
+           exportLast ();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="exportLaTeX")
+       {
+           QString fname=parser.parString(ok,0); 
+           exportLaTeX (fname,false);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="exportOrgMode")
+       {
+           QString fname=parser.parString(ok,0); 
+           exportOrgMode (fname,false);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="exportPDF")
+       {
+           QString fname=parser.parString(ok,0); 
+           exportPDF(fname,false);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="exportSVG")
+       {
+           QString fname=parser.parString(ok,0); 
+           exportSVG(fname,false);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="exportXML")
+       {
+           QString dpath=parser.parString(ok,0); 
+           QString fpath=parser.parString(ok,1); 
+           exportXML (dpath,fpath,false);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="getDestPath")
+       { 
+           returnValue=getDestPath();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="getFileDir")
+       { 
+           returnValue=getFileDir();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="getFrameType")
+       { 
+           BranchObj *bo=(BranchObj*)(selbi->getLMO());
+           if (!bo)
+               parser.setError (Aborted,"No BranchObj");
+           else
+               returnValue=bo->getFrame()->getFrameTypeName();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="getHeadingPlainText")
+       { 
+            returnValue = getHeading().getTextASCII();
+            break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="getHeadingXML")
+       { 
+            returnValue = getHeading().saveToDir();
+            break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="getMapAuthor")
+       { 
+           returnValue=author;
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="getMapComment")
+       { 
+           returnValue=comment;
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="getMapTitle")
+       { 
+           returnValue=title;
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="getNotePlainText")
+       { 
+            returnValue= getNote().getTextASCII();
+            break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="getNoteXML")
+       { 
+            returnValue= getNote().saveToDir();
+            break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="getSelectString")
+       { 
+           returnValue=getSelectString();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="getTaskSleepDays")
+       { 
+            Task *task=selbi->getTask();
+            if (task)
+                returnValue=task->getDaysSleep();
+            else
+                parser.setError (Aborted,"Branch has no task set");
+            break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="getURL")
+       { 
+           returnValue=selti->getURL();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="getVymLink")
+       { 
+           returnValue=selti->getVymLink();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="getXLinkColor")
+       { 
+           returnValue=getXLinkColor().name();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="getXLinkWidth")
+       { 
+           returnValue=getXLinkWidth();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="getXLinkPenStyle")
+       { 
+           returnValue=penStyleToString( getXLinkPenStyle() );
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="getXLinkStyleBegin")
+       { 
+           returnValue = getXLinkStyleBegin();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="getXLinkStyleEnd")
+       { 
+           returnValue = getXLinkStyleEnd();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="hasActiveFlag")
+       { 
+           s=parser.parString(ok,0);
+           returnValue=selti->hasActiveStandardFlag(s);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="hasNote")
+       {
+           returnValue = !getNote().isEmpty();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="hasRichTextNote")
+       {
+           returnValue=hasRichTextNote();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="hasTask")
+       { 
+            if (selbi && selbi->getTask() )
+                returnValue=true;
+            else
+                returnValue=false;
+            break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="importDir")
+       {
+           s=parser.parString(ok,0);
+           importDirInt(s);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="isScrolled")
+       {
+           returnValue=selbi->isScrolled();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="loadImage")
+       {
+           s=parser.parString(ok,0);
+           loadImage (selbi,s);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="loadNote")
+       {
+           s=parser.parString(ok,0);
+           loadNote (s);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="moveDown")
+       {
+           moveDown();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="moveUp")
+       {
+           moveUp();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="moveSlideUp")
+       {
+           n = parser.parInt (ok, 0);
+           if (!ok || n < 0 || n >= slideModel->count() - 1)
+               parser.setError (Aborted,"Index out of range");
+           else    
+               moveSlideUp(n);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="moveSlideDown")
+       {
+           n = parser.parInt (ok, 0);
+           if (!ok || n < 0 || n >= slideModel->count() - 1)
+               parser.setError (Aborted,"Index out of range");
+           else    
+               moveSlideDown(n);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="move")
+       {
+           x=parser.parDouble (ok,0);
+           y=parser.parDouble (ok,1);
+           move (x,y);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="moveRel")
+       {
+           x=parser.parDouble (ok,0);
+           y=parser.parDouble (ok,1);
+           moveRel (x,y);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="nop")
+       {
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="note2URLs")
+       {
+           note2URLs();
+        break;
+    }
+        /////////////////////////////////////////////////////////////////////
+    if (com=="parseVymText")
+        {
+            s = parser.parString(ok,0);
+            parseVymText( s );
+        break;
+    }
+        /////////////////////////////////////////////////////////////////////
+    if (com=="paste")
+       {
+           paste();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="redo")
+       {
+           redo();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="relinkTo")
+       {
+           if (!selti)
+           {
+               parser.setError (Aborted,"Nothing selected");
+           } else if ( selbi)
+           {
+               if (parser.checkParCount(4))
+               {
+                   // 0        selectstring of parent
+                   // 1        num in parent (for branches)
+                   // 2,3      x,y of mainbranch or mapcenter (for images)
+                   s=parser.parString(ok,0);
+                   TreeItem *dst=findBySelectString (s);
+                   if (dst)
+                   {   
+                       if (dst->getType()==TreeItem::Branch ) 
+                       {
+                           // Get number in parent
+                           n=parser.parInt (ok,1);
+                           if (ok)
+                           {
+                               if (relinkBranch (selbi,(BranchItem*)dst,n,true))
+                                   emitSelectionChanged();
+                               else
+                                   parser.setError(Aborted,"Relinking failed");
+                           }   
+                       } else if (dst->getType()==TreeItem::MapCenter) 
+                       {
+                           if (relinkBranch (selbi,(BranchItem*)dst,-1,true))
+                           {
+                               // Get coordinates of mainbranch
+                               x=parser.parDouble(ok,2);
+                               if (ok)
+                               {
+                                   y=parser.parDouble(ok,3);
+                                   if (ok) 
+                                   {
+                                       if (selbi->getLMO()) 
+                                       {
+                                           ((BranchObj*)selbi->getLMO())->move (x,y);
+                                           ((BranchObj*)selbi->getLMO())->setRelPos();
+                                       }
+                                   }
+                               }
+                               reposition();
+                               emitSelectionChanged();
+                           } else
+                               parser.setError(Aborted,"Relinking failed");
+                       }       
+                   } else
+                       parser.setError (Aborted,"Couldn't find destination branch");
+               }       
+           } else if ( selti->getType() == TreeItem::Image) 
+           {
+               if (parser.checkParCount(1))
+               {
+                   // 0        selectstring of parent
+                   s=parser.parString(ok,0);
+                   TreeItem *dst=findBySelectString (s);
+                   if (dst)
+                   {   
+                       if (dst->isBranchLikeType())
+                           if (!relinkImage ( ((ImageItem*)selti),(BranchItem*)dst))
+                               parser.setError(Aborted,"Relinking failed");
+
+                   } else      
+                       parser.setError (Aborted,"Destination is not a branch");
+               }           
+           } else
+               parser.setError (Aborted,"Type of selection is not a floatimage or branch");
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="saveImage")
+       {
+           ImageItem *ii=getSelectedImage();
+           s=parser.parString(ok,0);
+           t=parser.parString(ok,1);
+           saveImage (ii,t,s);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="saveNote")
+       {
+           s=parser.parString(ok,0);
+           saveNote (s);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="scroll")
+       {
+           if (!scrollBranch (selbi))  
+               parser.setError (Aborted,"Could not scroll branch");
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="select")
+       {
+           s=parser.parString(ok,0);
+           if (!select (s))
+               parser.setError(Aborted,QString("Could not select \"%1\"").arg(s));
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="selectID")
+       {
+           s=parser.parString(ok,0);
+           if (!selectID (s))
+               parser.setError(Aborted,QString("Could not select ID: \"%1\"").arg(s));
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="selectLastBranch")
+       {
+           BranchItem *bi=selbi->getLastBranch();
+           if (!bi)
+               parser.setError (Aborted,"Could not select last branch");
+           select (bi);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="selectLastImage")
+       {
+           ImageItem *ii=selbi->getLastImage();
+           if (!ii)
+               parser.setError (Aborted,"Could not select last image");
+           select (ii);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="selectParent")
+       {
+           selectParent ();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="selectLatestAdded")
+       {
+           if (!latestAddedItem)
+           {
+               parser.setError (Aborted,"No latest added object");
+           } else
+           {   
+               if (!select (latestAddedItem))
+                   parser.setError (Aborted,"Could not select latest added object ");
+           }   
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setFlag")
+       {
+           s=parser.parString(ok,0);
+           selbi->activateStandardFlag(s);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setTaskSleep")
+       {
+           s=parser.parString(ok,0);
+           returnValue=setTaskSleep (s);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setFrameIncludeChildren")
+       {
+           b=parser.parBool(ok,0);
+           setFrameIncludeChildren(b);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setFrameType")
+       {
+           s=parser.parString(ok,0);
+           setFrameType (s);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setFramePenColor")
+       {
+           QColor c=parser.parColor(ok,0);
+           setFramePenColor (c);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setFrameBrushColor")
+       {
+           QColor c=parser.parColor(ok,0);
+           setFrameBrushColor (c);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setFramePadding")
+       {
+           n=parser.parInt(ok,0);
+           setFramePadding(n);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setFrameBorderWidth")
+       {
+           n=parser.parInt(ok,0);
+           setFrameBorderWidth (n);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setHeadingPlainText")
+       {
+           s=parser.parString (ok,0);
+            setHeadingPlainText (s); // FIXME-3  what about RT? Nothing implemented.
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setHideExport")
+       {
+           b=parser.parBool(ok,0);
+           setHideExport (b);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setIncludeImagesHorizontally")
+       { 
+           b=parser.parBool(ok,0);
+           setIncludeImagesHor(b);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setIncludeImagesVertically")
+       {
+           b=parser.parBool(ok,0);
+           if (ok) setIncludeImagesVer(b);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setHideLinkUnselected")
+       {
+           b=parser.parBool(ok,0);
+           setHideLinkUnselected(b);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setMapAnimCurve")
+       {
+           n=parser.parInt(ok,0);
+           if (n<0 || n>QEasingCurve::OutInBounce)
+               parser.setError (Aborted,"Unknown link style");
+           else
+           {
+               QEasingCurve c;
+               c.setType ( (QEasingCurve::Type) n);
+               setMapAnimCurve(c);
+           }
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setMapAnimDuration")
+       {
+           n=parser.parInt(ok,0);
+           setMapAnimDuration(n);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setMapAuthor")
+       {
+           s=parser.parString(ok,0);
+           setAuthor (s);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setMapComment")
+       {
+           s=parser.parString(ok,0);
+           if (ok) setComment(s);
+        break;
+    }
+    if (com=="setMapTitle")
+       {
+           s=parser.parString(ok,0);
+           if (ok) setTitle(s);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setMapBackgroundColor")
+       {
+           QColor c=parser.parColor (ok,0);
+           setMapBackgroundColor (c);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setMapDefLinkColor")
+       {
+           QColor c=parser.parColor (ok,0);
+           setMapDefLinkColor (c);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setMapLinkStyle")
+       {
+           s=parser.parString (ok,0);
+           if (!setMapLinkStyle(s) )
+               parser.setError (Aborted,"Unknown link style");
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setMapRotation")
+       {
+           x=parser.parDouble (ok,0);
+           setMapRotationAngle(x);
+           mapEditor->setAngleTarget(x);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setMapZoom")
+       {
+           x=parser.parDouble (ok,0);
+           setMapZoomFactor(x);
+           mapEditor->setZoomFactorTarget(x);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setNotePlainText")
+       {
+           s=parser.parString (ok,0);
+            VymNote vn;
+            vn.setPlainText(s);
+            setNote (vn);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setScale")
+       {
+           x=parser.parDouble (ok,0);
+           y=parser.parDouble (ok,1);
+           setScale (x,y);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setSelectionColor")
+       {
+           QColor c=parser.parColor (ok,0);
+           setSelectionColorInt (c);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setURL")
+       {
+           s=parser.parString (ok,0);
+           setURL(s);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setVymLink")
+       {
+           s=parser.parString (ok,0);
+           setVymLink(s);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setXLinkColor")
+       {
+           s=parser.parString (ok,0);
+           setXLinkColor(s);     
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setXLinkLineStyle")
+       {
+           s=parser.parString (ok,0);
+           setXLinkLineStyle(s);     
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setXLinkStyleBegin")
+       {
+           s=parser.parString (ok,0);
+           setXLinkStyleBegin(s);     
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setXLinkStyleEnd")
+       {
+           s=parser.parString (ok,0);
+           setXLinkStyleEnd(s);     
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="setXLinkWidth")
+       {
+           n=parser.parInt (ok,0);
+           setXLinkWidth(n);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="sleep")
+       {
+           n=parser.parInt (ok,0);
+           sleep (n);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="sortChildren")
+       {
+           b=false;
+           if (parser.parCount()==1)
+               b=parser.parBool(ok,0);
+           sortChildren(b);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="toggleFlag")
+       {
+           s=parser.parString(ok,0);
+            toggleStandardFlag (s);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="toggleFrameIncludeChildren")
+       {
+           toggleFrameIncludeChildren();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="toggleScroll")
+       {
+           toggleScroll();     
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="toggleTarget")
+       {
+           toggleTarget();     
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="toggleTask")
+       {
+           toggleTask();       
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="undo")
+       {
+           undo();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="unscroll")
+       {
+           if (!unscrollBranch (selbi))    
+               parser.setError (Aborted,"Could not unscroll branch");
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="unscrollChildren")
+       {
+           unscrollChildren ();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="unselectAll")
+       {
+           unselectAll();
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    if (com=="unsetFlag")
+       {
+           s=parser.parString(ok,0);
+           selbi->deactivateStandardFlag(s);
+        break;
+    }
+       /////////////////////////////////////////////////////////////////////
+    //else must be an Unknown command
+           parser.setError (Aborted,"Unknown command");
+    break;
+
+    } while(0); // End of do{}while(0); MS VS2013 nested if bug workaround
+
+    } // end check set of parameters if
+    // Any errors?
+    if (parser.errorLevel()==NoError)
+    {
+        reposition();
+        errorMsg.clear();
+        noErr=true;
+    }
+    else
+    {
+        // TODO Error handling
+        noErr=false;
+        errorMsg=parser.errorMessage();
+        returnValue=errorMsg;
+    }
+    return returnValue;
+}
+
+QVariant VymModel::execute (const QString &script)
+{
+    parser.setScript (script);
+    parser.execute ();
+    QVariant r;
+    bool noErr=true;
+    QString errMsg;
+    while (parser.next() && noErr) 
+    {
+        r=parseAtom(parser.getAtom(),noErr,errMsg);
+        if (!noErr)
+        {
+            if (!options.isOn("batch") && !testmode )
+                QMessageBox::warning(0,tr("Warning"),tr("Script aborted:\n%1").arg(errMsg));
+            qWarning()<< QString("VM::execute aborted: "+errMsg + "\n" + script);
+        }
+    }
+    return r;
+}
+
+void VymModel::setExportMode (bool b)
+{
+    // should be called before and after exports
+    // depending on the settings
+    if (b && settings.value("/export/useHideExport","true")=="true")
+       setHideTmpMode (TreeItem::HideExport);
+    else    
+       setHideTmpMode (TreeItem::HideNone);
+}
+
+QPointF VymModel::exportImage(QString fname, bool askName, QString format)  
+{
+    QPointF offset; // set later, when getting image from MapEditor
+
+    if (fname=="")
+    {
+        if (!askName) 
+        {
+            qWarning("VymModel::exportImage called without filename (and askName==false)");
+            return offset;
+        }
+
+       fname=lastImageDir.absolutePath() + "/" + getMapName()+".png";
+       format="PNG";
+    }  
+
+    ExportBase ex;
+    ex.setName( "Image" );
+    ex.setModel( this );
+    ex.setFilePath( fname );
+    ex.setWindowTitle ( tr("Export map as image") );
+    ex.addFilter( "PNG (*.png);;All (* *.*)" ); //  imageIO.getFilters().join(";;")
+    ex.setLastCommand( settings.localValue(filePath,"/export/last/command","").toString() );
+
+    if (askName)
+    {
+        if (! ex.execDialog() ) return offset;
+        fname = ex.getFilePath();
+        lastImageDir=dirname(fname);
+    }
+
+    setExportMode (true);
+
+    QImage img (mapEditor->getImage(offset));
+    if (!img.save(fname, format.toLocal8Bit()))
+       QMessageBox::critical (0,tr("Critical Error"),tr("Couldn't save QImage %1 in format %2").arg(fname).arg(format));
+    setExportMode (false);
+
+    ex.completeExport();
+
+    return offset;
+}
+
+void VymModel::exportPDF (QString fname, bool askName)
+{
+    if (fname == "")
+    {
+        if (!askName) 
+        {
+            qWarning("VymModel::exportPDF called without filename (and askName==false)");
+            return;
+        }
+
+       fname = lastExportDir.absolutePath() + "/" + getMapName()+".pdf";
+    }  
+
+    ExportBase ex;
+    ex.setName( "PDF" );
+    ex.setModel( this );
+    ex.setFilePath( fname );
+    ex.setWindowTitle ( tr("Export map as PDF") );
+    ex.addFilter( "PDF (*.pdf);;All (* *.*)" );
+    ex.setLastCommand( settings.localValue(filePath,"/export/last/command","").toString() );
+
+    if (askName)
+    {
+        if (! ex.execDialog() ) return;
+        fname = ex.getFilePath();
+    }
+
+    setExportMode (true);
+
+    // To PDF
+    QPrinter printer(QPrinter::HighResolution);
+    printer.setOutputFormat(QPrinter::PdfFormat);
+    printer.setOutputFileName(fname);
+    printer.setPageSize(QPrinter::A3);
+
+    QRectF bbox=mapEditor->getTotalBBox();
+    if (bbox.width()>bbox.height())
+       // recommend landscape
+       printer.setOrientation (QPrinter::Landscape);
+    else    
+       // recommend portrait
+       printer.setOrientation (QPrinter::Portrait);
+
+    QPainter *pdfPainter = new QPainter(&printer);
+    getScene()->render(pdfPainter);
+    pdfPainter->end();
+    delete pdfPainter;
+
+    setExportMode (false);
+
+    ex.completeExport();
+}
+
+QPointF VymModel::exportSVG (QString fname, bool askName) 
+{
+    QPointF offset; // FIXME-3 not needed?
+
+    if (fname=="")
+    {
+        if (!askName) 
+        {
+            qWarning("VymModel::exportSVG called without filename (and askName==false)");
+            return offset;
+        }
+
+       fname=lastImageDir.absolutePath() + "/" + getMapName()+".png";
+    }  
+
+    ExportBase ex;
+    ex.setName( "SVG" );
+    ex.setModel( this );
+    ex.setFilePath( fname );
+    ex.setWindowTitle ( tr("Export map as SVG") );
+    ex.addFilter( "SVG (*.svg);;All (* *.*)" );
+    ex.setLastCommand( settings.localValue(filePath,"/export/last/command","").toString() );
+
+    if (askName)
+    {
+        if (! ex.execDialog() ) return offset;
+        fname = ex.getFilePath();
+        lastImageDir = dirname(fname);
+    }
+
+    setExportMode (true);
+
+    QSvgGenerator generator;
+    generator.setFileName(fname);
+    QSize sceneSize = getScene()->sceneRect().size().toSize();
+    generator.setSize(sceneSize);
+    generator.setViewBox(QRect(0, 0, sceneSize.width(), sceneSize.height()));
+    QPainter *svgPainter = new QPainter(&generator);
+    getScene()->render(svgPainter);
+    svgPainter->end();
+    delete svgPainter;
+
+    setExportMode (false);
+    ex.completeExport();
+
+    return offset;
+}
+
+void VymModel::exportXML (QString dpath, QString fpath, bool useDialog)
+{
+    ExportBase ex;
+    ex.setName( "XML" );
+    ex.setModel( this );
+    ex.setWindowTitle ( tr("Export map as XML") );
+    ex.addFilter( "XML (*.xml);;All (* *.*)" );
+    ex.setLastCommand( settings.localValue(filePath,"/export/last/command","").toString() );
+
+    if (useDialog)
+    {
+       QFileDialog fd;
+       fd.setWindowTitle (vymName+ " - " + tr("Export XML to directory"));
+       fd.setFileMode (QFileDialog::DirectoryOnly);
+       QStringList filters;
+       filters << "XML data (*.xml)";
+       fd.setNameFilters (filters);
+       fd.setConfirmOverwrite (false);
+       fd.setAcceptMode (QFileDialog::AcceptSave);
+
+       QString fn;
+       if (fd.exec() != QDialog::Accepted || fd.selectedFiles().isEmpty() ) return;
+
+       dpath = fd.selectedFiles().first();
+        //dpath = dpath.left(dpath.lastIndexOf("/"));
+       fpath = dpath + "/" + mapName + ".xml";
+
+       if (!reallyWriteDirectory(dpath) ) return;
+    }
+    ex.setFilePath( fpath );
+
+    QString mname = basename(fpath);
+
+    // Hide stuff during export, if settings want this
+    setExportMode (true);
+
+    // Create subdirectories
+    makeSubDirs (dpath);
+
+    // write image and calculate offset (Remember old mapSaved setting while exporting image)
+    bool mchanged = mapChanged;
+    bool munsaved = mapUnsaved;
+
+    QPointF offset = exportImage (dpath + "/images/" + mname + ".png",false,"PNG");
+
+    mapChanged = mchanged;
+    mapUnsaved = munsaved;
+
+    // write to directory   //FIXME-3 check totalBBox here...
+    QString saveFile=saveToDir (dpath , mname + "-", true, offset, NULL); 
+    QFile file;
+
+    file.setFileName (fpath);
+    if ( !file.open( QIODevice::WriteOnly ) )
+    {
+       // This should neverever happen
+       QMessageBox::critical (
+                0,
+                tr("Critical Export Error"),
+                QString("VymModel::exportXML couldn't open %1").arg(file.fileName())
+        );
+       return;
+    }  
+
+    // Write it finally, and write in UTF8, no matter what 
+    QTextStream ts( &file );
+    ts.setCodec("UTF-8");
+    ts << saveFile;
+    file.close();
+
+    setExportMode (false);
+
+    ex.completeExport( QString("\"%1\",\"%2\"").arg(dpath).arg(fpath) );
+}
+
+void VymModel::exportAO (QString fname,bool askName)
+{
+    ExportAO ex;
+    ex.setModel (this);
+    ex.setLastCommand( settings.localValue(filePath,"/export/last/command","").toString() );
+
+    if (fname=="") 
+       ex.setFilePath (mapName+".txt");        
+    else
+       ex.setFilePath (fname);
+
+    if (askName)
+    {
+       ex.setDirPath (lastExportDir.absolutePath());
+       ex.execDialog();
+    } 
+    if (!ex.canceled())
+    {
+       setExportMode(true);
+       ex.doExport();
+       setExportMode(false);
+    }
+}
+
+void VymModel::exportASCII(bool listTasks, const QString &fname, bool askName)
+{
+    ExportASCII ex;
+    ex.setModel (this);
+    ex.setListTasks(listTasks);
+    ex.setLastCommand( settings.localValue(filePath,"/export/last/command","").toString() );
+
+    if (fname=="")
+        ex.setFilePath (mapName+".txt");
+    else
+        ex.setFilePath (fname);
+
+    if (askName)
+    {
+        ex.setDirPath (lastExportDir.absolutePath());
+        ex.execDialog() ;
+    }
+
+    if (!ex.canceled())
+    {
+        setExportMode(true);
+        ex.doExport();
+        setExportMode(false);
+    }
+}
+
+void VymModel::exportCSV(const QString &fname, bool askName)
+{
+    ExportCSV ex;
+    ex.setModel (this);
+    ex.setLastCommand( settings.localValue(filePath,"/export/last/command","").toString() );
+
+    if (fname=="")
+        ex.setFilePath (mapName+".csv");
+    else
+        ex.setFilePath (fname);
+
+    if (askName)
+    {
+        ex.addFilter ("CSV (*.csb);;All (* *.*)");
+        ex.setDirPath (lastExportDir.absolutePath());
+        ex.setWindowTitle(vymName+ " -" +tr("Export as csv")+" "+tr("(still experimental)"));
+        ex.execDialog() ;
+    }
+
+    if (!ex.canceled())
+    {
+        setExportMode(true);
+        ex.doExport();
+        setExportMode(false);
+    }
+}
+
+void VymModel::exportHTML (const QString &dpath, const QString &fpath,bool useDialog)
+{
+    ExportHTML ex (this);
+    ex.setLastCommand( settings.localValue(filePath,"/export/last/command","").toString() );
+
+    if (!dpath.isEmpty()) ex.setDirPath (dpath);
+    if (!fpath.isEmpty()) ex.setFilePath (fpath);
+    setExportMode(true);
+    ex.doExport(useDialog);
+    setExportMode(false);
+}
+
+void VymModel::exportImpress(const QString &fn, const QString &cf) 
+{
+    ExportOO ex;
+    ex.setFilePath (fn);
+    ex.setModel (this);
+    ex.setLastCommand( settings.localValue(filePath,"/export/last/command","").toString() );
+
+    if (ex.setConfigFile(cf)) 
+    {
+        QString lastCommand = settings.localValue(filePath,"/export/last/command","").toString();
+
+        setExportMode (true);
+        ex.exportPresentation();
+        setExportMode (false);
+
+        QString command = settings.localValue(filePath,"/export/last/command","").toString();
+        if (lastCommand != command) setChanged();
+    }
+}
+
+bool VymModel::exportLastAvailable(QString &description, QString &command, QString &path, QString &configFile)
+{
+    command     = settings.localValue(filePath,"/export/last/command","").toString();
+    description = settings.localValue(filePath,"/export/last/description","").toString();
+    path        = settings.localValue(filePath,"/export/last/exportPath","").toString();
+    configFile  = settings.localValue(filePath,"/export/last/configFile","").toString();
+    if (!command.isEmpty() && command.startsWith("export")) 
+       return true;
+    else
+       return false;
+}   
+
+void VymModel::exportLast()
+{
+    QString desc, command, path, configFile;  //FIXME-3 better integrate configFile into command
+    if (exportLastAvailable(desc, command, path, configFile) )
+    {
+        execute (command);
+        /*
+       if (!configFile.isEmpty() && command=="exportImpress")
+           execute (QString ("%1 (\"%2\",\"%3\")").arg(command).arg(path).arg(configFile) );
+       else    
+           execute (QString ("%1 (\"%2\")").arg(command).arg(path) );
+        */
+    }      
+}
+
+void VymModel::exportLaTeX (const QString &fname,bool askName)
+{
+    ExportLaTeX ex;
+    ex.setModel (this);
+    ex.setLastCommand( settings.localValue(filePath,"/export/last/command","").toString() );
+
+    if (fname=="") 
+       ex.setFilePath (mapName+".tex");        
+    else
+       ex.setFilePath (fname);
+
+    if (askName) ex.execDialog() ; 
+    if (!ex.canceled())
+    {
+       setExportMode(true);
+       ex.doExport();
+       setExportMode(false);
+    }
+}
+
+void VymModel::exportOrgMode (const QString &fname, bool askName)
+{
+    ExportOrgMode ex;
+    ex.setModel (this);
+    ex.setLastCommand( settings.localValue(filePath,"/export/last/command","").toString() );
+
+    if (fname=="") 
+       ex.setFilePath (mapName+".org");        
+    else
+       ex.setFilePath (fname);
+
+    if (askName) 
+    {
+       ex.setDirPath (lastExportDir.absolutePath());
+        ex.execDialog();
+    }
+
+    if (!ex.canceled())
+    {
+       setExportMode(true);
+       ex.doExport();
+       setExportMode(false);
+    }
+}
+
+
+//////////////////////////////////////////////
+// View related
+//////////////////////////////////////////////
+
+void VymModel::registerEditor(QWidget *me)
+{
+    mapEditor=(MapEditor*)me;
+}
+
+void VymModel::unregisterEditor(QWidget *)
+{
+    mapEditor=NULL;
+}
+
+void VymModel::setMapZoomFactor (const double &d)
+{
+    zoomFactor=d;
+}
+
+void VymModel::setMapRotationAngle(const double &d)
+{
+    rotationAngle=d;
+}
+
+void VymModel::setMapAnimDuration(const int &d)
+{
+    animDuration=d;
+}
+
+void VymModel::setMapAnimCurve(const QEasingCurve &c)
+{
+    animCurve=c;
+}
+
+void VymModel::setContextPos(QPointF p)
+{
+    contextPos=p;
+    hasContextPos=true;
+}
+
+void VymModel::unsetContextPos()
+{
+    contextPos=QPointF();
+    hasContextPos=false;
+}
+
+void VymModel::updateNoteFlag()
+{
+    TreeItem *selti=getSelectedItem();
+    if (selti)
+    {
+        if (!mapChanged)
+        {
+            setChanged();
+            updateActions();
+        }
+
+        if (noteEditor->isEmpty())
+            selti->clearNote();
+        else
+            selti->setNote(noteEditor->getNote());
+        emitDataChanged(selti);
+        reposition();
+    }
+}
+
+void VymModel::reposition() //FIXME-4 VM should have no need to reposition, but the views...
+{
+    if (blockReposition) return;
+
+    BranchObj *bo;
+    for (int i=0;i<rootItem->branchCount(); i++)
+    {
+       bo=rootItem->getBranchObjNum(i);
+       if (bo)
+           bo->reposition();   //  for positioning heading
+       else
+           qDebug()<<"VM::reposition bo=0";
+    }  
+    mapEditor->getTotalBBox(); 
+    emitSelectionChanged();
+}
+
+
+bool VymModel::setMapLinkStyle (const QString & s)
+{
+    QString snow;
+    switch (linkstyle)
+    {
+       case LinkableMapObj::Line :
+           snow="StyleLine";
+           break;
+       case LinkableMapObj::Parabel:
+           snow="StyleParabel";
+           break;
+       case LinkableMapObj::PolyLine:
+           snow="StylePolyLine";
+           break;
+       case LinkableMapObj::PolyParabel:
+           snow="StylePolyParabel";
+           break;
+       default:    
+           return false;
+           break;
+    }
+
+    saveState (
+       QString("setMapLinkStyle (\"%1\")").arg(s),
+       QString("setMapLinkStyle (\"%1\")").arg(snow),
+       QString("Set map link style (\"%1\")").arg(s)
+    ); 
+
+    if (s=="StyleLine")
+       linkstyle=LinkableMapObj::Line;
+    else if (s=="StyleParabel")
+       linkstyle=LinkableMapObj::Parabel;
+    else if (s=="StylePolyLine")
+       linkstyle=LinkableMapObj::PolyLine;
+    else if (s=="StylePolyParabel") 
+       linkstyle=LinkableMapObj::PolyParabel;
+    else
+       linkstyle=LinkableMapObj::UndefinedStyle;
+
+    BranchItem *cur=NULL;
+    BranchItem *prev=NULL;
+    BranchObj *bo;
+    nextBranch (cur,prev);
+    while (cur) 
+    {
+       bo=(BranchObj*)(cur->getLMO() );
+       bo->setLinkStyle(bo->getDefLinkStyle(cur->parent() ));  //FIXME-4 better emit dataCHanged and leave the changes to View
+       nextBranch(cur,prev);
+    }
+    reposition();
+    return true;
+}
+
+LinkableMapObj::Style VymModel::getMapLinkStyle ()
+{
+    return linkstyle;
+}   
+
+uint VymModel::getModelID()
+{
+    return modelID;
+}
+
+void VymModel::setView (VymView *vv)
+{
+    vymView=vv;
+}
+
+void VymModel::setMapDefLinkColor(QColor col)
+{
+    if ( !col.isValid() ) return;
+    saveState (
+       QString("setMapDefLinkColor (\"%1\")").arg(getMapDefLinkColor().name()),
+       QString("setMapDefLinkColor (\"%1\")").arg(col.name()),
+       QString("Set map link color to %1").arg(col.name())
+    );
+
+    defLinkColor=col;
+    BranchItem *cur=NULL;
+    BranchItem *prev=NULL;
+    BranchObj *bo;
+    nextBranch(cur,prev);
+    while (cur) 
+    {
+       bo=(BranchObj*)(cur->getLMO() );
+       bo->setLinkColor();
+       nextBranch(cur,prev);
+    }
+    updateActions();
+}
+
+void VymModel::setMapLinkColorHintInt()
+{
+    // called from setMapLinkColorHint(lch) or at end of parse
+    BranchItem *cur=NULL;
+    BranchItem *prev=NULL;
+    BranchObj *bo;
+    nextBranch(cur,prev);
+    while (cur) 
+    {
+       bo=(BranchObj*)(cur->getLMO() );
+       bo->setLinkColor();
+       nextBranch(cur,prev);
+    }
+}
+
+void VymModel::setMapLinkColorHint(LinkableMapObj::ColorHint lch)
+{
+    linkcolorhint=lch;
+    setMapLinkColorHintInt();
+}
+
+void VymModel::toggleMapLinkColorHint()
+{
+    if (linkcolorhint==LinkableMapObj::HeadingColor)
+       linkcolorhint=LinkableMapObj::DefaultColor;
+    else    
+       linkcolorhint=LinkableMapObj::HeadingColor;
+    BranchItem *cur=NULL;
+    BranchItem *prev=NULL;
+    BranchObj *bo;
+    nextBranch(cur,prev);
+    while (cur) 
+    {
+       bo=(BranchObj*)(cur->getLMO() );
+       bo->setLinkColor();
+       nextBranch(cur,prev);
+    }
+}
+
+void VymModel::selectMapBackgroundImage ()  // FIXME-3 for using background image: view.setCacheMode(QGraphicsView::CacheBackground);  Also this belongs into ME
+{
+    QStringList filters;
+    filters<< tr("Images") + " (*.png *.bmp *.xbm *.jpg *.png *.xpm *.gif *.pnm)";
+    QFileDialog fd;
+    fd.setFileMode (QFileDialog::ExistingFile);
+    fd.setWindowTitle(vymName + " - " + tr("Load background image"));
+    fd.setDirectory (lastImageDir);
+    fd.setAcceptMode (QFileDialog::AcceptOpen);
+
+    if ( fd.exec() == QDialog::Accepted &&!fd.selectedFiles().isEmpty())
+    {
+       // TODO selectMapBackgroundImg in QT4 use:  lastImageDir=fd.directory();
+       lastImageDir=QDir ( fd.directory().path() );
+       setMapBackgroundImage ( fd.selectedFiles().first() );
+    }
+}   
+
+void VymModel::setMapBackgroundImage (const QString &fn)    //FIXME-3 missing savestate, move to ME
+{
+    /*
+    QColor oldcol=mapEditor->getScene()->backgroundBrush().color();
+    saveState(
+       selection,
+       QString ("setMapBackgroundImage (%1)").arg(oldcol.name()),
+       selection,
+       QString ("setMapBackgroundImage (%1)").arg(col.name()),
+       QString("Set background color of map to %1").arg(col.name()));
+    */ 
+    QBrush brush;
+    brush.setTextureImage (QImage (fn));
+    mapEditor->getScene()->setBackgroundBrush(brush);
+}
+
+void VymModel::selectMapBackgroundColor() 
+{
+    QColor col = QColorDialog::getColor( mapEditor->getScene()->backgroundBrush().color(), NULL);
+    if ( !col.isValid() ) return;
+    setMapBackgroundColor( col );
+}
+
+
+void VymModel::setMapBackgroundColor(QColor col)    // FIXME-4 move to ME
+{
+    QColor oldcol=mapEditor->getScene()->backgroundBrush().color();
+    saveState(
+       QString ("setMapBackgroundColor (\"%1\")").arg(oldcol.name()),
+       QString ("setMapBackgroundColor (\"%1\")").arg(col.name()),
+       QString("Set background color of map to %1").arg(col.name()));
+    mapEditor->getScene()->setBackgroundBrush(col);
+}
+
+QColor VymModel::getMapBackgroundColor()    // FIXME-4 move to ME
+{
+    return mapEditor->getScene()->backgroundBrush().color();
+}
+
+QFont VymModel::getMapDefaultFont ()  
+{
+    return defaultFont;
+}
+
+void VymModel::setMapDefaultFont (const QFont &f)  
+{
+    defaultFont=f;
+}
+
+LinkableMapObj::ColorHint VymModel::getMapLinkColorHint()   // FIXME-4 move to ME
+{
+    return linkcolorhint;
+}
+
+QColor VymModel::getMapDefLinkColor()  // FIXME-4 move to ME
+{
+    return defLinkColor;
+}
+
+void VymModel::setMapDefXLinkPen (const QPen &p)  // FIXME-4 move to ME
+{
+    defXLinkPen=p;
+}
+
+QPen VymModel::getMapDefXLinkPen()     // FIXME-4 move to ME
+{
+    return defXLinkPen;
+}
+
+void VymModel::setMapDefXLinkStyleBegin( const QString &s)
+{
+    defXLinkStyleBegin = s;
+}
+
+QString VymModel::getMapDefXLinkStyleBegin()
+{
+    return defXLinkStyleBegin;
+}
+
+void VymModel::setMapDefXLinkStyleEnd( const QString &s)
+{
+    defXLinkStyleEnd = s;
+}
+
+QString VymModel::getMapDefXLinkStyleEnd()
+{
+    return defXLinkStyleEnd;
+}
+
+void VymModel::move(const double &x, const double &y)
+{
+    MapItem *seli = (MapItem*)getSelectedItem();
+    if (seli && (seli->isBranchLikeType() || seli->getType()==TreeItem::Image))
+    {
+       LinkableMapObj *lmo=seli->getLMO();
+       if (lmo)
+       {
+           QPointF ap(lmo->getAbsPos());
+           QPointF to(x, y);
+           if (ap != to)
+           {
+               QString ps=qpointFToString(ap);
+               QString s=getSelectString(seli);
+               saveState(
+                   s, "move "+ps, 
+                   s, "move "+qpointFToString(to), 
+                   QString("Move %1 to %2").arg(getObjectName(seli)).arg(ps));
+               lmo->move(x,y);
+               reposition();
+               emitSelectionChanged();
+           }
+       }
+    }
+}
+
+void VymModel::moveRel (const double &x, const double &y)   
+{
+    MapItem *seli = (MapItem*)getSelectedItem();
+    if (seli && (seli->isBranchLikeType() || seli->getType()==TreeItem::Image))
+    {
+       LinkableMapObj *lmo=seli->getLMO();
+       if (lmo)
+       {
+           QPointF rp(lmo->getRelPos());
+           QPointF to(x, y);
+           if (rp != to)
+           {
+               QString ps=qpointFToString (lmo->getRelPos());
+               QString s=getSelectString(seli);
+               saveState(
+                   s, "moveRel "+ps, 
+                   s, "moveRel "+qpointFToString(to), 
+                   QString("Move %1 to relative position %2").arg(getObjectName(seli)).arg(ps));
+               ((OrnamentedObj*)lmo)->move2RelPos (x,y);
+               reposition();
+               lmo->updateLinkGeometry();
+               emitSelectionChanged();
+           }
+       }   
+    }
+}
+
+
+void VymModel::animate()   
+{
+    animationTimer->stop();
+    BranchObj *bo;
+    int i=0;
+    while (i<animObjList.size() )
+    {
+       bo=(BranchObj*)animObjList.at(i);
+       if (!bo->animate())
+       {
+           if (i>=0) 
+           {   
+               animObjList.removeAt(i);
+               i--;
+           }
+       }
+       bo->reposition();
+       i++;
+    } 
+    emitSelectionChanged();
+
+    if (!animObjList.isEmpty()) animationTimer->start(animationInterval);
+}
+
+
+void VymModel::startAnimation(BranchObj *bo, const QPointF &v)
+{
+    if (!bo) return;
+
+    if (bo->getUseRelPos())
+       startAnimation (bo,bo->getRelPos(),bo->getRelPos()+v);
+    else
+       startAnimation (bo,bo->getAbsPos(),bo->getAbsPos()+v);
+}
+
+void VymModel::startAnimation(BranchObj *bo, const QPointF &start, const QPointF &dest)
+{
+    if (start==dest) return;
+    if (bo && bo->getTreeItem()->depth()>=0) 
+    {
+       AnimPoint ap;
+       ap.setStart (start);
+       ap.setDest  (dest);
+       ap.setTicks (animationTicks);
+       ap.setAnimated (true);
+       bo->setAnimation (ap);
+       if (!animObjList.contains(bo))
+           animObjList.append( bo );
+       animationTimer->setSingleShot (true);
+       animationTimer->start(animationInterval);
+    }
+}
+
+void VymModel::stopAnimation (MapObj *mo)
+{
+    int i=animObjList.indexOf(mo);
+    if (i>=0)
+       animObjList.removeAt (i);
+}
+
+void VymModel::stopAllAnimation ()
+{
+    BranchObj *bo;
+    int i=0;
+    while (i<animObjList.size() )
+    {
+       bo=(BranchObj*)animObjList.at(i);
+       bo->stopAnimation();
+       bo->requestReposition();
+       i++;
+    } 
+    reposition();
+}
+
+void VymModel::sendSelection()
+{
+    if (netstate!=Server) return;
+    sendData (QString("select (\"%1\")").arg(getSelectString()) );
+}
+
+void VymModel::newServer()
+{
+    port=54321;
+    sendCounter=0;
+    tcpServer = new QTcpServer(this);
+    if (!tcpServer->listen(QHostAddress::Any,port)) {
+        QMessageBox::critical(NULL, "vym server",
+                              QString("Unable to start the server: %1.").arg(tcpServer->errorString()));
+        //FIXME-3 needed? we are no widget any longer... close();
+        return;
+    }
+    connect(tcpServer, SIGNAL(newConnection()), this, SLOT(newClient()));
+    netstate=Server;
+    qDebug()<<"Server is running on port "<<tcpServer->serverPort();
+}
+
+void VymModel::connectToServer()
+{
+    port=54321;
+    server="salam.suse.de";
+    server="localhost";
+    clientSocket = new QTcpSocket (this);
+    clientSocket->abort();
+    clientSocket->connectToHost(server ,port);
+    connect(clientSocket, SIGNAL(readyRead()), this, SLOT(readData()));
+    connect(clientSocket, SIGNAL(error(QAbstractSocket::SocketError)),
+            this, SLOT(displayNetworkError(QAbstractSocket::SocketError)));
+    netstate=Client;       
+    qDebug()<<"connected to "<<qPrintable (server)<<" port "<<port;
+
+    
+}
+
+void VymModel::newClient()
+{
+    QTcpSocket *newClient = tcpServer->nextPendingConnection();
+    connect(newClient, SIGNAL(disconnected()),
+            newClient, SLOT(deleteLater()));
+
+    qDebug() <<"ME::newClient  at "<<qPrintable( newClient->peerAddress().toString() );
+
+    clientList.append (newClient);
+}
+
+
+void VymModel::sendData(const QString &s)
+{
+    if (clientList.size()==0) return;
+
+    // Create bytearray to send
+    QByteArray block;
+    QDataStream out(&block, QIODevice::WriteOnly);
+    out.setVersion(QDataStream::Qt_4_0);
+
+    // Reserve some space for blocksize
+    out << (quint16)0;
+
+    // Write sendCounter
+    out << sendCounter++;
+
+    // Write data
+    out << s;
+
+    // Go back and write blocksize so far
+    out.device()->seek(0);
+    quint16 bs=(quint16)(block.size() - 2*sizeof(quint16));
+    out << bs;
+
+    if (debug)
+       qDebug() << "ME::sendData  bs="<<bs<<"  counter="<<sendCounter<<"  s="<<qPrintable(s);
+
+    for (int i=0; i<clientList.size(); ++i)
+    {
+       //qDebug() << "Sending \""<<qPrintable (s)<<"\" to "<<qPrintable (clientList.at(i)->peerAddress().toString());
+       clientList.at(i)->write (block);
+    }
+}
+
+void VymModel::readData ()
+{
+    while (clientSocket->bytesAvailable() >=(int)sizeof(quint16) )
+    {
+       if (debug)
+           qDebug() <<"readData  bytesAvail="<<clientSocket->bytesAvailable();
+       quint16 recCounter;
+       quint16 blockSize;
+
+       QDataStream in(clientSocket);
+       in.setVersion(QDataStream::Qt_4_0);
+
+       in >> blockSize;
+       in >> recCounter;
+       
+       QString t;
+       in >>t;
+       if (debug)
+           qDebug() << "VymModel::readData  command="<<qPrintable (t);
+       bool noErr;
+       QString errMsg;
+       parseAtom (t,noErr,errMsg);
+
+    }
+    return;
+}
+
+void VymModel::displayNetworkError(QAbstractSocket::SocketError socketError)
+{
+    switch (socketError) {
+    case QAbstractSocket::RemoteHostClosedError:
+        break;
+    case QAbstractSocket::HostNotFoundError:
+        QMessageBox::information(NULL, vymName +" Network client",
+                                 "The host was not found. Please check the "
+                                    "host name and port settings.");
+        break;
+    case QAbstractSocket::ConnectionRefusedError:
+        QMessageBox::information(NULL, vymName + " Network client",
+                                 "The connection was refused by the peer. "
+                                    "Make sure the fortune server is running, "
+                                    "and check that the host name and port "
+                                    "settings are correct.");
+        break;
+    default:
+        QMessageBox::information(NULL, vymName + " Network client",
+                                 QString("The following error occurred: %1.")
+                                 .arg(clientSocket->errorString()));
+    }
+}
+
+void VymModel::downloadImage (const QUrl &url, BranchItem *bi) 
+{
+    if (!bi) bi=getSelectedBranch();
+    if (!bi) 
+    {
+       qWarning ("VM::download bi==NULL");
+       return;
+    }
+
+    // FIXME-3 download img to tmpfile and delete after running script in mainWindow
+    QString script;
+    script += QString("selectID(\"%1\");").arg(bi->getUuid().toString());
+    script += QString("loadImage(\"$TMPFILE\");");
+
+    DownloadAgent *agent = new DownloadAgent(url);
+    agent->setFinishedAction (this, script);
+    connect (agent, SIGNAL (downloadFinished()), mainWindow, SLOT (downloadFinished()));
+    QTimer::singleShot(0, agent, SLOT(execute()));
+}
+
+void VymModel::selectMapSelectionColor()
+{
+    QColor col = QColorDialog::getColor( defLinkColor, NULL);
+    setSelectionColor (col);
+}
+
+void VymModel::setSelectionColorInt (QColor col)
+{
+    if ( !col.isValid() ) return;
+    saveState (
+       QString("setSelectionColor (\"%1\")").arg(mapEditor->getSelectionColor().name()),
+       QString("setSelectionColor (\"%1\")").arg(col.name()),
+       QString("Set color of selection box to %1").arg(col.name())
+    );
+
+    mapEditor->setSelectionColor (col);
+}
+
+void VymModel::emitSelectionChanged(const QItemSelection &newsel)
+{
+    emit (selectionChanged(newsel,newsel)); // needed e.g. to update geometry in editor
+    sendSelection();
+}
+
+void VymModel::emitSelectionChanged()
+{
+    QItemSelection newsel=selModel->selection();
+    emitSelectionChanged (newsel);
+}
+
+void VymModel::setSelectionColor(QColor col)
+{
+    if ( !col.isValid() ) return;
+    setSelectionColorInt (col);
+}
+
+QColor VymModel::getSelectionColor()
+{
+    return mapEditor->getSelectionColor();
+}
+
+void VymModel::setHideTmpMode (TreeItem::HideTmpMode mode)  
+{
+    hidemode=mode;
+    for (int i=0;i<rootItem->branchCount();i++)
+       rootItem->getBranchNum(i)->setHideTmp (mode);
+    reposition();
+    if (mode==TreeItem::HideExport)
+       unselectAll();
+    else
+       reselect();
+
+    qApp->processEvents();
+}
+
+//////////////////////////////////////////////
+// Selection related
+//////////////////////////////////////////////
+
+void VymModel::updateSelection(QItemSelection newsel,QItemSelection dsel)      
+{
+    QModelIndex ix;
+    MapItem *mi;
+    BranchItem *bi;
+    bool do_reposition=false;
+    foreach (ix, dsel.indexes() )
+    {
+       mi = static_cast<MapItem*>(ix.internalPointer());
+       if (mi->isBranchLikeType() )
+           do_reposition=do_reposition || ((BranchItem*)mi)->resetTmpUnscroll();
+       if (mi->getType()==TreeItem::XLink)
+       {
+           Link *li=((XLinkItem*)mi)->getLink();
+           XLinkObj *xlo=li->getXLinkObj();
+           if (xlo) 
+               xlo->setSelection (XLinkObj::Unselected);
+
+           do_reposition=do_reposition || li->getBeginBranch()->resetTmpUnscroll();
+           do_reposition=do_reposition || li->getEndBranch()->resetTmpUnscroll();
+       }
+    }    
+
+    foreach (ix, newsel.indexes() )
+    {
+       mi = static_cast<MapItem*>(ix.internalPointer());
+       if (mi->isBranchLikeType() )
+       {
+           bi=(BranchItem*)mi;
+           if (bi->hasScrolledParent() )
+           {
+               bi->tmpUnscroll();
+               do_reposition=true;
+           }
+       }
+       if (mi->getType()==TreeItem::XLink)
+       {
+           ((XLinkItem*)mi)->setSelection();
+
+           // begin/end branches need to be tmp unscrolled
+           Link *li=((XLinkItem*)mi)->getLink();
+           bi=li->getBeginBranch();
+           if (bi->hasScrolledParent() )
+           {
+               bi->tmpUnscroll();
+               do_reposition=true;
+           }
+           bi=li->getEndBranch();
+           if (bi->hasScrolledParent() )
+           {
+               bi->tmpUnscroll();
+               do_reposition=true;
+           }
+       }
+    }    
+    if ( do_reposition ) reposition();
+}
+
+void VymModel::setSelectionModel (QItemSelectionModel *sm)
+{
+    selModel=sm;
+}
+
+QItemSelectionModel* VymModel::getSelectionModel()
+{
+    return selModel;
+}
+
+void VymModel::setSelectionBlocked (bool b)
+{
+    selectionBlocked=b;
+}
+
+bool VymModel::isSelectionBlocked()
+{
+    return selectionBlocked;
+}
+
+bool VymModel::select (const QString &s)
+{
+    if (s.isEmpty()) return false;
+    TreeItem *ti=findBySelectString(s);
+    if (ti) return select (index(ti));
+    return false;
+}
+
+bool VymModel::selectID (const QString &s)
+{
+    if (s.isEmpty()) return false;
+    TreeItem *ti=findUuid(QUuid(s));
+    if (ti) return select (index(ti));
+    return false;
+}
+
+bool VymModel::select (LinkableMapObj *lmo)
+{
+    QItemSelection oldsel=selModel->selection();
+
+    if (lmo)
+       return select (lmo->getTreeItem() );
+    else    
+       return false;
+}
+
+bool VymModel::selectToggle (TreeItem *ti)
+{
+    if (ti) 
+    { 
+       selModel->select ( index(ti), QItemSelectionModel::Toggle);
+       //appendSelection();    // FIXME-4 selection history not implemented yet for multiselections 
+       return true;
+    }
+    return false;
+}
+
+bool VymModel::select (TreeItem *ti)
+{
+    if (ti) 
+       return select (index(ti));
+    else
+       return false;
+}
+
+bool VymModel::select (const QModelIndex &index) 
+{
+    if (index.isValid() )
+    {
+        TreeItem *ti=getItem (index);
+        if (ti->isBranchLikeType() )
+            ((BranchItem*)ti)->tmpUnscroll();
+        reposition();
+        selModel->select (index,QItemSelectionModel::ClearAndSelect  );
+        appendSelection();
+        return true;
+    }
+    return false;
+}
+
+void VymModel::unselectAll ()    
+{
+    unselect (selModel->selection() );
+}
+
+void VymModel::unselect(QItemSelection desel)  
+{
+    if (!desel.isEmpty())
+    {
+       lastSelectString=getSelectString();
+       selModel->clearSelection(); 
+    }
+}   
+
+bool VymModel::reselect()
+{
+    bool b=select (lastSelectString);
+    return b;
+}   
+
+bool VymModel::canSelectPrevious()
+{
+    if (currentSelection>0)
+       return true;
+    else
+       return false;
+}
+
+bool VymModel::selectPrevious()
+{
+    keepSelectionHistory=true;
+    bool result=false;
+    while (currentSelection>0)
+    {
+       currentSelection--;
+       TreeItem *ti=findID (selectionHistory.at(currentSelection));
+       if (ti) 
+       {
+           result=select (ti);
+           break;
+       } else
+           selectionHistory.removeAt (currentSelection);
+    } 
+    keepSelectionHistory=false;
+    return result;
+}   
+
+bool VymModel::canSelectNext()
+{
+    if (currentSelection < selectionHistory.count()-1 )
+       return true;
+    else
+       return false;
+}
+
+bool VymModel::selectNext()
+{
+    keepSelectionHistory=true;
+    bool result=false;
+    while (currentSelection<selectionHistory.count()-1)
+    {
+       currentSelection++;
+       TreeItem *ti=findID (selectionHistory.at(currentSelection));
+       if (ti) 
+       {
+           result=select (ti);
+           break;
+       } else
+           selectionHistory.removeAt (currentSelection);
+    } 
+    keepSelectionHistory=false;
+    return result;
+}   
+
+void VymModel::resetSelectionHistory()
+{
+    selectionHistory.clear();
+    currentSelection=-1;
+    keepSelectionHistory=false;
+    appendSelection();
+}
+
+void VymModel::appendSelection()    // FIXME-4 history unable to cope with multiple selections
+{
+    uint id=0;
+    TreeItem *ti=getSelectedItem();
+    if (ti && !keepSelectionHistory) 
+    {
+       if (ti->isBranchLikeType())
+           ((BranchItem*)ti)->setLastSelectedBranch();
+       id=ti->getID(); 
+       selectionHistory.append (id);
+       currentSelection=selectionHistory.count()-1;
+       updateActions();
+    }
+}
+
+void VymModel::emitShowSelection()  
+{
+    if (!blockReposition) emit (showSelection() );
+}
+
+void VymModel::emitNoteChanged (TreeItem *ti)
+{
+    QModelIndex ix=index(ti);
+    emit (noteChanged (ix) );
+}
+
+void VymModel::emitDataChanged (TreeItem *ti)    
+{
+    QModelIndex ix=index(ti);
+    emit ( dataChanged (ix,ix) );
+    if (!blockReposition)
+    {
+        if ( ti->isBranchLikeType() && ((BranchItem*)ti)->getTask()  )
+        {
+            taskModel->emitDataChanged ( ((BranchItem*)ti)->getTask() );
+            taskModel->recalcPriorities();
+        }
+    }
+}
+
+void VymModel::emitUpdateQueries ()
+{
+    // Used to tell MainWindow to update query results
+    if (blockReposition) return; 
+    emit (updateQueries (this) );
+}
+void VymModel::emitUpdateLayout()
+{
+    if (settings.value("/mainwindow/autoLayout/use","true")=="true")
+       emit (updateLayout());
+}
+
+bool VymModel::selectFirstBranch()
+{
+    TreeItem *ti=getSelectedBranch();
+    if (ti)
+    {
+       TreeItem *par=ti->parent();
+       if (par) 
+       {
+           TreeItem *ti2=par->getFirstBranch();
+           if (ti2) return  select(ti2);
+       }
+    }      
+    return false;
+}
+
+bool VymModel::selectLastBranch()
+{
+    TreeItem *ti=getSelectedBranch();
+    if (ti)
+    {
+       TreeItem *par=ti->parent();
+       if (par) 
+       {
+           TreeItem *ti2=par->getLastBranch();
+           if (ti2) return select(ti2);
+       }
+    }      
+    return false;
+}
+
+bool VymModel::selectLastSelectedBranch()
+{
+    BranchItem *bi=getSelectedBranch();
+    if (bi)
+    {
+       bi=bi->getLastSelectedBranch();
+       if (bi) return select (bi);
+    }      
+    return false;
+}
+
+bool VymModel::selectLastImage()    
+{
+    TreeItem *ti=getSelectedBranch();
+    if (ti)
+    {
+       TreeItem *par=ti->parent();
+       if (par) 
+       {
+           TreeItem *ti2=par->getLastImage();
+           if (ti2) return select(ti2);
+       }
+    }      
+    return false;
+}
+
+bool VymModel::selectParent()
+{
+    TreeItem *ti=getSelectedItem();
+    TreeItem *par;
+    if (ti)
+    {
+       par=ti->parent();
+       if (par) 
+           return select(par);
+    }      
+    return false;
+}
+
+TreeItem::Type VymModel::selectionType()
+{
+    TreeItem *ti = getSelectedItem();
+    if (ti)
+       return ti->getType();
+    else
+       return TreeItem::Undefined;
+}
+
+LinkableMapObj* VymModel::getSelectedLMO()
+{
+    QModelIndexList list=selModel->selectedIndexes();
+    if (list.count()==1 )
+    {
+       TreeItem *ti = getItem (list.first() );
+       TreeItem::Type type=ti->getType();
+       if (type ==TreeItem::Branch || type==TreeItem::MapCenter || type==TreeItem::Image)
+           return ((MapItem*)ti)->getLMO();
+    }
+    return NULL;
+}
+
+BranchObj* VymModel::getSelectedBranchObj() // convenience function
+{
+    TreeItem *ti = getSelectedBranch();
+    if (ti)
+       return (BranchObj*)(  ((MapItem*)ti)->getLMO());
+    else    
+       return NULL;
+}
+
+BranchItem* VymModel::getSelectedBranch()
+{
+    TreeItem *ti=getSelectedItem();
+    if (ti)
+    {
+       TreeItem::Type type=ti->getType();
+       if (type ==TreeItem::Branch || type==TreeItem::MapCenter)
+           return (BranchItem*)ti;
+    }
+    return NULL;
+}
+
+QList <BranchItem*> VymModel::getSelectedBranches()
+{
+    QList <BranchItem*> bis;
+    foreach (TreeItem *ti,getSelectedItems() )
+    {
+       TreeItem::Type type=ti->getType();
+       if (type ==TreeItem::Branch || type==TreeItem::MapCenter)
+           bis.append ( (BranchItem*)ti );
+    }
+    return bis;
+}
+
+ImageItem* VymModel::getSelectedImage()
+{
+    TreeItem *ti=getSelectedItem();
+    if (ti && ti->getType()==TreeItem::Image)
+       return (ImageItem*)ti;
+    else
+       return NULL;
+}
+
+Task* VymModel::getSelectedTask()
+{
+    BranchItem *selbi=getSelectedBranch();
+    if (selbi)
+       return selbi->getTask();
+    else
+       return NULL;
+}
+
+Link* VymModel::getSelectedXLink()
+{
+    XLinkItem *xli=getSelectedXLinkItem();
+    if (xli) return xli->getLink();
+    return NULL;
+}
+
+XLinkItem* VymModel::getSelectedXLinkItem()
+{
+    TreeItem *ti=getSelectedItem();
+    if (ti && ti->getType()==TreeItem::XLink)
+       return (XLinkItem*)ti;
+    else
+       return NULL;
+}
+
+AttributeItem* VymModel::getSelectedAttribute()        
+{
+    TreeItem *ti=getSelectedItem();
+    if (ti && ti->getType()==TreeItem::Attribute)
+       return (AttributeItem*)ti;
+    else
+       return NULL;
+}
+
+TreeItem* VymModel::getSelectedItem()  
+{
+    if (!selModel) return NULL;
+    QModelIndexList list=selModel->selectedIndexes();
+    if (list.count()==1 )
+       return getItem (list.first() );
+    else    
+       return NULL;
+}
+
+QList <TreeItem*> VymModel::getSelectedItems() 
+{
+    QList <TreeItem*> l;
+    if (!selModel) return l;
+    QModelIndexList list=selModel->selectedIndexes();
+    foreach (QModelIndex ix,list)
+       l.append (getItem (ix) );
+    return l;
+}
+
+QModelIndex VymModel::getSelectedIndex()
+{
+    QModelIndexList list=selModel->selectedIndexes();
+    if (list.count()==1 )
+       return list.first();
+    else
+       return QModelIndex();
+}
+
+QList <uint> VymModel::getSelectedIDs()
+{
+    QList <uint> uids;
+    foreach (TreeItem* ti,getSelectedItems() )
+       uids.append (ti->getID() );
+    return uids;       
+}
+
+bool VymModel::isSelected(TreeItem *ti)
+{
+    return getSelectedItems().contains (ti);
+}
+
+QString VymModel::getSelectString ()
+{
+    return getSelectString (getSelectedItem());
+}
+
+QString VymModel::getSelectString (LinkableMapObj *lmo)        // only for convenience. Used in MapEditor
+{
+    if (!lmo) return QString();
+    return getSelectString (lmo->getTreeItem() );
+}
+
+QString VymModel::getSelectString (TreeItem *ti) 
+{
+    QString s;
+    if (!ti || ti->depth()<0) return s;    
+    switch (ti->getType())
+    {
+       case TreeItem::MapCenter: s="mc:"; break;
+       case TreeItem::Branch: s="bo:";break;
+       case TreeItem::Image: s="fi:";break;
+       case TreeItem::Attribute: s="ai:";break;
+       case TreeItem::XLink: s="xl:";break;
+       default:
+           s="unknown type in VymModel::getSelectString()";
+           break;
+    }
+    s=  s + QString("%1").arg(ti->num());
+    if (ti->depth() >0)
+       // call myself recursively
+       s= getSelectString(ti->parent()) +","+s;
+    return s;
+}
+
+QString VymModel::getSelectString (BranchItem *bi) 
+{
+    return getSelectString ((TreeItem*)bi);
+}
+
+QString VymModel::getSelectString (const uint &i)
+{
+    return getSelectString ( findID (i) );
+}
+
+SlideModel* VymModel::getSlideModel()
+{
+    return slideModel;
+}
+
+int VymModel::slideCount() 
+{
+    return slideModel->count();
+}
+
+SlideItem* VymModel::addSlide()  
+{
+    SlideItem *si=slideModel->getSelectedItem();  
+    if (si)
+       si=slideModel->addSlide (NULL,si->childNumber()+1 );
+    else
+       si=slideModel->addSlide();
+    
+    TreeItem *seli=getSelectedItem();
+
+    if (si && seli)
+    {
+       QString inScript;
+        if (!loadStringFromDisk(macroPath + "slideeditor-snapshot.vys", inScript) )
+        {
+            qWarning()<<"VymModel::addSlide couldn't load template for taking snapshot";
+            return NULL;
+        }
+
+        inScript.replace("CURRENT_ZOOM", QString().setNum(getMapEditor()->getZoomFactorTarget()) );
+        inScript.replace("CURRENT_ANGLE", QString().setNum(getMapEditor()->getAngleTarget()) );
+        inScript.replace("CURRENT_ID", "\"" + seli->getUuid().toString() + "\"");
+
+       si->setInScript(inScript);
+    slideModel->setData ( slideModel->index(si), seli->getHeadingPlain() );
+    }
+    QString s="<vymmap>" + si->saveToDir() + "</vymmap>";
+    int pos=si->childNumber();
+    saveState (
+       PartOfMap,
+       getSelectString(), QString("deleteSlide (%1)").arg(pos),
+       getSelectString(), QString("addMapInsert (\"PATH\",%1)").arg(pos),
+       "Add slide",
+       NULL,
+       s );
+    return si;
+}
+
+void VymModel::deleteSlide(SlideItem *si)  
+{
+    if (si)
+    {
+       QString s="<vymmap>" + si->saveToDir() + "</vymmap>";
+       int pos=si->childNumber();
+       saveState (
+           PartOfMap,
+           getSelectString(), QString("addMapInsert (\"PATH\",%1)").arg(pos),
+           getSelectString(), QString("deleteSlide (%1)").arg(pos),
+           "Delete slide",
+           NULL,
+           s );
+       slideModel->deleteSlide (si);
+    }
+}
+
+void VymModel::deleteSlide(int n)  
+{
+    deleteSlide (slideModel->getSlide (n));
+}
+
+void VymModel::relinkSlide(SlideItem *si, int pos)
+{
+    if (si && pos>=0) 
+       slideModel->relinkSlide (si, si->parent(), pos);
+}
+
+void VymModel::moveSlideUp(int n)  
+{
+    SlideItem *si=NULL;
+    if (n<0) // default if called without parameters
+    {
+       si=slideModel->getSelectedItem();
+       if (si) n=si->childNumber();
+    } else
+       si=slideModel->getSlide(n);
+    if (si && n>0 && n<slideModel->count())
+    {
+       blockSlideSelection=true;
+       slideModel->relinkSlide (si, si->parent(), n-1);
+       blockSlideSelection=false;
+       saveState (
+           getSelectString(),QString("moveSlideDown (%1)").arg(n-1),
+           getSelectString(),QString("moveSlideUp (%1)").arg(n),
+           QString("Move slide %1 up").arg(n));
+    }
+}
+
+void VymModel::moveSlideDown(int n)   
+{
+    SlideItem *si=NULL;
+    if (n<0) // default if called without parameters
+    {
+       si=slideModel->getSelectedItem();
+       if (si) n=si->childNumber();
+    } else
+       si=slideModel->getSlide(n);
+    if (si && n>=0 && n < slideModel->count()-1)
+    {
+       blockSlideSelection=true;
+       slideModel->relinkSlide (si, si->parent(), n+1);
+       blockSlideSelection=false;
+       saveState (
+           getSelectString(),QString("moveSlideUp (%1)").arg(n+1),
+           getSelectString(),QString("moveSlideDown (%1)").arg(n),
+           QString("Move slide %1 down").arg(n));
+    }
+}
+
+void VymModel::updateSlideSelection (QItemSelection newsel,QItemSelection)
+{
+    if (blockSlideSelection) return;
+    QModelIndex ix;
+    foreach (ix,newsel.indexes() )
+    {
+       SlideItem *si= static_cast<SlideItem*>(ix.internalPointer());
+       QString inScript=si->getInScript();
+
+       // show inScript in ScriptEditor
+       scriptEditor->setSlideScript(modelID, si->getID(), inScript );
+
+       // Execute inScript 
+       execute (inScript);
+    }
+}
diff --git a/vymmodel.h b/vymmodel.h
new file mode 100644 (file)
index 0000000..1c85b93
--- /dev/null
@@ -0,0 +1,828 @@
+#ifndef VYMMODEL_H
+#define VYMMODEL_H
+
+#include <QtNetwork>
+
+#include <QPointF>
+#include <QTextCursor>
+
+#if defined(VYM_DBUS)
+#include "adaptormodel.h"
+#endif
+
+#include "file.h"
+#include "branchitem.h"
+#include "imageitem.h"
+#include "mapeditor.h"
+#include "parser.h"
+#include "treeitem.h"
+#include "treemodel.h"
+#include "vymlock.h"
+
+class AttributeItem;
+class BranchItem;
+class FindResultModel;
+class Link;
+class MapEditor;
+class SlideItem;
+class SlideModel;
+class Task;
+class XLinkItem;
+class VymView;
+
+class QGraphicsScene;
+
+typedef QMap<uint,QString> ItemList ;
+
+class VymModel :  public TreeModel {       
+    Q_OBJECT
+    Q_CLASSINFO("D-Bus Interface", "org.insilmaril.vym.VymModel-h")
+
+////////////////////////////////////////////
+// General housekeeping
+////////////////////////////////////////////
+private:
+    QString version;   //!< version string saved in vym file
+    QString title;
+    QString author;
+    QString comment;
+    QDate date;
+
+    static uint idLast;            //! the last used unique ID
+    uint modelID;
+
+public:
+    VymModel();
+    ~VymModel ();
+    void clear();
+    void init();
+    void makeTmpDirectories();     //!< create temporary directories e.g. for history
+
+    MapEditor* getMapEditor();         
+    uint getModelID();                 //! Return unique ID of model
+
+    void setView (VymView*);       //! Set vymView for resizing editors after load
+private:
+    VymView *vymView;
+
+public:
+    bool isRepositionBlocked();            //!< While load or undo there is no need to update graphicsview
+    void updateActions();          //!< Update buttons in mainwindow
+
+
+////////////////////////////////////////////
+// Load/save 
+////////////////////////////////////////////
+private:
+
+    bool zipped;               // should map be zipped
+    static  int mapNum;                // unique number for model used in save/undo
+    FileType fileType;         // type of file, e.g. vym, freemind...
+    QString fileName;          // short name of file (for tab)
+                               // example.vym
+
+    QString filePath;          // path to file which will be saved
+                               // /home/tux/example.vym
+
+    QString fileDir;           // dir where file is saved
+                               // /home/tux/
+
+    QString destPath;          // path to .vym file (needed for vymlinks)
+                               // /home/tux/example.vym
+
+    QString mapName;           // fileName without ".vym"
+                               // example
+
+    QString tmpMapDir;         // tmp directory with undo history
+
+    QTimer *autosaveTimer;
+    QTimer *fileChangedTimer;
+    QDateTime fileChangedTime;
+
+public:
+    /*! This function saves all information of the map to disc.
+       saveToDir also calls the functions for all BranchObj and other objects in the map.
+       The structure of the map itself is returned as QString and passed back to Main, 
+       where saveToDir is called initially
+    */ 
+    QString saveToDir (const QString &tmpdir, const QString &prefix, bool writeflags, const QPointF &offset, TreeItem *saveSel);
+
+    /*! Save all data in tree*/
+    QString saveTreeToDir (const QString&,const QString&,const QPointF&,QList <Link*> &tmpLinks);// Save data recursivly to tempdir
+
+
+    /*! \brief Sets filepath, filename and mapname
+
+        If the filepath is "/home/tux/map.xml", then the filename will be set
+        to map.xml. The destname is needed for vymLinks, pointing to another map. 
+        The destname holds the real name of the file, after it has been compressed, e.g. "map.vym"
+    */  
+
+
+    /*! \brief Set File path
+
+        The destname is needed to construct the references between maps
+    */  
+    void setFilePath (QString filepath,QString destname);   
+    void setFilePath (QString);        //!< Overloaded for convenience
+    QString getFilePath (); //!< Full path e.g. "/home/tux/map.xml"
+    QString getFileDir ();  //!< e.g. "/home/tux"
+    QString getFileName (); //!< e.g. "map.xml"
+    QString getMapName ();  //!< e.g. "map"
+    QString getDestPath (); //!< e.g. "/home/tux/map.vym"
+
+    bool parseVymText(const QString &s);
+
+    /*! \brief Load map
+
+       The data is read from file. Depending on LoadMode the current
+       selection gets replaced by data or the data is appended.
+    */ 
+    File::ErrorCode loadMap  (
+       QString,                        //!< Path
+       const LoadMode &lmode=NewMap,   //!< New map, replace or add to selection
+       const FileType &ftype=VymMap,   //!< VymMap or FreeMind
+       const int &contentFilter=0x0000,//!< For undo types of content can be filterd
+       int pos=-1                      //!< Optionally tell position where to add data
+    ); 
+
+public:
+    /*! \brief Save the map to file */
+    File::ErrorCode save(const SaveMode &);    
+
+public:        
+    void loadImage (BranchItem *dst=NULL, const QString &fn="");
+    void saveImage (ImageItem *ii=NULL, QString format="", QString fn="");
+
+private:    
+    void importDirInt(BranchItem *,QDir);
+    void importDirInt(const QString&);
+public:        
+    void importDir();
+
+    bool tryVymLock();
+    bool renameMap( const QString &newPath); //! Rename map and change lockfile
+    void setReadOnly( bool b );
+    bool isReadOnly();
+
+private:
+    VymLock  vymLock;       //! Handle lockfiles and related information
+    bool readonly;          //! if map is locked, it can be opened readonly
+
+private slots:
+    void autosave ();
+    void fileChanged();
+
+////////////////////////////////////////////
+// history (undo/redo)
+////////////////////////////////////////////
+private:
+    bool mapDefault;           //!< Flag if map is untouched
+    bool mapChanged;           //!< Flag if undo is possible
+    bool mapUnsaved;           //!< Flag if map should be saved
+
+    QString histPath;          //!< Path to history file
+    SimpleSettings undoSet;    //!< undo/redo commands, saved in histPath
+    int stepsTotal;            //!< total number of steps (undos+redos)
+    int curStep;               //!< Current step in history (ring buffer)
+    int curClipboard;          //!< number of history step, which is the current clipboard
+    int redosAvail;            //!< Available number of redo steps
+    int undosAvail;            //!< Available number of undo steps
+    bool blockReposition;      //!< block while load or undo
+    bool blockSaveState;       //!< block while load or undo
+public:
+    bool isDefault();          //!< true, if map is still the empty default map
+    void makeDefault();                //!< Reset changelog, declare this as default map
+    bool hasChanged()  ;       //!< true, if something has changed and is not saved yet
+    void setChanged();         //!< called from TextEditor via LinkableMapObj
+
+    /*! \brief Get name of object
+      
+      Returns heading of a branch or name of an object for use in comment
+      of undo/redo history
+    */ 
+    QString getObjectName(LinkableMapObj*); 
+    QString getObjectName(TreeItem*);  
+
+    void redo();                       //!< Redo last action
+    bool isRedoAvailable();            //!< True, if redo is available
+    void undo();                       //!< Undo last action
+    bool isUndoAvailable();            //!< True, if undo is available
+    void gotoHistoryStep (int);                //!< Goto a specifig step in history
+
+
+    QString getHistoryPath();          //!< Path to directory containing the history
+    void resetHistory();               //!< Initialize history
+
+    /*! \brief Save the current changes in map 
+
+       Two commands and selections are saved:
+
+           - undocommand and undoselection to undo the change
+           - redocommand and redoselection to redo the action after an undo
+
+       Additionally a comment is logged. 
+
+    */ 
+    void saveState(
+       const SaveMode& savemode, 
+       const QString &undoSelection, 
+       const QString &undoCommand, 
+       const QString &redoSelection, 
+       const QString &redoCommand, 
+       const QString &comment, 
+       TreeItem *saveSelection,
+       QString dataXML="");
+
+    /*! Overloaded for convenience */
+    void saveStateChangingPart(
+       TreeItem *undoSelection, 
+       TreeItem* redoSelection, 
+       const QString &redoCommand, 
+       const QString &comment);
+
+    /*! Overloaded for convenience */
+    void saveStateRemovingPart(
+       TreeItem *redoSelection, 
+       const QString &comment);
+
+    /*! Overloaded for convenience */
+    void saveState(
+       TreeItem *undoSelection, 
+       const QString &undoCommand, 
+       TreeItem *redoSelection, 
+       const QString &redoCommand, 
+       const QString &comment); 
+
+    /*! Overloaded for convenience */
+    void saveState(
+       const QString &undoSelection, 
+       const QString &undoCommand, 
+       const QString &redoSelection, 
+       const QString &redoCommand, 
+       const QString &comment) ;
+
+    /*! Overloaded for convenience */
+    void saveState(
+       const QString &undoCommand, 
+       const QString &redoCommand, 
+       const QString &comment) ;
+
+    /*! Save a change in string and merge
+       minor sequential  changes  */
+    void saveStateMinimal(
+       TreeItem *undoSelection, 
+       const QString &undoCommand, 
+       TreeItem *redoSelection, 
+       const QString &redoCommand, 
+       const QString &comment); 
+       
+    /*! Save state before loading a map */
+    void saveStateBeforeLoad (
+       LoadMode lmode,
+       const QString &fname);
+
+////////////////////////////////////////////
+// unsorted so far
+////////////////////////////////////////////
+public:
+    QGraphicsScene *getScene();
+
+    TreeItem* findBySelectString (QString s);      
+    TreeItem* findID   (const uint &i);            // find MapObj by unique ID
+    TreeItem* findUuid (const QUuid &i);    // find MapObj by unique ID
+
+
+////////////////////////////////////////////
+// Interface 
+////////////////////////////////////////////
+public:
+    void setVersion(const  QString &);
+    QString getVersion();
+    void setTitle  (const QString &);
+    QString getTitle ();
+    void setAuthor  (const QString &);
+    QString getAuthor ();
+    void setComment (const QString &);
+    QString getComment ();
+    QString getDate();
+    int branchCount();
+
+    void setSortFilter (const QString &);
+    QString getSortFilter ();
+protected:  
+    QString sortFilter;
+signals:
+    void sortFilterChanged (QString );     //!< Notify editors of new filter
+
+public:
+    void setHeading(const VymText &vt, BranchItem *bi=NULL);       //!< Set heading of item
+    void setHeadingPlainText(const QString &s, BranchItem *bi=NULL);   //!< Set heading of item
+    Heading getHeading();                      //!< Get heading of item
+    void setNote(const VymNote &vn);    //!< Set note text
+    VymNote getNote();                         //!< Get note text
+    bool hasRichTextNote();             //!< Check type of vymText used
+    void loadNote (const QString &fn); //!< Load note from file
+    void saveNote (const QString &fn); //!< Save note to file
+
+private:
+    BranchItem* findCurrent;               // next object in find process
+    BranchItem* findPrevious;              // next object in find process
+    bool EOFind;                           // true, if search failed
+
+public:
+    void findDuplicateURLs();              // find duplicate URLs, testing only so far
+    bool findAll (FindResultModel*, QString s, Qt::CaseSensitivity cs=Qt::CaseInsensitive);    // Search all objects at once, also notes
+    BranchItem* findText(QString s,Qt::CaseSensitivity cs); // Find object, also in note
+    void findReset();                      // Reset Search
+private:    
+    QString findString;
+
+public:
+    void setURL(QString url);
+    QString getURL();                      // returns URL of selection or ""
+    QStringList getURLs(bool ignoreScrolled=true);  // returns URLs of subtree
+
+
+    void setFrameType(const FrameObj::FrameType &);
+    void setFrameType(const QString &);
+    void toggleFrameIncludeChildren ();
+    void setFrameIncludeChildren (bool);
+    void setFramePenColor (const QColor &);
+    void setFrameBrushColor (const QColor &);
+    void setFramePadding (const int &);
+    void setFrameBorderWidth (const int &);
+    void setIncludeImagesVer(bool);
+    void setIncludeImagesHor(bool);
+    void setChildrenLayout(BranchItem::LayoutHint layoutHint);
+    void setHideLinkUnselected (bool);
+
+    /*! Should object be hidden in exports (clouded)? */
+    void setHideExport(bool, TreeItem* ti=NULL);               
+
+    /*! Should object be hidden in exports (clouded)? */
+    void toggleHideExport();       
+
+    /*! Toggle task for branch */
+    void toggleTask();     
+
+    /*! Cycle through task states */
+    void cycleTaskStatus(bool reverse=false);      
+
+    /*! Set task to sleep for number of days or until a given date*/
+    bool setTaskSleep(const QString &s);
+    /*! count tasks in this model */
+    int taskCount();
+
+    void addTimestamp();       
+
+    void copy();                       //!< Copy to clipboard
+public:        
+    void paste();          //!< Paste clipboard to branch and backup
+    void cut();                    //!< Cut to clipboard (and copy)
+
+    bool moveUp(BranchItem *bi);    //!< Move branch up without saving state
+    void moveUp();                 //!< Move branch up with saving state
+    bool moveDown(BranchItem *bi);  //!< Move branch down without saving state
+    void moveDown();       //!< Move branch down
+    void detach();                 //!< Detach branch and use as new mapcenter
+    void sortChildren(bool inverse=false);  //!< Sort children lexically
+
+    // The create methods are used to quickly parse a XML file
+    BranchItem* createMapCenter();             //!< Create MapCenter 
+    BranchItem* createBranch(BranchItem *dst); //!< Create Branch
+    ImageItem* createImage(BranchItem *dst);   //!< Create image
+
+public:        
+    bool createLink(Link *l);  //!< Create XLink, will create MO automatically if needed 
+    QColor getXLinkColor();
+    int getXLinkWidth();
+    Qt::PenStyle getXLinkPenStyle();
+    QString getXLinkStyleBegin();
+    QString getXLinkStyleEnd();
+
+    AttributeItem* addAttribute();
+    AttributeItem* addAttribute(BranchItem *dst, AttributeItem* );
+
+    /*! \brief Add new mapcenter
+
+       Disclaimer: Still experimental, not fully supported yet.
+    */ 
+    BranchItem* addMapCenter(bool saveStateFlag=true);
+private:    
+    BranchItem* addMapCenter(QPointF absPos);
+
+    /*! \brief Add new branch
+
+       Depending on num the new branch is created
+
+       -3 above selection as child of selections parent
+       -2 as child of selection
+       -1 below selection as child of selections parent
+       0..n    insert at a specific position in selections parent
+       (needed for free relinking)
+    */ 
+
+private:    
+    BranchItem* addNewBranchInt(BranchItem *dst, int pos);  // pos allows to add above/below selection, or as child  at pos
+public:        
+    /*! \Add new branch
+       
+    // Depending on pos:
+    // -3      insert in children of parent  above selection 
+    // -2      add branch to selection 
+    // -1      insert in children of parent below selection 
+    // 0..n    insert in children of parent at pos
+    */
+    BranchItem* addNewBranch(BranchItem *bi=NULL, int pos=-2); 
+    BranchItem* addNewBranchBefore();      //!< Insert branch between selection and its parent
+    /*! \brief Relink a branch to a new destination dst 
+       Relinks branch to dst at branch position pos. There is no saveState
+       here, as for example moveUp or moving in MapEditor have
+       different needs to call saveState
+       Returns true if relinking was successful.
+    */ 
+    bool relinkBranch (
+       BranchItem* branch, 
+       BranchItem* dst, 
+       int pos =-1, 
+       bool updateSelection=false, 
+       QPointF orgPos=QPointF() 
+    );   
+    bool relinkImage  (ImageItem* image, BranchItem* dst);  
+
+private:
+    bool cleaningUpLinks;              //!< True while cleaning up to avoid recursion
+public:        
+   void cleanupItems();                //!< Delete orphaned Items
+    void deleteLater (uint);           //!< Delete later with new beginRemoveRow
+    void deleteSelection();            //!< Delete selection
+    void deleteKeepChildren(bool saveStateFlag=true);  //!< remove branch, but keep children
+public:        
+    void deleteChildren();             //!< keep branch, but remove children
+
+    TreeItem* deleteItem(TreeItem*);   //!< Delete item and return parent (if parent!= rootItem)
+    void deleteLink (Link*);           //!< Remove Link and related LinkItems in TreeModel
+    void clearItem (TreeItem* ti);     //!< Remove all children of TreeItem ti
+    bool scrollBranch(BranchItem *);
+    bool unscrollBranch(BranchItem *);
+    void toggleScroll();
+    void unscrollChildren();
+    void setScale (qreal,qreal);
+    void growSelectionSize();
+    void shrinkSelectionSize();
+    void resetSelectionSize();
+    void emitExpandAll();
+    void emitExpandOneLevel();
+    void emitCollapseOneLevel();
+    void emitCollapseUnselected();
+signals:    
+    void expandAll();
+    void expandOneLevel();
+    void collapseOneLevel();
+    void collapseUnselected();
+
+public:        
+    void toggleTarget();
+    ItemList getTargets();
+
+    void toggleStandardFlag (const QString &name, FlagRow *master=NULL);
+    void addFloatImage(const QImage &img);
+
+    void colorBranch(QColor);
+    void colorSubtree(QColor,BranchItem *bi=NULL);
+    QColor getCurrentHeadingColor();
+
+
+    void note2URLs();                      // get URLs from note
+    void editHeading2URL();                // copy heading to URL
+    void editBugzilla2URL();               // create URL to Bugzilla
+    void getBugzillaData(bool subtree);            // get data from Novell Bugzilla
+    void editFATE2URL();                   // create URL to FATE
+    void setVymLink (const QString &); // Set vymLink for selection
+    void deleteVymLink();                  // delete link to another map
+    QString getVymLink();                  // return path to map
+    QStringList getVymLinks();             // return paths in subtree
+    void followXLink (int);
+    void editXLink ();
+    void setXLinkColor(const QString &);
+    void setXLinkLineStyle(const QString &);
+    void setXLinkStyleBegin(const QString &);
+    void setXLinkStyleEnd(const QString &);
+    void setXLinkWidth(int);
+
+////////////////////////////////////////////
+// Scripting
+////////////////////////////////////////////
+public:        
+
+    /* \brief Process one command and its parameters */
+    QVariant parseAtom (const QString &atom, bool &noError, QString &errorMsg);        
+
+    /* \brief Runs the script */
+    QVariant execute (const QString &script);
+
+    Parser parser;
+
+////////////////////////////////////////////
+// Exports
+////////////////////////////////////////////
+private:
+    TreeItem::HideTmpMode hidemode; // true while exporting to hide some stuff
+
+public:
+    /*! Set or unset temporary hiding of objects during export  */
+    void setExportMode (bool);
+
+    /*! Save as image. Returns offset to upper left corner of image */
+    QPointF exportImage (QString fname="",bool askForName=true,QString format="PNG");
+
+    /*! Save as PDF  . Returns offset to upper left corner of image */
+    void exportPDF (QString fname="",bool askForName=true);
+
+    /*! Save as SVG  . Returns offset to upper left corner of image */
+    QPointF exportSVG (QString fname="",bool askForName=true);
+
+    /*! Export as XTML to directory */
+    void exportXML(QString dir="", QString fname="", bool useDialog=true);    
+
+    /*! Export as A&O report text to file */
+    void exportAO (QString fname="",bool askForName=true);  
+
+    /*! Export as ASCII text to file */
+    void exportASCII (bool listTasks = false, const QString &fname = "",bool askForName = true);
+
+    /*! Export as CSV text to file */
+    void exportCSV (const QString &fname="",bool askForName=true);  
+
+    /*! Export as HTML to directory */
+    void exportHTML(const QString &dir="", const QString &fname="", bool useDialog=true);    
+
+    /*! Export as OpenOfficeOrg presentation */
+    void exportImpress (const QString &,const QString &);      
+
+    /*! Returns if Export in recently used format is possible*/
+    bool exportLastAvailable(
+       QString &description, 
+       QString &command, 
+       QString &configFile,
+       QString &path);
+
+    /*! Export in recently used format (saved in map)*/
+    void exportLast();
+
+    /*! Export as LaTeX */
+    void exportLaTeX (const QString& dir="", bool useDialog=true);    
+
+    /*! Export as OrgMode input for emacs*/
+    void exportOrgMode (const QString& fname="", bool useDialog=true);    
+
+////////////////////////////////////////////
+// View related
+////////////////////////////////////////////
+public:
+    void registerEditor (QWidget *);
+    void unregisterEditor (QWidget *);
+
+    void setMapZoomFactor (const double &); 
+    void setMapRotationAngle (const double&);
+    void setMapAnimDuration(const int &d);
+    void setMapAnimCurve(const QEasingCurve &c);
+private: 
+    double zoomFactor;
+    double rotationAngle;
+    int animDuration;
+    QEasingCurve animCurve;
+
+    bool hasContextPos;                        //!< True, if we have a context pos
+    QPointF contextPos;                        //!< local position during context menu
+public:
+    void setContextPos (QPointF);      //!< local position during context menu
+    void unsetContextPos ();           //!< forget local position after context menu
+
+    void updateNoteFlag();             //!< Signal origination in TextEditor
+    void reposition();                 //!< Call reposition for all MCOs
+    void setHideTmpMode (TreeItem::HideTmpMode mode);  
+
+    void emitNoteChanged  (TreeItem *ti);
+    void emitDataChanged  (TreeItem *ti);
+    void emitUpdateQueries   ();       //!< tell MainWindow to update find results...
+    void emitUpdateLayout ();
+
+signals:
+    void updateQueries(VymModel *m);
+    void updateLayout();
+    void noteChanged (QModelIndex ix);
+    void newChildObject(QModelIndex ix);
+
+private:
+    MapEditor *mapEditor;
+
+    QColor defLinkColor;       // default color for links
+    QPen defXLinkPen;          // default pen for xlinks
+    QString defXLinkStyleBegin; // default style begin
+    QString defXLinkStyleEnd; ; // default style end
+    LinkableMapObj::ColorHint linkcolorhint;// use heading color or own color
+    LinkableMapObj::Style linkstyle;       // default style for links
+    QFont defaultFont;
+
+public:
+    bool setMapLinkStyle (const QString &); // Set style of link
+    LinkableMapObj::Style getMapLinkStyle ();  // requested in LMO
+    void setMapDefLinkColor(QColor);       // default color of links
+    void setMapLinkColorHintInt();         // color of links
+    void setMapLinkColorHint(LinkableMapObj::ColorHint);// color of links
+    void toggleMapLinkColorHint();         // after changing linkStyles
+    void selectMapBackgroundImage();
+    void setMapBackgroundImage(const QString &);
+    void selectMapBackgroundColor();
+    void setMapBackgroundColor(QColor);
+    QColor getMapBackgroundColor();
+
+    QFont getMapDefaultFont();
+    void setMapDefaultFont (const QFont&);
+
+    LinkableMapObj::ColorHint getMapLinkColorHint();
+    QColor getMapDefLinkColor();
+    void setMapDefXLinkPen (const QPen &p);
+    QPen getMapDefXLinkPen();
+
+    void setMapDefXLinkStyleBegin( const QString &s);
+    QString getMapDefXLinkStyleBegin();
+    void setMapDefXLinkStyleEnd  ( const QString &s);
+    QString getMapDefXLinkStyleEnd();
+
+    /*!  Move absolutly to (x,y).  */  
+    void move    (const double &x, const double &y);
+
+    /*!  Move relativly to (x,y).  */  
+    void moveRel (const double &x, const double &y);
+
+////////////////////////////////////////////
+// Animation  **experimental**
+////////////////////////////////////////////
+private:    
+    QTimer *animationTimer;
+    bool animationUse;
+    uint animationTicks;
+    uint animationInterval;
+    int timerId;               // animation timer
+    QList <MapObj*> animObjList;// list with animated objects 
+
+private slots:
+    void animate();                    //!< Called by timer to animate stuff
+public:
+    void startAnimation(BranchObj *bo, const QPointF &v);
+    void startAnimation(BranchObj *bo, const QPointF &start, const QPointF &dest);
+    void stopAnimation(MapObj *mo);
+    void stopAllAnimation();
+
+////////////////////////////////////////////
+// Network related 
+////////////////////////////////////////////
+public:
+    /*! \brief Networking states
+       
+       In Network modus we want to switch of saveState, autosave, ...
+    */
+    enum NetState {
+       Offline,            //!< Offline
+       Client,             //!< I am the client and connected to server
+       Server              //!< I am the server
+    };
+
+private:
+    // Network connections **Experimental**
+    NetState netstate;         // offline, client, server
+    QTcpServer *tcpServer;     // Act as server in conference mode (experimental)
+    QList <QTcpSocket*> clientList;    // List of connected clients
+    quint16 sendCounter;       // Increased with every sent command
+
+    QTcpSocket *clientSocket;  // socket of this client
+    QString server;            // server address of this client
+    int port;                  // server port of this client
+
+protected:
+    void sendSelection();
+
+public:
+    void newServer();
+    void connectToServer();
+
+private slots: 
+    void newClient();
+    void sendData(const QString &s);
+    void readData();
+    void displayNetworkError (QAbstractSocket::SocketError);
+
+public:
+    void downloadImage (const QUrl &url, BranchItem *bi=NULL);
+
+////////////////////////////////////////////
+// Selection related 
+////////////////////////////////////////////
+private:
+    TreeItem *latestAddedItem;             // latest added object, reset on setChanged()
+    QList <uint> selectionHistory;
+    int currentSelection;
+    bool keepSelectionHistory;                     // If set, selection doesn't change history
+
+public slots:
+    void updateSelection(QItemSelection ,QItemSelection); // update selection
+
+public:
+    void setSelectionModel(QItemSelectionModel *);     // Set common selectionModel
+    QItemSelectionModel* getSelectionModel();
+
+    void setSelectionBlocked(bool);
+    bool isSelectionBlocked();
+
+    bool select (const QString &);         //! Select by string
+    bool selectID (const QString &);       //! select by unique ID (QUuid)
+    bool select (LinkableMapObj *lmo);     //! Select by pointer to LMO
+    bool selectToggle (TreeItem *ti);      //! Toggle select state
+    bool select (TreeItem *ti );           //! Select by pointer to TreeItem
+    bool select (const QModelIndex &index); //! Select by ModelIndex
+    void unselectAll ();
+    void unselect (QItemSelection desel);
+    bool reselect();
+    bool canSelectPrevious();
+    bool selectPrevious();
+    bool canSelectNext();
+    bool selectNext();
+    void resetSelectionHistory();
+    void appendSelection();
+
+    void emitShowSelection();              //!< Show selection in all views
+signals:
+    void showSelection();
+
+public:        
+    bool selectFirstBranch();
+    bool selectLastBranch();
+    bool selectLastSelectedBranch();
+    bool selectLastImage();
+    bool selectParent();
+
+public:
+    TreeItem::Type selectionType();
+    LinkableMapObj* getSelectedLMO();
+    BranchObj* getSelectedBranchObj();
+    BranchItem* getSelectedBranch();
+    QList <BranchItem*> getSelectedBranches();
+    ImageItem* getSelectedImage();
+    Task *getSelectedTask();
+    XLinkItem* getSelectedXLinkItem();
+    Link* getSelectedXLink();
+    AttributeItem* getSelectedAttribute();
+    TreeItem* getSelectedItem();
+    QList <TreeItem*> getSelectedItems();
+    QModelIndex getSelectedIndex();
+    QList <uint> getSelectedIDs();
+    bool isSelected(TreeItem*);
+    QString getSelectString ();
+    QString getSelectString (LinkableMapObj *lmo);
+    QString getSelectString (TreeItem *item);
+    QString getSelectString (BranchItem *item);
+    QString getSelectString (const uint &i);
+    
+    
+signals:
+    void selectionChanged(const QItemSelection &newsel, const QItemSelection &oldsel);
+
+public:
+    void emitSelectionChanged(const QItemSelection &oldsel);
+    void emitSelectionChanged();
+    void selectMapLinkColor();
+    void selectMapSelectionColor();
+private:    
+    void setSelectionColorInt(QColor);
+    QItemSelectionModel *selModel;
+    QString lastSelectString;
+    bool selectionBlocked;     //! Used to block changes of selection while editing a heading
+
+public:        
+    void setSelectionColor(QColor);
+    QColor getSelectionColor();
+
+////////////////////////////////////////////
+// Slide related
+////////////////////////////////////////////
+public:
+    SlideModel* getSlideModel();
+    int slideCount();
+    SlideItem* addSlide ();
+    void deleteSlide (SlideItem *si);
+    void deleteSlide (int n);
+    void relinkSlide (SlideItem *si, int pos);
+    void moveSlideUp( int n=-1);
+    void moveSlideDown( int n=-1);
+    SlideItem *findSlideID (uint id);
+public slots:
+    void updateSlideSelection (QItemSelection ,QItemSelection);
+private:
+    SlideModel* slideModel;
+    bool blockSlideSelection;
+
+};
+#endif
diff --git a/vymnote.cpp b/vymnote.cpp
new file mode 100644 (file)
index 0000000..9f79557
--- /dev/null
@@ -0,0 +1,16 @@
+#include "vymnote.h"
+
+/////////////////////////////////////////////////////////////////
+// VymNote
+/////////////////////////////////////////////////////////////////
+
+void VymNote::operator= (const VymText &other)
+{
+    copy (other);
+}
+
+QString VymNote::saveToDir ()
+{
+    return valueElement ("vymnote", VymText::saveToDir(), getAttributes() );
+}
+
diff --git a/vymnote.h b/vymnote.h
new file mode 100644 (file)
index 0000000..fb39fe3
--- /dev/null
+++ b/vymnote.h
@@ -0,0 +1,15 @@
+#ifndef VYMNOTE_H
+#define VYMNOTE_H
+
+#include "vymtext.h"
+
+/*! \brief The text note belonging to one OrnamentedObj */
+
+
+class VymNote:public VymText
+{
+public:
+    void operator= (const VymText &other);
+    QString saveToDir();
+};
+#endif
diff --git a/vymprocess.cpp b/vymprocess.cpp
new file mode 100644 (file)
index 0000000..1b86668
--- /dev/null
@@ -0,0 +1,83 @@
+#include "vymprocess.h"
+#include <cstdlib>
+
+#include <QMessageBox>
+#include <QDebug>
+
+extern bool debug;
+
+/////////////////////////////////////////////////////////////////
+// Process
+/////////////////////////////////////////////////////////////////
+VymProcess::VymProcess()
+{
+    connect( this, SIGNAL(readyReadStandardError()),
+            this, SLOT(readProcErrout()) );
+    connect( this, SIGNAL(readyReadStandardOutput()),
+            this, SLOT(readProcStdout()) );
+    clear();        
+}
+
+VymProcess::~VymProcess()
+{
+}
+
+void VymProcess::clear()
+{
+    errOut="";
+    stdOut="";
+}
+
+void VymProcess::runScript(QString spath, QString fpath)
+{
+    spath.replace ("%f",fpath);
+    QStringList args=spath.split (' ');
+    spath=args.takeFirst();
+       
+    if (debug)
+       qDebug()<<"Process::runScript : " + spath+" "+args.join(" ");   
+
+    start (spath,args);
+    if (!waitForStarted() )
+    {
+       QMessageBox::critical( 0, tr( "Critical Error" ),
+                      tr("Could not start %1").arg(spath) );
+    } else
+    {
+       if (!waitForFinished())
+           QMessageBox::critical( 0, tr( "Critical Error" ),
+              tr("%1 didn't exit normally").arg(spath) +
+              getErrout() );
+    // else
+    //     if (exitStatus()>0) showOutput=true;
+           
+    }  
+    /* TODO output for Process::runScript
+    qDebug()<<readAllStandardOutput();
+    qDebug()<<getStdout();
+    qDebug()<<getErrout();
+    addOutput ("\n");
+    addOutput (getErrout());
+    addOutput (getStdout());
+    */
+}
+
+void VymProcess::readProcErrout()
+{
+    errOut+=readAllStandardError();
+}
+
+void VymProcess::readProcStdout()
+{
+    stdOut+=readAllStandardOutput();
+}
+
+QString VymProcess::getErrout()
+{
+    return errOut;
+}
+
+QString VymProcess::getStdout()
+{
+    return stdOut;
+}
diff --git a/vymprocess.h b/vymprocess.h
new file mode 100644 (file)
index 0000000..3011dd9
--- /dev/null
@@ -0,0 +1,27 @@
+#ifndef VYMPROCESS_H
+#define VYMPROCESS_H
+
+#include <QProcess>
+#include <QString>
+
+class VymProcess:public QProcess
+{
+    Q_OBJECT
+public:
+    VymProcess ();
+    ~VymProcess ();
+    void clear();
+    void runScript( QString spath, QString fpath );
+    QString getErrout();
+    QString getStdout();
+
+public slots:
+    virtual void readProcErrout();
+    virtual void readProcStdout();
+
+private:
+    QString errOut;
+    QString stdOut;
+};
+
+#endif
diff --git a/vymtext.cpp b/vymtext.cpp
new file mode 100644 (file)
index 0000000..fb5159c
--- /dev/null
@@ -0,0 +1,280 @@
+#include "vymtext.h"
+#include "misc.h"
+
+#include <QRegExp>
+#include <QDebug>
+#include <QTextDocument>
+
+/////////////////////////////////////////////////////////////////
+// VymText  Base class for Vymnotes and Headings
+/////////////////////////////////////////////////////////////////
+
+VymText::VymText()
+{
+    clear();
+}
+VymText::VymText(const VymText &other)
+{
+    clear();
+    copy (other);
+    return;
+}
+
+VymText::VymText(const QString &s)
+{
+    clear();
+    setPlainText (s);
+}
+
+bool VymText::operator== (const VymText &other)
+{
+    if ( text == other.text &&
+         fonthint == other.fonthint &&
+        textmode == other.textmode &&
+        filenamehint == other.filenamehint
+    )
+        return true;
+    else
+        return false;
+}
+
+void VymText::operator= (const VymText &other)
+{
+    copy (other);
+}
+
+void VymText::copy (const VymText &other)
+{
+    text = other.text;
+    fonthint = other.fonthint;
+    filenamehint = other.filenamehint;
+    textmode = other.textmode;
+    color = other.color;
+}
+
+void VymText::clear()
+{
+    text = "";
+    fonthint = "undef";
+    filenamehint = "";
+    textmode = AutoText;
+    color = Qt::black;
+}
+
+void VymText::setRichText(bool b)
+{
+    if (b)
+        textmode = RichText;
+    else
+        textmode = PlainText;
+}
+
+bool VymText::isRichText()const
+{
+    if (textmode == RichText)
+        return true;
+    else
+        return false;
+}
+
+void VymText::setText (const QString &s)
+{
+    text = s;
+}
+
+void VymText::setRichText (const QString &s)
+{
+    text = s;
+    textmode = RichText;
+}
+
+void VymText::setPlainText (const QString &s)
+{
+    text = s;
+    textmode = PlainText;
+}
+
+void VymText::setAutoText (const QString &s)
+{
+    clear();
+    if (Qt::mightBeRichText (s))
+        setRichText (s);
+    else
+        setPlainText (s);
+}
+
+QString VymText::getText() const
+{
+    return text;
+}
+
+QString VymText::getTextASCII() const
+{
+    return getTextASCII ("",80);
+}
+
+QString VymText::getTextASCII(QString indent, const int &) const //FIXME-3 use width
+{
+    if (text.isEmpty()) return text;
+
+    int width = 80;
+    QString s;
+    QRegExp rx;
+    rx.setMinimal(true);
+
+    if (isRichText())
+        s = text;
+    else
+    {
+        if ( fonthint == "fixed")
+        {
+            s = text; 
+        } else
+        {
+            // Wordwrap
+
+            QString newnote;
+            QString curline;
+            uint n=0;
+            while ( (int)n < text.length() )
+            {
+                curline = curline + text.at(n);
+                if ( text.at(n) == '\n' )
+                {
+                    s = s + curline ;
+                    curline = "";
+                }
+
+                if (curline.length() > width)
+                {
+                    // Try to find last previous whitespace in curline
+                    uint i = curline.length() - 1;
+                    while ( i> 0 )
+                    {
+                        if ( curline.at(i) == ' ' )
+                        {
+                            s = s + curline.left(i) + '\n';
+                            curline = curline.right( curline.length() - i - 1 );
+                            break;
+                        }
+                        i--;
+                        if ( i == 0 )
+                        {
+                            // Cannot break this line into smaller parts
+                            s = s + curline;
+                            curline = "";
+                        }
+                    }
+                }
+                n++;
+            }
+            s = s + curline;
+        }
+
+        // Indent lines
+        rx.setPattern("^");
+        s = s.replace (rx,indent);
+        rx.setPattern("\n");
+        s = s.replace (rx, "\n" + indent) + "\n";
+
+        return s.trimmed();
+    }
+
+    // Remove all <style...> ...</style>
+    rx.setPattern("<style.*>.*</style>");
+    s.replace (rx,"");
+
+    // convert all "<br*>" to "\n"
+    rx.setPattern ("<br.*>");
+    s.replace (rx,"\n");
+
+    // convert all "</p>" to "\n"
+    rx.setPattern ("</p>");
+    s.replace (rx,"\n");
+
+    // remove all remaining tags
+    rx.setPattern ("<.*>");
+    s.replace (rx,"");
+
+    // If string starts with \n now, remove it.
+    // It would be wrong in an OOo export for example
+    while ( s.at(0) == '\n' ) s.remove (0,1);
+
+    // convert "&", "<" and ">"
+    rx.setPattern ("&gt;");
+    s.replace (rx,">");
+    rx.setPattern ("&lt;");
+    s.replace (rx,"<");
+    rx.setPattern ("&amp;");
+    s.replace (rx,"&");
+    rx.setPattern ("&quot;");
+    s.replace (rx,"\"");
+
+    // Indent everything
+    rx.setPattern ("^\n");
+    s.replace (rx,indent);
+    s = indent + s;   // Don't forget first line
+
+/* FIXME-3  wrap text at width
+    if (fonthint !="fixed")
+    {
+    }
+*/
+    return s;
+}
+
+void VymText::setFontHint (const QString &s)
+{
+    // only for backward compatibility (pre 1.5 )
+    fonthint=s;
+}
+
+QString VymText::getFontHint() const
+{
+    // only for backward compatibility (pre 1.5 )
+    return fonthint;
+}
+
+void VymText::setFilenameHint (const QString &s)
+{
+    filenamehint=s;
+}
+
+QString VymText::getFilenameHint() const
+{
+    return filenamehint;
+}
+
+bool VymText::isEmpty ()
+{
+    return text.isEmpty();
+}
+
+void VymText::setColor(QColor col)
+{
+    color = col;
+}
+
+QColor VymText::getColor()
+{
+    return color;
+}
+
+QString VymText::getAttributes()
+{
+    QString ret;
+    if (textmode == RichText)
+        ret += attribut("textMode","richText");
+    else
+    {
+        ret += attribut("textMode","plainText");
+        ret += " " + attribut("fonthint", fonthint);
+    }
+    ret += " " + attribut("textColor", color.name() );
+    return ret;
+}
+
+QString VymText::saveToDir ()
+{
+    return getCDATA( text );
+}
diff --git a/vymtext.h b/vymtext.h
new file mode 100644 (file)
index 0000000..c3d359f
--- /dev/null
+++ b/vymtext.h
@@ -0,0 +1,51 @@
+#ifndef VYMTEXT_H
+#define VYMTEXT_H
+
+#include <qcolor.h>
+#include <qstring.h>
+
+//  class VymText;
+
+#include "xmlobj.h"
+
+/*! \brief base class for headings of branches and vymnotes */
+
+
+class VymText:public XMLObj
+{
+public:
+    enum TextMode {AutoText, PlainText, RichText};
+    VymText();
+    VymText(const VymText &vt);
+    VymText(const QString &s);
+    bool operator== (const VymText &other);
+    void operator= (const VymText &);
+    virtual void copy (const VymText &);
+    virtual void clear();
+    void setText (const QString&);
+    void setRichText (const QString&);
+    void setPlainText (const QString&);
+    void setAutoText (const QString &);
+    QString getText() const;
+    QString getTextASCII() const;
+    QString getTextASCII(QString igdent, const int &width=0) const;
+    void setRichText(bool b);
+    bool isRichText() const;
+    void setFontHint (const QString&);
+    QString getFontHint () const;
+    void setFilenameHint (const QString&);
+    QString getFilenameHint () const;
+    bool isEmpty();
+    void setColor(QColor color);
+    QColor getColor();
+    QString getAttributes();
+    QString saveToDir();
+
+protected:
+    QString text;
+    QString fonthint;
+    QString filenamehint;
+    TextMode textmode;
+    QColor color;       // used for plaintext
+};
+#endif
diff --git a/vymview.cpp b/vymview.cpp
new file mode 100644 (file)
index 0000000..fb2c80e
--- /dev/null
@@ -0,0 +1,368 @@
+#include "vymview.h"
+
+#include "branchitem.h"
+#include "dockeditor.h"
+#include "mainwindow.h"
+#include "mapeditor.h"
+#include "treedelegate.h"
+#include "slideeditor.h"
+#include "treeeditor.h"
+
+extern Main *mainWindow;
+extern Settings settings;
+
+VymView::VymView(VymModel *m)
+{
+    model=m;
+    model->setView (this);
+
+    // Create TreeView
+    treeEditor=new TreeEditor (model);
+
+    selModel=new QItemSelectionModel (model);
+    model->setSelectionModel (selModel);
+
+    treeEditor->setSelectionModel (selModel);
+    treeEditor->setColumnWidth (0,150);
+    treeEditor->setAnimated (true);
+    treeEditor->resize ( 20,200);
+
+    TreeDelegate *delegate=new TreeDelegate (this);
+    treeEditor->setItemDelegate (delegate);
+
+    DockEditor *de;
+    de = new DockEditor (tr("Tree Editor","Title of dockable editor widget"), this, model);
+    de->setWidget (treeEditor);
+    de->setAllowedAreas (Qt::AllDockWidgetAreas);
+    addDockWidget(Qt::LeftDockWidgetArea, de);
+    treeEditorDE=de;
+
+    connect (
+       treeEditorDE, SIGNAL (visibilityChanged(bool) ), 
+       mainWindow,SLOT (updateActions() ) );
+
+    // Create good old MapEditor
+    mapEditor=model->getMapEditor();
+    if (!mapEditor) mapEditor=new MapEditor (model);
+    setCentralWidget (mapEditor);
+
+    // Create SlideEditor
+    slideEditor=new SlideEditor (model);
+
+    de = new DockEditor (tr("Slide Editor","Title of dockable editor widget"), this, model);
+    de->setWidget (slideEditor);
+    de->setAllowedAreas (Qt::AllDockWidgetAreas);
+    addDockWidget(Qt::RightDockWidgetArea, de);
+    slideEditorDE=de;
+    slideEditorDE->hide();
+    connect (
+       slideEditorDE, SIGNAL (visibilityChanged(bool) ), 
+       mainWindow,SLOT (updateActions() ) );
+
+    // Create Layout 
+    /*
+    QVBoxLayout* mainLayout = new QVBoxLayout (this); 
+    QSplitter *splitter= new QSplitter (this);
+
+    QSizePolicy sizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
+    splitter->setSizePolicy(sizePolicy);
+    mainLayout->addWidget (splitter);
+    */
+
+    // Connect selections
+
+       // Selection in Model changed   
+       connect (
+           selModel, SIGNAL (selectionChanged(const QItemSelection &, const QItemSelection &)), 
+           this,SLOT (changeSelection(const QItemSelection &,const QItemSelection &)));
+
+       // Needed to update selbox during animation 
+       connect (
+           model, SIGNAL (selectionChanged(const QItemSelection &, const QItemSelection &)), 
+           mapEditor,SLOT (updateSelection(const QItemSelection &,const QItemSelection &)));
+
+    // Connect data changed signals 
+    connect (
+       model, SIGNAL (dataChanged(const QModelIndex &, const QModelIndex &)), 
+       mapEditor,SLOT (updateData(const QModelIndex &) ) );
+
+    connect (
+       model, SIGNAL (dataChanged(const QModelIndex &, const QModelIndex &)), 
+       this, SLOT (updateDockWidgetTitles() ) );
+
+    connect (
+       model, SIGNAL (updateQueries (VymModel*)), 
+       mainWindow,SLOT (updateQueries(VymModel*) ) );
+
+    connect (
+       model, SIGNAL (noteChanged(QModelIndex) ),
+       mainWindow, SLOT (updateNoteEditor (QModelIndex) ) );
+       
+    connect (
+       model, SIGNAL (expandAll() ),
+       this, SLOT (expandAll () ) );
+       
+    connect (
+       model, SIGNAL (expandOneLevel() ),
+       this, SLOT (expandOneLevel() ) );
+       
+    connect (
+       model, SIGNAL (collapseOneLevel() ),
+       this, SLOT (collapseOneLevel() ) );
+       
+    connect (
+       model, SIGNAL (collapseUnselected() ),
+       this, SLOT (collapseUnselected() ) );
+       
+    connect (
+       model, SIGNAL (showSelection() ),
+       this, SLOT (showSelection() ) );
+       
+    connect (
+       model, SIGNAL (updateLayout() ),
+       mapEditor, SLOT (autoLayout() ) );
+       
+    mapEditor->setAntiAlias (mainWindow->isAliased());
+    mapEditor->setSmoothPixmap(mainWindow->hasSmoothPixmapTransform());
+}
+
+VymView::~VymView() 
+{
+    if (treeEditorIsVisible() )
+        settings.setLocalValue(model->getFilePath(),"/treeeditor/visible","true");
+    else
+        settings.setLocalValue(model->getFilePath(),"/treeeditor/visible","false");
+}
+
+void VymView::readSettings()
+{
+    if (settings.localValue(model->getFilePath(),"/slideeditor/visible","false").toBool() )
+       slideEditorDE->show();
+    else
+       slideEditorDE->hide();
+    if (settings.localValue(model->getFilePath(),"/treeeditor/visible","true").toBool() )
+       treeEditorDE->show();
+    else
+       treeEditorDE->hide();
+}
+
+VymModel* VymView::getModel()
+{
+    return model;
+}
+
+MapEditor* VymView::getMapEditor()
+{
+    return mapEditor;
+}
+
+bool VymView::treeEditorIsVisible()
+{
+    return treeEditorDE->isVisible();
+}
+
+bool VymView::slideEditorIsVisible()
+{
+    return slideEditorDE->isVisible();
+}
+
+void VymView::initFocus()
+{
+    mapEditor->setFocus();
+}
+
+void VymView::nextSlide()
+{
+    slideEditor->nextSlide();
+}
+
+void VymView::previousSlide()
+{
+    slideEditor->previousSlide();
+}
+
+void VymView::changeSelection (const QItemSelection &newsel, const QItemSelection &desel)  
+{
+    // Update note editor and heading editor // FIXME-3 improve this, evtl. move from mainwindow to here
+    model->updateSelection (newsel,desel);
+    mainWindow->changeSelection (model,newsel,desel);  
+    mainWindow->updateDockWidgetTitles( model );
+    mapEditor->updateSelection (newsel,desel);
+    showSelection();
+}
+
+void VymView::updateDockWidgetTitles()
+{
+    mainWindow->updateDockWidgetTitles( model );
+}
+
+void VymView::expandAll()
+{
+    treeEditor->expandAll();
+}
+
+void VymView::expandOneLevel()
+{
+    int level=999999;
+    int d;
+    BranchItem *cur=NULL;
+    BranchItem *prev=NULL;
+    QModelIndex pix;
+
+    // Find level to expand
+    model->nextBranch(cur,prev);
+    while (cur) 
+    {
+       pix=model->index (cur);
+       d=cur->depth();
+       if (!treeEditor->isExpanded(pix) && d < level)
+           level=d;
+       model->nextBranch(cur,prev);    
+    }
+
+    // Expand all to level
+    cur=NULL;
+    prev=NULL;
+    model->nextBranch(cur,prev);
+    while (cur) 
+    {
+       pix=model->index (cur);
+       d=cur->depth();
+       if (!treeEditor->isExpanded(pix) && d <= level && cur->branchCount()>0)
+           treeEditor->setExpanded(pix,true);
+       model->nextBranch(cur,prev);    
+    }
+}
+
+void VymView::collapseOneLevel()
+{
+    int level=-1;
+    int d;
+    BranchItem *cur=NULL;
+    BranchItem *prev=NULL;
+    QModelIndex pix;
+
+    // Find level to collapse
+    model->nextBranch(cur,prev);
+    while (cur) 
+    {
+       pix=model->index (cur);
+       d=cur->depth();
+       if (treeEditor->isExpanded(pix) && d > level)
+           level=d;
+       model->nextBranch(cur,prev);    
+    }
+
+    // collapse all to level
+    cur=NULL;
+    prev=NULL;
+    model->nextBranch(cur,prev);
+    while (cur) 
+    {
+       pix=model->index (cur);
+       d=cur->depth();
+       if (treeEditor->isExpanded(pix) && d >= level)
+           treeEditor->setExpanded(pix,false);
+       model->nextBranch(cur,prev);    
+    }
+}
+
+void VymView::collapseUnselected()
+{
+    BranchItem *cur=NULL;
+    BranchItem *prev=NULL;
+    QModelIndex pix;
+
+    // Find level to collapse
+    TreeItem *selti=model->getSelectedItem();
+    if (!selti) return;
+
+    int level=selti->depth();
+
+    // collapse all to level
+    model->nextBranch(cur,prev);
+    //bool b=false;
+    while (cur) 
+    {
+       pix=model->index (cur);
+       if (treeEditor->isExpanded(pix) &&  level <= cur->depth())
+       {
+           treeEditor->setExpanded(pix,false);
+           //b=true;
+       }
+       model->nextBranch(cur,prev);    
+    }
+
+/* FIXME-3 "collapse more" unimplemented yet
+    if (b) return;
+
+    // If we didn't collapse anything so far collapse more
+    qDebug()<<"VM::collapse more";
+    cur=NULL;
+    prev=NULL;
+
+    // Find level to collapse
+    model->nextBranch(cur,prev);
+    while (cur) 
+    {
+       pix=model->index (cur);
+       d=cur->depth();
+       if (treeEditor->isExpanded(pix) && d > level && )
+           level=d;
+       model->nextBranch(cur,prev);    
+    }
+
+    // collapse all to level
+    model->nextBranch(cur,prev);
+    bool b=false;
+    while (cur) 
+    {
+       pix=model->index (cur);
+       if (treeEditor->isExpanded(pix) &&  level <= cur->depth())
+       {
+           treeEditor->setExpanded(pix,false);
+           b=true;
+       }
+       model->nextBranch(cur,prev);    
+    }
+*/
+}
+
+void VymView::showSelection()
+{
+    QModelIndex ix=model->getSelectedIndex();
+    treeEditor->scrollTo( ix, QAbstractItemView::EnsureVisible);
+    mapEditor->scrollTo ( ix); 
+}
+
+void VymView::toggleTreeEditor()
+{
+    if (treeEditorDE->isVisible() )
+    {
+       treeEditorDE->hide();
+       settings.setLocalValue(model->getFilePath(),"/treeeditor/visible","false");
+    } else
+    {
+       treeEditorDE->show();
+       settings.setLocalValue(model->getFilePath(),"/treeeditor/visible","true");
+    }  
+    model->setChanged();
+}
+
+void VymView::toggleSlideEditor()
+{
+    if (slideEditorDE->isVisible() )
+    {
+       slideEditorDE->hide();
+       settings.setLocalValue(model->getFilePath(),"/slideeditor/visible","false");
+    } else
+    {
+       slideEditorDE->show();
+       settings.setLocalValue(model->getFilePath(),"/slideeditor/visible","true");
+    }
+}
+
+void VymView::setFocusMapEditor()
+{
+    mapEditor->setFocus();
+}
diff --git a/vymview.h b/vymview.h
new file mode 100644 (file)
index 0000000..ed84196
--- /dev/null
+++ b/vymview.h
@@ -0,0 +1,56 @@
+#ifndef VYMVIEW_H 
+#define VYMVIEW_H
+
+#include <QItemSelectionModel>
+#include <QMainWindow>
+#include <QWidget>
+
+class DockEditor;
+class VymModel;
+class MapEditor;
+class SlideEditor;
+class TreeEditor;
+class QTreeView;
+
+class VymView:public QMainWindow
+{
+    Q_OBJECT
+public:
+    VymView(VymModel *model);
+    ~VymView();
+    void readSettings();
+    VymModel* getModel();
+    MapEditor* getMapEditor();
+    bool treeEditorIsVisible();
+    bool slideEditorIsVisible();
+    void initFocus();
+    void nextSlide();
+    void previousSlide();
+
+public slots:
+    void changeSelection (const QItemSelection &newSel, const QItemSelection &delSel);
+    void updateDockWidgetTitles();
+    void expandAll ();
+    void expandOneLevel ();
+    void collapseOneLevel ();
+    void collapseUnselected();
+    void showSelection ();
+    void toggleTreeEditor();
+    void toggleSlideEditor();
+    void setFocusMapEditor();
+
+private:
+    VymModel *model;
+    TreeEditor *treeEditor;
+    DockEditor *treeEditorDE;
+    SlideEditor *slideEditor;
+    DockEditor  *slideEditorDE;
+
+    MapEditor *mapEditor;
+    //DockEditor *mapEditorDE;
+    QItemSelectionModel *selModel;
+};
+
+
+#endif
+
diff --git a/warningdialog.cpp b/warningdialog.cpp
new file mode 100644 (file)
index 0000000..460088a
--- /dev/null
@@ -0,0 +1,65 @@
+#include "warningdialog.h"
+#include "settings.h"
+
+extern Settings settings;
+
+WarningDialog::WarningDialog(QWidget* parent):QDialog (parent)
+{
+    ui.setupUi(this);
+    //TODO proper icon for proceed needed
+    ui.okButton->setText(tr("Proceed"));
+    // ui.warningSign->setPixmap (QPixmap(":/vym.png"));
+    ui.showAgainBox->setText (tr("Show this message again"));
+    useShowAgain=false;
+    ui.showAgainBox->hide();
+}
+
+int WarningDialog::exec()
+{
+    int result; 
+    if (settings.value ("/warningDialog/"+showAgainName+"/showAgain",true).toBool()  )
+    {
+       // Really show dialog
+       result=QDialog::exec();
+       if (result==QDialog::Accepted )
+       {
+           if (useShowAgain)
+           {
+               settings.setValue ("/warningDialog/"+showAgainName+"/value",result);
+               settings.setValue ("/warningDialog/"+showAgainName+"/showAgain",ui.showAgainBox->isChecked() );
+           }
+       }
+    } else
+    {
+       // Surpress dialog and use result from last shown dialog
+       result=settings.value ("/warningDialog/"+showAgainName+"/value",0).toInt();
+    }
+    return result;
+}
+
+void WarningDialog::showCancelButton (bool b)
+{
+    if (b)
+    {
+       ui.cancelButton->show();
+       ui.cancelButton->setText(tr("Cancel"));
+    } else
+       ui.cancelButton->hide();
+}
+
+void WarningDialog::setShowAgainName (const QString &s) 
+{
+    showAgainName=s;
+    useShowAgain=true;
+    ui.showAgainBox->show();
+}
+
+void WarningDialog::setText (const QString &s)
+{
+    ui.warningTE->setText(s);
+}
+
+void WarningDialog::setCaption(const QString &s)
+{
+    QDialog::setWindowTitle("VYM - "+s);
+}
diff --git a/warningdialog.h b/warningdialog.h
new file mode 100644 (file)
index 0000000..a3c30ae
--- /dev/null
@@ -0,0 +1,28 @@
+#ifndef WARNINGDIALOG_H
+#define WARNINGDIALOG_H
+
+#include "ui_warningdialog.h"
+
+class WarningDialog : public QDialog
+{
+    Q_OBJECT
+
+public:
+    WarningDialog(QWidget* parent = 0);
+    int exec();
+
+public slots:
+    virtual void showCancelButton( bool b );
+    virtual void setShowAgainName( const QString & s );
+    virtual void setText( const QString & s );
+    virtual void setCaption( const QString & s );
+
+private:
+    void init();
+    bool useShowAgain;
+    QString showAgainName;
+    Ui::WarningDialog ui;
+
+};
+
+#endif // WARNINGDIALOG_H
diff --git a/warningdialog.ui b/warningdialog.ui
new file mode 100644 (file)
index 0000000..1e6115d
--- /dev/null
@@ -0,0 +1,167 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>WarningDialog</class>
+ <widget class="QDialog" name="WarningDialog">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>545</width>
+    <height>256</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>Dialog</string>
+  </property>
+  <layout class="QVBoxLayout" name="verticalLayout">
+   <item>
+    <widget class="QTextEdit" name="warningTE">
+     <property name="palette">
+      <palette>
+       <active>
+        <colorrole role="Base">
+         <brush brushstyle="SolidPattern">
+          <color alpha="255">
+           <red>238</red>
+           <green>238</green>
+           <blue>238</blue>
+          </color>
+         </brush>
+        </colorrole>
+       </active>
+       <inactive>
+        <colorrole role="Base">
+         <brush brushstyle="SolidPattern">
+          <color alpha="255">
+           <red>238</red>
+           <green>238</green>
+           <blue>238</blue>
+          </color>
+         </brush>
+        </colorrole>
+       </inactive>
+       <disabled>
+        <colorrole role="Base">
+         <brush brushstyle="SolidPattern">
+          <color alpha="255">
+           <red>238</red>
+           <green>238</green>
+           <blue>238</blue>
+          </color>
+         </brush>
+        </colorrole>
+       </disabled>
+      </palette>
+     </property>
+     <property name="frameShape">
+      <enum>QFrame::NoFrame</enum>
+     </property>
+     <property name="frameShadow">
+      <enum>QFrame::Plain</enum>
+     </property>
+     <property name="readOnly">
+      <bool>true</bool>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <spacer name="verticalSpacer">
+     <property name="orientation">
+      <enum>Qt::Vertical</enum>
+     </property>
+     <property name="sizeHint" stdset="0">
+      <size>
+       <width>20</width>
+       <height>26</height>
+      </size>
+     </property>
+    </spacer>
+   </item>
+   <item>
+    <layout class="QHBoxLayout">
+     <property name="spacing">
+      <number>6</number>
+     </property>
+     <property name="margin">
+      <number>0</number>
+     </property>
+     <item>
+      <widget class="QCheckBox" name="showAgainBox">
+       <property name="text">
+        <string>showAgainBox</string>
+       </property>
+       <property name="checked">
+        <bool>true</bool>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <spacer>
+       <property name="orientation">
+        <enum>Qt::Horizontal</enum>
+       </property>
+       <property name="sizeType">
+        <enum>QSizePolicy::Expanding</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>73</width>
+         <height>31</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+     <item>
+      <widget class="QPushButton" name="cancelButton">
+       <property name="text">
+        <string>Cancel</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="okButton">
+       <property name="text">
+        <string>Ok</string>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
+  </layout>
+ </widget>
+ <resources/>
+ <connections>
+  <connection>
+   <sender>okButton</sender>
+   <signal>pressed()</signal>
+   <receiver>WarningDialog</receiver>
+   <slot>accept()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>518</x>
+     <y>234</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>272</x>
+     <y>127</y>
+    </hint>
+   </hints>
+  </connection>
+  <connection>
+   <sender>cancelButton</sender>
+   <signal>pressed()</signal>
+   <receiver>WarningDialog</receiver>
+   <slot>reject()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>436</x>
+     <y>232</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>219</x>
+     <y>223</y>
+    </hint>
+   </hints>
+  </connection>
+ </connections>
+</ui>
diff --git a/winter.cpp b/winter.cpp
new file mode 100644 (file)
index 0000000..4575e75
--- /dev/null
@@ -0,0 +1,229 @@
+#include "winter.h"
+
+#include "misc.h"
+
+#include <QDebug>
+#include <QGraphicsScene>
+#include <QGraphicsView>
+#include <QPen>
+
+SnowFlake::SnowFlake(QGraphicsScene *scene)
+{
+    size=qrand()%10+3;
+
+    int s4=size/4;
+    int s3=size/3;
+    int s6=size/6;
+
+    for (int a=0; a<6; a++)
+    {
+        lines.append(scene->addLine(0, -s6, 0, -size));
+        lines.last()->setRotation(a*60);
+
+        lines.append(scene->addLine(-s4, -size + s6, 0, -size + s3));
+        lines.last()->setRotation(a*60);
+
+        lines.append(scene->addLine( s4, -size + s6, 0, -size + s3));
+        lines.last()->setRotation(a*60);
+    }
+
+    QPen p(Qt::white);
+    foreach (QGraphicsLineItem *l, lines)
+    {
+        l->setZValue(1000);
+        l->setPen(p);
+        l->setParentItem(this);
+    }
+    dv=QPointF(qrand()%10/10.0-0.5, qrand()%10/10.0 +1);
+    da=qrand()%20 / 10.0 - 1;
+}
+
+SnowFlake::~SnowFlake()
+{
+    //qDebug()<<"Destr. SnowFlake";
+    while(lines.isEmpty())
+        delete lines.takeFirst();
+}
+
+QRectF SnowFlake::boundingRect() const 
+{
+    return QRectF (-size, -size, size*2, size*2);
+}
+
+void SnowFlake::paint(QPainter*, const QStyleOptionGraphicsItem*, QWidget*)
+{
+}
+
+void SnowFlake::animate()
+{
+    moveBy(dv.x() + dblow.x(), dv.y() + dblow.y());
+    setRotation(rotation() + da);
+    dblow = dblow *0.9;
+}
+
+void SnowFlake::blow(const QPointF &v)
+{
+    dblow=v;
+}
+
+Winter::Winter(QGraphicsView *v)
+{
+    view=v;
+
+    updateView();
+    /*
+    test=view->scene()->addLine(
+            QLineF(viewRect.topLeft(), viewRect.bottomRight()), 
+            QPen(Qt::blue) );
+    */
+
+    maxFlakes=1500;
+    maxFalling=140;
+    maxUnfreeze=50;
+
+    makeSnow();
+
+    animTimer = new QTimer;
+    connect (animTimer, SIGNAL (timeout()), this, SLOT (animate() ));
+    animTimer->start(50);
+
+    snowTimer = new QTimer;
+    connect (snowTimer, SIGNAL (timeout()), this, SLOT (makeSnow() ));
+    snowTimer->start(1000);
+}
+
+Winter::~Winter()
+{
+    delete animTimer;
+    delete snowTimer;
+    while (!fallingSnow.isEmpty())
+        delete fallingSnow.takeFirst();
+    while (!frozenSnow.isEmpty())
+        delete frozenSnow.takeFirst();
+}
+
+void Winter::updateView()
+{
+    QPointF p0=view->mapToScene( QPoint(0,0));
+    QPointF p1=view->mapToScene( view->rect().width(), view->rect().height() );
+    viewRect=QRectF(p0,p1);
+}
+
+void Winter::setObstacles(QList <QRectF> obslist)
+{
+    obstacles=obslist;
+
+    QList <SnowFlake*> unfreeze;
+
+    // Find frozen snowflakes, which are free again
+    QPointF p;
+    int i=0;
+    bool frozen;
+    while (i < frozenSnow.count())
+    {
+        p=frozenSnow.at(i)->pos();
+        frozen=false;
+        
+        int j=0;
+        while (j<obstacles.count() && !frozen)
+
+        {
+            if (obstacles.at(j).contains(p) )
+                frozen=true;
+            j++;
+        }
+        if (!frozen)
+        {
+            unfreeze.append(frozenSnow.at(i));
+            frozenSnow.removeAt(i);
+        } else
+            i++;
+    }
+    
+    // Remove some flakes, if too many
+    while (fallingSnow.count() + unfreeze.count() > maxFalling + maxUnfreeze)
+        delete unfreeze.takeFirst();
+
+    while (!unfreeze.isEmpty())
+    {
+        // Blow a bit up
+        unfreeze.first()->blow( QPointF(qrand()%10/10.0-0.5, qrand()%10/10.0 -5));
+        fallingSnow.append(unfreeze.takeFirst());
+    }
+}
+
+
+void Winter::animate()
+{
+    updateView();
+    //test->setLine(QLineF(viewRect.topLeft(), viewRect.bottomRight())); 
+
+    QPointF p;
+    int i=0;
+    bool cont;
+    while (i<fallingSnow.count())
+    {
+        p=fallingSnow.at(i)->pos();
+        cont=true;
+        
+        int j=0;
+        while (j<obstacles.count() && cont)
+        {
+            if (obstacles.at(j).contains(p) && qrand()%(obstacles.count()+1) > obstacles.count()-1)
+            {
+                // Freeze snowflake on obstacle
+                // Probality is equale for obstacles or falling through
+                frozenSnow.append(fallingSnow.at(i));
+                fallingSnow.removeAt(i);
+                cont=false;
+            } 
+            j++;
+        }
+        if (cont && p.y() > viewRect.y() + viewRect.height() + 20)
+        {
+            delete fallingSnow.takeAt(i);
+            cont=false;
+        }
+        // Let snowflake fall further
+        if (cont) fallingSnow.at(i)->animate();
+        i++;
+    }
+}
+
+void Winter::makeSnow()
+{
+    //qDebug()<<"falling: "<<fallingSnow.count()<<"  frozen: "<<frozenSnow.count();
+    if (fallingSnow.count() + frozenSnow.count() <maxFlakes)
+    {
+        if (fallingSnow.count() < maxFalling)
+        {
+            // Create more snowflakes
+            SnowFlake *snowflake;
+            for (int i=0; i<10; i++)
+            {
+                snowflake=new SnowFlake(view->scene());
+                snowflake->setPos( 0,0);
+                snowflake->setRotation(qrand()%60);
+                view->scene()->addItem(snowflake);
+                snowflake->setPos( 
+                        rand()%round_int(viewRect.width()) + viewRect.x(),
+                        viewRect.y() -20
+                );
+                fallingSnow.append(snowflake);
+            }
+        }
+    } else
+    {
+        // Remove some of the existing frozen flakes
+        for (int i=0; i<10; i++)
+        {
+            if (frozenSnow.count()>0)
+            {
+                int j=qrand()%frozenSnow.count();
+                delete frozenSnow.takeAt(j);
+            }
+        }
+    }
+    
+}
+
diff --git a/winter.h b/winter.h
new file mode 100644 (file)
index 0000000..8fbb2cc
--- /dev/null
+++ b/winter.h
@@ -0,0 +1,57 @@
+#ifndef WINTER_H
+#define WINTER_H
+
+#include <QObject>
+#include <QGraphicsItem>
+#include <QTimer>
+#include <QRectF>
+
+class QGraphicsView;
+class QGraphicsScene;
+
+class SnowFlake:public QGraphicsItem
+{
+public:
+    SnowFlake(QGraphicsScene *scene);
+    ~SnowFlake();
+    QRectF boundingRect() const;
+    void paint(QPainter*, const QStyleOptionGraphicsItem*, QWidget*);
+    void animate();
+    void blow(const QPointF &v);
+private:
+    int size;
+    QList <QGraphicsLineItem*> lines;
+    QPointF dv;
+    QPointF dblow;
+    qreal da;
+};
+
+class Winter:public QObject {
+    Q_OBJECT
+public:
+    Winter(QGraphicsView *view);
+    ~Winter();
+    void updateView();
+    void setObstacles(QList <QRectF> obslist);
+
+public slots:
+    void animate();
+    void makeSnow();
+
+private:
+    QGraphicsView *view;
+    QList <SnowFlake*> fallingSnow;
+    QList <SnowFlake*> frozenSnow;
+    int maxFlakes;
+    QTimer *animTimer;
+    QTimer *snowTimer;
+    QList <QRectF> obstacles;
+
+    int maxFalling;
+    int maxUnfreeze;
+    //QGraphicsLineItem *test;
+
+    QRectF viewRect;
+};
+
+#endif
diff --git a/xlink.cpp b/xlink.cpp
new file mode 100644 (file)
index 0000000..4c286dc
--- /dev/null
+++ b/xlink.cpp
@@ -0,0 +1,286 @@
+#include <QDebug>
+
+#include "xlink.h"
+
+#include "branchitem.h"
+#include "misc.h"
+#include "vymmodel.h"
+#include "xlinkitem.h"
+#include "xlinkobj.h"
+
+class VymModel;
+
+/////////////////////////////////////////////////////////////////
+// Link
+/////////////////////////////////////////////////////////////////
+
+Link::Link (VymModel *m)
+{
+    //qDebug() << "Const Link () this="<<this;
+    model=m;
+    init();
+}
+
+Link::~Link ()
+{
+//    qDebug()<<"* Destr Link begin this="<<this<<"  bLI="<<beginLinkItem<<"  eLI="<<endLinkItem;
+    deactivate();
+//    qDebug()<<"* Destr Link end   this="<<this;
+}
+
+void Link::init () 
+{
+    xlo=NULL;
+    beginBranch=NULL;
+    endBranch=NULL;
+    beginLinkItem=NULL;
+    endLinkItem=NULL;
+    xLinkState=Link::undefinedXLink;
+
+    type=Bezier;
+    pen=model->getMapDefXLinkPen();
+}
+
+VymModel* Link::getModel()
+{
+    return model;
+}
+
+void Link::setBeginBranch (BranchItem *bi)
+{
+    if (bi) 
+    {
+       xLinkState=initXLink;
+       beginBranch=bi;
+    }  
+}
+
+BranchItem* Link::getBeginBranch ()
+{
+    return beginBranch;
+}
+
+void Link::setEndBranch (BranchItem *bi)
+{
+    if (bi) 
+    {
+       endBranch=bi;
+        if (xlo) xlo->initC1();
+    }      
+}
+
+BranchItem* Link::getEndBranch()
+{
+    return endBranch;
+}
+
+void Link::setEndPoint (QPointF p)
+{
+    // Used only while creating the link, without endBranch
+    if (xlo) xlo->setEnd (p);
+}
+
+void Link::setBeginLinkItem (XLinkItem *li)
+{
+    if (li) 
+    {
+       xLinkState=initXLink;
+       beginLinkItem=li;
+    }  
+}
+
+XLinkItem* Link::getBeginLinkItem ()
+{
+    return beginLinkItem;
+}
+
+void Link::setEndLinkItem (XLinkItem *li)
+{
+    if (li) 
+    {
+       xLinkState=initXLink;
+       endLinkItem=li;
+    }      
+}
+
+XLinkItem* Link::getEndLinkItem()
+{
+    return endLinkItem;
+}
+
+XLinkItem* Link::getOtherEnd (XLinkItem *xli)
+{
+    if (xli==beginLinkItem) return endLinkItem;
+    if (xli==endLinkItem) return beginLinkItem;
+    return NULL;
+}
+
+void Link::setPen (const QPen &p)
+{
+    pen = p;
+    if (xlo) xlo->updateXLink();
+}
+
+QPen Link::getPen ()
+{
+    return pen;
+}
+
+void Link::setLinkType (const QString &s)
+{
+    if (s=="Linear")
+       type=Linear;
+    else if (s=="Bezier")      
+       type=Bezier;
+    else
+       qWarning()<<"Link::setLinkType  Unknown type: "<<s;
+}
+
+void Link::setStyleBegin (const QString &s)
+{
+    if (xlo) 
+    {
+        xlo->setStyleBegin( s );
+        xlo->updateXLink();
+    }
+}
+
+QString Link::getStyleBeginString()
+{
+    if (xlo)
+        return ArrowObj::styleToString( xlo->getStyleBegin() );
+    else 
+        return QString();
+}
+
+void Link::setStyleEnd (const QString &s)
+{
+    if (xlo) 
+    {
+        xlo->setStyleEnd( s );
+        xlo->updateXLink();
+    }
+}
+
+QString Link::getStyleEndString()
+{
+    if (xlo)
+        return ArrowObj::styleToString( xlo->getStyleEnd() );
+    else 
+        return QString();
+}
+
+bool Link::activate () 
+{
+    if (beginBranch && endBranch)
+    {
+       if ( beginBranch == endBranch) return false;
+       xLinkState = activeXLink;
+       model->updateActions();
+       return true;
+    } else
+       return false;
+}
+
+void Link::deactivate ()    
+{
+    // Remove pointers from XLinkItem to Link and
+    // delete XLinkObj
+
+//    qDebug()<<"Link::deactivate ******************************";
+    xLinkState=deleteXLink;
+    if (beginLinkItem) beginLinkItem->setLink (NULL);
+    if (endLinkItem) endLinkItem->setLink (NULL);
+    if (xlo)
+    {
+       delete (xlo);  
+       xlo=NULL;
+    }
+}
+
+Link::XLinkState Link::getState()
+{
+    return xLinkState;
+}
+
+void Link::removeXLinkItem (XLinkItem *xli)
+{
+    // Only mark _one_ end for removal here!
+    if (xli==beginLinkItem) beginLinkItem=NULL;
+    if (xli==endLinkItem) endLinkItem=NULL;
+    xLinkState=deleteXLink;
+}
+
+void Link::updateLink()
+{
+    if(xlo ) xlo->updateXLink();
+}
+
+QString Link::saveToDir ()
+{
+//    qDebug()<<"Link::saveToDir  this="<<this<<" beginBranch="<<beginBranch<<"  endBranch="<<endBranch<<"  state="<<xLinkState;
+    QString s="";
+    if (beginBranch && endBranch && xLinkState==activeXLink)
+    {
+       if (beginBranch==endBranch )
+           qWarning ("Link::saveToDir  ignored, because beginBranch==endBranch, ");
+       else
+       {
+           QString colAttr=attribut ("color",pen.color().name());
+           QString widAttr=attribut ("width",QString().setNum(pen.width(),10));
+           QString styAttr=attribut ("penstyle",penStyleToString (pen.style()));
+           QString ctrlAttr;
+           QString typeAttr;
+           switch (type)
+           {
+               case Linear: 
+                   typeAttr=attribut("type","Linear"); 
+                   break;
+               case Bezier: 
+                   typeAttr=attribut("type","Bezier"); 
+                   if (xlo)
+                   {
+                       ctrlAttr +=attribut ("c0",pointToString (xlo->getC0() ) );
+                       ctrlAttr +=attribut ("c1",pointToString (xlo->getC1() ) );
+                   }
+                   break;
+           }
+           QString begSelAttr=attribut ("beginID",model->getSelectString(beginBranch));
+           QString endSelAttr=attribut ("endID",  model->getSelectString(endBranch));
+            QString styleAttr;
+            if (xlo)
+            {
+                styleAttr = QString(" styleBegin=\"%1\"").arg( ArrowObj::styleToString( xlo->getStyleBegin() ));
+                styleAttr+= QString(" styleEnd=\"%1\""  ).arg( ArrowObj::styleToString( xlo->getStyleEnd() ));
+            }
+           s=singleElement ("xlink", 
+               colAttr 
+               +widAttr 
+               +styAttr 
+               +typeAttr 
+               +ctrlAttr
+               +begSelAttr 
+               +endSelAttr
+                +styleAttr);
+       }
+    }
+    return s;
+}
+
+XLinkObj* Link::getXLinkObj()
+{
+    return xlo;
+}
+
+XLinkObj* Link::createMapObj()  
+{
+    if (!xlo) xlo=new XLinkObj (beginBranch->getLMO(),this);  
+    xlo->setVisibility();
+    return xlo;
+}
+
+MapObj* Link::getMO()
+{
+    return xlo;
+}
+
diff --git a/xlink.h b/xlink.h
new file mode 100644 (file)
index 0000000..a4eec26
--- /dev/null
+++ b/xlink.h
@@ -0,0 +1,74 @@
+#ifndef LINK_H
+#define LINK_H
+
+#include <QColor>
+#include <QPen>
+
+#include "xmlobj.h"
+
+class QPointF;
+class QGraphicsScene;
+class QString;
+
+class BranchItem;
+class MapObj;
+class LinkableMapObj;
+class VymModel;
+class XLinkItem;
+class XLinkObj;
+
+
+class Link:public XMLObj
+{
+public:
+    enum XLinkState {undefinedXLink,initXLink,activeXLink,deleteXLink};        
+    enum LinkType {Linear, Bezier};
+
+    Link (VymModel *m);
+    virtual ~Link();
+    virtual void init ();
+    VymModel* getModel();
+    void setBeginBranch (BranchItem*);
+    BranchItem* getBeginBranch();
+    void setEndBranch   (BranchItem*);
+    void setEndPoint(QPointF);
+    BranchItem* getEndBranch();
+    void setBeginLinkItem (XLinkItem*);
+    XLinkItem* getBeginLinkItem();
+    void setEndLinkItem (XLinkItem*);
+    XLinkItem* getEndLinkItem ();
+    XLinkItem* getOtherEnd (XLinkItem*);
+    void setPen (const QPen &p);
+    QPen getPen();
+    void setLinkType (const QString &s);
+    void setStyleBegin( const QString &s);
+    QString  getStyleBeginString();
+    void setStyleEnd( const QString &s);
+    QString  getStyleEndString();
+    bool activate ();          
+    void deactivate ();                
+    XLinkState getState();
+    void removeXLinkItem (XLinkItem *xli);
+    void updateLink();
+    QString saveToDir ();
+    XLinkObj* getXLinkObj();
+    XLinkObj* createMapObj();
+    MapObj* getMO();
+
+private:
+    XLinkState xLinkState;  // init during drawing or active
+    LinkType type;
+    QPen pen;
+
+    XLinkObj *xlo;
+    VymModel *model;
+
+    BranchItem *beginBranch;
+    BranchItem *endBranch;
+    XLinkItem *beginLinkItem;
+    XLinkItem *endLinkItem;
+};
+
+
+#endif
+
diff --git a/xlinkitem.cpp b/xlinkitem.cpp
new file mode 100644 (file)
index 0000000..1836342
--- /dev/null
@@ -0,0 +1,92 @@
+#include <QGraphicsScene>
+#include "xlinkitem.h"
+
+#include "branchitem.h"
+#include "linkablemapobj.h"
+#include "vymmodel.h"
+#include "xlinkobj.h"
+
+/////////////////////////////////////////////////////////////////
+// XLinkItem
+/////////////////////////////////////////////////////////////////
+
+XLinkItem::XLinkItem (const QList<QVariant> &data, TreeItem *parent):MapItem (data,parent)
+
+{
+    //qDebug() << "Const XLinkItem () "<<this;
+    init();
+}
+
+XLinkItem::~XLinkItem ()
+{
+ //   qDebug() << "Destr XLinkItem begin "<<this<<"  pI="<<parentItem<<"  link="<<link;
+    if (link)
+    {
+       XLinkItem *xli=link->getOtherEnd (this);
+       if (xli) model->deleteLater (xli->getID());
+       model->deleteLink (link);
+    }  
+//    qDebug() << "Destr XLinkItem end";
+}
+
+
+void XLinkItem::init () 
+{
+    setType (XLink);
+    link=NULL;
+}
+
+void XLinkItem::clear() 
+{
+}
+
+void XLinkItem::setLink (Link *l)
+{
+    link=l;
+}
+
+Link* XLinkItem::getLink ()
+{
+    return link;
+}
+
+void XLinkItem::updateXLink()
+{
+    if (link)
+       link->updateLink();
+}
+
+MapObj* XLinkItem::getMO()
+{
+    if (link)
+       return link->getMO();
+    return NULL;       
+}
+
+void XLinkItem::setSelection()
+{
+    if (link)
+    {
+       XLinkObj* xlo=(XLinkObj*)getMO();
+       if (xlo) 
+       {
+           if (parentItem==link->getBeginBranch() )
+               xlo->setSelection(XLinkObj::C0);
+           else if (parentItem==link->getEndBranch() )
+               xlo->setSelection(XLinkObj::C1);
+       }
+    }
+}
+
+BranchItem* XLinkItem::getPartnerBranch()
+{
+    if (link && link->getBeginBranch() && link->getEndBranch())
+    {
+       if (parentItem==link->getBeginBranch())
+           return link->getEndBranch();
+       else    
+           return link->getBeginBranch();
+    }
+    return NULL;
+}
+
diff --git a/xlinkitem.h b/xlinkitem.h
new file mode 100644 (file)
index 0000000..4e9ce0a
--- /dev/null
@@ -0,0 +1,35 @@
+#ifndef XLINKITEM_H
+#define XLINKITEM_H
+
+class BranchItem;
+class QGraphicsScene;
+class XLinkObj;
+
+#include "mapitem.h"
+#include "xlink.h"
+
+/*! \brief xlinks are used to draw arbitrary connections between branches (BranchObj) in the map. */
+
+/////////////////////////////////////////////////////////////////////////////
+
+class XLinkItem:public MapItem {
+public:
+    enum XLinkState {undefinedXLink,initXLink,activeXLink,deleteXLink};        
+
+    XLinkItem (const QList<QVariant> &data, TreeItem *parent=NULL);
+    ~XLinkItem ();
+    void init ();
+    void clear ();
+    void setLink (Link*);
+    Link* getLink ();
+    void updateXLink();
+    MapObj* getMO();
+    void setSelection();
+    BranchItem* getPartnerBranch ();
+
+
+private:
+    Link *link;
+};
+
+#endif
diff --git a/xlinkobj.cpp b/xlinkobj.cpp
new file mode 100644 (file)
index 0000000..fdf51ee
--- /dev/null
@@ -0,0 +1,531 @@
+#include <QDebug>
+
+#include "xlinkobj.h"
+
+#include "branchobj.h"
+#include "branchitem.h"
+#include "math.h"      // atan
+#include "misc.h"      // max
+
+/////////////////////////////////////////////////////////////////
+// XLinkObj
+/////////////////////////////////////////////////////////////////
+
+int XLinkObj::arrowSize = 6;               // make instances
+int XLinkObj::clickBorder = 8;
+int XLinkObj::pointRadius = 10;
+int XLinkObj::d_control = 300;
+
+XLinkObj::XLinkObj (QGraphicsItem* parent,Link *l):MapObj(parent)
+{
+    //qDebug()<< "Const XLinkObj (parent,Link)";
+    link=l;
+    init();
+}
+
+
+
+XLinkObj::~XLinkObj ()
+{
+    //qDebug() << "Destr XLinkObj";
+    delete (poly);
+    delete (path);
+    delete (ctrl_p0);
+    delete (ctrl_p1);
+    delete (pointerEnd);
+    delete (pointerBegin);
+}
+
+
+void XLinkObj::init () 
+{
+    visBranch = NULL;
+
+    stateVis = Hidden;
+
+    QPen pen = link->getPen();
+
+    path = scene()->addPath (QPainterPath(), pen, Qt::NoBrush);        
+    path->setZValue (dZ_XLINK);
+
+    pointerBegin = new ArrowObj(this);
+    pointerBegin->setPen( pen );
+    pointerBegin->setUseFixedLength( true );
+    pointerBegin->setFixedLength( 0 );
+
+    pointerEnd = new ArrowObj(this);
+    pointerEnd->setPen( pen );
+    pointerEnd->setUseFixedLength( true );
+    pointerEnd->setFixedLength( 0 );
+
+    pen.setStyle (Qt::SolidLine);
+    poly = scene()->addPolygon (QPolygonF(), pen, pen.color());        
+    poly->setZValue (dZ_XLINK);
+
+    // Control points for bezier path
+    // (We have at least a begin branch, consider its orientation)
+    initC0();
+    initC1();
+
+    ctrl_p0 = scene()->addEllipse (
+       c0.x(), c0.y(),
+       clickBorder*2, clickBorder*2,
+       pen, pen.color() );
+    ctrl_p1 = scene()->addEllipse (
+       c1.x(), c1.y(),
+       clickBorder*2, clickBorder*2,
+       pen, pen.color() );
+
+    beginOrient = endOrient=LinkableMapObj::UndefinedOrientation;
+    pen.setWidth (1);
+    pen.setStyle (Qt::DashLine);
+
+    curSelection = Unselected;
+
+    setVisibility (true);
+}
+
+QPointF XLinkObj::getAbsPos() 
+{
+    switch (curSelection)
+    {
+       case C0:
+           return c0;
+           break;
+       case C1:
+           return c1;
+           break;
+       default:
+           return QPointF();
+           break;
+    }
+}
+
+void XLinkObj::setStyleBegin(const QString &s)
+{
+    pointerBegin->setStyleEnd( s );
+}
+
+void XLinkObj::setStyleBegin(ArrowObj::OrnamentStyle os)
+{
+    pointerBegin->setStyleEnd( os );
+}
+
+ArrowObj::OrnamentStyle XLinkObj::getStyleBegin()
+{
+    return pointerBegin->getStyleEnd();
+}
+
+void XLinkObj::setStyleEnd(const QString &s)
+{
+    pointerEnd->setStyleEnd( s );
+}
+
+void XLinkObj::setStyleEnd(ArrowObj::OrnamentStyle os)
+{
+    pointerEnd->setStyleEnd( os );
+}
+
+ArrowObj::OrnamentStyle XLinkObj::getStyleEnd()
+{
+    return pointerEnd->getStyleEnd();
+}
+
+QPointF XLinkObj::getBeginPos()
+{
+    return beginPos;
+}
+
+QPointF XLinkObj::getEndPos()
+{
+    return endPos;
+}
+
+void XLinkObj::move (QPointF p)
+{
+    switch (curSelection)
+    {
+       case C0:
+           c0=p;
+           break;
+       case C1:
+           c1=p;
+           break;
+       default:
+           break;
+    }
+    updateXLink();
+}
+
+void XLinkObj::setEnd (QPointF p)
+{
+    endPos=p;
+}
+
+void XLinkObj::setSelection (CurrentSelection s)
+{
+    curSelection=s;
+    setVisibility();
+}
+
+void XLinkObj::setSelection (int cp)
+{
+    if (cp==0) 
+       setSelection (C0);
+    else if (cp==1)
+       setSelection (C1);
+    else
+       qWarning()<<"XLO::setSelection cp="<<cp;
+}
+
+void XLinkObj::updateXLink()   
+{
+    QPointF a,b;
+    QPolygonF pa;
+
+    BranchObj *beginBO=NULL;
+    BranchObj   *endBO=NULL;
+    BranchItem *bi=link->getBeginBranch();
+    if ( bi) beginBO=(BranchObj*)(bi->getLMO());
+    bi=link->getEndBranch();
+    if (bi) endBO=(BranchObj*)(bi->getLMO());
+
+    if (beginBO) 
+    {
+       if (beginOrient != LinkableMapObj::UndefinedOrientation  &&
+           beginOrient != beginBO->getOrientation() )
+           c0.setX( -c0.x() );
+       beginOrient = beginBO->getOrientation();
+    }
+    if (endBO)  
+    {
+       if (endOrient != LinkableMapObj::UndefinedOrientation  &&
+           endOrient != endBO->getOrientation() )
+           c1.setX( -c1.x() );
+       endOrient = endBO->getOrientation();
+    }
+
+    if (visBranch)   
+    {
+       // Only one of the linked branches is visible
+       // Draw arrowhead   //FIXME-3 missing shaft of arrow
+       BranchObj *bo=(BranchObj*)(visBranch->getLMO());
+       if (!bo) return;
+
+       a=b=bo->getChildRefPos();
+
+
+       if (bo->getOrientation()==LinkableMapObj::RightOfCenter)
+       {
+           b.setX (b.x() + 2*arrowSize);
+           pa.clear();
+           pa << a <<
+                 b <<
+                 QPointF (b.x(), b.y() - arrowSize) <<
+                  QPointF (b.x() + arrowSize, b.y()) <<
+                 QPointF (b.x(), b.y() + arrowSize) <<
+                 b <<
+                 a;
+           poly->setPolygon(pa);
+       } else
+       {
+           b.setX (b.x() - 2*arrowSize);
+           pa.clear();
+           pa << a <<
+                 b <<
+                 QPointF (b.x(), b.y() - arrowSize) <<
+                  QPointF (b.x() - arrowSize, b.y()) <<
+                 QPointF (b.x(), b.y() + arrowSize) <<
+                 b <<
+                 a;
+           poly->setPolygon (pa);
+       }   
+    } else
+    {
+       // Both linked branches are visible
+
+       // If a link is just drawn in the editor,
+       // we have already a beginBranch
+       if (beginBO) beginPos=beginBO->getChildRefPos();
+       if (endBO) endPos=endBO->getChildRefPos();
+
+        if (beginBO && endBO)
+        {
+            pointerBegin->move(beginPos + c0 );
+            pointerBegin->setEndPoint(beginPos);
+
+            pointerEnd->move(endPos + c1 );
+            pointerEnd->setEndPoint(endPos);
+        }
+    }
+
+    // Update control points for bezier
+    QPainterPath p(beginPos);
+    p.cubicTo ( beginPos + c0, endPos + c1, endPos);
+
+    clickPath=p;
+    path->setPath (p); 
+
+    // Go back to create closed curve, 
+    // needed for intersection check:  
+    clickPath.cubicTo ( endPos + c1, beginPos + c0, beginPos);  
+
+    QPen pen=link->getPen();
+    path->setPen (pen);
+    poly->setBrush (pen.color() );
+    
+    pointerBegin->setPen( pen );
+    pointerEnd->setPen( pen );
+
+    pen.setStyle (Qt::SolidLine);
+
+
+    ctrl_p0->setRect (
+       beginPos.x() + c0.x() - pointRadius/2, beginPos.y() + c0.y() - pointRadius/2,
+       pointRadius, pointRadius );
+    ctrl_p0->setPen (pen);
+    ctrl_p0->setBrush (pen.color() );
+
+    ctrl_p1->setRect (
+       endPos.x() + c1.x() - pointRadius/2, endPos.y() + c1.y() - pointRadius/2,
+       pointRadius, pointRadius );
+    ctrl_p1->setPen (pen);
+    ctrl_p1->setBrush (pen.color() );
+
+    BranchItem *bi_begin=link->getBeginBranch();
+    BranchItem *bi_end  =link->getEndBranch();
+    if (bi_begin && bi_end && link->getState()==Link::activeXLink)
+       // Note: with MapObj being a GraphicsItem now, maybe better reparent the xlinkobj
+       // line->setZValue (dZ_DEPTH * max(bi_begin->depth(),bi_end->depth()) + dZ_XLINK); 
+       path->setZValue (dZ_XLINK); 
+    else       
+       path->setZValue (dZ_XLINK);
+
+    setVisibility();
+}
+
+void XLinkObj::positionBBox()
+{
+}
+
+void XLinkObj::calcBBoxSize()
+{
+}
+
+void XLinkObj::setVisibility (bool b)
+{
+    if (stateVis==FullShowControls)
+    {
+       ctrl_p0->show();
+       ctrl_p1->show();
+        pointerBegin->setUseFixedLength( false );
+        pointerEnd->setUseFixedLength( false );
+    } else
+    {
+       ctrl_p0->hide();
+       ctrl_p1->hide();
+        pointerBegin->setUseFixedLength( true );
+        pointerBegin->setFixedLength( 0 );
+        pointerEnd->setUseFixedLength( true );
+        pointerEnd->setFixedLength( 0 );
+    }
+
+    MapObj::setVisibility (b);
+    if (b)
+    {
+       if (stateVis==OnlyBegin) 
+       {
+           path->hide();
+           poly->show();
+            pointerBegin->hide();
+            pointerEnd->hide();
+       }
+       else if (stateVis==OnlyEnd)
+       {
+           path->hide();
+           poly->show();
+            pointerBegin->hide();
+            pointerEnd->hide();
+       }
+        else
+        {
+            path->show();
+           poly->hide();
+            pointerBegin->show();
+            pointerEnd->show();
+        }
+    }  
+    else
+    {
+       poly->hide();
+       path->hide();
+        pointerBegin->hide();
+        pointerEnd->hide();
+    }  
+
+}
+
+void XLinkObj::setVisibility ()
+{
+    BranchItem* beginBI=link->getBeginBranch();
+    BranchObj* beginBO=NULL;
+    if (beginBI) beginBO=(BranchObj*)(beginBI->getLMO());
+
+    BranchObj* endBO=NULL;
+    BranchItem* endBI=link->getEndBranch();
+    if (endBI) endBO=(BranchObj*)(endBI->getLMO());
+    if (beginBO && endBO)
+    {
+       if(beginBO->isVisibleObj() && endBO->isVisibleObj())
+       {   // Both ends are visible
+           visBranch=NULL;
+           if (curSelection != Unselected)
+               stateVis=FullShowControls;
+           else        
+               stateVis=Full;
+           setVisibility (true);
+       } else
+       {
+           if(!beginBO->isVisibleObj() && !endBO->isVisibleObj())
+           {   //None of the ends is visible
+               visBranch=NULL;
+               stateVis=Hidden;
+               setVisibility (false);
+           } else
+           {   // Just one end is visible, draw a symbol that shows
+               // that there is a link to a scrolled branch
+               if (beginBO->isVisibleObj())
+                {
+                    stateVis=OnlyBegin;
+                   visBranch=beginBI;
+                }
+               else
+                {
+                   visBranch=endBI;
+                    stateVis=OnlyEnd;
+                }
+               setVisibility (true);
+           }
+       }
+    }
+}
+
+void XLinkObj::initC0()
+{
+    if ( !link ) return;
+    BranchItem *beginBranch = link->getBeginBranch();
+    if ( !beginBranch ) return;
+    BranchObj *bo = beginBranch->getBranchObj();
+    if ( !bo ) return;
+    if ( bo->getOrientation() == LinkableMapObj::RightOfCenter  ) 
+        c0 = QPointF ( d_control, 0);
+    else
+        c0 = QPointF ( -d_control, 0);
+}
+
+void XLinkObj::initC1()
+{
+    if (!link ) return; 
+    BranchItem *endBranch = link->getEndBranch();
+    if (!endBranch) return;
+    BranchObj *bo = endBranch->getBranchObj();
+    if (!bo) return;
+    if ( bo->getOrientation() == LinkableMapObj::RightOfCenter  ) 
+        c1 = QPointF ( d_control, 0);
+    else
+        c1 = QPointF ( -d_control, 0);
+}
+
+void XLinkObj::setC0(const QPointF &p)
+{
+    c0=p;
+}
+
+QPointF XLinkObj::getC0()
+{
+    return c0;
+}
+
+void XLinkObj::setC1(const QPointF &p)
+{
+    c1=p;
+}
+
+QPointF XLinkObj::getC1()
+{
+    return c1;
+}
+
+int XLinkObj::ctrlPointInClickBox (const QPointF &p)   
+{
+    CurrentSelection oldSel=curSelection;
+    int ret=-1;
+
+    QRectF r(p.x() - clickBorder, p.y() - clickBorder,
+                    clickBorder *2, clickBorder*2) ;
+
+    if (curSelection==C0 || curSelection==C1)
+    {
+       // If Cx selected, check both ctrl points 
+       curSelection=C0;
+       if (getClickPath().intersects (r) ) ret=0;
+       curSelection=C1;
+       if (getClickPath().intersects (r) ) ret=1;
+    } 
+    curSelection=oldSel;
+    return ret;
+}
+
+bool XLinkObj::isInClickBox (const QPointF &p)
+{
+    // Return, if not visible at all...
+    if (stateVis==Hidden) return false;
+
+    CurrentSelection oldSel=curSelection;
+    bool b=false;
+
+    QRectF r(p.x() - clickBorder, p.y() - clickBorder,
+                    clickBorder *2, clickBorder*2) ;
+
+    switch (stateVis)
+    {
+       case FullShowControls:
+           // If Cx selected, check both ctrl points 
+           if (ctrlPointInClickBox(p) >-1) b=true;
+
+            // Enable selecting the path, when a ctrl point is already selected
+            if (!b && curSelection!=Unselected && clickPath.intersects (r)) b=true;
+           break;
+       case OnlyBegin || OnlyEnd:    
+           // not selected, only partially visible
+           if (poly->boundingRect().contains(p) ) 
+               b=true;
+           break;
+       default:
+           // not selected, but path is fully visible
+           curSelection=Path;
+           if (getClickPath().intersects (r) ) b=true;
+           break;
+    }
+    curSelection=oldSel;
+    return b;
+}
+
+QPainterPath XLinkObj::getClickPath()  // also needs mirroring if oriented left. Create method to generate the coordinates
+{
+    QPainterPath p;
+    switch (curSelection)
+    {
+       case C0:
+           p.addEllipse (beginPos + c0,15,15);
+           return p;
+           break;
+       case C1:
+           p.addEllipse (endPos + c1,15,15);
+           return p;
+           break;
+       default:
+           return clickPath;
+           break;
+    }
+}
diff --git a/xlinkobj.h b/xlinkobj.h
new file mode 100644 (file)
index 0000000..3471bb6
--- /dev/null
@@ -0,0 +1,78 @@
+#ifndef XLINKOBJ_H
+#define XLINKOBJ_H
+
+#include <QPen>
+
+#include "arrowobj.h"
+#include "linkablemapobj.h"
+#include "mapobj.h"
+#include "xlink.h"
+
+class BranchObj;
+class BranchItem;
+
+/*! \brief xlinks are used to draw arbitrary connections between branches (BranchObj) in the map. */
+
+/////////////////////////////////////////////////////////////////////////////
+class XLinkObj:public MapObj {
+public:
+    enum CurrentSelection {Unselected, Path, C0, C1};
+    XLinkObj (QGraphicsItem*, Link* l );
+    virtual ~XLinkObj ();
+    virtual void init ();
+    virtual QPointF getAbsPos();
+    void setStyleBegin(const QString &s);
+    void setStyleBegin(ArrowObj::OrnamentStyle os);
+    ArrowObj::OrnamentStyle getStyleBegin();
+    void setStyleEnd(const QString &s);
+    void setStyleEnd(ArrowObj::OrnamentStyle os);
+    ArrowObj::OrnamentStyle getStyleEnd();
+    QPointF getBeginPos();
+    QPointF getEndPos();
+    virtual void move (QPointF p);
+    virtual void setEnd (QPointF);
+    void setSelection (int cp);
+    void setSelection (CurrentSelection s);
+    void updateXLink();
+    void positionBBox();
+    void calcBBoxSize();
+    void setVisibility (bool);
+    void setVisibility ();
+    void initC0();
+    void setC0 (const QPointF &p);
+    QPointF getC0();
+    void initC1();
+    void setC1 (const QPointF &p);
+    QPointF getC1();
+    bool isInClickBox (const QPointF &p);
+    int ctrlPointInClickBox (const QPointF &p);
+    QPainterPath getClickPath();
+
+private:
+    enum StateVis {Hidden,OnlyBegin,OnlyEnd,Full,FullShowControls};
+    StateVis stateVis;
+    static int arrowSize;
+    static int clickBorder;
+    static int pointRadius;
+    static int d_control;
+    QPainterPath clickPath;
+    QGraphicsPolygonItem *poly;// Arrowhead, when one end is not visible
+    ArrowObj *pointerBegin;    // Arrowhead 
+    ArrowObj *pointerEnd;      // Arrowhead 
+    QGraphicsPathItem *path;
+    
+    QPointF beginPos;
+    QPointF   endPos;
+    QPointF c0,c1;                 // Controlpoints for Bezier path
+    LinkableMapObj::Orientation beginOrient;
+    LinkableMapObj::Orientation   endOrient;
+    QGraphicsEllipseItem *ctrl_p0;
+    QGraphicsEllipseItem *ctrl_p1;
+
+    CurrentSelection curSelection;
+
+    BranchItem *visBranch;  // the "visible" part of a partially scrolled li
+    Link *link;
+};
+
+#endif
diff --git a/xml-base.cpp b/xml-base.cpp
new file mode 100644 (file)
index 0000000..3cd9428
--- /dev/null
@@ -0,0 +1,86 @@
+#include "xml-base.h"
+
+#include "vymmodel.h"
+
+parseBaseHandler::parseBaseHandler() {}
+
+parseBaseHandler::~parseBaseHandler() {}
+
+QString parseBaseHandler::errorProtocol() { return errorProt; }
+
+
+QString parseBaseHandler::parseHREF(QString href)
+{
+    QString type=href.section(":",0,0);
+    QString path=href.section(":",1,1);
+    if (!tmpDir.endsWith("/"))
+       return tmpDir + "/" + path;
+    else    
+       return tmpDir + path;
+}
+
+bool parseBaseHandler::fatalError( const QXmlParseException& exception ) 
+{
+    errorProt += QString( "Fatal parsing error: %1 in line %2, column %3\n")
+        .arg( exception.message() )
+        .arg( exception.lineNumber() )
+        .arg( exception.columnNumber() );
+    // Try to read the bogus line
+    errorProt += QString("File is: %1\n").arg(inputFile);
+    if (!inputFile.isEmpty() )
+    {   // Input was from file
+        if (!loadStringFromDisk (inputFile, inputString))
+        {
+            qWarning()<<"parseBaseHandler::fatalError Couldn't read from "<<inputFile;
+            return QXmlDefaultHandler::fatalError( exception );
+        }
+    }
+    QString s;
+    QStringList sl = inputString.split ("\n");
+    int i = 1;
+    QStringList::Iterator it = sl.begin();
+    while (i < exception.lineNumber())
+    {
+        it++;
+        i++;
+    }
+    s =*it;
+    s.insert (exception.columnNumber()-1,"<ERROR>");
+    errorProt += s;
+    return QXmlDefaultHandler::fatalError( exception );
+}
+
+void parseBaseHandler::setModel (VymModel *m)
+{
+    model=m;
+}
+
+void parseBaseHandler::setTmpDir (QString tp)
+{
+    tmpDir=tp;
+}
+
+void parseBaseHandler::setInputFile (const QString &s)
+{
+    inputFile = s;
+}
+
+void parseBaseHandler::setInputString ( const QString &s)
+{
+    inputString = s;
+}
+
+void parseBaseHandler::setLoadMode (const LoadMode &lm, int p)
+{
+    loadMode=lm;
+    insertPos=p;
+}
+
+bool parseBaseHandler::readHtmlAttr (const QXmlAttributes& a)
+{
+    for (int i=1; i<=a.count(); i++)
+       htmldata+=" "+a.localName(i-1)+"=\""+a.value(i-1)+"\"";
+    return true;
+}
+
+
diff --git a/xml-base.h b/xml-base.h
new file mode 100644 (file)
index 0000000..ac04f79
--- /dev/null
@@ -0,0 +1,50 @@
+#ifndef XML_BASE
+#define XML_BASE
+
+
+//#include <QString>
+#include <QXmlAttributes>
+
+#include "file.h"
+
+class VymModel;
+
+/*! \brief Base class for parsing maps from XML documents */
+
+class parseBaseHandler  : public QXmlDefaultHandler
+{
+public:
+    parseBaseHandler();
+    ~parseBaseHandler();
+    QString errorProtocol();
+    QString parseHREF(QString);
+    virtual bool startElement ( const QString&, const QString&,
+                        const QString& eName, const QXmlAttributes& atts )=0; 
+    virtual bool   endElement ( const QString&, const QString&, const QString& )=0; 
+    virtual bool characters   ( const QString&)=0;
+
+    virtual QString errorString()=0;
+    bool fatalError( const QXmlParseException&);
+    void setModel (VymModel *);
+    void setTmpDir (QString);
+    void setInputFile ( const QString &);
+    void setInputString ( const QString &);
+    void setLoadMode (const LoadMode &,int p=-1);
+    bool readHtmlAttr    (const QXmlAttributes&);
+
+protected:
+    QString     errorProt;
+
+    LoadMode loadMode;
+    int insertPos;
+
+    bool isVymPart;
+    int branchDepth; 
+    VymModel *model;
+    QString tmpDir; 
+    QString inputFile;
+    QString inputString;
+    QString htmldata;
+    QString version;
+}; 
+#endif
diff --git a/xml-freemind.cpp b/xml-freemind.cpp
new file mode 100644 (file)
index 0000000..36e0dc3
--- /dev/null
@@ -0,0 +1,335 @@
+#include "xml-freemind.h"
+
+#include <QDebug>
+#include <QMessageBox>
+
+#include "branchitem.h"
+#include "version.h"
+#include "vymmodel.h"
+
+extern Settings settings;
+extern QString vymVersion;
+
+bool parseFreemindHandler::startDocument()  //FIXME-3 import not complete yet
+{
+    errorProt = "";
+    state = StateInit;
+    stateStack.clear();
+    stateStack.append(StateInit);
+    isVymPart=false;
+    return true;
+}
+
+
+QString parseFreemindHandler::parseHREF(QString href)
+{
+    QString type=href.section(":",0,0);
+    QString path=href.section(":",1,1);
+    if (!tmpDir.endsWith("/"))
+       return tmpDir + "/" + path;
+    else    
+       return tmpDir + path;
+}
+
+bool parseFreemindHandler::startElement  ( const QString&, const QString&,
+                    const QString& eName, const QXmlAttributes& atts ) 
+{
+    QColor col;
+    /* Testing
+    qDebug() << "startElement <"<< qPrintable(eName)
+       <<">  state="<<state 
+       <<"  stateLast="<<stateStack.last()
+       <<"   loadMode="<<loadMode
+    // <<"       line="<<qPrintable (QXmlDefaultHandler::lineNumber())
+       ;
+    */ 
+    stateStack.append (state); 
+    if ( state == StateInit && (eName == "map")  ) 
+    {
+        state = StateMap;
+       if (!atts.value( "version").isEmpty() ) 
+       {
+           QString v="0.9.0";
+           if (! versionLowerOrEqual( atts.value("version"),v ) )
+               QMessageBox::warning( 0, "Warning: Version Problem" ,
+                  "<h3>Freemind map is newer than version " +v +" </h3>"
+                  "<p>The map you are just trying to load was "
+                  "saved using freemind " +atts.value("version")+". "
+                  "Your version of vym can parse freemind " + v +"."); 
+       }
+       // Create mapcenter
+       model->clear();
+       mapCenter=model->createMapCenter();
+       lastBranch=mapCenter;
+
+       // Create two hidden branches, because Freemind has no relative 
+       // positioning for mainbranches
+       mainBranchLeft  = model->createBranch (lastBranch);
+       mainBranchRight = model->createBranch (lastBranch);
+
+       mainBranchLeft->setRelPos ( QPointF(-200,0));
+    mainBranchLeft->setHeadingPlainText ("  ");
+       mainBranchRight->setRelPos ( QPointF(200,0));
+    mainBranchRight->setHeadingPlainText ("  ");
+    } else if ( eName == "attribute_registry" &&  state == StateMap ) 
+    {
+        state = StateAttributeRegistry;
+    } else if ( eName == "attribute_name" &&  state == StateAttributeRegistry) 
+    {
+        state = StateAttributeName;
+    } else if ( eName == "attribute_value" &&  state == StateAttributeName) 
+    {
+        state = StateAttributeValue;
+    } else if ( eName == "node" &&  state == StateMap ) 
+    {
+       state=StateNode;
+       readNodeAttr (atts);
+    } else if ( eName == "node" &&  state == StateNode ) 
+    {
+       lastBranch=model->createBranch(lastBranch);
+       state=StateNode;
+       readNodeAttr (atts);
+    } else if ( eName == "properties" )
+    {
+    } else if ( eName == "map_styles" )
+    {
+    } else if ( eName == "font" && state == StateNode) //FIXME-3 not implemented
+    {
+       state=StateFont;
+    } else if ( eName == "edge" && state == StateNode) //FIXME-3 xlink not implemented
+    {
+       state=StateEdge;
+    } else if ( eName == "hook" && state == StateNode) 
+    {
+       state=StateHook;
+    } else if ( eName == "icon" && state == StateNode) 
+    {
+       state=StateIcon;
+       if (!atts.value("BUILTIN").isEmpty() )
+       {
+           QString f=atts.value("BUILTIN");
+           QString v;
+           if (f=="help")
+               v="questionmark";
+           else if (f=="messagebox_warning")
+               v="freemind-warning"; 
+           else if (f=="idea")
+               v="lamp"; 
+           else if (f=="button_ok")
+               v="hook-green"; 
+           else if (f=="button_cancel")
+               v="cross-red"; 
+           else if (f.contains("full-"))
+               v=f.replace("full-","freemind-priority-"); 
+           else if (f=="back")
+               v="freemind-back"; 
+           else if (f=="forward")
+               v="freemind-forward"; 
+           else if (f=="attach")
+               v="freemind-attach"; 
+           else if (f=="ksmiletris")
+               v="smiley-good"; // 
+           else if (f=="clanbomber")
+               v="freemind-clanbomber"; 
+           else if (f=="desktop_new")
+               v="freemind-desktopnew"; 
+           else if (f=="flag")
+               v="freemind-flag"; 
+           else if (f=="gohome")
+               v="freemind-gohome"; 
+           else if (f=="kaddressbook")
+               v="freemind-kaddressbook"; 
+           else if (f=="knotify")
+               v="freemind-knotify"; 
+           else if (f=="korn")
+               v="freemind-korn";
+           else if (f=="Mail")
+               v="freemind-mail"; 
+           else if (f=="password")
+               v="freemind-password"; 
+           else if (f=="pencil")
+               v="freemind-pencil";
+           else if (f=="stop")
+               v="freemind-stop"; 
+           else if (f=="wizard")
+               v="freemind-wizard";
+           else if (f=="xmag")
+               v="freemind-xmag";
+           else if (f=="bell")
+               v="freemind-bell";
+           else if (f=="bookmark")
+               v="freemind-bookmark"; 
+           else if (f=="penguin")
+               v="freemind-penguin"; 
+           else if (f=="licq")
+               v="freemind-licq"; 
+           else 
+               qWarning()<<"parseFreemindHandler: Unknown icon found: "<<f;
+
+           lastBranch->activateStandardFlag (v);
+       }
+    } else if ( eName == "arrowlink" && state == StateNode) 
+    {
+       state=StateArrowLink;
+    } else if ( eName == "cloud" && state == StateNode) 
+    {
+       state=StateCloud;
+    } else if ( eName == "richcontent" && state == StateNode) 
+    {
+       state=StateRichContent;
+       return readRichContentAttr (atts);
+    } else if ( eName == "html" && state == StateRichContent) 
+    {
+       state=StateHtml;
+       htmldata="<"+eName;
+       readHtmlAttr(atts);
+       htmldata+=">";
+    } else if ( eName == "text" && state == StateHook) 
+    {
+       state=StateText;
+    } else if ( state == StateHtml ) 
+    {
+       // accept all while in html mode,
+       htmldata+="<"+eName;
+       readHtmlAttr(atts);
+       htmldata+=">";
+    } else 
+    {
+        // Usually we would return an error here
+        // In order to not break with every new element in FreeMind or FreePlane,
+        // better ignore the new element for now
+        state=StateUnknown;
+       qWarning()<<"parseFreemindHandler: Unknown element found and ignoring:: "<<eName;
+    }
+    return true;
+}
+
+bool parseFreemindHandler::endElement  ( const QString &, const QString&, const QString &eName)
+{
+    /* Testing
+    qDebug() << "endElement </" <<qPrintable(eName)
+       <<">  state=" <<state 
+       <<"  stateStack="<<stateStack.last() 
+       ;
+    */
+    switch ( state ) 
+    {
+       case StateMap:
+           // Freemind does not have the two "extra" mainbranches used here,
+           // so we have to update mapcenter
+           model->emitDataChanged (mapCenter);
+
+           // Remove helper branches, if not needed
+           if (mainBranchLeft->childCount()==0) model->deleteItem (mainBranchLeft);
+           if (mainBranchRight->childCount()==0) model->deleteItem (mainBranchRight);
+           break;
+        case StateNode: 
+           model->emitDataChanged (lastBranch);
+           lastBranch=(BranchItem*)lastBranch->parent();
+           lastBranch->setLastSelectedBranch (0);  
+            break;
+       case StateRichContent:
+           if (!htmldata.isEmpty()) 
+           {
+               if (htmlPurpose==Node)
+            lastBranch->setHeadingPlainText (htmldata);  // FIXME-3 probably wrong for RT heading
+               else if (htmlPurpose==Note)
+                   lastBranch->setNote (htmldata);
+           }   
+           break;
+        case StateHtml: 
+           htmldata+="</"+eName+">";
+           if (eName=="html")
+           {
+               //state=StateHtmlNote;  
+               htmldata.replace ("<br></br>","<br />");
+           }   
+           break;
+       default: 
+           break;
+    }  
+    state=stateStack.takeLast();    
+    return true;
+}
+
+bool parseFreemindHandler::characters   ( const QString& ch)
+{
+    //qDebug() << "characters \""<<qPrintable(ch)<<"\"  state="<<state;
+
+    QString ch_org=quotemeta (ch);
+    QString ch_simplified=ch.simplified();
+    if ( ch_simplified.isEmpty() ) return true;
+
+    switch ( state ) 
+    {
+        case StateInit: break;
+        case StateMap: break; 
+        case StateNode: break; 
+        case StateCloud: break; 
+        case StateEdge: break; 
+        case StateIcon: break; 
+        case StateArrowLink: break; 
+        case StateFont: break; 
+        case StateHook: break; 
+        case StateText: 
+           lastBranch->setNote (ch_simplified);
+           break; 
+        case StateHtml:
+           htmldata+=ch_org;
+           break;
+        default: 
+           return false;
+    }
+    return true;
+}
+
+QString parseFreemindHandler::errorString() 
+{
+    return "the document is not in the Freemind file format";
+}
+
+bool parseFreemindHandler::readNodeAttr (const QXmlAttributes& a)  
+{
+    // Freemind has a different concept for mainbranches
+    if (!a.value( "POSITION").isEmpty() )
+    {
+       if (a.value ("POSITION")=="left")
+           model->relinkBranch (lastBranch, mainBranchLeft);
+       else if (a.value ("POSITION")=="right")
+           model->relinkBranch (lastBranch, mainBranchRight);
+    } 
+
+    if (a.value( "FOLDED")=="true" )
+       lastBranch->toggleScroll();
+
+    if (!a.value( "TEXT").isEmpty() )
+    {
+    lastBranch->setHeadingPlainText (a.value ("TEXT"));  // FIXME-3 what about RT?
+       //model->setHeading (a.value ("TEXT"), lastBranch);
+    }
+
+    if (!a.value( "COLOR").isEmpty() )
+       lastBranch->setHeadingColor (QColor (a.value ("COLOR")));
+
+    if (!a.value( "LINK").isEmpty() )  
+       lastBranch->setURL (a.value ("LINK"));
+    return true;    
+}
+
+
+bool parseFreemindHandler::readRichContentAttr (const QXmlAttributes& a)  
+{
+    if (a.value ("TYPE")=="NODE" )
+       htmlPurpose=Node;
+    else if (a.value ("TYPE")=="NOTE" )
+       htmlPurpose=Note;
+    else
+    {
+       htmlPurpose=Unknown;
+       qWarning()<<"parseFreemindHandler: Unknown purpose of richContent found: "<<a.value("TYPE");;
+        // FIXME-3 Usually we would stop here, ignore for now
+       //return false;
+    }  
+    return true;
+}
+
diff --git a/xml-freemind.h b/xml-freemind.h
new file mode 100644 (file)
index 0000000..0d1d81d
--- /dev/null
@@ -0,0 +1,57 @@
+#ifndef XML_FREEMIND_H
+#define XML_FREEMIND_H
+
+#include "xml-base.h"
+
+class BranchItem;
+class VymModel;
+
+/*! \brief Parsing Freemind maps from XML documents */
+
+class parseFreemindHandler  : public parseBaseHandler
+{
+public:
+    bool startDocument();
+    QString parseHREF(QString);
+    bool startElement ( const QString&, const QString&,
+                        const QString& eName, const QXmlAttributes& atts ); 
+    bool   endElement ( const QString&, const QString&, const QString& ); 
+    bool characters   ( const QString&);
+    QString errorString();
+    bool readNodeAttr (const QXmlAttributes&);
+    bool readRichContentAttr (const QXmlAttributes&);
+
+private:
+    QString     errorProt;
+    enum State 
+    { 
+       StateInit, 
+       StateAttributeRegistry,
+       StateAttributeName,
+       StateAttributeValue,
+       StateMap, 
+       StateNode, 
+       StateProperties, 
+       StateMapStyles, 
+       StateCloud,
+       StateEdge, 
+       StateIcon, 
+       StateFont,
+       StateArrowLink,
+       StateHook,
+       StateText,
+       StateRichContent,
+       StateHtml,
+        StateUnknown
+     };
+    enum HtmlPurpose {Node,Note,Unknown};
+    HtmlPurpose htmlPurpose;
+                
+    State state;            
+    QList <State> stateStack;
+    BranchItem *lastBranch;
+    BranchItem *mapCenter;
+    BranchItem *mainBranchLeft;
+    BranchItem *mainBranchRight;
+}; 
+#endif
diff --git a/xml-vym.cpp b/xml-vym.cpp
new file mode 100644 (file)
index 0000000..0bdb12b
--- /dev/null
@@ -0,0 +1,972 @@
+#include "xml-vym.h"
+
+#include <QMessageBox>
+#include <QColor>
+#include <QTextStream>
+#include <typeinfo>
+
+#include "attributeitem.h"
+#include "branchitem.h"
+#include "misc.h"
+#include "settings.h"
+#include "linkablemapobj.h"
+#include "mainwindow.h"
+#include "slideitem.h"
+#include "task.h"
+#include "taskmodel.h"
+#include "version.h"
+#include "xlinkitem.h"
+
+extern Main *mainWindow;
+extern Settings settings;
+extern TaskModel *taskModel;
+extern QString vymVersion;
+
+parseVYMHandler::parseVYMHandler()
+{
+    // Default is to load everything
+    contentFilter = 0x0000; // TODO  use filters for all content types below
+}
+
+void parseVYMHandler::setContentFilter (const int &c)
+{
+    contentFilter=c;
+}
+
+bool parseVYMHandler::startDocument()
+{
+    errorProt = "";
+    state = StateInit;
+    stateStack.clear();
+    stateStack.append(StateInit);
+    htmldata="";
+    isVymPart=false;
+    useProgress=false;
+    return true;
+}
+
+bool parseVYMHandler::startElement  ( const QString&, const QString&,
+                    const QString& eName, const QXmlAttributes& atts ) 
+{
+    QColor col;
+    /* Testing
+    qDebug()<< "startElement: <"<< eName
+            << ">     state="<<state 
+            << "  laststate="<<stateStack.last()
+            << "   loadMode="<<loadMode
+            //<<"       line="<<QXmlDefaultHandler::lineNumber();
+        <<"contentFilter="<<contentFilter;
+    */        
+    stateStack.append (state);        
+    if ( state == StateInit && (eName == "vymmap")  ) 
+    {
+        state = StateMap;
+        branchesTotal=0;        
+        branchesCounter=0;
+
+        if (loadMode==NewMap )
+        {
+            // Create mapCenter
+            model->clear();
+            lastBranch=NULL;
+
+            readMapAttr (atts);
+        }   
+        // Check version
+        if (!atts.value( "version").isEmpty() ) 
+        {
+            version = atts.value("version");
+            if (!versionLowerOrEqualThanVym( version ))
+                QMessageBox::warning( 0, QObject::tr("Warning: Version Problem") , 
+                   QObject::tr("<h3>Map is newer than VYM</h3>"
+                   "<p>The map you are just trying to load was "
+                   "saved using vym %1. "
+                   "The version of this vym is %2. " 
+                   "If you run into problems after pressing "
+                   "the ok-button below, updating vym should help.</p>").arg(version).arg(vymVersion));
+            else       
+                model->setVersion(version);
+
+        }
+
+    } else if ( eName == "select" && state == StateMap ) 
+    {
+        state=StateMapSelect;
+    } else if ( eName == "setting" && state == StateMap ) 
+    {
+        state=StateMapSetting;
+        if (loadMode==NewMap)
+        {
+            htmldata.clear();
+            readSettingAttr (atts);
+        }
+    } else if ( eName == "slide" && state == StateMap )
+    {
+        state=StateMapSlide;
+        if (!  contentFilter && SlideContent)  
+        {   
+            // Ignore slides during paste
+            lastSlide=model->addSlide();
+            if (insertPos>=0)
+            model->relinkSlide (lastSlide, insertPos);
+            
+            readSlideAttr(atts);
+        }
+    } else if ( eName == "mapcenter" && state == StateMap ) 
+    {
+        state=StateMapCenter;
+        if (loadMode==NewMap)
+        {   
+            // Really use the found mapcenter as MCO in a new map
+            lastBranch=model->createMapCenter(); 
+        } else
+        {
+            // Treat the found mapcenter as a branch 
+            // in an existing map
+            BranchItem *bi=model->getSelectedBranch();        
+            if (bi)
+            {
+                lastBranch=bi;
+                if (loadMode==ImportAdd)
+                {
+                    // Import Add
+                    if (insertPos<0) 
+                        lastBranch=model->createBranch(lastBranch);
+                    else
+                    {
+                        lastBranch=model->addNewBranch(lastBranch, insertPos);
+                        insertPos++;
+                    }
+                } else  
+                {
+                    // Import Replace 
+                    if (insertPos<0)
+                    {
+                        insertPos=lastBranch->num() +1;
+                        model->clearItem (lastBranch);
+                    } else
+                    {
+                        BranchItem *pi=bi->parentBranch();
+                        lastBranch=model->addNewBranch(pi, insertPos);
+                        insertPos++;
+                    }
+                }
+            } else
+                // if nothing selected, add mapCenter without parent
+                lastBranch=model->createMapCenter(); 
+        }        
+        readBranchAttr (atts);
+    } else if ( 
+        (eName == "standardflag" ||eName == "standardFlag") && 
+        (state == StateMapCenter || state==StateBranch)) 
+    {
+        state=StateStandardFlag;
+    } else if ( eName == "heading" && (state == StateMapCenter||state==StateBranch || state == StateInit))
+    {
+        if (state == StateInit)
+        {
+            // Only read some stuff like VymNote or Heading
+            // e.g. for undo/redo
+            lastBranch = model->getSelectedBranch();
+            if (version.isEmpty() ) version = "0.0.0";
+        }
+        if (!lastBranch) return false;
+
+        state=StateHeading;
+        htmldata.clear();
+        vymtext.clear();
+        if (!atts.value( "fonthint").isEmpty() )
+            vymtext.setFontHint(atts.value ("fonthint") );
+        if (!atts.value( "textMode").isEmpty() )
+        {
+            if (atts.value ("textMode") == "richText" )
+                vymtext.setRichText(true);
+            else
+                vymtext.setRichText(false);
+        }
+        if (!atts.value( "textColor").isEmpty() )
+        {
+            // For compatibility with <= 2.4.0 set both branch and
+            // heading color
+            col.setNamedColor(atts.value("textColor"));
+            lastBranch->setHeadingColor(col );
+            vymtext.setColor(col);
+        }        
+    } else if ( eName == "task" && (state == StateMapCenter||state==StateBranch)) 
+    {
+        state=StateTask;
+        lastTask=taskModel->createTask (lastBranch);
+        if (!readTaskAttr(atts)) return false;
+    } else if ( eName == "note" && 
+                (state == StateMapCenter ||state==StateBranch))
+    {        // only for backward compatibility (<1.4.6). Use htmlnote now.
+        state=StateNote;
+        htmldata.clear();
+        vymtext.clear();
+        if (!readNoteAttr (atts) ) return false;
+    } else if ( eName == "htmlnote" && state == StateMapCenter) 
+    {   // only for backward compatibility. Use vymnote now
+        state=StateHtmlNote;
+        vymtext.clear();
+        if (!atts.value( "fonthint").isEmpty() ) 
+            vymtext.setFontHint(atts.value ("fonthint") );
+    } else if ( eName == "vymnote" && (state == StateMapCenter || state==StateBranch || state == StateInit))
+    {
+        if (state == StateInit)
+            // Only read some stuff like VymNote or Heading
+            // e.g. for undo/redo
+        {
+            lastBranch = model->getSelectedBranch();
+            if (version.isEmpty() ) version = "0.0.0";
+        }
+        state=StateVymNote;
+        htmldata.clear();
+        vymtext.clear();
+        if (!atts.value( "fonthint").isEmpty() ) 
+            vymtext.setFontHint(atts.value ("fonthint") );
+        if (!atts.value( "textMode").isEmpty() )
+        {
+            if (atts.value ("textMode") == "richText" )
+                vymtext.setRichText(true);
+            else
+                vymtext.setRichText(false);
+        }
+    } else if ( eName == "floatimage" &&
+                (state == StateMapCenter ||state==StateBranch)) 
+    {
+        state=StateImage;
+        lastImage=model->createImage(lastBranch);
+        if (!readImageAttr(atts)) return false;
+    } else if ( (eName == "branch"||eName=="floatimage") && state == StateMap) 
+    {
+        // This is used in vymparts, which have no mapcenter or for undo
+        isVymPart=true;
+        TreeItem *ti=model->getSelectedItem();
+        if (!ti)
+        {
+            // If a vym part is _loaded_ (not imported), 
+            // selection==lmo==NULL
+            // Treat it like ImportAdd then...
+            loadMode=ImportAdd;
+            // we really have no MCO at this time
+            lastBranch=model->createMapCenter();
+            model->select (lastBranch);
+            model->setHeadingPlainText("Import");
+            ti=lastBranch;
+        }   
+        if (ti && ti->isBranchLikeType() )
+        {
+            lastBranch=(BranchItem*)ti;
+            if (eName=="branch")
+            {
+                state=StateBranch;
+                if (loadMode==ImportAdd)
+                {
+                    lastBranch=model->createBranch(lastBranch);
+                    if (insertPos>=0)
+                        model->relinkBranch (lastBranch,(BranchItem*)ti,insertPos);
+                } else
+                    model->clearItem (lastBranch);
+                readBranchAttr (atts);
+            } else if (eName=="floatimage")
+            {
+                state=StateImage;
+                lastImage=model->createImage (lastBranch);
+                if (!readImageAttr(atts)) return false;
+            } else return false;
+        } else return false;
+    } else if ( eName == "branch" && state == StateMapCenter) 
+    {
+        state=StateBranch;
+        lastBranch=model->createBranch(lastBranch);
+        readBranchAttr (atts);
+    } else if ( eName == "htmlnote" && state == StateBranch) 
+    {   // only for backward compatibility. Use vymnote now
+        state=StateHtmlNote;
+        vymtext.clear();
+        if (!atts.value( "fonthint").isEmpty() ) 
+            vymtext.setFontHint(atts.value ("fonthint") );
+    } else if ( eName == "frame" && (state == StateBranch||state==StateMapCenter)) 
+    {
+        state=StateFrame;
+        if (!readFrameAttr(atts)) return false;
+    } else if ( eName == "xlink" && state == StateBranch ) 
+    {
+        // Obsolete after 1.13.2
+        state=StateBranchXLink;
+        if (!readXLinkAttr (atts)) return false;
+    } else if ( eName == "xlink" && state == StateMap) 
+    {
+        state=StateLink;
+        if (!readLinkNewAttr (atts)) return false;
+    } else if ( eName == "branch" && state == StateBranch ) 
+    {
+        lastBranch=model->createBranch(lastBranch);
+        readBranchAttr (atts);
+    } else if ( eName == "html" && 
+        (state == StateHtmlNote || state == StateVymNote) ) 
+    {
+        state=StateHtml;
+        htmldata="<"+eName;
+        readHtmlAttr(atts);
+        htmldata+=">";
+    } else if ( eName == "attribute" && 
+        (state == StateBranch || state == StateMapCenter ) ) 
+    {
+        state=StateAttribute;
+        QList<QVariant> cData;
+        cData << "new attribute" << "undef";
+        AttributeItem *ai=new AttributeItem (cData);
+        if (ai)
+        {
+            if (!atts.value("type").isEmpty())
+                ai->setKey(atts.value("type"));
+            if (!atts.value("key").isEmpty())
+                ai->setKey(atts.value("key"));
+            if (!atts.value("value").isEmpty())
+                ai->setKey(atts.value("value"));
+        } 
+            
+    } else if ( state == StateHtml ) 
+    {
+        // accept all while in html mode,
+        htmldata+="<"+eName;
+        readHtmlAttr(atts);
+        htmldata+=">";
+    } else
+        return false;   // Error
+    return true;
+}
+
+bool parseVYMHandler::endElement  ( const QString&, const QString&, const QString &eName)
+{
+    //qDebug()<< "endElement </" <<eName <<">  state=" <<state ;
+
+    switch ( state ) 
+    {
+        case StateMap:
+            break;
+        case StateMapCenter: 
+            model->emitDataChanged (lastBranch);
+            lastBranch=(BranchItem*)(lastBranch->parent());
+            break;
+        case StateBranch: 
+            // Empty branches may not be scrolled 
+            // (happens if bookmarks are imported)
+            if (lastBranch->isScrolled() && lastBranch->branchCount()==0) 
+                lastBranch->unScroll();
+            model->emitDataChanged (lastBranch);
+
+            lastBranch=(BranchItem*)(lastBranch->parent());
+            lastBranch->setLastSelectedBranch (0);  
+            break;
+        case StateHeading:
+            if ( versionLowerOrEqual( version, "2.4.99")  && htmldata.contains("<html>") )
+                // versions before 2.5.0 didn't use CDATA to save richtext
+                vymtext.setAutoText(htmldata);
+            else
+                vymtext.setText (htmldata);
+            lastBranch->setHeading (vymtext);
+            break;
+        case StateHtmlNote: // Richtext note, needed anyway for backward compatibility
+            vymtext.setRichText (htmldata);
+            lastBranch->setNote (vymtext);
+            break;
+        case StateMapSlide: 
+            lastSlide=NULL;
+            break;  
+        case StateNote:
+            // version < 1.4.6
+            vymtext.setText (htmldata);
+            lastBranch->setNote (vymtext);
+            break;
+        case StateMapSetting:
+            // version >= 2.5.0  previously value only as attribut
+            settings.setLocalValue(model->getDestPath(), lastSetting, htmldata);
+            break;
+        case StateVymNote:            // Might be richtext or plaintext with
+            // version >= 1.13.8
+            if ( versionLowerOrEqual( version, "2.4.99")  && htmldata.contains("<html>") )
+                // versions before 2.5.0 didn't use CDATA to save richtext
+                vymtext.setAutoText(htmldata);
+            else
+                vymtext.setText (htmldata);
+            lastBranch->setNote (vymtext);  
+            break;
+        case StateHtml:
+            htmldata+="</"+eName+">";
+            if (eName=="html")
+                htmldata.replace ("<br></br>","<br />");
+            break;
+        default:
+            break;
+    }  
+    state=stateStack.takeLast();    
+    return true;
+}
+
+bool parseVYMHandler::characters   ( const QString& ch)
+{
+//    qDebug()<< "xml-vym: characters "<<ch<<"  state="<<state;
+
+    QString ch_org=quotemeta (ch);
+    QString ch_simplified=ch.simplified();
+    //if ( ch_simplified.isEmpty() ) return true;
+
+    switch ( state ) 
+    {
+        case StateInit: break;
+        case StateMap: break; 
+        case StateMapSelect:
+            model->select(ch_simplified);
+            break;
+        case StateMapSetting:
+            htmldata += ch;
+            break;
+        case StateMapCenter: break;
+        case StateNote:            // only in vym <1.4.6
+            htmldata += ch_simplified;
+            break;
+        case StateBranch: break;
+        case StateStandardFlag: 
+            lastBranch->activateStandardFlag(ch_simplified); 
+            break;
+        case StateImage: break;
+        case StateVymNote: 
+            htmldata += ch;
+            break;
+        case StateHtmlNote: // Only for compatibility
+            htmldata = ch;
+            break;
+        case StateHtml:
+            htmldata += ch_org;
+            break;
+        case StateHeading: 
+            htmldata += ch;
+            break;
+        default: 
+            return false;
+    }
+    return true;
+}
+
+QString parseVYMHandler::errorString() 
+{
+    return "the document is not in the VYM file format";
+}
+
+bool parseVYMHandler::readMapAttr (const QXmlAttributes& a)        
+{
+    QColor col;
+    if (!a.value( "author").isEmpty() )  
+        model->setAuthor(a.value( "author" ) );
+    if (!a.value( "title").isEmpty() )
+        model->setTitle (a.value( "title" ) );
+    if (!a.value( "comment").isEmpty() )
+        model->setComment (a.value( "comment" ) );
+    if (!a.value( "branchCount").isEmpty() )
+    {
+        branchesTotal=a.value("branchCount").toInt();
+        if (branchesTotal>10)
+        {
+            useProgress=true;
+            mainWindow->setProgressMaximum (branchesTotal);
+        }
+    } 
+        
+    if (!a.value( "backgroundColor").isEmpty() )
+    {
+        col.setNamedColor(a.value("backgroundColor"));
+        model->getScene()->setBackgroundBrush(col);
+    }            
+    if (!a.value( "defaultFont").isEmpty() )
+    {
+        QFont font;
+        font.fromString(a.value("defaultFont"));
+        model->setMapDefaultFont (font);
+    }            
+    if (!a.value( "selectionColor").isEmpty() )
+    {
+        col.setNamedColor(a.value("selectionColor"));
+        model->setSelectionColor(col);
+    }            
+    if (!a.value( "linkColorHint").isEmpty() ) 
+    {
+        if (a.value("linkColorHint")=="HeadingColor")
+            model->setMapLinkColorHint(LinkableMapObj::HeadingColor);
+        else
+            model->setMapLinkColorHint(LinkableMapObj::DefaultColor);
+    }
+    if (!a.value( "linkStyle").isEmpty() ) 
+        model->setMapLinkStyle(a.value("linkStyle"));
+    if (!a.value( "linkColor").isEmpty() ) 
+    {
+        col.setNamedColor(a.value("linkColor"));
+        model->setMapDefLinkColor(col);
+    }        
+
+    QPen pen (model->getMapDefXLinkPen() );
+    if (!a.value( "defXLinkColor").isEmpty() ) 
+    {
+        col.setNamedColor(a.value("defXLinkColor"));
+        pen.setColor(col);
+    }        
+    if (!a.value( "defXLinkWidth").isEmpty() ) 
+        pen.setWidth(a.value("defXLinkWidth").toInt ());
+    if (!a.value( "defXLinkPenStyle").isEmpty() ) 
+    {        
+        bool ok;
+        Qt::PenStyle ps=penStyle (a.value("defXLinkPenStyle"),ok );
+        if (!ok) return false;
+        pen.setStyle (ps);
+    }
+    model->setMapDefXLinkPen (pen);
+
+    if (!a.value( "defXLinkStyleBegin").isEmpty() ) 
+        model->setMapDefXLinkStyleBegin( a.value( "defXLinkStyleBegin" ) );
+    if (!a.value( "defXLinkStyleEnd").isEmpty() ) 
+        model->setMapDefXLinkStyleEnd( a.value( "defXLinkStyleEnd" ) );
+
+    if (!a.value( "mapZoomFactor").isEmpty() ) 
+        model->setMapZoomFactor(a.value("mapZoomFactor").toDouble());
+    if (!a.value( "mapRotationAngle").isEmpty() ) 
+        model->setMapRotationAngle(a.value("mapRotationAngle").toDouble());
+    return true;
+}
+
+bool parseVYMHandler::readBranchAttr (const QXmlAttributes& a)        
+{
+    branchesCounter++;
+    if (useProgress) 
+        mainWindow->addProgressValue ((float)branchesCounter/branchesTotal);        
+
+    lastMI=lastBranch;
+
+    if (!readOOAttr(a)) return false;
+
+    if (!a.value( "scrolled").isEmpty() )
+        lastBranch->toggleScroll(); 
+        // (interesting for import of KDE bookmarks)
+
+    if (!a.value( "incImgV").isEmpty() ) 
+    {        
+        if (a.value("incImgV")=="true")
+            lastBranch->setIncludeImagesVer(true);
+        else        
+            lastBranch->setIncludeImagesVer(false);
+    }        
+    if (!a.value( "incImgH").isEmpty() ) 
+    {        
+        if (a.value("incImgH")=="true")
+            lastBranch->setIncludeImagesHor(true);
+        else        
+            lastBranch->setIncludeImagesHor(false);
+    }        
+    if (a.value("childrenFreePos")=="true")
+        lastBranch->setChildrenLayout(BranchItem::FreePositioning);
+    return true;    
+}
+
+bool parseVYMHandler::readFrameAttr (const QXmlAttributes& a)       
+{
+    if (lastMI)
+    {
+        OrnamentedObj* oo=(OrnamentedObj*)(lastMI->getLMO()); 
+        if (oo)
+        {
+            bool ok;
+            int x;
+            {
+                if (!a.value( "frameType").isEmpty() ) 
+                    oo->setFrameType (a.value("frameType"));
+                if (!a.value( "penColor").isEmpty() ) 
+                    oo->setFramePenColor (a.value("penColor"));
+                if (!a.value( "brushColor").isEmpty() ) 
+                {
+                    oo->setFrameBrushColor (a.value("brushColor"));
+                    lastMI->setBackgroundColor (a.value("brushColor"));
+                }
+                if (!a.value( "padding").isEmpty() ) 
+                {
+                    x=a.value("padding").toInt(&ok);
+                    if (ok) oo->setFramePadding(x);
+                }   
+                if (!a.value( "borderWidth").isEmpty() ) 
+                {
+                    x=a.value("borderWidth").toInt(&ok);
+                    if (ok) oo->setFrameBorderWidth(x);
+                }   
+                if (!a.value( "includeChildren").isEmpty() ) 
+                {
+                    if (a.value("includeChildren")=="true")
+                        oo->setFrameIncludeChildren(true);
+                    else        
+                        oo->setFrameIncludeChildren(false);
+                }   
+            }            
+            return true;
+        }
+    }
+    return false;
+}
+
+bool parseVYMHandler::readOOAttr (const QXmlAttributes& a)
+{
+    if (lastMI)
+    {
+        bool okx,oky;
+        float x,y;
+        if (!a.value( "relPosX").isEmpty() ) 
+        {
+            if (!a.value( "relPosY").isEmpty() ) 
+            {
+                x=a.value("relPosX").toFloat (&okx);
+                y=a.value("relPosY").toFloat (&oky);
+                if (okx && oky  )
+                    lastMI->setRelPos (QPointF(x,y));
+                else
+                    return false;   // Couldn't read relPos
+            }           
+        }           
+        if (!a.value( "absPosX").isEmpty() ) 
+        {
+            if (!a.value( "absPosY").isEmpty() ) 
+            {
+                x=a.value("absPosX").toFloat (&okx);
+                y=a.value("absPosY").toFloat (&oky);
+                if (okx && oky  )
+                    lastMI->setAbsPos (QPointF(x,y));
+                else
+                    return false;   // Couldn't read absPos
+            }           
+        }           
+        if (!a.value( "url").isEmpty() ) 
+            lastMI->setURL (a.value ("url"));
+        if (!a.value( "vymLink").isEmpty() ) 
+            lastMI->setVymLink (a.value ("vymLink"));
+        if (!a.value( "hideInExport").isEmpty() ) 
+            if (a.value("hideInExport")=="true")
+                lastMI->setHideInExport(true);
+
+        if (!a.value( "hideLink").isEmpty()) 
+        {
+            if (a.value ("hideLink") =="true")
+                lastMI->setHideLinkUnselected(true);
+            else    
+                lastMI->setHideLinkUnselected(false);
+        }   
+
+        if (!a.value( "localTarget").isEmpty() )
+            if (a.value ("localTarget")=="true")
+                lastMI->toggleTarget();
+        if (!a.value( "rotation").isEmpty() ) 
+        {
+            x=a.value("rotation").toFloat (&okx);
+            if (okx )
+                lastMI->setRotation (x);
+            else        
+                return false;   // Couldn't read rotation
+        }           
+
+        if (!a.value( "uuid").isEmpty() )  
+        {
+            // While pasting, check for existing UUID
+            if (loadMode!=ImportAdd && !model->findUuid(a.value( "uuid")))
+                lastMI->setUuid (a.value( "uuid") );
+        }
+    }
+    return true;    
+}
+
+bool parseVYMHandler::readNoteAttr (const QXmlAttributes& a)
+{   // only for backward compatibility (<1.4.6). Use htmlnote now.
+    vymtext.clear();
+    QString fn;
+    if (!a.value( "href").isEmpty() ) 
+    {
+        // Load note
+        fn=parseHREF(a.value ("href") );
+        QFile file (fn);
+        QString s;                        // Reading a note
+
+        if ( !file.open( QIODevice::ReadOnly) )
+        {
+            qWarning ()<<"parseVYMHandler::readNoteAttr:  Couldn't load "+fn;
+            return false;
+        }   
+        QTextStream stream( &file );
+        stream.setCodec("UTF-8");
+        QString lines;
+        while ( !stream.atEnd() ) {
+            lines += stream.readLine()+"\n"; 
+        }
+        file.close();
+
+    lines ="<html><head><meta name=\"qrichtext\" content=\"1\" /></head><body>" + lines + "</p></body></html>";
+    vymtext.setText (lines);   // this probably should set type, too...
+    }            
+    if (!a.value( "fonthint").isEmpty() ) 
+        vymtext.setFontHint(a.value ("fonthint") );
+    lastBranch->setNote(vymtext);
+    return true;
+}
+
+bool parseVYMHandler::readImageAttr (const QXmlAttributes& a)
+{
+    lastMI=lastImage;
+    
+    if (!readOOAttr(a)) return false;  
+
+    if (!a.value( "href").isEmpty() )
+    {
+        // Load Image
+        if (!lastImage->load (parseHREF(a.value ("href") ) ))
+        {
+            QMessageBox::warning( 0, "Warning: " ,
+                "Couldn't load image\n"+parseHREF(a.value ("href") ));
+            lastImage=NULL;
+            return true;
+        }
+        
+    }        
+    if (!a.value( "zPlane").isEmpty() ) 
+        lastImage->setZValue (a.value("zPlane").toInt ());
+    float x,y;
+    bool okx,oky;
+    if (!a.value( "relPosX").isEmpty() ) 
+    {
+        if (!a.value( "relPosY").isEmpty() ) 
+        {
+            // read relPos
+            x=a.value("relPosX").toFloat (&okx);
+            y=a.value("relPosY").toFloat (&oky);
+            if (okx && oky) 
+                lastImage->setRelPos (QPointF (x,y) );
+            else
+                // Couldn't read relPos
+                return false;  
+        }           
+    }        
+    
+    // Scale image        
+    x=y=1;
+    if (!a.value( "scaleX").isEmpty() ) 
+    {
+        x=a.value("scaleX").toFloat (&okx);
+        if (!okx ) return false;  
+    }        
+    
+    if (!a.value( "scaleY").isEmpty() ) 
+    {
+        y=a.value("scaleY").toFloat (&oky);
+        if (!oky ) return false;  
+    }        
+    if (x!=1 || y!=1)
+        lastImage->setScale (x,y);
+    
+    if (!readOOAttr(a)) return false;
+
+    if (!a.value ("originalName").isEmpty() )
+    {
+        lastImage->setOriginalFilename (a.value("originalName"));
+    }
+    return true;
+}
+
+bool parseVYMHandler::readXLinkAttr (const QXmlAttributes& a) 
+{
+    // Obsolete, see also readLinkAttr
+
+    if (!a.value( "beginID").isEmpty() ) 
+    { 
+        if (!a.value( "endID").isEmpty() ) 
+        {
+            TreeItem *beginBI=model->findBySelectString (a.value( "beginID"));
+            TreeItem   *endBI=model->findBySelectString (a.value( "endID"));
+            if (beginBI && endBI && beginBI->isBranchLikeType() && endBI->isBranchLikeType() )
+            {
+                Link *li=new Link (model);
+                li->setBeginBranch ( (BranchItem*)beginBI );
+                li->setEndBranch ( (BranchItem*)endBI);
+                QPen pen=li->getPen();
+
+                if (!a.value( "color").isEmpty() ) 
+                {
+                    QColor col;
+                    col.setNamedColor(a.value("color"));
+                    pen.setColor (col);
+                }
+
+                if (!a.value( "width").isEmpty() ) 
+                {
+                    bool okx;
+                    pen.setWidth(a.value ("width").toInt (&okx, 10));
+                }
+                model->createLink (li);
+            }
+        }           
+    }        
+    return true;    
+}
+
+bool parseVYMHandler::readLinkNewAttr (const QXmlAttributes& a)        
+{
+    // object ID is used starting in version 1.8.76
+    // (before there was beginBranch and endBranch)
+    //
+    // Starting in 1.13.2 xlinks are no longer subitems of branches,
+    // but listed at the end of the data in a map. This makes handling 
+    // of links much safer and easier
+
+    if (!a.value( "beginID").isEmpty() ) 
+    { 
+        if (!a.value( "endID").isEmpty() ) 
+        {
+            TreeItem *beginBI=model->findBySelectString (a.value( "beginID"));
+            TreeItem   *endBI=model->findBySelectString (a.value( "endID"));
+            if (beginBI && endBI && beginBI->isBranchLikeType() && endBI->isBranchLikeType() )
+            {
+                Link *li=new Link (model);
+                li->setBeginBranch ( (BranchItem*)beginBI );
+                li->setEndBranch ( (BranchItem*)endBI);
+
+                model->createLink (li);
+
+                bool okx;
+                QPen pen=li->getPen();
+                if (!a.value( "type").isEmpty() ) 
+                {
+                    li->setLinkType (a.value( "type") );
+                }
+                if (!a.value( "color").isEmpty() ) 
+                {
+                    QColor col;
+                    col.setNamedColor(a.value("color"));
+                    pen.setColor (col);
+                }
+                if (!a.value( "width").isEmpty() ) 
+                {
+                    pen.setWidth(a.value ("width").toInt (&okx, 10));
+                }
+                if (!a.value( "penstyle").isEmpty() ) 
+                {
+                    pen.setStyle( penStyle (a.value ("penstyle"), okx));
+                }
+                li->setPen (pen);
+
+                if (!a.value( "styleBegin").isEmpty() ) 
+                    li->setStyleBegin( a.value( "styleBegin" ) );
+                if (!a.value( "styleEnd").isEmpty() ) 
+                    li->setStyleEnd( a.value( "styleEnd" ) );
+
+
+                XLinkObj *xlo=(XLinkObj*)(li->getMO() );
+                if (xlo && !a.value( "c0").isEmpty() )
+                {
+                    QPointF p=point(a.value("c0"),okx );
+                    if (okx) xlo->setC0 (p);
+                }
+                if (xlo && !a.value( "c1").isEmpty() )
+                {
+                    QPointF p=point(a.value("c1"),okx );
+                    if (okx) xlo->setC1 (p);
+                }
+            }
+        }           
+    }        
+    return true;    
+}
+
+bool parseVYMHandler::readSettingAttr (const QXmlAttributes& a)
+{
+    if (!a.value( "key").isEmpty() ) 
+    {
+        lastSetting = a.value( "key" );
+        if (!a.value( "value").isEmpty() ) 
+            // Beginning with 2.5.0 value is stored as between tags,
+            // no  longer as attribute
+            settings.setLocalValue(model->getDestPath(), a.value ("key"), a.value ("value"));
+        else
+            return false;
+        
+    } else
+        return false;
+    
+    return true;
+}
+
+bool parseVYMHandler::readSlideAttr (const QXmlAttributes& a)
+{
+    QStringList scriptlines;        // FIXME-3 needed for switching to inScript
+                                // Most attributes are obsolete with inScript
+    if (!lastSlide) return false;
+    {
+        if (!a.value( "name").isEmpty() ) 
+            lastSlide->setName (a.value( "name" ) );
+        if (!a.value( "zoom").isEmpty() ) 
+        {
+            bool ok;
+            qreal z=a.value ("zoom").toDouble(&ok);
+            if (!ok) return false;
+            scriptlines.append( QString("setMapZoom(%1)").arg(z) );
+        }
+        if (!a.value( "rotation").isEmpty() ) 
+        {
+            bool ok;
+            qreal z=a.value ("rotation").toDouble(&ok);
+            if (!ok) return false;
+            scriptlines.append( QString("setMapRotation(%1)").arg(z) );
+        }
+        if (!a.value( "duration").isEmpty() ) 
+        {
+            bool ok;
+            int d=a.value ("duration").toInt(&ok);
+            if (!ok) return false;
+            scriptlines.append( QString("setMapAnimDuration(%1)").arg(d) );
+        }
+        if (!a.value( "curve").isEmpty() ) 
+        {
+            bool ok;
+            int i=a.value ("curve").toInt(&ok);
+            if (!ok ) return false;
+            if (i<0 || i>QEasingCurve::OutInBounce) return false;
+            scriptlines.append( QString("setMapAnimCurve(%1)").arg(i) );
+        }
+        if (!a.value( "mapitem").isEmpty() ) 
+        {
+            TreeItem *ti=model->findBySelectString ( a.value( "mapitem") );
+            if (!ti) return false;
+            scriptlines.append( QString("centerOnID(\"%1\")").arg(ti->getUuid().toString() ) );
+        }
+        if (!a.value( "inScript").isEmpty() ) 
+        {
+            lastSlide->setInScript( unquotemeta( a.value( "inScript") ) );
+        } else
+            lastSlide->setInScript( unquotemeta( scriptlines.join(";\n") ) );
+
+        if (!a.value( "outScript").isEmpty() ) 
+        {
+            lastSlide->setOutScript( unquotemeta( a.value( "outScript") ) );
+        }
+    }
+    return true;
+}
+
+bool parseVYMHandler::readTaskAttr (const QXmlAttributes& a)
+{
+    if (!lastTask) return false;
+    {
+        if (!a.value( "status").isEmpty() ) 
+            lastTask->setStatus (a.value( "status" ) );
+        if (!a.value( "awake").isEmpty() ) 
+            lastTask->setAwake (a.value( "awake" ) );
+        if (!a.value( "date_creation").isEmpty() ) 
+            lastTask->setDateCreation ( a.value( "date_creation" ) );
+        if (!a.value( "date_modified").isEmpty() ) 
+            lastTask->setDateModified( a.value( "date_modified" ) );
+        if (!a.value( "date_sleep").isEmpty() ) 
+            lastTask->setDateSleep( a.value( "date_sleep" ) );
+    }
+    return true;
+}
+
diff --git a/xml-vym.h b/xml-vym.h
new file mode 100644 (file)
index 0000000..771ef67
--- /dev/null
+++ b/xml-vym.h
@@ -0,0 +1,85 @@
+#ifndef XML_H
+#define XML_H
+
+#include "xml-base.h"
+
+#include "vymnote.h"
+
+class BranchItem;
+class ImageItem;
+class MapItem;
+class SlideItem;
+class Task;
+
+/*! \brief Parsing VYM maps from XML documents */
+
+enum Content {TreeContent = 0x0001, SlideContent = 0x0002, XLinkContent = 0x0004};
+
+class parseVYMHandler  : public parseBaseHandler
+{
+public:
+    parseVYMHandler();
+    void setContentFilter (const int &);
+
+private:
+    int contentFilter;    
+public:
+    bool startDocument();
+    bool startElement ( const QString&, const QString&,
+                        const QString& eName, const QXmlAttributes& atts ); 
+    bool   endElement ( const QString&, const QString&, const QString& ); 
+    bool characters   ( const QString&);
+    QString errorString();
+    bool readMapAttr     (const QXmlAttributes&);
+    bool readBranchAttr  (const QXmlAttributes&);
+    bool readFrameAttr   (const QXmlAttributes&);
+    bool readOOAttr      (const QXmlAttributes&);
+    bool readNoteAttr    (const QXmlAttributes&);
+    bool readImageAttr   (const QXmlAttributes&);
+    bool readXLinkAttr   (const QXmlAttributes&);
+    bool readLinkNewAttr (const QXmlAttributes&);
+    bool readSettingAttr (const QXmlAttributes&);
+    bool readSlideAttr   (const QXmlAttributes&);
+    bool readTaskAttr    (const QXmlAttributes&);
+
+private:
+    enum State 
+    {
+        StateInit,
+        StateMap,
+        StateMapSelect,
+        StateMapSetting,
+        StateMapSlide,
+        StateMapCenter,
+        StateBranch,
+        StateBranchXLink,          // Obsolete
+        StateVymNote,
+        StateHtmlNote,             // Obsolete >= 1.13.6
+        StateHtml,
+        StateFrame,
+        StateStandardFlag,
+        StateNote,                 // Obsolete >= 1.4.6
+        StateImage,
+        StateHeading,
+        StateLink,
+        StateAttribute,
+        StateTask
+     };
+
+     int branchesCounter;
+     int branchesTotal;
+
+    State state;            
+    QList <State> stateStack;
+    VymText vymtext;
+
+    BranchItem* lastBranch;
+    ImageItem* lastImage;
+    MapItem* lastMI;
+    SlideItem *lastSlide;
+    Task *lastTask;
+    QString lastSetting;
+
+    bool useProgress;
+}; 
+#endif
diff --git a/xmlobj.cpp b/xmlobj.cpp
new file mode 100644 (file)
index 0000000..5d882b6
--- /dev/null
@@ -0,0 +1,165 @@
+#include "xmlobj.h"
+
+#include <QRegExp>
+#include <QStringList>
+
+
+// returns masked "<" ">" "&"
+QString quotemeta(const QString &s)
+{
+    QString r = s;
+    QRegExp  rx("&(?!amp;)");
+    r.replace ( rx,"&amp;");
+    rx.setPattern( ">");
+    r.replace ( rx,"&gt;");
+    rx.setPattern( "<");
+    r.replace ( rx,"&lt;");
+    rx.setPattern( "\"");
+    r.replace ( rx,"&quot;");
+    return r;
+}
+
+QString unquotemeta(const QString &s)
+{
+    QString r = s;
+    QRegExp  rx("&amp;)");
+    r.replace ( rx,"&");
+    rx.setPattern( "&gt;");
+    r.replace ( rx,">");
+    rx.setPattern( "&lt;");
+    r.replace ( rx,"<");
+    rx.setPattern( "&quot;");
+    r.replace ( rx,"\"");
+    return r;
+}
+
+QString quoteQuotes(const QString &s)
+{
+    QString r = s;
+    QRegExp  rx( "\"");
+    r.replace ( rx,"\\\"");
+    return r;
+}
+
+QString unquoteQuotes(const QString &s)
+{
+    QString r = s;
+    QRegExp  rx("\\\\\"");
+    r.replace ( rx,"\"");
+    return r;
+}
+
+QString quoteUmlaut(const QString &s)
+{
+    QString r=s;
+    QRegExp rx( "ü");
+    r.replace ( rx,"&uuml;");
+    rx.setPattern( "Ü");
+    r.replace ( rx,"&Uuml;");
+    rx.setPattern( "ö");
+    r.replace ( rx,"&ouml;");
+    rx.setPattern( "Ö");
+    r.replace ( rx,"&Ouml;");
+    rx.setPattern( "ä");
+    r.replace ( rx,"&auml;");
+    rx.setPattern( "Ö");
+    r.replace ( rx,"&Auml;");
+    rx.setPattern( "ß");
+    r.replace ( rx,"&szlig;");
+    rx.setPattern( "€");
+    r.replace ( rx,"&euro;");
+    return r;
+}
+
+QString getCDATA(const QString &s)
+{
+    // Do we need to use CDATA after all?
+    if (s.contains("<") || s.contains(">") || s.contains("\"") || s.contains("&") )
+    {
+        QStringList list = s.split("]]>");
+        int i = s.indexOf("]]>");
+        if ( i >= 0 )
+            // split up and calculate recursively
+            return getCDATA(s.left(i+2)) + getCDATA(s.right(s.length() - i - 2));
+        else
+            return "<![CDATA[" + s + "]]>";
+    } else
+        return s;
+}
+
+int XMLObj::curIndent=0;       // make instance of curIndent
+
+XMLObj::XMLObj()
+{
+    indentWidth=4;
+}
+
+XMLObj::~XMLObj()
+{
+}
+
+
+// returns <s at />
+QString XMLObj::singleElement(QString s, QString at)
+{
+    return indent() + "<" + s +" " + at +" " + "/>";
+}
+
+// returns <s>
+QString XMLObj::beginElement(QString s)
+{
+    return indent() + "<" + s + ">";
+}
+
+// returns <s at>
+QString XMLObj::beginElement(QString s, QString at)
+{
+    return indent() + "<" + s + " " + at + ">";
+}
+
+// returns </s>
+QString XMLObj::endElement(QString s)
+{
+    return indent() + "</" + s + ">";
+}
+
+// returns  at="val"
+QString XMLObj::attribut(QString at, QString val)
+{
+    return " " + at + "=\"" + quotemeta(val) + "\"";  
+}
+
+// returns <s> val </s>
+QString XMLObj::valueElement(QString el, QString val)
+{
+    return indent() + "<" + el + ">" + val + "</" +el + ">";
+}
+
+// returns <s at> val </s>
+QString XMLObj::valueElement(QString el, QString val, QString at)
+{
+    return "<" + el + " " + at + ">" + val + "</" +el + ">";
+}
+
+void XMLObj::incIndent()
+{
+    curIndent++;
+}   
+
+void XMLObj::decIndent()
+{
+    curIndent--;
+    if (curIndent<0) curIndent=0;
+}   
+
+QString XMLObj::indent()
+{
+    QString s = "\n";
+    int i;
+    for (i=0; i < curIndent * indentWidth; i++)
+    {
+        s= s + " ";
+    }
+    return s;
+}   
+
diff --git a/xmlobj.h b/xmlobj.h
new file mode 100644 (file)
index 0000000..af6f60a
--- /dev/null
+++ b/xmlobj.h
@@ -0,0 +1,35 @@
+#ifndef XMLOBJ_H
+#define XMLOBJ_H
+
+class QString;
+
+QString quotemeta( const QString& );  
+QString unquotemeta( const QString& ); 
+QString quoteQuotes( const QString & );
+QString unquoteQuotes( const QString & );
+QString quoteUmlaut( const QString& ); 
+QString getCDATA( const QString &s );
+
+/////////////////////////////////////////////////////////////////////////////
+class XMLObj
+{
+public:
+    XMLObj();
+    virtual ~XMLObj();
+    QString singleElement(QString,QString);        // name,attr
+    QString beginElement(QString,QString);         // name,attr
+    QString beginElement(QString);                 // name
+    QString endElement  (QString);                 // name
+    QString attribut    (QString,QString);         // name, val
+    QString valueElement(QString,QString);         // name, val
+    QString valueElement(QString,QString,QString);  // name, val, attr
+    void incIndent();
+    void decIndent();
+    static int curIndent;
+
+protected:  
+    QString indent();
+    int indentWidth;
+};
+
+#endif
diff --git a/xsltproc.cpp b/xsltproc.cpp
new file mode 100644 (file)
index 0000000..0739fc0
--- /dev/null
@@ -0,0 +1,97 @@
+#include "xsltproc.h"
+
+#include <iostream>
+#include <QDebug>
+#include <QMessageBox>
+
+#include "vymprocess.h"
+
+
+extern bool debug;
+
+XSLTProc::XSLTProc ()
+{
+    xsltprocessor="xsltproc";
+    showOutput=false;
+    dia=new ShowTextDialog;
+}
+
+XSLTProc::~XSLTProc ()
+{
+    delete (dia);
+}
+
+void XSLTProc::addStringParam (const QString & k, const QString &v)
+{
+    stringParamKey.append (k);
+    stringParamVal.append (v);
+}
+
+void XSLTProc::setOutputFile    (const QString &s)
+{
+    outputFile=s;
+}
+
+void XSLTProc::setXSLFile(const QString &s)
+{
+    xslFile=s;
+}
+
+void XSLTProc::setInputFile     (const QString &s)
+{
+    inputFile=s;
+}
+
+void XSLTProc::addOutput (const QString &s)
+{
+    dia->append (s);
+}
+
+void XSLTProc::process()
+{
+    ShowTextDialog dia;
+    dia.useFixedFont (true);
+    QStringList args;
+    VymProcess *xsltProc=new VymProcess ();
+
+    QStringList::Iterator itk;
+    QStringList::Iterator itv=stringParamVal.begin();
+
+    for ( itk = stringParamKey.begin(); itk != stringParamKey.end(); ++itk ) 
+    {
+       args << "--stringparam";
+       args << *itk;
+       args << *itv;
+       ++itv;
+    }
+    
+    args << "--output";
+    args << outputFile;
+    args << xslFile;
+    args << inputFile;
+    QString com=xsltprocessor+" "+args.join(" "); 
+    if (debug) qDebug() <<"xsltproc executing:\n"<<qPrintable(com);
+    dia.append ("vym is executing: \n" + com );        
+    xsltProc->start(xsltprocessor,args);
+    if (!xsltProc->waitForStarted() )
+    {
+       QMessageBox::critical( 0, QObject::tr( "Critical Error" ),
+                      QObject::tr("Could not start %1").arg(xsltprocessor) );
+    } else
+    {
+       if (!xsltProc->waitForFinished())
+       {
+           QMessageBox::critical( 0, QObject::tr( "Critical Error" ),
+              QObject::tr("%1 didn't exit normally").arg(xsltprocessor) +
+              xsltProc->getErrout() );
+           if (xsltProc->exitStatus()>0) showOutput=true;
+       }      
+           
+    }  
+    dia.append ("\n");
+    dia.append (xsltProc->getErrout());
+    dia.append (xsltProc->getStdout());
+    
+    if (showOutput) dia.exec();
+}
+
diff --git a/xsltproc.h b/xsltproc.h
new file mode 100644 (file)
index 0000000..6c28f86
--- /dev/null
@@ -0,0 +1,31 @@
+#ifndef XSLTPROC_H
+#define XSLTPROC_H
+
+#include <qstring.h>
+#include <qstringlist.h>
+
+#include "showtextdialog.h"
+
+class XSLTProc
+{
+public:
+    XSLTProc();
+    ~XSLTProc();
+    void addStringParam(const QString &, const QString &);
+    void setOutputFile (const QString &);
+    void setXSLFile    (const QString &);
+    void setInputFile  (const QString &);
+    void addOutput (const QString &);
+    void process();
+private:
+    QStringList stringParamKey;
+    QStringList stringParamVal;
+    QString outputFile;
+    QString inputFile;
+    QString xslFile;
+    QString xsltprocessor;
+    bool showOutput;
+    ShowTextDialog *dia;
+};
+
+#endif