campo-sirio/include/automask.h

36 lines
1.0 KiB
C
Raw Normal View History

#ifndef __AUTOMASK_H
#define __AUTOMASK_H
#ifndef __MSKSHEET_H
#include <msksheet.h>
#endif
enum TField_event { fe_null, fe_init, fe_modify, fe_button, fe_close,
se_enter, se_leave,
se_query_modify, se_notify_modify,
se_query_add, se_notify_add,
se_query_del, se_notify_del };
class TAutomask : public TMask
{
private:
static bool universal_handler(TMask_field& f, KEY k);
static bool insheet_universal_handler(TMask_field& f, KEY k);
static bool universal_notifier(TSheet_field& f, int row, KEY k);
protected:
void set_handlers();
TField_event key2event(TMask_field& f, KEY key) const;
public:
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly) pure;
bool error_box(const char* fmt, ...); // No more f.error_box
TAutomask() { }
TAutomask(const char* name, int num = 0);
TAutomask(const char* title, int pages, int cols, int rows, int xpos = -1, int ypos = -1);
virtual ~TAutomask() { }
};
#endif