return false;
wxMacDataBrowserListControl* control = new wxMacDataBrowserListControl( this, pos, size, style );
+ // TODO CHECK control->SetClientDataType( m_clientDataItemsType );
m_peer = control;
MacPostControlCreate( pos, size );
int wLine;
{
-#if wxMAC_USE_CORE_GRAPHICS
wxClientDC dc(const_cast<wxListBox*>(this));
dc.SetFont(GetFont());
-#else
- wxMacPortStateHelper st( UMAGetWindowPort( (WindowRef)MacGetTopLevelWindowRef() ) );
- // TODO: clean this up
- if ( m_font.Ok() )
- {
- ::TextFont( m_font.MacGetFontNum() );
- ::TextSize( m_font.MacGetFontSize() );
- ::TextFace( m_font.MacGetFontStyle() );
- }
- else
- {
- ::TextFont( kFontIDMonaco );
- ::TextSize( 9 );
- ::TextFace( 0 );
- }
-#endif
// Find the widest line
for (unsigned int i = 0; i < GetCount(); i++)
{
wxString str( GetString( i ) );
-#if wxMAC_USE_CORE_GRAPHICS
+
wxCoord width, height ;
dc.GetTextExtent( str , &width, &height);
wLine = width ;
-#else
-#if wxUSE_UNICODE
- Point bounds = {0, 0};
- SInt16 baseline;
-
- // NB: what if m_font.Ok() == false ???
- ::GetThemeTextDimensions(
- wxMacCFStringHolder( str, m_font.GetEncoding() ),
- kThemeCurrentPortFont,
- kThemeStateActive,
- false,
- &bounds,
- &baseline );
- wLine = bounds.h;
-#else
- wLine = ::TextWidth( str.c_str(), 0, str.length() );
-#endif
-#endif
lbWidth = wxMax( lbWidth, wLine );
}
// And just a bit more
int cy = 12;
-#if wxMAC_USE_CORE_GRAPHICS
+
wxCoord width, height ;
dc.GetTextExtent( wxT("XX") , &width, &height);
int cx = width ;
-#else
- int cx = ::TextWidth( "XX", 0, 1 );
-#endif
lbWidth += cx;
// don't make the listbox too tall (limit height to around 10 items)
wxPoint point = inpoint;
- // interestingly enough 10.2 (and below?) have GetDataBrowserItemPartBounds
- // giving root window coordinates but 10.3 and above give client coordinates
- // so we only compare using root window coordinates on 10.3 and up
- if ( UMAGetSystemVersion() < 0x1030 )
- MacClientToRootWindow(&point.x, &point.y);
-
// get column property ID (req. for call to itempartbounds)
DataBrowserTableViewColumnID colId = 0;
err = GetDataBrowserTableViewColumnProperty(m_peer->GetControlRef(), 0, &colId);
// direct notification is not always having the listbox GetSelection()
// having in synch with event, so use wxPostEvent instead
- // list->GetEventHandler()->ProcessEvent(event);
+ // list->HandleWindowEvent(event);
wxPostEvent( list->GetEventHandler(), event );
}
columnDesc.propertyDesc.propertyID = kTextColumnId;
columnDesc.propertyDesc.propertyType = kDataBrowserTextType;
columnDesc.propertyDesc.propertyFlags = kDataBrowserTableViewSelectionColumn;
-#if MAC_OS_X_VERSION_MAX_ALLOWED > MAC_OS_X_VERSION_10_2
columnDesc.propertyDesc.propertyFlags |= kDataBrowserListViewTypeSelectColumn;
-#endif
verify_noerr( AddColumn( &columnDesc, kDataBrowserListViewAppendColumn ) );
columnDesc.propertyDesc.propertyID = kNumericOrderColumnId;
columnDesc.propertyDesc.propertyType = kDataBrowserPropertyRelevanceRankPart;
columnDesc.propertyDesc.propertyFlags = kDataBrowserTableViewSelectionColumn;
-#if MAC_OS_X_VERSION_MAX_ALLOWED > MAC_OS_X_VERSION_10_2
columnDesc.propertyDesc.propertyFlags |= kDataBrowserListViewTypeSelectColumn;
-#endif
verify_noerr( AddColumn( &columnDesc, kDataBrowserListViewAppendColumn ) );
// TODO: switch over to wxSystemSettingsNative::GetColour() when kThemeBrushSecondaryHighlightColor
// is incorporated Panther DB starts using kThemeBrushSecondaryHighlightColor
// for inactive browser highlighting
- Gestalt( gestaltSystemVersion, &systemVersion );
- if ( (systemVersion >= 0x00001030) && !IsControlActive( browser ) )
+ if ( !IsControlActive( browser ) )
colorBrushID = kThemeBrushSecondaryHighlightColor;
else
colorBrushID = kThemeBrushPrimaryHighlightColor;