diff -r 41c3d7f9f532 -r 557239819c45 mainwindow.cpp --- a/mainwindow.cpp Tue Aug 29 08:31:42 2006 +0000 +++ b/mainwindow.cpp Wed Aug 30 12:16:25 2006 +0000 @@ -69,6 +69,7 @@ extern QAction* actionEditBugzilla2URL; extern QAction* actionEditFATE2URL; extern QAction *actionEditOpenVymLink; +extern QAction *actionEditOpenMultipleVymLinks; extern QAction *actionEditVymLink; extern QAction *actionEditDeleteVymLink; extern QAction *actionEditToggleHideExport; @@ -129,8 +130,9 @@ extern QMenu* branchContextMenu; extern QMenu* branchAddContextMenu; extern QMenu* branchRemoveContextMenu; -extern QMenu* branchLinksContextMenuEdit; -extern QMenu* branchLinksContextMenuFollow; +extern QMenu* branchLinksContextMenu; +extern QMenu* branchXLinksContextMenuEdit; +extern QMenu* branchXLinksContextMenuFollow; extern QMenu* floatimageContextMenu; extern QMenu* canvasContextMenu; extern QMenu* fileLastMapsMenu; @@ -259,10 +261,10 @@ settings.setValue( "/version/version", __VYM_VERSION ); settings.setValue( "/version/builddate", __BUILD_DATE ); - settings.setValue( "/mapeditor/editmode/autoselectheading",actionSettingsAutoselectHeading->isOn() ); - settings.setValue( "/mapeditor/editmode/autoselecttext",actionSettingsAutoselectText->isOn() ); - settings.setValue( "/mapeditor/editmode/pastenewheading",actionSettingsPasteNewHeading->isOn() ); - settings.setValue( "/mapeditor/editmode/autoedit",actionSettingsAutoedit->isOn() ); + settings.setValue( "/mapeditor/editmode/autoSelectHeading",actionSettingsAutoselectHeading->isOn() ); + settings.setValue( "/mapeditor/editmode/autoSelectText",actionSettingsAutoselectText->isOn() ); + settings.setValue( "/mapeditor/editmode/pasteNewHeading",actionSettingsPasteNewHeading->isOn() ); + settings.setValue( "/mapeditor/editmode/autoEdit",actionSettingsAutoedit->isOn() ); settings.setValue( "/mapeditor/editmode/useDelKey",actionSettingsUseDelKey->isOn() ); settings.setValue( "/mapeditor/editmode/useFlagGroups",actionSettingsUseFlagGroups->isOn() ); settings.setValue( "/export/useHideExport",actionSettingsUseHideExport->isOn() ); @@ -680,8 +682,8 @@ a = new QAction( tr( "Open all URLs in subtree" ), this); a->setStatusTip (tr( "Open all URLs in subtree" )); - a->setShortcut (Qt::CTRL+Qt::Key_U ); addAction(a); + actionListBranches.append(a); connect( a, SIGNAL( triggered() ), this, SLOT( editOpenMultipleURLTabs() ) ); actionEditOpenMultipleURLTabs=a; @@ -716,13 +718,21 @@ connect( a, SIGNAL( triggered() ), this, SLOT( editFATE2URL() ) ); actionEditFATE2URL=a; - a = new QAction(QPixmap(flagsPath+"flag-vymlink.png"), tr( "Jump to map" ), this); + a = new QAction(QPixmap(flagsPath+"flag-vymlink.png"), tr( "Open xlinked map" ), this); a->setStatusTip ( tr( "Jump to another vym map, if needed load it first" )); tb->addAction (a); a->setEnabled (false); connect( a, SIGNAL( triggered() ), this, SLOT( editOpenVymLink() ) ); actionEditOpenVymLink=a; + a = new QAction(QPixmap(), tr( "Open all vym links in subtree" ), this); + a->setStatusTip ( tr( "Open all vym links in subtree" )); + a->setEnabled (false); + actionListBranches.append(a); + connect( a, SIGNAL( triggered() ), this, SLOT( editOpenMultipleVymLinks() ) ); + actionEditOpenMultipleVymLinks=a; + + a = new QAction(tr( "Edit vym link"+QString("...") ), this); a->setEnabled (false); a->setStatusTip ( tr( "Edit link to another vym map" )); @@ -1413,28 +1423,28 @@ a = new QAction( tr( "Edit branch after adding it" ), this ); a->setStatusTip( tr( "Edit branch after adding it" )); a->setToggleAction(true); - a->setOn ( settings.value ("/mapeditor/editmode/autoedit",true).toBool()); + a->setOn ( settings.value ("/mapeditor/editmode/autoEdit",true).toBool()); settingsMenu->addAction (a); actionSettingsAutoedit=a; a= new QAction( tr( "Select branch after adding it" ), this ); a->setStatusTip( tr( "Select branch after adding it" )); a->setToggleAction(true); - a->setOn ( settings.value ("/mapeditor/editmode/autoselect",false).toBool() ); + a->setOn ( settings.value ("/mapeditor/editmode/autoSelectHeading",false).toBool() ); settingsMenu->addAction (a); actionSettingsAutoselectHeading=a; a= new QAction(tr( "Select existing heading" ), this); a->setStatusTip( tr( "Select heading before editing" )); a->setToggleAction(true); - a->setOn ( settings.value ("/mapeditor/editmode/autoselectexistingtext",true).toBool() ); + a->setOn ( settings.value ("/mapeditor/editmode/autoSelectText",true).toBool() ); settingsMenu->addAction (a); actionSettingsAutoselectText=a; a= new QAction(tr( "pasting into new branch" ), this ); a->setStatusTip( tr( "Pasting into new branch" )); a->setToggleAction(true); - a->setOn ( settings.value ("/mapeditor/editmode/newheadingisempty",true).toBool() ); + a->setOn ( settings.value ("/mapeditor/editmode/newHeadingIsEmpty",true).toBool() ); settingsMenu->addAction (a); actionSettingsPasteNewHeading=a; @@ -1527,22 +1537,6 @@ actionEditSaveBranch->addTo( branchContextMenu ); branchContextMenu->addSeparator(); - branchContextMenu->addAction ( actionEditOpenURL ); - branchContextMenu->addAction ( actionEditOpenURLTab ); - branchContextMenu->addAction ( actionEditOpenMultipleURLTabs ); - branchContextMenu->addAction ( actionEditURL ); - branchContextMenu->addAction ( actionEditHeading2URL ); - branchContextMenu->addAction ( actionEditBugzilla2URL ); - if (settings.value( "/mainwindow/showTestMenu",true).toBool() ) - { - branchContextMenu->addAction ( actionEditFATE2URL ); - } - branchContextMenu->addSeparator(); - branchContextMenu->addAction ( actionEditOpenVymLink ); - branchContextMenu->addAction ( actionEditVymLink ); - branchContextMenu->addAction ( actionEditDeleteVymLink ); - - branchContextMenu->addSeparator(); branchContextMenu->addAction ( actionFormatFrameNone ); branchContextMenu->addAction ( actionFormatFrameRectangle); @@ -1551,13 +1545,36 @@ branchContextMenu->addAction ( actionFormatIncludeImagesHor ); branchContextMenu->addAction ( actionFormatHideLinkUnselected ); - // Context Menu for links in a branch menu + // Submenu for Links (URLs, vymLinks) + branchLinksContextMenu =new QMenu (this); + + branchContextMenu->addSeparator(); + branchLinksContextMenu=branchContextMenu->addMenu(tr("URLs and vymLinks")); + branchLinksContextMenu->addAction ( actionEditOpenURL ); + branchLinksContextMenu->addAction ( actionEditOpenURLTab ); + branchLinksContextMenu->addAction ( actionEditOpenMultipleURLTabs ); + branchLinksContextMenu->addAction ( actionEditURL ); + branchLinksContextMenu->addAction ( actionEditHeading2URL ); + branchLinksContextMenu->addAction ( actionEditBugzilla2URL ); + if (settings.value( "/mainwindow/showTestMenu",true).toBool() ) + { + branchLinksContextMenu->addAction ( actionEditFATE2URL ); + } + branchLinksContextMenu->addSeparator(); + branchLinksContextMenu->addAction ( actionEditOpenVymLink ); + branchLinksContextMenu->addAction ( actionEditOpenMultipleVymLinks ); + branchLinksContextMenu->addAction ( actionEditVymLink ); + branchLinksContextMenu->addAction ( actionEditDeleteVymLink ); + + + // Context Menu for XLinks in a branch menu // This will be populated "on demand" in MapEditor::updateActions branchContextMenu->addSeparator(); - branchLinksContextMenuEdit =branchContextMenu->addMenu (tr ("Edit XLink")); - branchLinksContextMenuFollow =branchContextMenu->addMenu (tr ("Follow XLink")); - connect( branchLinksContextMenuFollow, SIGNAL( triggered(QAction *) ), this, SLOT( editFollowXLink(QAction * ) ) ); - connect( branchLinksContextMenuEdit, SIGNAL( triggered(QAction *) ), this, SLOT( editEditXLink(QAction * ) ) ); + branchXLinksContextMenuEdit =branchContextMenu->addMenu (tr ("Edit XLink")); + branchXLinksContextMenuFollow =branchContextMenu->addMenu (tr ("Follow XLink")); + connect( branchXLinksContextMenuFollow, SIGNAL( triggered(QAction *) ), this, SLOT( editFollowXLink(QAction * ) ) ); + connect( branchXLinksContextMenuEdit, SIGNAL( triggered(QAction *) ), this, SLOT( editEditXLink(QAction * ) ) ); + // Context menu for floatimage floatimageContextMenu =new QMenu (this); @@ -2368,6 +2385,9 @@ if ( fd->exec() == QDialog::Accepted ) { QString fn=fd->selectedFile(); + if (!fn.contains (".odp")) + fn +=".odp"; + //lastImageDir=fn.left(fn.findRev ("/")); if (currentMapEditor()) currentMapEditor()->exportOOPresentation(fn,fd->selectedConfig()); @@ -2623,10 +2643,7 @@ if (currentMapEditor()) { QStringList urls; - urls.append ("www.suse.de"); - urls.append ("www.google.de"); - urls.append ("www.heise.de"); - urls.append ("www.insilmaril.de"); + urls=currentMapEditor()->getURLs(); openTabs (urls); } } @@ -2661,7 +2678,13 @@ if (lineedit->isVisible()) { if (currentMapEditor()) - currentMapEditor()->setHeading(lineedit->text()); + { + MapEditor *me=currentMapEditor(); + QString oldSel=me->getSelectString(); + if (me->select (editSel)) + me->setHeading(lineedit->text()); + me->select (oldSel); + } lineedit->releaseKeyboard(); lineedit->hide(); setFocus(); @@ -2697,6 +2720,8 @@ lineedit->show(); lineedit->grabKeyboard(); lineedit->setFocus(); + + editSel=currentMapEditor()->getSelectString(); #endif } @@ -2704,13 +2729,10 @@ } } -void Main::editOpenVymLink() +void Main::openVymLinks(const QStringList &vl) { - // Get current path to map - QString currentVymLink; - if (currentMapEditor()) + for (int j=0; jgetVymLink(); // compare path with already loaded maps int index=-1; int i; @@ -2718,7 +2740,7 @@ for (i=0;i<=tabWidget->count() -1;i++) { me=(MapEditor*)tabWidget->page(i); - if (currentVymLink==me->getFilePath() ) + if (vl.at(j)==me->getFilePath() ) { index=i; break; @@ -2727,12 +2749,12 @@ if (index<0) // Load map { - if (!QFile(currentVymLink).exists() ) + if (!QFile(vl.at(j)).exists() ) QMessageBox::critical( 0, tr( "Critical Error" ), - tr("Couldn't open map %1").arg(currentVymLink)); + tr("Couldn't open map %1").arg(vl.at(j))); else { - fileLoad (currentVymLink, NewMap); + fileLoad (vl.at(j), NewMap); tabWidget->setCurrentPage (tabWidget->count()-1); } } else @@ -2741,6 +2763,26 @@ } } +void Main::editOpenVymLink() +{ + if (currentMapEditor()) + { + QStringList vl; + vl.append(currentMapEditor()->getVymLink()); + openVymLinks (vl); + } +} + +void Main::editOpenMultipleVymLinks() +{ + QString currentVymLink; + if (currentMapEditor()) + { + QStringList vl=currentMapEditor()->getVymLinks(); + openVymLinks (vl); + } +} + void Main::editVymLink() { if (currentMapEditor()) @@ -2903,13 +2945,13 @@ { if (currentMapEditor()) - currentMapEditor()->followXLink(branchLinksContextMenuFollow->actions().indexOf(a)); + currentMapEditor()->followXLink(branchXLinksContextMenuFollow->actions().indexOf(a)); } void Main::editEditXLink(QAction *a) { if (currentMapEditor()) - currentMapEditor()->editXLink(branchLinksContextMenuEdit->actions().indexOf(a)); + currentMapEditor()->editXLink(branchXLinksContextMenuEdit->actions().indexOf(a)); } void Main::formatSelectColor()