/* * Copyright 2017 Samsung Electronics Co., Ltd * * Licensed under the Flora License, Version 1.1 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://floralicense.org/license/ * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #include "Ux/MultiSelector.h" using namespace Ux; MultiSelector::MultiSelector() : m_State(SelectedNone), m_Strings{ nullptr } { } void MultiSelector::setChangeCallback(ChangeCallback callback) { m_OnChanged = std::move(callback); } void MultiSelector::setState(State state) { m_State = state; onStateChanged(m_State); } void MultiSelector::setStrings(const Strings &strings) { m_Strings = strings; } MultiSelector::State MultiSelector::getState() const { return m_State; } const MultiSelector::Strings &MultiSelector::getStrings() const { return m_Strings; } bool MultiSelector::notifyChanged(State state) { return !m_OnChanged || m_OnChanged(state); }