//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "TUpDownOnClick.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
	: TForm(Owner)
{
}
//---------------------------------------------------------------------------
// BeginExample: TUpDownOnClick
// Method: Forms.TCustomForm.OnCreate
// Event: ComCtrls.TCustomUpDown.OnClick
// Method: ComCtrls.TPageControl.SelectNextPage

// Warning: SelectNextPage wraps going up but not going down?

// BeginCode
/*
This example requires a new TPageControl, as is, with no new pages
created at design time, and a TUpDown control, also from the Win95
page of the component palette.  The form OnCreate event handler
adds several new TabSheet controls to the Page Control.  The 
UpDown1Click event handler fires when the user clicks the up or
down button on the TUpDown control.  The SelectNextPage method of
the Page Control goes forward the comparison (Button = btNext)
evaluates as true.  If Button is not btNext, the previous Tab Page
is selected.
*/
void __fastcall TForm1::FormCreate(TObject *Sender)
{
const
  TColor colorPalette[12] = {
	clRed, clGreen, clYellow, clBlue, clWhite, clFuchsia,
	clTeal, clNavy, clMaroon, clLime, clOlive, clPurple};
  for (int i = 0; i < 10; i++)
  {
	TTabSheet *page = new TTabSheet(PageControl1);  // These tabsheets are cleaned up by their owner (PageControl1).
	page->PageControl = PageControl1;
	page->Caption = AnsiString("Page") + IntToStr(i);
	page->Brush->Color = colorPalette[i];
  }
}

void __fastcall TForm1::UpDown1Click(TObject *Sender, TUDBtnType Button)
{
  PageControl1->SelectNextPage(Button == btNext);
}
// EndCode
// EndExample: TUpDownOnClick
//---------------------------------------------------------------------------
