diff --git a/include/files.cpp b/include/files.cpp index a4a7f2d4d..f974c449b 100755 --- a/include/files.cpp +++ b/include/files.cpp @@ -131,10 +131,29 @@ TDir::~TDir () } const char *TDir::name () const -{ +{ return _dir->SysName; } +const char *TDir::filename () const +{ + strcpy(_files_tmp_string, _dir->SysName); + strcat(_files_tmp_string, ".dbf"); + return _files_tmp_string; +} + +void TDir::set_name (const char * name) +{ + CHECK(name != NULL, "NULL Filename"); + CHECK(strlen(name) < 42, "Name too long"); + char * p = strchr(name, '.'); + CHECK(p == NULL, "Can't use extension"); + if (p) + p = '\0'; + strncpy(_dir->SysName, _files_tmp_string, 42); + _dir->SysName[41] = '\0'; +} + const char *TDir::des () const { return _dir->Des; diff --git a/include/files.h b/include/files.h index 3ad84a78e..3b614806a 100755 --- a/include/files.h +++ b/include/files.h @@ -94,6 +94,8 @@ public: // @cmember Azzera i parametri del file selezionato void zero(); + // @cmember Setta il nome del file + void set_name (const char * name); // @cmember Setta l'EOX del file void set_eox(const RecNoType eox); // @cmember Setta la lunghezza del file @@ -103,6 +105,8 @@ public: // @cmember Ritorna il nome del file selezionato const char* name() const; + // @cmember Ritorna il nome dei file dati selezionato + const char* filename() const; // @cmember Ritorna la descrizione del file selezionato const char* des() const; // @cmember Ritorna la descrizione della tabella