#include "ltwrappr.h"
virtual L_INT LVectorBase::AddLayer(pVectorLayer, dwFlags=VECTOR_FLAGS_RENAME_DUPLICATE_LAYERS);
Adds a new empty layer to a vector handle.
This function is available in the LEADTOOLS Vector Imaging Pro Toolkit.
Pointer to an LVectorLayer object that specifies the layer settings.
Flag that indicates whether or not to rename duplicate layer names. Possible values are:
Value | Meaning |
---|---|
0 | Don't rename duplicate layer names, if found. |
VECTOR_FLAGS_RENAME_DUPLICATES | Renames duplicate layer names if found. The toolkit will add a suffix (0, 1, 2, etc) to the layer name if duplicated. Checking will be aborted when the suffix value reaches 999 and no unique name can be created. |
Value | Meaning |
---|---|
SUCCESS | The function was successful. |
< 1 | An error occurred. Refer to Return Codes. |
To add a new vector layer, do the following:
Declare an LVectorLayer object.
Call LVectorLayer::GetLayerDesc to retrieve the current layer settings.
Change the layer settings.
Call LVectorLayer::SetLayerDesc to set the changed layer settings.
Pass the address of the LVectorLayer object to LVectorBase::AddLayer.
Required DLLs and Libraries
This example will add a new layer to a vector handle.
L_INT LVectorBase__AddLayerExample(HWND hWnd, LVectorBase *pVector)
{
UNREFERENCED_PARAMETER(hWnd);
L_INT nRet;
LVectorLayer VectorLayer;
VECTORLAYERDESC LayerDesc;
nRet = VectorLayer.GetLayerDesc(&LayerDesc);
if(nRet != SUCCESS)
return nRet;
lstrcpy(LayerDesc.szName, TEXT("Terry's New Layer"));
nRet = VectorLayer.SetLayerDesc(&LayerDesc);
if(nRet != SUCCESS)
return nRet;
nRet = pVector->AddLayer(&VectorLayer, VECTOR_FLAGS_RENAME_DUPLICATES);
if(nRet != SUCCESS)
{
MessageBox( NULL, TEXT("Could not add layer!"), TEXT(""), MB_OK );
return nRet;
}
//...LVectorLayer destructor called when VectorLayer goes out of scope
return SUCCESS;
}