]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/aboutdlg.cpp
don't declare inline function with dllexport declaration, this provokes mingw32 warni...
[wxWidgets.git] / src / msw / aboutdlg.cpp
index 9b6ee683c6086e4dd66723cb4f9f450bc5d3dbd2..f951d791137644784818c207640b6e77e2534e3a 100644 (file)
@@ -26,6 +26,7 @@
 #if wxUSE_ABOUTDLG
 
 #ifndef WX_PRECOMP
 #if wxUSE_ABOUTDLG
 
 #ifndef WX_PRECOMP
+    #include "wx/msgdlg.h"
 #endif //WX_PRECOMP
 
 #include "wx/aboutdlg.h"
 #endif //WX_PRECOMP
 
 #include "wx/aboutdlg.h"
 // implementation
 // ============================================================================
 
 // implementation
 // ============================================================================
 
-// helper function: returns all array elements in a single comma-separated and
-// newline-terminated string
-static wxString AllAsString(const wxArrayString& a)
-{
-    wxString s;
-    const size_t count = a.size();
-    for ( size_t n = 0; n < count; n++ )
-    {
-        s << a[n] << (n == count - 1 ? _T("\n") : _T(", "));
-    }
-
-    return s;
-}
-
 // our public entry point
 void wxAboutBox(const wxAboutDialogInfo& info)
 {
     // we prefer to show a simple message box if we don't have any fields which
     // can't be shown in it because as much as there is a standard about box
     // under MSW at all, this is it
 // our public entry point
 void wxAboutBox(const wxAboutDialogInfo& info)
 {
     // we prefer to show a simple message box if we don't have any fields which
     // can't be shown in it because as much as there is a standard about box
     // under MSW at all, this is it
-    if ( info.HasWebSite() || info.HasIcon() || info.HasLicence() )
-    {
-        // we need to use the full-blown generic version
-        wxGenericAboutBox(info);
-    }
-    else // simple "native" version should do
+    if ( info.IsSimple() )
     {
         // build the text to show in the box
         const wxString name = info.GetName();
     {
         // build the text to show in the box
         const wxString name = info.GetName();
@@ -73,22 +55,16 @@ void wxAboutBox(const wxAboutDialogInfo& info)
         if ( info.HasCopyright() )
             msg << info.GetCopyright() << _T('\n');
 
         if ( info.HasCopyright() )
             msg << info.GetCopyright() << _T('\n');
 
-        msg << info.GetDescription() << _T('\n');
-
-        if ( info.HasDevelopers() )
-            msg << _("Developed by ") << AllAsString(info.GetDevelopers());
-
-        if ( info.HasDocWriters() )
-            msg << _("Documentation by ") << AllAsString(info.GetDocWriters());
-
-        if ( info.HasArtists() )
-            msg << _("Graphics art by ") << AllAsString(info.GetArtists());
-
-        if ( info.HasTranslators() )
-            msg << _("Translations by ") << AllAsString(info.GetTranslators());
+        // add everything remaining
+        msg << info.GetDescriptionAndCredits();
 
         wxMessageBox(msg, _T("About ") + name);
     }
 
         wxMessageBox(msg, _T("About ") + name);
     }
+    else // simple "native" version is not enough
+    {
+        // we need to use the full-blown generic version
+        wxGenericAboutBox(info);
+    }
 }
 
 #endif // wxUSE_ABOUTDLG
 }
 
 #endif // wxUSE_ABOUTDLG