20#ifndef INCLUDED_VCL_INC_UNX_GTK_GTKGDI_HXX
21#define INCLUDED_VCL_INC_UNX_GTK_GTKGDI_HXX
23#include <config_cairo_canvas.h>
27#include <gdk/gdkkeysyms.h>
33#include <textrender.hxx>
100#if !GTK_CHECK_VERSION(4, 0, 0)
105 const OUString& rCaption,
106 const Color& rBackgroundColor )
override;
111 const OUString& rCaption,
121#if ENABLE_CAIRO_CANVAS
122 virtual bool SupportsCairo()
const override;
134#if !GTK_CHECK_VERSION(4, 0, 0)
135 GtkStyleContext*
makeContext(GtkWidgetPath *pPath, GtkStyleContext *pParent);
206#if !GTK_CHECK_VERSION(4, 0, 0)
233 bool bIsCheck,
bool bInMenu);
static void PaintCheck(cairo_t *cr, GtkStyleContext *context, const tools::Rectangle &rControlRectangle, bool bInMenu)
void handleDamage(const tools::Rectangle &) override
Handle damage done by drawing with a widget draw override.
static void PaintRadio(cairo_t *cr, GtkStyleContext *context, const tools::Rectangle &rControlRectangle, bool bInMenu)
static GtkStyleContext * mpProgressBarStyle
static GtkStyleContext * mpFixedHoriLineStyle
static tools::Rectangle NWGetSpinButtonRect(ControlPart nPart, tools::Rectangle aAreaRect)
static GtkStyleContext * mpProgressBarProgressStyle
static GtkStyleContext * mpNotebookStyle
static GtkStyleContext * mpEntryStyle
static GtkStyleContext * mpSpinUpStyle
static GtkStyleContext * mpVScrollbarContentsStyle
static GtkStyleContext * mpFrameOutStyle
static GtkStyleContext * mpNotebookHeaderTabsTabLabelStyle
void PaintSpinButton(GtkStateFlags flags, cairo_t *cr, const tools::Rectangle &rControlRectangle, ControlPart nPart, const ImplControlValue &aValue)
static GtkStyleContext * mpMenuBarItemStyle
static GtkStyleContext * mpToolbarSeparatorStyle
static GtkStyleContext * mpHScrollbarStyle
static GtkStyleContext * mpCheckButtonStyle
static GtkStyleContext * mpWindowStyle
static GtkStyleContext * mpSeparatorMenuItemStyle
static GtkStyleContext * mpVScrollbarSliderStyle
virtual bool getNativeControlRegion(ControlType nType, ControlPart nPart, const tools::Rectangle &rControlRegion, ControlState nState, const ImplControlValue &aValue, const OUString &rCaption, tools::Rectangle &rNativeBoundingRegion, tools::Rectangle &rNativeContentRegion) override
Get the native control regions for the control part.
static GtkStyleContext * mpNotebookHeaderTabsTabHoverLabelStyle
GtkSalGraphics(GtkSalFrame *pFrame, GtkWidget *pWindow)
GtkSalFrame *const mpFrame
GtkStyleContext * makeContext(GtkWidgetPath *pPath, GtkStyleContext *pParent)
void WidgetQueueDraw() const
static GtkStyleContext * mpProgressBarTroughStyle
static GtkStyleContext * mpButtonStyle
static GtkStyleContext * mpSpinDownStyle
static GtkStyleContext * mpListboxButtonBoxStyle
static void PaintScrollbar(GtkStyleContext *context, cairo_t *cr, const tools::Rectangle &rControlRectangle, ControlPart nPart, const ImplControlValue &aValue)
static GtkStyleContext * mpCheckMenuItemCheckStyle
virtual bool drawNativeControl(ControlType nType, ControlPart nPart, const tools::Rectangle &rControlRegion, ControlState nState, const ImplControlValue &aValue, const OUString &rCaption, const Color &rBackgroundColor) override
Draw the requested control.
static GtkStyleContext * mpLinkButtonStyle
static GtkStyleContext * mpFrameInStyle
static GtkStyleContext * mpToolButtonStyle
static GtkStyleContext * mpHScrollbarContentsStyle
static GtkStyleContext * mpNotebookHeaderTabsTabStyle
static GtkStyleContext * mpTreeHeaderButtonStyle
static GtkStyleContext * mpRadioButtonStyle
static GtkStyleContext * mpSpinStyle
static GtkStyleContext * mpMenuBarStyle
static GtkStyleContext * mpListboxButtonArrowStyle
bool isNativeControlSupported(ControlType, ControlPart) override
Query the platform layer for native control support.
static GtkStyleContext * mpListboxButtonStyle
GtkStyleContext * createStyleContext(GtkControlPart ePart)
static GtkStyleContext * mpRadioMenuItemStyle
virtual OUString getRenderBackendName() const override
static tools::Rectangle NWGetScrollButtonRect(ControlPart nPart, tools::Rectangle aAreaRect)
static void PaintCheckOrRadio(cairo_t *cr, GtkStyleContext *context, const tools::Rectangle &rControlRectangle, bool bIsCheck, bool bInMenu)
static GtkStyleContext * mpHScrollbarSliderStyle
static GtkStyleContext * mpRadioMenuItemRadioStyle
static GtkStyleContext * mpToolbarStyle
virtual void GetResolution(sal_Int32 &rDPIX, sal_Int32 &rDPIY) override
static GtkStyleContext * mpNotebookHeaderStyle
static tools::Rectangle NWGetComboBoxButtonRect(ControlType nType, ControlPart nPart, tools::Rectangle aAreaRect)
static GtkStyleContext * mpComboboxButtonStyle
static GtkStyleContext * mpMenuItemStyle
static GtkStyleContext * mpFixedVertLineStyle
static GtkStyleContext * mpComboboxButtonArrowStyle
static GtkStyleContext * mpRadioButtonRadioStyle
static GtkStyleContext * mpComboboxBoxStyle
static GtkStyleContext * mpHScrollbarTroughStyle
void PaintOneSpinButton(GtkStyleContext *context, cairo_t *cr, ControlPart nPart, tools::Rectangle aAreaRect, ControlState nState)
static GtkStyleContext * mpMenuItemArrowStyle
bool updateSettings(AllSettings &) override
static gint mnVerticalSeparatorMinWidth
static GtkStyleContext * mpVScrollbarTroughStyle
static GtkStyleContext * mpComboboxStyle
static GtkStyleContext * mpHScrollbarButtonStyle
static GtkStyleContext * mpListboxBoxStyle
static GtkStyleContext * mpCheckMenuItemStyle
static GtkStyleContext * mpNotebookStackStyle
static GtkStyleContext * mpComboboxButtonBoxStyle
static GtkStyleContext * mpVScrollbarStyle
static GtkStyleContext * mpMenuWindowStyle
static GtkStyleContext * mpComboboxEntryStyle
static GtkStyleContext * mpCheckButtonCheckStyle
static GtkStyleContext * mpSeparatorMenuItemSeparatorStyle
static GtkStyleContext * mpMenuStyle
static GtkStyleContext * mpNotebookHeaderTabsStyle
static void PaintCombobox(GtkStateFlags flags, cairo_t *cr, const tools::Rectangle &rControlRectangle, ControlType nType, ControlPart nPart)
static GtkStyleContext * mpTextViewStyle
static GtkStyleContext * mpVScrollbarButtonStyle
static GtkStyleContext * mpMenuItemLabelStyle
static GtkStyleContext * mpListboxStyle
static GtkStyleContext * mpNotebookHeaderTabsTabActiveLabelStyle
Some things multiple-inherit from VclAbstractDialog and OutputDevice, so we need to use virtual inher...
@ ComboboxBoxButtonBoxArrow
@ ScrollbarVerticalSlider
@ NotebookHeaderTabsTabActiveLabel
@ ListboxBoxButtonBoxArrow
@ ScrollbarVerticalButton
@ ScrollbarHorizontalContents
@ NotebookHeaderTabsTabHoverLabel
@ ScrollbarVerticalContents
@ ScrollbarVerticalTrough
@ ScrollbarHorizontalTrough
@ SeparatorMenuItemSeparator
@ ScrollbarHorizontalSlider
@ ScrollbarHorizontalButton
@ NotebookHeaderTabsTabLabel
struct _GtkWidget GtkWidget
std::shared_ptr< Surface > SurfaceSharedPtr
std::shared_ptr< cairo_surface_t > CairoSurfaceSharedPtr