X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali%2Fpublic-api%2Fsignals%2Fsignal-slot-connections.cpp;h=b03e13358d89f316093fa4a1c249d2c5791facd7;hb=f24c14c80919972c2f41235f0ed5989d776b14a1;hp=f6bb8ff92a50f6d43da3b25a588e785506897146;hpb=5c66381841dd4dfd82c5a118d34104a00a2e0e1c;p=platform%2Fcore%2Fuifw%2Fdali-core.git diff --git a/dali/public-api/signals/signal-slot-connections.cpp b/dali/public-api/signals/signal-slot-connections.cpp index f6bb8ff..b03e133 100644 --- a/dali/public-api/signals/signal-slot-connections.cpp +++ b/dali/public-api/signals/signal-slot-connections.cpp @@ -1,38 +1,39 @@ -// -// Copyright (c) 2014 Samsung Electronics Co., Ltd. -// -// Licensed under the Flora License, Version 1.0 (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. -// +/* + * Copyright (c) 2020 Samsung Electronics Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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. + * + */ // CLASS HEADER #include +// EXTERNAL INCLUDES +#include + // INTERNAL INCLUDES #include namespace Dali { - -SlotConnection::SlotConnection( SlotObserver* slotObserver, CallbackBase* callback ) -: mSlotObserver( slotObserver ), - mCallback( callback ) +SlotConnection::SlotConnection(SlotObserver* slotObserver, CallbackBase* callback) +: mSlotObserver(slotObserver), + mCallback(callback) { } SlotConnection::~SlotConnection() { - // slot connections have ownership of the callback. - delete mCallback; } CallbackBase* SlotConnection::GetCallback() @@ -45,32 +46,36 @@ SlotObserver* SlotConnection::GetSlotObserver() return mSlotObserver; } -SignalConnection::SignalConnection( CallbackBase* callback ) -: mSignalObserver( NULL ), - mCallback( callback ) +SignalConnection::SignalConnection(CallbackBase* callback) +: mSignalObserver(nullptr), + mCallback(callback) { } -SignalConnection::SignalConnection( SignalObserver* signalObserver, CallbackBase* callback ) -: mSignalObserver( signalObserver ), - mCallback( callback ) +SignalConnection::SignalConnection(SignalObserver* signalObserver, CallbackBase* callback) +: mSignalObserver(signalObserver), + mCallback(callback) { } SignalConnection::~SignalConnection() { + // signal connections have ownership of the callback. + delete mCallback; } -void SignalConnection::Disconnect( SlotObserver* slotObserver ) +void SignalConnection::Disconnect(SlotObserver* slotObserver) { - if( mSignalObserver ) + if(mSignalObserver) { // tell the slot the signal wants to disconnect - mSignalObserver->SignalDisconnected( slotObserver, mCallback ); - mSignalObserver = NULL; + mSignalObserver->SignalDisconnected(slotObserver, mCallback); + mSignalObserver = nullptr; } - mCallback = NULL; + // we own the callback, SignalObserver is expected to delete the SlotConnection on Disconnected so its pointer to our mCallback is no longer used + delete mCallback; + mCallback = nullptr; } CallbackBase* SignalConnection::GetCallback()