#include <gr_UnixCairoGraphics.h>
Public Member Functions | |
~GR_UnixCairoGraphics () | |
virtual UT_uint32 | getClassId () |
GdkWindow * | getWindow () |
virtual GR_Font * | getGUIFont (void) |
virtual void | setCursor (GR_Graphics::Cursor c) |
virtual void | scroll (UT_sint32, UT_sint32) |
virtual void | scroll (UT_sint32 x_dest, UT_sint32 y_dest, UT_sint32 x_src, UT_sint32 y_src, UT_sint32 width, UT_sint32 height) |
virtual GR_Image * | genImageFromRectangle (const UT_Rect &r) |
void | init3dColors (GtkWidget *w) |
void | initWidget (GtkWidget *widget) |
virtual bool | queryProperties (GR_Graphics::Properties gp) const |
virtual bool | getColor3D (GR_Color3D name, UT_RGBColor &color) |
In the UnixCairoGraphics, color3D are mostly invalid. | |
virtual void | fillRect (GR_Color3D c, UT_sint32 x, UT_sint32 y, UT_sint32 w, UT_sint32 h) |
This is an override that will use the GtkStyle code to actually render directly. | |
virtual void | flush (void) |
Static Public Member Functions | |
static UT_uint32 | s_getClassId () |
static const char * | graphicsDescriptor () |
static GR_Graphics * | graphicsAllocator (GR_AllocInfo &) |
Protected Member Functions | |
virtual void | _resetClip (void) |
GR_UnixCairoGraphics (GdkWindow *win=NULL, bool double_buffered=true) | |
virtual GdkWindow * | _getWindow (void) |
virtual void | _beginPaint () |
virtual void | _endPaint () |
Static Protected Member Functions | |
static void | widget_size_allocate (GtkWidget *widget, GtkAllocation *allocation, GR_UnixCairoGraphics *me) |
static void | widget_destroy (GtkWidget *widget, GR_UnixCairoGraphics *me) |
Private Attributes | |
GdkWindow * | m_pWin |
bool | m_CairoCreated |
bool | m_Painting |
gulong | m_Signal |
gulong | m_DestroySignal |
GtkWidget * | m_Widget |
GtkStyleContext * | m_styleBg |
GtkStyleContext * | m_styleHighlight |
GR_UnixCairoGraphics::~GR_UnixCairoGraphics | ( | ) |
References m_DestroySignal, m_Signal, m_styleBg, m_styleHighlight, and m_Widget.
GR_UnixCairoGraphics::GR_UnixCairoGraphics | ( | GdkWindow * | win = NULL , |
|
bool | double_buffered = true | |||
) | [protected] |
References _getWindow(), GR_Graphics::GR_CURSOR_DEFAULT, GR_CairoGraphics::m_cr, and setCursor().
Referenced by graphicsAllocator().
void GR_UnixCairoGraphics::_beginPaint | ( | ) | [protected, virtual] |
Reimplemented from GR_Graphics.
References GR_CairoGraphics::_initCairo(), m_CairoCreated, GR_CairoGraphics::m_cr, m_Painting, m_pWin, and UT_ASSERT.
void GR_UnixCairoGraphics::_endPaint | ( | ) | [protected, virtual] |
Reimplemented from GR_Graphics.
References m_CairoCreated, GR_CairoGraphics::m_cr, and m_Painting.
virtual GdkWindow* GR_UnixCairoGraphics::_getWindow | ( | void | ) | [inline, protected, virtual] |
Referenced by GR_UnixCairoGraphics().
void GR_UnixCairoGraphics::_resetClip | ( | void | ) | [protected, virtual] |
Reimplemented from GR_CairoGraphics.
References GR_CairoGraphics::m_cr, and xxx_UT_DEBUGMSG.
void GR_UnixCairoGraphics::fillRect | ( | GR_Color3D | c, | |
UT_sint32 | x, | |||
UT_sint32 | y, | |||
UT_sint32 | w, | |||
UT_sint32 | h | |||
) | [virtual] |
This is an override that will use the GtkStyle code to actually render directly.
Reimplemented from GR_CairoGraphics.
References GR_CairoGraphics::_setProps(), GR_Graphics::CLR3D_Background, GR_Graphics::CLR3D_Highlight, GR_CairoGraphics::m_cr, m_styleBg, m_styleHighlight, GR_Graphics::tdu(), and UT_ASSERT.
void GR_UnixCairoGraphics::flush | ( | void | ) | [virtual] |
Reimplemented from GR_Graphics.
References m_Widget.
Take a screenshot of the graphics and convert it to an image.
Implements GR_Graphics.
References GR_Graphics::_tduR(), GR_Graphics::_tduX(), GR_Graphics::_tduY(), getWindow(), GR_CairoGraphics::GR_UnixImage, UT_Rect::height, UT_Rect::left, GR_CairoGraphics::m_cr, GR_UnixImage::setData(), GR_Image::setDisplaySize(), UT_Rect::top, UT_return_val_if_fail, and UT_Rect::width.
virtual UT_uint32 GR_UnixCairoGraphics::getClassId | ( | ) | [inline, virtual] |
Implements GR_Graphics.
bool GR_UnixCairoGraphics::getColor3D | ( | GR_Color3D | name, | |
UT_RGBColor & | color | |||
) | [virtual] |
In the UnixCairoGraphics, color3D are mostly invalid.
Reimplemented from GR_CairoGraphics.
References GR_Graphics::CLR3D_Background, and GR_Graphics::CLR3D_Highlight.
GR_Font * GR_UnixCairoGraphics::getGUIFont | ( | void | ) | [virtual] |
GdkWindow* GR_UnixCairoGraphics::getWindow | ( | void | ) | [inline] |
Referenced by genImageFromRectangle().
GR_Graphics * GR_UnixCairoGraphics::graphicsAllocator | ( | GR_AllocInfo & | info | ) | [static] |
static const char* GR_UnixCairoGraphics::graphicsDescriptor | ( | ) | [inline, static] |
Referenced by XAP_UnixApp::XAP_UnixApp().
void GR_UnixCairoGraphics::init3dColors | ( | GtkWidget * | w | ) |
References _convertGdkRGBA(), GR_Graphics::CLR3D_BevelDown, COLOR_MIX, GR_CairoGraphics::m_3dColors, GR_Graphics::m_bHave3DColors, m_styleBg, m_styleHighlight, and XAP_GtkStyle_get_style().
Referenced by AP_UnixFrame::_createViewGraphics(), AP_UnixDialog_PageNumbers::runModal(), AP_UnixDialog_Columns::runModal(), AP_UnixDialog_FormatTable::runModeless(), AP_UnixDialog_FormatFrame::runModeless(), and AP_UnixDialog_Border_Shading::runModeless().
void GR_UnixCairoGraphics::initWidget | ( | GtkWidget * | widget | ) |
References m_DestroySignal, m_Signal, m_Widget, UT_return_if_fail, widget_destroy(), and widget_size_allocate().
Referenced by AP_UnixFrame::_createViewGraphics().
bool GR_UnixCairoGraphics::queryProperties | ( | GR_Graphics::Properties | gp | ) | const [virtual] |
Reimplemented from GR_CairoGraphics.
References GR_Graphics::DGP_OPAQUEOVERLAY, GR_Graphics::DGP_PAPER, GR_Graphics::DGP_SCREEN, m_pWin, and UT_ASSERT.
static UT_uint32 GR_UnixCairoGraphics::s_getClassId | ( | ) | [inline, static] |
Referenced by XAP_UnixApp::XAP_UnixApp().
Implements GR_Graphics.
References GR_Graphics::disableAllCarets(), GR_Graphics::enableAllCarets(), XAP_App::getApp(), GR_Graphics::getPrevXOffset(), GR_Graphics::getPrevYOffset(), XAP_App::isSmoothScrollingEnabled(), m_pWin, GR_Graphics::setPrevXOffset(), GR_Graphics::setPrevYOffset(), and GR_Graphics::tdu().
virtual void GR_UnixCairoGraphics::scroll | ( | UT_sint32 | x_dest, | |
UT_sint32 | y_dest, | |||
UT_sint32 | x_src, | |||
UT_sint32 | y_src, | |||
UT_sint32 | width, | |||
UT_sint32 | height | |||
) | [virtual] |
Implements GR_Graphics.
void GR_UnixCairoGraphics::setCursor | ( | GR_Graphics::Cursor | c | ) | [virtual] |
Implements GR_Graphics.
References GR_Graphics::GR_CURSOR_COPYTEXT, GR_Graphics::GR_CURSOR_CROSSHAIR, GR_Graphics::GR_CURSOR_DEFAULT, GR_Graphics::GR_CURSOR_DOWNARROW, GR_Graphics::GR_CURSOR_DRAGTEXT, GR_Graphics::GR_CURSOR_EXCHANGE, GR_Graphics::GR_CURSOR_GRAB, GR_Graphics::GR_CURSOR_HLINE_DRAG, GR_Graphics::GR_CURSOR_IBEAM, GR_Graphics::GR_CURSOR_IMAGE, GR_Graphics::GR_CURSOR_IMAGESIZE_E, GR_Graphics::GR_CURSOR_IMAGESIZE_N, GR_Graphics::GR_CURSOR_IMAGESIZE_NE, GR_Graphics::GR_CURSOR_IMAGESIZE_NW, GR_Graphics::GR_CURSOR_IMAGESIZE_S, GR_Graphics::GR_CURSOR_IMAGESIZE_SE, GR_Graphics::GR_CURSOR_IMAGESIZE_SW, GR_Graphics::GR_CURSOR_IMAGESIZE_W, GR_Graphics::GR_CURSOR_LEFTARROW, GR_Graphics::GR_CURSOR_LEFTRIGHT, GR_Graphics::GR_CURSOR_LINK, GR_Graphics::GR_CURSOR_RIGHTARROW, GR_Graphics::GR_CURSOR_UPDOWN, GR_Graphics::GR_CURSOR_VLINE_DRAG, GR_Graphics::GR_CURSOR_WAIT, GR_CairoGraphics::m_cursor, m_pWin, UT_ASSERT, UT_NOT_IMPLEMENTED, and xxx_UT_DEBUGMSG.
Referenced by GR_UnixCairoGraphics().
void GR_UnixCairoGraphics::widget_destroy | ( | GtkWidget * | widget, | |
GR_UnixCairoGraphics * | me | |||
) | [static, protected] |
References m_DestroySignal, m_Signal, m_Widget, and UT_return_if_fail.
Referenced by initWidget().
void GR_UnixCairoGraphics::widget_size_allocate | ( | GtkWidget * | widget, | |
GtkAllocation * | allocation, | |||
GR_UnixCairoGraphics * | me | |||
) | [static, protected] |
References GR_CairoGraphics::m_clipRectDirty, and UT_return_if_fail.
Referenced by initWidget().
bool GR_UnixCairoGraphics::m_CairoCreated [private] |
Referenced by _beginPaint(), and _endPaint().
gulong GR_UnixCairoGraphics::m_DestroySignal [private] |
Referenced by initWidget(), widget_destroy(), and ~GR_UnixCairoGraphics().
bool GR_UnixCairoGraphics::m_Painting [private] |
Referenced by _beginPaint(), and _endPaint().
GdkWindow* GR_UnixCairoGraphics::m_pWin [private] |
Referenced by _beginPaint(), queryProperties(), scroll(), and setCursor().
gulong GR_UnixCairoGraphics::m_Signal [private] |
Referenced by initWidget(), widget_destroy(), and ~GR_UnixCairoGraphics().
GtkStyleContext* GR_UnixCairoGraphics::m_styleBg [private] |
Referenced by fillRect(), init3dColors(), and ~GR_UnixCairoGraphics().
GtkStyleContext* GR_UnixCairoGraphics::m_styleHighlight [private] |
Referenced by fillRect(), init3dColors(), and ~GR_UnixCairoGraphics().
GtkWidget* GR_UnixCairoGraphics::m_Widget [private] |
Referenced by flush(), initWidget(), widget_destroy(), and ~GR_UnixCairoGraphics().