Archicad 28 C++ API
Loading...
Searching...
No Matches
API_IOParams Struct Reference

Describes the file to work on in your callback procedure. More...

#include <APIdefs_Callback.h>

Public Attributes

short refCon
 The identifier of your file type. It's is the same what you called ACAPI_AddOnIntegration_InstallFileTypeHandler with, and also the same what you used in the ACAPI_AddOnIntegration_RegisterFileType as a reference number in the RegisterInterface function.
 
short method
 Tells the type of operation your add-on was called to perform; basically identifies the dialog. Its value can be one of the followings: IO_OPEN, IO_MERGE, IO_OPENLIBPART, IO_SAVEAS, IO_SAVEAS3D, IO_SAVEASFLY3D, IO_IMPORT.
 
UInt32 fileTypeID
 The file type registered with the internal File Type Manager.
 
IO::Location * fileLoc
 The location of the file in the file system.
 
IO::Location * fileLocOnServer
 Contains the BIMcloud location of the file without authentication info if the file was originally downloaded from BIMcloud. Only set for Save and Merge operations. nullptr otherwise.
 
IO::Name * saveFileIOName
 Contains the Unicode name of the file entered into the Save dialog (in this case fileLoc refers to a scratch file).
 
bool noDialog
 Work in silent mode (for normal drag drop operations its default value is true.
 
bool fromDragDrop
 Indicates whether a merge operation (IO_MERGE method) was initiated via drag drop. In this case the dropOffset field contains the dropping coordinates.
 
API_Vector dropOffset
 At a drag and drop merge this field contains the drop position relative to project origin; in all the other cases it is null vector.
 
GSPtr additionalData
 Reserved for internal use.
 
API_Guid drawingGuid
 GUID of the drawing element during relink.
 

Detailed Description

Describes the file to work on in your callback procedure.

Remarks
This structure is used as the parameter of the APIIOCommandProc callback function for identifying the file you should work on.