From: Marius Gavrilescu <marius@ieval.ro> Date: Thu, 30 May 2013 15:00:10 +0000 (+0300) Subject: Clean up the whole tree X-Git-Url: http://git.ieval.ro/?a=commitdiff_plain;h=5cf4714f0675349ed599707e024cf0e70fe114b2;p=unical.git Clean up the whole tree --- diff --git a/.classpath b/.classpath index 001d94d..a900c98 100644 --- a/.classpath +++ b/.classpath @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <classpath> - <classpathentry excluding="ro/ieval/unical/DatabaseInteract.java" kind="src" path="src"/> + <classpathentry excluding="ro/ieval/unical/DatabaseInteract.java|ro/ieval/unical/MySQLiteHelper.java" kind="src" path="src"/> <classpathentry kind="src" path="gen"/> <classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/> <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/> diff --git a/.pmd b/.pmd new file mode 100644 index 0000000..5b88d72 --- /dev/null +++ b/.pmd @@ -0,0 +1,945 @@ +<?xml version="1.0" encoding="UTF-8"?> +<pmd> + <useProjectRuleSet>false</useProjectRuleSet> + <ruleSetFile>.ruleset</ruleSetFile> + <rules> + <rule> + <name>LooseCoupling</name> + <ruleset>Type Resolution Rules</ruleset> + </rule> + <rule> + <name>CloneMethodMustImplementCloneable</name> + <ruleset>Type Resolution Rules</ruleset> + </rule> + <rule> + <name>UnusedImports</name> + <ruleset>Type Resolution Rules</ruleset> + </rule> + <rule> + <name>SignatureDeclareThrowsException</name> + <ruleset>Type Resolution Rules</ruleset> + </rule> + <rule> + <name>IfStmtsMustUseBraces</name> + <ruleset>Braces Rules</ruleset> + </rule> + <rule> + <name>WhileLoopsMustUseBraces</name> + <ruleset>Braces Rules</ruleset> + </rule> + <rule> + <name>IfElseStmtsMustUseBraces</name> + <ruleset>Braces Rules</ruleset> + </rule> + <rule> + <name>ForLoopsMustUseBraces</name> + <ruleset>Braces Rules</ruleset> + </rule> + <rule> + <name>UseSingleton</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>SimplifyBooleanReturns</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>SimplifyBooleanExpressions</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>SwitchStmtsShouldHaveDefault</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>AvoidDeeplyNestedIfStmts</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>AvoidReassigningParameters</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>SwitchDensity</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>ConstructorCallsOverridableMethod</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>AccessorClassGeneration</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>FinalFieldCouldBeStatic</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>CloseResource</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>NonStaticInitializer</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>DefaultLabelNotLastInSwitchStmt</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>NonCaseLabelInSwitchStatement</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>OptimizableToArrayCall</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>BadComparison</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>EqualsNull</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>ConfusingTernary</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>InstantiationToGetClass</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>IdempotentOperations</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>SimpleDateFormatNeedsLocale</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>ImmutableField</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>UseLocaleWithCaseConversions</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>AvoidProtectedFieldInFinalClass</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>AssignmentToNonFinalStatic</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>MissingStaticMethodInNonInstantiatableClass</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>AvoidSynchronizedAtMethodLevel</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>MissingBreakInSwitch</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>UseNotifyAllInsteadOfNotify</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>AvoidInstanceofChecksInCatchClause</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>AbstractClassWithoutAbstractMethod</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>SimplifyConditional</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>CompareObjectsWithEquals</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>PositionLiteralsFirstInComparisons</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>UnnecessaryLocalBeforeReturn</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>NonThreadSafeSingleton</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>UncommentedEmptyMethod</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>UncommentedEmptyConstructor</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>AvoidConstantsInterface</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>UnsynchronizedStaticDateFormatter</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>PreserveStackTrace</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>UseCollectionIsEmpty</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>ClassWithOnlyPrivateConstructorsShouldBeFinal</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>EmptyMethodInAbstractClassShouldBeAbstract</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>SingularField</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>ReturnEmptyArrayRatherThanNull</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>AbstractClassWithoutAnyMethod</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>TooFewBranchesForASwitchStatement</name> + <ruleset>Design Rules</ruleset> + </rule> + <rule> + <name>AvoidCatchingThrowable</name> + <ruleset>Strict Exception Rules</ruleset> + </rule> + <rule> + <name>SignatureDeclareThrowsException</name> + <ruleset>Type Resolution Rules</ruleset> + </rule> + <rule> + <name>ExceptionAsFlowControl</name> + <ruleset>Strict Exception Rules</ruleset> + </rule> + <rule> + <name>AvoidCatchingNPE</name> + <ruleset>Strict Exception Rules</ruleset> + </rule> + <rule> + <name>AvoidThrowingRawExceptionTypes</name> + <ruleset>Strict Exception Rules</ruleset> + </rule> + <rule> + <name>AvoidThrowingNullPointerException</name> + <ruleset>Strict Exception Rules</ruleset> + </rule> + <rule> + <name>AvoidRethrowingException</name> + <ruleset>Strict Exception Rules</ruleset> + </rule> + <rule> + <name>DoNotExtendJavaLangError</name> + <ruleset>Strict Exception Rules</ruleset> + </rule> + <rule> + <name>DoNotThrowExceptionInFinally</name> + <ruleset>Strict Exception Rules</ruleset> + </rule> + <rule> + <name>AvoidThrowingNewInstanceOfSameException</name> + <ruleset>Strict Exception Rules</ruleset> + </rule> + <rule> + <name>UnusedPrivateField</name> + <ruleset>Unused Code Rules</ruleset> + </rule> + <rule> + <name>UnusedLocalVariable</name> + <ruleset>Unused Code Rules</ruleset> + </rule> + <rule> + <name>UnusedPrivateMethod</name> + <ruleset>Unused Code Rules</ruleset> + </rule> + <rule> + <name>UnusedFormalParameter</name> + <ruleset>Unused Code Rules</ruleset> + </rule> + <rule> + <name>MoreThanOneLogger</name> + <ruleset>Java Logging Rules</ruleset> + </rule> + <rule> + <name>LoggerIsNotStaticFinal</name> + <ruleset>Java Logging Rules</ruleset> + </rule> + <rule> + <name>SystemPrintln</name> + <ruleset>Java Logging Rules</ruleset> + </rule> + <rule> + <name>AvoidPrintStackTrace</name> + <ruleset>Java Logging Rules</ruleset> + </rule> + <rule> + <name>AvoidDuplicateLiterals</name> + <ruleset>String and StringBuffer Rules</ruleset> + </rule> + <rule> + <name>StringInstantiation</name> + <ruleset>String and StringBuffer Rules</ruleset> + </rule> + <rule> + <name>StringToString</name> + <ruleset>String and StringBuffer Rules</ruleset> + </rule> + <rule> + <name>InefficientStringBuffering</name> + <ruleset>String and StringBuffer Rules</ruleset> + </rule> + <rule> + <name>UnnecessaryCaseChange</name> + <ruleset>String and StringBuffer Rules</ruleset> + </rule> + <rule> + <name>UseStringBufferLength</name> + <ruleset>String and StringBuffer Rules</ruleset> + </rule> + <rule> + <name>AppendCharacterWithChar</name> + <ruleset>String and StringBuffer Rules</ruleset> + </rule> + <rule> + <name>ConsecutiveLiteralAppends</name> + <ruleset>String and StringBuffer Rules</ruleset> + </rule> + <rule> + <name>UseIndexOfChar</name> + <ruleset>String and StringBuffer Rules</ruleset> + </rule> + <rule> + <name>InefficientEmptyStringCheck</name> + <ruleset>String and StringBuffer Rules</ruleset> + </rule> + <rule> + <name>InsufficientStringBufferDeclaration</name> + <ruleset>String and StringBuffer Rules</ruleset> + </rule> + <rule> + <name>UselessStringValueOf</name> + <ruleset>String and StringBuffer Rules</ruleset> + </rule> + <rule> + <name>StringBufferInstantiationWithChar</name> + <ruleset>String and StringBuffer Rules</ruleset> + </rule> + <rule> + <name>UseEqualsToCompareStrings</name> + <ruleset>String and StringBuffer Rules</ruleset> + </rule> + <rule> + <name>AvoidStringBufferField</name> + <ruleset>String and StringBuffer Rules</ruleset> + </rule> + <rule> + <name>ReplaceVectorWithList</name> + <ruleset>Migration Rules</ruleset> + </rule> + <rule> + <name>ReplaceHashtableWithMap</name> + <ruleset>Migration Rules</ruleset> + </rule> + <rule> + <name>ReplaceEnumerationWithIterator</name> + <ruleset>Migration Rules</ruleset> + </rule> + <rule> + <name>AvoidEnumAsIdentifier</name> + <ruleset>Migration Rules</ruleset> + </rule> + <rule> + <name>AvoidAssertAsIdentifier</name> + <ruleset>Migration Rules</ruleset> + </rule> + <rule> + <name>IntegerInstantiation</name> + <ruleset>Migration Rules</ruleset> + </rule> + <rule> + <name>ByteInstantiation</name> + <ruleset>Migration Rules</ruleset> + </rule> + <rule> + <name>ShortInstantiation</name> + <ruleset>Migration Rules</ruleset> + </rule> + <rule> + <name>LongInstantiation</name> + <ruleset>Migration Rules</ruleset> + </rule> + <rule> + <name>JUnit4TestShouldUseBeforeAnnotation</name> + <ruleset>Migration Rules</ruleset> + </rule> + <rule> + <name>JUnit4TestShouldUseAfterAnnotation</name> + <ruleset>Migration Rules</ruleset> + </rule> + <rule> + <name>JUnit4TestShouldUseTestAnnotation</name> + <ruleset>Migration Rules</ruleset> + </rule> + <rule> + <name>JUnit4SuitesShouldUseSuiteAnnotation</name> + <ruleset>Migration Rules</ruleset> + </rule> + <rule> + <name>JUnitUseExpected</name> + <ruleset>Migration Rules</ruleset> + </rule> + <rule> + <name>UseProperClassLoader</name> + <ruleset>J2EE Rules</ruleset> + </rule> + <rule> + <name>MDBAndSessionBeanNamingConvention</name> + <ruleset>J2EE Rules</ruleset> + </rule> + <rule> + <name>RemoteSessionInterfaceNamingConvention</name> + <ruleset>J2EE Rules</ruleset> + </rule> + <rule> + <name>LocalInterfaceSessionNamingConvention</name> + <ruleset>J2EE Rules</ruleset> + </rule> + <rule> + <name>LocalHomeNamingConvention</name> + <ruleset>J2EE Rules</ruleset> + </rule> + <rule> + <name>RemoteInterfaceNamingConvention</name> + <ruleset>J2EE Rules</ruleset> + </rule> + <rule> + <name>DoNotCallSystemExit</name> + <ruleset>J2EE Rules</ruleset> + </rule> + <rule> + <name>StaticEJBFieldShouldBeFinal</name> + <ruleset>J2EE Rules</ruleset> + </rule> + <rule> + <name>DoNotUseThreads</name> + <ruleset>J2EE Rules</ruleset> + </rule> + <rule> + <name>LocalVariableCouldBeFinal</name> + <ruleset>Optimization Rules</ruleset> + </rule> + <rule> + <name>MethodArgumentCouldBeFinal</name> + <ruleset>Optimization Rules</ruleset> + </rule> + <rule> + <name>AvoidInstantiatingObjectsInLoops</name> + <ruleset>Optimization Rules</ruleset> + </rule> + <rule> + <name>UseArrayListInsteadOfVector</name> + <ruleset>Optimization Rules</ruleset> + </rule> + <rule> + <name>SimplifyStartsWith</name> + <ruleset>Optimization Rules</ruleset> + </rule> + <rule> + <name>UseStringBufferForStringAppends</name> + <ruleset>Optimization Rules</ruleset> + </rule> + <rule> + <name>UseArraysAsList</name> + <ruleset>Optimization Rules</ruleset> + </rule> + <rule> + <name>AvoidArrayLoops</name> + <ruleset>Optimization Rules</ruleset> + </rule> + <rule> + <name>UnnecessaryWrapperObjectCreation</name> + <ruleset>Optimization Rules</ruleset> + </rule> + <rule> + <name>AddEmptyString</name> + <ruleset>Optimization Rules</ruleset> + </rule> + <rule> + <name>EmptyCatchBlock</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>EmptyIfStmt</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>EmptyWhileStmt</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>EmptyTryBlock</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>EmptyFinallyBlock</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>EmptySwitchStatements</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>JumbledIncrementer</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>ForLoopShouldBeWhileLoop</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>UnnecessaryConversionTemporary</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>OverrideBothEqualsAndHashcode</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>DoubleCheckedLocking</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>ReturnFromFinallyBlock</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>EmptySynchronizedBlock</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>UnnecessaryReturn</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>EmptyStaticInitializer</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>UnconditionalIfStatement</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>EmptyStatementNotInLoop</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>BooleanInstantiation</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>UnnecessaryFinalModifier</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>CollapsibleIfStatements</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>UselessOverridingMethod</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>ClassCastExceptionWithToArray</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>AvoidDecimalLiteralsInBigDecimalConstructor</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>UselessOperationOnImmutable</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>MisplacedNullCheck</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>UnusedNullCheckInEquals</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>AvoidThreadGroup</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>BrokenNullCheck</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>BigIntegerInstantiation</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>AvoidUsingOctalValues</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>AvoidUsingHardCodedIP</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>CheckResultSet</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>AvoidMultipleUnaryOperators</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>EmptyInitializer</name> + <ruleset>Basic Rules</ruleset> + </rule> + <rule> + <name>MethodReturnsInternalArray</name> + <ruleset>Security Code Guidelines</ruleset> + </rule> + <rule> + <name>ArrayIsStoredDirectly</name> + <ruleset>Security Code Guidelines</ruleset> + </rule> + <rule> + <name>CouplingBetweenObjects</name> + <ruleset>Coupling Rules</ruleset> + </rule> + <rule> + <name>ExcessiveImports</name> + <ruleset>Coupling Rules</ruleset> + </rule> + <rule> + <name>LooseCoupling</name> + <ruleset>Type Resolution Rules</ruleset> + </rule> + <rule> + <name>DuplicateImports</name> + <ruleset>Import Statement Rules</ruleset> + </rule> + <rule> + <name>DontImportJavaLang</name> + <ruleset>Import Statement Rules</ruleset> + </rule> + <rule> + <name>UnusedImports</name> + <ruleset>Type Resolution Rules</ruleset> + </rule> + <rule> + <name>ImportFromSamePackage</name> + <ruleset>Import Statement Rules</ruleset> + </rule> + <rule> + <name>TooManyStaticImports</name> + <ruleset>Import Statement Rules</ruleset> + </rule> + <rule> + <name>JUnitStaticSuite</name> + <ruleset>JUnit Rules</ruleset> + </rule> + <rule> + <name>JUnitSpelling</name> + <ruleset>JUnit Rules</ruleset> + </rule> + <rule> + <name>JUnitAssertionsShouldIncludeMessage</name> + <ruleset>JUnit Rules</ruleset> + </rule> + <rule> + <name>JUnitTestsShouldIncludeAssert</name> + <ruleset>JUnit Rules</ruleset> + </rule> + <rule> + <name>TestClassWithoutTestCases</name> + <ruleset>JUnit Rules</ruleset> + </rule> + <rule> + <name>UnnecessaryBooleanAssertion</name> + <ruleset>JUnit Rules</ruleset> + </rule> + <rule> + <name>UseAssertEqualsInsteadOfAssertTrue</name> + <ruleset>JUnit Rules</ruleset> + </rule> + <rule> + <name>UseAssertSameInsteadOfAssertTrue</name> + <ruleset>JUnit Rules</ruleset> + </rule> + <rule> + <name>UseAssertNullInsteadOfAssertTrue</name> + <ruleset>JUnit Rules</ruleset> + </rule> + <rule> + <name>SimplifyBooleanAssertion</name> + <ruleset>JUnit Rules</ruleset> + </rule> + <rule> + <name>UnnecessaryConstructor</name> + <ruleset>Controversial Rules</ruleset> + </rule> + <rule> + <name>NullAssignment</name> + <ruleset>Controversial Rules</ruleset> + </rule> + <rule> + <name>UnusedModifier</name> + <ruleset>Controversial Rules</ruleset> + </rule> + <rule> + <name>AssignmentInOperand</name> + <ruleset>Controversial Rules</ruleset> + </rule> + <rule> + <name>AtLeastOneConstructor</name> + <ruleset>Controversial Rules</ruleset> + </rule> + <rule> + <name>DontImportSun</name> + <ruleset>Controversial Rules</ruleset> + </rule> + <rule> + <name>SuspiciousOctalEscape</name> + <ruleset>Controversial Rules</ruleset> + </rule> + <rule> + <name>CallSuperInConstructor</name> + <ruleset>Controversial Rules</ruleset> + </rule> + <rule> + <name>UnnecessaryParentheses</name> + <ruleset>Controversial Rules</ruleset> + </rule> + <rule> + <name>DefaultPackage</name> + <ruleset>Controversial Rules</ruleset> + </rule> + <rule> + <name>BooleanInversion</name> + <ruleset>Controversial Rules</ruleset> + </rule> + <rule> + <name>DataflowAnomalyAnalysis</name> + <ruleset>Controversial Rules</ruleset> + </rule> + <rule> + <name>AvoidFinalLocalVariable</name> + <ruleset>Controversial Rules</ruleset> + </rule> + <rule> + <name>AvoidUsingShortType</name> + <ruleset>Controversial Rules</ruleset> + </rule> + <rule> + <name>AvoidUsingVolatile</name> + <ruleset>Controversial Rules</ruleset> + </rule> + <rule> + <name>AvoidUsingNativeCode</name> + <ruleset>Controversial Rules</ruleset> + </rule> + <rule> + <name>AvoidAccessibilityAlteration</name> + <ruleset>Controversial Rules</ruleset> + </rule> + <rule> + <name>DoNotCallGarbageCollectionExplicitly</name> + <ruleset>Controversial Rules</ruleset> + </rule> + <rule> + <name>ShortMethodName</name> + <ruleset>Naming Rules</ruleset> + </rule> + <rule> + <name>VariableNamingConventions</name> + <ruleset>Naming Rules</ruleset> + </rule> + <rule> + <name>MethodNamingConventions</name> + <ruleset>Naming Rules</ruleset> + </rule> + <rule> + <name>ClassNamingConventions</name> + <ruleset>Naming Rules</ruleset> + </rule> + <rule> + <name>AbstractNaming</name> + <ruleset>Naming Rules</ruleset> + </rule> + <rule> + <name>AvoidDollarSigns</name> + <ruleset>Naming Rules</ruleset> + </rule> + <rule> + <name>MethodWithSameNameAsEnclosingClass</name> + <ruleset>Naming Rules</ruleset> + </rule> + <rule> + <name>SuspiciousHashcodeMethodName</name> + <ruleset>Naming Rules</ruleset> + </rule> + <rule> + <name>SuspiciousConstantFieldName</name> + <ruleset>Naming Rules</ruleset> + </rule> + <rule> + <name>SuspiciousEqualsMethodName</name> + <ruleset>Naming Rules</ruleset> + </rule> + <rule> + <name>AvoidFieldNameMatchingTypeName</name> + <ruleset>Naming Rules</ruleset> + </rule> + <rule> + <name>AvoidFieldNameMatchingMethodName</name> + <ruleset>Naming Rules</ruleset> + </rule> + <rule> + <name>NoPackage</name> + <ruleset>Naming Rules</ruleset> + </rule> + <rule> + <name>PackageCase</name> + <ruleset>Naming Rules</ruleset> + </rule> + <rule> + <name>MisleadingVariableName</name> + <ruleset>Naming Rules</ruleset> + </rule> + <rule> + <name>BooleanGetMethodName</name> + <ruleset>Naming Rules</ruleset> + </rule> + <rule> + <name>NPathComplexity</name> + <ruleset>Code Size Rules</ruleset> + </rule> + <rule> + <name>ExcessiveMethodLength</name> + <ruleset>Code Size Rules</ruleset> + </rule> + <rule> + <name>ExcessiveParameterList</name> + <ruleset>Code Size Rules</ruleset> + </rule> + <rule> + <name>ExcessiveClassLength</name> + <ruleset>Code Size Rules</ruleset> + </rule> + <rule> + <name>CyclomaticComplexity</name> + <ruleset>Code Size Rules</ruleset> + </rule> + <rule> + <name>ExcessivePublicCount</name> + <ruleset>Code Size Rules</ruleset> + </rule> + <rule> + <name>TooManyFields</name> + <ruleset>Code Size Rules</ruleset> + </rule> + <rule> + <name>NcssMethodCount</name> + <ruleset>Code Size Rules</ruleset> + </rule> + <rule> + <name>NcssTypeCount</name> + <ruleset>Code Size Rules</ruleset> + </rule> + <rule> + <name>NcssConstructorCount</name> + <ruleset>Code Size Rules</ruleset> + </rule> + <rule> + <name>TooManyMethods</name> + <ruleset>Code Size Rules</ruleset> + </rule> + <rule> + <name>EmptyFinalizer</name> + <ruleset>Finalizer Rules</ruleset> + </rule> + <rule> + <name>FinalizeOnlyCallsSuperFinalize</name> + <ruleset>Finalizer Rules</ruleset> + </rule> + <rule> + <name>FinalizeOverloaded</name> + <ruleset>Finalizer Rules</ruleset> + </rule> + <rule> + <name>FinalizeDoesNotCallSuperFinalize</name> + <ruleset>Finalizer Rules</ruleset> + </rule> + <rule> + <name>FinalizeShouldBeProtected</name> + <ruleset>Finalizer Rules</ruleset> + </rule> + <rule> + <name>AvoidCallingFinalize</name> + <ruleset>Finalizer Rules</ruleset> + </rule> + <rule> + <name>UseCorrectExceptionLogging</name> + <ruleset>Jakarta Commons Logging Rules</ruleset> + </rule> + <rule> + <name>ProperLogger</name> + <ruleset>Jakarta Commons Logging Rules</ruleset> + </rule> + <rule> + <name>BeanMembersShouldSerialize</name> + <ruleset>JavaBean Rules</ruleset> + </rule> + <rule> + <name>MissingSerialVersionUID</name> + <ruleset>JavaBean Rules</ruleset> + </rule> + <rule> + <name>ProperCloneImplementation</name> + <ruleset>Clone Implementation Rules</ruleset> + </rule> + <rule> + <name>CloneThrowsCloneNotSupportedException</name> + <ruleset>Clone Implementation Rules</ruleset> + </rule> + <rule> + <name>CloneMethodMustImplementCloneable</name> + <ruleset>Type Resolution Rules</ruleset> + </rule> + </rules> + <includeDerivedFiles>false</includeDerivedFiles> + <violationsAsErrors>true</violationsAsErrors> +</pmd> diff --git a/AndroidManifest.xml b/AndroidManifest.xml index b5b6a8c..dd5e5d1 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -1,7 +1,7 @@ <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="ro.ieval.unical" android:versionCode="1" - android:versionName="1.0" > + android:versionName="0.1" > <uses-sdk android:minSdkVersion="14" @@ -15,17 +15,16 @@ android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > - <activity android:name=".mainActivity"> + <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity> - <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/app_id"/> - <activity android:name="loginActivity"> + <activity android:name=".LoginActivity"> </activity> - <activity android:name=".addEventActivity"></activity> - <activity android:name=".displayEventActivity"></activity> + <activity android:name=".AddEventActivity"></activity> + <activity android:name=".DisplayEventActivity"></activity> </application> </manifest> \ No newline at end of file diff --git a/res/layout/add_event.xml b/res/layout/add_event.xml new file mode 100644 index 0000000..0e57abc --- /dev/null +++ b/res/layout/add_event.xml @@ -0,0 +1,106 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="vertical" > + + <ScrollView + android:id="@+id/scrollView1" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_weight="1.00" > + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:orientation="vertical" > + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_weight="2.13" > + + <TextView + android:id="@+id/textView1" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="@string/title" + android:textAppearance="?android:attr/textAppearanceMedium" /> + + <EditText + android:id="@+id/editText1" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:ems="10" > + + <requestFocus /> + </EditText> + + </LinearLayout> + + <TextView + android:id="@+id/location" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:text="@string/description" + android:textAppearance="?android:attr/textAppearanceMedium" /> + + <EditText + android:id="@+id/editText2" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_weight="2.13" + android:ems="10" + android:inputType="textMultiLine" /> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_weight="2.13" > + + <CheckBox + android:id="@+id/checkBox1" + android:layout_width="0dip" + android:layout_height="wrap_content" + android:layout_weight="2.13" + android:text="@string/repeatlabel" /> + + <Spinner + android:id="@+id/spinner1" + android:layout_width="213dp" + android:layout_height="wrap_content" /> + + </LinearLayout> + + </LinearLayout> + + </ScrollView> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_weight="1.00" > + + <TextView + android:id="@+id/textView3" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="@string/locationlabel" + android:textAppearance="?android:attr/textAppearanceMedium" /> + + <EditText + android:id="@+id/editText3" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:ems="10" /> + + </LinearLayout> + + <Button + android:id="@+id/AddEventButton" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:text="Add Event" + /> + +</LinearLayout> \ No newline at end of file diff --git a/res/layout/addevent.xml b/res/layout/addevent.xml deleted file mode 100644 index 0e57abc..0000000 --- a/res/layout/addevent.xml +++ /dev/null @@ -1,106 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" - android:layout_width="match_parent" - android:layout_height="match_parent" - android:orientation="vertical" > - - <ScrollView - android:id="@+id/scrollView1" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_weight="1.00" > - - <LinearLayout - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:orientation="vertical" > - - <LinearLayout - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_weight="2.13" > - - <TextView - android:id="@+id/textView1" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="@string/title" - android:textAppearance="?android:attr/textAppearanceMedium" /> - - <EditText - android:id="@+id/editText1" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:ems="10" > - - <requestFocus /> - </EditText> - - </LinearLayout> - - <TextView - android:id="@+id/location" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:text="@string/description" - android:textAppearance="?android:attr/textAppearanceMedium" /> - - <EditText - android:id="@+id/editText2" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_weight="2.13" - android:ems="10" - android:inputType="textMultiLine" /> - - <LinearLayout - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_weight="2.13" > - - <CheckBox - android:id="@+id/checkBox1" - android:layout_width="0dip" - android:layout_height="wrap_content" - android:layout_weight="2.13" - android:text="@string/repeatlabel" /> - - <Spinner - android:id="@+id/spinner1" - android:layout_width="213dp" - android:layout_height="wrap_content" /> - - </LinearLayout> - - </LinearLayout> - - </ScrollView> - - <LinearLayout - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_weight="1.00" > - - <TextView - android:id="@+id/textView3" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="@string/locationlabel" - android:textAppearance="?android:attr/textAppearanceMedium" /> - - <EditText - android:id="@+id/editText3" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:ems="10" /> - - </LinearLayout> - - <Button - android:id="@+id/AddEventButton" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:text="Add Event" - /> - -</LinearLayout> \ No newline at end of file diff --git a/res/layout/event_view.xml b/res/layout/event_view.xml new file mode 100644 index 0000000..b8f7713 --- /dev/null +++ b/res/layout/event_view.xml @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="vertical" > + + <TextView + android:id="@+id/eventTitle" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:gravity="center" + android:text="" + android:textSize="35sp" + android:selectAllOnFocus="true" + android:textIsSelectable="true" + /> + + <TextView + android:id="@+id/date" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:selectAllOnFocus="true" + android:textIsSelectable="true" + android:textSize="20sp" + /> + + <TextView + android:id="@+id/description" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="@string/descriptionlabel" + android:textAppearance="?android:attr/textAppearanceMedium" /> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" > + + <TextView + android:id="@+id/textView1" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="@string/locationlabel" + android:textAppearance="?android:attr/textAppearanceMedium" /> + + <TextView + android:id="@+id/location" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:textAppearance="?android:attr/textAppearanceMedium" /> + + </LinearLayout> + +</LinearLayout> \ No newline at end of file diff --git a/res/layout/eventview.xml b/res/layout/eventview.xml deleted file mode 100644 index b8f7713..0000000 --- a/res/layout/eventview.xml +++ /dev/null @@ -1,53 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" - android:layout_width="match_parent" - android:layout_height="match_parent" - android:orientation="vertical" > - - <TextView - android:id="@+id/eventTitle" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:gravity="center" - android:text="" - android:textSize="35sp" - android:selectAllOnFocus="true" - android:textIsSelectable="true" - /> - - <TextView - android:id="@+id/date" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:selectAllOnFocus="true" - android:textIsSelectable="true" - android:textSize="20sp" - /> - - <TextView - android:id="@+id/description" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="@string/descriptionlabel" - android:textAppearance="?android:attr/textAppearanceMedium" /> - - <LinearLayout - android:layout_width="match_parent" - android:layout_height="wrap_content" > - - <TextView - android:id="@+id/textView1" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="@string/locationlabel" - android:textAppearance="?android:attr/textAppearanceMedium" /> - - <TextView - android:id="@+id/location" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:textAppearance="?android:attr/textAppearanceMedium" /> - - </LinearLayout> - -</LinearLayout> \ No newline at end of file diff --git a/res/layout/login.xml b/res/layout/login.xml index c04cf76..e3af67c 100644 --- a/res/layout/login.xml +++ b/res/layout/login.xml @@ -4,60 +4,25 @@ android:layout_height="match_parent" android:orientation="vertical" > - <TextView - android:id="@+id/textView1" + <EditText + android:id="@+id/usernameEditText" android:layout_width="match_parent" android:layout_height="wrap_content" - android:text="@string/login" - android:textAlignment="center" - android:textAppearance="?android:attr/textAppearanceLarge" /> + android:ems="10" + android:hint="@string/username" /> - <LinearLayout + <EditText + android:id="@+id/passwordEditText" android:layout_width="match_parent" - android:layout_height="wrap_content"> - - <TextView - android:id="@+id/location" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="@string/userlabel" - android:textAppearance="?android:attr/textAppearanceMedium" /> - - <EditText - android:id="@+id/editText1" - android:layout_width="0dip" - android:layout_height="wrap_content" - android:layout_weight="1" - android:ems="10" /> - </LinearLayout> - - <LinearLayout - android:layout_width="match_parent" - android:layout_height="wrap_content" > - - <TextView - android:id="@+id/textView3" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="@string/passwordlabel" - android:textAppearance="?android:attr/textAppearanceMedium" /> - - <EditText - android:id="@+id/editText2" - android:layout_width="0dip" - android:layout_height="wrap_content" - android:layout_weight="0.62" - android:ems="10" - android:inputType="textPassword" > - - <requestFocus /> - </EditText> - </LinearLayout> + android:layout_height="wrap_content" + android:ems="10" + android:hint = "@string/password" + android:inputType="textPassword" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:text="@string/login" /> + android:text="@string/log_in" /> </LinearLayout> \ No newline at end of file diff --git a/res/menu/event.xml b/res/menu/event.xml new file mode 100644 index 0000000..9a454e1 --- /dev/null +++ b/res/menu/event.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="utf-8"?> +<menu xmlns:android="http://schemas.android.com/apk/res/android" > + <item android:id="@+id/deleteevent" android:icon="@android:drawable/ic_menu_delete" android:title="Delete Event" android:visible="true" android:titleCondensed="DELETE" android:showAsAction="always"></item> + <item android:id="@+id/NewEvent" android:title="New event" + android:visible="true" android:showAsAction="ifRoom" + android:icon="@android:drawable/ic_menu_add" + android:titleCondensed="NEW"> + + </item> + + +</menu> diff --git a/res/menu/eventmenu.xml b/res/menu/eventmenu.xml deleted file mode 100644 index 9a454e1..0000000 --- a/res/menu/eventmenu.xml +++ /dev/null @@ -1,12 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<menu xmlns:android="http://schemas.android.com/apk/res/android" > - <item android:id="@+id/deleteevent" android:icon="@android:drawable/ic_menu_delete" android:title="Delete Event" android:visible="true" android:titleCondensed="DELETE" android:showAsAction="always"></item> - <item android:id="@+id/NewEvent" android:title="New event" - android:visible="true" android:showAsAction="ifRoom" - android:icon="@android:drawable/ic_menu_add" - android:titleCondensed="NEW"> - - </item> - - -</menu> diff --git a/res/menu/main.xml b/res/menu/main.xml new file mode 100644 index 0000000..6cc0074 --- /dev/null +++ b/res/menu/main.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="utf-8"?> +<menu xmlns:android="http://schemas.android.com/apk/res/android" > + <item android:id="@+id/NewEvent" android:title="New event" + android:visible="true" android:showAsAction="always" + android:icon="@android:drawable/ic_menu_add" + android:titleCondensed="NEW"> + + </item> + + +</menu> diff --git a/res/menu/mainmenu.xml b/res/menu/mainmenu.xml deleted file mode 100644 index 6cc0074..0000000 --- a/res/menu/mainmenu.xml +++ /dev/null @@ -1,11 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<menu xmlns:android="http://schemas.android.com/apk/res/android" > - <item android:id="@+id/NewEvent" android:title="New event" - android:visible="true" android:showAsAction="always" - android:icon="@android:drawable/ic_menu_add" - android:titleCondensed="NEW"> - - </item> - - -</menu> diff --git a/res/values/strings.xml b/res/values/strings.xml index 4a95438..482b58a 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -5,10 +5,10 @@ <string name="title">Title</string> <string name="description">Description</string> <string name="descriptionlabel">Description: </string> - <string name="login">Log In</string> + <string name="log_in">Log In</string> <string name="location">Location</string> - <string name="userlabel">User: </string> - <string name="passwordlabel">Pass: </string> + <string name="username">Username</string> + <string name="password">Password</string> <string name="locationlabel">Location: </string> <string name="repeatlabel">Repeating</string> <string name="yes">Yes</string> diff --git a/src/ro/ieval/unical/AddEventActivity.java b/src/ro/ieval/unical/AddEventActivity.java new file mode 100644 index 0000000..efb6de7 --- /dev/null +++ b/src/ro/ieval/unical/AddEventActivity.java @@ -0,0 +1,11 @@ +package ro.ieval.unical; +import android.app.Activity; +import android.os.Bundle; + +public final class AddEventActivity extends Activity { + @Override + protected void onCreate(final Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.add_event); + } +} diff --git a/src/ro/ieval/unical/Constants.java b/src/ro/ieval/unical/Constants.java deleted file mode 100644 index 031ea59..0000000 --- a/src/ro/ieval/unical/Constants.java +++ /dev/null @@ -1,8 +0,0 @@ -package ro.ieval.unical; - - -public class Constants { - public static String searchUrl="https://unical.ieval.ro/search"; - public static String user="asd"; - public static String password="asd"; -} diff --git a/src/ro/ieval/unical/DeleteEventDialog.java b/src/ro/ieval/unical/DeleteEventDialog.java new file mode 100644 index 0000000..809149a --- /dev/null +++ b/src/ro/ieval/unical/DeleteEventDialog.java @@ -0,0 +1,25 @@ +package ro.ieval.unical; + +import android.app.AlertDialog; +import android.app.Dialog; +import android.app.DialogFragment; +import android.content.DialogInterface; +import android.os.Bundle; + +public final class DeleteEventDialog extends DialogFragment { + @Override + public Dialog onCreateDialog(final Bundle savedInstanceState) { + final AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); + builder.setMessage(R.string.askdeleteevent) + .setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() { + public void onClick(final DialogInterface dialog, final int id) { + } + }) + .setNegativeButton(R.string.no, new DialogInterface.OnClickListener() { + public void onClick(final DialogInterface dialog, final int id) { + // User cancelled the dialog + } + }); + return builder.create(); + } +} diff --git a/src/ro/ieval/unical/DisplayEventActivity.java b/src/ro/ieval/unical/DisplayEventActivity.java new file mode 100644 index 0000000..6208d23 --- /dev/null +++ b/src/ro/ieval/unical/DisplayEventActivity.java @@ -0,0 +1,61 @@ +package ro.ieval.unical; + +import java.util.Date; + +import android.app.Activity; +import android.content.Context; +import android.content.Intent; +import android.os.Bundle; +import android.view.Menu; +import android.view.MenuInflater; +import android.view.MenuItem; +import android.widget.TextView; + +public class DisplayEventActivity extends Activity { + public static final String EXTRA_EVENT = "event"; + + public static void displayEvent(final Context context, final Event event){ + final Intent i=new Intent(context,DisplayEventActivity.class); + i.putExtra(DisplayEventActivity.EXTRA_EVENT, event); + context.startActivity(i); + } + + @Override + protected void onCreate(final Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + final Event e=getIntent().getParcelableExtra(EXTRA_EVENT); + setContentView(R.layout.event_view); + final TextView eventTitle= (TextView) findViewById(R.id.eventTitle); + final TextView date=(TextView) findViewById(R.id.date); + final TextView description=(TextView) findViewById(R.id.description); + final TextView location= (TextView) findViewById(R.id.location); + eventTitle.setText(e.title); + date.setText(new Date(e.dtstart).toString()); + description.setText(e.description); + location.setText(e.eventLocation); + } + + @Override + public boolean onCreateOptionsMenu(final Menu menu) { + final MenuInflater inflater = getMenuInflater(); + inflater.inflate(R.menu.event, menu); + return true; + } + + @Override + public boolean onOptionsItemSelected(final MenuItem item) { + // Handle item selection + switch (item.getItemId()) { + case R.id.NewEvent: + final Intent i=new Intent(this,AddEventActivity.class); + startActivity(i); + return true; + case R.id.deleteevent: + final DeleteEventDialog d=new DeleteEventDialog(); + d.show(getFragmentManager(), "Delete"); + return true; + default: + return true; + } + } +} diff --git a/src/ro/ieval/unical/Event.java b/src/ro/ieval/unical/Event.java index c09e366..d1e8b22 100644 --- a/src/ro/ieval/unical/Event.java +++ b/src/ro/ieval/unical/Event.java @@ -11,12 +11,12 @@ import android.provider.CalendarContract.Events; final class Event implements Parcelable{ public static final Parcelable.Creator<Event> CREATOR = new Parcelable.Creator<Event>() { @Override - public Event createFromParcel(Parcel source) { + public Event createFromParcel(final Parcel source) { return new Event(source.readLong(), source.readString(), source.readString(), source.readString(), source.readString(), source.readInt(), source.readLong(), source.readLong(), source.readLong()); } @Override - public Event[] newArray(int size) { + public Event[] newArray(final int size) { return new Event[size]; } }; @@ -89,7 +89,7 @@ final class Event implements Parcelable{ } @Override - public void writeToParcel(Parcel dest, int flags) { + public void writeToParcel(final Parcel dest, final int flags) { dest.writeLong(_id); dest.writeString(organizer); dest.writeString(title); diff --git a/src/ro/ieval/unical/LoginActivity.java b/src/ro/ieval/unical/LoginActivity.java new file mode 100644 index 0000000..8c958be --- /dev/null +++ b/src/ro/ieval/unical/LoginActivity.java @@ -0,0 +1,29 @@ +package ro.ieval.unical; + +import android.app.Activity; +import android.os.Bundle; +import android.view.View; +import android.widget.Button; +import android.widget.EditText; + +public final class LoginActivity extends Activity { + + @Override + protected void onCreate(final Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.login); + setTitle(R.string.log_in); + + final EditText user=(EditText) findViewById(R.id.editText1); + final EditText pass=(EditText) findViewById(R.id.editText2); + final Button logIn=(Button) findViewById(R.id.button1); + + logIn.setOnClickListener(new View.OnClickListener() { + + @Override + public void onClick(final View v) { + setContentView(R.layout.event_view); + } + }); + } +} diff --git a/src/ro/ieval/unical/MainActivity.java b/src/ro/ieval/unical/MainActivity.java new file mode 100644 index 0000000..12ecca1 --- /dev/null +++ b/src/ro/ieval/unical/MainActivity.java @@ -0,0 +1,46 @@ +package ro.ieval.unical; +import android.content.Intent; +import android.content.SharedPreferences; +import android.os.Bundle; +import android.preference.PreferenceManager; +import android.provider.CalendarContract.Events; +import android.view.Menu; +import android.view.MenuInflater; +import android.view.MenuItem; + +public class MainActivity extends android.app.Activity { + + @Override + protected void onCreate(final Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + final SharedPreferences prefs=PreferenceManager.getDefaultSharedPreferences(this); + if(prefs.getBoolean("FirstTime", true)) { + prefs.edit().putBoolean("FirstTime", false).commit(); + final Intent i=new Intent(this,LoginActivity.class); + startActivity(i); + } + + DisplayEventActivity.displayEvent(this, Event.getEventsByCalendar(this, + Calendar.getAllCalendars(this)[0]._id, Events.DTSTART)[0]); + } + + @Override + public boolean onCreateOptionsMenu(final Menu menu) { + final MenuInflater inflater = getMenuInflater(); + inflater.inflate(R.menu.main, menu); + return true; + } + + @Override + public boolean onOptionsItemSelected(final MenuItem item) { + switch (item.getItemId()) { + case R.id.NewEvent: + final Intent i=new Intent(this,AddEventActivity.class); + startActivity(i); + return true; + default: + return false; + } + } +} diff --git a/src/ro/ieval/unical/Utils.java b/src/ro/ieval/unical/Utils.java deleted file mode 100644 index 4976605..0000000 --- a/src/ro/ieval/unical/Utils.java +++ /dev/null @@ -1,8 +0,0 @@ -package ro.ieval.unical; - -public class Utils { - public static boolean loginSuccess(String user, String pass) { - // TODO Auto-generated method stub - return true; - } -} diff --git a/src/ro/ieval/unical/addEventActivity.java b/src/ro/ieval/unical/addEventActivity.java deleted file mode 100644 index 47b48c9..0000000 --- a/src/ro/ieval/unical/addEventActivity.java +++ /dev/null @@ -1,15 +0,0 @@ -package ro.ieval.unical; -import ro.ieval.unical.R; -import android.app.Activity; -import android.os.Bundle; -import android.widget.Spinner; - - -public class addEventActivity extends Activity { - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - Spinner spinner=(Spinner) findViewById(R.id.spinner1); - setContentView(R.layout.addevent); - } -} diff --git a/src/ro/ieval/unical/deleteEventDialog.java b/src/ro/ieval/unical/deleteEventDialog.java deleted file mode 100644 index 8518615..0000000 --- a/src/ro/ieval/unical/deleteEventDialog.java +++ /dev/null @@ -1,28 +0,0 @@ -package ro.ieval.unical; - -import android.app.AlertDialog; -import android.app.Dialog; -import android.app.DialogFragment; -import android.content.DialogInterface; -import android.os.Bundle; - -public class deleteEventDialog extends DialogFragment { - @Override - public Dialog onCreateDialog(Bundle savedInstanceState) { - // Use the Builder class for convenient dialog construction - AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); - builder.setMessage(R.string.askdeleteevent) - .setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int id) { - // FIRE ZE MISSILES! - } - }) - .setNegativeButton(R.string.no, new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int id) { - // User cancelled the dialog - } - }); - // Create the AlertDialog object and return it - return builder.create(); - } -} diff --git a/src/ro/ieval/unical/displayEventActivity.java b/src/ro/ieval/unical/displayEventActivity.java deleted file mode 100644 index 005de08..0000000 --- a/src/ro/ieval/unical/displayEventActivity.java +++ /dev/null @@ -1,56 +0,0 @@ -package ro.ieval.unical; - -import java.util.Date; - -import android.app.Activity; -import android.content.Intent; -import android.os.Bundle; -import android.view.Menu; -import android.view.MenuInflater; -import android.view.MenuItem; -import android.widget.TextView; - -public class displayEventActivity extends Activity { - public static final String EXTRA_EVENT = "event"; - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - final Event e=getIntent().getParcelableExtra(EXTRA_EVENT); - setContentView(R.layout.eventview); - final TextView eventTitle= (TextView) findViewById(R.id.eventTitle); - final TextView date=(TextView) findViewById(R.id.date); - final TextView description=(TextView) findViewById(R.id.description); - final TextView location= (TextView) findViewById(R.id.location); - eventTitle.setText(e.title); - date.setText((new Date(e.dtstart)).toString()); - description.setText(e.description); - location.setText(e.eventLocation); - } - - @Override - public boolean onCreateOptionsMenu(Menu menu) { - // TODO Auto-generated method stub - // nu stiu cum sa pun delete in loc de new event - MenuInflater inflater = getMenuInflater(); - inflater.inflate(R.menu.eventmenu, menu); - return true; - } - - @Override - public boolean onOptionsItemSelected(MenuItem item) { - // Handle item selection - switch (item.getItemId()) { - case R.id.NewEvent: - Intent i=new Intent(this,addEventActivity.class); - startActivity(i); - return true; - case R.id.deleteevent: - deleteEventDialog d=new deleteEventDialog(); - d.show(getFragmentManager(), "Delete"); - return true; - default: - return true; - } - } -} diff --git a/src/ro/ieval/unical/loginActivity.java b/src/ro/ieval/unical/loginActivity.java deleted file mode 100644 index a4ac90b..0000000 --- a/src/ro/ieval/unical/loginActivity.java +++ /dev/null @@ -1,31 +0,0 @@ -package ro.ieval.unical; - -import android.app.Activity; -import android.os.Bundle; -import android.view.View; -import android.widget.Button; -import android.widget.EditText; - -public class loginActivity extends Activity { - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.login); - - final EditText user=(EditText) findViewById(R.id.editText1); - final EditText pass=(EditText) findViewById(R.id.editText2); - final Button logIn=(Button) findViewById(R.id.button1); - - logIn.setOnClickListener(new View.OnClickListener() { - - @Override - public void onClick(View v) { - // TODO Auto-generated method stub - if(Utils.loginSuccess(user.getText().toString(),pass.getText().toString())) { - setContentView(R.layout.eventview); - } - } - }); - } -} diff --git a/src/ro/ieval/unical/mainActivity.java b/src/ro/ieval/unical/mainActivity.java deleted file mode 100644 index 2c6a95b..0000000 --- a/src/ro/ieval/unical/mainActivity.java +++ /dev/null @@ -1,53 +0,0 @@ -package ro.ieval.unical; -import android.content.Intent; -import android.content.SharedPreferences; -import android.os.Bundle; -import android.preference.PreferenceManager; -import android.provider.CalendarContract.Events; -import android.view.Menu; -import android.view.MenuInflater; -import android.view.MenuItem; - -public class mainActivity extends android.app.Activity { - - @Override - protected void onCreate(Bundle savedInstanceState) { - // All Begins here :) - // And here it began the olympic app that does olympic thing - - //log in - super.onCreate(savedInstanceState); - - final SharedPreferences prefs=PreferenceManager.getDefaultSharedPreferences(this); - if(prefs.getBoolean("FirstTime", true)) { - prefs.edit().putBoolean("FirstTime", false).commit(); - Intent i=new Intent(this,loginActivity.class); - startActivity(i); - } - Intent i=new Intent(this,displayEventActivity.class); - Event e[]=Event.getEventsByCalendar(this, Calendar.getAllCalendars(this)[0]._id, Events.DTSTART); - i.putExtra(displayEventActivity.EXTRA_EVENT, e[0]); - startActivity(i); - } - - @Override - public boolean onCreateOptionsMenu(Menu menu) { - // TODO Auto-generated method stub - MenuInflater inflater = getMenuInflater(); - inflater.inflate(R.menu.mainmenu, menu); - return true; - } - - @Override - public boolean onOptionsItemSelected(MenuItem item) { - // Handle item selection - switch (item.getItemId()) { - case R.id.NewEvent: - Intent i=new Intent(this,addEventActivity.class); - startActivity(i); - return true; - default: - return true; - } - } -}