Ipelib
Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
ipe::Canvas Class Reference

#include <ipecanvas_win.h>

Inherits ipe::CanvasBase, QWidget, ipe::CanvasBase, and ipe::CanvasBase.

Public Member Functions

 Canvas (GtkWidget *parent)
 
 ~Canvas ()
 
GtkWidget * window () const
 
 Canvas (QWidget *parent, Qt::WindowFlags f=nullptr)
 
virtual void setCursor (TCursor cursor, double w=1.0, Color *color=nullptr)
 
 Canvas (HWND parent, HINSTANCE hInstance=nullptr)
 
HWND windowId () const
 
- Public Member Functions inherited from ipe::CanvasBase
virtual ~CanvasBase ()
 
void setPage (const Page *page, int pno, int view, const Cascade *sheet)
 
void setResources (const PdfResources *resources)
 
Vector pan () const
 
double zoom () const
 
const Cascade * cascade () const
 
Vector center () const
 
Vector pos () const
 
Vector unsnappedPos () const
 
Vector globalPos () const
 
Vector simpleSnapPos () const
 
const Snap & snap () const
 
void setInkMode (bool ink)
 
int additionalModifiers () const
 
void setAdditionalModifiers (int mod)
 
bool type3Font ()
 
Vector devToUser (const Vector &arg) const
 
Vector userToDev (const Vector &arg) const
 
void setCanvasStyle (const Style &style)
 
Style canvasStyle () const
 
void setPan (const Vector &v)
 
void setZoom (double zoom)
 
void setSnap (const Snap &s)
 
void setDimmed (bool dimmed)
 
void setAutoOrigin (const Vector &v)
 
Matrix canvasTfm () const
 
void setObserver (CanvasObserver *observer)
 
void setFifiVisible (bool visible)
 
void setSelectionVisible (bool visible)
 
void setTool (Tool *tool)
 
void finishTool ()
 
Tool * tool ()
 
void update ()
 
void updateTool ()
 
int canvasWidth () const
 
int canvasHeight () const
 
virtual void setCursor (TCursor cursor, double w=1.0, Color *color=nullptr)=0
 
virtual void invalidate (int x, int y, int w, int h)=0
 

Static Public Member Functions

static void init (HINSTANCE hInstance)
 
static UINT getDpiForWindow (HWND hwnd)
 
static HBITMAP createBitmap (uint8_t *p, int w, int h)
 
- Static Public Member Functions inherited from ipe::CanvasBase
static int selectPageOrView (Document *doc, int page=-1, int startIndex=0, int pageWidth=240, int width=600, int height=480)
 

Protected Member Functions

virtual void invalidate ()
 
virtual void invalidate (int x, int y, int w, int h)
 
void drawFifi (QPainter &q)
 
virtual void paintEvent (QPaintEvent *ev)
 
void mouseButton (QMouseEvent *ev, int button, bool press)
 
virtual void mouseDoubleClickEvent (QMouseEvent *ev)
 
virtual void mousePressEvent (QMouseEvent *ev)
 
virtual void mouseReleaseEvent (QMouseEvent *ev)
 
virtual void mouseMoveEvent (QMouseEvent *ev)
 
virtual void tabletEvent (QTabletEvent *ev)
 
virtual void wheelEvent (QWheelEvent *ev)
 
virtual void keyPressEvent (QKeyEvent *ev)
 
virtual QSize sizeHint () const
 
- Protected Member Functions inherited from ipe::CanvasBase
 CanvasBase ()
 
void drawPaper (cairo_t *cc)
 
void drawFrame (cairo_t *cc)
 
void drawAxes (cairo_t *cc)
 
void drawGrid (cairo_t *cc)
 
void drawObjects (cairo_t *cc)
 
void drawTool (Painter &painter)
 
void snapToPaperAndFrame ()
 
void refreshSurface ()
 
void computeFifi (double x, double y)
 
void drawFifi (cairo_t *cr)
 
virtual void invalidate ()=0
 

Additional Inherited Members

- Public Types inherited from ipe::CanvasBase
enum  TModifiers {
  EShift = 0x100 , EControl = 0x200 , EAlt = 0x400 , EMeta = 0x800 ,
  ECommand = 0x1000
}
 
enum  TCursor { EStandardCursor , EHandCursor , ECrossCursor , EDotCursor }
 
- Protected Attributes inherited from ipe::CanvasBase
CanvasObserver * iObserver
 
Tool * iTool
 
const Page * iPage
 
int iPageNumber
 
int iView
 
const Cascade * iCascade
 
Style iStyle
 
Vector iPan
 
double iZoom
 
Snap iSnap
 
bool iDimmed
 
bool iAutoSnap
 
Vector iAutoOrigin
 
int iAdditionalModifiers
 
bool isInkMode
 
bool iRepaintObjects
 
double iWidth
 
double iHeight
 
double iBWidth
 
double iBHeight
 
cairo_surface_t * iSurface
 
Vector iUnsnappedMousePos
 
Vector iMousePos
 
Vector iGlobalPos
 
Vector iOldFifi
 
bool iFifiVisible
 
Snap::TSnapModes iFifiMode
 
bool iSelectionVisible
 
const PdfResources * iResources
 
std::unique_ptr< Fonts > iFonts
 
bool iType3Font
 

Detailed Description

A widget (control) that displays an Ipe document page.

Constructor & Destructor Documentation

◆ Canvas() [1/3]

Canvas::Canvas ( GtkWidget *  parent)

◆ ~Canvas()

Canvas::~Canvas ( )

◆ Canvas() [2/3]

Canvas::Canvas ( QWidget *  parent,
Qt::WindowFlags  f = nullptr 
)

Construct a new canvas.

◆ Canvas() [3/3]

Canvas::Canvas ( HWND  parent,
HINSTANCE  hInstance = nullptr 
)

Member Function Documentation

◆ window()

GtkWidget * ipe::Canvas::window ( ) const
inline

◆ setCursor()

virtual void ipe::Canvas::setCursor ( TCursor  cursor,
double  w = 1.0,
Color *  color = nullptr 
)
virtual

Implements ipe::CanvasBase.

◆ invalidate() [1/2]

virtual void ipe::Canvas::invalidate ( )
protectedvirtual

Implements ipe::CanvasBase.

◆ invalidate() [2/2]

virtual void ipe::Canvas::invalidate ( int  x,
int  y,
int  w,
int  h 
)
protectedvirtual

Implements ipe::CanvasBase.

◆ drawFifi()

void Canvas::drawFifi ( QPainter &  q)
protected

◆ paintEvent()

void Canvas::paintEvent ( QPaintEvent *  ev)
protectedvirtual

◆ mouseButton()

void Canvas::mouseButton ( QMouseEvent *  ev,
int  button,
bool  press 
)
protected

◆ mouseDoubleClickEvent()

void Canvas::mouseDoubleClickEvent ( QMouseEvent *  ev)
protectedvirtual

References mouseButton().

◆ mousePressEvent()

void Canvas::mousePressEvent ( QMouseEvent *  ev)
protectedvirtual

References mouseButton().

◆ mouseReleaseEvent()

void Canvas::mouseReleaseEvent ( QMouseEvent *  ev)
protectedvirtual

References mouseButton().

◆ mouseMoveEvent()

void Canvas::mouseMoveEvent ( QMouseEvent *  ev)
protectedvirtual

◆ tabletEvent()

void Canvas::tabletEvent ( QTabletEvent *  ev)
protectedvirtual

◆ wheelEvent()

void Canvas::wheelEvent ( QWheelEvent *  ev)
protectedvirtual

◆ keyPressEvent()

void Canvas::keyPressEvent ( QKeyEvent *  ev)
protectedvirtual

◆ sizeHint()

QSize Canvas::sizeHint ( ) const
protectedvirtual

◆ init()

void Canvas::init ( HINSTANCE  hInstance)
static

◆ getDpiForWindow()

UINT Canvas::getDpiForWindow ( HWND  hwnd)
static

◆ windowId()

HWND ipe::Canvas::windowId ( ) const
inline

◆ createBitmap()

static HBITMAP ipe::Canvas::createBitmap ( uint8_t *  p,
int  w,
int  h 
)
static

The documentation for this class was generated from the following files: