RenderThemeChromiumWin.h [plain text]
#ifndef RenderThemeChromiumWin_h
#define RenderThemeChromiumWin_h
#include "RenderThemeChromiumSkia.h"
#if WIN32
typedef void* HANDLE;
typedef struct HINSTANCE__* HINSTANCE;
typedef HINSTANCE HMODULE;
#endif
namespace WebCore {
struct ThemeData {
ThemeData() : m_part(0), m_state(0), m_classicState(0) {}
unsigned m_part;
unsigned m_state;
unsigned m_classicState;
};
class RenderThemeChromiumWin : public RenderThemeChromiumSkia {
public:
static PassRefPtr<RenderTheme> create();
virtual bool supportsFocusRing(const RenderStyle*) const;
virtual Color platformActiveSelectionBackgroundColor() const;
virtual Color platformInactiveSelectionBackgroundColor() const;
virtual Color platformActiveSelectionForegroundColor() const;
virtual Color platformInactiveSelectionForegroundColor() const;
virtual Color platformActiveTextSearchHighlightColor() const;
virtual Color platformInactiveTextSearchHighlightColor() const;
virtual void systemFont(int propId, FontDescription&) const;
virtual Color systemColor(int cssValueId) const;
virtual void adjustSliderThumbSize(RenderStyle*) const;
virtual bool paintCheckbox(RenderObject*, const PaintInfo&, const IntRect&);
virtual bool paintRadio(RenderObject*, const PaintInfo&, const IntRect&);
virtual bool paintButton(RenderObject*, const PaintInfo&, const IntRect&);
virtual bool paintTextField(RenderObject*, const PaintInfo&, const IntRect&);
virtual bool paintSliderTrack(RenderObject*, const PaintInfo&, const IntRect&);
virtual bool paintSliderThumb(RenderObject*, const PaintInfo&, const IntRect&);
virtual bool paintMenuList(RenderObject*, const PaintInfo&, const IntRect&);
static void setDefaultFontSize(int);
virtual void adjustInnerSpinButtonStyle(StyleResolver*, RenderStyle*, Element*) const;
virtual bool paintInnerSpinButton(RenderObject*, const PaintInfo&, const IntRect&);
#if ENABLE(PROGRESS_TAG)
virtual double animationRepeatIntervalForProgressBar(RenderProgress*) const;
virtual double animationDurationForProgressBar(RenderProgress*) const;
virtual void adjustProgressBarStyle(StyleResolver*, RenderStyle*, Element*) const;
virtual bool paintProgressBar(RenderObject*, const PaintInfo&, const IntRect&);
#endif
protected:
virtual double caretBlinkIntervalInternal() const;
private:
enum ControlSubPart {
None,
SpinButtonDown,
SpinButtonUp,
};
RenderThemeChromiumWin() { }
virtual ~RenderThemeChromiumWin() { }
unsigned determineState(RenderObject*, ControlSubPart = None);
unsigned determineSliderThumbState(RenderObject*);
unsigned determineClassicState(RenderObject*, ControlSubPart = None);
ThemeData getThemeData(RenderObject*, ControlSubPart = None);
bool paintTextFieldInternal(RenderObject*, const PaintInfo&, const IntRect&, bool);
};
}
#endif