Document Interface class

From LibreCAD wiki
Jump to: navigation, search

Document_Interface Class Reference

Interface for comunicate plugins.

Class for communicate plugins with document (drawing).

#include <document_interface.h>

Public Member Functions

virtual ~Document_Interface()
virtual void updateView ()=0Force to update the graphic view.
virtual void addPoint (QPointF *start)=0Add point entity to current document.
virtual void addLine (QPointF *start, QPointF *end)=0Add line entity to current document.
virtual void addText(QString txt, QString sty, QPointF *start, double height, double angle, DPI::HAlign ha, DPI::VAlign va)=0 Add text entity to current document.
virtual void addCircle (QPointF *start, qreal radius)=0Add line entity to current document.
virtual void addArc (QPointF *start, qreal radius, qreal a1, qreal a2)=0Add arc entity to current document.
virtual void addEllipse (QPointF *start, QPointF *end, qreal ratio, qreal a1, qreal a2)=0Add ellipse entity to current document.
virtual void addImage (int handle, QPointF *start, QPointF *uvr, QPointF *vvr, int w, int h, QString name, int br, int con, int fade)=0 Add image entity to current document.
virtual void setLayer(QString name)=0Set the current layer in current document.
virtual QString getCurrentLayer()=0Get the current layer in current document.
virtual bool getPoint(QPointF *point, const QString &mesage="", QPointF *base=0)=0Gets a point.
virtual Plug_Entity* getEnt (const QString &mesage="")=0Select a entity.
virtual bool getSelect (QList< Plug_Entity *> *sel, const QString &mesage="")=0Gets a entities selection.


virtual Document_Interface::~Document_Interface () [inline, virtual]

Member Function Documentation

virtual void Document_Interface::updateView() <code>[pure virtual]

Force to update the graphic view redrawing the document.


virtual void Document_Interface::addPoint(QPointF* start) [pure virtual]

Add point entity to current document with current attributes.

Parameters:

startstart point coordinate.

virtual void Document_Interface::addLine(QPointF* start, QPointF* end) [pure virtual]

Add line entity to current document with current attributes.

Parameters:

startstart point coordinate.
endend point coordinate.

virtual void Document_Interface::addText (QString txt, QString sty, QPointF * start, double height, double angle, DPI::HAlign ha, DPI::VAlign va) [pure virtual]

Add text entity to current document with current attributes

Parameters:

txta QString with text content
stya QString with text style name
startinsertion point coordinate
heightheight of text
anglerotation angle of text
hahorizontal alignement of text
vavertical alignement of text

virtual void Document_Interface::addCircle(QPointF* start, qreal radius) [pure virtual]

Add circle entity to current document with current attributes.

Parameters:

startcenter point coordinate.
radiusradius for circle.

virtual QString Document_Interface::getCurrentLayer() [pure virtual]

Get the current layer in current document.

Returns: The name of the current layer.


virtual Plug_Entity* Document_Interface::getEnt(const QString& mesage = "") [pure virtual]

Prompt message or a default message to the user asking for a single selection. You can delete the Plug_Entity wen no more needed.

Parameters:

mesagean optional QString with prompt message.

Returns: a Plug_Entity handle the selected entity or NULL.


virtual bool Document_Interface::getPoint( QPointF* point, const QString& mesage = "", QPointF* base = 0) [pure virtual]

Gets a point.

Prompt message or an default message to the user asking for a point. If base is present draw a line from base to cursor position.

Parameters:

pointa pointer to QPointF to store the obtained point.
mesagean optional QString with prompt message.
basevisual helper point, if present.


Returns: false if fail, i.e. user cancel.


virtual bool Document_Interface::getSelect(QList<Plug_Entity *> *sel, const QString& mesage = "") [pure virtual]

Gets a entities selection.

Prompt message or an default message to the user asking for a selection. You can delete all, the <a href="Plug_Entity-Class-Reference" title="Wrapper for acces entities from plugins.">Plug_Entity</a> and the returned QList wen no more needed.

Parameters:

sela QList of poiters to Plug_Entity handled the selected entities.
mesagean optional QString with prompt message.

Returns: true if succes, false if fail, i.e. user cancel.


virtual void Document_Interface::setLayer (QString& name) [pure virtual]

Set the current layer in current document.

Set the current layer in current document, if not exist create it.

Parameters:

namea QString with the name of the layer.