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

Side by Side Diff: ui/views/bubble/bubble_border.h

Issue 2343913003: Implement Harmony spec for dialog/bubble borders. (Closed)
Patch Set: compile fix Created 4 years, 3 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 unified diff | Download patch
« no previous file with comments | « no previous file | ui/views/bubble/bubble_border.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef UI_VIEWS_BUBBLE_BUBBLE_BORDER_H_ 5 #ifndef UI_VIEWS_BUBBLE_BUBBLE_BORDER_H_
6 #define UI_VIEWS_BUBBLE_BUBBLE_BORDER_H_ 6 #define UI_VIEWS_BUBBLE_BUBBLE_BORDER_H_
7 7
8 #include <memory> 8 #include <memory>
9 9
10 #include "base/compiler_specific.h" 10 #include "base/compiler_specific.h"
(...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after
175 bool use_theme_background_color() { return use_theme_background_color_; } 175 bool use_theme_background_color() { return use_theme_background_color_; }
176 176
177 // Sets a desired pixel distance between the arrow tip and the outside edge of 177 // Sets a desired pixel distance between the arrow tip and the outside edge of
178 // the neighboring border image. For example: |----offset----| 178 // the neighboring border image. For example: |----offset----|
179 // '(' represents shadow around the '{' edge: ((({ ^ }))) 179 // '(' represents shadow around the '{' edge: ((({ ^ })))
180 // The arrow will still anchor to the same location but the bubble will shift 180 // The arrow will still anchor to the same location but the bubble will shift
181 // location to place the arrow |offset| pixels from the perpendicular edge. 181 // location to place the arrow |offset| pixels from the perpendicular edge.
182 void set_arrow_offset(int offset) { arrow_offset_ = offset; } 182 void set_arrow_offset(int offset) { arrow_offset_ = offset; }
183 183
184 // Sets the way the arrow is actually painted. Default is PAINT_NORMAL. 184 // Sets the way the arrow is actually painted. Default is PAINT_NORMAL.
185 void set_paint_arrow(ArrowPaintType value) { arrow_paint_type_ = value; } 185 void set_paint_arrow(ArrowPaintType value);
186 186
187 // Get the desired widget bounds (in screen coordinates) given the anchor rect 187 // Get the desired widget bounds (in screen coordinates) given the anchor rect
188 // and bubble content size; calculated from shadow and arrow image dimensions. 188 // and bubble content size; calculated from shadow and arrow image dimensions.
189 virtual gfx::Rect GetBounds(const gfx::Rect& anchor_rect, 189 virtual gfx::Rect GetBounds(const gfx::Rect& anchor_rect,
190 const gfx::Size& contents_size) const; 190 const gfx::Size& contents_size) const;
191 191
192 // Get the border exterior thickness, including stroke and shadow, in pixels. 192 // Get the border exterior thickness, including stroke and shadow, in pixels.
193 int GetBorderThickness() const; 193 int GetBorderThickness() const;
194 194
195 // Returns the corner radius of the current image set. 195 // Returns the corner radius of the current image set.
(...skipping 26 matching lines...) Expand all
222 // The border and arrow stroke size used in image assets, in pixels. 222 // The border and arrow stroke size used in image assets, in pixels.
223 static const int kStroke; 223 static const int kStroke;
224 224
225 gfx::Size GetSizeForContentsSize(const gfx::Size& contents_size) const; 225 gfx::Size GetSizeForContentsSize(const gfx::Size& contents_size) const;
226 gfx::ImageSkia* GetArrowImage() const; 226 gfx::ImageSkia* GetArrowImage() const;
227 gfx::Rect GetArrowRect(const gfx::Rect& bounds) const; 227 gfx::Rect GetArrowRect(const gfx::Rect& bounds) const;
228 void GetArrowPathFromArrowBounds(const gfx::Rect& arrow_bounds, 228 void GetArrowPathFromArrowBounds(const gfx::Rect& arrow_bounds,
229 SkPath* path) const; 229 SkPath* path) const;
230 void DrawArrow(gfx::Canvas* canvas, const gfx::Rect& arrow_bounds) const; 230 void DrawArrow(gfx::Canvas* canvas, const gfx::Rect& arrow_bounds) const;
231 231
232 void PaintMd(const View& view, gfx::Canvas* canvas);
233
232 internal::BorderImages* GetImagesForTest() const; 234 internal::BorderImages* GetImagesForTest() const;
233 235
234 Arrow arrow_; 236 Arrow arrow_;
235 int arrow_offset_; 237 int arrow_offset_;
236 ArrowPaintType arrow_paint_type_; 238 ArrowPaintType arrow_paint_type_;
237 BubbleAlignment alignment_; 239 BubbleAlignment alignment_;
238 Shadow shadow_; 240 Shadow shadow_;
239 internal::BorderImages* images_; 241 internal::BorderImages* images_;
240 SkColor background_color_; 242 SkColor background_color_;
241 bool use_theme_background_color_; 243 bool use_theme_background_color_;
(...skipping 12 matching lines...) Expand all
254 256
255 private: 257 private:
256 BubbleBorder* border_; 258 BubbleBorder* border_;
257 259
258 DISALLOW_COPY_AND_ASSIGN(BubbleBackground); 260 DISALLOW_COPY_AND_ASSIGN(BubbleBackground);
259 }; 261 };
260 262
261 } // namespace views 263 } // namespace views
262 264
263 #endif // UI_VIEWS_BUBBLE_BUBBLE_BORDER_H_ 265 #endif // UI_VIEWS_BUBBLE_BUBBLE_BORDER_H_
OLDNEW
« no previous file with comments | « no previous file | ui/views/bubble/bubble_border.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698