diff options
Diffstat (limited to 'xfa_test/pdf/page_indicator.cc')
-rw-r--r-- | xfa_test/pdf/page_indicator.cc | 127 |
1 files changed, 0 insertions, 127 deletions
diff --git a/xfa_test/pdf/page_indicator.cc b/xfa_test/pdf/page_indicator.cc deleted file mode 100644 index c4af1e07b7..0000000000 --- a/xfa_test/pdf/page_indicator.cc +++ /dev/null @@ -1,127 +0,0 @@ -// Copyright (c) 2012 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 "pdf/page_indicator.h" - -#include "base/logging.h" -#include "base/strings/string_util.h" -#include "pdf/draw_utils.h" -#include "pdf/number_image_generator.h" -#include "pdf/resource_consts.h" - -namespace chrome_pdf { - - -PageIndicator::PageIndicator() - : current_page_(0), - fade_out_timer_id_(0), - splash_timeout_(kPageIndicatorSplashTimeoutMs), - fade_timeout_(kPageIndicatorScrollFadeTimeoutMs), - always_visible_(false) { -} - -PageIndicator::~PageIndicator() { -} - -bool PageIndicator::CreatePageIndicator( - uint32 id, - bool visible, - Control::Owner* delegate, - NumberImageGenerator* number_image_generator, - bool always_visible) { - number_image_generator_ = number_image_generator; - always_visible_ = always_visible; - - pp::Rect rc; - bool res = Control::Create(id, rc, visible, delegate); - return res; -} - -void PageIndicator::Configure(const pp::Point& origin, - const pp::ImageData& background) { - background_ = background; - pp::Rect rc(origin, background_.size()); - Control::SetRect(rc, false); -} - -void PageIndicator::set_current_page(int current_page) { - if (current_page_ < 0) - return; - - current_page_ = current_page; -} - -void PageIndicator::Paint(pp::ImageData* image_data, const pp::Rect& rc) { - if (!visible()) - return; - - pp::Rect draw_rc = rc.Intersect(rect()); - if (draw_rc.IsEmpty()) - return; - - // Copying the background image to a temporary buffer. - pp::ImageData buffer(owner()->GetInstance(), background_.format(), - background_.size(), false); - CopyImage(background_, pp::Rect(background_.size()), - &buffer, pp::Rect(background_.size()), false); - - // Creating the page number image. - pp::ImageData page_number_image; - number_image_generator_->GenerateImage(current_page_, &page_number_image); - - pp::Point origin2( - (buffer.size().width() - page_number_image.size().width()) / 2.5, - (buffer.size().height() - page_number_image.size().height()) / 2); - - // Drawing page number image on the buffer. - if (origin2.x() > 0 && origin2.y() > 0) { - CopyImage(page_number_image, - pp::Rect(pp::Point(), page_number_image.size()), - &buffer, - pp::Rect(origin2, page_number_image.size()), - false); - } - - // Drawing the buffer. - pp::Point origin = draw_rc.point(); - draw_rc.Offset(-rect().x(), -rect().y()); - AlphaBlend(buffer, draw_rc, image_data, origin, transparency()); -} - -void PageIndicator::OnTimerFired(uint32 timer_id) { - FadingControl::OnTimerFired(timer_id); - if (timer_id == fade_out_timer_id_) { - Fade(false, fade_timeout_); - } -} - -void PageIndicator::ResetFadeOutTimer() { - fade_out_timer_id_ = - owner()->ScheduleTimer(id(), splash_timeout_); -} - -void PageIndicator::OnFadeInComplete() { - if (!always_visible_) - ResetFadeOutTimer(); -} - -void PageIndicator::Splash() { - Splash(kPageIndicatorSplashTimeoutMs, kPageIndicatorScrollFadeTimeoutMs); -} - -void PageIndicator::Splash(uint32 splash_timeout, uint32 fade_timeout) { - splash_timeout_ = splash_timeout; - fade_timeout_ = fade_timeout; - if (!always_visible_) - fade_out_timer_id_ = 0; - Fade(true, fade_timeout_); -} - -int PageIndicator::GetYPosition( - int vertical_scrollbar_y, int document_height, int plugin_height) { - double percent = static_cast<double>(vertical_scrollbar_y) / document_height; - return (plugin_height - rect().height()) * percent; -} - -} // namespace chrome_pdf |