2 * Copyright (C) 2007 by Mark Pustjens <pustjens@dds.nl>
3 * Copyright (C) 2010-2012 by CenterIM developers
5 * This file is part of CenterIM.
7 * CenterIM is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
12 * CenterIM is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with this program. If not, see <http://www.gnu.org/licenses/>.
38 * This class implements a simple button behaviour.
40 * The button does not keep states like pressed or not and it can call back
41 * one (or more) functions when pressed.
53 Button(int w
, int h
, const char *text_
= NULL
, int flags_
= 0,
54 bool masked_
= false);
55 explicit Button(const char *text_
= NULL
, int flags_
= 0,
56 bool masked_
= false);
57 Button(int w
, int h
, int flags_
= 0, const char *text_
= NULL
,
58 const char *value_
= NULL
, const char *unit_
= NULL
,
59 const char *right_
= NULL
, bool masked_
= false);
60 Button(int flags_
, const char *text_
= NULL
, const char *value_
= NULL
,
61 const char *unit_
= NULL
, const char *right_
= NULL
,
62 bool masked_
= false);
68 virtual void SetFlags(int new_flags
);
69 virtual int GetFlags() const { return flags
; }
72 * Sets a new text and redraws itself.
74 virtual void SetText(const char *new_text
);
76 * Returns previously set text.
78 virtual const char *GetText() const { return text
; }
80 virtual void SetValue(const char *new_value
);
81 virtual void SetValue(int new_value
);
82 virtual const char *GetValue() const { return value
; }
84 virtual void SetUnit(const char *new_unit
);
85 virtual const char *GetUnit() const { return unit
; }
87 virtual void SetRight(const char *new_right
);
88 virtual const char *GetRight() const { return right
; }
90 virtual void SetMasked(bool masked_
);
91 virtual bool GetMasked() const { return masked
; }
94 * Emited signal when the button is pressed/activated.
96 sigc::signal
<void, Button
&> signal_activate
;
112 Button(const Button
&);
113 Button
& operator=(const Button
&);
115 void ActionActivate();
117 void DeclareBindables();
120 } // namespace CppConsUI
122 #endif // __BUTTON_H__
124 /* vim: set tabstop=2 shiftwidth=2 textwidth=78 expandtab : */