Settings.java :  » UnTagged » asterplus-android-dev » kr » endy » smartwords » activities » etc » Android Open Source

Android Open Source » UnTagged » asterplus android dev 
asterplus android dev » kr » endy » smartwords » activities » etc » Settings.java
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);
  }
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.