mirror of
https://github.com/aseprite/aseprite.git
synced 2025-03-29 10:20:48 +00:00
Make ScreenScale option configurable through UI
This commit is contained in:
parent
cff08af639
commit
e082cd96f1
@ -1,19 +1,25 @@
|
||||
<!-- ASEPRITE -->
|
||||
<!-- Copyright (C) 2001-2013 by David Capello -->
|
||||
<!-- Aseprite -->
|
||||
<!-- Copyright (C) 2001-2014 by David Capello -->
|
||||
<gui>
|
||||
<window text="Options" id="options">
|
||||
<box vertical="true">
|
||||
<box horizontal="true">
|
||||
<box vertical="true">
|
||||
|
||||
<!-- Screen -->
|
||||
|
||||
<separator text="Screen:" horizontal="true" />
|
||||
<grid columns="2">
|
||||
<label text="Screen Scale:" />
|
||||
<combobox id="screen_scale" expansive="true" />
|
||||
</grid>
|
||||
|
||||
<!-- Editor -->
|
||||
|
||||
<separator text="Editor:" horizontal="true" />
|
||||
<check text="Smooth auto-scroll" id="smooth" />
|
||||
<check text="Show timeline automatically" id="autotimeline" tooltip="Show the timeline automatically when a new frame or layer is added." />
|
||||
<check text="Show scroll-bars in sprite editor" id="show_scrollbars" tooltip="Show scroll-bars in all sprite editors." />
|
||||
<check text="2 Click Movement" id="move_click2" disabled="true" />
|
||||
<check text="2 Click Drawing" id="draw_click2" disabled="true" />
|
||||
<grid columns="2">
|
||||
<label text="Cursor:" />
|
||||
<box id="cursor_color_box" /><!-- custom widget -->
|
||||
|
@ -27,6 +27,7 @@
|
||||
#include "app/ini_file.h"
|
||||
#include "app/load_widget.h"
|
||||
#include "app/modules/editors.h"
|
||||
#include "app/modules/gui.h"
|
||||
#include "app/settings/document_settings.h"
|
||||
#include "app/settings/settings.h"
|
||||
#include "app/ui/color_button.h"
|
||||
@ -71,8 +72,6 @@ void OptionsCommand::onExecute(Context* context)
|
||||
Widget* check_smooth = app::find_widget<Widget>(window, "smooth");
|
||||
Widget* check_autotimeline = app::find_widget<Widget>(window, "autotimeline");
|
||||
Widget* show_scrollbars = app::find_widget<Widget>(window, "show_scrollbars");
|
||||
Widget* move_click2 = app::find_widget<Widget>(window, "move_click2");
|
||||
Widget* draw_click2 = app::find_widget<Widget>(window, "draw_click2");
|
||||
Widget* cursor_color_box = app::find_widget<Widget>(window, "cursor_color_box");
|
||||
Widget* grid_color_box = app::find_widget<Widget>(window, "grid_color_box");
|
||||
Widget* pixel_grid_color_box = app::find_widget<Widget>(window, "pixel_grid_color_box");
|
||||
@ -83,6 +82,7 @@ void OptionsCommand::onExecute(Context* context)
|
||||
Button* checked_bg_reset = app::find_widget<Button>(window, "checked_bg_reset");
|
||||
Widget* undo_size_limit = app::find_widget<Widget>(window, "undo_size_limit");
|
||||
Widget* undo_goto_modified = app::find_widget<Widget>(window, "undo_goto_modified");
|
||||
ComboBox* screen_scale = app::find_widget<ComboBox>(window, "screen_scale");
|
||||
Widget* button_ok = app::find_widget<Widget>(window, "button_ok");
|
||||
|
||||
// Cursor color
|
||||
@ -105,12 +105,6 @@ void OptionsCommand::onExecute(Context* context)
|
||||
pixel_grid_color_box->addChild(pixel_grid_color);
|
||||
|
||||
// Others
|
||||
if (get_config_bool("Options", "MoveClick2", false))
|
||||
move_click2->setSelected(true);
|
||||
|
||||
if (get_config_bool("Options", "DrawClick2", false))
|
||||
draw_click2->setSelected(true);
|
||||
|
||||
if (get_config_bool("Options", "MoveSmooth", true))
|
||||
check_smooth->setSelected(true);
|
||||
|
||||
@ -120,6 +114,13 @@ void OptionsCommand::onExecute(Context* context)
|
||||
if (settings->getShowSpriteEditorScrollbars())
|
||||
show_scrollbars->setSelected(true);
|
||||
|
||||
// Checked background size
|
||||
screen_scale->addItem("1:1");
|
||||
screen_scale->addItem("2:1");
|
||||
screen_scale->addItem("3:1");
|
||||
screen_scale->addItem("4:1");
|
||||
screen_scale->setSelectedItemIndex(get_screen_scaling()-1);
|
||||
|
||||
// Checked background size
|
||||
m_checked_bg->addItem("16x16");
|
||||
m_checked_bg->addItem("8x8");
|
||||
@ -160,8 +161,6 @@ void OptionsCommand::onExecute(Context* context)
|
||||
|
||||
set_config_bool("Options", "MoveSmooth", check_smooth->isSelected());
|
||||
set_config_bool("Options", "AutoShowTimeline", check_autotimeline->isSelected());
|
||||
set_config_bool("Options", "MoveClick2", move_click2->isSelected());
|
||||
set_config_bool("Options", "DrawClick2", draw_click2->isSelected());
|
||||
|
||||
settings->setShowSpriteEditorScrollbars(show_scrollbars->isSelected());
|
||||
|
||||
@ -175,6 +174,15 @@ void OptionsCommand::onExecute(Context* context)
|
||||
set_config_int("Options", "UndoSizeLimit", undo_size_limit_value);
|
||||
set_config_bool("Options", "UndoGotoModified", undo_goto_modified->isSelected());
|
||||
|
||||
int new_screen_scaling = screen_scale->getSelectedItemIndex()+1;
|
||||
if (new_screen_scaling != get_screen_scaling()) {
|
||||
set_screen_scaling(new_screen_scaling);
|
||||
|
||||
ui::Alert::show(PACKAGE
|
||||
"<<You must restart the program to see your changes to 'Screen Scale' setting."
|
||||
"||&OK");
|
||||
}
|
||||
|
||||
// Save configuration
|
||||
flush_config_file();
|
||||
}
|
||||
|
@ -216,6 +216,8 @@ int init_module_gui()
|
||||
|
||||
void exit_module_gui()
|
||||
{
|
||||
save_gui_config();
|
||||
|
||||
// destroy shortcuts
|
||||
ASSERT(shortcuts != NULL);
|
||||
for (std::vector<Shortcut*>::iterator
|
||||
|
Loading…
x
Reference in New Issue
Block a user