Windows fixes in update dialog, Version 1.9.3 beta

This commit is contained in:
mmk2410 2015-07-30 15:50:40 +02:00
parent 5854c86ca3
commit b549c99096
9 changed files with 560 additions and 837 deletions

View file

@ -9,11 +9,15 @@
</artifacts-to-build>
</component>
<component name="ChangeListManager">
<list default="true" id="1951d34a-0996-4ab0-85f5-7d06399bd374" name="Default" comment="&quot;Germanization&quot;">
<list default="true" id="1951d34a-0996-4ab0-85f5-7d06399bd374" name="Default" comment="">
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java" afterPath="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeNormalMorseManager.java" afterPath="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeNormalMorseManager.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeWrittenMorseManager.java" afterPath="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeWrittenMorseManager.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/META-INF/MANIFEST.MF" afterPath="$PROJECT_DIR$/src/META-INF/MANIFEST.MF" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/Main.java" afterPath="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/Main.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/misc.xml" afterPath="$PROJECT_DIR$/.idea/misc.xml" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/update/UpdateDialog.java" afterPath="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/update/UpdateDialog.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/text.properties" afterPath="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/text.properties" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/text_de.properties" afterPath="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/text_de.properties" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
</list>
<ignored path="de.marcelkapfer.c.morseconverter.iws" />
@ -49,16 +53,12 @@
</provider>
</entry>
</file>
<file leaf-file-name="Main.java" pinned="false" current-in-tab="false">
<file leaf-file-name="Main.java" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/Main.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="71" column="9" selection-start-line="71" selection-start-column="9" selection-end-line="71" selection-end-column="9" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#3271#3272#0" expanded="true" />
<element signature="e#3331#3332#0" expanded="true" />
</folding>
<caret line="32" column="21" selection-start-line="32" selection-start-column="21" selection-end-line="32" selection-end-column="21" />
<folding />
</state>
</provider>
</entry>
@ -76,11 +76,21 @@
</provider>
</entry>
</file>
<file leaf-file-name="UpdateDialog.java" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/update/UpdateDialog.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="81" column="107" selection-start-line="81" selection-start-column="107" selection-end-line="81" selection-end-column="107" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="DecodeNormalMorseManager.java" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeNormalMorseManager.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="238" column="59" selection-start-line="238" selection-start-column="59" selection-end-line="238" selection-end-column="59" />
<caret line="202" column="8" selection-start-line="202" selection-start-column="8" selection-end-line="202" selection-end-column="8" />
<folding />
</state>
</provider>
@ -90,17 +100,17 @@
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="237" column="49" selection-start-line="237" selection-start-column="49" selection-end-line="237" selection-end-column="49" />
<caret line="21" column="3" selection-start-line="21" selection-start-column="3" selection-end-line="21" selection-end-column="3" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="EncodeNormalMorseManager.java" pinned="false" current-in-tab="true">
<file leaf-file-name="EncodeNormalMorseManager.java" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeNormalMorseManager.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.2625216">
<caret line="50" column="20" selection-start-line="50" selection-start-column="20" selection-end-line="50" selection-end-column="20" />
<state vertical-scroll-proportion="0.0">
<caret line="44" column="48" selection-start-line="44" selection-start-column="48" selection-end-line="44" selection-end-column="48" />
<folding />
</state>
</provider>
@ -110,7 +120,7 @@
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeWrittenMorseManager.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="57" column="29" selection-start-line="57" selection-start-column="29" selection-end-line="57" selection-end-column="29" />
<caret line="40" column="59" selection-start-line="40" selection-start-column="59" selection-end-line="43" selection-end-column="48" />
<folding />
</state>
</provider>
@ -136,19 +146,6 @@
</provider>
</entry>
</file>
<file leaf-file-name="text.properties" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/text.properties">
<provider editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
<provider selected="true" editor-type-id="ResourceBundle">
<state />
</provider>
</entry>
</file>
</leaf>
</component>
<component name="FileTemplateManagerImpl">
@ -183,16 +180,16 @@
<option value="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/update/Update.form" />
<option value="$PROJECT_DIR$/README.md" />
<option value="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/update/Update.java" />
<option value="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/text_de.properties" />
<option value="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/update/UpdateDialog.form" />
<option value="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/update/UpdateDialog.java" />
<option value="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java" />
<option value="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeNormalMorseManager.java" />
<option value="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/text.properties" />
<option value="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/Main.form" />
<option value="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/Main.java" />
<option value="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeWrittenMorseManager.java" />
<option value="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeNormalMorseManager.java" />
<option value="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/update/UpdateDialog.java" />
<option value="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/text_de.properties" />
<option value="$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/Main.java" />
</list>
</option>
</component>
@ -210,10 +207,8 @@
<order />
</component>
<component name="ProjectFrameBounds">
<option name="x" value="-8" />
<option name="y" value="-8" />
<option name="width" value="1928" />
<option name="height" value="994" />
<option name="width" value="1920" />
<option name="height" value="1080" />
</component>
<component name="ProjectLevelVcsManager" settingsEditedManually="true">
<OptionsSetting value="true" id="Add" />
@ -238,7 +233,7 @@
<sortByType />
</navigator>
<panes>
<pane id="Scope" />
<pane id="Scratches" />
<pane id="ProjectPane">
<subPane>
<PATH>
@ -253,7 +248,7 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="morse-converter" />
<option name="myItemId" value="de.marcelkapfer.c.morseconverter" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
@ -262,26 +257,8 @@
<option name="myItemId" value="de.marcelkapfer.c.morseconverter" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="morse-converter" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="src" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="res" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="de.marcelkapfer.c.morseconverter" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="morse-converter" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
@ -295,7 +272,7 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="morse-converter" />
<option name="myItemId" value="de.marcelkapfer.c.morseconverter" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
@ -313,7 +290,7 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="morse-converter" />
<option name="myItemId" value="de.marcelkapfer.c.morseconverter" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
@ -325,14 +302,40 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="engine" />
<option name="myItemId" value="update" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="UpdateDialog" />
<option name="myItemType" value="com.intellij.uiDesigner.projectView.FormNode" />
</PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="de.marcelkapfer.c.morseconverter" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="de.marcelkapfer.c.morseconverter" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="src" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="morseconverter" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="update" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
</subPane>
</pane>
<pane id="PackagesPane" />
<pane id="Scratches" />
<pane id="Scope" />
</panes>
</component>
<component name="PropertiesComponent">
@ -580,32 +583,32 @@
<servers />
</component>
<component name="ToolWindowManager">
<frame x="-8" y="-8" width="1928" height="994" extended-state="0" />
<editor active="true" />
<frame x="0" y="0" width="1920" height="1080" extended-state="0" />
<editor active="false" />
<layout>
<window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.2909232" sideWeight="0.5" order="9" side_tool="false" content_ui="tabs" />
<window_info id="Palette&#9;" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="11" side_tool="true" content_ui="tabs" />
<window_info id="Application Servers" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32985973" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32967836" sideWeight="0.5" order="8" side_tool="false" content_ui="tabs" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.31489843" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="10" side_tool="false" content_ui="tabs" />
<window_info id="Designer" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.16108787" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
<window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.16075157" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="true" content_ui="tabs" />
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.28216705" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.2909232" sideWeight="0.5" order="9" side_tool="false" content_ui="tabs" />
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="SLIDING" type="SLIDING" visible="false" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.3212121" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32967836" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.28216705" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
</layout>
</component>
<component name="Vcs.Log.UiProperties">
@ -650,222 +653,6 @@
<properties />
<option name="timeStamp" value="153" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/Main.java</url>
<line>130</line>
<properties />
<option name="timeStamp" value="158" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/Main.java</url>
<line>132</line>
<properties />
<option name="timeStamp" value="159" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/Main.java</url>
<line>134</line>
<properties />
<option name="timeStamp" value="160" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/Main.java</url>
<line>135</line>
<properties />
<option name="timeStamp" value="161" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/Main.java</url>
<line>137</line>
<properties />
<option name="timeStamp" value="162" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>57</line>
<properties />
<option name="timeStamp" value="165" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>58</line>
<properties />
<option name="timeStamp" value="166" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>60</line>
<properties />
<option name="timeStamp" value="167" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>61</line>
<properties />
<option name="timeStamp" value="168" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>62</line>
<properties />
<option name="timeStamp" value="169" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>63</line>
<properties />
<option name="timeStamp" value="170" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>64</line>
<properties />
<option name="timeStamp" value="171" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>65</line>
<properties />
<option name="timeStamp" value="172" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>66</line>
<properties />
<option name="timeStamp" value="173" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>67</line>
<properties />
<option name="timeStamp" value="174" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>68</line>
<properties />
<option name="timeStamp" value="175" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>69</line>
<properties />
<option name="timeStamp" value="176" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>70</line>
<properties />
<option name="timeStamp" value="177" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>71</line>
<properties />
<option name="timeStamp" value="178" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>30</line>
<properties />
<option name="timeStamp" value="179" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>31</line>
<properties />
<option name="timeStamp" value="180" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>32</line>
<properties />
<option name="timeStamp" value="181" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>34</line>
<properties />
<option name="timeStamp" value="182" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>35</line>
<properties />
<option name="timeStamp" value="183" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>36</line>
<properties />
<option name="timeStamp" value="184" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>38</line>
<properties />
<option name="timeStamp" value="185" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>37</line>
<properties />
<option name="timeStamp" value="186" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>236</line>
<properties />
<option name="timeStamp" value="188" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>235</line>
<properties />
<option name="timeStamp" value="189" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>237</line>
<properties />
<option name="timeStamp" value="190" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>238</line>
<properties />
<option name="timeStamp" value="191" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>240</line>
<properties />
<option name="timeStamp" value="192" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>241</line>
<properties />
<option name="timeStamp" value="194" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>242</line>
<properties />
<option name="timeStamp" value="195" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>243</line>
<properties />
<option name="timeStamp" value="196" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java</url>
<line>244</line>
<properties />
<option name="timeStamp" value="197" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeWrittenMorseManager.java</url>
<line>198</line>
@ -902,59 +689,11 @@
<properties />
<option name="timeStamp" value="203" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeWrittenMorseManager.java</url>
<line>49</line>
<properties />
<option name="timeStamp" value="208" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeWrittenMorseManager.java</url>
<line>50</line>
<properties />
<option name="timeStamp" value="210" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeWrittenMorseManager.java</url>
<line>47</line>
<properties />
<option name="timeStamp" value="211" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeWrittenMorseManager.java</url>
<line>44</line>
<properties />
<option name="timeStamp" value="212" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeWrittenMorseManager.java</url>
<line>40</line>
<properties />
<option name="timeStamp" value="213" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeWrittenMorseManager.java</url>
<line>45</line>
<properties />
<option name="timeStamp" value="214" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeWrittenMorseManager.java</url>
<line>73</line>
<properties />
<option name="timeStamp" value="215" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeWrittenMorseManager.java</url>
<line>76</line>
<properties />
<option name="timeStamp" value="218" />
</line-breakpoint>
</breakpoints>
<breakpoints-dialog>
<breakpoints-dialog />
</breakpoints-dialog>
<option name="time" value="222" />
<option name="time" value="225" />
</breakpoint-manager>
<watches-manager>
<configuration name="Application">
@ -998,11 +737,7 @@
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="90" column="25" selection-start-line="90" selection-start-column="25" selection-end-line="90" selection-end-column="25" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#3271#3272#0" expanded="true" />
<element signature="e#3331#3332#0" expanded="true" />
</folding>
<folding />
</state>
</provider>
</entry>
@ -1064,11 +799,7 @@
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#3271#3272#0" expanded="true" />
<element signature="e#3331#3332#0" expanded="true" />
</folding>
<folding />
</state>
</provider>
</entry>
@ -1133,11 +864,7 @@
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="23" column="72" selection-start-line="23" selection-start-column="72" selection-end-line="23" selection-end-column="72" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#3271#3272#0" expanded="true" />
<element signature="e#3331#3332#0" expanded="true" />
</folding>
<folding />
</state>
</provider>
</entry>
@ -1199,11 +926,7 @@
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#3271#3272#0" expanded="true" />
<element signature="e#3331#3332#0" expanded="true" />
</folding>
<folding />
</state>
</provider>
</entry>
@ -1267,21 +990,6 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/update/UpdateDialog.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="102" column="5" selection-start-line="102" selection-start-column="5" selection-end-line="102" selection-end-column="5" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/intelligentCodeRecognization/NormalMorseCodeRecognization.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="26" column="13" selection-start-line="26" selection-start-column="13" selection-end-line="26" selection-end-column="13" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/text.properties">
<provider editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
@ -1293,30 +1001,67 @@
<state />
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeNormalMorseManager.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="238" column="59" selection-start-line="238" selection-start-column="59" selection-end-line="238" selection-end-column="59" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/Main.form">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
<provider editor-type-id="ui-designer">
<state />
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/res/icon-xxxhdpi.png">
<provider selected="true" editor-type-id="images">
<state />
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/intelligentCodeRecognization/WrittenMorseCodeRecognization.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="59" column="0" selection-start-line="59" selection-start-column="0" selection-end-line="59" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/intelligentCodeRecognization/NormalMorseCodeRecognization.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="26" column="13" selection-start-line="26" selection-start-column="13" selection-end-line="26" selection-end-column="13" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeWrittenMorseManager.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="40" column="59" selection-start-line="40" selection-start-column="59" selection-end-line="43" selection-end-column="48" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeNormalMorseManager.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="44" column="48" selection-start-line="44" selection-start-column="48" selection-end-line="44" selection-end-column="48" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="21" column="3" selection-start-line="21" selection-start-column="3" selection-end-line="21" selection-end-column="3" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeNormalMorseManager.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="202" column="8" selection-start-line="202" selection-start-column="8" selection-end-line="202" selection-end-column="8" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/update/UpdateDialog.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="81" column="107" selection-start-line="81" selection-start-column="107" selection-end-line="81" selection-end-column="107" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/text_de.properties">
<provider editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
@ -1328,46 +1073,21 @@
<state />
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/DecodeWrittenMorseManager.java">
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/Main.form">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="237" column="49" selection-start-line="237" selection-start-column="49" selection-end-line="237" selection-end-column="49" />
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/intelligentCodeRecognization/WrittenMorseCodeRecognization.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="59" column="0" selection-start-line="59" selection-start-column="0" selection-end-line="59" selection-end-column="0" />
<folding />
</state>
<provider editor-type-id="ui-designer">
<state />
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/Main.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="71" column="9" selection-start-line="71" selection-start-column="9" selection-end-line="71" selection-end-column="9" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#3271#3272#0" expanded="true" />
<element signature="e#3331#3332#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeWrittenMorseManager.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="57" column="29" selection-start-line="57" selection-start-column="29" selection-end-line="57" selection-end-column="29" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/marcelkapfer/c/morseconverter/engine/EncodeNormalMorseManager.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.2625216">
<caret line="50" column="20" selection-start-line="50" selection-start-column="20" selection-end-line="50" selection-end-column="20" />
<caret line="32" column="21" selection-start-line="32" selection-start-column="21" selection-end-line="32" selection-end-column="21" />
<folding />
</state>
</provider>

View file

@ -1,3 +1,3 @@
Manifest-Version: 1.0
Main-Class: de.marcelkapfer.c.morseconverter.Main
Manifest-Version: 1.0
Main-Class: de.marcelkapfer.c.morseconverter.Main

View file

@ -1,161 +1,161 @@
package de.marcelkapfer.c.morseconverter;
/*
This is a Java application for converting writtenMorse and normal morse code.
Copyright (C) 2014-2015 Marcel Michael Kapfer
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
Marcel Michael Kapfer
marcelmichaelkapfer@yahoo.co.nz
*/
import de.marcelkapfer.c.morseconverter.engine.DecodeNormalMorseManager;
import de.marcelkapfer.c.morseconverter.engine.DecodeWrittenMorseManager;
import de.marcelkapfer.c.morseconverter.engine.EncodeNormalMorseManager;
import de.marcelkapfer.c.morseconverter.engine.EncodeWrittenMorseManager;
import de.marcelkapfer.c.morseconverter.intelligentCodeRecognization.NormalMorseCodeRecognization;
import de.marcelkapfer.c.morseconverter.intelligentCodeRecognization.WrittenMorseCodeRecognization;
import de.marcelkapfer.c.morseconverter.update.Update;
import de.marcelkapfer.c.morseconverter.update.UpdateDialog;
import javax.swing.*;
import javax.swing.text.BadLocationException;
import javax.swing.text.Element;
import javax.swing.text.html.HTMLDocument;
import javax.swing.text.html.HTMLEditorKit;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.io.IOException;
import java.util.ResourceBundle;
public class Main extends JFrame {
// Version numbers for update check
public static final int currentVersion = 191;
public static int latestVersion = currentVersion;
public static ResourceBundle resourceBundle = ResourceBundle.getBundle("de.marcelkapfer.c.morseconverter.text");
public JTabbedPane morseConverterPane;
private JPanel panel1;
private JTextArea inputAreaWrittenMorse;
private JTextArea outputAreaWrittenMorse;
private JTextArea inputAreaNormalMorse;
private JTextArea outputAreaNormalMorse;
private JButton updateDialogButton;
private JLabel updateAvailable;
private JTextPane aboutText;
// Contains mainly listeners
public Main() {
HTMLEditorKit htmlEditorKit = new HTMLEditorKit();
HTMLDocument htmlDocument = (HTMLDocument) htmlEditorKit.createDefaultDocument();
Element element = htmlDocument.getDefaultRootElement();
try {
htmlDocument.setInnerHTML(element, resourceBundle.getString("about"));
} catch (BadLocationException | IOException e) {
e.printStackTrace();
}
aboutText.setDocument(htmlDocument);
// Listener for the writtenMorse input field
inputAreaWrittenMorse.addKeyListener(new KeyAdapter() {
@Override
public void keyReleased(KeyEvent e) {
instantWrittenMorseConvert();
}
});
// Listener for the normal Morse input field
inputAreaNormalMorse.addKeyListener(new KeyAdapter() {
@Override
public void keyReleased(KeyEvent e) {
instantNormalMorseConvert();
}
});
// Trying to read a file from a server
latestVersion = Update.getLatestVersion("http://lab.marcel-kapfer.de/writtenmorse/desktop/version.txt", currentVersion);
if (currentVersion < latestVersion){
JOptionPane.showMessageDialog(null, resourceBundle.getString("updateAvailable"));
updateAvailable.setVisible(true);
updateDialogButton.setText(resourceBundle.getString("aboutUpdateAvailableButton"));
}
updateDialogButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
updateDialog();
}
});
}
// The holy main method
public static void main(String[] args){
// Tries to present the app in an native look
try{
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Exception e){
e.printStackTrace();
}
// Starting the application
JFrame main = new JFrame("Main");
main.setContentPane(new Main().morseConverterPane);
main.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// Title
main.setTitle(resourceBundle.getString("title"));
main.pack();
// Window position and Size
main.setBounds(100, 100, 800, 400);
main.setIconImage(Toolkit.getDefaultToolkit().getImage(Main.class.getResource("/res/icon-xxxhdpi.png")));
// MAKE IT HAPPEN :D
main.setVisible(true);
System.out.print(System.lineSeparator());
}
// Method for converting writtenMorse
private void instantWrittenMorseConvert(){
// Gets the text from the input field
String input = inputAreaWrittenMorse.getText();
// checks if the code is a writtenMorse code
if(WrittenMorseCodeRecognization.isCode(input)) {
// converts the code into normal letters
outputAreaWrittenMorse.setText(EncodeWrittenMorseManager.getEncodedString(input));
} else {
// converts the code into writtenMorse
outputAreaWrittenMorse.setText(DecodeWrittenMorseManager.getDecodedString(input));
}
}
// Method for converting normal Morse
private void instantNormalMorseConvert(){
// Gets the text from the input field
String input = inputAreaNormalMorse.getText();
// checks if the code is a normal Morse code
if(NormalMorseCodeRecognization.isCode(input)){
// converts the code into normal letters
outputAreaNormalMorse.setText(EncodeNormalMorseManager.getEncodedString(input));
} else {
// converts the code into writtenMorse
outputAreaNormalMorse.setText(DecodeNormalMorseManager.getDecodedString(input));
}
}
private void updateDialog() {
UpdateDialog.main(null);
}
}
package de.marcelkapfer.c.morseconverter;
/*
This is a Java application for converting writtenMorse and normal morse code.
Copyright (C) 2014-2015 Marcel Michael Kapfer
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
Marcel Michael Kapfer
marcelmichaelkapfer@yahoo.co.nz
*/
import de.marcelkapfer.c.morseconverter.engine.DecodeNormalMorseManager;
import de.marcelkapfer.c.morseconverter.engine.DecodeWrittenMorseManager;
import de.marcelkapfer.c.morseconverter.engine.EncodeNormalMorseManager;
import de.marcelkapfer.c.morseconverter.engine.EncodeWrittenMorseManager;
import de.marcelkapfer.c.morseconverter.intelligentCodeRecognization.NormalMorseCodeRecognization;
import de.marcelkapfer.c.morseconverter.intelligentCodeRecognization.WrittenMorseCodeRecognization;
import de.marcelkapfer.c.morseconverter.update.Update;
import de.marcelkapfer.c.morseconverter.update.UpdateDialog;
import javax.swing.*;
import javax.swing.text.BadLocationException;
import javax.swing.text.Element;
import javax.swing.text.html.HTMLDocument;
import javax.swing.text.html.HTMLEditorKit;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.io.IOException;
import java.util.ResourceBundle;
public class Main extends JFrame {
// Version numbers for update check
public static final int currentVersion = 193;
public static int latestVersion = currentVersion;
public static ResourceBundle resourceBundle = ResourceBundle.getBundle("de.marcelkapfer.c.morseconverter.text");
public JTabbedPane morseConverterPane;
private JPanel panel1;
private JTextArea inputAreaWrittenMorse;
private JTextArea outputAreaWrittenMorse;
private JTextArea inputAreaNormalMorse;
private JTextArea outputAreaNormalMorse;
private JButton updateDialogButton;
private JLabel updateAvailable;
private JTextPane aboutText;
// Contains mainly listeners
public Main() {
HTMLEditorKit htmlEditorKit = new HTMLEditorKit();
HTMLDocument htmlDocument = (HTMLDocument) htmlEditorKit.createDefaultDocument();
Element element = htmlDocument.getDefaultRootElement();
try {
htmlDocument.setInnerHTML(element, resourceBundle.getString("about"));
} catch (BadLocationException | IOException e) {
e.printStackTrace();
}
aboutText.setDocument(htmlDocument);
// Listener for the writtenMorse input field
inputAreaWrittenMorse.addKeyListener(new KeyAdapter() {
@Override
public void keyReleased(KeyEvent e) {
instantWrittenMorseConvert();
}
});
// Listener for the normal Morse input field
inputAreaNormalMorse.addKeyListener(new KeyAdapter() {
@Override
public void keyReleased(KeyEvent e) {
instantNormalMorseConvert();
}
});
// Trying to read a file from a server
latestVersion = Update.getLatestVersion("http://lab.marcel-kapfer.de/writtenmorse/desktop/version.txt", currentVersion);
if (currentVersion < latestVersion){
JOptionPane.showMessageDialog(null, resourceBundle.getString("updateAvailable"));
updateAvailable.setVisible(true);
updateDialogButton.setText(resourceBundle.getString("aboutUpdateAvailableButton"));
}
updateDialogButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
updateDialog();
}
});
}
// The holy main method
public static void main(String[] args){
// Tries to present the app in an native look
try{
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Exception e){
e.printStackTrace();
}
// Starting the application
JFrame main = new JFrame("Main");
main.setContentPane(new Main().morseConverterPane);
main.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// Title
main.setTitle(resourceBundle.getString("title"));
main.pack();
// Window position and Size
main.setBounds(100, 100, 800, 400);
main.setIconImage(Toolkit.getDefaultToolkit().getImage(Main.class.getResource("/res/icon-xxxhdpi.png")));
// MAKE IT HAPPEN :D
main.setVisible(true);
System.out.print(System.lineSeparator());
}
// Method for converting writtenMorse
private void instantWrittenMorseConvert(){
// Gets the text from the input field
String input = inputAreaWrittenMorse.getText();
// checks if the code is a writtenMorse code
if(WrittenMorseCodeRecognization.isCode(input)) {
// converts the code into normal letters
outputAreaWrittenMorse.setText(EncodeWrittenMorseManager.getEncodedString(input));
} else {
// converts the code into writtenMorse
outputAreaWrittenMorse.setText(DecodeWrittenMorseManager.getDecodedString(input));
}
}
// Method for converting normal Morse
private void instantNormalMorseConvert(){
// Gets the text from the input field
String input = inputAreaNormalMorse.getText();
// checks if the code is a normal Morse code
if(NormalMorseCodeRecognization.isCode(input)){
// converts the code into normal letters
outputAreaNormalMorse.setText(EncodeNormalMorseManager.getEncodedString(input));
} else {
// converts the code into writtenMorse
outputAreaNormalMorse.setText(DecodeNormalMorseManager.getDecodedString(input));
}
}
private void updateDialog() {
UpdateDialog.main(null);
}
}

View file

@ -1,254 +1,254 @@
package de.marcelkapfer.c.morseconverter.engine;
/*
This is a Java application for converting writtenMorse and normal morse code.
Copyright (C) 2014-2015 Marcel Michael Kapfer
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
Marcel Michael Kapfer
marcelmichaelkapfer@yahoo.co.nz
*/
public class DecodeWrittenMorseManager {
public static String getDecodedString(String inputMessage) {
if(inputMessage.equals("")){
return "Please enter at least one character";
} else {
StringBuffer message = new StringBuffer(inputMessage);
if (message.toString().endsWith(" ")) {
message = message.deleteCharAt(message.length() - 1);
}
// Variables
StringBuffer input = new StringBuffer();
input = input.replace(0, input.length(), message.toString().toUpperCase());
StringBuffer output = new StringBuffer();
if (input.toString().equals("LETTERSPACE")) {
output.replace(0, output.length(), "#");
} else if (input.toString().equals("END OF WORK")) {
output.replace(0, output.length(), "000101");
} else if (input.toString().equals("ERROR")) {
output.replace(0, output.length(), "00000000");
} else if (input.toString().equals("STARTING SIGNAL")) {
output.replace(0, output.length(), "10101");
} else if (input.toString().equals("ENDING SIGNAL")) {
output.replace(0, output.length(), "01010");
} else if (input.toString().equals("UNDERSTOOD")) {
output.replace(0, output.length(), "00010");
} else if (input.toString().equals("WAIT")) {
output.replace(0, output.length(), "01000");
} else if (input.toString().equals("SOS")) {
output.replace(0, output.length(), "000111000");
} else if (input.toString().equals("LETTER SPACE")) {
output.replace(0, output.length(), "##");
} else if (input.toString().equals("WORD SPACE")) {
output.replace(0, output.length(), "+");
} else {
while (input.length() > 0) {
if (input.toString().startsWith(" ")) {
if (output.toString().endsWith("#")) {
output.delete(output.length() - 1, output.length());
}
output.append("+");
input.delete(0, 1);
} else if (input.toString().startsWith(System.lineSeparator())) {
output.append(System.lineSeparator());
int indexLineSeparator = input.indexOf(System.lineSeparator());
input.delete(indexLineSeparator, indexLineSeparator + System.lineSeparator().length());
} else if (input.toString().startsWith("\n")) {
output.append(System.lineSeparator());
int indexLineSeparator = input.indexOf("\n");
input.deleteCharAt(indexLineSeparator);
} else if (input.toString().startsWith("A")) {
output.append("01#");
input.delete(0, 1);
} else if (input.toString().startsWith("B")) {
output.append("1000#");
input.delete(0, 1);
} else if (input.toString().startsWith("C")) {
output.append("1010#");
input.delete(0, 1);
} else if (input.toString().startsWith("D")) {
output.append("100#");
input.delete(0, 1);
} else if (input.toString().startsWith("E")) {
output.append("0#");
input.delete(0, 1);
} else if (input.toString().startsWith("F")) {
output.append("0010#");
input.delete(0, 1);
} else if (input.toString().startsWith("G")) {
output.append("110#");
input.delete(0, 1);
} else if (input.toString().startsWith("H")) {
output.append("0000#");
input.delete(0, 1);
} else if (input.toString().startsWith("I")) {
output.append("00#");
input.delete(0, 1);
} else if (input.toString().startsWith("J")) {
output.append("0111#");
input.delete(0, 1);
} else if (input.toString().startsWith("K")) {
output.append("101#");
input.delete(0, 1);
} else if (input.toString().startsWith("L")) {
output.append("0100#");
input.delete(0, 1);
} else if (input.toString().startsWith("M")) {
output.append("11#");
input.delete(0, 1);
} else if (input.toString().startsWith("N")) {
output.append("10#");
input.delete(0, 1);
} else if (input.toString().startsWith("O")) {
output.append("111#");
input.delete(0, 1);
} else if (input.toString().startsWith("P")) {
output.append("0110#");
input.delete(0, 1);
} else if (input.toString().startsWith("Q")) {
output.append("1101#");
input.delete(0, 1);
} else if (input.toString().startsWith("R")) {
output.append("010#");
input.delete(0, 1);
} else if (input.toString().startsWith("S")) {
output.append("000#");
input.delete(0, 1);
} else if (input.toString().startsWith("T")) {
output.append("1#");
input.delete(0, 1);
} else if (input.toString().startsWith("U")) {
output.append("001#");
input.delete(0, 1);
} else if (input.toString().startsWith("V")) {
output.append("0001#");
input.delete(0, 1);
} else if (input.toString().startsWith("W")) {
output.append("011#");
input.delete(0, 1);
} else if (input.toString().startsWith("X")) {
output.append("1001#");
input.delete(0, 1);
} else if (input.toString().startsWith("Y")) {
output.append("1011#");
input.delete(0, 1);
} else if (input.toString().startsWith("Z")) {
output.append("1100#");
input.delete(0, 1);
} else if (input.toString().startsWith("0")) {
output.append("11111#");
input.delete(0, 1);
} else if (input.toString().startsWith("1")) {
output.append("01111#");
input.delete(0, 1);
} else if (input.toString().startsWith("2")) {
output.append("00111#");
input.delete(0, 1);
} else if (input.toString().startsWith("3")) {
output.append("00011#");
input.delete(0, 1);
} else if (input.toString().startsWith("4")) {
output.append("00001#");
input.delete(0, 1);
} else if (input.toString().startsWith("5")) {
output.append("00000#");
input.delete(0, 1);
} else if (input.toString().startsWith("6")) {
output.append("10000#");
input.delete(0, 1);
} else if (input.toString().startsWith("7")) {
output.append("11000#");
input.delete(0, 1);
} else if (input.toString().startsWith("8")) {
output.append("11100#");
input.delete(0, 1);