Crazy Eddie's GUI System 0.8.7
Loading...
Searching...
No Matches
widgets/Titlebar.h
1/***********************************************************************
2 created: 25/4/2004
3 author: Paul D Turner
4
5 purpose: Interface for a Titlebar Widget
6*************************************************************************/
7/***************************************************************************
8 * Copyright (C) 2004 - 2006 Paul D Turner & The CEGUI Development Team
9 *
10 * Permission is hereby granted, free of charge, to any person obtaining
11 * a copy of this software and associated documentation files (the
12 * "Software"), to deal in the Software without restriction, including
13 * without limitation the rights to use, copy, modify, merge, publish,
14 * distribute, sublicense, and/or sell copies of the Software, and to
15 * permit persons to whom the Software is furnished to do so, subject to
16 * the following conditions:
17 *
18 * The above copyright notice and this permission notice shall be
19 * included in all copies or substantial portions of the Software.
20 *
21 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
22 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
23 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
24 * IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
25 * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
26 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
27 * OTHER DEALINGS IN THE SOFTWARE.
28 ***************************************************************************/
29#ifndef _CEGUITitlebar_h_
30#define _CEGUITitlebar_h_
31
32#include "../Window.h"
33
34
35#if defined(_MSC_VER)
36# pragma warning(push)
37# pragma warning(disable : 4251)
38#endif
39
40
41// Start of CEGUI namespace section
42namespace CEGUI
43{
44
50class CEGUIEXPORT Titlebar : public Window
51{
52public:
53 static const String EventNamespace;
54 static const String WidgetTypeName;
55
63 bool isDraggingEnabled(void) const;
64
65
76 void setDraggingEnabled(bool setting);
77
82 bool isDragged() const;
83
88 const Vector2f& getDragPoint() const;
89
90 /*************************************************************************
91 Construction / Destruction
92 *************************************************************************/
97 Titlebar(const String& type, const String& name);
98
99
104 virtual ~Titlebar(void);
105
106
107protected:
108 /*************************************************************************
109 Overridden event handler functions
110 *************************************************************************/
111 virtual void onMouseMove(MouseEventArgs& e);
117
118
119 /*************************************************************************
120 New event handlers for title bar
121 *************************************************************************/
130
131 /*************************************************************************
132 Implementation Data
133 *************************************************************************/
137
139
140private:
141 /*************************************************************************
142 Private methods
143 *************************************************************************/
144 void addTitlebarProperties(void);
145};
146
147} // End of CEGUI namespace section
148
149#if defined(_MSC_VER)
150# pragma warning(pop)
151#endif
152
153#endif // end of guard _CEGUITitlebar_h_
EventArgs based class that is used for objects passed to input event handlers concerning mouse input.
Definition InputEvent.h:281
String class used within the GUI system.
Definition String.h:64
Class representing the title bar for Frame Windows.
Definition widgets/Titlebar.h:51
virtual void onCaptureLost(WindowEventArgs &e)
Handler called when this window loses capture of mouse inputs.
const Vector2f & getDragPoint() const
Gets the point at which the title bar widget is/was being dragged.
virtual void onFontChanged(WindowEventArgs &e)
Handler called when the window's font is changed.
virtual void onMouseButtonUp(MouseEventArgs &e)
Handler called when a mouse button has been released within this window's area.
virtual void onDraggingModeChanged(WindowEventArgs &)
Event handler called when the 'draggable' state for the title bar is changed.
Definition widgets/Titlebar.h:129
bool isDragged() const
Checks whether the title bar widget is being dragged at the moment.
virtual void onMouseDoubleClicked(MouseEventArgs &e)
Handler called when a mouse button has been double-clicked within this window's area.
bool isDraggingEnabled(void) const
Return whether this title bar will respond to dragging.
virtual void onMouseButtonDown(MouseEventArgs &e)
Handler called when a mouse button has been depressed within this window's area.
virtual ~Titlebar(void)
Destructor for Titlebar base class.
Titlebar(const String &type, const String &name)
Constructor for Titlebar base class.
bool d_dragEnabled
true when dragging for the widget is enabled.
Definition widgets/Titlebar.h:136
virtual void onMouseMove(MouseEventArgs &e)
Handler called when the mouse cursor has been moved within this window's area.
Vector2f d_dragPoint
Point at which we are being dragged.
Definition widgets/Titlebar.h:135
bool d_dragging
set to true when the window is being dragged.
Definition widgets/Titlebar.h:134
static const String WidgetTypeName
Window factory name.
Definition widgets/Titlebar.h:54
void setDraggingEnabled(bool setting)
Set whether this title bar widget will respond to dragging.
Rectf d_oldCursorArea
Used to backup cursor restraint area.
Definition widgets/Titlebar.h:138
static const String EventNamespace
Namespace for global events.
Definition widgets/Titlebar.h:53
EventArgs based class that is used for objects passed to handlers triggered for events concerning som...
Definition InputEvent.h:252
An abstract base class providing common functionality and specifying the required interface for deriv...
Definition Window.h:151
Main namespace for Crazy Eddie's GUI Library.
Definition arch_overview.dox:1