You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
nvidia-texture-tools/project/vc8/PhotoshopExporter/PhotoshopExporter.cpp

77 lines
1.7 KiB
C++

#include "PhotoshopExporter.h"
#include <Plugin.h>
SPBasicSuite * sSPBasic = NULL;
void InitGlobals (Ptr globalPtr)
{
Globals * globals = (Globals *)globalPtr;
// Set default values.
globals->queryForParameters = true;
}
DLLExport MACPASCAL void PluginMain (const short selector,
void *exportParamBlock,
long *data,
short *result)
{
if (selector == exportSelectorAbout)
{
sSPBasic = ((AboutRecord*)exportParamBlock)->sSPBasic;
//DoAbout((AboutRecordPtr)exportParamBlock);
}
else
{
sSPBasic = ((ExportRecordPtr)exportParamBlock)->sSPBasic;
// Allocate and initialize globals.
Ptr globalPtr = AllocateGlobals ((uint32)result, (uint32)exportParamBlock, ((ExportRecordPtr)exportParamBlock)->handleProcs, sizeof(Globals), data, InitGlobals);
if (globalPtr == NULL)
{
*result = memFullErr;
return;
}
// Get our "globals" variable assigned as a Global Pointer struct with the
// data we've returned:
Globals * globals = (Globals *)globalPtr;
//-----------------------------------------------------------------------
// (3) Dispatch selector.
//-----------------------------------------------------------------------
switch (selector)
{
case exportSelectorPrepare:
// DoPrepare(globals);
break;
case exportSelectorStart:
// DoStart(globals);
break;
case exportSelectorContinue:
// DoContinue(globals);
break;
case exportSelectorFinish:
// DoFinish(globals);
break;
}
// unlock handle pointing to parameter block and data so it can move
// if memory gets shuffled:
if ((Handle)*data != NULL)
{
PIUnlockHandle((Handle)*data);
}
}
}