Source cleaning inspired by and included in patch '[ 1215450 ] cleanup: unreachable code.'

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34548 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Włodzimierz Skiba
2005-06-06 16:47:04 +00:00
parent 3554a468bf
commit 902725eefe
25 changed files with 1084 additions and 1099 deletions

View File

@@ -690,7 +690,7 @@ bool wxMenuBase::SendEvent(int id, int checked)
bool processed = false;
// Try the menu's event handler
if ( !processed )
// if ( !processed )
{
wxEvtHandler *handler = GetEventHandler();
if ( handler )

View File

@@ -395,7 +395,7 @@ void wxSizerItem::DeleteWindows()
m_window->Destroy();
//Putting this after the switch will result in a spacer
//not being deleted properly on destruction
m_kind = Item_None;
m_kind = Item_None;
break;
case Item_Sizer:
@@ -1053,23 +1053,19 @@ bool wxSizer::IsShown( size_t index ) const
//---------------------------------------------------------------------------
wxGridSizer::wxGridSizer( int rows, int cols, int vgap, int hgap )
: m_rows( rows )
: m_rows( ( cols == 0 && rows == 0 ) ? 1 : rows )
, m_cols( cols )
, m_vgap( vgap )
, m_hgap( hgap )
{
if (m_rows == 0 && m_cols == 0)
m_rows = 1;
}
wxGridSizer::wxGridSizer( int cols, int vgap, int hgap )
: m_rows( 0 )
: m_rows( cols == 0 ? 1 : 0 )
, m_cols( cols )
, m_vgap( vgap )
, m_hgap( hgap )
{
if (m_rows == 0 && m_cols == 0)
m_rows = 1;
}
int wxGridSizer::CalcRowsCols(int& nrows, int& ncols) const
@@ -1892,7 +1888,7 @@ void wxStdDialogButtonSizer::Realize()
Add((wxWindow*)m_buttonHelp, 0, wxALIGN_CENTRE | wxLEFT | wxRIGHT, m_buttonHelp->ConvertDialogToPixels(wxSize(2, 0)).x);
#else
// GTK+1 and any other platform
// Add(0, 0, 0, wxLEFT, 5); // Not sure what this was for but it unbalances the dialog
if (m_buttonHelp)
Add((wxWindow*)m_buttonHelp, 0, wxALIGN_CENTRE | wxLEFT | wxRIGHT, m_buttonHelp->ConvertDialogToPixels(wxSize(4, 0)).x);

View File

@@ -571,7 +571,7 @@ bool wxGridCellEditor::IsAcceptedKey(wxKeyEvent& event)
// through in that case.
if ((ctrl || alt) && !(ctrl && alt))
return false;
#if wxUSE_UNICODE
int key = event.GetUnicodeKey();
bool keyOk = true;
@@ -588,7 +588,7 @@ bool wxGridCellEditor::IsAcceptedKey(wxKeyEvent& event)
return keyOk;
#else // !wxUSE_UNICODE
int key = event.GetKeyCode();
if (key <= 255)
if (key <= 255)
return true;
return false;
#endif // wxUSE_UNICODE/!wxUSE_UNICODE
@@ -752,7 +752,7 @@ void wxGridCellTextEditor::StartingKey(wxKeyEvent& event)
wxTextCtrl* tc = Text();
wxChar ch;
long pos;
#if wxUSE_UNICODE
ch = event.GetUnicodeKey();
if (ch <= 127)
@@ -1106,7 +1106,7 @@ void wxGridCellFloatEditor::StartingKey(wxKeyEvent& event)
tmpbuf[0] = (char) keycode;
tmpbuf[1] = '\0';
wxString strbuf(tmpbuf, *wxConvCurrent);
#if wxUSE_INTL
#if wxUSE_INTL
bool is_decimal_point = ( strbuf ==
wxLocale::GetInfo(wxLOCALE_DECIMAL_POINT, wxLOCALE_CAT_NUMBER) );
#else
@@ -1184,14 +1184,14 @@ bool wxGridCellFloatEditor::IsAcceptedKey(wxKeyEvent& event)
tmpbuf[0] = (char) keycode;
tmpbuf[1] = '\0';
wxString strbuf(tmpbuf, *wxConvCurrent);
#if wxUSE_INTL
#if wxUSE_INTL
bool is_decimal_point =
( strbuf == wxLocale::GetInfo(wxLOCALE_DECIMAL_POINT,
wxLOCALE_CAT_NUMBER) );
#else
bool is_decimal_point = ( strbuf == _T(".") );
#endif
if ( (keycode < 128) &&
if ( (keycode < 128) &&
(wxIsdigit(keycode) || tolower(keycode) == 'e' ||
is_decimal_point || keycode == '+' || keycode == '-') )
return true;
@@ -1375,11 +1375,11 @@ void wxGridCellBoolEditor::StartingKey(wxKeyEvent& event)
case WXK_SPACE:
CBox()->SetValue(!CBox()->GetValue());
break;
case '+':
CBox()->SetValue(true);
break;
case '-':
CBox()->SetValue(false);
break;
@@ -1468,7 +1468,7 @@ void wxGridCellChoiceEditor::BeginEdit(int row, int col, wxGrid* grid)
{
// find the right position, or default to the first if not found
int pos = Combo()->FindString(m_startValue);
if (pos == -1)
if (pos == wxNOT_FOUND)
pos = 0;
Combo()->SetSelection(pos);
}
@@ -3783,7 +3783,7 @@ void wxGridWindow::OnMouseEvent( wxMouseEvent& event )
{
if (event.ButtonDown(wxMOUSE_BTN_LEFT) && FindFocus() != this)
SetFocus();
m_owner->ProcessGridCellMouseEvent( event );
}
@@ -4905,6 +4905,7 @@ void wxGrid::ProcessRowLabelMouseEvent( wxMouseEvent& event )
break;
case WXGRID_CURSOR_SELECT_ROW:
{
if ( (row = YToRow( y )) >= 0 )
{
if ( m_selection )
@@ -4916,6 +4917,8 @@ void wxGrid::ProcessRowLabelMouseEvent( wxMouseEvent& event )
event.MetaDown() );
}
}
}
break;
// default label to suppress warnings about "enumeration value
// 'xxx' not handled in switch
@@ -5127,6 +5130,7 @@ void wxGrid::ProcessColLabelMouseEvent( wxMouseEvent& event )
break;
case WXGRID_CURSOR_SELECT_COL:
{
if ( (col = XToCol( x )) >= 0 )
{
if ( m_selection )
@@ -5138,6 +5142,8 @@ void wxGrid::ProcessColLabelMouseEvent( wxMouseEvent& event )
event.MetaDown() );
}
}
}
break;
// default label to suppress warnings about "enumeration value
// 'xxx' not handled in switch

View File

@@ -443,14 +443,17 @@ void wxGridSelection::SelectBlock( int topRow, int leftCol,
coords2.GetRow(), coords2.GetCol(),
topRow, leftCol, bottomRow, rightCol ) )
{
case 1:
return;
case -1:
m_blockSelectionTopLeft.RemoveAt(n);
m_blockSelectionBottomRight.RemoveAt(n);
n--; count--;
default:
;
case 1:
return;
case -1:
m_blockSelectionTopLeft.RemoveAt(n);
m_blockSelectionBottomRight.RemoveAt(n);
n--; count--;
break;
default:
break;
}
}
@@ -465,13 +468,16 @@ void wxGridSelection::SelectBlock( int topRow, int leftCol,
m_rowSelection[n], m_grid->GetNumberCols()-1,
topRow, leftCol, bottomRow, rightCol ) )
{
case 1:
return;
case -1:
m_rowSelection.RemoveAt(n);
n--; count--;
default:
;
case 1:
return;
case -1:
m_rowSelection.RemoveAt(n);
n--; count--;
break;
default:
break;
}
}
}
@@ -484,13 +490,16 @@ void wxGridSelection::SelectBlock( int topRow, int leftCol,
m_grid->GetNumberRows()-1, m_colSelection[n],
topRow, leftCol, bottomRow, rightCol ) )
{
case 1:
return;
case -1:
m_colSelection.RemoveAt(n);
n--; count--;
default:
;
case 1:
return;
case -1:
m_colSelection.RemoveAt(n);
n--; count--;
break;
default:
break;
}
}
}

View File

@@ -344,6 +344,7 @@ void wxGenericMDIParentFrame::DoHandleMenu(wxCommandEvent &event)
{
#if 1 // What's best? Delayed deleting or immediate deleting?
delete m_pActiveChild;
m_pActiveChild = NULL;
#else
ActivateNext();

View File

@@ -475,7 +475,7 @@ void wxTreeTextCtrl::OnKillFocus( wxFocusEvent &event )
// We must finish regardless of success, otherwise we'll get
// focus problems:
Finish();
if ( !AcceptChanges() )
m_owner->OnRenameCancelled( m_itemEdited );
}
@@ -2279,12 +2279,14 @@ void wxGenericTreeCtrl::PaintItem(wxGenericTreeItem *item, wxDC& dc)
{
wxColour colBg;
if ( attr && attr->HasBackgroundColour() )
{
drawItemBackground = true;
{
drawItemBackground = true;
colBg = attr->GetBackgroundColour();
}
}
else
{
colBg = m_backgroundColour;
}
dc.SetBrush(wxBrush(colBg, wxSOLID));
}
@@ -3246,7 +3248,7 @@ void wxGenericTreeCtrl::OnMouse( wxMouseEvent &event )
{
// this facilitates multiple-item drag-and-drop
if (item && HasFlag(wxTR_MULTIPLE))
if ( /* item && */ HasFlag(wxTR_MULTIPLE))
{
wxArrayTreeItemIds selections;
size_t count = GetSelections(selections);

View File

@@ -103,7 +103,7 @@ bool wxMask::Create( const wxBitmap& bitmap,
}
wxImage image = bitmap.ConvertToImage();
if (!image.Ok()) return FALSE;
if (!image.Ok()) return false;
m_bitmap = gdk_pixmap_new( wxGetRootWindow()->window, image.GetWidth(), image.GetHeight(), 1 );
GdkGC *gc = gdk_gc_new( m_bitmap );
@@ -183,7 +183,7 @@ bool wxMask::Create( const wxBitmap& bitmap,
gdk_gc_unref( gc );
return TRUE;
return true;
}
bool wxMask::Create( const wxBitmap& bitmap, int paletteIndex )
@@ -191,7 +191,7 @@ bool wxMask::Create( const wxBitmap& bitmap, int paletteIndex )
unsigned char r,g,b;
wxPalette *pal = bitmap.GetPalette();
wxCHECK_MSG( pal, FALSE, wxT("Cannot create mask from bitmap without palette") );
wxCHECK_MSG( pal, false, wxT("Cannot create mask from bitmap without palette") );
pal->GetRGB(paletteIndex, &r, &g, &b);
@@ -206,13 +206,13 @@ bool wxMask::Create( const wxBitmap& bitmap )
m_bitmap = (GdkBitmap*) NULL;
}
if (!bitmap.Ok()) return FALSE;
if (!bitmap.Ok()) return false;
wxCHECK_MSG( bitmap.GetBitmap(), FALSE, wxT("Cannot create mask from colour bitmap") );
wxCHECK_MSG( bitmap.GetBitmap(), false, wxT("Cannot create mask from colour bitmap") );
m_bitmap = gdk_pixmap_new( wxGetRootWindow()->window, bitmap.GetWidth(), bitmap.GetHeight(), 1 );
if (!m_bitmap) return FALSE;
if (!m_bitmap) return false;
GdkGC *gc = gdk_gc_new( m_bitmap );
@@ -220,7 +220,7 @@ bool wxMask::Create( const wxBitmap& bitmap )
gdk_gc_unref( gc );
return TRUE;
return true;
}
GdkBitmap *wxMask::GetBitmap() const
@@ -307,7 +307,7 @@ bool wxBitmap::Create( int width, int height, int depth )
if (depth == -1)
depth = visual->depth;
wxCHECK_MSG( (depth == visual->depth) || (depth == 1) || (depth == 32), FALSE,
wxCHECK_MSG( (depth == visual->depth) || (depth == 1) || (depth == 32), false,
wxT("invalid bitmap depth") )
m_refData = new wxBitmapRefData();
@@ -340,7 +340,7 @@ bool wxBitmap::CreateFromXpm( const char **bits )
{
UnRef();
wxCHECK_MSG( bits != NULL, FALSE, wxT("invalid bitmap data") )
wxCHECK_MSG( bits != NULL, false, wxT("invalid bitmap data") )
GdkVisual *visual = wxTheApp->GetGdkVisual();
@@ -350,7 +350,7 @@ bool wxBitmap::CreateFromXpm( const char **bits )
M_BMPDATA->m_pixmap = gdk_pixmap_create_from_xpm_d( wxGetRootWindow()->window, &mask, NULL, (gchar **) bits );
wxCHECK_MSG( M_BMPDATA->m_pixmap, FALSE, wxT("couldn't create pixmap") );
wxCHECK_MSG( M_BMPDATA->m_pixmap, false, wxT("couldn't create pixmap") );
if (mask)
{
@@ -362,7 +362,7 @@ bool wxBitmap::CreateFromXpm( const char **bits )
M_BMPDATA->m_bpp = visual->depth; // Can we get a different depth from create_from_xpm_d() ?
return TRUE;
return true;
}
wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight, int newx, int newy )
@@ -371,12 +371,12 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
if (newy==M_BMPDATA->m_width && newy==M_BMPDATA->m_height)
return *this;
int width = wxMax(newx, 1);
int height = wxMax(newy, 1);
width = wxMin(width, clipwidth);
height = wxMin(height, clipheight);
wxBitmap bmp;
#ifdef __WXGTK20__
@@ -390,7 +390,7 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
8, width, height));
gdk_pixbuf_scale(GetPixbuf(), bmp.GetPixbuf(),
0, 0, width, height,
clipx, clipy,
clipx, clipy,
(double)newx/GetWidth(), (double)newy/GetHeight(),
GDK_INTERP_BILINEAR);
}
@@ -409,7 +409,7 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
int bpp = -1;
GdkGC *gc = NULL;
GdkPixmap *dstpix = NULL;
if (GetPixmap())
@@ -426,7 +426,7 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
char *dst = NULL;
long dstbyteperline = 0;
if (GetBitmap())
{
bpp = 1;
@@ -435,7 +435,7 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
dstbyteperline++;
dst = (char*) malloc(dstbyteperline*height);
}
// be careful to use the right scaling factor
float scx = (float)M_BMPDATA->m_width/(float)newx;
float scy = (float)M_BMPDATA->m_height/(float)newy;
@@ -468,7 +468,7 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
old_pixval = pixval;
old_x = x;
}
if (bpp == 1)
{
if (!pixval)
@@ -477,7 +477,7 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
char shift = bit << w % 8;
outbyte |= shift;
}
if ((w+1)%8==0)
{
dst[h*dstbyteperline+w/8] = outbyte;
@@ -492,12 +492,12 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
gdk_draw_point( dstpix, gc, w, h);
}
}
// do not forget the last byte
if ((bpp == 1) && (width % 8 != 0))
dst[h*dstbyteperline+width/8] = outbyte;
}
gdk_image_destroy( img );
if (gc) gdk_gc_unref( gc );
@@ -506,7 +506,7 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
bmp = wxBitmap( (const char *)dst, width, height, 1 );
free( dst );
}
if (GetMask())
{
dstbyteperline = width/8;
@@ -520,7 +520,7 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
char outbyte = 0;
int old_x = -1;
guint32 old_pixval = 0;
for (int w = 0; w < width; w++)
{
guint32 pixval;
@@ -533,21 +533,21 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
old_pixval = pixval;
old_x = x;
}
if (pixval)
{
char bit=1;
char shift = bit << w % 8;
outbyte |= shift;
}
if ((w+1)%8 == 0)
{
dst[h*dstbyteperline+w/8] = outbyte;
outbyte = 0;
}
}
// do not forget the last byte
if (width % 8 != 0)
dst[h*dstbyteperline+width/8] = outbyte;
@@ -563,20 +563,20 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
free( tablex );
free( tabley );
}
return bmp;
return bmp;
}
bool wxBitmap::CreateFromImage(const wxImage& image, int depth)
{
UnRef();
wxCHECK_MSG( image.Ok(), FALSE, wxT("invalid image") )
wxCHECK_MSG( depth == -1 || depth == 1, FALSE, wxT("invalid bitmap depth") )
wxCHECK_MSG( image.Ok(), false, wxT("invalid image") )
wxCHECK_MSG( depth == -1 || depth == 1, false, wxT("invalid bitmap depth") )
if (image.GetWidth() <= 0 || image.GetHeight() <= 0)
return false;
m_refData = new wxBitmapRefData();
if (depth == 1)
@@ -599,7 +599,7 @@ bool wxBitmap::CreateFromImageAsBitmap(const wxImage& img)
// convert alpha channel to mask, if it is present:
wxImage image(img);
image.ConvertAlphaToMask();
int width = image.GetWidth();
int height = image.GetHeight();
@@ -692,14 +692,14 @@ bool wxBitmap::CreateFromImageAsBitmap(const wxImage& img)
return true;
}
// conversion to colour bitmap:
bool wxBitmap::CreateFromImageAsPixmap(const wxImage& img)
{
// convert alpha channel to mask, if it is present:
wxImage image(img);
image.ConvertAlphaToMask();
int width = image.GetWidth();
int height = image.GetHeight();
@@ -728,12 +728,12 @@ bool wxBitmap::CreateFromImageAsPixmap(const wxImage& img)
if (!image.HasMask() && (bpp > 12))
#endif
{
static bool s_hasInitialized = FALSE;
static bool s_hasInitialized = false;
if (!s_hasInitialized)
{
gdk_rgb_init();
s_hasInitialized = TRUE;
s_hasInitialized = true;
}
GdkGC *gc = gdk_gc_new( GetPixmap() );
@@ -747,7 +747,7 @@ bool wxBitmap::CreateFromImageAsPixmap(const wxImage& img)
width*3 );
gdk_gc_unref( gc );
return TRUE;
return true;
}
// Create picture image
@@ -902,6 +902,7 @@ bool wxBitmap::CreateFromImageAsPixmap(const wxImage& img)
case GBR: pixel = (g << 16) | (b << 8) | r; break;
}
gdk_image_put_pixel( data_image, x, y, pixel );
break;
}
default: break;
}
@@ -949,17 +950,17 @@ bool wxBitmap::CreateFromImageAsPixbuf(const wxImage& image)
wxASSERT( gdk_pixbuf_get_n_channels(pixbuf) == 4 );
wxASSERT( gdk_pixbuf_get_width(pixbuf) == width );
wxASSERT( gdk_pixbuf_get_height(pixbuf) == height );
M_BMPDATA->m_pixbuf = pixbuf;
SetHeight(height);
SetWidth(width);
SetDepth(wxTheApp->GetGdkVisual()->depth);
// Copy the data:
unsigned char *in = image.GetData();
unsigned char *out = gdk_pixbuf_get_pixels(pixbuf);
unsigned char *alpha = image.GetAlpha();
int rowinc = gdk_pixbuf_get_rowstride(pixbuf) - 4 * width;
for (int y = 0; y < height; y++, out += rowinc)
@@ -972,7 +973,7 @@ bool wxBitmap::CreateFromImageAsPixbuf(const wxImage& image)
out[3] = *alpha;
}
}
return true;
}
#endif // __WXGTK20__
@@ -982,7 +983,7 @@ wxImage wxBitmap::ConvertToImage() const
wxImage image;
wxCHECK_MSG( Ok(), wxNullImage, wxT("invalid bitmap") );
image.Create(GetWidth(), GetHeight());
unsigned char *data = image.GetData();
@@ -997,10 +998,10 @@ wxImage wxBitmap::ConvertToImage() const
{
GdkPixbuf *pixbuf = GetPixbuf();
wxASSERT( gdk_pixbuf_get_has_alpha(pixbuf) );
int w = GetWidth();
int h = GetHeight();
image.SetAlpha();
unsigned char *alpha = image.GetAlpha();
@@ -1067,7 +1068,7 @@ wxImage wxBitmap::ConvertToImage() const
int red_shift_left = 0;
int green_shift_left = 0;
int blue_shift_left = 0;
bool use_shift = FALSE;
bool use_shift = false;
if (GetPixmap())
{
@@ -1218,12 +1219,12 @@ bool wxBitmap::operator != ( const wxBitmap& bmp ) const
bool wxBitmap::Ok() const
{
return (m_refData != NULL) &&
return (m_refData != NULL) &&
(
#ifdef __WXGTK20__
M_BMPDATA->m_pixbuf ||
#endif
M_BMPDATA->m_bitmap || M_BMPDATA->m_pixmap
M_BMPDATA->m_bitmap || M_BMPDATA->m_pixmap
);
}
@@ -1267,7 +1268,7 @@ void wxBitmap::SetMask( wxMask *mask )
bool wxBitmap::CopyFromIcon(const wxIcon& icon)
{
*this = icon;
return TRUE;
return true;
}
wxBitmap wxBitmap::GetSubBitmap( const wxRect& rect) const
@@ -1335,7 +1336,7 @@ wxBitmap wxBitmap::GetSubBitmap( const wxRect& rect) const
bool wxBitmap::SaveFile( const wxString &name, wxBitmapType type, const wxPalette *WXUNUSED(palette) ) const
{
wxCHECK_MSG( Ok(), FALSE, wxT("invalid bitmap") );
wxCHECK_MSG( Ok(), false, wxT("invalid bitmap") );
// Try to save the bitmap via wxImage handlers:
{
@@ -1343,7 +1344,7 @@ bool wxBitmap::SaveFile( const wxString &name, wxBitmapType type, const wxPalett
if (image.Ok()) return image.SaveFile( name, type );
}
return FALSE;
return false;
}
bool wxBitmap::LoadFile( const wxString &name, wxBitmapType type )
@@ -1351,7 +1352,7 @@ bool wxBitmap::LoadFile( const wxString &name, wxBitmapType type )
UnRef();
if (!wxFileExists(name))
return FALSE;
return false;
GdkVisual *visual = wxTheApp->GetGdkVisual();
@@ -1383,12 +1384,12 @@ bool wxBitmap::LoadFile( const wxString &name, wxBitmapType type )
{
wxImage image;
if ( !image.LoadFile( name, type ) || !image.Ok() )
return FALSE;
return false;
*this = wxBitmap(image);
}
return TRUE;
return true;
}
wxPalette *wxBitmap::GetPalette() const
@@ -1493,18 +1494,18 @@ GdkPixbuf *wxBitmap::GetPixbuf() const
{
int width = GetWidth();
int height = GetHeight();
GdkPixbuf *pixbuf = gdk_pixbuf_new(GDK_COLORSPACE_RGB,
GetMask() != NULL,
8, width, height);
M_BMPDATA->m_pixbuf =
M_BMPDATA->m_pixbuf =
gdk_pixbuf_get_from_drawable(pixbuf, M_BMPDATA->m_pixmap, NULL,
0, 0, 0, 0, width, height);
// apply the mask to created pixbuf:
if (M_BMPDATA->m_pixbuf && M_BMPDATA->m_mask)
{
GdkPixbuf *pmask =
GdkPixbuf *pmask =
gdk_pixbuf_get_from_drawable(NULL,
M_BMPDATA->m_mask->GetBitmap(),
NULL,
@@ -1525,7 +1526,7 @@ GdkPixbuf *wxBitmap::GetPixbuf() const
bmp[3] = 0;
}
}
gdk_pixbuf_unref(pmask);
}
}
@@ -1571,26 +1572,26 @@ void *wxBitmap::GetRawData(wxPixelDataBase& data, int bpp)
#ifdef __WXGTK20__
if (bpp != 32)
return NULL;
GdkPixbuf *pixbuf = GetPixbuf();
if (!pixbuf)
return NULL;
#if 0
#if 0
if (gdk_pixbuf_get_has_alpha( pixbuf ))
wxPrintf( wxT("Has alpha\n") );
else
wxPrintf( wxT("No alpha.\n") );
#endif
data.m_height = gdk_pixbuf_get_height( pixbuf );
data.m_width = gdk_pixbuf_get_width( pixbuf );
data.m_stride = gdk_pixbuf_get_rowstride( pixbuf );
data.m_height = gdk_pixbuf_get_height( pixbuf );
data.m_width = gdk_pixbuf_get_width( pixbuf );
data.m_stride = gdk_pixbuf_get_rowstride( pixbuf );
return gdk_pixbuf_get_pixels( pixbuf );
#else
return NULL;
#endif
#endif
}
void wxBitmap::UngetRawData(wxPixelDataBase& data)
@@ -1598,7 +1599,7 @@ void wxBitmap::UngetRawData(wxPixelDataBase& data)
}
bool wxBitmap::HasAlpha() const
bool wxBitmap::HasAlpha() const
{
#ifdef __WXGTK20__
return HasPixbuf();
@@ -1608,7 +1609,7 @@ bool wxBitmap::HasAlpha() const
}
void wxBitmap::UseAlpha()
{
{
#ifdef __WXGTK20__
GetPixbuf();
#endif
@@ -1626,18 +1627,18 @@ wxBitmapHandler::~wxBitmapHandler()
bool wxBitmapHandler::Create(wxBitmap *bitmap, void *data, long type, int width, int height, int depth)
{
return FALSE;
return false;
}
bool wxBitmapHandler::LoadFile(wxBitmap *bitmap, const wxString& name, long flags,
int desiredWidth, int desiredHeight)
{
return FALSE;
return false;
}
bool wxBitmapHandler::SaveFile(const wxBitmap *bitmap, const wxString& name, int type, const wxPalette *palette)
{
return FALSE;
return false;
}
/* static */ void wxBitmap::InitStandardHandlers()

View File

@@ -125,7 +125,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxBitmapButton,wxButton)
void wxBitmapButton::Init()
{
m_hasFocus =
m_isSelected = FALSE;
m_isSelected = false;
}
bool wxBitmapButton::Create( wxWindow *parent,
@@ -137,14 +137,14 @@ bool wxBitmapButton::Create( wxWindow *parent,
const wxValidator& validator,
const wxString &name )
{
m_needParent = TRUE;
m_acceptsFocus = TRUE;
m_needParent = true;
m_acceptsFocus = true;
if (!PreCreation( parent, pos, size ) ||
!CreateBase( parent, id, pos, size, style, validator, name ))
{
wxFAIL_MSG( wxT("wxBitmapButton creation failed") );
return FALSE;
return false;
}
m_bmpNormal = bitmap;
@@ -175,7 +175,7 @@ bool wxBitmapButton::Create( wxWindow *parent,
PostCreation(size);
return TRUE;
return true;
}
void wxBitmapButton::SetDefault()
@@ -195,7 +195,7 @@ void wxBitmapButton::SetLabel( const wxString &label )
wxString wxBitmapButton::GetLabel() const
{
wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid button") );
wxCHECK_MSG( m_widget != NULL, wxEmptyString, wxT("invalid button") );
return wxControl::GetLabel();
}
@@ -213,7 +213,7 @@ void wxBitmapButton::OnSetBitmap()
wxCHECK_RET( m_widget != NULL, wxT("invalid bitmap button") );
InvalidateBestSize();
wxBitmap the_one;
if (!m_isEnabled)
the_one = m_bmpDisabled;
@@ -222,19 +222,7 @@ void wxBitmapButton::OnSetBitmap()
else if (m_hasFocus)
the_one = m_bmpFocus;
else
{
if (m_isSelected)
{
the_one = m_bmpSelected;
}
else
{
if (m_hasFocus)
the_one = m_bmpFocus;
else
the_one = m_bmpNormal;
}
}
the_one = m_bmpNormal;
if (!the_one.Ok()) the_one = m_bmpNormal;
if (!the_one.Ok()) return;
@@ -281,34 +269,34 @@ wxSize wxBitmapButton::DoGetBestSize() const
bool wxBitmapButton::Enable( bool enable )
{
if ( !wxWindow::Enable(enable) )
return FALSE;
return false;
OnSetBitmap();
return TRUE;
return true;
}
void wxBitmapButton::HasFocus()
{
m_hasFocus = TRUE;
m_hasFocus = true;
OnSetBitmap();
}
void wxBitmapButton::NotFocus()
{
m_hasFocus = FALSE;
m_hasFocus = false;
OnSetBitmap();
}
void wxBitmapButton::StartSelect()
{
m_isSelected = TRUE;
m_isSelected = true;
OnSetBitmap();
}
void wxBitmapButton::EndSelect()
{
m_isSelected = FALSE;
m_isSelected = false;
OnSetBitmap();
}

View File

@@ -883,7 +883,7 @@ void wxTextCtrl::CalculateScrollbar()
wxString wxTextCtrl::GetValue() const
{
wxCHECK_MSG( m_text != NULL, wxT(""), wxT("invalid text ctrl") );
wxCHECK_MSG( m_text != NULL, wxEmptyString, wxT("invalid text ctrl") );
wxString tmp;
if (m_windowStyle & wxTE_MULTILINE)
@@ -1071,7 +1071,7 @@ wxString wxTextCtrl::GetLineText( long lineNo ) const
if (text)
{
wxString buf(wxT(""));
wxString buf;
long i;
int currentLine = 0;
for (i = 0; currentLine != lineNo && text[i]; i++ )
@@ -1725,7 +1725,7 @@ bool wxTextCtrl::IsModified() const
void wxTextCtrl::Clear()
{
SetValue( wxT("") );
SetValue( wxEmptyString );
}
void wxTextCtrl::OnChar( wxKeyEvent &key_event )
@@ -1896,6 +1896,7 @@ bool wxTextCtrl::SetStyle( long start, long end, const wxTextAttr& style )
// nothing to do
return true;
}
#ifdef __WXGTK20__
gint l = gtk_text_buffer_get_char_count( m_buffer );
@@ -1912,8 +1913,6 @@ bool wxTextCtrl::SetStyle( long start, long end, const wxTextAttr& style )
wxTextAttr attr = wxTextAttr::Combine(style, m_defaultStyle, this);
wxGtkTextApplyTagsFromAttr( m_buffer, attr, &starti, &endi );
return true;
#else
// VERY dirty way to do that - removes the required text and re-adds it
// with styling (FIXME)
@@ -1931,14 +1930,14 @@ bool wxTextCtrl::SetStyle( long start, long end, const wxTextAttr& style )
gtk_editable_delete_text( GTK_EDITABLE(m_text), start, end );
gtk_editable_set_position( GTK_EDITABLE(m_text), start );
#if wxUSE_UNICODE
#if wxUSE_UNICODE
wxWX2MBbuf buf = tmp.mbc_str();
const char *txt = buf;
size_t txtlen = strlen(buf);
#else
#else
const char *txt = tmp;
size_t txtlen = tmp.length();
#endif
#endif
// use the attributes from style which are set in it and fall back
// first to the default style and then to the text control default
@@ -1952,13 +1951,13 @@ bool wxTextCtrl::SetStyle( long start, long end, const wxTextAttr& style )
gtk_editable_set_position( GTK_EDITABLE(m_text), old_pos ); */
SetInsertionPoint( old_pos );
#endif
return true;
}
else // singe line
{
// cannot do this for GTK+'s Entry widget
return false;
}
// else single line
// cannot do this for GTK+'s Entry widget
return false;
}
void wxTextCtrl::DoApplyWidgetStyle(GtkRcStyle *style)

View File

@@ -103,7 +103,7 @@ bool wxMask::Create( const wxBitmap& bitmap,
}
wxImage image = bitmap.ConvertToImage();
if (!image.Ok()) return FALSE;
if (!image.Ok()) return false;
m_bitmap = gdk_pixmap_new( wxGetRootWindow()->window, image.GetWidth(), image.GetHeight(), 1 );
GdkGC *gc = gdk_gc_new( m_bitmap );
@@ -183,7 +183,7 @@ bool wxMask::Create( const wxBitmap& bitmap,
gdk_gc_unref( gc );
return TRUE;
return true;
}
bool wxMask::Create( const wxBitmap& bitmap, int paletteIndex )
@@ -191,7 +191,7 @@ bool wxMask::Create( const wxBitmap& bitmap, int paletteIndex )
unsigned char r,g,b;
wxPalette *pal = bitmap.GetPalette();
wxCHECK_MSG( pal, FALSE, wxT("Cannot create mask from bitmap without palette") );
wxCHECK_MSG( pal, false, wxT("Cannot create mask from bitmap without palette") );
pal->GetRGB(paletteIndex, &r, &g, &b);
@@ -206,13 +206,13 @@ bool wxMask::Create( const wxBitmap& bitmap )
m_bitmap = (GdkBitmap*) NULL;
}
if (!bitmap.Ok()) return FALSE;
if (!bitmap.Ok()) return false;
wxCHECK_MSG( bitmap.GetBitmap(), FALSE, wxT("Cannot create mask from colour bitmap") );
wxCHECK_MSG( bitmap.GetBitmap(), false, wxT("Cannot create mask from colour bitmap") );
m_bitmap = gdk_pixmap_new( wxGetRootWindow()->window, bitmap.GetWidth(), bitmap.GetHeight(), 1 );
if (!m_bitmap) return FALSE;
if (!m_bitmap) return false;
GdkGC *gc = gdk_gc_new( m_bitmap );
@@ -220,7 +220,7 @@ bool wxMask::Create( const wxBitmap& bitmap )
gdk_gc_unref( gc );
return TRUE;
return true;
}
GdkBitmap *wxMask::GetBitmap() const
@@ -307,7 +307,7 @@ bool wxBitmap::Create( int width, int height, int depth )
if (depth == -1)
depth = visual->depth;
wxCHECK_MSG( (depth == visual->depth) || (depth == 1) || (depth == 32), FALSE,
wxCHECK_MSG( (depth == visual->depth) || (depth == 1) || (depth == 32), false,
wxT("invalid bitmap depth") )
m_refData = new wxBitmapRefData();
@@ -340,7 +340,7 @@ bool wxBitmap::CreateFromXpm( const char **bits )
{
UnRef();
wxCHECK_MSG( bits != NULL, FALSE, wxT("invalid bitmap data") )
wxCHECK_MSG( bits != NULL, false, wxT("invalid bitmap data") )
GdkVisual *visual = wxTheApp->GetGdkVisual();
@@ -350,7 +350,7 @@ bool wxBitmap::CreateFromXpm( const char **bits )
M_BMPDATA->m_pixmap = gdk_pixmap_create_from_xpm_d( wxGetRootWindow()->window, &mask, NULL, (gchar **) bits );
wxCHECK_MSG( M_BMPDATA->m_pixmap, FALSE, wxT("couldn't create pixmap") );
wxCHECK_MSG( M_BMPDATA->m_pixmap, false, wxT("couldn't create pixmap") );
if (mask)
{
@@ -362,7 +362,7 @@ bool wxBitmap::CreateFromXpm( const char **bits )
M_BMPDATA->m_bpp = visual->depth; // Can we get a different depth from create_from_xpm_d() ?
return TRUE;
return true;
}
wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight, int newx, int newy )
@@ -371,12 +371,12 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
if (newy==M_BMPDATA->m_width && newy==M_BMPDATA->m_height)
return *this;
int width = wxMax(newx, 1);
int height = wxMax(newy, 1);
width = wxMin(width, clipwidth);
height = wxMin(height, clipheight);
wxBitmap bmp;
#ifdef __WXGTK20__
@@ -390,7 +390,7 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
8, width, height));
gdk_pixbuf_scale(GetPixbuf(), bmp.GetPixbuf(),
0, 0, width, height,
clipx, clipy,
clipx, clipy,
(double)newx/GetWidth(), (double)newy/GetHeight(),
GDK_INTERP_BILINEAR);
}
@@ -409,7 +409,7 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
int bpp = -1;
GdkGC *gc = NULL;
GdkPixmap *dstpix = NULL;
if (GetPixmap())
@@ -426,7 +426,7 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
char *dst = NULL;
long dstbyteperline = 0;
if (GetBitmap())
{
bpp = 1;
@@ -435,7 +435,7 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
dstbyteperline++;
dst = (char*) malloc(dstbyteperline*height);
}
// be careful to use the right scaling factor
float scx = (float)M_BMPDATA->m_width/(float)newx;
float scy = (float)M_BMPDATA->m_height/(float)newy;
@@ -468,7 +468,7 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
old_pixval = pixval;
old_x = x;
}
if (bpp == 1)
{
if (!pixval)
@@ -477,7 +477,7 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
char shift = bit << w % 8;
outbyte |= shift;
}
if ((w+1)%8==0)
{
dst[h*dstbyteperline+w/8] = outbyte;
@@ -492,12 +492,12 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
gdk_draw_point( dstpix, gc, w, h);
}
}
// do not forget the last byte
if ((bpp == 1) && (width % 8 != 0))
dst[h*dstbyteperline+width/8] = outbyte;
}
gdk_image_destroy( img );
if (gc) gdk_gc_unref( gc );
@@ -506,7 +506,7 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
bmp = wxBitmap( (const char *)dst, width, height, 1 );
free( dst );
}
if (GetMask())
{
dstbyteperline = width/8;
@@ -520,7 +520,7 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
char outbyte = 0;
int old_x = -1;
guint32 old_pixval = 0;
for (int w = 0; w < width; w++)
{
guint32 pixval;
@@ -533,21 +533,21 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
old_pixval = pixval;
old_x = x;
}
if (pixval)
{
char bit=1;
char shift = bit << w % 8;
outbyte |= shift;
}
if ((w+1)%8 == 0)
{
dst[h*dstbyteperline+w/8] = outbyte;
outbyte = 0;
}
}
// do not forget the last byte
if (width % 8 != 0)
dst[h*dstbyteperline+width/8] = outbyte;
@@ -563,20 +563,20 @@ wxBitmap wxBitmap::Rescale( int clipx, int clipy, int clipwidth, int clipheight,
free( tablex );
free( tabley );
}
return bmp;
return bmp;
}
bool wxBitmap::CreateFromImage(const wxImage& image, int depth)
{
UnRef();
wxCHECK_MSG( image.Ok(), FALSE, wxT("invalid image") )
wxCHECK_MSG( depth == -1 || depth == 1, FALSE, wxT("invalid bitmap depth") )
wxCHECK_MSG( image.Ok(), false, wxT("invalid image") )
wxCHECK_MSG( depth == -1 || depth == 1, false, wxT("invalid bitmap depth") )
if (image.GetWidth() <= 0 || image.GetHeight() <= 0)
return false;
m_refData = new wxBitmapRefData();
if (depth == 1)
@@ -599,7 +599,7 @@ bool wxBitmap::CreateFromImageAsBitmap(const wxImage& img)
// convert alpha channel to mask, if it is present:
wxImage image(img);
image.ConvertAlphaToMask();
int width = image.GetWidth();
int height = image.GetHeight();
@@ -692,14 +692,14 @@ bool wxBitmap::CreateFromImageAsBitmap(const wxImage& img)
return true;
}
// conversion to colour bitmap:
bool wxBitmap::CreateFromImageAsPixmap(const wxImage& img)
{
// convert alpha channel to mask, if it is present:
wxImage image(img);
image.ConvertAlphaToMask();
int width = image.GetWidth();
int height = image.GetHeight();
@@ -728,12 +728,12 @@ bool wxBitmap::CreateFromImageAsPixmap(const wxImage& img)
if (!image.HasMask() && (bpp > 12))
#endif
{
static bool s_hasInitialized = FALSE;
static bool s_hasInitialized = false;
if (!s_hasInitialized)
{
gdk_rgb_init();
s_hasInitialized = TRUE;
s_hasInitialized = true;
}
GdkGC *gc = gdk_gc_new( GetPixmap() );
@@ -747,7 +747,7 @@ bool wxBitmap::CreateFromImageAsPixmap(const wxImage& img)
width*3 );
gdk_gc_unref( gc );
return TRUE;
return true;
}
// Create picture image
@@ -902,6 +902,7 @@ bool wxBitmap::CreateFromImageAsPixmap(const wxImage& img)
case GBR: pixel = (g << 16) | (b << 8) | r; break;
}
gdk_image_put_pixel( data_image, x, y, pixel );
break;
}
default: break;
}
@@ -949,17 +950,17 @@ bool wxBitmap::CreateFromImageAsPixbuf(const wxImage& image)
wxASSERT( gdk_pixbuf_get_n_channels(pixbuf) == 4 );
wxASSERT( gdk_pixbuf_get_width(pixbuf) == width );
wxASSERT( gdk_pixbuf_get_height(pixbuf) == height );
M_BMPDATA->m_pixbuf = pixbuf;
SetHeight(height);
SetWidth(width);
SetDepth(wxTheApp->GetGdkVisual()->depth);
// Copy the data:
unsigned char *in = image.GetData();
unsigned char *out = gdk_pixbuf_get_pixels(pixbuf);
unsigned char *alpha = image.GetAlpha();
int rowinc = gdk_pixbuf_get_rowstride(pixbuf) - 4 * width;
for (int y = 0; y < height; y++, out += rowinc)
@@ -972,7 +973,7 @@ bool wxBitmap::CreateFromImageAsPixbuf(const wxImage& image)
out[3] = *alpha;
}
}
return true;
}
#endif // __WXGTK20__
@@ -982,7 +983,7 @@ wxImage wxBitmap::ConvertToImage() const
wxImage image;
wxCHECK_MSG( Ok(), wxNullImage, wxT("invalid bitmap") );
image.Create(GetWidth(), GetHeight());
unsigned char *data = image.GetData();
@@ -997,10 +998,10 @@ wxImage wxBitmap::ConvertToImage() const
{
GdkPixbuf *pixbuf = GetPixbuf();
wxASSERT( gdk_pixbuf_get_has_alpha(pixbuf) );
int w = GetWidth();
int h = GetHeight();
image.SetAlpha();
unsigned char *alpha = image.GetAlpha();
@@ -1067,7 +1068,7 @@ wxImage wxBitmap::ConvertToImage() const
int red_shift_left = 0;
int green_shift_left = 0;
int blue_shift_left = 0;
bool use_shift = FALSE;
bool use_shift = false;
if (GetPixmap())
{
@@ -1218,12 +1219,12 @@ bool wxBitmap::operator != ( const wxBitmap& bmp ) const
bool wxBitmap::Ok() const
{
return (m_refData != NULL) &&
return (m_refData != NULL) &&
(
#ifdef __WXGTK20__
M_BMPDATA->m_pixbuf ||
#endif
M_BMPDATA->m_bitmap || M_BMPDATA->m_pixmap
M_BMPDATA->m_bitmap || M_BMPDATA->m_pixmap
);
}
@@ -1267,7 +1268,7 @@ void wxBitmap::SetMask( wxMask *mask )
bool wxBitmap::CopyFromIcon(const wxIcon& icon)
{
*this = icon;
return TRUE;
return true;
}
wxBitmap wxBitmap::GetSubBitmap( const wxRect& rect) const
@@ -1335,7 +1336,7 @@ wxBitmap wxBitmap::GetSubBitmap( const wxRect& rect) const
bool wxBitmap::SaveFile( const wxString &name, wxBitmapType type, const wxPalette *WXUNUSED(palette) ) const
{
wxCHECK_MSG( Ok(), FALSE, wxT("invalid bitmap") );
wxCHECK_MSG( Ok(), false, wxT("invalid bitmap") );
// Try to save the bitmap via wxImage handlers:
{
@@ -1343,7 +1344,7 @@ bool wxBitmap::SaveFile( const wxString &name, wxBitmapType type, const wxPalett
if (image.Ok()) return image.SaveFile( name, type );
}
return FALSE;
return false;
}
bool wxBitmap::LoadFile( const wxString &name, wxBitmapType type )
@@ -1351,7 +1352,7 @@ bool wxBitmap::LoadFile( const wxString &name, wxBitmapType type )
UnRef();
if (!wxFileExists(name))
return FALSE;
return false;
GdkVisual *visual = wxTheApp->GetGdkVisual();
@@ -1383,12 +1384,12 @@ bool wxBitmap::LoadFile( const wxString &name, wxBitmapType type )
{
wxImage image;
if ( !image.LoadFile( name, type ) || !image.Ok() )
return FALSE;
return false;
*this = wxBitmap(image);
}
return TRUE;
return true;
}
wxPalette *wxBitmap::GetPalette() const
@@ -1493,18 +1494,18 @@ GdkPixbuf *wxBitmap::GetPixbuf() const
{
int width = GetWidth();
int height = GetHeight();
GdkPixbuf *pixbuf = gdk_pixbuf_new(GDK_COLORSPACE_RGB,
GetMask() != NULL,
8, width, height);
M_BMPDATA->m_pixbuf =
M_BMPDATA->m_pixbuf =
gdk_pixbuf_get_from_drawable(pixbuf, M_BMPDATA->m_pixmap, NULL,
0, 0, 0, 0, width, height);
// apply the mask to created pixbuf:
if (M_BMPDATA->m_pixbuf && M_BMPDATA->m_mask)
{
GdkPixbuf *pmask =
GdkPixbuf *pmask =
gdk_pixbuf_get_from_drawable(NULL,
M_BMPDATA->m_mask->GetBitmap(),
NULL,
@@ -1525,7 +1526,7 @@ GdkPixbuf *wxBitmap::GetPixbuf() const
bmp[3] = 0;
}
}
gdk_pixbuf_unref(pmask);
}
}
@@ -1571,26 +1572,26 @@ void *wxBitmap::GetRawData(wxPixelDataBase& data, int bpp)
#ifdef __WXGTK20__
if (bpp != 32)
return NULL;
GdkPixbuf *pixbuf = GetPixbuf();
if (!pixbuf)
return NULL;
#if 0
#if 0
if (gdk_pixbuf_get_has_alpha( pixbuf ))
wxPrintf( wxT("Has alpha\n") );
else
wxPrintf( wxT("No alpha.\n") );
#endif
data.m_height = gdk_pixbuf_get_height( pixbuf );
data.m_width = gdk_pixbuf_get_width( pixbuf );
data.m_stride = gdk_pixbuf_get_rowstride( pixbuf );
data.m_height = gdk_pixbuf_get_height( pixbuf );
data.m_width = gdk_pixbuf_get_width( pixbuf );
data.m_stride = gdk_pixbuf_get_rowstride( pixbuf );
return gdk_pixbuf_get_pixels( pixbuf );
#else
return NULL;
#endif
#endif
}
void wxBitmap::UngetRawData(wxPixelDataBase& data)
@@ -1598,7 +1599,7 @@ void wxBitmap::UngetRawData(wxPixelDataBase& data)
}
bool wxBitmap::HasAlpha() const
bool wxBitmap::HasAlpha() const
{
#ifdef __WXGTK20__
return HasPixbuf();
@@ -1608,7 +1609,7 @@ bool wxBitmap::HasAlpha() const
}
void wxBitmap::UseAlpha()
{
{
#ifdef __WXGTK20__
GetPixbuf();
#endif
@@ -1626,18 +1627,18 @@ wxBitmapHandler::~wxBitmapHandler()
bool wxBitmapHandler::Create(wxBitmap *bitmap, void *data, long type, int width, int height, int depth)
{
return FALSE;
return false;
}
bool wxBitmapHandler::LoadFile(wxBitmap *bitmap, const wxString& name, long flags,
int desiredWidth, int desiredHeight)
{
return FALSE;
return false;
}
bool wxBitmapHandler::SaveFile(const wxBitmap *bitmap, const wxString& name, int type, const wxPalette *palette)
{
return FALSE;
return false;
}
/* static */ void wxBitmap::InitStandardHandlers()

View File

@@ -125,7 +125,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxBitmapButton,wxButton)
void wxBitmapButton::Init()
{
m_hasFocus =
m_isSelected = FALSE;
m_isSelected = false;
}
bool wxBitmapButton::Create( wxWindow *parent,
@@ -137,14 +137,14 @@ bool wxBitmapButton::Create( wxWindow *parent,
const wxValidator& validator,
const wxString &name )
{
m_needParent = TRUE;
m_acceptsFocus = TRUE;
m_needParent = true;
m_acceptsFocus = true;
if (!PreCreation( parent, pos, size ) ||
!CreateBase( parent, id, pos, size, style, validator, name ))
{
wxFAIL_MSG( wxT("wxBitmapButton creation failed") );
return FALSE;
return false;
}
m_bmpNormal = bitmap;
@@ -175,7 +175,7 @@ bool wxBitmapButton::Create( wxWindow *parent,
PostCreation(size);
return TRUE;
return true;
}
void wxBitmapButton::SetDefault()
@@ -195,7 +195,7 @@ void wxBitmapButton::SetLabel( const wxString &label )
wxString wxBitmapButton::GetLabel() const
{
wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid button") );
wxCHECK_MSG( m_widget != NULL, wxEmptyString, wxT("invalid button") );
return wxControl::GetLabel();
}
@@ -213,7 +213,7 @@ void wxBitmapButton::OnSetBitmap()
wxCHECK_RET( m_widget != NULL, wxT("invalid bitmap button") );
InvalidateBestSize();
wxBitmap the_one;
if (!m_isEnabled)
the_one = m_bmpDisabled;
@@ -222,19 +222,7 @@ void wxBitmapButton::OnSetBitmap()
else if (m_hasFocus)
the_one = m_bmpFocus;
else
{
if (m_isSelected)
{
the_one = m_bmpSelected;
}
else
{
if (m_hasFocus)
the_one = m_bmpFocus;
else
the_one = m_bmpNormal;
}
}
the_one = m_bmpNormal;
if (!the_one.Ok()) the_one = m_bmpNormal;
if (!the_one.Ok()) return;
@@ -281,34 +269,34 @@ wxSize wxBitmapButton::DoGetBestSize() const
bool wxBitmapButton::Enable( bool enable )
{
if ( !wxWindow::Enable(enable) )
return FALSE;
return false;
OnSetBitmap();
return TRUE;
return true;
}
void wxBitmapButton::HasFocus()
{
m_hasFocus = TRUE;
m_hasFocus = true;
OnSetBitmap();
}
void wxBitmapButton::NotFocus()
{
m_hasFocus = FALSE;
m_hasFocus = false;
OnSetBitmap();
}
void wxBitmapButton::StartSelect()
{
m_isSelected = TRUE;
m_isSelected = true;
OnSetBitmap();
}
void wxBitmapButton::EndSelect()
{
m_isSelected = FALSE;
m_isSelected = false;
OnSetBitmap();
}

View File

@@ -883,7 +883,7 @@ void wxTextCtrl::CalculateScrollbar()
wxString wxTextCtrl::GetValue() const
{
wxCHECK_MSG( m_text != NULL, wxT(""), wxT("invalid text ctrl") );
wxCHECK_MSG( m_text != NULL, wxEmptyString, wxT("invalid text ctrl") );
wxString tmp;
if (m_windowStyle & wxTE_MULTILINE)
@@ -1071,7 +1071,7 @@ wxString wxTextCtrl::GetLineText( long lineNo ) const
if (text)
{
wxString buf(wxT(""));
wxString buf;
long i;
int currentLine = 0;
for (i = 0; currentLine != lineNo && text[i]; i++ )
@@ -1725,7 +1725,7 @@ bool wxTextCtrl::IsModified() const
void wxTextCtrl::Clear()
{
SetValue( wxT("") );
SetValue( wxEmptyString );
}
void wxTextCtrl::OnChar( wxKeyEvent &key_event )
@@ -1896,6 +1896,7 @@ bool wxTextCtrl::SetStyle( long start, long end, const wxTextAttr& style )
// nothing to do
return true;
}
#ifdef __WXGTK20__
gint l = gtk_text_buffer_get_char_count( m_buffer );
@@ -1912,8 +1913,6 @@ bool wxTextCtrl::SetStyle( long start, long end, const wxTextAttr& style )
wxTextAttr attr = wxTextAttr::Combine(style, m_defaultStyle, this);
wxGtkTextApplyTagsFromAttr( m_buffer, attr, &starti, &endi );
return true;
#else
// VERY dirty way to do that - removes the required text and re-adds it
// with styling (FIXME)
@@ -1931,14 +1930,14 @@ bool wxTextCtrl::SetStyle( long start, long end, const wxTextAttr& style )
gtk_editable_delete_text( GTK_EDITABLE(m_text), start, end );
gtk_editable_set_position( GTK_EDITABLE(m_text), start );
#if wxUSE_UNICODE
#if wxUSE_UNICODE
wxWX2MBbuf buf = tmp.mbc_str();
const char *txt = buf;
size_t txtlen = strlen(buf);
#else
#else
const char *txt = tmp;
size_t txtlen = tmp.length();
#endif
#endif
// use the attributes from style which are set in it and fall back
// first to the default style and then to the text control default
@@ -1952,13 +1951,13 @@ bool wxTextCtrl::SetStyle( long start, long end, const wxTextAttr& style )
gtk_editable_set_position( GTK_EDITABLE(m_text), old_pos ); */
SetInsertionPoint( old_pos );
#endif
return true;
}
else // singe line
{
// cannot do this for GTK+'s Entry widget
return false;
}
// else single line
// cannot do this for GTK+'s Entry widget
return false;
}
void wxTextCtrl::DoApplyWidgetStyle(GtkRcStyle *style)

View File

@@ -309,14 +309,10 @@ void wxHtmlParser::DoParsing(int begin_pos, int end_pos)
}
else if (m_CurTag)
{
// Add tag:
if (m_CurTag)
{
if (m_CurTag->HasEnding())
begin_pos = m_CurTag->GetEndPos2();
else
begin_pos = m_CurTag->GetBeginPos();
}
if (m_CurTag->HasEnding())
begin_pos = m_CurTag->GetEndPos2();
else
begin_pos = m_CurTag->GetBeginPos();
wxHtmlTag *t = m_CurTag;
m_CurTag = m_CurTag->GetNextTag();
AddTag(*t);

View File

@@ -72,7 +72,7 @@ extern wxList wxPendingDelete;
// set wxMAC_USE_RAEL to 1 if RunApplicationEventLoop should be used
// if 0 the lower level CarbonEventLoop will be used
// on the long run RAEL should replace the low level event loop
// we will have to clean up event handling to make sure we don't
// we will have to clean up event handling to make sure we don't
// miss handling of things like pending events etc
// perhaps we will also have to pipe events through an ueber-event-handler
// to make sure we have one place to do all these house-keeping functions
@@ -85,9 +85,9 @@ extern size_t g_numberOfThreads;
// statics for implementation
static bool s_inYield = FALSE;
static bool s_inYield = false;
static bool s_inReceiveEvent = FALSE ;
static bool s_inReceiveEvent = false ;
static EventTime sleepTime = kEventDurationNoWait ;
IMPLEMENT_DYNAMIC_CLASS(wxApp, wxEvtHandler)
@@ -178,7 +178,7 @@ short wxApp::MacHandleAEODoc(const WXEVENTREF event, WXEVENTREF WXUNUSED(reply))
PSN.lowLongOfPSN = kCurrentProcess ;
SetFrontProcess( &PSN ) ;
for (i = 1; i <= itemsInList; i++)
for (i = 1; i <= itemsInList; i++)
{
wxString fName ;
@@ -246,7 +246,7 @@ short wxApp::MacHandleAEQuit(const WXEVENTREF WXUNUSED(event) , WXEVENTREF WXUNU
{
wxCommandEvent exitEvent(wxEVT_COMMAND_MENU_SELECTED, s_macExitMenuItemId);
if (!win->ProcessEvent(exitEvent))
win->Close(TRUE ) ;
win->Close(true) ;
}
else
{
@@ -297,7 +297,7 @@ void wxApp::MacPrintFile(const wxString & fileName )
if (printout)
{
wxPrinter printer;
printer.Print(view->GetFrame(), printout, TRUE);
printer.Print(view->GetFrame(), printout, true);
delete printout;
}
}
@@ -325,10 +325,10 @@ void wxApp::MacReopenApp()
// if there is no open window -> create a new one
// if all windows are hidden -> show the first
// if some windows are not hidden -> do nothing
wxWindowList::compatibility_iterator node = wxTopLevelWindows.GetFirst();
if ( node == NULL )
{
{
MacNewFile() ;
}
else
@@ -383,14 +383,14 @@ static const EventTypeSpec eventList[] =
static pascal OSStatus
wxMacAppMenuEventHandler( EventHandlerCallRef handler , EventRef event , void *data )
{
{
wxMacCarbonEvent cEvent( event ) ;
MenuRef menuRef = cEvent.GetParameter<MenuRef>(kEventParamDirectObject) ;
wxMenu* menu = wxFindMenuFromMacMenu( menuRef ) ;
if ( menu )
{
wxEventType type=0;
wxEventType type=0;
MenuCommand cmd=0;
switch (GetEventKind(event))
{
@@ -402,7 +402,7 @@ wxMacAppMenuEventHandler( EventHandlerCallRef handler , EventRef event , void *d
break;
case kEventMenuTargetItem:
cmd = cEvent.GetParameter<MenuCommand>(kEventParamMenuCommand,typeMenuCommand) ;
if (cmd != 0)
if (cmd != 0)
type = wxEVT_MENU_HIGHLIGHT;
break;
default:
@@ -423,12 +423,12 @@ wxMacAppMenuEventHandler( EventHandlerCallRef handler , EventRef event , void *d
else
{
wxWindow *win = menu->GetInvokingWindow();
if (win)
if (win)
win->GetEventHandler()->ProcessEvent(wxevent);
}
}
}
return eventNotHandledErr;
}
@@ -440,14 +440,14 @@ static pascal OSStatus wxMacAppCommandEventHandler( EventHandlerCallRef handler
wxMacCarbonEvent cEvent( event ) ;
cEvent.GetParameter<HICommand>(kEventParamDirectObject,typeHICommand,&command) ;
wxMenuItem* item = NULL ;
MenuCommand id = command.commandID ;
// for items we don't really control
if ( id == kHICommandPreferences )
{
id = wxApp::s_macPreferencesMenuItemId ;
wxMenuBar* mbar = wxMenuBar::MacGetInstalledMenuBar() ;
if ( mbar )
{
@@ -459,7 +459,7 @@ static pascal OSStatus wxMacAppCommandEventHandler( EventHandlerCallRef handler
{
GetMenuItemRefCon( command.menu.menuRef , command.menu.menuItemIndex , (UInt32*) &item ) ;
}
if ( item )
{
switch( cEvent.GetKind() )
@@ -532,7 +532,7 @@ pascal OSStatus wxMacAppEventHandler( EventHandlerCallRef handler , EventRef eve
case kEventClassMouse :
{
wxMacCarbonEvent cEvent( event ) ;
WindowRef window ;
Point screenMouseLocation = cEvent.GetParameter<Point>(kEventParamMouseLocation) ;
::FindWindow(screenMouseLocation, &window);
@@ -567,8 +567,8 @@ WXIMPORT char std::__throws_bad_alloc ;
#if __WXDEBUG__
pascal static void wxMacAssertOutputHandler(OSType componentSignature, UInt32 options,
const char *assertionString, const char *exceptionLabelString,
pascal static void wxMacAssertOutputHandler(OSType componentSignature, UInt32 options,
const char *assertionString, const char *exceptionLabelString,
const char *errorString, const char *fileName, long lineNumber, void *value, ConstStr255Param outputMsg)
{
// flow into assert handling
@@ -590,10 +590,10 @@ pascal static void wxMacAssertOutputHandler(OSType componentSignature, UInt32 op
#if 1
// flow into log
wxLogDebug( wxT("AssertMacros: %s %s %s file: %s, line: %ld (value %p)\n"),
assertionStr.c_str() ,
exceptionStr.c_str() ,
errorStr.c_str(),
wxLogDebug( wxT("AssertMacros: %s %s %s file: %s, line: %ld (value %p)\n"),
assertionStr.c_str() ,
exceptionStr.c_str() ,
errorStr.c_str(),
fileNameStr.c_str(), lineNumber ,
value ) ;
#else
@@ -675,7 +675,7 @@ bool wxApp::Initialize(int& argc, wxChar **argv)
CFRelease( url ) ;
CFStringRef path = CFURLCopyFileSystemPath ( urlParent , kCFURLPOSIXPathStyle ) ;
CFRelease( urlParent ) ;
wxString cwd = wxMacCFStringHolder(path).AsString(wxLocale::GetSystemEncoding());
wxString cwd = wxMacCFStringHolder(path).AsString(wxLocale::GetSystemEncoding());
wxSetWorkingDirectory( cwd ) ;
}
#endif
@@ -736,7 +736,7 @@ bool wxApp::OnInitGui()
sQuitHandler , 0 , FALSE ) ;
}
return TRUE ;
return true ;
}
void wxApp::CleanUp()
@@ -774,7 +774,7 @@ void wxApp::CleanUp()
{
RemoveEventHandler( (EventHandlerRef)(wxTheApp->m_macEventHandler) );
}
if (!sm_isEmbedded)
{
AERemoveEventHandler( kCoreEventClass , kAEOpenDocuments ,
@@ -787,7 +787,7 @@ void wxApp::CleanUp()
sRAppHandler , FALSE ) ;
AERemoveEventHandler( kCoreEventClass , kAEQuitApplication ,
sQuitHandler , FALSE ) ;
DisposeAEEventHandlerUPP( sODocHandler ) ;
DisposeAEEventHandlerUPP( sOAppHandler ) ;
DisposeAEEventHandlerUPP( sPDocHandler ) ;
@@ -917,7 +917,7 @@ wxApp::wxApp()
int wxApp::MainLoop()
{
m_keepGoing = TRUE;
m_keepGoing = true;
#if wxMAC_USE_RAEL
RunApplicationEventLoop() ;
#else
@@ -931,7 +931,7 @@ int wxApp::MainLoop()
void wxApp::ExitMainLoop()
{
m_keepGoing = FALSE;
m_keepGoing = false;
#if wxMAC_USE_RAEL
QuitApplicationEventLoop() ;
#endif
@@ -943,7 +943,7 @@ bool wxApp::Pending()
// without the receive event (with pull param = false ) nothing is ever reported
EventRef theEvent;
ReceiveNextEvent (0, NULL, kEventDurationNoWait, false, &theEvent);
return GetNumEventsInQueue( GetMainEventQueue() ) > 0 ;
return GetNumEventsInQueue( GetMainEventQueue() ) > 0 ;
}
// Dispatch a message.
@@ -987,7 +987,7 @@ void wxApp::Exit()
void wxApp::OnEndSession(wxCloseEvent& WXUNUSED(event))
{
if (GetTopWindow())
GetTopWindow()->Close(TRUE);
GetTopWindow()->Close(true);
}
// Default behaviour: close the application with prompts. The
@@ -997,7 +997,7 @@ void wxApp::OnQueryEndSession(wxCloseEvent& event)
if (GetTopWindow())
{
if (!GetTopWindow()->Close(!event.CanVeto()))
event.Veto(TRUE);
event.Veto(true);
}
}
@@ -1018,10 +1018,10 @@ bool wxApp::Yield(bool onlyIfNeeded)
wxFAIL_MSG( wxT("wxYield called recursively" ) );
}
return FALSE;
return false;
}
s_inYield = TRUE;
s_inYield = true;
// by definition yield should handle all non-processed events
@@ -1052,9 +1052,9 @@ bool wxApp::Yield(bool onlyIfNeeded)
} while( status == noErr ) ;
wxMacProcessNotifierAndPendingEvents() ;
s_inYield = FALSE;
s_inYield = false;
return TRUE;
return true;
}
void wxApp::MacDoOneEvent()
@@ -1090,7 +1090,7 @@ void wxApp::MacDoOneEvent()
/*virtual*/ void wxApp::MacHandleUnhandledEvent( WXEVENTREF evr )
{
// Override to process unhandled events as you please
// Override to process unhandled events as you please
}
void wxApp::MacHandleOneEvent( WXEVENTREF evr )
@@ -1116,102 +1116,118 @@ long wxMacTranslateKey(unsigned char key, unsigned char code)
switch (key)
{
case kHomeCharCode :
retval = WXK_HOME;
break;
retval = WXK_HOME;
break;
case kEnterCharCode :
retval = WXK_RETURN;
break;
retval = WXK_RETURN;
break;
case kEndCharCode :
retval = WXK_END;
break;
retval = WXK_END;
break;
case kHelpCharCode :
retval = WXK_HELP;
break;
retval = WXK_HELP;
break;
case kBackspaceCharCode :
retval = WXK_BACK;
break;
retval = WXK_BACK;
break;
case kTabCharCode :
retval = WXK_TAB;
break;
retval = WXK_TAB;
break;
case kPageUpCharCode :
retval = WXK_PAGEUP;
break;
retval = WXK_PAGEUP;
break;
case kPageDownCharCode :
retval = WXK_PAGEDOWN;
break;
retval = WXK_PAGEDOWN;
break;
case kReturnCharCode :
retval = WXK_RETURN;
break;
case kFunctionKeyCharCode :
retval = WXK_RETURN;
break;
case kFunctionKeyCharCode :
{
switch( code )
{
switch( code )
{
case 0x7a :
retval = WXK_F1 ;
break;
case 0x78 :
retval = WXK_F2 ;
break;
case 0x63 :
retval = WXK_F3 ;
break;
case 0x76 :
retval = WXK_F4 ;
break;
case 0x60 :
retval = WXK_F5 ;
break;
case 0x61 :
retval = WXK_F6 ;
break;
case 0x62:
retval = WXK_F7 ;
break;
case 0x64 :
retval = WXK_F8 ;
break;
case 0x65 :
retval = WXK_F9 ;
break;
case 0x6D :
retval = WXK_F10 ;
break;
case 0x67 :
retval = WXK_F11 ;
break;
case 0x6F :
retval = WXK_F12 ;
break;
case 0x69 :
retval = WXK_F13 ;
break;
case 0x6B :
retval = WXK_F14 ;
break;
case 0x71 :
retval = WXK_F15 ;
break;
}
case 0x7a :
retval = WXK_F1 ;
break;
case 0x78 :
retval = WXK_F2 ;
break;
case 0x63 :
retval = WXK_F3 ;
break;
case 0x76 :
retval = WXK_F4 ;
break;
case 0x60 :
retval = WXK_F5 ;
break;
case 0x61 :
retval = WXK_F6 ;
break;
case 0x62:
retval = WXK_F7 ;
break;
case 0x64 :
retval = WXK_F8 ;
break;
case 0x65 :
retval = WXK_F9 ;
break;
case 0x6D :
retval = WXK_F10 ;
break;
case 0x67 :
retval = WXK_F11 ;
break;
case 0x6F :
retval = WXK_F12 ;
break;
case 0x69 :
retval = WXK_F13 ;
break;
case 0x6B :
retval = WXK_F14 ;
break;
case 0x71 :
retval = WXK_F15 ;
break;
}
}
break ;
case kEscapeCharCode :
retval = WXK_ESCAPE ;
break ;
case kEscapeCharCode :
retval = WXK_ESCAPE ;
case kLeftArrowCharCode :
retval = WXK_LEFT ;
break ;
case kLeftArrowCharCode :
retval = WXK_LEFT ;
case kRightArrowCharCode :
retval = WXK_RIGHT ;
break ;
case kRightArrowCharCode :
retval = WXK_RIGHT ;
case kUpArrowCharCode :
retval = WXK_UP ;
break ;
case kUpArrowCharCode :
retval = WXK_UP ;
case kDownArrowCharCode :
retval = WXK_DOWN ;
break ;
case kDownArrowCharCode :
retval = WXK_DOWN ;
case kDeleteCharCode :
retval = WXK_DELETE ;
break ;
case kDeleteCharCode :
retval = WXK_DELETE ;
default:
default:
break ;
} // end switch
@@ -1252,9 +1268,9 @@ bool wxGetKeyState(wxKeyCode key) //virtual key code if < 10.2.x, else see below
//if OS X > 10.2 (i.e. 10.2.x)
//a known apple bug prevents the system from determining led
//states with GetKeys... can only determine caps lock led
return !!(GetCurrentKeyModifiers() & wxMacKeyCodeToModifier(key));
return !!(GetCurrentKeyModifiers() & wxMacKeyCodeToModifier(key));
//else
// KeyMapByteArray keymap;
// KeyMapByteArray keymap;
// GetKeys((BigEndianLong*)keymap);
// return !!(BitTst(keymap, (sizeof(KeyMapByteArray)*8) - iKey));
}
@@ -1340,35 +1356,34 @@ bool wxApp::MacSendKeyDownEvent( wxWindow* focus , long keymessage , long modifi
handled = focus->GetEventHandler()->ProcessEvent( event ) ;
if ( handled && event.GetSkipped() )
handled = false ;
#if wxUSE_ACCEL
if ( !handled )
{
#if wxUSE_ACCEL
if (!handled)
wxWindow *ancestor = focus;
while (ancestor)
{
wxWindow *ancestor = focus;
while (ancestor)
int command = ancestor->GetAcceleratorTable()->GetCommand( event );
if (command != -1)
{
int command = ancestor->GetAcceleratorTable()->GetCommand( event );
if (command != -1)
{
wxCommandEvent command_event( wxEVT_COMMAND_MENU_SELECTED, command );
handled = ancestor->GetEventHandler()->ProcessEvent( command_event );
break;
}
if (ancestor->IsTopLevel())
break;
ancestor = ancestor->GetParent();
wxCommandEvent command_event( wxEVT_COMMAND_MENU_SELECTED, command );
handled = ancestor->GetEventHandler()->ProcessEvent( command_event );
break;
}
if (ancestor->IsTopLevel())
break;
ancestor = ancestor->GetParent();
}
#endif // wxUSE_ACCEL
}
#endif // wxUSE_ACCEL
if (!handled)
{
wxTopLevelWindowMac *tlw = focus->MacGetTopLevelWindow() ;
if (tlw)
{
event.Skip( FALSE ) ;
event.Skip( false ) ;
event.SetEventType( wxEVT_CHAR_HOOK );
// raw value again
event.m_keyCode = realkeyval ;
@@ -1378,10 +1393,10 @@ bool wxApp::MacSendKeyDownEvent( wxWindow* focus , long keymessage , long modifi
handled = false ;
}
}
if ( !handled )
{
event.Skip( FALSE ) ;
{
event.Skip( false ) ;
event.SetEventType( wxEVT_CHAR ) ;
// raw value again
event.m_keyCode = realkeyval ;

View File

@@ -39,10 +39,10 @@ IMPLEMENT_DYNAMIC_CLASS(wxBitmapHandler, wxObject )
#include "wx/dcmemory.h"
// Implementation Notes
// --------------------
// --------------------
//
// we are always working with a 32 bit deep pixel buffer
// under QuickDraw its alpha parts are going to be ignored in the GWorld,
// we are always working with a 32 bit deep pixel buffer
// under QuickDraw its alpha parts are going to be ignored in the GWorld,
// therefore we have a separate GWorld there for blitting the mask in
// under Quartz then content is transformed into a CGImageRef representing the same data
@@ -61,18 +61,18 @@ void wxMacCreateBitmapButton( ControlButtonContentInfo*info , const wxBitmap& bi
wxBitmapRefData * bmap = bitmap.GetBitmapData() ;
if ( bmap == NULL )
return ;
if ( ( bmap->HasNativeSize() && forceType == 0 ) || forceType == kControlContentIconRef )
{
wxBitmap scaleBmp ;
wxBitmapRefData* bmp = bmap ;
if ( !bmap->HasNativeSize() )
{
// as PICT conversion will only result in a 16x16 icon, let's attempt
// a few scales for better results
// a few scales for better results
int w = bitmap.GetWidth() ;
int h = bitmap.GetHeight() ;
int sz = wxMax( w , h ) ;
@@ -82,7 +82,7 @@ void wxMacCreateBitmapButton( ControlButtonContentInfo*info , const wxBitmap& bi
bmp = scaleBmp.GetBitmapData() ;
}
}
info->contentType = kControlContentIconRef ;
info->u.iconRef = bmp->GetIconRef() ;
AcquireIconRef( info->u.iconRef ) ;
@@ -157,16 +157,16 @@ wxBitmapRefData::wxBitmapRefData()
Init() ;
}
wxBitmapRefData::wxBitmapRefData( int w , int h , int d )
wxBitmapRefData::wxBitmapRefData( int w , int h , int d )
{
Init() ;
Create( w , h , d ) ;
}
bool wxBitmapRefData::Create( int w , int h , int d )
bool wxBitmapRefData::Create( int w , int h , int d )
{
m_width = w ;
m_height = h ;
m_height = h ;
m_depth = d ;
m_bytesPerRow = w * 4 ;
@@ -178,18 +178,18 @@ bool wxBitmapRefData::Create( int w , int h , int d )
m_hBitmap = NULL ;
Rect rect = { 0 , 0 , m_height , m_width } ;
verify_noerr( NewGWorldFromPtr( (GWorldPtr*) &m_hBitmap , k32ARGBPixelFormat , &rect , NULL , NULL , 0 ,
(char*) data , m_bytesPerRow ) ) ;
(char*) data , m_bytesPerRow ) ) ;
wxASSERT_MSG( m_hBitmap , wxT("Unable to create GWorld context") ) ;
m_ok = ( m_hBitmap != NULL ) ;
return m_ok ;
return m_ok ;
}
void wxBitmapRefData::UseAlpha( bool use )
{
if ( m_hasAlpha == use )
return ;
m_hasAlpha = use ;
if ( m_hasAlpha )
{
@@ -202,7 +202,7 @@ void wxBitmapRefData::UseAlpha( bool use )
wxASSERT( m_hMaskBitmap == NULL ) ;
Rect rect = { 0 , 0 , height , width } ;
verify_noerr( NewGWorldFromPtr( (GWorldPtr*) &m_hMaskBitmap , k32ARGBPixelFormat , &rect , NULL , NULL , 0 ,
(char*) data , m_maskBytesPerRow ) ) ;
(char*) data , m_maskBytesPerRow ) ) ;
wxASSERT_MSG( m_hMaskBitmap , wxT("Unable to create GWorld context for alpha mask") ) ;
m_maskMemBuf.UngetWriteBuf(size) ;
#if !wxMAC_USE_CORE_GRAPHICS
@@ -223,14 +223,14 @@ void *wxBitmapRefData::GetRawAccess() const
return m_memBuf.GetData() ;
}
void *wxBitmapRefData::BeginRawAccess()
void *wxBitmapRefData::BeginRawAccess()
{
wxCHECK_MSG( Ok(), NULL, wxT("invalid bitmap") ) ;
wxASSERT( m_rawAccessCount == 0 ) ;
++m_rawAccessCount ;
// we must destroy an existing cached image, as
// the bitmap data may change now
wxASSERT_MSG( m_pictHandle == NULL && m_iconRef == NULL ,
wxASSERT_MSG( m_pictHandle == NULL && m_iconRef == NULL ,
wxT("Currently, modifing bitmaps that are used in controls already is not supported") ) ;
#if wxMAC_USE_CORE_GRAPHICS
if ( m_cgImageRef )
@@ -257,7 +257,7 @@ bool wxBitmapRefData::HasNativeSize()
int w = GetWidth() ;
int h = GetHeight() ;
int sz = wxMax( w , h ) ;
if ( sz == 128 || sz == 48 || sz == 32 || sz == 16 )
return true ;
return false ;
@@ -268,17 +268,17 @@ IconRef wxBitmapRefData::GetIconRef()
if ( m_iconRef == NULL )
{
// Create Icon Family Handle
IconFamilyHandle iconFamily = NULL ;
iconFamily = (IconFamilyHandle) NewHandle(8) ;
(**iconFamily).resourceType = kIconFamilyType ;
(**iconFamily).resourceSize = sizeof(OSType) + sizeof(Size);
int w = GetWidth() ;
int h = GetHeight() ;
int sz = wxMax( w , h ) ;
OSType dataType = 0 ;
OSType maskType = 0 ;
@@ -307,7 +307,7 @@ IconRef wxBitmapRefData::GetIconRef()
{
// setup the header properly
Handle data = NULL ;
Handle data = NULL ;
Handle maskdata = NULL ;
unsigned char * maskptr = NULL ;
unsigned char * ptr = NULL ;
@@ -315,13 +315,13 @@ IconRef wxBitmapRefData::GetIconRef()
size_t masksize ;
size = sz * sz * 4 ;
data = NewHandle( size) ;
data = NewHandle( size) ;
HLock( data ) ;
ptr = (unsigned char*) *data ;
memset( ptr , 0, size ) ;
masksize = sz * sz ;
maskdata = NewHandle( masksize ) ;
maskdata = NewHandle( masksize ) ;
HLock( maskdata ) ;
maskptr = (unsigned char*) *maskdata ;
memset( maskptr , 0 , masksize ) ;
@@ -340,12 +340,12 @@ IconRef wxBitmapRefData::GetIconRef()
unsigned char r = *source ++ ;
unsigned char g = *source ++ ;
unsigned char b = *source ++ ;
*dest++ = 0 ;
*dest++ = r ;
*dest++ = g ;
*dest++ = b ;
if ( mask )
*maskdest++ = *masksource++ ;
else if ( hasAlpha )
@@ -354,7 +354,7 @@ IconRef wxBitmapRefData::GetIconRef()
*maskdest++ = 0xFF ;
}
}
OSStatus err = SetIconFamilyData( iconFamily, dataType , data ) ;
wxASSERT_MSG( err == noErr , wxT("Error when adding bitmap") ) ;
@@ -370,16 +370,16 @@ IconRef wxBitmapRefData::GetIconRef()
PicHandle pic = GetPictHandle() ;
SetIconFamilyData( iconFamily, 'PICT' , (Handle) pic ) ;
}
// transform into IconRef
static int iconCounter = 2 ;
static int iconCounter = 2 ;
#ifdef __WXDEBUG__
OSStatus err =
OSStatus err =
#endif
RegisterIconRefFromIconFamily( 'WXNG' , (OSType) iconCounter, iconFamily, &m_iconRef ) ;
wxASSERT_MSG( err == noErr , wxT("Error when adding bitmap") ) ;
// we have to retain a reference, as Unregister will decrement it
// we have to retain a reference, as Unregister will decrement it
AcquireIconRef( m_iconRef ) ;
UnregisterIconRef( 'WXNG' , (OSType) iconCounter ) ;
DisposeHandle( (Handle) iconFamily ) ;
@@ -398,7 +398,7 @@ PicHandle wxBitmapRefData::GetPictHandle()
GWorldPtr mask = NULL ;
int height = GetHeight() ;
int width = GetWidth() ;
Rect rect = { 0 , 0 , height , width } ;
GetGWorld( &origPort , &origDev ) ;
@@ -435,7 +435,7 @@ PicHandle wxBitmapRefData::GetPictHandle()
Rect portRect ;
GetPortBounds( wp , &portRect ) ;
m_pictHandle = OpenPicture(&portRect);
if(m_pictHandle)
{
RGBColor white = { 0xffff ,0xffff , 0xffff } ;
@@ -483,7 +483,7 @@ CGImageRef wxBitmapRefData::CGImageCreate() const
int h = m_height ;
CGImageAlphaInfo alphaInfo = kCGImageAlphaNoneSkipFirst ;
wxMemoryBuffer* membuf = NULL ;
if ( m_bitmapMask )
{
membuf = new wxMemoryBuffer( imageSize ) ;
@@ -515,13 +515,13 @@ CGImageRef wxBitmapRefData::CGImageCreate() const
membuf = new wxMemoryBuffer( m_memBuf ) ;
}
CGColorSpaceRef colorSpace = wxMacGetGenericRGBColorSpace();
CGDataProviderRef dataProvider =
CGDataProviderCreateWithData( membuf , (const void *)membuf->GetData() , imageSize,
wxMacMemoryBufferReleaseProc );
image =
::CGImageCreate( w, h, 8 , 32 , 4 * m_width , colorSpace, alphaInfo ,
dataProvider, NULL , false , kCGRenderingIntentDefault );
CGDataProviderRelease( dataProvider);
CGDataProviderRef dataProvider =
CGDataProviderCreateWithData( membuf , (const void *)membuf->GetData() , imageSize,
wxMacMemoryBufferReleaseProc );
image =
::CGImageCreate( w, h, 8 , 32 , 4 * m_width , colorSpace, alphaInfo ,
dataProvider, NULL , false , kCGRenderingIntentDefault );
CGDataProviderRelease( dataProvider);
}
else
{
@@ -533,7 +533,7 @@ CGImageRef wxBitmapRefData::CGImageCreate() const
// we keep it for later use
m_cgImageRef = image ;
CGImageRetain( image ) ;
}
}
return image ;
}
#endif
@@ -545,7 +545,7 @@ GWorldPtr wxBitmapRefData::GetHBITMAP(GWorldPtr* mask) const
{
*mask = NULL ;
if ( m_bitmapMask )
*mask = (GWorldPtr) m_bitmapMask->GetHBITMAP() ;
*mask = (GWorldPtr) m_bitmapMask->GetHBITMAP() ;
else if ( m_hasAlpha )
{
#if !wxMAC_USE_CORE_GRAPHICS
@@ -562,16 +562,16 @@ GWorldPtr wxBitmapRefData::GetHBITMAP(GWorldPtr* mask) const
return m_hBitmap ;
}
void wxBitmapRefData::UpdateAlphaMask() const
void wxBitmapRefData::UpdateAlphaMask() const
{
if ( m_hasAlpha )
{
unsigned char *sourcemask = (unsigned char *) GetRawAccess() ;
unsigned char *destalphabase = (unsigned char *) m_maskMemBuf.GetData() ;
int h = GetHeight() ;
int w = GetWidth() ;
for ( int y = 0 ; y < h ; ++y , destalphabase += m_maskBytesPerRow )
{
unsigned char* destalpha = destalphabase ;
@@ -646,10 +646,10 @@ bool wxBitmap::CopyFromIcon(const wxIcon& icon)
IconFamilyHandle iconFamily = NULL ;
Handle imagehandle = NewHandle(0) ;
Handle maskhandle = NewHandle(0) ;
OSType maskType = 0;
OSType dataType = 0;
IconSelectorValue selector = 0 ;
IconSelectorValue selector = 0 ;
if ( w == 128 )
{
dataType = kThumbnail32BitData ;
@@ -677,12 +677,12 @@ bool wxBitmap::CopyFromIcon(const wxIcon& icon)
OSStatus err = ( IconRefToIconFamily( MAC_WXHICON(icon.GetHICON()) , selector , &iconFamily ) ) ;
err =( GetIconFamilyData( iconFamily , dataType , imagehandle ) ) ;
err =( GetIconFamilyData( iconFamily , maskType , maskhandle ) ) ;
size_t imagehandlesize = GetHandleSize( imagehandle ) ;
size_t maskhandlesize = GetHandleSize( maskhandle ) ;
if ( imagehandlesize != 0 && maskhandlesize != 0 )
{
wxASSERT( GetHandleSize( imagehandle ) == w * 4 * h ) ;
@@ -690,7 +690,7 @@ bool wxBitmap::CopyFromIcon(const wxIcon& icon)
UseAlpha() ;
unsigned char *source = (unsigned char *) *imagehandle ;
unsigned char *sourcemask = (unsigned char *) *maskhandle ;
unsigned char* destination = (unsigned char*) BeginRawAccess() ;
for ( int y = 0 ; y < h ; ++y )
{
@@ -709,11 +709,11 @@ bool wxBitmap::CopyFromIcon(const wxIcon& icon)
created = true ;
}
DisposeHandle( (Handle) iconFamily ) ;
}
if ( !created )
{
{
wxMemoryDC dc ;
dc.SelectObject( *this ) ;
dc.DrawIcon( icon , 0 , 0 ) ;
@@ -804,7 +804,7 @@ void* wxBitmap::GetRawAccess() const
return M_BITMAPDATA->GetRawAccess() ;
}
void* wxBitmap::BeginRawAccess()
void* wxBitmap::BeginRawAccess()
{
wxCHECK_MSG( Ok() , NULL , wxT("invalid bitmap") ) ;
return M_BITMAPDATA->BeginRawAccess() ;
@@ -819,14 +819,14 @@ void wxBitmap::EndRawAccess()
bool wxBitmap::CreateFromXpm(const char **bits)
{
#if wxUSE_IMAGE
wxCHECK_MSG( bits != NULL, FALSE, wxT("invalid bitmap data") )
wxCHECK_MSG( bits != NULL, false, wxT("invalid bitmap data") )
wxXPMDecoder decoder;
wxImage img = decoder.ReadData(bits);
wxCHECK_MSG( img.Ok(), FALSE, wxT("invalid bitmap data") )
wxCHECK_MSG( img.Ok(), false, wxT("invalid bitmap data") )
*this = wxBitmap(img);
return TRUE;
return true;
#else
return FALSE;
return false;
#endif
}
@@ -867,7 +867,7 @@ wxBitmap wxBitmap::GetSubBitmap(const wxRect &rect) const
}
}
ret.EndRawAccess() ;
if ( M_BITMAPDATA->m_bitmapMask )
{
wxMemoryBuffer maskbuf ;
@@ -943,7 +943,7 @@ bool wxBitmap::Create(void *data, wxBitmapType type, int width, int height, int
if ( handler == NULL ) {
wxLogWarning(wxT("no bitmap handler for type %d defined."), type);
return FALSE;
return false;
}
return handler->Create(this, data, type, width, height, depth);
@@ -964,7 +964,7 @@ wxBitmap::wxBitmap(const wxImage& image, int depth)
// Create picture
bool hasAlpha = false ;
if ( image.HasMask() )
{
// takes precedence, don't mix with alpha info
@@ -973,10 +973,10 @@ wxBitmap::wxBitmap(const wxImage& image, int depth)
{
hasAlpha = image.HasAlpha() ;
}
if ( hasAlpha )
UseAlpha() ;
unsigned char* destination = (unsigned char*) BeginRawAccess() ;
register unsigned char* data = image.GetData();
@@ -1054,7 +1054,7 @@ wxImage wxBitmap::ConvertToImage() const
alpha = image.GetAlpha() ;
}
int index = 0;
// The following masking algorithm is the same as well in msw/gtk:
// the colour used as transparent one in wxImage and the one it is
// replaced with when it really occurs in the bitmap
@@ -1104,22 +1104,24 @@ wxImage wxBitmap::ConvertToImage() const
bool wxBitmap::SaveFile(const wxString& filename, wxBitmapType type,
const wxPalette *palette) const
{
bool success = false;
wxBitmapHandler *handler = FindHandler(type);
if ( handler )
{
return handler->SaveFile(this, filename, type, palette);
success = handler->SaveFile(this, filename, type, palette);
}
else
{
#if wxUSE_IMAGE
wxImage image = ConvertToImage();
return image.SaveFile(filename, type);
success = image.SaveFile(filename, type);
#else
wxLogWarning(wxT("no bitmap handler for type %d defined."), type);
#endif
}
wxLogWarning(wxT("no bitmap handler for type %d defined."), type);
return false;
return success;
}
bool wxBitmap::Ok() const
@@ -1284,7 +1286,7 @@ wxMask::~wxMask()
}
}
void wxMask::Init()
void wxMask::Init()
{
m_width = m_height = m_bytesPerRow = 0 ;
m_maskBitmap = NULL ;
@@ -1298,7 +1300,7 @@ void *wxMask::GetRawAccess() const
// this can be a k8IndexedGrayPixelFormat GWorld, because it never stores other values than black or white
// so no rainbox colors will be created by QD when blitting
void wxMask::RealizeNative()
void wxMask::RealizeNative()
{
if ( m_maskBitmap )
{
@@ -1307,7 +1309,7 @@ void wxMask::RealizeNative()
}
Rect rect = { 0 , 0 , m_height , m_width } ;
verify_noerr( NewGWorldFromPtr( (GWorldPtr*) &m_maskBitmap , k8IndexedGrayPixelFormat , &rect , NULL , NULL , 0 ,
(char*) m_memBuf.GetData() , m_bytesPerRow ) ) ;
(char*) m_memBuf.GetData() , m_bytesPerRow ) ) ;
}
// Create a mask from a mono bitmap (copies the bitmap).
@@ -1349,7 +1351,7 @@ bool wxMask::Create(const wxBitmap& bitmap)
}
m_memBuf.UngetWriteBuf( size ) ;
RealizeNative() ;
return TRUE;
return true;
}
// Create a mask from a bitmap and a colour indicating
@@ -1381,7 +1383,7 @@ bool wxMask::Create(const wxBitmap& bitmap, const wxColour& colour)
}
m_memBuf.UngetWriteBuf( size ) ;
RealizeNative() ;
return TRUE;
return true;
}
WXHBITMAP wxMask::GetHBITMAP() const
@@ -1399,18 +1401,18 @@ wxBitmapHandler::~wxBitmapHandler()
bool wxBitmapHandler::Create(wxBitmap *bitmap, void *data, long type, int width, int height, int depth)
{
return FALSE;
return false;
}
bool wxBitmapHandler::LoadFile(wxBitmap *bitmap, const wxString& name, long flags,
int desiredWidth, int desiredHeight)
{
return FALSE;
return false;
}
bool wxBitmapHandler::SaveFile(const wxBitmap *bitmap, const wxString& name, int type, const wxPalette *palette)
{
return FALSE;
return false;
}
// ----------------------------------------------------------------------------
@@ -1451,10 +1453,10 @@ bool wxPICTResourceHandler::LoadFile(wxBitmap *bitmap, const wxString& name, lo
dc.SelectObject( *bitmap ) ;
mf.Play( &dc ) ;
dc.SelectObject( wxNullBitmap ) ;
return TRUE ;
return true ;
}
#endif //wxUSE_METAFILE
return FALSE ;
return false ;
}

View File

@@ -46,17 +46,17 @@ wxColourDialog::wxColourDialog(wxWindow *parent, wxColourData *data)
bool wxColourDialog::Create(wxWindow *parent, wxColourData *data)
{
m_dialogParent = parent;
if (data)
m_colourData = *data;
return TRUE;
return true;
}
int wxColourDialog::ShowModal()
{
Point where ;
RGBColor currentColor = *((RGBColor*)m_colourData.m_dataColour.GetPixel()) , newColor ;
where.h = where.v = -1;
if (GetColor( where, "\pSelect a new palette color.", &currentColor, &newColor ))
@@ -64,10 +64,6 @@ int wxColourDialog::ShowModal()
m_colourData.m_dataColour.Set( (WXCOLORREF*) &newColor ) ;
return wxID_OK;
}
else
{
return wxID_CANCEL;
}
return wxID_CANCEL;
}

View File

@@ -51,62 +51,47 @@ wxDirDialog::wxDirDialog(wxWindow *parent,
int wxDirDialog::ShowModal()
{
NavDialogOptions mNavOptions;
NavObjectFilterUPP mNavFilterUPP = NULL;
NavPreviewUPP mNavPreviewUPP = NULL ;
NavReplyRecord mNavReply;
AEDesc* mDefaultLocation = NULL ;
bool mSelectDefault = false ;
NavObjectFilterUPP mNavFilterUPP = NULL;
NavReplyRecord mNavReply;
::NavGetDefaultDialogOptions(&mNavOptions);
mNavFilterUPP = nil;
mNavPreviewUPP = nil;
mSelectDefault = false;
mNavReply.validRecord = false;
mNavReply.replacing = false;
mNavReply.isStationery = false;
mNavReply.translationNeeded = false;
mNavReply.validRecord = false;
mNavReply.replacing = false;
mNavReply.isStationery = false;
mNavReply.translationNeeded = false;
mNavReply.selection.descriptorType = typeNull;
mNavReply.selection.dataHandle = nil;
mNavReply.keyScript = smSystemScript;
mNavReply.fileTranslation = nil;
mNavReply.selection.dataHandle = nil;
mNavReply.keyScript = smSystemScript;
mNavReply.fileTranslation = nil;
// Set default location, the location
// that's displayed when the dialog
// first appears
if ( mDefaultLocation ) {
if (mSelectDefault) {
mNavOptions.dialogOptionFlags |= kNavSelectDefaultLocation;
} else {
mNavOptions.dialogOptionFlags &= ~kNavSelectDefaultLocation;
}
}
OSErr err = ::NavChooseFolder(
mDefaultLocation,
NULL,
&mNavReply,
&mNavOptions,
NULL,
mNavFilterUPP,
0L); // User Data
if ( (err != noErr) && (err != userCanceledErr) ) {
m_path = wxT("") ;
m_path = wxEmptyString ;
return wxID_CANCEL ;
}
if (mNavReply.validRecord) { // User chose a folder
FSRef folderInfo;
AEDesc specDesc ;
OSErr err = ::AECoerceDesc( &mNavReply.selection , typeFSRef, &specDesc);
if ( err != noErr ) {
m_path = wxT("") ;
m_path = wxEmptyString ;
return wxID_CANCEL ;
}
}
folderInfo = **(FSRef**) specDesc.dataHandle;
if (specDesc.dataHandle != nil) {
::AEDisposeDesc(&specDesc);

View File

@@ -40,7 +40,7 @@ END_EVENT_TABLE()
IMPLEMENT_DYNAMIC_CLASS(wxFrame, wxTopLevelWindow)
#define WX_MAC_STATUSBAR_HEIGHT 18
#define WX_MAC_STATUSBAR_HEIGHT 18
// ----------------------------------------------------------------------------
// creation/destruction
// ----------------------------------------------------------------------------
@@ -48,15 +48,15 @@ IMPLEMENT_DYNAMIC_CLASS(wxFrame, wxTopLevelWindow)
void wxFrame::Init()
{
m_frameMenuBar = NULL;
#if wxUSE_TOOLBAR
m_frameToolBar = NULL ;
#endif
m_frameStatusBar = NULL;
m_winLastFocused = NULL ;
m_iconized = FALSE;
m_iconized = false;
#if wxUSE_TOOLTIPS
m_hwndToolTip = 0;
#endif
@@ -70,18 +70,18 @@ bool wxFrame::Create(wxWindow *parent,
long style,
const wxString& name)
{
if ( !wxTopLevelWindow::Create(parent, id, title, pos, size, style, name) )
return FALSE;
return false;
wxModelessWindows.Append(this);
return TRUE;
return true;
}
wxFrame::~wxFrame()
{
m_isBeingDeleted = TRUE;
m_isBeingDeleted = true;
DeleteAllBars();
}
@@ -89,18 +89,18 @@ wxFrame::~wxFrame()
bool wxFrame::Enable(bool enable)
{
if ( !wxWindow::Enable(enable) )
return FALSE;
return false;
if ( m_frameMenuBar && m_frameMenuBar == wxMenuBar::MacGetInstalledMenuBar() )
{
int iMaxMenu = m_frameMenuBar->GetMenuCount();
int iMaxMenu = m_frameMenuBar->GetMenuCount();
for ( int i = 0 ; i < iMaxMenu ; ++ i )
{
m_frameMenuBar->EnableTop( i , enable ) ;
}
}
return TRUE;
return true;
}
wxStatusBar *wxFrame::OnCreateStatusBar(int number, long style, wxWindowID id,
@@ -121,7 +121,7 @@ void wxFrame::PositionStatusBar()
{
int w, h;
GetClientSize(&w, &h);
// Since we wish the status bar to be directly under the client area,
// we use the adjusted sizes without using wxSIZE_NO_ADJUSTMENTS.
m_frameStatusBar->SetSize(0, h, w, WX_MAC_STATUSBAR_HEIGHT);
@@ -222,14 +222,14 @@ void wxFrame::AttachMenuBar( wxMenuBar *menuBar )
void wxFrame::DoGetClientSize(int *x, int *y) const
{
wxTopLevelWindow::DoGetClientSize( x , y ) ;
#if wxUSE_STATUSBAR
if ( GetStatusBar() && GetStatusBar()->IsShown() && y )
{
if ( y) *y -= WX_MAC_STATUSBAR_HEIGHT;
*y -= WX_MAC_STATUSBAR_HEIGHT;
}
#endif // wxUSE_STATUSBAR
#if wxUSE_TOOLBAR
wxToolBar *toolbar = GetToolBar();
if ( toolbar && toolbar->IsShown() )
@@ -249,7 +249,7 @@ void wxFrame::DoGetClientSize(int *x, int *y) const
#endif // wxUSE_TOOLBAR
}
bool wxFrame::MacIsChildOfClientArea( const wxWindow* child ) const
bool wxFrame::MacIsChildOfClientArea( const wxWindow* child ) const
{
#if wxUSE_STATUSBAR
if ( child == GetStatusBar() )
@@ -268,14 +268,14 @@ void wxFrame::DoSetClientSize(int clientwidth, int clientheight)
{
int currentclientwidth , currentclientheight ;
int currentwidth , currentheight ;
GetClientSize( &currentclientwidth , &currentclientheight ) ;
if ( clientwidth == -1 )
clientwidth = currentclientwidth ;
if ( clientheight == -1 )
clientheight = currentclientheight ;
GetSize( &currentwidth , &currentheight ) ;
// find the current client size
// Find the difference between the entire window (title bar and all)
@@ -315,7 +315,7 @@ void wxFrame::PositionToolBar()
{
int tx, ty, tw, th;
tx = ty = 0 ;
GetToolBar()->GetSize(& tw, & th);
if (GetToolBar()->GetWindowStyleFlag() & wxTB_VERTICAL)
{

View File

@@ -23,17 +23,16 @@
#if wxUSE_SOCKETS || defined(__GSOCKET_STANDALONE__)
#ifdef __DARWIN__
#include <CoreServices/CoreServices.h>
#include <CoreServices/CoreServices.h>
#else
#include <MacHeaders.c>
#define OTUNIXERRORS 1
#include <OpenTransport.h>
#include <OpenTransportProviders.h>
#include <OpenTptInternet.h>
#include <MacHeaders.c>
#define OTUNIXERRORS 1
#include <OpenTransport.h>
#include <OpenTransportProviders.h>
#include <OpenTptInternet.h>
#endif
#if TARGET_CARBON && !defined(OTAssert)
#define OTAssert( str , cond ) /* does not exists in Carbon */
#define OTAssert( str , cond ) /* does not exists in Carbon */
#endif
#include <assert.h>
@@ -61,22 +60,22 @@
#endif
#ifndef __GSOCKET_STANDALONE__
#include "wx/mac/macnotfy.h"
#include "wx/mac/gsockmac.h"
#include "wx/gsocket.h"
#include "wx/mac/macnotfy.h"
#include "wx/mac/gsockmac.h"
#include "wx/gsocket.h"
#else
#include "gsockmac.h"
#include "gsocket.h"
#include "gsockmac.h"
#include "gsocket.h"
#endif /* __GSOCKET_STANDALONE__ */
#ifndef ntohl
#define ntohl(x) (x)
#define ntohs(x) (x)
#define htonl(x) (x)
#define htons(x) (x)
#define ntohl(x) (x)
#define ntohs(x) (x)
#define htonl(x) (x)
#define htons(x) (x)
#endif
void wxCYield() ;
@@ -95,104 +94,104 @@ OTNotifyUPP gOTNotifierUPP = NULL ;
OSStatus DoNegotiateIPReuseAddrOption(EndpointRef ep, Boolean enableReuseIPMode);
/* Input: ep - endpointref on which to negotiate the option
enableReuseIPMode - desired option setting - true/false
enableReuseIPMode - desired option setting - true/false
Return: kOTNoError indicates that the option was successfully negotiated
OSStatus is an error if < 0, otherwise, the status field is
returned and is > 0.
IMPORTANT NOTE: The endpoint is assumed to be in synchronous more, otherwise
this code will not function as desired
OSStatus is an error if < 0, otherwise, the status field is
returned and is > 0.
IMPORTANT NOTE: The endpoint is assumed to be in synchronous more, otherwise
this code will not function as desired
*/
OSStatus DoNegotiateIPReuseAddrOption(EndpointRef ep, Boolean enableReuseIPMode)
{
UInt8 buf[kOTFourByteOptionSize]; // define buffer for fourByte Option size
TOption* opt; // option ptr to make items easier to access
TOptMgmt req;
TOptMgmt ret;
OSStatus err;
if (!OTIsSynchronous(ep))
{
return (-1);
}
opt = (TOption*)buf; // set option ptr to buffer
req.opt.buf = buf;
req.opt.len = sizeof(buf);
req.flags = T_NEGOTIATE; // negotiate for option
UInt8 buf[kOTFourByteOptionSize]; // define buffer for fourByte Option size
TOption* opt; // option ptr to make items easier to access
TOptMgmt req;
TOptMgmt ret;
OSStatus err;
ret.opt.buf = buf;
ret.opt.maxlen = kOTFourByteOptionSize;
if (!OTIsSynchronous(ep))
{
return (-1);
}
opt = (TOption*)buf; // set option ptr to buffer
req.opt.buf = buf;
req.opt.len = sizeof(buf);
req.flags = T_NEGOTIATE; // negotiate for option
opt->level = INET_IP; // dealing with an IP Level function
ret.opt.buf = buf;
ret.opt.maxlen = kOTFourByteOptionSize;
opt->level = INET_IP; // dealing with an IP Level function
#ifdef __DARWIN__
opt->name = kIP_REUSEADDR;
opt->name = kIP_REUSEADDR;
#else
opt->name = IP_REUSEADDR;
opt->name = IP_REUSEADDR;
#endif
opt->len = kOTFourByteOptionSize;
opt->status = 0;
*(UInt32*)opt->value = enableReuseIPMode; // set the desired option level, true or false
opt->len = kOTFourByteOptionSize;
opt->status = 0;
*(UInt32*)opt->value = enableReuseIPMode; // set the desired option level, true or false
err = OTOptionManagement(ep, &req, &ret);
// if no error then return the option status value
if (err == kOTNoError)
{
if (opt->status != T_SUCCESS)
err = opt->status;
else
err = kOTNoError;
}
return err;
err = OTOptionManagement(ep, &req, &ret);
// if no error then return the option status value
if (err == kOTNoError)
{
if (opt->status != T_SUCCESS)
err = opt->status;
else
err = kOTNoError;
}
return err;
}
pascal void OTInetEventHandler(void*s, OTEventCode event, OTResult, void *cookie) ;
pascal void OTInetEventHandler(void*s, OTEventCode event, OTResult result, void *cookie)
{
int wakeUp = true ;
GSocket* sock = (GSocket*) s ;
if ( event == kOTSyncIdleEvent )
{
return ;
}
int wakeUp = true ;
GSocket* sock = (GSocket*) s ;
if ( s )
{
wxMacAddEvent( sock->m_mac_events , _GSocket_Internal_Proc , event , s , wakeUp ) ;
}
if ( event == kOTSyncIdleEvent )
{
return ;
}
return;
if ( s )
{
wxMacAddEvent( sock->m_mac_events , _GSocket_Internal_Proc , event , s , wakeUp ) ;
}
return;
}
static void SetDefaultEndpointModes(EndpointRef ep , void *data )
// This routine sets the supplied endpoint into the default
// mode used in this application. The specifics are:
// blocking, synchronous, and using synch idle events with
// the standard YieldingNotifier.
// This routine sets the supplied endpoint into the default
// mode used in this application. The specifics are:
// blocking, synchronous, and using synch idle events with
// the standard YieldingNotifier.
{
OSStatus junk = kOTNoError ;
OTAssert ("SetDefaultEndpointModes:invalid ref", ep != kOTInvalidEndpointRef ) ;
junk = OTSetAsynchronous(ep);
OTAssert("SetDefaultEndpointModes: Could not set asynchronous", junk == noErr);
OSStatus junk = kOTNoError ;
OTAssert ("SetDefaultEndpointModes:invalid ref", ep != kOTInvalidEndpointRef ) ;
junk = OTSetAsynchronous(ep);
OTAssert("SetDefaultEndpointModes: Could not set asynchronous", junk == noErr);
/*
junk = OTSetBlocking(ep);
OTAssert("SetDefaultEndpointModes: Could not set blocking", junk == noErr);
junk = OTSetSynchronous(ep);
OTAssert("SetDefaultEndpointModes: Could not set synchronous", junk == noErr);
junk = OTSetBlocking(ep);
OTAssert("SetDefaultEndpointModes: Could not set blocking", junk == noErr);
junk = OTSetBlocking(ep);
OTAssert("SetDefaultEndpointModes: Could not set blocking", junk == noErr);
junk = OTSetSynchronous(ep);
OTAssert("SetDefaultEndpointModes: Could not set synchronous", junk == noErr);
junk = OTSetBlocking(ep);
OTAssert("SetDefaultEndpointModes: Could not set blocking", junk == noErr);
*/
junk = OTInstallNotifier(ep, gOTNotifierUPP, data);
OTAssert("SetDefaultEndpointModes: Could not install notifier", junk == noErr);
junk = OTInstallNotifier(ep, gOTNotifierUPP, data);
OTAssert("SetDefaultEndpointModes: Could not install notifier", junk == noErr);
/*
junk = OTUseSyncIdleEvents(ep, true);
OTAssert("SetDefaultEndpointModes: Could not use sync idle events", junk == noErr);
junk = OTUseSyncIdleEvents(ep, true);
OTAssert("SetDefaultEndpointModes: Could not use sync idle events", junk == noErr);
*/
}
@@ -223,19 +222,19 @@ bool GSocket_Verify_Inited()
InitOpenTransportInContext(kInitOTForApplicationMask, &clientcontext);
gOTInited = 1 ;
gInetSvcRef = OTOpenInternetServicesInContext(kDefaultInternetServicesPath,
NULL, &err, clientcontext);
#else
NULL, &err, clientcontext);
#else
if ( gInetSvcRef )
return true ;
InitOpenTransport() ;
gOTInited = 1 ;
gInetSvcRef = OTOpenInternetServices(kDefaultInternetServicesPath, NULL, &err);
#endif
if ( gInetSvcRef == NULL || err != kOTNoError )
{
OTAssert("Could not open Inet Services", err == noErr);
return false ;
OTAssert("Could not open Inet Services", err == noErr);
return false ;
}
gOTNotifierUPP = NewOTNotifyUPP( OTInetEventHandler ) ;
return true ;
@@ -245,8 +244,8 @@ void GSocket_Cleanup()
{
if ( gOTInited != 0 )
{
if ( gInetSvcRef != NULL )
OTCloseProvider( gInetSvcRef );
if ( gInetSvcRef != NULL )
OTCloseProvider( gInetSvcRef );
#if TARGET_CARBON
CloseOpenTransportInContext( NULL ) ;
#else
@@ -279,25 +278,25 @@ GSocket::GSocket()
m_non_blocking = false;
m_timeout = 1*1000;
/* 10 sec * 1000 millisec */
m_takesEvents = true ;
m_mac_events = wxMacGetNotifierTable() ;
m_takesEvents = true ;
m_mac_events = wxMacGetNotifierTable() ;
}
GSocket::~GSocket()
{
assert(this);
assert(this);
/* Check that the socket is really shutdowned */
if (m_endpoint != kOTInvalidEndpointRef)
Shutdown();
/* Check that the socket is really shutdowned */
if (m_endpoint != kOTInvalidEndpointRef)
Shutdown();
/* Destroy private addresses */
if (m_local)
GAddress_destroy(m_local);
/* Destroy private addresses */
if (m_local)
GAddress_destroy(m_local);
if (m_peer)
GAddress_destroy(m_peer);
if (m_peer)
GAddress_destroy(m_peer);
}
/* GSocket_Shutdown:
@@ -306,32 +305,32 @@ GSocket::~GSocket()
*/
void GSocket::Shutdown()
{
OSStatus err ;
int evt;
OSStatus err ;
int evt;
assert(this);
assert(this);
/* If socket has been created, shutdown it */
if (m_endpoint != kOTInvalidEndpointRef )
{
err = OTSndOrderlyDisconnect( m_endpoint ) ;
if ( err != kOTNoError )
{
}
err = OTRcvOrderlyDisconnect( m_endpoint ) ;
err = OTUnbind( m_endpoint ) ;
err = OTCloseProvider( m_endpoint ) ;
m_endpoint = kOTInvalidEndpointRef ;
}
/* If socket has been created, shutdown it */
if (m_endpoint != kOTInvalidEndpointRef )
{
err = OTSndOrderlyDisconnect( m_endpoint ) ;
if ( err != kOTNoError )
{
}
/* Disable GUI callbacks */
for (evt = 0; evt < GSOCK_MAX_EVENT; evt++)
m_cbacks[evt] = NULL;
err = OTRcvOrderlyDisconnect( m_endpoint ) ;
err = OTUnbind( m_endpoint ) ;
err = OTCloseProvider( m_endpoint ) ;
m_endpoint = kOTInvalidEndpointRef ;
}
m_detected = 0;
Disable_Events();
wxMacRemoveAllNotifiersForData( wxMacGetNotifierTable() , this ) ;
/* Disable GUI callbacks */
for (evt = 0; evt < GSOCK_MAX_EVENT; evt++)
m_cbacks[evt] = NULL;
m_detected = 0;
Disable_Events();
wxMacRemoveAllNotifiersForData( wxMacGetNotifierTable() , this ) ;
}
@@ -353,109 +352,109 @@ void GSocket::Shutdown()
*/
GSocketError GSocket::SetLocal(GAddress *address)
{
assert(this);
assert(this);
/* the socket must be initialized, or it must be a server */
if ((m_endpoint != kOTInvalidEndpointRef && !m_server))
{
m_error = GSOCK_INVSOCK;
return GSOCK_INVSOCK;
}
/* the socket must be initialized, or it must be a server */
if ((m_endpoint != kOTInvalidEndpointRef && !m_server))
{
m_error = GSOCK_INVSOCK;
return GSOCK_INVSOCK;
}
/* check address */
if (address == NULL || address->m_family == GSOCK_NOFAMILY)
{
m_error = GSOCK_INVADDR;
return GSOCK_INVADDR;
}
/* check address */
if (address == NULL || address->m_family == GSOCK_NOFAMILY)
{
m_error = GSOCK_INVADDR;
return GSOCK_INVADDR;
}
if (m_local)
GAddress_destroy(m_local);
if (m_local)
GAddress_destroy(m_local);
m_local = GAddress_copy(address);
m_local = GAddress_copy(address);
return GSOCK_NOERROR;
return GSOCK_NOERROR;
}
GSocketError GSocket::SetPeer(GAddress *address)
{
assert(this);
assert(this);
/* check address */
if (address == NULL || address->m_family == GSOCK_NOFAMILY)
{
m_error = GSOCK_INVADDR;
return GSOCK_INVADDR;
}
/* check address */
if (address == NULL || address->m_family == GSOCK_NOFAMILY)
{
m_error = GSOCK_INVADDR;
return GSOCK_INVADDR;
}
if (m_peer)
GAddress_destroy(m_peer);
if (m_peer)
GAddress_destroy(m_peer);
m_peer = GAddress_copy(address);
m_peer = GAddress_copy(address);
return GSOCK_NOERROR;
return GSOCK_NOERROR;
}
GAddress *GSocket::GetLocal()
{
GAddress *address = NULL ;
GSocketError err;
InetAddress loc ;
GAddress *address = NULL ;
GSocketError err;
InetAddress loc ;
assert(this);
assert(this);
/* try to get it from the m_local var first */
if (m_local)
return GAddress_copy(m_local);
/* try to get it from the m_local var first */
if (m_local)
return GAddress_copy(m_local);
/* else, if the socket is initialized, try getsockname */
if (m_endpoint == kOTInvalidEndpointRef)
{
m_error = GSOCK_INVSOCK;
return NULL;
}
/* else, if the socket is initialized, try getsockname */
if (m_endpoint == kOTInvalidEndpointRef)
{
m_error = GSOCK_INVSOCK;
return NULL;
}
/* we do not support multihoming with this code at the moment
OTGetProtAddress will have to be used then - but we don't have a handy
OTGetProtAddress will have to be used then - but we don't have a handy
method to use right now
*/
{
InetInterfaceInfo info;
OTInetGetInterfaceInfo(&info, kDefaultInetInterface);
loc.fHost = info.fAddress ;
loc.fPort = 0 ;
loc.fAddressType = AF_INET ;
}
{
InetInterfaceInfo info;
OTInetGetInterfaceInfo(&info, kDefaultInetInterface);
loc.fHost = info.fAddress ;
loc.fPort = 0 ;
loc.fAddressType = AF_INET ;
}
/* got a valid address from getsockname, create a GAddress object */
address = GAddress_new();
if (address == NULL)
{
m_error = GSOCK_MEMERR;
return NULL;
}
/* got a valid address from getsockname, create a GAddress object */
address = GAddress_new();
if (address == NULL)
{
m_error = GSOCK_MEMERR;
return NULL;
}
err = _GAddress_translate_from(address, &loc);
if (err != GSOCK_NOERROR)
{
GAddress_destroy(address);
m_error = err;
return NULL;
}
err = _GAddress_translate_from(address, &loc);
if (err != GSOCK_NOERROR)
{
GAddress_destroy(address);
m_error = err;
return NULL;
}
return address;
return address;
}
GAddress *GSocket::GetPeer()
{
assert(this);
assert(this);
/* try to get it from the m_peer var */
if (m_peer)
return GAddress_copy(m_peer);
/* try to get it from the m_peer var */
if (m_peer)
return GAddress_copy(m_peer);
return NULL;
return NULL;
}
/* Server specific parts */
@@ -464,11 +463,11 @@ GAddress *GSocket::GetPeer()
* Sets up this socket as a server. The local address must have been
* set with GSocket_SetLocal() before GSocket_SetServer() is called.
* Returns GSOCK_NOERROR on success, one of the following otherwise:
*
*
* Error codes:
* GSOCK_INVSOCK - the socket is in use.
* GSOCK_INVADDR - the local address has not been set.
* GSOCK_IOERR - low-level error.
* GSOCK_IOERR - low-level error.
*/
GSocketError GSocket::SetServer()
{
@@ -536,7 +535,7 @@ GSocketError GSocket::SetServer()
* GSOCK_TIMEDOUT - timeout, no incoming connections.
* GSOCK_WOULDBLOCK - the call would block and the socket is nonblocking.
* GSOCK_MEMERR - couldn't allocate memory.
* GSOCK_IOERR - low-level error.
* GSOCK_IOERR - low-level error.
*/
GSocket *GSocket::WaitConnection()
{
@@ -653,7 +652,7 @@ GSocketError GSocket::SetNonOriented()
m_oriented = false;
/* Create the socket */
// TODO
#if 0
m_endpoint = socket(m_local->m_realfamily, SOCK_DGRAM, 0);
@@ -713,7 +712,7 @@ GSocketError GSocket::SetNonOriented()
* GSOCK_TIMEDOUT - timeout, the connection failed.
* GSOCK_WOULDBLOCK - connection in progress (nonblocking sockets only)
* GSOCK_MEMERR - couldn't allocate memory.
* GSOCK_IOERR - low-level error.
* GSOCK_IOERR - low-level error.
*/
GSocketError GSocket::Connect(GSocketStream stream)
{
@@ -746,10 +745,10 @@ GSocketError GSocket::Connect(GSocketStream stream)
/* Create the socket */
#if TARGET_CARBON
m_endpoint =
m_endpoint =
OTOpenEndpointInContext( OTCreateConfiguration( kTCPName) , 0 , &info , &err , NULL ) ;
#else
m_endpoint =
m_endpoint =
OTOpenEndpoint( OTCreateConfiguration( kTCPName) , 0 , &info , &err ) ;
#endif
if ( m_endpoint == kOTInvalidEndpointRef || err != kOTNoError )
@@ -781,8 +780,8 @@ GSocketError GSocket::Connect(GSocketStream stream)
* is in blocking mode, we select() for the specified timeout
* checking for writability to see if the connection request
* completes.
*/
*/
if ((err == kOTNoDataErr ) && (!m_non_blocking))
{
if (Output_Timeout() == GSOCK_TIMEDOUT)
@@ -858,7 +857,7 @@ int GSocket::Read(char *buffer, int size)
ret = Recv_Stream(buffer, size);
else
ret = Recv_Dgram(buffer, size);
if (ret == -1)
{
if (errno == EWOULDBLOCK)
@@ -866,12 +865,12 @@ int GSocket::Read(char *buffer, int size)
else
m_error = GSOCK_IOERR;
}
return ret;
}
int GSocket::Write(const char *buffer, int size)
{
{
int ret;
assert(this);
@@ -891,7 +890,7 @@ int GSocket::Write(const char *buffer, int size)
ret = Send_Stream(buffer, size);
else
ret = Send_Dgram(buffer, size);
if (ret == -1)
{
if (errno == EWOULDBLOCK)
@@ -907,7 +906,7 @@ int GSocket::Write(const char *buffer, int size)
m_detected &= ~GSOCK_OUTPUT_FLAG;
return -1;
}
return ret;
}
@@ -924,7 +923,7 @@ GSocketEventFlags GSocket::Select(GSocketEventFlags flags)
wxMacProcessNotifierEvents() ;
/*
state = OTGetEndpointState(m_endpoint);
if ( ( flags & GSOCK_INPUT_FLAG ) && ! ( m_detected & GSOCK_INPUT_FLAG ) )
{
size_t sz = 0 ;
@@ -992,7 +991,7 @@ GSocketError WXDLLIMPEXP_NET GSocket::GetError()
* operation, there is still data available, the callback function will
* be called again.
* GSOCK_OUTPUT:
* The socket is available for writing. That is, the next write call
* The socket is available for writing. That is, the next write call
* won't block. This event is generated only once, when the connection is
* first established, and then only if a call failed with GSOCK_WOULDBLOCK,
* when the output buffer empties again. This means that the app should
@@ -1073,7 +1072,7 @@ int GSocket::Recv_Stream(char *buffer, int size)
{
return -1 ;
}
// we simulate another read event if there are still bytes
if ( m_takesEvents )
{
@@ -1290,7 +1289,7 @@ GSocketError _GAddress_Init_INET(GAddress *address)
{
address->m_family = GSOCK_INET;
address->m_host = kOTAnyInetAddress ;
return GSOCK_NOERROR;
}
@@ -1311,7 +1310,7 @@ GSocketError GAddress_INET_SetHostName(GAddress *address, const char *hostname)
address->m_host = INADDR_NONE ;
address->m_error = GSOCK_NOHOST;
return GSOCK_NOHOST;
}
}
address->m_host = hinfo.addrs[0] ;
return GSOCK_NOERROR;
}
@@ -1333,17 +1332,17 @@ GSocketError GAddress_INET_SetHostAddress(GAddress *address,
return GSOCK_NOERROR;
}
struct service_entry
struct service_entry
{
const char * name ;
unsigned short port ;
const char * protocol ;
const char * protocol ;
} ;
typedef struct service_entry service_entry ;
service_entry gServices[] =
{
{ "http" , 80 , "tcp" }
{ "http" , 80 , "tcp" }
} ;
GSocketError GAddress_INET_SetPortName(GAddress *address, const char *port,
@@ -1386,7 +1385,7 @@ GSocketError GAddress_INET_SetPort(GAddress *address, unsigned short port)
assert(address != NULL);
CHECK_ADDRESS(address, INET, GSOCK_INVADDR);
address->m_port = port ;
return GSOCK_NOERROR;
}
@@ -1395,8 +1394,8 @@ GSocketError GAddress_INET_GetHostName(GAddress *address, char *hostname, size_t
InetDomainName name ;
if ( !GSocket_Verify_Inited() )
return GSOCK_IOERR ;
assert(address != NULL);
assert(address != NULL);
CHECK_ADDRESS(address, INET, GSOCK_INVADDR);
OTInetAddressToName( gInetSvcRef , address->m_host , name ) ;
@@ -1406,16 +1405,16 @@ GSocketError GAddress_INET_GetHostName(GAddress *address, char *hostname, size_t
unsigned long GAddress_INET_GetHostAddress(GAddress *address)
{
assert(address != NULL);
CHECK_ADDRESS(address, INET, 0);
assert(address != NULL);
CHECK_ADDRESS(address, INET, 0);
return ntohl(address->m_host);
}
unsigned short GAddress_INET_GetPort(GAddress *address)
{
assert(address != NULL);
CHECK_ADDRESS(address, INET, 0);
assert(address != NULL);
CHECK_ADDRESS(address, INET, 0);
return address->m_port;
}
@@ -1424,12 +1423,12 @@ void GSocket::Enable_Events()
{
if ( m_takesEvents )
return ;
{
OTResult state ;
m_takesEvents = true ;
state = OTGetEndpointState(m_endpoint);
{
OTByteCount sz = 0 ;
OTCountDataBytes( m_endpoint , &sz ) ;
@@ -1467,20 +1466,20 @@ GSocketError GSocket::Input_Timeout()
Microseconds(&start);
now = start ;
m_takesEvents = false ;
while( (now.hi * 4294967296.0 + now.lo) - (start.hi * 4294967296.0 + start.lo) < m_timeout * 1000.0 )
{
OTResult state ;
OTByteCount sz = 0 ;
state = OTGetEndpointState(m_endpoint);
OTCountDataBytes( m_endpoint , &sz ) ;
if ( state == T_INCON || sz > 0 )
{
m_takesEvents = formerTakesEvents ;
return GSOCK_NOERROR;
}
Microseconds(&now);
Microseconds(&now);
}
m_takesEvents = formerTakesEvents ;
m_error = GSOCK_TIMEDOUT;
@@ -1502,18 +1501,18 @@ GSocketError GSocket::Output_Timeout()
Microseconds(&start);
now = start ;
m_takesEvents = false ;
while( (now.hi * 4294967296.0 + now.lo) - (start.hi * 4294967296.0 + start.lo) < m_timeout * 1000.0 )
{
OTResult state ;
state = OTGetEndpointState(m_endpoint);
if ( state == T_DATAXFER || state == T_INREL )
{
m_takesEvents = formerTakesEvents ;
return GSOCK_NOERROR;
}
Microseconds(&now);
Microseconds(&now);
}
m_takesEvents = formerTakesEvents ;
m_error = GSOCK_TIMEDOUT;
@@ -1527,7 +1526,7 @@ GSocketError GSocket::Output_Timeout()
* operation, there is still data available, the callback function will
* be called again.
* GSOCK_OUTPUT:
* The socket is available for writing. That is, the next write call
* The socket is available for writing. That is, the next write call
* won't block. This event is generated only once, when the connection is
* first established, and then only if a call failed with GSOCK_WOULDBLOCK,
* when the output buffer empties again. This means that the app should
@@ -1544,18 +1543,19 @@ GSocketError GSocket::Output_Timeout()
void _GSocket_Internal_Proc(unsigned long e , void* d )
{
GSocket * socket = (GSocket*) d ;
OTEventCode ev = (OTEventCode) e ;
GSocketEvent event;
GSocketEvent event2;
GSocketCallback cback;
char *data;
GSocketCallback cback2;
char *data2;
GSocket *socket = (GSocket*) d ;
if ( !socket )
return ;
OTEventCode ev = (OTEventCode) e ;
GSocketEvent event;
GSocketEvent event2;
GSocketCallback cback;
char *data;
GSocketCallback cback2;
char *data2;
if ( !socket )
return ;
event = GSOCK_MAX_EVENT ;
event2 = GSOCK_MAX_EVENT ;
cback = NULL;
@@ -1567,7 +1567,7 @@ void _GSocket_Internal_Proc(unsigned long e , void* d )
* destroyed) and for safety, check that the m_endpoint field
* is what we expect it to be.
*/
if ((socket != NULL) && (socket->m_takesEvents))
if ( /* (socket != NULL) && */ (socket->m_takesEvents))
{
switch (ev)
{
@@ -1579,7 +1579,7 @@ void _GSocket_Internal_Proc(unsigned long e , void* d )
event2 = GSOCK_OUTPUT ;
{
TCall retCall;
retCall.addr.buf = NULL;
retCall.addr.maxlen = 0;
retCall.opt.buf = NULL;

View File

@@ -135,15 +135,15 @@ wxMenu *
_wxMenuAt(const wxMenuList &menuList, size_t pos)
{
wxMenuList::compatibility_iterator menuIter = menuList.GetFirst();
while (pos-- > 0) menuIter = menuIter->GetNext();
return menuIter->GetData() ;
}
void wxMenu::Init()
{
m_doBreak = FALSE;
m_doBreak = false;
m_startRadioGroup = -1;
// create the menu
@@ -158,7 +158,7 @@ void wxMenu::Init()
wxAssociateMenuWithMacMenu( (MenuRef)m_hMenu , this ) ;
// if we have a title, insert it in the beginning of the menu
if ( !!m_title )
if ( !m_title.empty() )
{
Append(idMenuTitle, m_title) ;
AppendSeparator() ;
@@ -250,7 +250,7 @@ bool wxMenu::DoInsertOrAppend(wxMenuItem *pItem, size_t pos)
{
GetMenuBar()->Refresh();
}
return TRUE ;
return true ;
}
void wxMenu::EndRadioGroup()
@@ -263,7 +263,7 @@ wxMenuItem* wxMenu::DoAppend(wxMenuItem *item)
{
wxCHECK_MSG( item, NULL, _T("NULL item in wxMenu::DoAppend") );
bool check = FALSE;
bool check = false;
if ( item->GetKind() == wxITEM_RADIO )
{
@@ -279,7 +279,7 @@ wxMenuItem* wxMenu::DoAppend(wxMenuItem *item)
item->SetRadioGroupEnd(m_startRadioGroup);
// ensure that we have a checked item in the radio group
check = TRUE;
check = true;
}
else // extend the current radio group
{
@@ -310,7 +310,7 @@ wxMenuItem* wxMenu::DoAppend(wxMenuItem *item)
if ( check )
{
// check the item initially
item->Check(TRUE);
item->Check(true);
}
return item;
@@ -354,15 +354,16 @@ wxMenuItem *wxMenu::DoRemove(wxMenuItem *item)
void wxMenu::SetTitle(const wxString& label)
{
m_title = label ;
m_title = label ;
UMASetMenuTitle(MAC_WXHMENU(m_hMenu) , label , wxFont::GetDefaultEncoding() ) ;
}
bool wxMenu::ProcessCommand(wxCommandEvent & event)
{
bool processed = FALSE;
bool processed = false;
// Try the menu's event handler
if ( !processed && GetEventHandler())
if ( /* !processed && */ GetEventHandler())
{
processed = GetEventHandler()->ProcessEvent(event);
}
@@ -464,7 +465,7 @@ void wxMenu::MacBeforeDisplay( bool isSubMenu )
( UMAGetSystemVersion() >= 0x1000 && (
item->GetId() == wxApp::s_macPreferencesMenuItemId ||
item->GetId() == wxApp::s_macExitMenuItemId ) ) )
{
ChangeMenuItemAttributes( MAC_WXHMENU( GetHMenu() ),
pos + 1, kMenuItemAttrHidden, 0 );
@@ -654,7 +655,7 @@ void wxMenuBar::MacInstallMenuBar()
// clean-up the help menu before adding new items
static MenuHandle mh = NULL ;
if ( mh != NULL )
{
MenuItemIndex firstUserHelpMenuItem ;
@@ -668,7 +669,7 @@ void wxMenuBar::MacInstallMenuBar()
else
{
mh = NULL ;
}
}
}
#if TARGET_CARBON
if ( UMAGetSystemVersion() >= 0x1000 && wxApp::s_macPreferencesMenuItemId)
@@ -725,7 +726,7 @@ void wxMenuBar::MacInstallMenuBar()
{
mh = NULL ;
break ;
}
}
}
}
if ( item->IsSeparator() )
@@ -860,7 +861,7 @@ wxMenu *wxMenuBar::Replace(size_t pos, wxMenu *menu, const wxString& title)
{
wxMenu *menuOld = wxMenuBarBase::Replace(pos, menu, title);
if ( !menuOld )
return FALSE;
return false;
m_titles[pos] = title;
if ( IsAttached() )
@@ -894,7 +895,7 @@ wxMenu *wxMenuBar::Replace(size_t pos, wxMenu *menu, const wxString& title)
bool wxMenuBar::Insert(size_t pos, wxMenu *menu, const wxString& title)
{
if ( !wxMenuBarBase::Insert(pos, menu, title) )
return FALSE;
return false;
m_titles.Insert(title, pos);
@@ -919,7 +920,7 @@ bool wxMenuBar::Insert(size_t pos, wxMenu *menu, const wxString& title)
if (m_invokingWindow)
wxMenubarSetInvokingWindow( menu, m_invokingWindow );
return TRUE;
return true;
}
wxMenu *wxMenuBar::Remove(size_t pos)
@@ -946,10 +947,10 @@ wxMenu *wxMenuBar::Remove(size_t pos)
bool wxMenuBar::Append(wxMenu *menu, const wxString& title)
{
WXHMENU submenu = menu ? menu->GetHMenu() : 0;
wxCHECK_MSG( submenu, FALSE, wxT("can't append invalid menu to menubar") );
wxCHECK_MSG( submenu, false, wxT("can't append invalid menu to menubar") );
if ( !wxMenuBarBase::Append(menu, title) )
return FALSE;
return false;
m_titles.Add(title);
@@ -971,7 +972,7 @@ bool wxMenuBar::Append(wxMenu *menu, const wxString& title)
if (m_invokingWindow)
wxMenubarSetInvokingWindow( menu, m_invokingWindow );
return TRUE;
return true;
}
static void wxMenubarUnsetInvokingWindow( wxMenu *menu )

View File

@@ -87,7 +87,7 @@ wxMetaFile::wxMetaFile(const wxString& file)
m_refData = new wxMetafileRefData;
M_METAFILEDATA->m_metafile = 0;
wxASSERT_MSG( file.IsEmpty() , wxT("no file based metafile support yet") ) ;
wxASSERT_MSG( file.empty() , wxT("no file based metafile support yet") ) ;
/*
if (!file.IsNull() && (file.Cmp("") == 0))
M_METAFILEDATA->m_metafile = (WXHANDLE) GetMetaFile(file);
@@ -98,23 +98,25 @@ wxMetaFile::~wxMetaFile()
{
}
bool wxMetaFile::Ok() const
{
return (M_METAFILEDATA && (M_METAFILEDATA->m_metafile != 0));
bool wxMetaFile::Ok() const
{
return (M_METAFILEDATA && (M_METAFILEDATA->m_metafile != 0));
}
WXHMETAFILE wxMetaFile::GetHMETAFILE() const
{
return (WXHMETAFILE) M_METAFILEDATA->m_metafile;
WXHMETAFILE wxMetaFile::GetHMETAFILE() const
{
return (WXHMETAFILE) M_METAFILEDATA->m_metafile;
}
bool wxMetaFile::SetClipboard(int width, int height)
{
bool success = true;
#if wxUSE_DRAG_AND_DROP
//TODO finishi this port , we need the data obj first
if (!m_refData)
return FALSE;
return false;
bool alreadyOpen=wxTheClipboard->IsOpened() ;
if (!alreadyOpen)
{
@@ -123,18 +125,18 @@ bool wxMetaFile::SetClipboard(int width, int height)
}
wxDataObject *data =
new wxMetafileDataObject( *this) ;
bool success = wxTheClipboard->SetData(data);
if (!alreadyOpen)
success = wxTheClipboard->SetData(data);
if (!alreadyOpen)
wxTheClipboard->Close();
return (bool) success;
#endif
return TRUE ;
return success;
}
void wxMetafile::SetHMETAFILE(WXHMETAFILE mf)
{
UnRef() ;
m_refData = new wxMetafileRefData;
M_METAFILEDATA->m_metafile = (PicHandle) mf;
@@ -158,18 +160,18 @@ void wxMetafile::SetHMETAFILE(WXHMETAFILE mf)
bool wxMetaFile::Play(wxDC *dc)
{
if (!m_refData)
return FALSE;
return false;
if (!dc->Ok() )
return FALSE;
return false;
{
#if wxMAC_USE_CORE_GRAPHICS
QDPictRef cgPictRef = M_METAFILEDATA->m_qdPictRef ;
CGContextRef cg = ((wxMacCGContext*)(dc->GetGraphicContext()))->GetNativeContext() ;
CGRect bounds = QDPictGetBounds( cgPictRef ) ;
CGContextSaveGState(cg);
CGContextSaveGState(cg);
CGContextTranslateCTM(cg, 0 , bounds.size.width );
CGContextScaleCTM(cg, 1, -1);
QDPictDrawToCGContext( cg , bounds , cgPictRef ) ;
@@ -180,7 +182,7 @@ bool wxMetaFile::Play(wxDC *dc)
DrawPicture( pict , &(**pict).picFrame ) ;
#endif
}
return TRUE;
return true;
}
wxSize wxMetaFile::GetSize() const
@@ -210,21 +212,21 @@ wxMetaFileDC::wxMetaFileDC(const wxString& filename ,
const wxString& WXUNUSED(description) )
{
wxASSERT_MSG( width == 0 || height == 0 , _T("no arbitration of metafilesize supported") ) ;
wxASSERT_MSG( filename.IsEmpty() , _T("no file based metafile support yet")) ;
wxASSERT_MSG( filename.empty() , _T("no file based metafile support yet")) ;
m_metaFile = new wxMetaFile(filename) ;
#if wxMAC_USE_CORE_GRAPHICS
#else
Rect r={0,0,height,width} ;
RectRgn( (RgnHandle) m_macBoundaryClipRgn , &r ) ;
CopyRgn( (RgnHandle) m_macBoundaryClipRgn , (RgnHandle) m_macCurrentClipRgn ) ;
m_metaFile->SetHMETAFILE( (WXHMETAFILE) OpenPicture( &r ) ) ;
::GetPort( (GrafPtr*) &m_macPort ) ;
m_ok = TRUE ;
::GetPort( (GrafPtr*) &m_macPort ) ;
m_ok = true ;
#endif
SetMapMode(wxMM_TEXT);
SetMapMode(wxMM_TEXT);
}
wxMetaFileDC::~wxMetaFileDC()

View File

@@ -33,7 +33,7 @@ wxColour wxSystemSettingsNative::GetColour(wxSystemColour index)
{
int major,minor;
wxGetOsVersion( &major, &minor );
switch( index )
{
case wxSYS_COLOUR_SCROLLBAR :
@@ -84,7 +84,7 @@ wxColour wxSystemSettingsNative::GetColour(wxSystemColour index)
case wxSYS_COLOUR_GRAYTEXT:
return wxColor( 0xCC , 0xCC , 0xCC ) ;
break ;
case wxSYS_COLOUR_3DDKSHADOW:
return wxColor( 0x44 , 0x44 , 0x44 ) ;
break ;
@@ -102,7 +102,7 @@ wxColour wxSystemSettingsNative::GetColour(wxSystemColour index)
}
break ;
case wxSYS_COLOUR_INFOBK :
case wxSYS_COLOUR_APPWORKSPACE:
case wxSYS_COLOUR_APPWORKSPACE:
return *wxWHITE ;
break ;
@@ -112,7 +112,7 @@ wxColour wxSystemSettingsNative::GetColour(wxSystemColour index)
case wxSYS_COLOUR_MENUHILIGHT:
// TODO
return *wxBLACK;
case wxSYS_COLOUR_MAX:
wxFAIL_MSG( _T("unknown system colour index") );
break ;
@@ -134,17 +134,11 @@ wxFont wxSystemSettingsNative::GetFont(wxSystemFont index)
case wxSYS_DEFAULT_GUI_FONT :
{
return *wxSMALL_FONT ;
} ;
} ;
break ;
case wxSYS_OEM_FIXED_FONT :
case wxSYS_ANSI_FIXED_FONT :
case wxSYS_SYSTEM_FIXED_FONT :
default :
{
return *wxNORMAL_FONT ;
} ;
break ;
}
return *wxNORMAL_FONT;
}
@@ -163,7 +157,7 @@ int wxSystemSettingsNative::GetMetric(wxSystemMetric index, wxWindow* WXUNUSED(w
case wxSYS_MOUSE_BUTTONS:
// we emulate a two button mouse (ctrl + click = right button )
return 2;
// TODO case wxSYS_BORDER_X:
// TODO case wxSYS_BORDER_Y:
// TODO case wxSYS_CURSOR_X:
@@ -174,14 +168,14 @@ int wxSystemSettingsNative::GetMetric(wxSystemMetric index, wxWindow* WXUNUSED(w
// TODO case wxSYS_DRAG_Y:
// TODO case wxSYS_EDGE_X:
// TODO case wxSYS_EDGE_Y:
case wxSYS_HSCROLL_ARROW_X:
return 16;
case wxSYS_HSCROLL_ARROW_Y:
return 16;
case wxSYS_HTHUMB_X:
return 16;
// TODO case wxSYS_ICON_X:
// TODO case wxSYS_ICON_Y:
// TODO case wxSYS_ICONSPACING_X:
@@ -195,12 +189,12 @@ int wxSystemSettingsNative::GetMetric(wxSystemMetric index, wxWindow* WXUNUSED(w
case wxSYS_SCREEN_Y:
wxDisplaySize(NULL, &value);
return value;
// TODO case wxSYS_FRAMESIZE_X:
// TODO case wxSYS_FRAMESIZE_Y:
// TODO case wxSYS_SMALLICON_X:
// TODO case wxSYS_SMALLICON_Y:
case wxSYS_HSCROLL_Y:
return 16;
case wxSYS_VSCROLL_X:
@@ -211,34 +205,34 @@ int wxSystemSettingsNative::GetMetric(wxSystemMetric index, wxWindow* WXUNUSED(w
return 16;
case wxSYS_VTHUMB_Y:
return 16;
// TODO case wxSYS_CAPTION_Y:
// TODO case wxSYS_MENU_Y:
// TODO case wxSYS_NETWORK_PRESENT:
case wxSYS_PENWINDOWS_PRESENT:
return 0;
// TODO case wxSYS_SHOW_SOUNDS:
case wxSYS_SWAP_BUTTONS:
return 0;
default:
return -1; // unsupported metric
break; // unsupported metric
}
return 0;
return -1;
}
bool wxSystemSettingsNative::HasFeature(wxSystemFeature index)
{
switch (index)
{
case wxSYS_CAN_ICONIZE_FRAME:
case wxSYS_CAN_ICONIZE_FRAME:
case wxSYS_CAN_DRAW_FRAME_DECORATIONS:
return TRUE;
return true;
default:
return FALSE;
return false;
}
}

View File

@@ -98,7 +98,7 @@ static const EventTypeSpec eventList[] =
// we have to catch these events on the toplevel window level, as controls don't get the
// raw mouse events anymore
{ kEventClassMouse , kEventMouseDown } ,
{ kEventClassMouse , kEventMouseUp } ,
{ kEventClassMouse , kEventMouseWheelMoved } ,
@@ -166,9 +166,9 @@ static pascal OSStatus KeyboardEventHandler( EventHandlerCallRef handler , Event
wxWindow* focus = wxWindow::DoFindFocus();
if ( focus == NULL )
return result ;
unsigned char charCode ;
wxChar uniChar = 0 ;
wxChar uniChar = 0 ;
UInt32 keyCode ;
UInt32 modifiers ;
Point point ;
@@ -179,9 +179,9 @@ static pascal OSStatus KeyboardEventHandler( EventHandlerCallRef handler , Event
if ( GetEventParameter( event, kEventParamKeyUnicodes, typeUnicodeText, NULL, 0 , &dataSize , NULL ) == noErr )
{
UniChar buf[2] ;
UniChar* charBuf = buf ;
if ( dataSize > 4 )
charBuf = new UniChar[ dataSize / sizeof( UniChar) ] ;
GetEventParameter( event, kEventParamKeyUnicodes, typeUnicodeText, NULL, dataSize , NULL , charBuf ) ;
@@ -190,7 +190,7 @@ static pascal OSStatus KeyboardEventHandler( EventHandlerCallRef handler , Event
#else
wxMBConvUTF16BE converter ;
converter.MB2WC( &uniChar , (const char*)charBuf , 1 ) ;
#endif
#endif
if ( dataSize > 4 )
delete[] charBuf ;
}
@@ -201,7 +201,7 @@ static pascal OSStatus KeyboardEventHandler( EventHandlerCallRef handler , Event
GetEventParameter(event, kEventParamKeyModifiers, typeUInt32, NULL, sizeof(UInt32), NULL, &modifiers);
GetEventParameter( event, kEventParamMouseLocation, typeQDPoint, NULL,
sizeof( Point ), NULL, &point );
UInt32 message = (keyCode << 8) + charCode;
switch( GetEventKind( event ) )
{
@@ -211,7 +211,7 @@ static pascal OSStatus KeyboardEventHandler( EventHandlerCallRef handler , Event
WXEVENTREF formerEvent = wxTheApp->MacGetCurrentEvent() ;
WXEVENTHANDLERCALLREF formerHandler = wxTheApp->MacGetCurrentEventHandlerCallRef() ;
wxTheApp->MacSetCurrentEvent( event , handler ) ;
if ( (focus != NULL) && wxTheApp->MacSendKeyDownEvent(
if ( /* focus && */ wxTheApp->MacSendKeyDownEvent(
focus , message , modifiers , when , point.h , point.v , uniChar ) )
{
result = noErr ;
@@ -220,7 +220,7 @@ static pascal OSStatus KeyboardEventHandler( EventHandlerCallRef handler , Event
}
break ;
case kEventRawKeyUp :
if ( (focus != NULL) && wxTheApp->MacSendKeyUpEvent(
if ( /* focus && */ wxTheApp->MacSendKeyUpEvent(
focus , message , modifiers , when , point.h , point.v , uniChar ) )
{
result = noErr ;
@@ -242,25 +242,25 @@ static pascal OSStatus KeyboardEventHandler( EventHandlerCallRef handler , Event
event.SetTimestamp(when);
event.SetEventObject(focus);
if ( focus && (modifiers ^ wxApp::s_lastModifiers ) & controlKey )
if ( /* focus && */ (modifiers ^ wxApp::s_lastModifiers ) & controlKey )
{
event.m_keyCode = WXK_CONTROL ;
event.SetEventType( ( modifiers & controlKey ) ? wxEVT_KEY_DOWN : wxEVT_KEY_UP ) ;
focus->GetEventHandler()->ProcessEvent( event ) ;
}
if ( focus && (modifiers ^ wxApp::s_lastModifiers ) & shiftKey )
if ( /* focus && */ (modifiers ^ wxApp::s_lastModifiers ) & shiftKey )
{
event.m_keyCode = WXK_SHIFT ;
event.SetEventType( ( modifiers & shiftKey ) ? wxEVT_KEY_DOWN : wxEVT_KEY_UP ) ;
focus->GetEventHandler()->ProcessEvent( event ) ;
}
if ( focus && (modifiers ^ wxApp::s_lastModifiers ) & optionKey )
if ( /* focus && */ (modifiers ^ wxApp::s_lastModifiers ) & optionKey )
{
event.m_keyCode = WXK_ALT ;
event.SetEventType( ( modifiers & optionKey ) ? wxEVT_KEY_DOWN : wxEVT_KEY_UP ) ;
focus->GetEventHandler()->ProcessEvent( event ) ;
}
if ( focus && (modifiers ^ wxApp::s_lastModifiers ) & cmdKey )
if ( /* focus && */ (modifiers ^ wxApp::s_lastModifiers ) & cmdKey )
{
event.m_keyCode = WXK_COMMAND ;
event.SetEventType( ( modifiers & cmdKey ) ? wxEVT_KEY_DOWN : wxEVT_KEY_UP ) ;
@@ -268,7 +268,7 @@ static pascal OSStatus KeyboardEventHandler( EventHandlerCallRef handler , Event
}
wxApp::s_lastModifiers = modifiers ;
}
break ;
break ;
}
return result ;
@@ -289,9 +289,9 @@ static void SetupMouseEvent( wxMouseEvent &wxevent , wxMacCarbonEvent &cEvent )
UInt32 modifiers = cEvent.GetParameter<UInt32>(kEventParamKeyModifiers, typeUInt32) ;
Point screenMouseLocation = cEvent.GetParameter<Point>(kEventParamMouseLocation) ;
// this parameter are not given for all events
// this parameter are not given for all events
EventMouseButton button = 0 ;
UInt32 clickCount = 0 ;
UInt32 clickCount = 0 ;
cEvent.GetParameter<EventMouseButton>(kEventParamMouseButton, typeMouseButton , &button) ;
cEvent.GetParameter<UInt32>(kEventParamClickCount, typeUInt32 , &clickCount ) ;
@@ -302,24 +302,24 @@ static void SetupMouseEvent( wxMouseEvent &wxevent , wxMacCarbonEvent &cEvent )
wxevent.m_altDown = modifiers & optionKey;
wxevent.m_metaDown = modifiers & cmdKey;
wxevent.SetTimestamp( cEvent.GetTicks() ) ;
// a control click is interpreted as a right click
// a control click is interpreted as a right click
if ( button == kEventMouseButtonPrimary && (modifiers & controlKey) )
{
button = kEventMouseButtonSecondary ;
}
// otherwise we report double clicks by connecting a left click with a ctrl-left click
if ( clickCount > 1 && button != lastButton )
clickCount = 1 ;
// we must make sure that our synthetic 'right' button corresponds in
// mouse down, moved and mouse up, and does not deliver a right down and left up
if ( cEvent.GetKind() == kEventMouseDown )
lastButton = button ;
if ( button == 0 )
lastButton = 0 ;
lastButton = 0 ;
else if ( lastButton )
button = lastButton ;
@@ -386,7 +386,7 @@ static void SetupMouseEvent( wxMouseEvent &wxevent , wxMacCarbonEvent &cEvent )
default :
wxevent.SetEventType(wxEVT_MOTION ) ;
break ;
}
}
}
ControlRef wxMacFindSubControl( wxTopLevelWindowMac* toplevelWindow, Point location , ControlRef superControl , ControlPartCode *outPart )
@@ -394,18 +394,18 @@ ControlRef wxMacFindSubControl( wxTopLevelWindowMac* toplevelWindow, Point locat
if ( superControl )
{
UInt16 childrenCount = 0 ;
OSStatus err = CountSubControls( superControl , &childrenCount ) ;
OSStatus err = CountSubControls( superControl , &childrenCount ) ;
if ( err == errControlIsNotEmbedder )
return NULL ;
wxASSERT_MSG( err == noErr , wxT("Unexpected error when accessing subcontrols") ) ;
for ( UInt16 i = childrenCount ; i >=1 ; --i )
{
ControlHandle sibling ;
err = GetIndexedSubControl( superControl , i , & sibling ) ;
if ( err == errControlIsNotEmbedder )
return NULL ;
wxASSERT_MSG( err == noErr , wxT("Unexpected error when accessing subcontrols") ) ;
if ( IsControlVisible( sibling ) )
{
@@ -425,7 +425,7 @@ ControlRef wxMacFindSubControl( wxTopLevelWindowMac* toplevelWindow, Point locat
testLocation.h -= r.left ;
testLocation.v -= r.top ;
}
*outPart = TestControl( sibling , testLocation ) ;
return sibling ;
}
@@ -450,11 +450,11 @@ ControlRef wxMacFindControlUnderMouse( wxTopLevelWindowMac* toplevelWindow , Poi
pascal OSStatus wxMacTopLevelMouseEventHandler( EventHandlerCallRef handler , EventRef event , void *data )
{
wxTopLevelWindowMac* toplevelWindow = (wxTopLevelWindowMac*) data ;
OSStatus result = eventNotHandledErr ;
wxMacCarbonEvent cEvent( event ) ;
Point screenMouseLocation = cEvent.GetParameter<Point>(kEventParamMouseLocation) ;
Point windowMouseLocation = screenMouseLocation ;
@@ -463,7 +463,7 @@ pascal OSStatus wxMacTopLevelMouseEventHandler( EventHandlerCallRef handler , Ev
wxWindow* currentMouseWindow = NULL ;
ControlRef control = NULL ;
if ( window )
{
QDGlobalToLocalPoint( UMAGetWindowPort(window ) , &windowMouseLocation ) ;
@@ -485,8 +485,8 @@ pascal OSStatus wxMacTopLevelMouseEventHandler( EventHandlerCallRef handler , Ev
if ( currentMouseWindow == NULL && cEvent.GetKind() == kEventMouseMoved )
{
#if wxUSE_TOOLBAR
// for wxToolBar to function we have to send certaint events to it
// instead of its children (wxToolBarTools)
// for wxToolBar to function we have to send certaint events to it
// instead of its children (wxToolBarTools)
ControlRef parent ;
GetSuperControl(control, &parent );
wxWindow *wxParent = wxFindControlFromMacControl( parent ) ;
@@ -495,14 +495,14 @@ pascal OSStatus wxMacTopLevelMouseEventHandler( EventHandlerCallRef handler , Ev
#endif
}
}
}
}
}
wxMouseEvent wxevent(wxEVT_LEFT_DOWN);
SetupMouseEvent( wxevent , cEvent ) ;
// handle all enter / leave events
if ( currentMouseWindow != g_MacLastWindow )
{
if ( g_MacLastWindow )
@@ -530,7 +530,7 @@ pascal OSStatus wxMacTopLevelMouseEventHandler( EventHandlerCallRef handler , Ev
}
g_MacLastWindow = currentMouseWindow ;
}
if ( windowPart == inMenuBar )
{
// special case menu bar, as we are having a low-level runloop we must do it ourselves
@@ -545,23 +545,23 @@ pascal OSStatus wxMacTopLevelMouseEventHandler( EventHandlerCallRef handler , Ev
wxWindow *currentMouseWindowParent = currentMouseWindow->GetParent();
currentMouseWindow->ScreenToClient( &wxevent.m_x , &wxevent.m_y ) ;
wxevent.SetEventObject( currentMouseWindow ) ;
// make tooltips current
#if wxUSE_TOOLTIPS
if ( wxevent.GetEventType() == wxEVT_MOTION
|| wxevent.GetEventType() == wxEVT_ENTER_WINDOW
|| wxevent.GetEventType() == wxEVT_LEAVE_WINDOW )
wxToolTip::RelayEvent( currentMouseWindow , wxevent);
#endif // wxUSE_TOOLTIPS
#endif // wxUSE_TOOLTIPS
if ( currentMouseWindow->GetEventHandler()->ProcessEvent(wxevent) )
{
if ((currentMouseWindowParent != NULL) &&
if ((currentMouseWindowParent != NULL) &&
(currentMouseWindowParent->GetChildren().Find(currentMouseWindow) == NULL))
currentMouseWindow = NULL;
result = noErr;
}
else
@@ -579,15 +579,15 @@ pascal OSStatus wxMacTopLevelMouseEventHandler( EventHandlerCallRef handler , Ev
// if built-in find control is finding the wrong control (ie static box instead of overlaid
// button, we cannot let the standard handler do its job, but must handle manually
if ( ( cEvent.GetKind() == kEventMouseDown )
if ( ( cEvent.GetKind() == kEventMouseDown )
#ifdef __WXMAC_OSX__
&&
(FindControlUnderMouse(windowMouseLocation , window , &dummyPart) !=
wxMacFindControlUnderMouse( toplevelWindow , windowMouseLocation , window , &dummyPart ) )
&&
(FindControlUnderMouse(windowMouseLocation , window , &dummyPart) !=
wxMacFindControlUnderMouse( toplevelWindow , windowMouseLocation , window , &dummyPart ) )
#endif
)
{
if ( currentMouseWindow->MacIsReallyEnabled() )
if ( currentMouseWindow->MacIsReallyEnabled() )
{
EventModifiers modifiers = cEvent.GetParameter<EventModifiers>(kEventParamKeyModifiers, typeUInt32) ;
Point clickLocation = windowMouseLocation ;
@@ -597,8 +597,8 @@ pascal OSStatus wxMacTopLevelMouseEventHandler( EventHandlerCallRef handler , Ev
HandleControlClick( (ControlRef) currentMouseWindow->GetHandle() , clickLocation ,
modifiers , (ControlActionUPP ) -1 ) ;
if ((currentMouseWindowParent != NULL) &&
if ((currentMouseWindowParent != NULL) &&
(currentMouseWindowParent->GetChildren().Find(currentMouseWindow) == NULL))
currentMouseWindow = NULL;
}
@@ -612,7 +612,7 @@ pascal OSStatus wxMacTopLevelMouseEventHandler( EventHandlerCallRef handler , Ev
}
// update cursor
wxWindow* cursorTarget = currentMouseWindow ;
wxPoint cursorPoint( wxevent.m_x , wxevent.m_y ) ;
@@ -657,7 +657,7 @@ static pascal OSStatus wxMacTopLevelWindowEventHandler( EventHandlerCallRef hand
OSStatus result = eventNotHandledErr ;
wxMacCarbonEvent cEvent( event ) ;
// WindowRef windowRef = cEvent.GetParameter<WindowRef>(kEventParamDirectObject) ;
wxTopLevelWindowMac* toplevelWindow = (wxTopLevelWindowMac*) data ;
@@ -683,10 +683,12 @@ static pascal OSStatus wxMacTopLevelWindowEventHandler( EventHandlerCallRef hand
// we still sending an eventNotHandledErr in order to allow for default processing
break ;
}
case kEventWindowShown :
toplevelWindow->Refresh() ;
result = noErr ;
break ;
case kEventWindowShown :
{
toplevelWindow->Refresh() ;
result = noErr ;
break ;
}
case kEventWindowClose :
toplevelWindow->Close() ;
result = noErr ;
@@ -705,10 +707,10 @@ static pascal OSStatus wxMacTopLevelWindowEventHandler( EventHandlerCallRef hand
{
#if wxUSE_STATUSBAR
frame->PositionStatusBar();
#endif
#endif
#if wxUSE_TOOLBAR
frame->PositionToolBar();
#endif
#endif
}
wxSizeEvent event( r.GetSize() , toplevelWindow->GetId() ) ;
@@ -736,7 +738,7 @@ static pascal OSStatus wxMacTopLevelWindowEventHandler( EventHandlerCallRef hand
// all (Mac) rects are in content area coordinates, all wxRects in structure coordinates
int left , top , right , bottom ;
toplevelWindow->MacGetContentAreaInset( left , top , right , bottom ) ;
wxRect r( newRect.left - left , newRect.top - top ,
wxRect r( newRect.left - left , newRect.top - top ,
newRect.right - newRect.left + left + right , newRect.bottom - newRect.top + top + bottom ) ;
// this is a EVT_SIZING not a EVT_SIZE type !
wxSizeEvent wxevent( r , toplevelWindow->GetId() ) ;
@@ -759,7 +761,7 @@ static pascal OSStatus wxMacTopLevelWindowEventHandler( EventHandlerCallRef hand
toplevelWindow->wxWindowMac::MacSuperChangedPosition() ; // like this only children will be notified
}
result = noErr ;
result = noErr ;
break ;
}
default :
@@ -870,26 +872,26 @@ void wxRemoveMacWindowAssociation(wxTopLevelWindowMac *win)
wxTopLevelWindowMac *wxTopLevelWindowMac::s_macDeactivateWindow = NULL;
typedef struct
typedef struct
{
wxPoint m_position ;
wxSize m_size ;
wxSize m_size ;
} FullScreenData ;
void wxTopLevelWindowMac::Init()
{
m_iconized =
m_maximizeOnShow = FALSE;
m_maximizeOnShow = false;
m_macWindow = NULL ;
#if TARGET_API_MAC_OSX
#if TARGET_API_MAC_OSX
if ( UMAGetSystemVersion() >= 0x1030 )
{
m_macUsesCompositing = TRUE;
{
m_macUsesCompositing = true;
}
else
#endif
{
m_macUsesCompositing = FALSE;
m_macUsesCompositing = false;
}
m_macEventHandler = NULL ;
m_macFullScreenData = NULL ;
@@ -931,7 +933,7 @@ bool wxTopLevelWindowMac::Create(wxWindow *parent,
MacCreateRealWindow( title, pos , size , MacRemoveBordersFromStyle(style) , name ) ;
SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_3DFACE));
if (GetExtraStyle() & wxFRAME_EX_METAL)
MacSetMetalAppearance(true);
@@ -940,7 +942,7 @@ bool wxTopLevelWindowMac::Create(wxWindow *parent,
if ( parent )
parent->AddChild(this);
return TRUE;
return true;
}
wxTopLevelWindowMac::~wxTopLevelWindowMac()
@@ -963,7 +965,7 @@ wxTopLevelWindowMac::~wxTopLevelWindowMac()
if ( wxModelessWindows.Find(this) )
wxModelessWindows.DeleteObject(this);
FullScreenData *data = (FullScreenData *) m_macFullScreenData ;
delete data ;
m_macFullScreenData = NULL ;
@@ -981,7 +983,7 @@ void wxTopLevelWindowMac::Maximize(bool maximize)
wxMacPortStateHelper help( (GrafPtr) GetWindowPort( (WindowRef) m_macWindow) ) ;
wxMacWindowClipper clip (this);
#endif
if ( !IsWindowInStandardState( (WindowRef)m_macWindow, NULL, NULL) )
if ( !IsWindowInStandardState( (WindowRef)m_macWindow, NULL, NULL) )
{
Rect rect;
GetWindowBounds((WindowRef)m_macWindow, kWindowGlobalPortRgn, &rect);
@@ -1009,9 +1011,9 @@ bool wxTopLevelWindowMac::IsIconized() const
void wxTopLevelWindowMac::Restore()
{
if ( IsMaximized() )
if ( IsMaximized() )
Maximize(false);
else if ( IsIconized() )
else if ( IsIconized() )
Iconize(false);
}
@@ -1031,7 +1033,7 @@ void wxTopLevelWindowMac::SetIcon(const wxIcon& icon)
}
void wxTopLevelWindowMac::MacSetBackgroundBrush( const wxBrush &brush )
{
{
wxTopLevelWindowBase::MacSetBackgroundBrush( brush ) ;
if ( m_macBackgroundBrush.Ok() && m_macBackgroundBrush.GetStyle() != wxTRANSPARENT && m_macBackgroundBrush.MacGetBrushKind() == kwxMacBrushTheme )
@@ -1040,7 +1042,7 @@ void wxTopLevelWindowMac::MacSetBackgroundBrush( const wxBrush &brush )
}
}
void wxTopLevelWindowMac::MacInstallTopLevelWindowEventHandler()
void wxTopLevelWindowMac::MacInstallTopLevelWindowEventHandler()
{
if ( m_macEventHandler != NULL )
{
@@ -1059,7 +1061,7 @@ void wxTopLevelWindowMac::MacCreateRealWindow( const wxString& title,
OSStatus err = noErr ;
SetName(name);
m_windowStyle = style;
m_isShown = FALSE;
m_isShown = false;
// create frame.
@@ -1067,12 +1069,12 @@ void wxTopLevelWindowMac::MacCreateRealWindow( const wxString& title,
int x = (int)pos.x;
int y = (int)pos.y;
wxRect display = wxGetClientDisplayRect() ;
if ( x == wxDefaultPosition.x )
x = display.x ;
if ( y == wxDefaultPosition.y )
y = display.y ;
@@ -1116,7 +1118,7 @@ void wxTopLevelWindowMac::MacCreateRealWindow( const wxString& title,
{
wclass = kDrawerWindowClass;
// we must force compositing on a drawer
m_macUsesCompositing = TRUE ;
m_macUsesCompositing = true ;
}
#endif //10.2 and up
else
@@ -1160,11 +1162,11 @@ void wxTopLevelWindowMac::MacCreateRealWindow( const wxString& title,
group = GetWindowGroupOfClass(kUtilityWindowClass) ;
}
#if TARGET_API_MAC_OSX
#if TARGET_API_MAC_OSX
if ( m_macUsesCompositing )
attr |= kWindowCompositingAttribute;
#endif
if ( HasFlag(wxFRAME_SHAPED) )
{
WindowDefSpec customWindowDefSpec;
@@ -1186,19 +1188,19 @@ void wxTopLevelWindowMac::MacCreateRealWindow( const wxString& title,
wxCHECK_RET( err == noErr, wxT("Mac OS error when trying to create new window") );
// the create commands are only for content rect, so we have to set the size again as
// structure bounds
// structure bounds
SetWindowBounds( (WindowRef) m_macWindow , kWindowStructureRgn , &theBoundsRect ) ;
wxAssociateWinWithMacWindow( (WindowRef) m_macWindow , this ) ;
UMASetWTitle( (WindowRef) m_macWindow , title , m_font.GetEncoding() ) ;
m_peer = new wxMacControl(this , true /*isRootControl*/) ;
#if TARGET_API_MAC_OSX
if ( m_macUsesCompositing )
{
// There is a bug in 10.2.X for ::GetRootControl returning the window view instead of
// There is a bug in 10.2.X for ::GetRootControl returning the window view instead of
// the content view, so we have to retrieve it explicitly
HIViewFindByID( HIViewGetRoot( (WindowRef) m_macWindow ) , kHIViewWindowContentID ,
HIViewFindByID( HIViewGetRoot( (WindowRef) m_macWindow ) , kHIViewWindowContentID ,
m_peer->GetControlRefAddr() ) ;
if ( !m_peer->Ok() )
{
@@ -1278,11 +1280,11 @@ void wxTopLevelWindowMac::SetTitle(const wxString& title)
bool wxTopLevelWindowMac::Show(bool show)
{
if ( !wxTopLevelWindowBase::Show(show) )
return FALSE;
return false;
if (show)
{
#if wxUSE_SYSTEM_OPTIONS //code contributed by Ryan Wilcox December 18, 2003
#if wxUSE_SYSTEM_OPTIONS //code contributed by Ryan Wilcox December 18, 2003
if ( (wxSystemOptions::HasOption(wxMAC_WINDOW_PLAIN_TRANSITION) ) && ( wxSystemOptions::GetOptionInt( wxMAC_WINDOW_PLAIN_TRANSITION ) == 1) )
{
::ShowWindow( (WindowRef)m_macWindow );
@@ -1314,21 +1316,21 @@ bool wxTopLevelWindowMac::Show(bool show)
MacPropagateVisibilityChanged() ;
return TRUE ;
return true ;
}
bool wxTopLevelWindowMac::ShowFullScreen(bool show, long style)
{
{
if ( show )
{
FullScreenData *data = (FullScreenData *)m_macFullScreenData ;
delete data ;
data = new FullScreenData() ;
m_macFullScreenData = data ;
data->m_position = GetPosition() ;
data->m_size = GetSize() ;
if ( style & wxFULLSCREEN_NOMENUBAR )
{
HideMenuBar() ;
@@ -1337,12 +1339,12 @@ bool wxTopLevelWindowMac::ShowFullScreen(bool show, long style)
wxRect client = wxGetClientDisplayRect() ;
int x, y, w, h ;
x = client.x ;
y = client.y ;
w = client.width ;
h = client.height ;
MacGetContentAreaInset( left , top , right , bottom ) ;
if ( style & wxFULLSCREEN_NOCAPTION )
@@ -1375,12 +1377,12 @@ bool wxTopLevelWindowMac::ShowFullScreen(bool show, long style)
delete data ;
m_macFullScreenData = NULL ;
}
return FALSE;
return false;
}
bool wxTopLevelWindowMac::IsFullScreen() const
{
return m_macFullScreenData != NULL ;
bool wxTopLevelWindowMac::IsFullScreen() const
{
return m_macFullScreenData != NULL ;
}
// we are still using coordinates of the content view, todo switch to structure bounds
@@ -1429,18 +1431,18 @@ void wxTopLevelWindowMac::DoGetClientSize( int *width, int *height ) const
if(height) *height = bounds.bottom - bounds.top ;
}
void wxTopLevelWindowMac::MacSetMetalAppearance( bool set )
void wxTopLevelWindowMac::MacSetMetalAppearance( bool set )
{
#if TARGET_API_MAC_OSX
wxASSERT_MSG( m_macUsesCompositing ,
wxT("Cannot set metal appearance on a non-compositing window") ) ;
MacChangeWindowAttributes( set ? kWindowMetalAttribute : kWindowNoAttributes ,
MacChangeWindowAttributes( set ? kWindowMetalAttribute : kWindowNoAttributes ,
set ? kWindowNoAttributes : kWindowMetalAttribute ) ;
#endif
}
bool wxTopLevelWindowMac::MacGetMetalAppearance() const
bool wxTopLevelWindowMac::MacGetMetalAppearance() const
{
#if TARGET_API_MAC_OSX
return MacGetWindowAttributes() & kWindowMetalAttribute ;
@@ -1449,67 +1451,67 @@ bool wxTopLevelWindowMac::MacGetMetalAppearance() const
#endif
}
void wxTopLevelWindowMac::MacChangeWindowAttributes( wxUint32 attributesToSet , wxUint32 attributesToClear )
void wxTopLevelWindowMac::MacChangeWindowAttributes( wxUint32 attributesToSet , wxUint32 attributesToClear )
{
ChangeWindowAttributes ( (WindowRef) m_macWindow , attributesToSet, attributesToClear ) ;
}
wxUint32 wxTopLevelWindowMac::MacGetWindowAttributes() const
wxUint32 wxTopLevelWindowMac::MacGetWindowAttributes() const
{
UInt32 attr = 0 ;
GetWindowAttributes((WindowRef) m_macWindow , &attr ) ;
return attr ;
}
void wxTopLevelWindowMac::MacPerformUpdates()
void wxTopLevelWindowMac::MacPerformUpdates()
{
#if TARGET_API_MAC_OSX
if ( m_macUsesCompositing )
{
if ( m_macUsesCompositing )
{
#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3
// for composited windows this also triggers a redraw of all
// invalid views in the window
if( UMAGetSystemVersion() >= 0x1030 )
HIWindowFlush((WindowRef) m_macWindow) ;
else
// for composited windows this also triggers a redraw of all
// invalid views in the window
if( UMAGetSystemVersion() >= 0x1030 )
HIWindowFlush((WindowRef) m_macWindow) ;
else
#endif
{
// the only way to trigger the redrawing on earlier systems is to call
// ReceiveNextEvent
{
// the only way to trigger the redrawing on earlier systems is to call
// ReceiveNextEvent
EventRef currentEvent = (EventRef) wxTheApp->MacGetCurrentEvent() ;
UInt32 currentEventClass = 0 ;
UInt32 currentEventKind = 0 ;
if ( currentEvent != NULL )
{
currentEventClass = ::GetEventClass( currentEvent ) ;
currentEventKind = ::GetEventKind( currentEvent ) ;
}
if ( currentEventClass != kEventClassMenu )
{
// when tracking a menu, strange redraw errors occur if we flush now, so leave..
EventRef theEvent;
OSStatus status = noErr ;
status = ReceiveNextEvent( 0 , NULL , kEventDurationNoWait , false , &theEvent ) ;
}
}
EventRef currentEvent = (EventRef) wxTheApp->MacGetCurrentEvent() ;
UInt32 currentEventClass = 0 ;
UInt32 currentEventKind = 0 ;
if ( currentEvent != NULL )
{
currentEventClass = ::GetEventClass( currentEvent ) ;
currentEventKind = ::GetEventKind( currentEvent ) ;
}
if ( currentEventClass != kEventClassMenu )
{
// when tracking a menu, strange redraw errors occur if we flush now, so leave..
EventRef theEvent;
OSStatus status = noErr ;
status = ReceiveNextEvent( 0 , NULL , kEventDurationNoWait , false , &theEvent ) ;
}
}
}
else
#endif
{
BeginUpdate( (WindowRef) m_macWindow ) ;
BeginUpdate( (WindowRef) m_macWindow ) ;
RgnHandle updateRgn = NewRgn();
if ( updateRgn )
{
GetPortVisibleRegion( GetWindowPort( (WindowRef)m_macWindow ), updateRgn );
UpdateControls( (WindowRef)m_macWindow , updateRgn ) ;
// if ( !EmptyRgn( updateRgn ) )
// MacDoRedraw( updateRgn , 0 , true) ;
DisposeRgn( updateRgn );
}
EndUpdate( (WindowRef)m_macWindow ) ;
QDFlushPortBuffer( GetWindowPort( (WindowRef)m_macWindow ) , NULL ) ;
RgnHandle updateRgn = NewRgn();
if ( updateRgn )
{
GetPortVisibleRegion( GetWindowPort( (WindowRef)m_macWindow ), updateRgn );
UpdateControls( (WindowRef)m_macWindow , updateRgn ) ;
// if ( !EmptyRgn( updateRgn ) )
// MacDoRedraw( updateRgn , 0 , true) ;
DisposeRgn( updateRgn );
}
EndUpdate( (WindowRef)m_macWindow ) ;
QDFlushPortBuffer( GetWindowPort( (WindowRef)m_macWindow ) , NULL ) ;
}
}
@@ -1545,7 +1547,7 @@ void wxTopLevelWindowMac::RequestUserAttention(int flags )
bool wxTopLevelWindowMac::SetShape(const wxRegion& region)
{
wxCHECK_MSG( HasFlag(wxFRAME_SHAPED), FALSE,
wxCHECK_MSG( HasFlag(wxFRAME_SHAPED), false,
_T("Shaped windows must be created with the wxFRAME_SHAPED style."));
// The empty region signifies that the shape should be removed from the
@@ -1571,7 +1573,7 @@ bool wxTopLevelWindowMac::SetShape(const wxRegion& region)
// Tell the window manager that the window has changed shape
ReshapeCustomWindow((WindowRef)MacGetWindowRef());
return TRUE;
return true;
}
// ---------------------------------------------------------------------------
@@ -1635,10 +1637,10 @@ static void wxShapedMacWindowStructureRegion(WindowRef window, RgnHandle rgn)
if (cachedRegion)
{
Rect windowRect;
wxShapedMacWindowGetPos(window, &windowRect); //how big is the window
CopyRgn(cachedRegion, rgn); //make a copy of our cached region
wxShapedMacWindowGetPos(window, &windowRect); // how big is the window
CopyRgn(cachedRegion, rgn); // make a copy of our cached region
OffsetRgn(rgn, windowRect.left, windowRect.top); // position it over window
//MapRgn(rgn, &mMaskSize, &windowRect); //scale it to our actual window size
//MapRgn(rgn, &mMaskSize, &windowRect); //scale it to our actual window size
}
}
@@ -1673,7 +1675,7 @@ static SInt32 wxShapedMacWindowHitTest(WindowRef window,SInt32 param)
static RgnHandle tempRgn=nil;
if(!tempRgn)
tempRgn=NewRgn();
tempRgn=NewRgn();
SetPt(&hitPoint,LoWord(param),HiWord(param));//get the point clicked

View File

@@ -209,7 +209,7 @@ static pascal OSStatus wxMacWindowControlEventHandler( EventHandlerCallRef handl
thisWindow->GetPeer()->GetRect( &controlBounds ) ;
}
}
if ( cEvent.GetParameter<RgnHandle>(kEventParamRgnHandle, &updateRgn) != noErr )
{
updateRgn = (RgnHandle) visRegion.GetWXHRGN() ;
@@ -223,7 +223,7 @@ static pascal OSStatus wxMacWindowControlEventHandler( EventHandlerCallRef handl
OffsetRgn( allocatedRgn , -controlBounds.left , -controlBounds.top ) ;
// hide the given region by the new region that must be shifted
wxMacNativeToWindow( thisWindow , allocatedRgn ) ;
updateRgn = allocatedRgn ;
updateRgn = allocatedRgn ;
}
else
{
@@ -268,10 +268,10 @@ static pascal OSStatus wxMacWindowControlEventHandler( EventHandlerCallRef handl
if ( cEvent.GetParameter<CGContextRef>(kEventParamCGContextRef, &cgContext) != noErr )
{
wxASSERT( thisWindow->GetPeer()->IsCompositing() == false ) ;
// this parameter is not provided on non-composited windows
created = true ;
// rest of the code expects this to be already transformed and clipped for local
// rest of the code expects this to be already transformed and clipped for local
CGrafPtr port = GetWindowPort( (WindowRef) thisWindow->MacGetTopLevelWindowRef() ) ;
Rect bounds ;
GetPortBounds( port , &bounds ) ;
@@ -285,13 +285,13 @@ static pascal OSStatus wxMacWindowControlEventHandler( EventHandlerCallRef handl
CGContextTranslateCTM( cgContext , 0 , bounds.bottom - bounds.top ) ;
CGContextScaleCTM( cgContext , 1 , -1 ) ;
CGContextTranslateCTM( cgContext , controlBounds.left , controlBounds.top ) ;
/*
CGContextSetRGBFillColor( cgContext , 1.0 , 1.0 , 1.0 , 1.0 ) ;
CGContextFillRect(cgContext , CGRectMake( 0 , 0 ,
controlBounds.right - controlBounds.left ,
CGContextFillRect(cgContext , CGRectMake( 0 , 0 ,
controlBounds.right - controlBounds.left ,
controlBounds.bottom - controlBounds.top ) );
*/
@@ -471,6 +471,7 @@ pascal OSStatus wxMacWindowEventHandler( EventHandlerCallRef handler , EventRef
break ;
case kEventClassService :
result = wxMacWindowServiceEventHandler( handler, event , data ) ;
break ;
default :
break ;
}
@@ -725,17 +726,17 @@ void wxWindowMac::Init()
m_peer = NULL ;
m_frozenness = 0 ;
#if WXWIN_COMPATIBILITY_2_4
m_backgroundTransparent = FALSE;
m_backgroundTransparent = false;
#endif
// as all windows are created with WS_VISIBLE style...
m_isShown = TRUE;
m_isShown = true;
m_hScrollBar = NULL ;
m_vScrollBar = NULL ;
m_macBackgroundBrush = wxNullBrush ;
m_macIsUserPane = TRUE;
m_macIsUserPane = true;
#if wxMAC_USE_CORE_GRAPHICS
m_cgContextRef = NULL ;
#endif
@@ -750,7 +751,7 @@ wxWindowMac::~wxWindowMac()
{
SendDestroyEvent();
m_isBeingDeleted = TRUE;
m_isBeingDeleted = true;
MacInvalidateBorders() ;
@@ -849,10 +850,10 @@ bool wxWindowMac::Create(wxWindowMac *parent, wxWindowID id,
long style,
const wxString& name)
{
wxCHECK_MSG( parent, FALSE, wxT("can't create wxWindowMac without parent") );
wxCHECK_MSG( parent, false, wxT("can't create wxWindowMac without parent") );
if ( !CreateBase(parent, id, pos, size, style, wxDefaultValidator, name) )
return FALSE;
return false;
m_windowVariant = parent->GetWindowVariant() ;
@@ -890,10 +891,10 @@ bool wxWindowMac::Create(wxWindowMac *parent, wxWindowID id,
wxWindowCreateEvent event(this);
GetEventHandler()->AddPendingEvent(event);
return TRUE;
return true;
}
void wxWindowMac::MacChildAdded()
void wxWindowMac::MacChildAdded()
{
if ( m_vScrollBar )
{
@@ -1161,7 +1162,7 @@ bool wxWindowMac::MacGetBoundsForControl(const wxPoint& pos,
int& w, int& h , bool adjustOrigin ) const
{
bool isCompositing = MacGetTopLevelWindow()->MacUsesCompositing() ;
// the desired size, minus the border pixels gives the correct size of the control
x = (int)pos.x;
@@ -1206,7 +1207,7 @@ void wxWindowMac::DoGetPosition(int *x, int *y) const
{
Rect bounds ;
m_peer->GetRect( &bounds ) ;
int x1 = bounds.left ;
int y1 = bounds.top ;
@@ -1367,7 +1368,7 @@ void wxWindowMac::MacGetContentAreaInset( int &left , int &top , int &right , in
GetRegionBounds( rgn , &content ) ;
m_peer->GetRect( &structure ) ;
OffsetRect( &structure, -structure.left , -structure.top ) ;
left = content.left - structure.left ;
top = content.top - structure.top ;
right = structure.right - content.right ;
@@ -1443,17 +1444,17 @@ void wxWindowMac::DoGetClientSize(int *x, int *y) const
bool wxWindowMac::SetCursor(const wxCursor& cursor)
{
if (m_cursor == cursor)
return FALSE;
return false;
if (wxNullCursor == cursor)
{
if ( ! wxWindowBase::SetCursor( *wxSTANDARD_CURSOR ) )
return FALSE ;
return false ;
}
else
{
if ( ! wxWindowBase::SetCursor( cursor ) )
return FALSE ;
return false ;
}
wxASSERT_MSG( m_cursor.Ok(),
@@ -1487,7 +1488,7 @@ bool wxWindowMac::SetCursor(const wxCursor& cursor)
m_cursor.MacInstall() ;
}
return TRUE ;
return true ;
}
#if wxUSE_MENUS
@@ -1525,7 +1526,7 @@ bool wxWindowMac::DoPopupMenu(wxMenu *menu, int x, int y)
menu->SetInvokingWindow(NULL);
return TRUE;
return true;
}
#endif
@@ -1545,7 +1546,7 @@ void wxWindowMac::DoSetToolTip(wxToolTip *tooltip)
#endif // wxUSE_TOOLTIPS
void wxWindowMac::MacInvalidateBorders()
void wxWindowMac::MacInvalidateBorders()
{
if ( m_peer == NULL )
return ;
@@ -1553,18 +1554,18 @@ void wxWindowMac::MacInvalidateBorders()
bool vis = MacIsReallyShown() ;
if ( !vis )
return ;
int outerBorder = MacGetLeftBorderSize() ;
if ( m_peer->NeedsFocusRect() && m_peer->HasFocus() )
outerBorder += 4 ;
if ( outerBorder == 0 )
return ;
// now we know that we have something to do at all
// now we know that we have something to do at all
// as the borders are drawn on the parent we have to properly invalidate all these areas
RgnHandle updateInner = NewRgn() ,
RgnHandle updateInner = NewRgn() ,
updateOuter = NewRgn() ;
// this rectangle is in HIViewCoordinates under OSX and in Window Coordinates under Carbon
@@ -1706,7 +1707,7 @@ void wxWindowMac::DoMoveWindow(int x, int y, int width, int height)
if ((m_maxWidth != -1) && (actualWidth > m_maxWidth))
actualWidth = m_maxWidth;
if ((m_maxHeight != -1) && (actualHeight > m_maxHeight))
actualHeight = m_maxHeight;
actualHeight = m_maxHeight;
bool doMove = false ;
bool doResize = false ;
@@ -1722,10 +1723,10 @@ void wxWindowMac::DoMoveWindow(int x, int y, int width, int height)
if ( doMove || doResize )
{
// as the borders are drawn outside the native control, we adjust now
// as the borders are drawn outside the native control, we adjust now
wxRect bounds( wxPoint( actualX + MacGetLeftBorderSize() ,actualY + MacGetTopBorderSize() ),
wxSize( actualWidth - (MacGetLeftBorderSize() + MacGetRightBorderSize()) ,
wxRect bounds( wxPoint( actualX + MacGetLeftBorderSize() ,actualY + MacGetTopBorderSize() ),
wxSize( actualWidth - (MacGetLeftBorderSize() + MacGetRightBorderSize()) ,
actualHeight - (MacGetTopBorderSize() + MacGetBottomBorderSize()) ) ) ;
Rect r ;
@@ -1737,10 +1738,10 @@ void wxWindowMac::DoMoveWindow(int x, int y, int width, int height)
}
MacInvalidateBorders() ;
m_cachedClippedRectValid = false ;
m_peer->SetRect( &r ) ;
wxWindowMac::MacSuperChangedPosition() ; // like this only children will be notified
MacInvalidateBorders() ;
@@ -1783,12 +1784,12 @@ wxSize wxWindowMac::DoGetBestSize() const
{
bestsize.bottom = 16 ;
}
#if wxUSE_SPINBTN
#if wxUSE_SPINBTN
else if ( IsKindOf( CLASSINFO( wxSpinButton ) ) )
{
bestsize.bottom = 24 ;
}
#endif // wxUSE_SPINBTN
#endif // wxUSE_SPINBTN
else
{
// return wxWindowBase::DoGetBestSize() ;
@@ -1926,7 +1927,7 @@ bool wxWindowMac::Show(bool show)
{
bool former = MacIsReallyShown() ;
if ( !wxWindowBase::Show(show) )
return FALSE;
return false;
// TODO use visibilityChanged Carbon Event for OSX
if ( m_peer )
@@ -1935,7 +1936,7 @@ bool wxWindowMac::Show(bool show)
}
if ( former != MacIsReallyShown() )
MacPropagateVisibilityChanged() ;
return TRUE;
return true;
}
bool wxWindowMac::Enable(bool enable)
@@ -1943,13 +1944,13 @@ bool wxWindowMac::Enable(bool enable)
wxASSERT( m_peer->Ok() ) ;
bool former = MacIsReallyEnabled() ;
if ( !wxWindowBase::Enable(enable) )
return FALSE;
return false;
m_peer->Enable( enable ) ;
if ( former != MacIsReallyEnabled() )
MacPropagateEnabledStateChanged() ;
return TRUE;
return true;
}
//
@@ -2029,7 +2030,7 @@ bool wxWindowMac::MacIsReallyShown()
// only under OSX the visibility of the TLW is taken into account
if ( m_isBeingDeleted )
return false ;
#if TARGET_API_MAC_OSX
if ( m_peer && m_peer->Ok() )
return m_peer->IsVisible();
@@ -2272,7 +2273,7 @@ void wxWindowMac::MacPaintBorders( int leftOrigin , int rightOrigin )
HIThemeFrameDrawInfo info ;
memset( &info, 0 , sizeof( info ) ) ;
info.version = 0 ;
info.kind = 0 ;
info.state = IsEnabled() ? kThemeStateActive : kThemeStateInactive ;
@@ -2280,7 +2281,7 @@ void wxWindowMac::MacPaintBorders( int leftOrigin , int rightOrigin )
CGContextRef cgContext = (CGContextRef) GetParent()->MacGetCGContextRef() ;
wxASSERT( cgContext ) ;
if (HasFlag(wxRAISED_BORDER) || HasFlag( wxSUNKEN_BORDER) || HasFlag(wxDOUBLE_BORDER) )
{
info.kind = kHIThemeFrameTextFieldSquare ;
@@ -2295,14 +2296,14 @@ void wxWindowMac::MacPaintBorders( int leftOrigin , int rightOrigin )
{
HIThemeDrawFocusRect( &cgrect , true , cgContext , kHIThemeOrientationNormal ) ;
}
m_peer->GetRect( &rect ) ;
if ( hasBothScrollbars )
{
int size = m_hScrollBar->GetWindowVariant() == wxWINDOW_VARIANT_NORMAL ? 16 : 12 ;
CGRect cgrect = CGRectMake( rect.right - size , rect.bottom - size , size , size ) ;
CGPoint cgpoint = CGPointMake( rect.right - size , rect.bottom - size ) ;
HIThemeGrowBoxDrawInfo info ;
HIThemeGrowBoxDrawInfo info ;
memset( &info, 0 , sizeof( info ) ) ;
info.version = 0 ;
info.state = IsEnabled() ? kThemeStateActive : kThemeStateInactive ;
@@ -2331,7 +2332,7 @@ void wxWindowMac::MacPaintBorders( int leftOrigin , int rightOrigin )
{
DrawThemeListBoxFrame(&rect,IsEnabled() ? kThemeStateActive : kThemeStateInactive) ;
}
if ( hasFocus )
{
DrawThemeFocusRect( &rect , true ) ;
@@ -2339,7 +2340,7 @@ void wxWindowMac::MacPaintBorders( int leftOrigin , int rightOrigin )
if ( hasBothScrollbars )
{
// GetThemeStandaloneGrowBoxBounds
// GetThemeStandaloneGrowBoxBounds
//DrawThemeStandaloneNoGrowBox
}
}
@@ -2405,8 +2406,8 @@ void wxWindowMac::ScrollWindow(int dx, int dy, const wxRect *rect)
int width , height ;
GetClientSize( &width , &height ) ;
#if TARGET_API_MAC_OSX
if ( 1 /* m_peer->IsCompositing() */ )
{
if ( 1 /* m_peer->IsCompositing() */ )
{
// note there currently is a bug in OSX which makes inefficient refreshes in case an entire control
// area is scrolled, this does not occur if width and height are 2 pixels less,
// TODO write optimal workaround
@@ -2443,20 +2444,20 @@ void wxWindowMac::ScrollWindow(int dx, int dy, const wxRect *rect)
// is the better overall solution, as it does not slow down scrolling
m_peer->SetNeedsDisplay() ;
#else
// this would be the preferred version for fast drawing controls
// this would be the preferred version for fast drawing controls
#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3
if( UMAGetSystemVersion() >= 0x1030 && m_peer->IsCompositing() )
HIViewRender(m_peer->GetControlRef()) ;
else
#endif
Update() ;
Update() ;
#endif
}
else
}
else
#endif
{
{
wxPoint pos;
pos.x = pos.y = 0;
@@ -2483,7 +2484,7 @@ void wxWindowMac::ScrollWindow(int dx, int dy, const wxRect *rect)
ScrollRect( &scrollrect , dx , dy , updateRgn ) ;
// now scroll the former update region as well and add the new update region
WindowRef rootWindow = (WindowRef) MacGetTopLevelWindowRef() ;
RgnHandle formerUpdateRgn = NewRgn() ;
RgnHandle scrollRgn = NewRgn() ;
@@ -2723,19 +2724,19 @@ wxTopLevelWindowMac* wxWindowMac::MacGetTopLevelWindow() const
return win ;
}
const wxRect& wxWindowMac::MacGetClippedClientRect() const
const wxRect& wxWindowMac::MacGetClippedClientRect() const
{
MacUpdateClippedRects() ;
return m_cachedClippedClientRect ;
}
const wxRect& wxWindowMac::MacGetClippedRect() const
const wxRect& wxWindowMac::MacGetClippedRect() const
{
MacUpdateClippedRects() ;
return m_cachedClippedRect ;
}
const wxRect&wxWindowMac:: MacGetClippedRectWithOuterStructure() const
const wxRect&wxWindowMac:: MacGetClippedRectWithOuterStructure() const
{
MacUpdateClippedRects() ;
return m_cachedClippedRectWithOuterStructure ;
@@ -2770,7 +2771,7 @@ void wxWindowMac::MacUpdateClippedRects() const
Rect r ;
Rect rIncludingOuterStructures ;
m_peer->GetRect( &r ) ;
r.left -= MacGetLeftBorderSize() ;
r.top -= MacGetTopBorderSize() ;
@@ -2784,10 +2785,10 @@ void wxWindowMac::MacUpdateClippedRects() const
rIncludingOuterStructures = r ;
InsetRect( &rIncludingOuterStructures , -4 , -4 ) ;
wxRect cl = GetClientRect() ;
Rect rClient = { cl.y , cl.x , cl.y + cl.height , cl.x + cl.width } ;
const wxWindow* child = this ;
const wxWindow* parent = NULL ;
while( !child->IsTopLevel() && ( parent = child->GetParent() ) != NULL )
@@ -2829,19 +2830,19 @@ void wxWindowMac::MacUpdateClippedRects() const
}
child = parent ;
}
m_cachedClippedRect = wxRect( r.left , r.top , r.right - r.left , r.bottom - r.top ) ;
m_cachedClippedClientRect = wxRect( rClient.left , rClient.top ,
m_cachedClippedClientRect = wxRect( rClient.left , rClient.top ,
rClient.right - rClient.left , rClient.bottom - rClient.top ) ;
m_cachedClippedRectWithOuterStructure = wxRect(
rIncludingOuterStructures.left , rIncludingOuterStructures.top ,
rIncludingOuterStructures.right - rIncludingOuterStructures.left ,
m_cachedClippedRectWithOuterStructure = wxRect(
rIncludingOuterStructures.left , rIncludingOuterStructures.top ,
rIncludingOuterStructures.right - rIncludingOuterStructures.left ,
rIncludingOuterStructures.bottom - rIncludingOuterStructures.top ) ;
m_cachedClippedRegionWithOuterStructure = wxRegion( m_cachedClippedRectWithOuterStructure ) ;
m_cachedClippedRegion = wxRegion( m_cachedClippedRect ) ;
m_cachedClippedClientRegion = wxRegion( m_cachedClippedClientRect ) ;
m_cachedClippedRectValid = true ;
}
@@ -2857,7 +2858,7 @@ bool wxWindowMac::MacDoRedraw( WXHRGN updatergnr , long time )
// wxLogDebug(wxT("update for %s bounds %d , %d , %d , %d"),wxString(GetClassInfo()->GetClassName()).c_str(), updatebounds.left , updatebounds.top , updatebounds.right , updatebounds.bottom ) ;
if ( !EmptyRgn(updatergn) )
if ( !EmptyRgn(updatergn) )
{
RgnHandle newupdate = NewRgn() ;
wxSize point = GetClientSize() ;
@@ -2876,7 +2877,7 @@ bool wxWindowMac::MacDoRedraw( WXHRGN updatergnr , long time )
dc->SetClippingRegion(wxRegion(updatergn));
else
dc->SetClippingRegion(wxRegion(newupdate));
wxEraseEvent eevent( GetId(), dc );
eevent.SetEventObject( this );
GetEventHandler()->ProcessEvent( eevent );
@@ -3135,7 +3136,7 @@ long wxWindowMac::MacGetLeftBorderSize( ) const
return 0 ;
SInt32 border = 0 ;
if (HasFlag(wxRAISED_BORDER) || HasFlag( wxSUNKEN_BORDER) || HasFlag(wxDOUBLE_BORDER) )
{
GetThemeMetric( kThemeMetricEditTextFrameOutset , &border ) ;

View File

@@ -152,9 +152,10 @@ bool wxWindowsPrintNativeData::TransferTo( wxPrintData &data )
HGLOBAL hDevNames = (HGLOBAL)(DWORD) m_devNames;
if (!hDevMode)
{
return false;
if ( hDevMode )
}
else
{
LPDEVMODE devMode = (LPDEVMODE)GlobalLock(hDevMode);
@@ -221,7 +222,7 @@ bool wxWindowsPrintNativeData::TransferTo( wxPrintData &data )
data.SetPaperId( wxPAPER_NONE );
data.SetPaperSize( wxSize(0,0) );
m_customWindowsPaperId = 0;
GlobalUnlock(hDevMode);
return false;
}