This commit is contained in:
Horis
2023-02-21 11:36:03 +08:00
parent 02c509b9f9
commit cd1fe2bdd3
16 changed files with 54 additions and 23 deletions
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -133,7 +133,6 @@ class BookSourceActivity : VMBaseActivity<ActivityBookSourceBinding, BookSourceV
allowExtensions = arrayOf("txt", "json") allowExtensions = arrayOf("txt", "json")
} }
R.id.menu_import_onLine -> showImportDialog() R.id.menu_import_onLine -> showImportDialog()
R.id.menu_text_toc_rule -> startActivity<TxtTocRuleActivity>()
R.id.menu_sort_manual -> { R.id.menu_sort_manual -> {
item.isChecked = true item.isChecked = true
sortCheck(Sort.Default) sortCheck(Sort.Default)
@@ -15,6 +15,7 @@ import io.legado.app.databinding.DialogEditTextBinding
import io.legado.app.lib.dialogs.alert import io.legado.app.lib.dialogs.alert
import io.legado.app.lib.theme.primaryColor import io.legado.app.lib.theme.primaryColor
import io.legado.app.ui.widget.SelectActionBar import io.legado.app.ui.widget.SelectActionBar
import io.legado.app.ui.widget.dialog.TextDialog
import io.legado.app.ui.widget.recycler.DragSelectTouchHelper import io.legado.app.ui.widget.recycler.DragSelectTouchHelper
import io.legado.app.ui.widget.recycler.ItemTouchCallback import io.legado.app.ui.widget.recycler.ItemTouchCallback
import io.legado.app.ui.widget.recycler.VerticalDivider import io.legado.app.ui.widget.recycler.VerticalDivider
@@ -85,6 +86,7 @@ class TxtTocRuleActivity : VMBaseActivity<ActivityTxtTocRuleBinding, TxtTocRuleV
R.id.menu_add -> showDialogFragment(TxtTocRuleEditDialog()) R.id.menu_add -> showDialogFragment(TxtTocRuleEditDialog())
R.id.menu_default -> viewModel.importDefault() R.id.menu_default -> viewModel.importDefault()
R.id.menu_import -> showImportDialog() R.id.menu_import -> showImportDialog()
R.id.menu_help -> showTxtTocRegexHelp()
} }
return super.onCompatOptionsItemSelected(item) return super.onCompatOptionsItemSelected(item)
} }
@@ -189,4 +191,9 @@ class TxtTocRuleActivity : VMBaseActivity<ActivityTxtTocRuleBinding, TxtTocRuleV
} }
} }
private fun showTxtTocRegexHelp() {
val text = String(assets.open("help/txtTocRegexHelp.md").readBytes())
showDialogFragment(TextDialog(getString(R.string.help), text, TextDialog.Mode.MD))
}
} }
@@ -24,6 +24,7 @@ import io.legado.app.lib.theme.backgroundColor
import io.legado.app.lib.theme.primaryColor import io.legado.app.lib.theme.primaryColor
import io.legado.app.model.ReadBook import io.legado.app.model.ReadBook
import io.legado.app.ui.association.ImportTxtTocRuleDialog import io.legado.app.ui.association.ImportTxtTocRuleDialog
import io.legado.app.ui.widget.dialog.TextDialog
import io.legado.app.ui.widget.recycler.ItemTouchCallback import io.legado.app.ui.widget.recycler.ItemTouchCallback
import io.legado.app.ui.widget.recycler.VerticalDivider import io.legado.app.ui.widget.recycler.VerticalDivider
import io.legado.app.utils.* import io.legado.app.utils.*
@@ -124,6 +125,7 @@ class TxtTocRuleDialog() : BaseDialogFragment(R.layout.dialog_toc_regex),
item.isChecked = !item.isChecked item.isChecked = !item.isChecked
if (!item.isChecked) context?.longToastOnUi(R.string.need_more_time_load_content) if (!item.isChecked) context?.longToastOnUi(R.string.need_more_time_load_content)
} }
R.id.menu_help -> showTxtTocRegexHelp()
} }
return false return false
} }
@@ -168,6 +170,11 @@ class TxtTocRuleDialog() : BaseDialogFragment(R.layout.dialog_toc_regex),
} }
} }
private fun showTxtTocRegexHelp() {
val text = String(requireContext().assets.open("help/txtTocRegexHelp.md").readBytes())
showDialogFragment(TextDialog(getString(R.string.help), text, TextDialog.Mode.MD))
}
inner class TocRegexAdapter(context: Context) : inner class TocRegexAdapter(context: Context) :
RecyclerAdapter<TxtTocRule, ItemTocRegexBinding>(context), RecyclerAdapter<TxtTocRule, ItemTocRegexBinding>(context),
ItemTouchCallback.Callback { ItemTouchCallback.Callback {
@@ -25,6 +25,7 @@ import io.legado.app.ui.about.DonateActivity
import io.legado.app.ui.about.ReadRecordActivity import io.legado.app.ui.about.ReadRecordActivity
import io.legado.app.ui.book.bookmark.AllBookmarkActivity import io.legado.app.ui.book.bookmark.AllBookmarkActivity
import io.legado.app.ui.book.source.manage.BookSourceActivity import io.legado.app.ui.book.source.manage.BookSourceActivity
import io.legado.app.ui.book.toc.rule.TxtTocRuleActivity
import io.legado.app.ui.config.ConfigActivity import io.legado.app.ui.config.ConfigActivity
import io.legado.app.ui.config.ConfigTag import io.legado.app.ui.config.ConfigTag
import io.legado.app.ui.dict.rule.DictRuleActivity import io.legado.app.ui.dict.rule.DictRuleActivity
@@ -138,6 +139,7 @@ class MyFragment : BaseFragment(R.layout.fragment_my_config) {
"bookSourceManage" -> startActivity<BookSourceActivity>() "bookSourceManage" -> startActivity<BookSourceActivity>()
"replaceManage" -> startActivity<ReplaceRuleActivity>() "replaceManage" -> startActivity<ReplaceRuleActivity>()
"dictRuleManage" -> startActivity<DictRuleActivity>() "dictRuleManage" -> startActivity<DictRuleActivity>()
"txtTocRegexManage" -> startActivity<TxtTocRuleActivity>()
"bookmark" -> startActivity<AllBookmarkActivity>() "bookmark" -> startActivity<AllBookmarkActivity>()
"setting" -> startActivity<ConfigActivity> { "setting" -> startActivity<ConfigActivity> {
putExtra("configTag", ConfigTag.OTHER_CONFIG) putExtra("configTag", ConfigTag.OTHER_CONFIG)
-6
View File
@@ -115,12 +115,6 @@
android:title="@string/import_by_qr_code" android:title="@string/import_by_qr_code"
app:showAsAction="never" /> app:showAsAction="never" />
<item
android:id="@+id/menu_text_toc_rule"
android:icon="@drawable/ic_cfg_source"
android:title="@string/txt_toc_regex"
app:showAsAction="never" />
<item <item
android:id="@+id/menu_help" android:id="@+id/menu_help"
android:icon="@drawable/ic_help" android:icon="@drawable/ic_help"
+8
View File
@@ -13,11 +13,13 @@
<item <item
android:id="@+id/menu_default" android:id="@+id/menu_default"
android:title="@string/import_default_rule" android:title="@string/import_default_rule"
android:icon="@drawable/ic_import"
app:showAsAction="never" /> app:showAsAction="never" />
<item <item
android:id="@+id/menu_import" android:id="@+id/menu_import"
android:title="@string/import_replace_rule_on_line" android:title="@string/import_replace_rule_on_line"
android:icon="@drawable/ic_import"
app:showAsAction="never" /> app:showAsAction="never" />
<item <item
@@ -26,4 +28,10 @@
android:checkable="true" android:checkable="true"
app:showAsAction="never" /> app:showAsAction="never" />
<item
android:id="@+id/menu_help"
android:icon="@drawable/ic_help"
android:title="@string/help"
app:showAsAction="never" />
</menu> </menu>
@@ -1077,4 +1077,5 @@
<string name="create">新建</string> <string name="create">新建</string>
<string name="url_rule">url规则(urlRule)</string> <string name="url_rule">url规则(urlRule)</string>
<string name="show_rule">显示规则(showRule)</string> <string name="show_rule">显示规则(showRule)</string>
<string name="config_txt_toc_regex">配置 TXT 目录正则</string>
</resources> </resources>
@@ -1080,4 +1080,5 @@
<string name="create">新建</string> <string name="create">新建</string>
<string name="url_rule">url规则(urlRule)</string> <string name="url_rule">url规则(urlRule)</string>
<string name="show_rule">显示规则(showRule)</string> <string name="show_rule">显示规则(showRule)</string>
<string name="config_txt_toc_regex">配置 TXT 目录正则</string>
</resources> </resources>
@@ -1080,4 +1080,5 @@
<string name="create">新建</string> <string name="create">新建</string>
<string name="url_rule">url规则(urlRule)</string> <string name="url_rule">url规则(urlRule)</string>
<string name="show_rule">显示规则(showRule)</string> <string name="show_rule">显示规则(showRule)</string>
<string name="config_txt_toc_regex">配置 TXT 目录正则</string>
</resources> </resources>
@@ -1077,4 +1077,5 @@
<string name="create">新建</string> <string name="create">新建</string>
<string name="url_rule">url规则(urlRule)</string> <string name="url_rule">url规则(urlRule)</string>
<string name="show_rule">显示规则(showRule)</string> <string name="show_rule">显示规则(showRule)</string>
<string name="config_txt_toc_regex">配置 TXT 目录正则</string>
</resources> </resources>
@@ -1079,4 +1079,5 @@
<string name="create">新建</string> <string name="create">新建</string>
<string name="url_rule">url规则(urlRule)</string> <string name="url_rule">url规则(urlRule)</string>
<string name="show_rule">显示规则(showRule)</string> <string name="show_rule">显示规则(showRule)</string>
<string name="config_txt_toc_regex">配置 TXT 目录正则</string>
</resources> </resources>
+1
View File
@@ -1079,4 +1079,5 @@
<string name="create">新建</string> <string name="create">新建</string>
<string name="url_rule">url规则(urlRule)</string> <string name="url_rule">url规则(urlRule)</string>
<string name="show_rule">显示规则(showRule)</string> <string name="show_rule">显示规则(showRule)</string>
<string name="config_txt_toc_regex">配置 TXT 目录正则</string>
</resources> </resources>
+1
View File
@@ -1080,4 +1080,5 @@
<string name="create">新建</string> <string name="create">新建</string>
<string name="url_rule">url规则(urlRule)</string> <string name="url_rule">url规则(urlRule)</string>
<string name="show_rule">显示规则(showRule)</string> <string name="show_rule">显示规则(showRule)</string>
<string name="config_txt_toc_regex">配置 TXT 目录正则</string>
</resources> </resources>
+7
View File
@@ -26,6 +26,13 @@
android:icon="@drawable/ic_translate" android:icon="@drawable/ic_translate"
app:iconSpaceReserved="false" /> app:iconSpaceReserved="false" />
<io.legado.app.lib.prefs.Preference
android:key="txtTocRegexManage"
android:title="@string/txt_toc_regex"
android:summary="@string/config_txt_toc_regex"
android:icon="@drawable/ic_cfg_source"
app:iconSpaceReserved="false" />
<io.legado.app.lib.prefs.NameListPreference <io.legado.app.lib.prefs.NameListPreference
android:defaultValue="0" android:defaultValue="0"
android:entries="@array/theme_mode" android:entries="@array/theme_mode"