File: Checkbox.h

package info (click to toggle)
libtuxcap 1.4.0.dfsg2-1.1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 4,172 kB
  • ctags: 5,897
  • sloc: cpp: 43,203; ansic: 3,095; python: 774; objc: 242; makefile: 100; xml: 87
file content (47 lines) | stat: -rw-r--r-- 946 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#ifndef __CHECKBOX_H__
#define __CHECKBOX_H__

#include "Widget.h"

namespace Sexy
{

class CheckboxListener;
class Image;

class Checkbox : public Widget
{	
protected:
	CheckboxListener*		mListener;

public:
	int						mId;

	bool					mChecked;

	Image*					mUncheckedImage;
	Image*					mCheckedImage;

	Rect					mCheckedRect;
	Rect					mUncheckedRect;

	Color					mOutlineColor;	// These are only used if no image is specified
	Color					mBkgColor;
	Color					mCheckColor;

public:
	virtual void			SetChecked(bool checked, bool tellListener = true);
	virtual bool			IsChecked();

	virtual void			MouseDown(int x, int y, int theClickCount) { Widget::MouseDown(x, y, theClickCount); }
	virtual void			MouseDown(int x, int y, int theBtnNum, int theClickCount);
	virtual void			Draw(Graphics* g);

public:
	Checkbox(Image* theUncheckedImage, Image* theCheckedImage, int theId, CheckboxListener* theCheckboxListener);
};

}

#endif //__CHECKBOX_H__