diff --git a/data/themes/default/theme.xml b/data/themes/default/theme.xml
index fb635b5c3..071e28d0e 100644
--- a/data/themes/default/theme.xml
+++ b/data/themes/default/theme.xml
@@ -65,7 +65,6 @@
-
@@ -1014,6 +1013,14 @@
+
+
+
+
diff --git a/data/widgets/home_view.xml b/data/widgets/home_view.xml
index 59933361a..ba10273ba 100644
--- a/data/widgets/home_view.xml
+++ b/data/widgets/home_view.xml
@@ -20,8 +20,10 @@
-
+ expansive="true" by="percetage" position="50"
+ style="workspace_splitter">
+
diff --git a/data/widgets/main_window.xml b/data/widgets/main_window.xml
index 011e0c279..dcff38426 100644
--- a/data/widgets/main_window.xml
+++ b/data/widgets/main_window.xml
@@ -1,5 +1,5 @@
-
+
@@ -7,14 +7,16 @@
+ by="pixel"
+ style="workspace_splitter">
+ by="percetage" position="100"
+ style="workspace_splitter">
diff --git a/src/app/ui/color_bar.cpp b/src/app/ui/color_bar.cpp
index 3b299ff58..6a11d34fb 100644
--- a/src/app/ui/color_bar.cpp
+++ b/src/app/ui/color_bar.cpp
@@ -160,6 +160,7 @@ ColorBar::ColorBar(int align)
m_splitter.setId("palette_spectrum_splitter");
m_splitter.setPosition(80);
m_splitter.setExpansive(true);
+ m_splitter.setStyle(theme->newStyles.workspaceSplitter());
m_splitter.addChild(&m_palettePlaceholder);
m_splitter.addChild(&m_selectorPlaceholder);
diff --git a/src/app/ui/skin/skin_theme.cpp b/src/app/ui/skin/skin_theme.cpp
index 1735b3219..50c191794 100644
--- a/src/app/ui/skin/skin_theme.cpp
+++ b/src/app/ui/skin/skin_theme.cpp
@@ -755,8 +755,8 @@ void SkinTheme::initWidget(Widget* widget)
break;
case kSplitterWidget:
- BORDER(0);
widget->setChildSpacing(3 * scale);
+ widget->setStyle(newStyles.splitter());
break;
case kRadioWidget:
@@ -1271,13 +1271,6 @@ void SkinTheme::paintMenuItem(ui::PaintEvent& ev)
}
}
-void SkinTheme::paintSplitter(PaintEvent& ev)
-{
- Graphics* g = ev.graphics();
-
- g->fillRect(colors.splitterNormalFace(), g->getClipBounds());
-}
-
void SkinTheme::paintRadioButton(PaintEvent& ev)
{
Graphics* g = ev.graphics();
diff --git a/src/app/ui/skin/skin_theme.h b/src/app/ui/skin/skin_theme.h
index 5f0134279..fd05e339d 100644
--- a/src/app/ui/skin/skin_theme.h
+++ b/src/app/ui/skin/skin_theme.h
@@ -63,7 +63,6 @@ namespace app {
void paintListItem(ui::PaintEvent& ev) override;
void paintMenu(ui::PaintEvent& ev) override;
void paintMenuItem(ui::PaintEvent& ev) override;
- void paintSplitter(ui::PaintEvent& ev) override;
void paintRadioButton(ui::PaintEvent& ev) override;
void paintSeparator(ui::PaintEvent& ev) override;
void paintSlider(ui::PaintEvent& ev) override;
diff --git a/src/app/ui/workspace_panel.cpp b/src/app/ui/workspace_panel.cpp
index 59dab8518..02071abc0 100644
--- a/src/app/ui/workspace_panel.cpp
+++ b/src/app/ui/workspace_panel.cpp
@@ -1,5 +1,5 @@
// Aseprite
-// Copyright (C) 2001-2015 David Capello
+// Copyright (C) 2001-2017 David Capello
//
// This program is distributed under the terms of
// the End-User License Agreement for Aseprite.
@@ -267,6 +267,7 @@ DropViewAtResult WorkspacePanel::dropViewAt(const gfx::Point& pos, WorkspacePane
Splitter* splitter = new Splitter(Splitter::ByPercentage, splitterAlign);
splitter->setExpansive(true);
+ splitter->setStyle(SkinTheme::instance()->newStyles.workspaceSplitter());
Widget* parent = this->parent();
if (parent->type() == kBoxWidget) {
diff --git a/src/ui/splitter.cpp b/src/ui/splitter.cpp
index 0d3c7cc95..444b62bfe 100644
--- a/src/ui/splitter.cpp
+++ b/src/ui/splitter.cpp
@@ -1,5 +1,5 @@
// Aseprite UI Library
-// Copyright (C) 2001-2016 David Capello
+// Copyright (C) 2001-2017 David Capello
//
// This file is released under the terms of the MIT license.
// Read LICENSE.txt for more information.
@@ -181,7 +181,7 @@ void Splitter::onResize(ResizeEvent& ev)
{
#define LAYOUT_TWO_CHILDREN(x, y, w, h, l, t, r, b) \
{ \
- avail = rc.w - this->childSpacing(); \
+ avail = rc.w - childSpacing(); \
\
pos.x = rc.x; \
pos.y = rc.y; \
@@ -201,7 +201,7 @@ void Splitter::onResize(ResizeEvent& ev)
child1->setBounds(pos); \
gfx::Rect child1Pos = child1->bounds(); \
\
- pos.x = child1Pos.x + child1Pos.w + this->childSpacing(); \
+ pos.x = child1Pos.x + child1Pos.w + childSpacing(); \
pos.y = rc.y; \
pos.w = avail - child1Pos.w; \
pos.h = rc.h; \
@@ -233,11 +233,6 @@ void Splitter::onResize(ResizeEvent& ev)
child2->setBounds(rc);
}
-void Splitter::onPaint(PaintEvent& ev)
-{
- theme()->paintSplitter(ev);
-}
-
void Splitter::onSizeHint(SizeHintEvent& ev)
{
#define GET_CHILD_SIZE(w, h) \
@@ -249,7 +244,7 @@ void Splitter::onSizeHint(SizeHintEvent& ev)
#define FINAL_SIZE(w) \
do { \
w *= visibleChildren; \
- w += this->childSpacing() * (visibleChildren-1); \
+ w += childSpacing() * (visibleChildren-1); \
} while(0)
int visibleChildren;
diff --git a/src/ui/splitter.h b/src/ui/splitter.h
index 91b511634..526bf6e97 100644
--- a/src/ui/splitter.h
+++ b/src/ui/splitter.h
@@ -1,5 +1,5 @@
// Aseprite UI Library
-// Copyright (C) 2001-2013, 2015 David Capello
+// Copyright (C) 2001-2017 David Capello
//
// This file is released under the terms of the MIT license.
// Read LICENSE.txt for more information.
@@ -25,7 +25,6 @@ namespace ui {
// Events
bool onProcessMessage(Message* msg) override;
void onResize(ResizeEvent& ev) override;
- void onPaint(PaintEvent& ev) override;
void onSizeHint(SizeHintEvent& ev) override;
void onLoadLayout(LoadLayoutEvent& ev) override;
void onSaveLayout(SaveLayoutEvent& ev) override;
diff --git a/src/ui/theme.h b/src/ui/theme.h
index e5b5e0edc..1651060f2 100644
--- a/src/ui/theme.h
+++ b/src/ui/theme.h
@@ -61,7 +61,6 @@ namespace ui {
virtual void paintListItem(PaintEvent& ev) = 0;
virtual void paintMenu(PaintEvent& ev) = 0;
virtual void paintMenuItem(PaintEvent& ev) = 0;
- virtual void paintSplitter(PaintEvent& ev) = 0;
virtual void paintRadioButton(PaintEvent& ev) = 0;
virtual void paintSeparator(PaintEvent& ev) = 0;
virtual void paintSlider(PaintEvent& ev) = 0;