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

Unified Diff: chrome/browser/chromeos/frame/bubble_frame_view.cc

Issue 8774022: Converting BubbleWindow uses, etc. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Doesn't build... just a checkpoint for this work, might change approach. Created 9 years 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 | « chrome/browser/chromeos/frame/bubble_frame_view.h ('k') | chrome/browser/chromeos/frame/bubble_window.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/chromeos/frame/bubble_frame_view.cc
diff --git a/chrome/browser/chromeos/frame/bubble_frame_view.cc b/chrome/browser/chromeos/frame/bubble_frame_view.cc
deleted file mode 100644
index 9aaad387c24a941731ec8c7bab7843f29970d689..0000000000000000000000000000000000000000
--- a/chrome/browser/chromeos/frame/bubble_frame_view.cc
+++ /dev/null
@@ -1,245 +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/frame/bubble_frame_view.h"
-
-#include <algorithm>
-
-#include "base/utf_string_conversions.h"
-#include "chrome/browser/chromeos/frame/bubble_window.h"
-#include "chrome/browser/chromeos/login/helper.h"
-#include "grit/theme_resources_standard.h"
-#include "third_party/skia/include/core/SkColor.h"
-#include "third_party/skia/include/core/SkPaint.h"
-#include "ui/base/hit_test.h"
-#include "ui/base/resource/resource_bundle.h"
-#include "ui/gfx/canvas_skia.h"
-#include "ui/gfx/font.h"
-#include "ui/gfx/insets.h"
-#include "ui/gfx/path.h"
-#include "ui/gfx/rect.h"
-#include "ui/views/controls/button/image_button.h"
-#include "ui/views/controls/label.h"
-#include "ui/views/controls/throbber.h"
-#include "ui/views/widget/widget.h"
-#include "ui/views/widget/widget_delegate.h"
-
-namespace {
-
-const int kTitleTopPadding = 10;
-const int kTitleContentPadding = 10;
-const int kHorizontalPadding = 10;
-
-// Title font size correction.
-#if defined(CROS_FONTS_USING_BCI)
-const int kTitleFontSizeDelta = 0;
-#else
-const int kTitleFontSizeDelta = 1;
-#endif
-
-} // namespace
-
-namespace chromeos {
-
-BubbleFrameView::BubbleFrameView(views::Widget* frame,
- views::WidgetDelegate* widget_delegate,
- DialogStyle style)
- : frame_(frame),
- style_(style),
- title_(NULL),
- close_button_(NULL),
- throbber_(NULL) {
- if (widget_delegate->ShouldShowWindowTitle()) {
- title_ = new views::Label(widget_delegate->GetWindowTitle());
- title_->SetHorizontalAlignment(views::Label::ALIGN_LEFT);
- title_->SetFont(title_->font().DeriveFont(kFontSizeCorrectionDelta,
- gfx::Font::BOLD));
- AddChildView(title_);
- }
-
- if (style_ & STYLE_XBAR) {
- ResourceBundle& rb = ResourceBundle::GetSharedInstance();
- close_button_ = new views::ImageButton(this);
- close_button_->SetImage(views::CustomButton::BS_NORMAL,
- rb.GetBitmapNamed(IDR_CLOSE_BAR));
- close_button_->SetImage(views::CustomButton::BS_HOT,
- rb.GetBitmapNamed(IDR_CLOSE_BAR_H));
- close_button_->SetImage(views::CustomButton::BS_PUSHED,
- rb.GetBitmapNamed(IDR_CLOSE_BAR_P));
- AddChildView(close_button_);
- }
-
- if (style_ & STYLE_THROBBER) {
- throbber_ = CreateDefaultSmoothedThrobber();
- AddChildView(throbber_);
- }
-}
-
-BubbleFrameView::~BubbleFrameView() {
-}
-
-void BubbleFrameView::StartThrobber() {
- DCHECK(throbber_ != NULL);
- if (title_)
- title_->SetText(string16());
- throbber_->Start();
-}
-
-void BubbleFrameView::StopThrobber() {
- DCHECK(throbber_ != NULL);
- throbber_->Stop();
- if (title_)
- title_->SetText(frame_->widget_delegate()->GetWindowTitle());
-}
-
-gfx::Rect BubbleFrameView::GetBoundsForClientView() const {
- return client_view_bounds_;
-}
-
-gfx::Rect BubbleFrameView::GetWindowBoundsForClientBounds(
- const gfx::Rect& client_bounds) const {
- gfx::Insets insets = GetInsets();
-
- gfx::Size title_size;
- if (title_)
- title_size = title_->GetPreferredSize();
- gfx::Size close_button_size;
- if (close_button_)
- close_button_size = close_button_->GetPreferredSize();
- gfx::Size throbber_size;
- if (throbber_)
- throbber_size = throbber_->GetPreferredSize();
-
- int top_height = insets.top();
- if (title_size.height() > 0 ||
- close_button_size.height() > 0 ||
- throbber_size.height() > 0) {
- top_height += kTitleContentPadding + std::max(
- std::max(title_size.height(), close_button_size.height()),
- throbber_size.height());
- }
- return gfx::Rect(std::max(0, client_bounds.x() - insets.left()),
- std::max(0, client_bounds.y() - top_height),
- client_bounds.width() + insets.width(),
- client_bounds.height() + top_height + insets.bottom());
-}
-
-int BubbleFrameView::NonClientHitTest(const gfx::Point& point) {
- return HTNOWHERE;
-}
-
-void BubbleFrameView::GetWindowMask(const gfx::Size& size,
- gfx::Path* window_mask) {
-}
-
-void BubbleFrameView::ResetWindowControls() {
-}
-
-void BubbleFrameView::UpdateWindowIcon() {
-}
-
-gfx::Insets BubbleFrameView::GetInsets() const {
- return (style_ & STYLE_FLUSH || style_ & STYLE_FLUSH_CONTENT) ?
- gfx::Insets() :
- gfx::Insets(kTitleTopPadding,
- kHorizontalPadding,
- 0,
- kHorizontalPadding);
-}
-
-gfx::Size BubbleFrameView::GetPreferredSize() {
- gfx::Size pref = frame_->client_view()->GetPreferredSize();
- gfx::Rect bounds(0, 0, pref.width(), pref.height());
- return frame_->non_client_view()->GetWindowBoundsForClientBounds(
- bounds).size();
-}
-
-void BubbleFrameView::Layout() {
- gfx::Insets insets = GetInsets();
-
- gfx::Size title_size;
- if (title_)
- title_size = title_->GetPreferredSize();
- gfx::Size close_button_size;
- if (close_button_)
- close_button_size = close_button_->GetPreferredSize();
- gfx::Size throbber_size;
- if (throbber_)
- throbber_size = throbber_->GetPreferredSize();
-
- // Need to center elements which are shorter.
- int max_height = std::max(title_size.height(),
- std::max(close_button_size.height(),
- throbber_size.height()));
-
- gfx::Insets title_insets = gfx::Insets();
- // Need to insert title padding for STYLE_FLUSH_CONTENT.
- if (style_ & STYLE_FLUSH_CONTENT)
- title_insets = gfx::Insets(kTitleTopPadding,
- kHorizontalPadding,
- 0,
- kHorizontalPadding);
-
- if (title_) {
- title_->SetBounds(
- insets.left() + title_insets.left(),
- insets.top() + title_insets.top() +
- (max_height - title_size.height())/2, // Center.
- std::max(0, width() - insets.width() - title_insets.width() -
- close_button_size.width()),
- title_size.height());
- }
-
- if (close_button_) {
- close_button_->SetBounds(
- width() - insets.right() - title_insets.right() -
- close_button_size.width(),
- insets.top() + title_insets.top() +
- (max_height - close_button_size.height())/2,
- close_button_size.width(),
- close_button_size.height());
- }
-
- if (throbber_) {
- throbber_->SetBounds(
- insets.left() + title_insets.left(),
- insets.top() + title_insets.top() +
- (max_height - throbber_size.height())/2,
- std::min(throbber_size.width(), width()),
- throbber_size.height());
- }
-
- int top_height = insets.top() + title_insets.top();
- if (title_size.height() > 0 ||
- close_button_size.height() > 0 ||
- throbber_size.height() > 0) {
- top_height += kTitleContentPadding + std::max(
- std::max(title_size.height(), close_button_size.height()),
- throbber_size.height());
- }
- client_view_bounds_.SetRect(insets.left(), top_height,
- std::max(0, width() - insets.width()),
- std::max(0, height() - top_height - insets.bottom()));
-}
-
-void BubbleFrameView::OnPaint(gfx::Canvas* canvas) {
- SkPaint paint;
- paint.setStyle(SkPaint::kFill_Style);
- paint.setColor(kBubbleWindowBackgroundColor);
- gfx::Path path;
- gfx::Rect bounds(GetContentsBounds());
- SkRect rect;
- rect.set(SkIntToScalar(bounds.x()), SkIntToScalar(bounds.y()),
- SkIntToScalar(bounds.right()), SkIntToScalar(bounds.bottom()));
- path.addRect(rect);
- canvas->GetSkCanvas()->drawPath(path, paint);
-}
-
-void BubbleFrameView::ButtonPressed(views::Button* sender,
- const views::Event& event) {
- if (close_button_ != NULL && sender == close_button_)
- frame_->Close();
-}
-
-} // namespace chromeos
« no previous file with comments | « chrome/browser/chromeos/frame/bubble_frame_view.h ('k') | chrome/browser/chromeos/frame/bubble_window.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698