Converting pre-1.0 code question

I'm experimenting with lcd menu code from:

http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1242443739

(The file http://nilsfeld.de/r/arduino/lib/LCDMenu2.rar)

It compiles with Arduino 22/23 but in the release version raises an error in Menu.h at line 24

boolean (*canEnter)(Menu&);//Function to be called when this menu is 'used'

The error message is 'expected identifier before '*' token'

Can't seem to figure out why, any ideas?

In menu.h try changing:

#include "WProgram.h"

to:

#include "Arduino.h"

(or whatever the exact file name is).

The declaration is a function pointer named canEnter.

try re declaring it like the code below, might help.

/*
Menu.h - Library for creating nested Menus with callback functions
Original Author: CWAL
License: Just leave this header, do anything else with it you want

*/
#ifndef Menu_h
#define Menu_h

//#include "WProgram.h"
//This is for arduino 0022,23 - 1.0 compatibility.
#if defined(ARDUINO) && ARDUINO >= 100
    #include <Arduino.h>
  #else
    #include <WProgram.h>
#endif

//Add these lines
class Menu;
typedef boolean ( *EnterFunc )( Menu& );

class Menu
{
private:
 Menu * parent;//Parent Menu, NULL if this is the top
 Menu * child;//First Child Menu, NULL if no children
 Menu * sibling;//Next Sibling Menu, NULL if this is the last sibling

 void setParent(Menu &p);//Sets the Menu's Parent to p
 void addSibling(Menu &s,Menu &p);//Adds a Sibling s with Parent p.  If the Menu already has a sibling, ask that sibling to add it
public:
 char *name;//Name of this Menu
 //boolean (*canEnter)(Menu&);//Function to be called when this menu is 'used'
 EnterFunc canEnter;

 Menu(char *n);//Constructs the Menu with a name and a NULL use function (be careful calling it)
 Menu(char *n, EnterFunc c );//Constructs the Menu with a specified use function
 void addChild(Menu &c);//Adds the child c to the Menu.  If the menu already has a child, ask the child to add it as a sibling
 Menu * getChild(int which);//Returns a pointer to the which'th child of this Menu
 Menu * getSibling(int howfar);//Returns a pointer to the sibling howfar siblings away from this Menu
 Menu * getParent();//Returns this Menu's parent Menu.  If no parent, returns itself
};

#endif //Menu_h

Yes that was the problem, thanks!