mirror of
https://github.com/koreader/koreader
synced 2024-10-31 21:20:20 +00:00
167 lines
5.6 KiB
Lua
167 lines
5.6 KiB
Lua
local Screen = require("ui/screen")
|
|
local S = require("ui/data/strings")
|
|
|
|
local _ = require("gettext")
|
|
|
|
-- add multiply operator to Aa dict
|
|
local Aa = setmetatable({"Aa"}, {
|
|
__mul = function(t, mul)
|
|
local new = {}
|
|
for i = 1, mul do
|
|
for _, v in ipairs(t) do table.insert(new, v) end
|
|
end
|
|
return new
|
|
end
|
|
})
|
|
|
|
local CreOptions = {
|
|
prefix = 'copt',
|
|
{
|
|
icon = "resources/icons/appbar.transform.rotate.right.large.png",
|
|
options = {
|
|
{
|
|
name = "screen_mode",
|
|
name_text = S.SCREEN_MODE,
|
|
toggle = {S.PORTRAIT, S.LANDSCAPE},
|
|
alternate = false,
|
|
args = {"portrait", "landscape"},
|
|
default_arg = "portrait",
|
|
current_func = function() return Screen:getScreenMode() end,
|
|
event = "ChangeScreenMode",
|
|
}
|
|
}
|
|
},
|
|
{
|
|
icon = "resources/icons/appbar.column.two.large.png",
|
|
options = {
|
|
{
|
|
name = "line_spacing",
|
|
name_text = S.LINE_SPACING,
|
|
toggle = {S.SMALL, S.MEDIUM, S.LARGE},
|
|
values = {
|
|
DCREREADER_CONFIG_LINE_SPACE_PERCENT_SMALL,
|
|
DCREREADER_CONFIG_LINE_SPACE_PERCENT_MEDIUM,
|
|
DCREREADER_CONFIG_LINE_SPACE_PERCENT_LARGE,
|
|
},
|
|
default_value = DCREREADER_CONFIG_LINE_SPACE_PERCENT_MEDIUM,
|
|
event = "SetLineSpace",
|
|
args = {
|
|
DCREREADER_CONFIG_LINE_SPACE_PERCENT_SMALL,
|
|
DCREREADER_CONFIG_LINE_SPACE_PERCENT_MEDIUM,
|
|
DCREREADER_CONFIG_LINE_SPACE_PERCENT_LARGE,
|
|
},
|
|
},
|
|
{
|
|
name = "page_margins",
|
|
name_text = S.PAGE_MARGIN,
|
|
toggle = {S.SMALL, S.MEDIUM, S.LARGE},
|
|
values = {
|
|
DCREREADER_CONFIG_MARGIN_SIZES_SMALL,
|
|
DCREREADER_CONFIG_MARGIN_SIZES_MEDIUM,
|
|
DCREREADER_CONFIG_MARGIN_SIZES_LARGE,
|
|
},
|
|
default_value = DCREREADER_CONFIG_MARGIN_SIZES_MEDIUM,
|
|
event = "SetPageMargins",
|
|
args = {
|
|
DCREREADER_CONFIG_MARGIN_SIZES_SMALL,
|
|
DCREREADER_CONFIG_MARGIN_SIZES_MEDIUM,
|
|
DCREREADER_CONFIG_MARGIN_SIZES_LARGE,
|
|
},
|
|
},
|
|
}
|
|
},
|
|
{
|
|
icon = "resources/icons/appbar.text.size.large.png",
|
|
options = {
|
|
{
|
|
name = "font_size",
|
|
item_text = Aa * #DCREREADER_CONFIG_FONT_SIZES,
|
|
item_align_center = 1.0,
|
|
spacing = 15,
|
|
item_font_size = DCREREADER_CONFIG_FONT_SIZES,
|
|
values = DCREREADER_CONFIG_FONT_SIZES,
|
|
default_value = DCREREADER_CONFIG_DEFAULT_FONT_SIZE,
|
|
args = DCREREADER_CONFIG_FONT_SIZES,
|
|
event = "SetFontSize",
|
|
},
|
|
{
|
|
name = "font_fine_tune",
|
|
name_text = S.FONTSIZE_FINE_TUNING,
|
|
toggle = {S.DECREASE, S.INCREASE},
|
|
event = "ChangeSize",
|
|
args = {"decrease", "increase"},
|
|
alternate = false,
|
|
height = 60,
|
|
}
|
|
}
|
|
},
|
|
{
|
|
icon = "resources/icons/appbar.grade.b.large.png",
|
|
options = {
|
|
{
|
|
name = "font_weight",
|
|
name_text = S.FONT_WEIGHT,
|
|
toggle = {S.REGULAR, S.BOLD},
|
|
values = {0, 1},
|
|
default_value = 0,
|
|
args = {0, 1},
|
|
event = "ToggleFontBolder",
|
|
},
|
|
{
|
|
name = "font_gamma",
|
|
name_text = S.CONTRAST,
|
|
item_text = {S.LIGHTER, S.DEFAULT, S.DARKER},
|
|
default_value = DCREREADER_CONFIG_DEFAULT_FONT_GAMMA,
|
|
values = {
|
|
DCREREADER_CONFIG_LIGHTER_FONT_GAMMA,
|
|
DCREREADER_CONFIG_DEFAULT_FONT_GAMMA,
|
|
DCREREADER_CONFIG_DARKER_FONT_GAMMA,
|
|
},
|
|
event = "SetFontGamma",
|
|
args = {
|
|
DCREREADER_CONFIG_LIGHTER_FONT_GAMMA,
|
|
DCREREADER_CONFIG_DEFAULT_FONT_GAMMA,
|
|
DCREREADER_CONFIG_DARKER_FONT_GAMMA,
|
|
},
|
|
}
|
|
}
|
|
},
|
|
{
|
|
icon = "resources/icons/appbar.settings.large.png",
|
|
options = {
|
|
{
|
|
name = "view_mode",
|
|
name_text = S.VIEW_MODE,
|
|
toggle = {S.VIEW_SCROLL, S.VIEW_PAGE},
|
|
values = {1, 0},
|
|
default_value = 0,
|
|
args = {"scroll", "page"},
|
|
default_arg = "page",
|
|
event = "SetViewMode",
|
|
},
|
|
{
|
|
name = "status_line",
|
|
name_text = S.PROGRESS_BAR,
|
|
toggle = {S.FULL, S.MINI},
|
|
values = {0, 1},
|
|
default_value = DCREREADER_PROGRESS_BAR,
|
|
args = {0, 1},
|
|
default_arg = DCREREADER_PROGRESS_BAR,
|
|
event = "SetStatusLine",
|
|
},
|
|
{
|
|
name = "embedded_css",
|
|
name_text = S.EMBEDDED_STYLE,
|
|
toggle = {S.ON, S.OFF},
|
|
values = {1, 0},
|
|
default_value = 1,
|
|
args = {true, false},
|
|
default_arg = nil,
|
|
event = "ToggleEmbeddedStyleSheet",
|
|
},
|
|
},
|
|
},
|
|
}
|
|
|
|
return CreOptions
|