14#include <AUI/Util/ADataBinding.h>
15#include "AAssSelector.h"
21 virtual bool selectableIsSelectedImpl() = 0;
26 _unique<IAssSubSelector> mWrapped;
30 Selected(T value): mWrapped(
new T(std::move(value))) {}
33 bool isPossiblyApplicable(
AView* view)
override {
34 return mWrapped->isPossiblyApplicable(view) &&
dynamic_cast<ISelectable*
>(view);
37 bool isStateApplicable(
AView* view)
override {
38 if (!mWrapped->isStateApplicable(view))
42 return c->selectableIsSelectedImpl();
48 IAssSubSelector::setupConnections(view, helper);
49 mWrapped->setupConnections(view, helper);
51 view->customCssPropertyChanged.clearAllConnectionsWith(helper.get());
52 AObject::connect(view->customCssPropertyChanged,
slot(helper)::onInvalidateStateAss);
Base class of all UI objects.
Definition: AView.h:77
An std::weak_ptr with AUI extensions.
Definition: SharedPtrTypes.h:177
Definition: AAssSelector.h:28
Definition: Selected.h:18
#define slot(v)
Passes some variable and type of the variable separated by comma. It's convenient to use with the con...
Definition: kAUI.h:90
Definition: Selected.h:24
Definition: class_of.h:57