Workspace has a display_mode member where it stores the settings. Removed unused [Set]LocalSpace() methods, added Set/GetDisplayMode() methods

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14336 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Stefano Ceccherini
2005-10-08 16:44:28 +00:00
parent b961b59696
commit 85a1a67495
2 changed files with 69 additions and 83 deletions
+63 -74
View File
@@ -100,27 +100,14 @@ Workspace::Workspace(const int32 ID, const uint32 colorspace, const RGBColor& BG
{ {
STRACE(("New Workspace(%ld)\n", fID)); STRACE(("New Workspace(%ld)\n", fID));
fID = ID; fID = ID;
fSpace = colorspace;
fBottomItem = NULL; fBottomItem = NULL;
fTopItem = NULL; fTopItem = NULL;
fFocusItem = NULL; fFocusItem = NULL;
fFrontItem = NULL; fFrontItem = NULL;
fVirtualWidth=-1; memset(&fDisplayMode, 0, sizeof(fDisplayMode));
fVirtualHeight=-1; fDisplayMode.space = colorspace;
// TODO: find out more about good default values and init the structure to them
fDisplayTiming.pixel_clock=0;
fDisplayTiming.h_display=0;
fDisplayTiming.h_sync_start=0;
fDisplayTiming.h_sync_end=0;
fDisplayTiming.h_total=0;
fDisplayTiming.v_display=0;
fDisplayTiming.v_sync_start=0;
fDisplayTiming.v_sync_end=0;
fDisplayTiming.v_total=0;
fDisplayTiming.flags=0;
} }
//---------------------------------------------------------------------------------- //----------------------------------------------------------------------------------
@@ -1008,17 +995,19 @@ Workspace::ShowWinBorder(WinBorder *winBorder, bool userBusy)
} }
void status_t
Workspace::SetLocalSpace(const uint32 colorspace) Workspace::SetDisplayMode(const display_mode &mode)
{ {
fSpace = colorspace; fDisplayMode = mode;
return B_OK;
} }
uint32 status_t
Workspace::LocalSpace() const Workspace::GetDisplayMode(display_mode &mode) const
{ {
return fSpace; mode = fDisplayMode;
return B_OK;
} }
@@ -1060,39 +1049,39 @@ Workspace::GetSettings(const BMessage &msg)
return; return;
} }
if(container.FindInt32("timing_pixel_clock",(int32*)&fDisplayTiming.pixel_clock)!=B_OK) if(container.FindInt32("timing_pixel_clock",(int32*)&fDisplayMode.timing.pixel_clock) != B_OK)
fDisplayTiming.pixel_clock=25175; fDisplayMode.timing.pixel_clock=25175;
if(container.FindInt16("timing_h_display",(int16*)&fDisplayTiming.h_display)!=B_OK) if(container.FindInt16("timing_h_display",(int16*)&fDisplayMode.timing.h_display)!=B_OK)
fDisplayTiming.h_display=640; fDisplayMode.timing.h_display=640;
if(container.FindInt16("timing_h_sync_start",(int16*)&fDisplayTiming.h_sync_start)!=B_OK) if(container.FindInt16("timing_h_sync_start",(int16*)&fDisplayMode.timing.h_sync_start)!=B_OK)
fDisplayTiming.h_sync_start=656; fDisplayMode.timing.h_sync_start=656;
if(container.FindInt16("timing_h_sync_end",(int16*)&fDisplayTiming.h_sync_end)!=B_OK) if(container.FindInt16("timing_h_sync_end",(int16*)&fDisplayMode.timing.h_sync_end)!=B_OK)
fDisplayTiming.h_sync_end=752; fDisplayMode.timing.h_sync_end=752;
if(container.FindInt16("timing_h_total",(int16*)&fDisplayTiming.h_total)!=B_OK) if(container.FindInt16("timing_h_total",(int16*)&fDisplayMode.timing.h_total)!=B_OK)
fDisplayTiming.h_total=800; fDisplayMode.timing.h_total=800;
if(container.FindInt16("timing_v_display",(int16*)&fDisplayTiming.v_display)!=B_OK) if(container.FindInt16("timing_v_display",(int16*)&fDisplayMode.timing.v_display)!=B_OK)
fDisplayTiming.v_display=480; fDisplayMode.timing.v_display=480;
if(container.FindInt16("timing_v_sync_start",(int16*)&fDisplayTiming.v_sync_start)!=B_OK) if(container.FindInt16("timing_v_sync_start",(int16*)&fDisplayMode.timing.v_sync_start)!=B_OK)
fDisplayTiming.v_sync_start=490; fDisplayMode.timing.v_sync_start=490;
if(container.FindInt16("timing_v_sync_end",(int16*)&fDisplayTiming.v_sync_end)!=B_OK) if(container.FindInt16("timing_v_sync_end",(int16*)&fDisplayMode.timing.v_sync_end)!=B_OK)
fDisplayTiming.v_sync_end=492; fDisplayMode.timing.v_sync_end=492;
if(container.FindInt16("timing_v_total",(int16*)&fDisplayTiming.v_total)!=B_OK) if(container.FindInt16("timing_v_total",(int16*)&fDisplayMode.timing.v_total)!=B_OK)
fDisplayTiming.v_total=525; fDisplayMode.timing.v_total=525;
if(container.FindInt32("timing_flags",(int32*)&fDisplayTiming.flags)!=B_OK) if(container.FindInt32("timing_flags",(int32*)&fDisplayMode.timing.flags)!=B_OK)
fDisplayTiming.flags=0; fDisplayMode.timing.flags=0;
if(container.FindInt32("color_space",(int32*)&fSpace)!=B_OK) if(container.FindInt32("color_space", (int32*)&fDisplayMode.space) != B_OK)
fSpace=B_CMAP8; fDisplayMode.space = B_CMAP8;
if(container.FindData("bgcolor",B_RGB_COLOR_TYPE,(const void **)&color,&size)==B_OK) if(container.FindData("bgcolor",B_RGB_COLOR_TYPE,(const void **)&color,&size)==B_OK)
fBGColor.SetColor(*color); fBGColor.SetColor(*color);
else else
fBGColor.SetColor(0,0,0); fBGColor.SetColor(0,0,0);
if(container.FindInt16("virtual_width",&fVirtualWidth)!=B_OK) if(container.FindInt16("virtual_width", (int16 *)&fDisplayMode.virtual_width) != B_OK)
fVirtualWidth=640; fDisplayMode.virtual_width = 640;
if(container.FindInt16("virtual_height",&fVirtualHeight)!=B_OK) if(container.FindInt16("virtual_height", (int16 *)&fDisplayMode.virtual_height) != B_OK)
fVirtualHeight=480; fDisplayMode.virtual_height = 480;
} }
//---------------------------------------------------------------------------------- //----------------------------------------------------------------------------------
@@ -1101,20 +1090,20 @@ void Workspace::GetDefaultSettings(void)
{ {
fBGColor.SetColor(0,0,0); fBGColor.SetColor(0,0,0);
fDisplayTiming.pixel_clock=25175; fDisplayMode.timing.pixel_clock = 25175;
fDisplayTiming.h_display=640; fDisplayMode.timing.h_display = 640;
fDisplayTiming.h_sync_start=656; fDisplayMode.timing.h_sync_start = 656;
fDisplayTiming.h_sync_end=752; fDisplayMode.timing.h_sync_end = 752;
fDisplayTiming.h_total=800; fDisplayMode.timing.h_total = 800;
fDisplayTiming.v_display=480; fDisplayMode.timing.v_display = 480;
fDisplayTiming.v_sync_start=490; fDisplayMode.timing.v_sync_start = 490;
fDisplayTiming.v_sync_end=492; fDisplayMode.timing.v_sync_end = 492;
fDisplayTiming.v_total=525; fDisplayMode.timing.v_total = 525;
fDisplayTiming.flags=0; fDisplayMode.timing.flags = 0;
fSpace=B_CMAP8; fDisplayMode.space = B_CMAP8;
fVirtualWidth=640; fDisplayMode.virtual_width = 640;
fVirtualHeight=480; fDisplayMode.virtual_height = 480;
} }
//---------------------------------------------------------------------------------- //----------------------------------------------------------------------------------
@@ -1146,22 +1135,22 @@ void Workspace::PutSettings(BMessage *msg, const uint8 &index) const
// a little longer than we need in case someone tries to pass index=255 or something // a little longer than we need in case someone tries to pass index=255 or something
char fieldname[4]; char fieldname[4];
container.AddInt32("timing_pixel_clock",fDisplayTiming.pixel_clock); container.AddInt32("timing_pixel_clock",fDisplayMode.timing.pixel_clock);
container.AddInt16("timing_h_display",fDisplayTiming.h_display); container.AddInt16("timing_h_display",fDisplayMode.timing.h_display);
container.AddInt16("timing_h_sync_start",fDisplayTiming.h_sync_start); container.AddInt16("timing_h_sync_start",fDisplayMode.timing.h_sync_start);
container.AddInt16("timing_h_sync_end",fDisplayTiming.h_sync_end); container.AddInt16("timing_h_sync_end",fDisplayMode.timing.h_sync_end);
container.AddInt16("timing_h_total",fDisplayTiming.h_total); container.AddInt16("timing_h_total",fDisplayMode.timing.h_total);
container.AddInt16("timing_v_display",fDisplayTiming.v_display); container.AddInt16("timing_v_display",fDisplayMode.timing.v_display);
container.AddInt16("timing_v_sync_start",fDisplayTiming.v_sync_start); container.AddInt16("timing_v_sync_start",fDisplayMode.timing.v_sync_start);
container.AddInt16("timing_v_sync_end",fDisplayTiming.v_sync_end); container.AddInt16("timing_v_sync_end",fDisplayMode.timing.v_sync_end);
container.AddInt16("timing_v_total",fDisplayTiming.v_total); container.AddInt16("timing_v_total",fDisplayMode.timing.v_total);
container.AddInt32("timing_flags",fDisplayTiming.flags); container.AddInt32("timing_flags",fDisplayMode.timing.flags);
container.AddInt32("color_space",fSpace); container.AddInt32("color_space", fDisplayMode.space);
container.AddData("bgcolor",B_RGB_COLOR_TYPE,&color,sizeof(rgb_color)); container.AddData("bgcolor", B_RGB_COLOR_TYPE, &color, sizeof(rgb_color));
container.AddInt16("virtual_width",fVirtualWidth); container.AddInt16("virtual_width", fDisplayMode.virtual_width);
container.AddInt16("virtual_height",fVirtualHeight); container.AddInt16("virtual_height", fDisplayMode.virtual_height);
sprintf(fieldname,"%d",index); sprintf(fieldname,"%d",index);
+4 -7
View File
@@ -86,8 +86,8 @@ class Workspace {
bool ShowWinBorder(WinBorder *winBorder, bool userBusy = false); bool ShowWinBorder(WinBorder *winBorder, bool userBusy = false);
// resolution related methods. // resolution related methods.
void SetLocalSpace(const uint32 colorspace); status_t SetDisplayMode(const display_mode &mode);
uint32 LocalSpace(void) const; status_t GetDisplayMode(display_mode &mode) const;
void SetBGColor(const RGBColor &c); void SetBGColor(const RGBColor &c);
RGBColor BGColor(void) const; RGBColor BGColor(void) const;
@@ -141,7 +141,6 @@ private:
}; };
int32 fID; int32 fID;
uint32 fSpace;
RGBColor fBGColor; RGBColor fBGColor;
// first visible onscreen // first visible onscreen
@@ -156,10 +155,8 @@ private:
// pointer for which "big" actions are intended // pointer for which "big" actions are intended
ListData *fFrontItem; ListData *fFrontItem;
// settings for each workspace -- example taken from R5's app_server_settings file // settings for each workspace
display_timing fDisplayTiming; display_mode fDisplayMode;
int16 fVirtualWidth;
int16 fVirtualHeight;
MemoryPool fPool; MemoryPool fPool;
}; };