[haiku-commits] r38072 - haiku/trunk/src/servers/app

  • From: clemens.zeidler@xxxxxxxxxxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Fri, 13 Aug 2010 01:05:31 +0200 (CEST)

Author: czeidler
Date: 2010-08-13 01:05:31 +0200 (Fri, 13 Aug 2010)
New Revision: 38072
Changeset: http://dev.haiku-os.org/changeset/38072

Modified:
   haiku/trunk/src/servers/app/Desktop.cpp
   haiku/trunk/src/servers/app/DesktopListener.cpp
   haiku/trunk/src/servers/app/DesktopListener.h
Log:
Rework listener interface as suggested by Axel.



Modified: haiku/trunk/src/servers/app/Desktop.cpp
===================================================================
--- haiku/trunk/src/servers/app/Desktop.cpp     2010-08-12 22:37:16 UTC (rev 
38071)
+++ haiku/trunk/src/servers/app/Desktop.cpp     2010-08-12 23:05:31 UTC (rev 
38072)
@@ -251,21 +251,21 @@
                switch (message->what) {
                        case B_MOUSE_DOWN:
                                window->MouseDown(message, where, &viewToken);
-                               fDesktop->InvokeMouseDown(window, message, 
where);
+                               fDesktop->MouseDown(window, message, where);
                                break;
 
                        case B_MOUSE_UP:
                                window->MouseUp(message, where, &viewToken);
                                if (buttons == 0)
                                        fDesktop->SetMouseEventWindow(NULL);
-                               fDesktop->InvokeMouseUp(window, message, where);
+                               fDesktop->MouseUp(window, message, where);
                                break;
 
                        case B_MOUSE_MOVED:
                                window->MouseMoved(message, where, &viewToken,
                                        latestMouseMoved == NULL || 
latestMouseMoved == message,
                                        false);
-                               fDesktop->InvokeMouseMoved(window, message, 
where);
+                               fDesktop->MouseMoved(window, message, where);
                                break;
                }
 
@@ -287,7 +287,7 @@
 
        fDesktop->SetLastMouseState(where, buttons, window);
 
-       fDesktop->InvokeMouseEvent(message);
+       fDesktop->MouseEvent(message);
 
        fDesktop->UnlockAllWindows();
 
@@ -492,7 +492,7 @@
 void
 Desktop::KeyEvent(uint32 what, int32 key, int32 modifiers)
 {
-       InvokeKeyEvent(what, key, modifiers);
+       KeyPressed(what, key, modifiers);
 }
 
 
@@ -921,7 +921,7 @@
 
        AutoWriteLocker _(fWindowLock);
 
-       InvokeActivateWindow(window);
+       WindowActitvated(window);
 
        bool windowOnOtherWorkspace = !window->InWorkspace(fCurrentWorkspace);
        if (windowOnOtherWorkspace
@@ -1076,7 +1076,7 @@
 
        _WindowChanged(window);
 
-       InvokeSendWindowBehind(window, behindOf);
+       WindowSentBehind(window, behindOf);
 
        UnlockAllWindows();
 
@@ -1121,8 +1121,6 @@
        // it knows the mouse is over it.
 
        _SendFakeMouseMoved(window);
-
-       InvokeShowWindow(window);
 }
 
 
@@ -1176,8 +1174,6 @@
                }
        }
 
-       InvokeHideWindow(window);
-
        UnlockAllWindows();
 
        if (window == fWindowUnderMouse)
@@ -1194,11 +1190,11 @@
        if (minimize && !window->IsHidden()) {
                HideWindow(window);
                window->SetMinimized(minimize);
-               InvokeMinimizeWindow(window, minimize);
+               WindowMinimized(window, minimize);
        } else if (!minimize && window->IsHidden()) {
                ActivateWindow(window);
                        // this will unminimize the window for us
-               InvokeMinimizeWindow(window, minimize);
+               WindowMinimized(window, minimize);
        }
 
        UnlockAllWindows();
@@ -1229,7 +1225,7 @@
                } else
                        window->MoveBy((int32)x, (int32)y);
 
-               InvokeMoveWindow(window);
+               WindowMoved(window);
                UnlockAllWindows();
                return;
        }
@@ -1284,7 +1280,7 @@
                        B_DIRECT_START | B_BUFFER_MOVED | B_CLIPPING_MODIFIED);
        }
 
-       InvokeMoveWindow(window);
+       WindowMoved(window);
 
        UnlockAllWindows();
 }
@@ -1301,7 +1297,7 @@
 
        if (!window->IsVisible()) {
                window->ResizeBy((int32)x, (int32)y, NULL);
-               InvokeResizeWindow(window);
+               WindowResized(window);
                UnlockAllWindows();
                return;
        }
@@ -1344,7 +1340,7 @@
                        B_DIRECT_START | B_BUFFER_RESIZED | 
B_CLIPPING_MODIFIED);
        }
 
-       InvokeResizeWindow(window);
+       WindowResized(window);
 
        UnlockAllWindows();
 }
@@ -1360,7 +1356,7 @@
        if (changed)
                RebuildAndRedrawAfterWindowChange(window, dirty);
 
-       InvokeSetWindowTabLocation(window, location);
+       WindowTabLocationChanged(window, location);
 
        return changed;
 }
@@ -1373,7 +1369,7 @@
 
        BRegion dirty;
        bool changed = window->SetDecoratorSettings(settings, dirty);
-       bool listenerChanged = InvokeSetDecoratorSettings(window, settings);
+       bool listenerChanged = SetDecoratorSettings(window, settings);
        if (changed || listenerChanged)
                RebuildAndRedrawAfterWindowChange(window, dirty);
 
@@ -1421,7 +1417,7 @@
 
        _ChangeWindowWorkspaces(window, 0, window->Workspaces());
        
-       InvokeAddWindow(window);
+       WindowAdded(window);
 
        UnlockAllWindows();
 }
@@ -1441,7 +1437,7 @@
 
        _ChangeWindowWorkspaces(window, window->Workspaces(), 0);
        
-       InvokeRemoveWindow(window);
+       WindowRemoved(window);
 
        UnlockAllWindows();
 
@@ -2083,7 +2079,7 @@
        ::Window* tmp = window->Window();
        if (tmp) {
                BMessage message;
-               InvokeGetDecoratorSettings(tmp, message);
+               GetDecoratorSettings(tmp, message);
                if (tmp->GetDecoratorSettings(&message)) {
                        BRect tabFrame;
                        message.FindRect("tab frame", &tabFrame);
@@ -2824,7 +2820,7 @@
        // take care about modals and floating windows
        _UpdateSubsetWorkspaces(window);
 
-       InvokeSetWindowWorkspaces(window, newWorkspaces);
+       WindowWorkspacesChanged(window, newWorkspaces);
 
        UnlockAllWindows();
 }
@@ -3229,7 +3225,7 @@
                                // send B_WORKSPACES_CHANGED message
                                movedWindow->WorkspacesChanged(oldWorkspaces,
                                        movedWindow->Workspaces());
-                               InvokeSetWindowWorkspaces(movedWindow, 
movedWindow->Workspaces());
+                               WindowWorkspacesChanged(movedWindow, 
movedWindow->Workspaces());
                        } else {
                                // make sure it's frontmost
                                _Windows(index).RemoveWindow(movedWindow);

Modified: haiku/trunk/src/servers/app/DesktopListener.cpp
===================================================================
--- haiku/trunk/src/servers/app/DesktopListener.cpp     2010-08-12 22:37:16 UTC 
(rev 38071)
+++ haiku/trunk/src/servers/app/DesktopListener.cpp     2010-08-12 23:05:31 UTC 
(rev 38072)
@@ -53,225 +53,217 @@
 
 
 void
-DesktopObservable::InvokeAddWindow(Window* window)
+DesktopObservable::WindowAdded(Window* window)
 {
        if (fWeAreInvoking)
                return;
        InvokeGuard invokeGuard(fWeAreInvoking);
 
-       FOR_ALL_DESKTOP_LISTENER
-               listener->AddWindow(window);
+       for (DesktopListener* listener = fDesktopListenerList.First();
+               listener != NULL; listener = 
fDesktopListenerList.GetNext(listener))
+               listener->WindowAdded(window);
 }
 
 
 void
-DesktopObservable::InvokeRemoveWindow(Window* window)
+DesktopObservable::WindowRemoved(Window* window)
 {
        if (fWeAreInvoking)
                return;
        InvokeGuard invokeGuard(fWeAreInvoking);
 
-       FOR_ALL_DESKTOP_LISTENER
-               listener->RemoveWindow(window);
+       for (DesktopListener* listener = fDesktopListenerList.First();
+               listener != NULL; listener = 
fDesktopListenerList.GetNext(listener))
+               listener->WindowRemoved(window);
 }
 
 
 void
-DesktopObservable::InvokeKeyEvent(uint32 what, int32 key, int32 modifiers)
+DesktopObservable::KeyPressed(uint32 what, int32 key, int32 modifiers)
 {
        if (fWeAreInvoking)
                return;
        InvokeGuard invokeGuard(fWeAreInvoking);
 
-       FOR_ALL_DESKTOP_LISTENER
-               listener->KeyEvent(what, key, modifiers);       
+       for (DesktopListener* listener = fDesktopListenerList.First();
+               listener != NULL; listener = 
fDesktopListenerList.GetNext(listener))
+               listener->KeyPressed(what, key, modifiers);     
 }
 
 
 void
-DesktopObservable::InvokeMouseEvent(BMessage* message)
+DesktopObservable::MouseEvent(BMessage* message)
 {
        if (fWeAreInvoking)
                return;
        InvokeGuard invokeGuard(fWeAreInvoking);
 
-       FOR_ALL_DESKTOP_LISTENER
+       for (DesktopListener* listener = fDesktopListenerList.First();
+               listener != NULL; listener = 
fDesktopListenerList.GetNext(listener))
                listener->MouseEvent(message);
 }
 
 
 void
-DesktopObservable::InvokeMouseDown(Window* window, BMessage* message,
+DesktopObservable::MouseDown(Window* window, BMessage* message,
        const BPoint& where)
 {
        if (fWeAreInvoking)
                return;
        InvokeGuard invokeGuard(fWeAreInvoking);
 
-       FOR_ALL_DESKTOP_LISTENER
+       for (DesktopListener* listener = fDesktopListenerList.First();
+               listener != NULL; listener = 
fDesktopListenerList.GetNext(listener))
                listener->MouseDown(window, message, where);
 }
 
 
 void
-DesktopObservable::InvokeMouseUp(Window* window, BMessage* message,
+DesktopObservable::MouseUp(Window* window, BMessage* message,
        const BPoint& where)
 {
        if (fWeAreInvoking)
                return;
        InvokeGuard invokeGuard(fWeAreInvoking);
 
-       FOR_ALL_DESKTOP_LISTENER
+       for (DesktopListener* listener = fDesktopListenerList.First();
+               listener != NULL; listener = 
fDesktopListenerList.GetNext(listener))
                listener->MouseUp(window, message, where);
 }
 
 
 void
-DesktopObservable::InvokeMouseMoved(Window* window, BMessage* message,
+DesktopObservable::MouseMoved(Window* window, BMessage* message,
        const BPoint& where)
 {
        if (fWeAreInvoking)
                return;
        InvokeGuard invokeGuard(fWeAreInvoking);
 
-       FOR_ALL_DESKTOP_LISTENER
+       for (DesktopListener* listener = fDesktopListenerList.First();
+               listener != NULL; listener = 
fDesktopListenerList.GetNext(listener))
                listener->MouseMoved(window, message, where);
 }
 
 
 void
-DesktopObservable::InvokeMoveWindow(Window* window)
+DesktopObservable::WindowMoved(Window* window)
 {
        if (fWeAreInvoking)
                return;
        InvokeGuard invokeGuard(fWeAreInvoking);
 
-       FOR_ALL_DESKTOP_LISTENER
-               listener->MoveWindow(window);
+       for (DesktopListener* listener = fDesktopListenerList.First();
+               listener != NULL; listener = 
fDesktopListenerList.GetNext(listener))
+               listener->WindowMoved(window);
 }
 
 
 void
-DesktopObservable::InvokeResizeWindow(Window* window)
+DesktopObservable::WindowResized(Window* window)
 {
        if (fWeAreInvoking)
                return;
        InvokeGuard invokeGuard(fWeAreInvoking);
 
-       FOR_ALL_DESKTOP_LISTENER
-               listener->ResizeWindow(window);
+       for (DesktopListener* listener = fDesktopListenerList.First();
+               listener != NULL; listener = 
fDesktopListenerList.GetNext(listener))
+               listener->WindowResized(window);
 }
 
 
 void
-DesktopObservable::InvokeActivateWindow(Window* window)
+DesktopObservable::WindowActitvated(Window* window)
 {
        if (fWeAreInvoking)
                return;
        InvokeGuard invokeGuard(fWeAreInvoking);
 
-       FOR_ALL_DESKTOP_LISTENER
-               listener->ActivateWindow(window);
+       for (DesktopListener* listener = fDesktopListenerList.First();
+               listener != NULL; listener = 
fDesktopListenerList.GetNext(listener))
+               listener->WindowActitvated(window);
 }
 
 
 void
-DesktopObservable::InvokeSendWindowBehind(Window* window, Window* behindOf)
+DesktopObservable::WindowSentBehind(Window* window, Window* behindOf)
 {
        if (fWeAreInvoking)
                return;
        InvokeGuard invokeGuard(fWeAreInvoking);
 
-       FOR_ALL_DESKTOP_LISTENER
-               listener->SendWindowBehind(window, behindOf);
+       for (DesktopListener* listener = fDesktopListenerList.First();
+               listener != NULL; listener = 
fDesktopListenerList.GetNext(listener))
+               listener->WindowSentBehind(window, behindOf);
 }
 
 
 void
-DesktopObservable::InvokeSetWindowTabLocation(Window* window, float location)
+DesktopObservable::WindowWorkspacesChanged(Window* window, uint32 workspaces)
 {
        if (fWeAreInvoking)
                return;
        InvokeGuard invokeGuard(fWeAreInvoking);
 
-       FOR_ALL_DESKTOP_LISTENER
-               listener->SetWindowTabLocation(window, location);
+       for (DesktopListener* listener = fDesktopListenerList.First();
+               listener != NULL; listener = 
fDesktopListenerList.GetNext(listener))
+               listener->WindowWorkspacesChanged(window, workspaces);
 }
 
 
-bool
-DesktopObservable::InvokeSetDecoratorSettings(Window* window,
-       const BMessage& settings)
-{
-       if (fWeAreInvoking)
-               return false;
-       InvokeGuard invokeGuard(fWeAreInvoking);
-
-       bool changed = false;
-       FOR_ALL_DESKTOP_LISTENER
-               changed = changed | listener->SetDecoratorSettings(window, 
settings);
-
-       return changed;
-}
-
-
 void
-DesktopObservable::InvokeGetDecoratorSettings(Window* window, BMessage& 
settings)
+DesktopObservable::WindowMinimized(Window* window, bool minimize)
 {
        if (fWeAreInvoking)
                return;
        InvokeGuard invokeGuard(fWeAreInvoking);
 
-       FOR_ALL_DESKTOP_LISTENER
-               listener->GetDecoratorSettings(window, settings);
+       for (DesktopListener* listener = fDesktopListenerList.First();
+               listener != NULL; listener = 
fDesktopListenerList.GetNext(listener))
+               listener->WindowMinimized(window, minimize);
 }
 
 
 void
-DesktopObservable::InvokeSetWindowWorkspaces(Window* window, uint32 workspaces)
+DesktopObservable::WindowTabLocationChanged(Window* window, float location)
 {
        if (fWeAreInvoking)
                return;
        InvokeGuard invokeGuard(fWeAreInvoking);
 
-       FOR_ALL_DESKTOP_LISTENER
-               listener->SetWindowWorkspaces(window, workspaces);
+       for (DesktopListener* listener = fDesktopListenerList.First();
+               listener != NULL; listener = 
fDesktopListenerList.GetNext(listener))
+               listener->WindowTabLocationChanged(window, location);
 }
 
 
-void
-DesktopObservable::InvokeShowWindow(Window* window)
+bool
+DesktopObservable::SetDecoratorSettings(Window* window,
+       const BMessage& settings)
 {
        if (fWeAreInvoking)
-               return;
+               return false;
        InvokeGuard invokeGuard(fWeAreInvoking);
 
-       FOR_ALL_DESKTOP_LISTENER
-               listener->ShowWindow(window);
-}
+       bool changed = false;
+       for (DesktopListener* listener = fDesktopListenerList.First();
+               listener != NULL; listener = 
fDesktopListenerList.GetNext(listener))
+               changed = changed | listener->SetDecoratorSettings(window, 
settings);
 
-
-void
-DesktopObservable::InvokeHideWindow(Window* window)
-{
-       if (fWeAreInvoking)
-               return;
-       InvokeGuard invokeGuard(fWeAreInvoking);
-
-       FOR_ALL_DESKTOP_LISTENER
-               listener->HideWindow(window);
+       return changed;
 }
 
 
 void
-DesktopObservable::InvokeMinimizeWindow(Window* window, bool minimize)
+DesktopObservable::GetDecoratorSettings(Window* window, BMessage& settings)
 {
        if (fWeAreInvoking)
                return;
        InvokeGuard invokeGuard(fWeAreInvoking);
 
-       FOR_ALL_DESKTOP_LISTENER
-               listener->MinimizeWindow(window, minimize);
+       for (DesktopListener* listener = fDesktopListenerList.First();
+               listener != NULL; listener = 
fDesktopListenerList.GetNext(listener))
+               listener->GetDecoratorSettings(window, settings);
 }
 
 

Modified: haiku/trunk/src/servers/app/DesktopListener.h
===================================================================
--- haiku/trunk/src/servers/app/DesktopListener.h       2010-08-12 22:37:16 UTC 
(rev 38071)
+++ haiku/trunk/src/servers/app/DesktopListener.h       2010-08-12 23:05:31 UTC 
(rev 38072)
@@ -26,10 +26,10 @@
        virtual void                            ListenerRegistered(Desktop* 
desktop) = 0;
        virtual void                            ListenerUnregistered() = 0;
 
-       virtual void                            AddWindow(Window* window) = 0;
-       virtual void                            RemoveWindow(Window* window) = 
0;
+       virtual void                            WindowAdded(Window* window) = 0;
+       virtual void                            WindowRemoved(Window* window) = 
0;
        
-       virtual void                            KeyEvent(uint32 what, int32 key,
+       virtual void                            KeyPressed(uint32 what, int32 
key,
                                                                        int32 
modifiers) = 0;
        virtual void                            MouseEvent(BMessage* message) = 
0;
        virtual void                            MouseDown(Window* window, 
BMessage* message,
@@ -39,19 +39,17 @@
        virtual void                            MouseMoved(Window* window, 
BMessage* message,
                                                                        const 
BPoint& where) = 0;
 
-       virtual void                            MoveWindow(Window* window) = 0;
-       virtual void                            ResizeWindow(Window* window) = 
0;
-       virtual void                            ActivateWindow(Window* window) 
= 0;
-       virtual void                            SendWindowBehind(Window* window,
+       virtual void                            WindowMoved(Window* window) = 0;
+       virtual void                            WindowResized(Window* window) = 
0;
+       virtual void                            WindowActitvated(Window* 
window) = 0;
+       virtual void                            WindowSentBehind(Window* window,
                                                                        Window* 
behindOf) = 0;
-       virtual void                            SetWindowWorkspaces(Window* 
window,
+       virtual void                            WindowWorkspacesChanged(Window* 
window,
                                                                        uint32 
workspaces) = 0;
-       virtual void                            ShowWindow(Window* window) = 0;
-       virtual void                            HideWindow(Window* window) = 0;
-       virtual void                            MinimizeWindow(Window* window,
+       virtual void                            WindowMinimized(Window* window,
                                                                        bool 
minimize) = 0;
 
-       virtual void                            SetWindowTabLocation(Window* 
window,
+       virtual void                            
WindowTabLocationChanged(Window* window,
                                                                        float 
location) = 0;
 
        virtual bool                            SetDecoratorSettings(Window* 
window,
@@ -73,36 +71,33 @@
                void                            
UnregisterListener(DesktopListener* listener);
        const DesktopListenerDLList&    GetDesktopListenerList();
 
-               void                            InvokeAddWindow(Window* window);
-               void                            InvokeRemoveWindow(Window* 
window);
+               void                            WindowAdded(Window* window);
+               void                            WindowRemoved(Window* window);
 
-               void                            InvokeKeyEvent(uint32 what, 
int32 key,
+               void                            KeyPressed(uint32 what, int32 
key,
                                                                int32 
modifiers);
-               void                            InvokeMouseEvent(BMessage* 
message);
-               void                            InvokeMouseDown(Window* window, 
BMessage* message,
+               void                            MouseEvent(BMessage* message);
+               void                            MouseDown(Window* window, 
BMessage* message,
                                                                        const 
BPoint& where);
-               void                            InvokeMouseUp(Window* window, 
BMessage* message,
+               void                            MouseUp(Window* window, 
BMessage* message,
                                                                        const 
BPoint& where);
-               void                            InvokeMouseMoved(Window* 
window, BMessage* message,
+               void                            MouseMoved(Window* window, 
BMessage* message,
                                                                        const 
BPoint& where);
 
-               void                            InvokeMoveWindow(Window* 
window);
-               void                            InvokeResizeWindow(Window* 
window);
-               void                            InvokeActivateWindow(Window* 
window);
-               void                            InvokeSendWindowBehind(Window* 
window,
-                                                               Window* 
behindOf);
-               void                            
InvokeSetWindowWorkspaces(Window* window,
+               void                            WindowMoved(Window* window);
+               void                            WindowResized(Window* window);
+               void                            WindowActitvated(Window* 
window);
+               void                            WindowSentBehind(Window* 
window, Window* behindOf);
+               void                            WindowWorkspacesChanged(Window* 
window,
                                                                        uint32 
workspaces);
-               void                            InvokeShowWindow(Window* 
window);
-               void                            InvokeHideWindow(Window* 
window);
-               void                            InvokeMinimizeWindow(Window* 
window, bool minimize);
+               void                            WindowMinimized(Window* window, 
bool minimize);
 
-               void                            
InvokeSetWindowTabLocation(Window* window,
+               void                            
WindowTabLocationChanged(Window* window,
                                                                float location);
 
-               bool                            
InvokeSetDecoratorSettings(Window* window,
+               bool                            SetDecoratorSettings(Window* 
window,
                                                                const BMessage& 
settings);
-               void                            
InvokeGetDecoratorSettings(Window* window,
+               void                            GetDecoratorSettings(Window* 
window,
                                                                BMessage& 
settings);
 
 private:


Other related posts: