mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-02-04 04:58:00 +00:00
AIX requires that the class definition be defined fully in the header (or
at least before the header is fully processed). So with Chris Waterson's permission I moved the definition from the CPP to the header.
This commit is contained in:
parent
da1d392ac2
commit
d6ca496860
@ -63,59 +63,6 @@ static NS_DEFINE_IID(kIDOMEventReceiverIID, NS_IDOMEVENTRECEIVER_IID);
|
||||
#include "nsISupportsArray.h"
|
||||
|
||||
|
||||
class nsToolboxFrame::DragListenerDelegate : public nsIDOMDragListener
|
||||
{
|
||||
protected:
|
||||
nsToolboxFrame* mFrame;
|
||||
|
||||
public:
|
||||
// nsISupports interface
|
||||
NS_DECL_ISUPPORTS
|
||||
|
||||
// nsIDOMEventListener interface
|
||||
virtual nsresult HandleEvent(nsIDOMEvent* aEvent)
|
||||
{
|
||||
return mFrame ? mFrame->HandleEvent(aEvent) : NS_OK;
|
||||
}
|
||||
|
||||
virtual nsresult DragGesture(nsIDOMEvent* aEvent)
|
||||
{
|
||||
return mFrame ? mFrame->DragGesture(aEvent) : NS_OK;
|
||||
}
|
||||
|
||||
// nsIDOMDragListener interface
|
||||
virtual nsresult DragEnter(nsIDOMEvent* aMouseEvent)
|
||||
{
|
||||
return mFrame ? mFrame->DragEnter(aMouseEvent) : NS_OK;
|
||||
}
|
||||
|
||||
virtual nsresult DragOver(nsIDOMEvent* aMouseEvent)
|
||||
{
|
||||
return mFrame ? mFrame->DragOver(aMouseEvent) : NS_OK;
|
||||
}
|
||||
|
||||
virtual nsresult DragExit(nsIDOMEvent* aMouseEvent)
|
||||
{
|
||||
return mFrame ? mFrame->DragExit(aMouseEvent) : NS_OK;
|
||||
}
|
||||
|
||||
virtual nsresult DragDrop(nsIDOMEvent* aMouseEvent)
|
||||
{
|
||||
return mFrame ? mFrame->DragDrop(aMouseEvent) : NS_OK;
|
||||
}
|
||||
|
||||
// Implementation methods
|
||||
DragListenerDelegate(nsToolboxFrame* aFrame) : mFrame(aFrame)
|
||||
{
|
||||
NS_INIT_REFCNT();
|
||||
}
|
||||
|
||||
virtual ~DragListenerDelegate() {}
|
||||
|
||||
void NotifyFrameDestroyed() { mFrame = nsnull; }
|
||||
};
|
||||
|
||||
|
||||
NS_IMPL_ADDREF(nsToolboxFrame::DragListenerDelegate);
|
||||
NS_IMPL_RELEASE(nsToolboxFrame::DragListenerDelegate);
|
||||
|
||||
|
@ -152,7 +152,57 @@ protected:
|
||||
const nsCOMPtr<nsIAtom> kCollapsedAtom ;
|
||||
const nsCOMPtr<nsIAtom> kHiddenAtom ;
|
||||
|
||||
class DragListenerDelegate;
|
||||
class DragListenerDelegate : public nsIDOMDragListener
|
||||
{
|
||||
protected:
|
||||
nsToolboxFrame* mFrame;
|
||||
|
||||
public:
|
||||
// nsISupports interface
|
||||
NS_DECL_ISUPPORTS
|
||||
|
||||
// nsIDOMEventListener interface
|
||||
virtual nsresult HandleEvent(nsIDOMEvent* aEvent)
|
||||
{
|
||||
return mFrame ? mFrame->HandleEvent(aEvent) : NS_OK;
|
||||
}
|
||||
|
||||
virtual nsresult DragGesture(nsIDOMEvent* aEvent)
|
||||
{
|
||||
return mFrame ? mFrame->DragGesture(aEvent) : NS_OK;
|
||||
}
|
||||
|
||||
// nsIDOMDragListener interface
|
||||
virtual nsresult DragEnter(nsIDOMEvent* aMouseEvent)
|
||||
{
|
||||
return mFrame ? mFrame->DragEnter(aMouseEvent) : NS_OK;
|
||||
}
|
||||
|
||||
virtual nsresult DragOver(nsIDOMEvent* aMouseEvent)
|
||||
{
|
||||
return mFrame ? mFrame->DragOver(aMouseEvent) : NS_OK;
|
||||
}
|
||||
|
||||
virtual nsresult DragExit(nsIDOMEvent* aMouseEvent)
|
||||
{
|
||||
return mFrame ? mFrame->DragExit(aMouseEvent) : NS_OK;
|
||||
}
|
||||
|
||||
virtual nsresult DragDrop(nsIDOMEvent* aMouseEvent)
|
||||
{
|
||||
return mFrame ? mFrame->DragDrop(aMouseEvent) : NS_OK;
|
||||
}
|
||||
|
||||
// Implementation methods
|
||||
DragListenerDelegate(nsToolboxFrame* aFrame) : mFrame(aFrame)
|
||||
{
|
||||
NS_INIT_REFCNT();
|
||||
}
|
||||
|
||||
virtual ~DragListenerDelegate() {}
|
||||
|
||||
void NotifyFrameDestroyed() { mFrame = nsnull; }
|
||||
};
|
||||
DragListenerDelegate* mDragListenerDelegate;
|
||||
|
||||
// pass-by-value not allowed for a toolbox because it corresponds 1-to-1
|
||||
|
Loading…
x
Reference in New Issue
Block a user