[freeplane] 01/03: Imported Upstream version 1.5.15
Felix Natter
fnatter-guest at moszumanska.debian.org
Sat Aug 27 11:25:23 UTC 2016
This is an automated email from the git hooks/post-receive script.
fnatter-guest pushed a commit to branch master
in repository freeplane.
commit daf7fc3f0fcf8915d584845c77d14c713afe43d9
Author: Felix Natter <fnatter at gmx.net>
Date: Sat Aug 27 13:16:08 2016 +0200
Imported Upstream version 1.5.15
---
freeplane/doc/history_en.txt | 4 ++
.../resources/default_accelerators_mac.properties | 1 +
.../resources/translations/Resources_nl.properties | 59 +++++++++++-----------
.../freeplane/core/util/FreeplaneIconUtils.java | 22 +++++++-
.../java/org/freeplane/core/util/Quantity.java | 5 ++
.../features/attribute/AttributeRegistry.java | 3 +-
.../features/icon/factory/ImageIconFactory.java | 3 +-
.../org/freeplane/features/map/MapController.java | 2 +
.../mindmapmode/MLocationController.java | 2 +-
.../mindmapmode/MNodeStyleController.java | 4 +-
.../features/text/mindmapmode/JoinNodesAction.java | 2 +-
.../main/mindmapmode/UpdateCheckAction.java | 4 +-
.../org/freeplane/view/swing/map/MapScroller.java | 2 +
.../java/org/freeplane/view/swing/map/MapView.java | 4 ++
.../org/freeplane/view/swing/map/NodeView.java | 2 +-
.../view/swing/ui/DefaultMouseWheelListener.java | 3 +-
.../org/freeplane/core/util/QuantityShould.java | 7 +++
.../translations/Resources_en.properties | 37 +-------------
freeplane/viewer-resources/version.properties | 2 +-
.../windows-installer/Freeplane_without_Java.iss | 2 +-
.../windows-portable/App/AppInfo/appinfo.ini | 4 +-
.../scripts/installScriptAddOn.groovy | 9 ++--
gitinfo.properties | 2 +-
gitinfo.txt | 2 +-
24 files changed, 100 insertions(+), 87 deletions(-)
diff --git a/freeplane/doc/history_en.txt b/freeplane/doc/history_en.txt
index a3c65f7..1e91b72 100644
--- a/freeplane/doc/history_en.txt
+++ b/freeplane/doc/history_en.txt
@@ -1,4 +1,8 @@
===============================
+1.5.15
+===============================
+
+===============================
1.5.14
===============================
Fix latex export and support latex in style editor
diff --git a/freeplane/resources/default_accelerators_mac.properties b/freeplane/resources/default_accelerators_mac.properties
index 4ab76da..3d4de57 100644
--- a/freeplane/resources/default_accelerators_mac.properties
+++ b/freeplane/resources/default_accelerators_mac.properties
@@ -3,3 +3,4 @@ acceleratorFor.MindMap/NewParentNode=shift TAB
acceleratorFor.MindMap/NewSummaryAction=alt shift TAB
acceleratorFor.MindMap/SelectNoteAction=meta PERIOD
acceleratorFor.MindMap/OpenLastOpenedAction_1=meta 1
+acceleratorFor.MindMap/DeleteAction=BACK_SPACE
diff --git a/freeplane/resources/translations/Resources_nl.properties b/freeplane/resources/translations/Resources_nl.properties
index 75b04c5..51d83bb 100644
--- a/freeplane/resources/translations/Resources_nl.properties
+++ b/freeplane/resources/translations/Resources_nl.properties
@@ -168,12 +168,12 @@ branch=Tak
browse=Verkennen...
calendar_attributes_panel=Agenda en attributen
calendar_panel=Agenda
-can_not_clone_encrypted_node=versleutelde knooppunten kunnen niet gekopieerd worden
+can_not_clone_encrypted_node=Versleutelde knopen kunnen niet gekloond worden
can_not_connect_to_info_server=Kan geen verbinding maken met de server
can_not_delete_predefined_style=Kan voorgedefinieerde opmaakstijl niet wissen
can_not_delete_root_style=Kan opmaakstijl stamknoop niet wissen
can_not_delete_style_group=Kan sijlgroep niet wissen
-can_not_encrypt_cloned_node=gekopieerde knopen kunnen niet versleuteld worden
+can_not_encrypt_cloned_node=Gekloonde knopen kunnen niet versleuteld worden
can_not_save_key_set=Kan de set met sneltoetsen niet bewaren
cancel=&Annuleren
CancelAction.text=Annuleren
@@ -206,7 +206,7 @@ choose_node_background_color=Kies achtergrondkleur knoop:
choose_node_color=Kies tekstkleur voor de knoop:
ClearLinkAnchorAction.text=Wissen koppelingsanker
ClearLinkAnchorAction.tooltip=<html>wis eerder ingesteld knoopanker</html>
-CloneAction.text=invoegen van kopie
+CloneAction.text=Plakken kloon
close_btn=Sluiten
CloseAction.text=Sluiten mindmap
cloud_shapes=cloud vormen
@@ -226,7 +226,7 @@ connector_label=Label bij verbindingslijn
connector_lines=Lijnvorm verbindingslijn
connector_shapes=Bochtvorm verbindingslijn
ConnectorColorAction.text=Kleur verbindingslijn...
-ConvertCloneToIndependentNodeAction.text=verwijder kopie
+ConvertCloneToIndependentNodeAction.text=Ontklonen
CopyAction.text=Kopi\u00EBren
CopyAction.tooltip=Kopieer geselecteerde tak
CopyAttributes.text=Kopi\u00EBren attributen
@@ -380,7 +380,7 @@ FaqOpenURLAction.text=FAQ
file=&Bestand
file_already_exists=Het bestand {0} bestaat al. Wil je het overschrijven?
file_not_found=Bestand {0} niet gevonden
-FileListFlavorHandler=Hyperlinks naar bestanden
+FileListFlavorHandler=Snelkoppelingen naar bestanden
FileProperties_BranchLeafCount=Aaantal bladknopen in geselecteerde tak(ken)
FileProperties_BranchNodeCount=Aantal knopen in geselecteerde tak(ken):
FileProperties_ChangesSinceLastSave=Wijzigingen na laatste keer bewaren:
@@ -479,7 +479,7 @@ FoldOneLevelAction.text=E\u00E9n niveau dichtvouwen
FoldOneLevelAction.tooltip=<html> E\u00E9n niveau dichtvouwen.</html>
follow_clone=Binnen ''{0}''
follow_graphical_link=Ga naar ''{0}''
-FollowLinkAction.text=Openen hyperlink
+FollowLinkAction.text=Openen snelkoppeling
font=Lettertype
FontFamilyAction.text=Lettertypenaam (font)
FontSizeAction.text=Lettertypegrootte
@@ -681,7 +681,7 @@ IconSelectionPlugin.tooltip=<html> Hier kun je een pictogram kiezen..</html>
image_covertLink=Converteer koppeling naar afbeelding
ImageFlavorHandler=Afbeelding (gebruik apart bestand)
import=Importeren
-import_linked_branch_no_link=De geselecteerde knoop heeft geen hyperlink om de afbeelding te importeren.
+import_linked_branch_no_link=De geselecteerde knoop heeft geen snelkoppeling om de afbeelding te importeren.
ImportAction.text=Importeren
ImportBranchAction.text=Importeren volledige tak...
ImportExplorerFavoritesAction.text=Importeren Explorer-favorieten...
@@ -783,14 +783,14 @@ map_locked_by_open=De mindmap {0} wordt al bewerkt door gebruiker {1} en wordt a
map_locked_by_save_as=De mindmap {0} wordt al bewerkt door gebruiker {1}. De actie bewaren-als is afgebroken.
map_not_saved=De mindmap was niet opgeslagen.
MapBackgroundClearAction.text=Wissen
-MapBackgroundColorAction.text=Achtergrondkleur mindmap
+MapBackgroundColorAction.text=Achtergrondkleur
MapBackgroundImageAction.text=Achtergrondafbeelding...
maps=Mindmaps
MaxNodeWidth.text=Bepaal maximum knoopbreedte
menu_applyStyle=Toepassen stijl
menu_attributes=Attributen
menu_clouds=Wolk
-menu_copy=Kopieren
+menu_copy=Kopi\u00EBren
menu_coreFormat=Knoopkern
menu_details=Knoopuitbreiding
menu_displayAttributes=Knoopattributen
@@ -913,8 +913,8 @@ NodeUpAction.text=Knoop naar boven
nonboldify_branch=Vet uitschakelen
nonitalicise_branch=Schuin uitschakelen
normal=Normaal
-not_saved_for_image_error=De mindmap moet opgeslagen worden voordat je een afbeelding kunt toevoegen met de bestandskiezer of via een hyperlink
-not_saved_for_link_error=De mindmap moet zijn voor je met de bestandskiezer een hyperlink kunt toevoegen
+not_saved_for_image_error=De mindmap moet opgeslagen worden voordat je een afbeelding kunt toevoegen met de bestandskiezer of via een snelkoppeling
+not_saved_for_link_error=De mindmap moet zijn voor je met de bestandskiezer een snelkoppeling kunt toevoegen
note_window_location=Positie notitiehulpvenster
notes=Knoopnotitie
NotificationOptions.CLOSE=Sluit
@@ -924,7 +924,7 @@ NotificationOptions.SELECT_NODE=Ga naar herinnering
ok=OK
OKAction.text=OK
OnlineReference.text=Online documentatiemindmaps
-open_asMindMap=Miindmap
+open_asMindMap=Mindmap
OpenAction.text=Openen mindmap...
OpenFreeplaneSiteAction.text=Thuispagina op Internet van Freeplane
OpenMapsAddLocation.text=Toevoegen OpenMap locatie...
@@ -1026,7 +1026,7 @@ OptionPanel.edgestyle.tooltip=Opmaak van de tak naar de ouderknoop; deze wordt o
OptionPanel.edgewidth=Dikte tak
OptionPanel.edgewidth.tooltip=Opmaak van de tak naar de ouderknoop; deze wordt ook toegepast naar de eigen kindknopen
OptionPanel.EDIT_CURRENT=Inhoud overschrijven
-OptionPanel.edit_on_double_click=Bewerkinsmode na dubbelklikken
+OptionPanel.edit_on_double_click=Bewerkingsmode na dubbelklikken
OptionPanel.editor_extra_width=Extra diktestap
OptionPanel.editor_extra_width.tooltip=<html>Bepaalt het aantal pixels waarmee de knoopbreedte groter wordt als de tekst te breed is..</html>
OptionPanel.el=Grieks \u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC
@@ -1077,7 +1077,7 @@ OptionPanel.groovy_editor_font.tooltip=Gebruik 'Dialog' of 'Monospaced'als je un
OptionPanel.groovy_editor_font_size=Lettergrootte voor Groovy Syntax Highlighting Editor
OptionPanel.gtk=Gtk
OptionPanel.hide_edge=Verborgen
-OptionPanel.highlight_formulas=Accentueren furmules
+OptionPanel.highlight_formulas=Accentueren formules
OptionPanel.horizontal=Rechte bocht
OptionPanel.hr=Kroatisch / Hrvatski
OptionPanel.HTML=HTML
@@ -1120,7 +1120,7 @@ OptionPanel.latex_macros=Algemene LaTeX Macros
OptionPanel.layout_map_on_text_change=Map layout bij bewerken
OptionPanel.layout_map_on_text_change.tooltip=Schakel uit voor betere werking
OptionPanel.linear=Rechte lijn
-OptionPanel.links=Hyperlinks
+OptionPanel.links=Snelkoppelingen
OptionPanel.links.tooltip=<html> Stel kyperlinks in als relatief of absoluuut</html>
OptionPanel.load_folding=Bij openen
OptionPanel.load_folding_from_map_default_fold_all=Uit mindmap overnemen om alles open/dicht te vouwen
@@ -1152,7 +1152,7 @@ OptionPanel.nodebackgroundcolor.tooltip=Achtergrondkleur knoop indien niet gesel
OptionPanel.nodecolor=Tekstkleur
OptionPanel.nodecolor.tooltip=Tekstkleur knoop indien niet geselecteerd.
OptionPanel.nodefontbold=Vet lettertype
-OptionPanel.nodefonthyperlink=Hyperlink
+OptionPanel.nodefonthyperlink=Snelkoppeling
OptionPanel.nodefontitalic=Schuin lettertype
OptionPanel.nodefontname=Naam lettertype
OptionPanel.nodefontsize=Grootte lettertype
@@ -1249,7 +1249,7 @@ OptionPanel.separator.formula=Plugin voor formules
OptionPanel.separator.General=Algemeen
OptionPanel.separator.html_export=HTML-exporteren
OptionPanel.separator.html_import=HTML Importeren
-OptionPanel.separator.hyperlink_types=Hyperlinktypes
+OptionPanel.separator.hyperlink_types=Types snelkoppelingen
OptionPanel.separator.icon_properties=Pictogrammen
OptionPanel.separator.icons=Pictogrammen in "Selecteren pictogram..."
OptionPanel.separator.initial_map_size=Initi\u00EBle grootte mindmap
@@ -1306,7 +1306,7 @@ OptionPanel.single_backup_directory=Gebruik dezelfde directory voor back-up best
OptionPanel.single_backup_directory.tooltip=<html> Als bestanden van backups en automatisch bewaren in bijelkaar in een directory geplaatst moeten worden, in plaats van in een subdirectory in de directory waarin de mindmap staat. </html>
OptionPanel.single_backup_directory_path=Backup directory (als bovenstaande optie geselecteerd is)
OptionPanel.single_backup_directory_path.tooltip=<html> Gaat boven defaut <freeplaneuserdir>/.backup</html>
-OptionPanel.single_instance=Open bestanden van lopende instantie
+OptionPanel.single_instance=Open bestanden in een lopende instantie
OptionPanel.single_instance_force=Vermijd in ieder geval tweede instantie
OptionPanel.single_instance_force.tooltip=Voorkom tweede instantie ook als geen file wordt geladen
OptionPanel.sk=Slovaaks / sloven\u010Dina
@@ -1327,10 +1327,10 @@ OptionPanel.standardcloudestyle=Standaard wolkstijl
OptionPanel.standardcloudestyle.tooltip=<html> De standaard wolkstijl. Op dit moment is enkel 'bocht' mogelijk</html>
OptionPanel.standarddrawrectangleforselection=Tonen geselecteerde knopen met een omlijning
OptionPanel.standarddrawrectangleforselection.tooltip=<html> Markeren geselecteerde knopen met een omlijning.</html>
-OptionPanel.standardlinkcolor=Standaard kleur van een hyperlink
-OptionPanel.standardlinkcolor.tooltip=<html> De standaardkleur van de hyperlink in html-notatie </html>
-OptionPanel.standardlinkestyle=Standaardstijl hyperlink
-OptionPanel.standardlinkestyle.tooltip=<html> De standaarstijl voor hyperlink: op dit moment wordt alleen 'bocht' ondersteund</html>
+OptionPanel.standardlinkcolor=Standaard kleur voor een snelkoppeling
+OptionPanel.standardlinkcolor.tooltip=<html> De standaardkleur van de snelkoppeling in html-notatie </html>
+OptionPanel.standardlinkestyle=Standaardstijl snelkoppeling
+OptionPanel.standardlinkestyle.tooltip=<html> De standaarstijl voor snelkoppeling: op dit moment wordt alleen 'bocht' ondersteund</html>
OptionPanel.standardselectednodecolor=Standaardkleur geselecteerde knoop
OptionPanel.standardselectednodecolor.tooltip=<html> De standaard tekstkleur indien geselecteerd. In html-notatie (#RRGGBB in hex waarden) </html>
OptionPanel.standardselectednoderectanglecolor=Kleur knoopomlijning geselecteerde knoop
@@ -1456,7 +1456,7 @@ plugins/TimeManagement.xml_Replace_All=Alles vervangen
plugins/TimeManagement.xml_Replace_Selected=Selectie vervangen
plugins/TimeManagement.xml_Select=Selecteren
plugins/TimeManagement.xml_todayButton=Vandaag
-plugins/TimeManagement.xml_WindowTitle=Agenda
+plugins/TimeManagement.xml_WindowTitle=Herinneringen
plugins/TimeManagement.xml_WindowTitle_All_Nodes=Zoeken en vervangen
preferences=Voorkeuren
print_preview_title=Afdrukvoorbeeld
@@ -1499,7 +1499,7 @@ RemoveIconAction.text=Verwijderen laatste pictogram
RemoveNoteAction.text=Verwijderen knoopnotitie
RemoveNoteAction.tooltip=<html> Verwijderen inhoud van notitievenster.</html>
rename=&Hernoemen
-repair_link=Herstellen hyperlink
+repair_link=Herstellen snelkoppeling
repair_link_question=Kan de gekoppelde mindmap niet laden. Wilt u de koppeling handmatig herstellen?
replace=Vervangen
replace_shortcut_question=Deze sneltoets is op dit moment verbonden mer\n {0}.\nDeze koppeling verwijderen ?
@@ -1528,6 +1528,7 @@ script_execution_disabled=Geen uivoering van script
ScriptEditor.text=Bewerken scripts...
ScriptEditor.tooltip=Laat toe om grotere scripts te maken in Freeplane.
ScriptEditorPanel.changed_cancel=De scripts werden veranderd. Ben je zeker dat je de aanpassingen niet wil bewaren ?
+scripting=Scripts
scripting_api_generator_legend=Legenda
scripting_api_generator_proxy=Proxy
scripting_api_generator_title=API voor scripts
@@ -1548,13 +1549,13 @@ selection_method_direct=Aanwijzen om te selecteren
SelectNoteAction.text=Bewerken notitiehulpvenster
SelectNoteAction.tooltip=Wissel naar/van notitievenster
set_accelerator_on_next_click_action=Om eennieuwe sneltoets toe te wijzen: druk op 'Ctr' tijdens het aankikken van het commando.
-SetAccelerator.dialogTitle=Definitie snelkoppeling
+SetAccelerator.dialogTitle=Definitie sneltoets
SetAccelerator.keystrokeDetected=Toets ''{0}'' is niet aan een menu item toegewezen.
SetAcceleratorOnNextClickAction.text=Toewijzen sneltoets...
SetImageByFileChooserAction.text=Toevoegen afbeelding of converteren link...
SetLinkAnchorAction.text=Zetten koppelingsanker
-SetLinkAnchorAction.tooltip=<html>instellen geselekteerde knoop als anker voor later te<br/>maken van een hyperlink tussen knopen (ook tussen mindmaps).
-SetLinkAnchorAction.tooltip_anchored=<html>instellen geselekteerde knoop als anker voor later te<br/>maken hyperlink tussen knopen. Huidig anker:<br/>{0}
+SetLinkAnchorAction.tooltip=<html>instellen geselekteerde knoop als anker voor later te<br/>maken snelkoppeling met andere knoop of mindmap.
+SetLinkAnchorAction.tooltip_anchored=<html>instellen geselekteerde knoop als anker voor later te<br/>maken snelkoppeling met andere knoop of mindmap. Huidig anker:<br/>{0}
SetLinkByFileChooserAction.text=Koppeling kiezen...
SetLinkByTextFieldAction.text=Koppeling typen of wijzigen...
SetNodeLink.text=Maak knoopkoppeling...
@@ -1799,9 +1800,9 @@ summary_nodes=Groepsknopen
summary_not_possible=Kan voor huidige selectie geen groepsknoop maken
svg=SVG
template_dir=Standaard mindmapstijlen
-TimeListAction.text=Managen taken...
+TimeListAction.text=Taakbeheer...
TimeListAction.tooltip=Toont alle geplande herinneringen en de bijhorende knopen.
-TimeManagementAction.text=Managen tijd...
+TimeManagementAction.text=Agenda...
TimeManagementAction.tooltip=<html> Start de agendamodule.</html>
ToggleChildrenFoldedAction.text=Kleinkinderen open/dichtvouwen
ToggleDetailsAction.text=Tonen knoopdetails
diff --git a/freeplane/src/main/java/org/freeplane/core/util/FreeplaneIconUtils.java b/freeplane/src/main/java/org/freeplane/core/util/FreeplaneIconUtils.java
index 953c44f..2e26e38 100644
--- a/freeplane/src/main/java/org/freeplane/core/util/FreeplaneIconUtils.java
+++ b/freeplane/src/main/java/org/freeplane/core/util/FreeplaneIconUtils.java
@@ -1,5 +1,8 @@
package org.freeplane.core.util;
+import java.net.URL;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
import java.util.ArrayList;
import java.util.List;
@@ -31,11 +34,26 @@ public class FreeplaneIconUtils {
}
public static ImageIcon createImageIcon(final String resourcePath) {
- return new ImageIcon(ResourceController.getResourceController().getResource(resourcePath));
+ final URL resourceUrl = ResourceController.getResourceController().getResource(resourcePath);
+ return createImageIcon(resourceUrl);
}
public static ImageIcon createImageIconByResourceKey(final String resourceKey) {
final ResourceController resourceController = ResourceController.getResourceController();
- return new ImageIcon(resourceController.getResource(resourceController.getProperty(resourceKey)));
+ final URL resourceUrl = resourceController.getResource(resourceController.getProperty(resourceKey));
+ return createImageIcon(resourceUrl);
+ }
+
+ public static ImageIcon createImageIconPrivileged(final URL resourceUrl) {
+ return AccessController.doPrivileged(new PrivilegedAction<ImageIcon>() {
+ @Override
+ public ImageIcon run() {
+ return createImageIcon(resourceUrl);
+ }
+ });
+ }
+
+ private static ImageIcon createImageIcon(final URL resourceUrl) {
+ return new ImageIcon(resourceUrl);
}
}
diff --git a/freeplane/src/main/java/org/freeplane/core/util/Quantity.java b/freeplane/src/main/java/org/freeplane/core/util/Quantity.java
index 3c3eb1e..7a031ed 100644
--- a/freeplane/src/main/java/org/freeplane/core/util/Quantity.java
+++ b/freeplane/src/main/java/org/freeplane/core/util/Quantity.java
@@ -80,6 +80,11 @@ public class Quantity <U extends Enum<U> & Convertible >{
throw new IllegalStateException("non negative value required");
}
+ public static <U extends Enum<U> & Convertible> void assertNonNegativeOrNull(Quantity<U> quantity) {
+ if(quantity != null)
+ quantity.assertNonNegative();
+ }
+
public Quantity<U> add(Quantity<U> second) {
if(unit == second.unit)
return new Quantity<U>(value + second.value, unit);
diff --git a/freeplane/src/main/java/org/freeplane/features/attribute/AttributeRegistry.java b/freeplane/src/main/java/org/freeplane/features/attribute/AttributeRegistry.java
index 48b0a54..d5e99a1 100644
--- a/freeplane/src/main/java/org/freeplane/features/attribute/AttributeRegistry.java
+++ b/freeplane/src/main/java/org/freeplane/features/attribute/AttributeRegistry.java
@@ -150,7 +150,8 @@ public class AttributeRegistry implements IExtension {
}
public void fireStateChanged() {
- for (ChangeListener l : changeListeners) {
+ final ChangeListener[] currentChangeListeners = changeListeners.toArray(new ChangeListener[changeListeners.size()]);
+ for (ChangeListener l : currentChangeListeners) {
if (changeEvent == null) {
changeEvent = new ChangeEvent(this);
}
diff --git a/freeplane/src/main/java/org/freeplane/features/icon/factory/ImageIconFactory.java b/freeplane/src/main/java/org/freeplane/features/icon/factory/ImageIconFactory.java
index 8dbe24e..f619acd 100644
--- a/freeplane/src/main/java/org/freeplane/features/icon/factory/ImageIconFactory.java
+++ b/freeplane/src/main/java/org/freeplane/features/icon/factory/ImageIconFactory.java
@@ -25,6 +25,7 @@ import java.util.WeakHashMap;
import javax.swing.ImageIcon;
import org.freeplane.core.resources.ResourceController;
+import org.freeplane.core.util.FreeplaneIconUtils;
import org.freeplane.features.icon.UIIcon;
/**
@@ -56,7 +57,7 @@ public final class ImageIconFactory {
result = ICON_CACHE.get(url);
}
else {
- result = new ImageIcon(url);
+ result = FreeplaneIconUtils.createImageIconPrivileged(url);
ICON_CACHE.put(url, result);
}
}
diff --git a/freeplane/src/main/java/org/freeplane/features/map/MapController.java b/freeplane/src/main/java/org/freeplane/features/map/MapController.java
index 95f724e..258c757 100644
--- a/freeplane/src/main/java/org/freeplane/features/map/MapController.java
+++ b/freeplane/src/main/java/org/freeplane/features/map/MapController.java
@@ -650,6 +650,8 @@ public class MapController extends SelectionController implements IExtension{
*/
public NodeModel getNodeFromID(final String nodeID) {
final MapModel map = Controller.getCurrentController().getMap();
+ if(map == null)
+ return null;
final NodeModel node = map.getNodeForID(nodeID);
return node;
}
diff --git a/freeplane/src/main/java/org/freeplane/features/nodelocation/mindmapmode/MLocationController.java b/freeplane/src/main/java/org/freeplane/features/nodelocation/mindmapmode/MLocationController.java
index 6441ce0..d62dff2 100644
--- a/freeplane/src/main/java/org/freeplane/features/nodelocation/mindmapmode/MLocationController.java
+++ b/freeplane/src/main/java/org/freeplane/features/nodelocation/mindmapmode/MLocationController.java
@@ -108,7 +108,7 @@ public class MLocationController extends LocationController {
public void setMinimalDistanceBetweenChildren(NodeModel node, final Quantity<LengthUnits> minimalDistanceBetweenChildren){
if(node != null){
- minimalDistanceBetweenChildren.assertNonNegative();
+ Quantity.assertNonNegativeOrNull(minimalDistanceBetweenChildren);
final IActor actor = new ChangeVGapActor(node, minimalDistanceBetweenChildren);
Controller.getCurrentModeController().execute(actor, node.getMap());
}
diff --git a/freeplane/src/main/java/org/freeplane/features/nodestyle/mindmapmode/MNodeStyleController.java b/freeplane/src/main/java/org/freeplane/features/nodestyle/mindmapmode/MNodeStyleController.java
index 57f97fc..fe2004b 100644
--- a/freeplane/src/main/java/org/freeplane/features/nodestyle/mindmapmode/MNodeStyleController.java
+++ b/freeplane/src/main/java/org/freeplane/features/nodestyle/mindmapmode/MNodeStyleController.java
@@ -588,7 +588,7 @@ public class MNodeStyleController extends NodeStyleController {
modeController.execute(actor, node.getMap());
}
public void setMinNodeWidth(final NodeModel node, final Quantity<LengthUnits> minNodeWidth) {
- minNodeWidth.assertNonNegative();
+ Quantity.assertNonNegativeOrNull(minNodeWidth);
final NodeSizeModel sizeModel = createOwnSizeModel(node);
final Quantity<LengthUnits> oldValue = NodeSizeModel.getMinNodeWidth(node);
final IActor actor = new IActor() {
@@ -616,7 +616,7 @@ public class MNodeStyleController extends NodeStyleController {
}
public void setMaxNodeWidth(final NodeModel node, final Quantity<LengthUnits> maxNodeWidth) {
- maxNodeWidth.assertNonNegative();
+ Quantity.assertNonNegativeOrNull(maxNodeWidth);
final NodeSizeModel sizeModel = createOwnSizeModel(node);
final Quantity<LengthUnits> oldValue = NodeSizeModel.getMaxNodeWidth(node);
final IActor actor = new IActor() {
diff --git a/freeplane/src/main/java/org/freeplane/features/text/mindmapmode/JoinNodesAction.java b/freeplane/src/main/java/org/freeplane/features/text/mindmapmode/JoinNodesAction.java
index c420503..4fa84a7 100644
--- a/freeplane/src/main/java/org/freeplane/features/text/mindmapmode/JoinNodesAction.java
+++ b/freeplane/src/main/java/org/freeplane/features/text/mindmapmode/JoinNodesAction.java
@@ -44,7 +44,7 @@ class JoinNodesAction extends AFreeplaneAction {
}
public void actionPerformed(final ActionEvent e) {
- final List<NodeModel> orderedSelection = Controller.getCurrentController().getSelection().getOrderedSelection();
+ final List<NodeModel> orderedSelection = Controller.getCurrentController().getSelection().getSortedSelection(false);
final List<NodeModel> selectedNodes = new ArrayList<NodeModel>(orderedSelection);
MTextController.getController().joinNodes(selectedNodes, separator);
}
diff --git a/freeplane/src/main/java/org/freeplane/main/mindmapmode/UpdateCheckAction.java b/freeplane/src/main/java/org/freeplane/main/mindmapmode/UpdateCheckAction.java
index 17a66d8..18bb402 100644
--- a/freeplane/src/main/java/org/freeplane/main/mindmapmode/UpdateCheckAction.java
+++ b/freeplane/src/main/java/org/freeplane/main/mindmapmode/UpdateCheckAction.java
@@ -55,7 +55,7 @@ class UpdateCheckAction extends AFreeplaneAction {
* the sid.
*/
private static final long serialVersionUID = 1L;
- private static final int TWO_DAYS = 1 * 24 * 60 * 60 * 1000;
+ private static final int ONE_DAY = 1 * 24 * 60 * 60 * 1000;
private static final String UPDATE_BUTTON_LOCATION = "main_toolbar_update";
// /**
// * the url where to download the newest version
@@ -274,7 +274,7 @@ class UpdateCheckAction extends AFreeplaneAction {
final Date now = new Date();
final long nextCheckMillis = ResourceController.getResourceController().getLongProperty(LAST_UPDATE_CHECK_TIME,
0)
- + TWO_DAYS;
+ + ONE_DAY;
final Date nextCheckDate = new Date(nextCheckMillis);
if (now.before(nextCheckDate)) {
final FreeplaneVersion knownNewVersion = getKnownNewVersion();
diff --git a/freeplane/src/main/java/org/freeplane/view/swing/map/MapScroller.java b/freeplane/src/main/java/org/freeplane/view/swing/map/MapScroller.java
index bc4d309..8a8d965 100644
--- a/freeplane/src/main/java/org/freeplane/view/swing/map/MapScroller.java
+++ b/freeplane/src/main/java/org/freeplane/view/swing/map/MapScroller.java
@@ -161,6 +161,8 @@ class MapScroller {
}
private void scrollNodeToVisible(final NodeView node, final int extraWidth) {
+ if(node == null)
+ return;
if(scrollingDirective == ScrollingDirective.DONE || scrollingDirective == ScrollingDirective.ANCHOR)
scrollingDirective = ScrollingDirective.MAKE_NODE_VISIBLE;
if (scrolledNode != null && scrollingDirective != ScrollingDirective.MAKE_NODE_VISIBLE) {
diff --git a/freeplane/src/main/java/org/freeplane/view/swing/map/MapView.java b/freeplane/src/main/java/org/freeplane/view/swing/map/MapView.java
index b946e39..ba10034 100644
--- a/freeplane/src/main/java/org/freeplane/view/swing/map/MapView.java
+++ b/freeplane/src/main/java/org/freeplane/view/swing/map/MapView.java
@@ -1168,6 +1168,10 @@ public class MapView extends JPanel implements Printable, Autoscroll, IMapChange
}
else
backgroundComponent = (JComponent) factory.createViewer(uri, zoom);
+ if(backgroundComponent == null) {
+ LogUtils.warn("no viewer created for " + uri);
+ return;
+ }
((ScalableComponent) backgroundComponent).setCenter(true);
((ScalableComponent)backgroundComponent).setImageLoadingListener(new ImageLoadingListener() {
public void imageLoaded() {
diff --git a/freeplane/src/main/java/org/freeplane/view/swing/map/NodeView.java b/freeplane/src/main/java/org/freeplane/view/swing/map/NodeView.java
index 7541757..a4ae1ae 100644
--- a/freeplane/src/main/java/org/freeplane/view/swing/map/NodeView.java
+++ b/freeplane/src/main/java/org/freeplane/view/swing/map/NodeView.java
@@ -900,7 +900,7 @@ public class NodeView extends JComponent implements INodeView {
}
public void onNodeDeleted(NodeDeletionEvent nodeDeletionEvent) {
- if (isFolded) {
+ if (nodeDeletionEvent.index >= getComponentCount() - 1) {
return;
}
final boolean preferredChildIsLeft = preferredChild != null && preferredChild.isLeft();
diff --git a/freeplane/src/main/java/org/freeplane/view/swing/ui/DefaultMouseWheelListener.java b/freeplane/src/main/java/org/freeplane/view/swing/ui/DefaultMouseWheelListener.java
index 0eef5b8..31d9363 100644
--- a/freeplane/src/main/java/org/freeplane/view/swing/ui/DefaultMouseWheelListener.java
+++ b/freeplane/src/main/java/org/freeplane/view/swing/ui/DefaultMouseWheelListener.java
@@ -49,9 +49,8 @@ public class DefaultMouseWheelListener implements MouseWheelListener {
public void mouseWheelMoved(final MouseWheelEvent e) {
final MapView mapView = (MapView) e.getSource();
final ModeController mController = mapView.getModeController();
- if (mController.isBlocked()) {
+ if (mController.isBlocked() || Controller.getCurrentController().getMap() != mapView.getModel())
return;
- }
final Set<IMouseWheelEventHandler> registeredMouseWheelEventHandler = mController.getUserInputListenerFactory()
.getMouseWheelEventHandlers();
for (final IMouseWheelEventHandler handler : registeredMouseWheelEventHandler) {
diff --git a/freeplane/src/test/java/org/freeplane/core/util/QuantityShould.java b/freeplane/src/test/java/org/freeplane/core/util/QuantityShould.java
index a61a0e4..cc38fdf 100644
--- a/freeplane/src/test/java/org/freeplane/core/util/QuantityShould.java
+++ b/freeplane/src/test/java/org/freeplane/core/util/QuantityShould.java
@@ -129,4 +129,11 @@ public class QuantityShould {
Quantity<Metrics> zero = new Quantity<Metrics>(0, Metrics.cm);
zero.assertNonNegative();
}
+
+ @Test()
+ public void nullQuantity_passesOnCheckForNonNegative() throws Exception {
+ Quantity.assertNonNegativeOrNull(null);
+ }
+
}
+
diff --git a/freeplane/viewer-resources/translations/Resources_en.properties b/freeplane/viewer-resources/translations/Resources_en.properties
index a0095c9..3f20969 100644
--- a/freeplane/viewer-resources/translations/Resources_en.properties
+++ b/freeplane/viewer-resources/translations/Resources_en.properties
@@ -373,7 +373,7 @@ ExternalImageAddAction.text=Add image...
ExternalImageChangeAction.text=Change image...
ExternalImageRemoveAction.text=Remove image
ExtractLinkFromTextAction.text=Convert link from within text
-ExtractLinkFromTextAction.tooltip=Set hyper link from address n node text
+ExtractLinkFromTextAction.tooltip=Set hyper link from address in node text
extras=&Tools
f_button_unassigned=<no action>
FaqOpenURLAction.text=FAQ
@@ -1848,40 +1848,7 @@ styles.subtopic=Subtopic
styles.topic=Topic
styles.user-defined=User defined styles
styles.website=Website
-styles_background_html=\n \
-<html>\n \
- <head>\n \
- </head>\n \
- <body>\n \
- <table width="800" style="text-align: left; vertical-align: top">\n \
- <tr valign="top">\n \
- <th>\n \
- <div style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; text-align: center; font-weight: bold">\n \
- About this style set\n \
- </div>\n \
- <div style="text-align: left; font-weight: normal">\n \
- <div style="margin: 3pt">\n \
- This standard was developed after 11 years pedagogy research about how to make the process of knowledge easier and faster.\n \
- </div>\n \
- <div style="margin: 3pt">\n \
- It aims to make the process of assimilating, processing, absorbing, understanding domain and mastering knowledge, information and ideas as fast and easy as possible.\n \
- </div>\n \
- <div style="margin: 3pt">\n \
- It has been developed by Jonas Batista (Brazil).\n \
- You can find more information at: <a href="http://www.jonasbatista.com.br/">www.jonasbatista.com.br/ </a>\n \
- </div>\n \
- </div>\n \
- </th>\n \
- <th>\n \
- <img src="freeplaneresource:/images/JonasBatista.jpg"/>\n \
- <div style="text-align: center">\n \
- Jonas Batista<br/>\n \
- </div>\n \
- </th>\n \
- </tr>\n \
- </table>\n \
- </body>\n \
-</html>
+styles_background_html=\n <html>\n <head>\n </head>\n <body>\n <table width="800" style="text-align: left; vertical-align: top">\n <tr valign="top">\n <th>\n <div style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; text-align: center; font-weight: bold">\n About this style set\n </div>\n <div style="text-align: left; font-weight: normal">\n <div style="margin: 3pt">\n This standard was developed after 11 years pedagogy research about how to make the process o [...]
styles_menu=Available styles
submenu_keystroke_in_use_error=Keystroke {0} can not be used for submenu {1}. Keystroke removed.
summary_nodes=Summary nodes
diff --git a/freeplane/viewer-resources/version.properties b/freeplane/viewer-resources/version.properties
index f10fb89..22b25d1 100644
--- a/freeplane/viewer-resources/version.properties
+++ b/freeplane/viewer-resources/version.properties
@@ -1,2 +1,2 @@
-freeplane_version=1.5.14
+freeplane_version=1.5.15
freeplane_version_status=
diff --git a/freeplane_framework/windows-installer/Freeplane_without_Java.iss b/freeplane_framework/windows-installer/Freeplane_without_Java.iss
index aac352b..7885b3d 100644
--- a/freeplane_framework/windows-installer/Freeplane_without_Java.iss
+++ b/freeplane_framework/windows-installer/Freeplane_without_Java.iss
@@ -11,7 +11,7 @@
; Predrag Cuklin 18/06/2009 - Universial Version
;****************************************************************************
-#define MyVersion "1.5.14"
+#define MyVersion "1.5.15"
#define MyStatus ""
#define MyAppName "Freeplane"
#define MyAppPublisher "Open source"
diff --git a/freeplane_framework/windows-portable/App/AppInfo/appinfo.ini b/freeplane_framework/windows-portable/App/AppInfo/appinfo.ini
index 2ec5466..a6a6e7e 100644
--- a/freeplane_framework/windows-portable/App/AppInfo/appinfo.ini
+++ b/freeplane_framework/windows-portable/App/AppInfo/appinfo.ini
@@ -21,8 +21,8 @@ CommercialUse=true
EULAVersion=1
[Version]
-PackageVersion=1.5.14.1
-DisplayVersion=1.5.14
+PackageVersion=1.5.15.1
+DisplayVersion=1.5.15
[SpecialPaths]
Plugins=NONE
diff --git a/freeplane_plugin_script/scripts/installScriptAddOn.groovy b/freeplane_plugin_script/scripts/installScriptAddOn.groovy
index 44c1a7a..71ca4af 100644
--- a/freeplane_plugin_script/scripts/installScriptAddOn.groovy
+++ b/freeplane_plugin_script/scripts/installScriptAddOn.groovy
@@ -111,15 +111,16 @@ def checkFreeplaneVersion(Map configMap) {
terminate(textUtils.format('addons.installer.too.new', currentVersion, versionTo))
}
-def parseFreeplaneVersion(String propertyName, String versionString) {
+// version could be a FormattedObject
+def parseFreeplaneVersion(String propertyName, Object version) {
try {
- if (versionString)
- return FreeplaneVersion.getVersion(versionString.replaceFirst('^v', ''))
+ if (version)
+ return FreeplaneVersion.getVersion(version.toString().replaceFirst('^v', ''))
return null
}
catch (Exception e) {
e.printStackTrace()
- mapStructureAssert(false, textUtils.format('addons.installer.freeplaneversion.format.error', propertyName, versionString))
+ mapStructureAssert(false, textUtils.format('addons.installer.freeplaneversion.format.error', propertyName, version))
}
}
diff --git a/gitinfo.properties b/gitinfo.properties
index a29563c..7b3786d 100644
--- a/gitinfo.properties
+++ b/gitinfo.properties
@@ -1 +1 @@
-git-revision=7cd85f18e49cb61fd98d59a5b398e82f69860d65 Dimitry Polivaev 2016-08-13 17:11:22 +0200
\ No newline at end of file
+git-revision=f4eeab8f72ddb6eee3ce419ba60c44a50045a176 Volker Boerchers 2016-08-18 23:51:01 +0200
\ No newline at end of file
diff --git a/gitinfo.txt b/gitinfo.txt
index a29563c..7b3786d 100644
--- a/gitinfo.txt
+++ b/gitinfo.txt
@@ -1 +1 @@
-git-revision=7cd85f18e49cb61fd98d59a5b398e82f69860d65 Dimitry Polivaev 2016-08-13 17:11:22 +0200
\ No newline at end of file
+git-revision=f4eeab8f72ddb6eee3ce419ba60c44a50045a176 Volker Boerchers 2016-08-18 23:51:01 +0200
\ No newline at end of file
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/freeplane.git
More information about the pkg-java-commits
mailing list