123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200 |
- #ifndef __UICHECKBOX_H__
- #define __UICHECKBOX_H__
- #include "ui/UIAbstractCheckButton.h"
- #include "ui/GUIExport.h"
- NS_CC_BEGIN
- namespace ui {
- typedef enum
- {
- CHECKBOX_STATE_EVENT_SELECTED,
- CHECKBOX_STATE_EVENT_UNSELECTED
- } CheckBoxEventType;
- typedef void (Ref::*SEL_SelectedStateEvent)(Ref*,CheckBoxEventType);
- #define checkboxselectedeventselector(_SELECTOR) (SEL_SelectedStateEvent)(&_SELECTOR)
- class CC_GUI_DLL CheckBox : public AbstractCheckButton
- {
-
- DECLARE_CLASS_GUI_INFO
-
- public:
-
- enum class EventType
- {
- SELECTED,
- UNSELECTED
- };
-
-
- typedef std::function<void(Ref*,CheckBox::EventType)> ccCheckBoxCallback;
-
-
- CheckBox();
-
- virtual ~CheckBox();
-
- static CheckBox* create();
-
-
- static CheckBox* create(const std::string& backGround,
- const std::string& backGroundSelected,
- const std::string& cross,
- const std::string& backGroundDisabled,
- const std::string& frontCrossDisabled,
- TextureResType texType = TextureResType::LOCAL);
-
-
- static CheckBox* create(const std::string& backGround,
- const std::string& cross,
- TextureResType texType = TextureResType::LOCAL);
-
- CC_DEPRECATED_ATTRIBUTE void setSelectedState(bool selected){this->setSelected(selected);}
-
- CC_DEPRECATED_ATTRIBUTE bool getSelectedState()const{return this->isSelected();}
-
-
- CC_DEPRECATED_ATTRIBUTE void addEventListenerCheckBox(Ref* target,SEL_SelectedStateEvent selector);
-
- void addEventListener(const ccCheckBoxCallback& callback);
-
- virtual std::string getDescription() const override;
-
- virtual void onTouchEnded(Touch *touch, Event *unusedEvent) override;
- protected:
-
- virtual void dispatchSelectChangedEvent(bool selected) override;
-
- virtual Widget* createCloneInstance() override;
- virtual void copySpecialProperties(Widget* model) override;
-
- protected:
-
- Ref* _checkBoxEventListener;
-
- #if defined(__GNUC__) && ((__GNUC__ >= 4) || ((__GNUC__ == 3) && (__GNUC_MINOR__ >= 1)))
- #pragma GCC diagnostic ignored "-Wdeprecated-declarations"
- #elif _MSC_VER >= 1400
- #pragma warning (push)
- #pragma warning (disable: 4996)
- #endif
- SEL_SelectedStateEvent _checkBoxEventSelector;
- #if defined(__GNUC__) && ((__GNUC__ >= 4) || ((__GNUC__ == 3) && (__GNUC_MINOR__ >= 1)))
- #pragma GCC diagnostic warning "-Wdeprecated-declarations"
- #elif _MSC_VER >= 1400
- #pragma warning (pop)
- #endif
-
- ccCheckBoxCallback _checkBoxEventCallback;
- };
- }
- NS_CC_END
- #endif
|