ba1600?.* Continua l'epopea delle installazioni! git-svn-id: svn://10.65.10.50/trunk@5571 c028cbd2-c16b-5b4b-a496-9718f37d4682
70 lines
2.7 KiB
C++
Executable File
70 lines
2.7 KiB
C++
Executable File
#ifndef __BA1600_H
|
|
#define __BA1600_H
|
|
|
|
#ifndef __CONFIG_H
|
|
#include <config.h>
|
|
#endif
|
|
|
|
class TInstall_ini : public TConfig
|
|
{
|
|
public:
|
|
int build_list(const TString& m, TString_array& a,
|
|
const char* s = NULL, bool agg = FALSE);
|
|
int build_complete_list(const TString& m, TString_array& a,
|
|
const char* s = NULL, bool agg = FALSE);
|
|
|
|
void copy_paragraph(const char* module, const char* summary);
|
|
void copy_module_paragraphs(const char* module, const char* summary);
|
|
|
|
static const char* default_name() { return "install.ini"; }
|
|
|
|
TInstall_ini() : TConfig("install.ini", "Main") { }
|
|
TInstall_ini(const char* path) : TConfig(path, "Main") { }
|
|
virtual ~TInstall_ini() { }
|
|
};
|
|
|
|
// Mitica token string che sceglie da sola il separatore
|
|
class TAuto_token_string : public TToken_string
|
|
{
|
|
protected:
|
|
TAuto_token_string& create(const char* ts);
|
|
|
|
public:
|
|
TAuto_token_string& operator=(const char* ts) { return create(ts); }
|
|
TAuto_token_string& operator=(const TString& ts) { return create(ts); }
|
|
TAuto_token_string& operator=(const TToken_string& ts) { return create(ts); }
|
|
TAuto_token_string& operator=(const TAuto_token_string& ts) { return create(ts); }
|
|
TAuto_token_string() : TToken_string(50) { }
|
|
TAuto_token_string(const char* ts) { create(ts); }
|
|
virtual ~TAuto_token_string() { }
|
|
};
|
|
|
|
#define FOR_EACH_SHEET_ROW(__sheet, __r, __riga) \
|
|
TToken_string* __riga; \
|
|
for (int __r = 0; \
|
|
__r < __sheet.items() && (const char*)(__riga = &__sheet.row(__r)); \
|
|
__r++)
|
|
|
|
#define FOR_EACH_SHEET_ROW_BACK(__sheet, __r, __riga) \
|
|
TToken_string* __riga; \
|
|
for (int __r = __sheet.items()-1; \
|
|
__r >= 0 && (const char*)(__riga = &__sheet.row(__r)); \
|
|
__r--)
|
|
|
|
#define FOR_EACH_ARRAY_ROW_BACK(__arr, __r, __riga) \
|
|
TToken_string* __riga; \
|
|
for (int __r = __arr.last(); \
|
|
__r >= 0 && (const char*)(__riga = &__arr.row(__r)); \
|
|
__r = __arr.pred(__r))
|
|
|
|
#define FOR_EACH_ASSOC_STRING(__ass, __obj, __key, __str) \
|
|
const char *__key, *__str; __ass.restart; \
|
|
for (THash_object* __obj = __ass.get_hashobj(); \
|
|
__obj && (__str = (const TString&)__obj->obj(), __key = __obj->key()); \
|
|
__obj = __ass.get_hashobj())
|
|
|
|
#define FOR_EACH_TOKEN(__tok, __str) \
|
|
for (const char* __str = __tok.get(0); __str; __str = __tok.get())
|
|
|
|
#endif
|