From 451644f280c73c76300dedb13489806a2e89b853 Mon Sep 17 00:00:00 2001 From: mmk2410 Date: Fri, 2 Jan 2015 11:43:24 +0100 Subject: [PATCH] Version 1.0 --- .idea/.name | 1 + .idea/compiler.xml | 23 + .idea/copyright/profiles_settings.xml | 3 + .idea/encodings.xml | 5 + .idea/gradle.xml | 18 + .idea/inspectionProfiles/Project_Default.xml | 8 + .../inspectionProfiles/profiles_settings.xml | 7 + .idea/libraries/support_v4_19_1_0.xml | 11 + .idea/misc.xml | 10 + .idea/modules.xml | 10 + .idea/scopes/scope_settings.xml | 5 + .idea/vcs.xml | 7 + .idea/workspace.xml | 1677 +++++++++++++++++ MorseConverter.iml | 21 + README.md | 4 +- app/app.iml | 89 + app/build.gradle | 23 + app/lint.xml | 4 + app/manifest-merger-release-report.txt | 69 + app/src/main/AndroidManifest.xml | 36 + .../DisplayMessageActivity.java | 87 + .../morseconverter/MainActivity.java | 999 ++++++++++ .../res/drawable-hdpi/drawer_shadow.9.png | Bin 0 -> 161 bytes .../res/drawable-hdpi/ic_action_search.png | Bin 0 -> 650 bytes .../res/drawable-hdpi/ic_action_share.png | Bin 0 -> 513 bytes app/src/main/res/drawable-hdpi/ic_drawer.png | Bin 0 -> 2876 bytes .../main/res/drawable-hdpi/ic_launcher.png | Bin 0 -> 3387 bytes .../res/drawable-mdpi/drawer_shadow.9.png | Bin 0 -> 142 bytes .../res/drawable-mdpi/ic_action_search.png | Bin 0 -> 449 bytes .../res/drawable-mdpi/ic_action_share.png | Bin 0 -> 383 bytes app/src/main/res/drawable-mdpi/ic_drawer.png | Bin 0 -> 2886 bytes .../main/res/drawable-mdpi/ic_launcher.png | Bin 0 -> 2476 bytes .../res/drawable-xhdpi/drawer_shadow.9.png | Bin 0 -> 174 bytes .../res/drawable-xhdpi/ic_action_search.png | Bin 0 -> 827 bytes .../res/drawable-xhdpi/ic_action_share.png | Bin 0 -> 666 bytes app/src/main/res/drawable-xhdpi/ic_drawer.png | Bin 0 -> 2887 bytes .../main/res/drawable-xhdpi/ic_launcher.png | Bin 0 -> 4729 bytes .../res/drawable-xxhdpi/drawer_shadow.9.png | Bin 0 -> 208 bytes .../res/drawable-xxhdpi/ic_action_search.png | Bin 0 -> 1152 bytes .../res/drawable-xxhdpi/ic_action_share.png | Bin 0 -> 969 bytes .../main/res/drawable-xxhdpi/ic_drawer.png | Bin 0 -> 217 bytes .../main/res/drawable-xxhdpi/ic_launcher.png | Bin 0 -> 7461 bytes .../main/res/drawable-xxxhdpi/ic_launcher.png | Bin 0 -> 9877 bytes app/src/main/res/drawable/actionbar.png | Bin 0 -> 233 bytes .../res/layout/activity_display_message.xml | 7 + app/src/main/res/layout/activity_main.xml | 36 + app/src/main/res/layout/drawer_list_item.xml | 27 + app/src/main/res/layout/fragment_about.xml | 22 + .../res/layout/fragment_display_message.xml | 26 + app/src/main/res/layout/fragment_main.xml | 57 + app/src/main/res/layout/fragment_morse.xml | 61 + app/src/main/res/menu/about.xml | 9 + app/src/main/res/menu/display_message.xml | 10 + .../menu/display_message_activity_actions.xml | 8 + app/src/main/res/menu/main.xml | 7 + .../main/res/menu/main_activity_actions.xml | 4 + app/src/main/res/values-de/strings.xml | 33 + app/src/main/res/values-v14/styles.xml | 20 + app/src/main/res/values-v19/styles.xml | 26 + app/src/main/res/values-w820dp/dimens.xml | 10 + app/src/main/res/values/dimens.xml | 7 + app/src/main/res/values/strings.xml | 33 + app/src/main/res/values/styles.xml | 20 + app/src/main/res/values/themes.xml | 22 + build.gradle | 15 + gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 49896 bytes gradle/wrapper/gradle-wrapper.properties | 6 + gradlew | 164 ++ gradlew.bat | 90 + import-summary.txt | 49 + settings.gradle | 1 + 71 files changed, 3885 insertions(+), 2 deletions(-) create mode 100644 .idea/.name create mode 100644 .idea/compiler.xml create mode 100644 .idea/copyright/profiles_settings.xml create mode 100644 .idea/encodings.xml create mode 100644 .idea/gradle.xml create mode 100644 .idea/inspectionProfiles/Project_Default.xml create mode 100644 .idea/inspectionProfiles/profiles_settings.xml create mode 100644 .idea/libraries/support_v4_19_1_0.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/scopes/scope_settings.xml create mode 100644 .idea/vcs.xml create mode 100644 .idea/workspace.xml create mode 100644 MorseConverter.iml create mode 100644 app/app.iml create mode 100644 app/build.gradle create mode 100644 app/lint.xml create mode 100644 app/manifest-merger-release-report.txt create mode 100644 app/src/main/AndroidManifest.xml create mode 100644 app/src/main/java/de/marcelkapfer/morseconverter/DisplayMessageActivity.java create mode 100644 app/src/main/java/de/marcelkapfer/morseconverter/MainActivity.java create mode 100644 app/src/main/res/drawable-hdpi/drawer_shadow.9.png create mode 100644 app/src/main/res/drawable-hdpi/ic_action_search.png create mode 100644 app/src/main/res/drawable-hdpi/ic_action_share.png create mode 100644 app/src/main/res/drawable-hdpi/ic_drawer.png create mode 100644 app/src/main/res/drawable-hdpi/ic_launcher.png create mode 100644 app/src/main/res/drawable-mdpi/drawer_shadow.9.png create mode 100644 app/src/main/res/drawable-mdpi/ic_action_search.png create mode 100644 app/src/main/res/drawable-mdpi/ic_action_share.png create mode 100644 app/src/main/res/drawable-mdpi/ic_drawer.png create mode 100644 app/src/main/res/drawable-mdpi/ic_launcher.png create mode 100644 app/src/main/res/drawable-xhdpi/drawer_shadow.9.png create mode 100644 app/src/main/res/drawable-xhdpi/ic_action_search.png create mode 100644 app/src/main/res/drawable-xhdpi/ic_action_share.png create mode 100644 app/src/main/res/drawable-xhdpi/ic_drawer.png create mode 100644 app/src/main/res/drawable-xhdpi/ic_launcher.png create mode 100644 app/src/main/res/drawable-xxhdpi/drawer_shadow.9.png create mode 100644 app/src/main/res/drawable-xxhdpi/ic_action_search.png create mode 100644 app/src/main/res/drawable-xxhdpi/ic_action_share.png create mode 100644 app/src/main/res/drawable-xxhdpi/ic_drawer.png create mode 100644 app/src/main/res/drawable-xxhdpi/ic_launcher.png create mode 100644 app/src/main/res/drawable-xxxhdpi/ic_launcher.png create mode 100644 app/src/main/res/drawable/actionbar.png create mode 100644 app/src/main/res/layout/activity_display_message.xml create mode 100644 app/src/main/res/layout/activity_main.xml create mode 100644 app/src/main/res/layout/drawer_list_item.xml create mode 100644 app/src/main/res/layout/fragment_about.xml create mode 100644 app/src/main/res/layout/fragment_display_message.xml create mode 100644 app/src/main/res/layout/fragment_main.xml create mode 100644 app/src/main/res/layout/fragment_morse.xml create mode 100644 app/src/main/res/menu/about.xml create mode 100644 app/src/main/res/menu/display_message.xml create mode 100644 app/src/main/res/menu/display_message_activity_actions.xml create mode 100644 app/src/main/res/menu/main.xml create mode 100644 app/src/main/res/menu/main_activity_actions.xml create mode 100644 app/src/main/res/values-de/strings.xml create mode 100644 app/src/main/res/values-v14/styles.xml create mode 100644 app/src/main/res/values-v19/styles.xml create mode 100644 app/src/main/res/values-w820dp/dimens.xml create mode 100644 app/src/main/res/values/dimens.xml create mode 100644 app/src/main/res/values/strings.xml create mode 100644 app/src/main/res/values/styles.xml create mode 100644 app/src/main/res/values/themes.xml create mode 100644 build.gradle create mode 100644 gradle/wrapper/gradle-wrapper.jar create mode 100644 gradle/wrapper/gradle-wrapper.properties create mode 100755 gradlew create mode 100644 gradlew.bat create mode 100644 import-summary.txt create mode 100644 settings.gradle diff --git a/.idea/.name b/.idea/.name new file mode 100644 index 0000000..d48d100 --- /dev/null +++ b/.idea/.name @@ -0,0 +1 @@ +MorseConverter \ No newline at end of file diff --git a/.idea/compiler.xml b/.idea/compiler.xml new file mode 100644 index 0000000..217af47 --- /dev/null +++ b/.idea/compiler.xml @@ -0,0 +1,23 @@ + + + + + + diff --git a/.idea/copyright/profiles_settings.xml b/.idea/copyright/profiles_settings.xml new file mode 100644 index 0000000..e7bedf3 --- /dev/null +++ b/.idea/copyright/profiles_settings.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/.idea/encodings.xml b/.idea/encodings.xml new file mode 100644 index 0000000..e206d70 --- /dev/null +++ b/.idea/encodings.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/.idea/gradle.xml b/.idea/gradle.xml new file mode 100644 index 0000000..736c7b5 --- /dev/null +++ b/.idea/gradle.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 0000000..ed65ee3 --- /dev/null +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,8 @@ + + + + \ No newline at end of file diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml new file mode 100644 index 0000000..3b31283 --- /dev/null +++ b/.idea/inspectionProfiles/profiles_settings.xml @@ -0,0 +1,7 @@ + + + + \ No newline at end of file diff --git a/.idea/libraries/support_v4_19_1_0.xml b/.idea/libraries/support_v4_19_1_0.xml new file mode 100644 index 0000000..8ccc0a7 --- /dev/null +++ b/.idea/libraries/support_v4_19_1_0.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..cded496 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..4a70499 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/.idea/scopes/scope_settings.xml b/.idea/scopes/scope_settings.xml new file mode 100644 index 0000000..922003b --- /dev/null +++ b/.idea/scopes/scope_settings.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..def6a6a --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/.idea/workspace.xml b/.idea/workspace.xml new file mode 100644 index 0000000..f5976f8 --- /dev/null +++ b/.idea/workspace.xml @@ -0,0 +1,1677 @@ + + + + + + + + + + + + + + + + android-19 + + + + + + @style/CustomActionBarTheme + + + + + @style/CustomActionBarTheme + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + localhost + 5050 + + + + + + + + $USER_HOME$/.subversion + + + + + 1418075325658 + 1418075325658 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/MorseConverter.iml b/MorseConverter.iml new file mode 100644 index 0000000..2a02201 --- /dev/null +++ b/MorseConverter.iml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/README.md b/README.md index bd77f26..9fd40c8 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -morse-converter-android -======================= +Morse Converter Android App +=========================== A writtenMorse and normal morse code converter for Android diff --git a/app/app.iml b/app/app.iml new file mode 100644 index 0000000..a406f2e --- /dev/null +++ b/app/app.iml @@ -0,0 +1,89 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/build.gradle b/app/build.gradle new file mode 100644 index 0000000..a7f3f16 --- /dev/null +++ b/app/build.gradle @@ -0,0 +1,23 @@ +apply plugin: 'com.android.application' + +android { + compileSdkVersion 19 + buildToolsVersion "21.1.1" + + defaultConfig { + applicationId "de.marcelkapfer.morseconverter" + minSdkVersion 14 + targetSdkVersion 19 + } + + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' + } + } +} + +dependencies { + compile 'com.android.support:support-v4:19.1.0' +} diff --git a/app/lint.xml b/app/lint.xml new file mode 100644 index 0000000..5eb30f7 --- /dev/null +++ b/app/lint.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/app/manifest-merger-release-report.txt b/app/manifest-merger-release-report.txt new file mode 100644 index 0000000..fb5d23a --- /dev/null +++ b/app/manifest-merger-release-report.txt @@ -0,0 +1,69 @@ +-- Merging decision tree log --- +manifest +ADDED from AndroidManifest.xml:2:1 + package + ADDED from AndroidManifest.xml:2:11 + INJECTED from AndroidManifest.xml:0:0 + INJECTED from AndroidManifest.xml:0:0 + android:versionName + ADDED from AndroidManifest.xml:4:5 + android:versionCode + ADDED from AndroidManifest.xml:3:5 + INJECTED from AndroidManifest.xml:0:0 + INJECTED from AndroidManifest.xml:0:0 + xmlns:android + ADDED from AndroidManifest.xml:4:31 +uses-sdk +ADDED from AndroidManifest.xml:6:5 + android:targetSdkVersion + ADDED from AndroidManifest.xml:8:9 + INJECTED from AndroidManifest.xml:0:0 + INJECTED from AndroidManifest.xml:0:0 + android:minSdkVersion + ADDED from AndroidManifest.xml:7:9 + INJECTED from AndroidManifest.xml:0:0 + INJECTED from AndroidManifest.xml:0:0 +application +ADDED from AndroidManifest.xml:10:5 + android:label + ADDED from AndroidManifest.xml:13:9 + android:allowBackup + ADDED from AndroidManifest.xml:11:9 + android:icon + ADDED from AndroidManifest.xml:12:9 + android:theme + ADDED from AndroidManifest.xml:14:9 +activity#de.marcelkapfer.morseconverter.MainActivity +ADDED from AndroidManifest.xml:16:8 + android:label + ADDED from AndroidManifest.xml:18:13 + android:windowSoftInputMode + ADDED from AndroidManifest.xml:19:13 + android:name + ADDED from AndroidManifest.xml:17:13 +intent-filter#android.intent.action.MAIN+android.intent.category.LAUNCHER +ADDED from AndroidManifest.xml:20:13 +action#android.intent.action.MAIN +ADDED from AndroidManifest.xml:21:17 + android:name + ADDED from AndroidManifest.xml:21:25 +category#android.intent.category.LAUNCHER +ADDED from AndroidManifest.xml:23:17 + android:name + ADDED from AndroidManifest.xml:23:27 +activity#de.marcelkapfer.morseconverter.DisplayMessageActivity +ADDED from AndroidManifest.xml:26:9 + android:label + ADDED from AndroidManifest.xml:28:13 + android:parentActivityName + ADDED from AndroidManifest.xml:29:13 + android:immersive + ADDED from AndroidManifest.xml:29:86 + android:name + ADDED from AndroidManifest.xml:27:13 +meta-data#android.support.PARENT_ACTIVITY +ADDED from AndroidManifest.xml:30:13 + android:value + ADDED from AndroidManifest.xml:32:17 + android:name + ADDED from AndroidManifest.xml:31:17 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..3d23aed --- /dev/null +++ b/app/src/main/AndroidManifest.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/java/de/marcelkapfer/morseconverter/DisplayMessageActivity.java b/app/src/main/java/de/marcelkapfer/morseconverter/DisplayMessageActivity.java new file mode 100644 index 0000000..947a4cf --- /dev/null +++ b/app/src/main/java/de/marcelkapfer/morseconverter/DisplayMessageActivity.java @@ -0,0 +1,87 @@ +package de.marcelkapfer.morseconverter; + +import android.app.Fragment; +import android.content.Intent; +import android.os.Bundle; +import android.support.v4.app.FragmentActivity; +import android.view.LayoutInflater; +import android.view.Menu; +import android.view.MenuInflater; +import android.view.MenuItem; +import android.view.View; +import android.view.ViewGroup; +import android.widget.TextView; + +public class DisplayMessageActivity extends FragmentActivity { + + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + // Get the message from the intent + Intent intent = getIntent(); + String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE); + + + // Create the text view + TextView textView = new TextView(this); + textView.setTextSize(20); + textView.setText(message); + textView.setTextIsSelectable(true); + textView.setPadding(10, 10, 10, 10); + + + // Set the text view as the activity layout + setContentView(textView); + } + + @Override + public boolean onCreateOptionsMenu(Menu menu) { + // Inflate the menu items for use in the action bar + MenuInflater inflater = getMenuInflater(); + inflater.inflate(R.menu.display_message_activity_actions, menu); + return super.onCreateOptionsMenu(menu); + } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + // Handle presses on the action bar items + switch (item.getItemId()) { + case R.id.action_share: + share(); + return true; + default: + return super.onOptionsItemSelected(item); + } + } + + + + /** + * A placeholder fragment containing a simple view. + */ + public static class PlaceholderFragment extends Fragment { + + public PlaceholderFragment() { + } + + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, + Bundle savedInstanceState) { + View rootView = inflater.inflate(R.layout.fragment_display_message, + container, false); + return rootView; + } + } + + public void share(){ + Intent intent = getIntent(); + String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE); + Intent sendIntent = new Intent(); + sendIntent.setAction(Intent.ACTION_SEND); + sendIntent.putExtra(Intent.EXTRA_TEXT, message); + sendIntent.setType("text/plain"); + startActivity(Intent.createChooser(sendIntent, getResources().getText(R.string.send_to))); + } + +} diff --git a/app/src/main/java/de/marcelkapfer/morseconverter/MainActivity.java b/app/src/main/java/de/marcelkapfer/morseconverter/MainActivity.java new file mode 100644 index 0000000..5301e0f --- /dev/null +++ b/app/src/main/java/de/marcelkapfer/morseconverter/MainActivity.java @@ -0,0 +1,999 @@ +package de.marcelkapfer.morseconverter; + +import android.app.Fragment; +import android.app.FragmentManager; +import android.content.Intent; +import android.content.res.Configuration; +import android.os.Bundle; +import android.support.v4.app.ActionBarDrawerToggle; +import android.support.v4.app.FragmentActivity; +import android.support.v4.view.GravityCompat; +import android.support.v4.widget.DrawerLayout; +import android.view.LayoutInflater; +import android.view.MenuItem; +import android.view.View; +import android.view.ViewGroup; +import android.widget.AdapterView; +import android.widget.ArrayAdapter; +import android.widget.EditText; +import android.widget.ListView; + +public class MainActivity extends FragmentActivity { + private DrawerLayout mDrawerLayout; + private ListView mDrawerList; + private ActionBarDrawerToggle mDrawerToggle; + + private CharSequence mDrawerTitle; + private CharSequence mTitle; + private String[] mMenuTitles; + public String[] fragments = new String[] {"R.id.main", "R.id.morse", "R.id.about"}; + private static int[] fragment = new int[] {R.layout.fragment_main, R.layout.fragment_morse, R.layout.fragment_about }; + public static int mainPosition; + + public final static String EXTRA_MESSAGE = "de.marcelkapfer.morseconverter.MESSAGE"; + public String tfOutput = ""; + int lastFragment = 0; + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_main); + + mTitle = mDrawerTitle = getTitle(); + mMenuTitles = getResources().getStringArray(R.array.menu_array); + mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout); + mDrawerList = (ListView) findViewById(R.id.left_drawer); + + // set a custom shadow that overlays the main content when the drawer opens + mDrawerLayout.setDrawerShadow(R.drawable.drawer_shadow, GravityCompat.START); + // set up the drawer's list view with items and click listener + mDrawerList.setAdapter(new ArrayAdapter(this, + R.layout.drawer_list_item, mMenuTitles)); + mDrawerList.setOnItemClickListener(new DrawerItemClickListener()); + + // enable ActionBar app icon to behave as action to toggle nav drawer + getActionBar().setDisplayHomeAsUpEnabled(true); + getActionBar().setHomeButtonEnabled(true); + + // ActionBarDrawerToggle ties together the the proper interactions + // between the sliding drawer and the action bar app icon + mDrawerToggle = new ActionBarDrawerToggle( + this, /* host Activity */ + mDrawerLayout, /* DrawerLayout object */ + R.drawable.ic_drawer, /* nav drawer image to replace 'Up' caret */ + R.string.drawer_open, /* "open drawer" description for accessibility */ + R.string.drawer_close /* "close drawer" description for accessibility */ + ) { + + /** Called when a drawer has settled in a completely closed state. */ + public void onDrawerClosed(View view) { + super.onDrawerClosed(view); + getActionBar().setTitle(mTitle); + } + + /** Called when a drawer has settled in a completely open state. */ + public void onDrawerOpened(View drawerView) { + super.onDrawerOpened(drawerView); + getActionBar().setTitle(mDrawerTitle); + } + + }; + mDrawerLayout.setDrawerListener(mDrawerToggle); + + + if(savedInstanceState == null) { + changeFragment(lastFragment); + } + } + + + /* The click listner for ListView in the navigation drawer */ + private class DrawerItemClickListener implements ListView.OnItemClickListener { + @Override + public void onItemClick(AdapterView parent, View view, int position, long id) { + + changeFragment(position); + mainPosition = position; + } + + } + + + public void changeFragment(int position){ + + + fragment_main newFragment = new fragment_main(); + Bundle args = new Bundle(); + args.putInt(fragments[position], position); + newFragment.setArguments(args); + + // Insert the fragment by replacing any existing fragment + FragmentManager fragmentManager = getFragmentManager(); + fragmentManager.beginTransaction() + .replace(R.id.container, newFragment).commit(); + + mDrawerList.setItemChecked(position, true); + setTitle(mMenuTitles[position]); + mDrawerLayout.closeDrawer(mDrawerList); + + } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + // Pass the event to ActionBarDrawerToggle, if it returns + // true, then it has handled the app icon touch event + if (mDrawerToggle.onOptionsItemSelected(item)) { + return true; + } + // Handle your other action bar items... + + return super.onOptionsItemSelected(item); + } + + + @Override + public void setTitle(CharSequence title) { + mTitle = title; + getActionBar().setTitle(mTitle); + } + + /** + * When using the ActionBarDrawerToggle, you must call it during + * onPostCreate() and onConfigurationChanged()... + */ + + @Override + protected void onPostCreate(Bundle savedInstanceState) { + super.onPostCreate(savedInstanceState); + // Sync the toggle state after onRestoreInstanceState has occurred. + mDrawerToggle.syncState(); + } + + @Override + public void onConfigurationChanged(Configuration newConfig) { + super.onConfigurationChanged(newConfig); + mDrawerToggle.onConfigurationChanged(newConfig); + } + + + + + public static class fragment_main extends Fragment { + public static final String ARG_POSITION = "menu_number"; + + + public fragment_main() { + // Empty subclass required for fragment subclass + } + + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, + Bundle savedInstanceState) { + View rootView = inflater.inflate(fragment[MainActivity.mainPosition], container, false); + //int i = getArguments().getInt(ARG_POSITION); + //String menu = getResources().getStringArray(R.array.menu_array)[i]; + //getActivity().setTitle(menu); + return rootView; + } + } + + + /* + * Code for converting latin letters into written morse + */ + public void decode(View view) { + EditText editText = (EditText) findViewById(R.id.edit_message); + StringBuffer message = new StringBuffer(editText.getText()); + 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("")) { + tfOutput = "Please enter at least one character"; + After(view); + } else if (input.toString().equals("LETTERSPACE")) { + tfOutput = "#"; + After(view); + } else if (input.toString().equals("END OF WORK")) { + tfOutput = "000101"; + After(view); + } else if (input.toString().equals("ERROR")) { + tfOutput = "00000000"; + After(view); + } else if (input.toString().equals("STARTING SIGNAL")) { + tfOutput = "10101"; + After(view); + } else if (input.toString().equals("ENDING SIGNAL")) { + tfOutput = "01010"; + After(view); + } else if (input.toString().equals("UNDERSTOOD")) { + tfOutput = "00010"; + After(view); + } else if (input.toString().equals("WAIT")) { + tfOutput = "01000"; + After(view); + } else if (input.toString().equals("SOS")) { + tfOutput = "000111000"; + After(view); + } else if (input.toString().equals("LETTER SPACE")) { + tfOutput = "#"; + After(view); + } else if (input.toString().equals("WORD SPACE")) { + tfOutput = "+"; + After(view); + } else { + for (int c = input.length(); c > 0; c--) { + if (input.toString().startsWith(" ")) { + output.append("+"); + input.delete(0, 1); + } 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); + } else if (input.toString().startsWith("9")) { + output.append("11110#"); + input.delete(0, 1); + } else if (input.toString().startsWith("Ä")) { + output.append("0101#"); + input.delete(0, 1); + } else if (input.toString().startsWith("Ö")) { + output.append("1110#"); + input.delete(0, 1); + } else if (input.toString().startsWith("Ü")) { + output.append("0011#"); + input.delete(0, 1); + } else if (input.toString().startsWith("ß")) { + output.append("00011000#"); + input.delete(0, 1); + } else if (input.toString().startsWith(".")) { + output.append("010101#"); + input.delete(0, 1); + } else if (input.toString().startsWith(",")) { + output.append("110011#"); + input.delete(0, 1); + } else if (input.toString().startsWith(":")) { + output.append("111000#"); + input.delete(0, 1); + } else if (input.toString().startsWith(";")) { + output.append("101010#"); + input.delete(0, 1); + } else if (input.toString().startsWith("?")) { + output.append("001100#"); + input.delete(0, 1); + } else if (input.toString().startsWith("!")) { + output.append("101011#"); + input.delete(0, 1); + } else if (input.toString().startsWith("-")) { + output.append("100001#"); + input.delete(0, 1); + } else if (input.toString().startsWith("_")) { + output.append("001101#"); + input.delete(0, 1); + } else if (input.toString().startsWith("(")) { + output.append("10110#"); + input.delete(0, 1); + } else if (input.toString().startsWith(")")) { + output.append("101101#"); + input.delete(0, 1); + } else if (input.toString().startsWith("=")) { + output.append("10001#"); + input.delete(0, 1); + } else if (input.toString().startsWith("+")) { + output.append("01010#"); + input.delete(0, 1); + } else if (input.toString().startsWith("/")) { + output.append("10010#"); + input.delete(0, 1); + } else if (input.toString().startsWith("@")) { + output.append("011010#"); + input.delete(0, 1); + } else if (input.toString().startsWith("'")) { + output.append("011110#"); + input.delete(0, 1); + } else if (input.toString().startsWith("$")) { + output.append("0001001#"); + input.delete(0, 1); + } else { + tfOutput = "Code not listed or wrong."; + } + } + if (output.toString().endsWith("#") + && (output.toString().equals("#") == false)) { + output.delete(output.length() - 1, output.length()); + } + tfOutput = output.toString(); + lastFragment = 0; + After(view); + } + } + + /* + * Code for converting writtenMorse to latin letters + */ + public void encode (View view) { + EditText editText = (EditText) findViewById(R.id.edit_message); + StringBuffer message = new StringBuffer(editText.getText()); + if (message.toString().endsWith(" ")){ + message = message.deleteCharAt(message.length() - 1); + } + // Variables + String input; + StringBuffer output = new StringBuffer(); + input = message.toString().toUpperCase() + "#"; + StringBuffer inputToSign = new StringBuffer(input); + while (inputToSign.toString().equals("#") == false) { + int d = 0; + boolean signFull = true; + StringBuffer sign = new StringBuffer(); + while (signFull) { + if (inputToSign.toString().charAt(d) == '+' + || inputToSign.toString().charAt(d) == '#') { + if (d == 0) { + if (inputToSign.toString().startsWith("+")) { + output.append(" "); + } + inputToSign.deleteCharAt(0); + } else { + sign.replace(0, sign.length(), inputToSign + .toString().substring(0, d)); + inputToSign.delete(0, d); + signFull = false; + } + } else { + d++; + } + } + if (input.equals("°")) { + break; + } else if (sign.toString().equals("01")) { + output.append("A"); + } else if (sign.toString().equals("1000")) { + output.append("B"); + } else if (sign.toString().equals("1010")) { + output.append("C"); + } else if (sign.toString().equals("100")) { + output.append("D"); + } else if (sign.toString().equals("0")) { + output.append("E"); + } else if (sign.toString().equals("0010")) { + output.append("F"); + } else if (sign.toString().equals("110")) { + output.append("G"); + } else if (sign.toString().equals("0000")) { + output.append("H"); + } else if (sign.toString().equals("00")) { + output.append("I"); + } else if (sign.toString().equals("0111")) { + output.append("J"); + } else if (sign.toString().equals("101")) { + output.append("K"); + } else if (sign.toString().equals("0100")) { + output.append("L"); + } else if (sign.toString().equals("11")) { + output.append("M"); + } else if (sign.toString().equals("10")) { + output.append("N"); + } else if (sign.toString().equals("111")) { + output.append("O"); + } else if (sign.toString().equals("0110")) { + output.append("P"); + } else if (sign.toString().equals("1101")) { + output.append("Q"); + } else if (sign.toString().equals("010")) { + output.append("R"); + } else if (sign.toString().equals("000")) { + output.append("S"); + } else if (sign.toString().equals("1")) { + output.append("T"); + } else if (sign.toString().equals("001")) { + output.append("U"); + } else if (sign.toString().equals("0001")) { + output.append("V"); + } else if (sign.toString().equals("011")) { + output.append("W"); + } else if (sign.toString().equals("1001")) { + output.append("X"); + } else if (sign.toString().equals("1011")) { + output.append("Y"); + } else if (sign.toString().equals("1100")) { + output.append("Z"); + } else if (sign.toString().equals("11111")) { + output.append("0 (zero)"); + } else if (sign.toString().equals("01111")) { + output.append("1"); + } else if (sign.toString().equals("00111")) { + output.append("2"); + } else if (sign.toString().equals("00011")) { + output.append("3"); + } else if (sign.toString().equals("00001")) { + output.append("4"); + } else if (sign.toString().equals("00000")) { + output.append("5"); + } else if (sign.toString().equals("10000")) { + output.append("6"); + } else if (sign.toString().equals("11000")) { + output.append("7"); + } else if (sign.toString().equals("11100")) { + output.append("8"); + } else if (sign.toString().equals("11110")) { + output.append("9"); + } else if (sign.toString().equals("0101")) { + output.append("Ä"); + } else if (sign.toString().equals("1110")) { + output.append("Ö"); + } else if (sign.toString().equals("0011")) { + output.append("Ü"); + } else if (sign.toString().equals("00011000")) { + output.append("ß"); + } else if (sign.toString().equals("1111")) { + output.append("CH"); + } else if (sign.toString().equals("010101")) { + output.append("."); + } else if (sign.toString().equals("110011")) { + output.append(","); + } else if (sign.toString().equals("111000")) { + output.append(":"); + } else if (sign.toString().equals("101010")) { + output.append(";"); + } else if (sign.toString().equals("001100")) { + output.append("?"); + } else if (sign.toString().equals("101011")) { + output.append("!"); + } else if (sign.toString().equals("100001")) { + output.append("-"); + } else if (sign.toString().equals("001101")) { + output.append("_"); + } else if (sign.toString().equals("10110")) { + output.append("("); + } else if (sign.toString().equals("101101")) { + output.append(")"); + } else if (sign.toString().equals("011110")) { + output.append("'"); + } else if (sign.toString().equals("10001")) { + output.append("="); + } else if (sign.toString().equals("01010")) { + output.append("+ or End of the signal"); + } else if (sign.toString().equals("10010")) { + output.append("/"); + } else if (sign.toString().equals("011010")) { + output.append("@"); + } else if (sign.toString().equals("10101")) { + output.append("Begin of the signal"); + } else if (sign.toString().equals("10001")) { + output.append("Wait"); + } else if (sign.toString().equals("00010")) { + output.append("Understood"); + } else if (sign.toString().equals("000101")) { + output.append("End of work"); + } else if (sign.toString().equals("000111000")) { + output.append("SOS"); + } else if (sign.toString().equals("00000000")) { + output.append("Error"); + } else { + tfOutput = "Code not listed or wrong."; + } + } + tfOutput = output.toString(); + lastFragment = 0; + After(view); + /*} catch (Exception e) { + tfOutput.setText("Some error occured. I'm sorry!"); + }*/ + } + + /* + * Code for converting normal letters into morse code + */ + + public void llm(View view) { + EditText editText = (EditText) findViewById(R.id.edit_message); + StringBuffer message = new StringBuffer(editText.getText()); + if (message.toString().endsWith(" ")){ + message = message.deleteCharAt(message.length() - 1); + } + // Variables + // Variables + StringBuffer input = new StringBuffer(); + input = input.replace(0, input.length(), message.toString().toUpperCase()); + StringBuffer output = new StringBuffer(); + if (input.toString().equals("")) { + tfOutput = "Please enter at least one character"; + After(view); + } else if (input.toString().equals("LETTERSPACE")) { + tfOutput = " "; + After(view); + } else if (input.toString().equals("END OF WORK")) { + tfOutput = "...-.-"; + After(view); + } else if (input.toString().equals("ERROR")) { + tfOutput = "........"; + After(view); + } else if (input.toString().equals("STARTING SIGNAL")) { + tfOutput = "-.-.-"; + After(view); + } else if (input.toString().equals("ENDING SIGNAL")) { + tfOutput = ".-.-."; + After(view); + } else if (input.toString().equals("UNDERSTOOD")) { + tfOutput = "...-."; + After(view); + } else if (input.toString().equals("WAIT")) { + tfOutput = ".-..."; + After(view); + } else if (input.toString().equals("SOS")) { + tfOutput = "...---..."; + After(view); + } else if (input.toString().equals("LETTER SPACE")) { + tfOutput = " "; + After(view); + } else if (input.toString().equals("WORD SPACE")) { + tfOutput = " "; + After(view); + } else { + for (int c = input.length(); c > 0; c--) { + if (input.toString().startsWith(" ")) { + output.append(" "); + input.delete(0, 1); + } else if (input.toString().startsWith("A")) { + output.append(".- "); + input.delete(0, 1); + } else if (input.toString().startsWith("B")) { + output.append("-... "); + input.delete(0, 1); + } else if (input.toString().startsWith("C")) { + output.append("-.-. "); + input.delete(0, 1); + } else if (input.toString().startsWith("D")) { + output.append("-.. "); + input.delete(0, 1); + } else if (input.toString().startsWith("E")) { + output.append(". "); + input.delete(0, 1); + } else if (input.toString().startsWith("F")) { + output.append("..-. "); + input.delete(0, 1); + } else if (input.toString().startsWith("G")) { + output.append("--. "); + input.delete(0, 1); + } else if (input.toString().startsWith("H")) { + output.append(".... "); + input.delete(0, 1); + } else if (input.toString().startsWith("I")) { + output.append(".. "); + input.delete(0, 1); + } else if (input.toString().startsWith("J")) { + output.append(".--- "); + input.delete(0, 1); + } else if (input.toString().startsWith("K")) { + output.append("-.- "); + input.delete(0, 1); + } else if (input.toString().startsWith("L")) { + output.append(".-.. "); + input.delete(0, 1); + } else if (input.toString().startsWith("M")) { + output.append("-- "); + input.delete(0, 1); + } else if (input.toString().startsWith("N")) { + output.append("-. "); + input.delete(0, 1); + } else if (input.toString().startsWith("O")) { + output.append("--- "); + input.delete(0, 1); + } else if (input.toString().startsWith("P")) { + output.append(".--. "); + input.delete(0, 1); + } else if (input.toString().startsWith("Q")) { + output.append("--.- "); + input.delete(0, 1); + } else if (input.toString().startsWith("R")) { + output.append(".-. "); + input.delete(0, 1); + } else if (input.toString().startsWith("S")) { + output.append("... "); + input.delete(0, 1); + } else if (input.toString().startsWith("T")) { + output.append("- "); + input.delete(0, 1); + } else if (input.toString().startsWith("U")) { + output.append("..- "); + input.delete(0, 1); + } else if (input.toString().startsWith("V")) { + output.append("...- "); + input.delete(0, 1); + } else if (input.toString().startsWith("W")) { + output.append(".-- "); + input.delete(0, 1); + } else if (input.toString().startsWith("X")) { + output.append("-..- "); + input.delete(0, 1); + } else if (input.toString().startsWith("Y")) { + output.append("-.-- "); + input.delete(0, 1); + } else if (input.toString().startsWith("Z")) { + output.append("--.. "); + input.delete(0, 1); + } else if (input.toString().startsWith("0")) { + output.append("----- "); + input.delete(0, 1); + } else if (input.toString().startsWith("1")) { + output.append(".---- "); + input.delete(0, 1); + } else if (input.toString().startsWith("2")) { + output.append("..--- "); + input.delete(0, 1); + } else if (input.toString().startsWith("3")) { + output.append("...-- "); + input.delete(0, 1); + } else if (input.toString().startsWith("4")) { + output.append("....- "); + input.delete(0, 1); + } else if (input.toString().startsWith("5")) { + output.append("..... "); + input.delete(0, 1); + } else if (input.toString().startsWith("6")) { + output.append("-.... "); + input.delete(0, 1); + } else if (input.toString().startsWith("7")) { + output.append("--... "); + input.delete(0, 1); + } else if (input.toString().startsWith("8")) { + output.append("---.. "); + input.delete(0, 1); + } else if (input.toString().startsWith("9")) { + output.append("----. "); + input.delete(0, 1); + } else if (input.toString().startsWith("Ä")) { + output.append(".-.- "); + input.delete(0, 1); + } else if (input.toString().startsWith("Ö")) { + output.append("---. "); + input.delete(0, 1); + } else if (input.toString().startsWith("Ü")) { + output.append("..-- "); + input.delete(0, 1); + } else if (input.toString().startsWith("ß")) { + output.append("...--... "); + input.delete(0, 1); + } else if (input.toString().startsWith(".")) { + output.append(".-.-.- "); + input.delete(0, 1); + } else if (input.toString().startsWith(",")) { + output.append("--..-- "); + input.delete(0, 1); + } else if (input.toString().startsWith(":")) { + output.append("---... "); + input.delete(0, 1); + } else if (input.toString().startsWith(";")) { + output.append("-.-.-. "); + input.delete(0, 1); + } else if (input.toString().startsWith("?")) { + output.append("..--.. "); + input.delete(0, 1); + } else if (input.toString().startsWith("!")) { + output.append("-.-.-- "); + input.delete(0, 1); + } else if (input.toString().startsWith("-")) { + output.append("-....- "); + input.delete(0, 1); + } else if (input.toString().startsWith("_")) { + output.append("..--.- "); + input.delete(0, 1); + } else if (input.toString().startsWith("(")) { + output.append("-.--. "); + input.delete(0, 1); + } else if (input.toString().startsWith(")")) { + output.append("-.--.- "); + input.delete(0, 1); + } else if (input.toString().startsWith("=")) { + output.append("-...- "); + input.delete(0, 1); + } else if (input.toString().startsWith("+")) { + output.append(".-.-. "); + input.delete(0, 1); + } else if (input.toString().startsWith("/")) { + output.append("-..-. "); + input.delete(0, 1); + } else if (input.toString().startsWith("@")) { + output.append(".--.-. "); + input.delete(0, 1); + } else if (input.toString().startsWith("'")) { + output.append(".----. "); + input.delete(0, 1); + } else if (input.toString().startsWith("$")) { + output.append("...-..- "); + input.delete(0, 1); + } else { + tfOutput = "Code not listed or wrong."; + } + } + if (output.toString().endsWith(" ") + && (output.toString().equals(" ") == false)) { + output.delete(output.length() - 3, output.length()); + } + tfOutput = output.toString(); + lastFragment = 1; + After(view); + } + } + + /* + * Code for converting morse code into latin letters + */ + public void mll(View view) { + EditText editText = (EditText) findViewById(R.id.edit_message); + StringBuffer message = new StringBuffer(editText.getText()); + if (message.toString().endsWith(" ")){ + message = message.deleteCharAt(message.length() - 1); + } + // Variables + String input; + StringBuffer output = new StringBuffer(); + input = message.toString().toUpperCase() + "#"; + StringBuffer inputToSign = new StringBuffer(input); + while (inputToSign.toString().equals("#") == false) { + int d = 0; + boolean signFull = true; + StringBuffer sign = new StringBuffer(); + while (signFull) { + if (inputToSign.toString().charAt(d) == '+' + || inputToSign.toString().charAt(d) == '#') { + if (d == 0) { + if (inputToSign.toString().startsWith("+")) { + output.append(" "); + } + inputToSign.deleteCharAt(0); + } else { + sign.replace(0, sign.length(), inputToSign + .toString().substring(0, d)); + inputToSign.delete(0, d); + signFull = false; + } + } else { + d++; + } + } + if (sign.toString().equals(".-")) { + output.append("A"); + } else if (sign.toString().equals("-...")) { + output.append("B"); + } else if (sign.toString().equals("-.-.")) { + output.append("C"); + } else if (sign.toString().equals("-..")) { + output.append("D"); + } else if (sign.toString().equals(".")) { + output.append("E"); + } else if (sign.toString().equals("..-.")) { + output.append("F"); + } else if (sign.toString().equals("--.")) { + output.append("G"); + } else if (sign.toString().equals("....")) { + output.append("H"); + } else if (sign.toString().equals("..")) { + output.append("I"); + } else if (sign.toString().equals(".---")) { + output.append("J"); + } else if (sign.toString().equals("-.-")) { + output.append("K"); + } else if (sign.toString().equals(".-..")) { + output.append("L"); + } else if (sign.toString().equals("--")) { + output.append("M"); + } else if (sign.toString().equals("-.")) { + output.append("N"); + } else if (sign.toString().equals("---")) { + output.append("O"); + } else if (sign.toString().equals(".--.")) { + output.append("P"); + } else if (sign.toString().equals("--.-")) { + output.append("Q"); + } else if (sign.toString().equals(".-.")) { + output.append("R"); + } else if (sign.toString().equals("...")) { + output.append("S"); + } else if (sign.toString().equals("-")) { + output.append("T"); + } else if (sign.toString().equals("..-")) { + output.append("U"); + } else if (sign.toString().equals("...-")) { + output.append("V"); + } else if (sign.toString().equals(".--")) { + output.append("W"); + } else if (sign.toString().equals("-..-")) { + output.append("X"); + } else if (sign.toString().equals("-.--")) { + output.append("Y"); + } else if (sign.toString().equals("--..")) { + output.append("Z"); + } else if (sign.toString().equals("-----")) { + output.append(". (zero)"); + } else if (sign.toString().equals(".----")) { + output.append("-"); + } else if (sign.toString().equals("..---")) { + output.append("2"); + } else if (sign.toString().equals("...--")) { + output.append("3"); + } else if (sign.toString().equals("....-")) { + output.append("4"); + } else if (sign.toString().equals(".....")) { + output.append("5"); + } else if (sign.toString().equals("-....")) { + output.append("6"); + } else if (sign.toString().equals("--...")) { + output.append("7"); + } else if (sign.toString().equals("---..")) { + output.append("8"); + } else if (sign.toString().equals("----.")) { + output.append("9"); + } else if (sign.toString().equals(".-.-")) { + output.append("Ä"); + } else if (sign.toString().equals("---.")) { + output.append("Ö"); + } else if (sign.toString().equals("..--")) { + output.append("Ü"); + } else if (sign.toString().equals("...--...")) { + output.append("ß"); + } else if (sign.toString().equals("----")) { + output.append("CH"); + } else if (sign.toString().equals(".-.-.-")) { + output.append("."); + } else if (sign.toString().equals("--..--")) { + output.append(","); + } else if (sign.toString().equals("---...")) { + output.append(":"); + } else if (sign.toString().equals("-.-.-.")) { + output.append(";"); + } else if (sign.toString().equals("..--..")) { + output.append("?"); + } else if (sign.toString().equals("-.-.--")) { + output.append("!"); + } else if (sign.toString().equals("-....-")) { + output.append("-"); + } else if (sign.toString().equals("..--.-")) { + output.append("_"); + } else if (sign.toString().equals("-.--.")) { + output.append("("); + } else if (sign.toString().equals("-.--.-")) { + output.append(")"); + } else if (sign.toString().equals(".----.")) { + output.append("'"); + } else if (sign.toString().equals("-...-")) { + output.append("="); + } else if (sign.toString().equals(".-.-.")) { + output.append("+ or End of the signal"); + } else if (sign.toString().equals("-..-.")) { + output.append("/"); + } else if (sign.toString().equals(".--.-.")) { + output.append("@"); + } else if (sign.toString().equals("-.-.-")) { + output.append("Begin of the signal"); + } else if (sign.toString().equals("-...-")) { + output.append("Wait"); + } else if (sign.toString().equals("...-.")) { + output.append("Understood"); + } else if (sign.toString().equals("...-.-")) { + output.append("End of work"); + } else if (sign.toString().equals("...---...")) { + output.append("SOS"); + } else if (sign.toString().equals("........")) { + output.append("Error"); + } else { + tfOutput = "Code not listed or wrong."; + } + } + tfOutput = output.toString(); + lastFragment = 1; + After(view); + } + + + public void After(View view){ + Intent intent = new Intent(this, DisplayMessageActivity.class); + intent.putExtra(EXTRA_MESSAGE, tfOutput ); + startActivity(intent); + tfOutput = ""; + } +} diff --git a/app/src/main/res/drawable-hdpi/drawer_shadow.9.png b/app/src/main/res/drawable-hdpi/drawer_shadow.9.png new file mode 100644 index 0000000000000000000000000000000000000000..236bff558af07faa3921ba35e2515edf62d04bb9 GIT binary patch literal 161 zcmeAS@N?(olHy`uVBq!ia0vp^JV0#3!3HEVSgovp6icy_X9x!n)NrJ90QsB+9+AZi z4BVX{%xHe{^je^xv!{z=h{y5dAOHW`Gf#YA@1xt%!17hKoI8QGX!~*m^_#PXe04cx%%--ZTFyA14Gmmwu;gv|$2 zxQ0c1*h&;@xVvikvml365O(6)A?9dQQ(07}_)*z$d0h1^~N?6?9btxc>Su#Z)2YWI$PL8H2%B-;qg5Cv_Au0jcmS*c76rF1PHD=qcO#5~|BiWF^iQr6!iVZ(}^ zM;hb3iwUjnM5gxke7I33GBwOD%Ciif^)Mr(y#ruCmdd1ci*m&L2_CEpy-ky5vCXMO z(Gt(lm`xSyN=~_Dv8PiI!Wo#5)X|M4wLqBYh3-|a6@i?O8Gud;p$$S90N_BmmB!M$ z;ba6rO%RJ)hhfI%0a$jUvD6)<2Q)n)4-#HSJ(1n<#Kw6PlAcfwzJiCFZ*h9(JO7F7 kpL`a81z-V~r5^zX03bgQxSV;wqW}N^07*qoM6N<$f~DIU2><{9 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-hdpi/ic_action_share.png b/app/src/main/res/drawable-hdpi/ic_action_share.png new file mode 100644 index 0000000000000000000000000000000000000000..a36464b8be84a614d4028bc961946d97dd034153 GIT binary patch literal 513 zcmV+c0{;DpP)kD}CM1E~S9+A?v^KPd>Kxvry zq{o0E>6?oso=gDc{MqtZnBRxFh}(8zmvvjtO+FMa^eX`_%U(vyD6c(n&_%q6Wig-tEji(P!B500000NkvXXu0mjf DWWe0) literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-hdpi/ic_drawer.png b/app/src/main/res/drawable-hdpi/ic_drawer.png new file mode 100644 index 0000000000000000000000000000000000000000..264b0870cda33162e95893edece46d4da4ad0b4e GIT binary patch literal 2876 zcmV-C3&Zq@P)uJ@VVD_UC<6{NG_fI~0ue<-1QkJoA_k0xBC#Thg@9ne9*`iQ#9$Or zQF$}6R&?d%y_c8YA7_1QpS|}zXYYO1x&V;8{kgn!SPFnNo`4_X6{c}T{8k*B#$jdxfFg<9uYy1K45IaYvHg`_dOZM)Sy63ve6hvv z1)yUy0P^?0*fb9UASvow`@mQCp^4`uNg&9uGcn1|&Nk+9SjOUl{-OWr@Hh0;_l(8q z{wNRKos+;6rV8ldy0Owz(}jF`W(JeRp&R{qi2rfmU!TJ;gp(Kmm5I1s5m_f-n#TRsj}B0%?E`vOzxB2#P=n*a3EfYETOrKoe*ICqM@{4K9Go;5xVgZi5G4 z1dM~{UdP6d+Yd3o?MrAqM0Kc|iV92owdyL5UC#5<>aVCa44|hpM4E zs0sQWIt5*Tu0n&*J!lk~f_{hI!w5`*sjxDv4V%CW*ah~3!{C*0BD@;TgA3v9a1~q+ zAA{TB3-ERLHar49hi4Ih5D^-ph8Q6X#0?2VqLBoIkE}zAkxHZUgRb+f=nat zP#6>iMMoK->`~sRLq)(kHo*Vn{;LcG6+edD1=7D>9j^O?D{Qg|tCDK{ym)H7&wDr6*;uGTJg8GHjVbnL{!cWyUB7MT6o-VNo_w8Yq`2<5Ub)hw4L3rj}5@qxMs0 zWMyP6Wy582WNT#4$d1qunl{acmP#w5ouJ*Jy_Zv#bCKi7ZIf$}8d zZdVy&)LYdbX%I9R8VMQ|8r>Q*nyQ)sn)#Z|n)kKvS`4iu ztvy=3T65Yu+7a4Yv^%sXb>ww?bn(=Yu(!=O6^iuTp>)p_Y^{w=i z^lS773}6Fm1Fpe-gF!>Ip{*g$u-szvGhed;vo5pW&GpS$<~8QGEXWp~7V9lKEnZq0SaK{6Sl+dwSOr*Z zvFf(^Xl-N7w{EeXveC4Ov)N}e%%C!Y7^RFWwrE>d+x51mZQt2h+X?JW*!^a2WS?Sx z)P8cQ&Qi|OhNWW;>JChYI)@QQx?`Nj^#uJBl~d&PK+RZLOLos~K(b5>qmrMN0})tOkySZ3_W zICNY@+|jrX%s^&6b2i>5eqa0y%Z;^%^_=a@u3%4b9605ii3Ep)@`TAmhs0fpQ%O!q zl}XcFH*PieWwLj2ZSq`7V9Mc?h17`D)-+sNT-qs~3@?S(ldh7UlRlVXkWrK|vf6I- z?$tAVKYn8-l({mqQ$Q8{O!WzMg`0(=S&msXS#Pt$vrpzo=kRj+a`kh!z=6$;c zwT88(J6|n-WB%w`m$h~4pmp)YIh_ z3ETV2tjiAU!0h1dxU-n=E9e!)6|Z;4?!H=SSy{V>ut&IOq{_dl zbFb#!9eY1iCsp6Bajj|Hr?hX|zPbJE{X++w546-O*Ot`2Kgd0Jx6Z4syT zu9enWavU5N9)I?I-1m1*_?_rJ$vD~agVqoG+9++s?NEDe`%Fht$4F;X=in*dQ{7$m zU2Q)a|9JSc+Uc4zvS-T963!N$T{xF_ZuWe}`RNOZ7sk3{yB}PPym+f8xTpV;-=!;; zJuhGEb?H5K#o@~7t9DmUU1MD9xNd#Dz0azz?I)|B+WM{g+Xrk0I&awC=o(x)cy`EX z=)z6+o0o6-+`4{y+3mqQ%kSJBju{@g%f35#FZJHb`&swrA8dGtepviS>QUumrN{L@ z>;2q1Vm)$Z)P1z?N$8UYW2~{~zhwUMVZ87u`Dx{Z>O|9|`Q+&->FRy-Sjp7DHs zy69KwU-!MxeeuI@&cF4|M9z%AfP?@5 z`Tzg`fam}Kbua(`>RI+y?e7jT@qQ9J+u00v@9M??Ss00000`9r&Z00009a7bBm z000XU000XU0RWnu7ytkO2XskIMF-vs6%{EMxiBYX0000-NkltBC&?ShXXlVgsV^b^Hn(Jz-20n-whkQO5&1geAqcM(Vw9$+1@9M literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-hdpi/ic_launcher.png b/app/src/main/res/drawable-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..f586d79390e17a2e83949c357c87f418e42494e6 GIT binary patch literal 3387 zcmV-B4aD+^P)c5@Wgt*;Z)#;@bT@@1YybcN5p+dZbU}4= zXm4@=O-)N6L}hbnXKvXN&A$Ku01|XXSad^jWnpw_Z*Cw|X>DZyGB7bTK@Y&}0000| zbVXQnLvL_-a%pF1bO1v`AVG9=a%p09bZKvHEmLS=a%DkmX=`O5XmoUNIxjC{a%Ew3 zX?A5}Z*6UFZgVbga%V4WX=7z>b7gZcVtFldVJ|Z-FfU$%TD$-N3;;<)K~#90?VNjz zRMj2FKj+*#vrqN`>;elS$U{;@6iV5P#s{wiYd{T}XsehQYmLT7NFb&H5&y!5G&VNI z{?UrW+E`kJAQ-?$QMe^mv{|em2o%{xfrVXQXLoky-qSzsnc2Iuvpe@Lv#?A1O(yJ} zIdkv)KK#z_oZq?kcSLP%Etg8RZ3|!;FafC1uaUmLYjo3wj90z>_aLy>vMhC}ezWLn zK(=j1f!l#a`c>2OH*%^0*r;D0S(ep)k>~4CeFDg~?Ly!#JRo-fWtnXfE}V)fbt>j^ zGN#nY7RAY!QUKM(LR6Oss*8oFDwb3g3lWi7FLe&sf(Pqe%d*V!86||oSU`UY=vql+W-dI!KHrkLS5s}&KJ76X7hGkjq zMViua?R){UZF>Q*2AGn1?^H~w4~{0)wj)V*SH0sVoV;9$hygc^H01oTrkpdz6jjB- zPpb}CZdumWd|d0I0ok@a9e4?toqF%kSy!#y)9!3Ll63nznhIe4SW_;Y88yaNNe`)np1M(QRbar9DN*C`X%VBmAnj0Ff%`4X zY7Tq8(12{)o&anDCIRd|?zm5GZ%a0{U1FEXp^8GmEAtA?S)+{9__rTeXj#_5Fz3lW zcy=S(w&wzS&~Vo8OE?d|*V^yk05r8J9)7Pixqe@IXqW`-(KZBDU_iEQKLWfDR3=?m zu``}r^-0`G=50XDzmhJj`XuhG*cngi-&qN~uWbpWK!7y$*8robO|fKiYx2#n68#uW zXTAAV!dzx4uCndYyaTmYSn(#q-Tie#7dIY3L zt4-)`^~AQe7dCvNM31=Y1oLqYItAy(t-BKx1R%HdG(}$(t&2wJdb-Aa1 z`PYlP;?C~l=^n9E+uTLndC*IMXpSqM+@9{USCo=2Jh{Cs*&J8krAjYlYu5#k&dO&4 zyt+5x^v6kHzSPv_rAYd4wzj>KIsx(}pnTt=)VjL%E3Rv0YF%Bs^LG|Di%>wA` zL3g2-N!RXacP{mM&gGP&Je&35Rd_6b&VUwyw@kY2$dx#5^{j12lJ2QkIusQ}sD$G&(1(j`+ZGbkW;G-F}h5O17{rd zI>s37-`&6f%z29bu(Wn$D%T!fLejTG?6 z)QIuyi~^(3?0EnBYANoWgnVX3RQ>Ajac9TTV7;TURjGsv`dNS)iTC&kr((hHm0wDU zwr0$RFC;3veZQVvXg+6khT~UNu@JvsP-s3l*$CwM3Xg?894XNrbSl=r!jE4vb{g}C zx-L&EEV#y$cTY3}8UCCVHLo#G2WsnMQIiIAGS)90C@p#ZgfLEi-3ii)n+vk{yDTb< z7%a1j4B2|73+PPwSoi?7^lLr<7|s6?#+gF`U__}9zI*V2G<9^jFi(FYMErb@?R+c- zjt8Y=G#(PN>6n;OWrTtQFs!VQp`}rb)BB}Jw07Gr(}M<_%u`NE8AgBqZ7}&Kwb$QwSf6h5_n9o>u?$%fNG!3-Kgtw;gs;a1=rz zB_i31aqf60+p~I5Rq;RzM}nOPPO3lcK9UoXQm}gSL8rbc-U$vu0s;}gfINR94avu% zLE=56O;xcNI4&e4NYA*{@6@@g{#NJ4y14<<(A36~KYr=F`^66`8=Q2Pi=RWr8il}P zp}$^lqCF@gy+>_N_mGdZw6=5Zd<))$yzkZ0n&q))AwdXI#vvqs{>L$Q=YiAiEt9I{ z@zq*N@k52Bub)b^EX1rqWwpBg(1w()y=e2Q3c6i*DL)DdEclD9MLD;O6YcT zC#JpU93B%7kS;0O0x)Nc8F;vNONS|^>e{{;(lX$vuyAynpm0DiXF?j#mQ0i26s3wP z`veY%;BW{BM+nJ1*H_4KL!v2{Sm`g!%Y^U-UcD7h&xjhq7c>EBcq3c1Gz>ZTzn4t1JAhgtpuT{5&BV0eiTOQuA_jpIgy_L^xfW?}BOLE&`zJO><~ z@j>7y1P@KGl*0#^Devi0Hr1sY=}Ns10UnwpE-Wzjpst(tSRAl^9#*uDrCs04aw@sN)-RUcxB-*)AUR@i&vuA zV;yTwkI*%q_W@2tpRd>gMAjrIEy&WpRk)vb#53z#SVB?YQ09Gy}Gh9kYSqNkz!`Po&5FCd@A^PE6% zAY|3EKJiR+;C}GBi1GSQi_9>SNfj+6Sv}cR8bYrPN0|!C^ zf^bjZ6EVF7_PGut8CVmPSPNAd{gb5fRD020XB~=*p)5Z}JvG196+c{{pom&1r=9 RZ_NMz002ovPDHLkV1nh}R3HEV literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-mdpi/drawer_shadow.9.png b/app/src/main/res/drawable-mdpi/drawer_shadow.9.png new file mode 100644 index 0000000000000000000000000000000000000000..ffe3a28d77c72094021013c6442560803b3d344c GIT binary patch literal 142 zcmeAS@N?(olHy`uVBq!ia0vp^96+qZ!3HFgEN0vWQY^(zo*^7SP{WbZ0pxQQctjR6 zFmQK*Fr)d&(`$i(2A(dCAr_~TfBgS%&&>BhUX5L;x$y=|hic;t)=0q~!&M0(2Uj#r iT+R^X@#lD(V-Z7IzK5^$6(JFc6ISQ^2_Z8gK&? zKnh3$Pyh{301bo!NCCP3<^H4r7XSsgfG{hqB`d-vmX_Q-veIaUz4DA5@0g-kVu?Qv zHKk}628~n!8$k2$9q52xrPTdn0ziIb@>n?F0uhb40Fc*6hJO-43nI&NG+qKbp8v+& zN$lIu&Vd{718fp?hHI#{k|Ni<;4MWy65++JbGTNKalezsA9?aSD%B$qhxy)G0`#~?&hQ7DWg!+qj)|D%1X3cJ rV$Ps%4xE82Ipy;Ie~Et^PXPu1!=KTV_gtK200000NkvXXu0mjf`(nR7 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-mdpi/ic_action_share.png b/app/src/main/res/drawable-mdpi/ic_action_share.png new file mode 100644 index 0000000000000000000000000000000000000000..7362f0d7b0feeaf36ad4fe0c3786318dff2c3bfe GIT binary patch literal 383 zcmV-_0f7FAP)F4>9Wc_u(EtDcO93e# zDEB!dBjaYeIRI$6FOaH76TSt+=|G2krl|vfmh%FsO+d_xMS2U+0S&ZvfCG@~!5Q3) zj3($}OjM2mUQ#tMQ916@@F+P;lSBx#*cfWDF)Y;su_T(Z&(K78i)s!4TC4`7ijgb^ z`EVA{lC#jz@Ii9WGHjOPbpSL)gA8$i8nPK`xD?dK$QI1Pm)A)yh@ifki6v1TfI0{k ztbOEKOvnK}NER_*iO=OAjICgymIKb<(bGt&uPM!jpQ%}J4B99d*hGkw4I`oXoW9wR z$_3G9sQ4|aI$*$yVmy_RB(BN`=zw%uw+FDbhUnTJ_)L$2h=D+zkINBThJT}!oM!nb d7zF?U1^|S5kOI@4ht>c9002ovPDHLkV1k^Vo*@7L literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-mdpi/ic_drawer.png b/app/src/main/res/drawable-mdpi/ic_drawer.png new file mode 100644 index 0000000000000000000000000000000000000000..5adf989c5f7cb3ecb594c355901f9db6a01427a6 GIT binary patch literal 2886 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 F2>^8yH@N@+ literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xhdpi/ic_action_search.png b/app/src/main/res/drawable-xhdpi/ic_action_search.png new file mode 100644 index 0000000000000000000000000000000000000000..19658e4a2acbe30df1aeb743ba5ac5e16a5edd21 GIT binary patch literal 827 zcmV-B1H}A^P))F4ccon= z%S0lPNF)-8M88uiMW>g`Wde^Gv^o6>KYu~1pq-(elv3sB0Kmi-@VJMzXz@CNI6~V4 zjMJb2z{GK-H_)bmT@=vX07Nx705JJAJeCcwp}FS`fY2gd0YWhd0OaRe!_Vy%Me{E0 zRfX^A*zkA-2txQ60)VZ<*Grl})zNi&gP`q(K{z<_bpcCl9s z`rTL%YIGCm_nZ>IUBGuXj+O6huF%JZVu#kWMR4sG0Ibr3<*#Lk+5ezd+6}apKBO)E(gmB7F;Y~X8n9j5|zKL!0da@1;E^~=ciKX zI6Sf01@ua#Jh$6@PqyYy60G#^@OpbtCa{zE^7-T8{=ad1r zH2})YOe=UyF(9z4+yZdq;sW+yrj!}R){~>S!Un+J&J1HFD+KhvlsI*X%nJZjZ$GWw zU>#}l6Gy83&MF-?24%*Adn#sho&3&`YJac;KoQwagAu|u#2v`&_l{(%&U#Rnq9_(e zUL0oyOlJ>Gr7Vi}PYwD0Csm600r&xe263dUu5#@0bB}XGQV20FM!Mb#nJI96#UgMg z$jMFcz2{iP(pXnx==)1*zHtC2{jLL^qdI);RJw`*A@=2{uHh{jOkBH2;o9f>grHIe z7)qFIi>TY2?XTQCMTd|SKu374tuZ=;yNs`99`Ef!kK~*Il%BAHAaDloocYxrgCHoz z0L&c0r~2d-6F6Idz9d-%Si*7)F3<%+J{kal5Xw;j@Ptrj9%Zz_0B8vT|GxG)6b%YM z1B9BQzt^>$$_6SU1I@|ji`4&5Boc{4B9TZW8k7DBFaWjb9TtHJeu)48002ovPDHLk FV1n6#bKn2~ literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xhdpi/ic_action_share.png b/app/src/main/res/drawable-xhdpi/ic_action_share.png new file mode 100644 index 0000000000000000000000000000000000000000..40771e480181cbf5144668d273b6b3dd4bc7d1dd GIT binary patch literal 666 zcmV;L0%iS)P)xD z!_|(6O+=Ux*Z_M?@(N0<#N_5P$G!gmmyO}H0OoCd*#VD3&vRXXmF2vJF9IxwUchw$ zipdIqNzc}Dx^@_xJ4!t2NP4=EkrMzz-ZR*`=dChGguclLfW)JgcweJ8YfOl`plX8D zWc~Sw#1~lD>{`NB4tDtSCXBC8gk_shF!n&A7y>epF7cK#B5WLZ1&pspsRr?Ze!b9D zgkXvqwRo{W;>A6kAuUMnq#0#PP)#yHQ$@S6+P4DNAvSw}rF{ zJ$@7;LJmM)r)F2gGvNTF0eR)k50gTpC8TAx2i6cU34@y+FddOg;>9BE+dM7eibQyVej<(dLazL!^fYrY*5+ zuMw@5SVM?gH$@Xt0yKoURa-nICqUyJ@B3loN%z};bH$K~0$?%b5tZd_cI2x;42QN! zQb1k+L^$*Ut_x62U4XA11(z2BoQ9s~v;Y{&a>Hq*Nrg$FCzuNTwwl`diBD&Mz#=CW z-Tw=z12gvSSJ?|$;!S^+W-u5G27|$vEPezS0Ffm2y!BjF4FCWD07*qoM6N<$g0})1 A$p8QV literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xhdpi/ic_drawer.png b/app/src/main/res/drawable-xhdpi/ic_drawer.png new file mode 100644 index 0000000000000000000000000000000000000000..a548eebeb30e41c3590ad5a8adbdc5b04dd7bb38 GIT binary patch literal 2887 zcmV-N3%K-&P)uJ@VVD_UC<6{NG_fI~0ue<-1QkJoA_k0xBC#Thg@9ne9*`iQ#9$Or zQF$}6R&?d%y_c8YA7_1QpS|}zXYYO1x&V;8{kgn!SPFnNo`4_X6{c}T{8k*B#$jdxfFg<9uYy1K45IaYvHg`_dOZM)Sy63ve6hvv z1)yUy0P^?0*fb9UASvow`@mQCp^4`uNg&9uGcn1|&Nk+9SjOUl{-OWr@Hh0;_l(8q z{wNRKos+;6rV8ldy0Owz(}jF`W(JeRp&R{qi2rfmU!TJ;gp(Kmm5I1s5m_f-n#TRsj}B0%?E`vOzxB2#P=n*a3EfYETOrKoe*ICqM@{4K9Go;5xVgZi5G4 z1dM~{UdP6d+Yd3o?MrAqM0Kc|iV92owdyL5UC#5<>aVCa44|hpM4E zs0sQWIt5*Tu0n&*J!lk~f_{hI!w5`*sjxDv4V%CW*ah~3!{C*0BD@;TgA3v9a1~q+ zAA{TB3-ERLHar49hi4Ih5D^-ph8Q6X#0?2VqLBoIkE}zAkxHZUgRb+f=nat zP#6>iMMoK->`~sRLq)(kHo*Vn{;LcG6+edD1=7D>9j^O?D{Qg|tCDK{ym)H7&wDr6*;uGTJg8GHjVbnL{!cWyUB7MT6o-VNo_w8Yq`2<5Ub)hw4L3rj}5@qxMs0 zWMyP6Wy582WNT#4$d1qunl{acmP#w5ouJ*Jy_Zv#bCKi7ZIf$}8d zZdVy&)LYdbX%I9R8VMQ|8r>Q*nyQ)sn)#Z|n)kKvS`4iu ztvy=3T65Yu+7a4Yv^%sXb>ww?bn(=Yu(!=O6^iuTp>)p_Y^{w=i z^lS773}6Fm1Fpe-gF!>Ip{*g$u-szvGhed;vo5pW&GpS$<~8QGEXWp~7V9lKEnZq0SaK{6Sl+dwSOr*Z zvFf(^Xl-N7w{EeXveC4Ov)N}e%%C!Y7^RFWwrE>d+x51mZQt2h+X?JW*!^a2WS?Sx z)P8cQ&Qi|OhNWW;>JChYI)@QQx?`Nj^#uJBl~d&PK+RZLOLos~K(b5>qmrMN0})tOkySZ3_W zICNY@+|jrX%s^&6b2i>5eqa0y%Z;^%^_=a@u3%4b9605ii3Ep)@`TAmhs0fpQ%O!q zl}XcFH*PieWwLj2ZSq`7V9Mc?h17`D)-+sNT-qs~3@?S(ldh7UlRlVXkWrK|vf6I- z?$tAVKYn8-l({mqQ$Q8{O!WzMg`0(=S&msXS#Pt$vrpzo=kRj+a`kh!z=6$;c zwT88(J6|n-WB%w`m$h~4pmp)YIh_ z3ETV2tjiAU!0h1dxU-n=E9e!)6|Z;4?!H=SSy{V>ut&IOq{_dl zbFb#!9eY1iCsp6Bajj|Hr?hX|zPbJE{X++w546-O*Ot`2Kgd0Jx6Z4syT zu9enWavU5N9)I?I-1m1*_?_rJ$vD~agVqoG+9++s?NEDe`%Fht$4F;X=in*dQ{7$m zU2Q)a|9JSc+Uc4zvS-T963!N$T{xF_ZuWe}`RNOZ7sk3{yB}PPym+f8xTpV;-=!;; zJuhGEb?H5K#o@~7t9DmUU1MD9xNd#Dz0azz?I)|B+WM{g+Xrk0I&awC=o(x)cy`EX z=)z6+o0o6-+`4{y+3mqQ%kSJBju{@g%f35#FZJHb`&swrA8dGtepviS>QUumrN{L@ z>;2q1Vm)$Z)P1z?N$8UYW2~{~zhwUMVZ87u`Dx{Z>O|9|`Q+&->FRy-Sjp7DHs zy69KwU-!MxeeuI@&cF4|M9z%AfP?@5 z`Tzg`fam}Kbua(`>RI+y?e7jT@qQ9J+u00v@9M??Ss00000`9r&Z00009a7bBm z000XU000XU0RWnu7ytkO2XskIMF-vs6%{5R7OI0Z0000|Nklj32-As3k`=M|aH4p1fC&LD{3xehcZK>TxEefW)j2EY&jzz*O7 lI)Dps0RZd(E}#Q$7i@9e6Gv)MJdXeX002ovPDHLkV1i=RaXtV5 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xhdpi/ic_launcher.png b/app/src/main/res/drawable-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..ef7e422f68419d287f223eab5fabffe8908e5037 GIT binary patch literal 4729 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 A%m4rY literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxhdpi/drawer_shadow.9.png b/app/src/main/res/drawable-xxhdpi/drawer_shadow.9.png new file mode 100644 index 0000000000000000000000000000000000000000..b91e9d7f285e8110ba3ba4e72cc6f0416eb3a30a GIT binary patch literal 208 zcmeAS@N?(olHy`uVBq!ia0vp^VnCe4!3HEl*p=S^DajJoh?3y^w370~qErUQl>DSr z1<%~X^wgl##FWaylc_d9MMa)2jv*QM-d<4Ta$*#5x!8O#VbcvCx78OjjCM19-`|n` zlcQ;yJWqK-!X?h+v^9}Es?F+hJ07=b>sdT*QRcgm+^%b8|A7C`|A*gYPjm3$2miRv cpZdzQt0C%<%j~>EK-(ESUHx3vIVCg!0CP)0sQ>@~ literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxhdpi/ic_action_search.png b/app/src/main/res/drawable-xxhdpi/ic_action_search.png new file mode 100644 index 0000000000000000000000000000000000000000..a10863887e448e59e0eb34d7d08eb5f273498628 GIT binary patch literal 1152 zcmV-`1b_R9P)No+02}}-E$v#0vapRMt1bOs<(e91z^0$N)!mjH zMGyo*5ClOG1VIo4K@bE%5M*63r;EAWZi)OcreA0BDC8mN_dJf{ZvZfBaAo8<89Qn4 z76s%=$CnR4Vh2W7BRrMIQXZ3zAE!W^B#0{jG&g+u5N1qCg{i|3LBu^7Uxk>Rfe~M) zi#+xcL;(Q*jlZE$-&DCgo@0B`!fVv~Hxhyf8UTeHW&A}0gQ<~wc@;wB=S^v{{-BAw zZnFL@KkpnQ05bluCbM~a0&Ov$?72g*1z`7L|<6>yvBE5F0kcj6zS9{zxP2ELYJ-4Fn<2{gWerk>R+%b7A~{Bk7*?tZBqQ zE0Nc?@)`hzovJ+lV%zu)A*7T^`3K-3E2*4tdyT1g2&alal@qp?9-vDHom8droEfFL z&sxx6@eaVUD$h5OYIe{`^ZLRo0F?PmS{R@&FSu&FVCkC&RJ8?iCdE&t$%v*t0hnnD zF84*wJp>jFuX(Tl60QKsxv1i`i5CE<`qaf=E)qU_KvhbYGfTBu-zBpFUMYDbutm zR*sB6)p%geZIPA{0MvIE8ZVeT_+Gk2TBnGaOcr7XoiTK6YfGblqe(rl9M_2&13<2Q z(S)L79}wg@mMI*b!-~~jr^@{j^essz$gG(1GLdp$0dZ+u;Eqf<5-jS zF8U0Et!!p76l`mXx6YgE2<9qkwtGemiZwS+u(?B~4nhecYqNlhQp`p4-Y!da5UlPI zqeWZ48jR3#|F6&#b!AVd>3-tDKKIKVHKHOAe+<3JwKgm5D=U^D}tJIifqoIfq)VgGOP0Auzv!pl2vf?5jK7N5@=0;|W>ScE*MM1Wn!G>XE|{LS}SZ=r+& zpv!7#s}Mo~&{ftTgaV-83Lz8#C$13UKmc?}N3CW@!2sY2At(TrApGdE89lfxsOEVR z@5~9E*1-muh8l)20RXoU1OT{$(0QS6@Re{!2pQ5)ciEAV$DpAX^qwb_|BFi4fhPzm zzzP897lJalTEk>?g*5=^A(TbdgyQ`bR)HW0f*=TjAP9mW2!bF8f(EL;0t^5du&;5r SwHQ+X0000Z zg{%|+000000000000000070NZ!C#zCr#rgLF8G01_+>#n_u6On+vc8iPx7CniZVI@;+GZ+ zEGB+;Swu0(xlM=Bz#%6WW5mK)9VzjpA-=Tet?Z}w-??qmWqZOcINcr2in~xa2oA%sWt1G>ghjDAOfH9FxZArYi ze~wZBae(JO|-If z89CVs(6i_FSpeM(DPzM_fc!E5`McDJ7ZX6a?J!F!qzo>AhkZ6thm=E%fXc%&9f>tn$M0c;}{56@Ilc>7{f(8*7^`Z@bSE zMR|{6Vq3~cgb2Mc>r?Vzj_3urm}f$6O>B&f1_Jy`95&~UL`_DrwP*VC(S)SFFq05D`2(AL|4dam9@>0IsVt-PW+tW>9X6ImHD^(rC3motQhrva_D@;ZtM(~&T r000000000000000000mOe*_o+wkw8z3EcqJ00000NkvXXu0mjfg|(hV literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxhdpi/ic_drawer.png b/app/src/main/res/drawable-xxhdpi/ic_drawer.png new file mode 100644 index 0000000000000000000000000000000000000000..c77bb2af13f3f2ef037fbd13200279ece9b9fa96 GIT binary patch literal 217 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/layout/activity_display_message.xml b/app/src/main/res/layout/activity_display_message.xml new file mode 100644 index 0000000..75c7aae --- /dev/null +++ b/app/src/main/res/layout/activity_display_message.xml @@ -0,0 +1,7 @@ + diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml new file mode 100644 index 0000000..c3b9ecf --- /dev/null +++ b/app/src/main/res/layout/activity_main.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/drawer_list_item.xml b/app/src/main/res/layout/drawer_list_item.xml new file mode 100644 index 0000000..8296b3d --- /dev/null +++ b/app/src/main/res/layout/drawer_list_item.xml @@ -0,0 +1,27 @@ + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_about.xml b/app/src/main/res/layout/fragment_about.xml new file mode 100644 index 0000000..5298c3c --- /dev/null +++ b/app/src/main/res/layout/fragment_about.xml @@ -0,0 +1,22 @@ + + + + + diff --git a/app/src/main/res/layout/fragment_display_message.xml b/app/src/main/res/layout/fragment_display_message.xml new file mode 100644 index 0000000..4e99e3f --- /dev/null +++ b/app/src/main/res/layout/fragment_display_message.xml @@ -0,0 +1,26 @@ + + + + + + +