79 lines
2.2 KiB
C++
Executable File
79 lines
2.2 KiB
C++
Executable File
#include <confapp.h>
|
|
#include <lffiles.h>
|
|
#include <files.h>
|
|
#include "cg5100a.h"
|
|
|
|
class CG51_App : public TConfig_application
|
|
{
|
|
public:
|
|
virtual bool preprocess_config (TMask& mask, TConfig& config);
|
|
virtual bool postprocess_config (TMask& mask, TConfig& config);
|
|
virtual bool postprocess_config_changed(const char* par, const char* var,
|
|
const char* oldv, const char* newv);
|
|
|
|
CG51_App() : TConfig_application(CONFIG_DITTA) {}
|
|
virtual ~CG51_App() {}
|
|
};
|
|
|
|
bool CG51_App::preprocess_config (TMask& mask, TConfig& config)
|
|
{
|
|
// these are disabled in normal applications
|
|
mask.enable(CHK_ANCFCM);
|
|
mask.enable(CHK_PCTCCM);
|
|
disable_menu_item(M_FILE_NEW);
|
|
disable_menu_item(M_FILE_REVERT);
|
|
return TRUE;
|
|
}
|
|
|
|
bool CG51_App::postprocess_config(TMask& mask, TConfig& config)
|
|
{
|
|
enable_menu_item(M_FILE_NEW);
|
|
enable_menu_item(M_FILE_REVERT);
|
|
return TRUE;
|
|
}
|
|
|
|
bool CG51_App::postprocess_config_changed(const char* par, const char* var,
|
|
const char* oldv, const char* newv)
|
|
{
|
|
TString v(var);
|
|
TDir dir;
|
|
TString file(16);
|
|
|
|
if (v == "AnCfCm")
|
|
{
|
|
dir.get(LF_CLIFO, _lock, _nordir, _sysdirop);
|
|
file = dir.name();
|
|
file[0] = *newv == 'X' ? '%' : '$';
|
|
dir.set(file, dir.eod(), dir.flags(), dir.des(), dir.expr());
|
|
dir.put(LF_CLIFO, _nordir, _sysdirop);
|
|
}
|
|
else if (v == "PcTcCm")
|
|
{
|
|
dir.get(LF_PCON, _lock, _nordir, _sysdirop);
|
|
file = dir.name();
|
|
file[0] = *newv == 'X' ? '%' : '$';
|
|
dir.set(file, dir.eod(), dir.flags(), dir.des(), dir.expr());
|
|
dir.put(LF_PCON, _nordir, _sysdirop);
|
|
|
|
dir.get(LF_CAUSALI, _lock, _nordir, _sysdirop);
|
|
file = dir.name();
|
|
file[0] = *newv == 'X' ? '%' : '$';
|
|
dir.set(file, dir.eod(), dir.flags(), dir.des(), dir.expr());
|
|
dir.put(LF_CAUSALI, _nordir, _sysdirop);
|
|
|
|
dir.get(LF_RCAUSALI, _lock, _nordir, _sysdirop);
|
|
file = dir.name();
|
|
file[0] = *newv == 'X' ? '%' : '$';
|
|
dir.set(file, dir.eod(), dir.flags(), dir.des(), dir.expr());
|
|
dir.put(LF_RCAUSALI, _nordir, _sysdirop);
|
|
}
|
|
return TRUE;
|
|
}
|
|
|
|
int cg5100 (int argc, char* argv[])
|
|
{
|
|
CG51_App appc;
|
|
appc.run(argc, argv, "Configurazione Ditta");
|
|
return 0;
|
|
}
|