Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(108)

Unified Diff: ui/views/border.cc

Issue 1401933004: Switch tab.cc to use an empty border for the contents. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix test Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ui/views/border.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/views/border.cc
diff --git a/ui/views/border.cc b/ui/views/border.cc
index ed024762374e51f740383b55a76341e17fdf58c3..95628735c7dd6afa1dd74c0e0504b0b1b61193b3 100644
--- a/ui/views/border.cc
+++ b/ui/views/border.cc
@@ -15,9 +15,9 @@ namespace views {
namespace {
// A simple border with different thicknesses on each side and single color.
-class SidedSolidBorder : public Border {
+class SolidSidedBorder : public Border {
public:
- SidedSolidBorder(int top, int left, int bottom, int right, SkColor color);
+ SolidSidedBorder(const gfx::Insets& insets, SkColor color);
// Overridden from Border:
void Paint(const View& view, gfx::Canvas* canvas) override;
@@ -25,22 +25,18 @@ class SidedSolidBorder : public Border {
gfx::Size GetMinimumSize() const override;
private:
- const SkColor color_;
const gfx::Insets insets_;
+ const SkColor color_;
- DISALLOW_COPY_AND_ASSIGN(SidedSolidBorder);
+ DISALLOW_COPY_AND_ASSIGN(SolidSidedBorder);
};
-SidedSolidBorder::SidedSolidBorder(int top,
- int left,
- int bottom,
- int right,
- SkColor color)
- : color_(color),
- insets_(top, left, bottom, right) {
+SolidSidedBorder::SolidSidedBorder(const gfx::Insets& insets, SkColor color)
+ : insets_(insets),
+ color_(color) {
}
-void SidedSolidBorder::Paint(const View& view, gfx::Canvas* canvas) {
+void SolidSidedBorder::Paint(const View& view, gfx::Canvas* canvas) {
// Top border.
canvas->FillRect(gfx::Rect(0, 0, view.width(), insets_.top()), color_);
// Left border.
@@ -55,36 +51,22 @@ void SidedSolidBorder::Paint(const View& view, gfx::Canvas* canvas) {
color_);
}
-gfx::Insets SidedSolidBorder::GetInsets() const {
+gfx::Insets SolidSidedBorder::GetInsets() const {
return insets_;
}
-gfx::Size SidedSolidBorder::GetMinimumSize() const {
+gfx::Size SolidSidedBorder::GetMinimumSize() const {
return gfx::Size(insets_.width(), insets_.height());
}
-// A variation of SidedSolidBorder, where each side has the same thickness.
-class SolidBorder : public SidedSolidBorder {
- public:
- SolidBorder(int thickness, SkColor color)
- : SidedSolidBorder(thickness, thickness, thickness, thickness, color) {
- }
-
- private:
- DISALLOW_COPY_AND_ASSIGN(SolidBorder);
-};
-
class EmptyBorder : public Border {
public:
- EmptyBorder(int top, int left, int bottom, int right)
- : insets_(top, left, bottom, right) {}
+ explicit EmptyBorder(const gfx::Insets& insets);
// Overridden from Border:
- void Paint(const View& view, gfx::Canvas* canvas) override {}
-
- gfx::Insets GetInsets() const override { return insets_; }
-
- gfx::Size GetMinimumSize() const override { return gfx::Size(); }
+ void Paint(const View& view, gfx::Canvas* canvas) override;
+ gfx::Insets GetInsets() const override ;
+ gfx::Size GetMinimumSize() const override;
private:
const gfx::Insets insets_;
@@ -92,26 +74,28 @@ class EmptyBorder : public Border {
DISALLOW_COPY_AND_ASSIGN(EmptyBorder);
};
-class BorderPainter : public Border {
- public:
- explicit BorderPainter(Painter* painter, const gfx::Insets& insets)
- : painter_(painter),
- insets_(insets) {
- DCHECK(painter);
- }
+EmptyBorder::EmptyBorder(const gfx::Insets& insets) : insets_(insets) {
+}
- ~BorderPainter() override {}
+void EmptyBorder::Paint(const View& view, gfx::Canvas* canvas) {
+}
- // Overridden from Border:
- void Paint(const View& view, gfx::Canvas* canvas) override {
- Painter::PaintPainterAt(canvas, painter_.get(), view.GetLocalBounds());
- }
+gfx::Insets EmptyBorder::GetInsets() const {
+ return insets_;
+}
+
+gfx::Size EmptyBorder::GetMinimumSize() const {
+ return gfx::Size();
+}
- gfx::Insets GetInsets() const override { return insets_; }
+class BorderPainter : public Border {
+ public:
+ BorderPainter(Painter* painter, const gfx::Insets& insets);
- gfx::Size GetMinimumSize() const override {
- return painter_->GetMinimumSize();
- }
+ // Overridden from Border:
+ void Paint(const View& view, gfx::Canvas* canvas) override;
+ gfx::Insets GetInsets() const override;
+ gfx::Size GetMinimumSize() const override;
private:
scoped_ptr<Painter> painter_;
@@ -120,6 +104,24 @@ class BorderPainter : public Border {
DISALLOW_COPY_AND_ASSIGN(BorderPainter);
};
+BorderPainter::BorderPainter(Painter* painter, const gfx::Insets& insets)
+ : painter_(painter),
+ insets_(insets) {
+ DCHECK(painter);
+}
+
+void BorderPainter::Paint(const View& view, gfx::Canvas* canvas) {
+ Painter::PaintPainterAt(canvas, painter_.get(), view.GetLocalBounds());
+}
+
+gfx::Insets BorderPainter::GetInsets() const {
+ return insets_;
+}
+
+gfx::Size BorderPainter::GetMinimumSize() const {
+ return painter_->GetMinimumSize();
+}
+
} // namespace
Border::Border() {
@@ -135,7 +137,13 @@ scoped_ptr<Border> Border::NullBorder() {
// static
scoped_ptr<Border> Border::CreateSolidBorder(int thickness, SkColor color) {
- return make_scoped_ptr(new SolidBorder(thickness, color));
+ return make_scoped_ptr(new SolidSidedBorder(
+ gfx::Insets(thickness, thickness, thickness, thickness), color));
+}
+
+// static
+scoped_ptr<Border> Border::CreateEmptyBorder(const gfx::Insets& insets) {
+ return make_scoped_ptr(new EmptyBorder(insets));
}
// static
@@ -143,7 +151,7 @@ scoped_ptr<Border> Border::CreateEmptyBorder(int top,
int left,
int bottom,
int right) {
- return make_scoped_ptr(new EmptyBorder(top, left, bottom, right));
+ return CreateEmptyBorder(gfx::Insets(top, left, bottom, right));
}
// static
@@ -152,7 +160,8 @@ scoped_ptr<Border> Border::CreateSolidSidedBorder(int top,
int bottom,
int right,
SkColor color) {
- return make_scoped_ptr(new SidedSolidBorder(top, left, bottom, right, color));
+ return make_scoped_ptr(new SolidSidedBorder(
+ gfx::Insets(top, left, bottom, right), color));
}
// static
« no previous file with comments | « ui/views/border.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698