diff --git a/doc/小米便签泛读报告.docx b/doc/小米便签泛读报告.docx index 899c1fc..21a7042 100644 Binary files a/doc/小米便签泛读报告.docx and b/doc/小米便签泛读报告.docx differ diff --git a/src/Notes/.gradle/8.0/executionHistory/executionHistory.bin b/src/Notes/.gradle/8.0/executionHistory/executionHistory.bin index 71bc4ef..cfcf413 100644 Binary files a/src/Notes/.gradle/8.0/executionHistory/executionHistory.bin and b/src/Notes/.gradle/8.0/executionHistory/executionHistory.bin differ diff --git a/src/Notes/.gradle/8.0/executionHistory/executionHistory.lock b/src/Notes/.gradle/8.0/executionHistory/executionHistory.lock index ba8bce4..1b7a6b2 100644 Binary files a/src/Notes/.gradle/8.0/executionHistory/executionHistory.lock and b/src/Notes/.gradle/8.0/executionHistory/executionHistory.lock differ diff --git a/src/Notes/.gradle/8.0/fileHashes/fileHashes.bin b/src/Notes/.gradle/8.0/fileHashes/fileHashes.bin index 8fdb6c0..9039f81 100644 Binary files a/src/Notes/.gradle/8.0/fileHashes/fileHashes.bin and b/src/Notes/.gradle/8.0/fileHashes/fileHashes.bin differ diff --git a/src/Notes/.gradle/8.0/fileHashes/fileHashes.lock b/src/Notes/.gradle/8.0/fileHashes/fileHashes.lock index ff0327e..3b75c96 100644 Binary files a/src/Notes/.gradle/8.0/fileHashes/fileHashes.lock and b/src/Notes/.gradle/8.0/fileHashes/fileHashes.lock differ diff --git a/src/Notes/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/src/Notes/.gradle/buildOutputCleanup/buildOutputCleanup.lock index 27c25e5..90d166b 100644 Binary files a/src/Notes/.gradle/buildOutputCleanup/buildOutputCleanup.lock and b/src/Notes/.gradle/buildOutputCleanup/buildOutputCleanup.lock differ diff --git a/src/Notes/app/NoteEditActivity.puml b/src/Notes/app/NoteEditActivity.puml new file mode 100644 index 0000000..0e1e558 --- /dev/null +++ b/src/Notes/app/NoteEditActivity.puml @@ -0,0 +1,77 @@ +@startuml +class net.micode.notes.ui.NoteEditActivity { +- {static} Map sBgSelectorBtnsMap +- {static} Map sBgSelectorSelectionMap +- {static} Map sFontSizeBtnsMap +- {static} Map sFontSelectorSelectionMap +- {static} String TAG +- HeadViewHolder mNoteHeaderHolder +- View mHeadViewPanel +- View mNoteBgColorSelector +- View mFontSizeSelector +- EditText mNoteEditor +- View mNoteEditorPanel ++ WorkingNote mWorkingNote +- SharedPreferences mSharedPrefs +- int mFontSizeId +- {static} String PREFERENCE_FONT_SIZE +- {static} int SHORTCUT_ICON_TITLE_MAX_LEN ++ {static} String TAG_CHECKED ++ {static} String TAG_UNCHECKED +- LinearLayout mEditTextList +- String mUserQuery +- Pattern mPattern +# void onCreate(Bundle) +# void onRestoreInstanceState(Bundle) +- boolean initActivityState(Intent) +# void onResume() +- void initNoteScreen() +- void showAlertHeader() +# void onNewIntent(Intent) +# void onSaveInstanceState(Bundle) ++ boolean dispatchTouchEvent(MotionEvent) +- boolean inRangeOfView(View,MotionEvent) +- void initResources() +# void onPause() +- void updateWidget() ++ void onClick(View) ++ void onBackPressed() +- boolean clearSettingState() ++ void onBackgroundColorChanged() ++ boolean onPrepareOptionsMenu(Menu) ++ boolean onOptionsItemSelected(MenuItem) +- void setReminder() +- void sendTo(Context,String) +- void createNewNote() +- void deleteCurrentNote() +- boolean isSyncMode() ++ void onClockAlertChanged(long,boolean) ++ void onWidgetChanged() ++ void onEditTextDelete(int,String) ++ void onEditTextEnter(int,String) +- void switchToListMode(String) +- Spannable getHighlightQueryResult(String,String) +- View getListItem(String,int) ++ void onTextChange(int,boolean) ++ void onCheckListModeChanged(int,int) +- boolean getWorkingText() +- boolean saveNote() +- void sendToDesktop() +- String makeShortcutIconTitle(String) +- void showToast(int) +- void showToast(int,int) +} +class net.micode.notes.ui.NoteEditActivity$HeadViewHolder { ++ TextView tvModified ++ ImageView ivAlertIcon ++ TextView tvAlertDate ++ ImageView ibSetBgColor +} + + +android.view.View.OnClickListener <|.. net.micode.notes.ui.NoteEditActivity +net.micode.notes.model.WorkingNote.NoteSettingChangedListener <|.. net.micode.notes.ui.NoteEditActivity +net.micode.notes.ui.NoteEditText.OnTextViewChangeListener <|.. net.micode.notes.ui.NoteEditActivity +android.app.Activity <|-- net.micode.notes.ui.NoteEditActivity +net.micode.notes.ui.NoteEditActivity +.. net.micode.notes.ui.NoteEditActivity$HeadViewHolder +@enduml \ No newline at end of file diff --git a/src/Notes/app/model.puml b/src/Notes/app/model.puml new file mode 100644 index 0000000..6a56438 --- /dev/null +++ b/src/Notes/app/model.puml @@ -0,0 +1,95 @@ +@startuml +class net.micode.notes.model.WorkingNote { +- Note mNote +- long mNoteId +- String mContent +- int mMode +- long mAlertDate +- long mModifiedDate +- int mBgColorId +- int mWidgetId +- int mWidgetType +- long mFolderId +- Context mContext +- {static} String TAG +- boolean mIsDeleted +- NoteSettingChangedListener mNoteSettingStatusListener ++ {static} String[] DATA_PROJECTION ++ {static} String[] NOTE_PROJECTION +- {static} int DATA_ID_COLUMN +- {static} int DATA_CONTENT_COLUMN +- {static} int DATA_MIME_TYPE_COLUMN +- {static} int DATA_MODE_COLUMN +- {static} int NOTE_PARENT_ID_COLUMN +- {static} int NOTE_ALERTED_DATE_COLUMN +- {static} int NOTE_BG_COLOR_ID_COLUMN +- {static} int NOTE_WIDGET_ID_COLUMN +- {static} int NOTE_WIDGET_TYPE_COLUMN +- {static} int NOTE_MODIFIED_DATE_COLUMN +- void loadNote() +- void loadNoteData() ++ {static} WorkingNote createEmptyNote(Context,long,int,int,int) ++ {static} WorkingNote load(Context,long) ++ boolean saveNote() ++ boolean existInDatabase() +- boolean isWorthSaving() ++ void setOnSettingStatusChangedListener(NoteSettingChangedListener) ++ void setAlertDate(long,boolean) ++ void markDeleted(boolean) ++ void setBgColorId(int) ++ void setCheckListMode(int) ++ void setWidgetType(int) ++ void setWidgetId(int) ++ void setWorkingText(String) ++ void convertToCallNote(String,long) ++ boolean hasClockAlert() ++ String getContent() ++ long getAlertDate() ++ long getModifiedDate() ++ int getBgColorResId() ++ int getBgColorId() ++ int getTitleBgResId() ++ int getCheckListMode() ++ long getNoteId() ++ long getFolderId() ++ int getWidgetId() ++ int getWidgetType() +} +interface net.micode.notes.model.WorkingNote$NoteSettingChangedListener { +~ void onBackgroundColorChanged() +~ void onClockAlertChanged(long,boolean) +~ void onWidgetChanged() +~ void onCheckListModeChanged(int,int) +} +class net.micode.notes.model.Note { +- ContentValues mNoteDiffValues +- NoteData mNoteData +- {static} String TAG ++ {static} long getNewNoteId(Context,long) ++ void setNoteValue(String,String) ++ void setTextData(String,String) ++ void setTextDataId(long) ++ long getTextDataId() ++ void setCallDataId(long) ++ void setCallData(String,String) ++ boolean isLocalModified() ++ boolean syncNote(Context,long) +} +class net.micode.notes.model.Note$NoteData { +- long mTextDataId +- ContentValues mTextDataValues +- long mCallDataId +- ContentValues mCallDataValues +- {static} String TAG +~ boolean isLocalModified() +~ void setTextDataId(long) +~ void setCallDataId(long) +~ void setCallData(String,String) +~ void setTextData(String,String) +~ Uri pushIntoContentResolver(Context,long) +} + + +net.micode.notes.model.WorkingNote +.. net.micode.notes.model.WorkingNote$NoteSettingChangedListener +net.micode.notes.model.Note +.. net.micode.notes.model.Note$NoteData +@enduml \ No newline at end of file diff --git a/src/Notes/app/ui.puml b/src/Notes/app/ui.puml new file mode 100644 index 0000000..2fa7784 --- /dev/null +++ b/src/Notes/app/ui.puml @@ -0,0 +1,97 @@ +@startuml +class net.micode.notes.ui.NoteEditText { +} +interface net.micode.notes.ui.NoteEditText$OnTextViewChangeListener { +} +class net.micode.notes.ui.NotesListActivity { +} +enum net.micode.notes.ui.ListEditState { ++ NOTE_LIST ++ SUB_FOLDER ++ CALL_RECORD_FOLDER +} +class net.micode.notes.ui.NotesListActivity$ModeCallback { +} +class net.micode.notes.ui.NotesListActivity$NewNoteOnTouchListener { +} +class net.micode.notes.ui.NotesListActivity$BackgroundQueryHandler { +} +class net.micode.notes.ui.NotesListActivity$OnListItemClickListener { +} +class net.micode.notes.ui.DateTimePicker { +} +interface net.micode.notes.ui.DateTimePicker$OnDateTimeChangedListener { +} +class net.micode.notes.ui.AlarmInitReceiver { +} +class net.micode.notes.ui.DateTimePickerDialog { +} +interface net.micode.notes.ui.DateTimePickerDialog$OnDateTimeSetListener { +} +class net.micode.notes.ui.NoteItemData { +} +class net.micode.notes.ui.NoteEditActivity { +} +class net.micode.notes.ui.NoteEditActivity$HeadViewHolder { +} +class net.micode.notes.ui.NotesListAdapter { +} +class net.micode.notes.ui.NotesListAdapter$AppWidgetAttribute { +} +class net.micode.notes.ui.NotesPreferenceActivity { +} +class net.micode.notes.ui.NotesPreferenceActivity$GTaskReceiver { +} +class net.micode.notes.ui.FoldersListAdapter { +} +class net.micode.notes.ui.FoldersListAdapter$FolderListItem { +} +class net.micode.notes.ui.AlarmAlertActivity { +} +class net.micode.notes.ui.DropdownMenu { +} +class net.micode.notes.ui.AlarmReceiver { +} +class net.micode.notes.ui.NotesListItem { +} + + +android.widget.EditText <|-- net.micode.notes.ui.NoteEditText +net.micode.notes.ui.NoteEditText +.. net.micode.notes.ui.NoteEditText$OnTextViewChangeListener +android.view.View.OnClickListener <|.. net.micode.notes.ui.NotesListActivity +android.widget.AdapterView.OnItemLongClickListener <|.. net.micode.notes.ui.NotesListActivity +android.app.Activity <|-- net.micode.notes.ui.NotesListActivity +net.micode.notes.ui.NotesListActivity +.. net.micode.notes.ui.NotesListActivity$ModeCallback +net.micode.notes.ui.MultiChoiceModeListener <|.. net.micode.notes.ui.NotesListActivity$ModeCallback +net.micode.notes.ui.OnMenuItemClickListener <|.. net.micode.notes.ui.NotesListActivity$ModeCallback +net.micode.notes.ui.NotesListActivity +.. net.micode.notes.ui.NotesListActivity$NewNoteOnTouchListener +net.micode.notes.ui.OnTouchListener <|.. net.micode.notes.ui.NotesListActivity$NewNoteOnTouchListener +net.micode.notes.ui.NotesListActivity +.. net.micode.notes.ui.NotesListActivity$BackgroundQueryHandler +net.micode.notes.ui.AsyncQueryHandler <|-- net.micode.notes.ui.NotesListActivity$BackgroundQueryHandler +net.micode.notes.ui.NotesListActivity +.. net.micode.notes.ui.NotesListActivity$OnListItemClickListener +net.micode.notes.ui.OnItemClickListener <|.. net.micode.notes.ui.NotesListActivity$OnListItemClickListener +android.widget.FrameLayout <|-- net.micode.notes.ui.DateTimePicker +net.micode.notes.ui.DateTimePicker +.. net.micode.notes.ui.DateTimePicker$OnDateTimeChangedListener +android.content.BroadcastReceiver <|-- net.micode.notes.ui.AlarmInitReceiver +android.content.DialogInterface.OnClickListener <|.. net.micode.notes.ui.DateTimePickerDialog +android.app.AlertDialog <|-- net.micode.notes.ui.DateTimePickerDialog +net.micode.notes.ui.DateTimePickerDialog +.. net.micode.notes.ui.DateTimePickerDialog$OnDateTimeSetListener +android.view.View.OnClickListener <|.. net.micode.notes.ui.NoteEditActivity +net.micode.notes.model.WorkingNote.NoteSettingChangedListener <|.. net.micode.notes.ui.NoteEditActivity +net.micode.notes.ui.NoteEditText.OnTextViewChangeListener <|.. net.micode.notes.ui.NoteEditActivity +android.app.Activity <|-- net.micode.notes.ui.NoteEditActivity +net.micode.notes.ui.NoteEditActivity +.. net.micode.notes.ui.NoteEditActivity$HeadViewHolder +android.widget.CursorAdapter <|-- net.micode.notes.ui.NotesListAdapter +net.micode.notes.ui.NotesListAdapter +.. net.micode.notes.ui.NotesListAdapter$AppWidgetAttribute +android.preference.PreferenceActivity <|-- net.micode.notes.ui.NotesPreferenceActivity +net.micode.notes.ui.NotesPreferenceActivity +.. net.micode.notes.ui.NotesPreferenceActivity$GTaskReceiver +net.micode.notes.ui.BroadcastReceiver <|-- net.micode.notes.ui.NotesPreferenceActivity$GTaskReceiver +android.widget.CursorAdapter <|-- net.micode.notes.ui.FoldersListAdapter +net.micode.notes.ui.FoldersListAdapter +.. net.micode.notes.ui.FoldersListAdapter$FolderListItem +net.micode.notes.ui.LinearLayout <|-- net.micode.notes.ui.FoldersListAdapter$FolderListItem +android.content.DialogInterface.OnClickListener <|.. net.micode.notes.ui.AlarmAlertActivity +android.content.DialogInterface.OnDismissListener <|.. net.micode.notes.ui.AlarmAlertActivity +android.app.Activity <|-- net.micode.notes.ui.AlarmAlertActivity +android.content.BroadcastReceiver <|-- net.micode.notes.ui.AlarmReceiver +android.widget.LinearLayout <|-- net.micode.notes.ui.NotesListItem +@enduml \ No newline at end of file