cleanup - reformat
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36738 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -12,19 +12,14 @@
|
||||
#include "wx/wxprec.h"
|
||||
|
||||
#include "wx/icon.h"
|
||||
|
||||
IMPLEMENT_DYNAMIC_CLASS(wxIcon, wxBitmap)
|
||||
|
||||
#include "wx/image.h"
|
||||
#include "wx/mac/private.h"
|
||||
|
||||
IMPLEMENT_DYNAMIC_CLASS(wxIcon, wxBitmap)
|
||||
|
||||
#define M_ICONDATA ((wxIconRefData *)m_refData)
|
||||
|
||||
|
||||
/*
|
||||
* Icons
|
||||
*/
|
||||
|
||||
wxIcon::wxIcon()
|
||||
{
|
||||
}
|
||||
@@ -47,7 +42,8 @@ wxIcon::wxIcon( char **bits )
|
||||
CopyFromBitmap( bmp ) ;
|
||||
}
|
||||
|
||||
wxIcon::wxIcon(const wxString& icon_file, int flags,
|
||||
wxIcon::wxIcon(
|
||||
const wxString& icon_file, int flags,
|
||||
int desiredWidth, int desiredHeight )
|
||||
{
|
||||
LoadFile( icon_file, (wxBitmapType) flags, desiredWidth, desiredHeight );
|
||||
@@ -60,6 +56,7 @@ wxIcon::~wxIcon()
|
||||
WXHICON wxIcon::GetHICON() const
|
||||
{
|
||||
wxASSERT( Ok() ) ;
|
||||
|
||||
return (WXHICON) ((wxIconRefData*)m_refData)->GetHICON() ;
|
||||
}
|
||||
|
||||
@@ -77,20 +74,21 @@ int wxIcon::GetHeight() const
|
||||
return M_ICONDATA->GetHeight();
|
||||
}
|
||||
|
||||
int wxIcon::GetDepth() const{
|
||||
int wxIcon::GetDepth() const
|
||||
{
|
||||
return 32;
|
||||
}
|
||||
|
||||
void wxIcon::SetDepth(int depth){
|
||||
|
||||
void wxIcon::SetDepth( int depth )
|
||||
{
|
||||
}
|
||||
|
||||
void wxIcon::SetWidth(int width){
|
||||
|
||||
void wxIcon::SetWidth( int width )
|
||||
{
|
||||
}
|
||||
|
||||
void wxIcon::SetHeight(int height){
|
||||
|
||||
void wxIcon::SetHeight( int height )
|
||||
{
|
||||
}
|
||||
|
||||
bool wxIcon::Ok() const
|
||||
@@ -98,7 +96,8 @@ bool wxIcon::Ok() const
|
||||
return m_refData != NULL ;
|
||||
}
|
||||
|
||||
bool wxIcon::LoadFile(const wxString& filename, wxBitmapType type,
|
||||
bool wxIcon::LoadFile(
|
||||
const wxString& filename, wxBitmapType type,
|
||||
int desiredWidth, int desiredHeight )
|
||||
{
|
||||
UnRef();
|
||||
@@ -106,6 +105,7 @@ bool wxIcon::LoadFile(const wxString& filename, wxBitmapType type,
|
||||
if ( type == wxBITMAP_TYPE_ICON_RESOURCE )
|
||||
{
|
||||
OSType theId = 0 ;
|
||||
|
||||
if ( filename == wxT("wxICON_INFORMATION") )
|
||||
{
|
||||
theId = kAlertNoteIcon ;
|
||||
@@ -123,7 +123,8 @@ bool wxIcon::LoadFile(const wxString& filename, wxBitmapType type,
|
||||
theId = kAlertStopIcon ;
|
||||
}
|
||||
else
|
||||
{/*
|
||||
{
|
||||
#if 0
|
||||
Str255 theName ;
|
||||
OSType theType ;
|
||||
wxMacStringToPascal( name , theName ) ;
|
||||
@@ -134,8 +135,9 @@ bool wxIcon::LoadFile(const wxString& filename, wxBitmapType type,
|
||||
GetResInfo( resHandle , &theId , &theType , theName ) ;
|
||||
ReleaseResource( resHandle ) ;
|
||||
}
|
||||
*/
|
||||
#endif
|
||||
}
|
||||
|
||||
if ( theId != 0 )
|
||||
{
|
||||
IconRef iconRef = NULL ;
|
||||
@@ -143,10 +145,12 @@ bool wxIcon::LoadFile(const wxString& filename, wxBitmapType type,
|
||||
if ( iconRef )
|
||||
{
|
||||
m_refData = new wxIconRefData( (WXHICON) iconRef ) ;
|
||||
return TRUE ;
|
||||
|
||||
return true ;
|
||||
}
|
||||
}
|
||||
return FALSE ;
|
||||
|
||||
return false ;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -158,8 +162,10 @@ bool wxIcon::LoadFile(const wxString& filename, wxBitmapType type,
|
||||
if ( handler->LoadFile( &bmp , filename, type, desiredWidth, desiredHeight ))
|
||||
{
|
||||
CopyFromBitmap( bmp ) ;
|
||||
|
||||
return true ;
|
||||
}
|
||||
|
||||
return false ;
|
||||
}
|
||||
else
|
||||
@@ -174,8 +180,10 @@ bool wxIcon::LoadFile(const wxString& filename, wxBitmapType type,
|
||||
desiredHeight = loadimage.GetHeight() ;
|
||||
if ( desiredWidth != loadimage.GetWidth() || desiredHeight != loadimage.GetHeight() )
|
||||
loadimage.Rescale( desiredWidth , desiredHeight ) ;
|
||||
|
||||
wxBitmap bmp( loadimage );
|
||||
CopyFromBitmap( bmp ) ;
|
||||
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
@@ -191,6 +199,7 @@ void wxIcon::CopyFromBitmap(const wxBitmap& bmp)
|
||||
// as the bitmap owns that ref, we have to acquire it as well
|
||||
IconRef iconRef = bmp.GetBitmapData()->GetIconRef() ;
|
||||
AcquireIconRef( iconRef ) ;
|
||||
|
||||
m_refData = new wxIconRefData( (WXHICON) iconRef ) ;
|
||||
M_ICONDATA->SetWidth( bmp.GetWidth() ) ;
|
||||
M_ICONDATA->SetHeight( bmp.GetHeight() ) ;
|
||||
@@ -199,7 +208,8 @@ void wxIcon::CopyFromBitmap(const wxBitmap& bmp)
|
||||
wxIconRefData::wxIconRefData( WXHICON icon )
|
||||
{
|
||||
m_iconRef = MAC_WXHICON( icon ) ;
|
||||
// Std sizes
|
||||
|
||||
// Standard sizes
|
||||
SetWidth( 32 ) ;
|
||||
SetHeight( 32 ) ;
|
||||
}
|
||||
@@ -220,11 +230,14 @@ void wxIconRefData::Free()
|
||||
|
||||
IMPLEMENT_DYNAMIC_CLASS(wxICONResourceHandler, wxBitmapHandler)
|
||||
|
||||
bool wxICONResourceHandler::LoadFile(wxBitmap *bitmap, const wxString& name, long flags,
|
||||
bool wxICONResourceHandler::LoadFile(
|
||||
wxBitmap *bitmap, const wxString& name, long flags,
|
||||
int desiredWidth, int desiredHeight )
|
||||
{
|
||||
wxIcon icon ;
|
||||
icon.LoadFile( name , wxBITMAP_TYPE_ICON_RESOURCE , desiredWidth , desiredHeight ) ;
|
||||
bitmap->CopyFromIcon( icon ) ;
|
||||
|
||||
return bitmap->Ok() ;
|
||||
}
|
||||
|
||||
|
@@ -107,13 +107,13 @@ bool wxMDIParentFrame::Create(wxWindow *parent,
|
||||
wxMDIParentFrame::~wxMDIParentFrame()
|
||||
{
|
||||
DestroyChildren();
|
||||
|
||||
// already deleted by DestroyChildren()
|
||||
m_clientWindow = NULL ;
|
||||
|
||||
delete m_windowMenu;
|
||||
}
|
||||
|
||||
|
||||
void wxMDIParentFrame::SetMenuBar(wxMenuBar *menu_bar)
|
||||
{
|
||||
wxFrame::SetMenuBar( menu_bar ) ;
|
||||
@@ -125,6 +125,7 @@ void wxMDIParentFrame::GetRectForTopLevelChildren(int *x, int *y, int *w, int *h
|
||||
*x = 0;
|
||||
if (y)
|
||||
*y = 0;
|
||||
|
||||
wxDisplaySize(w, h);
|
||||
}
|
||||
|
||||
@@ -186,18 +187,23 @@ void wxMDIParentFrame::RemoveChild(wxWindowBase *child)
|
||||
void wxMDIParentFrame::MacActivate(long timestamp, bool activating)
|
||||
{
|
||||
wxLogTrace(TRACE_MDI, wxT("MDI PARENT=%p MacActivate(0x%08lx,%s)"), this, timestamp, activating ? wxT("ACTIV") : wxT("deact"));
|
||||
|
||||
if (activating)
|
||||
{
|
||||
if (s_macDeactivateWindow && s_macDeactivateWindow->GetParent() == this)
|
||||
{
|
||||
wxLogTrace(TRACE_MDI, wxT("child had been scheduled for deactivation, rehighlighting"));
|
||||
|
||||
UMAHighlightAndActivateWindow((WindowRef)s_macDeactivateWindow->MacGetWindowRef(), true);
|
||||
wxLogTrace(TRACE_MDI, wxT("done highliting child"));
|
||||
|
||||
wxLogTrace(TRACE_MDI, wxT("finished highliting child"));
|
||||
|
||||
s_macDeactivateWindow = NULL;
|
||||
}
|
||||
else if (s_macDeactivateWindow == this)
|
||||
{
|
||||
wxLogTrace(TRACE_MDI, wxT("Avoided deactivation/activation of this=%p"), this);
|
||||
|
||||
s_macDeactivateWindow = NULL;
|
||||
}
|
||||
else // window to deactivate is NULL or is not us or one of our kids
|
||||
@@ -224,6 +230,7 @@ void wxMDIParentFrame::MacActivate(long timestamp, bool activating)
|
||||
if (s_macDeactivateWindow)
|
||||
wxLogTrace(TRACE_MDI, wxT("window=%p SHOULD have been deactivated, oh well!"), s_macDeactivateWindow);
|
||||
wxLogTrace(TRACE_MDI, wxT("Scheduling delayed MDI Parent deactivation"));
|
||||
|
||||
s_macDeactivateWindow = this;
|
||||
}
|
||||
}
|
||||
@@ -245,6 +252,7 @@ wxMDIChildFrame *wxMDIParentFrame::GetActiveChild() const
|
||||
wxMDIClientWindow *wxMDIParentFrame::OnCreateClient()
|
||||
{
|
||||
m_clientWindow = new wxMDIClientWindow( this );
|
||||
|
||||
return m_clientWindow;
|
||||
}
|
||||
|
||||
@@ -295,7 +303,7 @@ bool wxMDIParentFrame::ShouldBeVisible() const
|
||||
&& !wxDynamicCast(win, wxMDIChildFrame)
|
||||
#if wxUSE_STATUSBAR
|
||||
&& win != GetStatusBar()
|
||||
#endif // wxUSE_STATUSBAR
|
||||
#endif
|
||||
&& win != GetClientWindow() )
|
||||
{
|
||||
// if we have a non-MDI child, do remain visible so that it could
|
||||
@@ -321,6 +329,7 @@ bool wxMDIParentFrame::Show( bool show )
|
||||
// don't make the window visible now but remember that we should
|
||||
// have had done it
|
||||
m_shouldBeShown = true;
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -355,9 +364,10 @@ bool wxMDIChildFrame::Create(wxMDIParentFrame *parent,
|
||||
else
|
||||
m_windowId = (int)NewControlId();
|
||||
|
||||
if (parent) parent->AddChild(this);
|
||||
if (parent)
|
||||
parent->AddChild(this);
|
||||
|
||||
|
||||
MacCreateRealWindow( title, pos , size , MacRemoveBordersFromStyle(style) , name ) ;
|
||||
|
||||
SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_APPWORKSPACE));
|
||||
|
||||
|
@@ -9,13 +9,6 @@
|
||||
// Licence: wxWindows licence
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// ============================================================================
|
||||
// declarations
|
||||
// ============================================================================
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// headers
|
||||
// ----------------------------------------------------------------------------
|
||||
#include "wx/wxprec.h"
|
||||
|
||||
#if wxUSE_NOTEBOOK
|
||||
@@ -27,18 +20,12 @@
|
||||
#include "wx/image.h"
|
||||
#include "wx/notebook.h"
|
||||
#include "wx/mac/uma.h"
|
||||
// ----------------------------------------------------------------------------
|
||||
// macros
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
|
||||
// check that the page index is valid
|
||||
#define IS_VALID_PAGE(nPage) ((nPage) < GetPageCount())
|
||||
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// event table
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
DEFINE_EVENT_TYPE(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED)
|
||||
DEFINE_EVENT_TYPE(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING)
|
||||
|
||||
@@ -53,13 +40,6 @@ END_EVENT_TABLE()
|
||||
IMPLEMENT_DYNAMIC_CLASS(wxNotebook, wxControl)
|
||||
IMPLEMENT_DYNAMIC_CLASS(wxNotebookEvent, wxCommandEvent)
|
||||
|
||||
// ============================================================================
|
||||
// implementation
|
||||
// ============================================================================
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// wxNotebook construction
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// common part of all ctors
|
||||
void wxNotebook::Init()
|
||||
@@ -86,7 +66,6 @@ wxNotebook::wxNotebook(wxWindow *parent,
|
||||
Create( parent, id, pos, size, style, name );
|
||||
}
|
||||
|
||||
// Create() function
|
||||
bool wxNotebook::Create( wxWindow *parent,
|
||||
wxWindowID id,
|
||||
const wxPoint& pos,
|
||||
@@ -114,23 +93,33 @@ bool wxNotebook::Create(wxWindow *parent,
|
||||
else if ( HasFlag( wxBK_BOTTOM ) )
|
||||
tabstyle = kControlTabDirectionSouth;
|
||||
|
||||
ControlTabSize tabsize = kControlTabSizeLarge ;
|
||||
if ( GetWindowVariant() == wxWINDOW_VARIANT_SMALL )
|
||||
tabsize = kControlTabSizeSmall ;
|
||||
else if ( GetWindowVariant() == wxWINDOW_VARIANT_MINI )
|
||||
ControlTabSize tabsize;
|
||||
switch (GetWindowVariant())
|
||||
{
|
||||
case wxWINDOW_VARIANT_MINI:
|
||||
if ( UMAGetSystemVersion() >= 0x1030 )
|
||||
tabsize = 3 ;
|
||||
else
|
||||
tabsize = kControlSizeSmall;
|
||||
break;
|
||||
|
||||
case wxWINDOW_VARIANT_SMALL:
|
||||
tabsize = kControlTabSizeSmall;
|
||||
break;
|
||||
|
||||
default:
|
||||
tabsize = kControlTabSizeLarge;
|
||||
break;
|
||||
}
|
||||
|
||||
m_peer = new wxMacControl( this );
|
||||
verify_noerr ( CreateTabsControl( MAC_WXHWND(parent->MacGetTopLevelWindowRef()) , &bounds ,
|
||||
tabsize , tabstyle, 0, NULL, m_peer->GetControlRefAddr() ) );
|
||||
|
||||
OSStatus err = CreateTabsControl(
|
||||
MAC_WXHWND(parent->MacGetTopLevelWindowRef()), &bounds,
|
||||
tabsize, tabstyle, 0, NULL, m_peer->GetControlRefAddr() );
|
||||
verify_noerr( err );
|
||||
|
||||
MacPostControlCreate( pos, size );
|
||||
|
||||
return true ;
|
||||
}
|
||||
|
||||
@@ -165,7 +154,7 @@ wxSize wxNotebook::CalcSizeFromPage(const wxSize& sizePage) const
|
||||
|
||||
int wxNotebook::SetSelection(size_t nPage)
|
||||
{
|
||||
wxCHECK_MSG( IS_VALID_PAGE(nPage), wxNOT_FOUND, wxT("notebook page out of range") );
|
||||
wxCHECK_MSG( IS_VALID_PAGE(nPage), wxNOT_FOUND, wxT("SetSelection: invalid notebook page") );
|
||||
|
||||
if ( int(nPage) != m_nSelection )
|
||||
{
|
||||
@@ -188,7 +177,7 @@ int wxNotebook::SetSelection(size_t nPage)
|
||||
|
||||
bool wxNotebook::SetPageText(size_t nPage, const wxString& strText)
|
||||
{
|
||||
wxASSERT( IS_VALID_PAGE(nPage) );
|
||||
wxCHECK_MSG( IS_VALID_PAGE(nPage), false, wxT("SetPageText: invalid notebook page") );
|
||||
|
||||
wxNotebookPage *page = m_pages[nPage];
|
||||
page->SetLabel(strText);
|
||||
@@ -199,25 +188,26 @@ bool wxNotebook::SetPageText(size_t nPage, const wxString& strText)
|
||||
|
||||
wxString wxNotebook::GetPageText(size_t nPage) const
|
||||
{
|
||||
wxASSERT( IS_VALID_PAGE(nPage) );
|
||||
wxCHECK_MSG( IS_VALID_PAGE(nPage), wxEmptyString, wxT("GetPageText: invalid notebook page") );
|
||||
|
||||
wxNotebookPage *page = m_pages[nPage];
|
||||
|
||||
return page->GetLabel();
|
||||
}
|
||||
|
||||
int wxNotebook::GetPageImage(size_t nPage) const
|
||||
{
|
||||
wxCHECK_MSG( IS_VALID_PAGE(nPage), wxNOT_FOUND, _T("invalid notebook page") );
|
||||
wxCHECK_MSG( IS_VALID_PAGE(nPage), wxNOT_FOUND, wxT("GetPageImage: invalid notebook page") );
|
||||
|
||||
return m_images[nPage];
|
||||
}
|
||||
|
||||
bool wxNotebook::SetPageImage(size_t nPage, int nImage)
|
||||
{
|
||||
wxCHECK_MSG( IS_VALID_PAGE(nPage), false, _T("invalid notebook page") );
|
||||
|
||||
wxCHECK_MSG( IS_VALID_PAGE(nPage), false,
|
||||
wxT("SetPageImage: invalid notebook page") );
|
||||
wxCHECK_MSG( m_imageList && nImage < m_imageList->GetImageCount(), false,
|
||||
_T("invalid image index in SetPageImage()") );
|
||||
wxT("SetPageImage: invalid image index") );
|
||||
|
||||
if ( nImage != m_images[nPage] )
|
||||
{
|
||||
@@ -239,19 +229,22 @@ bool wxNotebook::SetPageImage(size_t nPage, int nImage)
|
||||
// remove one page from the notebook, without deleting the window
|
||||
wxNotebookPage* wxNotebook::DoRemovePage(size_t nPage)
|
||||
{
|
||||
wxCHECK( IS_VALID_PAGE(nPage), NULL );
|
||||
wxCHECK_MSG( IS_VALID_PAGE(nPage), NULL,
|
||||
wxT("DoRemovePage: invalid notebook page") );
|
||||
|
||||
wxNotebookPage* page = m_pages[nPage] ;
|
||||
m_pages.RemoveAt(nPage);
|
||||
|
||||
MacSetupTabs();
|
||||
|
||||
if(m_nSelection >= (int)GetPageCount()) {
|
||||
if (m_nSelection >= (int)GetPageCount())
|
||||
m_nSelection = GetPageCount() - 1;
|
||||
}
|
||||
if(m_nSelection >= 0) {
|
||||
|
||||
if (m_nSelection >= 0)
|
||||
m_pages[m_nSelection]->Show(true);
|
||||
}
|
||||
|
||||
InvalidateBestSize();
|
||||
|
||||
return page;
|
||||
}
|
||||
|
||||
@@ -262,10 +255,10 @@ bool wxNotebook::DeleteAllPages()
|
||||
MacSetupTabs();
|
||||
m_nSelection = -1 ;
|
||||
InvalidateBestSize();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
// same as AddPage() but does it at given position
|
||||
bool wxNotebook::InsertPage(size_t nPage,
|
||||
wxNotebookPage *pPage,
|
||||
@@ -276,8 +269,7 @@ bool wxNotebook::InsertPage(size_t nPage,
|
||||
if ( !wxNotebookBase::InsertPage( nPage, pPage, strText, bSelect, imageId ) )
|
||||
return false;
|
||||
|
||||
wxASSERT_MSG( pPage->GetParent() == this,
|
||||
_T("notebook pages must have notebook as parent") );
|
||||
wxASSERT_MSG( pPage->GetParent() == this, wxT("notebook pages must have notebook as parent") );
|
||||
|
||||
// don't show pages by default (we'll need to adjust their size first)
|
||||
pPage->Show( false ) ;
|
||||
@@ -290,10 +282,8 @@ bool wxNotebook::InsertPage(size_t nPage,
|
||||
|
||||
wxRect rect = GetPageRect() ;
|
||||
pPage->SetSize( rect );
|
||||
if ( pPage->GetAutoLayout() ) {
|
||||
if ( pPage->GetAutoLayout() )
|
||||
pPage->Layout();
|
||||
}
|
||||
|
||||
|
||||
// now deal with the selection
|
||||
// ---------------------------
|
||||
@@ -304,6 +294,7 @@ bool wxNotebook::InsertPage(size_t nPage,
|
||||
if ( int(nPage) <= m_nSelection )
|
||||
{
|
||||
m_nSelection++;
|
||||
|
||||
// while this still is the same page showing, we need to update the tabs
|
||||
m_peer->SetValue( m_nSelection + 1 ) ;
|
||||
}
|
||||
@@ -320,22 +311,20 @@ bool wxNotebook::InsertPage(size_t nPage,
|
||||
SetSelection( selNew );
|
||||
|
||||
InvalidateBestSize();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
int wxNotebook::HitTest(const wxPoint& pt, long * flags) const
|
||||
{
|
||||
int resultV = wxNOT_FOUND;
|
||||
|
||||
#if TARGET_API_MAC_OSX
|
||||
const int countPages = GetPageCount();
|
||||
|
||||
HIPoint hipoint = { pt.x , pt.y } ;
|
||||
HIViewPartCode outPart = 0 ;
|
||||
OSStatus err = HIViewGetPartHit (
|
||||
m_peer->GetControlRef() ,
|
||||
&hipoint ,
|
||||
&outPart
|
||||
);
|
||||
OSStatus err = HIViewGetPartHit( m_peer->GetControlRef(), &hipoint, &outPart );
|
||||
|
||||
int max = m_peer->GetMaximum() ;
|
||||
if ( outPart == 0 && max > 0 )
|
||||
@@ -356,23 +345,15 @@ int wxNotebook::HitTest(const wxPoint& pt, long * flags) const
|
||||
else
|
||||
m_peer->SetValue( 1 ) ;
|
||||
|
||||
err = HIViewGetPartHit (
|
||||
m_peer->GetControlRef() ,
|
||||
&hipoint ,
|
||||
&outPart
|
||||
);
|
||||
err = HIViewGetPartHit( m_peer->GetControlRef(), &hipoint, &outPart );
|
||||
|
||||
m_peer->SetValue( val ) ;
|
||||
if ( max == 1 )
|
||||
{
|
||||
m_peer->SetMaximum( 1 ) ;
|
||||
}
|
||||
}
|
||||
|
||||
if ( outPart >= 1 && outPart <= countPages )
|
||||
{
|
||||
resultV = outPart ;
|
||||
}
|
||||
#endif // TARGET_API_MAC_OSX
|
||||
|
||||
if (flags != NULL)
|
||||
@@ -385,14 +366,15 @@ int wxNotebook::HitTest(const wxPoint& pt, long * flags) const
|
||||
else
|
||||
*flags |= wxNB_HITTEST_NOWHERE;
|
||||
}
|
||||
|
||||
return resultV;
|
||||
}
|
||||
|
||||
/* Added by Mark Newsam
|
||||
* When a page is added or deleted to the notebook this function updates
|
||||
* information held in the control so that it matches the order
|
||||
* the user would expect.
|
||||
*/
|
||||
// Added by Mark Newsam
|
||||
// When a page is added or deleted to the notebook this function updates
|
||||
// information held in the control so that it matches the order
|
||||
// the user would expect.
|
||||
//
|
||||
void wxNotebook::MacSetupTabs()
|
||||
{
|
||||
m_peer->SetMaximum( GetPageCount() ) ;
|
||||
@@ -418,16 +400,17 @@ void wxNotebook::MacSetupTabs()
|
||||
ControlButtonContentInfo info ;
|
||||
|
||||
wxMacCreateBitmapButton( &info, bmap ) ;
|
||||
#ifdef __WXDEBUG__
|
||||
OSStatus err =
|
||||
#endif // __WXDEBUG__
|
||||
m_peer->SetData<ControlButtonContentInfo>( ii+1,kControlTabImageContentTag, &info );
|
||||
|
||||
OSStatus err = m_peer->SetData<ControlButtonContentInfo>( ii + 1, kControlTabImageContentTag, &info );
|
||||
wxASSERT_MSG( err == noErr , wxT("Error when setting icon on tab") ) ;
|
||||
|
||||
wxMacReleaseBitmapButton( &info ) ;
|
||||
}
|
||||
}
|
||||
|
||||
m_peer->SetTabEnabled( ii + 1, true ) ;
|
||||
}
|
||||
|
||||
Rect bounds;
|
||||
m_peer->GetRectInWindowCoords( &bounds ) ;
|
||||
InvalWindowRect( (WindowRef)MacGetTopLevelWindowRef(), &bounds );
|
||||
@@ -436,8 +419,10 @@ void wxNotebook::MacSetupTabs()
|
||||
wxRect wxNotebook::GetPageRect() const
|
||||
{
|
||||
wxSize size = GetClientSize() ;
|
||||
|
||||
return wxRect( 0 , 0 , size.x , size.y ) ;
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// wxNotebook callbacks
|
||||
// ----------------------------------------------------------------------------
|
||||
@@ -446,16 +431,16 @@ wxRect wxNotebook::GetPageRect() const
|
||||
// time because doing it in ::Create() doesn't work (for unknown reasons)
|
||||
void wxNotebook::OnSize(wxSizeEvent& event)
|
||||
{
|
||||
|
||||
unsigned int nCount = m_pages.Count();
|
||||
wxRect rect = GetPageRect() ;
|
||||
for ( unsigned int nPage = 0; nPage < nCount; nPage++ ) {
|
||||
|
||||
for ( unsigned int nPage = 0; nPage < nCount; nPage++ )
|
||||
{
|
||||
wxNotebookPage *pPage = m_pages[nPage];
|
||||
pPage->SetSize(rect);
|
||||
if ( pPage->GetAutoLayout() ) {
|
||||
if ( pPage->GetAutoLayout() )
|
||||
pPage->Layout();
|
||||
}
|
||||
}
|
||||
|
||||
// Processing continues to next OnSize
|
||||
event.Skip();
|
||||
@@ -482,11 +467,13 @@ void wxNotebook::OnSetFocus(wxFocusEvent& event)
|
||||
|
||||
void wxNotebook::OnNavigationKey(wxNavigationKeyEvent& event)
|
||||
{
|
||||
if ( event.IsWindowChange() ) {
|
||||
if ( event.IsWindowChange() )
|
||||
{
|
||||
// change pages
|
||||
AdvanceSelection( event.GetDirection() );
|
||||
}
|
||||
else {
|
||||
else
|
||||
{
|
||||
// we get this event in 2 cases
|
||||
//
|
||||
// a) one of our pages might have generated it because the user TABbed
|
||||
@@ -501,7 +488,8 @@ void wxNotebook::OnNavigationKey(wxNavigationKeyEvent& event)
|
||||
// from in this case and so can't choose between setting the focus to
|
||||
// first or last panel child
|
||||
wxWindow *parent = GetParent();
|
||||
// the cast is here to fic a GCC ICE
|
||||
|
||||
// the cast is here to fix a GCC ICE
|
||||
if ( ((wxWindow*)event.GetEventObject()) == parent )
|
||||
{
|
||||
// no, it doesn't come from child, case (b): forward to a page
|
||||
@@ -527,7 +515,8 @@ void wxNotebook::OnNavigationKey(wxNavigationKeyEvent& event)
|
||||
else
|
||||
{
|
||||
// it comes from our child, case (a), pass to the parent
|
||||
if ( parent ) {
|
||||
if ( parent )
|
||||
{
|
||||
event.SetCurrentFocus( this );
|
||||
parent->GetEventHandler()->ProcessEvent( event );
|
||||
}
|
||||
@@ -568,10 +557,11 @@ void wxNotebook::Command(wxCommandEvent& event)
|
||||
// hide the currently active panel and show the new one
|
||||
void wxNotebook::ChangePage(int nOldSel, int nSel)
|
||||
{
|
||||
if (nOldSel == nSel)
|
||||
return;
|
||||
|
||||
if ( nOldSel != -1 )
|
||||
{
|
||||
m_pages[nOldSel]->Show( false );
|
||||
}
|
||||
|
||||
if ( nSel != -1 )
|
||||
{
|
||||
@@ -591,26 +581,29 @@ wxInt32 wxNotebook::MacControlHit(WXEVENTHANDLERREF WXUNUSED(handler) , WXEVENTR
|
||||
SInt32 newSel = m_peer->GetValue() - 1 ;
|
||||
if ( newSel != m_nSelection )
|
||||
{
|
||||
wxNotebookEvent changing(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING, m_windowId,
|
||||
wxNotebookEvent changing(
|
||||
wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING, m_windowId,
|
||||
newSel , m_nSelection );
|
||||
changing.SetEventObject( this );
|
||||
GetEventHandler()->ProcessEvent( changing );
|
||||
|
||||
if ( changing.IsAllowed() )
|
||||
{
|
||||
wxNotebookEvent event(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, m_windowId,
|
||||
wxNotebookEvent event(
|
||||
wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, m_windowId,
|
||||
newSel, m_nSelection );
|
||||
event.SetEventObject( this );
|
||||
|
||||
GetEventHandler()->ProcessEvent( event );
|
||||
}
|
||||
else
|
||||
{
|
||||
m_peer->SetValue( m_nSelection + 1 ) ;
|
||||
}
|
||||
|
||||
status = noErr ;
|
||||
}
|
||||
return status ;
|
||||
|
||||
return (wxInt32)status ;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user