Fix callback order issue, memory leak issue in GenItem,GenItemClass
[platform/core/csapi/tizenfx.git] / src / ElmSharp / ElmSharp / GenItem.cs
1 using System;
2
3 namespace ElmSharp
4 {
5     public abstract class GenItem : ItemObject
6     {
7         internal GenItem(object data, GenItemClass itemClass) : base(IntPtr.Zero)
8         {
9             Data = data;
10             ItemClass = itemClass;
11         }
12
13         public GenItemClass ItemClass { get; private set; }
14         public object Data { get; private set; }
15         public abstract bool IsSelected { get; set; }
16         public abstract void Update();
17         protected override void OnInvalidate()
18         {
19             ItemClass?.SendItemDeleted(Data);
20             Data = null;
21             ItemClass = null;
22         }
23     }
24 }