* Icon inherits from Referenceable in Icon-O-Matic mode
* new listeners receive an AreaInvalidated notification git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18564 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -163,8 +163,12 @@ Icon::ObjectChanged(const Observable* object)
|
|||||||
bool
|
bool
|
||||||
Icon::AddListener(IconListener* listener)
|
Icon::AddListener(IconListener* listener)
|
||||||
{
|
{
|
||||||
if (listener && !fListeners.HasItem((void*)listener))
|
if (listener && !fListeners.HasItem((void*)listener)) {
|
||||||
return fListeners.AddItem((void*)listener);
|
if (fListeners.AddItem((void*)listener)) {
|
||||||
|
listener->AreaInvalidated(BRect(0, 0, 63, 63));
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -13,6 +13,7 @@
|
|||||||
#include <List.h>
|
#include <List.h>
|
||||||
|
|
||||||
# include "Observer.h"
|
# include "Observer.h"
|
||||||
|
# include "Referenceable.h"
|
||||||
#else
|
#else
|
||||||
# include <SupportDefs.h>
|
# include <SupportDefs.h>
|
||||||
#endif
|
#endif
|
||||||
@@ -34,7 +35,8 @@ class IconListener {
|
|||||||
|
|
||||||
#ifdef ICON_O_MATIC
|
#ifdef ICON_O_MATIC
|
||||||
class Icon : public ShapeContainerListener,
|
class Icon : public ShapeContainerListener,
|
||||||
public Observer {
|
public Observer,
|
||||||
|
public Referenceable {
|
||||||
#else
|
#else
|
||||||
class Icon {
|
class Icon {
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user