1///////////////////////////////////////////////////////////////////////////////
2// Name:        src/msw/aboutdlg.cpp
3// Purpose:     implementation of wxAboutBox() for wxMSW
4// Author:      Vadim Zeitlin
5// Created:     2006-10-07
6// RCS-ID:      $Id: aboutdlg.cpp 58748 2009-02-08 09:46:03Z VZ $
7// Copyright:   (c) 2006 Vadim Zeitlin <vadim@wxwindows.org>
8// Licence:     wxWindows licence
9///////////////////////////////////////////////////////////////////////////////
10
11// ============================================================================
12// declarations
13// ============================================================================
14
15// ----------------------------------------------------------------------------
16// headers
17// ----------------------------------------------------------------------------
18
19// for compilers that support precompilation, includes "wx.h".
20#include "wx/wxprec.h"
21
22#ifdef __BORLANDC__
23    #pragma hdrstop
24#endif
25
26#if wxUSE_ABOUTDLG
27
28#ifndef WX_PRECOMP
29    #include "wx/msgdlg.h"
30#endif //WX_PRECOMP
31
32#include "wx/aboutdlg.h"
33#include "wx/generic/aboutdlgg.h"
34
35// ============================================================================
36// implementation
37// ============================================================================
38
39// our public entry point
40void wxAboutBox(const wxAboutDialogInfo& info)
41{
42    // we prefer to show a simple message box if we don't have any fields which
43    // can't be shown in it because as much as there is a standard about box
44    // under MSW at all, this is it
45    if ( info.IsSimple() )
46    {
47        // build the text to show in the box
48        const wxString name = info.GetName();
49        wxString msg;
50        msg << name;
51        if ( info.HasVersion() )
52            msg << _(" Version ") << info.GetVersion();
53        msg << _T('\n');
54
55        if ( info.HasCopyright() )
56            msg << info.GetCopyrightToDisplay() << _T('\n');
57
58        // add everything remaining
59        msg << info.GetDescriptionAndCredits();
60
61        wxMessageBox(msg, _("About ") + name);
62    }
63    else // simple "native" version is not enough
64    {
65        // we need to use the full-blown generic version
66        wxGenericAboutBox(info);
67    }
68}
69
70#endif // wxUSE_ABOUTDLG
71