package com.applang.pflanzen;
import java.util.Random;
import com.applang.Util;
import com.applang.berichtsheft.R;
import com.applang.berichtsheft.R.layout;
import com.applang.provider.NotePad.NoteColumns;
import com.applang.provider.PlantInfo.Plants;
import android.app.Activity;
import android.content.Intent;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.FrameLayout;
import android.widget.FrameLayout.LayoutParams;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import android.widget.Toast;
import java.util.Random;
public class PlantsQuery extends Activity
{
private static final int COLUMN_INDEX_BOTNAME = 3;
private static final int COLUMN_INDEX_FAMILY = 2;
private static final int COLUMN_INDEX_NOTE = 1;
private static final String ORIGINAL_CONTENT = "origContent";
private static final String[] PROJECTION = { "_id", "name", "family", "botname", "botfamily", "crop_group" };
private static final String[] PROJECTION_ID = { "_id" };
private static final String TAG = "PlantsQuery";
private Cursor mCursor;
private TextView mFirstAnswerText;
private TextView mFirstGuessText;
private TextView mLargeText;
private String mOriginalContent;
private RelativeLayout mRelativeLayout;
private TextView mSecondAnswerText;
private TextView mSecondGuessText;
private Uri mUri;
private View mView1;
private View mView2;
private View mView3;
protected void onCreate(final Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
mUri = getIntent().getData();
setContentView(R.layout.plants_query_view);
mLargeText = ((TextView)findViewById(R.id.largeText));
mFirstGuessText = ((EditText)findViewById(R.id.query_edit_name));
mSecondGuessText = ((EditText)findViewById(R.id.query_edit_fam));
String str = getRandomEntry();
if (str == "no entry") {
onCreate(savedInstanceState);
} else {
mLargeText.setText(str);
}
final Button checkButton = (Button)findViewById(R.id.query_check_button);
Button showButton = (Button)findViewById(R.id.query_show_button);
checkButton.setTag(1);
showButton.setTag(1);
checkButton.setOnClickListener(new View.OnClickListener()
{
public void onClick(View paramAnonymousView)
{
int i = ((Integer)paramAnonymousView.getTag()).intValue();
if (i == 1) {
assertQueryEqual(paramAnonymousView);
}
if (i == 2) {
onCreate(savedInstanceState);
}
}
});
showButton.setOnClickListener(new View.OnClickListener()
{
public void onClick(View paramAnonymousView)
{
if (((Integer)paramAnonymousView.getTag()).intValue() == 1)
{
paramAnonymousView.setTag(2);
checkButton.setTag(2);
showRightAnswer(paramAnonymousView);
endOfStep(paramAnonymousView);
// return;
}
/*finish();
paramAnonymousView.setTag(1);*/
}
});
if (savedInstanceState != null)
mOriginalContent = savedInstanceState.getString("origContent");
// onCreate(savedInstanceState);
// return;
}
// }
protected String getRandomEntry()
{
mCursor = managedQuery(mUri, PROJECTION_ID, null, null, null);
int i = mCursor.getCount();
int j = new Random().nextInt(i);
if (j != 0)
{
mCursor = managedQuery(mUri, PROJECTION, null, null, null);
mCursor.moveToPosition(j);
String str1 = mCursor.getString(2);
String str2 = mCursor.getString(3);
if ((str1 != null) && (str2 != null) && (str1 != "") && (str2 != "")) {
return mCursor.getString(1);
}
}
return "no entry";
}
private void assertQueryEqual(View paramView)
{
String nameGuess = this.mFirstGuessText.getText().toString();
String famGuess = this.mSecondGuessText.getText().toString();
String familyName = this.mCursor.getString(4) + " ";
String plantName = this.mCursor.getString(3) + " ";
Button checkButton = (Button)findViewById(R.id.query_check_button);
int count = 0;
if (nameGuess.equals("") || famGuess.equals("")) {
Toast.makeText(this, "Beides angeben!", Toast.LENGTH_LONG).show();
}
else {
if (nameGuess.compareTo(plantName) == 0 && famGuess.compareTo(familyName) != 0) {
count++;
showThumbRating(count);
checkButton.setText("Nochmal");
showRightAnswer(paramView);
} else if (nameGuess.compareTo(plantName) != 0 && famGuess.compareTo(familyName) == 0) {
count++;
showThumbRating(count);
checkButton.setText("Nochmal");
paramView.setTag(0);
showRightAnswer(paramView);
} else if (nameGuess.compareTo(plantName) == 0 && famGuess.compareTo(familyName) == 0) {
count = 2;
showThumbRating(count);
paramView.setTag(2);
showRightAnswer(paramView);
endOfStep(paramView);
} else if (nameGuess.compareTo(plantName) != 0 && famGuess.compareTo(familyName) != 0) {
showThumbRating(count);
paramView.setTag(2);
showRightAnswer(paramView);
endOfStep(paramView);
}
}
}
private void showThumbRating(int count){
ImageView thumb = ((ImageView)findViewById(R.id.image_view));
switch (count) {
case 1:
thumb.setImageResource(R.drawable.thumbs_aside_225);
break;
case 2:
thumb.setImageResource(R.drawable.thumbs_up_225);
break;
case 0:
thumb.setImageResource(R.drawable.thumbs_down_225);
break;
}
}
private void showRightAnswer(View paramView)
{
String famName = mCursor.getString(4);
String plantName = mCursor.getString(3);
LinearLayout queryLayout = ((LinearLayout)findViewById(R.id.query_layout));
EditText queryEditName = ((EditText)findViewById(R.id.query_edit_name));
EditText queryEditFam = ((EditText)findViewById(R.id.query_edit_fam));
TextView queryTextName = new TextView(this);
TextView queryTextFam = new TextView(this);
LayoutParams textViewLayoutParams = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
queryTextName.setLayoutParams(textViewLayoutParams);
queryTextName.setTextSize(23);
queryTextName.setTextColor(this.getResources().getColor(R.color.light_green));
queryTextName.setGravity(0x11);
queryTextFam.setLayoutParams(textViewLayoutParams);
queryTextFam.setTextSize(23);
queryTextFam.setTextColor(this.getResources().getColor(R.color.close_mangenta));
int checkNum = ((Integer)paramView.getTag()).intValue();
switch (checkNum) {
case 0:
queryLayout.removeView(queryEditFam);
queryTextFam.setText(famName);
queryLayout.addView(queryTextFam,2);
paramView.setTag(1);
break;
case 1:
queryLayout.removeView(queryEditName);
queryTextName.setText(plantName);
queryLayout.addView(queryTextName,1);
break;
case 2:
queryLayout.removeView(queryEditName);
queryTextName.setText(plantName);
queryLayout.addView(queryTextName,1);
queryLayout.removeView(queryEditFam);
queryTextFam.setText(famName);
queryLayout.addView(queryTextFam,2);
break;
}
}
private void endOfStep(View paramView)
{
Button checkButton = (Button)findViewById(R.id.query_check_button);
Button showButton = (Button)findViewById(R.id.query_show_button);
checkButton.setText("Weiter");
showButton.setText("Speichern");
}
}