The VECTOREVENT structure holds information about an event.
typedef struct tagVECTOREVENT
{
L_INT nSize;
L_UINT uType;
VECTOR_EVENT_STATUS Status;
L_INT nErrorCode;
pVECTOROBJECT pObject;
L_VOID *pObjectDesc;
pVECTORLAYER pLayer;
pVECTORLAYERDESC pLayerDesc;
pVECTORGROUP pGroup;
pVECTORGROUPDESC pGroupDesc;
pVECTORPOINT pPoint1;
pVECTORPOINT pPoint2;
L_UINT32 dwFlags;
L_VOID *pUserData;
} VECTOREVENT, * pVECTOREVENT;
Size of this structure. Used for versioning.
The type of event that was generated. For a list of possible values, refer to the Comments section below.
Status of the event. Possible values are:
Value | Meaning |
---|---|
VECTOR_EVENT_STATUS_BEFORE | The action that generated the event is about to be taken. |
VECTOR_EVENT_STATUS_AFTER | The action that generated the event was just completed. |
Error code associated with the event. For a list of possible values, refer to the Return Codes.
Pointer to the vector object associated with the event. This structure member is only valid for certain event types. For a list of the events for which this member is valid, refer to the table in the Comments section below.
Pointer to an object descriptor. This structure is only valid for certain event types. For a list of the events for which this member is valid, refer to the table in the Comments section below.
Pointer to the vector layer associated with the event. This structure member is only valid for certain event types. For a list of the events for which this member is valid, refer to the table in the Comments section below.
Pointer to a layer descriptor. This structure is only valid for certain event types. For a list of the events for which this member is valid, refer to the table in the Comments section below.
Pointer to the vector group associated with the event. This structure member is only valid for certain event types. For a list of the events for which this member is valid, refer to the table in the Comments section below.
Pointer to a group descriptor. This structure is only valid for certain event types. For a list of the events for which this member is valid, refer to the table in the Comments section below.
Pointer to a general point 1. This structure is only valid for certain event types. For a list of the events for which this member is valid, refer to the table in the Comments section below.
Pointer to a general point 2. This structure is only valid for certain event types. For a list of the events for which this member is valid, refer to the table in the Comments section below.
Flag that provides processing information. This member is only valid for certain event types. For a list of the events for which this member is valid, refer to the table in the Comments section below.
User defined data.
The uType member will correspond to the vector function called, for example if you call LVectorBase::Empty, an event of type VECTOR_EVENT_EMPTY will be fired.
The following table lists all the defined event types plus values for the structure variables, when defined. Not all structure members are defined for every event. For example, the Object member is not defined for a VECTOR_EVENT_FREE event, but it is defined for the VECTOR_EVENT_TRANSLATION event. The data contained in the Object structure member corresponds to the vector object that was translated. More information can be obtained by using the pObject as an argument to an LVectorObject constructor, or to a constructor of a derived class of LVectorObject (i.e. LVectorRectangle.)
The pVECTOROBJECT(pObject), pVECTORGROUP(pGroup), pVECTORLAYER(pLayer) pointers can all be passed to class library constructors to create class library objects. The LVectorObject (and derived classes of LVectorObject) has a constructor that takes a pVECTOROBJECT, the LVectorGroup has a constructor that takes a pVECTORGROUP, and the LVectorLayer class has a constructor that takes a pVECTORLAYER.
Event | Function | pObject | pObjectDesc | pLayer | pLayerDesc | pGroup | pGroupDesc | pPoint1 | pPoint2 | dwFlags |
---|---|---|---|---|---|---|---|---|---|---|
VECTOR_EVENT_FREE | LVectorBase::SetHandle, LVectorBase::Free, LVectorBase::~LVectorBase | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used |
VECTOR_EVENT_EMPTY | LVectorBase::Empty | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used |
VECTOR_EVENT_COPY | LVectorBase::Copy | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used | dwFlags |
VECTOR_EVENT_VIEWPORT | LVectorBase::SetViewport | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used |
VECTOR_EVENT_PAN | LVectorBase::SetPan | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used |
VECTOR_EVENT_LOCKED | LVectorBase::SetLocked | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used | bLock |
VECTOR_EVENT_BACKGROUND | LVectorBase::SetBackgroundColor | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Color |
VECTOR_EVENT_PALETTE | LVectorBase::SetPalette | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used |
VECTOR_EVENT_VIEWMODE | LVectorBase::SetViewMode | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used | nMode |
VECTOR_EVENT_TRANSLATION | LVectorBase::SetTranslation, LVectorDialog::DoModalVectorTranslate, LVectorObject::SetTranslation | The modified object(s). | Not used | Not used | Not used | Not used | Not used | pTranslation | Not used | dwFlags (where applicable) |
VECTOR_EVENT_ROTATION | LVectorBase::SetRotation, LVectorDialog::DoModalVectorRotate, LVectorObject::SetRotation | The modified object(s). | Not used | Not used | Not used | Not used | Not used | pRotation | pOrigin | dwFlags (where applicable) |
VECTOR_EVENT_SCALE | LVectorBase::SetScale, LVectorDialog.DoModalVectorScale, LVectorObject::SetScale | The modified object(s). | Not used | Not used | Not used | Not used | Not used | pScale | pOrigin | dwFlags (where applicable) |
VECTOR_EVENT_ORIGIN | LVectorBase::SetOrigin | Not used | Not used | Not used | Not used | Not used | Not used | pOrigin | Not used | Not used |
VECTOR_EVENT_APPLYTRANSFORMATION | LVectorBase::ApplyTransformation | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used |
VECTOR_EVENT_BINDVERTICESMODE | LVectorBase::SetBindVerticesMode | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used | nMode |
VECTOR_EVENT_PARALLELOGRAM | LVectorBase::SetParallelogram | Not used | Not used | Not used | Not used | Not used | Not used | pMin | pMax | Not used |
VECTOR_EVENT_CAMERA | LVectorBase::SetCamera, LVectorDialog::DoModalVectorCamera | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used |
VECTOR_EVENT_METAFILE | LVectorBase::ConvertFromEMF, LVectorBase::ConvertFromWMF | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used |
VECTOR_EVENT_ATTACHTOWINDOW | LVectorBase::AttachToWindow | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used | dwFlags |
VECTOR_EVENT_MARKER | LVectorBase::SetMarker | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used |
VECTOR_EVENT_HITTEST | LVectorBase::SetHitTest, LVectorDialog::DoModalVectorHitTest | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used |
VECTOR_EVENT_POLYGONMODE | LVectorBase::SetPolygonMode | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used | nMode |
VECTOR_EVENT_COPYFROMCLIPBOARD | LVectorBase::CopyFromClipboard | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used | dwFlags |
VECTOR_EVENT_ADDLAYER | LVectorBase::AddLayer, LVectorDialog::DoModalVectorNewLayer | Not used | Not used | pLayer identifier of the LVectorBase object | Not used | Not used | Not used | Not used | Not used | dwFlags (where applicable) |
VECTOR_EVENT_DELETELAYER | LVectorLayer::DeleteLayer | Not used | Not used | pLayer identifier of the LVectorBase object | Not used | Not used | Not used | Not used | Not used | Not used |
VECTOR_EVENT_EMPTYLAYER | LVectorLayer::EmptyLayer | Not used | Not used | pLayer identifier of the LVectorBase object | Not used | Not used | Not used | Not used | Not used | Not used |
VECTOR_EVENT_COPYLAYER | LVectorBase::CopyLayer | Not used | Not used | pLayer identifier of the LVectorBase object | Not used | Not used | Not used | Not used | Not used | dwFlags |
VECTOR_EVENT_SETLAYER | LVectorLayer::SetLayerDesc | Not used | Not used | pLayer identifier of the LVectorBase object | Not used | Not used | Not used | Not used | Not used | Not used |
VECTOR_EVENT_SETACTIVELAYER | LVectorBase::SetActiveLayer | Not used | Not used | pLayer identifier of the LVectorBase object | Not used | Not used | Not used | Not used | Not used | Not used |
VECTOR_EVENT_ADDGROUP | LVectorBase::AddGroup | Not used | Not used | Not used | Not used | pGroup identifier of the LVectorBase object | Not used | Not used | Not used | dwFlags |
VECTOR_EVENT_DELETEGROUP | LVectorGroup::DeleteGroup | Not used | Not used | Not used | Not used | pGroup identifier of the LVectorBase object | Not used | Not used | Not used | Not used |
VECTOR_EVENT_DELETEGROUPCLONES | LVectorGroup::DeleteGroupClones | Not used | Not used | Not used | Not used | pGroup identifier of the LVectorBase object | Not used | Not used | Not used | dwFlags |
VECTOR_EVENT_EMPTYGROUP | LVectorGroup::EmptyGroup | Not used | Not used | Not used | Not used | pGroup identifier of the LVectorBase object | Not used | Not used | Not used | Not used |
VECTOR_EVENT_COPYGROUP | LVectorBase::CopyGroup | Not used | Not used | Not used | Not used | pGroup identifier of the LVectorBase object | Not used | Not used | Not used | dwFlags |
VECTOR_EVENT_SETGROUP | LVectorGroup::SetGroupDesc | Not used | Not used | Not used | Not used | pGroup identifier of the LVectorBase object | Not used | Not used | Not used | Not used |
VECTOR_EVENT_ADDOBJECT | LVectorLayer::AddObject, LVectorBase::AddObject, LVectorDialog::DoModalVectorNewObject | The modified object(s). | Not used | pLayer identifier of the LVectorBase object | Not used | Not used | Not used | Not used | Not used | Not used |
VECTOR_EVENT_DELETEOBJECT | LVectorBase::DeleteObject | The modified object(s). | Not used | Not used | Not used | Not used | Not used | Not used | Not used | dwFlags |
VECTOR_EVENT_COPYOBJECT | LVectorBase::CopyObject | The modified object(s). | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used |
VECTOR_EVENT_SETOBJECT | LVectorObject::UnlockObject, LVectorDialog::DoModalVectorEditObject | The modified object. | Not used | Not used | Not used | Not used | Not used | Not used | Not used | nType |
VECTOR_EVENT_EXPLODEOBJECT | LVectorObject::ExplodeObject | The modified object(s). | Not used | Not used | Not used | Not used | Not used | Not used | Not used | dwFlags |
VECTOR_EVENT_SELECTOBJECT | LVectorObject::SelectObject | The modified object(s). | Not used | Not used | Not used | Not used | Not used | Not used | Not used | bSelect |
VECTOR_EVENT_OBJECTATTRIBUTES | LVectorObject::SetObjectAttributes, LVectorBase::SetObjectAttributes | The modified object(s). | Not used | Not used | Not used | Not used | Not used | Not used | Not used | dwFlags |
VECTOR_EVENT_LOADFILE | LVectorBase::Load, LVectorWindow::Load, LVectorFile::StartFeedLoad, LVectorFile::StopFeedLoad | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used |
VECTOR_EVENT_ADDOBJECTTOGROUP | LVectorGroup::AddObject | The modified object(s). | Not used | Not used | Not used | pGroup identifier of the LVectorBase object | Not used | Not used | Not used | Not used |
VECTOR_EVENT_CREATENEWWINDOW | LVectorObject::GotoHyperlink | Not used | pObjectDesc | Not used | Not used | Not used | Not used | Not used | Not used | Not used |
VECTOR_EVENT_INVERTCOLORS | LVectorBase::InvertColors | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used | Not used |