Added FrontWinBorder(). Made FocusWinBorder() and a few other methods inline.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12075 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Adi Oanca 2005-03-27 12:58:27 +00:00
parent ab88eaf2ad
commit 2401f93d84
2 changed files with 95 additions and 100 deletions

View File

@ -804,11 +804,6 @@ WinBorder* RootLayer::WinBorderAt(const BPoint& pt) const{
return NULL;
}
WinBorder* RootLayer::FocusWinBorder() const
{
return ActiveWorkspace()->Focus();
}
void RootLayer::SetScreens(Screen *screen[], int32 rows, int32 columns)
{
// NOTE: All screens *must* have the same resolution

View File

@ -35,9 +35,9 @@
#include "FMWList.h"
#include "CursorHandler.h"
#include "CursorManager.h"
#include "Workspace.h"
class RGBColor;
class Workspace;
class Screen;
class WinBorder;
class Desktop;
@ -55,37 +55,38 @@ class BPortLink;
class RootLayer : public Layer
{
public:
RootLayer(const char *name, int32 workspaceCount, Desktop *desktop,
DisplayDriver *driver);
RootLayer(const char *name, int32 workspaceCount,
Desktop *desktop, DisplayDriver *driver);
virtual ~RootLayer(void);
virtual void MoveBy(float x, float y);
virtual void ResizeBy(float x, float y);
// For the active workspaces
virtual Layer *VirtualTopChild(void) const;
virtual Layer *VirtualLowerSibling(void) const;
virtual Layer *VirtualUpperSibling(void) const;
virtual Layer *VirtualBottomChild(void) const;
virtual Layer* VirtualTopChild(void) const;
virtual Layer* VirtualLowerSibling(void) const;
virtual Layer* VirtualUpperSibling(void) const;
virtual Layer* VirtualBottomChild(void) const;
void HideWinBorder(WinBorder* winBorder);
void ShowWinBorder(WinBorder* winBorder);
void SetWinBorderWorskpaces(WinBorder *winBorder, uint32 newWksIndex);
WinBorder* WinBorderAt(const BPoint& pt) const;
WinBorder* FocusWinBorder() const;
inline WinBorder* FocusWinBorder() const { return fWorkspace[fActiveWksIndex]->Focus(); }
inline WinBorder* FrontWinBorder() const { return fWorkspace[fActiveWksIndex]->Front(); }
void SetWorkspaceCount(int32 wksCount);
int32 WorkspaceCount() const { return fWsCount; }
Workspace* WorkspaceAt(int32 index) const { return fWorkspace[index]; }
Workspace* ActiveWorkspace() const { return fWorkspace[fActiveWksIndex]; }
int32 ActiveWorkspaceIndex() const { return fActiveWksIndex; }
inline void SetWorkspaceCount(int32 wksCount);
inline int32 WorkspaceCount() const { return fWsCount; }
inline Workspace* WorkspaceAt(int32 index) const { return fWorkspace[index]; }
inline Workspace* ActiveWorkspace() const { return fWorkspace[fActiveWksIndex]; }
inline int32 ActiveWorkspaceIndex() const { return fActiveWksIndex; }
void SetActiveWorkspace(int32 index);
void ReadWorkspaceData(const char *path);
void SaveWorkspaceData(const char *path);
void SetScreens(Screen *screen[], int32 rows, int32 columns);
Screen **Screens(void);
Screen** Screens(void);
bool SetScreenResolution(int32 width, int32 height, uint32 colorspace);
int32 ScreenRows(void) const { return fRows; }
int32 ScreenColumns(void) const { return fColumns; }
@ -93,13 +94,11 @@ public:
void SetBGColor(const RGBColor &col);
RGBColor BGColor(void) const;
int32 Buttons(void) { return fButtons; }
inline int32 Buttons(void) { return fButtons; }
virtual bool HasClient(void) { return false; }
void AddWinBorderToWorkspaces(WinBorder *winBorder, uint32 wks);
void SetDragMessage(BMessage *msg);
BMessage *DragMessage(void) const;
BMessage* DragMessage(void) const;
static int32 WorkingThread(void *data);
@ -123,6 +122,7 @@ public:
private:
friend class Desktop;
// these are meant for Desktop class only!
void AddWinBorder(WinBorder* winBorder);
void RemoveWinBorder(WinBorder* winBorder);