2015-06-12
03:12 AM
- last edited on
2023-07-13
03:53 PM
by
Doreena Deng
2015-06-12 02:52 PM
Bianca wrote:Yes there is.
Hi
Is there a function to do a SAVE AS operation?
I have found the Save function but I need to save the opened Archicad to be a different name.
static void Do_Save_Plan (void)
{
GSErrCode err;
err = ACAPI_Automate (APIDo_SaveID, NULL, NULL);
if (err != NoError) {
char msgStr[256];
sprintf (msgStr, "Error in APIDo_SaveID: %d", (int) err);
ACAPI_WriteReport (msgStr, true);
}
return;
} // Do_Save_Plan
// -----------------------------------------------------------------------------
// Save the current plan into a picture
// -----------------------------------------------------------------------------
static void Do_Save_TiffFile (void)
{
API_FileSavePars fsp;
API_SavePars_Picture pars_pict;
GSErrCode err;
BNZeroMemory (&fsp, sizeof (API_FileSavePars));
fsp.fileTypeID = APIFType_TIFFFile;
IO::Location folderLoc;
API_SpecFolderID specID = API_UserDocumentsFolderID;
ACAPI_Environment (APIEnv_GetSpecFolderID, &specID, &folderLoc);
fsp.file = new IO::Location (folderLoc, IO::Name ("PictTest.tif"));
BNZeroMemory (&pars_pict, sizeof (API_SavePars_Picture));
pars_pict.colorDepth = APIColorDepth_256C;
pars_pict.dithered = false;
pars_pict.view2D = true;
pars_pict.crop = true;
err = ACAPI_Automate (APIDo_SaveID, &fsp, &pars_pict);
if (err != NoError) {
char msgStr[256];
sprintf (msgStr, "Error in APIDo_SaveID (pict): %d", (int) err);
ACAPI_WriteReport (msgStr, true);
}
delete fsp.file;
return;
} // Do_Save_TiffFile
// -----------------------------------------------------------------------------
// Save the current plan to an IFC file
// -----------------------------------------------------------------------------
static void Do_Save_IfcFile (void)
{
API_FileSavePars fsp;
API_SavePars_Ifc pars_ifc;
GSErrCode err;
BNZeroMemory (&fsp, sizeof (API_FileSavePars));
fsp.fileTypeID = APIFType_IfcFile;
IO::Location folderLoc;
API_SpecFolderID specID = API_UserDocumentsFolderID;
ACAPI_Environment (APIEnv_GetSpecFolderID, &specID, &folderLoc);
fsp.file = new IO::Location (folderLoc, IO::Name ("IfcTest.ifc"));
BNZeroMemory (&pars_ifc, sizeof (pars_ifc));
pars_ifc.subType = APIIfc_2x3;
err = ACAPI_Automate (APIDo_SaveID, &fsp, &pars_ifc);
if (err != NoError) {
char msgStr[256];
sprintf (msgStr, "Error in APIDo_SaveID (Ifc): %s", ErrID_To_Name (err));
ACAPI_WriteReport (msgStr, true);
}
delete fsp.file;
return;
} // Do_Save_IfcFile
// -----------------------------------------------------------------------------
// Save the current plan to an Pdf file
// -----------------------------------------------------------------------------
static void Do_Save_PdfFile (void)
{
API_FileSavePars fsp;
GSErrCode err;
BNZeroMemory (&fsp, sizeof (API_FileSavePars));
fsp.fileTypeID = APIFType_PdfFile;
IO::Location folderLoc;
API_SpecFolderID specID = API_UserDocumentsFolderID;
ACAPI_Environment (APIEnv_GetSpecFolderID, &specID, &folderLoc);
fsp.file = new IO::Location (folderLoc, IO::Name ("PdfTest.pdf"));
err = ACAPI_Automate (APIDo_SaveID, &fsp, NULL);
if (err != NoError) {
char msgStr[256];
sprintf (msgStr, "Error in APIDo_SaveID (Pdf): %s", ErrID_To_Name (err));
ACAPI_WriteReport (msgStr, true);
}
delete fsp.file;
return;
} // Do_Save_PdfFile
By the way you can look at Automate_Functions example
2015-06-15 01:03 AM
2015-07-01 04:14 AM