///////////////////////////////////////////////////////////////////////////////
-// Name: tipdlg.cpp
+// Name: src/generic/tipdlg.cpp
// Purpose: implementation of wxTipDialog
// Author: Vadim Zeitlin
// Modified by:
#include "wx/statbmp.h"
#include "wx/stattext.h"
#include "wx/sizer.h"
+ #include "wx/settings.h"
#endif // WX_PRECOMP
#include "wx/statline.h"
#include "wx/artprov.h"
-#include "wx/settings.h"
#include "wx/tipdlg.h"
// an implementation which takes the tips from the text file - each line
// represents a tip
+#if wxUSE_TEXTFILE
class WXDLLIMPEXP_ADV wxFileTipProvider : public wxTipProvider
{
public:
DECLARE_NO_COPY_CLASS(wxFileTipProvider)
};
+#endif // wxUSE_TEXTFILE
#ifdef __WIN32__
// TODO an implementation which takes the tips from the given registry key
// ----------------------------------------------------------------------------
// wxFileTipProvider
// ----------------------------------------------------------------------------
-
+#if wxUSE_TEXTFILE
wxFileTipProvider::wxFileTipProvider(const wxString& filename,
size_t currentTip)
: wxTipProvider(currentTip), m_textfile(filename)
tip = tip.BeforeLast(wxT('\"'));
// ...and replace escaped quotes
tip.Replace(wxT("\\\""), wxT("\""));
+
+ // and translate it as requested
+ tip = wxGetTranslation(tip);
}
return tip;
}
+#endif // wxUSE_TEXTFILE
// ----------------------------------------------------------------------------
// wxTipDialog
BEGIN_EVENT_TABLE(wxTipDialog, wxDialog)
EVT_BUTTON(wxID_NEXT_TIP, wxTipDialog::OnNextTip)
- EVT_BUTTON(wxID_CLOSE, wxTipDialog::OnCancel)
END_EVENT_TABLE()
wxTipDialog::wxTipDialog(wxWindow *parent,
wxTipProvider *tipProvider,
bool showAtStartup)
- : wxDialog(parent, wxID_ANY, _("Tip of the Day"),
+ : wxDialog(GetParentForModalDialog(parent), wxID_ANY, _("Tip of the Day"),
wxDefaultPosition, wxDefaultSize,
- wxDEFAULT_DIALOG_STYLE
-#if !defined(__SMARTPHONE__) && !defined(__POCKETPC__)
- | wxRESIZE_BORDER
-#endif
+ wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER
)
{
m_tipProvider = tipProvider;
// 1) create all controls in tab order
- // smart phones does not support or do not waste space for wxButtons
-#ifndef __SMARTPHONE__
- wxButton *btnClose = new wxButton(this, wxID_CLOSE);
-#endif
-
- m_checkbox = new wxCheckBox(this, wxID_ANY, _("&Show tips at startup"));
- m_checkbox->SetValue(showAtStartup);
-
- // smart phones does not support or do not waste space for wxButtons
-#ifndef __SMARTPHONE__
- wxButton *btnNext = new wxButton(this, wxID_NEXT_TIP, _("&Next Tip"));
-#endif
-
wxStaticText *text = new wxStaticText(this, wxID_ANY, _("Did you know..."));
if (!isPda)
//#endif
+ m_checkbox = new wxCheckBox(this, wxID_ANY, _("&Show tips at startup"));
+ m_checkbox->SetValue(showAtStartup);
+ m_checkbox->SetFocus();
+
+ // smart phones does not support or do not waste space for wxButtons
+#ifndef __SMARTPHONE__
+ wxButton *btnNext = new wxButton(this, wxID_NEXT_TIP, _("&Next Tip"));
+#endif
+
+ // smart phones does not support or do not waste space for wxButtons
+#ifndef __SMARTPHONE__
+ wxButton *btnClose = new wxButton(this, wxID_CLOSE);
+ SetAffirmativeId(wxID_CLOSE);
+#endif
+
+
// 2) put them in boxes
wxBoxSizer *topsizer = new wxBoxSizer( wxVERTICAL );
SetSizer( topsizer );
-#if !defined(__SMARTPHONE__) && !defined(__POCKETPC__)
topsizer->SetSizeHints( this );
topsizer->Fit( this );
Centre(wxBOTH | wxCENTER_FRAME);
-#endif
}
// ----------------------------------------------------------------------------
// our public interface
// ----------------------------------------------------------------------------
+#if wxUSE_TEXTFILE
wxTipProvider *wxCreateFileTipProvider(const wxString& filename,
size_t currentTip)
{
return new wxFileTipProvider(filename, currentTip);
}
+#endif // wxUSE_TEXTFILE
bool wxShowTip(wxWindow *parent,
wxTipProvider *tipProvider,
}
#endif // wxUSE_STARTUP_TIPS
-