From 92c1b7c5e38b8d6ffbeffb2c515bb99149841803 Mon Sep 17 00:00:00 2001 From: Claudio Sacerdoti Coen Date: Tue, 9 Dec 2014 14:24:27 +0100 Subject: [PATCH] The applet. --- mainActivity/._AndroidManifest.xml | Bin 0 -> 4096 bytes mainActivity/.classpath | 9 + mainActivity/.project | 33 + .../.settings/org.eclipse.jdt.core.prefs | 11 + mainActivity/AndroidManifest.xml | 46 + mainActivity/bin/AndroidManifest.xml | 46 + mainActivity/bin/classes.dex | Bin 0 -> 817976 bytes ...rt-v4-70fb0600066156aa2b6d08c87cc768e7.jar | Bin 0 -> 234431 bytes mainActivity/bin/mainActivity.apk | Bin 0 -> 392769 bytes .../res/crunch/drawable-hdpi/ic_launcher.png | Bin 0 -> 9193 bytes .../res/crunch/drawable-mdpi/ic_launcher.png | Bin 0 -> 5057 bytes .../res/crunch/drawable-xhdpi/ic_launcher.png | Bin 0 -> 14068 bytes .../crunch/drawable-xxhdpi/ic_launcher.png | Bin 0 -> 18365 bytes mainActivity/bin/resources.ap_ | Bin 0 -> 111636 bytes mainActivity/libs/android-support-v4.jar | Bin 0 -> 627582 bytes mainActivity/lint.xml | 3 + mainActivity/project.properties | 14 + mainActivity/res/._drawable-hdpi | Bin 0 -> 4096 bytes mainActivity/res/._drawable-mdpi | Bin 0 -> 4096 bytes mainActivity/res/._drawable-xxhdpi | Bin 0 -> 4096 bytes mainActivity/res/._values | Bin 0 -> 4096 bytes .../res/drawable-hdpi/._ic_launcher.png | Bin 0 -> 4096 bytes mainActivity/res/drawable-hdpi/def.jpg | Bin 0 -> 5479 bytes .../res/drawable-hdpi/ic_launcher.png | Bin 0 -> 9397 bytes .../res/drawable-mdpi/._ic_launcher.png | Bin 0 -> 4096 bytes mainActivity/res/drawable-mdpi/def.jpg | Bin 0 -> 4422 bytes .../res/drawable-mdpi/ic_launcher.png | Bin 0 -> 5237 bytes .../res/drawable-xhdpi/._ic_launcher.png | Bin 0 -> 4096 bytes mainActivity/res/drawable-xhdpi/def.jpg | Bin 0 -> 12656 bytes .../res/drawable-xhdpi/ic_launcher.png | Bin 0 -> 14383 bytes .../res/drawable-xxhdpi/._ic_launcher.png | Bin 0 -> 4096 bytes mainActivity/res/drawable-xxhdpi/def.jpg | Bin 0 -> 24783 bytes .../res/drawable-xxhdpi/ic_launcher.png | Bin 0 -> 19388 bytes mainActivity/res/layout-land/download.xml | 37 + mainActivity/res/layout/.activity_my.xml.swp | Bin 0 -> 12288 bytes mainActivity/res/layout/activity_login.xml | 72 ++ mainActivity/res/layout/activity_my.xml | 41 + mainActivity/res/layout/aggiornamento.xml | 26 + mainActivity/res/layout/download.xml | 15 + mainActivity/res/layout/reimpostapass.xml | 91 ++ mainActivity/res/layout/ruledialog.xml | 28 + mainActivity/res/layout/string_layout.xml | 40 + mainActivity/res/layout/textviewgeneral.xml | 9 + mainActivity/res/menu/._my.xml | Bin 0 -> 4096 bytes mainActivity/res/menu/login_set.xml | 12 + mainActivity/res/menu/menu_dow.xml | 15 + mainActivity/res/menu/my.xml | 12 + mainActivity/res/raw/._halloween.crt | Bin 0 -> 4096 bytes mainActivity/res/raw/._keystore.bks | Bin 0 -> 4096 bytes mainActivity/res/raw/halloween.crt | Bin 0 -> 897 bytes mainActivity/res/raw/keystore.bks | Bin 0 -> 2259 bytes mainActivity/res/values-w820dp/._dimens.xml | Bin 0 -> 4096 bytes mainActivity/res/values-w820dp/dimens.xml | 6 + mainActivity/res/values/._dimens.xml | Bin 0 -> 4096 bytes mainActivity/res/values/._strings.xml | Bin 0 -> 4096 bytes mainActivity/res/values/._styles.xml | Bin 0 -> 4096 bytes mainActivity/res/values/dimens.xml | 5 + mainActivity/res/values/strings.xml | 21 + mainActivity/res/values/styles.xml | 8 + .../example/furt/myapplication/Border.java | 43 + .../furt/myapplication/BorderedTextView.java | 68 + .../furt/myapplication/CopyPasteDialog.java | 41 + .../myapplication/DialogTouchHandler.java | 32 + .../furt/myapplication/DrawActivity.java | 292 +++++ .../furt/myapplication/EliminationRule.java | 11 + .../com/example/furt/myapplication/FView.java | 13 + .../example/furt/myapplication/Formula.java | 12 + .../furt/myapplication/FormulaAnd.java | 74 ++ .../furt/myapplication/FormulaBOT.java | 46 + .../furt/myapplication/FormulaImpl.java | 71 ++ .../furt/myapplication/FormulaNot.java | 66 + .../example/furt/myapplication/FormulaOr.java | 79 ++ .../furt/myapplication/FormulaTOP.java | 42 + .../furt/myapplication/GenericFormula.java | 83 ++ .../furt/myapplication/Hypothesis.java | 14 + .../furt/myapplication/IntroductionRule.java | 8 + .../example/furt/myapplication/Literal.java | 36 + .../furt/myapplication/LongHPClick.java | 26 + .../com/example/furt/myapplication/MD5.java | 65 + .../example/furt/myapplication/MyService.java | 139 ++ .../com/example/furt/myapplication/Node.java | 439 +++++++ .../myapplication/RuleAndElimination.java | 43 + .../myapplication/RuleBotElimination.java | 25 + .../furt/myapplication/RuleDialog.java | 131 ++ .../myapplication/RuleImplElimination.java | 35 + .../furt/myapplication/RuleIntroduction.java | 34 + .../myapplication/RuleNotElimination.java | 33 + .../furt/myapplication/RuleOrElimination.java | 42 + .../furt/myapplication/ServerData.java | 40 + .../com/example/furt/myapplication/Tree.java | 12 + .../furt/myapplication/TwoDScrollView.java | 1129 +++++++++++++++++ .../furt/myapplication/UndefinedFormula.java | 59 + .../example/furt/myapplication/aggiorna.java | 241 ++++ .../furt/myapplication/aggiornamento.java | 53 + .../furt/myapplication/askFormula.java | 5 + .../furt/myapplication/download_page.java | 125 ++ .../example/furt/myapplication/global.java | 12 + .../example/furt/myapplication/listElem.java | 49 + .../furt/myapplication/mainActivity.java | 151 +++ .../furt/myapplication/operandClick.java | 32 + .../example/furt/myapplication/parser.java | 246 ++++ .../furt/myapplication/parserDialog.java | 153 +++ .../furt/myapplication/personalDBHelper.java | 189 +++ .../personalTrackerContract.java | 46 + .../furt/myapplication/recuperaPass.java | 60 + .../myapplication/serverComunication.java | 181 +++ .../example/furt/myapplication/suString.java | 100 ++ .../furt/myapplication/touchHPHandler.java | 66 + .../myapplication/touchParserHandler.java | 96 ++ .../furt/myapplication/touchRuleHandler.java | 30 + .../furt/myapplication/touchnodeHandler.java | 157 +++ .../furt/myapplication/valutazione.java | 28 + 112 files changed, 5903 insertions(+) create mode 100755 mainActivity/._AndroidManifest.xml create mode 100644 mainActivity/.classpath create mode 100644 mainActivity/.project create mode 100644 mainActivity/.settings/org.eclipse.jdt.core.prefs create mode 100755 mainActivity/AndroidManifest.xml create mode 100644 mainActivity/bin/AndroidManifest.xml create mode 100644 mainActivity/bin/classes.dex create mode 100644 mainActivity/bin/dexedLibs/android-support-v4-70fb0600066156aa2b6d08c87cc768e7.jar create mode 100644 mainActivity/bin/mainActivity.apk create mode 100644 mainActivity/bin/res/crunch/drawable-hdpi/ic_launcher.png create mode 100644 mainActivity/bin/res/crunch/drawable-mdpi/ic_launcher.png create mode 100644 mainActivity/bin/res/crunch/drawable-xhdpi/ic_launcher.png create mode 100644 mainActivity/bin/res/crunch/drawable-xxhdpi/ic_launcher.png create mode 100644 mainActivity/bin/resources.ap_ create mode 100644 mainActivity/libs/android-support-v4.jar create mode 100644 mainActivity/lint.xml create mode 100644 mainActivity/project.properties create mode 100755 mainActivity/res/._drawable-hdpi create mode 100755 mainActivity/res/._drawable-mdpi create mode 100755 mainActivity/res/._drawable-xxhdpi create mode 100755 mainActivity/res/._values create mode 100755 mainActivity/res/drawable-hdpi/._ic_launcher.png create mode 100644 mainActivity/res/drawable-hdpi/def.jpg create mode 100755 mainActivity/res/drawable-hdpi/ic_launcher.png create mode 100755 mainActivity/res/drawable-mdpi/._ic_launcher.png create mode 100644 mainActivity/res/drawable-mdpi/def.jpg create mode 100755 mainActivity/res/drawable-mdpi/ic_launcher.png create mode 100755 mainActivity/res/drawable-xhdpi/._ic_launcher.png create mode 100644 mainActivity/res/drawable-xhdpi/def.jpg create mode 100755 mainActivity/res/drawable-xhdpi/ic_launcher.png create mode 100755 mainActivity/res/drawable-xxhdpi/._ic_launcher.png create mode 100644 mainActivity/res/drawable-xxhdpi/def.jpg create mode 100755 mainActivity/res/drawable-xxhdpi/ic_launcher.png create mode 100755 mainActivity/res/layout-land/download.xml create mode 100644 mainActivity/res/layout/.activity_my.xml.swp create mode 100755 mainActivity/res/layout/activity_login.xml create mode 100755 mainActivity/res/layout/activity_my.xml create mode 100755 mainActivity/res/layout/aggiornamento.xml create mode 100755 mainActivity/res/layout/download.xml create mode 100644 mainActivity/res/layout/reimpostapass.xml create mode 100755 mainActivity/res/layout/ruledialog.xml create mode 100755 mainActivity/res/layout/string_layout.xml create mode 100644 mainActivity/res/layout/textviewgeneral.xml create mode 100755 mainActivity/res/menu/._my.xml create mode 100755 mainActivity/res/menu/login_set.xml create mode 100755 mainActivity/res/menu/menu_dow.xml create mode 100755 mainActivity/res/menu/my.xml create mode 100755 mainActivity/res/raw/._halloween.crt create mode 100755 mainActivity/res/raw/._keystore.bks create mode 100755 mainActivity/res/raw/halloween.crt create mode 100755 mainActivity/res/raw/keystore.bks create mode 100755 mainActivity/res/values-w820dp/._dimens.xml create mode 100755 mainActivity/res/values-w820dp/dimens.xml create mode 100755 mainActivity/res/values/._dimens.xml create mode 100755 mainActivity/res/values/._strings.xml create mode 100755 mainActivity/res/values/._styles.xml create mode 100755 mainActivity/res/values/dimens.xml create mode 100755 mainActivity/res/values/strings.xml create mode 100755 mainActivity/res/values/styles.xml create mode 100755 mainActivity/src/com/example/furt/myapplication/Border.java create mode 100755 mainActivity/src/com/example/furt/myapplication/BorderedTextView.java create mode 100755 mainActivity/src/com/example/furt/myapplication/CopyPasteDialog.java create mode 100755 mainActivity/src/com/example/furt/myapplication/DialogTouchHandler.java create mode 100644 mainActivity/src/com/example/furt/myapplication/DrawActivity.java create mode 100755 mainActivity/src/com/example/furt/myapplication/EliminationRule.java create mode 100755 mainActivity/src/com/example/furt/myapplication/FView.java create mode 100755 mainActivity/src/com/example/furt/myapplication/Formula.java create mode 100755 mainActivity/src/com/example/furt/myapplication/FormulaAnd.java create mode 100755 mainActivity/src/com/example/furt/myapplication/FormulaBOT.java create mode 100755 mainActivity/src/com/example/furt/myapplication/FormulaImpl.java create mode 100755 mainActivity/src/com/example/furt/myapplication/FormulaNot.java create mode 100755 mainActivity/src/com/example/furt/myapplication/FormulaOr.java create mode 100755 mainActivity/src/com/example/furt/myapplication/FormulaTOP.java create mode 100755 mainActivity/src/com/example/furt/myapplication/GenericFormula.java create mode 100755 mainActivity/src/com/example/furt/myapplication/Hypothesis.java create mode 100755 mainActivity/src/com/example/furt/myapplication/IntroductionRule.java create mode 100755 mainActivity/src/com/example/furt/myapplication/Literal.java create mode 100755 mainActivity/src/com/example/furt/myapplication/LongHPClick.java create mode 100755 mainActivity/src/com/example/furt/myapplication/MD5.java create mode 100755 mainActivity/src/com/example/furt/myapplication/MyService.java create mode 100755 mainActivity/src/com/example/furt/myapplication/Node.java create mode 100755 mainActivity/src/com/example/furt/myapplication/RuleAndElimination.java create mode 100755 mainActivity/src/com/example/furt/myapplication/RuleBotElimination.java create mode 100755 mainActivity/src/com/example/furt/myapplication/RuleDialog.java create mode 100755 mainActivity/src/com/example/furt/myapplication/RuleImplElimination.java create mode 100755 mainActivity/src/com/example/furt/myapplication/RuleIntroduction.java create mode 100755 mainActivity/src/com/example/furt/myapplication/RuleNotElimination.java create mode 100755 mainActivity/src/com/example/furt/myapplication/RuleOrElimination.java create mode 100755 mainActivity/src/com/example/furt/myapplication/ServerData.java create mode 100755 mainActivity/src/com/example/furt/myapplication/Tree.java create mode 100755 mainActivity/src/com/example/furt/myapplication/TwoDScrollView.java create mode 100755 mainActivity/src/com/example/furt/myapplication/UndefinedFormula.java create mode 100755 mainActivity/src/com/example/furt/myapplication/aggiorna.java create mode 100755 mainActivity/src/com/example/furt/myapplication/aggiornamento.java create mode 100755 mainActivity/src/com/example/furt/myapplication/askFormula.java create mode 100755 mainActivity/src/com/example/furt/myapplication/download_page.java create mode 100755 mainActivity/src/com/example/furt/myapplication/global.java create mode 100755 mainActivity/src/com/example/furt/myapplication/listElem.java create mode 100755 mainActivity/src/com/example/furt/myapplication/mainActivity.java create mode 100755 mainActivity/src/com/example/furt/myapplication/operandClick.java create mode 100755 mainActivity/src/com/example/furt/myapplication/parser.java create mode 100755 mainActivity/src/com/example/furt/myapplication/parserDialog.java create mode 100755 mainActivity/src/com/example/furt/myapplication/personalDBHelper.java create mode 100755 mainActivity/src/com/example/furt/myapplication/personalTrackerContract.java create mode 100644 mainActivity/src/com/example/furt/myapplication/recuperaPass.java create mode 100755 mainActivity/src/com/example/furt/myapplication/serverComunication.java create mode 100755 mainActivity/src/com/example/furt/myapplication/suString.java create mode 100755 mainActivity/src/com/example/furt/myapplication/touchHPHandler.java create mode 100755 mainActivity/src/com/example/furt/myapplication/touchParserHandler.java create mode 100755 mainActivity/src/com/example/furt/myapplication/touchRuleHandler.java create mode 100755 mainActivity/src/com/example/furt/myapplication/touchnodeHandler.java create mode 100644 mainActivity/src/com/example/furt/myapplication/valutazione.java diff --git a/mainActivity/._AndroidManifest.xml b/mainActivity/._AndroidManifest.xml new file mode 100755 index 0000000000000000000000000000000000000000..0dfce2039324319dc985e01bd1b17a3ee7437b59 GIT binary patch literal 4096 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF zKST$^44`sLG%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBDz%sA1^%+NYG zF)gtu)7sJ4(a6xy%vIOG#MMC8#K_HD*U`Y(RoBAO&BW5k!pYpw!~o5rQSN96jE2By z2#kinXb6mkz-S1JhQMeDjE2By2#kin$O!>ZXA^|MKrSRBvsj@hwK%`DC^=OjEx#yR uAv3Qe71-^}&r8h7sZ_{GO)F7I%1O-22KI%ax`s4`>VLRbWEkZB{|5j}sWh4Z literal 0 HcmV?d00001 diff --git a/mainActivity/.classpath b/mainActivity/.classpath new file mode 100644 index 0000000..5176974 --- /dev/null +++ b/mainActivity/.classpath @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/mainActivity/.project b/mainActivity/.project new file mode 100644 index 0000000..53dc2e1 --- /dev/null +++ b/mainActivity/.project @@ -0,0 +1,33 @@ + + + mainActivity + + + + + + com.android.ide.eclipse.adt.ResourceManagerBuilder + + + + + com.android.ide.eclipse.adt.PreCompilerBuilder + + + + + org.eclipse.jdt.core.javabuilder + + + + + com.android.ide.eclipse.adt.ApkBuilder + + + + + + com.android.ide.eclipse.adt.AndroidNature + org.eclipse.jdt.core.javanature + + diff --git a/mainActivity/.settings/org.eclipse.jdt.core.prefs b/mainActivity/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..7341ab1 --- /dev/null +++ b/mainActivity/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,11 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.7 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.7 diff --git a/mainActivity/AndroidManifest.xml b/mainActivity/AndroidManifest.xml new file mode 100755 index 0000000..1e93667 --- /dev/null +++ b/mainActivity/AndroidManifest.xml @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/mainActivity/bin/AndroidManifest.xml b/mainActivity/bin/AndroidManifest.xml new file mode 100644 index 0000000..1e93667 --- /dev/null +++ b/mainActivity/bin/AndroidManifest.xml @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/mainActivity/bin/classes.dex b/mainActivity/bin/classes.dex new file mode 100644 index 0000000000000000000000000000000000000000..6c653250a9f66bc8037c0224044fe90ce8ff24ac GIT binary patch literal 817976 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%0D?-j3-t^mDSn(vJVy%YKs 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 z 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 e9G@VC^~q@#nhpM9C*gt}Q!i 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:=2754rQ7+ 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

    Cf{)gVk_)m7#wA$~Jz zRGEpDIBNyJ)|b?bda)*At}iXASyx`_@uu@o#XLBUH+eigkmA?v|Y!{~eNmuQ)bJgh#C#H3~jd za*wnAA)<8a-mz!4DY~ahy6bC7A-@Cvn-Z8rlrL-p~5B5_7U*M;FnYnTRq%=^apd_(w)Ib?d zYEo_rgH#GQdBeo4ZB7cNfcF^sN;?vjTA$HhoV1g?1fEn%aIwtk=$d_N8f(t`Hu35D zn&Cs&?_M)xea-HbFBa99>#B+%(IQB+Xt$AKMlbL~))&@PuB$2pyb$n0zz^+(@J&f#8Nb0bfU%v)9{c~!kFWMm>Aw4| zKD@)H%eeOduEzRvVVAYfMy2{^FHW~JPxh2G?~nSlR2sDPr1hjnD{a@Jx1nfh+&_I> zy^quM{*#9u^ZJGtr`tIttbK)~N8DB)x7f#NdfW5RLlp5f;97>H!+!-EGcYY{I}dD- z56k#+9Kc8gtIoRYskjqrVZ8W}&|xID1^^S}=317k`@0LHRQ+jD)H z>O35kC;V}K`1$?9AFsnZiZ{|v`{5TNe6Am8sSXc)Wgcb#uJrJ3U$1nW<8~2eju)rfo<#2qv?ya67v_lr zv{(eVE_1C1OEnBWIGvxBfc2H_PqJXzCSCv-`{ya+CitIjg6hymLC$e^3UJ)#7_r^> zO&G2Gn4>bBMt~DQvcB1~q~~Zn{0nNnpupqeD#V{kp0S3rB{)Qm?2c7?_%YR8iFHiN zpl&6Q7RCGNpM>AiW<@o<_u8)O2T|yEKe7&Xn5T1>*rX?8HuY@=X@$AYI^i zzRFGT;!y%WkudInz#g~axJbN-@UIgW`IIqGyLJ@=eS8^XGh#fBgwQ5SBjvE3;x1LD z?Unia;4xdj*+x)S+W@DYREamS3iC(B4pu#C+)m)6?k5))$G!FJ+6D(7RqaEy^AEXB zl5py8Dc~}WvlMwzc2)CG30yW0Duxid1Fm&i*X8Ogm=3pZ7EIF|--jm8K_?#*0f%2w zG-5wV1pW-}2!_?h-5w+54rKB+RNR8~r6ti>u-u7{GO}vzLsQqi8CmJ;Hg*{ivOBPI* z^^-X;)pz+9V14tU^Y}V&TIL$IH4CQs-{HeD_OlnTzC0B@mVs${QNVN>n%*8hO!Xru zkKsNnQ~sm#z{dKpOx#I%U{icphTh?MVC{Ke$L4{}^I@5EPtF5dk_UE19@v^Zu=Dc3 zF3JPDG7s$6d0;o^f!&n{c7Gn&BUv!*!+g?*Wn}tn7EG72UA*FwTup z^M&{{3#RQ=FJOIjE%bPQSVbP#?s;It^T77a18d9!YsmvUJP&L}9@y+WuoLsZmgIq* zl?V3YJg^J$z^=@KXxxESOH??L4q;d0;#Hz*zpl zC$#NvfbDPeZ9iKo+L#jH*++Eajj;W9m2w{qPr;2~2MtaXl6z^mU$4k(vxgvjHN($C z_~hNCOA2xKU_hOy8owtxI@FPkw)(Q4F6$4%GG{y?3 zFLjt&JPmZ!JTvGv{h?IvGolQbkCdN}3CPEO{qoW2=VQO`m5&}j9|-@ykPj`->vQqKGjYRtU==`1G^*-?CLzQ-{pbb zl?V1f9@t}fV1Lg8dnpg>?L4q;d0;#9z=BWqmqB?R*lu}X)p=l}^T5XEfi-8rv@Jh0 z3#M)Pj4T-2bk^%uejo z^K(}t4Ey%&_UZudw{z{4coxZLkIkD3*rurUfLe!dL>%_68J2O?ol!X78gS0nwbz0c zZ}F~O8R&6>Ml(iFoD*FUaO+mWGFF#IJ289fe^-`Uaoh+sEwMxHSVs=kyz{f5N7=ac zs({*~j5DvCeapFPZ&iTM%--)8e4f@wp0u1^0UT~CFMpV~l=;J5l6aCg$IAtC$kms$ z!|x-`?s#J0Biieb7o5CD&UuR^pNuzIj;28;xiZjNdk$b2p2MF;-<}@NZwH-b(r8{C zXf!ZyEARX$7|eNFdFMy7qBR}y)uZ($Ia36@VWKxEo&?sE=|z9AY}GgOF9+lNFvlP7(CWjeD}fv&RVolBz~n z+#j49w!nz?2^#`Lmm1FgGdkku1aPxkd^L6_4#&Y0iAQjv4`GIa?M2uhRbHt%SA$Rb zg;S9qqrY|&1X2axU6(x`$drAq%u^w9$UNSNu>0egw*QXP)55sVYHVaAEY-7-5s*yU z8CMSf9ai#Se;d42iBG!ituSR_Ym`NAVq$wF*6jp}n-Frh(gKnA&B_tMMzkIwU(`M-Y>|qF--S^e?q7`uFhk4VmW3phn zt?kT$>2N1y!Dz{7yB7n-F;FUU1@v?cmJ3(mJmM~=Rkj+J2Rfn~WF9nMs}NrCH5<{m zhElaXKLK2>^IZ3xuE3mci{)?EP|T8f%MFE?zM{7#og5RbVaonIl|LOdf4kpYpQ zd&y-eom(nU3#`^lKxggY!kEolo83zkt+n!OJg#qD9Dxo7PitQ%f>s0SKToPj+p{Hf zOc2({*vJ1KA4~}MB2rjcJ_WHFgAQ=B5SAmf(WZM5)9q&5P`c?a6;rxq?sZ;3#;|{i z+Sg?tU5+-M6zqlghL3Q1;x2wiW-y0KxZXoz&tY8+t_M$vyV=gOe!Yb}j>gliMfkdO z^2G9Hlcx}~e<5>WoK}ImV=(VM9IYhh-mz-{zEg%z+vh-6Ipd{5u17&IBvSE1Cf-*z zoO-bnX-ON7+~_$FmNappXEbiHkJCC|4%{$=c?l=pMk~*NU+Gc9U12Z?OTrCYI*! zaSkVX08O`)+rzj|ojHY`BkVXlDNmgKi#2a3lQArlIe{=%!3`1XED>5&zbbGecAOKN zPX4YO_s&|QEd%@7cN38ooIo2HCu63e9lWnfhC@kV*2P?JnST7lD_A@CZi%M{=OJyj zU6mnmK%~H3O=+H8ej(zJn<8=pSY#}@xiCnJ?}*WXaKXd?^aszzzyLhW&?MX+jMGt9 zE1gBWU^@9wMJy;Of};R9I?YIYtiI2|ci7qo@hA9niaa_&u^zKbi5IcYM($rxb@^fN z$@al@P(Ja?!R6Jk25M~^GE5{w?)~P|D&Az?I+U;Xt?Z zTDj`~W%{9Ovhhu?mur6*WyRlm;MtcQ!nW6&VO${o;_0GF<6?wipQ_RnE7NUz-Dwcy+}iR;u=~Ku6sp_-za{qUKcLEcn6Z>M-}FaWs+|^CYay zQEWrdQ&h8C@c7|o+*{04?Iv)e^LsmZVcB;%??~&&F`(`f{88hYzCfQlQ^u6}qrkC; z*X4YQc&s-O&aJKJuphx_j;SxlPz`(OuqxqegwXrTSYnL-9OAQ09)+ECpptwGB}Yx^ za^6P&16G>DU+hmn_YXT&IWAT4UPHVC@ZF6?c|08iD{!3vdg-0!Ur?_tyrq-d%WyqoIa6x3G;Mzao=R|+FC=E-j#sM*y@{U>s1qYhce0Y0w9B|jOg^0;=ylr; zI-|Vj8X=PBmBoXUk?!*w&#Lx<{ID%><4;0wzQFo_ z3?P@mW|>QzDiUy4KaO~D#FKCK1e}ISTdqSM=!e7}9Z(62mja?GgP-irn$$-1&F;Jcpaq;z7;6O7Fl20pu*6RsinbS!Iu}>h~{fuFjd~>EC zK78m%u^TBic_}6~sk7kfW|hU?0m0OtN0b`8B6N z*BS36yf38Q8;Q3XjDJchuDco1>5R03Roa z5w9JjeV|_71w4IGds}i96#D92&Q9nyPZI2M-cWDb5ddotn($bGA8if$SK7ur0vcI$ zqv=b}(sU)iDzAlp^{pE^-ainJ_GfRb`9+VZ>2n>g=`;Bz<7K7GeDJ63&+CY<>^#ai zxfA=Ulzn5)r~_MpAAu*l2=PrQg(7$W*)K*v2;W%6U&8N3xekUl5bY+ucJ_8u!~Que zH`+hsYz4T31+0Vg*caCHd%b+O#y19d-h3H$zHSV3RBsGK4b%e0FpwnnIecA?aWz(@ zD!wZJ9u^0auZqf`Sb>wI<|yu{BMry{zsa4_8ER459?X$DM qm-qrTTYmE-BfwEN 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

    `&F4wS{fY7*{2W7$> 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

    vuW7z0N;9x1jXKBqc9y)W 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�gRl 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 + 64dp + diff --git a/mainActivity/res/values/._dimens.xml b/mainActivity/res/values/._dimens.xml new file mode 100755 index 0000000000000000000000000000000000000000..0dfce2039324319dc985e01bd1b17a3ee7437b59 GIT binary patch literal 4096 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF zKST$^44`sLG%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBDz%sA1^%+NYG zF)gtu)7sJ4(a6xy%vIOG#MMC8#K_HD*U`Y(RoBAO&BW5k!pYpw!~o5rQSN96jE2By z2#kinXb6mkz-S1JhQMeDjE2By2#kin$O!>ZXA^|MKrSRBvsj@hwK%`DC^=OjEx#yR uAv3Qe71-^}&r8h7sZ_{GO)F7I%1O-22KI%ax`s4`>VLRbWEkZB{|5j}sWh4Z literal 0 HcmV?d00001 diff --git a/mainActivity/res/values/._strings.xml b/mainActivity/res/values/._strings.xml new file mode 100755 index 0000000000000000000000000000000000000000..0dfce2039324319dc985e01bd1b17a3ee7437b59 GIT binary patch literal 4096 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF zKST$^44`sLG%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBDz%sA1^%+NYG zF)gtu)7sJ4(a6xy%vIOG#MMC8#K_HD*U`Y(RoBAO&BW5k!pYpw!~o5rQSN96jE2By z2#kinXb6mkz-S1JhQMeDjE2By2#kin$O!>ZXA^|MKrSRBvsj@hwK%`DC^=OjEx#yR uAv3Qe71-^}&r8h7sZ_{GO)F7I%1O-22KI%ax`s4`>VLRbWEkZB{|5j}sWh4Z literal 0 HcmV?d00001 diff --git a/mainActivity/res/values/._styles.xml b/mainActivity/res/values/._styles.xml new file mode 100755 index 0000000000000000000000000000000000000000..0dfce2039324319dc985e01bd1b17a3ee7437b59 GIT binary patch literal 4096 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF zKST$^44`sLG%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBDz%sA1^%+NYG zF)gtu)7sJ4(a6xy%vIOG#MMC8#K_HD*U`Y(RoBAO&BW5k!pYpw!~o5rQSN96jE2By z2#kinXb6mkz-S1JhQMeDjE2By2#kin$O!>ZXA^|MKrSRBvsj@hwK%`DC^=OjEx#yR uAv3Qe71-^}&r8h7sZ_{GO)F7I%1O-22KI%ax`s4`>VLRbWEkZB{|5j}sWh4Z literal 0 HcmV?d00001 diff --git a/mainActivity/res/values/dimens.xml b/mainActivity/res/values/dimens.xml new file mode 100755 index 0000000..47c8224 --- /dev/null +++ b/mainActivity/res/values/dimens.xml @@ -0,0 +1,5 @@ + + + 16dp + 16dp + diff --git a/mainActivity/res/values/strings.xml b/mainActivity/res/values/strings.xml new file mode 100755 index 0000000..c956b22 --- /dev/null +++ b/mainActivity/res/values/strings.xml @@ -0,0 +1,21 @@ + + + + LogicPlayer + inserisci una stringa + Settings + accedi + password + Aggiorna + Esci + Username + Lista esercizi: + registrati + recupera password + download disponibili: + Reimposta password + Lista esercizi: + Inserisci le tue credenziali: + sto aggiornando + + diff --git a/mainActivity/res/values/styles.xml b/mainActivity/res/values/styles.xml new file mode 100755 index 0000000..ff6c9d2 --- /dev/null +++ b/mainActivity/res/values/styles.xml @@ -0,0 +1,8 @@ + + + + + + diff --git a/mainActivity/src/com/example/furt/myapplication/Border.java b/mainActivity/src/com/example/furt/myapplication/Border.java new file mode 100755 index 0000000..532b11a --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/Border.java @@ -0,0 +1,43 @@ +package com.example.furt.myapplication; + +import android.app.AlertDialog; +import android.app.Dialog; +import android.app.DialogFragment; +import android.content.DialogInterface; +import android.graphics.Color; +import android.os.Bundle; + +public class Border { + private int orientation; + private int width; + private int color = Color.BLACK; + private int style; + public int getWidth() { + return width; + } + public void setWidth(int width) { + this.width = width; + } + public int getColor() { + return color; + } + public void setColor(int color) { + this.color = color; + } + public int getStyle() { + return style; + } + public void setStyle(int style) { + this.style = style; + } + public int getOrientation() { + return orientation; + } + public void setOrientation(int orientation) { + this.orientation = orientation; + } + public Border(int Style) { + this.style = Style; + } +} + diff --git a/mainActivity/src/com/example/furt/myapplication/BorderedTextView.java b/mainActivity/src/com/example/furt/myapplication/BorderedTextView.java new file mode 100755 index 0000000..846aeb1 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/BorderedTextView.java @@ -0,0 +1,68 @@ +package com.example.furt.myapplication; + +import android.content.Context; +import android.graphics.Canvas; +import android.graphics.Color; +import android.graphics.Paint; +import android.util.AttributeSet; +import android.util.Log; +import android.widget.TextView; + +public class BorderedTextView extends TextView { + private Paint paint = new Paint(); + public static final int BORDER_TOP = 0x00000001; + public static final int BORDER_RIGHT = 0x00000002; + public static final int BORDER_BOTTOM = 0x00000004; + public static final int BORDER_LEFT = 0x00000008; + private Border[] borders; + + public BorderedTextView(Context context, AttributeSet attrs, int defStyle) { + super(context, attrs, defStyle); + init(); + } + + public BorderedTextView(Context context, AttributeSet attrs) { + super(context, attrs); + init(); + } + + public BorderedTextView(Context context) { + super(context); + init(); + } + private void init(){ + paint.setStyle(Paint.Style.STROKE); + paint.setColor(Color.BLACK); + paint.setStrokeWidth(4); + } + @Override + protected void onDraw(Canvas canvas) { + super.onDraw(canvas); + if(borders == null) return; + for(Border border : borders){ + paint.setColor(border.getColor()); + paint.setStrokeWidth(border.getWidth()); + + if(border.getStyle() == BORDER_TOP){ + canvas.drawLine(0, 0, getWidth(), 0, paint); + } else + if(border.getStyle() == BORDER_RIGHT){ + canvas.drawLine(getWidth(), 0, getWidth(), getHeight(), paint); + } else + if(border.getStyle() == BORDER_BOTTOM){ + canvas.drawLine(0, getHeight(), getWidth(), getHeight(), paint); + } else + if(border.getStyle() == BORDER_LEFT){ + canvas.drawLine(0, 0, 0, getHeight(), paint); + } + } + } + + public Border[] getBorders() { + return borders; + } + + public void setBorders(Border[] borders) { + this.borders = borders; + } +} diff --git a/mainActivity/src/com/example/furt/myapplication/CopyPasteDialog.java b/mainActivity/src/com/example/furt/myapplication/CopyPasteDialog.java new file mode 100755 index 0000000..520ec66 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/CopyPasteDialog.java @@ -0,0 +1,41 @@ +package com.example.furt.myapplication; + +import android.app.AlertDialog; +import android.app.Dialog; +import android.app.DialogFragment; +import android.content.DialogInterface; +import android.os.Bundle; + +import java.util.ArrayList; + +public class CopyPasteDialog extends DialogFragment { + static Node thisNode; + public CopyPasteDialog(Node n) + { + thisNode=n; + } + @Override + public Dialog onCreateDialog(final Bundle savedInstanceState) { + AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); + builder.setMessage("Seleziona un'operazione:") + .setPositiveButton("Copia", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + DrawActivity.copiedNode=thisNode; + } + }); + builder.setNeutralButton("Cancella", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + DrawActivity.selectedNode.Children = new ArrayList(); + DrawActivity.rootNode.Clean(); + DrawActivity.startDraw(); + } + }); + builder.setNegativeButton("Annulla", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + thisNode=null; + } + }); + // Create the AlertDialog object and return it + return builder.create(); + } +} diff --git a/mainActivity/src/com/example/furt/myapplication/DialogTouchHandler.java b/mainActivity/src/com/example/furt/myapplication/DialogTouchHandler.java new file mode 100755 index 0000000..5e41f79 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/DialogTouchHandler.java @@ -0,0 +1,32 @@ +package com.example.furt.myapplication; + +import android.graphics.Color; +import android.view.View; +import android.widget.TextView; + +public class DialogTouchHandler implements View.OnClickListener{ + Node node; + DialogTouchHandler(Node n) + { + node=n; + } + public void onClick(View view) + { + if (RuleDialog.selectedRule!=null) + if (node==RuleDialog.selectedRule) + return; + Node sel=node; + while(sel.Father!=null) + sel=sel.Father; + sel.view.setTextColor(Color.RED); + for (Node n:sel.Children) + n.view.setTextColor(Color.RED); + if (RuleDialog.selectedRule!=null) + { + RuleDialog.selectedRule.view.setTextColor(Color.BLACK); + for (Node n:RuleDialog.selectedRule.Children) + n.view.setTextColor(Color.BLACK); + } + RuleDialog.selectedRule=sel; + } +} diff --git a/mainActivity/src/com/example/furt/myapplication/DrawActivity.java b/mainActivity/src/com/example/furt/myapplication/DrawActivity.java new file mode 100644 index 0000000..fea3a50 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/DrawActivity.java @@ -0,0 +1,292 @@ +package com.example.furt.myapplication; + +import android.app.FragmentManager; +import android.content.Context; +import android.content.Intent; +import android.content.res.Configuration; +import android.os.Bundle; +import android.support.v4.app.FragmentActivity; +import android.util.DisplayMetrics; +import android.util.TypedValue; +import android.view.Gravity; +import android.view.Menu; +import android.view.MenuItem; +import android.view.MotionEvent; +import android.view.ScaleGestureDetector; +import android.view.ViewGroup; +import android.view.ViewTreeObserver; +import android.widget.RelativeLayout; +import android.widget.ScrollView; +import android.widget.Toast; + +import java.sql.Timestamp; +import java.util.ArrayList; + +public class DrawActivity extends FragmentActivity { + + static RelativeLayout globalHP; //layout delle ipotesi cancellate + static ScaleGestureDetector scaleGestureDetector; //zoom listener + static float spaceSize; //dimensione della spaziatura tra i sottoalberi + static float textSize=40; //dimensione del font iniziale + static Node selectedNode; //Node su cui è attualmente il focus + static Node copiedNode;//nodo copiato + static boolean addFakes;//booleano che segnala se bisogna aggiungere delle regole fake + static Border[] b; //bordi per le borderedTextView + static FragmentManager fragmentManager;//per i dialog + static Node rootNode; //radice dell'albero corrente + static ScrollView scroll; + static int nmoves=0;//numero di mosse + static int nerrors=0;//nomero di errori + static long startTime;//tempo di inizio dell'esercizio + static RelativeLayout globalR; //layout globale contenente l'albero + static int globalId =10; //variabile incrementale per l'assegnazione di ID univoci + static DisplayMetrics v = new DisplayMetrics();//altezza lunghezza e densità dello schermo + + static String user=null; + static String pass=null; + static String sessionKey=null; + static String nomeEs=null; + + @Override + protected void onCreate(Bundle savedInstanceState) { + //routine standard per la create + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_my); + + //recupero e setto le variabili globali + getWindowManager().getDefaultDisplay().getMetrics(v); + globalHP = (RelativeLayout) findViewById(R.id.hpscroll); + globalR = (RelativeLayout) findViewById(R.id.global); + spaceSize = 2*(textSize/v.density); + fragmentManager=getFragmentManager(); + copiedNode=null; + scroll=(ScrollView)findViewById(R.id.vscroll); + startTime=time(); + b=new Border[1]; + b[0]=new Border(BorderedTextView.BORDER_TOP); + b[0].setWidth(2); + Bundle dati=getIntent().getExtras(); + nomeEs=dati.getString("nomeEs"); + user=dati.getString("user"); + pass=dati.getString("pass"); + sessionKey=dati.getString("sessionKey"); + + //Creazione dell'albero: setto il rootNode e creo la Formula di partenza (F) + if(!populateTree()) + return; + + //Creazione dell'albero: setto i campi della view + BorderedTextView rootView=new BorderedTextView(this); + rootView.setId(globalId); + globalId++; + selectedNode=null; + addFakes=false; //di default non vengono aggiunte regole false + rootNode.setView(rootView,globalR); + rootNode.handler=new touchnodeHandler(rootNode); + startDraw(); + + //imposto il listener per il pinch zoom + scaleGestureDetector = new ScaleGestureDetector(this, new simpleOnScaleGestureListener()); + } + @Override + public void onConfigurationChanged(Configuration configuration) //rotazione dello schermo: restore dell'albero + { + super.onConfigurationChanged(configuration); + getWindowManager().getDefaultDisplay().getMetrics(v); + DrawActivity.rootNode.Clean(); + DrawActivity.startDraw(); + } + public static void startDraw() + { + RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); + final int halfScreen=Math.round((v.widthPixels / 2) - rootNode.getBaseWidth() / 2); //calcolo la metà dello schermo per il calcolo dei margins della scrollView + int leftSubTree=(Math.round(rootNode.getLeftOffset() - rootNode.getUpLine() / 2 + (rootNode.getBaseWidth() / 2)) + 40); //sottoalbero sinistro del rootNode più un padding di 40px + lp.setMargins(Math.max(halfScreen,leftSubTree),0, 0, 0); + lp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, rootNode.view.getId()); + rootNode.view.setLayoutParams(lp); + rootNode.view.setBorders(b); + rootNode.view.setTextSize(TypedValue.COMPLEX_UNIT_PX, textSize); + rootNode.view.setWidth(Math.round(rootNode.getLineWidth())); //setto la larghezza della view al contenuto della linea + rootNode.view.setGravity(Gravity.CENTER); //formula al centro della sua overline + rootNode.view.setText(rootNode.F.toString()); //setta il contenuto della formula + globalR.addView(rootNode.view); + //inserisco un listener a rootView da attivare quando sono state fissate le coordinate nel RelativeLayout + rootNode.view.getViewTreeObserver().addOnGlobalLayoutListener( + new ViewTreeObserver.OnGlobalLayoutListener() + { + @Override + public void onGlobalLayout() + { + globalR.setPadding(0,0,(int)Math.max(rootNode.getRightOffset(),halfScreen),0); + globalR.getLayoutParams().height=(int)Math.max((v.heightPixels),(rootNode.getMaxHeight()+rootNode.getMaxHeight()*0.10)); //altezza della view=max(h_screen,h_tree). Aggiungo un 10% all'altezza dell'albero per approssimazione dei calcoli. + globalR.requestLayout(); //aggiorna i parametri e le dimensioni del RelativeLayout + if (rootNode.treeHeight()< 3) + scroll.fullScroll(ScrollView.FOCUS_DOWN); + rootNode.view.setOnClickListener(rootNode.handler); + rootNode.hasFocus=true; //di default, la radice ha inizialmente il focus. + rootNode.view.getViewTreeObserver().removeOnGlobalLayoutListener(this); //rimuove il listener per evitare che la funzione parta nuovamente + rootNode.Draw(); + + } + }); + } + @Override + public boolean onCreateOptionsMenu(Menu menu) { + // Inflate the menu; this adds items to the action bar if it is present. + getMenuInflater().inflate(R.menu.my, menu); + return true; + } + + @Override + public boolean onTouchEvent(MotionEvent event) { + // TODO Auto-generated method stub + scaleGestureDetector.onTouchEvent(event); + return true; + } + + + @Override + public boolean dispatchTouchEvent(MotionEvent event) { + super.dispatchTouchEvent(event); + return (scaleGestureDetector.onTouchEvent(event)); + } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + int id = item.getItemId(); + if(id==R.id.action_paste) //incolla sottoalbero + { + if (DrawActivity.copiedNode == null) //non ci sono nodi da copiare + return true; + else if (!checkHP(DrawActivity.copiedNode, DrawActivity.selectedNode)) //ipotesi incompatibili: impossibile incollare in questo punto + return true; + else { + Node tmp = duplicateNode(DrawActivity.copiedNode); //duplica il nodo copiato + DrawActivity.selectedNode.ruleName=tmp.ruleName; + DrawActivity.selectedNode.Children = new ArrayList(); + for (Node c:tmp.Children) + DrawActivity.selectedNode.addChild(c); //incolla il sottoalbero del nodo copiato nella posizione richiesta + DrawActivity.rootNode.Clean(); + DrawActivity.startDraw(); + } + } + else if(id==R.id.abandon) + { //abbandona esercizio e torna alla view con la lista degli esercizi + Intent i = new Intent(globalHP.getContext(), aggiornamento.class); + i.putExtra("user", user); + i.putExtra("pass", pass); + i.putExtra("sessionKey", sessionKey); + i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + globalHP.getContext().startActivity(i); + } + return true; + } + + + public boolean checkHP(Node source,Node target) //controlla se le ipotesi di source sono compatibili per una copia in target + { + boolean found=false; + if (!source.F.toString().equals(target.F.toString())) //se i nodi non hanno la stessa formula la copia è automaticamente impossibile + return false; + for (Hypothesis sourceHp:source.NodeHP) { + for (Hypothesis destHp : target.NodeHP) { + if (destHp.HP.toString().equals(sourceHp.HP.toString())) { //per ogni ipotesi nel nodo sorgente cerco se è disponibile nel nodo destinazione: in caso affermativo, proseguo il ciclo (found=true). + found = true; + break; + } + } + if (!found) + return false; + else found=false; + } + return true; + } + + public Node duplicateNode(Node src) //metodo di supporto che duplica un nodo + { + Node tmp=new Node(src.F); + tmp.addHPList(src.NodeHP); + tmp.ruleName=src.ruleName; + for (Node n:src.Children) { + tmp.addChild(duplicateNode(n)); + } + return tmp; + } + + public class simpleOnScaleGestureListener extends + ScaleGestureDetector.SimpleOnScaleGestureListener { + + @Override + public boolean onScale(ScaleGestureDetector detector) { + float factor=detector.getScaleFactor(); + if (textSize>65 && factor>1) //font troppo grande: impedisco aumento + return true; + if (textSize<15 && factor<1) //font troppo piccolo: impedisco riduzione + return true; + rootNode.Refactor(); //risetta i campi dell'albero a FIELD_UNSET + RelativeLayout.LayoutParams lp=new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); + DrawActivity.spaceSize=(DrawActivity.spaceSize*factor); + DrawActivity.textSize=(DrawActivity.textSize*factor); + int halfScreen=Math.round((v.widthPixels / 2)-rootNode.getBaseWidth()/2); + int leftSubTree=(Math.round(rootNode.getLeftOffset() - rootNode.getUpLine() / 2 + (rootNode.getBaseWidth() / 2)) + 40); + globalR.setPadding(0,0,(int)Math.max(rootNode.getRightOffset(),halfScreen),0); + lp.setMargins(Math.max(halfScreen,leftSubTree),0, 0, 0); + lp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, rootNode.view.getId()); + rootNode.view.setLayoutParams(lp); + rootNode.view.setTextSize(TypedValue.COMPLEX_UNIT_PX, textSize); + rootNode.view.setWidth(Math.round(rootNode.getLineWidth())); //setto la larghezza della view al contenuto della linea + rootNode.Resize(); //ricorsivamente sistema i fontsize, le larghezze e le posizioni delle view nell'albero + return true; + } + } + public static void finishedTree(Context context) { + if (!rootNode.isCorrect()) { + Toast.makeText(context, "Esercizio errato! Ricontrolla i passaggi fatti e riprova", Toast.LENGTH_LONG).show(); + } else { + long endTime = time(); + int second= (int) ((endTime-startTime)/1000); + int minute=second/60; + Toast.makeText(context, "Esercizio completato in " + Integer.toString(nmoves) + " mosse!", Toast.LENGTH_LONG).show(); + Toast.makeText(context, "Hai commesso " + Integer.toString(nerrors) + " errori!", Toast.LENGTH_LONG).show(); + Toast.makeText(context, "Numero nodi dell'albero: " + Integer.toString(rootNode.count()), Toast.LENGTH_LONG).show(); + Toast.makeText(context, "Tempo impiegato: " + Integer.toString(minute) + " minuti e " + Integer.toString(second-(minute*60)) + " secondi", Toast.LENGTH_LONG).show(); + //aggiungo l'esercizio al database + int voto=valutazione.voto(nomeEs,nmoves,second,rootNode.count(),nerrors); + personalDBHelper db = new personalDBHelper(context); + db.add(user, nomeEs, MD5.digest(nomeEs), 0.0, voto, 0); + nmoves = 0; + Intent i = new Intent(context, aggiornamento.class); + i.putExtra("user", user); + i.putExtra("pass", pass); + i.putExtra("sessionKey", sessionKey); + i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + context.startActivity(i); + } + } + public boolean populateTree() { + + rootNode = parser.root(nomeEs); + if(rootNode==null) + { + Toast.makeText(this, "Errore nell'apertura del file", Toast.LENGTH_LONG).show(); + Intent i = new Intent(this, aggiornamento.class); + i.putExtra("user", user); + i.putExtra("pass", pass); + i.putExtra("sessionKey", sessionKey); + i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + this.startActivity(i); + return false; + } + for (Hypothesis h:rootNode.NodeHP) + h.fromNode=rootNode; + return true; + } + public static long time() + { + java.util.Date date= new java.util.Date(); + Timestamp now=new Timestamp(date.getTime()); + return now.getTime(); + } + +} + diff --git a/mainActivity/src/com/example/furt/myapplication/EliminationRule.java b/mainActivity/src/com/example/furt/myapplication/EliminationRule.java new file mode 100755 index 0000000..7285a4a --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/EliminationRule.java @@ -0,0 +1,11 @@ +package com.example.furt.myapplication; + +import java.util.ArrayList; +import java.util.List; + +public interface EliminationRule +{ + public String getName(); + public Node createNodes(Formula F, askFormula ask); +} + diff --git a/mainActivity/src/com/example/furt/myapplication/FView.java b/mainActivity/src/com/example/furt/myapplication/FView.java new file mode 100755 index 0000000..479df78 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/FView.java @@ -0,0 +1,13 @@ +package com.example.furt.myapplication; + +public interface FView +{ + @Override + public String toString(); + public String toStringDeleted(); + String Draw(int priority); + public float size(); + public float height(); + public float sizeDeleted(); + +} diff --git a/mainActivity/src/com/example/furt/myapplication/Formula.java b/mainActivity/src/com/example/furt/myapplication/Formula.java new file mode 100755 index 0000000..4209b58 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/Formula.java @@ -0,0 +1,12 @@ +package com.example.furt.myapplication; + +import java.util.List; + +public interface Formula extends FView{ + public List introductionRules(); + public List EliminationRules(); + public boolean Fill(Formula F); + public boolean setCursor(); + public Formula duplicate(); +} + diff --git a/mainActivity/src/com/example/furt/myapplication/FormulaAnd.java b/mainActivity/src/com/example/furt/myapplication/FormulaAnd.java new file mode 100755 index 0000000..2c81ee9 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/FormulaAnd.java @@ -0,0 +1,74 @@ +package com.example.furt.myapplication; + +import java.util.ArrayList; +import java.util.List; + +public class FormulaAnd extends GenericFormula implements Formula +{ + Formula leftF; + Formula rightF; + int leftPriority; + int rightPriority; + FormulaAnd(Formula F1,Formula F2) + { + leftF=F1; + rightF=F2; + priority=15; + leftPriority=15; + rightPriority=16; + } + @Override + public String Draw(int p) + { + if (priority >= p) + return leftF.Draw(leftPriority)+"∧"+rightF.Draw(rightPriority); + else + return("(")+leftF.Draw(leftPriority)+"∧"+rightF.Draw(rightPriority)+")"; + } + + @Override + public List introductionRules() + { + List rules=new ArrayList(); + rules.addAll(super.introductionRules()); + RuleIntroduction andIntroduction=new RuleIntroduction("∧i",5); + Node Left=new Node(leftF); + Node Right=new Node(rightF); + Node thisNode=new Node(this); + thisNode.addChild(Left); + thisNode.addChild(Right); + andIntroduction.tempRule=thisNode; + rules.add(andIntroduction); + return rules; + } + public List EliminationRules() + { + List nodes=new ArrayList(); + nodes.add(new RuleAndElimination(this)); + return nodes; + } + + @Override + public boolean Fill(Formula Filler) { + if(leftF.toString().equals("_")) { + this.leftF = Filler; + return true; + } + else if(rightF.toString().equals("_")) { + this.rightF = Filler; + return true; + } + return leftF.Fill(Filler) || rightF.Fill(Filler); + } + + @Override + public boolean setCursor() { + return leftF.setCursor() || rightF.setCursor(); + } + + @Override + public Formula duplicate() { + return new FormulaAnd(leftF.duplicate(),rightF.duplicate()); + } +} + diff --git a/mainActivity/src/com/example/furt/myapplication/FormulaBOT.java b/mainActivity/src/com/example/furt/myapplication/FormulaBOT.java new file mode 100755 index 0000000..6103bd8 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/FormulaBOT.java @@ -0,0 +1,46 @@ +package com.example.furt.myapplication; + +import android.graphics.Paint; + +import java.util.ArrayList; +import java.util.List; + +public class FormulaBOT extends GenericFormula implements Formula{ + Paint p=new Paint(); + FormulaBOT() + { + priority=100; + } + + @Override + public String Draw(int p) + { + return "⊥"; + } + + public List introductionRules(){ + List nodes=new ArrayList(); + return nodes; + } + public List EliminationRules() + { + List nodes=new ArrayList(); + nodes.add(new RuleBotElimination(this)); + return nodes; + } + + @Override + public boolean Fill(Formula F) { + return false; + } + + @Override + public boolean setCursor() { + return false; + } + + @Override + public Formula duplicate() { + return new FormulaBOT(); + } +} diff --git a/mainActivity/src/com/example/furt/myapplication/FormulaImpl.java b/mainActivity/src/com/example/furt/myapplication/FormulaImpl.java new file mode 100755 index 0000000..9761a0e --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/FormulaImpl.java @@ -0,0 +1,71 @@ +package com.example.furt.myapplication; + +import java.util.ArrayList; +import java.util.List; + +public class FormulaImpl extends GenericFormula implements Formula +{ + Formula leftF; + Formula rightF; + int leftPriority; + int rightPriority; + FormulaImpl(Formula F1,Formula F2) + { + priority=10; + leftF=F1; + rightF=F2; + leftPriority=11; + rightPriority=10; + } + @Override + public String Draw(int p) + { + if (priority >= p) + return leftF.Draw(leftPriority)+"⇒"+rightF.Draw(rightPriority); + else + return("(")+leftF.Draw(leftPriority)+"⇒"+rightF.Draw(rightPriority)+")"; + } + + public List introductionRules(){ + List nodes=new ArrayList(); + nodes.addAll(super.introductionRules()); + RuleIntroduction implIntro=new RuleIntroduction("⇒i",10); + Node ImplN=new Node(rightF); + List implHP=new ArrayList(); + implHP.add(leftF); + ImplN.addHPFormula(implHP,true); + Node thisNode=new Node(this); + thisNode.addChild(ImplN); + implIntro.tempRule=thisNode; + nodes.add(implIntro); + return nodes; + } + public List EliminationRules() + { + List nodes=new ArrayList(); + nodes.add(new RuleImplElimination(this)); + return nodes; + } + @Override + public boolean Fill(Formula Filler) { + if(leftF.toString().equals("_")) { + this.leftF = Filler; + return true; + } + else if(rightF.toString().equals("_")) { + this.rightF = Filler; + return true; + } + return leftF.Fill(Filler) || rightF.Fill(Filler); + } + + @Override + public boolean setCursor() { + return leftF.setCursor() || rightF.setCursor(); + } + + @Override + public Formula duplicate() { + return new FormulaImpl(leftF.duplicate(),rightF.duplicate()); + } +} diff --git a/mainActivity/src/com/example/furt/myapplication/FormulaNot.java b/mainActivity/src/com/example/furt/myapplication/FormulaNot.java new file mode 100755 index 0000000..f8b0d37 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/FormulaNot.java @@ -0,0 +1,66 @@ +package com.example.furt.myapplication; + +import android.graphics.Paint; + +import java.util.ArrayList; +import java.util.List; + +public class FormulaNot extends GenericFormula implements Formula{ + Paint p=new Paint(); + Formula Operand; + int priority; + int argPriority; + FormulaNot(Formula F) + { + Operand=F; + priority=20; + argPriority=100; + } + @Override + public String Draw(int p) + { + if (priority >= p) + return "¬"+Operand.Draw(20); + else + return("¬("+Operand.Draw(20)+")"); + } + + public List introductionRules(){ + List nodes=new ArrayList(); + RuleIntroduction notIntro=new RuleIntroduction("¬i",4); + Node notN=new Node(new FormulaBOT()); + List notHP=new ArrayList(); + notHP.add(Operand); + notN.addHPFormula(notHP,true); + Node thisNode=new Node(this); + thisNode.addChild(notN); + notIntro.tempRule=thisNode; + nodes.add(notIntro); + return nodes; + } + public List EliminationRules() + { + List nodes=new ArrayList(); + nodes.add(new RuleNotElimination(this)); + return nodes; + } + + @Override + public boolean Fill(Formula Filler) { + if(Operand.toString().equals("_")) { + Operand = Filler; + return true; + } + return Operand.Fill(Filler); + } + + @Override + public boolean setCursor() { + return Operand.setCursor(); + } + + @Override + public Formula duplicate() { + return new FormulaNot(Operand.duplicate()); + } +} \ No newline at end of file diff --git a/mainActivity/src/com/example/furt/myapplication/FormulaOr.java b/mainActivity/src/com/example/furt/myapplication/FormulaOr.java new file mode 100755 index 0000000..4a1794d --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/FormulaOr.java @@ -0,0 +1,79 @@ +package com.example.furt.myapplication; + + +import java.util.ArrayList; +import java.util.List; + +public class FormulaOr extends GenericFormula implements Formula +{ + Formula leftF; + Formula rightF; + int leftPriority; + int rightPriority; + FormulaOr(Formula F1,Formula F2) + { + priority=13; + leftF=F1; + rightF=F2; + leftPriority=13; + rightPriority=14; + } + + @Override + public String Draw(int p) + { + if (priority >= p) + return leftF.Draw(leftPriority)+"∨"+rightF.Draw(rightPriority); + else + return("(")+leftF.Draw(leftPriority)+"∨"+rightF.Draw(rightPriority)+")"; + } + + public List introductionRules(){ + List nodes=new ArrayList(); + nodes.addAll(super.introductionRules()); + RuleIntroduction orIntroductionLeft=new RuleIntroduction("∨i(L)",6); + Node orLeft=new Node(leftF); + Node thisNodeL=new Node(this); + thisNodeL.addChild(orLeft); + orIntroductionLeft.tempRule=thisNodeL; + nodes.add(orIntroductionLeft); + RuleIntroduction orIntroductionRight=new RuleIntroduction("∨i(R)",5); + Node orRight=new Node(rightF); + Node thisNodeR=new Node(this); + thisNodeR.addChild(orRight); + orIntroductionRight.tempRule=thisNodeR; + nodes.add(orIntroductionRight); + return nodes; + } + + public List EliminationRules() + { + List nodes=new ArrayList(); + nodes.add(new RuleOrElimination(this)); + return nodes; + } + + @Override + public boolean Fill(Formula Filler) { + if(leftF.toString().equals("_")) { + this.leftF = Filler; + return true; + } + else if(rightF.toString().equals("_")) { + this.rightF = Filler; + return true; + } + return leftF.Fill(Filler) || rightF.Fill(Filler); + } + + @Override + public boolean setCursor() { + return leftF.setCursor() || rightF.setCursor(); + } + + @Override + public Formula duplicate() { + return new FormulaOr(leftF.duplicate(),rightF.duplicate()); + } +} + diff --git a/mainActivity/src/com/example/furt/myapplication/FormulaTOP.java b/mainActivity/src/com/example/furt/myapplication/FormulaTOP.java new file mode 100755 index 0000000..05cba71 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/FormulaTOP.java @@ -0,0 +1,42 @@ +package com.example.furt.myapplication; + +import java.util.ArrayList; +import java.util.List; + +public class FormulaTOP extends GenericFormula implements Formula{ + + FormulaTOP() + { + priority=100; + } + + @Override + public String Draw(int p){return "Ț";} + + public List introductionRules(){ + List nodes=new ArrayList(); + nodes.addAll(super.introductionRules()); + return nodes; + } + + @Override + public boolean Fill(Formula F) { + return false; + } + + @Override + public boolean setCursor() { + return false; + } + + @Override + public Formula duplicate() { + return new FormulaTOP(); + } + + public List eliminationRules(){ + List nodes=new ArrayList(); + return nodes; + } + +} diff --git a/mainActivity/src/com/example/furt/myapplication/GenericFormula.java b/mainActivity/src/com/example/furt/myapplication/GenericFormula.java new file mode 100755 index 0000000..5e063f5 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/GenericFormula.java @@ -0,0 +1,83 @@ +package com.example.furt.myapplication; + +import android.graphics.Paint; +import android.graphics.Rect; + +import java.util.ArrayList; +import java.util.List; + +public class GenericFormula implements Formula +{ + Paint p=new Paint(); + int priority; + public String Draw(int p) + { + return ""; + } + public String toString(){return Draw(0);} + public float size(){ + p.setTextSize(DrawActivity.textSize); + return p.measureText(toString())+(float)(p.measureText(toString())*0.20); + } + public float sizeDeleted() + { + p.setTextSize(DrawActivity.textSize); + return p.measureText(toStringDeleted())+(float)(p.measureText(toStringDeleted())*0.20); + } + public String toStringDeleted() + { + return "["+toString()+"]"; + } + public float height() + { + p.setTextSize(DrawActivity.textSize); + Rect bounds=new Rect(); + p.getTextBounds(toString(),0,toString().length(),bounds); + return (float)((bounds.height()+((float)0.20*bounds.height()))*1.5); + } + public List introductionRules(){ + List rules=new ArrayList(); + Node thisNode=new Node(this); + RuleIntroduction RAA=new RuleIntroduction("RAA",0); //R.A.A. + Node RAAnode=new Node(new FormulaBOT()); //Formula=Bottom + List RAAhp=new ArrayList(); //Tutte le ipotesi del nodo precedente + RAAhp.add(new FormulaNot(this)); //Più la negazione del nodo attuale + RAAnode.addHPFormula(RAAhp,true); + thisNode.addChild(RAAnode); + RAA.tempRule=thisNode; + rules.add(RAA); + /* + Node thisFakeNode=new Node(this); + RuleIntroduction fakeRAA=new RuleIntroduction("RAA",0,true); //fake R.A.A. + Node fakeRAAnode=new Node(new FormulaNot(this)); //Formula=!F + thisFakeNode.addChild(fakeRAAnode); + fakeRAA.tempRule=thisFakeNode; + rules.add(fakeRAA); + */ + return rules; + } + public List EliminationRules(){ + List nodes=new ArrayList(); + return nodes; + } + + @Override + public boolean Fill(Formula F) { + return false; + } + + @Override + public boolean setCursor() { + return false; + } + + @Override + public Formula duplicate() { + return null; + } + + @Override + public Object clone() throws CloneNotSupportedException { + return super.clone(); + } +} diff --git a/mainActivity/src/com/example/furt/myapplication/Hypothesis.java b/mainActivity/src/com/example/furt/myapplication/Hypothesis.java new file mode 100755 index 0000000..6a7d638 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/Hypothesis.java @@ -0,0 +1,14 @@ +package com.example.furt.myapplication; + +public class Hypothesis +{ + Formula HP; + boolean isDeleted; + Node fromNode; + Hypothesis(Formula F,boolean d) + { + HP=F; + isDeleted=d; + fromNode=null; + } +} \ No newline at end of file diff --git a/mainActivity/src/com/example/furt/myapplication/IntroductionRule.java b/mainActivity/src/com/example/furt/myapplication/IntroductionRule.java new file mode 100755 index 0000000..880ca1a --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/IntroductionRule.java @@ -0,0 +1,8 @@ +package com.example.furt.myapplication; + +public interface IntroductionRule +{ + int getPriority(); + String getName(); + public Node createNodes(askFormula ask); +} diff --git a/mainActivity/src/com/example/furt/myapplication/Literal.java b/mainActivity/src/com/example/furt/myapplication/Literal.java new file mode 100755 index 0000000..d129975 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/Literal.java @@ -0,0 +1,36 @@ +package com.example.furt.myapplication; + +import java.util.ArrayList; +import java.util.List; + +public class Literal extends GenericFormula implements Formula +{ + String L; + Literal(char c) + { + priority=100; + L=c+""; + } + @Override + public String Draw(int p){return L;} + + public List introductionRules(){ + List nodes=new ArrayList(); + nodes.addAll(super.introductionRules()); + return nodes; + } + + @Override + public boolean Fill(Formula F) { + return false; + } + + public boolean isCompatible(Node n) { + return true; + } + + @Override + public Formula duplicate() { + return new Literal(this.L.charAt(0)); + } +} diff --git a/mainActivity/src/com/example/furt/myapplication/LongHPClick.java b/mainActivity/src/com/example/furt/myapplication/LongHPClick.java new file mode 100755 index 0000000..fa59a8d --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/LongHPClick.java @@ -0,0 +1,26 @@ +package com.example.furt.myapplication; + +import android.graphics.Color; +import android.os.Handler; +import android.view.View; + +public class LongHPClick implements View.OnLongClickListener { + + Node n; + LongHPClick(Node node) + { + n=node; + } + @Override + public boolean onLongClick(View v) { + n.view.setTextColor(Color.BLUE); + final Handler handler = new Handler(); + handler.postDelayed(new Runnable() { + @Override + public void run() { + n.view.setTextColor(Color.BLACK); + } + }, 1000); + return true; + } +} diff --git a/mainActivity/src/com/example/furt/myapplication/MD5.java b/mainActivity/src/com/example/furt/myapplication/MD5.java new file mode 100755 index 0000000..8f7bdc0 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/MD5.java @@ -0,0 +1,65 @@ +package com.example.furt.myapplication; + +import android.os.Environment; + +import java.io.FileInputStream; +import java.io.InputStream; +import java.security.MessageDigest; + + +public class MD5 { + + MD5(){} + + /*public static String digest(String fileName) throws NoSuchAlgorithmException, IOException + { + + MessageDigest md = MessageDigest.getInstance("MD5"); + return getDigest(new FileInputStream("/var/www/html/esercizi/"+fileName), md, 2048); + } + + public static String getDigest(InputStream is, MessageDigest md, int byteArraySize) throws NoSuchAlgorithmException, IOException + { + md.reset(); + byte[] bytes = new byte[byteArraySize]; + int numBytes; + while ((numBytes = is.read(bytes)) != -1) { + md.update(bytes, 0, numBytes); + } + byte[] digest = md.digest(); + String result = new String(Hex.encodeHex(digest)); + return result; + }*/ + public static String digest(String filePath) { + InputStream inputStream = null; + try { + inputStream = new FileInputStream(Environment.getExternalStorageDirectory()+"/tesiEs/"+filePath); + byte[] buffer = new byte[1024]; + MessageDigest digest = MessageDigest.getInstance("MD5"); + int numRead = 0; + while (numRead != -1) { + numRead = inputStream.read(buffer); + if (numRead > 0) + digest.update(buffer, 0, numRead); + } + byte [] md5Bytes = digest.digest(); + return convertHashToString(md5Bytes); + } catch (Exception e) { + return null; + } finally { + if (inputStream != null) { + try { + inputStream.close(); + } catch (Exception e) { } + } + } + } + + private static String convertHashToString(byte[] md5Bytes) { + String returnVal = ""; + for (int i = 0; i < md5Bytes.length; i++) { + returnVal += Integer.toString(( md5Bytes[i] & 0xff ) + 0x100, 16).substring(1); + } + return returnVal; + } +} diff --git a/mainActivity/src/com/example/furt/myapplication/MyService.java b/mainActivity/src/com/example/furt/myapplication/MyService.java new file mode 100755 index 0000000..acac481 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/MyService.java @@ -0,0 +1,139 @@ +package com.example.furt.myapplication; + +import android.app.Service; +import android.content.Context; +import android.content.Intent; +import android.net.Uri; +import android.os.IBinder; +import android.util.Log; + +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.io.OutputStream; +import java.io.OutputStreamWriter; +import java.security.KeyStore; +import java.security.KeyStoreException; +import java.security.NoSuchAlgorithmException; +import java.security.cert.CertificateException; +import java.util.Scanner; + +import javax.net.ssl.SSLSocket; +import javax.net.ssl.SSLSocketFactory; + +public class MyService extends Service { + + @Override + public int onStartCommand(final Intent intent, int flags, int startId) + { + final Context context=getApplicationContext(); + /*System.setProperty("javax.net.ssl.trustStore", "mysrvkeystore"); + //Log.e("onStartCommand",""+R.raw.mysrvkeystore); + System.setProperty("javax.net.ssl.trustStorePassword", "123456"); + + + + String inviotmp = intent.getStringExtra("code") + intent.getStringExtra("varInvio"); + + if(intent.getStringExtra("code").charAt(0)!='2') + inviotmp = inviotmp + intent.getStringExtra("varInvio2"); + final String invio=inviotmp; + final Thread readthread; + readthread = new Thread(new Runnable() { + public void run() { + SSLSocketFactory sslsocketfactory = (SSLSocketFactory) SSLSocketFactory.getDefault(); + //Socket socket = null; + SSLSocket socket = null; + try { + int port = 25000; + // socket = new Socket("10.0.0.2", port); + socket=(SSLSocket) sslsocketfactory.createSocket("10.0.0.2", port); //Send the message to the server + OutputStream os = socket.getOutputStream(); + OutputStreamWriter osw = new OutputStreamWriter(os); + BufferedWriter bw = new BufferedWriter(osw); + + //String number = "2"; + + String sendMessage = invio+"\n"; + bw.write(sendMessage+"\n"); + bw.flush(); + System.out.println("Message sent to the server : " + sendMessage); + + //Get the return message from the server + InputStream is = socket.getInputStream(); + InputStreamReader isr = new InputStreamReader(is); + BufferedReader br = new BufferedReader(isr); + String message; + message = br.readLine(); + System.out.println("Message received from the server : " + message); + } catch (Exception exception) { + exception.printStackTrace(); + } finally { + //Closing the socket + try { + socket.close(); + } catch (Exception e) { + e.printStackTrace(); + } + } + } + }); + + readthread.start();*/ + final Thread readthread; + readthread = new Thread(new Runnable() { + public void run() { + InputStream certificato = getResources().openRawResource(R.raw.keystore); + KeyStore trustStore = null; + try + { + trustStore = KeyStore.getInstance("BKS"); + trustStore.load(certificato, "123stella".toCharArray()); + SSLSocketFactory fs = (SSLSocketFactory) SSLSocketFactory.getDefault(); + SSLSocket socket = (SSLSocket) fs.createSocket("10.0.0.2", 25000); + Log.e("", "miracolo"); + + InputStream inputstream = System.in; + InputStreamReader inputstreamreader = new InputStreamReader(inputstream); + BufferedReader bufferedreader = new BufferedReader(inputstreamreader); + + OutputStream os = socket.getOutputStream(); + OutputStreamWriter osw = new OutputStreamWriter(os); + BufferedWriter bw = new BufferedWriter(osw); + + String sendMessage ="brova"; + bw.write(sendMessage+"\n"); + bw.flush(); + + System.out.println("Message sent to the server : " + sendMessage); + } + catch (KeyStoreException e) + { + e.printStackTrace(); + } + catch (CertificateException e) + { + e.printStackTrace(); + } + catch (NoSuchAlgorithmException e) + { + e.printStackTrace(); + } + catch (IOException e) { + e.printStackTrace(); + } + } + }); + readthread.start(); + return 0; + } + + @Override + public IBinder onBind(Intent intent) { + return null; + } +} diff --git a/mainActivity/src/com/example/furt/myapplication/Node.java b/mainActivity/src/com/example/furt/myapplication/Node.java new file mode 100755 index 0000000..9b724ff --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/Node.java @@ -0,0 +1,439 @@ +package com.example.furt.myapplication; + +import android.graphics.Color; +import android.util.TypedValue; +import android.view.Gravity; +import android.view.View; +import android.view.ViewGroup; +import android.view.ViewTreeObserver; +import android.widget.RelativeLayout; +import android.widget.TextView; + +import java.util.ArrayList; +import java.util.List; + + +public class Node implements Tree { + + static int FIELD_UNSET = -1; + static int OPEN=0; + static int FAKE=1; + static int CLOSED=2; + static int FAKE_CLOSED=3; + static int CANCELED=4; + static int FAKE_CANCELED=5; + + Formula F; //formula legata al nodo + String ruleName; //nome della regola associata a questo nodo + List Children = new ArrayList(); //Nodi figli + List NodeHP = new ArrayList(); //ipotesi associate + Node Father; //puntatore al padre + View.OnClickListener handler; //touchHandler per far comparire il pop-up delle regole + boolean hasFocus; //indica se questo nodo è quello selezionato + int status; //stato del nodo (chiuso, aperto,fake...) + RelativeLayout global; //layout in cui si trova l'albero + BorderedTextView view; //view contenente questo oggetto + TextView ruleView; //view contenente l'intestazione della regola + + float baseLine; + float leftOffset; + float rightOffset; + float maxWidth; + + Node(Formula F) { + this.F = F; + view = null; + handler = null; + ruleName=""; + Father = null; + status=OPEN; + hasFocus = false; + leftOffset = 0; + rightOffset = 0; + baseLine = getBaseWidth(); + maxWidth = baseLine; + } + + /**************SetView**************+*****/ + /*****************************************/ + /*******Setta la TextView del node ******/ + /** e il layout in cui deve comparire ***/ + /*****************************************/ + + public void setView(BorderedTextView t,RelativeLayout r) { + view = t; + ruleView =new TextView(t.getContext()); + global=r; + } + + + /**************Count****************+*****/ + /*****************************************/ + /*******Restituisce il numero di ******/ + /*************nodi dell'albero ***********/ + /*****************************************/ + + int count() + { + int ris=1; + for (Node n:Children) + ris+=n.count(); + return ris; + } + + public void addHPFormula(ListList,boolean deleted) { + loop:for (Formula newHp:List) { + for (Hypothesis oldHp: NodeHP) { + if (oldHp.HP.toString().equals(newHp.toString())) { + continue loop; + } + } + NodeHP.add(new Hypothesis(newHp, deleted)); + } + } + + public void addHPList(ListList) { + loop:for (Hypothesis newHp:List) { + for (Hypothesis oldHp: NodeHP) { + if (oldHp.HP.toString().equals(newHp.HP.toString())) { + continue loop; + } + } + Hypothesis copyHP=new Hypothesis(newHp.HP, newHp.isDeleted); + copyHP.fromNode=newHp.fromNode; + NodeHP.add(copyHP); + } + } + + public boolean searchFocus(Node caller) + { + if (Children.size()==0) //caso base: controllo se il focus può essere su di me + { + if (status!=OPEN && status!=FAKE) //nodo chiuso: il focus non può essere su di me + return false; + hasFocus=true; //posso assumere il focus + if (handler!=null) + handler.onClick(view); + return true; + } + //passo induttivo: vado su tutti i miei figli, poi su mio padre. Termino se il padre è null. + for (Node n:Children) { + if (caller != null) + if (n == caller) //per ogni figlio diverso dal chiamante + { + continue; + } + if(n.searchFocus(null)) + return true; + } + if (caller==null) //ero stato chiamato da mio padre: è inutile richiamarlo + return false; + else if (Father==null) + return false; //padre null: l'albero è dimostrato e non ci sono nodi a cui dare il focus. + else + return Father.searchFocus(this); //propaga il searchFocus sul padre + } + public void addChild(Node N) { + N.Father = this; + Children.add(N); + Node tmp=Father; + baseLine=FIELD_UNSET; + maxWidth=FIELD_UNSET; + leftOffset=FIELD_UNSET; + rightOffset=FIELD_UNSET; + while (tmp!=null) + { + tmp.baseLine=FIELD_UNSET; + tmp.leftOffset=FIELD_UNSET; + tmp.rightOffset=FIELD_UNSET; + tmp.maxWidth=FIELD_UNSET; + tmp=tmp.Father; + } + } + + public float getBaseWidth() { + return F.size(); + } + + public float getMaxWidth() //ritorna la larghezza massima del sottoalbero + { + if (maxWidth!=FIELD_UNSET) + return maxWidth; + else + maxWidth=getLeftOffset()+getBaseWidth()+getRightOffset(); + return (maxWidth); + } + + public float getLineWidth() + { + if (baseLine!=FIELD_UNSET) + return baseLine; + else + { + float spaceSize = DrawActivity.spaceSize; + if (Children.size() == 0) + return (getBaseWidth()); + int res = 0; + for (Node n:Children) + res += (n.getMaxWidth()) + spaceSize; + res -= spaceSize; + res -= Children.get(0).getLeftOffset(); + res -= Children.get(Children.size() - 1).getRightOffset(); + baseLine=Math.max(res,getBaseWidth()); + return baseLine; + } + } + public float getUpLine() + { + float spaceSize= DrawActivity.spaceSize; + if (Children.size()==0) + return(getBaseWidth()); + int res=0; + for(Node n:Children) + res+=(n.getMaxWidth())+spaceSize; + res-=spaceSize; + res-=Children.get(0).getLeftOffset(); + res-=Children.get(Children.size()-1).getRightOffset(); + return res; + } + public float getLeftOffset() { + if (leftOffset != FIELD_UNSET) { + return leftOffset; + } + else { + if (Children.size() == 0) //foglia + leftOffset=0; + else + leftOffset=Math.max(Children.get(0).getLeftOffset() + ((getUpLine() - getBaseWidth()) / 2),0); + return leftOffset; + } + } + + public float getMaxHeight() + { + float baseRes=F.height(); + float res=baseRes; + for (Node n:Children) + { + float tempH=n.getMaxHeight()+baseRes; + if(tempH>res) + res=tempH; + } + return res; + } + public float getRightOffset() + { + if (rightOffset!=FIELD_UNSET) + return rightOffset; + else { + if (Children.size() == 0) //foglia + rightOffset=0; + else + rightOffset=Math.max(Children.get(Children.size() - 1).getRightOffset() + ((getUpLine() - getBaseWidth()) / 2),0); + return rightOffset; + } + } + void Refactor() + { + baseLine=FIELD_UNSET; + leftOffset=FIELD_UNSET; + rightOffset=FIELD_UNSET; + maxWidth=FIELD_UNSET; + for(Node n:Children) + n.Refactor(); + } + + void Resize() + { + int i; + float interval=0; //intervallo di spazio da sommare nella creazione dei figli + float spaceSize= DrawActivity.spaceSize; + int childNo=Children.size(); + if (childNo!=0) + { + + ruleView.setText(ruleName); + ruleView.setTextSize(TypedValue.COMPLEX_UNIT_PX, DrawActivity.textSize / 2); + RelativeLayout.LayoutParams intlp=new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); + intlp.addRule(RelativeLayout.RIGHT_OF,view.getId()); + int sum=0; + sum+=F.height(); + Node tmp=Father; + while (tmp!=null) + { + sum+=tmp.F.height(); + tmp=tmp.Father; + } + intlp.setMargins(0,0,0,sum); + intlp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); + ruleView.setLayoutParams(intlp); + } + for (i=0;igetUpLine()) + leftPos+=((getLineWidth()-getUpLine())/2); + lp.setMargins(Math.round(leftPos), 0, 0, 0); + childView.setLeft(Math.round(leftPos)); + } + else { + lp.setMargins(Math.round(view.getLeft() + interval), 0, 0, 0); + childView.setLeft(Math.round(view.getLeft() + interval)); + } + childView.setLayoutParams(lp); + childView.setTextSize(TypedValue.COMPLEX_UNIT_PX, DrawActivity.textSize); + + if(newChild.status==CANCELED || newChild.status==FAKE_CANCELED) + childView.setWidth((int) ((newChild.F.sizeDeleted()))); + else + childView.setWidth(Math.round(newChild.getLineWidth())); + + newChild.Resize(); + + if (i!=childNo-1) //l'ultimo figlio non ha intervalli + { + float leftOverflow=(Children.get(i+1).getLineWidth()-Children.get(i+1).getBaseWidth())/2; + interval += (newChild.getBaseWidth()+newChild.getRightOffset()+Children.get(i+1).getLeftOffset()-(leftOverflow)); + interval+=spaceSize; + if (i!=0) //devo sommare anche il leftOverflow del nuovo figlio + interval+=newChild.getLeftOffset(); + } + + } + + } + + public int treeHeight() + { + int res=0,tmp; + for (Node n:Children) + { + tmp=n.treeHeight(); + if (tmp>res) + res=tmp; + } + return res+1; + } + public boolean isCorrect() + { + if (status==FAKE || status==FAKE_CANCELED || status==FAKE_CLOSED) + return false; + else for (Node n:Children) + if (!n.isCorrect()) + return false; + return true; + + } + public void Clean() + { + global.removeAllViews(); + } + + public void Draw() + { + int i; + float interval=0; //intervallo di spazio da sommare nella creazione dei figli + float spaceSize= DrawActivity.spaceSize; + int childNo=Children.size(); + if (childNo==0) //foglia: possibile ramo dimostrato + { + view.setBorders(null); //le foglie non hanno overline + if (status!=OPEN && status!=FAKE) { //nodo chiuso + view.setTextColor(Color.GRAY); + if (hasFocus) //avevo il focus: provo a darlo ad uno dei miei fratelli + { + if (!(Father.searchFocus(this))) { + DrawActivity.finishedTree(view.getContext()); + return; + } + hasFocus = false; + } + if (status==CANCELED || status==FAKE_CANCELED) { //nodo cancellato + view.setWidth((int) F.sizeDeleted()); + view.setText("[" + view.getText() + "]"); + view.setOnClickListener(null); //rimuove eventuali listener per evitare il proseguimento dell'albero + } + return; + } + if (hasFocus && DrawActivity.selectedNode!=this) + handler.onClick(view); + else if (hasFocus) //hasFocus: must be colored red anyway + view.setTextColor(Color.RED); + return; + } + + ruleView.setText(ruleName); + ruleView.setTextSize(TypedValue.COMPLEX_UNIT_PX, DrawActivity.textSize / 2); + RelativeLayout.LayoutParams intlp=new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); + intlp.addRule(RelativeLayout.RIGHT_OF,view.getId()); + int sum=0; + sum+=F.height(); + Node tmp=Father; + while (tmp!=null) + { + sum+=tmp.F.height(); + tmp=tmp.Father; + } + intlp.setMargins(0,0,0,sum); + intlp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); + ruleView.setLayoutParams(intlp); + global.addView(ruleView); + + ///////////////// + + + hasFocus=false; + for (i=0;igetUpLine()) + leftPos+=((getLineWidth()-getUpLine())/2); + + lp.setMargins(Math.round(leftPos), 0, 0, 0); + childView.setLeft(Math.round(leftPos)); + } + else { + lp.setMargins(Math.round(view.getLeft() + interval), 0, 0, 0); + childView.setLeft(Math.round(view.getLeft() + interval)); + } + childView.setLayoutParams(lp); + childView.setId(DrawActivity.globalId++); + childView.setText(newChild.F.toString()); + childView.setTextSize(TypedValue.COMPLEX_UNIT_PX, DrawActivity.textSize); + childView.setGravity(Gravity.CENTER); //formula al centro della sua overline + childView.setWidth(Math.round(newChild.getLineWidth())); + global.addView(childView); + childView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { + @Override + public void onGlobalLayout() { + newChild.setView(childView,global); + if(newChild.handler==null) + newChild.handler=new touchnodeHandler(newChild); + newChild.view.setOnClickListener(newChild.handler); + childView.getViewTreeObserver().removeOnGlobalLayoutListener(this); + newChild.Draw(); + } + }); + if (i!=childNo-1) //l'ultimo figlio non ha intervalli + { + float leftOverflow=Math.max((Children.get(i+1).getLineWidth()-Children.get(i+1).getBaseWidth())/2,0); + interval += (newChild.getBaseWidth()+newChild.getRightOffset()+Children.get(i+1).getLeftOffset()-(leftOverflow)); + interval+=spaceSize; + if (i!=0) //devo sommare anche il leftOverflow del nuovo figlio + interval+=newChild.getLeftOffset(); + } + } + } + +} \ No newline at end of file diff --git a/mainActivity/src/com/example/furt/myapplication/RuleAndElimination.java b/mainActivity/src/com/example/furt/myapplication/RuleAndElimination.java new file mode 100755 index 0000000..5b2c5d4 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/RuleAndElimination.java @@ -0,0 +1,43 @@ +package com.example.furt.myapplication; + +import java.util.ArrayList; +import java.util.List; +public class RuleAndElimination implements EliminationRule +{ + String ruleName; + public String getName() + { + return ruleName; + } + FormulaAnd Fn; + RuleAndElimination(FormulaAnd F){ + Fn=F; + ruleName="∧e"; + } + public Node createNodes(Formula F,askFormula ask) + { + Formula C; + if (F==null) + C=ask.Ask(); + else + C=F; + Node cNode=new Node(C); + if ((C.toString().equals(Fn.leftF.toString())) || (C.toString().equals(Fn.rightF.toString()))) //I can return leftAnd rule or rightAnd rule + { + cNode.addChild(new Node(Fn)); + return cNode; + } + Node elNode=new Node(Fn); + List HP=new ArrayList(); + HP.add(Fn.leftF); + HP.add(Fn.rightF); + cNode.addHPFormula(HP,true); + Node rNode=new Node(C); + rNode.addChild(elNode); + rNode.addChild(cNode); + rNode.ruleName=ruleName; + return rNode; + } +} + + diff --git a/mainActivity/src/com/example/furt/myapplication/RuleBotElimination.java b/mainActivity/src/com/example/furt/myapplication/RuleBotElimination.java new file mode 100755 index 0000000..83a54fd --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/RuleBotElimination.java @@ -0,0 +1,25 @@ +package com.example.furt.myapplication; + +public class RuleBotElimination implements EliminationRule +{ + String ruleName; + public String getName() + { + return ruleName; + } + FormulaBOT Fn; + RuleBotElimination(FormulaBOT F) + { + Fn=F; + ruleName="⊥e"; + } + public Node createNodes(Formula F,askFormula ask) + { + Formula C=ask.Ask(); + Node elNode=new Node(Fn); + Node rNode=new Node(C); + rNode.addChild(elNode); + rNode.ruleName=ruleName; + return rNode; + } +} \ No newline at end of file diff --git a/mainActivity/src/com/example/furt/myapplication/RuleDialog.java b/mainActivity/src/com/example/furt/myapplication/RuleDialog.java new file mode 100755 index 0000000..6bcd7bb --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/RuleDialog.java @@ -0,0 +1,131 @@ +package com.example.furt.myapplication; + +import android.app.AlertDialog; +import android.app.Dialog; +import android.app.DialogFragment; +import android.content.DialogInterface; +import android.os.Bundle; +import android.util.TypedValue; +import android.view.Gravity; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.view.ViewTreeObserver; +import android.widget.RelativeLayout; + +import java.util.ArrayList; +import java.util.List; + +public class RuleDialog extends DialogFragment { + List rules; + static Node selectedRule; + boolean showAllRules; + public RuleDialog(List r) + { + selectedRule=null; + rules=new ArrayList(); + rules.addAll(r); + showAllRules=false; + } + @Override + public Dialog onCreateDialog(final Bundle savedInstanceState) { + // Use the Builder class for convenient dialog construction + AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); + LayoutInflater inflater=getActivity().getLayoutInflater(); + View view=inflater.inflate(R.layout.ruledialog,null); + RelativeLayout layout=(RelativeLayout)((ViewGroup)((ViewGroup)view).getChildAt(0)).getChildAt(0); + int ruleInterval=50; + int i=0; + for (i=0;i HP1=new ArrayList(); + List HP2=new ArrayList(); + HP1.add(Fn.leftF); + HP2.add(Fn.rightF); + c1Node.addHPFormula(HP1,true); + c2Node.addHPFormula(HP2,true); + Node rNode=new Node(C); + rNode.addChild(elNode); + rNode.addChild(c1Node); + rNode.addChild(c2Node); + rNode.ruleName=ruleName; + return rNode; + } +} diff --git a/mainActivity/src/com/example/furt/myapplication/ServerData.java b/mainActivity/src/com/example/furt/myapplication/ServerData.java new file mode 100755 index 0000000..2466f27 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/ServerData.java @@ -0,0 +1,40 @@ +package com.example.furt.myapplication; + +import android.os.Parcel; +import android.os.Parcelable; + +import java.util.ArrayList; +import java.util.List; + +// simple class that just has one member property as an example +public class ServerData implements Parcelable { + private static List L; + + ServerData(List List) + { + L=List; + } + /* everything below here is for implementing Parcelable */ + + // 99.9% of the time you can just ignore this + public int describeContents() { + return 0; + } + + // write your object's data to the passed-in Parcel + public void writeToParcel(Parcel out, int flags) { + out.writeList(L); + } + + // this is used to regenerate your object. All Parcelables must have a CREATOR that implements these two methods + public static final Creator CREATOR = new Creator() { + public ServerData createFromParcel(Parcel in) { + return new ServerData(L); + } + + public ServerData[] newArray(int size) { + return new ServerData[size]; + } + }; + +} diff --git a/mainActivity/src/com/example/furt/myapplication/Tree.java b/mainActivity/src/com/example/furt/myapplication/Tree.java new file mode 100755 index 0000000..87c2b28 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/Tree.java @@ -0,0 +1,12 @@ +package com.example.furt.myapplication; + +public interface Tree +{ + float getBaseWidth(); + float getMaxWidth(); + float getLineWidth(); + float getUpLine(); + float getLeftOffset() ; + float getRightOffset(); + void Draw(); +} diff --git a/mainActivity/src/com/example/furt/myapplication/TwoDScrollView.java b/mainActivity/src/com/example/furt/myapplication/TwoDScrollView.java new file mode 100755 index 0000000..8108428 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/TwoDScrollView.java @@ -0,0 +1,1129 @@ +package com.example.furt.myapplication; + +import android.content.Context; +import android.graphics.Rect; +import android.util.AttributeSet; +import android.view.FocusFinder; +import android.view.KeyEvent; +import android.view.MotionEvent; +import android.view.VelocityTracker; +import android.view.View; +import android.view.ViewConfiguration; +import android.view.ViewGroup; +import android.view.ViewParent; +import android.view.animation.AnimationUtils; +import android.widget.FrameLayout; +import android.widget.Scroller; + +import java.util.List; + + +/** + * Copyright (C) 2006 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * +* + * Revised 5/19/2010 by GORGES + * Now supports two-dimensional view scrolling + * http://GORGES.us + */ + +/** + * Layout container for a view hierarchy that can be scrolled by the user, + * allowing it to be larger than the physical display. A TwoDScrollView + * is a {@link android.widget.FrameLayout}, meaning you should place one child in it + * containing the entire contents to scroll; this child may itself be a layout + * manager with a complex hierarchy of objects. A child that is often used + * is a {@link android.widget.LinearLayout} in a vertical orientation, presenting a vertical + * array of top-level items that the user can scroll through. + * + *

    The {@link android.widget.TextView} class also + * takes care of its own scrolling, so does not require a TwoDScrollView, but + * using the two together is possible to achieve the effect of a text view + * within a larger container. + */ + +public class TwoDScrollView extends FrameLayout { + static final int ANIMATED_SCROLL_GAP = 250; + static final float MAX_SCROLL_FACTOR = 0.5f; + + private long mLastScroll; + + private final Rect mTempRect = new Rect(); + private Scroller mScroller; + + /* + * Flag to indicate that we are moving focus ourselves. This is so the + * code that watches for focus changes initiated outside this TwoDScrollView + * knows that it does not have to do anything. + */ + private boolean mTwoDScrollViewMovedFocus; + + /* + * Position of the last motion event. + */ + private float mLastMotionY; + private float mLastMotionX; + + /* + * True when the layout has changed but the traversal has not come through yet. + * Ideally the view hierarchy would keep track of this for us. + */ + private boolean mIsLayoutDirty = true; + + /* + * The child to give focus to in the event that a child has requested focus while the + * layout is dirty. This prevents the scroll from being wrong if the child has not been + * laid out before requesting focus. + */ + private View mChildToScrollTo = null; + + /* + * True if the user is currently dragging this TwoDScrollView around. This is + * not the same as 'is being flinged', which can be checked by + * mScroller.isFinished() (flinging begins when the user lifts his finger). + */ + private boolean mIsBeingDragged = false; + + /* + * Determines speed during touch scrolling + */ + private VelocityTracker mVelocityTracker; + + /* + * Whether arrow scrolling is animated. + */ + private int mTouchSlop; + private int mMinimumVelocity; + private int mMaximumVelocity; + + public TwoDScrollView(Context context) { + super(context); + initTwoDScrollView(); + } + + public TwoDScrollView(Context context, AttributeSet attrs) { + super(context, attrs); + initTwoDScrollView(); + } + + public TwoDScrollView(Context context, AttributeSet attrs, int defStyle) { + super(context, attrs, defStyle); + initTwoDScrollView(); + } + + @Override + protected float getTopFadingEdgeStrength() { + if (getChildCount() == 0) { + return 0.0f; + } + final int length = getVerticalFadingEdgeLength(); + if (getScrollY() < length) { + return getScrollY() / (float) length; + } + return 1.0f; + } + + @Override + protected float getBottomFadingEdgeStrength() { + if (getChildCount() == 0) { + return 0.0f; + } + final int length = getVerticalFadingEdgeLength(); + final int bottomEdge = getHeight() - getPaddingBottom(); + final int span = getChildAt(0).getBottom() - getScrollY() - bottomEdge; + if (span < length) { + return span / (float) length; + } + return 1.0f; + } + + @Override + protected float getLeftFadingEdgeStrength() { + if (getChildCount() == 0) { + return 0.0f; + } + final int length = getHorizontalFadingEdgeLength(); + if (getScrollX() < length) { + return getScrollX() / (float) length; + } + return 1.0f; + } + + @Override + protected float getRightFadingEdgeStrength() { + if (getChildCount() == 0) { + return 0.0f; + } + final int length = getHorizontalFadingEdgeLength(); + final int rightEdge = getWidth() - getPaddingRight(); + final int span = getChildAt(0).getRight() - getScrollX() - rightEdge; + if (span < length) { + return span / (float) length; + } + return 1.0f; + } + + /** + * @return The maximum amount this scroll view will scroll in response to + * an arrow event. + */ + public int getMaxScrollAmountVertical() { + return (int) (MAX_SCROLL_FACTOR * getHeight()); + } + public int getMaxScrollAmountHorizontal() { + return (int) (MAX_SCROLL_FACTOR * getWidth()); + } + + private void initTwoDScrollView() { + mScroller = new Scroller(getContext()); + setFocusable(true); + setDescendantFocusability(FOCUS_AFTER_DESCENDANTS); + setWillNotDraw(false); + final ViewConfiguration configuration = ViewConfiguration.get(getContext()); + mTouchSlop = configuration.getScaledTouchSlop(); + mMinimumVelocity = configuration.getScaledMinimumFlingVelocity(); + mMaximumVelocity = configuration.getScaledMaximumFlingVelocity(); + } + + @Override + public void addView(View child) { + if (getChildCount() > 0) { + throw new IllegalStateException("TwoDScrollView can host only one direct child"); + } + super.addView(child); + } + + @Override + public void addView(View child, int index) { + if (getChildCount() > 0) { + throw new IllegalStateException("TwoDScrollView can host only one direct child"); + } + super.addView(child, index); + } + + @Override + public void addView(View child, ViewGroup.LayoutParams params) { + if (getChildCount() > 0) { + throw new IllegalStateException("TwoDScrollView can host only one direct child"); + } + super.addView(child, params); + } + + @Override + public void addView(View child, int index, ViewGroup.LayoutParams params) { + if (getChildCount() > 0) { + throw new IllegalStateException("TwoDScrollView can host only one direct child"); + } + super.addView(child, index, params); + } + + /** + * @return Returns true this TwoDScrollView can be scrolled + */ + private boolean canScroll() { + View child = getChildAt(0); + if (child != null) { + int childHeight = child.getHeight(); + int childWidth = child.getWidth(); + return (getHeight() < childHeight + getPaddingTop() + getPaddingBottom()) || + (getWidth() < childWidth + getPaddingLeft() + getPaddingRight()); + } + return false; + } + + @Override + public boolean dispatchKeyEvent(KeyEvent event) { + // Let the focused view and/or our descendants get the key first + boolean handled = super.dispatchKeyEvent(event); + if (handled) { + return true; + } + return executeKeyEvent(event); + } + + /** + * You can call this function yourself to have the scroll view perform + * scrolling from a key event, just as if the event had been dispatched to + * it by the view hierarchy. + * + * @param event The key event to execute. + * @return Return true if the event was handled, else false. + */ + public boolean executeKeyEvent(KeyEvent event) { + mTempRect.setEmpty(); + if (!canScroll()) { + if (isFocused()) { + View currentFocused = findFocus(); + if (currentFocused == this) currentFocused = null; + View nextFocused = FocusFinder.getInstance().findNextFocus(this, currentFocused, View.FOCUS_DOWN); + return nextFocused != null && nextFocused != this && nextFocused.requestFocus(View.FOCUS_DOWN); + } + return false; + } + boolean handled = false; + if (event.getAction() == KeyEvent.ACTION_DOWN) { + switch (event.getKeyCode()) { + case KeyEvent.KEYCODE_DPAD_UP: + if (!event.isAltPressed()) { + handled = arrowScroll(View.FOCUS_UP, false); + } else { + handled = fullScroll(View.FOCUS_UP, false); + } + break; + case KeyEvent.KEYCODE_DPAD_DOWN: + if (!event.isAltPressed()) { + handled = arrowScroll(View.FOCUS_DOWN, false); + } else { + handled = fullScroll(View.FOCUS_DOWN, false); + } + break; + case KeyEvent.KEYCODE_DPAD_LEFT: + if (!event.isAltPressed()) { + handled = arrowScroll(View.FOCUS_LEFT, true); + } else { + handled = fullScroll(View.FOCUS_LEFT, true); + } + break; + case KeyEvent.KEYCODE_DPAD_RIGHT: + if (!event.isAltPressed()) { + handled = arrowScroll(View.FOCUS_RIGHT, true); + } else { + handled = fullScroll(View.FOCUS_RIGHT, true); + } + break; + } + } + return handled; + } + + @Override + public boolean onInterceptTouchEvent(MotionEvent ev) { + /* + * This method JUST determines whether we want to intercept the motion. + * If we return true, onMotionEvent will be called and we do the actual + * scrolling there. + * + * Shortcut the most recurring case: the user is in the dragging + * state and he is moving his finger. We want to intercept this + * motion. + */ + final int action = ev.getAction(); + if ((action == MotionEvent.ACTION_MOVE) && (mIsBeingDragged)) { + return true; + } + if (!canScroll()) { + mIsBeingDragged = false; + return false; + } + final float y = ev.getY(); + final float x = ev.getX(); + switch (action) { + case MotionEvent.ACTION_MOVE: + /* + * mIsBeingDragged == false, otherwise the shortcut would have caught it. Check + * whether the user has moved far enough from his original down touch. + */ + /* + * Locally do absolute value. mLastMotionY is set to the y value + * of the down event. + */ + final int yDiff = (int) Math.abs(y - mLastMotionY); + final int xDiff = (int) Math.abs(x - mLastMotionX); + if (yDiff > mTouchSlop || xDiff > mTouchSlop) { + mIsBeingDragged = true; + } + break; + + case MotionEvent.ACTION_DOWN: + /* Remember location of down touch */ + mLastMotionY = y; + mLastMotionX = x; + + /* + * If being flinged and user touches the screen, initiate drag; + * otherwise don't. mScroller.isFinished should be false when + * being flinged. + */ + mIsBeingDragged = !mScroller.isFinished(); + break; + + case MotionEvent.ACTION_CANCEL: + case MotionEvent.ACTION_UP: + /* Release the drag */ + mIsBeingDragged = false; + break; + } + + /* + * The only time we want to intercept motion events is if we are in the + * drag mode. + */ + return mIsBeingDragged; + } + + @Override + public boolean onTouchEvent(MotionEvent ev) { + + if (ev.getAction() == MotionEvent.ACTION_DOWN && ev.getEdgeFlags() != 0) { + // Don't handle edge touches immediately -- they may actually belong to one of our + // descendants. + return false; + } + + if (!canScroll()) { + return false; + } + + if (mVelocityTracker == null) { + mVelocityTracker = VelocityTracker.obtain(); + } + mVelocityTracker.addMovement(ev); + + final int action = ev.getAction(); + final float y = ev.getY(); + final float x = ev.getX(); + + switch (action) { + case MotionEvent.ACTION_DOWN: + /* + * If being flinged and user touches, stop the fling. isFinished + * will be false if being flinged. + */ + if (!mScroller.isFinished()) { + mScroller.abortAnimation(); + } + + // Remember where the motion event started + mLastMotionY = y; + mLastMotionX = x; + break; + case MotionEvent.ACTION_MOVE: + // Scroll to follow the motion event + int deltaX = (int) (mLastMotionX - x); + int deltaY = (int) (mLastMotionY - y); + mLastMotionX = x; + mLastMotionY = y; + + if (deltaX < 0) { + if (getScrollX() < 0) { + deltaX = 0; + } + } else if (deltaX > 0) { + final int rightEdge = getWidth() - getPaddingRight(); + final int availableToScroll = getChildAt(0).getRight() - getScrollX() - rightEdge; + if (availableToScroll > 0) { + deltaX = Math.min(availableToScroll, deltaX); + } else { + deltaX = 0; + } + } + if (deltaY < 0) { + if (getScrollY() < 0) { + deltaY = 0; + } + } else if (deltaY > 0) { + final int bottomEdge = getHeight() - getPaddingBottom(); + final int availableToScroll = getChildAt(0).getBottom() - getScrollY() - bottomEdge; + if (availableToScroll > 0) { + deltaY = Math.min(availableToScroll, deltaY); + } else { + deltaY = 0; + } + } + if (deltaY != 0 || deltaX != 0) + scrollBy(deltaX, deltaY); + break; + case MotionEvent.ACTION_UP: + final VelocityTracker velocityTracker = mVelocityTracker; + velocityTracker.computeCurrentVelocity(1000, mMaximumVelocity); + int initialXVelocity = (int) velocityTracker.getXVelocity(); + int initialYVelocity = (int) velocityTracker.getYVelocity(); + if ((Math.abs(initialXVelocity) + Math.abs(initialYVelocity) > mMinimumVelocity) && getChildCount() > 0) { + fling(-initialXVelocity, -initialYVelocity); + } + if (mVelocityTracker != null) { + mVelocityTracker.recycle(); + mVelocityTracker = null; + } + } + return true; + } + + /** + * Finds the next focusable component that fits in this View's bounds + * (excluding fading edges) pretending that this View's top is located at + * the parameter top. + * + * @param topFocus look for a candidate is the one at the top of the bounds + * if topFocus is true, or at the bottom of the bounds if topFocus is + * false + * @param top the top offset of the bounds in which a focusable must be + * found (the fading edge is assumed to start at this position) + * @param preferredFocusable the View that has highest priority and will be + * returned if it is within my bounds (null is valid) + * @return the next focusable component in the bounds or null if none can be + * found + */ + private View findFocusableViewInMyBounds(final boolean topFocus, final int top, final boolean leftFocus, final int left, View preferredFocusable) { + /* + * The fading edge's transparent side should be considered for focus + * since it's mostly visible, so we divide the actual fading edge length + * by 2. + */ + final int verticalFadingEdgeLength = getVerticalFadingEdgeLength() / 2; + final int topWithoutFadingEdge = top + verticalFadingEdgeLength; + final int bottomWithoutFadingEdge = top + getHeight() - verticalFadingEdgeLength; + final int horizontalFadingEdgeLength = getHorizontalFadingEdgeLength() / 2; + final int leftWithoutFadingEdge = left + horizontalFadingEdgeLength; + final int rightWithoutFadingEdge = left + getWidth() - horizontalFadingEdgeLength; + + if ((preferredFocusable != null) + && (preferredFocusable.getTop() < bottomWithoutFadingEdge) + && (preferredFocusable.getBottom() > topWithoutFadingEdge) + && (preferredFocusable.getLeft() < rightWithoutFadingEdge) + && (preferredFocusable.getRight() > leftWithoutFadingEdge)) { + return preferredFocusable; + } + return findFocusableViewInBounds(topFocus, topWithoutFadingEdge, bottomWithoutFadingEdge, leftFocus, leftWithoutFadingEdge, rightWithoutFadingEdge); + } + + /** + * Finds the next focusable component that fits in the specified bounds. + *

    + * + * @param topFocus look for a candidate is the one at the top of the bounds + * if topFocus is true, or at the bottom of the bounds if topFocus is + * false + * @param top the top offset of the bounds in which a focusable must be + * found + * @param bottom the bottom offset of the bounds in which a focusable must + * be found + * @return the next focusable component in the bounds or null if none can + * be found + */ + private View findFocusableViewInBounds(boolean topFocus, int top, int bottom, boolean leftFocus, int left, int right) { + List focusables = getFocusables(View.FOCUS_FORWARD); + View focusCandidate = null; + + /* + * A fully contained focusable is one where its top is below the bound's + * top, and its bottom is above the bound's bottom. A partially + * contained focusable is one where some part of it is within the + * bounds, but it also has some part that is not within bounds. A fully contained + * focusable is preferred to a partially contained focusable. + */ + boolean foundFullyContainedFocusable = false; + + int count = focusables.size(); + for (int i = 0; i < count; i++) { + View view = focusables.get(i); + int viewTop = view.getTop(); + int viewBottom = view.getBottom(); + int viewLeft = view.getLeft(); + int viewRight = view.getRight(); + + if (top < viewBottom && viewTop < bottom && left < viewRight && viewLeft < right) { + /* + * the focusable is in the target area, it is a candidate for + * focusing + */ + final boolean viewIsFullyContained = (top < viewTop) && (viewBottom < bottom) && (left < viewLeft) && (viewRight < right); + if (focusCandidate == null) { + /* No candidate, take this one */ + focusCandidate = view; + foundFullyContainedFocusable = viewIsFullyContained; + } else { + final boolean viewIsCloserToVerticalBoundary = + (topFocus && viewTop < focusCandidate.getTop()) || + (!topFocus && viewBottom > focusCandidate.getBottom()); + final boolean viewIsCloserToHorizontalBoundary = + (leftFocus && viewLeft < focusCandidate.getLeft()) || + (!leftFocus && viewRight > focusCandidate.getRight()); + if (foundFullyContainedFocusable) { + if (viewIsFullyContained && viewIsCloserToVerticalBoundary && viewIsCloserToHorizontalBoundary) { + /* + * We're dealing with only fully contained views, so + * it has to be closer to the boundary to beat our + * candidate + */ + focusCandidate = view; + } + } else { + if (viewIsFullyContained) { + /* Any fully contained view beats a partially contained view */ + focusCandidate = view; + foundFullyContainedFocusable = true; + } else if (viewIsCloserToVerticalBoundary && viewIsCloserToHorizontalBoundary) { + /* + * Partially contained view beats another partially + * contained view if it's closer + */ + focusCandidate = view; + } + } + } + } + } + return focusCandidate; + } + + /** + *

    Handles scrolling in response to a "home/end" shortcut press. This + * method will scroll the view to the top or bottom and give the focus + * to the topmost/bottommost component in the new visible area. If no + * component is a good candidate for focus, this scrollview reclaims the + * focus.

    + * + * @param direction the scroll direction: {@link android.view.View#FOCUS_UP} + * to go the top of the view or + * {@link android.view.View#FOCUS_DOWN} to go the bottom + * @return true if the key event is consumed by this method, false otherwise + */ + public boolean fullScroll(int direction, boolean horizontal) { + if (!horizontal) { + boolean down = direction == View.FOCUS_DOWN; + int height = getHeight(); + mTempRect.top = 0; + mTempRect.bottom = height; + if (down) { + int count = getChildCount(); + if (count > 0) { + View view = getChildAt(count - 1); + mTempRect.bottom = view.getBottom(); + mTempRect.top = mTempRect.bottom - height; + } + } + return scrollAndFocus(direction, mTempRect.top, mTempRect.bottom, 0, 0, 0); + } else { + boolean right = direction == View.FOCUS_DOWN; + int width = getWidth(); + mTempRect.left = 0; + mTempRect.right = width; + if (right) { + int count = getChildCount(); + if (count > 0) { + View view = getChildAt(count - 1); + mTempRect.right = view.getBottom(); + mTempRect.left = mTempRect.right - width; + } + } + return scrollAndFocus(0, 0, 0, direction, mTempRect.top, mTempRect.bottom); + } + } + + /** + *

    Scrolls the view to make the area defined by top and + * bottom visible. This method attempts to give the focus + * to a component visible in this area. If no component can be focused in + * the new visible area, the focus is reclaimed by this scrollview.

    + * + * @param direction the scroll direction: {@link android.view.View#FOCUS_UP} + * to go upward + * {@link android.view.View#FOCUS_DOWN} to downward + * @param top the top offset of the new area to be made visible + * @param bottom the bottom offset of the new area to be made visible + * @return true if the key event is consumed by this method, false otherwise + */ + private boolean scrollAndFocus(int directionY, int top, int bottom, int directionX, int left, int right) { + boolean handled = true; + int height = getHeight(); + int containerTop = getScrollY(); + int containerBottom = containerTop + height; + boolean up = directionY == View.FOCUS_UP; + int width = getWidth(); + int containerLeft = getScrollX(); + int containerRight = containerLeft + width; + boolean leftwards = directionX == View.FOCUS_UP; + View newFocused = findFocusableViewInBounds(up, top, bottom, leftwards, left, right); + if (newFocused == null) { + newFocused = this; + } + if ((top >= containerTop && bottom <= containerBottom) || (left >= containerLeft && right <= containerRight)) { + handled = false; + } else { + int deltaY = up ? (top - containerTop) : (bottom - containerBottom); + int deltaX = leftwards ? (left - containerLeft) : (right - containerRight); + doScroll(deltaX, deltaY); + } + if (newFocused != findFocus() && newFocused.requestFocus(directionY)) { + mTwoDScrollViewMovedFocus = true; + mTwoDScrollViewMovedFocus = false; + } + return handled; + } + + /** + * Handle scrolling in response to an up or down arrow click. + * + * @param direction The direction corresponding to the arrow key that was + * pressed + * @return True if we consumed the event, false otherwise + */ + public boolean arrowScroll(int direction, boolean horizontal) { + View currentFocused = findFocus(); + if (currentFocused == this) currentFocused = null; + View nextFocused = FocusFinder.getInstance().findNextFocus(this, currentFocused, direction); + final int maxJump = horizontal ? getMaxScrollAmountHorizontal() : getMaxScrollAmountVertical(); + + if (!horizontal) { + if (nextFocused != null) { + nextFocused.getDrawingRect(mTempRect); + offsetDescendantRectToMyCoords(nextFocused, mTempRect); + int scrollDelta = computeScrollDeltaToGetChildRectOnScreen(mTempRect); + doScroll(0, scrollDelta); + nextFocused.requestFocus(direction); + } else { + // no new focus + int scrollDelta = maxJump; + if (direction == View.FOCUS_UP && getScrollY() < scrollDelta) { + scrollDelta = getScrollY(); + } else if (direction == View.FOCUS_DOWN) { + if (getChildCount() > 0) { + int daBottom = getChildAt(0).getBottom(); + int screenBottom = getScrollY() + getHeight(); + if (daBottom - screenBottom < maxJump) { + scrollDelta = daBottom - screenBottom; + } + } + } + if (scrollDelta == 0) { + return false; + } + doScroll(0, direction == View.FOCUS_DOWN ? scrollDelta : -scrollDelta); + } + } else { + if (nextFocused != null) { + nextFocused.getDrawingRect(mTempRect); + offsetDescendantRectToMyCoords(nextFocused, mTempRect); + int scrollDelta = computeScrollDeltaToGetChildRectOnScreen(mTempRect); + doScroll(scrollDelta, 0); + nextFocused.requestFocus(direction); + } else { + // no new focus + int scrollDelta = maxJump; + if (direction == View.FOCUS_UP && getScrollY() < scrollDelta) { + scrollDelta = getScrollY(); + } else if (direction == View.FOCUS_DOWN) { + if (getChildCount() > 0) { + int daBottom = getChildAt(0).getBottom(); + int screenBottom = getScrollY() + getHeight(); + if (daBottom - screenBottom < maxJump) { + scrollDelta = daBottom - screenBottom; + } + } + } + if (scrollDelta == 0) { + return false; + } + doScroll(direction == View.FOCUS_DOWN ? scrollDelta : -scrollDelta, 0); + } + } + return true; + } + + /** + * Smooth scroll by a Y delta + * + * @param delta the number of pixels to scroll by on the Y axis + */ + private void doScroll(int deltaX, int deltaY) { + if (deltaX != 0 || deltaY != 0) { + smoothScrollBy(deltaX, deltaY); + } + } + + /** + * Like {@link android.view.View#scrollBy}, but scroll smoothly instead of immediately. + * + * @param dx the number of pixels to scroll by on the X axis + * @param dy the number of pixels to scroll by on the Y axis + */ + public final void smoothScrollBy(int dx, int dy) { + long duration = AnimationUtils.currentAnimationTimeMillis() - mLastScroll; + if (duration > ANIMATED_SCROLL_GAP) { + mScroller.startScroll(getScrollX(), getScrollY(), dx, dy); + awakenScrollBars(mScroller.getDuration()); + invalidate(); + } else { + if (!mScroller.isFinished()) { + mScroller.abortAnimation(); + } + scrollBy(dx, dy); + } + mLastScroll = AnimationUtils.currentAnimationTimeMillis(); + } + + /** + * Like {@link #scrollTo}, but scroll smoothly instead of immediately. + * + * @param x the position where to scroll on the X axis + * @param y the position where to scroll on the Y axis + */ + public final void smoothScrollTo(int x, int y) { + smoothScrollBy(x - getScrollX(), y - getScrollY()); + } + + /** + *

    The scroll range of a scroll view is the overall height of all of its + * children.

    + */ + @Override + protected int computeVerticalScrollRange() { + int count = getChildCount(); + return count == 0 ? getHeight() : (getChildAt(0)).getBottom(); + } + @Override + protected int computeHorizontalScrollRange() { + int count = getChildCount(); + return count == 0 ? getWidth() : (getChildAt(0)).getRight(); + } + + @Override + protected void measureChild(View child, int parentWidthMeasureSpec, int parentHeightMeasureSpec) { + ViewGroup.LayoutParams lp = child.getLayoutParams(); + int childWidthMeasureSpec; + int childHeightMeasureSpec; + + childWidthMeasureSpec = getChildMeasureSpec(parentWidthMeasureSpec, getPaddingLeft() + getPaddingRight(), lp.width); + childHeightMeasureSpec = MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED); + + child.measure(childWidthMeasureSpec, childHeightMeasureSpec); + } + + @Override + protected void measureChildWithMargins(View child, int parentWidthMeasureSpec, int widthUsed, int parentHeightMeasureSpec, int heightUsed) { + final MarginLayoutParams lp = (MarginLayoutParams) child.getLayoutParams(); + final int childWidthMeasureSpec = getChildMeasureSpec(parentWidthMeasureSpec, + getPaddingLeft() + getPaddingRight() + lp.leftMargin + lp.rightMargin + widthUsed, lp.width); + final int childHeightMeasureSpec = MeasureSpec.makeMeasureSpec(lp.topMargin + lp.bottomMargin, MeasureSpec.UNSPECIFIED); + + child.measure(childWidthMeasureSpec, childHeightMeasureSpec); + } + + @Override + public void computeScroll() { + if (mScroller.computeScrollOffset()) { + // This is called at drawing time by ViewGroup. We don't want to + // re-show the scrollbars at this point, which scrollTo will do, + // so we replicate most of scrollTo here. + // + // It's a little odd to call onScrollChanged from inside the drawing. + // + // It is, except when you remember that computeScroll() is used to + // animate scrolling. So unless we want to defer the onScrollChanged() + // until the end of the animated scrolling, we don't really have a + // choice here. + // + // I agree. The alternative, which I think would be worse, is to post + // something and tell the subclasses later. This is bad because there + // will be a window where mScrollX/Y is different from what the app + // thinks it is. + // + int oldX = getScrollX(); + int oldY = getScrollY(); + int x = mScroller.getCurrX(); + int y = mScroller.getCurrY(); + if (getChildCount() > 0) { + View child = getChildAt(0); + scrollTo(clamp(x, getWidth() - getPaddingRight() - getPaddingLeft(), child.getWidth()), + clamp(y, getHeight() - getPaddingBottom() - getPaddingTop(), child.getHeight())); + } else { + scrollTo(x, y); + } + if (oldX != getScrollX() || oldY != getScrollY()) { + onScrollChanged(getScrollX(), getScrollY(), oldX, oldY); + } + + // Keep on drawing until the animation has finished. + postInvalidate(); + } + } + + /** + * Scrolls the view to the given child. + * + * @param child the View to scroll to + */ + private void scrollToChild(View child) { + child.getDrawingRect(mTempRect); + /* Offset from child's local coordinates to TwoDScrollView coordinates */ + offsetDescendantRectToMyCoords(child, mTempRect); + int scrollDelta = computeScrollDeltaToGetChildRectOnScreen(mTempRect); + if (scrollDelta != 0) { + scrollBy(0, scrollDelta); + } + } + + /** + * If rect is off screen, scroll just enough to get it (or at least the + * first screen size chunk of it) on screen. + * + * @param rect The rectangle. + * @param immediate True to scroll immediately without animation + * @return true if scrolling was performed + */ + private boolean scrollToChildRect(Rect rect, boolean immediate) { + final int delta = computeScrollDeltaToGetChildRectOnScreen(rect); + final boolean scroll = delta != 0; + if (scroll) { + if (immediate) { + scrollBy(0, delta); + } else { + smoothScrollBy(0, delta); + } + } + return scroll; + } + + /** + * Compute the amount to scroll in the Y direction in order to get + * a rectangle completely on the screen (or, if taller than the screen, + * at least the first screen size chunk of it). + * + * @param rect The rect. + * @return The scroll delta. + */ + protected int computeScrollDeltaToGetChildRectOnScreen(Rect rect) { + if (getChildCount() == 0) return 0; + int height = getHeight(); + int screenTop = getScrollY(); + int screenBottom = screenTop + height; + int fadingEdge = getVerticalFadingEdgeLength(); + // leave room for top fading edge as long as rect isn't at very top + if (rect.top > 0) { + screenTop += fadingEdge; + } + + // leave room for bottom fading edge as long as rect isn't at very bottom + if (rect.bottom < getChildAt(0).getHeight()) { + screenBottom -= fadingEdge; + } + int scrollYDelta = 0; + if (rect.bottom > screenBottom && rect.top > screenTop) { + // need to move down to get it in view: move down just enough so + // that the entire rectangle is in view (or at least the first + // screen size chunk). + if (rect.height() > height) { + // just enough to get screen size chunk on + scrollYDelta += (rect.top - screenTop); + } else { + // get entire rect at bottom of screen + scrollYDelta += (rect.bottom - screenBottom); + } + + // make sure we aren't scrolling beyond the end of our content + int bottom = getChildAt(0).getBottom(); + int distanceToBottom = bottom - screenBottom; + scrollYDelta = Math.min(scrollYDelta, distanceToBottom); + + } else if (rect.top < screenTop && rect.bottom < screenBottom) { + // need to move up to get it in view: move up just enough so that + // entire rectangle is in view (or at least the first screen + // size chunk of it). + + if (rect.height() > height) { + // screen size chunk + scrollYDelta -= (screenBottom - rect.bottom); + } else { + // entire rect at top + scrollYDelta -= (screenTop - rect.top); + } + + // make sure we aren't scrolling any further than the top our content + scrollYDelta = Math.max(scrollYDelta, -getScrollY()); + } + return scrollYDelta; + } + + @Override + public void requestChildFocus(View child, View focused) { + if (!mTwoDScrollViewMovedFocus) { + if (!mIsLayoutDirty) { + scrollToChild(focused); + } else { + // The child may not be laid out yet, we can't compute the scroll yet + mChildToScrollTo = focused; + } + } + super.requestChildFocus(child, focused); + } + + /** + * When looking for focus in children of a scroll view, need to be a little + * more careful not to give focus to something that is scrolled off screen. + * + * This is more expensive than the default {@link android.view.ViewGroup} + * implementation, otherwise this behavior might have been made the default. + */ + @Override + protected boolean onRequestFocusInDescendants(int direction, Rect previouslyFocusedRect) { + // convert from forward / backward notation to up / down / left / right + // (ugh). + if (direction == View.FOCUS_FORWARD) { + direction = View.FOCUS_DOWN; + } else if (direction == View.FOCUS_BACKWARD) { + direction = View.FOCUS_UP; + } + + final View nextFocus = previouslyFocusedRect == null ? + FocusFinder.getInstance().findNextFocus(this, null, direction) : + FocusFinder.getInstance().findNextFocusFromRect(this, + previouslyFocusedRect, direction); + + if (nextFocus == null) { + return false; + } + + return nextFocus.requestFocus(direction, previouslyFocusedRect); + } + + @Override + public boolean requestChildRectangleOnScreen(View child, Rect rectangle, boolean immediate) { + // offset into coordinate space of this scroll view + rectangle.offset(child.getLeft() - child.getScrollX(), child.getTop() - child.getScrollY()); + return scrollToChildRect(rectangle, immediate); + } + + @Override + public void requestLayout() { + mIsLayoutDirty = true; + super.requestLayout(); + } + + @Override + protected void onLayout(boolean changed, int l, int t, int r, int b) { + super.onLayout(changed, l, t, r, b); + mIsLayoutDirty = false; + // Give a child focus if it needs it + if (mChildToScrollTo != null && isViewDescendantOf(mChildToScrollTo, this)) { + scrollToChild(mChildToScrollTo); + } + mChildToScrollTo = null; + + // Calling this with the present values causes it to re-clam them + scrollTo(getScrollX(), getScrollY()); + } + + @Override + protected void onSizeChanged(int w, int h, int oldw, int oldh) { + super.onSizeChanged(w, h, oldw, oldh); + + View currentFocused = findFocus(); + if (null == currentFocused || this == currentFocused) + return; + + // If the currently-focused view was visible on the screen when the + // screen was at the old height, then scroll the screen to make that + // view visible with the new screen height. + currentFocused.getDrawingRect(mTempRect); + offsetDescendantRectToMyCoords(currentFocused, mTempRect); + int scrollDeltaX = computeScrollDeltaToGetChildRectOnScreen(mTempRect); + int scrollDeltaY = computeScrollDeltaToGetChildRectOnScreen(mTempRect); + doScroll(scrollDeltaX, scrollDeltaY); + } + + /** + * Return true if child is an descendant of parent, (or equal to the parent). + */ + private boolean isViewDescendantOf(View child, View parent) { + if (child == parent) { + return true; + } + + final ViewParent theParent = child.getParent(); + return (theParent instanceof ViewGroup) && isViewDescendantOf((View) theParent, parent); + } + + /** + * Fling the scroll view + * + * @param velocityY The initial velocity in the Y direction. Positive + * numbers mean that the finger/curor is moving down the screen, + * which means we want to scroll towards the top. + */ + public void fling(int velocityX, int velocityY) { + if (getChildCount() > 0) { + int height = getHeight() - getPaddingBottom() - getPaddingTop(); + int bottom = getChildAt(0).getHeight(); + int width = getWidth() - getPaddingRight() - getPaddingLeft(); + int right = getChildAt(0).getWidth(); + + mScroller.fling(getScrollX(), getScrollY(), velocityX, velocityY, 0, right - width, 0, bottom - height); + + final boolean movingDown = velocityY > 0; + final boolean movingRight = velocityX > 0; + + View newFocused = findFocusableViewInMyBounds(movingRight, mScroller.getFinalX(), movingDown, mScroller.getFinalY(), findFocus()); + if (newFocused == null) { + newFocused = this; + } + + if (newFocused != findFocus() && newFocused.requestFocus(movingDown ? View.FOCUS_DOWN : View.FOCUS_UP)) { + mTwoDScrollViewMovedFocus = true; + mTwoDScrollViewMovedFocus = false; + } + + awakenScrollBars(mScroller.getDuration()); + invalidate(); + } + } + + /** + * {@inheritDoc} + * + *

    This version also clamps the scrolling to the bounds of our child. + */ + public void scrollTo(int x, int y) { + // we rely on the fact the View.scrollBy calls scrollTo. + if (getChildCount() > 0) { + View child = getChildAt(0); + x = clamp(x, getWidth() - getPaddingRight() - getPaddingLeft(), child.getWidth()); + y = clamp(y, getHeight() - getPaddingBottom() - getPaddingTop(), child.getHeight()); + if (x != getScrollX() || y != getScrollY()) { + super.scrollTo(x, y); + } + } + } + + private int clamp(int n, int my, int child) { + if (my >= child || n < 0) { + /* my >= child is this case: + * |--------------- me ---------------| + * |------ child ------| + * or + * |--------------- me ---------------| + * |------ child ------| + * or + * |--------------- me ---------------| + * |------ child ------| + * + * n < 0 is this case: + * |------ me ------| + * |-------- child --------| + * |-- mScrollX --| + */ + return 0; + } + if ((my+n) > child) { + /* this case: + * |------ me ------| + * |------ child ------| + * |-- mScrollX --| + */ + return child-my; + } + return n; + } +} diff --git a/mainActivity/src/com/example/furt/myapplication/UndefinedFormula.java b/mainActivity/src/com/example/furt/myapplication/UndefinedFormula.java new file mode 100755 index 0000000..309cb4c --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/UndefinedFormula.java @@ -0,0 +1,59 @@ +package com.example.furt.myapplication; + +import android.graphics.Paint; + +import java.util.List; + +public class UndefinedFormula implements Formula{ + + Paint p=new Paint(); + int priority; + boolean currentF; + UndefinedFormula() + { + priority=100; + currentF=false; + } + public String Draw(int x) + { + if(currentF) + return "_"; + else + return " "; + } + public String toString(){return Draw(0);} + public String toStringDeleted(){return null;} //UndefinedFormula should never be deleted + public float size(){ + p.setTextSize(DrawActivity.textSize); + return p.measureText(toString()); + } + public float height() + { + return 0; + } + public float sizeDeleted(){return(0);} + public List introductionRules(){ + return null; + } //UndefinedFormula accepts no rules + public List EliminationRules(){ + return null; + } + + @Override + public boolean Fill(Formula F) { + return false; + } + + @Override + public boolean setCursor() { + currentF=true; + return true; + } + + @Override + public Formula duplicate() { + UndefinedFormula tmp=new UndefinedFormula(); + tmp.currentF=this.currentF; + return tmp; + } +} diff --git a/mainActivity/src/com/example/furt/myapplication/aggiorna.java b/mainActivity/src/com/example/furt/myapplication/aggiorna.java new file mode 100755 index 0000000..a97220e --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/aggiorna.java @@ -0,0 +1,241 @@ +package com.example.furt.myapplication; + + +import android.content.Context; +import android.os.AsyncTask; +import android.os.Environment; +import android.util.Log; +import android.widget.Toast; + +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.net.HttpURLConnection; +import java.net.MalformedURLException; +import java.net.URL; +import java.util.ArrayList; +import java.util.List; + +public class aggiorna { + + aggiorna(){} + + public String sincronizza(String sessionKey,String user,String pass) { + String ritorno = null; + String login = "1/" + user + "/" + pass; + while (ritorno == null || ritorno.contains("request-login")) + { + ritorno = serverSync(sessionKey, user); + if(ritorno == null || ritorno.contains("request-login")) + { + sessionKey= serverComunication.connessione(login); + } + else if(ritorno.contains("error")) + Toast.makeText(aggiornamento.t.getContext().getApplicationContext(), "errore di connessione", Toast.LENGTH_SHORT).show(); + } + ritorno=null; + while (ritorno == null || ritorno.contains("request-login")) + { + ritorno = syncLocaldb(sessionKey, user); + if(ritorno == null || ritorno.contains("request-login")) + { + sessionKey= serverComunication.connessione(login); + } + else if(ritorno.contains("error")) + Toast.makeText(aggiornamento.t.getContext().getApplicationContext(), "errore di connessione", Toast.LENGTH_SHORT).show(); + } + ritorno=null; + while (ritorno == null || ritorno.contains("request-login")) + { + ritorno=downloadEX(sessionKey); + if(ritorno == null || ritorno.contains("request-login")) + { + sessionKey= serverComunication.connessione(login); + } + else if(ritorno.contains("error")) + Toast.makeText(aggiornamento.t.getContext().getApplicationContext(), "errore di connessione", Toast.LENGTH_SHORT).show(); + } + return sessionKey; + } + + public String serverSync(String sessionKey, String user) + { + personalDBHelper connessione = new personalDBHelper(aggiornamento.t.getContext()); + List esercizi=connessione.getElem(user); + if(esercizi!=null && !esercizi.isEmpty()) { + for (listElem esercizio : esercizi) { + Log.e("",esercizio.getEsercizio());} + for (listElem esercizio : esercizi) { + String richiesta = "8/" + sessionKey + "/" + esercizio.getEsercizio() + "/" + esercizio.getMd5() + "/" + esercizio.getTime() + "/" + esercizio.getClick(); + String ritorno = serverComunication.connessione(richiesta); + if (ritorno.contains("es-ok")) + connessione.updateElem(esercizio.getMd5(), user, esercizio.getTime()); + else if (ritorno.contains("request-login") || ritorno.contains("es-err")){ + if(ritorno.contains("es-err")) + connessione.remove(esercizio.getUtente(),esercizio.getTime()); + return ritorno; + } + } + } + return "sync-ok"; + } + + public String syncLocaldb(String sessionKey, String utente) + { + String richiesta = "9/" + sessionKey; + String ritorno = serverComunication.connessione(richiesta); + if(ritorno.contains("request-login")) + return ritorno; + else + { + personalDBHelper connessione=new personalDBHelper(aggiornamento.t.getContext().getApplicationContext()); + ArrayList allExercise=suString.stringToMultiArray(ritorno); + List localExercise=connessione.getAllElem(utente); + if(localExercise!=null && !localExercise.isEmpty()) { + for (String ex : allExercise) { + ArrayList tmp = suString.stringToArrayList(ex); + boolean add = true; + for (listElem elem : localExercise) { + if (tmp.get(0).equals(elem.getEsercizio()) && Double.valueOf(tmp.get(2)) == elem.getTime()) { + if (elem.getCheck() == 0) + connessione.updateElem(tmp.get(1), utente, Double.valueOf(tmp.get(2))); + add = false; + } + } + if (add) + if(tmp.size()>3) + connessione.add(utente, tmp.get(0), tmp.get(1), Double.valueOf(tmp.get(2)), Integer.valueOf(tmp.get(3)), 1); + } + } + else{ + for (String ex : allExercise) { + ArrayList tmp = suString.stringToArrayList(ex); + if(tmp.size()>3) + connessione.add(utente, tmp.get(0), tmp.get(1), Double.valueOf(tmp.get(2)), Integer.valueOf(tmp.get(3)), 1); + } + } + } + return "local-sync-ok"; + } + + public String downloadEX(String sessionKey) + { + Context context = aggiornamento.t.getContext(); + File SDCardRoot = Environment.getExternalStorageDirectory(); + String[] names = SDCardRoot.list(); + String ritorno=null; + boolean go = true; + for (String name : names) { + if (name.compareTo("tesiEs") == 0) { + go = false; + break; + } + } + if (go) { + File dir = new File(global.esDir); + dir.mkdir(); + } + try { + ritorno = serverComunication.connessione("7/" + sessionKey); + if (!ritorno.contains("error") && !ritorno.contains("request-login")) + { + ArrayList esercizi= suString.stringToMultiArray(ritorno); + File dir = new File(global.esDir); + String[] presenti = dir.list(); + boolean tmp = true; + for(String esercizio : esercizi) + { + ArrayList es=suString.stringToArrayList(esercizio); + tmp = true; + for (String nome : presenti) { + if (nome.contentEquals(es.get(0))) { + if ((MD5.digest(nome)).contentEquals(es.get(1))) { + tmp = false; + } + else { + File file = new File(global.esDir + nome); + file.delete(); + } + } + } + if (tmp) { + String request = new download().execute(es.get(0)).get(); + } + } + } + }catch (Exception e) + { + e.printStackTrace(); + } + return ritorno; + } +} +class download extends AsyncTask +{ + @Override + protected String doInBackground(String... params) + { + try { + //set the download URL, a url that points to a file on the internet + //this is the file to be downloaded + URL url = new URL(global.httpHost+params[0]); + + //create the new connection + HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); + + //set up some things on the connection + urlConnection.setRequestMethod("GET"); + urlConnection.setDoOutput(true); + + //and connect! + urlConnection.connect(); + + //set the path where we want to save the file + //in this case, going to save it on the root directory of the + //sd card. + File SDCardRoot = Environment.getExternalStorageDirectory(); + File esDir = new File(global.esDir); + //create a new file, specifying the path, and the filename + //which we want to save the file as. + + + File file = new File(esDir,params[0]); + //this will be used to write the downloaded data into the file we created + FileOutputStream fileOutput = new FileOutputStream(file); + + //this will be used in reading the data from the internet + InputStream inputStream = urlConnection.getInputStream(); + + //this is the total size of the file + int totalSize = urlConnection.getContentLength(); + //variable to store total downloaded bytes + int downloadedSize = 0; + + //create a buffer... + byte[] buffer = new byte[1024]; + int bufferLength = 0; //used to store a temporary size of the buffer + + //now, read through the input buffer and write the contents to the file + while ( (bufferLength = inputStream.read(buffer)) > 0 ) { + //add the data in the buffer to the file in the file output stream (the file on the sd card + fileOutput.write(buffer, 0, bufferLength); + //add up the size so we know how much is downloaded + downloadedSize += bufferLength; + //this is where you would do something to report the prgress, like this maybe + //updateProgress(downloadedSize, totalSize); + + } + //close the output stream when done + fileOutput.close(); + +//catch some possible errors... + } catch (MalformedURLException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } + return null; + } +} + diff --git a/mainActivity/src/com/example/furt/myapplication/aggiornamento.java b/mainActivity/src/com/example/furt/myapplication/aggiornamento.java new file mode 100755 index 0000000..c3893fe --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/aggiornamento.java @@ -0,0 +1,53 @@ +package com.example.furt.myapplication; + +import android.app.Activity; +import android.content.Intent; +import android.os.Bundle; +import android.util.Log; +import android.widget.RelativeLayout; + + +public class aggiornamento extends Activity +{ + static RelativeLayout t; //for context + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.aggiornamento); + t=(RelativeLayout)findViewById(R.id.glob_agg); + Bundle dati=getIntent().getExtras(); + String user=dati.getString("user"); + String pass=dati.getString("pass"); + String sessionKey=dati.getString("sessionKey"); + if(sessionKey.contentEquals("000000000"))//controllo se le credenziali memorizzate sono corrette + { + sessionKey = serverComunication.connessione("1/" + user + "/" + pass); + if(sessionKey.contentEquals("request-login") || sessionKey.contains("err")) + { + Log.e("", "ciao"); + Intent i = new Intent(getApplicationContext(), mainActivity.class); + i.putExtra("logout", "si"); + i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + getApplicationContext().startActivity(i); + return; + } + } + aggiorna agg=new aggiorna(); + sessionKey=agg.sincronizza(sessionKey,user,pass); + if(sessionKey.contains("err") || sessionKey.contentEquals("000000000")) + { + Intent i = new Intent(getApplicationContext(), mainActivity.class); + i.putExtra("logout", "si"); + i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + getApplicationContext().startActivity(i); + } + else { + Intent i = new Intent(getApplicationContext(), download_page.class); + i.putExtra("user", user); + i.putExtra("pass", pass); + i.putExtra("sessionKey", sessionKey); + i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + getApplicationContext().startActivity(i); + } + } +} diff --git a/mainActivity/src/com/example/furt/myapplication/askFormula.java b/mainActivity/src/com/example/furt/myapplication/askFormula.java new file mode 100755 index 0000000..a6fb161 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/askFormula.java @@ -0,0 +1,5 @@ +package com.example.furt.myapplication; + +public class askFormula{ + public Formula Ask(){return DrawActivity.selectedNode.F;}; +} diff --git a/mainActivity/src/com/example/furt/myapplication/download_page.java b/mainActivity/src/com/example/furt/myapplication/download_page.java new file mode 100755 index 0000000..1193815 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/download_page.java @@ -0,0 +1,125 @@ +package com.example.furt.myapplication; + + +import android.app.Activity; +import android.content.Context; +import android.content.Intent; +import android.os.Bundle; +import android.view.Menu; +import android.view.MenuItem; +import android.view.View; +import android.widget.AdapterView; +import android.widget.ArrayAdapter; +import android.widget.ListView; +import android.widget.RelativeLayout; +import android.widget.TextView; + +import java.io.File; +import java.util.List; + +public class download_page extends Activity +{ + static String user=null; + static String pass=null; + static String sessionKey=null; + static RelativeLayout globalDownload; + static TextView rootDownload; + static TextView dw; + + @Override + protected void onCreate(Bundle savedInstanceState) { + dw=(TextView)findViewById(R.id.startEs); + super.onCreate(savedInstanceState); + setContentView(R.layout.download); + final Context context=getApplicationContext(); + Bundle dati=getIntent().getExtras(); + globalDownload=(RelativeLayout)findViewById(R.id.dlglobal); + rootDownload=(TextView)findViewById(R.id.startEs); + user=dati.getString("user"); + pass=dati.getString("pass"); + sessionKey=dati.getString("sessionKey"); + File dir = new File(global.esDir); + String[] presenti = dir.list(); + ArrayAdapter vievList=new ArrayAdapter(this,R.layout.textviewgeneral); + ListView lista= (ListView) findViewById(R.id.listView); + for (String nome : presenti) { + String aggiungi="non risolto"; + boolean min=false; + boolean check=false; + personalDBHelper db=new personalDBHelper(context); + List risolti=db.getElemForName(user, nome); + if(risolti!=null && !risolti.isEmpty()) { + + for (listElem elem : risolti) { + if (!min && elem.getCheck() == 0) { + min = true; + aggiungi = "da confermare: " + elem.getClick() + "/30"; + } else if (!check && elem.getCheck() == 1) { + min = true; + check = true; + aggiungi = elem.getClick() + "/30"; + } + + } + } + vievList.add(nome+"\n"+aggiungi); + } + lista.setAdapter(vievList); + lista.setOnItemClickListener(new AdapterView.OnItemClickListener() { + @Override + public void onItemClick(AdapterView parent, View view, int position, long id) { + TextView t=(TextView)view; + String valore=t.getText().toString(); + String nomeEs = null; + for(int i=0;i getLiteral(String esercizio) + { + String cartellaEs=global.esDir; + ArrayList listValue=new ArrayList(); + ArrayList returnValue=new ArrayList(); + try { + FileInputStream file = new FileInputStream(new File(cartellaEs + esercizio)); + DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance(); + DocumentBuilder builder = builderFactory.newDocumentBuilder(); + Document xmlDocument = builder.parse(file); + listValue.add("Ț"); + listValue.add("⊥"); + listValue.addAll(getLiteralAtFormula(xmlDocument, "/esercizio/tesi/formula[1]")); + listValue.addAll(getLiteralAtHypotesis(xmlDocument)); + for(String elem : listValue) + { + if(!returnValue.isEmpty()) + { + if(!returnValue.contains(elem)) + returnValue.add(elem); + } + else + returnValue.add(elem); + } + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (ParserConfigurationException e) { + e.printStackTrace(); + } catch (SAXException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } + return returnValue; + } + + static public ArrayList getLiteralAtFormula(Document xmlDocument, String position) + { + ArrayList returnList=new ArrayList(); + try { + XPath xPath = XPathFactory.newInstance().newXPath(); + if(Integer.parseInt(xPath.compile("count(" + position + ")").evaluate(xmlDocument))==1) { + String type = xPath.compile(position + "/@type").evaluate(xmlDocument); + int numbOfElements = 5; + if (type.contentEquals("and") || type.contentEquals("or") || type.contentEquals("impl")) + numbOfElements = 2; + else if (type.contentEquals("not")) + numbOfElements = 1; + else if (type.contentEquals("literal") || type.contentEquals("atomic")) + numbOfElements = 0; + int count = Integer.parseInt(xPath.compile("count(" + position + "/formula)").evaluate(xmlDocument)); + if (count == numbOfElements) { + if (numbOfElements == 2) { + returnList.addAll(getLiteralAtFormula(xmlDocument, position + "/formula[1]")); + returnList.addAll(getLiteralAtFormula(xmlDocument, position + "/formula[2]")); + + return returnList; + } else if (numbOfElements == 1) { + return getLiteralAtFormula(xmlDocument, position + "/formula[1]"); + } else if (numbOfElements == 0) { + String child = xPath.compile(position).evaluate(xmlDocument); + if (child == null || child.isEmpty()) + return null; + else if (child.contentEquals("top")) { + returnList.add("Ț"); + return returnList; + } + else if (child.contentEquals("bot")){ + returnList.add("⊥"); + return returnList; + } + else{ + returnList.add(String.valueOf(child.charAt(0))); + return returnList; + } + } + } + } + } catch (Exception e) { + e.printStackTrace(); + } + return null; + } + + static public Formula createFormula(Document xmlDocument, String position) { + try { + XPath xPath = XPathFactory.newInstance().newXPath(); + if(Integer.parseInt(xPath.compile("count(" + position + ")").evaluate(xmlDocument))==1) { + String type = xPath.compile(position + "/@type").evaluate(xmlDocument); + int numbOfElements = 5; + if (type.contentEquals("and") || type.contentEquals("or") || type.contentEquals("impl")) + numbOfElements = 2; + else if (type.contentEquals("not")) + numbOfElements = 1; + else if (type.contentEquals("literal") || type.contentEquals("atomic")) + numbOfElements = 0; + int count = Integer.parseInt(xPath.compile("count(" + position + "/formula)").evaluate(xmlDocument)); + if (count == numbOfElements) { + if (numbOfElements == 2) { + Formula firstChild = createFormula(xmlDocument, position + "/formula[1]"); + Formula secondChild = createFormula(xmlDocument, position + "/formula[2]"); + if (firstChild == null || secondChild == null) + return null; + else if (type.contentEquals("and")) + return new FormulaAnd(createFormula(xmlDocument, position + "/formula[1]"), createFormula(xmlDocument, position + "/formula[2]")); + else if (type.contentEquals("or")) + return new FormulaOr(createFormula(xmlDocument, position + "/formula[1]"), createFormula(xmlDocument, position + "/formula[2]")); + else if (type.contentEquals("impl")) + return new FormulaImpl(createFormula(xmlDocument, position + "/formula[1]"), createFormula(xmlDocument, position + "/formula[2]")); + } else if (numbOfElements == 1) { + Formula child = createFormula(xmlDocument, position + "/formula[1]"); + if (child == null) + return null; + return new FormulaNot(createFormula(xmlDocument, position + "/formula[1]")); + } else if (numbOfElements == 0) { + String child = xPath.compile(position).evaluate(xmlDocument); + if (child == null || child.isEmpty()) + return null; + else if (child.length()>=3 && child.substring(0,3).equals("top")) + return new FormulaTOP(); + else if (child.length()>=3 && child.substring(0,3).equals("bot")) + return new FormulaBOT(); + else + return new Literal(child.charAt(0)); + } + } + } + } catch (Exception e) { + e.printStackTrace(); + } + return null; + } + + static public List ipotesi(Document xmlDocument) + { + List returnValue=new ArrayList(); + XPath xPath = XPathFactory.newInstance().newXPath(); + try + { + int count = Integer.parseInt(xPath.compile("count(/esercizio/ipotesi/formula)").evaluate(xmlDocument)); + for(int i=1;i<=count;i++) + { + Formula F=createFormula(xmlDocument,"/esercizio/ipotesi/formula["+i+"]"); + Hypothesis valore; + if(F==null) + valore=null; + else + valore=new Hypothesis(F,false); + if(valore!=null) + returnValue.add(valore); + } + }catch (Exception e) { + e.printStackTrace(); + } + return returnValue; + } + + static public ArrayList getLiteralAtHypotesis(Document xmlDocument) + { + ArrayList returnValue=new ArrayList(); + XPath xPath = XPathFactory.newInstance().newXPath(); + try + { + int count = Integer.parseInt(xPath.compile("count(/esercizio/ipotesi/formula)").evaluate(xmlDocument)); + for(int i=1;i<=count;i++) + returnValue.addAll(getLiteralAtFormula(xmlDocument, "/esercizio/ipotesi/formula[" + i + "]")); + }catch (Exception e) { + e.printStackTrace(); + } + return returnValue; + } + + static public ArrayList getParameters(String esercizio) + { + ArrayList value=new ArrayList(); + try { + String cartellaEs=global.esDir; + FileInputStream file = new FileInputStream(new File(cartellaEs+esercizio)); + DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance(); + DocumentBuilder builder = builderFactory.newDocumentBuilder(); + Document xmlDocument = builder.parse(file); + return parameters(xmlDocument); + } catch (Exception e) { + e.printStackTrace(); + } + return value; + } + + static private ArrayList parameters(Document xmlDocument) + { + ArrayList returnValue= new ArrayList(); + XPath xPath = XPathFactory.newInstance().newXPath(); + try + { + if( Integer.parseInt(xPath.compile("count(/esercizio/valutazione/click)").evaluate(xmlDocument))==1 && + Integer.parseInt(xPath.compile("count(/esercizio/valutazione/tempo)").evaluate(xmlDocument))==1 && + Integer.parseInt(xPath.compile("count(/esercizio/valutazione/altezza)").evaluate(xmlDocument))==1) + { + returnValue.add(xPath.compile("/esercizio/valutazione/click").evaluate(xmlDocument)); + returnValue.add(xPath.compile("/esercizio/valutazione/tempo").evaluate(xmlDocument)); + returnValue.add(xPath.compile("/esercizio/valutazione/altezza").evaluate(xmlDocument)); + } + }catch (Exception e) { + e.printStackTrace(); + } + return returnValue; + } +} diff --git a/mainActivity/src/com/example/furt/myapplication/parserDialog.java b/mainActivity/src/com/example/furt/myapplication/parserDialog.java new file mode 100755 index 0000000..e871b7f --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/parserDialog.java @@ -0,0 +1,153 @@ +package com.example.furt.myapplication; + +import android.app.AlertDialog; +import android.app.Dialog; +import android.app.DialogFragment; +import android.content.DialogInterface; +import android.os.Bundle; +import android.util.Log; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.Button; +import android.widget.RelativeLayout; +import android.widget.TextView; + +import java.util.ArrayList; +import java.util.List; + +public class parserDialog extends DialogFragment { + static Formula F=null; //formula che sto costruendo + static RelativeLayout formulaLayout; + static TextView FView; //View contenente la formula che sto visualizzando + static Button dismissButton; + static boolean reload=false; + static ArrayList esliter=new ArrayList(); + static ArrayList undo=new ArrayList(); + public parserDialog() + { + esliter.removeAll(esliter); + if(!reload) + undo.removeAll(undo); + reload=false; + if(F==null) { + F = new UndefinedFormula(); + F.setCursor(); + } + esliter.addAll(parser.getLiteral(DrawActivity.nomeEs)); + Log.e("","⊤"); + } + @Override + public Dialog onCreateDialog(final Bundle savedInstanceState) { + // Use the Builder class for convenient dialog construction + AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); + LayoutInflater inflater=getActivity().getLayoutInflater(); + View view=inflater.inflate(R.layout.string_layout, null); + RelativeLayout litersLayout=(RelativeLayout)((ViewGroup)((ViewGroup)view).getChildAt(0)).getChildAt(0); + RelativeLayout operatorsLayout=(RelativeLayout)(((ViewGroup)view).getChildAt(1)); + formulaLayout=(RelativeLayout)((ViewGroup)((ViewGroup)view).getChildAt(2)).getChildAt(0); + FView=new TextView(formulaLayout.getContext()); + FView.setText(F.toString()); + FView.setTextSize(DrawActivity.textSize); + formulaLayout.addView(FView); + int leftId=0; + if(!esliter.isEmpty()) { + for (String liter : esliter) { + Button lit = new Button(litersLayout.getContext()); + RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); + lit.setText(liter); + if (leftId != 0) { + lp.addRule(RelativeLayout.RIGHT_OF, leftId); + } + lit.setLayoutParams(lp); + lit.setId(DrawActivity.globalId++); + leftId = lit.getId(); + litersLayout.addView(lit); + lit.setOnClickListener(new touchParserHandler(4, liter.charAt(0))); + } + } + Button bImpl=new Button(operatorsLayout.getContext()); + Button bAnd=new Button(operatorsLayout.getContext()); + Button bOr=new Button(operatorsLayout.getContext()); + Button bNot=new Button(operatorsLayout.getContext()); + RelativeLayout.LayoutParams lpImpl=new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); + RelativeLayout.LayoutParams lpAnd=new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); + RelativeLayout.LayoutParams lpNot=new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); + RelativeLayout.LayoutParams lpOr=new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); + + bImpl.setText("⇒"); + bImpl.setLayoutParams(lpImpl); + bImpl.setId(DrawActivity.globalId++); + leftId=bImpl.getId(); + + bOr.setText("∨"); + lpOr.addRule(RelativeLayout.RIGHT_OF, leftId); + bOr.setLayoutParams(lpOr); + bOr.setId(DrawActivity.globalId++); + leftId=bOr.getId(); + + bAnd.setText("∧"); + lpAnd.addRule(RelativeLayout.RIGHT_OF, leftId); + bAnd.setLayoutParams(lpAnd); + bAnd.setId(DrawActivity.globalId++); + leftId=bAnd.getId(); + + bNot.setText("¬"); + lpNot.addRule(RelativeLayout.RIGHT_OF, leftId); + bNot.setLayoutParams(lpNot); + bNot.setId(DrawActivity.globalId++); + + operatorsLayout.addView(bImpl); + operatorsLayout.addView(bAnd); + operatorsLayout.addView(bNot); + operatorsLayout.addView(bOr); + bImpl.setOnClickListener(new touchParserHandler(2,' ')); + bAnd.setOnClickListener(new touchParserHandler(0,' ')); + bNot.setOnClickListener(new touchParserHandler(3, ' ')); + bOr.setOnClickListener(new touchParserHandler(1, ' ')); + builder.setView(view); + builder.setTitle("Inserisci una formula").setPositiveButton("Ok", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + if(!F.toString().contains("_")) { + List L = F.EliminationRules(); + if (L.size()==0) + return; + touchHPHandler t = new touchHPHandler(L.get(0).createNodes(null, new askFormula()),new Hypothesis(F,true)); + F = null; + t.discard=false; + t.onClick(null); + } + else + reboot(); + } + }); + builder.setNeutralButton("Undo", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + if(undo.size()>1) { + F = undo.remove(undo.size() - 1); + /*for(int i=0;i getElem(String user) + { + List elem=null; + SQLiteDatabase db=this.getReadableDatabase(); + String[] tableColums={ + esercizi.COLUMN_MD5, + esercizi.COLUMN_TIME, + esercizi.COLUMN_CLICK, + esercizi.COLUMN_ESERCIZIO + }; + String whereClause= COLUMN_UTENTE +"=? AND " + COLUMN_CHECK +"=?"; + String[] whereArgs=new String[]{ + String.valueOf(user), + String.valueOf("0") + }; + Cursor cursor=db.query(TABLE_NAME,tableColums,whereClause,whereArgs,null,null,null); + if(cursor.moveToFirst()) { + elem = new ArrayList(); + listElem el=new listElem(); + do { + el.setMd5 (cursor.getString(0)); + el.setTime(cursor.getDouble(1)); + el.setClick(cursor.getInt(2)); + el.setEsercizio(cursor.getString(3)); + elem.add(el); + }while(cursor.moveToNext()); + } + return elem; + } + + public List getElemForName(String user, String esName) + { + List elem=null; + SQLiteDatabase db=this.getReadableDatabase(); + String[] tableColums={ + esercizi.COLUMN_MD5, + esercizi.COLUMN_TIME, + esercizi.COLUMN_CLICK, + esercizi.COLUMN_CHECK + }; + String whereClause= COLUMN_UTENTE +"=? AND " + COLUMN_ESERCIZIO +"=? ORDER BY "+COLUMN_CLICK; + String[] whereArgs=new String[]{ + String.valueOf(user), + String.valueOf(esName) + }; + Cursor cursor=db.query(TABLE_NAME,tableColums,whereClause,whereArgs,null,null,null); + if(cursor.moveToFirst()) { + elem = new ArrayList(); + listElem el=new listElem(); + do { + el.setMd5 (cursor.getString(0)); + el.setTime(cursor.getDouble(1)); + el.setClick(cursor.getInt(2)); + el.setCheck(cursor.getInt(3)); + elem.add(el); + }while(cursor.moveToNext()); + } + return elem; + } + + public List getAllElem(String user) + { + List elem=null; + SQLiteDatabase db=this.getReadableDatabase(); + String[] tableColums={ + esercizi.COLUMN_MD5, + esercizi.COLUMN_TIME, + esercizi.COLUMN_CLICK, + esercizi.COLUMN_ESERCIZIO, + esercizi.COLUMN_CHECK + }; + String whereClause= COLUMN_UTENTE +"=?"; + String[] whereArgs=new String[]{ + String.valueOf(user) + }; + Cursor cursor=db.query(TABLE_NAME,tableColums,whereClause,whereArgs,null,null,null); + if(cursor.moveToFirst()) { + elem = new ArrayList(); + listElem el=new listElem(); + do { + el.setMd5 (cursor.getString(0)); + el.setTime(cursor.getDouble(1)); + el.setClick(cursor.getInt(2)); + el.setEsercizio(cursor.getString(3)); + el.setCheck(cursor.getInt(4)); + elem.add(el); + }while(cursor.moveToNext()); + } + return elem; + } + + public void updateElem(String md5, String user, double time) + { + SQLiteDatabase db=this.getWritableDatabase(); + String request="UPDATE "+TABLE_NAME+" set "+COLUMN_CHECK+"=1 WHERE "+COLUMN_UTENTE+"='"+user+"' AND "+COLUMN_MD5+"='"+md5+"' AND "+COLUMN_TIME+"="+time; + db.execSQL(request); + } + +} diff --git a/mainActivity/src/com/example/furt/myapplication/personalTrackerContract.java b/mainActivity/src/com/example/furt/myapplication/personalTrackerContract.java new file mode 100755 index 0000000..2b2d87e --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/personalTrackerContract.java @@ -0,0 +1,46 @@ +package com.example.furt.myapplication; + +import android.provider.BaseColumns; + + +public final class personalTrackerContract { + // To prevent someone from accidentally instantiating the contract class, + // give it an empty constructor. + public personalTrackerContract() { + } + + public static final int DATABASE_VERSION = 1; + public static final String DATABASE_NAME = "exercise.db"; + + private static final String TEXT_TYPE = " TEXT"; + private static final String VALUE_TYPE=" DECIMAL"; + private static final String COMMA_SEP = ","; + private static final String INT_TYPE = " INTEGER"; + private static final String DOUBLE_TYPE=" DOUBLE"; + + /* Inner class that defines the table contents */ + public static abstract class esercizi implements BaseColumns { + + public static final String TABLE_NAME = " esercizi "; + public static final String COLUMN_ESERCIZIO = " esercizio "; + public static final String COLUMN_MD5 = " md5 "; + public static final String COLUMN_UTENTE = " utente "; + public static final String COLUMN_TIME = " time "; + public static final String COLUMN_CHECK = " checks "; + public static final String COLUMN_CLICK = " click "; + + public static final String SQL_CREATE_ENTRIES = + "CREATE TABLE " + TABLE_NAME + " (" + + COLUMN_UTENTE + TEXT_TYPE + COMMA_SEP + + COLUMN_MD5 + TEXT_TYPE + COMMA_SEP + + COLUMN_TIME + DOUBLE_TYPE + COMMA_SEP + + COLUMN_CLICK + INT_TYPE + COMMA_SEP + + COLUMN_ESERCIZIO + TEXT_TYPE + COMMA_SEP + + COLUMN_CHECK + INT_TYPE + + " )"; + + public static final String SQL_DELETE_ENTRIES = + "DROP TABLE IF EXISTS " + TABLE_NAME; + + } +} \ No newline at end of file diff --git a/mainActivity/src/com/example/furt/myapplication/recuperaPass.java b/mainActivity/src/com/example/furt/myapplication/recuperaPass.java new file mode 100644 index 0000000..612af06 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/recuperaPass.java @@ -0,0 +1,60 @@ +package com.example.furt.myapplication; + + +import android.app.Activity; +import android.content.Intent; +import android.os.Bundle; +import android.view.View; +import android.widget.Button; +import android.widget.EditText; +import android.widget.Toast; + +public class recuperaPass extends Activity{ + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.reimpostapass); + Button invia=(Button) findViewById(R.id.invia); + invia.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + EditText ut=(EditText) findViewById(R.id.userId); + EditText oP=(EditText) findViewById(R.id.oldPass); + EditText nP=(EditText) findViewById(R.id.newPass); + String utente=ut.getText().toString(); + String oldPass=oP.getText().toString(); + String newPass=nP.getText().toString(); + if(utente==null || oldPass==null || newPass==null) + Toast.makeText(getApplicationContext(), "devi riempire tutti i campi", Toast.LENGTH_SHORT).show(); + else if(!utente.contains("@studio.unibo.it")) + Toast.makeText(getApplicationContext(), "email non valida", Toast.LENGTH_SHORT).show(); + else if(newPass.contains("/")) + Toast.makeText(getApplicationContext(), "la password non deve contenere /", Toast.LENGTH_SHORT).show(); + else + { + String request = serverComunication.connessioneMain("a0/" + utente + "/" + oldPass + "/" + newPass ); + if(!request.contains("error")) + { + Intent i = new Intent(getApplicationContext(), mainActivity.class); + i.putExtra("logout", "si"); + i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + getApplicationContext().startActivity(i); + } + else + Toast.makeText(getApplicationContext(), "errore", Toast.LENGTH_SHORT).show(); + } + } + }); + Button annulla=(Button) findViewById(R.id.annulla); + annulla.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + Intent i = new Intent(getApplicationContext(), mainActivity.class); + i.putExtra("logout", "si"); + i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + getApplicationContext().startActivity(i); + } + }); + } +} diff --git a/mainActivity/src/com/example/furt/myapplication/serverComunication.java b/mainActivity/src/com/example/furt/myapplication/serverComunication.java new file mode 100755 index 0000000..9ac2c79 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/serverComunication.java @@ -0,0 +1,181 @@ +package com.example.furt.myapplication; + + +import android.content.res.Resources; +import android.os.AsyncTask; + +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.io.OutputStream; +import java.io.OutputStreamWriter; +import java.net.Socket; +import java.security.KeyManagementException; +import java.security.KeyStore; +import java.security.KeyStoreException; +import java.security.NoSuchAlgorithmException; +import java.security.cert.Certificate; +import java.security.cert.CertificateException; +import java.security.cert.CertificateFactory; +import java.security.cert.X509Certificate; +import java.util.concurrent.ExecutionException; + +import javax.net.ssl.SSLContext; +import javax.net.ssl.SSLSocketFactory; +import javax.net.ssl.TrustManagerFactory; + +public class serverComunication +{ + + serverComunication(){} + + public static String connessione(String parametri) + { + try { + return new richiestaServer().execute(parametri).get(); + } catch (InterruptedException e) { + e.printStackTrace(); + } catch (ExecutionException e) { + e.printStackTrace(); + } + return null; + } + + + + static class richiestaServer extends AsyncTask { + @Override + protected String doInBackground(String... params) + { + Resources risorse= aggiornamento.t.getResources(); + try { +// (could be from a resource or ByteArrayInputStream or ...) + CertificateFactory cf = CertificateFactory.getInstance("X.509"); +// From https://www.washington.edu/itconnect/security/ca/load-der.crt + InputStream caInput = risorse.openRawResource(R.raw.halloween); + Certificate ca; + try { + ca = cf.generateCertificate(caInput); + System.out.println("ca=" + ((X509Certificate) ca).getSubjectDN()); + } finally { + caInput.close(); + } + +// Create a KeyStore containing our trusted CAs + String keyStoreType = KeyStore.getDefaultType(); + KeyStore keyStore = KeyStore.getInstance(keyStoreType); + keyStore.load(null, null); + keyStore.setCertificateEntry("ca", ca); + +// Create a TrustManager that trusts the CAs in our KeyStore + String tmfAlgorithm = TrustManagerFactory.getDefaultAlgorithm(); + TrustManagerFactory tmf = TrustManagerFactory.getInstance(tmfAlgorithm); + tmf.init(keyStore); + +// Create an SSLContext that uses our TrustManager + SSLContext context = SSLContext.getInstance("TLS"); + context.init(null, tmf.getTrustManagers(), null); + + Socket socket; + SSLSocketFactory sf=context.getSocketFactory(); + socket=sf.createSocket(global.hostName,global.port); + OutputStream os = socket.getOutputStream(); + OutputStreamWriter osw = new OutputStreamWriter(os); + BufferedWriter bw = new BufferedWriter(osw); + bw.write(params[0]+"\n"); + bw.flush(); + BufferedReader r = new BufferedReader(new InputStreamReader(socket.getInputStream())); + String returnValue=r.readLine(); + socket.close(); + return returnValue; + } catch (KeyStoreException g) { + g.printStackTrace(); + } catch (CertificateException a) { + a.printStackTrace(); + } catch (NoSuchAlgorithmException b) { + b.printStackTrace(); + } catch (IOException c) { + c.printStackTrace(); + } catch (KeyManagementException f) { + f.printStackTrace(); + } + return "error"; + } + } + + public static String connessioneMain(String parametri) + { + try { + return new richiestaServerMain().execute(parametri).get(); + } catch (InterruptedException e) { + e.printStackTrace(); + } catch (ExecutionException e) { + e.printStackTrace(); + } + return null; + } + + + + static class richiestaServerMain extends AsyncTask { + @Override + protected String doInBackground(String... params) + { + Resources risorse= mainActivity.t.getResources(); + try { +// (could be from a resource or ByteArrayInputStream or ...) + CertificateFactory cf = CertificateFactory.getInstance("X.509"); +// From https://www.washington.edu/itconnect/security/ca/load-der.crt + InputStream caInput = risorse.openRawResource(R.raw.halloween); + Certificate ca; + try { + ca = cf.generateCertificate(caInput); + System.out.println("ca=" + ((X509Certificate) ca).getSubjectDN()); + } finally { + caInput.close(); + } + +// Create a KeyStore containing our trusted CAs + String keyStoreType = KeyStore.getDefaultType(); + KeyStore keyStore = KeyStore.getInstance(keyStoreType); + keyStore.load(null, null); + keyStore.setCertificateEntry("ca", ca); + +// Create a TrustManager that trusts the CAs in our KeyStore + String tmfAlgorithm = TrustManagerFactory.getDefaultAlgorithm(); + TrustManagerFactory tmf = TrustManagerFactory.getInstance(tmfAlgorithm); + tmf.init(keyStore); + +// Create an SSLContext that uses our TrustManager + SSLContext context = SSLContext.getInstance("TLS"); + context.init(null, tmf.getTrustManagers(), null); + + Socket socket; + SSLSocketFactory sf=context.getSocketFactory(); + socket=sf.createSocket(global.hostName,global.port); + OutputStream os = socket.getOutputStream(); + OutputStreamWriter osw = new OutputStreamWriter(os); + BufferedWriter bw = new BufferedWriter(osw); + bw.write(params[0]+"\n"); + bw.flush(); + BufferedReader r = new BufferedReader(new InputStreamReader(socket.getInputStream())); + String returnValue=r.readLine(); + socket.close(); + return returnValue; + } catch (KeyStoreException g) { + g.printStackTrace(); + } catch (CertificateException a) { + a.printStackTrace(); + } catch (NoSuchAlgorithmException b) { + b.printStackTrace(); + } catch (IOException c) { + c.printStackTrace(); + } catch (KeyManagementException f) { + f.printStackTrace(); + } + return "error"; + } + } +} diff --git a/mainActivity/src/com/example/furt/myapplication/suString.java b/mainActivity/src/com/example/furt/myapplication/suString.java new file mode 100755 index 0000000..2d5fe33 --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/suString.java @@ -0,0 +1,100 @@ +package com.example.furt.myapplication; + +import java.util.ArrayList; + +class suString +{ + suString() + {}; + + public static ArrayList stringToArrayList(String string) + { + ArrayList returnValue=new ArrayList(); + int j=0; + for(int i=0;i vectorStringToArrayList(String[] vectorString) + { + ArrayList returnValue=new ArrayList(); + for(String name : vectorString) + returnValue.add(name); + return returnValue; + } + + public static String arrayListToString (ArrayList arraylist) + { + String returnValue=new String(); + for(int i=0;i arraylist) + { + String[] returnValue=new String[arraylist.size()]; + for(int i=0;i input) + { + String returnValue=null; + for(int i=0;i stringToMultiArray(String input) + { + ArrayList result=new ArrayList(); + int j=0; + if(input==null) + return result; + for(int i=0;i L; + touchRuleHandler(List list) + { + L=list; + } + public void onClick(View view) + { + if (DrawActivity.selectedNode.Children.size()!=0) //not a leaf: can't add children + return; + for (Node n:L) { + for (Hypothesis hp:n.NodeHP) + hp.fromNode= DrawActivity.selectedNode; //le ipotesi dei nuovi figli provengono dal nodo in cui stanno per essere inserite + n.addHPList(DrawActivity.selectedNode.NodeHP); + DrawActivity.selectedNode.addChild(n); + } + DrawActivity.selectedNode.hasFocus=false; + DrawActivity.selectedNode.ruleName=L.get(0).ruleName; + DrawActivity.selectedNode.Children.get(0).hasFocus=true; + DrawActivity.nmoves++; + DrawActivity.rootNode.Clean(); + DrawActivity.startDraw(); + } +} diff --git a/mainActivity/src/com/example/furt/myapplication/touchnodeHandler.java b/mainActivity/src/com/example/furt/myapplication/touchnodeHandler.java new file mode 100755 index 0000000..4fcb64d --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/touchnodeHandler.java @@ -0,0 +1,157 @@ +package com.example.furt.myapplication; + +import android.graphics.Color; +import android.util.TypedValue; +import android.view.View; +import android.view.ViewGroup; +import android.widget.Button; +import android.widget.RelativeLayout; +import android.widget.TextView; +import android.util.Log; +import android.graphics.Paint; + +import java.util.ArrayList; +import java.util.List; + +public class touchnodeHandler implements View.OnClickListener { + + Node n; + touchnodeHandler(Node node) { + n=node; + } + @Override + public void onClick(View view) { + TextView v=(TextView)view; + v.setTextColor(Color.RED); + if (DrawActivity.selectedNode!=null) + if (DrawActivity.selectedNode.view==view) { + if (DrawActivity.selectedNode.Children.size()==0){ + List L=new ArrayList(); + + for (IntroductionRule r: DrawActivity.selectedNode.F.introductionRules()) + { + if (r.getPriority()!=0) + L.add(r); + } + if (L.size()==1) + { + Node selectedRule=L.get(0).createNodes(new askFormula()); + for (Node n : selectedRule.Children) { + for (Hypothesis hp : n.NodeHP) + hp.fromNode = DrawActivity.selectedNode; //le ipotesi dei nuovi figli provengono dal nodo in cui stanno per essere inserite + n.addHPList(DrawActivity.selectedNode.NodeHP); + n.handler = null; + DrawActivity.selectedNode.addChild(n); + } + DrawActivity.selectedNode.hasFocus = false; + DrawActivity.selectedNode.ruleName = selectedRule.Children.get(0).ruleName; + DrawActivity.selectedNode.Children.get(0).hasFocus = true; + DrawActivity.nmoves++; + DrawActivity.rootNode.Clean(); + DrawActivity.startDraw(); + } + else { + RuleDialog ruleDialog = new RuleDialog(DrawActivity.selectedNode.F.introductionRules()); + ruleDialog.show(DrawActivity.fragmentManager, "CIAO"); + } + } + else + { + CopyPasteDialog copyPasteDialog=new CopyPasteDialog(DrawActivity.selectedNode); + copyPasteDialog.show(DrawActivity.fragmentManager,""); + } + return; + } + int i,size; + if (DrawActivity.selectedNode!=null) { + if(DrawActivity.selectedNode.status==Node.OPEN || DrawActivity.selectedNode.status==Node.FAKE) + DrawActivity.selectedNode.view.setTextColor(Color.BLACK); + else + DrawActivity.selectedNode.view.setTextColor(Color.GRAY); + } + DrawActivity.selectedNode = n; + DrawActivity.globalHP.removeAllViews(); + size = n.NodeHP.size(); + int leftID=0; + int headID=0; + float sum=0; + final Button elim=new Button(view.getContext()); + String newText = "Nuova"; + elim.setText(newText); + elim.setTextSize(TypedValue.COMPLEX_UNIT_SP,16); + elim.setId(DrawActivity.globalId++); + RelativeLayout.LayoutParams myP2=new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); + elim.setLayoutParams(myP2); + elim.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + parserDialog p=new parserDialog(); + p.show(DrawActivity.fragmentManager, ""); //parte l'editor per inserire nuove formule + } + }); + DrawActivity.globalHP.addView(elim); + Paint p = new Paint(); + p.setTextSize(DrawActivity.textSize); + float newSize=p.measureText(newText)+(float)(p.measureText(newText)*0.20) + 200; + sum+=newSize; + leftID=elim.getId(); + for (i = 0; i(DrawActivity.v.widthPixels/1.5)) //ho superato la larghezza dello schermo: devo andare a capo + { + sum=n.NodeHP.get(i).HP.size(); + headID=leftID; + } + else + myP.addRule(RelativeLayout.RIGHT_OF,leftID); + if (headID!=0) + myP.addRule(RelativeLayout.BELOW,headID); + newT.setLayoutParams(myP); + List R=n.NodeHP.get(i).HP.EliminationRules(); + if (R.size()!=0) { + Node L= R.get(0).createNodes(null,new askFormula()); + newT.setOnClickListener(new touchHPHandler(L,n.NodeHP.get(i))); + } + else + newT.setOnClickListener(new touchHPHandler(null,n.NodeHP.get(i))); + newT.setOnLongClickListener(new LongHPClick(n.NodeHP.get(i).fromNode)); + leftID=newT.getId(); + DrawActivity.globalHP.addView(newT); + } +/* + final Button elim=new Button(view.getContext()); + RelativeLayout.LayoutParams myP=new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); + elim.setText("Nuova"); + elim.setTextSize(TypedValue.COMPLEX_UNIT_SP,16); + elim.setId(DrawActivity.globalId++); + myP.setMargins(50,0,0,0); + sum+=elim.getWidth(); + if (sum>(DrawActivity.v.widthPixels/1.5)) //ho superato la larghezza dello schermo: devo andare a capo + { + sum=n.NodeHP.get(i).HP.size(); + headID=leftID; + } + else + myP.addRule(RelativeLayout.RIGHT_OF,leftID); + if (headID!=0) + myP.addRule(RelativeLayout.BELOW, headID); + elim.setLayoutParams(myP); + elim.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + parserDialog p=new parserDialog(); + p.show(DrawActivity.fragmentManager, ""); //parte l'editor per inserire nuove formule + } + }); + DrawActivity.globalHP.addView(elim); +*/ + + } +} diff --git a/mainActivity/src/com/example/furt/myapplication/valutazione.java b/mainActivity/src/com/example/furt/myapplication/valutazione.java new file mode 100644 index 0000000..86aa5fd --- /dev/null +++ b/mainActivity/src/com/example/furt/myapplication/valutazione.java @@ -0,0 +1,28 @@ +package com.example.furt.myapplication; + + +import java.util.ArrayList; + +public class valutazione { + valutazione(){} + + public static int voto (String esercizio, int click, int tempo, int altezza, int errori) + { + int value=0; + ArrayList parametri= parser.getParameters(esercizio); + int minClick, minTempo, minAltezza; + if(parametri!=null && !parametri.isEmpty()) + { + minClick=Integer.valueOf(parametri.get(0)); + minTempo=Integer.valueOf(parametri.get(1)); + minAltezza=Integer.valueOf(parametri.get(2)); + // minClick : click = x : 14 + // minTempo : tempo = x : 8 + // minAltezza : altezza= x : 8 + value=((minClick*14)/click)+((minTempo*8)/tempo)+((minAltezza*8)/altezza)-errori; + if (value>30) + value=30; + } + return value; + } +} -- 2.39.2

    FyoL~mmrH_;Zr!K?gxOnpm=P&*ZUTzhZ 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 Zo`mhp!@T|1s`N&sY1El1$GDR5e*@ik=qLaH literal 0 HcmV?d00001 diff --git a/mainActivity/bin/dexedLibs/android-support-v4-70fb0600066156aa2b6d08c87cc768e7.jar b/mainActivity/bin/dexedLibs/android-support-v4-70fb0600066156aa2b6d08c87cc768e7.jar new file mode 100644 index 0000000000000000000000000000000000000000..03919cb784189da3906cf95e42ac7c54b1b966e6 GIT binary patch literal 234431 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