ClanLib
2.3.7
Main Page
Modules
Namespaces
Classes
Files
File List
File Members
Sources
API
GUI
Components
toolbar.h
Go to the documentation of this file.
1
/*
2
** ClanLib SDK
3
** Copyright (c) 1997-2011 The ClanLib Team
4
**
5
** This software is provided 'as-is', without any express or implied
6
** warranty. In no event will the authors be held liable for any damages
7
** arising from the use of this software.
8
**
9
** Permission is granted to anyone to use this software for any purpose,
10
** including commercial applications, and to alter it and redistribute it
11
** freely, subject to the following restrictions:
12
**
13
** 1. The origin of this software must not be misrepresented; you must not
14
** claim that you wrote the original software. If you use this software
15
** in a product, an acknowledgment in the product documentation would be
16
** appreciated but is not required.
17
** 2. Altered source versions must be plainly marked as such, and must not be
18
** misrepresented as being the original software.
19
** 3. This notice may not be removed or altered from any source distribution.
20
**
21
** Note: Some of the libraries ClanLib may link to may have additional
22
** requirements or restrictions.
23
**
24
** File Author(s):
25
**
26
** Magnus Norddahl
27
** Harry Storbacka
28
*/
29
32
33
#pragma once
34
35
#include "../api_gui.h"
36
#include "../gui_component.h"
37
#include "../../Core/Signals/callback_v0.h"
38
39
class
CL_Sprite
;
40
class
CL_ToolBarItem
;
41
class
CL_ToolBar_Impl;
42
46
class
CL_API_GUI
CL_ToolBar
:
public
CL_GUIComponent
47
{
50
51
public
:
52
56
CL_ToolBar
(
CL_GUIComponent
*parent);
57
58
virtual
~
CL_ToolBar
();
59
63
64
public
:
65
66
using
CL_GUIComponent::get_named_item
;
67
71
static
CL_ToolBar
*
get_named_item
(
CL_GUIComponent
*reference_component,
const
CL_StringRef
&
id
);
72
76
CL_Size
get_preferred_size
()
const
;
77
83
CL_ToolBarItem
get_item_by_id(
int
id
);
84
90
CL_ToolBarItem
get_item(
int
index);
91
97
int
get_item_index(
int
id
);
98
102
int
get_item_count()
const
;
103
107
108
public
:
109
118
CL_ToolBarItem
add_item(
const
CL_Sprite
&icon,
int
frame,
const
CL_StringRef
&text,
int
id
);
119
129
CL_ToolBarItem
insert_item(
const
CL_Sprite
&icon,
int
frame,
const
CL_StringRef
&text,
int
id
= -1,
int
index = -1);
130
136
CL_ToolBarItem
insert_separator(
int
index = -1);
137
141
void
delete_item(
int
index);
142
146
void
set_single_selection(
bool
value);
147
149
void
clear_selection();
150
154
155
public
:
156
CL_Callback_v1<CL_ToolBarItem>
&func_item_clicked();
157
158
CL_Callback_v1<CL_ToolBarItem>
&func_item_selected();
159
160
CL_Callback_v1<CL_ToolBarItem>
&func_item_unselected();
161
164
CL_Callback_v2<CL_Point, int>
&func_mouse_right_up();
165
169
170
private
:
171
CL_SharedPtr<CL_ToolBar_Impl> impl;
173
};
174
Generated on Fri Jun 14 2013 13:05:47 for ClanLib by
1.8.4