From 38954a71ac6bf63f9a1a08235d33adac23399cd3 Mon Sep 17 00:00:00 2001 From: "honfika@gmail.com" Date: Wed, 6 May 2015 15:45:58 +0200 Subject: [PATCH] advanced settigns fixed again --- .../gui/controls/JPersistentSplitPane.java | 44 ++++++++++++++++--- .../locales/AdvancedSettingsDialog.properties | 11 +++-- .../AdvancedSettingsDialog_ca.properties | 8 ++-- .../AdvancedSettingsDialog_cs.properties | 8 ++-- .../AdvancedSettingsDialog_es.properties | 8 ++-- .../AdvancedSettingsDialog_fr.properties | 8 ++-- .../AdvancedSettingsDialog_hu.properties | 11 +++-- .../AdvancedSettingsDialog_pl.properties | 8 ++-- .../AdvancedSettingsDialog_pt_BR.properties | 8 ++-- .../AdvancedSettingsDialog_ru.properties | 8 ++-- .../AdvancedSettingsDialog_sv.properties | 8 ++-- 11 files changed, 83 insertions(+), 47 deletions(-) diff --git a/src/com/jpexs/decompiler/flash/gui/controls/JPersistentSplitPane.java b/src/com/jpexs/decompiler/flash/gui/controls/JPersistentSplitPane.java index 14ce3c304..a7bc0d0e5 100644 --- a/src/com/jpexs/decompiler/flash/gui/controls/JPersistentSplitPane.java +++ b/src/com/jpexs/decompiler/flash/gui/controls/JPersistentSplitPane.java @@ -20,6 +20,9 @@ import com.jpexs.decompiler.flash.configuration.ConfigurationItem; import java.awt.Component; import java.awt.event.ComponentAdapter; import java.awt.event.ComponentEvent; +import java.awt.event.ComponentListener; +import java.awt.event.ContainerEvent; +import java.awt.event.ContainerListener; import java.beans.PropertyChangeEvent; import javax.swing.JSplitPane; @@ -33,6 +36,8 @@ public class JPersistentSplitPane extends JSplitPane { private boolean resize = false; + private ComponentListener childComponentListener; + public JPersistentSplitPane(int newOrientation, ConfigurationItem config) { super(newOrientation); initialize(config); @@ -44,17 +49,19 @@ public class JPersistentSplitPane extends JSplitPane { ConfigurationItem config) { super(newOrientation, newLeftComponent, newRightComponent); initialize(config); + newLeftComponent.addComponentListener(childComponentListener); + newRightComponent.addComponentListener(childComponentListener); } private double getConfigValue(ConfigurationItem config) { - double pos = config.get() / 100.0; + int pos = config.get(); if (pos < 0) { pos = 0; - } else if (pos > 1) { - pos = 1; + } else if (pos > 100) { + pos = 100; } - return pos; + return pos / 100.0; } private void initialize(ConfigurationItem config) { @@ -79,6 +86,28 @@ public class JPersistentSplitPane extends JSplitPane { } }); + childComponentListener = new ComponentAdapter() { + + @Override + public void componentShown(ComponentEvent e) { + double pos = getConfigValue(config); + setDividerLocation(pos); + } + }; + + addContainerListener(new ContainerListener() { + + @Override + public void componentAdded(ContainerEvent e) { + e.getComponent().addComponentListener(childComponentListener); + } + + @Override + public void componentRemoved(ContainerEvent e) { + e.getComponent().removeComponentListener(childComponentListener); + } + }); + addPropertyChangeListener(JSplitPane.DIVIDER_LOCATION_PROPERTY, (PropertyChangeEvent pce) -> { if (resize) { resize = false; @@ -87,9 +116,10 @@ public class JPersistentSplitPane extends JSplitPane { if (getLeftComponent().isVisible() && getRightComponent().isVisible()) { JPersistentSplitPane pane = (JPersistentSplitPane) pce.getSource(); - int width = pane.getWidth() - pane.getDividerSize(); - if (width != 0) { - int p = Math.round(100.0f * (Integer) pce.getNewValue() / width); + int size = (getOrientation() == JSplitPane.HORIZONTAL_SPLIT + ? pane.getWidth() : pane.getHeight()) - pane.getDividerSize(); + if (size != 0) { + int p = Math.round(100.0f * (Integer) pce.getNewValue() / size); config.set(p); } } diff --git a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog.properties b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog.properties index ca3dee559..9333d9df5 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog.properties @@ -179,11 +179,11 @@ config.description.gui.window.maximized.vertical = Last window state - maximized config.name.gui.avm2.splitPane.dividerLocationPercent = (Internal) AS3 Splitter location config.description.gui.avm2.splitPane.dividerLocationPercent = -config.name.guiActionSplitPaneDividerLocationPercent = (Internal) AS1/2 splitter location -config.description.guiActionSplitPaneDividerLocationPercent = +config.name.gui.actionSplitPane.dividerLocationPercent = (Internal) AS1/2 splitter location +config.description.gui.actionSplitPane.dividerLocationPercent = -config.name.guiPreviewSplitPaneDividerLocationPercent = (Internal) Preview splitter location -config.description.guiPreviewSplitPaneDividerLocationPercent = +config.name.gui.previewSplitPane.dividerLocationPercent = (Internal) Preview splitter location +config.description.gui.previewSplitPane.dividerLocationPercent = config.name.gui.splitPane1.dividerLocationPercent = (Internal) Splitter location 1 config.description.gui.splitPane1.dividerLocationPercent = @@ -347,3 +347,6 @@ config.description.lastSessionData = Contains the opened files from the last ses config.name.loopMedia = Loop sounds and sprites config.description.loopMedia = Automatically restarts the playing of the sounds and sprites + +config.name.gui.timeLineSplitPane.dividerLocationPercent = (Internal) Timeline Splitter location +config.description.gui.timeLineSplitPane.dividerLocationPercent = diff --git a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_ca.properties b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_ca.properties index b8b84ca26..8e3b5b540 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_ca.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_ca.properties @@ -179,11 +179,11 @@ config.description.gui.window.maximized.vertical = Darrer estat de la finestra - config.name.gui.avm2.splitPane.dividerLocationPercent = (Intern) Ubicaci\u00f3 del Splitter AS3 config.description.gui.avm2.splitPane.dividerLocationPercent = -config.name.guiActionSplitPaneDividerLocationPercent = (Intern) Ubicaci\u00f3 del Splitter AS1/2 -config.description.guiActionSplitPaneDividerLocationPercent = +config.name.gui.actionSplitPane.dividerLocationPercent = (Intern) Ubicaci\u00f3 del Splitter AS1/2 +config.description.gui.actionSplitPane.dividerLocationPercent = -config.name.guiPreviewSplitPaneDividerLocationPercent = (Intern) Previsualitza la ubicaci\u00f3 del splitter -config.description.guiPreviewSplitPaneDividerLocationPercent = +config.name.gui.previewSplitPane.dividerLocationPercent = (Intern) Previsualitza la ubicaci\u00f3 del splitter +config.description.gui.previewSplitPane.dividerLocationPercent = config.name.gui.splitPane1.dividerLocationPercent = (Intern) Ubicaci\u00f3 del Splitter 1 config.description.gui.splitPane1.dividerLocationPercent = diff --git a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_cs.properties b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_cs.properties index a67f7fc64..ddb2efab6 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_cs.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_cs.properties @@ -179,11 +179,11 @@ config.description.gui.window.maximized.vertical = Posledn\u00ed stav okna - max config.name.gui.avm2.splitPane.dividerLocationPercent = (Intern\u00ed) AS3 pozice rozd\u011blova\u010de config.description.gui.avm2.splitPane.dividerLocationPercent = -config.name.guiActionSplitPaneDividerLocationPercent = (Intern\u00ed) AS1/2 pozice rozd\u011blova\u010de -config.description.guiActionSplitPaneDividerLocationPercent = +config.name.gui.actionSplitPane.dividerLocationPercent = (Intern\u00ed) AS1/2 pozice rozd\u011blova\u010de +config.description.gui.actionSplitPane.dividerLocationPercent = -config.name.guiPreviewSplitPaneDividerLocationPercent = (Intern\u00ed) Pozice rozd\u011blova\u010de n\u00e1hledu -config.description.guiPreviewSplitPaneDividerLocationPercent = +config.name.gui.previewSplitPane.dividerLocationPercent = (Intern\u00ed) Pozice rozd\u011blova\u010de n\u00e1hledu +config.description.gui.previewSplitPane.dividerLocationPercent = config.name.gui.splitPane1.dividerLocationPercent = (Intern\u00ed) Pozice rozd\u011blova\u010de 1 config.description.gui.splitPane1.dividerLocationPercent = diff --git a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_es.properties b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_es.properties index 86eb3141f..f036ea9f5 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_es.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_es.properties @@ -179,11 +179,11 @@ config.description.gui.window.maximized.vertical = Ultimo estado de la ventana - config.name.gui.avm2.splitPane.dividerLocationPercent = (Interno) Ubicaci\u00f3n del divisor del AS3 config.description.gui.avm2.splitPane.dividerLocationPercent = -config.name.guiActionSplitPaneDividerLocationPercent = (Interno) Ubicaci\u00f3n del divisor del AS1/2 -config.description.guiActionSplitPaneDividerLocationPercent = +config.name.gui.actionSplitPane.dividerLocationPercent = (Interno) Ubicaci\u00f3n del divisor del AS1/2 +config.description.gui.actionSplitPane.dividerLocationPercent = -config.name.guiPreviewSplitPaneDividerLocationPercent = (Interno) Previsualizar la ubicaci\u00f3n del divisor -config.description.guiPreviewSplitPaneDividerLocationPercent = +config.name.gui.previewSplitPane.dividerLocationPercent = (Interno) Previsualizar la ubicaci\u00f3n del divisor +config.description.gui.previewSplitPane.dividerLocationPercent = config.name.gui.splitPane1.dividerLocationPercent = (Interno) Ubicaci\u00f3n del divisor 1 config.description.gui.splitPane1.dividerLocationPercent = diff --git a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_fr.properties b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_fr.properties index 763f9279f..e94190626 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_fr.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_fr.properties @@ -179,11 +179,11 @@ config.description.gui.window.maximized.vertical = Derni\u00e8r \u00e9tat de la config.name.gui.avm2.splitPane.dividerLocationPercent = (Interne) Emplacement du s\u00e9parateur AS3 config.description.gui.avm2.splitPane.dividerLocationPercent = -config.name.guiActionSplitPaneDividerLocationPercent = (Interne) Emplacement du s\u00e9parateur AS1/2 -config.description.guiActionSplitPaneDividerLocationPercent = +config.name.gui.actionSplitPane.dividerLocationPercent = (Interne) Emplacement du s\u00e9parateur AS1/2 +config.description.gui.actionSplitPane.dividerLocationPercent = -config.name.guiPreviewSplitPaneDividerLocationPercent = (Interne) Aper\u00e7u de l'emplacement du s\u00e9parateur -config.description.guiPreviewSplitPaneDividerLocationPercent = +config.name.gui.previewSplitPane.dividerLocationPercent = (Interne) Aper\u00e7u de l'emplacement du s\u00e9parateur +config.description.gui.previewSplitPane.dividerLocationPercent = config.name.gui.splitPane1.dividerLocationPercent = (Interne) Emplacement du s\u00e9parateur 1 config.description.gui.splitPane1.dividerLocationPercent = diff --git a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_hu.properties b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_hu.properties index 0061476c6..f07479294 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_hu.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_hu.properties @@ -179,11 +179,11 @@ config.description.gui.window.maximized.vertical = Ablak utols\u00f3 \u00e1llapo config.name.gui.avm2.splitPane.dividerLocationPercent = (Bels\u0151) AS3 oszt\u00f3 helyzete config.description.gui.avm2.splitPane.dividerLocationPercent = -config.name.guiActionSplitPaneDividerLocationPercent = (Bels\u0151) AS1/2 oszt\u00f3 helyzete -config.description.guiActionSplitPaneDividerLocationPercent = +config.name.gui.actionSplitPane.dividerLocationPercent = (Bels\u0151) AS1/2 oszt\u00f3 helyzete +config.description.gui.actionSplitPane.dividerLocationPercent = -config.name.guiPreviewSplitPaneDividerLocationPercent = (Bels\u0151) El\u0151n\u00e9zet oszt\u00f3 helyzete -config.description.guiPreviewSplitPaneDividerLocationPercent = +config.name.gui.previewSplitPane.dividerLocationPercent = (Bels\u0151) El\u0151n\u00e9zet oszt\u00f3 helyzete +config.description.gui.previewSplitPane.dividerLocationPercent = config.name.gui.splitPane1.dividerLocationPercent = (Bels\u0151) Oszt\u00f3 helyzete 1 config.description.gui.splitPane1.dividerLocationPercent = @@ -347,3 +347,6 @@ config.description.lastSessionData = Az legut\u00f3bbi munkamenetben megnyitott config.name.loopMedia = Zen\u00e9k \u00e9s szpr\u00e1jtok config.description.loopMedia = Aut\u00f3matikusan \u00fajraind\u00edtja a zen\u00e9k \u00e9s szpr\u00e1jtok lej\u00e1tsz\u00e1s\u00e1t + +config.name.gui.timeLineSplitPane.dividerLocationPercent = (Internal) Timeline oszt\u00f3 helyzete +config.description.gui.timeLineSplitPane.dividerLocationPercent = diff --git a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_pl.properties b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_pl.properties index 21aacd304..509d0fedd 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_pl.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_pl.properties @@ -179,11 +179,11 @@ config.description.gui.window.maximized.vertical = Ostatni stan okna - maksymali config.name.gui.avm2.splitPane.dividerLocationPercent = (Wewn\u0119trzne) Lokalizacja rozga\u0142\u0119\u017anika AS3 config.description.gui.avm2.splitPane.dividerLocationPercent = -config.name.guiActionSplitPaneDividerLocationPercent = (Wewn\u0119trzne) Lokalizacja rozga\u0142\u0119\u017anika AS1/2 -config.description.guiActionSplitPaneDividerLocationPercent = +config.name.gui.actionSplitPane.dividerLocationPercent = (Wewn\u0119trzne) Lokalizacja rozga\u0142\u0119\u017anika AS1/2 +config.description.gui.actionSplitPane.dividerLocationPercent = -config.name.guiPreviewSplitPaneDividerLocationPercent = (Wewn\u0119trzne) Lokalizacja rozga\u0142\u0119\u017anika podgl\u0105du -config.description.guiPreviewSplitPaneDividerLocationPercent = +config.name.gui.previewSplitPane.dividerLocationPercent = (Wewn\u0119trzne) Lokalizacja rozga\u0142\u0119\u017anika podgl\u0105du +config.description.gui.previewSplitPane.dividerLocationPercent = config.name.gui.splitPane1.dividerLocationPercent = (Wewn\u0119trzne) Lokalizacja rozga\u0142\u0119\u017anika 1 config.description.gui.splitPane1.dividerLocationPercent = diff --git a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_pt_BR.properties b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_pt_BR.properties index e4c0203d2..62634f523 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_pt_BR.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_pt_BR.properties @@ -173,11 +173,11 @@ config.description.gui.window.maximized.vertical = Last window state - maximized config.name.gui.avm2.splitPane.dividerLocationPercent = (Internal) AS3 Splitter location config.description.gui.avm2.splitPane.dividerLocationPercent = -config.name.guiActionSplitPaneDividerLocationPercent = (Internal) AS1/2 splitter location -config.description.guiActionSplitPaneDividerLocationPercent = +config.name.gui.actionSplitPane.dividerLocationPercent = (Internal) AS1/2 splitter location +config.description.gui.actionSplitPane.dividerLocationPercent = -config.name.guiPreviewSplitPaneDividerLocationPercent = (Internal) Preview splitter location -config.description.guiPreviewSplitPaneDividerLocationPercent = +config.name.gui.previewSplitPane.dividerLocationPercent = (Internal) Preview splitter location +config.description.gui.previewSplitPane.dividerLocationPercent = config.name.gui.splitPane1.dividerLocationPercent = (Internal) Splitter location 1 config.description.gui.splitPane1.dividerLocationPercent = diff --git a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_ru.properties b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_ru.properties index 4b05057b5..b2db946cc 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_ru.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_ru.properties @@ -175,11 +175,11 @@ config.description.gui.window.maximized.vertical = \u041f\u043e\u0441\u043b\u043 config.name.gui.avm2.splitPane.dividerLocationPercent = (\u0412\u043d\u0443\u0442\u0440.) \u041f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044f AS3 config.description.gui.avm2.splitPane.dividerLocationPercent = -config.name.guiActionSplitPaneDividerLocationPercent = (\u0412\u043d\u0443\u0442\u0440.) \u041f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044f AS1/2 -config.description.guiActionSplitPaneDividerLocationPercent = +config.name.gui.actionSplitPane.dividerLocationPercent = (\u0412\u043d\u0443\u0442\u0440.) \u041f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044f AS1/2 +config.description.gui.actionSplitPane.dividerLocationPercent = -config.name.guiPreviewSplitPaneDividerLocationPercent = (\u0412\u043d\u0443\u0442\u0440.) \u041f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044f \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u043f\u0440\u0435\u0434\u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 -config.description.guiPreviewSplitPaneDividerLocationPercent = +config.name.gui.previewSplitPane.dividerLocationPercent = (\u0412\u043d\u0443\u0442\u0440.) \u041f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044f \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u043f\u0440\u0435\u0434\u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 +config.description.gui.previewSplitPane.dividerLocationPercent = config.name.gui.splitPane1.dividerLocationPercent = (\u0412\u043d\u0443\u0442\u0440.) \u041f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044f 1 config.description.gui.splitPane1.dividerLocationPercent = diff --git a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_sv.properties b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_sv.properties index a6be143af..1a043482e 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_sv.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_sv.properties @@ -179,11 +179,11 @@ config.description.gui.window.maximized.vertical = Senaste f\u00f6nsterl\u00e4ge config.name.gui.avm2.splitPane.dividerLocationPercent = (Internal) AS3 Splitter l\u00e4ge config.description.gui.avm2.splitPane.dividerLocationPercent = -config.name.guiActionSplitPaneDividerLocationPercent = (Internal) AS1/2 splitter l\u00e4ge -config.description.guiActionSplitPaneDividerLocationPercent = +config.name.gui.actionSplitPane.dividerLocationPercent = (Internal) AS1/2 splitter l\u00e4ge +config.description.gui.actionSplitPane.dividerLocationPercent = -config.name.guiPreviewSplitPaneDividerLocationPercent = (Internal) F\u00f6rhandsvisa splitter l\u00e4ge -config.description.guiPreviewSplitPaneDividerLocationPercent = +config.name.gui.previewSplitPane.dividerLocationPercent = (Internal) F\u00f6rhandsvisa splitter l\u00e4ge +config.description.gui.previewSplitPane.dividerLocationPercent = config.name.gui.splitPane1.dividerLocationPercent = (Internal) Splitter l\u00e4ge 1 config.description.gui.splitPane1.dividerLocationPercent =