summaryrefslogtreecommitdiff
path: root/xfa_test/pdf/control.cc
diff options
context:
space:
mode:
Diffstat (limited to 'xfa_test/pdf/control.cc')
-rw-r--r--xfa_test/pdf/control.cc117
1 files changed, 0 insertions, 117 deletions
diff --git a/xfa_test/pdf/control.cc b/xfa_test/pdf/control.cc
deleted file mode 100644
index ed911b6b95..0000000000
--- a/xfa_test/pdf/control.cc
+++ /dev/null
@@ -1,117 +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/control.h"
-
-#include "base/logging.h"
-#include "pdf/draw_utils.h"
-
-namespace chrome_pdf {
-
-Control::Control()
- : id_(kInvalidControlId),
- visible_(false),
- owner_(NULL),
- transparency_(kOpaqueAlpha) {
-}
-
-Control::~Control() {
-}
-
-bool Control::Create(uint32 id, const pp::Rect& rc,
- bool visible, Owner* owner) {
- DCHECK(owner);
- if (owner_ || id == kInvalidControlId)
- return false; // Already created or id is invalid.
- id_ = id;
- rc_ = rc;
- visible_ = visible;
- owner_ = owner;
- return true;
-}
-
-bool Control::HandleEvent(const pp::InputEvent& event) {
- return false;
-}
-
-void Control::PaintMultipleRects(pp::ImageData* image_data,
- const std::list<pp::Rect>& rects) {
- DCHECK(rects.size() > 0);
- if (rects.size() == 1) {
- Paint(image_data, rects.front());
- return;
- }
-
- // Some rects in the input list may overlap. To prevent double
- // painting (causes problems with semi-transparent controls) we'll
- // paint control into buffer image data only once and copy requested
- // rectangles.
- pp::ImageData buffer(owner()->GetInstance(), image_data->format(),
- rect().size(), false);
- if (buffer.is_null())
- return;
-
- pp::Rect draw_rc = pp::Rect(image_data->size()).Intersect(rect());
- pp::Rect ctrl_rc = pp::Rect(draw_rc.point() - rect().point(), draw_rc.size());
- CopyImage(*image_data, draw_rc, &buffer, ctrl_rc, false);
-
- // Temporary move control to origin (0,0) and draw it into temp buffer.
- // Move to the original position afterward. Since this is going on temp
- // buffer, we don't need to invalidate here.
- pp::Rect temp = rect();
- MoveTo(pp::Point(0, 0), false);
- Paint(&buffer, ctrl_rc);
- MoveTo(temp.point(), false);
-
- std::list<pp::Rect>::const_iterator iter;
- for (iter = rects.begin(); iter != rects.end(); ++iter) {
- pp::Rect draw_rc = rect().Intersect(*iter);
- if (!draw_rc.IsEmpty()) {
- // Copy requested rect from the buffer image.
- pp::Rect src_rc = draw_rc;
- src_rc.Offset(-rect().x(), -rect().y());
- CopyImage(buffer, src_rc, image_data, draw_rc, false);
- }
- }
-}
-
-void Control::Show(bool visible, bool invalidate) {
- if (visible_ != visible) {
- visible_ = visible;
- if (invalidate)
- owner_->Invalidate(id_, rc_);
- }
-}
-
-void Control::AdjustTransparency(uint8 transparency, bool invalidate) {
- if (transparency_ != transparency) {
- transparency_ = transparency;
- if (invalidate && visible_)
- owner_->Invalidate(id_, rc_);
- }
-}
-
-void Control::MoveBy(const pp::Point& offset, bool invalidate) {
- pp::Rect old_rc = rc_;
- rc_.Offset(offset);
- if (invalidate && visible_) {
- owner()->Invalidate(id(), old_rc);
- owner()->Invalidate(id(), rect());
- }
-}
-
-void Control::SetRect(const pp::Rect& rc, bool invalidate) {
- pp::Rect old_rc = rc_;
- rc_ = rc;
- if (invalidate && visible_) {
- owner()->Invalidate(id(), old_rc);
- owner()->Invalidate(id(), rect());
- }
-}
-
-void Control::MoveTo(const pp::Point& origin, bool invalidate) {
- MoveBy(origin - rc_.point(), invalidate);
-}
-
-} // namespace chrome_pdf