/*
 * See the README file for copyright information and how to reach the author.
 *
 */

#ifndef __PVRUSB2_SETUPMENU_H
#define __PVRUSB2_SETUPMENU_H

#include "setup.h"

#include "common.h"

class cPvrUsb2Plugin;

class cRMSetupMenu:
    public cMenuSetupPage
{
    private:
        cRMSetup newSetup;
        cMenuEditItem* vbrItem;

    protected:
        virtual void Store();

        virtual int NumIndices(eSetupItem _item);
        virtual const char* const* Values(eSetupItem _item);
        virtual const char* ItemTitle(eSetupItem _item);

        virtual cMenuEditItem* CreateMenuItem(eSetupItem _item);
        virtual cMenuEditStraItem* NewEditStraItem(eSetupItem _item,
                int* _value);
        virtual cMenuEditBoolItem* NewEditBoolItem(eSetupItem _item,
                int* _value);

        virtual void DisplayMenu();

        virtual void Clear();
    public:
        cRMSetupMenu();
        virtual ~cRMSetupMenu();

        virtual eOSState ProcessKey(eKeys _key);
};

#endif // __PVRUSB2_SETUPMENU_H
