campo-sirio/ba/ba1100.h

82 lines
1.8 KiB
C
Raw Normal View History

#ifndef __BA1100_H
#define __BA1100_H
#ifndef __SHEET_H
#include <sheet.h>
#endif
#ifndef __CONFIG_H
#include <config.h>
#endif
#include "ba1100a.h"
///////////////////////////////////////////////////////////
// TDir_sheet
///////////////////////////////////////////////////////////
class TDir_sheet : public TSheet
{
TTrec *_rec;
TDir *_dir;
FileDes _s_dir;
long _items;
protected: set_firm();
void page_build(long first, byte rows);
public:
TDir_sheet(const char* title,const char* columns="N.@5|Nome@20|EOD@7|EOX@7|Lung. |Descrizione@43|Formula@33|Flags@7",byte buttons=0xC);
~TDir_sheet();
TDir* dir() const { return _dir; }
TTrec* rec() const { return _rec; }
void set_items(long items) { _items = items; }
void add();
void rebuild() { _items = _dir->items();}
long items() const { return (_items);}
};
class TRec_sheet : public TObject
{
TTrec *_rec;
TTrec *_rec_old;
TDir *_dir;
bool _comfile;
TConfig *_descr;
static TMask *_mask;
TFilename _descfname;
TString16 _tab;
protected:
bool check_key_expr(int key, const char* key_expr);
static bool fld_notify(int r, KEY k);
static bool key_notify(int r, KEY k);
void save();
virtual long items() const { return _rec->fields(); }
public:
TRec_sheet(int logicnum, const char * tab);
~TRec_sheet();
TDir* dir() const { return _dir; }
TTrec* rec() const { return _rec; }
const char * descfname() const { return _descfname;}
const char * tab() const { return _tab; }
void edit();
};
class TEdit_file : public TObject
{
protected:
KEY edit_record(TRectype& rec, bool readonly = FALSE);
public:
bool browse(int num, const char* name);
TEdit_file() {}
};
#endif