Changed the arguments to PostSynchronousEvent. Added an EventLoop method.

git-svn-id: svn://10.0.0.236/trunk@30452 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
hyatt%netscape.com
1999-05-05 23:55:10 +00:00
parent 9b4cf49af1
commit dd5410721e
6 changed files with 46 additions and 14 deletions

View File

@@ -38,8 +38,10 @@ public:
static const nsIID& GetIID() { static nsIID iid = NS_IEVENTQUEUE_IID; return iid;}
NS_IMETHOD_(PRStatus) PostEvent(PLEvent* aEvent) = 0;
NS_IMETHOD PostSynchronousEvent(PLEvent* aEvent) = 0;
NS_IMETHOD ProcessPendingEvents() = 0;
NS_IMETHOD PostSynchronousEvent(PLEvent* aEvent, void** aResult) = 0;
NS_IMETHOD ProcessPendingEvents() = 0;
NS_IMETHOD EventLoop() = 0;
NS_IMETHOD EventAvailable(PRBool& aResult) = 0;
NS_IMETHOD GetEvent(PLEvent** aResult) = 0;

View File

@@ -60,10 +60,14 @@ nsEventQueueImpl::PostEvent(PLEvent* aEvent)
}
NS_IMETHODIMP
nsEventQueueImpl::PostSynchronousEvent(PLEvent* aEvent)
nsEventQueueImpl::PostSynchronousEvent(PLEvent* aEvent, void** aResult)
{
PL_PostSynchronousEvent(mEventQueue, aEvent);
return NS_OK;
void* result = PL_PostSynchronousEvent(mEventQueue, aEvent);
if (aResult)
{
*aResult = result;
}
return NS_OK;
}
NS_IMETHODIMP
@@ -73,6 +77,13 @@ nsEventQueueImpl::ProcessPendingEvents()
return NS_OK;
}
NS_IMETHODIMP
nsEventQueueImpl::EventLoop()
{
PL_EventLoop(mEventQueue);
return NS_OK;
}
NS_IMETHODIMP
nsEventQueueImpl::EventAvailable(PRBool& aResult)
{

View File

@@ -33,9 +33,12 @@ public:
// nsIEventQueue interface...
NS_IMETHOD_(PRStatus) PostEvent(PLEvent* aEvent);
NS_IMETHOD PostSynchronousEvent(PLEvent* aEvent);
NS_IMETHOD PostSynchronousEvent(PLEvent* aEvent, void** aResult);
NS_IMETHOD ProcessPendingEvents();
NS_IMETHOD EventAvailable(PRBool& aResult);
NS_IMETHOD EventLoop();
NS_IMETHOD EventAvailable(PRBool& aResult);
NS_IMETHOD GetEvent(PLEvent** aResult);
NS_IMETHOD_(PRInt32) GetEventQueueSelectFD();

View File

@@ -60,10 +60,14 @@ nsEventQueueImpl::PostEvent(PLEvent* aEvent)
}
NS_IMETHODIMP
nsEventQueueImpl::PostSynchronousEvent(PLEvent* aEvent)
nsEventQueueImpl::PostSynchronousEvent(PLEvent* aEvent, void** aResult)
{
PL_PostSynchronousEvent(mEventQueue, aEvent);
return NS_OK;
void* result = PL_PostSynchronousEvent(mEventQueue, aEvent);
if (aResult)
{
*aResult = result;
}
return NS_OK;
}
NS_IMETHODIMP
@@ -73,6 +77,13 @@ nsEventQueueImpl::ProcessPendingEvents()
return NS_OK;
}
NS_IMETHODIMP
nsEventQueueImpl::EventLoop()
{
PL_EventLoop(mEventQueue);
return NS_OK;
}
NS_IMETHODIMP
nsEventQueueImpl::EventAvailable(PRBool& aResult)
{

View File

@@ -33,9 +33,12 @@ public:
// nsIEventQueue interface...
NS_IMETHOD_(PRStatus) PostEvent(PLEvent* aEvent);
NS_IMETHOD PostSynchronousEvent(PLEvent* aEvent);
NS_IMETHOD PostSynchronousEvent(PLEvent* aEvent, void** aResult);
NS_IMETHOD ProcessPendingEvents();
NS_IMETHOD EventAvailable(PRBool& aResult);
NS_IMETHOD EventLoop();
NS_IMETHOD EventAvailable(PRBool& aResult);
NS_IMETHOD GetEvent(PLEvent** aResult);
NS_IMETHOD_(PRInt32) GetEventQueueSelectFD();

View File

@@ -38,8 +38,10 @@ public:
static const nsIID& GetIID() { static nsIID iid = NS_IEVENTQUEUE_IID; return iid;}
NS_IMETHOD_(PRStatus) PostEvent(PLEvent* aEvent) = 0;
NS_IMETHOD PostSynchronousEvent(PLEvent* aEvent) = 0;
NS_IMETHOD ProcessPendingEvents() = 0;
NS_IMETHOD PostSynchronousEvent(PLEvent* aEvent, void** aResult) = 0;
NS_IMETHOD ProcessPendingEvents() = 0;
NS_IMETHOD EventLoop() = 0;
NS_IMETHOD EventAvailable(PRBool& aResult) = 0;
NS_IMETHOD GetEvent(PLEvent** aResult) = 0;