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

Unified Diff: chrome/browser/chromeos/login/default_images_view.cc

Issue 8436002: [cros] Remove Views implementation for login/OOBE. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: merge Created 9 years, 1 month 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
Index: chrome/browser/chromeos/login/default_images_view.cc
diff --git a/chrome/browser/chromeos/login/default_images_view.cc b/chrome/browser/chromeos/login/default_images_view.cc
deleted file mode 100644
index a4d49da06715f76a7ea866ce0713a0b1fb06ee1f..0000000000000000000000000000000000000000
--- a/chrome/browser/chromeos/login/default_images_view.cc
+++ /dev/null
@@ -1,292 +0,0 @@
-// Copyright (c) 2011 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "chrome/browser/chromeos/login/default_images_view.h"
-
-#include "base/logging.h"
-#include "base/utf_string_conversions.h"
-#include "chrome/browser/chromeos/login/default_user_images.h"
-#include "chrome/browser/chromeos/login/rounded_rect_painter.h"
-#include "grit/generated_resources.h"
-#include "grit/theme_resources.h"
-#include "skia/ext/image_operations.h"
-#include "third_party/skia/include/core/SkColor.h"
-#include "ui/base/l10n/l10n_util.h"
-#include "ui/base/resource/resource_bundle.h"
-#include "views/background.h"
-#include "views/border.h"
-#include "views/controls/button/image_button.h"
-#include "views/layout/grid_layout.h"
-
-namespace chromeos {
-
-namespace {
-
-// Size of the default image within the view.
-const int kDefaultImageSize = 64;
-// Margin from left and right sides to the view contents.
-const int kHorizontalMargin = 10;
-// Margin from top and bottom sides to the view contents.
-const int kVerticalMargin = 10;
-// Padding between image columns.
-const int kHorizontalPadding = 20;
-// Padding between image rows.
-const int kVerticalPadding = 15;
-// Number of columns in a row of default images.
-const int kColumnsCount = 5;
-// Size of the border around default image.
-const int kImageBorderSize = 1;
-// Color of default image border.
-const SkColor kImageBorderColor = SkColorSetARGB(38, 0, 0, 0);
-// Color of default image background.
-const SkColor kImageBackgroundColor = SK_ColorWHITE;
-// We give each image control an ID so we could distinguish them. Since 0 is
-// the default ID we want an offset for IDs we set.
-const int kImageStartId = 100;
-// ID for image control for video capture.
-const int kCaptureButtonId = 1000;
-// Index of the item for video capture.
-const int kCaptureButtonIndex = 0;
-// A number of the first buttons that don't correspond to any default image
-// (i.e. button to take a photo).
-const int kNonDefaultImageButtonsCount = 1;
-
-} // namespace
-
-// Image button with border and background. Corrects view size by border
-// insets as ImageButton ignores it.
-class UserImageButton : public views::ImageButton {
- public:
- explicit UserImageButton(views::ButtonListener* listener);
-
- // Overridden from views::View:
- virtual gfx::Size GetPreferredSize();
-
- private:
- DISALLOW_COPY_AND_ASSIGN(UserImageButton);
-};
-
-UserImageButton::UserImageButton(views::ButtonListener* listener)
- : ImageButton(listener) {
- set_border(
- views::Border::CreateSolidBorder(kImageBorderSize, kImageBorderColor));
- set_background(
- views::Background::CreateSolidBackground(kImageBackgroundColor));
- SetImageAlignment(ALIGN_CENTER, ALIGN_MIDDLE);
-}
-
-gfx::Size UserImageButton::GetPreferredSize() {
- gfx::Size size = views::ImageButton::GetPreferredSize();
- size.Enlarge(GetInsets().width(), GetInsets().height());
- return size;
-}
-
-
-DefaultImagesView::DefaultImagesView(Delegate* delegate)
- : selected_image_index_(-1),
- delegate_(delegate) {
-}
-
-DefaultImagesView::~DefaultImagesView() {}
-
-void DefaultImagesView::Init() {
- UserImageButton* capture_button = new UserImageButton(this);
- capture_button->set_id(kCaptureButtonId);
- capture_button->SetTooltipText(
- l10n_util::GetStringUTF16(IDS_OPTIONS_CHANGE_PICTURE_TAKE_PHOTO));
- InitButton(IDR_BUTTON_USER_IMAGE_TAKE_PHOTO, capture_button);
- default_images_.push_back(capture_button);
- for (int i = 0; i < kDefaultImagesCount; ++i) {
- UserImageButton* image_button = new UserImageButton(this);
- image_button->set_id(i + kImageStartId);
- InitButton(kDefaultImageResources[i], image_button);
- default_images_.push_back(image_button);
- }
- InitLayout();
-}
-
-int DefaultImagesView::GetDefaultImageIndex() const {
- if (selected_image_index_ == -1)
- return -1;
- else
- return selected_image_index_ - kNonDefaultImageButtonsCount;
-}
-
-void DefaultImagesView::SetDefaultImageIndex(int image_index) {
- selected_image_index_ = image_index + kNonDefaultImageButtonsCount;
- if (delegate_)
- delegate_->OnImageSelected(image_index % kDefaultImagesCount);
-}
-
-void DefaultImagesView::ClearSelection() {
- selected_image_index_ = -1;
-}
-
-void DefaultImagesView::SelectNextImage() {
- // If there's no selection, start at 0.
- if (selected_image_index_ < 0)
- selected_image_index_ = 0;
-
- ++selected_image_index_;
- if (selected_image_index_ >= kNonDefaultImageButtonsCount +
- kDefaultImagesCount) {
- selected_image_index_ = 0;
- }
-
- UpdateSelectedImage();
-}
-
-void DefaultImagesView::SelectPreviousImage() {
- // If there's no selection, start at 0.
- if (selected_image_index_ < 0)
- selected_image_index_ = 0;
-
- --selected_image_index_;
- if (selected_image_index_ < 0) {
- selected_image_index_ = kNonDefaultImageButtonsCount +
- kDefaultImagesCount - 1;
- }
-
- UpdateSelectedImage();
-}
-
-void DefaultImagesView::SelectNextRowImage() {
- // If there's no selection, start at 0.
- if (selected_image_index_ < 0)
- selected_image_index_ = 0;
-
- selected_image_index_ += kColumnsCount;
- if (selected_image_index_ >= kDefaultImagesCount +
- kNonDefaultImageButtonsCount) {
- selected_image_index_ -= kDefaultImagesCount + kNonDefaultImageButtonsCount;
- }
-
- UpdateSelectedImage();
-}
-
-void DefaultImagesView::SelectPreviousRowImage() {
- // If there's no selection, start at 0.
- if (selected_image_index_ < 0)
- selected_image_index_ = 0;
-
- selected_image_index_ -= kColumnsCount;
- if (selected_image_index_ < 0) {
- selected_image_index_ += kDefaultImagesCount + kNonDefaultImageButtonsCount;
- }
-
- UpdateSelectedImage();
-}
-
-gfx::Size DefaultImagesView::GetPreferredSize() {
- int image_size_with_margin = (kDefaultImageSize + 2 * kImageBorderSize);
- int width = kColumnsCount * image_size_with_margin +
- (kColumnsCount - 1) * kHorizontalPadding;
- size_t image_count = default_images_.size();
- int rows_count = (image_count + kColumnsCount - 1) / kColumnsCount;
- int height = rows_count * image_size_with_margin +
- (rows_count - 1) * kVerticalPadding;
- return gfx::Size(width + 2 * kHorizontalMargin,
- height + 2 * kVerticalMargin);
-}
-
-void DefaultImagesView::ButtonPressed(views::Button* sender,
- const views::Event& event) {
- if (selected_image_index_ != -1 &&
- default_images_[selected_image_index_] == sender)
- return;
- ClearSelection();
-
- if (sender->id() == kCaptureButtonId) {
- if (delegate_)
- delegate_->OnCaptureButtonClicked();
- } else {
- int image_index = sender->id() - kImageStartId;
- int images_count = static_cast<int>(default_images_.size());
- if (image_index < 0 || image_index >= images_count) {
- NOTREACHED() << "Got ButtonPressed event from a view with wrong id.";
- return;
- }
- SetDefaultImageIndex(image_index);
- }
-}
-
-void DefaultImagesView::InitButton(int resource_id,
- UserImageButton* button) const {
- const SkBitmap* original_image =
- ResourceBundle::GetSharedInstance().GetBitmapNamed(resource_id);
- SkBitmap resized_image = skia::ImageOperations::Resize(
- *original_image,
- skia::ImageOperations::RESIZE_BEST,
- kDefaultImageSize, kDefaultImageSize);
- button->SetImage(
- views::CustomButton::BS_NORMAL,
- &resized_image);
-}
-
-void DefaultImagesView::InitLayout() {
- views::GridLayout* layout = new views::GridLayout(this);
- layout->SetInsets(gfx::Insets(kVerticalMargin,
- kHorizontalMargin,
- kVerticalMargin,
- kHorizontalMargin));
- SetLayoutManager(layout);
-
- size_t current_image = 0;
- size_t image_count = default_images_.size();
- int rows_count = (image_count + kColumnsCount - 1) / kColumnsCount;
- for (int row = 0; row < rows_count; ++row) {
- views::ColumnSet* column_set = layout->AddColumnSet(row);
- for (int column = 0; column < kColumnsCount; ++column) {
- if (column != 0)
- column_set->AddPaddingColumn(1, kHorizontalPadding);
- if (current_image < image_count) {
- column_set->AddColumn(
- views::GridLayout::LEADING,
- views::GridLayout::LEADING,
- 1,
- views::GridLayout::USE_PREF,
- 0,
- 0);
- } else {
- int placeholders_count = kColumnsCount - column;
- int placeholders_width = placeholders_count *
- (kDefaultImageSize + 2 * kImageBorderSize);
- int padding_width = (placeholders_count - 1) * kHorizontalPadding;
- column_set->AddPaddingColumn(1, placeholders_width + padding_width);
- break;
- }
- ++current_image;
- }
- }
- current_image = 0;
- for (int row = 0; row < rows_count; ++row) {
- if (row != 0)
- layout->AddPaddingRow(1, kVerticalPadding);
- layout->StartRow(0, row);
- for (int column = 0; column < kColumnsCount; ++column) {
- if (current_image >= image_count)
- break;
- layout->AddView(default_images_[current_image]);
- ++current_image;
- }
- }
-}
-
-void DefaultImagesView::UpdateSelectedImage() {
- if (selected_image_index_ == kCaptureButtonIndex) {
- // If they selected the camera button, turn on the webcam.
- if (delegate_)
- delegate_->OnCaptureButtonClicked();
- } else if (selected_image_index_ >= kNonDefaultImageButtonsCount &&
- selected_image_index_ < kNonDefaultImageButtonsCount +
- kDefaultImagesCount) {
- if (delegate_)
- delegate_->OnImageSelected(
- (selected_image_index_ - kNonDefaultImageButtonsCount) %
- kDefaultImagesCount);
- }
-}
-
-
-} // namespace chromeos

Powered by Google App Engine
This is Rietveld 408576698