Chromium Code Reviews| Index: ui/views/controls/button/custom_button.cc |
| diff --git a/ui/views/controls/button/custom_button.cc b/ui/views/controls/button/custom_button.cc |
| index 4a15975d5b836c3816a20cf8688530db10390ce7..3259f9df375b2903db9211a019a455d8c32f660b 100644 |
| --- a/ui/views/controls/button/custom_button.cc |
| +++ b/ui/views/controls/button/custom_button.cc |
| @@ -9,6 +9,13 @@ |
| #include "ui/events/keycodes/keyboard_codes.h" |
| #include "ui/gfx/animation/throb_animation.h" |
| #include "ui/gfx/screen.h" |
| +#include "ui/views/controls/button/blue_button.h" |
| +#include "ui/views/controls/button/checkbox.h" |
| +#include "ui/views/controls/button/image_button.h" |
| +#include "ui/views/controls/button/label_button.h" |
| +#include "ui/views/controls/button/menu_button.h" |
| +#include "ui/views/controls/button/radio_button.h" |
| +#include "ui/views/controls/button/text_button.h" |
| #include "ui/views/widget/widget.h" |
| namespace views { |
| @@ -22,6 +29,27 @@ const char CustomButton::kViewClassName[] = "CustomButton"; |
| //////////////////////////////////////////////////////////////////////////////// |
| // CustomButton, public: |
| +// static |
| +const CustomButton* CustomButton::AsCustomButton(const views::View* view) { |
| + return AsCustomButton(const_cast<views::View*>(view)); |
| +} |
| + |
| +CustomButton* CustomButton::AsCustomButton(views::View* view) { |
| + if (view) { |
| + const char* classname = view->GetClassName(); |
|
sky
2013/12/02 14:28:01
check null?
oshima
2013/12/02 20:00:59
I believe the expectation is this will never retur
|
| + if (!strcmp(classname, Checkbox::kViewClassName) || |
| + !strcmp(classname, CustomButton::kViewClassName) || |
| + !strcmp(classname, ImageButton::kViewClassName) || |
| + !strcmp(classname, LabelButton::kViewClassName) || |
| + !strcmp(classname, RadioButton::kViewClassName) || |
| + !strcmp(classname, MenuButton::kViewClassName) || |
| + !strcmp(classname, TextButton::kViewClassName)) { |
| + return static_cast<CustomButton*>(view); |
| + } |
| + } |
| + return NULL; |
| +} |
| + |
| CustomButton::~CustomButton() { |
| } |