mirror of
https://github.com/aseprite/aseprite.git
synced 2025-03-30 04:20:23 +00:00
Replace all base::Bind() with lambda functions
This commit is contained in:
parent
ddbbf12bfc
commit
35bb3af6e2
@ -26,7 +26,6 @@
|
|||||||
#include "app/ui/main_window.h"
|
#include "app/ui/main_window.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "app/util/filetoks.h"
|
#include "app/util/filetoks.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
#include "base/string.h"
|
#include "base/string.h"
|
||||||
#include "fmt/format.h"
|
#include "fmt/format.h"
|
||||||
@ -304,7 +303,7 @@ AppMenus* AppMenus::instance()
|
|||||||
static AppMenus* instance = NULL;
|
static AppMenus* instance = NULL;
|
||||||
if (!instance) {
|
if (!instance) {
|
||||||
instance = new AppMenus;
|
instance = new AppMenus;
|
||||||
App::instance()->Exit.connect(base::Bind<void>(&destroy_instance, instance));
|
App::instance()->Exit.connect([]{ destroy_instance(instance); });
|
||||||
}
|
}
|
||||||
return instance;
|
return instance;
|
||||||
}
|
}
|
||||||
@ -315,7 +314,7 @@ AppMenus::AppMenus()
|
|||||||
{
|
{
|
||||||
m_recentFilesConn =
|
m_recentFilesConn =
|
||||||
App::instance()->recentFiles()->Changed.connect(
|
App::instance()->recentFiles()->Changed.connect(
|
||||||
base::Bind(&AppMenus::rebuildRecentList, this));
|
[this]{ rebuildRecentList(); });
|
||||||
}
|
}
|
||||||
|
|
||||||
AppMenus::~AppMenus()
|
AppMenus::~AppMenus()
|
||||||
|
@ -15,7 +15,6 @@
|
|||||||
|
|
||||||
#include "app/check_update_delegate.h"
|
#include "app/check_update_delegate.h"
|
||||||
#include "app/pref/preferences.h"
|
#include "app/pref/preferences.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/convert_to.h"
|
#include "base/convert_to.h"
|
||||||
#include "base/launcher.h"
|
#include "base/launcher.h"
|
||||||
#include "base/replace_string.h"
|
#include "base/replace_string.h"
|
||||||
@ -127,7 +126,7 @@ void CheckUpdateThreadLauncher::launch()
|
|||||||
m_delegate->onCheckingUpdates();
|
m_delegate->onCheckingUpdates();
|
||||||
|
|
||||||
m_bgJob.reset(new CheckUpdateBackgroundJob);
|
m_bgJob.reset(new CheckUpdateBackgroundJob);
|
||||||
m_thread.reset(new base::thread(base::Bind<void>(&CheckUpdateThreadLauncher::checkForUpdates, this)));
|
m_thread.reset(new base::thread([this]{ checkForUpdates(); }));
|
||||||
|
|
||||||
// Start a timer to monitoring the progress of the background job
|
// Start a timer to monitoring the progress of the background job
|
||||||
// executed in "m_thread". The "onMonitoringTick" method will be
|
// executed in "m_thread". The "onMonitoringTick" method will be
|
||||||
|
@ -13,7 +13,6 @@
|
|||||||
#include "app/commands/command.h"
|
#include "app/commands/command.h"
|
||||||
#include "app/modules/gui.h"
|
#include "app/modules/gui.h"
|
||||||
#include "app/ui/main_window.h"
|
#include "app/ui/main_window.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "fmt/format.h"
|
#include "fmt/format.h"
|
||||||
#include "ver/info.h"
|
#include "ver/info.h"
|
||||||
|
|
||||||
|
@ -23,7 +23,6 @@
|
|||||||
#include "app/ui/editor/select_box_state.h"
|
#include "app/ui/editor/select_box_state.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/clamp.h"
|
#include "base/clamp.h"
|
||||||
#include "doc/image.h"
|
#include "doc/image.h"
|
||||||
#include "doc/mask.h"
|
#include "doc/mask.h"
|
||||||
@ -79,13 +78,13 @@ public:
|
|||||||
setBottom(0);
|
setBottom(0);
|
||||||
updateBorderFromRect();
|
updateBorderFromRect();
|
||||||
|
|
||||||
width() ->Change.connect(base::Bind<void>(&CanvasSizeWindow::onSizeChange, this));
|
width() ->Change.connect([this]{ onSizeChange(); });
|
||||||
height()->Change.connect(base::Bind<void>(&CanvasSizeWindow::onSizeChange, this));
|
height()->Change.connect([this]{ onSizeChange(); });
|
||||||
dir() ->ItemChange.connect(base::Bind<void>(&CanvasSizeWindow::onDirChange, this));;
|
dir() ->ItemChange.connect([this]{ onDirChange(); });
|
||||||
left() ->Change.connect(base::Bind<void>(&CanvasSizeWindow::onBorderChange, this));
|
left() ->Change.connect([this]{ onBorderChange(); });
|
||||||
right() ->Change.connect(base::Bind<void>(&CanvasSizeWindow::onBorderChange, this));
|
right() ->Change.connect([this]{ onBorderChange(); });
|
||||||
top() ->Change.connect(base::Bind<void>(&CanvasSizeWindow::onBorderChange, this));
|
top() ->Change.connect([this]{ onBorderChange(); });
|
||||||
bottom()->Change.connect(base::Bind<void>(&CanvasSizeWindow::onBorderChange, this));
|
bottom()->Change.connect([this]{ onBorderChange(); });
|
||||||
|
|
||||||
m_editor->setState(m_selectBoxState);
|
m_editor->setState(m_selectBoxState);
|
||||||
|
|
||||||
|
@ -22,7 +22,6 @@
|
|||||||
#include "app/ui/timeline/timeline.h"
|
#include "app/ui/timeline/timeline.h"
|
||||||
#include "app/ui/user_data_popup.h"
|
#include "app/ui/user_data_popup.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/mem_utils.h"
|
#include "base/mem_utils.h"
|
||||||
#include "base/scoped_value.h"
|
#include "base/scoped_value.h"
|
||||||
#include "doc/cel.h"
|
#include "doc/cel.h"
|
||||||
@ -51,9 +50,9 @@ public:
|
|||||||
, m_cel(nullptr)
|
, m_cel(nullptr)
|
||||||
, m_selfUpdate(false)
|
, m_selfUpdate(false)
|
||||||
, m_newUserData(false) {
|
, m_newUserData(false) {
|
||||||
opacity()->Change.connect(base::Bind<void>(&CelPropertiesWindow::onStartTimer, this));
|
opacity()->Change.connect([this]{ onStartTimer(); });
|
||||||
userData()->Click.connect(base::Bind<void>(&CelPropertiesWindow::onPopupUserData, this));
|
userData()->Click.connect([this]{ onPopupUserData(); });
|
||||||
m_timer.Tick.connect(base::Bind<void>(&CelPropertiesWindow::onCommitChange, this));
|
m_timer.Tick.connect([this]{ onCommitChange(); });
|
||||||
|
|
||||||
remapWindow();
|
remapWindow();
|
||||||
centerWindow();
|
centerWindow();
|
||||||
|
@ -27,7 +27,6 @@
|
|||||||
#include "app/ui/editor/editor.h"
|
#include "app/ui/editor/editor.h"
|
||||||
#include "app/ui/editor/editor_render.h"
|
#include "app/ui/editor/editor_render.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/thread.h"
|
#include "base/thread.h"
|
||||||
#include "doc/image.h"
|
#include "doc/image.h"
|
||||||
#include "doc/layer.h"
|
#include "doc/layer.h"
|
||||||
@ -217,11 +216,10 @@ public:
|
|||||||
m_ditheringSelector->setSelectedItemIndex(index);
|
m_ditheringSelector->setSelectedItemIndex(index);
|
||||||
}
|
}
|
||||||
|
|
||||||
m_ditheringSelector->Change.connect(
|
m_ditheringSelector->Change.connect([this]{ onDithering(); });
|
||||||
base::Bind<void>(&ColorModeWindow::onDithering, this));
|
|
||||||
ditheringPlaceholder()->addChild(m_ditheringSelector);
|
ditheringPlaceholder()->addChild(m_ditheringSelector);
|
||||||
|
|
||||||
factor()->Change.connect(base::Bind<void>(&ColorModeWindow::onDithering, this));
|
factor()->Change.connect([this]{ onDithering(); });
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
amount()->setVisible(false);
|
amount()->setVisible(false);
|
||||||
@ -229,15 +227,15 @@ public:
|
|||||||
if (from != IMAGE_GRAYSCALE) {
|
if (from != IMAGE_GRAYSCALE) {
|
||||||
colorMode()->addChild(new ConversionItem(IMAGE_GRAYSCALE));
|
colorMode()->addChild(new ConversionItem(IMAGE_GRAYSCALE));
|
||||||
|
|
||||||
toGrayCombobox()->Change.connect(base::Bind<void>(&ColorModeWindow::onToGrayChange, this));
|
toGrayCombobox()->Change.connect([this]{ onToGrayChange(); });
|
||||||
}
|
}
|
||||||
|
|
||||||
colorModeView()->setMinSize(
|
colorModeView()->setMinSize(
|
||||||
colorModeView()->sizeHint() +
|
colorModeView()->sizeHint() +
|
||||||
colorMode()->sizeHint());
|
colorMode()->sizeHint());
|
||||||
|
|
||||||
colorMode()->Change.connect(base::Bind<void>(&ColorModeWindow::onChangeColorMode, this));
|
colorMode()->Change.connect([this]{ onChangeColorMode(); });
|
||||||
m_timer.Tick.connect(base::Bind<void>(&ColorModeWindow::onMonitorProgress, this));
|
m_timer.Tick.connect([this]{ onMonitorProgress(); });
|
||||||
|
|
||||||
progress()->setReadOnly(true);
|
progress()->setReadOnly(true);
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
// Copyright (C) 2019 Igara Studio S.A.
|
// Copyright (C) 2019-2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2018 David Capello
|
// Copyright (C) 2001-2018 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -32,7 +32,6 @@
|
|||||||
#include "app/ui/optional_alert.h"
|
#include "app/ui/optional_alert.h"
|
||||||
#include "app/ui/status_bar.h"
|
#include "app/ui/status_bar.h"
|
||||||
#include "app/ui/timeline/timeline.h"
|
#include "app/ui/timeline/timeline.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/clamp.h"
|
#include "base/clamp.h"
|
||||||
#include "base/convert_to.h"
|
#include "base/convert_to.h"
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
@ -318,11 +317,11 @@ public:
|
|||||||
, m_executionID(0)
|
, m_executionID(0)
|
||||||
, m_filenameFormat(params.filenameFormat())
|
, m_filenameFormat(params.filenameFormat())
|
||||||
{
|
{
|
||||||
sectionTabs()->ItemChange.connect(base::Bind<void>(&ExportSpriteSheetWindow::onChangeSection, this));
|
sectionTabs()->ItemChange.connect([this]{ onChangeSection(); });
|
||||||
expandSections()->Click.connect(base::Bind<void>(&ExportSpriteSheetWindow::onExpandSections, this));
|
expandSections()->Click.connect([this]{ onExpandSections(); });
|
||||||
closeSpriteSection()->Click.connect(base::Bind<void>(&ExportSpriteSheetWindow::onCloseSection, this, kSectionSprite));
|
closeSpriteSection()->Click.connect([this]{ onCloseSection(kSectionSprite); });
|
||||||
closeBordersSection()->Click.connect(base::Bind<void>(&ExportSpriteSheetWindow::onCloseSection, this, kSectionBorders));
|
closeBordersSection()->Click.connect([this]{ onCloseSection(kSectionBorders); });
|
||||||
closeOutputSection()->Click.connect(base::Bind<void>(&ExportSpriteSheetWindow::onCloseSection, this, kSectionOutput));
|
closeOutputSection()->Click.connect([this]{ onCloseSection(kSectionOutput); });
|
||||||
|
|
||||||
static_assert(
|
static_assert(
|
||||||
(int)app::SpriteSheetType::None == 0 &&
|
(int)app::SpriteSheetType::None == 0 &&
|
||||||
@ -430,32 +429,32 @@ public:
|
|||||||
m_dataFilename == kSpecifiedFilename)
|
m_dataFilename == kSpecifiedFilename)
|
||||||
m_dataFilename = base + ".json";
|
m_dataFilename = base + ".json";
|
||||||
|
|
||||||
exportButton()->Click.connect(base::Bind<void>(&ExportSpriteSheetWindow::onExport, this));
|
exportButton()->Click.connect([this]{ onExport(); });
|
||||||
sheetType()->Change.connect(&ExportSpriteSheetWindow::onSheetTypeChange, this);
|
sheetType()->Change.connect([this]{ onSheetTypeChange(); });
|
||||||
constraintType()->Change.connect(&ExportSpriteSheetWindow::onConstraintTypeChange, this);
|
constraintType()->Change.connect([this]{ onConstraintTypeChange(); });
|
||||||
widthConstraint()->Change.connect(&ExportSpriteSheetWindow::generatePreview, this);
|
widthConstraint()->Change.connect([this]{ generatePreview(); });
|
||||||
heightConstraint()->Change.connect(&ExportSpriteSheetWindow::generatePreview, this);
|
heightConstraint()->Change.connect([this]{ generatePreview(); });
|
||||||
borderPadding()->Change.connect(base::Bind<void>(&ExportSpriteSheetWindow::generatePreview, this));
|
borderPadding()->Change.connect([this]{ generatePreview(); });
|
||||||
shapePadding()->Change.connect(base::Bind<void>(&ExportSpriteSheetWindow::generatePreview, this));
|
shapePadding()->Change.connect([this]{ generatePreview(); });
|
||||||
innerPadding()->Change.connect(base::Bind<void>(&ExportSpriteSheetWindow::generatePreview, this));
|
innerPadding()->Change.connect([this]{ generatePreview(); });
|
||||||
extrudeEnabled()->Click.connect(base::Bind<void>(&ExportSpriteSheetWindow::generatePreview, this));
|
extrudeEnabled()->Click.connect([this]{ generatePreview(); });
|
||||||
mergeDups()->Click.connect(base::Bind<void>(&ExportSpriteSheetWindow::generatePreview, this));
|
mergeDups()->Click.connect([this]{ generatePreview(); });
|
||||||
ignoreEmpty()->Click.connect(base::Bind<void>(&ExportSpriteSheetWindow::generatePreview, this));
|
ignoreEmpty()->Click.connect([this]{ generatePreview(); });
|
||||||
imageEnabled()->Click.connect(base::Bind<void>(&ExportSpriteSheetWindow::onImageEnabledChange, this));
|
imageEnabled()->Click.connect([this]{ onImageEnabledChange(); });
|
||||||
imageFilename()->Click.connect(base::Bind<void>(&ExportSpriteSheetWindow::onImageFilename, this));
|
imageFilename()->Click.connect([this]{ onImageFilename(); });
|
||||||
dataEnabled()->Click.connect(base::Bind<void>(&ExportSpriteSheetWindow::onDataEnabledChange, this));
|
dataEnabled()->Click.connect([this]{ onDataEnabledChange(); });
|
||||||
dataFilename()->Click.connect(base::Bind<void>(&ExportSpriteSheetWindow::onDataFilename, this));
|
dataFilename()->Click.connect([this]{ onDataFilename(); });
|
||||||
trimSpriteEnabled()->Click.connect(base::Bind<void>(&ExportSpriteSheetWindow::onTrimEnabledChange, this));
|
trimSpriteEnabled()->Click.connect([this]{ onTrimEnabledChange(); });
|
||||||
trimEnabled()->Click.connect(base::Bind<void>(&ExportSpriteSheetWindow::onTrimEnabledChange, this));
|
trimEnabled()->Click.connect([this]{ onTrimEnabledChange(); });
|
||||||
gridTrimEnabled()->Click.connect(base::Bind<void>(&ExportSpriteSheetWindow::generatePreview, this));
|
gridTrimEnabled()->Click.connect([this]{ generatePreview(); });
|
||||||
layers()->Change.connect(base::Bind<void>(&ExportSpriteSheetWindow::generatePreview, this));
|
layers()->Change.connect([this]{ generatePreview(); });
|
||||||
splitLayers()->Click.connect(base::Bind<void>(&ExportSpriteSheetWindow::onSplitLayersOrFrames, this));
|
splitLayers()->Click.connect([this]{ onSplitLayersOrFrames(); });
|
||||||
splitTags()->Click.connect(base::Bind<void>(&ExportSpriteSheetWindow::onSplitLayersOrFrames, this));
|
splitTags()->Click.connect([this]{ onSplitLayersOrFrames(); });
|
||||||
frames()->Change.connect(base::Bind<void>(&ExportSpriteSheetWindow::generatePreview, this));
|
frames()->Change.connect([this]{ generatePreview(); });
|
||||||
dataFilenameFormat()->Change.connect(base::Bind<void>(&ExportSpriteSheetWindow::onDataFilenameFormatChange, this));
|
dataFilenameFormat()->Change.connect([this]{ onDataFilenameFormatChange(); });
|
||||||
openGenerated()->Click.connect(base::Bind<void>(&ExportSpriteSheetWindow::onOpenGeneratedChange, this));
|
openGenerated()->Click.connect([this]{ onOpenGeneratedChange(); });
|
||||||
preview()->Click.connect(base::Bind<void>(&ExportSpriteSheetWindow::generatePreview, this));
|
preview()->Click.connect([this]{ generatePreview(); });
|
||||||
m_genTimer.Tick.connect(base::Bind<void>(&ExportSpriteSheetWindow::onGenTimerTick, this));
|
m_genTimer.Tick.connect([this]{ onGenTimerTick(); });
|
||||||
|
|
||||||
// Select tabs
|
// Select tabs
|
||||||
{
|
{
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
// Copyright (C) 2019 Igara Studio S.A.
|
// Copyright (C) 2019-2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2018 David Capello
|
// Copyright (C) 2001-2018 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -29,7 +29,6 @@
|
|||||||
#include "app/ui/editor/select_box_state.h"
|
#include "app/ui/editor/select_box_state.h"
|
||||||
#include "app/ui/editor/standby_state.h"
|
#include "app/ui/editor/standby_state.h"
|
||||||
#include "app/ui/workspace.h"
|
#include "app/ui/workspace.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "doc/cel.h"
|
#include "doc/cel.h"
|
||||||
#include "doc/image.h"
|
#include "doc/image.h"
|
||||||
#include "doc/layer.h"
|
#include "doc/layer.h"
|
||||||
@ -69,16 +68,16 @@ public:
|
|||||||
sheetType()->addItem("By Columns");
|
sheetType()->addItem("By Columns");
|
||||||
sheetType()->setSelectedItemIndex((int)app::SpriteSheetType::Rows-1);
|
sheetType()->setSelectedItemIndex((int)app::SpriteSheetType::Rows-1);
|
||||||
|
|
||||||
sheetType()->Change.connect(base::Bind<void>(&ImportSpriteSheetWindow::onSheetTypeChange, this));
|
sheetType()->Change.connect([this]{ onSheetTypeChange(); });
|
||||||
x()->Change.connect(base::Bind<void>(&ImportSpriteSheetWindow::onEntriesChange, this));
|
x()->Change.connect([this]{ onEntriesChange(); });
|
||||||
y()->Change.connect(base::Bind<void>(&ImportSpriteSheetWindow::onEntriesChange, this));
|
y()->Change.connect([this]{ onEntriesChange(); });
|
||||||
width()->Change.connect(base::Bind<void>(&ImportSpriteSheetWindow::onEntriesChange, this));
|
width()->Change.connect([this]{ onEntriesChange(); });
|
||||||
height()->Change.connect(base::Bind<void>(&ImportSpriteSheetWindow::onEntriesChange, this));
|
height()->Change.connect([this]{ onEntriesChange(); });
|
||||||
paddingEnabled()->Click.connect(base::Bind<void>(&ImportSpriteSheetWindow::onPaddingEnabledChange, this));
|
paddingEnabled()->Click.connect([this]{ onPaddingEnabledChange(); });
|
||||||
horizontalPadding()->Change.connect(base::Bind<void>(&ImportSpriteSheetWindow::onEntriesChange, this));
|
horizontalPadding()->Change.connect([this]{ onEntriesChange(); });
|
||||||
verticalPadding()->Change.connect(base::Bind<void>(&ImportSpriteSheetWindow::onEntriesChange, this));
|
verticalPadding()->Change.connect([this]{ onEntriesChange(); });
|
||||||
partialTiles()->Click.connect(base::Bind<void>(&ImportSpriteSheetWindow::onEntriesChange, this));
|
partialTiles()->Click.connect([this]{ onEntriesChange(); });
|
||||||
selectFile()->Click.connect(base::Bind<void>(&ImportSpriteSheetWindow::onSelectFile, this));
|
selectFile()->Click.connect([this]{ onSelectFile(); });
|
||||||
|
|
||||||
remapWindow();
|
remapWindow();
|
||||||
centerWindow();
|
centerWindow();
|
||||||
|
@ -26,7 +26,6 @@
|
|||||||
#include "app/ui/select_accelerator.h"
|
#include "app/ui/select_accelerator.h"
|
||||||
#include "app/ui/separator_in_view.h"
|
#include "app/ui/separator_in_view.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
#include "base/scoped_value.h"
|
#include "base/scoped_value.h"
|
||||||
#include "base/split_string.h"
|
#include "base/split_string.h"
|
||||||
@ -376,13 +375,13 @@ private:
|
|||||||
|
|
||||||
m_changeConn = obs::connection();
|
m_changeConn = obs::connection();
|
||||||
m_changeButton.reset(new Button(""));
|
m_changeButton.reset(new Button(""));
|
||||||
m_changeConn = m_changeButton->Click.connect(base::Bind<void>(&KeyItem::onChangeAccel, this, i));
|
m_changeConn = m_changeButton->Click.connect([this, i]{ onChangeAccel(i); });
|
||||||
m_changeButton->setStyle(SkinTheme::instance()->styles.miniButton());
|
m_changeButton->setStyle(SkinTheme::instance()->styles.miniButton());
|
||||||
addChild(m_changeButton.get());
|
addChild(m_changeButton.get());
|
||||||
|
|
||||||
m_deleteConn = obs::connection();
|
m_deleteConn = obs::connection();
|
||||||
m_deleteButton.reset(new Button(""));
|
m_deleteButton.reset(new Button(""));
|
||||||
m_deleteConn = m_deleteButton->Click.connect(base::Bind<void>(&KeyItem::onDeleteAccel, this, i));
|
m_deleteConn = m_deleteButton->Click.connect([this, i]{ onDeleteAccel(i); });
|
||||||
m_deleteButton->setStyle(SkinTheme::instance()->styles.miniButton());
|
m_deleteButton->setStyle(SkinTheme::instance()->styles.miniButton());
|
||||||
addChild(m_deleteButton.get());
|
addChild(m_deleteButton.get());
|
||||||
|
|
||||||
@ -409,7 +408,7 @@ private:
|
|||||||
(!m_menuitem || m_menuitem->getCommand())) {
|
(!m_menuitem || m_menuitem->getCommand())) {
|
||||||
m_addConn = obs::connection();
|
m_addConn = obs::connection();
|
||||||
m_addButton.reset(new Button(""));
|
m_addButton.reset(new Button(""));
|
||||||
m_addConn = m_addButton->Click.connect(base::Bind<void>(&KeyItem::onAddAccel, this));
|
m_addConn = m_addButton->Click.connect([this]{ onAddAccel(); });
|
||||||
m_addButton->setStyle(SkinTheme::instance()->styles.miniButton());
|
m_addButton->setStyle(SkinTheme::instance()->styles.miniButton());
|
||||||
addChild(m_addButton.get());
|
addChild(m_addButton.get());
|
||||||
|
|
||||||
@ -511,14 +510,14 @@ public:
|
|||||||
|
|
||||||
onWheelBehaviorChange();
|
onWheelBehaviorChange();
|
||||||
|
|
||||||
wheelBehavior()->ItemChange.connect(base::Bind<void>(&KeyboardShortcutsWindow::onWheelBehaviorChange, this));
|
wheelBehavior()->ItemChange.connect([this]{ onWheelBehaviorChange(); });
|
||||||
wheelZoom()->Click.connect(base::Bind<void>(&KeyboardShortcutsWindow::onWheelZoomChange, this));
|
wheelZoom()->Click.connect([this]{ onWheelZoomChange(); });
|
||||||
|
|
||||||
search()->Change.connect(base::Bind<void>(&KeyboardShortcutsWindow::onSearchChange, this));
|
search()->Change.connect([this]{ onSearchChange(); });
|
||||||
section()->Change.connect(base::Bind<void>(&KeyboardShortcutsWindow::onSectionChange, this));
|
section()->Change.connect([this]{ onSectionChange(); });
|
||||||
importButton()->Click.connect(base::Bind<void>(&KeyboardShortcutsWindow::onImport, this));
|
importButton()->Click.connect([this]{ onImport(); });
|
||||||
exportButton()->Click.connect(base::Bind<void>(&KeyboardShortcutsWindow::onExport, this));
|
exportButton()->Click.connect([this]{ onExport(); });
|
||||||
resetButton()->Click.connect(base::Bind<void>(&KeyboardShortcutsWindow::onReset, this));
|
resetButton()->Click.connect([this]{ onReset(); });
|
||||||
|
|
||||||
fillAllLists();
|
fillAllLists();
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
|
// Copyright (C) 2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2018 David Capello
|
// Copyright (C) 2001-2018 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -24,7 +25,6 @@
|
|||||||
#include "app/ui/timeline/timeline.h"
|
#include "app/ui/timeline/timeline.h"
|
||||||
#include "app/ui/user_data_popup.h"
|
#include "app/ui/user_data_popup.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/scoped_value.h"
|
#include "base/scoped_value.h"
|
||||||
#include "doc/image.h"
|
#include "doc/image.h"
|
||||||
#include "doc/layer.h"
|
#include "doc/layer.h"
|
||||||
@ -99,11 +99,11 @@ public:
|
|||||||
mode()->addItem(new BlendModeItem("Color", doc::BlendMode::HSL_COLOR));
|
mode()->addItem(new BlendModeItem("Color", doc::BlendMode::HSL_COLOR));
|
||||||
mode()->addItem(new BlendModeItem("Luminosity", doc::BlendMode::HSL_LUMINOSITY));
|
mode()->addItem(new BlendModeItem("Luminosity", doc::BlendMode::HSL_LUMINOSITY));
|
||||||
|
|
||||||
name()->Change.connect(base::Bind<void>(&LayerPropertiesWindow::onStartTimer, this));
|
name()->Change.connect([this]{ onStartTimer(); });
|
||||||
mode()->Change.connect(base::Bind<void>(&LayerPropertiesWindow::onStartTimer, this));
|
mode()->Change.connect([this]{ onStartTimer(); });
|
||||||
opacity()->Change.connect(base::Bind<void>(&LayerPropertiesWindow::onStartTimer, this));
|
opacity()->Change.connect([this]{ onStartTimer(); });
|
||||||
m_timer.Tick.connect(base::Bind<void>(&LayerPropertiesWindow::onCommitChange, this));
|
m_timer.Tick.connect([this]{ onCommitChange(); });
|
||||||
userData()->Click.connect(base::Bind<void>(&LayerPropertiesWindow::onPopupUserData, this));
|
userData()->Click.connect([this]{ onPopupUserData(); });
|
||||||
|
|
||||||
remapWindow();
|
remapWindow();
|
||||||
centerWindow();
|
centerWindow();
|
||||||
|
@ -24,7 +24,6 @@
|
|||||||
#include "app/ui/color_bar.h"
|
#include "app/ui/color_bar.h"
|
||||||
#include "app/ui/color_button.h"
|
#include "app/ui/color_button.h"
|
||||||
#include "app/ui/selection_mode_field.h"
|
#include "app/ui/selection_mode_field.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/chrono.h"
|
#include "base/chrono.h"
|
||||||
#include "base/convert_to.h"
|
#include "base/convert_to.h"
|
||||||
#include "base/scoped_value.h"
|
#include "base/scoped_value.h"
|
||||||
@ -136,13 +135,13 @@ void MaskByColorCommand::onExecute(Context* context)
|
|||||||
if (get_config_bool("MaskColor", "Preview", true))
|
if (get_config_bool("MaskColor", "Preview", true))
|
||||||
m_checkPreview->setSelected(true);
|
m_checkPreview->setSelected(true);
|
||||||
|
|
||||||
button_ok->Click.connect(base::Bind<void>(&Window::closeWindow, m_window, button_ok));
|
button_ok->Click.connect([this, button_ok]{ m_window->closeWindow(button_ok); });
|
||||||
button_cancel->Click.connect(base::Bind<void>(&Window::closeWindow, m_window, button_cancel));
|
button_cancel->Click.connect([this, button_cancel]{ m_window->closeWindow(button_cancel); });
|
||||||
|
|
||||||
m_buttonColor->Change.connect(base::Bind<void>(&MaskByColorCommand::maskPreview, this, base::Ref(reader)));
|
m_buttonColor->Change.connect([&]{ maskPreview(reader); });
|
||||||
m_sliderTolerance->Change.connect(base::Bind<void>(&MaskByColorCommand::maskPreview, this, base::Ref(reader)));
|
m_sliderTolerance->Change.connect([&]{ maskPreview(reader); });
|
||||||
m_checkPreview->Click.connect(base::Bind<void>(&MaskByColorCommand::maskPreview, this, base::Ref(reader)));
|
m_checkPreview->Click.connect([&]{ maskPreview(reader); });
|
||||||
m_selMode->ModeChange.connect(base::Bind<void>(&MaskByColorCommand::maskPreview, this, base::Ref(reader)));
|
m_selMode->ModeChange.connect([&]{ maskPreview(reader); });
|
||||||
|
|
||||||
button_ok->setFocusMagnet(true);
|
button_ok->setFocusMagnet(true);
|
||||||
m_buttonColor->setExpansive(true);
|
m_buttonColor->setExpansive(true);
|
||||||
|
@ -27,7 +27,6 @@
|
|||||||
#include "app/util/clipboard.h"
|
#include "app/util/clipboard.h"
|
||||||
#include "app/util/clipboard.h"
|
#include "app/util/clipboard.h"
|
||||||
#include "app/util/pixel_ratio.h"
|
#include "app/util/pixel_ratio.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/clamp.h"
|
#include "base/clamp.h"
|
||||||
#include "doc/cel.h"
|
#include "doc/cel.h"
|
||||||
#include "doc/image.h"
|
#include "doc/image.h"
|
||||||
@ -155,16 +154,15 @@ void NewFileCommand::onExecute(Context* ctx)
|
|||||||
bool advanced = pref.newFile.advanced();
|
bool advanced = pref.newFile.advanced();
|
||||||
window.advancedCheck()->setSelected(advanced);
|
window.advancedCheck()->setSelected(advanced);
|
||||||
window.advancedCheck()->Click.connect(
|
window.advancedCheck()->Click.connect(
|
||||||
base::Bind<void>(
|
[&]{
|
||||||
[&]{
|
gfx::Rect bounds = window.bounds();
|
||||||
gfx::Rect bounds = window.bounds();
|
window.advanced()->setVisible(window.advancedCheck()->isSelected());
|
||||||
window.advanced()->setVisible(window.advancedCheck()->isSelected());
|
window.setBounds(gfx::Rect(window.bounds().origin(),
|
||||||
window.setBounds(gfx::Rect(window.bounds().origin(),
|
window.sizeHint()));
|
||||||
window.sizeHint()));
|
window.layout();
|
||||||
window.layout();
|
|
||||||
|
|
||||||
window.manager()->invalidateRect(bounds);
|
window.manager()->invalidateRect(bounds);
|
||||||
}));
|
});
|
||||||
window.advanced()->setVisible(advanced);
|
window.advanced()->setVisible(advanced);
|
||||||
if (advanced)
|
if (advanced)
|
||||||
window.pixelRatio()->setValue(pref.newFile.pixelRatio());
|
window.pixelRatio()->setValue(pref.newFile.pixelRatio());
|
||||||
|
@ -25,7 +25,6 @@
|
|||||||
#include "app/recent_files.h"
|
#include "app/recent_files.h"
|
||||||
#include "app/ui/status_bar.h"
|
#include "app/ui/status_bar.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
#include "base/thread.h"
|
#include "base/thread.h"
|
||||||
#include "doc/sprite.h"
|
#include "doc/sprite.h"
|
||||||
|
@ -30,7 +30,6 @@
|
|||||||
#include "app/ui/pref_widget.h"
|
#include "app/ui/pref_widget.h"
|
||||||
#include "app/ui/separator_in_view.h"
|
#include "app/ui/separator_in_view.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/clamp.h"
|
#include "base/clamp.h"
|
||||||
#include "base/convert_to.h"
|
#include "base/convert_to.h"
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
@ -202,7 +201,7 @@ public:
|
|||||||
, m_restoreScreenScaling(m_pref.general.screenScale())
|
, m_restoreScreenScaling(m_pref.general.screenScale())
|
||||||
, m_restoreUIScaling(m_pref.general.uiScale())
|
, m_restoreUIScaling(m_pref.general.uiScale())
|
||||||
{
|
{
|
||||||
sectionListbox()->Change.connect(base::Bind<void>(&OptionsWindow::onChangeSection, this));
|
sectionListbox()->Change.connect([this]{ onChangeSection(); });
|
||||||
|
|
||||||
// Default extension to save files
|
// Default extension to save files
|
||||||
fillExtensionsCombobox(defaultExtension(), m_pref.saveFile.defaultExtension());
|
fillExtensionsCombobox(defaultExtension(), m_pref.saveFile.defaultExtension());
|
||||||
@ -212,15 +211,15 @@ public:
|
|||||||
|
|
||||||
// Number of recent items
|
// Number of recent items
|
||||||
recentFiles()->setValue(m_pref.general.recentItems());
|
recentFiles()->setValue(m_pref.general.recentItems());
|
||||||
clearRecentFiles()->Click.connect(base::Bind<void>(&OptionsWindow::onClearRecentFiles, this));
|
clearRecentFiles()->Click.connect([this]{ onClearRecentFiles(); });
|
||||||
|
|
||||||
// Template item for active display color profiles
|
// Template item for active display color profiles
|
||||||
m_templateTextForDisplayCS = windowCs()->getItem(2)->text();
|
m_templateTextForDisplayCS = windowCs()->getItem(2)->text();
|
||||||
windowCs()->deleteItem(2);
|
windowCs()->deleteItem(2);
|
||||||
|
|
||||||
// Color profiles
|
// Color profiles
|
||||||
resetColorManagement()->Click.connect(base::Bind<void>(&OptionsWindow::onResetColorManagement, this));
|
resetColorManagement()->Click.connect([this]{ onResetColorManagement(); });
|
||||||
colorManagement()->Click.connect(base::Bind<void>(&OptionsWindow::onColorManagement, this));
|
colorManagement()->Click.connect([this]{ onColorManagement(); });
|
||||||
{
|
{
|
||||||
os::instance()->listColorSpaces(m_colorSpaces);
|
os::instance()->listColorSpaces(m_colorSpaces);
|
||||||
for (auto& cs : m_colorSpaces) {
|
for (auto& cs : m_colorSpaces) {
|
||||||
@ -236,7 +235,7 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Alerts
|
// Alerts
|
||||||
resetAlerts()->Click.connect(base::Bind<void>(&OptionsWindow::onResetAlerts, this));
|
resetAlerts()->Click.connect([this]{ onResetAlerts(); });
|
||||||
|
|
||||||
// Cursor
|
// Cursor
|
||||||
paintingCursorType()->setSelectedItemIndex(int(m_pref.cursor.paintingCursorType()));
|
paintingCursorType()->setSelectedItemIndex(int(m_pref.cursor.paintingCursorType()));
|
||||||
@ -250,7 +249,7 @@ public:
|
|||||||
cursorColorType()->setSelectedItemIndex(1);
|
cursorColorType()->setSelectedItemIndex(1);
|
||||||
cursorColor()->setVisible(true);
|
cursorColor()->setVisible(true);
|
||||||
}
|
}
|
||||||
cursorColorType()->Change.connect(base::Bind<void>(&OptionsWindow::onCursorColorType, this));
|
cursorColorType()->Change.connect([this]{ onCursorColorType(); });
|
||||||
|
|
||||||
// Brush preview
|
// Brush preview
|
||||||
brushPreview()->setSelectedItemIndex(
|
brushPreview()->setSelectedItemIndex(
|
||||||
@ -334,7 +333,7 @@ public:
|
|||||||
int(os::Capabilities::CustomNativeMouseCursor)) != 0) {
|
int(os::Capabilities::CustomNativeMouseCursor)) != 0) {
|
||||||
if (m_pref.cursor.useNativeCursor())
|
if (m_pref.cursor.useNativeCursor())
|
||||||
nativeCursor()->setSelected(true);
|
nativeCursor()->setSelected(true);
|
||||||
nativeCursor()->Click.connect(base::Bind<void>(&OptionsWindow::onNativeCursorChange, this));
|
nativeCursor()->Click.connect([this]{ onNativeCursorChange(); });
|
||||||
|
|
||||||
cursorScale()->setSelectedItemIndex(
|
cursorScale()->setSelectedItemIndex(
|
||||||
cursorScale()->findItemIndexByValue(
|
cursorScale()->findItemIndexByValue(
|
||||||
@ -418,11 +417,11 @@ public:
|
|||||||
if (context->activeDocument()) {
|
if (context->activeDocument()) {
|
||||||
bgScope()->addItem("Background for the Active Document");
|
bgScope()->addItem("Background for the Active Document");
|
||||||
bgScope()->setSelectedItemIndex(1);
|
bgScope()->setSelectedItemIndex(1);
|
||||||
bgScope()->Change.connect(base::Bind<void>(&OptionsWindow::onChangeBgScope, this));
|
bgScope()->Change.connect([this]{ onChangeBgScope(); });
|
||||||
|
|
||||||
gridScope()->addItem("Grid for the Active Document");
|
gridScope()->addItem("Grid for the Active Document");
|
||||||
gridScope()->setSelectedItemIndex(1);
|
gridScope()->setSelectedItemIndex(1);
|
||||||
gridScope()->Change.connect(base::Bind<void>(&OptionsWindow::onChangeGridScope, this));
|
gridScope()->Change.connect([this]{ onChangeGridScope(); });
|
||||||
}
|
}
|
||||||
|
|
||||||
selectScalingItems();
|
selectScalingItems();
|
||||||
@ -477,21 +476,21 @@ public:
|
|||||||
checkedBgSize()->addItem("2x2");
|
checkedBgSize()->addItem("2x2");
|
||||||
checkedBgSize()->addItem("1x1");
|
checkedBgSize()->addItem("1x1");
|
||||||
checkedBgSize()->addItem("Custom");
|
checkedBgSize()->addItem("Custom");
|
||||||
checkedBgSize()->Change.connect(base::Bind<void>(&OptionsWindow::onCheckedBgSizeChange, this));
|
checkedBgSize()->Change.connect([this]{ onCheckedBgSizeChange(); });
|
||||||
|
|
||||||
// Reset buttons
|
// Reset buttons
|
||||||
resetBg()->Click.connect(base::Bind<void>(&OptionsWindow::onResetBg, this));
|
resetBg()->Click.connect([this]{ onResetBg(); });
|
||||||
resetGrid()->Click.connect(base::Bind<void>(&OptionsWindow::onResetGrid, this));
|
resetGrid()->Click.connect([this]{ onResetGrid(); });
|
||||||
|
|
||||||
// Links
|
// Links
|
||||||
locateFile()->Click.connect(base::Bind<void>(&OptionsWindow::onLocateConfigFile, this));
|
locateFile()->Click.connect([this]{ onLocateConfigFile(); });
|
||||||
if (!App::instance()->memoryDumpFilename().empty())
|
if (!App::instance()->memoryDumpFilename().empty())
|
||||||
locateCrashFolder()->Click.connect(base::Bind<void>(&OptionsWindow::onLocateCrashFolder, this));
|
locateCrashFolder()->Click.connect([this]{ onLocateCrashFolder(); });
|
||||||
else
|
else
|
||||||
locateCrashFolder()->setVisible(false);
|
locateCrashFolder()->setVisible(false);
|
||||||
|
|
||||||
// Undo preferences
|
// Undo preferences
|
||||||
limitUndo()->Click.connect(base::Bind<void>(&OptionsWindow::onLimitUndoCheck, this));
|
limitUndo()->Click.connect([this]{ onLimitUndoCheck(); });
|
||||||
limitUndo()->setSelected(m_pref.undo.sizeLimit() != 0);
|
limitUndo()->setSelected(m_pref.undo.sizeLimit() != 0);
|
||||||
onLimitUndoCheck();
|
onLimitUndoCheck();
|
||||||
|
|
||||||
@ -499,20 +498,20 @@ public:
|
|||||||
undoAllowNonlinearHistory()->setSelected(m_pref.undo.allowNonlinearHistory());
|
undoAllowNonlinearHistory()->setSelected(m_pref.undo.allowNonlinearHistory());
|
||||||
|
|
||||||
// Theme buttons
|
// Theme buttons
|
||||||
themeList()->Change.connect(base::Bind<void>(&OptionsWindow::onThemeChange, this));
|
themeList()->Change.connect([this]{ onThemeChange(); });
|
||||||
themeList()->DoubleClickItem.connect(base::Bind<void>(&OptionsWindow::onSelectTheme, this));
|
themeList()->DoubleClickItem.connect([this]{ onSelectTheme(); });
|
||||||
selectTheme()->Click.connect(base::Bind<void>(&OptionsWindow::onSelectTheme, this));
|
selectTheme()->Click.connect([this]{ onSelectTheme(); });
|
||||||
openThemeFolder()->Click.connect(base::Bind<void>(&OptionsWindow::onOpenThemeFolder, this));
|
openThemeFolder()->Click.connect([this]{ onOpenThemeFolder(); });
|
||||||
|
|
||||||
// Extensions buttons
|
// Extensions buttons
|
||||||
extensionsList()->Change.connect(base::Bind<void>(&OptionsWindow::onExtensionChange, this));
|
extensionsList()->Change.connect([this]{ onExtensionChange(); });
|
||||||
addExtension()->Click.connect(base::Bind<void>(&OptionsWindow::onAddExtension, this));
|
addExtension()->Click.connect([this]{ onAddExtension(); });
|
||||||
disableExtension()->Click.connect(base::Bind<void>(&OptionsWindow::onDisableExtension, this));
|
disableExtension()->Click.connect([this]{ onDisableExtension(); });
|
||||||
uninstallExtension()->Click.connect(base::Bind<void>(&OptionsWindow::onUninstallExtension, this));
|
uninstallExtension()->Click.connect([this]{ onUninstallExtension(); });
|
||||||
openExtensionFolder()->Click.connect(base::Bind<void>(&OptionsWindow::onOpenExtensionFolder, this));
|
openExtensionFolder()->Click.connect([this]{ onOpenExtensionFolder(); });
|
||||||
|
|
||||||
// Apply button
|
// Apply button
|
||||||
buttonApply()->Click.connect(base::Bind<void>(&OptionsWindow::onApply, this));
|
buttonApply()->Click.connect([this]{ onApply(); });
|
||||||
|
|
||||||
onChangeBgScope();
|
onChangeBgScope();
|
||||||
onChangeGridScope();
|
onChangeGridScope();
|
||||||
@ -521,12 +520,12 @@ public:
|
|||||||
// Refill languages combobox when extensions are enabled/disabled
|
// Refill languages combobox when extensions are enabled/disabled
|
||||||
m_extLanguagesChanges =
|
m_extLanguagesChanges =
|
||||||
App::instance()->extensions().LanguagesChange.connect(
|
App::instance()->extensions().LanguagesChange.connect(
|
||||||
base::Bind<void>(&OptionsWindow::refillLanguages, this));
|
[this]{ refillLanguages(); });
|
||||||
|
|
||||||
// Reload themes when extensions are enabled/disabled
|
// Reload themes when extensions are enabled/disabled
|
||||||
m_extThemesChanges =
|
m_extThemesChanges =
|
||||||
App::instance()->extensions().ThemesChange.connect(
|
App::instance()->extensions().ThemesChange.connect(
|
||||||
base::Bind<void>(&OptionsWindow::reloadThemes, this));
|
[this]{ reloadThemes(); });
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ok() {
|
bool ok() {
|
||||||
|
@ -21,7 +21,6 @@
|
|||||||
#include "app/ui/font_popup.h"
|
#include "app/ui/font_popup.h"
|
||||||
#include "app/ui/timeline/timeline.h"
|
#include "app/ui/timeline/timeline.h"
|
||||||
#include "app/util/freetype_utils.h"
|
#include "app/util/freetype_utils.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/clamp.h"
|
#include "base/clamp.h"
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
#include "base/string.h"
|
#include "base/string.h"
|
||||||
@ -69,8 +68,8 @@ public:
|
|||||||
updateFontFaceButton();
|
updateFontFaceButton();
|
||||||
|
|
||||||
fontSize()->setTextf("%d", size);
|
fontSize()->setTextf("%d", size);
|
||||||
fontFace()->Click.connect(base::Bind<void>(&PasteTextWindow::onSelectFontFile, this));
|
fontFace()->Click.connect([this]{ onSelectFontFile(); });
|
||||||
fontFace()->DropDownClick.connect(base::Bind<void>(&PasteTextWindow::onSelectSystemFont, this));
|
fontFace()->DropDownClick.connect([this]{ onSelectSystemFont(); });
|
||||||
fontColor()->setColor(color);
|
fontColor()->setColor(color);
|
||||||
this->antialias()->setSelected(antialias);
|
this->antialias()->setSelected(antialias);
|
||||||
}
|
}
|
||||||
@ -116,7 +115,7 @@ private:
|
|||||||
try {
|
try {
|
||||||
m_fontPopup.reset(new FontPopup());
|
m_fontPopup.reset(new FontPopup());
|
||||||
m_fontPopup->Load.connect(&PasteTextWindow::setFontFace, this);
|
m_fontPopup->Load.connect(&PasteTextWindow::setFontFace, this);
|
||||||
m_fontPopup->Close.connect(base::Bind<void>(&PasteTextWindow::onCloseFontPopup, this));
|
m_fontPopup->Close.connect([this]{ onCloseFontPopup(); });
|
||||||
}
|
}
|
||||||
catch (const std::exception& ex) {
|
catch (const std::exception& ex) {
|
||||||
Console::showException(ex);
|
Console::showException(ex);
|
||||||
|
@ -33,7 +33,6 @@
|
|||||||
#include "app/ui/layer_frame_comboboxes.h"
|
#include "app/ui/layer_frame_comboboxes.h"
|
||||||
#include "app/ui/optional_alert.h"
|
#include "app/ui/optional_alert.h"
|
||||||
#include "app/ui/status_bar.h"
|
#include "app/ui/status_bar.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/convert_to.h"
|
#include "base/convert_to.h"
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
#include "base/scoped_value.h"
|
#include "base/scoped_value.h"
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
// Copyright (C) 2018 Igara Studio S.A.
|
// Copyright (C) 2018-2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2018 David Capello
|
// Copyright (C) 2001-2018 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -22,7 +22,6 @@
|
|||||||
#include "app/tx.h"
|
#include "app/tx.h"
|
||||||
#include "app/ui/color_button.h"
|
#include "app/ui/color_button.h"
|
||||||
#include "app/util/pixel_ratio.h"
|
#include "app/util/pixel_ratio.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/mem_utils.h"
|
#include "base/mem_utils.h"
|
||||||
#include "doc/image.h"
|
#include "doc/image.h"
|
||||||
#include "doc/palette.h"
|
#include "doc/palette.h"
|
||||||
|
@ -20,7 +20,6 @@
|
|||||||
#include "app/modules/palettes.h"
|
#include "app/modules/palettes.h"
|
||||||
#include "app/sprite_job.h"
|
#include "app/sprite_job.h"
|
||||||
#include "app/util/resize_image.h"
|
#include "app/util/resize_image.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/clamp.h"
|
#include "base/clamp.h"
|
||||||
#include "base/convert_to.h"
|
#include "base/convert_to.h"
|
||||||
#include "doc/algorithm/resize_image.h"
|
#include "doc/algorithm/resize_image.h"
|
||||||
@ -184,11 +183,11 @@ protected:
|
|||||||
class SpriteSizeWindow : public app::gen::SpriteSize {
|
class SpriteSizeWindow : public app::gen::SpriteSize {
|
||||||
public:
|
public:
|
||||||
SpriteSizeWindow(Context* ctx, const SpriteSizeParams& params) : m_ctx(ctx) {
|
SpriteSizeWindow(Context* ctx, const SpriteSizeParams& params) : m_ctx(ctx) {
|
||||||
lockRatio()->Click.connect(base::Bind<void>(&SpriteSizeWindow::onLockRatioClick, this));
|
lockRatio()->Click.connect([this]{ onLockRatioClick(); });
|
||||||
widthPx()->Change.connect(base::Bind<void>(&SpriteSizeWindow::onWidthPxChange, this));
|
widthPx()->Change.connect([this]{ onWidthPxChange(); });
|
||||||
heightPx()->Change.connect(base::Bind<void>(&SpriteSizeWindow::onHeightPxChange, this));
|
heightPx()->Change.connect([this]{ onHeightPxChange(); });
|
||||||
widthPerc()->Change.connect(base::Bind<void>(&SpriteSizeWindow::onWidthPercChange, this));
|
widthPerc()->Change.connect([this]{ onWidthPercChange(); });
|
||||||
heightPerc()->Change.connect(base::Bind<void>(&SpriteSizeWindow::onHeightPercChange, this));
|
heightPerc()->Change.connect([this]{ onHeightPercChange(); });
|
||||||
|
|
||||||
widthPx()->setTextf("%d", params.width());
|
widthPx()->setTextf("%d", params.width());
|
||||||
heightPx()->setTextf("%d", params.height());
|
heightPx()->setTextf("%d", params.height());
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
|
// Copyright (C) 2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2015-2018 David Capello
|
// Copyright (C) 2015-2018 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -21,7 +22,6 @@
|
|||||||
#include "app/modules/gui.h"
|
#include "app/modules/gui.h"
|
||||||
#include "app/modules/palettes.h"
|
#include "app/modules/palettes.h"
|
||||||
#include "app/site.h"
|
#include "app/site.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/mem_utils.h"
|
#include "base/mem_utils.h"
|
||||||
#include "ui/listitem.h"
|
#include "ui/listitem.h"
|
||||||
#include "ui/message.h"
|
#include "ui/message.h"
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
// Copyright (C) 2019 Igara Studio S.A.
|
// Copyright (C) 2019-2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2017 David Capello
|
// Copyright (C) 2017 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -21,7 +21,6 @@
|
|||||||
#include "app/ui/color_button.h"
|
#include "app/ui/color_button.h"
|
||||||
#include "app/ui/color_sliders.h"
|
#include "app/ui/color_sliders.h"
|
||||||
#include "app/ui/slider2.h"
|
#include "app/ui/slider2.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "doc/image.h"
|
#include "doc/image.h"
|
||||||
#include "doc/mask.h"
|
#include "doc/mask.h"
|
||||||
#include "doc/sprite.h"
|
#include "doc/sprite.h"
|
||||||
@ -59,8 +58,8 @@ public:
|
|||||||
getContainer()->addChild(&m_brightness);
|
getContainer()->addChild(&m_brightness);
|
||||||
getContainer()->addChild(new ui::Label("Contrast:"));
|
getContainer()->addChild(new ui::Label("Contrast:"));
|
||||||
getContainer()->addChild(&m_contrast);
|
getContainer()->addChild(&m_contrast);
|
||||||
m_brightness.Change.connect(base::Bind<void>(&BrightnessContrastWindow::onChange, this));
|
m_brightness.Change.connect([this]{ onChange(); });
|
||||||
m_contrast.Change.connect(base::Bind<void>(&BrightnessContrastWindow::onChange, this));
|
m_contrast.Change.connect([this]{ onChange(); });
|
||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
// Copyright (C) 2019 Igara Studio S.A.
|
// Copyright (C) 2019-2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2018 David Capello
|
// Copyright (C) 2001-2018 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -23,7 +23,6 @@
|
|||||||
#include "app/ini_file.h"
|
#include "app/ini_file.h"
|
||||||
#include "app/load_widget.h"
|
#include "app/load_widget.h"
|
||||||
#include "app/pref/preferences.h"
|
#include "app/pref/preferences.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "doc/mask.h"
|
#include "doc/mask.h"
|
||||||
#include "doc/sprite.h"
|
#include "doc/sprite.h"
|
||||||
#include "filters/convolution_matrix.h"
|
#include "filters/convolution_matrix.h"
|
||||||
@ -58,7 +57,9 @@ static const char* ConfigSection = "ConvolutionMatrix";
|
|||||||
|
|
||||||
class ConvolutionMatrixWindow : public FilterWindow {
|
class ConvolutionMatrixWindow : public FilterWindow {
|
||||||
public:
|
public:
|
||||||
ConvolutionMatrixWindow(ConvolutionMatrixFilter& filter, FilterManagerImpl& filterMgr, ConvolutionMatrixStock& stock)
|
ConvolutionMatrixWindow(ConvolutionMatrixFilter& filter,
|
||||||
|
FilterManagerImpl& filterMgr,
|
||||||
|
ConvolutionMatrixStock& stock)
|
||||||
: FilterWindow("Convolution Matrix", ConfigSection, &filterMgr,
|
: FilterWindow("Convolution Matrix", ConfigSection, &filterMgr,
|
||||||
WithChannelsSelector,
|
WithChannelsSelector,
|
||||||
WithTiledCheckBox,
|
WithTiledCheckBox,
|
||||||
@ -72,14 +73,14 @@ public:
|
|||||||
{
|
{
|
||||||
getContainer()->addChild(m_controlsWidget.get());
|
getContainer()->addChild(m_controlsWidget.get());
|
||||||
|
|
||||||
m_reloadButton->Click.connect(&ConvolutionMatrixWindow::onReloadStock, this);
|
m_reloadButton->Click.connect([this]{ onReloadStock(); });
|
||||||
m_stockListBox->Change.connect(base::Bind<void>(&ConvolutionMatrixWindow::onMatrixChange, this));
|
m_stockListBox->Change.connect([this]{ onMatrixChange(); });
|
||||||
|
|
||||||
fillStockListBox();
|
fillStockListBox();
|
||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void onReloadStock(Event& ev) {
|
void onReloadStock() {
|
||||||
m_stock.reloadStock();
|
m_stock.reloadStock();
|
||||||
fillStockListBox();
|
fillStockListBox();
|
||||||
}
|
}
|
||||||
|
@ -22,7 +22,6 @@
|
|||||||
#include "app/ui/button_set.h"
|
#include "app/ui/button_set.h"
|
||||||
#include "app/ui/color_button.h"
|
#include "app/ui/color_button.h"
|
||||||
#include "app/ui/color_sliders.h"
|
#include "app/ui/color_sliders.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "doc/image.h"
|
#include "doc/image.h"
|
||||||
#include "doc/mask.h"
|
#include "doc/mask.h"
|
||||||
#include "doc/sprite.h"
|
#include "doc/sprite.h"
|
||||||
@ -75,11 +74,11 @@ public:
|
|||||||
m_colorType.addItem("HSV+")->setFocusStop(false);
|
m_colorType.addItem("HSV+")->setFocusStop(false);
|
||||||
m_colorType.addItem("HSL+")->setFocusStop(false);
|
m_colorType.addItem("HSL+")->setFocusStop(false);
|
||||||
m_colorType.setSelectedItem(int(mode));
|
m_colorType.setSelectedItem(int(mode));
|
||||||
m_colorType.ItemChange.connect(base::Bind<void>(&HueSaturationWindow::onChangeMode, this));
|
m_colorType.ItemChange.connect([this]{ onChangeMode(); });
|
||||||
|
|
||||||
m_sliders.setColorType(app::Color::HslType);
|
m_sliders.setColorType(app::Color::HslType);
|
||||||
m_sliders.setMode(ColorSliders::Mode::Relative);
|
m_sliders.setMode(ColorSliders::Mode::Relative);
|
||||||
m_sliders.ColorChange.connect(base::Bind<void>(&HueSaturationWindow::onChangeControls, this));
|
m_sliders.ColorChange.connect([this]{ onChangeControls(); });
|
||||||
|
|
||||||
onChangeMode();
|
onChangeMode();
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
// Copyright (C) 2019 Igara Studio S.A.
|
// Copyright (C) 2019-2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2017 David Capello
|
// Copyright (C) 2001-2017 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -19,7 +19,6 @@
|
|||||||
#include "app/ini_file.h"
|
#include "app/ini_file.h"
|
||||||
#include "app/modules/gui.h"
|
#include "app/modules/gui.h"
|
||||||
#include "app/ui/color_button.h"
|
#include "app/ui/color_button.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "doc/image.h"
|
#include "doc/image.h"
|
||||||
#include "doc/mask.h"
|
#include "doc/mask.h"
|
||||||
#include "doc/sprite.h"
|
#include "doc/sprite.h"
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
// Copyright (C) 2019 Igara Studio S.A.
|
// Copyright (C) 2019-2020 Igara Studio S.A.
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
// the End-User License Agreement for Aseprite.
|
// the End-User License Agreement for Aseprite.
|
||||||
@ -22,7 +22,6 @@
|
|||||||
#include "app/ui/color_bar.h"
|
#include "app/ui/color_bar.h"
|
||||||
#include "app/ui/color_button.h"
|
#include "app/ui/color_button.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "doc/image.h"
|
#include "doc/image.h"
|
||||||
#include "doc/mask.h"
|
#include "doc/mask.h"
|
||||||
#include "doc/sprite.h"
|
#include "doc/sprite.h"
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
// Copyright (C) 2019 Igara Studio S.A.
|
// Copyright (C) 2019-2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2018 David Capello
|
// Copyright (C) 2001-2018 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -30,7 +30,6 @@
|
|||||||
#include "app/ui/color_button.h"
|
#include "app/ui/color_button.h"
|
||||||
#include "app/ui/keyboard_shortcuts.h"
|
#include "app/ui/keyboard_shortcuts.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "doc/image.h"
|
#include "doc/image.h"
|
||||||
#include "doc/mask.h"
|
#include "doc/mask.h"
|
||||||
#include "doc/sprite.h"
|
#include "doc/sprite.h"
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
// Copyright (C) 2019 Igara Studio S.A.
|
// Copyright (C) 2019-2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2018 David Capello
|
// Copyright (C) 2001-2018 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -15,7 +15,6 @@
|
|||||||
#include "app/modules/gfx.h"
|
#include "app/modules/gfx.h"
|
||||||
#include "app/modules/gui.h"
|
#include "app/modules/gui.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "doc/image.h"
|
#include "doc/image.h"
|
||||||
#include "ui/box.h"
|
#include "ui/box.h"
|
||||||
#include "ui/button.h"
|
#include "ui/button.h"
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
|
// Copyright (C) 2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2018 David Capello
|
// Copyright (C) 2001-2018 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -17,7 +18,6 @@
|
|||||||
#include "app/modules/gui.h"
|
#include "app/modules/gui.h"
|
||||||
#include "app/pref/preferences.h"
|
#include "app/pref/preferences.h"
|
||||||
#include "app/ui/editor/editor.h"
|
#include "app/ui/editor/editor.h"
|
||||||
#include "base/bind.h"
|
|
||||||
|
|
||||||
namespace app {
|
namespace app {
|
||||||
|
|
||||||
@ -73,7 +73,7 @@ FilterWindow::FilterWindow(const char* title, const char* cfgSection,
|
|||||||
|
|
||||||
if (m_tiledCheck) {
|
if (m_tiledCheck) {
|
||||||
m_tiledCheck->setSelected(tiledMode != TiledMode::NONE);
|
m_tiledCheck->setSelected(tiledMode != TiledMode::NONE);
|
||||||
m_tiledCheck->Click.connect(base::Bind<void>(&FilterWindow::onTiledChange, this));
|
m_tiledCheck->Click.connect([this]{ onTiledChange(); });
|
||||||
|
|
||||||
m_vbox.addChild(m_tiledCheck);
|
m_vbox.addChild(m_tiledCheck);
|
||||||
}
|
}
|
||||||
|
@ -35,14 +35,13 @@ public:
|
|||||||
ConsoleWindow() : Window(Window::WithTitleBar, "Console"),
|
ConsoleWindow() : Window(Window::WithTitleBar, "Console"),
|
||||||
m_textbox("", WORDWRAP),
|
m_textbox("", WORDWRAP),
|
||||||
m_button("Cancel") {
|
m_button("Cancel") {
|
||||||
m_button.Click.connect(base::Bind<void>(&ConsoleWindow::closeWindow, this, &m_button));
|
m_button.Click.connect([this]{ closeWindow(&m_button); });
|
||||||
|
|
||||||
// When the window is closed, we clear the text
|
// When the window is closed, we clear the text
|
||||||
Close.connect(
|
Close.connect(
|
||||||
base::Bind<void>(
|
[this]{
|
||||||
[this] {
|
m_textbox.setText(std::string());
|
||||||
m_textbox.setText(std::string());
|
});
|
||||||
}));
|
|
||||||
|
|
||||||
m_view.attachToView(&m_textbox);
|
m_view.attachToView(&m_textbox);
|
||||||
|
|
||||||
|
@ -26,7 +26,6 @@
|
|||||||
#include "app/doc_access.h"
|
#include "app/doc_access.h"
|
||||||
#include "app/doc_diff.h"
|
#include "app/doc_diff.h"
|
||||||
#include "app/pref/preferences.h"
|
#include "app/pref/preferences.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/chrono.h"
|
#include "base/chrono.h"
|
||||||
#include "base/remove_from_container.h"
|
#include "base/remove_from_container.h"
|
||||||
#include "ui/system.h"
|
#include "ui/system.h"
|
||||||
@ -63,7 +62,7 @@ BackupObserver::BackupObserver(RecoveryConfig* config,
|
|||||||
, m_session(session)
|
, m_session(session)
|
||||||
, m_ctx(ctx)
|
, m_ctx(ctx)
|
||||||
, m_done(false)
|
, m_done(false)
|
||||||
, m_thread(base::Bind<void>(&BackupObserver::backgroundThread, this))
|
, m_thread([this]{ backgroundThread(); })
|
||||||
{
|
{
|
||||||
m_ctx->add_observer(this);
|
m_ctx->add_observer(this);
|
||||||
m_ctx->documents().add_observer(this);
|
m_ctx->documents().add_observer(this);
|
||||||
|
@ -20,7 +20,6 @@
|
|||||||
#include "app/doc_access.h"
|
#include "app/doc_access.h"
|
||||||
#include "app/file/file.h"
|
#include "app/file/file.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/convert_to.h"
|
#include "base/convert_to.h"
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
#include "base/fstream_path.h"
|
#include "base/fstream_path.h"
|
||||||
|
@ -20,7 +20,6 @@
|
|||||||
#include "app/file/webp_options.h"
|
#include "app/file/webp_options.h"
|
||||||
#include "app/ini_file.h"
|
#include "app/ini_file.h"
|
||||||
#include "app/pref/preferences.h"
|
#include "app/pref/preferences.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/clamp.h"
|
#include "base/clamp.h"
|
||||||
#include "base/convert_to.h"
|
#include "base/convert_to.h"
|
||||||
#include "base/file_handle.h"
|
#include "base/file_handle.h"
|
||||||
@ -421,7 +420,7 @@ FormatOptionsPtr WebPFormat::onAskUserForFormatOptions(FileOp* fop)
|
|||||||
win.imagePreset()->setSelectedItemIndex(opts->imagePreset());
|
win.imagePreset()->setSelectedItemIndex(opts->imagePreset());
|
||||||
|
|
||||||
updatePanels();
|
updatePanels();
|
||||||
win.type()->Change.connect(base::Bind<void>(updatePanels));
|
win.type()->Change.connect(updatePanels);
|
||||||
|
|
||||||
win.openWindowInForeground();
|
win.openWindowInForeground();
|
||||||
|
|
||||||
|
@ -11,7 +11,6 @@
|
|||||||
|
|
||||||
#include "app/res/http_loader.h"
|
#include "app/res/http_loader.h"
|
||||||
|
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
#include "base/fstream_path.h"
|
#include "base/fstream_path.h"
|
||||||
#include "base/replace_string.h"
|
#include "base/replace_string.h"
|
||||||
@ -29,7 +28,7 @@ HttpLoader::HttpLoader(const std::string& url)
|
|||||||
: m_url(url)
|
: m_url(url)
|
||||||
, m_done(false)
|
, m_done(false)
|
||||||
, m_request(nullptr)
|
, m_request(nullptr)
|
||||||
, m_thread(base::Bind<void>(&HttpLoader::threadHttpRequest, this))
|
, m_thread([this]{ threadHttpRequest(); })
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
// Copyright (C) 2019 Igara Studio S.A.
|
// Copyright (C) 2019-2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2017 David Capello
|
// Copyright (C) 2001-2017 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -17,7 +17,6 @@
|
|||||||
#include "app/file_system.h"
|
#include "app/file_system.h"
|
||||||
#include "app/res/palette_resource.h"
|
#include "app/res/palette_resource.h"
|
||||||
#include "app/resource_finder.h"
|
#include "app/resource_finder.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
#include "base/scoped_value.h"
|
#include "base/scoped_value.h"
|
||||||
#include "doc/palette.h"
|
#include "doc/palette.h"
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
|
// Copyright (C) 2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2018 David Capello
|
// Copyright (C) 2001-2018 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -14,7 +15,6 @@
|
|||||||
#include "app/res/resource.h"
|
#include "app/res/resource.h"
|
||||||
#include "app/res/resources_loader_delegate.h"
|
#include "app/res/resources_loader_delegate.h"
|
||||||
#include "app/resource_finder.h"
|
#include "app/resource_finder.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
#include "base/scoped_value.h"
|
#include "base/scoped_value.h"
|
||||||
|
|
||||||
@ -24,9 +24,7 @@ ResourcesLoader::ResourcesLoader(ResourcesLoaderDelegate* delegate)
|
|||||||
: m_delegate(delegate)
|
: m_delegate(delegate)
|
||||||
, m_done(false)
|
, m_done(false)
|
||||||
, m_cancel(false)
|
, m_cancel(false)
|
||||||
, m_thread(
|
, m_thread(new base::thread([this]{ threadLoadResources(); }))
|
||||||
new base::thread(
|
|
||||||
base::Bind<void>(&ResourcesLoader::threadLoadResources, this)))
|
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -87,8 +85,7 @@ void ResourcesLoader::threadLoadResources()
|
|||||||
|
|
||||||
base::thread* ResourcesLoader::createThread()
|
base::thread* ResourcesLoader::createThread()
|
||||||
{
|
{
|
||||||
return new base::thread(
|
return new base::thread([this]{ threadLoadResources(); });
|
||||||
base::Bind<void>(&ResourcesLoader::threadLoadResources, this));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace app
|
} // namespace app
|
||||||
|
@ -19,7 +19,6 @@
|
|||||||
#include "app/ui/color_shades.h"
|
#include "app/ui/color_shades.h"
|
||||||
#include "app/ui/expr_entry.h"
|
#include "app/ui/expr_entry.h"
|
||||||
#include "app/ui/filename_field.h"
|
#include "app/ui/filename_field.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/paths.h"
|
#include "base/paths.h"
|
||||||
#include "base/remove_from_container.h"
|
#include "base/remove_from_container.h"
|
||||||
#include "ui/box.h"
|
#include "ui/box.h"
|
||||||
|
@ -16,7 +16,6 @@
|
|||||||
#include "app/i18n/strings.h"
|
#include "app/i18n/strings.h"
|
||||||
#include "app/resource_finder.h"
|
#include "app/resource_finder.h"
|
||||||
#include "app/task.h"
|
#include "app/task.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
#include "base/launcher.h"
|
#include "base/launcher.h"
|
||||||
#include "fmt/format.h"
|
#include "fmt/format.h"
|
||||||
@ -139,7 +138,7 @@ void SendCrash::notificationClick()
|
|||||||
if (isDev) {
|
if (isDev) {
|
||||||
dlg.official()->setVisible(false);
|
dlg.official()->setVisible(false);
|
||||||
dlg.devFilename()->setText(m_dumpFilename);
|
dlg.devFilename()->setText(m_dumpFilename);
|
||||||
dlg.devFilename()->Click.connect(base::Bind(&SendCrash::onClickDevFilename, this));
|
dlg.devFilename()->Click.connect([this]{ onClickDevFilename(); });
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
#endif // On other platforms the crash file might be useful even in
|
#endif // On other platforms the crash file might be useful even in
|
||||||
@ -148,7 +147,7 @@ void SendCrash::notificationClick()
|
|||||||
{
|
{
|
||||||
dlg.dev()->setVisible(false);
|
dlg.dev()->setVisible(false);
|
||||||
dlg.filename()->setText(m_dumpFilename);
|
dlg.filename()->setText(m_dumpFilename);
|
||||||
dlg.filename()->Click.connect(base::Bind(&SendCrash::onClickFilename, this));
|
dlg.filename()->Click.connect([this]{ onClickFilename(); });
|
||||||
}
|
}
|
||||||
|
|
||||||
dlg.openWindowInForeground();
|
dlg.openWindowInForeground();
|
||||||
|
@ -17,7 +17,6 @@
|
|||||||
#include "app/file/file.h"
|
#include "app/file/file.h"
|
||||||
#include "app/file_system.h"
|
#include "app/file_system.h"
|
||||||
#include "app/util/conversion_to_surface.h"
|
#include "app/util/conversion_to_surface.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/clamp.h"
|
#include "base/clamp.h"
|
||||||
#include "base/scoped_lock.h"
|
#include "base/scoped_lock.h"
|
||||||
#include "base/thread.h"
|
#include "base/thread.h"
|
||||||
@ -46,7 +45,7 @@ public:
|
|||||||
: m_queue(queue)
|
: m_queue(queue)
|
||||||
, m_fop(nullptr)
|
, m_fop(nullptr)
|
||||||
, m_isDone(false)
|
, m_isDone(false)
|
||||||
, m_thread(base::Bind<void>(&Worker::loadBgThread, this)) {
|
, m_thread([this]{ loadBgThread(); }) {
|
||||||
}
|
}
|
||||||
|
|
||||||
~Worker() {
|
~Worker() {
|
||||||
@ -226,7 +225,7 @@ ThumbnailGenerator* ThumbnailGenerator::instance()
|
|||||||
static ThumbnailGenerator* singleton = nullptr;
|
static ThumbnailGenerator* singleton = nullptr;
|
||||||
if (singleton == NULL) {
|
if (singleton == NULL) {
|
||||||
singleton = new ThumbnailGenerator();
|
singleton = new ThumbnailGenerator();
|
||||||
App::instance()->Exit.connect(base::Bind<void>(&delete_singleton, singleton));
|
App::instance()->Exit.connect([&]{ delete_singleton(singleton); });
|
||||||
}
|
}
|
||||||
return singleton;
|
return singleton;
|
||||||
}
|
}
|
||||||
|
@ -20,7 +20,6 @@
|
|||||||
#include "app/tools/stroke.h"
|
#include "app/tools/stroke.h"
|
||||||
#include "app/tools/tool_group.h"
|
#include "app/tools/tool_group.h"
|
||||||
#include "app/tools/tool_loop.h"
|
#include "app/tools/tool_loop.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/exception.h"
|
#include "base/exception.h"
|
||||||
#include "doc/algo.h"
|
#include "doc/algo.h"
|
||||||
#include "doc/algorithm/floodfill.h"
|
#include "doc/algorithm/floodfill.h"
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
|
// Copyright (C) 2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2016 David Capello
|
// Copyright (C) 2001-2016 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -11,7 +12,6 @@
|
|||||||
#include "app/ui/backup_indicator.h"
|
#include "app/ui/backup_indicator.h"
|
||||||
|
|
||||||
#include "app/ui/status_bar.h"
|
#include "app/ui/status_bar.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "ui/manager.h"
|
#include "ui/manager.h"
|
||||||
|
|
||||||
namespace app {
|
namespace app {
|
||||||
@ -21,7 +21,7 @@ BackupIndicator::BackupIndicator()
|
|||||||
, m_small(false)
|
, m_small(false)
|
||||||
, m_running(false)
|
, m_running(false)
|
||||||
{
|
{
|
||||||
m_timer.Tick.connect(base::Bind<void>(&BackupIndicator::onTick, this));
|
m_timer.Tick.connect([this]{ onTick(); });
|
||||||
}
|
}
|
||||||
|
|
||||||
BackupIndicator::~BackupIndicator()
|
BackupIndicator::~BackupIndicator()
|
||||||
|
@ -27,7 +27,6 @@
|
|||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "app/util/conversion_to_surface.h"
|
#include "app/util/conversion_to_surface.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/convert_to.h"
|
#include "base/convert_to.h"
|
||||||
#include "doc/brush.h"
|
#include "doc/brush.h"
|
||||||
#include "doc/image.h"
|
#include "doc/image.h"
|
||||||
|
@ -13,7 +13,6 @@
|
|||||||
|
|
||||||
#include "app/modules/gui.h"
|
#include "app/modules/gui.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "gfx/color.h"
|
#include "gfx/color.h"
|
||||||
#include "os/surface.h"
|
#include "os/surface.h"
|
||||||
#include "ui/box.h"
|
#include "ui/box.h"
|
||||||
|
@ -50,7 +50,6 @@
|
|||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "app/util/clipboard.h"
|
#include "app/util/clipboard.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/clamp.h"
|
#include "base/clamp.h"
|
||||||
#include "base/scoped_value.h"
|
#include "base/scoped_value.h"
|
||||||
#include "doc/cel.h"
|
#include "doc/cel.h"
|
||||||
@ -200,14 +199,14 @@ ColorBar::ColorBar(int align, TooltipManager* tooltipManager)
|
|||||||
m_fgColor.setExpansive(true);
|
m_fgColor.setExpansive(true);
|
||||||
m_bgColor.setExpansive(true);
|
m_bgColor.setExpansive(true);
|
||||||
|
|
||||||
m_remapButton.Click.connect(base::Bind<void>(&ColorBar::onRemapButtonClick, this));
|
m_remapButton.Click.connect([this]{ onRemapButtonClick(); });
|
||||||
m_fgColor.Change.connect(&ColorBar::onFgColorButtonChange, this);
|
m_fgColor.Change.connect(&ColorBar::onFgColorButtonChange, this);
|
||||||
m_fgColor.BeforeChange.connect(&ColorBar::onFgColorButtonBeforeChange, this);
|
m_fgColor.BeforeChange.connect(&ColorBar::onFgColorButtonBeforeChange, this);
|
||||||
m_bgColor.Change.connect(&ColorBar::onBgColorButtonChange, this);
|
m_bgColor.Change.connect(&ColorBar::onBgColorButtonChange, this);
|
||||||
m_fgWarningIcon->Click.connect(base::Bind<void>(&ColorBar::onFixWarningClick, this, &m_fgColor, m_fgWarningIcon));
|
m_fgWarningIcon->Click.connect([this]{ onFixWarningClick(&m_fgColor, m_fgWarningIcon); });
|
||||||
m_bgWarningIcon->Click.connect(base::Bind<void>(&ColorBar::onFixWarningClick, this, &m_bgColor, m_bgWarningIcon));
|
m_bgWarningIcon->Click.connect([this]{ onFixWarningClick(&m_bgColor, m_bgWarningIcon); });
|
||||||
m_redrawTimer.Tick.connect(base::Bind<void>(&ColorBar::onTimerTick, this));
|
m_redrawTimer.Tick.connect([this]{ onTimerTick(); });
|
||||||
m_buttons.ItemChange.connect(base::Bind<void>(&ColorBar::onPaletteButtonClick, this));
|
m_buttons.ItemChange.connect([this]{ onPaletteButtonClick(); });
|
||||||
|
|
||||||
tooltipManager->addTooltipFor(&m_fgColor, "Foreground color", LEFT);
|
tooltipManager->addTooltipFor(&m_fgColor, "Foreground color", LEFT);
|
||||||
tooltipManager->addTooltipFor(&m_bgColor, "Background color", LEFT);
|
tooltipManager->addTooltipFor(&m_bgColor, "Background color", LEFT);
|
||||||
@ -270,13 +269,13 @@ ColorBar::ColorBar(int align, TooltipManager* tooltipManager)
|
|||||||
UIContext::instance()->add_observer(this);
|
UIContext::instance()->add_observer(this);
|
||||||
m_beforeCmdConn = UIContext::instance()->BeforeCommandExecution.connect(&ColorBar::onBeforeExecuteCommand, this);
|
m_beforeCmdConn = UIContext::instance()->BeforeCommandExecution.connect(&ColorBar::onBeforeExecuteCommand, this);
|
||||||
m_afterCmdConn = UIContext::instance()->AfterCommandExecution.connect(&ColorBar::onAfterExecuteCommand, this);
|
m_afterCmdConn = UIContext::instance()->AfterCommandExecution.connect(&ColorBar::onAfterExecuteCommand, this);
|
||||||
m_fgConn = Preferences::instance().colorBar.fgColor.AfterChange.connect(base::Bind<void>(&ColorBar::onFgColorChangeFromPreferences, this));
|
m_fgConn = Preferences::instance().colorBar.fgColor.AfterChange.connect([this]{ onFgColorChangeFromPreferences(); });
|
||||||
m_bgConn = Preferences::instance().colorBar.bgColor.AfterChange.connect(base::Bind<void>(&ColorBar::onBgColorChangeFromPreferences, this));
|
m_bgConn = Preferences::instance().colorBar.bgColor.AfterChange.connect([this]{ onBgColorChangeFromPreferences(); });
|
||||||
m_sepConn = Preferences::instance().colorBar.entriesSeparator.AfterChange.connect(base::Bind<void>(&ColorBar::invalidate, this));
|
m_sepConn = Preferences::instance().colorBar.entriesSeparator.AfterChange.connect([this]{ invalidate(); });
|
||||||
m_paletteView.FocusOrClick.connect(&ColorBar::onFocusPaletteView, this);
|
m_paletteView.FocusOrClick.connect(&ColorBar::onFocusPaletteView, this);
|
||||||
m_appPalChangeConn = App::instance()->PaletteChange.connect(&ColorBar::onAppPaletteChange, this);
|
m_appPalChangeConn = App::instance()->PaletteChange.connect(&ColorBar::onAppPaletteChange, this);
|
||||||
KeyboardShortcuts::instance()->UserChange.connect(
|
KeyboardShortcuts::instance()->UserChange.connect(
|
||||||
base::Bind<void>(&ColorBar::setupTooltips, this, tooltipManager));
|
[this, tooltipManager]{ setupTooltips(tooltipManager); });
|
||||||
|
|
||||||
setEditMode(false);
|
setEditMode(false);
|
||||||
registerCommands();
|
registerCommands();
|
||||||
@ -1279,18 +1278,18 @@ void ColorBar::showPaletteSortOptions()
|
|||||||
if (m_ascending) asc.setSelected(true);
|
if (m_ascending) asc.setSelected(true);
|
||||||
else des.setSelected(true);
|
else des.setSelected(true);
|
||||||
|
|
||||||
rev.Click.connect(base::Bind<void>(&ColorBar::onReverseColors, this));
|
rev.Click.connect([this]{ onReverseColors(); });
|
||||||
grd.Click.connect(base::Bind<void>(&ColorBar::onGradient, this));
|
grd.Click.connect([this]{ onGradient(); });
|
||||||
hue.Click.connect(base::Bind<void>(&ColorBar::onSortBy, this, SortPaletteBy::HUE));
|
hue.Click.connect([this]{ onSortBy(SortPaletteBy::HUE); });
|
||||||
sat.Click.connect(base::Bind<void>(&ColorBar::onSortBy, this, SortPaletteBy::SATURATION));
|
sat.Click.connect([this]{ onSortBy(SortPaletteBy::SATURATION); });
|
||||||
bri.Click.connect(base::Bind<void>(&ColorBar::onSortBy, this, SortPaletteBy::VALUE));
|
bri.Click.connect([this]{ onSortBy(SortPaletteBy::VALUE); });
|
||||||
lum.Click.connect(base::Bind<void>(&ColorBar::onSortBy, this, SortPaletteBy::LUMA));
|
lum.Click.connect([this]{ onSortBy(SortPaletteBy::LUMA); });
|
||||||
red.Click.connect(base::Bind<void>(&ColorBar::onSortBy, this, SortPaletteBy::RED));
|
red.Click.connect([this]{ onSortBy(SortPaletteBy::RED); });
|
||||||
grn.Click.connect(base::Bind<void>(&ColorBar::onSortBy, this, SortPaletteBy::GREEN));
|
grn.Click.connect([this]{ onSortBy(SortPaletteBy::GREEN); });
|
||||||
blu.Click.connect(base::Bind<void>(&ColorBar::onSortBy, this, SortPaletteBy::BLUE));
|
blu.Click.connect([this]{ onSortBy(SortPaletteBy::BLUE); });
|
||||||
alp.Click.connect(base::Bind<void>(&ColorBar::onSortBy, this, SortPaletteBy::ALPHA));
|
alp.Click.connect([this]{ onSortBy(SortPaletteBy::ALPHA); });
|
||||||
asc.Click.connect(base::Bind<void>(&ColorBar::setAscending, this, true));
|
asc.Click.connect([this]{ setAscending(true); });
|
||||||
des.Click.connect(base::Bind<void>(&ColorBar::setAscending, this, false));
|
des.Click.connect([this]{ setAscending(false); });
|
||||||
|
|
||||||
menu.showPopup(gfx::Point(bounds.x, bounds.y+bounds.h));
|
menu.showPopup(gfx::Point(bounds.x, bounds.y+bounds.h));
|
||||||
}
|
}
|
||||||
|
@ -28,7 +28,6 @@
|
|||||||
#include "app/ui/palette_view.h"
|
#include "app/ui/palette_view.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/scoped_value.h"
|
#include "base/scoped_value.h"
|
||||||
#include "doc/image_impl.h"
|
#include "doc/image_impl.h"
|
||||||
#include "doc/palette.h"
|
#include "doc/palette.h"
|
||||||
@ -251,7 +250,7 @@ ColorPopup::ColorPopup(const ColorButtonOptions& options)
|
|||||||
m_vbox.addChild(&m_maskLabel);
|
m_vbox.addChild(&m_maskLabel);
|
||||||
addChild(&m_vbox);
|
addChild(&m_vbox);
|
||||||
|
|
||||||
m_colorType.ItemChange.connect(base::Bind<void>(&ColorPopup::onColorTypeClick, this));
|
m_colorType.ItemChange.connect([this]{ onColorTypeClick(); });
|
||||||
|
|
||||||
m_sliders.ColorChange.connect(&ColorPopup::onColorSlidersChange, this);
|
m_sliders.ColorChange.connect(&ColorPopup::onColorSlidersChange, this);
|
||||||
m_hexColorEntry.ColorChange.connect(&ColorPopup::onColorHexEntryChange, this);
|
m_hexColorEntry.ColorChange.connect(&ColorPopup::onColorHexEntryChange, this);
|
||||||
|
@ -17,7 +17,6 @@
|
|||||||
#include "app/shade.h"
|
#include "app/shade.h"
|
||||||
#include "app/ui/color_bar.h"
|
#include "app/ui/color_bar.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/clamp.h"
|
#include "base/clamp.h"
|
||||||
#include "doc/color_mode.h"
|
#include "doc/color_mode.h"
|
||||||
#include "doc/palette.h"
|
#include "doc/palette.h"
|
||||||
|
@ -16,7 +16,6 @@
|
|||||||
#include "app/ui/color_sliders.h"
|
#include "app/ui/color_sliders.h"
|
||||||
#include "app/ui/skin/skin_slider_property.h"
|
#include "app/ui/skin/skin_slider_property.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/scoped_value.h"
|
#include "base/scoped_value.h"
|
||||||
#include "gfx/hsl.h"
|
#include "gfx/hsl.h"
|
||||||
#include "gfx/rgb.h"
|
#include "gfx/rgb.h"
|
||||||
@ -375,9 +374,9 @@ void ColorSliders::addSlider(const Channel channel,
|
|||||||
item.absSlider->setDoubleBuffered(true);
|
item.absSlider->setDoubleBuffered(true);
|
||||||
get_skin_property(item.entry)->setLook(MiniLook);
|
get_skin_property(item.entry)->setLook(MiniLook);
|
||||||
|
|
||||||
item.absSlider->Change.connect(base::Bind<void>(&ColorSliders::onSliderChange, this, channel));
|
item.absSlider->Change.connect([this, channel]{ onSliderChange(channel); });
|
||||||
item.relSlider->Change.connect(base::Bind<void>(&ColorSliders::onSliderChange, this, channel));
|
item.relSlider->Change.connect([this, channel]{ onSliderChange(channel); });
|
||||||
item.entry->Change.connect(base::Bind<void>(&ColorSliders::onEntryChange, this, channel));
|
item.entry->Change.connect([this, channel]{ onEntryChange(channel); });
|
||||||
|
|
||||||
item.box->addChild(item.absSlider);
|
item.box->addChild(item.absSlider);
|
||||||
item.box->addChild(item.relSlider);
|
item.box->addChild(item.relSlider);
|
||||||
|
@ -15,7 +15,6 @@
|
|||||||
#include "app/pref/preferences.h"
|
#include "app/pref/preferences.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "app/ui/status_bar.h"
|
#include "app/ui/status_bar.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/clamp.h"
|
#include "base/clamp.h"
|
||||||
#include "base/pi.h"
|
#include "base/pi.h"
|
||||||
#include "filters/color_curve.h"
|
#include "filters/color_curve.h"
|
||||||
@ -56,7 +55,7 @@ ColorWheel::ColorWheel()
|
|||||||
, m_options("")
|
, m_options("")
|
||||||
, m_harmonyPicked(false)
|
, m_harmonyPicked(false)
|
||||||
{
|
{
|
||||||
m_options.Click.connect(base::Bind<void>(&ColorWheel::onOptions, this));
|
m_options.Click.connect([this]{ onOptions(); });
|
||||||
addChild(&m_options);
|
addChild(&m_options);
|
||||||
|
|
||||||
InitTheme.connect(
|
InitTheme.connect(
|
||||||
@ -389,7 +388,7 @@ void ColorWheel::onOptions()
|
|||||||
|
|
||||||
if (isDiscrete())
|
if (isDiscrete())
|
||||||
discrete.setSelected(true);
|
discrete.setSelected(true);
|
||||||
discrete.Click.connect(base::Bind<void>(&ColorWheel::setDiscrete, this, !isDiscrete()));
|
discrete.Click.connect([this]{ setDiscrete(!isDiscrete()); });
|
||||||
|
|
||||||
if (m_colorModel != ColorModel::NORMAL_MAP) {
|
if (m_colorModel != ColorModel::NORMAL_MAP) {
|
||||||
switch (m_harmony) {
|
switch (m_harmony) {
|
||||||
@ -402,14 +401,14 @@ void ColorWheel::onOptions()
|
|||||||
case Harmony::TETRADIC: tetradic.setSelected(true); break;
|
case Harmony::TETRADIC: tetradic.setSelected(true); break;
|
||||||
case Harmony::SQUARE: square.setSelected(true); break;
|
case Harmony::SQUARE: square.setSelected(true); break;
|
||||||
}
|
}
|
||||||
none.Click.connect(base::Bind<void>(&ColorWheel::setHarmony, this, Harmony::NONE));
|
none.Click.connect([this]{ setHarmony(Harmony::NONE); });
|
||||||
complementary.Click.connect(base::Bind<void>(&ColorWheel::setHarmony, this, Harmony::COMPLEMENTARY));
|
complementary.Click.connect([this]{ setHarmony(Harmony::COMPLEMENTARY); });
|
||||||
monochromatic.Click.connect(base::Bind<void>(&ColorWheel::setHarmony, this, Harmony::MONOCHROMATIC));
|
monochromatic.Click.connect([this]{ setHarmony(Harmony::MONOCHROMATIC); });
|
||||||
analogous.Click.connect(base::Bind<void>(&ColorWheel::setHarmony, this, Harmony::ANALOGOUS));
|
analogous.Click.connect([this]{ setHarmony(Harmony::ANALOGOUS); });
|
||||||
split.Click.connect(base::Bind<void>(&ColorWheel::setHarmony, this, Harmony::SPLIT));
|
split.Click.connect([this]{ setHarmony(Harmony::SPLIT); });
|
||||||
triadic.Click.connect(base::Bind<void>(&ColorWheel::setHarmony, this, Harmony::TRIADIC));
|
triadic.Click.connect([this]{ setHarmony(Harmony::TRIADIC); });
|
||||||
tetradic.Click.connect(base::Bind<void>(&ColorWheel::setHarmony, this, Harmony::TETRADIC));
|
tetradic.Click.connect([this]{ setHarmony(Harmony::TETRADIC); });
|
||||||
square.Click.connect(base::Bind<void>(&ColorWheel::setHarmony, this, Harmony::SQUARE));
|
square.Click.connect([this]{ setHarmony(Harmony::SQUARE); });
|
||||||
}
|
}
|
||||||
|
|
||||||
gfx::Rect rc = m_options.bounds();
|
gfx::Rect rc = m_options.bounds();
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
|
// Copyright (C) 2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2018 David Capello
|
// Copyright (C) 2001-2018 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -22,7 +23,6 @@
|
|||||||
#include "app/ui/main_window.h"
|
#include "app/ui/main_window.h"
|
||||||
#include "app/ui/timeline/timeline.h"
|
#include "app/ui/timeline/timeline.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/scoped_value.h"
|
#include "base/scoped_value.h"
|
||||||
#include "ui/box.h"
|
#include "ui/box.h"
|
||||||
#include "ui/button.h"
|
#include "ui/button.h"
|
||||||
@ -53,22 +53,22 @@ ConfigureTimelinePopup::ConfigureTimelinePopup()
|
|||||||
m_box = new app::gen::TimelineConf();
|
m_box = new app::gen::TimelineConf();
|
||||||
addChild(m_box);
|
addChild(m_box);
|
||||||
|
|
||||||
m_box->position()->ItemChange.connect(base::Bind<void>(&ConfigureTimelinePopup::onChangePosition, this));
|
m_box->position()->ItemChange.connect([this]{ onChangePosition(); });
|
||||||
m_box->firstFrame()->Change.connect(base::Bind<void>(&ConfigureTimelinePopup::onChangeFirstFrame, this));
|
m_box->firstFrame()->Change.connect([this]{ onChangeFirstFrame(); });
|
||||||
m_box->merge()->Click.connect(base::Bind<void>(&ConfigureTimelinePopup::onChangeType, this));
|
m_box->merge()->Click.connect([this]{ onChangeType(); });
|
||||||
m_box->tint()->Click.connect(base::Bind<void>(&ConfigureTimelinePopup::onChangeType, this));
|
m_box->tint()->Click.connect([this]{ onChangeType(); });
|
||||||
m_box->opacity()->Change.connect(base::Bind<void>(&ConfigureTimelinePopup::onOpacity, this));
|
m_box->opacity()->Change.connect([this]{ onOpacity(); });
|
||||||
m_box->opacityStep()->Change.connect(base::Bind<void>(&ConfigureTimelinePopup::onOpacityStep, this));
|
m_box->opacityStep()->Change.connect([this]{ onOpacityStep(); });
|
||||||
m_box->resetOnionskin()->Click.connect(base::Bind<void>(&ConfigureTimelinePopup::onResetOnionskin, this));
|
m_box->resetOnionskin()->Click.connect([this]{ onResetOnionskin(); });
|
||||||
m_box->loopTag()->Click.connect(base::Bind<void>(&ConfigureTimelinePopup::onLoopTagChange, this));
|
m_box->loopTag()->Click.connect([this]{ onLoopTagChange(); });
|
||||||
m_box->currentLayer()->Click.connect(base::Bind<void>(&ConfigureTimelinePopup::onCurrentLayerChange, this));
|
m_box->currentLayer()->Click.connect([this]{ onCurrentLayerChange(); });
|
||||||
m_box->behind()->Click.connect(base::Bind<void>(&ConfigureTimelinePopup::onPositionChange, this));
|
m_box->behind()->Click.connect([this]{ onPositionChange(); });
|
||||||
m_box->infront()->Click.connect(base::Bind<void>(&ConfigureTimelinePopup::onPositionChange, this));
|
m_box->infront()->Click.connect([this]{ onPositionChange(); });
|
||||||
|
|
||||||
m_box->zoom()->Change.connect(base::Bind<void>(&ConfigureTimelinePopup::onZoomChange, this));
|
m_box->zoom()->Change.connect([this]{ onZoomChange(); });
|
||||||
m_box->thumbEnabled()->Click.connect(base::Bind<void>(&ConfigureTimelinePopup::onThumbEnabledChange, this));
|
m_box->thumbEnabled()->Click.connect([this]{ onThumbEnabledChange(); });
|
||||||
m_box->thumbOverlayEnabled()->Click.connect(base::Bind<void>(&ConfigureTimelinePopup::onThumbOverlayEnabledChange, this));
|
m_box->thumbOverlayEnabled()->Click.connect([this]{ onThumbOverlayEnabledChange(); });
|
||||||
m_box->thumbOverlaySize()->Change.connect(base::Bind<void>(&ConfigureTimelinePopup::onThumbOverlaySizeChange, this));
|
m_box->thumbOverlaySize()->Change.connect([this]{ onThumbOverlaySizeChange(); });
|
||||||
|
|
||||||
const bool visibleThumb = docPref().thumbnails.enabled();
|
const bool visibleThumb = docPref().thumbnails.enabled();
|
||||||
m_box->thumbHSeparator()->setVisible(visibleThumb);
|
m_box->thumbHSeparator()->setVisible(visibleThumb);
|
||||||
|
@ -46,7 +46,6 @@
|
|||||||
#include "app/ui/selection_mode_field.h"
|
#include "app/ui/selection_mode_field.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/clamp.h"
|
#include "base/clamp.h"
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
#include "base/scoped_value.h"
|
#include "base/scoped_value.h"
|
||||||
@ -520,10 +519,10 @@ public:
|
|||||||
m_shade.setText("Select colors in the palette");
|
m_shade.setText("Select colors in the palette");
|
||||||
m_shade.setMinColors(2);
|
m_shade.setMinColors(2);
|
||||||
m_conn = colorBar->ChangeSelection.connect(
|
m_conn = colorBar->ChangeSelection.connect(
|
||||||
base::Bind<void>(&InkShadesField::onChangeColorBarSelection, this));
|
[this]{ onChangeColorBarSelection(); });
|
||||||
|
|
||||||
m_button.setFocusStop(false);
|
m_button.setFocusStop(false);
|
||||||
m_button.Click.connect(base::Bind<void>(&InkShadesField::onShowMenu, this));
|
m_button.Click.connect([this]{ onShowMenu(); });
|
||||||
|
|
||||||
initTheme();
|
initTheme();
|
||||||
}
|
}
|
||||||
@ -582,8 +581,8 @@ private:
|
|||||||
bool hasShade = (m_shade.size() >= 2);
|
bool hasShade = (m_shade.size() >= 2);
|
||||||
reverse.setEnabled(hasShade);
|
reverse.setEnabled(hasShade);
|
||||||
save.setEnabled(hasShade);
|
save.setEnabled(hasShade);
|
||||||
reverse.Click.connect(base::Bind<void>(&InkShadesField::reverseShadeColors, this));
|
reverse.Click.connect([this]{ reverseShadeColors(); });
|
||||||
save.Click.connect(base::Bind<void>(&InkShadesField::onSaveShade, this));
|
save.Click.connect([this]{ onSaveShade(); });
|
||||||
|
|
||||||
if (!m_shades.empty()) {
|
if (!m_shades.empty()) {
|
||||||
SkinTheme* theme = SkinTheme::instance();
|
SkinTheme* theme = SkinTheme::instance();
|
||||||
@ -607,11 +606,10 @@ private:
|
|||||||
});
|
});
|
||||||
close->initTheme();
|
close->initTheme();
|
||||||
close->Click.connect(
|
close->Click.connect(
|
||||||
base::Bind<void>(
|
[this, i, close]{
|
||||||
[this, i, close]{
|
m_shades.erase(m_shades.begin()+i);
|
||||||
m_shades.erase(m_shades.begin()+i);
|
close->closeWindow();
|
||||||
close->closeWindow();
|
});
|
||||||
}));
|
|
||||||
|
|
||||||
auto item = new HBox();
|
auto item = new HBox();
|
||||||
item->InitTheme.connect(
|
item->InitTheme.connect(
|
||||||
@ -770,11 +768,11 @@ public:
|
|||||||
sz.w += 2*guiscale();
|
sz.w += 2*guiscale();
|
||||||
m_icon.getItem(0)->setMinSize(sz);
|
m_icon.getItem(0)->setMinSize(sz);
|
||||||
|
|
||||||
m_icon.ItemChange.connect(base::Bind<void>(&TransparentColorField::onPopup, this));
|
m_icon.ItemChange.connect([this]{ onPopup(); });
|
||||||
m_maskColor.Change.connect(base::Bind<void>(&TransparentColorField::onChangeColor, this));
|
m_maskColor.Change.connect([this]{ onChangeColor(); });
|
||||||
|
|
||||||
Preferences::instance().selection.opaque.AfterChange.connect(
|
Preferences::instance().selection.opaque.AfterChange.connect(
|
||||||
base::Bind<void>(&TransparentColorField::onOpaqueChange, this));
|
[this]{ onOpaqueChange(); });
|
||||||
|
|
||||||
onOpaqueChange();
|
onOpaqueChange();
|
||||||
|
|
||||||
@ -803,9 +801,9 @@ private:
|
|||||||
masked.setSelected(true);
|
masked.setSelected(true);
|
||||||
automatic.setSelected(Preferences::instance().selection.autoOpaque());
|
automatic.setSelected(Preferences::instance().selection.autoOpaque());
|
||||||
|
|
||||||
opaque.Click.connect(base::Bind<void>(&TransparentColorField::setOpaque, this, true));
|
opaque.Click.connect([this]{ setOpaque(true); });
|
||||||
masked.Click.connect(base::Bind<void>(&TransparentColorField::setOpaque, this, false));
|
masked.Click.connect([this]{ setOpaque(false); });
|
||||||
automatic.Click.connect(base::Bind<void>(&TransparentColorField::onAutomatic, this));
|
automatic.Click.connect([this]{ onAutomatic(); });
|
||||||
|
|
||||||
menu.showPopup(gfx::Point(bounds.x, bounds.y+bounds.h));
|
menu.showPopup(gfx::Point(bounds.x, bounds.y+bounds.h));
|
||||||
}
|
}
|
||||||
@ -855,7 +853,7 @@ public:
|
|||||||
addItem(SkinTheme::instance()->parts.pivotCenter());
|
addItem(SkinTheme::instance()->parts.pivotCenter());
|
||||||
|
|
||||||
Preferences::instance().selection.pivotPosition.AfterChange.connect(
|
Preferences::instance().selection.pivotPosition.AfterChange.connect(
|
||||||
base::Bind<void>(&PivotField::onPivotChange, this));
|
[this]{ onPivotChange(); });
|
||||||
|
|
||||||
onPivotChange();
|
onPivotChange();
|
||||||
}
|
}
|
||||||
@ -1166,8 +1164,8 @@ public:
|
|||||||
addChild(new Label("Sample:"));
|
addChild(new Label("Sample:"));
|
||||||
addChild(&m_sample);
|
addChild(&m_sample);
|
||||||
|
|
||||||
m_channel.Change.connect(base::Bind<void>(&EyedropperField::onChannelChange, this));
|
m_channel.Change.connect([this]{ onChannelChange(); });
|
||||||
m_sample.Change.connect(base::Bind<void>(&EyedropperField::onSampleChange, this));
|
m_sample.Change.connect([this]{ onSampleChange(); });
|
||||||
}
|
}
|
||||||
|
|
||||||
void updateFromPreferences(app::Preferences::Eyedropper& prefEyedropper) {
|
void updateFromPreferences(app::Preferences::Eyedropper& prefEyedropper) {
|
||||||
@ -1586,14 +1584,14 @@ ContextBar::ContextBar(TooltipManager* tooltipManager,
|
|||||||
|
|
||||||
auto& pref = Preferences::instance();
|
auto& pref = Preferences::instance();
|
||||||
pref.symmetryMode.enabled.AfterChange.connect(
|
pref.symmetryMode.enabled.AfterChange.connect(
|
||||||
base::Bind<void>(&ContextBar::onSymmetryModeChange, this));
|
[this]{ onSymmetryModeChange(); });
|
||||||
pref.colorBar.fgColor.AfterChange.connect(
|
pref.colorBar.fgColor.AfterChange.connect(
|
||||||
base::Bind<void>(&ContextBar::onFgOrBgColorChange, this, doc::Brush::ImageColor::MainColor));
|
[this]{ onFgOrBgColorChange(doc::Brush::ImageColor::MainColor); });
|
||||||
pref.colorBar.bgColor.AfterChange.connect(
|
pref.colorBar.bgColor.AfterChange.connect(
|
||||||
base::Bind<void>(&ContextBar::onFgOrBgColorChange, this, doc::Brush::ImageColor::BackgroundColor));
|
[this]{ onFgOrBgColorChange(doc::Brush::ImageColor::BackgroundColor); });
|
||||||
|
|
||||||
KeyboardShortcuts::instance()->UserChange.connect(
|
KeyboardShortcuts::instance()->UserChange.connect(
|
||||||
base::Bind<void>(&ContextBar::setupTooltips, this, tooltipManager));
|
[this, tooltipManager]{ setupTooltips(tooltipManager); });
|
||||||
|
|
||||||
m_dropPixels->DropPixels.connect(&ContextBar::onDropPixels, this);
|
m_dropPixels->DropPixels.connect(&ContextBar::onDropPixels, this);
|
||||||
|
|
||||||
@ -1771,11 +1769,11 @@ void ContextBar::updateForTool(tools::Tool* tool)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (toolPref) {
|
if (toolPref) {
|
||||||
m_sizeConn = brushPref->size.AfterChange.connect(base::Bind<void>(&ContextBar::onBrushSizeChange, this));
|
m_sizeConn = brushPref->size.AfterChange.connect([this]{ onBrushSizeChange(); });
|
||||||
m_angleConn = brushPref->angle.AfterChange.connect(base::Bind<void>(&ContextBar::onBrushAngleChange, this));
|
m_angleConn = brushPref->angle.AfterChange.connect([this]{ onBrushAngleChange(); });
|
||||||
m_opacityConn = toolPref->opacity.AfterChange.connect(&ContextBar::onToolSetOpacity, this);
|
m_opacityConn = toolPref->opacity.AfterChange.connect(&ContextBar::onToolSetOpacity, this);
|
||||||
m_freehandAlgoConn = toolPref->freehandAlgorithm.AfterChange.connect(base::Bind<void>(&ContextBar::onToolSetFreehandAlgorithm, this));
|
m_freehandAlgoConn = toolPref->freehandAlgorithm.AfterChange.connect([this]{ onToolSetFreehandAlgorithm(); });
|
||||||
m_contiguousConn = toolPref->contiguous.AfterChange.connect(base::Bind<void>(&ContextBar::onToolSetContiguous, this));
|
m_contiguousConn = toolPref->contiguous.AfterChange.connect([this]{ onToolSetContiguous(); });
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tool)
|
if (tool)
|
||||||
|
@ -29,7 +29,6 @@
|
|||||||
#include "app/ui/workspace.h"
|
#include "app/ui/workspace.h"
|
||||||
#include "app/ui/workspace.h"
|
#include "app/ui/workspace.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
#include "fmt/format.h"
|
#include "fmt/format.h"
|
||||||
#include "ui/alert.h"
|
#include "ui/alert.h"
|
||||||
@ -264,13 +263,13 @@ DataRecoveryView::DataRecoveryView(crash::DataRecovery* dataRecovery)
|
|||||||
fillList();
|
fillList();
|
||||||
onChangeSelection();
|
onChangeSelection();
|
||||||
|
|
||||||
m_openButton.Click.connect(base::Bind(&DataRecoveryView::onOpen, this));
|
m_openButton.Click.connect([this]{ onOpen(); });
|
||||||
m_openButton.DropDownClick.connect(base::Bind<void>(&DataRecoveryView::onOpenMenu, this));
|
m_openButton.DropDownClick.connect([this]{ onOpenMenu(); });
|
||||||
m_deleteButton.Click.connect(base::Bind(&DataRecoveryView::onDelete, this));
|
m_deleteButton.Click.connect([this]{ onDelete(); });
|
||||||
m_refreshButton.Click.connect(base::Bind(&DataRecoveryView::onRefresh, this));
|
m_refreshButton.Click.connect([this]{ onRefresh(); });
|
||||||
m_listBox.Change.connect(base::Bind(&DataRecoveryView::onChangeSelection, this));
|
m_listBox.Change.connect([this]{ onChangeSelection(); });
|
||||||
m_listBox.DoubleClickItem.connect(base::Bind(&DataRecoveryView::onOpen, this));
|
m_listBox.DoubleClickItem.connect([this]{ onOpen(); });
|
||||||
m_waitToEnableRefreshTimer.Tick.connect(base::Bind(&DataRecoveryView::onCheckIfWeCanEnableRefreshButton, this));
|
m_waitToEnableRefreshTimer.Tick.connect([this]{ onCheckIfWeCanEnableRefreshButton(); });
|
||||||
|
|
||||||
m_conn = Preferences::instance()
|
m_conn = Preferences::instance()
|
||||||
.general.showFullPath.AfterChange.connect(
|
.general.showFullPath.AfterChange.connect(
|
||||||
@ -454,8 +453,8 @@ void DataRecoveryView::onOpenMenu()
|
|||||||
menu.addChild(&rawFrames);
|
menu.addChild(&rawFrames);
|
||||||
menu.addChild(&rawLayers);
|
menu.addChild(&rawLayers);
|
||||||
|
|
||||||
rawFrames.Click.connect(base::Bind(&DataRecoveryView::onOpenRaw, this, crash::RawImagesAs::kFrames));
|
rawFrames.Click.connect([this]{ onOpenRaw(crash::RawImagesAs::kFrames); });
|
||||||
rawLayers.Click.connect(base::Bind(&DataRecoveryView::onOpenRaw, this, crash::RawImagesAs::kLayers));
|
rawLayers.Click.connect([this]{ onOpenRaw(crash::RawImagesAs::kLayers); });
|
||||||
|
|
||||||
menu.showPopup(gfx::Point(bounds.x, bounds.y+bounds.h));
|
menu.showPopup(gfx::Point(bounds.x, bounds.y+bounds.h));
|
||||||
}
|
}
|
||||||
|
@ -16,7 +16,6 @@
|
|||||||
#include "app/modules/palettes.h"
|
#include "app/modules/palettes.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "app/util/conversion_to_surface.h"
|
#include "app/util/conversion_to_surface.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "doc/image.h"
|
#include "doc/image.h"
|
||||||
#include "doc/image_ref.h"
|
#include "doc/image_ref.h"
|
||||||
#include "doc/primitives.h"
|
#include "doc/primitives.h"
|
||||||
@ -179,7 +178,7 @@ DitheringSelector::DitheringSelector(Type type)
|
|||||||
// regenerate this DitheringSelector
|
// regenerate this DitheringSelector
|
||||||
m_extChanges =
|
m_extChanges =
|
||||||
extensions.DitheringMatricesChange.connect(
|
extensions.DitheringMatricesChange.connect(
|
||||||
base::Bind<void>(&DitheringSelector::regenerate, this));
|
[this]{ regenerate(); });
|
||||||
|
|
||||||
setUseCustomWidget(true);
|
setUseCustomWidget(true);
|
||||||
regenerate();
|
regenerate();
|
||||||
|
@ -53,7 +53,6 @@
|
|||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "app/util/conversion_to_surface.h"
|
#include "app/util/conversion_to_surface.h"
|
||||||
#include "app/util/layer_utils.h"
|
#include "app/util/layer_utils.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/chrono.h"
|
#include "base/chrono.h"
|
||||||
#include "base/clamp.h"
|
#include "base/clamp.h"
|
||||||
#include "base/convert_to.h"
|
#include "base/convert_to.h"
|
||||||
@ -173,11 +172,11 @@ Editor::Editor(Doc* document, EditorFlags flags)
|
|||||||
|
|
||||||
m_fgColorChangeConn =
|
m_fgColorChangeConn =
|
||||||
Preferences::instance().colorBar.fgColor.AfterChange.connect(
|
Preferences::instance().colorBar.fgColor.AfterChange.connect(
|
||||||
base::Bind<void>(&Editor::onFgColorChange, this));
|
[this]{ onFgColorChange(); });
|
||||||
|
|
||||||
m_contextBarBrushChangeConn =
|
m_contextBarBrushChangeConn =
|
||||||
App::instance()->contextBar()->BrushChange.connect(
|
App::instance()->contextBar()->BrushChange.connect(
|
||||||
base::Bind<void>(&Editor::onContextBarBrushChange, this));
|
[this]{ onContextBarBrushChange(); });
|
||||||
|
|
||||||
// Restore last site in preferences
|
// Restore last site in preferences
|
||||||
{
|
{
|
||||||
@ -191,16 +190,16 @@ Editor::Editor(Doc* document, EditorFlags flags)
|
|||||||
setLayer(layers[layerIndex]);
|
setLayer(layers[layerIndex]);
|
||||||
}
|
}
|
||||||
|
|
||||||
m_tiledConnBefore = m_docPref.tiled.BeforeChange.connect(base::Bind<void>(&Editor::onTiledModeBeforeChange, this));
|
m_tiledConnBefore = m_docPref.tiled.BeforeChange.connect([this]{ onTiledModeBeforeChange(); });
|
||||||
m_tiledConn = m_docPref.tiled.AfterChange.connect(base::Bind<void>(&Editor::onTiledModeChange, this));
|
m_tiledConn = m_docPref.tiled.AfterChange.connect([this]{ onTiledModeChange(); });
|
||||||
m_gridConn = m_docPref.grid.AfterChange.connect(base::Bind<void>(&Editor::invalidate, this));
|
m_gridConn = m_docPref.grid.AfterChange.connect([this]{ invalidate(); });
|
||||||
m_pixelGridConn = m_docPref.pixelGrid.AfterChange.connect(base::Bind<void>(&Editor::invalidate, this));
|
m_pixelGridConn = m_docPref.pixelGrid.AfterChange.connect([this]{ invalidate(); });
|
||||||
m_bgConn = m_docPref.bg.AfterChange.connect(base::Bind<void>(&Editor::invalidate, this));
|
m_bgConn = m_docPref.bg.AfterChange.connect([this]{ invalidate(); });
|
||||||
m_onionskinConn = m_docPref.onionskin.AfterChange.connect(base::Bind<void>(&Editor::invalidate, this));
|
m_onionskinConn = m_docPref.onionskin.AfterChange.connect([this]{ invalidate(); });
|
||||||
m_symmetryModeConn = Preferences::instance().symmetryMode.enabled.AfterChange.connect(base::Bind<void>(&Editor::invalidateIfActive, this));
|
m_symmetryModeConn = Preferences::instance().symmetryMode.enabled.AfterChange.connect([this]{ invalidateIfActive(); });
|
||||||
m_showExtrasConn =
|
m_showExtrasConn =
|
||||||
m_docPref.show.AfterChange.connect(
|
m_docPref.show.AfterChange.connect(
|
||||||
base::Bind<void>(&Editor::onShowExtrasChange, this));
|
[this]{ onShowExtrasChange(); });
|
||||||
|
|
||||||
m_document->add_observer(this);
|
m_document->add_observer(this);
|
||||||
|
|
||||||
@ -2610,7 +2609,7 @@ void Editor::showAnimationSpeedMultiplierPopup(Option<bool>& playOnce,
|
|||||||
|
|
||||||
for (double option : options) {
|
for (double option : options) {
|
||||||
MenuItem* item = new MenuItem("Speed x" + base::convert_to<std::string>(option));
|
MenuItem* item = new MenuItem("Speed x" + base::convert_to<std::string>(option));
|
||||||
item->Click.connect(base::Bind<void>(&Editor::setAnimationSpeedMultiplier, this, option));
|
item->Click.connect([this, option]{ setAnimationSpeedMultiplier(option); });
|
||||||
item->setSelected(m_aniSpeed == option);
|
item->setSelected(m_aniSpeed == option);
|
||||||
menu.addChild(item);
|
menu.addChild(item);
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
|
// Copyright (C) 2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2016 David Capello
|
// Copyright (C) 2001-2016 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -11,7 +12,6 @@
|
|||||||
#include "app/ui/editor/editor_observers.h"
|
#include "app/ui/editor/editor_observers.h"
|
||||||
|
|
||||||
#include "app/ui/editor/editor_observer.h"
|
#include "app/ui/editor/editor_observer.h"
|
||||||
#include "base/bind.h"
|
|
||||||
|
|
||||||
namespace app {
|
namespace app {
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
|
// Copyright (C) 2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2017 David Capello
|
// Copyright (C) 2001-2017 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -16,7 +17,6 @@
|
|||||||
#include "app/pref/preferences.h"
|
#include "app/pref/preferences.h"
|
||||||
#include "app/ui/editor/editor.h"
|
#include "app/ui/editor/editor.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "os/surface.h"
|
#include "os/surface.h"
|
||||||
#include "ui/paint_event.h"
|
#include "ui/paint_event.h"
|
||||||
#include "ui/resize_event.h"
|
#include "ui/resize_event.h"
|
||||||
@ -42,7 +42,7 @@ EditorView::EditorView(EditorView::Type type)
|
|||||||
{
|
{
|
||||||
m_scrollSettingsConn =
|
m_scrollSettingsConn =
|
||||||
Preferences::instance().editor.showScrollbars.AfterChange.connect(
|
Preferences::instance().editor.showScrollbars.AfterChange.connect(
|
||||||
base::Bind(&EditorView::setupScrollbars, this));
|
[this]{ setupScrollbars(); });
|
||||||
|
|
||||||
InitTheme.connect(
|
InitTheme.connect(
|
||||||
[this]{
|
[this]{
|
||||||
|
@ -38,7 +38,6 @@
|
|||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "app/util/clipboard.h"
|
#include "app/util/clipboard.h"
|
||||||
#include "app/util/layer_utils.h"
|
#include "app/util/layer_utils.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/gcd.h"
|
#include "base/gcd.h"
|
||||||
#include "base/pi.h"
|
#include "base/pi.h"
|
||||||
#include "doc/algorithm/flip_image.h"
|
#include "doc/algorithm/flip_image.h"
|
||||||
@ -98,10 +97,10 @@ MovingPixelsState::MovingPixelsState(Editor* editor, MouseMessage* msg, PixelsMo
|
|||||||
// Listen to any change to the transparent color from the ContextBar.
|
// Listen to any change to the transparent color from the ContextBar.
|
||||||
m_opaqueConn =
|
m_opaqueConn =
|
||||||
Preferences::instance().selection.opaque.AfterChange.connect(
|
Preferences::instance().selection.opaque.AfterChange.connect(
|
||||||
base::Bind<void>(&MovingPixelsState::onTransparentColorChange, this));
|
[this]{ onTransparentColorChange(); });
|
||||||
m_transparentConn =
|
m_transparentConn =
|
||||||
Preferences::instance().selection.transparentColor.AfterChange.connect(
|
Preferences::instance().selection.transparentColor.AfterChange.connect(
|
||||||
base::Bind<void>(&MovingPixelsState::onTransparentColorChange, this));
|
[this]{ onTransparentColorChange(); });
|
||||||
|
|
||||||
// Add the current editor as filter for key message of the manager
|
// Add the current editor as filter for key message of the manager
|
||||||
// so we can catch the Enter key, and avoid to execute the
|
// so we can catch the Enter key, and avoid to execute the
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
// Copyright (C) 2019 Igara Studio S.A.
|
// Copyright (C) 2019-2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2018 David Capello
|
// Copyright (C) 2001-2018 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -29,7 +29,6 @@
|
|||||||
#include "app/util/expand_cel_canvas.h"
|
#include "app/util/expand_cel_canvas.h"
|
||||||
#include "app/util/new_image_from_mask.h"
|
#include "app/util/new_image_from_mask.h"
|
||||||
#include "app/util/range_utils.h"
|
#include "app/util/range_utils.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/pi.h"
|
#include "base/pi.h"
|
||||||
#include "base/vector2d.h"
|
#include "base/vector2d.h"
|
||||||
#include "doc/algorithm/flip_image.h"
|
#include "doc/algorithm/flip_image.h"
|
||||||
@ -146,13 +145,13 @@ PixelsMovement::PixelsMovement(
|
|||||||
|
|
||||||
m_pivotVisConn =
|
m_pivotVisConn =
|
||||||
Preferences::instance().selection.pivotVisibility.AfterChange.connect(
|
Preferences::instance().selection.pivotVisibility.AfterChange.connect(
|
||||||
base::Bind<void>(&PixelsMovement::onPivotChange, this));
|
[this]{ onPivotChange(); });
|
||||||
m_pivotPosConn =
|
m_pivotPosConn =
|
||||||
Preferences::instance().selection.pivotPosition.AfterChange.connect(
|
Preferences::instance().selection.pivotPosition.AfterChange.connect(
|
||||||
base::Bind<void>(&PixelsMovement::onPivotChange, this));
|
[this]{ onPivotChange(); });
|
||||||
m_rotAlgoConn =
|
m_rotAlgoConn =
|
||||||
Preferences::instance().selection.rotationAlgorithm.AfterChange.connect(
|
Preferences::instance().selection.rotationAlgorithm.AfterChange.connect(
|
||||||
base::Bind<void>(&PixelsMovement::onRotationAlgorithmChange, this));
|
[this]{ onRotationAlgorithmChange(); });
|
||||||
|
|
||||||
// The extra cel must be null, because if it's not null, it means
|
// The extra cel must be null, because if it's not null, it means
|
||||||
// that someone else is using it (e.g. the editor brush preview),
|
// that someone else is using it (e.g. the editor brush preview),
|
||||||
|
@ -51,7 +51,6 @@
|
|||||||
#include "app/util/layer_utils.h"
|
#include "app/util/layer_utils.h"
|
||||||
#include "app/util/new_image_from_mask.h"
|
#include "app/util/new_image_from_mask.h"
|
||||||
#include "app/util/readable_time.h"
|
#include "app/util/readable_time.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/pi.h"
|
#include "base/pi.h"
|
||||||
#include "doc/layer.h"
|
#include "doc/layer.h"
|
||||||
#include "doc/mask.h"
|
#include "doc/mask.h"
|
||||||
@ -108,10 +107,10 @@ void StandbyState::onEnterState(Editor* editor)
|
|||||||
|
|
||||||
m_pivotVisConn =
|
m_pivotVisConn =
|
||||||
Preferences::instance().selection.pivotVisibility.AfterChange.connect(
|
Preferences::instance().selection.pivotVisibility.AfterChange.connect(
|
||||||
base::Bind<void>(&StandbyState::onPivotChange, this, editor));
|
[this, editor]{ onPivotChange(editor); });
|
||||||
m_pivotPosConn =
|
m_pivotPosConn =
|
||||||
Preferences::instance().selection.pivotPosition.AfterChange.connect(
|
Preferences::instance().selection.pivotPosition.AfterChange.connect(
|
||||||
base::Bind<void>(&StandbyState::onPivotChange, this, editor));
|
[this, editor]{ onPivotChange(editor); });
|
||||||
}
|
}
|
||||||
|
|
||||||
void StandbyState::onActiveToolChange(Editor* editor, tools::Tool* tool)
|
void StandbyState::onActiveToolChange(Editor* editor, tools::Tool* tool)
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
// Copyright (C) 2019 Igara Studio S.A.
|
// Copyright (C) 2019-2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2018 David Capello
|
// Copyright (C) 2018 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -17,7 +17,6 @@
|
|||||||
#include "app/site.h"
|
#include "app/site.h"
|
||||||
#include "app/ui/layer_frame_comboboxes.h"
|
#include "app/ui/layer_frame_comboboxes.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/convert_to.h"
|
#include "base/convert_to.h"
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
#include "base/string.h"
|
#include "base/string.h"
|
||||||
@ -70,25 +69,23 @@ ExportFileWindow::ExportFileWindow(const Doc* doc)
|
|||||||
updateAdjustResizeButton();
|
updateAdjustResizeButton();
|
||||||
|
|
||||||
outputFilename()->Change.connect(
|
outputFilename()->Change.connect(
|
||||||
base::Bind<void>(
|
[this]{
|
||||||
[this]{
|
m_outputFilename = outputFilename()->text();
|
||||||
m_outputFilename = outputFilename()->text();
|
onOutputFilenameEntryChange();
|
||||||
onOutputFilenameEntryChange();
|
});
|
||||||
}));
|
|
||||||
outputFilenameBrowse()->Click.connect(
|
outputFilenameBrowse()->Click.connect(
|
||||||
base::Bind<void>(
|
[this]{
|
||||||
[this]{
|
std::string fn = SelectOutputFile();
|
||||||
std::string fn = SelectOutputFile();
|
if (!fn.empty()) {
|
||||||
if (!fn.empty()) {
|
setOutputFilename(fn);
|
||||||
setOutputFilename(fn);
|
}
|
||||||
}
|
});
|
||||||
}));
|
|
||||||
|
|
||||||
resize()->Change.connect(base::Bind<void>(&ExportFileWindow::updateAdjustResizeButton, this));
|
resize()->Change.connect([this]{ updateAdjustResizeButton(); });
|
||||||
frames()->Change.connect(base::Bind<void>(&ExportFileWindow::updateAniDir, this));
|
frames()->Change.connect([this]{ updateAniDir(); });
|
||||||
forTwitter()->Click.connect(base::Bind<void>(&ExportFileWindow::updateAdjustResizeButton, this));
|
forTwitter()->Click.connect([this]{ updateAdjustResizeButton(); });
|
||||||
adjustResize()->Click.connect(base::Bind<void>(&ExportFileWindow::onAdjustResize, this));
|
adjustResize()->Click.connect([this]{ onAdjustResize(); });
|
||||||
ok()->Click.connect(base::Bind<void>(&ExportFileWindow::onOK, this));
|
ok()->Click.connect([this]{ onOK(); });
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ExportFileWindow::show()
|
bool ExportFileWindow::show()
|
||||||
|
@ -24,7 +24,6 @@
|
|||||||
#include "app/ui/separator_in_view.h"
|
#include "app/ui/separator_in_view.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "app/widget_loader.h"
|
#include "app/widget_loader.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/clamp.h"
|
#include "base/clamp.h"
|
||||||
#include "base/convert_to.h"
|
#include "base/convert_to.h"
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
@ -336,16 +335,16 @@ FileSelector::FileSelector(FileSelectorType type)
|
|||||||
m_fileView->setExpansive(true);
|
m_fileView->setExpansive(true);
|
||||||
fileViewPlaceholder()->addChild(m_fileView);
|
fileViewPlaceholder()->addChild(m_fileView);
|
||||||
|
|
||||||
goBackButton()->Click.connect(base::Bind<void>(&FileSelector::onGoBack, this));
|
goBackButton()->Click.connect([this]{ onGoBack(); });
|
||||||
goForwardButton()->Click.connect(base::Bind<void>(&FileSelector::onGoForward, this));
|
goForwardButton()->Click.connect([this]{ onGoForward(); });
|
||||||
goUpButton()->Click.connect(base::Bind<void>(&FileSelector::onGoUp, this));
|
goUpButton()->Click.connect([this]{ onGoUp(); });
|
||||||
newFolderButton()->Click.connect(base::Bind<void>(&FileSelector::onNewFolder, this));
|
newFolderButton()->Click.connect([this]{ onNewFolder(); });
|
||||||
viewType()->ItemChange.connect(base::Bind<void>(&FileSelector::onChangeViewType, this));
|
viewType()->ItemChange.connect([this]{ onChangeViewType(); });
|
||||||
location()->CloseListBox.connect(base::Bind<void>(&FileSelector::onLocationCloseListBox, this));
|
location()->CloseListBox.connect([this]{ onLocationCloseListBox(); });
|
||||||
fileType()->Change.connect(base::Bind<void>(&FileSelector::onFileTypeChange, this));
|
fileType()->Change.connect([this]{ onFileTypeChange(); });
|
||||||
m_fileList->FileSelected.connect(base::Bind<void>(&FileSelector::onFileListFileSelected, this));
|
m_fileList->FileSelected.connect([this]{ onFileListFileSelected(); });
|
||||||
m_fileList->FileAccepted.connect(base::Bind<void>(&FileSelector::onFileListFileAccepted, this));
|
m_fileList->FileAccepted.connect([this]{ onFileListFileAccepted(); });
|
||||||
m_fileList->CurrentFolderChanged.connect(base::Bind<void>(&FileSelector::onFileListCurrentFolderChanged, this));
|
m_fileList->CurrentFolderChanged.connect([this]{ onFileListCurrentFolderChanged(); });
|
||||||
}
|
}
|
||||||
|
|
||||||
void FileSelector::setDefaultExtension(const std::string& extension)
|
void FileSelector::setDefaultExtension(const std::string& extension)
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
// Copyright (C) 2019 Igara Studio S.A.
|
// Copyright (C) 2019-2020 Igara Studio S.A.
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
// the End-User License Agreement for Aseprite.
|
// the End-User License Agreement for Aseprite.
|
||||||
@ -12,7 +12,6 @@
|
|||||||
|
|
||||||
#include "app/i18n/strings.h"
|
#include "app/i18n/strings.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
#include "ui/box.h"
|
#include "ui/box.h"
|
||||||
#include "ui/button.h"
|
#include "ui/button.h"
|
||||||
@ -43,21 +42,19 @@ FilenameField::FilenameField(const Type type,
|
|||||||
|
|
||||||
if (m_entry) {
|
if (m_entry) {
|
||||||
m_entry->Change.connect(
|
m_entry->Change.connect(
|
||||||
base::Bind<void>(
|
[this]{
|
||||||
[this]{
|
m_file = m_entry->text();
|
||||||
m_file = m_entry->text();
|
Change();
|
||||||
Change();
|
});
|
||||||
}));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
m_button.Click.connect(
|
m_button.Click.connect(
|
||||||
base::Bind<void>(
|
[this]{
|
||||||
[this]{
|
std::string fn = SelectFile();
|
||||||
std::string fn = SelectFile();
|
if (!fn.empty()) {
|
||||||
if (!fn.empty()) {
|
setFilename(fn);
|
||||||
setFilename(fn);
|
}
|
||||||
}
|
});
|
||||||
}));
|
|
||||||
|
|
||||||
initTheme();
|
initTheme();
|
||||||
}
|
}
|
||||||
|
@ -21,7 +21,6 @@
|
|||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "app/util/conversion_to_surface.h"
|
#include "app/util/conversion_to_surface.h"
|
||||||
#include "app/util/freetype_utils.h"
|
#include "app/util/freetype_utils.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
#include "base/string.h"
|
#include "base/string.h"
|
||||||
#include "doc/image.h"
|
#include "doc/image.h"
|
||||||
@ -144,11 +143,11 @@ FontPopup::FontPopup()
|
|||||||
|
|
||||||
addChild(m_popup);
|
addChild(m_popup);
|
||||||
|
|
||||||
m_popup->search()->Change.connect(base::Bind<void>(&FontPopup::onSearchChange, this));
|
m_popup->search()->Change.connect([this]{ onSearchChange(); });
|
||||||
m_popup->loadFont()->Click.connect(base::Bind<void>(&FontPopup::onLoadFont, this));
|
m_popup->loadFont()->Click.connect([this]{ onLoadFont(); });
|
||||||
m_listBox.setFocusMagnet(true);
|
m_listBox.setFocusMagnet(true);
|
||||||
m_listBox.Change.connect(base::Bind<void>(&FontPopup::onChangeFont, this));
|
m_listBox.Change.connect([this]{ onChangeFont(); });
|
||||||
m_listBox.DoubleClickItem.connect(base::Bind<void>(&FontPopup::onLoadFont, this));
|
m_listBox.DoubleClickItem.connect([this]{ onLoadFont(); });
|
||||||
|
|
||||||
m_popup->view()->attachToView(&m_listBox);
|
m_popup->view()->attachToView(&m_listBox);
|
||||||
|
|
||||||
|
@ -25,7 +25,6 @@
|
|||||||
#include "app/ui/workspace.h"
|
#include "app/ui/workspace.h"
|
||||||
#include "app/ui/workspace_tabs.h"
|
#include "app/ui/workspace_tabs.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/exception.h"
|
#include "base/exception.h"
|
||||||
#include "fmt/format.h"
|
#include "fmt/format.h"
|
||||||
#include "ui/label.h"
|
#include "ui/label.h"
|
||||||
@ -53,10 +52,10 @@ HomeView::HomeView()
|
|||||||
, m_dataRecovery(App::instance()->dataRecovery())
|
, m_dataRecovery(App::instance()->dataRecovery())
|
||||||
, m_dataRecoveryView(nullptr)
|
, m_dataRecoveryView(nullptr)
|
||||||
{
|
{
|
||||||
newFile()->Click.connect(base::Bind(&HomeView::onNewFile, this));
|
newFile()->Click.connect([this]{ onNewFile(); });
|
||||||
openFile()->Click.connect(base::Bind(&HomeView::onOpenFile, this));
|
openFile()->Click.connect([this]{ onOpenFile(); });
|
||||||
if (m_dataRecovery)
|
if (m_dataRecovery)
|
||||||
recoverSprites()->Click.connect(base::Bind(&HomeView::onRecoverSprites, this));
|
recoverSprites()->Click.connect([this]{ onRecoverSprites(); });
|
||||||
else
|
else
|
||||||
recoverSprites()->setVisible(false);
|
recoverSprites()->setVisible(false);
|
||||||
|
|
||||||
|
@ -14,7 +14,6 @@
|
|||||||
#include "app/app.h"
|
#include "app/app.h"
|
||||||
#include "app/app_menus.h"
|
#include "app/app_menus.h"
|
||||||
#include "app/extensions.h"
|
#include "app/extensions.h"
|
||||||
#include "base/bind.h"
|
|
||||||
|
|
||||||
namespace app {
|
namespace app {
|
||||||
|
|
||||||
@ -24,7 +23,7 @@ MainMenuBar::MainMenuBar()
|
|||||||
|
|
||||||
m_extScripts =
|
m_extScripts =
|
||||||
extensions.ScriptsChange.connect(
|
extensions.ScriptsChange.connect(
|
||||||
base::Bind<void>(&MainMenuBar::reload, this));
|
[this]{ reload(); });
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainMenuBar::reload()
|
void MainMenuBar::reload()
|
||||||
|
@ -38,7 +38,6 @@
|
|||||||
#include "app/ui/workspace.h"
|
#include "app/ui/workspace.h"
|
||||||
#include "app/ui/workspace_tabs.h"
|
#include "app/ui/workspace_tabs.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
#include "os/display.h"
|
#include "os/display.h"
|
||||||
#include "os/system.h"
|
#include "os/system.h"
|
||||||
@ -153,10 +152,8 @@ MainWindow::MainWindow()
|
|||||||
|
|
||||||
// Reconfigure workspace when the timeline position is changed.
|
// Reconfigure workspace when the timeline position is changed.
|
||||||
auto& pref = Preferences::instance();
|
auto& pref = Preferences::instance();
|
||||||
pref.general.timelinePosition
|
pref.general.timelinePosition.AfterChange.connect([this]{ configureWorkspaceLayout(); });
|
||||||
.AfterChange.connect(base::Bind<void>(&MainWindow::configureWorkspaceLayout, this));
|
pref.general.showMenuBar.AfterChange.connect([this]{ configureWorkspaceLayout(); });
|
||||||
pref.general.showMenuBar
|
|
||||||
.AfterChange.connect(base::Bind<void>(&MainWindow::configureWorkspaceLayout, this));
|
|
||||||
|
|
||||||
// Prepare the window
|
// Prepare the window
|
||||||
remapWindow();
|
remapWindow();
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
|
// Copyright (C) 2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2018 David Capello
|
// Copyright (C) 2001-2018 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -19,7 +20,6 @@
|
|||||||
#include "app/ui/palettes_listbox.h"
|
#include "app/ui/palettes_listbox.h"
|
||||||
#include "app/ui/search_entry.h"
|
#include "app/ui/search_entry.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "ui/box.h"
|
#include "ui/box.h"
|
||||||
#include "ui/button.h"
|
#include "ui/button.h"
|
||||||
#include "ui/scale.h"
|
#include "ui/scale.h"
|
||||||
@ -41,11 +41,11 @@ PalettePopup::PalettePopup()
|
|||||||
|
|
||||||
addChild(m_popup);
|
addChild(m_popup);
|
||||||
|
|
||||||
m_paletteListBox.DoubleClickItem.connect(base::Bind<void>(&PalettePopup::onLoadPal, this));
|
m_paletteListBox.DoubleClickItem.connect([this]{ onLoadPal(); });
|
||||||
m_paletteListBox.FinishLoading.connect(base::Bind<void>(&PalettePopup::onSearchChange, this));
|
m_paletteListBox.FinishLoading.connect([this]{ onSearchChange(); });
|
||||||
m_popup->search()->Change.connect(base::Bind<void>(&PalettePopup::onSearchChange, this));
|
m_popup->search()->Change.connect([this]{ onSearchChange(); });
|
||||||
m_popup->loadPal()->Click.connect(base::Bind<void>(&PalettePopup::onLoadPal, this));
|
m_popup->loadPal()->Click.connect([this]{ onLoadPal(); });
|
||||||
m_popup->openFolder()->Click.connect(base::Bind<void>(&PalettePopup::onOpenFolder, this));
|
m_popup->openFolder()->Click.connect([this]{ onOpenFolder(); });
|
||||||
|
|
||||||
m_popup->view()->attachToView(&m_paletteListBox);
|
m_popup->view()->attachToView(&m_paletteListBox);
|
||||||
|
|
||||||
|
@ -23,7 +23,6 @@
|
|||||||
#include "app/ui/status_bar.h"
|
#include "app/ui/status_bar.h"
|
||||||
#include "app/util/clipboard.h"
|
#include "app/util/clipboard.h"
|
||||||
#include "app/util/pal_ops.h"
|
#include "app/util/pal_ops.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/clamp.h"
|
#include "base/clamp.h"
|
||||||
#include "base/convert_to.h"
|
#include "base/convert_to.h"
|
||||||
#include "doc/image.h"
|
#include "doc/image.h"
|
||||||
@ -72,7 +71,7 @@ PaletteView::PaletteView(bool editable, PaletteViewStyle style, PaletteViewDeleg
|
|||||||
|
|
||||||
m_palConn = App::instance()->PaletteChange.connect(&PaletteView::onAppPaletteChange, this);
|
m_palConn = App::instance()->PaletteChange.connect(&PaletteView::onAppPaletteChange, this);
|
||||||
m_csConn = App::instance()->ColorSpaceChange.connect(
|
m_csConn = App::instance()->ColorSpaceChange.connect(
|
||||||
base::Bind<void>(&PaletteView::invalidate, this));
|
[this]{ invalidate(); });
|
||||||
|
|
||||||
{
|
{
|
||||||
auto& entriesSep = Preferences::instance().colorBar.entriesSeparator;
|
auto& entriesSep = Preferences::instance().colorBar.entriesSeparator;
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
|
// Copyright (C) 2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2017 David Capello
|
// Copyright (C) 2001-2017 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -21,7 +22,6 @@
|
|||||||
#include "app/ui/icon_button.h"
|
#include "app/ui/icon_button.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/launcher.h"
|
#include "base/launcher.h"
|
||||||
#include "doc/palette.h"
|
#include "doc/palette.h"
|
||||||
#include "doc/sprite.h"
|
#include "doc/sprite.h"
|
||||||
@ -123,10 +123,10 @@ PalettesListBox::PalettesListBox()
|
|||||||
|
|
||||||
m_extPaletteChanges =
|
m_extPaletteChanges =
|
||||||
App::instance()->extensions().PalettesChange.connect(
|
App::instance()->extensions().PalettesChange.connect(
|
||||||
base::Bind<void>(&PalettesListBox::reload, this));
|
[this]{ reload(); });
|
||||||
m_extPresetsChanges =
|
m_extPresetsChanges =
|
||||||
App::instance()->PalettePresetsChange.connect(
|
App::instance()->PalettePresetsChange.connect(
|
||||||
base::Bind<void>(&PalettesListBox::reload, this));
|
[this]{ reload(); });
|
||||||
}
|
}
|
||||||
|
|
||||||
doc::Palette* PalettesListBox::selectedPalette()
|
doc::Palette* PalettesListBox::selectedPalette()
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
|
// Copyright (C) 2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2017 David Capello
|
// Copyright (C) 2001-2017 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -13,7 +14,6 @@
|
|||||||
#include "app/modules/gfx.h"
|
#include "app/modules/gfx.h"
|
||||||
#include "app/modules/gui.h"
|
#include "app/modules/gui.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "gfx/border.h"
|
#include "gfx/border.h"
|
||||||
#include "gfx/size.h"
|
#include "gfx/size.h"
|
||||||
#include "ui/ui.h"
|
#include "ui/ui.h"
|
||||||
|
@ -28,7 +28,6 @@
|
|||||||
#include "app/ui/status_bar.h"
|
#include "app/ui/status_bar.h"
|
||||||
#include "app/ui/toolbar.h"
|
#include "app/ui/toolbar.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "doc/sprite.h"
|
#include "doc/sprite.h"
|
||||||
#include "gfx/rect.h"
|
#include "gfx/rect.h"
|
||||||
#include "ui/base.h"
|
#include "ui/base.h"
|
||||||
@ -188,9 +187,9 @@ PreviewEditorWindow::PreviewEditorWindow()
|
|||||||
|
|
||||||
m_isEnabled = get_config_bool("MiniEditor", "Enabled", true);
|
m_isEnabled = get_config_bool("MiniEditor", "Enabled", true);
|
||||||
|
|
||||||
m_centerButton->Click.connect(base::Bind<void>(&PreviewEditorWindow::onCenterClicked, this));
|
m_centerButton->Click.connect([this]{ onCenterClicked(); });
|
||||||
m_playButton->Click.connect(base::Bind<void>(&PreviewEditorWindow::onPlayClicked, this));
|
m_playButton->Click.connect([this]{ onPlayClicked(); });
|
||||||
m_playButton->Popup.connect(base::Bind<void>(&PreviewEditorWindow::onPopupSpeed, this));
|
m_playButton->Popup.connect([this]{ onPopupSpeed(); });
|
||||||
|
|
||||||
addChild(m_centerButton);
|
addChild(m_centerButton);
|
||||||
addChild(m_playButton);
|
addChild(m_playButton);
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
// Copyright (C) 2018 Igara Studio S.A.
|
// Copyright (C) 2018-2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2018 David Capello
|
// Copyright (C) 2001-2018 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -20,7 +20,6 @@
|
|||||||
#include "app/ui/draggable_widget.h"
|
#include "app/ui/draggable_widget.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
#include "ui/alert.h"
|
#include "ui/alert.h"
|
||||||
#include "ui/graphics.h"
|
#include "ui/graphics.h"
|
||||||
@ -233,11 +232,11 @@ RecentListBox::RecentListBox()
|
|||||||
{
|
{
|
||||||
m_recentFilesConn =
|
m_recentFilesConn =
|
||||||
App::instance()->recentFiles()->Changed.connect(
|
App::instance()->recentFiles()->Changed.connect(
|
||||||
base::Bind(&RecentListBox::rebuildList, this));
|
[this]{ rebuildList(); });
|
||||||
|
|
||||||
m_showFullPathConn =
|
m_showFullPathConn =
|
||||||
Preferences::instance().general.showFullPath.AfterChange.connect(
|
Preferences::instance().general.showFullPath.AfterChange.connect(
|
||||||
base::Bind<void>(&RecentListBox::invalidate, this));
|
[this]{ invalidate(); });
|
||||||
}
|
}
|
||||||
|
|
||||||
void RecentListBox::rebuildList()
|
void RecentListBox::rebuildList()
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
|
// Copyright (C) 2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2018 David Capello
|
// Copyright (C) 2001-2018 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -13,7 +14,6 @@
|
|||||||
#include "app/res/resource.h"
|
#include "app/res/resource.h"
|
||||||
#include "app/res/resources_loader.h"
|
#include "app/res/resources_loader.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "ui/graphics.h"
|
#include "ui/graphics.h"
|
||||||
#include "ui/message.h"
|
#include "ui/message.h"
|
||||||
#include "ui/paint_event.h"
|
#include "ui/paint_event.h"
|
||||||
@ -114,7 +114,7 @@ ResourcesListBox::ResourcesListBox(ResourcesLoader* resourcesLoader)
|
|||||||
, m_reload(false)
|
, m_reload(false)
|
||||||
, m_loadingItem(nullptr)
|
, m_loadingItem(nullptr)
|
||||||
{
|
{
|
||||||
m_resourcesTimer.Tick.connect(base::Bind<void>(&ResourcesListBox::onTick, this));
|
m_resourcesTimer.Tick.connect([this]{ onTick(); });
|
||||||
}
|
}
|
||||||
|
|
||||||
Resource* ResourcesListBox::selectedResource()
|
Resource* ResourcesListBox::selectedResource()
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
|
// Copyright (C) 2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2018 David Capello
|
// Copyright (C) 2001-2018 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -12,7 +13,6 @@
|
|||||||
|
|
||||||
#include "app/ui/key.h"
|
#include "app/ui/key.h"
|
||||||
#include "app/ui/keyboard_shortcuts.h"
|
#include "app/ui/keyboard_shortcuts.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "obs/signal.h"
|
#include "obs/signal.h"
|
||||||
#include "ui/entry.h"
|
#include "ui/entry.h"
|
||||||
#include "ui/message.h"
|
#include "ui/message.h"
|
||||||
@ -101,17 +101,17 @@ SelectAccelerator::SelectAccelerator(const ui::Accelerator& accel,
|
|||||||
|
|
||||||
keyPlaceholder()->addChild(m_keyField);
|
keyPlaceholder()->addChild(m_keyField);
|
||||||
|
|
||||||
alt()->Click.connect(base::Bind<void>(&SelectAccelerator::onModifierChange, this, kKeyAltModifier, alt()));
|
alt()->Click.connect([this]{ onModifierChange(kKeyAltModifier, alt()); });
|
||||||
cmd()->Click.connect(base::Bind<void>(&SelectAccelerator::onModifierChange, this, kKeyCmdModifier, cmd()));
|
cmd()->Click.connect([this]{ onModifierChange(kKeyCmdModifier, cmd()); });
|
||||||
ctrl()->Click.connect(base::Bind<void>(&SelectAccelerator::onModifierChange, this, kKeyCtrlModifier, ctrl()));
|
ctrl()->Click.connect([this]{ onModifierChange(kKeyCtrlModifier, ctrl()); });
|
||||||
shift()->Click.connect(base::Bind<void>(&SelectAccelerator::onModifierChange, this, kKeyShiftModifier, shift()));
|
shift()->Click.connect([this]{ onModifierChange(kKeyShiftModifier, shift()); });
|
||||||
space()->Click.connect(base::Bind<void>(&SelectAccelerator::onModifierChange, this, kKeySpaceModifier, space()));
|
space()->Click.connect([this]{ onModifierChange(kKeySpaceModifier, space()); });
|
||||||
win()->Click.connect(base::Bind<void>(&SelectAccelerator::onModifierChange, this, kKeyWinModifier, win()));
|
win()->Click.connect([this]{ onModifierChange(kKeyWinModifier, win()); });
|
||||||
|
|
||||||
m_keyField->AccelChange.connect(&SelectAccelerator::onAccelChange, this);
|
m_keyField->AccelChange.connect(&SelectAccelerator::onAccelChange, this);
|
||||||
clearButton()->Click.connect(base::Bind<void>(&SelectAccelerator::onClear, this));
|
clearButton()->Click.connect([this]{ onClear(); });
|
||||||
okButton()->Click.connect(base::Bind<void>(&SelectAccelerator::onOK, this));
|
okButton()->Click.connect([this]{ onOK(); });
|
||||||
cancelButton()->Click.connect(base::Bind<void>(&SelectAccelerator::onCancel, this));
|
cancelButton()->Click.connect([this]{ onCancel(); });
|
||||||
|
|
||||||
addChild(&m_tooltipManager);
|
addChild(&m_tooltipManager);
|
||||||
}
|
}
|
||||||
|
@ -25,7 +25,6 @@
|
|||||||
#include "app/ui/skin/skin_slider_property.h"
|
#include "app/ui/skin/skin_slider_property.h"
|
||||||
#include "app/xml_document.h"
|
#include "app/xml_document.h"
|
||||||
#include "app/xml_exception.h"
|
#include "app/xml_exception.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/clamp.h"
|
#include "base/clamp.h"
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
#include "base/log.h"
|
#include "base/log.h"
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
// Copyright (C) 2019 Igara Studio S.A.
|
// Copyright (C) 2019-2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2017 David Capello
|
// Copyright (C) 2017 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -13,7 +13,6 @@
|
|||||||
|
|
||||||
#include "app/doc.h"
|
#include "app/doc.h"
|
||||||
#include "app/ui/user_data_popup.h"
|
#include "app/ui/user_data_popup.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "doc/slice.h"
|
#include "doc/slice.h"
|
||||||
#include "doc/sprite.h"
|
#include "doc/sprite.h"
|
||||||
|
|
||||||
@ -30,7 +29,7 @@ SliceWindow::SliceWindow(const doc::Sprite* sprite,
|
|||||||
|
|
||||||
Slice* slice = slices.frontAs<Slice>();
|
Slice* slice = slices.frontAs<Slice>();
|
||||||
m_userData = slice->userData();
|
m_userData = slice->userData();
|
||||||
userData()->Click.connect(base::Bind<void>(&SliceWindow::onPopupUserData, this));
|
userData()->Click.connect([this]{ onPopupUserData(); });
|
||||||
|
|
||||||
if (slices.size() == 1) {
|
if (slices.size() == 1) {
|
||||||
// If we are going to edit just one slice, we indicate like all
|
// If we are going to edit just one slice, we indicate like all
|
||||||
@ -51,8 +50,8 @@ SliceWindow::SliceWindow(const doc::Sprite* sprite,
|
|||||||
boundsW()->setTextf("%d", key->bounds().w);
|
boundsW()->setTextf("%d", key->bounds().w);
|
||||||
boundsH()->setTextf("%d", key->bounds().h);
|
boundsH()->setTextf("%d", key->bounds().h);
|
||||||
|
|
||||||
center()->Click.connect(base::Bind<void>(&SliceWindow::onCenterChange, this));
|
center()->Click.connect([this]{ onCenterChange(); });
|
||||||
pivot()->Click.connect(base::Bind<void>(&SliceWindow::onPivotChange, this));
|
pivot()->Click.connect([this]{ onPivotChange(); });
|
||||||
|
|
||||||
if (key->hasCenter()) {
|
if (key->hasCenter()) {
|
||||||
center()->setSelected(true);
|
center()->setSelected(true);
|
||||||
|
@ -12,7 +12,6 @@
|
|||||||
#include "app/ui/slider2.h"
|
#include "app/ui/slider2.h"
|
||||||
|
|
||||||
#include "app/ui/skin/skin_property.h"
|
#include "app/ui/skin/skin_property.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/clamp.h"
|
#include "base/clamp.h"
|
||||||
#include "ui/manager.h"
|
#include "ui/manager.h"
|
||||||
#include "ui/message.h"
|
#include "ui/message.h"
|
||||||
@ -97,8 +96,8 @@ Slider2::Slider2(int min, int max, int value)
|
|||||||
m_slider.setSizeHint(gfx::Size(128, 0));
|
m_slider.setSizeHint(gfx::Size(128, 0));
|
||||||
skin::get_skin_property(&m_entry)->setLook(skin::MiniLook);
|
skin::get_skin_property(&m_entry)->setLook(skin::MiniLook);
|
||||||
|
|
||||||
m_slider.Change.connect(base::Bind<void>(&Slider2::onSliderChange, this));
|
m_slider.Change.connect([this]{ onSliderChange(); });
|
||||||
m_entry.Change.connect(base::Bind<void>(&Slider2::onEntryChange, this));
|
m_entry.Change.connect([this]{ onEntryChange(); });
|
||||||
|
|
||||||
addChild(&m_slider);
|
addChild(&m_slider);
|
||||||
addChild(&m_entry);
|
addChild(&m_entry);
|
||||||
|
@ -35,7 +35,6 @@
|
|||||||
#include "app/ui/zoom_entry.h"
|
#include "app/ui/zoom_entry.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "app/util/range_utils.h"
|
#include "app/util/range_utils.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
#include "base/string.h"
|
#include "base/string.h"
|
||||||
#include "doc/image.h"
|
#include "doc/image.h"
|
||||||
@ -507,7 +506,7 @@ public:
|
|||||||
makeFloating();
|
makeFloating();
|
||||||
|
|
||||||
addChild(&m_button);
|
addChild(&m_button);
|
||||||
m_button.Click.connect(base::Bind<void>(&SnapToGridWindow::onDisableSnapToGrid, this));
|
m_button.Click.connect([this]{ onDisableSnapToGrid(); });
|
||||||
}
|
}
|
||||||
|
|
||||||
void setDocument(Doc* doc) {
|
void setDocument(Doc* doc) {
|
||||||
@ -605,7 +604,7 @@ StatusBar::StatusBar(TooltipManager* tooltipManager)
|
|||||||
m_frameLabel = new Label("Frame:");
|
m_frameLabel = new Label("Frame:");
|
||||||
m_currentFrame = new GotoFrameEntry();
|
m_currentFrame = new GotoFrameEntry();
|
||||||
m_newFrame = new Button("+");
|
m_newFrame = new Button("+");
|
||||||
m_newFrame->Click.connect(base::Bind<void>(&StatusBar::newFrame, this));
|
m_newFrame->Click.connect([this]{ newFrame(); });
|
||||||
m_zoomEntry = new ZoomEntry;
|
m_zoomEntry = new ZoomEntry;
|
||||||
m_zoomEntry->ZoomChange.connect(&StatusBar::onChangeZoom, this);
|
m_zoomEntry->ZoomChange.connect(&StatusBar::onChangeZoom, this);
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
// Copyright (C) 2018 Igara Studio S.A.
|
// Copyright (C) 2018-2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2017 David Capello
|
// Copyright (C) 2001-2017 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -18,7 +18,6 @@
|
|||||||
#include "app/ui/keyboard_shortcuts.h"
|
#include "app/ui/keyboard_shortcuts.h"
|
||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "ui/tooltips.h"
|
#include "ui/tooltips.h"
|
||||||
|
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
@ -50,7 +49,7 @@ AniControls::AniControls(TooltipManager* tooltipManager)
|
|||||||
addItem(theme->parts.aniPlay());
|
addItem(theme->parts.aniPlay());
|
||||||
addItem(theme->parts.aniNext());
|
addItem(theme->parts.aniNext());
|
||||||
addItem(theme->parts.aniLast());
|
addItem(theme->parts.aniLast());
|
||||||
ItemChange.connect(base::Bind(&AniControls::onClickButton, this));
|
ItemChange.connect([this]{ onClickButton(); });
|
||||||
|
|
||||||
setTriggerOnMouseUp(true);
|
setTriggerOnMouseUp(true);
|
||||||
setTransparent(true);
|
setTransparent(true);
|
||||||
|
@ -44,7 +44,6 @@
|
|||||||
#include "app/util/layer_boundaries.h"
|
#include "app/util/layer_boundaries.h"
|
||||||
#include "app/util/layer_utils.h"
|
#include "app/util/layer_utils.h"
|
||||||
#include "app/util/readable_time.h"
|
#include "app/util/readable_time.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/clamp.h"
|
#include "base/clamp.h"
|
||||||
#include "base/convert_to.h"
|
#include "base/convert_to.h"
|
||||||
#include "base/memory.h"
|
#include "base/memory.h"
|
||||||
@ -354,7 +353,7 @@ void Timeline::updateUsingEditor(Editor* editor)
|
|||||||
DocumentPreferences& docPref = Preferences::instance().document(app_document);
|
DocumentPreferences& docPref = Preferences::instance().document(app_document);
|
||||||
|
|
||||||
m_thumbnailsPrefConn = docPref.thumbnails.AfterChange.connect(
|
m_thumbnailsPrefConn = docPref.thumbnails.AfterChange.connect(
|
||||||
base::Bind<void>(&Timeline::onThumbnailsPrefChange, this));
|
[this]{ onThumbnailsPrefChange(); });
|
||||||
|
|
||||||
setZoom(
|
setZoom(
|
||||||
docPref.thumbnails.enabled() ?
|
docPref.thumbnails.enabled() ?
|
||||||
@ -377,7 +376,7 @@ void Timeline::updateUsingEditor(Editor* editor)
|
|||||||
m_clk.part = PART_NOTHING;
|
m_clk.part = PART_NOTHING;
|
||||||
|
|
||||||
m_firstFrameConn = Preferences::instance().document(m_document)
|
m_firstFrameConn = Preferences::instance().document(m_document)
|
||||||
.timeline.firstFrame.AfterChange.connect(base::Bind<void>(&Timeline::invalidate, this));
|
.timeline.firstFrame.AfterChange.connect([this]{ invalidate(); });
|
||||||
|
|
||||||
setFocusStop(true);
|
setFocusStop(true);
|
||||||
regenerateRows();
|
regenerateRows();
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
// Copyright (C) 2018 Igara Studio S.A.
|
// Copyright (C) 2018-2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2018 David Capello
|
// Copyright (C) 2001-2018 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -25,7 +25,6 @@
|
|||||||
#include "app/ui/skin/skin_theme.h"
|
#include "app/ui/skin/skin_theme.h"
|
||||||
#include "app/ui/status_bar.h"
|
#include "app/ui/status_bar.h"
|
||||||
#include "app/ui_context.h"
|
#include "app/ui_context.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "fmt/format.h"
|
#include "fmt/format.h"
|
||||||
#include "gfx/size.h"
|
#include "gfx/size.h"
|
||||||
#include "obs/signal.h"
|
#include "obs/signal.h"
|
||||||
@ -405,7 +404,7 @@ void ToolBar::openPopupWindow(int group_index, ToolGroup* tool_group)
|
|||||||
|
|
||||||
// In case this tool contains more than just one tool, show the popup window
|
// In case this tool contains more than just one tool, show the popup window
|
||||||
m_popupWindow = new TransparentPopupWindow(PopupWindow::ClickBehavior::CloseOnClickOutsideHotRegion);
|
m_popupWindow = new TransparentPopupWindow(PopupWindow::ClickBehavior::CloseOnClickOutsideHotRegion);
|
||||||
m_closeConn = m_popupWindow->Close.connect(base::Bind<void, ToolBar, ToolBar>(&ToolBar::onClosePopup, this));
|
m_closeConn = m_popupWindow->Close.connect([this]{ onClosePopup(); });
|
||||||
m_openedRecently = true;
|
m_openedRecently = true;
|
||||||
|
|
||||||
ToolStrip* toolstrip = new ToolStrip(tool_group, this);
|
ToolStrip* toolstrip = new ToolStrip(tool_group, this);
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
// Copyright (C) 2019 Igara Studio S.A.
|
// Copyright (C) 2019-2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2018 David Capello
|
// Copyright (C) 2001-2018 David Capello
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
@ -27,7 +27,6 @@
|
|||||||
#include "app/widget_not_found.h"
|
#include "app/widget_not_found.h"
|
||||||
#include "app/xml_document.h"
|
#include "app/xml_document.h"
|
||||||
#include "app/xml_exception.h"
|
#include "app/xml_exception.h"
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/exception.h"
|
#include "base/exception.h"
|
||||||
#include "base/fs.h"
|
#include "base/fs.h"
|
||||||
#include "base/memory.h"
|
#include "base/memory.h"
|
||||||
@ -184,7 +183,7 @@ Widget* WidgetLoader::convertXmlElementToWidget(const TiXmlElement* elem, Widget
|
|||||||
|
|
||||||
if (closewindow) {
|
if (closewindow) {
|
||||||
static_cast<Button*>(widget)
|
static_cast<Button*>(widget)
|
||||||
->Click.connect(base::Bind<void>(&Widget::closeWindow, widget));
|
->Click.connect([widget]{ widget->closeWindow(); });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (elem_name == "check") {
|
else if (elem_name == "check") {
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// Aseprite UI Library
|
// Aseprite UI Library
|
||||||
// Copyright (C) 2019 Igara Studio S.A.
|
// Copyright (C) 2019-2020 Igara Studio S.A.
|
||||||
// Copyright (C) 2001-2018 David Capello
|
// Copyright (C) 2001-2018 David Capello
|
||||||
//
|
//
|
||||||
// This file is released under the terms of the MIT license.
|
// This file is released under the terms of the MIT license.
|
||||||
@ -35,7 +35,6 @@
|
|||||||
|
|
||||||
#include "ui/alert.h"
|
#include "ui/alert.h"
|
||||||
|
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/clamp.h"
|
#include "base/clamp.h"
|
||||||
#include "base/string.h"
|
#include "base/string.h"
|
||||||
#include "ui/box.h"
|
#include "ui/box.h"
|
||||||
@ -119,7 +118,7 @@ void Alert::addButton(const std::string& text)
|
|||||||
char id[256];
|
char id[256];
|
||||||
sprintf(id, "button-%lu", m_buttons.size());
|
sprintf(id, "button-%lu", m_buttons.size());
|
||||||
button->setId(id);
|
button->setId(id);
|
||||||
button->Click.connect(base::Bind<void>(&Window::closeWindow, this, button));
|
button->Click.connect([this, button]{ closeWindow(button); });
|
||||||
|
|
||||||
m_buttonsPlaceholder->addChild(button);
|
m_buttonsPlaceholder->addChild(button);
|
||||||
}
|
}
|
||||||
|
@ -11,7 +11,6 @@
|
|||||||
|
|
||||||
#include "ui/entry.h"
|
#include "ui/entry.h"
|
||||||
|
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/clamp.h"
|
#include "base/clamp.h"
|
||||||
#include "base/string.h"
|
#include "base/string.h"
|
||||||
#include "os/draw_text.h"
|
#include "os/draw_text.h"
|
||||||
@ -809,9 +808,9 @@ void Entry::showEditPopupMenu(const gfx::Point& pt)
|
|||||||
menu.addChild(&cut);
|
menu.addChild(&cut);
|
||||||
menu.addChild(©);
|
menu.addChild(©);
|
||||||
menu.addChild(&paste);
|
menu.addChild(&paste);
|
||||||
cut.Click.connect(base::Bind(&Entry::executeCmd, this, EntryCmd::Cut, 0, false));
|
cut.Click.connect([this]{ executeCmd(EntryCmd::Cut, 0, false); });
|
||||||
copy.Click.connect(base::Bind(&Entry::executeCmd, this, EntryCmd::Copy, 0, false));
|
copy.Click.connect([this]{ executeCmd(EntryCmd::Copy, 0, false); });
|
||||||
paste.Click.connect(base::Bind(&Entry::executeCmd, this, EntryCmd::Paste, 0, false));
|
paste.Click.connect([this]{ executeCmd(EntryCmd::Paste, 0, false); });
|
||||||
|
|
||||||
if (isReadOnly()) {
|
if (isReadOnly()) {
|
||||||
cut.setEnabled(false);
|
cut.setEnabled(false);
|
||||||
|
@ -11,7 +11,6 @@
|
|||||||
|
|
||||||
#include "updater/check_update.h"
|
#include "updater/check_update.h"
|
||||||
|
|
||||||
#include "base/bind.h"
|
|
||||||
#include "base/convert_to.h"
|
#include "base/convert_to.h"
|
||||||
#include "base/debug.h"
|
#include "base/debug.h"
|
||||||
#include "net/http_headers.h"
|
#include "net/http_headers.h"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user