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

Unified Diff: chrome/browser/ui/views/infobars/link_infobar.cc

Issue 6574011: Cleanup:... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 years, 10 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
Index: chrome/browser/ui/views/infobars/link_infobar.cc
===================================================================
--- chrome/browser/ui/views/infobars/link_infobar.cc (revision 75777)
+++ chrome/browser/ui/views/infobars/link_infobar.cc (working copy)
@@ -4,10 +4,8 @@
#include "chrome/browser/ui/views/infobars/link_infobar.h"
-#include "base/utf_string_conversions.h"
#include "chrome/browser/tab_contents/infobar_delegate.h"
#include "chrome/browser/ui/views/event_utils.h"
-#include "ui/base/resource/resource_bundle.h"
#include "views/controls/image_view.h"
// LinkInfoBarDelegate --------------------------------------------------------
@@ -20,41 +18,23 @@
LinkInfoBar::LinkInfoBar(LinkInfoBarDelegate* delegate)
: InfoBarView(delegate),
- icon_(new views::ImageView),
- label_1_(new views::Label),
- link_(new views::Link),
- label_2_(new views::Label) {
- // Set up the icon.
+ icon_(new views::ImageView) {
if (delegate->GetIcon())
icon_->SetImage(delegate->GetIcon());
AddChildView(icon_);
- // Set up the labels.
size_t offset;
string16 message_text = delegate->GetMessageTextWithOffset(&offset);
- if (offset != string16::npos) {
- label_1_->SetText(UTF16ToWideHack(message_text.substr(0, offset)));
- label_2_->SetText(UTF16ToWideHack(message_text.substr(offset)));
- } else {
- label_1_->SetText(UTF16ToWideHack(message_text));
- }
- ResourceBundle& rb = ResourceBundle::GetSharedInstance();
- label_1_->SetFont(rb.GetFont(ResourceBundle::MediumFont));
- label_2_->SetFont(rb.GetFont(ResourceBundle::MediumFont));
- label_1_->SetColor(SK_ColorBLACK);
- label_2_->SetColor(SK_ColorBLACK);
- label_1_->SetHorizontalAlignment(views::Label::ALIGN_LEFT);
- label_2_->SetHorizontalAlignment(views::Label::ALIGN_LEFT);
+ DCHECK_NE(string16::npos, offset);
+ label_1_ = CreateLabel(message_text.substr(0, offset));
AddChildView(label_1_);
- AddChildView(label_2_);
- // Set up the link.
- link_->SetText(UTF16ToWideHack(delegate->GetLinkText()));
- link_->SetFont(rb.GetFont(ResourceBundle::MediumFont));
- link_->SetHorizontalAlignment(views::Label::ALIGN_LEFT);
- link_->SetController(this);
- link_->MakeReadableOverBackgroundColor(background()->get_color());
+ link_ = CreateLink(delegate->GetLinkText(), this,
+ background()->get_color());
AddChildView(link_);
+
+ label_2_ = CreateLabel(message_text.substr(offset));
+ AddChildView(label_2_);
}
LinkInfoBar::~LinkInfoBar() {
@@ -69,31 +49,14 @@
icon_size.width(), icon_size.height());
int label_1_x = icon_->bounds().right() + kIconLabelSpacing;
-
- // Figure out the amount of space available to the rest of the content now
- // that the close button and the icon have been positioned.
- int available_width = GetAvailableWidth() - label_1_x;
-
- // Layout the left label.
gfx::Size label_1_size = label_1_->GetPreferredSize();
label_1_->SetBounds(label_1_x, OffsetY(this, label_1_size),
label_1_size.width(), label_1_size.height());
- // Layout the link.
gfx::Size link_size = link_->GetPreferredSize();
- bool has_second_label = !label_2_->GetText().empty();
- if (has_second_label) {
- // Embed the link in the text string between the two labels.
- link_->SetBounds(label_1_->bounds().right(), OffsetY(this, link_size),
- link_size.width(), link_size.height());
- } else {
- // Right-align the link toward the edge of the InfoBar.
- link_->SetBounds(label_1_x + available_width - link_size.width(),
- OffsetY(this, link_size), link_size.width(), link_size.height());
- }
+ link_->SetBounds(label_1_->bounds().right(), OffsetY(this, link_size),
+ link_size.width(), link_size.height());
- // Layout the right label (we do this regardless of whether or not it has
- // text).
gfx::Size label_2_size = label_2_->GetPreferredSize();
label_2_->SetBounds(link_->bounds().right(), OffsetY(this, label_2_size),
label_2_size.width(), label_2_size.height());
« no previous file with comments | « chrome/browser/ui/views/infobars/infobar_view.cc ('k') | chrome/browser/ui/views/infobars/translate_infobar_base.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698