From: <ma...@us...> - 2003-12-25 02:19:00
|
Update of /cvsroot/sharedaemon/ui-wx/src In directory sc8-pr-cvs1:/tmp/cvs-serv30385 Modified Files: Images.cpp Images.h MBitmapButton.cpp MBitmapButton.h Log Message: Hopefully fixed wxMac issues reported by Xavi Index: Images.cpp =================================================================== RCS file: /cvsroot/sharedaemon/ui-wx/src/Images.cpp,v retrieving revision 1.42 retrieving revision 1.43 diff -u -d -r1.42 -r1.43 --- Images.cpp 22 Dec 2003 21:54:16 -0000 1.42 +++ Images.cpp 25 Dec 2003 02:18:57 -0000 1.43 @@ -295,19 +295,18 @@ tmp_new = wxBitmap(tool_img_width, tool_img_height); mdc.SelectObject(tmp_new); - mdc.SetTextForeground(wxColour(10, 10, 10)); #ifdef __WXMAC__ - mdc.SetFont(wxFont(10, wxDEFAULT, wxNORMAL, wxNORMAL)); + mdc.SetFont(wxSystemSettings::GetFont(wxSYS_SYSTEM_FONT)); #else mdc.SetFont(wxFont(10, wxDECORATIVE, wxNORMAL, wxBOLD)); #endif + mdc.SetPen(*wxTRANSPARENT_PEN); mdc.BeginDrawing(); #ifdef __WXMSW__ /* This gives transparent image on wxMSW */ - mdc.SetPen(*wxTRANSPARENT_PEN); - mdc.SetBrush(wxBrush(*wxLIGHT_GREY, wxSOLID)); + mdc.SetBrush(wxBrush(*wxLIGHT_GREY, wxSOLID)); #else /* Elsewhere, it will be done with wxMask later */ - mdc.SetBrush(wxBrush(wxColour(0, 0, 0), wxSOLID)); + mdc.SetBrush(wxBrush(wxColour(0, 0, 0), wxSOLID)); #endif mdc.DrawRectangle( 0, 0, tmp_new.GetWidth(), tmp_new.GetHeight() @@ -316,11 +315,11 @@ GetImage(image), (tmp_new.GetWidth()-32)/2, 2, true ); - mdc.SetTextForeground(wxColour(1,1,1)); + mdc.SetTextForeground(wxColour(50, 50, 50)); mdc.GetTextExtent(name, &x, &y); mdc.DrawText(name, (tmp_new.GetWidth()-x)/2, 36); #ifndef __WXMSW__ /* Use wxMask for transparency */ - wxMask *tmp_mask; + wxMask *tmp_mask; tmp_mask = new wxMask(tmp_new, wxColour(0,0,0)); tmp_new.SetMask(tmp_mask); #endif Index: Images.h =================================================================== RCS file: /cvsroot/sharedaemon/ui-wx/src/Images.h,v retrieving revision 1.19 retrieving revision 1.20 diff -u -d -r1.19 -r1.20 --- Images.h 22 Dec 2003 01:55:10 -0000 1.19 +++ Images.h 25 Dec 2003 02:18:57 -0000 1.20 @@ -44,7 +44,7 @@ void UpdateImages(wxWindow *parent); void CalcToolBitmapSize(const wxArrayString &names); private: - ListOfBitmaps images; + ListOfBitmaps images; wxString MakePath(); }; Index: MBitmapButton.cpp =================================================================== RCS file: /cvsroot/sharedaemon/ui-wx/src/MBitmapButton.cpp,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- MBitmapButton.cpp 24 Dec 2003 07:34:10 -0000 1.7 +++ MBitmapButton.cpp 25 Dec 2003 02:18:57 -0000 1.8 @@ -114,7 +114,7 @@ wxBitmap *tmp; wxCoord x, y; mdc.SelectObject(wxBitmap(100, 100)); - mdc.SetFont(wxFont(BTN_FONT_SIZE, wxDEFAULT, wxNORMAL, wxNORMAL)); + mdc.SetFont(wxSystemSettings::GetFont(wxSYS_SYSTEM_FONT)); mdc.GetTextExtent(name, &x, &y); x+=image.GetWidth()+LABEL_WIDTH_ADDITION; @@ -123,9 +123,8 @@ tmp = new wxBitmap(x, y); mdc.SelectObject(*tmp); - -#ifdef __WXMSW__ /* This gives transparent image on wxMSW */ mdc.SetPen(*wxTRANSPARENT_PEN); +#ifdef __WXMSW__ /* This gives transparent image on wxMSW */ mdc.SetBrush(wxBrush(*wxLIGHT_GREY, wxSOLID)); #else /* Elsewhere, it will be done with wxMask later */ mdc.SetBrush(wxBrush(wxColour(0, 0, 0), wxSOLID)); @@ -136,7 +135,7 @@ image, 5, ((y-image.GetHeight())/2)+BITMAP_Y_POS_OFFSET, true ); - mdc.SetTextForeground(wxColour(1, 1, 1)); + mdc.SetTextForeground(wxColour(50, 50, 50)); mdc.DrawText( name, image.GetWidth()+10, ((tmp->GetHeight()-GetCharHeight())/2)+TEXT_Y_POS_OFFSET Index: MBitmapButton.h =================================================================== RCS file: /cvsroot/sharedaemon/ui-wx/src/MBitmapButton.h,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- MBitmapButton.h 24 Dec 2003 10:07:46 -0000 1.5 +++ MBitmapButton.h 25 Dec 2003 02:18:57 -0000 1.6 @@ -29,19 +29,39 @@ #endif /* Image/Text positioning/sizing constants */ -#if defined(__WXGTK__) && defined(__GTK2__) - #define BTN_FONT_SIZE 10 /* Button font size */ - #define LABEL_WIDTH_ADDITION 40 /* Extra width */ - #define BITMAP_Y_POS_OFFSET -2 /* Image Y positioning offset */ - #define TEXT_Y_POS_OFFSET -5 /* Text Y positioning offset */ - #define LABEL_POS_OFFSET -10 /* Pixels between image/button borders */ -#elif defined(__WXGTK__) && !defined(__GTK2__) - #define LABEL_WIDTH_ADDITION 10 /* Extra width */ - #define BITMAP_Y_POS_OFFSET 0 /* Text Y positioning offset */ - #define TEXT_Y_POS_OFFSET 0 /* Text Y positioning offset */ - #define LABEL_POS_OFFSET -8 /* Pixels between image/button borders */ - #define BTN_FONT_SIZE 12 /* Button font size */ -#elif !defined (__WXMSW__) +/* These constants adjust the positioning and sizing of this buttons bitmap */ +/* label. Since all platforms have different "base" button sizes/borders etc, */ +/* we define these constants here. */ +/* BTN_FONT_SIZE - The size of the font to be used on Button. */ +/* LABEL_WIDTH_ADDITON - Extra empty space added to image label */ +/* BITMAP_Y_POS_OFFSET - Needed for correctly centering the bitmap on button */ +/* TEXT_Y_POS_OFFSET - Needed for correctly centering the text on the button */ +/* LABEL_POS_OFFSET - Spacing between bitmap label and button border */ +#if defined(__WXGTK__) && defined(__GTK2__) /* wxGTK with GTK 2.0 */ + #define BTN_FONT_SIZE 10 + #define LABEL_WIDTH_ADDITION 40 + #define BITMAP_Y_POS_OFFSET -2 + #define TEXT_Y_POS_OFFSET -5 + #define LABEL_POS_OFFSET -10 +#elif defined(__WXGTK__) && !defined(__GTK2__) /* wxGTK with GTK 1.2 */ + #define LABEL_WIDTH_ADDITION 10 + #define BITMAP_Y_POS_OFFSET 0 + #define TEXT_Y_POS_OFFSET 0 + #define LABEL_POS_OFFSET -6 + #define BTN_FONT_SIZE 12 +#elif defined(__WXMAC__) /* wxMac */ + #define LABEL_WIDTH_ADDITION 40 + #define BITMAP_Y_POS_OFFSET 0 + #define TEXT_Y_POS_OFFSET 0 + #define LABEL_POS_OFFSET -5 + #define BTN_FONT_SIZE 10 +#elif defined(__WXMSW__) /* wxMSW */ + #define LABEL_WIDTH_ADDITION 10 + #define BITMAP_Y_POS_OFFSET 0 + #define TEXT_Y_POS_OFFSET 0 + #define LABEL_POS_OFFSET -6 + #define BTN_FONT_SIZE 12 +#else #error Need MBitmapButton constants for your port. #endif |