Added print debug code to a number of classes
SendMessage allows for target specification Included BMessage friend classes to allow building whilst they are absent from BMessage.cpp More window-related code added git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3004 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -52,9 +52,10 @@ RGBColor workspace_default_color(51,102,160);
|
|||||||
This loads the default fonts, allocates all the major global variables, spawns the main housekeeping
|
This loads the default fonts, allocates all the major global variables, spawns the main housekeeping
|
||||||
threads, loads user preferences for the UI and decorator, and allocates various locks.
|
threads, loads user preferences for the UI and decorator, and allocates various locks.
|
||||||
*/
|
*/
|
||||||
AppServer::AppServer(void)
|
|
||||||
#if DISPLAYDRIVER != HWDRIVER
|
#if DISPLAYDRIVER != HWDRIVER
|
||||||
: BApplication (SERVER_SIGNATURE)
|
AppServer::AppServer(void) : BApplication (SERVER_SIGNATURE)
|
||||||
|
#else
|
||||||
|
AppServer::AppServer(void)
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
_mouseport=create_port(100,SERVER_INPUT_PORT);
|
_mouseport=create_port(100,SERVER_INPUT_PORT);
|
||||||
|
|||||||
@@ -31,17 +31,22 @@
|
|||||||
#include "DefaultDecorator.h"
|
#include "DefaultDecorator.h"
|
||||||
#include "RGBColor.h"
|
#include "RGBColor.h"
|
||||||
|
|
||||||
|
//#define DEBUG_DECORATOR
|
||||||
|
|
||||||
|
#ifdef DEBUG_DECORATOR
|
||||||
|
#include <stdio.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
DefaultDecorator::DefaultDecorator(BRect rect, int32 wlook, int32 wfeel, int32 wflags)
|
DefaultDecorator::DefaultDecorator(BRect rect, int32 wlook, int32 wfeel, int32 wflags)
|
||||||
: Decorator(rect,wlook,wfeel,wflags)
|
: Decorator(rect,wlook,wfeel,wflags)
|
||||||
{
|
{
|
||||||
taboffset=0;
|
taboffset=0;
|
||||||
|
|
||||||
// These hard-coded assignments will go bye-bye when the system _colors
|
|
||||||
// API is implemented
|
|
||||||
|
|
||||||
// commented these out because they are taken care of by the SetFocus() call
|
// commented these out because they are taken care of by the SetFocus() call
|
||||||
SetFocus(false);
|
SetFocus(false);
|
||||||
|
|
||||||
|
// These hard-coded assignments will go bye-bye when the system _colors
|
||||||
|
// API is implemented
|
||||||
frame_highercol.SetColor(216,216,216);
|
frame_highercol.SetColor(216,216,216);
|
||||||
frame_lowercol.SetColor(110,110,110);
|
frame_lowercol.SetColor(110,110,110);
|
||||||
|
|
||||||
@@ -60,14 +65,68 @@ DefaultDecorator::DefaultDecorator(BRect rect, int32 wlook, int32 wfeel, int32 w
|
|||||||
|
|
||||||
tab_highcol=_colors->window_tab;
|
tab_highcol=_colors->window_tab;
|
||||||
tab_lowcol=_colors->window_tab;
|
tab_lowcol=_colors->window_tab;
|
||||||
|
|
||||||
|
#ifdef DEBUG_DECORATOR
|
||||||
|
printf("DefaultDecorator:\n");
|
||||||
|
printf("\tFrame (%.1f,%.1f,%.1f,%.1f)\n",rect.left,rect.top,rect.right,rect.bottom);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
DefaultDecorator::~DefaultDecorator(void)
|
DefaultDecorator::~DefaultDecorator(void)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_DECORATOR
|
||||||
|
printf("DefaultDecorator: ~DefaultDecorator()\n");
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
click_type DefaultDecorator::Clicked(BPoint pt, int32 buttons, int32 modifiers)
|
click_type DefaultDecorator::Clicked(BPoint pt, int32 buttons, int32 modifiers)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_DECORATOR
|
||||||
|
printf("DefaultDecorator: Clicked\n");
|
||||||
|
printf("\tPoint: (%.1f,%.1f)\n",pt.x,pt.y);
|
||||||
|
printf("\tButtons:\n");
|
||||||
|
if(buttons==0)
|
||||||
|
printf("\t\tNone\n");
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if(buttons & B_PRIMARY_MOUSE_BUTTON)
|
||||||
|
printf("\t\tPrimary\n");
|
||||||
|
if(buttons & B_SECONDARY_MOUSE_BUTTON)
|
||||||
|
printf("\t\tSecondary\n");
|
||||||
|
if(buttons & B_TERTIARY_MOUSE_BUTTON)
|
||||||
|
printf("\t\tTertiary\n");
|
||||||
|
}
|
||||||
|
printf("\tNodifiers:\n");
|
||||||
|
if(modifiers==0)
|
||||||
|
printf("\t\tNone\n");
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if(modifiers & B_CAPS_LOCK)
|
||||||
|
printf("\t\tCaps Lock\n");
|
||||||
|
if(modifiers & B_NUM_LOCK)
|
||||||
|
printf("\t\tNum Lock\n");
|
||||||
|
if(modifiers & B_SCROLL_LOCK)
|
||||||
|
printf("\t\tScroll Lock\n");
|
||||||
|
if(modifiers & B_LEFT_COMMAND_KEY)
|
||||||
|
printf("\t\t Left Command\n");
|
||||||
|
if(modifiers & B_RIGHT_COMMAND_KEY)
|
||||||
|
printf("\t\t Right Command\n");
|
||||||
|
if(modifiers & B_LEFT_CONTROL_KEY)
|
||||||
|
printf("\t\tLeft Control\n");
|
||||||
|
if(modifiers & B_RIGHT_CONTROL_KEY)
|
||||||
|
printf("\t\tRight Control\n");
|
||||||
|
if(modifiers & B_LEFT_OPTION_KEY)
|
||||||
|
printf("\t\tLeft Option\n");
|
||||||
|
if(modifiers & B_RIGHT_OPTION_KEY)
|
||||||
|
printf("\t\tRight Option\n");
|
||||||
|
if(modifiers & B_LEFT_SHIFT_KEY)
|
||||||
|
printf("\t\tLeft Shift\n");
|
||||||
|
if(modifiers & B_RIGHT_SHIFT_KEY)
|
||||||
|
printf("\t\tRight Shift\n");
|
||||||
|
if(modifiers & B_MENU_KEY)
|
||||||
|
printf("\t\tMenu\n");
|
||||||
|
}
|
||||||
|
#endif
|
||||||
if(_closerect.Contains(pt))
|
if(_closerect.Contains(pt))
|
||||||
return CLICK_CLOSE;
|
return CLICK_CLOSE;
|
||||||
|
|
||||||
@@ -106,6 +165,9 @@ click_type DefaultDecorator::Clicked(BPoint pt, int32 buttons, int32 modifiers)
|
|||||||
|
|
||||||
void DefaultDecorator::_DoLayout(void)
|
void DefaultDecorator::_DoLayout(void)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_DECORATOR
|
||||||
|
printf("DefaultDecorator: Do Layout\n");
|
||||||
|
#endif
|
||||||
// Here we determine the size of every rectangle that we use
|
// Here we determine the size of every rectangle that we use
|
||||||
// internally when we are given the size of the client rectangle.
|
// internally when we are given the size of the client rectangle.
|
||||||
|
|
||||||
@@ -159,6 +221,9 @@ void DefaultDecorator::MoveBy(float x, float y)
|
|||||||
|
|
||||||
void DefaultDecorator::MoveBy(BPoint pt)
|
void DefaultDecorator::MoveBy(BPoint pt)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_DECORATOR
|
||||||
|
printf("DefaultDecorator: Move By (%.1f, %.1f)\n",pt.x,pt.y);
|
||||||
|
#endif
|
||||||
// Move all internal rectangles the appropriate amount
|
// Move all internal rectangles the appropriate amount
|
||||||
_frame.OffsetBy(pt);
|
_frame.OffsetBy(pt);
|
||||||
_closerect.OffsetBy(pt);
|
_closerect.OffsetBy(pt);
|
||||||
@@ -170,6 +235,9 @@ void DefaultDecorator::MoveBy(BPoint pt)
|
|||||||
|
|
||||||
BRegion * DefaultDecorator::GetFootprint(void)
|
BRegion * DefaultDecorator::GetFootprint(void)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_DECORATOR
|
||||||
|
printf("DefaultDecorator: Get Footprint\n");
|
||||||
|
#endif
|
||||||
// This function calculates the decorator's footprint in coordinates
|
// This function calculates the decorator's footprint in coordinates
|
||||||
// relative to the layer. This is most often used to set a WinBorder
|
// relative to the layer. This is most often used to set a WinBorder
|
||||||
// object's visible region.
|
// object's visible region.
|
||||||
@@ -219,6 +287,9 @@ void DefaultDecorator::_SetFocus(void)
|
|||||||
|
|
||||||
void DefaultDecorator::Draw(BRect update)
|
void DefaultDecorator::Draw(BRect update)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_DECORATOR
|
||||||
|
printf("DefaultDecorator: Draw(%.1f,%.1f,%.1f,%.1f)\n",update.left,update.top,update.right,update.bottom);
|
||||||
|
#endif
|
||||||
// We need to draw a few things: the tab, the resize thumb, the borders,
|
// We need to draw a few things: the tab, the resize thumb, the borders,
|
||||||
// and the buttons
|
// and the buttons
|
||||||
|
|
||||||
|
|||||||
@@ -395,6 +395,7 @@ void AddWindowToDesktop(ServerWindow *win, int32 workspace=B_CURRENT_WORKSPACE,
|
|||||||
|
|
||||||
Workspace *w=desktop_private::activescreen->GetActiveWorkspace();
|
Workspace *w=desktop_private::activescreen->GetActiveWorkspace();
|
||||||
win->SetWorkspace(w);
|
win->SetWorkspace(w);
|
||||||
|
desktop_private::activescreen->AddWindow(win,workspace);
|
||||||
|
|
||||||
desktop_private::layerlock.Unlock();
|
desktop_private::layerlock.Unlock();
|
||||||
desktop_private::workspacelock.Unlock();
|
desktop_private::workspacelock.Unlock();
|
||||||
@@ -410,6 +411,7 @@ void RemoveWindowFromDesktop(ServerWindow *win)
|
|||||||
lock_layers();
|
lock_layers();
|
||||||
|
|
||||||
win->SetWorkspace(NULL);
|
win->SetWorkspace(NULL);
|
||||||
|
desktop_private::activescreen->RemoveWindow(win);
|
||||||
|
|
||||||
unlock_layers();
|
unlock_layers();
|
||||||
unlock_workspaces();
|
unlock_workspaces();
|
||||||
|
|||||||
@@ -27,6 +27,8 @@
|
|||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
#include "DesktopClasses.h"
|
#include "DesktopClasses.h"
|
||||||
#include "TokenHandler.h"
|
#include "TokenHandler.h"
|
||||||
|
#include "ServerWindow.h"
|
||||||
|
#include "WinBorder.h"
|
||||||
|
|
||||||
// Defined and initialized in AppServer.cpp
|
// Defined and initialized in AppServer.cpp
|
||||||
extern RGBColor workspace_default_color;
|
extern RGBColor workspace_default_color;
|
||||||
@@ -330,23 +332,27 @@ status_t Screen::SetSpace(int32 index, int32 res,bool stick)
|
|||||||
*/
|
*/
|
||||||
void Screen::AddWindow(ServerWindow *win, int32 workspace)
|
void Screen::AddWindow(ServerWindow *win, int32 workspace)
|
||||||
{
|
{
|
||||||
//TODO: Implement
|
if(!win || !win->_winborder)
|
||||||
if(!win)
|
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
Layer *rl=GetRootLayer(workspace);
|
||||||
|
if(rl)
|
||||||
|
rl->AddChild(win->_winborder);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
\brief Removes a Window from the desktop
|
\brief Removes a Window from the desktop
|
||||||
\param win The window to remove
|
\param win The window to remove
|
||||||
|
|
||||||
If the window does not belong to this screen or has not been added to the desktop,
|
The window will remove itself from whatever screen it has been added to, or if it has not been
|
||||||
this function will fail.
|
added to the desktop, it will do nothing.
|
||||||
*/
|
*/
|
||||||
void Screen::RemoveWindow(ServerWindow *win)
|
void Screen::RemoveWindow(ServerWindow *win)
|
||||||
{
|
{
|
||||||
//TODO: Implement
|
if(!win || !win->_winborder)
|
||||||
if(!win)
|
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
win->_winborder->RemoveSelf();
|
||||||
}
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
|||||||
@@ -34,6 +34,8 @@
|
|||||||
#include "PortLink.h"
|
#include "PortLink.h"
|
||||||
#include "TokenHandler.h"
|
#include "TokenHandler.h"
|
||||||
|
|
||||||
|
//#define DEBUG_LAYER
|
||||||
|
|
||||||
//! TokenHandler object used to provide IDs for all Layers and, thus, BViews
|
//! TokenHandler object used to provide IDs for all Layers and, thus, BViews
|
||||||
TokenHandler view_token_handler;
|
TokenHandler view_token_handler;
|
||||||
|
|
||||||
@@ -64,7 +66,7 @@ Layer::Layer(BRect frame, const char *name, int32 resize, int32 flags,ServerWind
|
|||||||
|
|
||||||
_visible=new BRegion(Bounds());
|
_visible=new BRegion(Bounds());
|
||||||
_full=new BRegion(Bounds());
|
_full=new BRegion(Bounds());
|
||||||
_invalid=NULL;
|
_invalid=new BRegion(Bounds());
|
||||||
|
|
||||||
_serverwin=win;
|
_serverwin=win;
|
||||||
|
|
||||||
@@ -79,11 +81,19 @@ Layer::Layer(BRect frame, const char *name, int32 resize, int32 flags,ServerWind
|
|||||||
|
|
||||||
_level=0;
|
_level=0;
|
||||||
_layerdata=new LayerData;
|
_layerdata=new LayerData;
|
||||||
|
#ifdef DEBUG_LAYER
|
||||||
|
printf("Layer: %s\n",name);
|
||||||
|
printf("\tFrame: (%.1f,%.1f,%.1f,%.1f)\n",frame.left,frame.top,frame.right,frame.bottom);
|
||||||
|
printf("\tWindow: %s\n",win?win->Title():"NULL");
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
//! Destructor frees all allocated heap space
|
//! Destructor frees all allocated heap space
|
||||||
Layer::~Layer(void)
|
Layer::~Layer(void)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_LAYER
|
||||||
|
printf("Layer: %s: ~Layer()\n",_name->String());
|
||||||
|
#endif
|
||||||
if(_visible)
|
if(_visible)
|
||||||
{
|
{
|
||||||
delete _visible;
|
delete _visible;
|
||||||
@@ -119,6 +129,10 @@ Layer::~Layer(void)
|
|||||||
*/
|
*/
|
||||||
void Layer::AddChild(Layer *layer, Layer *before=NULL, bool rebuild)
|
void Layer::AddChild(Layer *layer, Layer *before=NULL, bool rebuild)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_LAYER
|
||||||
|
printf("Layer: %s: Add Child (%s, %s, %s) - Incomplete\n",_name->String(),layer?layer->_name->String():"NULL",
|
||||||
|
before?before->_name->String():"NULL",rebuild?"rebuild":"no rebuild");
|
||||||
|
#endif
|
||||||
// TODO: Add before support
|
// TODO: Add before support
|
||||||
|
|
||||||
if(layer->_parent!=NULL)
|
if(layer->_parent!=NULL)
|
||||||
@@ -181,6 +195,10 @@ void Layer::AddChild(Layer *layer, Layer *before=NULL, bool rebuild)
|
|||||||
*/
|
*/
|
||||||
void Layer::RemoveChild(Layer *layer, bool rebuild)
|
void Layer::RemoveChild(Layer *layer, bool rebuild)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_LAYER
|
||||||
|
printf("Layer: %s: Remove Child (%s,%s)\n",_name->String(),layer?layer->_name->String():"NULL",
|
||||||
|
rebuild?"rebuild":"no rebuild");
|
||||||
|
#endif
|
||||||
if(layer->_parent==NULL)
|
if(layer->_parent==NULL)
|
||||||
{
|
{
|
||||||
printf("ERROR: RemoveChild(): Layer doesn't have a _parent\n");
|
printf("ERROR: RemoveChild(): Layer doesn't have a _parent\n");
|
||||||
@@ -224,6 +242,9 @@ void Layer::RemoveChild(Layer *layer, bool rebuild)
|
|||||||
*/
|
*/
|
||||||
void Layer::RemoveSelf(bool rebuild)
|
void Layer::RemoveSelf(bool rebuild)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_LAYER
|
||||||
|
printf("Layer: %s: RemoveSelf(%s)\n",_name->String(),rebuild?"rebuild":"no rebuild");
|
||||||
|
#endif
|
||||||
// A Layer removes itself from the tree (duh)
|
// A Layer removes itself from the tree (duh)
|
||||||
if(_parent==NULL)
|
if(_parent==NULL)
|
||||||
{
|
{
|
||||||
@@ -251,6 +272,9 @@ void Layer::RemoveSelf(bool rebuild)
|
|||||||
*/
|
*/
|
||||||
Layer *Layer::GetChildAt(BPoint pt, bool recursive=false)
|
Layer *Layer::GetChildAt(BPoint pt, bool recursive=false)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_LAYER
|
||||||
|
printf("Layer: %s: Get Child At (%.1f,%.1f)\n",_name->String(),pt.x,pt.y);
|
||||||
|
#endif
|
||||||
Layer *child;
|
Layer *child;
|
||||||
if(recursive)
|
if(recursive)
|
||||||
{
|
{
|
||||||
@@ -304,6 +328,9 @@ BRect Layer::Frame(void)
|
|||||||
*/
|
*/
|
||||||
void Layer::PruneTree(void)
|
void Layer::PruneTree(void)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_LAYER
|
||||||
|
printf("Layer: %s: Prune Tree\n",_name->String());
|
||||||
|
#endif
|
||||||
Layer *lay,*nextlay;
|
Layer *lay,*nextlay;
|
||||||
|
|
||||||
lay=_topchild;
|
lay=_topchild;
|
||||||
@@ -329,6 +356,9 @@ void Layer::PruneTree(void)
|
|||||||
*/
|
*/
|
||||||
Layer *Layer::FindLayer(int32 token)
|
Layer *Layer::FindLayer(int32 token)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_LAYER
|
||||||
|
printf("Layer: %s: Find Layer (%ld)\n",_name->String(),token);
|
||||||
|
#endif
|
||||||
// recursive search for a layer based on its view token
|
// recursive search for a layer based on its view token
|
||||||
Layer *lay, *trylay;
|
Layer *lay, *trylay;
|
||||||
|
|
||||||
@@ -360,6 +390,10 @@ Layer *Layer::FindLayer(int32 token)
|
|||||||
*/
|
*/
|
||||||
void Layer::Invalidate(BRegion region)
|
void Layer::Invalidate(BRegion region)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_LAYER
|
||||||
|
printf("Layer: %s: Invalidate(BRegion)\n",_name->String());
|
||||||
|
region.PrintToStream();
|
||||||
|
#endif
|
||||||
int32 i;
|
int32 i;
|
||||||
BRect r;
|
BRect r;
|
||||||
|
|
||||||
@@ -406,6 +440,10 @@ void Layer::Invalidate(BRegion region)
|
|||||||
*/
|
*/
|
||||||
void Layer::Invalidate(BRect rect)
|
void Layer::Invalidate(BRect rect)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_LAYER
|
||||||
|
printf("Layer: %s: Invalidate(%.1f,%.1f,%.1f,%.1f)\n",_name->String(),rect.left,rect.top,rect.right,
|
||||||
|
rect.bottom);
|
||||||
|
#endif
|
||||||
// Make our own section dirty and pass it on to any children, if necessary....
|
// Make our own section dirty and pass it on to any children, if necessary....
|
||||||
// YES, WE ARE SHARING DIRT! Mudpies anyone? :D
|
// YES, WE ARE SHARING DIRT! Mudpies anyone? :D
|
||||||
if(TestRectIntersection(Frame(),rect))
|
if(TestRectIntersection(Frame(),rect))
|
||||||
@@ -441,6 +479,10 @@ void Layer::Invalidate(BRect rect)
|
|||||||
*/
|
*/
|
||||||
void Layer::RequestDraw(const BRect &r)
|
void Layer::RequestDraw(const BRect &r)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_LAYER
|
||||||
|
printf("Layer: %s: RequestDraw(%.1f,%.1f,%.1f,%.1f) - unimplemented\n",
|
||||||
|
_name->String(),r.left,r.top,r.right,r.bottom);
|
||||||
|
#endif
|
||||||
// TODO: Implement and fix
|
// TODO: Implement and fix
|
||||||
/* if(_visible==NULL || _hidecount>0)
|
/* if(_visible==NULL || _hidecount>0)
|
||||||
return;
|
return;
|
||||||
@@ -480,6 +522,9 @@ bool Layer::IsDirty(void) const
|
|||||||
//! Show the layer. Operates just like the BView call with the same name
|
//! Show the layer. Operates just like the BView call with the same name
|
||||||
void Layer::Show(void)
|
void Layer::Show(void)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_LAYER
|
||||||
|
printf("Layer: %s: Show\n",_name->String());
|
||||||
|
#endif
|
||||||
if(_hidecount==0)
|
if(_hidecount==0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
@@ -500,6 +545,9 @@ void Layer::Show(void)
|
|||||||
//! Hide the layer. Operates just like the BView call with the same name
|
//! Hide the layer. Operates just like the BView call with the same name
|
||||||
void Layer::Hide(void)
|
void Layer::Hide(void)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_LAYER
|
||||||
|
printf("Layer: %s: Hide\n",_name->String());
|
||||||
|
#endif
|
||||||
if(_hidecount==0)
|
if(_hidecount==0)
|
||||||
{
|
{
|
||||||
BRegion *reg=new BRegion(ConvertToParent(_visible));
|
BRegion *reg=new BRegion(ConvertToParent(_visible));
|
||||||
@@ -547,6 +595,9 @@ uint32 Layer::CountChildren(void)
|
|||||||
*/
|
*/
|
||||||
void Layer::MoveBy(float x, float y)
|
void Layer::MoveBy(float x, float y)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_LAYER
|
||||||
|
printf("Layer: %s: Move By (%.1f,%.1f)\n",_name->String(),x,y);
|
||||||
|
#endif
|
||||||
BRect oldframe(_frame);
|
BRect oldframe(_frame);
|
||||||
_frame.OffsetBy(x,y);
|
_frame.OffsetBy(x,y);
|
||||||
|
|
||||||
@@ -573,6 +624,9 @@ void Layer::MoveBy(float x, float y)
|
|||||||
*/
|
*/
|
||||||
void Layer::ResizeBy(float x, float y)
|
void Layer::ResizeBy(float x, float y)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_LAYER
|
||||||
|
printf("Layer: %s: Rezize By (%.1f,%.1f) - Incomplete\n",_name->String(),x,y);
|
||||||
|
#endif
|
||||||
// TODO: Implement and test child resizing based on flags
|
// TODO: Implement and test child resizing based on flags
|
||||||
|
|
||||||
BRect oldframe=_frame;
|
BRect oldframe=_frame;
|
||||||
@@ -596,6 +650,10 @@ void Layer::ResizeBy(float x, float y)
|
|||||||
*/
|
*/
|
||||||
void Layer::RebuildRegions(bool include_children=true)
|
void Layer::RebuildRegions(bool include_children=true)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_LAYER
|
||||||
|
printf("Layer: %s: Rebuild Regions (%s)\n",_name->String(),include_children?"include children":
|
||||||
|
"no child inclusion");
|
||||||
|
#endif
|
||||||
BRegion *reg,*reg2;
|
BRegion *reg,*reg2;
|
||||||
if(_full)
|
if(_full)
|
||||||
_full->Include(Bounds());
|
_full->Include(Bounds());
|
||||||
|
|||||||
@@ -258,8 +258,18 @@ printf("ServerApp %s:Server shutdown notification received\n",app->_signature.St
|
|||||||
// because the server was asked to quit. Thus, we
|
// because the server was asked to quit. Thus, we
|
||||||
// ask all apps to quit. This is NOT the same as system
|
// ask all apps to quit. This is NOT the same as system
|
||||||
// shutdown and will happen only in testing
|
// shutdown and will happen only in testing
|
||||||
// BMessage *shutdown=new BMessage(B_QUIT_REQUESTED);
|
|
||||||
|
// For now, it seems that we can't seem to try to play nice and tell
|
||||||
|
// an application to quit, so we'll just have to go postal. XD
|
||||||
|
|
||||||
|
// BMessage *shutdown=new BMessage(_QUIT_);
|
||||||
// SendMessage(app->_sender,shutdown);
|
// SendMessage(app->_sender,shutdown);
|
||||||
|
|
||||||
|
// DIE! DIE! DIE! :P
|
||||||
|
port_info pi;
|
||||||
|
get_port_info(app->_sender,&pi);
|
||||||
|
kill_team(pi.team);
|
||||||
|
app->PostMessage(B_QUIT_REQUESTED);
|
||||||
#ifdef DEBUG_SERVERAPP
|
#ifdef DEBUG_SERVERAPP
|
||||||
printf("ServerApp %s:Sent server shutdown message to BApp\n",app->_signature.String());
|
printf("ServerApp %s:Sent server shutdown message to BApp\n",app->_signature.String());
|
||||||
#endif
|
#endif
|
||||||
@@ -321,6 +331,9 @@ void ServerApp::_DispatchMessage(int32 code, int8 *buffer)
|
|||||||
{
|
{
|
||||||
case AS_UPDATED_CLIENT_FONTLIST:
|
case AS_UPDATED_CLIENT_FONTLIST:
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERAPP
|
||||||
|
printf("ServerApp %s: Client font list update confirmed\n",_signature.String());
|
||||||
|
#endif
|
||||||
// received when the client-side global font list has been
|
// received when the client-side global font list has been
|
||||||
// refreshed
|
// refreshed
|
||||||
fontserver->Lock();
|
fontserver->Lock();
|
||||||
@@ -358,6 +371,11 @@ void ServerApp::_DispatchMessage(int32 code, int8 *buffer)
|
|||||||
winlook, winfeel, winflags,this,win_port,workspace,htoken);
|
winlook, winfeel, winflags,this,win_port,workspace,htoken);
|
||||||
_winlist->AddItem(newwin);
|
_winlist->AddItem(newwin);
|
||||||
|
|
||||||
|
#ifdef DEBUG_SERVERAPP
|
||||||
|
printf("ServerApp %s: New Window %s (%.1f,%.1f,%.1f,%.1f)\n",
|
||||||
|
_signature.String(),(const char *)index,rect.left,rect.top,rect.right,rect.bottom);
|
||||||
|
#endif
|
||||||
|
|
||||||
// Window looper is waiting for our reply. Send back the
|
// Window looper is waiting for our reply. Send back the
|
||||||
// ServerWindow's message port
|
// ServerWindow's message port
|
||||||
PortLink *replylink=new PortLink(reply_port);
|
PortLink *replylink=new PortLink(reply_port);
|
||||||
@@ -383,6 +401,9 @@ void ServerApp::_DispatchMessage(int32 code, int8 *buffer)
|
|||||||
w=(ServerWindow*)_winlist->ItemAt(i);
|
w=(ServerWindow*)_winlist->ItemAt(i);
|
||||||
if(w->_token==winid)
|
if(w->_token==winid)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERAPP
|
||||||
|
printf("ServerApp %s: Deleting window %s\n",_signature.String(),w->Title());
|
||||||
|
#endif
|
||||||
_winlist->RemoveItem(w);
|
_winlist->RemoveItem(w);
|
||||||
delete w;
|
delete w;
|
||||||
break;
|
break;
|
||||||
@@ -419,6 +440,10 @@ void ServerApp::_DispatchMessage(int32 code, int8 *buffer)
|
|||||||
s.id=*((int32*)index);
|
s.id=*((int32*)index);
|
||||||
|
|
||||||
ServerBitmap *sbmp=bitmapmanager->CreateBitmap(r,cs,f,bpr,s);
|
ServerBitmap *sbmp=bitmapmanager->CreateBitmap(r,cs,f,bpr,s);
|
||||||
|
#ifdef DEBUG_SERVERAPP
|
||||||
|
printf("ServerApp %s: Create Bitmap (%.1f,%.1f,%.1f,%.1f)\n",
|
||||||
|
_signature.String(),r.left,r.top,r.right,r.bottom);
|
||||||
|
#endif
|
||||||
if(sbmp)
|
if(sbmp)
|
||||||
{
|
{
|
||||||
// list for doing faster lookups for a bitmap than what the BitmapManager
|
// list for doing faster lookups for a bitmap than what the BitmapManager
|
||||||
@@ -453,6 +478,9 @@ void ServerApp::_DispatchMessage(int32 code, int8 *buffer)
|
|||||||
ServerBitmap *sbmp=_FindBitmap(*((int32*)index));
|
ServerBitmap *sbmp=_FindBitmap(*((int32*)index));
|
||||||
if(sbmp)
|
if(sbmp)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERAPP
|
||||||
|
printf("ServerApp %s: Deleting Bitmap %ld\n",_signature.String(),*((int32*)index));
|
||||||
|
#endif
|
||||||
_bmplist->RemoveItem(sbmp);
|
_bmplist->RemoveItem(sbmp);
|
||||||
bitmapmanager->DeleteBitmap(sbmp);
|
bitmapmanager->DeleteBitmap(sbmp);
|
||||||
write_port(replyport,SERVER_TRUE,NULL,0);
|
write_port(replyport,SERVER_TRUE,NULL,0);
|
||||||
@@ -464,18 +492,34 @@ void ServerApp::_DispatchMessage(int32 code, int8 *buffer)
|
|||||||
}
|
}
|
||||||
case AS_CREATE_PICTURE:
|
case AS_CREATE_PICTURE:
|
||||||
{
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERAPP
|
||||||
|
printf("ServerApp %s: Create Picture unimplemented\n",_signature.String());
|
||||||
|
#endif
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case AS_DELETE_PICTURE:
|
case AS_DELETE_PICTURE:
|
||||||
{
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERAPP
|
||||||
|
printf("ServerApp %s: Delete Picture unimplemented\n",_signature.String());
|
||||||
|
#endif
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case AS_CLONE_PICTURE:
|
case AS_CLONE_PICTURE:
|
||||||
{
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERAPP
|
||||||
|
printf("ServerApp %s: Clone Picture unimplemented\n",_signature.String());
|
||||||
|
#endif
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case AS_DOWNLOAD_PICTURE:
|
case AS_DOWNLOAD_PICTURE:
|
||||||
{
|
{
|
||||||
|
// TODO; Implement
|
||||||
|
#ifdef DEBUG_SERVERAPP
|
||||||
|
printf("ServerApp %s: Download Picture unimplemented\n",_signature.String());
|
||||||
|
#endif
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case AS_SET_SCREEN_MODE:
|
case AS_SET_SCREEN_MODE:
|
||||||
@@ -487,6 +531,9 @@ void ServerApp::_DispatchMessage(int32 code, int8 *buffer)
|
|||||||
int32 workspace=*((int32*)index); index+=sizeof(int32);
|
int32 workspace=*((int32*)index); index+=sizeof(int32);
|
||||||
uint32 mode=*((uint32*)index); index+=sizeof(uint32);
|
uint32 mode=*((uint32*)index); index+=sizeof(uint32);
|
||||||
|
|
||||||
|
#ifdef DEBUG_SERVERAPP
|
||||||
|
printf("ServerApp %s: SetScreenMode: workspace %ld, mode %lu\n",_signature.String(), workspace, mode);
|
||||||
|
#endif
|
||||||
SetSpace(workspace,mode,*((bool*)index));
|
SetSpace(workspace,mode,*((bool*)index));
|
||||||
|
|
||||||
break;
|
break;
|
||||||
@@ -505,23 +552,35 @@ void ServerApp::_DispatchMessage(int32 code, int8 *buffer)
|
|||||||
// call the CursorManager's version to allow for future expansion
|
// call the CursorManager's version to allow for future expansion
|
||||||
case AS_SHOW_CURSOR:
|
case AS_SHOW_CURSOR:
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERAPP
|
||||||
|
printf("ServerApp %s: Show Cursor\n",_signature.String());
|
||||||
|
#endif
|
||||||
cursormanager->ShowCursor();
|
cursormanager->ShowCursor();
|
||||||
_cursorhidden=false;
|
_cursorhidden=false;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case AS_HIDE_CURSOR:
|
case AS_HIDE_CURSOR:
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERAPP
|
||||||
|
printf("ServerApp %s: Hide Cursor\n",_signature.String());
|
||||||
|
#endif
|
||||||
cursormanager->HideCursor();
|
cursormanager->HideCursor();
|
||||||
_cursorhidden=true;
|
_cursorhidden=true;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case AS_OBSCURE_CURSOR:
|
case AS_OBSCURE_CURSOR:
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERAPP
|
||||||
|
printf("ServerApp %s: Obscure Cursor\n",_signature.String());
|
||||||
|
#endif
|
||||||
cursormanager->ObscureCursor();
|
cursormanager->ObscureCursor();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case AS_QUERY_CURSOR_HIDDEN:
|
case AS_QUERY_CURSOR_HIDDEN:
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERAPP
|
||||||
|
printf("ServerApp %s: Query Cursor Hidden\n",_signature.String());
|
||||||
|
#endif
|
||||||
// Attached data
|
// Attached data
|
||||||
// 1) int32 port to reply to
|
// 1) int32 port to reply to
|
||||||
write_port(*((port_id*)index),(_cursorhidden)?SERVER_TRUE:SERVER_FALSE,NULL,0);
|
write_port(*((port_id*)index),(_cursorhidden)?SERVER_TRUE:SERVER_FALSE,NULL,0);
|
||||||
@@ -529,6 +588,9 @@ void ServerApp::_DispatchMessage(int32 code, int8 *buffer)
|
|||||||
}
|
}
|
||||||
case AS_SET_CURSOR_DATA:
|
case AS_SET_CURSOR_DATA:
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERAPP
|
||||||
|
printf("ServerApp %s: SetCursor(cursor data *)\n",_signature.String());
|
||||||
|
#endif
|
||||||
// Attached data: 68 bytes of _appcursor data
|
// Attached data: 68 bytes of _appcursor data
|
||||||
|
|
||||||
int8 cdata[68];
|
int8 cdata[68];
|
||||||
@@ -549,6 +611,9 @@ void ServerApp::_DispatchMessage(int32 code, int8 *buffer)
|
|||||||
}
|
}
|
||||||
case AS_SET_CURSOR_BCURSOR:
|
case AS_SET_CURSOR_BCURSOR:
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERAPP
|
||||||
|
printf("ServerApp %s: SetCursor(BCursor)\n",_signature.String());
|
||||||
|
#endif
|
||||||
// Attached data:
|
// Attached data:
|
||||||
// 1) port_id reply port
|
// 1) port_id reply port
|
||||||
// 2) 68 bytes of _appcursor data
|
// 2) 68 bytes of _appcursor data
|
||||||
@@ -573,8 +638,9 @@ void ServerApp::_DispatchMessage(int32 code, int8 *buffer)
|
|||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
{
|
{
|
||||||
printf("ServerApp %s received unhandled message code %lx\n",
|
#ifdef DEBUG_SERVERAPP
|
||||||
_signature.String(),code);
|
printf("ServerApp %s received unhandled message code %lx\n",_signature.String(),code);
|
||||||
|
#endif
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -40,6 +40,14 @@
|
|||||||
#include "DesktopClasses.h"
|
#include "DesktopClasses.h"
|
||||||
#include "TokenHandler.h"
|
#include "TokenHandler.h"
|
||||||
|
|
||||||
|
//#define DEBUG_SERVERWINDOW
|
||||||
|
//#define DEBUG_SERVERWINDOW_MOUSE
|
||||||
|
//#define DEBUG_SERVERWINDOW_KEYBOARD
|
||||||
|
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
#include <stdio.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
//! Handler to get BWindow tokens from
|
//! Handler to get BWindow tokens from
|
||||||
TokenHandler win_token_handler;
|
TokenHandler win_token_handler;
|
||||||
|
|
||||||
@@ -85,11 +93,20 @@ ServerWindow::ServerWindow(BRect rect, const char *string, uint32 wlook,
|
|||||||
_token=win_token_handler.GetToken();
|
_token=win_token_handler.GetToken();
|
||||||
|
|
||||||
AddWindowToDesktop(this,index);
|
AddWindowToDesktop(this,index);
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s:\n",_title->String());
|
||||||
|
printf("\tFrame (%.1f,%.1f,%.1f,%.1f)\n",rect.left,rect.top,rect.right,rect.bottom);
|
||||||
|
printf("\tPort: %ld\n",_receiver);
|
||||||
|
printf("\tWorkspace: %ld\n",index);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
//!Tears down all connections with the user application, kills the monitoring thread.
|
//!Tears down all connections with the user application, kills the monitoring thread.
|
||||||
ServerWindow::~ServerWindow(void)
|
ServerWindow::~ServerWindow(void)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s:~ServerWindow()\n",_title->String());
|
||||||
|
#endif
|
||||||
RemoveWindowFromDesktop(this);
|
RemoveWindowFromDesktop(this);
|
||||||
if(_applink)
|
if(_applink)
|
||||||
{
|
{
|
||||||
@@ -110,6 +127,9 @@ ServerWindow::~ServerWindow(void)
|
|||||||
*/
|
*/
|
||||||
void ServerWindow::RequestDraw(BRect rect)
|
void ServerWindow::RequestDraw(BRect rect)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Request Draw\n",_title->String());
|
||||||
|
#endif
|
||||||
_winlink->SetOpCode(AS_LAYER_DRAW);
|
_winlink->SetOpCode(AS_LAYER_DRAW);
|
||||||
_winlink->Attach(&rect,sizeof(BRect));
|
_winlink->Attach(&rect,sizeof(BRect));
|
||||||
_winlink->Flush();
|
_winlink->Flush();
|
||||||
@@ -124,12 +144,18 @@ void ServerWindow::RequestDraw(void)
|
|||||||
//! Forces the window border to update its decorator
|
//! Forces the window border to update its decorator
|
||||||
void ServerWindow::ReplaceDecorator(void)
|
void ServerWindow::ReplaceDecorator(void)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Replace Decorator\n",_title->String());
|
||||||
|
#endif
|
||||||
_winborder->UpdateDecorator();
|
_winborder->UpdateDecorator();
|
||||||
}
|
}
|
||||||
|
|
||||||
//! Requests that the ServerWindow's BWindow quit
|
//! Requests that the ServerWindow's BWindow quit
|
||||||
void ServerWindow::Quit(void)
|
void ServerWindow::Quit(void)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Quit\n",_title->String());
|
||||||
|
#endif
|
||||||
_winlink->SetOpCode(B_QUIT_REQUESTED);
|
_winlink->SetOpCode(B_QUIT_REQUESTED);
|
||||||
_winlink->Flush();
|
_winlink->Flush();
|
||||||
}
|
}
|
||||||
@@ -155,6 +181,9 @@ ServerApp *ServerWindow::GetApp(void)
|
|||||||
//! Shows the window's WinBorder
|
//! Shows the window's WinBorder
|
||||||
void ServerWindow::Show(void)
|
void ServerWindow::Show(void)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Show\n",_title->String());
|
||||||
|
#endif
|
||||||
if(_winborder)
|
if(_winborder)
|
||||||
_winborder->Show();
|
_winborder->Show();
|
||||||
}
|
}
|
||||||
@@ -162,6 +191,9 @@ void ServerWindow::Show(void)
|
|||||||
//! Hides the window's WinBorder
|
//! Hides the window's WinBorder
|
||||||
void ServerWindow::Hide(void)
|
void ServerWindow::Hide(void)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Hide\n",_title->String());
|
||||||
|
#endif
|
||||||
if(_winborder)
|
if(_winborder)
|
||||||
_winborder->Hide();
|
_winborder->Hide();
|
||||||
}
|
}
|
||||||
@@ -184,6 +216,9 @@ bool ServerWindow::IsHidden(void)
|
|||||||
*/
|
*/
|
||||||
void ServerWindow::SetFocus(bool value)
|
void ServerWindow::SetFocus(bool value)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Set Focus to %s\n",_title->String(),value?"true":"false");
|
||||||
|
#endif
|
||||||
if(_active!=value)
|
if(_active!=value)
|
||||||
{
|
{
|
||||||
_active=value;
|
_active=value;
|
||||||
@@ -207,6 +242,9 @@ bool ServerWindow::HasFocus(void)
|
|||||||
*/
|
*/
|
||||||
void ServerWindow::WorkspaceActivated(int32 workspace, bool active)
|
void ServerWindow::WorkspaceActivated(int32 workspace, bool active)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: WorkspaceActivated unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
// TODO: implement
|
// TODO: implement
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -217,6 +255,9 @@ void ServerWindow::WorkspaceActivated(int32 workspace, bool active)
|
|||||||
*/
|
*/
|
||||||
void ServerWindow::WorkspacesChanged(int32 oldone,int32 newone)
|
void ServerWindow::WorkspacesChanged(int32 oldone,int32 newone)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: WorkspaceChanged unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
// TODO: implement
|
// TODO: implement
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -226,6 +267,9 @@ void ServerWindow::WorkspacesChanged(int32 oldone,int32 newone)
|
|||||||
*/
|
*/
|
||||||
void ServerWindow::WindowActivated(bool active)
|
void ServerWindow::WindowActivated(bool active)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: WindowActivated unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
// TODO: implement
|
// TODO: implement
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -236,6 +280,9 @@ void ServerWindow::WindowActivated(bool active)
|
|||||||
*/
|
*/
|
||||||
void ServerWindow::ScreenModeChanged(const BRect frame, const color_space cspace)
|
void ServerWindow::ScreenModeChanged(const BRect frame, const color_space cspace)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: ScreenModeChanged unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
// TODO: implement
|
// TODO: implement
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -245,6 +292,10 @@ void ServerWindow::ScreenModeChanged(const BRect frame, const color_space cspace
|
|||||||
*/
|
*/
|
||||||
void ServerWindow::SetFrame(const BRect &rect)
|
void ServerWindow::SetFrame(const BRect &rect)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Set Frame to (%.1f,%.1f,%.1f,%.1f)\n",_title->String(),
|
||||||
|
rect.left,rect.top,rect.right,rect.bottom);
|
||||||
|
#endif
|
||||||
_frame=rect;
|
_frame=rect;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -263,12 +314,18 @@ BRect ServerWindow::Frame(void)
|
|||||||
*/
|
*/
|
||||||
status_t ServerWindow::Lock(void)
|
status_t ServerWindow::Lock(void)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Lock\n",_title->String());
|
||||||
|
#endif
|
||||||
return (_locker.Lock())?B_OK:B_ERROR;
|
return (_locker.Lock())?B_OK:B_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
//! Unlocks the window
|
//! Unlocks the window
|
||||||
void ServerWindow::Unlock(void)
|
void ServerWindow::Unlock(void)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Unlock\n",_title->String());
|
||||||
|
#endif
|
||||||
_locker.Unlock();
|
_locker.Unlock();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -303,6 +360,9 @@ void ServerWindow::DispatchMessage(int32 code, int8 *msgbuffer)
|
|||||||
// so the BView can identify itself
|
// so the BView can identify itself
|
||||||
|
|
||||||
// TODO: Implement
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Create_Layer unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -317,6 +377,9 @@ void ServerWindow::DispatchMessage(int32 code, int8 *msgbuffer)
|
|||||||
// 1) (int32) id of the removed view
|
// 1) (int32) id of the removed view
|
||||||
|
|
||||||
// TODO: Implement
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Delete_Layer unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -331,27 +394,173 @@ void ServerWindow::DispatchMessage(int32 code, int8 *msgbuffer)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case AS_SEND_BEHIND:
|
case AS_SEND_BEHIND:
|
||||||
case AS_ENABLE_UPDATES:
|
{
|
||||||
case AS_DISABLE_UPDATES:
|
// TODO: Implement
|
||||||
case AS_NEEDS_UPDATE:
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
case AS_WINDOW_TITLE:
|
printf("ServerWindow %s: Message Send_Behind unimplemented\n",_title->String());
|
||||||
case AS_ADD_TO_SUBSET:
|
#endif
|
||||||
case AS_REM_FROM_SUBSET:
|
|
||||||
case AS_SET_LOOK:
|
|
||||||
case AS_SET_FLAGS:
|
|
||||||
case AS_SET_FEEL:
|
|
||||||
case AS_SET_ALIGNMENT:
|
|
||||||
case AS_GET_ALIGNMENT:
|
|
||||||
case AS_GET_WORKSPACES:
|
|
||||||
case AS_SET_WORKSPACES:
|
|
||||||
case AS_WINDOW_RESIZEBY:
|
|
||||||
case AS_WINDOW_RESIZETO:
|
|
||||||
case B_MINIMIZE:
|
|
||||||
case B_WINDOW_ACTIVATED:
|
|
||||||
case B_ZOOM:
|
|
||||||
case B_WINDOW_MOVE_TO:
|
|
||||||
case B_WINDOW_MOVE_BY:
|
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
|
case AS_ENABLE_UPDATES:
|
||||||
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Enable_Updates unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case AS_DISABLE_UPDATES:
|
||||||
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Disable_Updates unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case AS_NEEDS_UPDATE:
|
||||||
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Needs_Update unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case AS_WINDOW_TITLE:
|
||||||
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Set_Title unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case AS_ADD_TO_SUBSET:
|
||||||
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Add_To_Subset unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case AS_REM_FROM_SUBSET:
|
||||||
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Remove_From_Subset unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case AS_SET_LOOK:
|
||||||
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Set_Look unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case AS_SET_FLAGS:
|
||||||
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Set_Flags unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case AS_SET_FEEL:
|
||||||
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Set_Feel unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case AS_SET_ALIGNMENT:
|
||||||
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Set_Alignment unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case AS_GET_ALIGNMENT:
|
||||||
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Get_Alignment unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case AS_GET_WORKSPACES:
|
||||||
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Get_Workspaces unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case AS_SET_WORKSPACES:
|
||||||
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Set_Workspaces unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case AS_WINDOW_RESIZEBY:
|
||||||
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Resize_By unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case AS_WINDOW_RESIZETO:
|
||||||
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Resize_To unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case B_MINIMIZE:
|
||||||
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Minimize unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case B_WINDOW_ACTIVATED:
|
||||||
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Window_Activated unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case B_ZOOM:
|
||||||
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Zoom unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case B_WINDOW_MOVE_TO:
|
||||||
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Move_To unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case B_WINDOW_MOVE_BY:
|
||||||
|
{
|
||||||
|
// TODO: Implement
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Message Move_By unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
{
|
{
|
||||||
printf("ServerWindow %s received unexpected code %lx",_title->String(),code);
|
printf("ServerWindow %s received unexpected code %lx",_title->String(),code);
|
||||||
@@ -403,6 +612,9 @@ int32 ServerWindow::MonitorWin(void *data)
|
|||||||
{
|
{
|
||||||
case B_QUIT_REQUESTED:
|
case B_QUIT_REQUESTED:
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s received Quit request\n",win->Title());
|
||||||
|
#endif
|
||||||
// Our BWindow sent us this message when it quit.
|
// Our BWindow sent us this message when it quit.
|
||||||
// We need to ask its ServerApp to delete our monitor
|
// We need to ask its ServerApp to delete our monitor
|
||||||
win->_applink->SetOpCode(AS_DELETE_WINDOW);
|
win->_applink->SetOpCode(AS_DELETE_WINDOW);
|
||||||
@@ -440,6 +652,9 @@ int32 ServerWindow::MonitorWin(void *data)
|
|||||||
*/
|
*/
|
||||||
void ServerWindow::HandleMouseEvent(int32 code, int8 *buffer)
|
void ServerWindow::HandleMouseEvent(int32 code, int8 *buffer)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERWINDOW_MOUSE
|
||||||
|
printf("ServerWindow::HandleMouseEvent unimplemented\n");
|
||||||
|
#endif
|
||||||
/* ServerWindow *mousewin=NULL;
|
/* ServerWindow *mousewin=NULL;
|
||||||
int8 *index=buffer;
|
int8 *index=buffer;
|
||||||
|
|
||||||
@@ -563,6 +778,9 @@ void ServerWindow::HandleMouseEvent(int32 code, int8 *buffer)
|
|||||||
*/
|
*/
|
||||||
void ServerWindow::HandleKeyEvent(int32 code, int8 *buffer)
|
void ServerWindow::HandleKeyEvent(int32 code, int8 *buffer)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERWINDOW_KEYBOARD
|
||||||
|
printf("ServerWindow::HandleKeyEvent unimplemented\n");
|
||||||
|
#endif
|
||||||
/* ServerWindow *keywin=NULL;
|
/* ServerWindow *keywin=NULL;
|
||||||
int8 *index=buffer;
|
int8 *index=buffer;
|
||||||
|
|
||||||
@@ -589,6 +807,9 @@ Workspace *ServerWindow::GetWorkspace(void)
|
|||||||
*/
|
*/
|
||||||
void ServerWindow::SetWorkspace(Workspace *wkspc)
|
void ServerWindow::SetWorkspace(Workspace *wkspc)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ServerWindow %s: Set Workspace\n",_title->String());
|
||||||
|
#endif
|
||||||
_workspace=wkspc;
|
_workspace=wkspc;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -597,6 +818,9 @@ void ServerWindow::SetWorkspace(Workspace *wkspc)
|
|||||||
*/
|
*/
|
||||||
void ActivateWindow(ServerWindow *oldwin,ServerWindow *newwin)
|
void ActivateWindow(ServerWindow *oldwin,ServerWindow *newwin)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_SERVERWINDOW
|
||||||
|
printf("ActivateWindow: old=%s, new=%s\n",oldwin?oldwin->Title():"NULL",newwin?newwin->Title():"NULL");
|
||||||
|
#endif
|
||||||
if(oldwin==newwin)
|
if(oldwin==newwin)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
|||||||
@@ -95,9 +95,12 @@ public:
|
|||||||
Workspace *GetWorkspace(void);
|
Workspace *GetWorkspace(void);
|
||||||
void SetWorkspace(Workspace *wkspc);
|
void SetWorkspace(Workspace *wkspc);
|
||||||
|
|
||||||
|
//! Returns the window's title
|
||||||
|
const char *Title(void) { return _title->String(); }
|
||||||
protected:
|
protected:
|
||||||
friend ServerApp;
|
friend ServerApp;
|
||||||
friend WinBorder;
|
friend WinBorder;
|
||||||
|
friend class Screen;
|
||||||
|
|
||||||
BString *_title;
|
BString *_title;
|
||||||
int32 _look, _feel, _flags;
|
int32 _look, _feel, _flags;
|
||||||
|
|||||||
@@ -8,11 +8,16 @@
|
|||||||
This SendMessage takes ownership of the message sent, so deleting them after this
|
This SendMessage takes ownership of the message sent, so deleting them after this
|
||||||
call is unnecessary. Passing an invalid port will have unpredictable results.
|
call is unnecessary. Passing an invalid port will have unpredictable results.
|
||||||
*/
|
*/
|
||||||
void SendMessage(port_id port, BMessage *message)
|
void SendMessage(port_id port, BMessage *message, int32 target)
|
||||||
{
|
{
|
||||||
if(!message)
|
if(!message)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
if(target==-1)
|
||||||
|
_set_message_target_(message,target,true);
|
||||||
|
else
|
||||||
|
_set_message_target_(message,target,false);
|
||||||
|
|
||||||
ssize_t flatsize=message->FlattenedSize();
|
ssize_t flatsize=message->FlattenedSize();
|
||||||
char *buffer=new char[flatsize];
|
char *buffer=new char[flatsize];
|
||||||
|
|
||||||
@@ -22,3 +27,34 @@ void SendMessage(port_id port, BMessage *message)
|
|||||||
delete buffer;
|
delete buffer;
|
||||||
delete message;
|
delete message;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
Below are friend functions for BMessage which currently are not in the Message.cpp
|
||||||
|
that we need to send messages to BLoopers and such. Placed here to allow compilation.
|
||||||
|
*/
|
||||||
|
void _set_message_target_(BMessage *msg, int32 target, bool preferred)
|
||||||
|
{
|
||||||
|
if (preferred)
|
||||||
|
{
|
||||||
|
msg->fTarget = -1;
|
||||||
|
msg->fPreferred = true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
msg->fTarget = target;
|
||||||
|
msg->fPreferred = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int32 _get_message_target_(BMessage *msg)
|
||||||
|
{
|
||||||
|
if (msg->fPreferred)
|
||||||
|
return -1;
|
||||||
|
else
|
||||||
|
return msg->fTarget;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool _use_preferred_target_(BMessage *msg)
|
||||||
|
{
|
||||||
|
return msg->fPreferred;
|
||||||
|
}
|
||||||
|
|||||||
@@ -4,6 +4,6 @@
|
|||||||
#include <Message.h>
|
#include <Message.h>
|
||||||
#include <OS.h>
|
#include <OS.h>
|
||||||
|
|
||||||
void SendMessage(port_id port, BMessage *message);
|
void SendMessage(port_id port, BMessage *message, int32 target=-1);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -37,6 +37,17 @@
|
|||||||
#include "WinBorder.h"
|
#include "WinBorder.h"
|
||||||
#include "AppServer.h" // for new_decorator()
|
#include "AppServer.h" // for new_decorator()
|
||||||
|
|
||||||
|
//#define DEBUG_WINBORDER
|
||||||
|
//#define DEBUG_WINBORDER_MOUSE
|
||||||
|
|
||||||
|
#ifdef DEBUG_WINBORDER
|
||||||
|
#include <stdio.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef DEBUG_WINBORDER_MOUSE
|
||||||
|
#include <stdio.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
namespace winborder_private
|
namespace winborder_private
|
||||||
{
|
{
|
||||||
bool is_moving_window=false;
|
bool is_moving_window=false;
|
||||||
@@ -55,7 +66,7 @@ WinBorder * get_active_winborder(void) { return winborder_private::active_winbor
|
|||||||
void set_active_winborder(WinBorder *win) { winborder_private::active_winborder=win; }
|
void set_active_winborder(WinBorder *win) { winborder_private::active_winborder=win; }
|
||||||
|
|
||||||
WinBorder::WinBorder(BRect r, const char *name, int32 look, int32 feel, int32 flags, ServerWindow *win)
|
WinBorder::WinBorder(BRect r, const char *name, int32 look, int32 feel, int32 flags, ServerWindow *win)
|
||||||
: Layer(r,name,0,flags,win)
|
: Layer(r,name,B_FOLLOW_NONE,flags,win)
|
||||||
{
|
{
|
||||||
_mbuttons=0;
|
_mbuttons=0;
|
||||||
_win=win;
|
_win=win;
|
||||||
@@ -70,15 +81,26 @@ WinBorder::WinBorder(BRect r, const char *name, int32 look, int32 feel, int32 fl
|
|||||||
_vresizewin=false;
|
_vresizewin=false;
|
||||||
|
|
||||||
_decorator=new_decorator(r,name,look,feel,flags,GetGfxDriver());
|
_decorator=new_decorator(r,name,look,feel,flags,GetGfxDriver());
|
||||||
|
#ifdef DEBUG_WINBORDER
|
||||||
|
printf("WinBorder %s:\n",_title->String());
|
||||||
|
printf("\tFrame: (%.1f,%.1f,%.1f,%.1f)\n",r.left,r.top,r.right,r.bottom);
|
||||||
|
printf("\tWindow %s\n",win?win->Title():"NULL");
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
WinBorder::~WinBorder(void)
|
WinBorder::~WinBorder(void)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_WINBORDER
|
||||||
|
printf("WinBorder %s:~WinBorder()\n",_title->String());
|
||||||
|
#endif
|
||||||
delete _title;
|
delete _title;
|
||||||
}
|
}
|
||||||
|
|
||||||
void WinBorder::MouseDown(int8 *buffer)
|
void WinBorder::MouseDown(int8 *buffer)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_WINBORDER_MOUSE
|
||||||
|
printf("WinBorder %s: MouseDown unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
/* _mbuttons=buttons;
|
/* _mbuttons=buttons;
|
||||||
kmodifiers=modifiers;
|
kmodifiers=modifiers;
|
||||||
click_type click=_decorator->Clicked(pt, _mbuttons, kmodifiers);
|
click_type click=_decorator->Clicked(pt, _mbuttons, kmodifiers);
|
||||||
@@ -150,6 +172,9 @@ void WinBorder::MouseDown(int8 *buffer)
|
|||||||
|
|
||||||
void WinBorder::MouseMoved(int8 *buffer)
|
void WinBorder::MouseMoved(int8 *buffer)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_WINBORDER_MOUSE
|
||||||
|
printf("WinBorder %s: MouseMoved unimplemented\n",_title->String());
|
||||||
|
#endif
|
||||||
/* _mbuttons=buttons;
|
/* _mbuttons=buttons;
|
||||||
kmodifiers=modifiers;
|
kmodifiers=modifiers;
|
||||||
click_type click=_decorator->Clicked(pt, _mbuttons, kmodifiers);
|
click_type click=_decorator->Clicked(pt, _mbuttons, kmodifiers);
|
||||||
@@ -238,6 +263,9 @@ void WinBorder::MouseMoved(int8 *buffer)
|
|||||||
|
|
||||||
void WinBorder::MouseUp(int8 *buffer)
|
void WinBorder::MouseUp(int8 *buffer)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_WINBORDER_MOUSE
|
||||||
|
printf("WinBorder %s: MouseUp unimplmented\n",_title->String());
|
||||||
|
#endif
|
||||||
/*
|
/*
|
||||||
_mbuttons=buttons;
|
_mbuttons=buttons;
|
||||||
kmodifiers=modifiers;
|
kmodifiers=modifiers;
|
||||||
@@ -285,6 +313,9 @@ void WinBorder::MouseUp(int8 *buffer)
|
|||||||
|
|
||||||
void WinBorder::Draw(BRect update_rect)
|
void WinBorder::Draw(BRect update_rect)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_WINBORDER
|
||||||
|
printf("WinBorder %s: Draw\n",_title->String());
|
||||||
|
#endif
|
||||||
if(_update && _visible!=NULL)
|
if(_update && _visible!=NULL)
|
||||||
_is_updating=true;
|
_is_updating=true;
|
||||||
|
|
||||||
@@ -296,6 +327,9 @@ void WinBorder::Draw(BRect update_rect)
|
|||||||
|
|
||||||
void WinBorder::RequestDraw(const BRect &r)
|
void WinBorder::RequestDraw(const BRect &r)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_WINBORDER
|
||||||
|
printf("WinBorder %s: RequestDraw\n",_title->String());
|
||||||
|
#endif
|
||||||
_decorator->Draw(r);
|
_decorator->Draw(r);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -333,16 +367,28 @@ void WinBorder::ResizeBy(float x, float y)
|
|||||||
|
|
||||||
void WinBorder::UpdateColors(void)
|
void WinBorder::UpdateColors(void)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_WINBORDER
|
||||||
|
printf("WinBorder %s: UpdateColors\n",_title->String());
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void WinBorder::UpdateDecorator(void)
|
void WinBorder::UpdateDecorator(void)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_WINBORDER
|
||||||
|
printf("WinBorder %s: UpdateDecorator\n",_title->String());
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void WinBorder::UpdateFont(void)
|
void WinBorder::UpdateFont(void)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_WINBORDER
|
||||||
|
printf("WinBorder %s: UpdateFont\n",_title->String());
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void WinBorder::UpdateScreen(void)
|
void WinBorder::UpdateScreen(void)
|
||||||
{
|
{
|
||||||
|
#ifdef DEBUG_WINBORDER
|
||||||
|
printf("WinBorder %s: UpdateScreen\n",_title->String());
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user