From f03bf9a43df63a9a0265379df29f69c2438a6b25 Mon Sep 17 00:00:00 2001 From: xxxx Date: Sat, 21 Dec 2024 18:20:38 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B3=A8=E9=87=8A=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- GTaskStringUtils.java | 297 +++++++++++++++++++++++++++++++ ResourceParser.java | 405 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 702 insertions(+) create mode 100644 GTaskStringUtils.java create mode 100644 ResourceParser.java diff --git a/GTaskStringUtils.java b/GTaskStringUtils.java new file mode 100644 index 0000000..466bc1f --- /dev/null +++ b/GTaskStringUtils.java @@ -0,0 +1,297 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * 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. + */ + +// 定义一个名为GTaskStringUtils的公共类 + +public class GTaskStringUtils { + + + + // 定义一个公共静态最终字符串常量,用于标识动作ID + + public final static String GTASK_JSON_ACTION_ID = "action_id"; + + + + // 定义一个公共静态最终字符串常量,用于标识动作列表 + + public final static String GTASK_JSON_ACTION_LIST = "action_list"; + + + + // 定义一个公共静态最终字符串常量,用于标识动作类型 + + public final static String GTASK_JSON_ACTION_TYPE = "action_type"; + + + + // 定义一个公共静态最终字符串常量,表示创建动作类型 + + public final static String GTASK_JSON_ACTION_TYPE_CREATE = "create"; + + + + // 定义一个公共静态最终字符串常量,表示获取所有动作类型 + + public final static String GTASK_JSON_ACTION_TYPE_GETALL = "get_all"; + + + + // 定义一个公共静态最终字符串常量,表示移动动作类型 + + public final static String GTASK_JSON_ACTION_TYPE_MOVE = "move"; + + + + // 定义一个公共静态最终字符串常量,表示更新动作类型 + + public final static String GTASK_JSON_ACTION_TYPE_UPDATE = "update"; + + + + // 定义一个公共静态最终字符串常量,用于标识创建者ID + + public final static String GTASK_JSON_CREATOR_ID = "creator_id"; + + + + // 定义一个公共静态最终字符串常量,用于标识子实体 + + public final static String GTASK_JSON_CHILD_ENTITY = "child_entity"; + + + + // 定义一个公共静态最终字符串常量,用于标识客户端版本 + + public final static String GTASK_JSON_CLIENT_VERSION = "client_version"; + + + + // 定义一个公共静态最终字符串常量,用于标识任务是否完成 + + public final static String GTASK_JSON_COMPLETED = "completed"; + + + + // 定义一个公共静态最终字符串常量,用于标识当前列表ID + + public final static String GTASK_JSON_CURRENT_LIST_ID = "current_list_id"; + + + + // 定义一个公共静态最终字符串常量,用于标识默认列表ID + + public final static String GTASK_JSON_DEFAULT_LIST_ID = "default_list_id"; + + + + // 定义一个公共静态最终字符串常量,用于标识是否已删除 + + public final static String GTASK_JSON_DELETED = "deleted"; + + + + // 定义一个公共静态最终字符串常量,用于标识目标列表 + + public final static String GTASK_JSON_DEST_LIST = "dest_list"; + + + + // 定义一个公共静态最终字符串常量,用于标识目标父实体 + + public final static String GTASK_JSON_DEST_PARENT = "dest_parent"; + + + + // 定义一个公共静态最终字符串常量,用于标识目标父实体类型 + + public final static String GTASK_JSON_DEST_PARENT_TYPE = "dest_parent_type"; + + + + // 定义一个公共静态最终字符串常量,用于标识实体增量 + + public final static String GTASK_JSON_ENTITY_DELTA = "entity_delta"; + + + + // 定义一个公共静态最终字符串常量,用于标识实体类型 + + public final static String GTASK_JSON_ENTITY_TYPE = "entity_type"; + + + + // 定义一个公共静态最终字符串常量,用于标识是否获取已删除项 + + public final static String GTASK_JSON_GET_DELETED = "get_deleted"; + + + + // 定义一个公共静态最终字符串常量,用于标识实体ID + + public final static String GTASK_JSON_ID = "id"; + + + + // 定义一个公共静态最终字符串常量,用于标识索引 + + public final static String GTASK_JSON_INDEX = "index"; + + + + // 定义一个公共静态最终字符串常量,用于标识最后修改时间 + + public final static String GTASK_JSON_LAST_MODIFIED = "last_modified"; + + + + // 定义一个公共静态最终字符串常量,用于标识最新的同步点 + + public final static String GTASK_JSON_LATEST_SYNC_POINT = "latest_sync_point"; + + + + // 定义一个公共静态最终字符串常量,用于标识列表ID + + public final static String GTASK_JSON_LIST_ID = "list_id"; + + + + // 定义一个公共静态最终字符串常量,用于标识列表集合 + + public final static String GTASK_JSON_LISTS = "lists"; + + + + // 定义一个公共静态最终字符串常量,用于标识名称 + + public final static String GTASK_JSON_NAME = "name"; + + + + // 定义一个公共静态最终字符串常量,用于标识新ID + + public final static String GTASK_JSON_NEW_ID = "new_id"; + + + + // 定义一个公共静态最终字符串常量,用于标识笔记 + + public final static String GTASK_JSON_NOTES = "notes"; + + + + // 定义一个公共静态最终字符串常量,用于标识父实体ID + + public final static String GTASK_JSON_PARENT_ID = "parent_id"; + + + + // 定义一个公共静态最终字符串常量,用于标识前一个兄弟实体的ID + + public final static String GTASK_JSON_PRIOR_SIBLING_ID = "prior_sibling_id"; + + + + // 定义一个公共静态最终字符串常量,用于标识结果集 + + public final static String GTASK_JSON_RESULTS = "results"; + + + + // 定义一个公共静态最终字符串常量,用于标识源列表 + + public final static String GTASK_JSON_SOURCE_LIST = "source_list"; + + + + // 定义一个公共静态最终字符串常量,用于标识任务集合 + + public final static String GTASK_JSON_TASKS = "tasks"; + + + + // 定义一个公共静态最终字符串常量,用于标识类型 + + public final static String GTASK_JSON_TYPE = "type"; + + + + // 定义一个公共静态最终字符串常量,表示组类型 + + public final static String GTASK_JSON_TYPE_GROUP = "GROUP"; + + + + // 定义一个公共静态最终字符串常量,表示任务类型 + + public final static String GTASK_JSON_TYPE_TASK = "TASK"; + + + + // 定义一个公共静态最终字符串常量,用于标识用户 + + public final static String GTASK_JSON_USER = "user"; + + + + // 定义一个公共静态最终字符串常量,表示MIUI笔记文件夹前缀 + + public final static String MIUI_FOLDER_PREFFIX = "[MIUI_Notes]"; + + + + // 定义一个公共静态最终字符串常量,表示默认文件夹名称 + + public final static String FOLDER_DEFAULT = "Default"; + + + + // 定义一个公共静态最终字符串常量,表示电话笔记文件夹名称 + + public final static String FOLDER_CALL_NOTE = "Call_Note"; + + + + // 定义一个公共静态最终字符串常量,表示元数据文件夹名称 + + public final static String FOLDER_META = "METADATA"; + + + + // 定义一个公共静态最终字符串常量,表示元数据头部ID + + public final static String META_HEAD_GTASK_ID = "meta_gid"; + + + + // 定义一个公共静态最终字符串常量,表示元数据头部笔记 + + public final static String META_HEAD_NOTE = "meta_note"; + + + + // 定义一个公共静态最终字符串常量,表示元数据头部数据 + + public final static String META_HEAD_DATA = "meta_data"; + + + + // 定义一个公共静态最终字符串常量,表示元数据笔记的名称 + + public final static String META_NOTE_NAME = "[META INFO] DON'T UPDATE AND DELETE"; + +} \ No newline at end of file diff --git a/ResourceParser.java b/ResourceParser.java new file mode 100644 index 0000000..d22e898 --- /dev/null +++ b/ResourceParser.java @@ -0,0 +1,405 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * 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 net.micode.notes.tool; + + + +import android.content.Context; + +import android.preference.PreferenceManager; + + + +import net.micode.notes.R; + +import net.micode.notes.ui.NotesPreferenceActivity; + + + +// 定义一个工具类,用于解析和获取应用中的资源 + +public class ResourceParser { + + + + // 定义一些颜色常量,用于表示不同的背景色 + + public static final int YELLOW = 0; + + public static final int BLUE = 1; + + public static final int WHITE = 2; + + public static final int GREEN = 3; + + public static final int RED = 4; + + + + // 默认的背景颜色 + + public static final int BG_DEFAULT_COLOR = YELLOW; + + + + // 定义一些文本大小常量,用于表示不同的字体大小 + + public static final int TEXT_SMALL = 0; + + public static final int TEXT_MEDIUM = 1; + + public static final int TEXT_LARGE = 2; + + public static final int TEXT_SUPER = 3; + + + + // 默认的字体大小 + + public static final int BG_DEFAULT_FONT_SIZE = TEXT_MEDIUM; + + + + // 内部类,用于管理笔记背景资源 + + public static class NoteBgResources { + + // 定义编辑状态下笔记背景的资源ID数组 + + private final static int [] BG_EDIT_RESOURCES = new int [] { + + R.drawable.edit_yellow, + + R.drawable.edit_blue, + + R.drawable.edit_white, + + R.drawable.edit_green, + + R.drawable.edit_red + + }; + + + + // 定义编辑状态下笔记标题背景的资源ID数组 + + private final static int [] BG_EDIT_TITLE_RESOURCES = new int [] { + + R.drawable.edit_title_yellow, + + R.drawable.edit_title_blue, + + R.drawable.edit_title_white, + + R.drawable.edit_title_green, + + R.drawable.edit_title_red + + }; + + + + // 根据ID获取编辑状态下笔记背景的资源ID + + public static int getNoteBgResource(int id) { + + return BG_EDIT_RESOURCES[id]; + + } + + + + // 根据ID获取编辑状态下笔记标题背景的资源ID + + public static int getNoteTitleBgResource(int id) { + + return BG_EDIT_TITLE_RESOURCES[id]; + + } + + } + + + + // 根据用户设置获取默认的背景颜色ID + + public static int getDefaultBgId(Context context) { + + // 检查用户是否设置了背景颜色偏好 + + if (PreferenceManager.getDefaultSharedPreferences(context).getBoolean( + + NotesPreferenceActivity.PREFERENCE_SET_BG_COLOR_KEY, false)) { + + // 如果设置了,随机返回一个背景颜色ID + + return (int) (Math.random() * NoteBgResources.BG_EDIT_RESOURCES.length); + + } else { + + // 如果没有设置,返回默认的背景颜色ID + + return BG_DEFAULT_COLOR; + + } + + } + + + + // 内部类,用于管理笔记条目背景资源 + + public static class NoteItemBgResources { + + // 定义列表第一个条目背景的资源ID数组 + + private final static int [] BG_FIRST_RESOURCES = new int [] { + + R.drawable.list_yellow_up, + + R.drawable.list_blue_up, + + R.drawable.list_white_up, + + R.drawable.list_green_up, + + R.drawable.list_red_up + + }; + + + + // 定义列表中间条目背景的资源ID数组 + + private final static int [] BG_NORMAL_RESOURCES = new int [] { + + R.drawable.list_yellow_middle, + + R.drawable.list_blue_middle, + + R.drawable.list_white_middle, + + R.drawable.list_green_middle, + + R.drawable.list_red_middle + + }; + + + + // 定义列表最后一个条目背景的资源ID数组 + + private final static int [] BG_LAST_RESOURCES = new int [] { + + R.drawable.list_yellow_down, + + R.drawable.list_blue_down, + + R.drawable.list_white_down, + + R.drawable.list_green_down, + + R.drawable.list_red_down, + + }; + + + + // 定义列表单独条目背景的资源ID数组 + + private final static int [] BG_SINGLE_RESOURCES = new int [] { + + R.drawable.list_yellow_single, + + R.drawable.list_blue_single, + + R.drawable.list_white_single, + + R.drawable.list_green_single, + + R.drawable.list_red_single + + }; + + + + // 根据ID获取列表第一个条目背景的资源ID + + public static int getNoteBgFirstRes(int id) { + + return BG_FIRST_RESOURCES[id]; + + } + + + + // 根据ID获取列表最后一个条目背景的资源ID + + public static int getNoteBgLastRes(int id) { + + return BG_LAST_RESOURCES[id]; + + } + + + + // 根据ID获取列表单独条目背景的资源ID + + public static int getNoteBgSingleRes(int id) { + + return BG_SINGLE_RESOURCES[id]; + + } + + + + // 根据ID获取列表中间条目背景的资源ID + + public static int getNoteBgNormalRes(int id) { + + return BG_NORMAL_RESOURCES[id]; + + } + + + + // 获取文件夹背景的资源ID + + public static int getFolderBgRes() { + + return R.drawable.list_folder; + + } + + } + + + + // 内部类,用于管理小部件背景资源 + + public static class WidgetBgResources { + + // 定义2x大小小部件背景的资源ID数组 + + private final static int [] BG_2X_RESOURCES = new int [] { + + R.drawable.widget_2x_yellow, + + R.drawable.widget_2x_blue, + + R.drawable.widget_2x_white, + + R.drawable.widget_2x_green, + + R.drawable.widget_2x_red, + + }; + + + + // 根据ID获取2x大小小部件背景的资源ID + + public static int getWidget2xBgResource(int id) { + + return BG_2X_RESOURCES[id]; + + } + + + + // 定义4x大小小部件背景的资源ID数组 + + private final static int [] BG_4X_RESOURCES = new int [] { + + R.drawable.widget_4x_yellow, + + R.drawable.widget_4x_blue, + + R.drawable.widget_4x_white, + + R.drawable.widget_4x_green, + + R.drawable.widget_4x_red + + }; + + + + // 根据ID获取4x大小小部件背景的资源ID + + public static int getWidget4xBgResource(int id) { + + return BG_4X_RESOURCES[id]; + + } + + } + + + + // 内部类,用于管理文本外观资源 + + public static class TextAppearanceResources { + + // 定义文本外观的资源ID数组 + + private final static int [] TEXTAPPEARANCE_RESOURCES = new int [] { + + R.style.TextAppearanceNormal, + + R.style.TextAppearanceMedium, + + R.style.TextAppearanceLarge, + + R.style.TextAppearanceSuper + + }; + + + + // 根据ID获取文本外观的资源ID + + // 注意:这里有一个错误处理,如果ID超出范围,则返回默认的字体大小ID + + public static int getTexAppearanceResource(int id) { + + if (id >= TEXTAPPEARANCE_RESOURCES.length) { + + return BG_DEFAULT_FONT_SIZE; + + } + + return TEXTAPPEARANCE_RESOURCES[id]; + + } + + + + // 获取文本外观资源数组的大小 + + public static int getResourcesSize() { + + return TEXTAPPEARANCE_RESOURCES.length; + + } + + } + +} \ No newline at end of file