Gered
c5cdddbeaa
current versions of all of my basic framework sources, build configurations/scripts, and supporting assets
67 lines
1.5 KiB
C++
67 lines
1.5 KiB
C++
/*
|
|
GWEN
|
|
Copyright (c) 2012 Facepunch Studios
|
|
See license in Gwen.h
|
|
*/
|
|
|
|
#pragma once
|
|
#ifndef GWEN_CONTROLS_PAGECONTROL_H
|
|
#define GWEN_CONTROLS_PAGECONTROL_H
|
|
|
|
#include "gwen_base.h"
|
|
#include "gwen_button.h"
|
|
|
|
namespace Gwen
|
|
{
|
|
namespace Controls
|
|
{
|
|
class GWEN_EXPORT PageControl : public Base
|
|
{
|
|
static const unsigned int MaxPages = 64;
|
|
|
|
GWEN_CONTROL( PageControl, Base );
|
|
|
|
virtual void SetPageCount( unsigned int i );
|
|
virtual unsigned int GetPageCount(){ return m_iPages; }
|
|
|
|
virtual void ShowPage( unsigned int i );
|
|
virtual unsigned int GetPageNumber(){ return m_iCurrentPage; }
|
|
virtual Controls::Base* GetPage( unsigned int i );
|
|
virtual Controls::Base* GetCurrentPage();
|
|
|
|
virtual void NextPage();
|
|
virtual void PreviousPage();
|
|
virtual void Finish();
|
|
|
|
Controls::Button* NextButton(){ return m_Next; }
|
|
Controls::Button* BackButton(){ return m_Back; }
|
|
Controls::Button* FinishButton(){ return m_Finish; }
|
|
Controls::Label* Label(){ return m_Label; }
|
|
|
|
void SetUseFinishButton( bool b ){ m_bFinish = b; }
|
|
bool GetUseFinishButton(){ return m_bFinish; }
|
|
|
|
Event::Caller onPageChanged;
|
|
Event::Caller onFinish;
|
|
|
|
protected:
|
|
|
|
virtual void HideAll();
|
|
|
|
unsigned int m_iCurrentPage;
|
|
unsigned int m_iPages;
|
|
Controls::Base* m_pPages[MaxPages];
|
|
|
|
Controls::Button* m_Next;
|
|
Controls::Button* m_Back;
|
|
Controls::Button* m_Finish;
|
|
Controls::Label* m_Label;
|
|
|
|
bool m_bFinish;
|
|
|
|
};
|
|
|
|
}
|
|
}
|
|
#endif
|