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

Unified Diff: cc/scrollbar_layer_impl.h

Issue 11122003: [cc] Rename all cc/ filenames to Chromium style (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 2 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
« no previous file with comments | « cc/scrollbar_layer.cc ('k') | cc/scrollbar_layer_impl.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/scrollbar_layer_impl.h
diff --git a/cc/scrollbar_layer_impl.h b/cc/scrollbar_layer_impl.h
index 638cbb270ce9b24689d5095baf174ade4f4d1a13..e7cf58417a7ba11d519eaccfc36f5515c3898d44 100644
--- a/cc/scrollbar_layer_impl.h
+++ b/cc/scrollbar_layer_impl.h
@@ -1,3 +1,112 @@
// Copyright 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.
+
+#ifndef CCScrollbarLayerImpl_h
+#define CCScrollbarLayerImpl_h
+
+#if USE(ACCELERATED_COMPOSITING)
+
+#include "CCLayerImpl.h"
+#include "CCScrollbarGeometryFixedThumb.h"
+#include <public/WebRect.h>
+#include <public/WebScrollbar.h>
+#include <public/WebVector.h>
+
+namespace cc {
+
+class ScrollView;
+
+class CCScrollbarLayerImpl : public CCLayerImpl {
+public:
+ static scoped_ptr<CCScrollbarLayerImpl> create(int id);
+ virtual ~CCScrollbarLayerImpl();
+
+ CCScrollbarGeometryFixedThumb* scrollbarGeometry() const { return m_geometry.get(); }
+ void setScrollbarGeometry(PassOwnPtr<CCScrollbarGeometryFixedThumb>);
+ void setScrollbarData(WebKit::WebScrollbar*);
+
+ void setBackTrackResourceId(CCResourceProvider::ResourceId id) { m_backTrackResourceId = id; }
+ void setForeTrackResourceId(CCResourceProvider::ResourceId id) { m_foreTrackResourceId = id; }
+ void setThumbResourceId(CCResourceProvider::ResourceId id) { m_thumbResourceId = id; }
+
+ float currentPos() const { return m_currentPos; }
+ void setCurrentPos(float currentPos) { m_currentPos = currentPos; }
+
+ int totalSize() const { return m_totalSize; }
+ void setTotalSize(int totalSize) { m_totalSize = totalSize; }
+
+ int maximum() const { return m_maximum; }
+ void setMaximum(int maximum) { m_maximum = maximum; }
+
+ WebKit::WebScrollbar::Orientation orientation() const { return m_orientation; }
+
+ virtual void appendQuads(CCQuadSink&, CCAppendQuadsData&) OVERRIDE;
+
+ virtual void didLoseContext() OVERRIDE;
+
+protected:
+ explicit CCScrollbarLayerImpl(int id);
+
+private:
+ // nested class only to avoid namespace problem
+ class CCScrollbar : public WebKit::WebScrollbar {
+ public:
+ explicit CCScrollbar(CCScrollbarLayerImpl* owner) : m_owner(owner) { }
+
+ // WebScrollbar implementation
+ virtual bool isOverlay() const;
+ virtual int value() const;
+ virtual WebKit::WebPoint location() const;
+ virtual WebKit::WebSize size() const;
+ virtual bool enabled() const;
+ virtual int maximum() const;
+ virtual int totalSize() const;
+ virtual bool isScrollViewScrollbar() const;
+ virtual bool isScrollableAreaActive() const;
+ virtual void getTickmarks(WebKit::WebVector<WebKit::WebRect>& tickmarks) const;
+ virtual WebScrollbar::ScrollbarControlSize controlSize() const;
+ virtual WebScrollbar::ScrollbarPart pressedPart() const;
+ virtual WebScrollbar::ScrollbarPart hoveredPart() const;
+ virtual WebScrollbar::ScrollbarOverlayStyle scrollbarOverlayStyle() const;
+ virtual WebScrollbar::Orientation orientation() const;
+ virtual bool isCustomScrollbar() const;
+
+ private:
+ CCScrollbarLayerImpl* m_owner;
+
+ };
+
+ virtual const char* layerTypeAsString() const OVERRIDE;
+
+ CCScrollbar m_scrollbar;
+
+ CCResourceProvider::ResourceId m_backTrackResourceId;
+ CCResourceProvider::ResourceId m_foreTrackResourceId;
+ CCResourceProvider::ResourceId m_thumbResourceId;
+
+ OwnPtr<CCScrollbarGeometryFixedThumb> m_geometry;
+
+ // Data to implement CCScrollbar
+ WebKit::WebScrollbar::ScrollbarOverlayStyle m_scrollbarOverlayStyle;
+ WebKit::WebVector<WebKit::WebRect> m_tickmarks;
+ WebKit::WebScrollbar::Orientation m_orientation;
+ WebKit::WebScrollbar::ScrollbarControlSize m_controlSize;
+ WebKit::WebScrollbar::ScrollbarPart m_pressedPart;
+ WebKit::WebScrollbar::ScrollbarPart m_hoveredPart;
+
+ float m_currentPos;
+ int m_totalSize;
+ int m_maximum;
+
+ bool m_isScrollableAreaActive;
+ bool m_isScrollViewScrollbar;
+ bool m_enabled;
+ bool m_isCustomScrollbar;
+ bool m_isOverlayScrollbar;
+};
+
+}
+#endif // USE(ACCELERATED_COMPOSITING)
+
+#endif
« no previous file with comments | « cc/scrollbar_layer.cc ('k') | cc/scrollbar_layer_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698