| Index: pdf/thumbnail_control.h
|
| ===================================================================
|
| --- pdf/thumbnail_control.h (revision 0)
|
| +++ pdf/thumbnail_control.h (revision 0)
|
| @@ -0,0 +1,67 @@
|
| +// Copyright (c) 2010 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.
|
| +
|
| +#ifndef PDF_THUMBNAIL_CONTROL_H_
|
| +#define PDF_THUMBNAIL_CONTROL_H_
|
| +
|
| +#include <map>
|
| +#include <vector>
|
| +
|
| +#include "pdf/control.h"
|
| +#include "pdf/pdf_engine.h"
|
| +#include "ppapi/cpp/input_event.h"
|
| +
|
| +namespace chrome_pdf {
|
| +
|
| +class NumberImageGenerator;
|
| +
|
| +class ThumbnailControl : public Control {
|
| + public:
|
| + enum ThumbnailEventIds {
|
| + EVENT_ID_THUMBNAIL_SELECTED = 100,
|
| + };
|
| +
|
| + explicit ThumbnailControl();
|
| + virtual ~ThumbnailControl();
|
| +
|
| + // Sets current position of the thumnail control.
|
| + void SetPosition(int position, int total, bool invalidate);
|
| + void SlideIn();
|
| + void SlideOut();
|
| +
|
| + virtual bool CreateThumbnailControl(
|
| + uint32 id, const pp::Rect& rc,
|
| + bool visible, Owner* owner, PDFEngine* engine,
|
| + NumberImageGenerator* number_image_generator);
|
| +
|
| + // Control interface.
|
| + virtual void Show(bool visible, bool invalidate);
|
| + virtual void Paint(pp::ImageData* image_data, const pp::Rect& rc);
|
| + virtual bool HandleEvent(const pp::InputEvent& event);
|
| + virtual void OnTimerFired(uint32 timer_id);
|
| +
|
| + virtual void ResetEngine(PDFEngine* engine);
|
| +
|
| + private:
|
| + void ClearCache();
|
| +
|
| + struct PageInfo {
|
| + int index;
|
| + pp::Rect rect;
|
| + };
|
| +
|
| + PDFEngine* engine_;
|
| + pp::Rect visible_rect_;
|
| + std::vector<PageInfo> visible_pages_;
|
| + std::map<int, pp::ImageData*> image_cache_;
|
| + int sliding_width_;
|
| + int sliding_shift_;
|
| + int sliding_timeout_;
|
| + uint32 sliding_timer_id_;
|
| + NumberImageGenerator* number_image_generator_;
|
| +};
|
| +
|
| +} // namespace chrome_pdf
|
| +
|
| +#endif // PDF_THUMBNAIL_CONTROL_H_
|
|
|
| Property changes on: pdf\thumbnail_control.h
|
| ___________________________________________________________________
|
| Added: svn:eol-style
|
| + LF
|
|
|
|
|