[DEV] update new interface of esignal

This commit is contained in:
Edouard DUPIN 2016-02-22 22:33:51 +01:00
parent b22014b3f6
commit b6fa9c95e0
4 changed files with 21 additions and 14 deletions

View File

@ -145,13 +145,13 @@ bool ewol::widget::Select::loadXML(const std::shared_ptr<const exml::Element>& _
void ewol::widget::Select::updateGui() {
ewol::widget::SpinBase::updateGui();
if (m_widgetEntry != nullptr) {
m_widgetEntry->signalUnBindAll(shared_from_this());
if ( m_widgetEntry != nullptr
&& m_connectionEntry.isConnected() == false) {
}
if (m_widgetButtonUp != nullptr) {
m_widgetButtonUp->signalUnBindAll(shared_from_this());
m_widgetButtonUp->signalPressed.connect(shared_from_this(), &ewol::widget::Select::onCallbackOpenMenu);
if ( m_widgetButtonUp != nullptr
&& m_connectionButton.isConnected() == false) {
m_connectionButton = m_widgetButtonUp->signalPressed.connect(this, &ewol::widget::Select::onCallbackOpenMenu);
}
}

View File

@ -57,6 +57,9 @@ namespace ewol {
protected:
void onCallbackOpenMenu();
void onCallbackLabelPressed(int32_t _value);
protected:
esignal::Connection m_connectionEntry;
esignal::Connection m_connectionButton;
};
};
};

View File

@ -61,20 +61,20 @@ void ewol::widget::Spin::onPropertyChangeValue(const eproperty::Ref& _paramPoint
void ewol::widget::Spin::updateGui() {
EWOL_WARNING("updateGui [START]");
ewol::widget::SpinBase::updateGui();
if (m_widgetEntry != nullptr) {
m_widgetEntry->signalUnBindAll(shared_from_this());
if ( m_widgetEntry != nullptr
&& m_connectionEntry.isConnected() == false) {
}
if (m_widgetButtonUp != nullptr) {
m_widgetButtonUp->signalUnBindAll(shared_from_this());
m_widgetButtonUp->signalPressed.connect(shared_from_this(), &ewol::widget::Spin::onCallbackUp);
if ( m_widgetButtonUp != nullptr
&& m_connectionButtonUp.isConnected() == false) {
m_connectionButtonUp = m_widgetButtonUp->signalPressed.connect(this, &ewol::widget::Spin::onCallbackUp);
}
if (m_widgetButtonDown != nullptr) {
m_widgetButtonDown->signalUnBindAll(shared_from_this());
m_widgetButtonDown->signalPressed.connect(shared_from_this(), &ewol::widget::Spin::onCallbackDown);
if ( m_widgetButtonDown != nullptr
&& m_connectionButtonDown.isConnected() == false) {
m_connectionButtonDown = m_widgetButtonDown->signalPressed.connect(this, &ewol::widget::Spin::onCallbackDown);
}
EWOL_WARNING("updateGui [STOP]");
}
void ewol::widget::Spin::checkValue(int64_t _value) {

View File

@ -50,6 +50,10 @@ namespace ewol {
protected:
void onCallbackUp();
void onCallbackDown();
protected:
esignal::Connection m_connectionEntry;
esignal::Connection m_connectionButtonUp;
esignal::Connection m_connectionButtonDown;
};
};
};