From 77560fc704f2933e0df8a4be0768b2439a0bab2a Mon Sep 17 00:00:00 2001 From: Tom O'Neill Date: Tue, 15 Dec 2009 11:27:15 -0800 Subject: Finish adding Makefiles for the Notepad tutorial. Add the missing makefiles for the non-solution versions of the tutorial code. Required providing missing imports in Notepadv2. Also standardized white spaces using Source > Correct Indentation in Eclipse and a few manual changes. This was done to minimize differences such as: diff -r Notepadv1 Notepadv1Solution diff -r Notepadv1Solution/src/com/android/demo/notepad1/ Notepadv2/src/com/android/demo/notepad2/ Change-Id: Ie8b10efd61f2200b3c741ea500a6924710ab54ed --- tutorials/NotepadCodeLab/Notepadv1/Android.mk | 31 +++++++ .../NotepadCodeLab/Notepadv1/AndroidManifest.xml | 3 +- .../src/com/android/demo/notepad1/Notepadv1.java | 4 +- .../com/android/demo/notepad1/NotesDbAdapter.java | 14 +-- .../NotepadCodeLab/Notepadv1Solution/Android.mk | 1 + .../Notepadv1Solution/res/layout/notes_row.xml | 5 +- .../com/android/demo/notepad1/NotesDbAdapter.java | 14 +-- tutorials/NotepadCodeLab/Notepadv2/Android.mk | 31 +++++++ .../src/com/android/demo/notepad2/Notepadv2.java | 2 + .../com/android/demo/notepad2/NotesDbAdapter.java | 14 +-- .../NotepadCodeLab/Notepadv2Solution/Android.mk | 1 + .../Notepadv2Solution/AndroidManifest.xml | 2 +- .../src/com/android/demo/notepad2/NoteEdit.java | 20 ++--- .../src/com/android/demo/notepad2/Notepadv2.java | 99 +++++++++++----------- .../com/android/demo/notepad2/NotesDbAdapter.java | 14 +-- tutorials/NotepadCodeLab/Notepadv3/Android.mk | 31 +++++++ .../NotepadCodeLab/Notepadv3/AndroidManifest.xml | 2 +- .../src/com/android/demo/notepad3/NoteEdit.java | 18 ++-- .../src/com/android/demo/notepad3/Notepadv3.java | 94 ++++++++++---------- .../com/android/demo/notepad3/NotesDbAdapter.java | 14 +-- .../NotepadCodeLab/Notepadv3Solution/Android.mk | 1 + .../Notepadv3Solution/AndroidManifest.xml | 2 +- .../src/com/android/demo/notepad3/NoteEdit.java | 39 +++++---- .../src/com/android/demo/notepad3/Notepadv3.java | 63 +++++++------- .../com/android/demo/notepad3/NotesDbAdapter.java | 14 +-- 25 files changed, 315 insertions(+), 218 deletions(-) create mode 100644 tutorials/NotepadCodeLab/Notepadv1/Android.mk create mode 100644 tutorials/NotepadCodeLab/Notepadv2/Android.mk create mode 100644 tutorials/NotepadCodeLab/Notepadv3/Android.mk (limited to 'tutorials') diff --git a/tutorials/NotepadCodeLab/Notepadv1/Android.mk b/tutorials/NotepadCodeLab/Notepadv1/Android.mk new file mode 100644 index 000000000..60beb2c82 --- /dev/null +++ b/tutorials/NotepadCodeLab/Notepadv1/Android.mk @@ -0,0 +1,31 @@ +# +# Copyright (C) 2009 The Android Open Source Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +LOCAL_PATH:= $(call my-dir) +include $(CLEAR_VARS) + +# Only build apk if this package is added to CUSTOM_MODLUES in buildspec.mk +LOCAL_MODULE_TAGS := optional + +# Only compile source java files in this apk. +LOCAL_SRC_FILES := $(call all-java-files-under, src) + +LOCAL_PACKAGE_NAME := Notepadv1 + +# Make the app build against the current SDK +LOCAL_SDK_VERSION := current + +include $(BUILD_PACKAGE) diff --git a/tutorials/NotepadCodeLab/Notepadv1/AndroidManifest.xml b/tutorials/NotepadCodeLab/Notepadv1/AndroidManifest.xml index 33f30da3c..99023fe78 100755 --- a/tutorials/NotepadCodeLab/Notepadv1/AndroidManifest.xml +++ b/tutorials/NotepadCodeLab/Notepadv1/AndroidManifest.xml @@ -1,5 +1,6 @@ - + diff --git a/tutorials/NotepadCodeLab/Notepadv1/src/com/android/demo/notepad1/Notepadv1.java b/tutorials/NotepadCodeLab/Notepadv1/src/com/android/demo/notepad1/Notepadv1.java index 43e7a7733..df73f42d4 100755 --- a/tutorials/NotepadCodeLab/Notepadv1/src/com/android/demo/notepad1/Notepadv1.java +++ b/tutorials/NotepadCodeLab/Notepadv1/src/com/android/demo/notepad1/Notepadv1.java @@ -22,8 +22,8 @@ import android.view.Menu; import android.view.MenuItem; public class Notepadv1 extends Activity { - private int mNoteNumber = 1; - + private int mNoteNumber = 1; + /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { diff --git a/tutorials/NotepadCodeLab/Notepadv1/src/com/android/demo/notepad1/NotesDbAdapter.java b/tutorials/NotepadCodeLab/Notepadv1/src/com/android/demo/notepad1/NotesDbAdapter.java index 6f85bbd20..a3295d613 100755 --- a/tutorials/NotepadCodeLab/Notepadv1/src/com/android/demo/notepad1/NotesDbAdapter.java +++ b/tutorials/NotepadCodeLab/Notepadv1/src/com/android/demo/notepad1/NotesDbAdapter.java @@ -43,13 +43,13 @@ public class NotesDbAdapter { private static final String TAG = "NotesDbAdapter"; private DatabaseHelper mDbHelper; private SQLiteDatabase mDb; - + /** * Database creation sql statement */ private static final String DATABASE_CREATE = - "create table notes (_id integer primary key autoincrement, " - + "title text not null, body text not null);"; + "create table notes (_id integer primary key autoincrement, " + + "title text not null, body text not null);"; private static final String DATABASE_NAME = "data"; private static final String DATABASE_TABLE = "notes"; @@ -102,7 +102,7 @@ public class NotesDbAdapter { mDb = mDbHelper.getWritableDatabase(); return this; } - + public void close() { mDbHelper.close(); } @@ -158,9 +158,9 @@ public class NotesDbAdapter { Cursor mCursor = - mDb.query(true, DATABASE_TABLE, new String[] {KEY_ROWID, - KEY_TITLE, KEY_BODY}, KEY_ROWID + "=" + rowId, null, - null, null, null, null); + mDb.query(true, DATABASE_TABLE, new String[] {KEY_ROWID, + KEY_TITLE, KEY_BODY}, KEY_ROWID + "=" + rowId, null, + null, null, null, null); if (mCursor != null) { mCursor.moveToFirst(); } diff --git a/tutorials/NotepadCodeLab/Notepadv1Solution/Android.mk b/tutorials/NotepadCodeLab/Notepadv1Solution/Android.mk index 537503105..35bc577fd 100644 --- a/tutorials/NotepadCodeLab/Notepadv1Solution/Android.mk +++ b/tutorials/NotepadCodeLab/Notepadv1Solution/Android.mk @@ -17,6 +17,7 @@ LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) +# Only build apk if this package is added to CUSTOM_MODLUES in buildspec.mk LOCAL_MODULE_TAGS := optional # Only compile source java files in this apk. diff --git a/tutorials/NotepadCodeLab/Notepadv1Solution/res/layout/notes_row.xml b/tutorials/NotepadCodeLab/Notepadv1Solution/res/layout/notes_row.xml index 6b1a65b05..f28a41bea 100755 --- a/tutorials/NotepadCodeLab/Notepadv1Solution/res/layout/notes_row.xml +++ b/tutorials/NotepadCodeLab/Notepadv1Solution/res/layout/notes_row.xml @@ -1,5 +1,4 @@ - \ No newline at end of file + android:layout_height="wrap_content"/> diff --git a/tutorials/NotepadCodeLab/Notepadv1Solution/src/com/android/demo/notepad1/NotesDbAdapter.java b/tutorials/NotepadCodeLab/Notepadv1Solution/src/com/android/demo/notepad1/NotesDbAdapter.java index 6f85bbd20..a3295d613 100755 --- a/tutorials/NotepadCodeLab/Notepadv1Solution/src/com/android/demo/notepad1/NotesDbAdapter.java +++ b/tutorials/NotepadCodeLab/Notepadv1Solution/src/com/android/demo/notepad1/NotesDbAdapter.java @@ -43,13 +43,13 @@ public class NotesDbAdapter { private static final String TAG = "NotesDbAdapter"; private DatabaseHelper mDbHelper; private SQLiteDatabase mDb; - + /** * Database creation sql statement */ private static final String DATABASE_CREATE = - "create table notes (_id integer primary key autoincrement, " - + "title text not null, body text not null);"; + "create table notes (_id integer primary key autoincrement, " + + "title text not null, body text not null);"; private static final String DATABASE_NAME = "data"; private static final String DATABASE_TABLE = "notes"; @@ -102,7 +102,7 @@ public class NotesDbAdapter { mDb = mDbHelper.getWritableDatabase(); return this; } - + public void close() { mDbHelper.close(); } @@ -158,9 +158,9 @@ public class NotesDbAdapter { Cursor mCursor = - mDb.query(true, DATABASE_TABLE, new String[] {KEY_ROWID, - KEY_TITLE, KEY_BODY}, KEY_ROWID + "=" + rowId, null, - null, null, null, null); + mDb.query(true, DATABASE_TABLE, new String[] {KEY_ROWID, + KEY_TITLE, KEY_BODY}, KEY_ROWID + "=" + rowId, null, + null, null, null, null); if (mCursor != null) { mCursor.moveToFirst(); } diff --git a/tutorials/NotepadCodeLab/Notepadv2/Android.mk b/tutorials/NotepadCodeLab/Notepadv2/Android.mk new file mode 100644 index 000000000..77a2b47c4 --- /dev/null +++ b/tutorials/NotepadCodeLab/Notepadv2/Android.mk @@ -0,0 +1,31 @@ +# +# Copyright (C) 2009 The Android Open Source Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +LOCAL_PATH:= $(call my-dir) +include $(CLEAR_VARS) + +# Only build apk if this package is added to CUSTOM_MODLUES in buildspec.mk +LOCAL_MODULE_TAGS := optional + +# Only compile source java files in this apk. +LOCAL_SRC_FILES := $(call all-java-files-under, src) + +LOCAL_PACKAGE_NAME := Notepadv2 + +# Make the app build against the current SDK +LOCAL_SDK_VERSION := current + +include $(BUILD_PACKAGE) diff --git a/tutorials/NotepadCodeLab/Notepadv2/src/com/android/demo/notepad2/Notepadv2.java b/tutorials/NotepadCodeLab/Notepadv2/src/com/android/demo/notepad2/Notepadv2.java index abfc53864..c038180c9 100755 --- a/tutorials/NotepadCodeLab/Notepadv2/src/com/android/demo/notepad2/Notepadv2.java +++ b/tutorials/NotepadCodeLab/Notepadv2/src/com/android/demo/notepad2/Notepadv2.java @@ -20,9 +20,11 @@ import android.app.ListActivity; import android.content.Intent; import android.database.Cursor; import android.os.Bundle; +import android.view.ContextMenu; import android.view.Menu; import android.view.MenuItem; import android.view.View; +import android.view.ContextMenu.ContextMenuInfo; import android.widget.ListView; import android.widget.SimpleCursorAdapter; diff --git a/tutorials/NotepadCodeLab/Notepadv2/src/com/android/demo/notepad2/NotesDbAdapter.java b/tutorials/NotepadCodeLab/Notepadv2/src/com/android/demo/notepad2/NotesDbAdapter.java index 5bf51b1e5..50994ae43 100755 --- a/tutorials/NotepadCodeLab/Notepadv2/src/com/android/demo/notepad2/NotesDbAdapter.java +++ b/tutorials/NotepadCodeLab/Notepadv2/src/com/android/demo/notepad2/NotesDbAdapter.java @@ -43,13 +43,13 @@ public class NotesDbAdapter { private static final String TAG = "NotesDbAdapter"; private DatabaseHelper mDbHelper; private SQLiteDatabase mDb; - + /** * Database creation sql statement */ private static final String DATABASE_CREATE = - "create table notes (_id integer primary key autoincrement, " - + "title text not null, body text not null);"; + "create table notes (_id integer primary key autoincrement, " + + "title text not null, body text not null);"; private static final String DATABASE_NAME = "data"; private static final String DATABASE_TABLE = "notes"; @@ -102,7 +102,7 @@ public class NotesDbAdapter { mDb = mDbHelper.getWritableDatabase(); return this; } - + public void close() { mDbHelper.close(); } @@ -158,9 +158,9 @@ public class NotesDbAdapter { Cursor mCursor = - mDb.query(true, DATABASE_TABLE, new String[] {KEY_ROWID, - KEY_TITLE, KEY_BODY}, KEY_ROWID + "=" + rowId, null, - null, null, null, null); + mDb.query(true, DATABASE_TABLE, new String[] {KEY_ROWID, + KEY_TITLE, KEY_BODY}, KEY_ROWID + "=" + rowId, null, + null, null, null, null); if (mCursor != null) { mCursor.moveToFirst(); } diff --git a/tutorials/NotepadCodeLab/Notepadv2Solution/Android.mk b/tutorials/NotepadCodeLab/Notepadv2Solution/Android.mk index 8e483519b..63961a32e 100644 --- a/tutorials/NotepadCodeLab/Notepadv2Solution/Android.mk +++ b/tutorials/NotepadCodeLab/Notepadv2Solution/Android.mk @@ -17,6 +17,7 @@ LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) +# Only build apk if this package is added to CUSTOM_MODLUES in buildspec.mk LOCAL_MODULE_TAGS := optional # Only compile source java files in this apk. diff --git a/tutorials/NotepadCodeLab/Notepadv2Solution/AndroidManifest.xml b/tutorials/NotepadCodeLab/Notepadv2Solution/AndroidManifest.xml index dbfc9d0f7..b86a7419c 100755 --- a/tutorials/NotepadCodeLab/Notepadv2Solution/AndroidManifest.xml +++ b/tutorials/NotepadCodeLab/Notepadv2Solution/AndroidManifest.xml @@ -7,6 +7,6 @@ - + \ No newline at end of file diff --git a/tutorials/NotepadCodeLab/Notepadv2Solution/src/com/android/demo/notepad2/NoteEdit.java b/tutorials/NotepadCodeLab/Notepadv2Solution/src/com/android/demo/notepad2/NoteEdit.java index 6c5e664b5..8c9dccc6b 100755 --- a/tutorials/NotepadCodeLab/Notepadv2Solution/src/com/android/demo/notepad2/NoteEdit.java +++ b/tutorials/NotepadCodeLab/Notepadv2Solution/src/com/android/demo/notepad2/NoteEdit.java @@ -9,7 +9,7 @@ * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.savedInstanceState + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ @@ -25,7 +25,7 @@ import android.widget.EditText; public class NoteEdit extends Activity { - private EditText mTitleText; + private EditText mTitleText; private EditText mBodyText; private Long mRowId; @@ -33,19 +33,19 @@ public class NoteEdit extends Activity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.note_edit); - + mTitleText = (EditText) findViewById(R.id.title); mBodyText = (EditText) findViewById(R.id.body); - + Button confirmButton = (Button) findViewById(R.id.confirm); - + mRowId = null; Bundle extras = getIntent().getExtras(); if (extras != null) { String title = extras.getString(NotesDbAdapter.KEY_TITLE); String body = extras.getString(NotesDbAdapter.KEY_BODY); mRowId = extras.getLong(NotesDbAdapter.KEY_ROWID); - + if (title != null) { mTitleText.setText(title); } @@ -53,24 +53,24 @@ public class NoteEdit extends Activity { mBodyText.setText(body); } } - + confirmButton.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { Bundle bundle = new Bundle(); - + bundle.putString(NotesDbAdapter.KEY_TITLE, mTitleText.getText().toString()); bundle.putString(NotesDbAdapter.KEY_BODY, mBodyText.getText().toString()); if (mRowId != null) { bundle.putLong(NotesDbAdapter.KEY_ROWID, mRowId); } - + Intent mIntent = new Intent(); mIntent.putExtras(bundle); setResult(RESULT_OK, mIntent); finish(); } - + }); } } diff --git a/tutorials/NotepadCodeLab/Notepadv2Solution/src/com/android/demo/notepad2/Notepadv2.java b/tutorials/NotepadCodeLab/Notepadv2Solution/src/com/android/demo/notepad2/Notepadv2.java index 1b3398291..c65806be1 100755 --- a/tutorials/NotepadCodeLab/Notepadv2Solution/src/com/android/demo/notepad2/Notepadv2.java +++ b/tutorials/NotepadCodeLab/Notepadv2Solution/src/com/android/demo/notepad2/Notepadv2.java @@ -32,13 +32,13 @@ import android.widget.AdapterView.AdapterContextMenuInfo; public class Notepadv2 extends ListActivity { private static final int ACTIVITY_CREATE=0; private static final int ACTIVITY_EDIT=1; - + private static final int INSERT_ID = Menu.FIRST; private static final int DELETE_ID = Menu.FIRST + 1; private NotesDbAdapter mDbHelper; private Cursor mNotesCursor; - + /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { @@ -49,68 +49,69 @@ public class Notepadv2 extends ListActivity { fillData(); registerForContextMenu(getListView()); } - + private void fillData() { // Get all of the rows from the database and create the item list mNotesCursor = mDbHelper.fetchAllNotes(); startManagingCursor(mNotesCursor); - + // Create an array to specify the fields we want to display in the list (only TITLE) String[] from = new String[]{NotesDbAdapter.KEY_TITLE}; - + // and an array of the fields we want to bind those fields to (in this case just text1) int[] to = new int[]{R.id.text1}; - + // Now create a simple cursor adapter and set it to display SimpleCursorAdapter notes = - new SimpleCursorAdapter(this, R.layout.notes_row, mNotesCursor, from, to); + new SimpleCursorAdapter(this, R.layout.notes_row, mNotesCursor, from, to); setListAdapter(notes); } - + @Override public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); - menu.add(0, INSERT_ID,0, R.string.menu_insert); + menu.add(0, INSERT_ID, 0, R.string.menu_insert); return true; } - + @Override public boolean onMenuItemSelected(int featureId, MenuItem item) { switch(item.getItemId()) { - case INSERT_ID: - createNote(); - return true; - } + case INSERT_ID: + createNote(); + return true; + } + return super.onMenuItemSelected(featureId, item); } @Override - public void onCreateContextMenu(ContextMenu menu, View v, - ContextMenuInfo menuInfo) { - super.onCreateContextMenu(menu, v, menuInfo); + public void onCreateContextMenu(ContextMenu menu, View v, + ContextMenuInfo menuInfo) { + super.onCreateContextMenu(menu, v, menuInfo); menu.add(0, DELETE_ID, 0, R.string.menu_delete); - } + } @Override - public boolean onContextItemSelected(MenuItem item) { - switch(item.getItemId()) { - case DELETE_ID: - AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo(); - mDbHelper.deleteNote(info.id); - fillData(); - return true; - } - return super.onContextItemSelected(item); - } - - private void createNote() { - Intent i = new Intent(this, NoteEdit.class); - startActivityForResult(i, ACTIVITY_CREATE); + public boolean onContextItemSelected(MenuItem item) { + switch(item.getItemId()) { + case DELETE_ID: + AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo(); + mDbHelper.deleteNote(info.id); + fillData(); + return true; + } + return super.onContextItemSelected(item); } - + + private void createNote() { + Intent i = new Intent(this, NoteEdit.class); + startActivityForResult(i, ACTIVITY_CREATE); + } + @Override protected void onListItemClick(ListView l, View v, int position, long id) { - super.onListItemClick(l, v, position, id); + super.onListItemClick(l, v, position, id); Cursor c = mNotesCursor; c.moveToPosition(position); Intent i = new Intent(this, NoteEdit.class); @@ -127,21 +128,21 @@ public class Notepadv2 extends ListActivity { super.onActivityResult(requestCode, resultCode, intent); Bundle extras = intent.getExtras(); switch(requestCode) { - case ACTIVITY_CREATE: - String title = extras.getString(NotesDbAdapter.KEY_TITLE); - String body = extras.getString(NotesDbAdapter.KEY_BODY); - mDbHelper.createNote(title, body); - fillData(); - break; - case ACTIVITY_EDIT: - Long rowId = extras.getLong(NotesDbAdapter.KEY_ROWID); - if (rowId != null) { - String editTitle = extras.getString(NotesDbAdapter.KEY_TITLE); - String editBody = extras.getString(NotesDbAdapter.KEY_BODY); - mDbHelper.updateNote(rowId, editTitle, editBody); - } - fillData(); - break; + case ACTIVITY_CREATE: + String title = extras.getString(NotesDbAdapter.KEY_TITLE); + String body = extras.getString(NotesDbAdapter.KEY_BODY); + mDbHelper.createNote(title, body); + fillData(); + break; + case ACTIVITY_EDIT: + Long rowId = extras.getLong(NotesDbAdapter.KEY_ROWID); + if (rowId != null) { + String editTitle = extras.getString(NotesDbAdapter.KEY_TITLE); + String editBody = extras.getString(NotesDbAdapter.KEY_BODY); + mDbHelper.updateNote(rowId, editTitle, editBody); + } + fillData(); + break; } } } diff --git a/tutorials/NotepadCodeLab/Notepadv2Solution/src/com/android/demo/notepad2/NotesDbAdapter.java b/tutorials/NotepadCodeLab/Notepadv2Solution/src/com/android/demo/notepad2/NotesDbAdapter.java index 5bf51b1e5..50994ae43 100755 --- a/tutorials/NotepadCodeLab/Notepadv2Solution/src/com/android/demo/notepad2/NotesDbAdapter.java +++ b/tutorials/NotepadCodeLab/Notepadv2Solution/src/com/android/demo/notepad2/NotesDbAdapter.java @@ -43,13 +43,13 @@ public class NotesDbAdapter { private static final String TAG = "NotesDbAdapter"; private DatabaseHelper mDbHelper; private SQLiteDatabase mDb; - + /** * Database creation sql statement */ private static final String DATABASE_CREATE = - "create table notes (_id integer primary key autoincrement, " - + "title text not null, body text not null);"; + "create table notes (_id integer primary key autoincrement, " + + "title text not null, body text not null);"; private static final String DATABASE_NAME = "data"; private static final String DATABASE_TABLE = "notes"; @@ -102,7 +102,7 @@ public class NotesDbAdapter { mDb = mDbHelper.getWritableDatabase(); return this; } - + public void close() { mDbHelper.close(); } @@ -158,9 +158,9 @@ public class NotesDbAdapter { Cursor mCursor = - mDb.query(true, DATABASE_TABLE, new String[] {KEY_ROWID, - KEY_TITLE, KEY_BODY}, KEY_ROWID + "=" + rowId, null, - null, null, null, null); + mDb.query(true, DATABASE_TABLE, new String[] {KEY_ROWID, + KEY_TITLE, KEY_BODY}, KEY_ROWID + "=" + rowId, null, + null, null, null, null); if (mCursor != null) { mCursor.moveToFirst(); } diff --git a/tutorials/NotepadCodeLab/Notepadv3/Android.mk b/tutorials/NotepadCodeLab/Notepadv3/Android.mk new file mode 100644 index 000000000..c9f319ef9 --- /dev/null +++ b/tutorials/NotepadCodeLab/Notepadv3/Android.mk @@ -0,0 +1,31 @@ +# +# Copyright (C) 2009 The Android Open Source Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +LOCAL_PATH:= $(call my-dir) +include $(CLEAR_VARS) + +# Only build apk if this package is added to CUSTOM_MODLUES in buildspec.mk +LOCAL_MODULE_TAGS := optional + +# Only compile source java files in this apk. +LOCAL_SRC_FILES := $(call all-java-files-under, src) + +LOCAL_PACKAGE_NAME := Notepadv3 + +# Make the app build against the current SDK +LOCAL_SDK_VERSION := current + +include $(BUILD_PACKAGE) diff --git a/tutorials/NotepadCodeLab/Notepadv3/AndroidManifest.xml b/tutorials/NotepadCodeLab/Notepadv3/AndroidManifest.xml index adb07ffdb..06e16451c 100755 --- a/tutorials/NotepadCodeLab/Notepadv3/AndroidManifest.xml +++ b/tutorials/NotepadCodeLab/Notepadv3/AndroidManifest.xml @@ -7,6 +7,6 @@ - + \ No newline at end of file diff --git a/tutorials/NotepadCodeLab/Notepadv3/src/com/android/demo/notepad3/NoteEdit.java b/tutorials/NotepadCodeLab/Notepadv3/src/com/android/demo/notepad3/NoteEdit.java index af3a2340d..dee7ff486 100755 --- a/tutorials/NotepadCodeLab/Notepadv3/src/com/android/demo/notepad3/NoteEdit.java +++ b/tutorials/NotepadCodeLab/Notepadv3/src/com/android/demo/notepad3/NoteEdit.java @@ -25,7 +25,7 @@ import android.widget.EditText; public class NoteEdit extends Activity { - private EditText mTitleText; + private EditText mTitleText; private EditText mBodyText; private Long mRowId; @@ -33,19 +33,19 @@ public class NoteEdit extends Activity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.note_edit); - + mTitleText = (EditText) findViewById(R.id.title); mBodyText = (EditText) findViewById(R.id.body); - + Button confirmButton = (Button) findViewById(R.id.confirm); - + mRowId = null; Bundle extras = getIntent().getExtras(); if (extras != null) { String title = extras.getString(NotesDbAdapter.KEY_TITLE); String body = extras.getString(NotesDbAdapter.KEY_BODY); mRowId = extras.getLong(NotesDbAdapter.KEY_ROWID); - + if (title != null) { mTitleText.setText(title); } @@ -53,24 +53,24 @@ public class NoteEdit extends Activity { mBodyText.setText(body); } } - + confirmButton.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { Bundle bundle = new Bundle(); - + bundle.putString(NotesDbAdapter.KEY_TITLE, mTitleText.getText().toString()); bundle.putString(NotesDbAdapter.KEY_BODY, mBodyText.getText().toString()); if (mRowId != null) { bundle.putLong(NotesDbAdapter.KEY_ROWID, mRowId); } - + Intent mIntent = new Intent(); mIntent.putExtras(bundle); setResult(RESULT_OK, mIntent); finish(); } - + }); } } diff --git a/tutorials/NotepadCodeLab/Notepadv3/src/com/android/demo/notepad3/Notepadv3.java b/tutorials/NotepadCodeLab/Notepadv3/src/com/android/demo/notepad3/Notepadv3.java index f50f371d8..0ed8ed6b5 100755 --- a/tutorials/NotepadCodeLab/Notepadv3/src/com/android/demo/notepad3/Notepadv3.java +++ b/tutorials/NotepadCodeLab/Notepadv3/src/com/android/demo/notepad3/Notepadv3.java @@ -1,7 +1,7 @@ /* * Copyright (C) 2008 Google Inc. * - * Licensed under the Apache License, Version 2.0 (the "License")savedInstanceState; + * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * @@ -32,13 +32,13 @@ import android.widget.AdapterView.AdapterContextMenuInfo; public class Notepadv3 extends ListActivity { private static final int ACTIVITY_CREATE=0; private static final int ACTIVITY_EDIT=1; - + private static final int INSERT_ID = Menu.FIRST; private static final int DELETE_ID = Menu.FIRST + 1; private NotesDbAdapter mDbHelper; private Cursor mNotesCursor; - + /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { @@ -49,24 +49,24 @@ public class Notepadv3 extends ListActivity { fillData(); registerForContextMenu(getListView()); } - + private void fillData() { // Get all of the rows from the database and create the item list mNotesCursor = mDbHelper.fetchAllNotes(); startManagingCursor(mNotesCursor); - + // Create an array to specify the fields we want to display in the list (only TITLE) String[] from = new String[]{NotesDbAdapter.KEY_TITLE}; - + // and an array of the fields we want to bind those fields to (in this case just text1) int[] to = new int[]{R.id.text1}; - + // Now create a simple cursor adapter and set it to display SimpleCursorAdapter notes = - new SimpleCursorAdapter(this, R.layout.notes_row, mNotesCursor, from, to); + new SimpleCursorAdapter(this, R.layout.notes_row, mNotesCursor, from, to); setListAdapter(notes); } - + @Override public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); @@ -77,38 +77,38 @@ public class Notepadv3 extends ListActivity { @Override public boolean onMenuItemSelected(int featureId, MenuItem item) { switch(item.getItemId()) { - case INSERT_ID: - createNote(); - return true; + case INSERT_ID: + createNote(); + return true; } - + return super.onMenuItemSelected(featureId, item); } - + @Override - public void onCreateContextMenu(ContextMenu menu, View v, - ContextMenuInfo menuInfo) { - super.onCreateContextMenu(menu, v, menuInfo); + public void onCreateContextMenu(ContextMenu menu, View v, + ContextMenuInfo menuInfo) { + super.onCreateContextMenu(menu, v, menuInfo); menu.add(0, DELETE_ID, 0, R.string.menu_delete); - } + } @Override - public boolean onContextItemSelected(MenuItem item) { - switch(item.getItemId()) { - case DELETE_ID: - AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo(); - mDbHelper.deleteNote(info.id); - fillData(); - return true; - } - return super.onContextItemSelected(item); - } - + public boolean onContextItemSelected(MenuItem item) { + switch(item.getItemId()) { + case DELETE_ID: + AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo(); + mDbHelper.deleteNote(info.id); + fillData(); + return true; + } + return super.onContextItemSelected(item); + } + private void createNote() { Intent i = new Intent(this, NoteEdit.class); startActivityForResult(i, ACTIVITY_CREATE); } - + @Override protected void onListItemClick(ListView l, View v, int position, long id) { super.onListItemClick(l, v, position, id); @@ -117,9 +117,9 @@ public class Notepadv3 extends ListActivity { Intent i = new Intent(this, NoteEdit.class); i.putExtra(NotesDbAdapter.KEY_ROWID, id); i.putExtra(NotesDbAdapter.KEY_TITLE, c.getString( - c.getColumnIndexOrThrow(NotesDbAdapter.KEY_TITLE))); + c.getColumnIndexOrThrow(NotesDbAdapter.KEY_TITLE))); i.putExtra(NotesDbAdapter.KEY_BODY, c.getString( - c.getColumnIndexOrThrow(NotesDbAdapter.KEY_BODY))); + c.getColumnIndexOrThrow(NotesDbAdapter.KEY_BODY))); startActivityForResult(i, ACTIVITY_EDIT); } @@ -128,21 +128,21 @@ public class Notepadv3 extends ListActivity { super.onActivityResult(requestCode, resultCode, intent); Bundle extras = intent.getExtras(); switch(requestCode) { - case ACTIVITY_CREATE: - String title = extras.getString(NotesDbAdapter.KEY_TITLE); - String body = extras.getString(NotesDbAdapter.KEY_BODY); - mDbHelper.createNote(title, body); - fillData(); - break; - case ACTIVITY_EDIT: - Long rowId = extras.getLong(NotesDbAdapter.KEY_ROWID); - if (rowId != null) { - String editTitle = extras.getString(NotesDbAdapter.KEY_TITLE); - String editBody = extras.getString(NotesDbAdapter.KEY_BODY); - mDbHelper.updateNote(rowId, editTitle, editBody); - } - fillData(); - break; + case ACTIVITY_CREATE: + String title = extras.getString(NotesDbAdapter.KEY_TITLE); + String body = extras.getString(NotesDbAdapter.KEY_BODY); + mDbHelper.createNote(title, body); + fillData(); + break; + case ACTIVITY_EDIT: + Long rowId = extras.getLong(NotesDbAdapter.KEY_ROWID); + if (rowId != null) { + String editTitle = extras.getString(NotesDbAdapter.KEY_TITLE); + String editBody = extras.getString(NotesDbAdapter.KEY_BODY); + mDbHelper.updateNote(rowId, editTitle, editBody); + } + fillData(); + break; } } } diff --git a/tutorials/NotepadCodeLab/Notepadv3/src/com/android/demo/notepad3/NotesDbAdapter.java b/tutorials/NotepadCodeLab/Notepadv3/src/com/android/demo/notepad3/NotesDbAdapter.java index 61ad04623..38ee1c02f 100755 --- a/tutorials/NotepadCodeLab/Notepadv3/src/com/android/demo/notepad3/NotesDbAdapter.java +++ b/tutorials/NotepadCodeLab/Notepadv3/src/com/android/demo/notepad3/NotesDbAdapter.java @@ -43,13 +43,13 @@ public class NotesDbAdapter { private static final String TAG = "NotesDbAdapter"; private DatabaseHelper mDbHelper; private SQLiteDatabase mDb; - + /** * Database creation sql statement */ private static final String DATABASE_CREATE = - "create table notes (_id integer primary key autoincrement, " - + "title text not null, body text not null);"; + "create table notes (_id integer primary key autoincrement, " + + "title text not null, body text not null);"; private static final String DATABASE_NAME = "data"; private static final String DATABASE_TABLE = "notes"; @@ -102,7 +102,7 @@ public class NotesDbAdapter { mDb = mDbHelper.getWritableDatabase(); return this; } - + public void close() { mDbHelper.close(); } @@ -158,9 +158,9 @@ public class NotesDbAdapter { Cursor mCursor = - mDb.query(true, DATABASE_TABLE, new String[] {KEY_ROWID, - KEY_TITLE, KEY_BODY}, KEY_ROWID + "=" + rowId, null, - null, null, null, null); + mDb.query(true, DATABASE_TABLE, new String[] {KEY_ROWID, + KEY_TITLE, KEY_BODY}, KEY_ROWID + "=" + rowId, null, + null, null, null, null); if (mCursor != null) { mCursor.moveToFirst(); } diff --git a/tutorials/NotepadCodeLab/Notepadv3Solution/Android.mk b/tutorials/NotepadCodeLab/Notepadv3Solution/Android.mk index 177164ed8..d8a6ea580 100644 --- a/tutorials/NotepadCodeLab/Notepadv3Solution/Android.mk +++ b/tutorials/NotepadCodeLab/Notepadv3Solution/Android.mk @@ -17,6 +17,7 @@ LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) +# Only build apk if this package is added to CUSTOM_MODLUES in buildspec.mk LOCAL_MODULE_TAGS := optional # Only compile source java files in this apk. diff --git a/tutorials/NotepadCodeLab/Notepadv3Solution/AndroidManifest.xml b/tutorials/NotepadCodeLab/Notepadv3Solution/AndroidManifest.xml index adb07ffdb..06e16451c 100755 --- a/tutorials/NotepadCodeLab/Notepadv3Solution/AndroidManifest.xml +++ b/tutorials/NotepadCodeLab/Notepadv3Solution/AndroidManifest.xml @@ -7,6 +7,6 @@ - + \ No newline at end of file diff --git a/tutorials/NotepadCodeLab/Notepadv3Solution/src/com/android/demo/notepad3/NoteEdit.java b/tutorials/NotepadCodeLab/Notepadv3Solution/src/com/android/demo/notepad3/NoteEdit.java index f5eb6c433..eabb07a4e 100755 --- a/tutorials/NotepadCodeLab/Notepadv3Solution/src/com/android/demo/notepad3/NoteEdit.java +++ b/tutorials/NotepadCodeLab/Notepadv3Solution/src/com/android/demo/notepad3/NoteEdit.java @@ -25,7 +25,7 @@ import android.widget.EditText; public class NoteEdit extends Activity { - private EditText mTitleText; + private EditText mTitleText; private EditText mBodyText; private Long mRowId; private NotesDbAdapter mDbHelper; @@ -36,63 +36,62 @@ public class NoteEdit extends Activity { mDbHelper = new NotesDbAdapter(this); mDbHelper.open(); setContentView(R.layout.note_edit); - - + + mTitleText = (EditText) findViewById(R.id.title); mBodyText = (EditText) findViewById(R.id.body); - + Button confirmButton = (Button) findViewById(R.id.confirm); - mRowId = (savedInstanceState == null) ? null : (Long) savedInstanceState.getSerializable(NotesDbAdapter.KEY_ROWID); if (mRowId == null) { - Bundle extras = getIntent().getExtras(); - mRowId = extras != null ? extras.getLong(NotesDbAdapter.KEY_ROWID) + Bundle extras = getIntent().getExtras(); + mRowId = extras != null ? extras.getLong(NotesDbAdapter.KEY_ROWID) : null; } populateFields(); - + confirmButton.setOnClickListener(new View.OnClickListener() { - public void onClick(View view) { - setResult(RESULT_OK); - finish(); - } - + public void onClick(View view) { + setResult(RESULT_OK); + finish(); + } + }); } - + private void populateFields() { if (mRowId != null) { Cursor note = mDbHelper.fetchNote(mRowId); startManagingCursor(note); mTitleText.setText(note.getString( - note.getColumnIndexOrThrow(NotesDbAdapter.KEY_TITLE))); + note.getColumnIndexOrThrow(NotesDbAdapter.KEY_TITLE))); mBodyText.setText(note.getString( note.getColumnIndexOrThrow(NotesDbAdapter.KEY_BODY))); } } - + @Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); saveState(); outState.putSerializable(NotesDbAdapter.KEY_ROWID, mRowId); } - + @Override protected void onPause() { super.onPause(); saveState(); } - + @Override protected void onResume() { super.onResume(); populateFields(); } - + private void saveState() { String title = mTitleText.getText().toString(); String body = mBodyText.getText().toString(); @@ -106,5 +105,5 @@ public class NoteEdit extends Activity { mDbHelper.updateNote(mRowId, title, body); } } - + } diff --git a/tutorials/NotepadCodeLab/Notepadv3Solution/src/com/android/demo/notepad3/Notepadv3.java b/tutorials/NotepadCodeLab/Notepadv3Solution/src/com/android/demo/notepad3/Notepadv3.java index 7f9903750..1e15694a0 100755 --- a/tutorials/NotepadCodeLab/Notepadv3Solution/src/com/android/demo/notepad3/Notepadv3.java +++ b/tutorials/NotepadCodeLab/Notepadv3Solution/src/com/android/demo/notepad3/Notepadv3.java @@ -1,7 +1,7 @@ /* * Copyright (C) 2008 Google Inc. * - * Licensed under the Apache License, Version 2.0 (the "License")savedInstanceState; + * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * @@ -32,12 +32,12 @@ import android.widget.AdapterView.AdapterContextMenuInfo; public class Notepadv3 extends ListActivity { private static final int ACTIVITY_CREATE=0; private static final int ACTIVITY_EDIT=1; - + private static final int INSERT_ID = Menu.FIRST; private static final int DELETE_ID = Menu.FIRST + 1; private NotesDbAdapter mDbHelper; - + /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { @@ -48,23 +48,23 @@ public class Notepadv3 extends ListActivity { fillData(); registerForContextMenu(getListView()); } - + private void fillData() { Cursor notesCursor = mDbHelper.fetchAllNotes(); startManagingCursor(notesCursor); - + // Create an array to specify the fields we want to display in the list (only TITLE) String[] from = new String[]{NotesDbAdapter.KEY_TITLE}; - + // and an array of the fields we want to bind those fields to (in this case just text1) int[] to = new int[]{R.id.text1}; - + // Now create a simple cursor adapter and set it to display SimpleCursorAdapter notes = - new SimpleCursorAdapter(this, R.layout.notes_row, notesCursor, from, to); + new SimpleCursorAdapter(this, R.layout.notes_row, notesCursor, from, to); setListAdapter(notes); } - + @Override public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); @@ -75,38 +75,38 @@ public class Notepadv3 extends ListActivity { @Override public boolean onMenuItemSelected(int featureId, MenuItem item) { switch(item.getItemId()) { - case INSERT_ID: - createNote(); - return true; + case INSERT_ID: + createNote(); + return true; } - + return super.onMenuItemSelected(featureId, item); } - + @Override - public void onCreateContextMenu(ContextMenu menu, View v, - ContextMenuInfo menuInfo) { - super.onCreateContextMenu(menu, v, menuInfo); + public void onCreateContextMenu(ContextMenu menu, View v, + ContextMenuInfo menuInfo) { + super.onCreateContextMenu(menu, v, menuInfo); menu.add(0, DELETE_ID, 0, R.string.menu_delete); - } + } @Override - public boolean onContextItemSelected(MenuItem item) { - switch(item.getItemId()) { - case DELETE_ID: - AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo(); - mDbHelper.deleteNote(info.id); - fillData(); - return true; - } - return super.onContextItemSelected(item); - } - + public boolean onContextItemSelected(MenuItem item) { + switch(item.getItemId()) { + case DELETE_ID: + AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo(); + mDbHelper.deleteNote(info.id); + fillData(); + return true; + } + return super.onContextItemSelected(item); + } + private void createNote() { Intent i = new Intent(this, NoteEdit.class); startActivityForResult(i, ACTIVITY_CREATE); } - + @Override protected void onListItemClick(ListView l, View v, int position, long id) { super.onListItemClick(l, v, position, id); @@ -116,8 +116,7 @@ public class Notepadv3 extends ListActivity { } @Override - protected void onActivityResult(int requestCode, int resultCode, - Intent intent) { + protected void onActivityResult(int requestCode, int resultCode, Intent intent) { super.onActivityResult(requestCode, resultCode, intent); fillData(); } diff --git a/tutorials/NotepadCodeLab/Notepadv3Solution/src/com/android/demo/notepad3/NotesDbAdapter.java b/tutorials/NotepadCodeLab/Notepadv3Solution/src/com/android/demo/notepad3/NotesDbAdapter.java index 61ad04623..38ee1c02f 100755 --- a/tutorials/NotepadCodeLab/Notepadv3Solution/src/com/android/demo/notepad3/NotesDbAdapter.java +++ b/tutorials/NotepadCodeLab/Notepadv3Solution/src/com/android/demo/notepad3/NotesDbAdapter.java @@ -43,13 +43,13 @@ public class NotesDbAdapter { private static final String TAG = "NotesDbAdapter"; private DatabaseHelper mDbHelper; private SQLiteDatabase mDb; - + /** * Database creation sql statement */ private static final String DATABASE_CREATE = - "create table notes (_id integer primary key autoincrement, " - + "title text not null, body text not null);"; + "create table notes (_id integer primary key autoincrement, " + + "title text not null, body text not null);"; private static final String DATABASE_NAME = "data"; private static final String DATABASE_TABLE = "notes"; @@ -102,7 +102,7 @@ public class NotesDbAdapter { mDb = mDbHelper.getWritableDatabase(); return this; } - + public void close() { mDbHelper.close(); } @@ -158,9 +158,9 @@ public class NotesDbAdapter { Cursor mCursor = - mDb.query(true, DATABASE_TABLE, new String[] {KEY_ROWID, - KEY_TITLE, KEY_BODY}, KEY_ROWID + "=" + rowId, null, - null, null, null, null); + mDb.query(true, DATABASE_TABLE, new String[] {KEY_ROWID, + KEY_TITLE, KEY_BODY}, KEY_ROWID + "=" + rowId, null, + null, null, null, null); if (mCursor != null) { mCursor.moveToFirst(); } -- cgit v1.2.3