@khalid
the difference should be less than 1k. probably around 4-500bytes. btw, did you commented the button support (As you use your own analog button management). That should save some space.
Frankly i would'nt work on an "old version" to fork a new branch...
@stretched59
the following code (from menwiz.h) does compile on my ide and allows you to call actBTE directly from your sketch. this changes will be in the next version.
class menwiz{
public:
menwiz();
void begin(void *,int, int);
void addSplash(char *,int);
void addUsrScreen(void (*f)(), unsigned long);
void addUsrNav(int (*f)(), int);
void setBehaviour(MW_FLAGS,boolean);
_menu* addMenu(int, _menu *, MW_LABEL);
void draw();
void drawUsrScreen(char *); //draw user screen(s)
int getErrorMessage(boolean); //if arg=true, err message is printed to the default Serial terminal, otherwise the function returns error code only
int freeRam();
#ifdef EEPROM_SUPPORT
void writeEeprom();
void readEeprom();
#endif
#ifdef BUTTON_SUPPORT
_nav* btx;
void navButtons(int,int,int,int,int,int);
void navButtons(int,int,int,int);
int scanNavButtons();
#endif
MW_FLAGS flags;
MW_LCD* lcd;
char* sbuf; //lcd screen buffer (+ 1 for each line)
_cback usrScreen; //callback
_cback usrNav;
byte idx_m;
_menu m[MAX_MENU];
_menu* cur_menu;
_menu* root;
void actBTE();
private:
byte row;
byte col;
byte cur_mode;
int last_button; //last pushed button code
unsigned long tm_push; //last pushed button time
unsigned long tm_start; //start time (set when begin method is invocated)
unsigned long tm_splash; //splash screen duration
unsigned long tm_usrScreen; //lap time before usrscreen
void apply2vars(void (*f)(_menu *));
int actNavButtons(int);
void drawMenu(_menu *);
void drawVar(_menu *);
void drawList(_menu *, int);
void actBTU();
void actBTD();
void actBTL();
void actBTR();
void actBTC();
protected:
};