Subversion Repositories AndroidProjects

Rev

Rev 352 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

package com.gebauz.minimalistclock;

import java.util.Calendar;

import android.os.Bundle;
import android.app.Activity;
import android.app.AlarmManager;
import android.app.PendingIntent;
import android.appwidget.AppWidgetManager;
import android.content.Context;
import android.content.Intent;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import android.support.v4.app.NavUtils;

public class ConfigActivity extends Activity
{
        Button configOkButton;
        int mAppWidgetId = AppWidgetManager.INVALID_APPWIDGET_ID;
       
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
       
        setResult(RESULT_CANCELED);
        setContentView(R.layout.activity_config);
       
        configOkButton = (Button)findViewById(R.id.okButton);
        configOkButton.setOnClickListener(configOkButtonOnClickListener);
       
        Intent intent = getIntent();
        Bundle extras = intent.getExtras();
        if (extras != null)
        {
            mAppWidgetId = extras.getInt(AppWidgetManager.EXTRA_APPWIDGET_ID, AppWidgetManager.INVALID_APPWIDGET_ID);
        }

        // If they gave us an intent without the widget id, just bail.
        if (mAppWidgetId == AppWidgetManager.INVALID_APPWIDGET_ID)
        {
            finish();
        }
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu)
    {
        getMenuInflater().inflate(R.menu.activity_config, menu);
        return true;
    }
   
    private Button.OnClickListener configOkButtonOnClickListener = new Button.OnClickListener()
    {
        @Override
        public void onClick(View arg0)
        {
                // TODO Auto-generated method stub

                final Context context = ConfigActivity.this;

                AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);

                    //RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.hellowidget_layout);
                    //appWidgetManager.updateAppWidget(mAppWidgetId, views);
                    MinimalistClockWidgetProvider.updateAppWidget(context, appWidgetManager, mAppWidgetId);
               
                    //Toast.makeText(context, "HelloWidgetConfig.onClick(): " + String.valueOf(mAppWidgetId) , Toast.LENGTH_LONG).show();
               
                    //prepare Alarm Service to trigger Widget
                    Intent intent = new Intent(MinimalistClockWidgetProvider.MY_WIDGET_UPDATE);
                    PendingIntent pendingIntent = PendingIntent.getBroadcast(ConfigActivity.this, 0, intent, 0);
                    AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);
/*                  Calendar calendar = Calendar.getInstance();
                    calendar.setTimeInMillis(System.currentTimeMillis());
                    calendar.add(Calendar.SECOND, 10);*/

                    alarmManager.setRepeating(AlarmManager.RTC, System.currentTimeMillis()+1000, 2000, pendingIntent);
                   
                    MinimalistClockWidgetProvider.SaveAlarmManager(alarmManager, pendingIntent);
               
                    Intent resultValue = new Intent();
                    resultValue.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, mAppWidgetId);
                    setResult(RESULT_OK, resultValue);
                    finish();
        }
    };  
}