@startuml class cc.liuyx.note.alarm.PlanDatabase { + {static} String TABLE_NAME + {static} String TITLE + {static} String CONTENT + {static} String ID + {static} String TIME + {static} String MODE + void onCreate(SQLiteDatabase) + void onUpgrade(SQLiteDatabase,int,int) } abstract class cc.liuyx.note.BaseActivity { + String TAG + String ACTION # BroadcastReceiver receiver # IntentFilter filter # void onCreate(Bundle) + boolean isNightMode() + void setNightMode() # {abstract}void needRefresh() + void onDestroy() + long calStrToSec(String) } class cc.liuyx.note.entity.Note { - long id - String content - String time - int tag + long getId() + String getContent() + String getTime() + void setId(long) + void setContent(String) + void setTime(String) + String toString() + int getTag() + void setTag(int) } class cc.liuyx.note.alarm.PlanAdapter { - Context mContext - List backList - List planList ~ PlanAdapter.MyFilter mFilter + int getCount() + Object getItem(int) + long getItemId(int) + View getView(int,View,ViewGroup) + Filter getFilter() } class cc.liuyx.note.alarm.PlanAdapter$MyFilter { # FilterResults performFiltering(CharSequence) # void publishResults(CharSequence,FilterResults) } class cc.liuyx.note.db.CRUD { ~ SQLiteOpenHelper dbHandler ~ SQLiteDatabase db - {static} String[] columns + void open() + void close() + void addNote(Note) + Note getNote(long) + List getAllNotes() + void updateNote(Note) + void removeNote(Note) } class cc.liuyx.note.adapter.NoteAdapter { - Context mContext - List backList - List noteList - MyFilter mFilter + int getCount() + Object getItem(int) + long getItemId(int) + View getView(int,View,ViewGroup) + Filter getFilter() } class cc.liuyx.note.adapter.NoteAdapter$MyFilter { # FilterResults performFiltering(CharSequence) # void publishResults(CharSequence,FilterResults) } class cc.liuyx.note.FabColorActivity { - Toolbar myToolbar - int openMode - SharedPreferences sharedPreferences - ImageView q # void onCreate(Bundle) - void initImageView() - void chooseCurFabColor(int) - void setClick() + void onClick(View) + boolean onKeyDown(int,KeyEvent) } class com.example.atry.ExampleInstrumentedTest { + void useAppContext() } class cc.liuyx.note.alarm.AlarmReceiver { - String channelId - String name + void onReceive(Context,Intent) } class cc.liuyx.note.UserSettingsActivity { - Switch nightMode - Switch reverseSort - LinearLayout fabColor - LinearLayout fabPlanColor - Switch noteTitle - SharedPreferences sharedPreferences - {static} boolean night_change # void onCreate(Bundle) # void needRefresh() - void initView() # void onActivityResult(int,int,Intent) - void setSelfNightMode() - void setNightModePref(boolean) + boolean onKeyDown(int,KeyEvent) } class cc.liuyx.note.alarm.Plan { - long id - String title - String content - Calendar planTime + int getYear() + int getMonth() + int getDay() + int getHour() + int getMinute() + long getId() + void setId(long) + String getTitle() + void setTitle(String) + String getContent() + void setContent(String) + Calendar getPlanTime() + String getTime() + void setTime(String) } class cc.liuyx.note.adapter.TagAdapter { - Context context - List tagList - List numList + int getCount() + Object getItem(int) + long getItemId(int) + View getView(int,View,ViewGroup) } class cc.liuyx.note.alarm.CRUD { ~ SQLiteOpenHelper dbHandler ~ SQLiteDatabase db - {static} String[] columns + void open() + void close() + Plan addPlan(Plan) + Plan getPlan(long) + List getAllPlans() + int updatePlan(Plan) + void removePlan(Plan) } class cc.liuyx.note.alarm.EditAlarmActivity { - DatePickerDialog.OnDateSetListener dateSetListener - TimePickerDialog.OnTimeSetListener timeSetListener - EditText et_title - EditText et - Button set_date - Button set_time - TextView date - TextView time - Plan plan - int[] dateArray - int[] timeArray - int openMode - String old_title - String old_content - String old_time - long id - boolean timeChange # void onCreate(Bundle) + boolean onKeyDown(int,KeyEvent) + boolean onCreateOptionsMenu(Menu) + boolean onOptionsItemSelected(MenuItem) # void needRefresh() - void init() - void setDateTV(int,int,int) - void setTimeTV(int,int) + void onClick(View) - void isTimeChange() - boolean canBeSet() } class cc.liuyx.note.MainActivity { - NoteDatabase dbHelper - PlanDatabase planDbHelper - FloatingActionButton fab - FloatingActionButton fab_alarm - ListView lv - ListView lv_plan - LinearLayout lv_layout - LinearLayout lv_plan_layout - Context context - NoteAdapter adapter - PlanAdapter planAdapter - List noteList - List planList - TextView mEmptyView - Toolbar myToolbar - PopupWindow popupWindow - PopupWindow popupCover - LayoutInflater layoutInflater - RelativeLayout main - ViewGroup customView - ViewGroup coverView - WindowManager wm - DisplayMetrics metrics - TagAdapter tagAdapter - TextView setting_text - ImageView setting_image - ListView lv_tag - TextView add_tag - BroadcastReceiver myReceiver - Achievement achievement - SharedPreferences sharedPreferences - Switch content_switch - AlarmManager alarmManager ~ String[] list_String # void onCreate(Bundle) - void showPopUpWindow() - void refreshTagList() - void resetTagsX(AdapterView) # void needRefresh() + void initView() - void refreshLvVisibility() + void initPopupView() - void initPrefs() + boolean onCreateOptionsMenu(Menu) + boolean onOptionsItemSelected(MenuItem) + void refreshListView() - void chooseFabColor(int) - void chooseFabPlanColor(int) + void onItemClick(AdapterView,View,int,long) # void onActivityResult(int,int,Intent) + boolean onItemLongClick(AdapterView,View,int,long) + void sortNotes(List,int) + void sortPlans(List,int) + long dateStrToSec(String) + List numOfTagNotes(List) + int npLong(Long) + void onDestroy() - void startAlarm(Plan) - void startAlarms(List) - void cancelAlarm(Plan) - void cancelAlarms(List) + void onResume() } class cc.liuyx.note.MainActivity$Achievement { - SharedPreferences sharedPreferences - int noteNumber - int wordNumber - int noteLevel - int wordLevel - void getPref() - void initPref() - void addCurrent(List) + void addNote(String) + void deleteNote() + void editNote(String,String) + void noteNumberAchievement(int) + void wordNumberAchievement(int) + void announcement(String,int,int) + String annoucementTitle(int,int) + void setState(int) + void listen() + void resetAll() } class cc.liuyx.note.EditActivity { - NoteDatabase dbHelper - Context context - EditText et - String old_content - String old_time - int old_Tag - long id - int openMode - int tag - boolean tagChange # void onCreate(Bundle) # void needRefresh() + boolean onCreateOptionsMenu(Menu) + boolean onKeyDown(int,KeyEvent) + boolean onOptionsItemSelected(MenuItem) + String dateToStr() - void deleteNote(Intent) } class cc.liuyx.note.entity.SpinnerItem { - String tagName - int tagId + String getTagName() + void setTagName(String) + int getTagId() + void setTagId(int) } class cc.liuyx.note.db.NoteDatabase { + {static} String TABLE_NAME + {static} String CONTENT + {static} String ID + {static} String TIME + {static} String MODE + void onCreate(SQLiteDatabase) + void onUpgrade(SQLiteDatabase,int,int) - void updateMode(SQLiteDatabase) } class com.example.atry.ExampleUnitTest { + void addition_isCorrect() } android.database.sqlite.SQLiteOpenHelper <|-- cc.liuyx.note.alarm.PlanDatabase android.support.v7.app.AppCompatActivity <|-- cc.liuyx.note.BaseActivity android.widget.Filterable <|.. cc.liuyx.note.alarm.PlanAdapter android.widget.BaseAdapter <|-- cc.liuyx.note.alarm.PlanAdapter cc.liuyx.note.alarm.PlanAdapter +.. cc.liuyx.note.alarm.PlanAdapter$MyFilter cc.liuyx.note.alarm.Filter <|-- cc.liuyx.note.alarm.PlanAdapter$MyFilter android.widget.Filterable <|.. cc.liuyx.note.adapter.NoteAdapter android.widget.BaseAdapter <|-- cc.liuyx.note.adapter.NoteAdapter cc.liuyx.note.adapter.NoteAdapter +.. cc.liuyx.note.adapter.NoteAdapter$MyFilter cc.liuyx.note.adapter.Filter <|-- cc.liuyx.note.adapter.NoteAdapter$MyFilter cc.liuyx.note.OnClickListener <|.. cc.liuyx.note.FabColorActivity android.support.v7.app.AppCompatActivity <|-- cc.liuyx.note.FabColorActivity android.content.BroadcastReceiver <|-- cc.liuyx.note.alarm.AlarmReceiver cc.liuyx.note.BaseActivity <|-- cc.liuyx.note.UserSettingsActivity android.widget.BaseAdapter <|-- cc.liuyx.note.adapter.TagAdapter cc.liuyx.note.alarm.OnClickListener <|.. cc.liuyx.note.alarm.EditAlarmActivity cc.liuyx.note.BaseActivity <|-- cc.liuyx.note.alarm.EditAlarmActivity android.widget.AdapterView.OnItemClickListener <|.. cc.liuyx.note.MainActivity android.widget.AdapterView.OnItemLongClickListener <|.. cc.liuyx.note.MainActivity cc.liuyx.note.BaseActivity <|-- cc.liuyx.note.MainActivity cc.liuyx.note.MainActivity +.. cc.liuyx.note.MainActivity$Achievement cc.liuyx.note.BaseActivity <|-- cc.liuyx.note.EditActivity android.database.sqlite.SQLiteOpenHelper <|-- cc.liuyx.note.db.NoteDatabase @enduml