Added system color, system font, and decorator update notification

Added a little server-side code to handle system color updates


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5088 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
DarkWyrm
2003-10-19 00:03:06 +00:00
parent 01490aa446
commit d6e461f029
4 changed files with 91 additions and 23 deletions
+44
View File
@@ -50,6 +50,7 @@
#include "ServerBitmap.h"
#include "ServerPicture.h"
#include "ServerConfig.h"
#include "WinBorder.h"
#include "LayerData.h"
#include "Utils.h"
@@ -348,6 +349,49 @@ void ServerApp::_DispatchMessage(PortMessage *msg)
fontserver->Unlock();
break;
}
case AS_UPDATE_COLORS:
{
ServerWindow *win;
BMessage msg(_COLORS_UPDATED);
for(int32 i=0; i<_winlist->CountItems(); i++)
{
win=(ServerWindow*)_winlist->ItemAt(i);
win->Lock();
win->_winborder->UpdateColors();
win->SendMessageToClient(&msg);
win->Unlock();
}
break;
}
case AS_UPDATE_FONTS:
{
ServerWindow *win;
BMessage msg(_FONTS_UPDATED);
for(int32 i=0; i<_winlist->CountItems(); i++)
{
win=(ServerWindow*)_winlist->ItemAt(i);
win->Lock();
win->_winborder->UpdateFont();
win->SendMessageToClient(&msg);
win->Unlock();
}
break;
}
case AS_UPDATE_DECORATOR:
{
ServerWindow *win;
for(int32 i=0; i<_winlist->CountItems(); i++)
{
win=(ServerWindow*)_winlist->ItemAt(i);
win->Lock();
win->_winborder->UpdateDecorator();
win->Unlock();
}
break;
}
case AS_CREATE_WINDOW:
{
// Create the ServerWindow to node monitor a new OBWindow