Android Open Source - android-class Wiki Notes List






From Project

Back to project page android-class.

License

The source code is released under:

MIT License

If you think the Android project android-class listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/*
 * Copyright (C) 2008 Google Inc./*from www.  jav  a  2s .  c  om*/
 * 
 * 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.
 */

package com.google.android.wikinotes;

import android.app.ListActivity;
import android.app.SearchManager;
import android.content.Intent;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.SimpleCursorAdapter;

import com.google.android.wikinotes.db.WikiNote;

/**
 * Activity to list wikinotes. By default, the notes are listed in the order
 * of most recently modified to least recently modified. This activity can
 * handle requests to either show all notes, or the results of a title or body
 * search performed by the content provider.
 */
public class WikiNotesList extends ListActivity {

    /**
     * A key to store/retrieve the search criteria in a bundle
     */
    public static final String SEARCH_CRITERIA_KEY = "SearchCriteria";
    /**
     * The projection to use (columns to retrieve) for a query of wikinotes
     */
    public static final String[] PROJECTION = { WikiNote.Notes._ID,
                 WikiNote.Notes.TITLE,
                 WikiNote.Notes.MODIFIED_DATE };

    private Cursor mCursor;
    private WikiActivityHelper mHelper;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);

  Intent intent = getIntent();
  Uri uri = null;
  String query = null;

  // locate a query string; prefer a fresh search Intent over saved
  // state
  if (Intent.ACTION_SEARCH.equals(intent.getAction())) {
      query = intent.getStringExtra(SearchManager.QUERY);
  } else if (savedInstanceState != null) {
      query = savedInstanceState.getString(SearchManager.QUERY);
  }
  if (query != null && query.length() > 0) {
      uri = Uri.withAppendedPath(WikiNote.Notes.SEARCH_URI, Uri
    .encode(query));
  }

  if (uri == null) {
      // somehow we got called w/o a query so fall back to a reasonable
      // default (all notes)
      uri = WikiNote.Notes.ALL_NOTES_URI;
  }

  // Do the query
  Cursor c = managedQuery(uri, PROJECTION, null, null,
        WikiNote.Notes.DEFAULT_SORT_ORDER);
  mCursor = c;

  mHelper = new WikiActivityHelper(this);

  // Bind the results of the search into the list
  ListAdapter adapter = new SimpleCursorAdapter(
                  this,
                  android.R.layout.simple_list_item_1,
                  mCursor,
                  new String[] { WikiNote.Notes.TITLE },
                  new int[] { android.R.id.text1 });
  setListAdapter(adapter);

  // use the menu shortcut keys as default key bindings for the entire
  // activity
  setDefaultKeyMode(DEFAULT_KEYS_SHORTCUT);
    }

    /**
     * Override the onListItemClick to open the wiki note to view when it is
     * selected from the list.
     */
    @Override
    protected void onListItemClick(ListView list, View view, int position,
           long id) {
  Cursor c = mCursor;
  c.moveToPosition(position);
  String title = c.getString(c
      .getColumnIndexOrThrow(WikiNote.Notes.TITLE));

  // Create the URI of the note we want to view based on the title
  Uri uri = Uri.withAppendedPath(WikiNote.Notes.ALL_NOTES_URI, title);
  Intent i = new Intent(Intent.ACTION_VIEW, uri);
  startActivity(i);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
  super.onCreateOptionsMenu(menu);
  menu.add(0, WikiNotes.HOME_ID, 0, R.string.menu_start)
      .setShortcut('4', 'h').setIcon(R.drawable.icon_start);
  menu.add(0, WikiNotes.LIST_ID, 0, R.string.menu_recent)
      .setShortcut('3', 'r').setIcon(R.drawable.icon_recent);
  menu.add(0, WikiNotes.ABOUT_ID, 0, R.string.menu_about)
      .setShortcut('5', 'a').setIcon(android.R.drawable.ic_dialog_info);
  menu.add(0, WikiNotes.EXPORT_ID, 0, R.string.menu_export)
      .setShortcut('6', 'x').setIcon(android.R.drawable.ic_dialog_info);
  menu.add(0, WikiNotes.IMPORT_ID, 0, R.string.menu_import)
      .setShortcut('7', 'm').setIcon(android.R.drawable.ic_dialog_info);
  return true;
    }

    @Override
    public boolean onMenuItemSelected(int featureId, MenuItem item) {
  switch (item.getItemId()) {
  case WikiNotes.HOME_ID:
      mHelper.goHome();
      return true;
  case WikiNotes.LIST_ID:
      mHelper.listNotes();
      return true;
  case WikiNotes.ABOUT_ID:
      Eula.showEula(this);
      return true;
  case WikiNotes.EXPORT_ID:
      mHelper.exportNotes();
      return true;
  case WikiNotes.IMPORT_ID:
      mHelper.importNotes();
      return true;
  default:
      return false;
  }
    }
}




Java Source Code List

com.android.alarmclock.AnalogAppWidgetProvider.java
com.android.alarmclock.DigitalAppWidgetProvider.java
com.android.alarmclock.DigitalAppWidgetService.java
com.android.alarmclock.DigitalWidgetViewsFactory.java
com.android.alarmclock.WidgetUtils.java
com.android.deskclock.AlarmAlertFullScreen.java
com.android.deskclock.AlarmAlertWakeLock.java
com.android.deskclock.AlarmAlert.java
com.android.deskclock.AlarmClock.java
com.android.deskclock.AlarmDatabaseHelper.java
com.android.deskclock.AlarmInitReceiver.java
com.android.deskclock.AlarmKlaxon.java
com.android.deskclock.AlarmListeners.java
com.android.deskclock.AlarmPreference.java
com.android.deskclock.AlarmProvider.java
com.android.deskclock.AlarmReceiver.java
com.android.deskclock.AlarmTimePickerDialogFragment.java
com.android.deskclock.AlarmUtils.java
com.android.deskclock.Alarm.java
com.android.deskclock.Alarms.java
com.android.deskclock.AnalogClock.java
com.android.deskclock.AndroidClockTextView.java
com.android.deskclock.AsyncHandler.java
com.android.deskclock.CircleButtonsLinearLayout.java
com.android.deskclock.CircleTimerView.java
com.android.deskclock.ClockFragment.java
com.android.deskclock.DeskClockFragment.java
com.android.deskclock.DeskClock.java
com.android.deskclock.DigitalClock.java
com.android.deskclock.DontPressWithParentLayout.java
com.android.deskclock.HandleSetAlarm.java
com.android.deskclock.LabelDialogFragment.java
com.android.deskclock.Log.java
com.android.deskclock.RepeatPreference.java
com.android.deskclock.ScreensaverActivity.java
com.android.deskclock.ScreensaverSettingsActivity.java
com.android.deskclock.Screensaver.java
com.android.deskclock.SetAlarm.java
com.android.deskclock.SettingsActivity.java
com.android.deskclock.SnoozeLengthDialog.java
com.android.deskclock.TimePicker.java
com.android.deskclock.TimerRingService.java
com.android.deskclock.TimerSetupView.java
com.android.deskclock.ToastMaster.java
com.android.deskclock.Utils.java
com.android.deskclock.ZeroTopPaddingTextView.java
com.android.deskclock.stopwatch.StopwatchFragment.java
com.android.deskclock.stopwatch.StopwatchService.java
com.android.deskclock.stopwatch.Stopwatches.java
com.android.deskclock.timer.CountingTimerView.java
com.android.deskclock.timer.TimerAlertFullScreen.java
com.android.deskclock.timer.TimerFragment.java
com.android.deskclock.timer.TimerListItem.java
com.android.deskclock.timer.TimerObj.java
com.android.deskclock.timer.TimerReceiver.java
com.android.deskclock.timer.TimerView.java
com.android.deskclock.timer.Timers.java
com.android.deskclock.widget.ActionableToastBar.java
com.android.deskclock.widget.EllipsizeLayout.java
com.android.deskclock.widget.multiwaveview.Ease.java
com.android.deskclock.widget.multiwaveview.GlowPadView.java
com.android.deskclock.widget.multiwaveview.PointCloud.java
com.android.deskclock.widget.multiwaveview.TargetDrawable.java
com.android.deskclock.widget.multiwaveview.Tweener.java
com.android.deskclock.widget.swipeablelistview.LogTag.java
com.android.deskclock.widget.swipeablelistview.LogUtils.java
com.android.deskclock.widget.swipeablelistview.SwipeHelper.java
com.android.deskclock.widget.swipeablelistview.SwipeLayout.java
com.android.deskclock.widget.swipeablelistview.SwipeableListView.java
com.android.deskclock.widget.swipeablelistview.Utils.java
com.android.deskclock.worldclock.CitiesActivity.java
com.android.deskclock.worldclock.Cities.java
com.android.deskclock.worldclock.CityObj.java
com.android.deskclock.worldclock.WorldClockAdapter.java
com.google.android.wikinotes.Eula.java
com.google.android.wikinotes.WikiActivityHelper.java
com.google.android.wikinotes.WikiNoteEditor.java
com.google.android.wikinotes.WikiNotesList.java
com.google.android.wikinotes.WikiNotes.java
com.google.android.wikinotes.db.WikiNote.java
com.google.android.wikinotes.db.WikiNotesProvider.java
com.mamlambo.article.simplecalc.MainActivity.java
course.examples.theanswer.TheAnswer.java
course.examples.theanswer.TheAnswer.java
us.clanryan.coursera.myfirstapp.MainActivity.java
us.clanryan.paceconverter.MainActivity.java