/android/import-contacts

To get this branch, use:
bzr branch http://bzr.ed.am/android/import-contacts

« back to all changes in this revision

Viewing changes to src/org/waxworlds/importcontacts/WizardActivity.java

  • Committer: edam
  • Date: 2009-01-11 13:00:10 UTC
  • Revision ID: edam@waxworlds.org-20090111130010-rf7ahtdf01mcnkdg
- updated todo list

Show diffs side-by-side

added added

removed removed

1
 
/*
2
 
 * WizardActivity.java
3
 
 *
4
 
 * Copyright (C) 2009 Tim Marston <edam@waxworlds.org>
5
 
 *
6
 
 * This file is part of the Import Contacts program (hereafter referred
7
 
 * to as "this program"). For more information, see
8
 
 * http://www.waxworlds.org/edam/software/android/import-contacts
9
 
 *
10
 
 * This program is free software: you can redistribute it and/or modify
11
 
 * it under the terms of the GNU General Public License as published by
12
 
 * the Free Software Foundation, either version 3 of the License, or
13
 
 * (at your option) any later version.
14
 
 *
15
 
 * This program is distributed in the hope that it will be useful,
16
 
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17
 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18
 
 * GNU General Public License for more details.
19
 
 *
20
 
 * You should have received a copy of the GNU General Public License
21
 
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
22
 
 */
23
 
 
24
 
package org.waxworlds.edam.importcontacts;
 
1
package org.waxworlds.importcontacts;
25
2
 
26
3
import android.app.Activity;
27
4
import android.content.Intent;
32
9
 
33
10
public class WizardActivity extends Activity
34
11
{
35
 
        private Class< ? > _nextClass;
 
12
        private int _nextState = 0;
36
13
 
37
14
        @Override
38
 
        protected void onCreate( Bundle savedInstanceState )
 
15
        protected void onCreate(Bundle savedInstanceState)
39
16
        {
40
 
                super.onCreate( savedInstanceState );
41
 
 
42
 
                // enable back button based on intent data
43
 
                Bundle extras = getIntent().getExtras();
44
 
                if( extras != null )//&& extras.getBoolean( "back-enabled" ) )
45
 
                        ( (Button)findViewById( R.id.back ) ).setEnabled( true );
 
17
                super.onCreate(savedInstanceState);
46
18
 
47
19
                // set up next button
48
20
                Button next = (Button)findViewById( R.id.next );
49
21
                next.setOnClickListener( new View.OnClickListener() {
50
22
                        public void onClick( View view ) {
51
 
                                onNext();
 
23
                                switchToState( _nextState );
52
24
                        }
53
25
                } );
54
26
 
56
28
                Button back = (Button)findViewById( R.id.back );
57
29
                back.setOnClickListener( new View.OnClickListener() {
58
30
                        public void onClick( View view ) {
59
 
                                onBack();
 
31
                                setResult( RESULT_OK );
 
32
                                finish();
60
33
                        }
61
34
                } );
62
 
        }
63
 
 
64
 
        @Override
65
 
        protected void  onActivityResult( int requestCode, int resultCode, Intent data )
66
 
        {
67
 
                if( resultCode == RESULT_OK ) {
68
 
                        setResult( RESULT_OK );
 
35
 
 
36
                // enable back button?
 
37
                Bundle extras = getIntent().getExtras();
 
38
                if( extras != null ) {
 
39
                        Boolean backstate = extras.getBoolean( "backstate" );
 
40
                        if( backstate != null )
 
41
                                ( (Button)findViewById( R.id.back ) ).setEnabled( true );
 
42
                }
 
43
        }
 
44
 
 
45
        protected void setNextState( int nextState )
 
46
        {
 
47
                // set next state and enable button
 
48
                _nextState = nextState;
 
49
                ( (Button)findViewById( R.id.next ) ).setEnabled( true );
 
50
        }
 
51
 
 
52
        private void switchToState( int newState )
 
53
        {
 
54
                if( newState != 0 )
 
55
                {
 
56
                        // create result data bundle
 
57
                        Bundle bundle = new Bundle();
 
58
                        bundle.putInt( "nextstate", newState );
 
59
 
 
60
                        // create response intent and finish
 
61
                        Intent i = new Intent();
 
62
                        i.putExtras( bundle );
 
63
                        setResult( RESULT_OK, i );
69
64
                        finish();
70
65
                }
71
66
        }
72
67
 
73
 
        protected void onNext()
74
 
        {
75
 
                // create bundle with back enabled state
76
 
                Bundle bundle = new Bundle();
77
 
                bundle.putBoolean( "back-enabled", true );
78
 
                Intent i = new Intent( this, _nextClass );
79
 
                i.putExtras( bundle );
80
 
 
81
 
                // start next activity
82
 
                startActivityForResult( i, 0 );
83
 
        }
84
 
 
85
 
        protected void onBack()
86
 
        {
87
 
                setResult( RESULT_CANCELED );
88
 
                finish();
89
 
        }
90
 
 
91
 
        protected void setNextActivity( Class< ? > cls )
92
 
        {
93
 
                _nextClass = cls;
94
 
 
95
 
                // enable next button
96
 
                ( (Button)findViewById( R.id.next ) ).setEnabled( true );
97
 
        }
98
 
 
99
68
        public SharedPreferences getSharedPreferences()
100
69
        {
101
70
                return super.getSharedPreferences( "ImportContacts", 0 );
102
71
        }
103
 
}
 
72
}
 
 
'\\ No newline at end of file'