diff --git a/API_MachMgr.cpp b/API_MachMgr.cpp index bb966b3..283cd1d 100644 --- a/API_MachMgr.cpp +++ b/API_MachMgr.cpp @@ -60,6 +60,41 @@ __stdcall EgtGetMachMgrWarningString( int nInd) //----------------------------------------------------------------------------- // Machines +//----------------------------------------------------------------------------- +BOOL +__stdcall EgtGetMachines( wchar_t*& wsMachineNames, wchar_t*& wsMachineDirs) +{ + if ( &wsMachineNames == nullptr || &wsMachineDirs == nullptr) + return FALSE ; + STRVECTOR vsMachineNames ; + STRVECTOR vsMachineDirs ; + if ( ! ExeGetMachines( vsMachineNames, vsMachineDirs)) + return FALSE ; + // restituzione vettore nomi + string sMachineNames ; + for ( const auto& sName : vsMachineNames) { + if ( ! sMachineNames.empty()) + sMachineNames += "\n" ; + sMachineNames += sName ; + } + wsMachineNames = _wcsdup( stringtoW( sMachineNames)) ; + if ( wsMachineNames == nullptr) + return FALSE ; + // restituzione vettore direttori + string sMachineDirs ; + for ( const auto& sName : vsMachineDirs) { + if ( ! sMachineDirs.empty()) + sMachineDirs += "\n" ; + sMachineDirs += sName ; + } + wsMachineDirs = _wcsdup( stringtoW( sMachineDirs)) ; + if ( wsMachineDirs == nullptr) { + free( wsMachineNames) ; + return FALSE ; + } + return TRUE ; +} + //----------------------------------------------------------------------------- BOOL __stdcall EgtSetCurrMachine( const wchar_t* wsMachineName) @@ -80,6 +115,19 @@ __stdcall EgtGetCurrMachineName( wchar_t*& wsMachineName) return (( wsMachineName == nullptr) ? FALSE : TRUE) ; } +//----------------------------------------------------------------------------- +BOOL +__stdcall EgtGetCurrMachineDir( wchar_t*& wsMachineDir) +{ + if ( &wsMachineDir == nullptr) + return FALSE ; + string sMachineDir ; + if ( ! ExeGetCurrMachineDir( sMachineDir)) + return FALSE ; + wsMachineDir = _wcsdup( stringtoW( sMachineDir)) ; + return (( wsMachineDir == nullptr) ? FALSE : TRUE) ; +} + //----------------------------------------------------------------------------- // Machining Groups //----------------------------------------------------------------------------- diff --git a/EgtInterface.rc b/EgtInterface.rc index 2ec13d7..4d66dbe 100644 Binary files a/EgtInterface.rc and b/EgtInterface.rc differ