mirror of
https://github.com/vanitasvitae/EnigmAndroid.git
synced 2024-12-22 10:57:59 +01:00
Added Changelog, moved version info to about dialog, translations, added license and disclaimer stuff
This commit is contained in:
parent
a324466a42
commit
5f841fa797
25 changed files with 395 additions and 156 deletions
|
@ -1,11 +1,11 @@
|
|||
<component name="libraryTable">
|
||||
<library name="support-annotations-21.0.3">
|
||||
<CLASSES>
|
||||
<root url="jar://$APPLICATION_HOME_DIR$/android-sdk-linux/extras/android/m2repository/com/android/support/support-annotations/21.0.3/support-annotations-21.0.3.jar!/" />
|
||||
<root url="jar:///media/Daten/android-sdk-linux/extras/android/m2repository/com/android/support/support-annotations/21.0.3/support-annotations-21.0.3.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$APPLICATION_HOME_DIR$/android-sdk-linux/extras/android/m2repository/com/android/support/support-annotations/21.0.3/support-annotations-21.0.3-sources.jar!/" />
|
||||
<root url="jar:///media/Daten/android-sdk-linux/extras/android/m2repository/com/android/support/support-annotations/21.0.3/support-annotations-21.0.3-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -1,13 +1,13 @@
|
|||
<component name="libraryTable">
|
||||
<library name="support-v4-21.0.3">
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/app/build/intermediates/exploded-aar/com.android.support/support-v4/21.0.3/libs/internal_impl-21.0.3.jar!/" />
|
||||
<root url="jar://$PROJECT_DIR$/app/build/intermediates/exploded-aar/com.android.support/support-v4/21.0.3/classes.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/app/build/intermediates/exploded-aar/com.android.support/support-v4/21.0.3/res" />
|
||||
<root url="jar://$PROJECT_DIR$/app/build/intermediates/exploded-aar/com.android.support/support-v4/21.0.3/libs/internal_impl-21.0.3.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$APPLICATION_HOME_DIR$/android-sdk-linux/extras/android/m2repository/com/android/support/support-v4/21.0.3/support-v4-21.0.3-sources.jar!/" />
|
||||
<root url="jar:///media/Daten/android-sdk-linux/extras/android/m2repository/com/android/support/support-v4/21.0.3/support-v4-21.0.3-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -3,7 +3,7 @@
|
|||
<component name="EntryPointsManager">
|
||||
<entry_points version="2.0" />
|
||||
</component>
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" assert-keyword="true" jdk-15="true" project-jdk-name="1.7" project-jdk-type="JavaSDK">
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" assert-keyword="true" jdk-15="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
|
||||
<output url="file://$PROJECT_DIR$/build/classes" />
|
||||
</component>
|
||||
<component name="masterDetails">
|
||||
|
|
7
CHANGELOG.txt
Normal file
7
CHANGELOG.txt
Normal file
|
@ -0,0 +1,7 @@
|
|||
CHANGELOG ENIGMANDROID
|
||||
|
||||
v0.1.3-14.03.2015<
|
||||
*Added About Dialog with ChangeLog-Button
|
||||
*Moved Version Info into About Dialog
|
||||
*Updated License Files
|
||||
*Fixed Landscape Layout
|
61
License.md
61
License.md
|
@ -277,63 +277,4 @@ YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
|||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
{description}
|
||||
Copyright (C) {year} {fullname}
|
||||
|
||||
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 2 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, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program is interactive, make it output a short notice like this
|
||||
when it starts in an interactive mode:
|
||||
|
||||
Gnomovision version 69, Copyright (C) year name of author
|
||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, the commands you use may
|
||||
be called something other than `show w' and `show c'; they could even be
|
||||
mouse-clicks or menu items--whatever suits your program.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the program, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
||||
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
||||
|
||||
{signature of Ty Coon}, 1 April 1989
|
||||
Ty Coon, President of Vice
|
||||
|
||||
This General Public License does not permit incorporating your program into
|
||||
proprietary programs. If your program is a subroutine library, you may
|
||||
consider it more useful to permit linking proprietary applications with the
|
||||
library. If this is what you want to do, use the GNU Lesser General
|
||||
Public License instead of this License.
|
||||
END OF TERMS AND CONDITIONS
|
BIN
app/app-release.apk
Normal file
BIN
app/app-release.apk
Normal file
Binary file not shown.
|
@ -85,8 +85,8 @@
|
|||
</content>
|
||||
<orderEntry type="jdk" jdkName="Android API 21 Platform" jdkType="Android SDK" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="library" exported="" name="support-annotations-21.0.3" level="project" />
|
||||
<orderEntry type="library" exported="" name="support-v4-21.0.3" level="project" />
|
||||
<orderEntry type="library" exported="" name="support-annotations-21.0.3" level="project" />
|
||||
</component>
|
||||
</module>
|
||||
|
||||
|
|
|
@ -8,8 +8,8 @@ android {
|
|||
applicationId "de.vanitasvitae.enigmandroid"
|
||||
minSdkVersion 15
|
||||
targetSdkVersion 21
|
||||
versionCode 8
|
||||
versionName "0.1.2-24.02.2015-beta"
|
||||
versionCode 9
|
||||
versionName "0.1.3-14.03.2015-beta"
|
||||
}
|
||||
buildTypes {
|
||||
release {
|
||||
|
|
|
@ -3,7 +3,21 @@ package de.vanitasvitae.enigmandroid;
|
|||
|
||||
/**
|
||||
* Enigma-machine
|
||||
*
|
||||
*Copyright (C) 2015 Paul Schaub
|
||||
|
||||
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 2 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, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
* @author vanitasvitae
|
||||
*/
|
||||
public class Enigma
|
||||
|
|
|
@ -1,3 +1,21 @@
|
|||
/**
|
||||
* Copyright (C) 2015 Paul Schaub
|
||||
|
||||
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 2 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, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*/
|
||||
|
||||
package de.vanitasvitae.enigmandroid;
|
||||
|
||||
import android.app.Activity;
|
||||
|
@ -5,6 +23,7 @@ import android.app.AlertDialog;
|
|||
import android.content.DialogInterface;
|
||||
import android.content.Intent;
|
||||
import android.content.SharedPreferences;
|
||||
import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
import android.preference.PreferenceManager;
|
||||
import android.view.View;
|
||||
|
@ -29,6 +48,7 @@ public class MainActivity extends Activity
|
|||
private EditText output;
|
||||
|
||||
private static final int RESULT_SETTINGS = 1;
|
||||
private static final String URI_CHANGELOG = "https://github.com/vanitasvitae/EnigmAndroid/blob/master/CHANGELOG.txt";
|
||||
|
||||
private Enigma enigma;
|
||||
//memory for the ringsettings
|
||||
|
@ -59,13 +79,7 @@ public class MainActivity extends Activity
|
|||
public boolean onOptionsItemSelected(MenuItem item)
|
||||
{
|
||||
int id = item.getItemId();
|
||||
if (id == R.id.action_version)
|
||||
{
|
||||
Toast.makeText(this.getApplicationContext(), R.string.version,
|
||||
Toast.LENGTH_SHORT).show();
|
||||
return true;
|
||||
}
|
||||
else if (id == R.id.action_reset)
|
||||
if (id == R.id.action_reset)
|
||||
{
|
||||
this.reset();
|
||||
Toast.makeText(getApplicationContext(), R.string.message_reset,
|
||||
|
@ -82,6 +96,11 @@ public class MainActivity extends Activity
|
|||
Intent i = new Intent(this, SettingsActivity.class);
|
||||
startActivityForResult(i, RESULT_SETTINGS);
|
||||
}
|
||||
else if (id == R.id.action_about)
|
||||
{
|
||||
showAboutDialog();
|
||||
return true;
|
||||
}
|
||||
return super.onOptionsItemSelected(item);
|
||||
}
|
||||
|
||||
|
@ -241,7 +260,7 @@ public class MainActivity extends Activity
|
|||
}
|
||||
|
||||
/**
|
||||
* Show the dialog where the user can pick the ringsettings and set them if the user doesnt abort.
|
||||
* Show the dialog where the user can pick the ringsettings and set them if the user doesn't abort.
|
||||
*/
|
||||
public void showRingsettingsDialog()
|
||||
{
|
||||
|
@ -290,6 +309,31 @@ public class MainActivity extends Activity
|
|||
}).show();
|
||||
}
|
||||
|
||||
public void showAboutDialog()
|
||||
{
|
||||
final View aboutView = View.inflate(this, R.layout.dialog_about, null);
|
||||
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(this);
|
||||
builder.setTitle(R.string.title_about_dialog);
|
||||
builder.setView(aboutView)
|
||||
.setCancelable(true)
|
||||
.setPositiveButton(R.string.dialog_positiv, new DialogInterface.OnClickListener()
|
||||
{
|
||||
public void onClick(DialogInterface dialog, int id)
|
||||
{
|
||||
dialog.dismiss();
|
||||
}
|
||||
})
|
||||
.setNegativeButton(R.string.button_show_changelog, new DialogInterface.OnClickListener()
|
||||
{
|
||||
public void onClick(DialogInterface dialog, int id)
|
||||
{
|
||||
dialog.cancel();
|
||||
openWebPage(URI_CHANGELOG);
|
||||
}
|
||||
}).show();
|
||||
}
|
||||
|
||||
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
|
||||
super.onActivityResult(requestCode, resultCode, data);
|
||||
|
||||
|
@ -297,11 +341,17 @@ public class MainActivity extends Activity
|
|||
case RESULT_SETTINGS:
|
||||
{
|
||||
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this);
|
||||
boolean an = sharedPrefs.getBoolean("prefAnomaly", true);
|
||||
System.out.println(an);
|
||||
this.anomaly = an;
|
||||
this.anomaly = sharedPrefs.getBoolean("prefAnomaly", true);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void openWebPage(String url) {
|
||||
Uri webpage = Uri.parse(url);
|
||||
Intent intent = new Intent(Intent.ACTION_VIEW, webpage);
|
||||
if (intent.resolveActivity(getPackageManager()) != null) {
|
||||
startActivity(intent);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,7 +2,21 @@ package de.vanitasvitae.enigmandroid;
|
|||
|
||||
/**
|
||||
* Class representing the plugboard
|
||||
*
|
||||
*Copyright (C) 2015 Paul Schaub
|
||||
|
||||
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 2 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, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
* @author vanitasvitae
|
||||
*/
|
||||
public class Plugboard
|
||||
|
|
|
@ -2,7 +2,21 @@ package de.vanitasvitae.enigmandroid;
|
|||
|
||||
/**
|
||||
* Class representing a rotor of the Enigma machine (I-V,A-C)
|
||||
*
|
||||
*Copyright (C) 2015 Paul Schaub
|
||||
|
||||
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 2 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, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
* @author vanitas
|
||||
*/
|
||||
public class Rotor
|
||||
|
|
|
@ -3,6 +3,25 @@ package de.vanitasvitae.enigmandroid;
|
|||
import android.os.Bundle;
|
||||
import android.preference.PreferenceActivity;
|
||||
|
||||
/**
|
||||
* Class that represents the settings activity.
|
||||
* Copyright (C) 2015 Paul Schaub
|
||||
|
||||
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 2 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, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*@author vanitasvitae
|
||||
*/
|
||||
public class SettingsActivity extends PreferenceActivity
|
||||
{
|
||||
@Override
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
android:paddingBottom="@dimen/activity_vertical_margin"
|
||||
tools:context=".MainActivity">
|
||||
|
||||
<!-- Hints of the spinners-->
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
|
@ -55,8 +56,11 @@
|
|||
android:layout_weight="1"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/hint_rotor1_position"/>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<!-- Spinners -->
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
|
@ -115,12 +119,14 @@
|
|||
|
||||
</LinearLayout>
|
||||
|
||||
<!-- Plugboard and button-->
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:id="@+id/buttons_lay"
|
||||
android:layout_below="@+id/lin_lay_1"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<EditText
|
||||
android:layout_width="0dp"
|
||||
android:layout_weight="75"
|
||||
|
@ -134,18 +140,22 @@
|
|||
android:layout_width="0dp"
|
||||
android:layout_weight="25"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_below="@+id/text_layer"
|
||||
android:id="@+id/button_crypt"
|
||||
android:onClick="doCrypto"
|
||||
android:text="@string/button_crypt"/>
|
||||
android:text="@string/button_crypt"
|
||||
android:background="@drawable/button"/>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<!-- Textboxes for input and output -->
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_below="@+id/buttons_lay"
|
||||
android:layout_alignParentBottom="true"
|
||||
android:id="@+id/text_layer">
|
||||
|
||||
<EditText
|
||||
android:layout_width="0dp"
|
||||
android:layout_weight=".50"
|
||||
|
@ -157,12 +167,11 @@
|
|||
android:layout_width="0dp"
|
||||
android:layout_weight=".50"
|
||||
android:layout_height="match_parent"
|
||||
android:editable="false"
|
||||
android:inputType="none"
|
||||
android:textIsSelectable="true"
|
||||
android:id="@+id/output"
|
||||
android:hint="@string/hint_enigma_code"/>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
</RelativeLayout>
|
||||
|
|
93
app/src/main/res/layout/dialog_about.xml
Normal file
93
app/src/main/res/layout/dialog_about.xml
Normal file
|
@ -0,0 +1,93 @@
|
|||
<RelativeLayout
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<ScrollView
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent">
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:id="@+id/ringstellung_layout_hint">
|
||||
|
||||
<!-- About Enigma. -->
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textAppearance="@android:style/TextAppearance.Holo.Medium"
|
||||
android:text="@string/title_about_dialog"
|
||||
android:id="@+id/title_section_app_description_text"/>
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textAppearance="@android:style/TextAppearance.Holo.Small"
|
||||
android:text="@string/description_text"
|
||||
android:id="@+id/about_app_description"/>
|
||||
|
||||
<!-- About Version -->
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textAppearance="@android:style/TextAppearance.Holo.Medium"
|
||||
android:text="@string/action_version"
|
||||
android:id="@+id/title_section_version"/>
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textAppearance="@android:style/TextAppearance.Holo.Small"
|
||||
android:text="@string/version"
|
||||
android:id="@+id/about_version_section"/>
|
||||
|
||||
<!-- About How To -->
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textAppearance="@android:style/TextAppearance.Holo.Medium"
|
||||
android:text="@string/title_section_how_to_use"
|
||||
android:id="@+id/title_section_how_to_use"/>
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textAppearance="@android:style/TextAppearance.Holo.Small"
|
||||
android:text="@string/section_how_to_use"
|
||||
android:id="@+id/section_how_to_use"/>
|
||||
|
||||
<!-- About Developer -->
|
||||
<TextView
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:textAppearance="@android:style/TextAppearance.Holo.Medium"
|
||||
android:text="@string/title_section_developer"
|
||||
android:id="@+id/title_section_developer_text"/>
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textAppearance="@android:style/TextAppearance.Holo.Small"
|
||||
android:text="@string/section_developer"
|
||||
android:id="@+id/about_developer_section"/>
|
||||
|
||||
<!-- About Disclaimer -->
|
||||
<TextView
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:textAppearance="@android:style/TextAppearance.Holo.Medium"
|
||||
android:text="@string/title_section_disclaimer"
|
||||
android:id="@+id/title_section_disclaimer_text"/>
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textAppearance="@android:style/TextAppearance.Holo.Small"
|
||||
android:text="@string/section_disclaimer"
|
||||
android:id="@+id/about_disclaimer_section"/>
|
||||
|
||||
</LinearLayout>
|
||||
</ScrollView>
|
||||
|
||||
</RelativeLayout>
|
|
@ -2,10 +2,6 @@
|
|||
xmlns:tools="http://schemas.android.com/tools"
|
||||
tools:context=".MainActivity" >
|
||||
|
||||
<item android:id="@+id/action_version"
|
||||
android:title="@string/action_version"
|
||||
android:orderInCategory="100"
|
||||
android:showAsAction="never" />
|
||||
<item android:id="@+id/action_reset"
|
||||
android:orderInCategory="97"
|
||||
android:showAsAction="ifRoom"
|
||||
|
@ -18,4 +14,8 @@
|
|||
android:title="@string/action_settings"
|
||||
android:orderInCategory="99"
|
||||
android:showAsAction="never" />
|
||||
<item android:id="@+id/action_about"
|
||||
android:title="@string/title_action_about"
|
||||
android:orderInCategory="100"
|
||||
android:showAsAction="never" />
|
||||
</menu>
|
||||
|
|
41
app/src/main/res/values-de/about_dialog_resources.xml
Normal file
41
app/src/main/res/values-de/about_dialog_resources.xml
Normal file
|
@ -0,0 +1,41 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
|
||||
<string name="button_show_changelog">Changelog</string>
|
||||
|
||||
<string name="title_action_about">Über</string>
|
||||
<string name="title_about_dialog">Über EnigmAndroid</string>
|
||||
<string name="description_text">EnigmAndroid ist die Implementation einer Simulation der Enigma Maschine.
|
||||
Die Enigma Maschine ist eine in den 1920er Jahren entwickelte Verschlüsselungsmaschine,
|
||||
die unter anderem im zweiten Weltkrieg von der deutschen Wehrmacht eingesetzt wurde,
|
||||
um geheime Nachrichten zu verschlüsseln. Dabei wird jeder einzelne Buchstabe elektronisch
|
||||
durch eine Reihe von rotierbaren Walzen geleitet, sodass nach jedem Buchstaben ein anderes
|
||||
Verschlüsselungsalphabet genutzt wird (Polyalphabetische Substitution).
|
||||
Die Walzen konnte man aus einem Set von 5 Walzen wählen. Zusätzlich gab es ein Steckbrett, an dem
|
||||
man Buchstaben von Hand vertauschen konnte.
|
||||
</string>
|
||||
|
||||
<string name="title_section_how_to_use">Bedienungsanleitung</string>
|
||||
<string name="section_how_to_use">Um einen Text mit EnigmAndroid zu ver- oder entschlüsseln, tippen Sie den Klar- oder Geheimtext in das Feld \"Hier tippen\".
|
||||
Wählen Sie anschließend eine Umkehrwalze, und Walzen für die Plätze 1 bis 3 aus. Legen Sie außerdem die Startpositionen der Walzen fest.
|
||||
Zuletzt können Sie noch einige Steckerpaare auf dem Steckbrett festlegen. Tippen Sie dazu die gewünschten Paare mit Komma getrennt in das entsprechende Textfeld (zb. \"ab,cd\").
|
||||
Beachten Sie, dass Sie einen Stecker nicht doppelt nutzen dürfen.
|
||||
Optional können Sie auch noch die Ringstellung definieren. Öffnen Sie dazu das Optionsmenü und wählen Sie den Punkt \"Ringstellung\".
|
||||
Haben Sie alle Einstellungen getätigt klicken Sie auf den Button \"Ver-Entschlüsseln\".</string>
|
||||
|
||||
<string name="title_section_developer">Entwickler</string>
|
||||
<string name="section_developer">EnigmAndroid wird entwickelt von: \nPaul Schaub</string>
|
||||
|
||||
<string name="title_section_disclaimer">Disclaimer</string>
|
||||
<string name="section_disclaimer">THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</string>
|
||||
</resources>
|
38
app/src/main/res/values/about_dialog_resources.xml
Normal file
38
app/src/main/res/values/about_dialog_resources.xml
Normal file
|
@ -0,0 +1,38 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
|
||||
<string name="button_show_changelog">Changelog</string>
|
||||
|
||||
<string name="title_action_about">About</string>
|
||||
<string name="title_about_dialog">About EnigmAndroid</string>
|
||||
<string name="description_text">EnigmAndroid is an implementation of a simulation of the Enigma Machine.
|
||||
The Enigma Machine is a cypher machine developed in the 1920s. It was used by the german Wehrmacht to
|
||||
encipher secret messaged during the second world war. For enciphering text, every letter is passed through 3 mechanical rotors that rotate with every keypress.
|
||||
That way the enigma achieves polyalphabetic substitution and the output appears random. The rotors could be chosen from a set of 5. Additionally there was a
|
||||
so called plugboard, where one could switch over pairs of letters.
|
||||
</string>
|
||||
|
||||
<string name="title_section_how_to_use">How to use</string>
|
||||
<string name="section_how_to_use">To encrypt/decrpyt a message, you can type it into the input field.
|
||||
Afterwards you can select a reflector and the three rotors. Also select their initial positions.
|
||||
Then you can set pairs on the plugboard. Therefore you just type the pairs separated by commas (e.g. \"ab,cd\").
|
||||
Notice that you can\'t plug a letter twice.
|
||||
Optionally you can set custom ring settings. Open the options menu and select \"Ringsettings\".
|
||||
When you are ready press \"En-/Decrypt!\".</string>
|
||||
|
||||
<string name="title_section_developer">Developer</string>
|
||||
<string name="section_developer">EnigmAndroid is developed by: \nPaul Schaub</string>
|
||||
|
||||
<string name="title_section_disclaimer">Disclaimer</string>
|
||||
<string name="section_disclaimer">THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</string>
|
||||
</resources>
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
|
||||
<string name="version" translatable="false">0.1.2-24.02.2015</string>
|
||||
<string name="version" translatable="false">0.1.3-14.03.2015</string>
|
||||
<string name="app_name">EnigmAndroid</string>
|
||||
<string name="action_version">Version</string>
|
||||
<string name="action_reset">Reset</string>
|
||||
|
|
|
@ -2,25 +2,25 @@
|
|||
<items version="2" >
|
||||
|
||||
<item
|
||||
jar="/media/Daten/android-studio/android-sdk-linux/extras/android/m2repository/com/android/support/support-annotations/21.0.3/support-annotations-21.0.3.jar"
|
||||
jumboMode="false"
|
||||
revision="20.0.0"
|
||||
sha1="4b74cefe1f0c1b819e7260c8627a14674e37fd35">
|
||||
<dex dex="/home/vanitas/androidstudio/EnigmAndroid/app/build/intermediates/pre-dexed/debug/support-annotations-21.0.3-f415c71037f6d951d1deff3566498fa2a465e206.jar" />
|
||||
</item>
|
||||
<item
|
||||
jar="/home/vanitas/androidstudio/EnigmAndroid/app/build/intermediates/exploded-aar/com.android.support/support-v4/21.0.3/libs/internal_impl-21.0.3.jar"
|
||||
jumboMode="false"
|
||||
revision="20.0.0"
|
||||
sha1="01ec05bfbafcc07646ba813000bf2ef11742dd03">
|
||||
<dex dex="/home/vanitas/androidstudio/EnigmAndroid/app/build/intermediates/pre-dexed/debug/internal_impl-21.0.3-b733ddfc406962ef118cbdff110aa44d9938bd94.jar" />
|
||||
</item>
|
||||
<item
|
||||
jar="/home/vanitas/androidstudio/EnigmAndroid/app/build/intermediates/exploded-aar/com.android.support/support-v4/21.0.3/classes.jar"
|
||||
jar="/home/vanitas/Programmierung/androidstudio/EnigmAndroid/app/build/intermediates/exploded-aar/com.android.support/support-v4/21.0.3/classes.jar"
|
||||
jumboMode="false"
|
||||
revision="20.0.0"
|
||||
sha1="2c91c949a45a21cdecf26e03951e46c7beec9ad8">
|
||||
<dex dex="/home/vanitas/androidstudio/EnigmAndroid/app/build/intermediates/pre-dexed/debug/classes-75e34429d0c1bdc3b913e7df81fd900dd0cdc752.jar" />
|
||||
<dex dex="/home/vanitas/Programmierung/androidstudio/EnigmAndroid/app/build/intermediates/pre-dexed/debug/classes-7bdf482936513a2d2b360d6a2f70cf21eca42762.jar" />
|
||||
</item>
|
||||
<item
|
||||
jar="/home/vanitas/Programmierung/androidstudio/EnigmAndroid/app/build/intermediates/exploded-aar/com.android.support/support-v4/21.0.3/libs/internal_impl-21.0.3.jar"
|
||||
jumboMode="false"
|
||||
revision="20.0.0"
|
||||
sha1="01ec05bfbafcc07646ba813000bf2ef11742dd03">
|
||||
<dex dex="/home/vanitas/Programmierung/androidstudio/EnigmAndroid/app/build/intermediates/pre-dexed/debug/internal_impl-21.0.3-63d8c8acc0e1cfdaed77f1165fcd87d053e4feed.jar" />
|
||||
</item>
|
||||
<item
|
||||
jar="/media/Daten/android-sdk-linux/extras/android/m2repository/com/android/support/support-annotations/21.0.3/support-annotations-21.0.3.jar"
|
||||
jumboMode="false"
|
||||
revision="20.0.0"
|
||||
sha1="4b74cefe1f0c1b819e7260c8627a14674e37fd35">
|
||||
<dex dex="/home/vanitas/Programmierung/androidstudio/EnigmAndroid/app/build/intermediates/pre-dexed/debug/support-annotations-21.0.3-fb7e977c35fa018b179241e5331c866d4bef0bb8.jar" />
|
||||
</item>
|
||||
|
||||
</items>
|
||||
|
|
Binary file not shown.
|
@ -1,47 +0,0 @@
|
|||
Categories:Science & Education
|
||||
License:GPLv3
|
||||
Web Site: https://github.com/vanitasvitae/EnigmAndroid
|
||||
Source Code: https://github.com/vanitasvitae/EnigmAndroid
|
||||
Issue Tracker: https://github.com/vanitasvitae/EnigmAndroid/issues
|
||||
Summary: Simulation of the Enigma Machine
|
||||
Description:
|
||||
This is a simulation of the famous Enigma cipher machine used in the twentieth century and especially in the Second World War to encipher and decipher secret messages.
|
||||
The Enigma Machine was a typewriter-like machine with 26 keys and corresponding lamps. It used a set of mechanical Rotors to achieve polyalphabetic substitution.
|
||||
For even more scrambling there was a so called plugboard, where the sender of a message could connect pairs of letters to switch them over.
|
||||
|
||||
The Enigma Machine was broken during the second world war by the work of the allies (the three Polish cryptologists, Marian Rejewski, Jerzy Różycki and Henryk Zygalski created a Machine called "Bomba" which could break the enigma code.
|
||||
After Germany invaded Poland, the work on breaking the enigma mainly took place in the UK. The british mathematician Alan Turing (known for his work on theoretical computer science) succeeded in completely breaking the Enigma.
|
||||
|
||||
Features:
|
||||
* Authentic Rotors
|
||||
* Ringsettings
|
||||
* Double Step Anomaly
|
||||
* Working plugboard
|
||||
|
||||
More Information about the historical Enigma can be found on Wikipedia.org
|
||||
(I recommend the german article, since it is very detailed.)
|
||||
.
|
||||
|
||||
|
||||
Repo Type:git
|
||||
Repo:https://github.com/vanitasvitae/EnigmAndroid
|
||||
|
||||
Build:0.1.1-18.02.2015-beta,6
|
||||
commit=707cdfcff66aababce83af1769ba9d8527067c8d
|
||||
subdir=app
|
||||
gradle=yes
|
||||
|
||||
Build:0.1.1-23.02.2015-beta,7
|
||||
commit=965aee43dd998c7f0fc70093e53ac05fd7311eab
|
||||
subdir=app
|
||||
gradle=yes
|
||||
|
||||
Build:0.1.2-24.02.2015-beta,8
|
||||
commit=310e44029ae1ee3754c630d923cb8f5468ea26d3
|
||||
subdir=app
|
||||
gradle=yes
|
||||
|
||||
Auto Update Mode:None
|
||||
Update Check Mode:Tags
|
||||
Current Version:0.1.2-24.02.2015-beta
|
||||
Current Version Code:8
|
46
de.vanitasvitae.enigmandroid.txt
Normal file
46
de.vanitasvitae.enigmandroid.txt
Normal file
|
@ -0,0 +1,46 @@
|
|||
Categories:Science & Education
|
||||
License:GPLv2
|
||||
Web Site: https://github.com/vanitasvitae/EnigmAndroid/wiki/EnigmAndroid
|
||||
Source Code: https://github.com/vanitasvitae/EnigmAndroid
|
||||
Issue Tracker: https://github.com/vanitasvitae/EnigmAndroid/issues
|
||||
Summary: Simulation of the Enigma Machine
|
||||
Description:
|
||||
This is a simulation of the famous Enigma cipher machine used in the twentieth century and especially in the Second World War.
|
||||
The Enigma Machine was a typewriter-like machine with 26 keys and corresponding lamps. It used a set of mechanical Rotors to achieve polyalphabetic substitution.
|
||||
|
||||
The Enigma Machine was broken during the second world war by Marian Rejewski, Jerzy Różycki and Henryk Zygalski, who created a Machine called "Bomba" which could break the enigma code.
|
||||
After Germany invaded Poland, the british mathematician Alan Turing (known for his work on theoretical computer science) succeeded in completely breaking the Enigma.
|
||||
|
||||
Features:
|
||||
* Authentic Rotors
|
||||
* Ringsettings
|
||||
* Double Step Anomaly
|
||||
* Working plugboard
|
||||
|
||||
More Information about the historical Enigma can be found on https://de.wikipedia.org/wiki/Enigma_%28Maschine%29
|
||||
.
|
||||
|
||||
|
||||
Repo Type:git
|
||||
Repo:https://github.com/vanitasvitae/EnigmAndroid
|
||||
|
||||
Build:0.1.1-18.02.2015-beta,6
|
||||
commit=707cdfcff66aababce83af1769ba9d8527067c8d
|
||||
subdir=app
|
||||
gradle=yes
|
||||
|
||||
Build:0.1.1-23.02.2015-beta,7
|
||||
commit=965aee43dd998c7f0fc70093e53ac05fd7311eab
|
||||
subdir=app
|
||||
gradle=yes
|
||||
|
||||
Build:0.1.2-24.02.2015-beta,8
|
||||
commit=310e44029ae1ee3754c630d923cb8f5468ea26d3
|
||||
subdir=app
|
||||
gradle=yes
|
||||
|
||||
Auto Update Mode:None
|
||||
Update Check Mode:Tags
|
||||
Current Version:0.1.2-24.02.2015-beta
|
||||
Current Version Code:8
|
||||
|
0
gradlew
vendored
Executable file → Normal file
0
gradlew
vendored
Executable file → Normal file
|
@ -7,5 +7,5 @@
|
|||
# Location of the SDK. This is only used by Gradle.
|
||||
# For customization when using a Version Control System, please read the
|
||||
# header note.
|
||||
#Tue Feb 24 18:25:34 CET 2015
|
||||
sdk.dir=/media/Daten/android-studio/android-sdk-linux
|
||||
#Thu Mar 12 23:34:48 CET 2015
|
||||
sdk.dir=/media/Daten/android-sdk-linux
|
||||
|
|
Loading…
Reference in a new issue