[DEV] remove owner interface to simplify
This commit is contained in:
parent
87c622ddc0
commit
5e861e002c
@ -71,12 +71,14 @@ void ewol::Object::operator delete[](void* _ptr, std::size_t _sz) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void ewol::Object::autoDestroy() {
|
void ewol::Object::autoDestroy() {
|
||||||
std::unique_lock<std::mutex> lock(m_lockRefCount);
|
{
|
||||||
if (m_isDestroyed == true) {
|
std::unique_lock<std::mutex> lock(m_lockRefCount);
|
||||||
EWOL_WARNING("Request remove of a removed object");
|
if (m_isDestroyed == true) {
|
||||||
return;
|
EWOL_WARNING("Request remove of a removed object");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
m_isDestroyed = true;
|
||||||
}
|
}
|
||||||
m_isDestroyed = true;
|
|
||||||
getObjectManager().autoRemove(this);
|
getObjectManager().autoRemove(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -17,7 +17,7 @@ namespace ewol {
|
|||||||
namespace resource {
|
namespace resource {
|
||||||
class Manager {
|
class Manager {
|
||||||
private:
|
private:
|
||||||
std::vector<ewol::object::Owner<ewol::Resource>> m_resourceList;
|
std::vector<ewol::object::Shared<ewol::Resource>> m_resourceList;
|
||||||
std::vector<ewol::object::Shared<ewol::Resource>> m_resourceListToUpdate;
|
std::vector<ewol::object::Shared<ewol::Resource>> m_resourceListToUpdate;
|
||||||
bool m_contextHasBeenRemoved;
|
bool m_contextHasBeenRemoved;
|
||||||
public:
|
public:
|
||||||
|
@ -21,7 +21,7 @@ namespace ewol {
|
|||||||
*/
|
*/
|
||||||
class Container : public ewol::Widget {
|
class Container : public ewol::Widget {
|
||||||
protected:
|
protected:
|
||||||
ewol::object::Owner<ewol::Widget> m_subWidget;
|
ewol::object::Shared<ewol::Widget> m_subWidget;
|
||||||
public:
|
public:
|
||||||
/**
|
/**
|
||||||
* @brief Constructor
|
* @brief Constructor
|
||||||
|
@ -22,7 +22,7 @@ namespace ewol {
|
|||||||
*/
|
*/
|
||||||
class Container2 : public ewol::Widget {
|
class Container2 : public ewol::Widget {
|
||||||
protected:
|
protected:
|
||||||
ewol::object::Owner<ewol::Widget> m_subWidget[2]; //!< 2 subwidget possible
|
ewol::object::Shared<ewol::Widget> m_subWidget[2]; //!< 2 subwidget possible
|
||||||
int32_t m_idWidgetDisplayed; //!< current widget displayed
|
int32_t m_idWidgetDisplayed; //!< current widget displayed
|
||||||
public:
|
public:
|
||||||
/**
|
/**
|
||||||
|
@ -21,7 +21,7 @@ namespace ewol {
|
|||||||
*/
|
*/
|
||||||
class ContainerN : public ewol::Widget {
|
class ContainerN : public ewol::Widget {
|
||||||
protected:
|
protected:
|
||||||
std::vector<ewol::object::Owner<ewol::Widget>> m_subWidget;
|
std::vector<ewol::object::Shared<ewol::Widget>> m_subWidget;
|
||||||
public:
|
public:
|
||||||
/**
|
/**
|
||||||
* @brief Constructor
|
* @brief Constructor
|
||||||
|
@ -26,7 +26,7 @@ namespace ewol {
|
|||||||
private:
|
private:
|
||||||
class GirdProperties {
|
class GirdProperties {
|
||||||
public:
|
public:
|
||||||
ewol::object::Owner<ewol::Widget> widget;
|
ewol::object::Shared<ewol::Widget> widget;
|
||||||
int32_t row;
|
int32_t row;
|
||||||
int32_t col;
|
int32_t col;
|
||||||
};
|
};
|
||||||
|
@ -56,8 +56,8 @@ namespace ewol {
|
|||||||
m_hasDecoration = true;
|
m_hasDecoration = true;
|
||||||
}
|
}
|
||||||
private:
|
private:
|
||||||
ewol::object::Owner<ewol::Widget> m_subWidget;
|
ewol::object::Shared<ewol::Widget> m_subWidget;
|
||||||
std::vector<ewol::object::Owner<ewol::Widget>> m_popUpWidgetList;
|
std::vector<ewol::object::Shared<ewol::Widget>> m_popUpWidgetList;
|
||||||
public:
|
public:
|
||||||
void setSubWidget(ewol::object::Shared<ewol::Widget> _widget);
|
void setSubWidget(ewol::object::Shared<ewol::Widget> _widget);
|
||||||
void popUpWidgetPush(ewol::object::Shared<ewol::Widget> _widget);
|
void popUpWidgetPush(ewol::object::Shared<ewol::Widget> _widget);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user