//////////////////////////////////////////////////////////////////////////////
//
//  Copyright 2025 Autodesk, Inc.  All rights reserved.
//
//  Use of this software is subject to the terms of the Autodesk license 
//  agreement provided at the time of installation or download, or which 
//  otherwise accompanies this software in either electronic or hard copy form.   
//
//////////////////////////////////////////////////////////////////////////////
//-----------------------------------------------------------------------------
//----- acrxEntryPoint.h
//-----------------------------------------------------------------------------
#include "StdAfx.h"
#include "resource.h"

//-----------------------------------------------------------------------------
#define szRDS _RXST("")

void editDetailSymStd();
void createDetailSymbol();
void modifyDetailSymbol();

//-----------------------------------------------------------------------------
//----- ObjectARX EntryPoint
class CDetailSymbolApp : public AcRxArxApp {

public:
	CDetailSymbolApp () : AcRxArxApp () {}

	virtual AcRx::AppRetCode On_kInitAppMsg (void *pkt) {
		// TODO: Load dependencies here

		// You *must* call On_kInitAppMsg here
		AcRx::AppRetCode retCode =AcRxArxApp::On_kInitAppMsg (pkt) ;
		
		// TODO: Add your initialization code here

		return (retCode) ;
	}

	virtual AcRx::AppRetCode On_kUnloadAppMsg (void *pkt) {
		// TODO: Add your code here

		// You *must* call On_kUnloadAppMsg here
		AcRx::AppRetCode retCode =AcRxArxApp::On_kUnloadAppMsg (pkt) ;

		// TODO: Unload dependencies here

		return (retCode) ;
	}

	virtual void RegisterServerComponents () {
	}


  // ----- TESTAPP._DetailSymStd command
  static void TESTAPP_DetailSymStd(void)
  {
    // Add your code for command TESTAPP.DetailSymStd here
    editDetailSymStd();
  }

  // - TESTAPP._CreateDetailSym command (do not rename)
  static void TESTAPP_CreateDetailSym(void)
  {
    // Add your code for command TESTAPP._CreateDetailSym here
    createDetailSymbol();
  }

  // - TESTAPP._ModifyDetailSym command (do not rename)
  static void TESTAPP_ModifyDetailSym(void)
  {
    // Add your code for command TESTAPP._ModifyDetailSym here
    modifyDetailSymbol();
  }
} ;

//-----------------------------------------------------------------------------
IMPLEMENT_ARX_ENTRYPOINT(CDetailSymbolApp)

ACED_ARXCOMMAND_ENTRY_AUTO(CDetailSymbolApp, TESTAPP, _DetailSymStd, DetailSymStd, ACRX_CMD_TRANSPARENT, NULL)
ACED_ARXCOMMAND_ENTRY_AUTO(CDetailSymbolApp, TESTAPP, _CreateDetailSym, CreateDetailSym, ACRX_CMD_TRANSPARENT, NULL)
ACED_ARXCOMMAND_ENTRY_AUTO(CDetailSymbolApp, TESTAPP, _ModifyDetailSym, ModifyDetailSym, ACRX_CMD_TRANSPARENT, NULL)
