add initial examples, replacing the 'Demos/Demos3'. Will make it work cross-platform, OpenGL3/OpenGL2 and add more examples to it.

This commit is contained in:
erwincoumans
2015-04-16 09:55:32 -07:00
parent d9feaf2d2a
commit a1bf9c5556
425 changed files with 255913 additions and 0 deletions

View File

@@ -0,0 +1,54 @@
/*
GWEN
Copyright (c) 2010 Facepunch Studios
See license in Gwen.h
*/
#pragma once
#ifndef GWEN_CONTROLS_TABBUTTON_H
#define GWEN_CONTROLS_TABBUTTON_H
#include "Gwen/Controls/Base.h"
#include "Gwen/Controls/Button.h"
namespace Gwen
{
namespace Controls
{
class TabControl;
class GWEN_EXPORT TabButton : public Button
{
public:
GWEN_CONTROL( TabButton, Button );
virtual void Render( Skin::Base* skin );
void SetPage( Base* page ){ m_Page = page; }
Base* GetPage(){ return m_Page; }
void SetTabControl( TabControl* ctrl );
TabControl* GetTabControl(){ return m_Control; }
bool IsActive() { return m_Page && m_Page->Visible(); }
virtual bool DragAndDrop_ShouldStartDrag();
virtual void DragAndDrop_StartDragging( Gwen::DragAndDrop::Package* /*pPackage*/, int /*x*/, int /*y*/ ){ SetHidden( true ); }
virtual void DragAndDrop_EndDragging( bool /*bSuccess*/, int /*x*/, int /*y*/ ){ SetHidden( false ); }
virtual bool OnKeyLeft( bool bDown );
virtual bool OnKeyRight( bool bDown );
virtual bool OnKeyUp( bool bDown );
virtual bool OnKeyDown( bool bDown );
private:
Base* m_Page;
TabControl* m_Control;
};
}
}
#endif