Themes Support
Now you can select themes
This commit is contained in:
parent
fb02ca0f81
commit
3211c59167
1 changed files with 116 additions and 0 deletions
|
@ -132,6 +132,8 @@ def layer(win):
|
|||
win.current["settings_lists"] = {}
|
||||
win.current["settings_lists"]["languages"] = settings.list_languages()
|
||||
win.current["settings_lists"]["languages_open"] = False
|
||||
win.current["settings_lists"]["themes"] = os.listdir(os.getcwd()+"/settings/themes")
|
||||
win.current["settings_lists"]["themes_open"] = False
|
||||
|
||||
|
||||
# Languages
|
||||
|
@ -192,6 +194,76 @@ def layer(win):
|
|||
|
||||
current_Y += 50
|
||||
|
||||
|
||||
|
||||
# Themes. Finally we have some themes to choose from. And a good place to
|
||||
# change them so the user would not need to do it manually. I think it's
|
||||
# important.
|
||||
|
||||
# So there is a folder in the VCStudio installation called. settings/themes
|
||||
# which contains all of the themes. So let's look through it.
|
||||
|
||||
# Themes
|
||||
def do():
|
||||
win.current["settings_lists"]["themes_open"] = \
|
||||
not win.current["settings_lists"]["themes_open"]
|
||||
|
||||
UI_elements.roundrect(layer, win,
|
||||
win.current["w"]/2-240,
|
||||
110 + current_Y + win.scroll["pm_settings"],
|
||||
450,
|
||||
40,
|
||||
10,
|
||||
button=do,
|
||||
icon="theme",
|
||||
tip=talk.text("change_theme"))
|
||||
|
||||
UI_color.set(layer, win, "text_normal")
|
||||
layer.set_font_size(20)
|
||||
layer.move_to(win.current["w"]/2-180,
|
||||
current_Y + win.scroll["pm_settings"] + 135)
|
||||
layer.show_text(win.settings["Theme"])
|
||||
|
||||
current_Y += 50
|
||||
|
||||
if win.current["settings_lists"]["themes_open"]:
|
||||
|
||||
|
||||
for lang in win.current["settings_lists"]["themes"]:
|
||||
if lang != win.settings["Theme"]:
|
||||
|
||||
UI_color.set(layer, win, "button_active")
|
||||
layer.move_to(win.current["w"]/2-227, 102 + current_Y + win.scroll["pm_settings"])
|
||||
layer.line_to(win.current["w"]/2-227, 152 + current_Y + win.scroll["pm_settings"])
|
||||
layer.stroke()
|
||||
|
||||
def do():
|
||||
win.settings["Theme"] = lang
|
||||
settings.write("Theme", lang)
|
||||
win.current["settings_lists"]["themes_open"] = False
|
||||
win.color = UI_color.get_table()
|
||||
|
||||
UI_elements.roundrect(layer, win,
|
||||
win.current["w"]/2-220,
|
||||
110 + current_Y + win.scroll["pm_settings"],
|
||||
430,
|
||||
40,
|
||||
10,
|
||||
button=do,
|
||||
icon="theme",
|
||||
tip=talk.text("set_theme")+lang)
|
||||
|
||||
|
||||
UI_color.set(layer, win, "text_normal")
|
||||
layer.set_font_size(20)
|
||||
layer.move_to(win.current["w"]/2-150,
|
||||
current_Y + win.scroll["pm_settings"] + 135)
|
||||
layer.show_text(lang)
|
||||
|
||||
current_Y += 50
|
||||
|
||||
|
||||
|
||||
# BLUR
|
||||
|
||||
blur_ok = "unchecked"
|
||||
|
@ -245,6 +317,50 @@ def layer(win):
|
|||
current_Y + win.scroll["pm_settings"] + 135)
|
||||
layer.show_text(talk.text("Auto_De-Blur"))
|
||||
|
||||
current_Y += 50
|
||||
|
||||
|
||||
# ROUNDNESS
|
||||
|
||||
# The roundness setting is a setting that will define how round the UI will
|
||||
# look. Potentially it can grow beyond 1.0, but will introduce weird rendering
|
||||
# artifacts. If you wan to do that be free to edit the Setting file manually.
|
||||
|
||||
# I'm going to use the Scroller for this setting. But first we need an icon. And
|
||||
# I think the opengl icon is quite good for this.
|
||||
|
||||
UI_elements.image(layer, win, "settings/themes/"\
|
||||
+win.settings["Theme"]+"/icons/opengl.png",
|
||||
win.current["w"]/2-240,
|
||||
110 + current_Y + win.scroll["pm_settings"],
|
||||
40,
|
||||
40)
|
||||
|
||||
# Then i'm going to hack my way to it. I'm going to use a scroll for a scrooled
|
||||
# window as the slider. Creativity.
|
||||
|
||||
maxround = 1000 # I need it do be a higher number then from 0 to 1 since we want
|
||||
# to imulate the scroll
|
||||
|
||||
if "roundness_setting" not in win.scroll:
|
||||
win.scroll["roundness_setting"] = 0 - win.settings["Roundness"] * 549
|
||||
|
||||
|
||||
if (0 - win.settings["Roundness"] * 549) != win.scroll["roundness_setting"]:
|
||||
win.settings["Roundness"] = (win.scroll["roundness_setting"] / 549)*-1
|
||||
settings.write("Roundness", win.settings["Roundness"])
|
||||
|
||||
UI_elements.scroll_area(layer, win, "roundness_setting",
|
||||
int(win.current["w"]/2-200),
|
||||
110 + current_Y + win.scroll["pm_settings"]+33,
|
||||
450,
|
||||
0,
|
||||
maxround,
|
||||
bar=True,
|
||||
sideways=True,
|
||||
url="settings_layer"
|
||||
)
|
||||
|
||||
|
||||
current_Y += 50
|
||||
|
||||
|
|
Loading…
Reference in a new issue