]> git.saurik.com Git - wxWidgets.git/blobdiff - src/osx/carbon/fontdlg.cpp
Add missing WXK constants for the control keys
[wxWidgets.git] / src / osx / carbon / fontdlg.cpp
index 221f769ed893e6fdb401609e442996dc84a7647e..8290b53910ecae1953d4f87db69962d8db8023eb 100644 (file)
@@ -41,6 +41,7 @@
 #endif
 
 #include "wx/fontdlg.h"
+#include "wx/fontutil.h"
 
 #if wxOSX_USE_EXPERIMENTAL_FONTDIALOG
 
@@ -82,7 +83,9 @@ wxMacCarbonFontPanelHandler(EventHandlerCallRef WXUNUSED(nextHandler),
                 if ( cEvent.GetParameter<CTFontDescriptorRef>( kEventParamCTFontDescriptor, typeCTFontDescriptorRef, &descr ) == noErr )
                 {
                     wxFont font;
-                    font.MacCreateFromCTFontDescriptor(descr);
+                    wxNativeFontInfo fontinfo;
+                    fontinfo.Init(descr);
+                    font.Create(fontinfo);
                     fontdata.SetChosenFont( font ) ;
                     setup = true;
                 }
@@ -100,7 +103,7 @@ wxMacCarbonFontPanelHandler(EventHandlerCallRef WXUNUSED(nextHandler),
                 FMFontFamily fontFamily = cEvent.GetParameter<FMFontFamily>(kEventParamFMFontFamily);
                 ATSFontFamilyRef atsfontfamilyref = FMGetATSFontFamilyRefFromFontFamily( fontFamily ) ;
                 OSStatus err = ATSFontFamilyGetName( atsfontfamilyref , kATSOptionFlagsDefault , &cfName ) ;
-                if ( err == noErr )
+                if ( err != noErr )
                 {
                     wxFAIL_MSG("ATSFontFamilyGetName failed");
                 }
@@ -199,6 +202,11 @@ wxFontDialog::wxFontDialog()
 {
 }
 
+wxFontDialog::wxFontDialog(wxWindow *parent)
+{
+    Create(parent);
+}
+
 wxFontDialog::wxFontDialog(wxWindow *parent, const wxFontData&  data)
 {
     Create(parent, data);
@@ -208,19 +216,24 @@ wxFontDialog::~wxFontDialog()
 {
 }
 
-bool wxFontDialog::Create(wxWindow *WXUNUSED(parent), const wxFontData& data)
+bool wxFontDialog::Create(wxWindow *WXUNUSED(parent))
 {
-    m_fontData = data;
     return true ;
 }
 
+bool wxFontDialog::Create(wxWindow *parent, const wxFontData& data)
+{
+    m_fontData = data;
+    return Create(parent) ;
+}
+
 int wxFontDialog::ShowModal()
 {
 #if wxOSX_USE_CARBON
 
     OSStatus err ;
     wxFont font = *wxNORMAL_FONT ;
-    if ( m_fontData.m_initialFont.Ok() )
+    if ( m_fontData.m_initialFont.IsOk() )
     {
         font = m_fontData.m_initialFont ;
     }
@@ -229,7 +242,7 @@ int wxFontDialog::ShowModal()
 #if wxOSX_USE_CORE_TEXT
     if ( UMAGetSystemVersion() >= 0x1050 )
     {
-        CTFontDescriptorRef descr = (CTFontDescriptorRef) CTFontCopyFontDescriptor( (CTFontRef) font.MacGetCTFont() );
+        CTFontDescriptorRef descr = (CTFontDescriptorRef) CTFontCopyFontDescriptor( (CTFontRef) font.OSXGetCTFont() );
         err = SetFontInfoForSelection (kFontSelectionCoreTextType,1, &descr , NULL);
         CFRelease( descr );
         setup = true;
@@ -254,8 +267,9 @@ int wxFontDialog::ShowModal()
     if ( !FPIsFontPanelVisible() )
         FPShowHideFontPanel();
 #endif
+    wxDialog::OSXBeginModalDialog();
     int retval = RunMixedFontDialog(this);
-
+    wxDialog::OSXEndModalDialog();
 #if wxOSX_USE_CARBON
     ::RemoveEventHandler(handler);
 #endif
@@ -312,7 +326,7 @@ void wxFontPreviewCtrl::OnPaint(wxPaintEvent& WXUNUSED(event))
     wxSize size = GetSize();
     wxFont font = GetFont();
 
-    if ( font.Ok() )
+    if ( font.IsOk() )
     {
         dc.SetFont(font);
         // Calculate vertical centre
@@ -500,7 +514,7 @@ void wxFontDialog::CreateControls()
     itemFlexGridSizer4->Add(itemStaticText5, 0, wxALIGN_RIGHT|wxALIGN_TOP|wxALL, 5);
 
     wxBoxSizer* itemBoxSizer6 = new wxBoxSizer(wxVERTICAL);
-    itemFlexGridSizer4->Add(itemBoxSizer6, 0, wxGROW|wxGROW, 5);
+    itemFlexGridSizer4->Add(itemBoxSizer6, 0, wxGROW, 5);
 
     wxString* m_facenameCtrlStrings = NULL;
     m_facenameCtrl = new wxListBox( itemDialog1, wxID_FONTDIALOG_FACENAME, wxDefaultPosition, wxSize(320, 100), 0, m_facenameCtrlStrings, wxLB_SINGLE );
@@ -509,7 +523,7 @@ void wxFontDialog::CreateControls()
     wxStaticText* itemStaticText8 = new wxStaticText( itemDialog1, wxID_STATIC, _("Size:"), wxDefaultPosition, wxDefaultSize, 0 );
     itemFlexGridSizer4->Add(itemStaticText8, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 5);
 
-    m_sizeCtrl = new wxSpinCtrl( itemDialog1, wxID_FONTDIALOG_FONTSIZE, _T("12"), wxDefaultPosition, wxSize(60, -1), wxSP_ARROW_KEYS, 1, 300, 12 );
+    m_sizeCtrl = new wxSpinCtrl( itemDialog1, wxID_FONTDIALOG_FONTSIZE, wxT("12"), wxDefaultPosition, wxSize(60, -1), wxSP_ARROW_KEYS, 1, 300, 12 );
     m_sizeCtrl->SetHelpText(_("The font size in points."));
     if (ShowToolTips())
         m_sizeCtrl->SetToolTip(_("The font size in points."));
@@ -585,7 +599,7 @@ void wxFontDialog::CreateControls()
     wxFontEnumerator enumerator;
     enumerator.EnumerateFacenames();
     wxArrayString facenames = enumerator.GetFacenames();
-    if (facenames)
+    if (!facenames.empty())
     {
         facenames.Add(_("<Any>"));
         facenames.Add(_("<Any Roman>"));
@@ -600,7 +614,7 @@ void wxFontDialog::CreateControls()
 
     InitializeControls();
     m_previewCtrl->SetFont(m_dialogFont);
-    if (m_fontData.GetColour().Ok())
+    if (m_fontData.GetColour().IsOk())
     {
         m_previewCtrl->SetForegroundColour(m_fontData.GetColour());
     }
@@ -696,7 +710,7 @@ void wxFontDialog::InitializeFont()
     bool fontUnderline = false;
     wxString fontName;
 
-    if (m_fontData.m_initialFont.Ok())
+    if (m_fontData.m_initialFont.IsOk())
     {
         fontFamily = m_fontData.m_initialFont.GetFamily();
         fontWeight = m_fontData.m_initialFont.GetWeight();
@@ -734,7 +748,7 @@ void wxFontDialog::InitializeControls()
     }
     m_facenameCtrl->SetStringSelection(facename);
 
-    if (m_colourCtrl && m_fontData.GetColour().Ok())
+    if (m_colourCtrl && m_fontData.GetColour().IsOk())
     {
         m_colourCtrl->SetColour(m_fontData.GetColour());
         m_colourCtrl->Refresh();