WebCore:
[WebKit-https.git] / WebCore / rendering / RenderSlider.h
index 327f2d1..f1eab9c 100644 (file)
@@ -1,6 +1,5 @@
-/**
- *
- * Copyright (C) 2006 Apple Computer, Inc.
+/*
+ * Copyright (C) 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public
 
 namespace WebCore {
 
-    class HTMLDivElement;
     class HTMLInputElement;
-    class HTMLSliderThumbElement;
     class MouseEvent;
+    class SliderThumbElement;
     
     class RenderSlider : public RenderBlock {
     public:
         RenderSlider(HTMLInputElement*);
-        ~RenderSlider();
+        virtual ~RenderSlider();
+
+        void forwardEvent(Event*);
+        bool inDragMode() const;
 
+    private:
         virtual const char* renderName() const { return "RenderSlider"; }
         virtual bool isSlider() const { return true; }
 
@@ -43,30 +45,25 @@ namespace WebCore {
         virtual void calcPrefWidths();
         virtual void layout();
         virtual void updateFromElement();
-        
-        virtual bool mouseEventIsInThumb(MouseEvent*);
+
+        bool mouseEventIsInThumb(MouseEvent*);
 
         void setValueForPosition(int position);
-        double setPositionFromValue(bool inLayout = false);
+        void setPositionFromValue();
         int positionForOffset(const IntPoint&);
 
-        void valueChanged();
-        
         int currentPosition();
-        void setCurrentPosition(int pos);        
-        
-        void forwardEvent(Event*);
-        bool inDragMode() const;
 
-    protected:
         virtual void styleDidChange(StyleDifference, const RenderStyle* oldStyle);
-    
-    private:
-        PassRefPtr<RenderStyle> createThumbStyle(const RenderStyle* parentStyle, const RenderStyle* oldStyle = 0);
+
+        PassRefPtr<RenderStyle> createThumbStyle(const RenderStyle* parentStyle);
+
         int trackSize();
 
-        RefPtr<HTMLSliderThumbElement> m_thumb;
-};
+        RefPtr<SliderThumbElement> m_thumb;
+
+        friend class SliderThumbElement;
+    };
 
 } // namespace WebCore