package kr.endy.smartwords.activities.etc;
import java.util.Calendar;
import kr.endy.smartwords.R;
import kr.endy.smartwords.SmartWords;
import kr.endy.smartwords.activities.core.baseActivity;
import kr.endy.smartwords.utils.AppConfig;
import android.app.Activity;
import android.app.DatePickerDialog;
import android.app.Dialog;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.os.Handler;
import android.util.Log;
import android.view.KeyEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.ImageButton;
import android.widget.RelativeLayout;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.AdapterView.OnItemSelectedListener;
public class Settings extends baseActivity {
SharedPreferences pref = null;
Context mContext = null;
// jb
private TextView mDateDisplay;
private int mYear;
private int mMonth;
private int mDay;
static final int DATE_DIALOG_ID = 0;
int alarmDay = 1;
int speed = 0;
int speedLevel = 0;
TextView textviewSpeed = null;
String strSpeed = "";
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.settings);
mContext = this;
pref = getSharedPreferences("SmartWords", MODE_PRIVATE);
speed = AppConfig.getAutoPlaySpeed(this);
textviewSpeed = (TextView)findViewById(R.id.textViewSpeed);
if ( speed == AppConfig.AUTOPLAY_SPEED_FAST ) speedLevel = 0;
else if ( speed == AppConfig.AUTOPLAY_SPEED_NORMAL ) speedLevel = 1;
else speedLevel = 2;
displaySpeed();
RelativeLayout btnhelp = (RelativeLayout) findViewById(R.id.setting_help);
mDateDisplay = (TextView) findViewById(R.id.dateDisplay);
alarmDay = AppConfig.getAlarmDay(this);
mDateDisplay.setText("" + alarmDay);
Button buttonDayPrev = (Button)findViewById(R.id.buttonDayPrev);
Button buttonDayNext = (Button)findViewById(R.id.buttonDayNext);
buttonDayPrev.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
alarmDay--;
if ( alarmDay < 1 ) alarmDay = 1;
saveAlarmDay();
}
});
buttonDayNext.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
alarmDay++;
if ( alarmDay > 30 ) alarmDay = 30;
saveAlarmDay();
}
});
Button buttonSpeedPrev = (Button)findViewById(R.id.buttonSpeedPrev);
Button buttonSpeedNext = (Button)findViewById(R.id.buttonSpeedNext);
buttonSpeedPrev.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
speedLevel++;
if ( speedLevel > 2 ) speedLevel = 2;
saveAutoPlaySpeed();
}
});
buttonSpeedNext.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
speedLevel--;
if ( speedLevel < 0 ) speedLevel = 0;
saveAutoPlaySpeed();
}
});
btnhelp.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(Settings.this, SettingHelp.class);
startActivity(intent);
finish();
}
});
// imageButton03.setOnClickListener(new OnClickListener() {
// @Override
// public void onClick(View v) {
// // TODO Auto-generated method stub
// returnToMain();
//
// // AppConfig.setAutoPlaySpeed(mContext,
// // AppConfig.AUTOPLAY_SPEED_FAST);
// }
// });
// mDateDisplay.setOnClickListener(new OnClickListener() {
//
// @Override
// public void onClick(View v) {
// showDialog(DATE_DIALOG_ID);
// }
// });
// get the current date
final Calendar c = Calendar.getInstance();
mYear = c.get(Calendar.YEAR);
mMonth = c.get(Calendar.MONTH);
mDay = c.get(Calendar.DAY_OF_MONTH);
}
public void saveAlarmDay() {
AppConfig.setAlarmDay(mContext, alarmDay);
mDateDisplay.setText("" + alarmDay);
}
public void saveAutoPlaySpeed() {
AppConfig.setAutoPlaySpeed(mContext, speedLevel);
displaySpeed();
}
public void displaySpeed() {
if ( speedLevel == 2 ) strSpeed = "";
else if ( speedLevel == 1 ) strSpeed = "";
else strSpeed = "";
textviewSpeed.setText(strSpeed);
}
@Override
protected Dialog onCreateDialog(int id) {
switch (id) {
case DATE_DIALOG_ID:
return new DatePickerDialog(this, mDateSetListener, mYear, mMonth,
mDay);
}
return null;
}
private void updateDisplay() {
mDateDisplay.setText(new StringBuilder().append(mDay).append(""));
AppConfig.setAlarmDay(mContext, mDay);
}
private DatePickerDialog.OnDateSetListener mDateSetListener = new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
mYear = year;
mMonth = monthOfYear;
mDay = dayOfMonth;
updateDisplay();
}
};
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == event.KEYCODE_BACK) {
returnToMain();
}
// TODO Auto-generated method stub
return super.onKeyDown(keyCode, event);
}
}
|