]> git.saurik.com Git - wxWidgets.git/commitdiff
Added wxWinceHelpController
authorJulian Smart <julian@anthemion.co.uk>
Sat, 12 Jul 2003 20:11:24 +0000 (20:11 +0000)
committerJulian Smart <julian@anthemion.co.uk>
Sat, 12 Jul 2003 20:11:24 +0000 (20:11 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21924 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

distrib/msw/wince.rsp [new file with mode: 0644]
distrib/msw/zipwince.bat [new file with mode: 0755]
include/wx/help.h
include/wx/msw/wince/helpwce.h [new file with mode: 0644]
include/wx/msw/wince/setup.h
src/generic/helpext.cpp
src/msw/wince/helpwce.cpp [new file with mode: 0644]

diff --git a/distrib/msw/wince.rsp b/distrib/msw/wince.rsp
new file mode 100644 (file)
index 0000000..2b4ab92
--- /dev/null
@@ -0,0 +1,6 @@
+src/msw/wince/wxWindowsCE.vcp
+src/msw/wince/wxWindowsCE.vcw
+
+samples/minimal/minimalCE.vcp
+samples/minimal/minimalCE.vcw
+
diff --git a/distrib/msw/zipwince.bat b/distrib/msw/zipwince.bat
new file mode 100755 (executable)
index 0000000..1a4a8e1
--- /dev/null
@@ -0,0 +1,7 @@
+@echo off
+Rem Zip up WinCE project files
+
+erase %WXWIN%\wxWinCE.zip
+zip -@ %WXWIN%\wxWinCE.zip < %WXWIN%\distrib\msw\wince.rsp
+
+echo Done.
index 9fceec27544169ec24982a37715d504b72a5228f..bd4b00f3afa852516d6a4e8679351bd8d7579afe 100644 (file)
@@ -5,7 +5,12 @@
 
 #include "wx/helpbase.h"
 
-#ifdef __WXMSW__
+#ifdef __WXWINCE__
+    #include "wx/msw/wince/helpwce.h"
+
+    #define wxHelpController wxWinceHelpController
+    #define sm_classwxHelpController sm_classwxWinceHelpController
+#elif defined(__WXMSW__)
     #include "wx/msw/helpwin.h"
 
     #define wxHelpController wxWinHelpController
diff --git a/include/wx/msw/wince/helpwce.h b/include/wx/msw/wince/helpwce.h
new file mode 100644 (file)
index 0000000..f1de58b
--- /dev/null
@@ -0,0 +1,62 @@
+/////////////////////////////////////////////////////////////////////////////
+// Name:        helpwce.h
+// Purpose:     Help system: Windows CE help implementation
+// Author:      Julian Smart
+// Modified by:
+// Created:     2003-07-12
+// RCS-ID:      $Id$
+// Copyright:   (c) Julian Smart
+// Licence:    wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+#ifndef _WX_HELPWCE_H_
+#define _WX_HELPWCE_H_
+
+#ifdef __GNUG__
+#pragma interface "helpwce.cpp"
+#endif
+
+#if wxUSE_HELP
+
+#include "wx/helpbase.h"
+
+class WXDLLEXPORT wxWinceHelpController : public wxHelpControllerBase
+{
+public:
+    wxWinceHelpController() { }
+    virtual ~wxWinceHelpController();
+
+    // Must call this to set the filename
+    virtual bool Initialize(const wxString& file);
+
+    // If file is "", reloads file given in Initialize
+    virtual bool LoadFile(const wxString& file = wxEmptyString);
+    virtual bool DisplayContents();
+    virtual bool DisplaySection(int sectionNo);
+    virtual bool DisplaySection(const wxString& section);
+    virtual bool DisplayBlock(long blockNo);
+    virtual bool DisplayContextPopup(int contextId);
+    virtual bool DisplayTextPopup(const wxString& text, const wxPoint& pos);
+    virtual bool KeywordSearch(const wxString& k);
+    virtual bool Quit();
+
+    wxString GetHelpFile() const { return m_helpFile; }
+
+protected:
+    // Append extension if necessary.
+    wxString GetValidFilename(const wxString& file) const;
+
+    // View topic, or just the HTML file
+    bool ViewURL(const wxString& topic = wxEmptyString);
+
+protected:
+    wxString m_helpFile;
+
+    DECLARE_CLASS(wxWinceHelpController)
+};
+
+#endif // wxUSE_MS_HTML_HELP
+
+#endif
+// _WX_HELPWCE_H_
+
index 766ec527012ad53c81790b4f34f95c45bf901301..77c091660e24dd8d43a3d208ab44815a4ea95a21 100644 (file)
 #define wxUSE_SOCKETS       0
 
 // Set to 1 to enable virtual file systems (required by wxHTML)
-#define wxUSE_FILESYSTEM    0
+#define wxUSE_FILESYSTEM    1
 
 // Set to 1 to enable virtual ZIP filesystem (requires wxUSE_FILESYSTEM)
 #define wxUSE_FS_ZIP        0
 
 #define wxUSE_IPC         0
                                 // 0 for no interprocess comms
-#define wxUSE_HELP        0
+#define wxUSE_HELP        1
                                 // 0 for no help facility
 #define wxUSE_MS_HTML_HELP 0
                                 // 0 for no MS HTML Help
index f3cbfe6687b62f921e51bbb952f049bd3b01fdab..f0c5bf332dd7ae54e5c728dd9223c23ec8a3e1ec 100644 (file)
@@ -19,7 +19,7 @@
     #pragma hdrstop
 #endif
 
-#if wxUSE_HELP
+#if wxUSE_HELP && !defined(__WXWINCE__)
 
 #ifndef WX_PRECOMP
     #include "wx/setup.h"
diff --git a/src/msw/wince/helpwce.cpp b/src/msw/wince/helpwce.cpp
new file mode 100644 (file)
index 0000000..89bd93b
--- /dev/null
@@ -0,0 +1,123 @@
+/////////////////////////////////////////////////////////////////////////////
+// Name:        helpwce.h
+// Purpose:     Help system: Windows CE help implementation
+// Author:      Julian Smart
+// Modified by:
+// Created:     2003-07-12
+// RCS-ID:      $Id$
+// Copyright:   (c) Julian Smart
+// Licence:    wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+#ifdef __GNUG__
+    #pragma implementation "helpwce.h"
+#endif
+
+// For compilers that support precompilation, includes "wx.h".
+#include "wx/wxprec.h"
+
+#ifdef __BORLANDC__
+    #pragma hdrstop
+#endif
+
+#if wxUSE_HELP
+
+#include "wx/filefn.h"
+#include "wx/msw/wince/helpwce.h"
+
+#ifndef WX_PRECOMP
+    #include "wx/intl.h"
+#endif
+
+#include "wx/msw/private.h"
+#include "wx/msw/missing.h"
+
+IMPLEMENT_DYNAMIC_CLASS(wxWinceHelpController, wxHelpControllerBase)
+
+bool wxWinceHelpController::Initialize(const wxString& filename)
+{
+    m_helpFile = filename;
+    return TRUE;
+}
+
+bool wxWinceHelpController::LoadFile(const wxString& file)
+{
+    if (!file.IsEmpty())
+        m_helpFile = file;
+    return TRUE;
+}
+
+bool wxWinceHelpController::DisplayContents()
+{
+    return ViewURL();
+}
+
+// Use topic
+bool wxWinceHelpController::DisplaySection(const wxString& section)
+{
+    return ViewURL(section);
+}
+
+// Use context number
+bool wxWinceHelpController::DisplaySection(int section)
+{
+    return TRUE;
+}
+
+bool wxWinceHelpController::DisplayContextPopup(int contextId)
+{
+    return TRUE;
+}
+
+bool wxWinceHelpController::DisplayTextPopup(const wxString& text, const wxPoint& pos)
+{
+    return TRUE;
+}
+
+bool wxWinceHelpController::DisplayBlock(long block)
+{
+    return TRUE;
+}
+
+bool wxWinceHelpController::KeywordSearch(const wxString& k)
+{
+    return TRUE;
+}
+
+bool wxWinceHelpController::Quit()
+{
+    return TRUE;
+}
+
+// Append extension if necessary.
+wxString wxWinceHelpController::GetValidFilename(const wxString& file) const
+{
+    wxString path, name, ext;
+    wxSplitPath(file, & path, & name, & ext);
+
+    wxString fullName;
+    if (path.IsEmpty())
+        fullName = name + wxT(".htm");
+    else if (path.Last() == wxT('\\'))
+        fullName = path + name + wxT(".htm");
+    else
+        fullName = path + wxT("\\") + name + wxT(".htm");
+    return fullName;
+}
+
+// View URL
+bool wxWinceHelpController::ViewURL(const wxString& topic)
+{
+    if (m_helpFile.IsEmpty()) return FALSE;
+    
+    wxString url( wxT("file:") + GetValidFilename(m_helpFile) );
+    if (!topic.IsEmpty())
+        url = url + wxT("#") + topic;
+
+    return CreateProcess(wxT("peghelp.exe"),
+        url, NULL, NULL, FALSE, 0, NULL,
+        NULL, NULL, NULL) != 0 ;
+}
+
+#endif // wxUSE_HELP
+