2007-03-27 17:47:10 +00:00
|
|
|
/*
|
|
|
|
* CiderPress
|
|
|
|
* Copyright (C) 2007 by faddenSoft, LLC. All Rights Reserved.
|
|
|
|
* See the file LICENSE for distribution terms.
|
|
|
|
*/
|
|
|
|
/*
|
|
|
|
* The application object.
|
|
|
|
*/
|
|
|
|
#include "stdafx.h"
|
|
|
|
#include "../util/UtilLib.h"
|
|
|
|
#include "MyApp.h"
|
|
|
|
#include "Registry.h"
|
|
|
|
#include "Main.h"
|
|
|
|
#include "DiskArchive.h"
|
WinHelp to HtmlHelp conversion, part 1
The original version of CiderPress used a WinHelp help file, built
with an application called HelpMatic Pro. This app used a proprietary
format, and had no facility for exporting to "raw" HPJ + RTF files, so
I decompiled the HLP and imported it into HelpScribble.
Using HelpScribble, I cleaned up the help file formatting a little,
fixed up the table of contents, and exported as "raw" HtmlHelp (HHP,
HHK, HHC, and a whole bunch of HTML). I also split the pop-up help
text, which isn't supported by HelpScribble, into a separate text file
that Microsoft's HTML Help Workshop understands.
I'm checking in the files that HTML Help Workshop needs to generate a
CHM, so anyone can update the help text. I'm also checking in the CHM
file, rather than adding the help workshop to the build, so that it's
not necessary to download and configure the help workshop to build
CiderPress.
This change adds all of the updated help, but only updates the Help and
question mark button actions for one specific dialog. A subsequent
change will update the rest of the dialogs.
This change is essentially upgrading us from a totally obsolete help
system to a nearly-obsolete help system, but the systems are similar
enough to make this a useful half-step on the way to something else.
The code will centralize help activation in a pair of functions in the
main app class, so any future improvements should be more limited in
scope.
This also adds a build step to copy the CHM to the execution directory.
2014-12-09 06:34:34 +00:00
|
|
|
#include "Help/PopUpIds.h"
|
2007-03-27 17:47:10 +00:00
|
|
|
|
|
|
|
/* magic global that MFC finds (or that finds MFC) */
|
|
|
|
MyApp gMyApp;
|
|
|
|
|
2014-11-21 21:18:20 +00:00
|
|
|
/* used for debug logging */
|
2015-01-22 18:06:55 +00:00
|
|
|
DebugLog* gDebugLog = NULL;
|
2014-11-18 01:54:34 +00:00
|
|
|
|
2007-03-27 17:47:10 +00:00
|
|
|
|
|
|
|
/*
|
2014-11-21 21:18:20 +00:00
|
|
|
* This is the closest thing to "main" that we have, but we
|
2007-03-27 17:47:10 +00:00
|
|
|
* should wait for InitInstance for most things.
|
|
|
|
*/
|
2015-01-13 21:43:48 +00:00
|
|
|
MyApp::MyApp() : CWinAppEx()
|
2007-03-27 17:47:10 +00:00
|
|
|
{
|
2015-01-22 18:06:55 +00:00
|
|
|
#ifdef _DEBUG
|
|
|
|
// TODO: make this a setting, rather than a debug-build-only feature
|
2014-11-18 01:54:34 +00:00
|
|
|
gDebugLog = new DebugLog(L"C:\\src\\cplog.txt");
|
2015-01-22 18:06:55 +00:00
|
|
|
#endif
|
2014-11-18 01:54:34 +00:00
|
|
|
|
2014-11-18 05:13:13 +00:00
|
|
|
time_t now = time(NULL);
|
2014-11-18 01:54:34 +00:00
|
|
|
|
2014-11-18 21:05:15 +00:00
|
|
|
LOGI("CiderPress v%d.%d.%d%ls started at %.24hs",
|
2014-11-04 00:26:53 +00:00
|
|
|
kAppMajorVersion, kAppMinorVersion, kAppBugVersion,
|
|
|
|
kAppDevString, ctime(&now));
|
2007-03-27 17:47:10 +00:00
|
|
|
|
2015-01-22 18:06:55 +00:00
|
|
|
#ifdef _DEBUG
|
2014-11-04 00:26:53 +00:00
|
|
|
int tmpDbgFlag;
|
|
|
|
// enable memory leak detection
|
2007-03-27 17:47:10 +00:00
|
|
|
tmpDbgFlag = _CrtSetDbgFlag(_CRTDBG_REPORT_FLAG);
|
|
|
|
tmpDbgFlag |= _CRTDBG_LEAK_CHECK_DF;
|
|
|
|
_CrtSetDbgFlag(tmpDbgFlag);
|
2014-11-18 21:05:15 +00:00
|
|
|
LOGI("Leak detection enabled");
|
2015-01-22 18:06:55 +00:00
|
|
|
#endif
|
WinHelp to HtmlHelp conversion, part 1
The original version of CiderPress used a WinHelp help file, built
with an application called HelpMatic Pro. This app used a proprietary
format, and had no facility for exporting to "raw" HPJ + RTF files, so
I decompiled the HLP and imported it into HelpScribble.
Using HelpScribble, I cleaned up the help file formatting a little,
fixed up the table of contents, and exported as "raw" HtmlHelp (HHP,
HHK, HHC, and a whole bunch of HTML). I also split the pop-up help
text, which isn't supported by HelpScribble, into a separate text file
that Microsoft's HTML Help Workshop understands.
I'm checking in the files that HTML Help Workshop needs to generate a
CHM, so anyone can update the help text. I'm also checking in the CHM
file, rather than adding the help workshop to the build, so that it's
not necessary to download and configure the help workshop to build
CiderPress.
This change adds all of the updated help, but only updates the Help and
question mark button actions for one specific dialog. A subsequent
change will update the rest of the dialogs.
This change is essentially upgrading us from a totally obsolete help
system to a nearly-obsolete help system, but the systems are similar
enough to make this a useful half-step on the way to something else.
The code will centralize help activation in a pair of functions in the
main app class, so any future improvements should be more limited in
scope.
This also adds a build step to copy the CHM to the execution directory.
2014-12-09 06:34:34 +00:00
|
|
|
|
2021-04-19 00:06:01 +00:00
|
|
|
//EnableLoadWindowPlacement(true);
|
WinHelp to HtmlHelp conversion, part 1
The original version of CiderPress used a WinHelp help file, built
with an application called HelpMatic Pro. This app used a proprietary
format, and had no facility for exporting to "raw" HPJ + RTF files, so
I decompiled the HLP and imported it into HelpScribble.
Using HelpScribble, I cleaned up the help file formatting a little,
fixed up the table of contents, and exported as "raw" HtmlHelp (HHP,
HHK, HHC, and a whole bunch of HTML). I also split the pop-up help
text, which isn't supported by HelpScribble, into a separate text file
that Microsoft's HTML Help Workshop understands.
I'm checking in the files that HTML Help Workshop needs to generate a
CHM, so anyone can update the help text. I'm also checking in the CHM
file, rather than adding the help workshop to the build, so that it's
not necessary to download and configure the help workshop to build
CiderPress.
This change adds all of the updated help, but only updates the Help and
question mark button actions for one specific dialog. A subsequent
change will update the rest of the dialogs.
This change is essentially upgrading us from a totally obsolete help
system to a nearly-obsolete help system, but the systems are similar
enough to make this a useful half-step on the way to something else.
The code will centralize help activation in a pair of functions in the
main app class, so any future improvements should be more limited in
scope.
This also adds a build step to copy the CHM to the execution directory.
2014-12-09 06:34:34 +00:00
|
|
|
EnableHtmlHelp();
|
2007-03-27 17:47:10 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
/*
|
|
|
|
* This is the last point of control we have.
|
|
|
|
*/
|
|
|
|
MyApp::~MyApp(void)
|
|
|
|
{
|
2014-11-04 00:26:53 +00:00
|
|
|
DiskArchive::AppCleanup();
|
|
|
|
NiftyList::AppCleanup();
|
2007-03-27 17:47:10 +00:00
|
|
|
|
2014-11-18 21:05:15 +00:00
|
|
|
LOGI("SHUTTING DOWN\n");
|
2014-11-18 01:54:34 +00:00
|
|
|
delete gDebugLog;
|
2007-03-27 17:47:10 +00:00
|
|
|
}
|
|
|
|
|
2014-11-21 21:18:20 +00:00
|
|
|
BOOL MyApp::InitInstance(void)
|
2007-03-27 17:47:10 +00:00
|
|
|
{
|
2014-11-21 21:18:20 +00:00
|
|
|
// Create the main window.
|
2014-11-04 00:26:53 +00:00
|
|
|
m_pMainWnd = new MainWindow;
|
|
|
|
m_pMainWnd->ShowWindow(m_nCmdShow);
|
|
|
|
m_pMainWnd->UpdateWindow();
|
2007-03-27 17:47:10 +00:00
|
|
|
|
WinHelp to HtmlHelp conversion, part 1
The original version of CiderPress used a WinHelp help file, built
with an application called HelpMatic Pro. This app used a proprietary
format, and had no facility for exporting to "raw" HPJ + RTF files, so
I decompiled the HLP and imported it into HelpScribble.
Using HelpScribble, I cleaned up the help file formatting a little,
fixed up the table of contents, and exported as "raw" HtmlHelp (HHP,
HHK, HHC, and a whole bunch of HTML). I also split the pop-up help
text, which isn't supported by HelpScribble, into a separate text file
that Microsoft's HTML Help Workshop understands.
I'm checking in the files that HTML Help Workshop needs to generate a
CHM, so anyone can update the help text. I'm also checking in the CHM
file, rather than adding the help workshop to the build, so that it's
not necessary to download and configure the help workshop to build
CiderPress.
This change adds all of the updated help, but only updates the Help and
question mark button actions for one specific dialog. A subsequent
change will update the rest of the dialogs.
This change is essentially upgrading us from a totally obsolete help
system to a nearly-obsolete help system, but the systems are similar
enough to make this a useful half-step on the way to something else.
The code will centralize help activation in a pair of functions in the
main app class, so any future improvements should be more limited in
scope.
This also adds a build step to copy the CHM to the execution directory.
2014-12-09 06:34:34 +00:00
|
|
|
LOGD("Happily in InitInstance!");
|
2007-03-27 17:47:10 +00:00
|
|
|
|
2014-11-04 00:26:53 +00:00
|
|
|
/* find our .EXE file */
|
|
|
|
//HMODULE hModule = ::GetModuleHandle(NULL);
|
Large set of changes to restore CiderPress build.
CiderPress and MDC now compile, and execute far enough to open
their respective "about" boxes, but I doubt they'll do much
more than that.
* Switch from MBCS to UNICODE APIs
Microsoft switched to UTF-16 (by way of UCS-2) a long time ago,
and the support for MBCS seems to be getting phased out. So it's
time to switch to wide strings.
This is a bit awkward for CiderPress because it works with disk
and file archives with 8-bit filenames, and I want NufxLib and
DiskImgLib to continue to work on Linux (which has largely taken
the UTF-8 approach to Unicode). The libraries will continue to
work with 8-bit filenames, with CiderPress/MDC doing the
conversion at the appropriate point.
There were a couple of places where strings from a structure
handed back by one of the libraries were used directly in the UI,
or vice-versa, which is a problem because we have nowhere to
store the result of the conversion. These currently have fixed
place-holder "xyzzy" strings.
All UI strings are now wide.
Various format strings now use "%ls" and "%hs" to explicitly
specify wide and narrow. This doesn't play well with gcc, so
only the Windows-specific parts use those.
* Various updates to vcxproj files
The project-file conversion had some cruft that is now largely
gone. The build now has a common output directory for the EXEs
and libraries, avoiding the old post-build copy steps.
* Added zlib 1.2.8 and nufxlib 2.2.2 source snapshots
The old "prebuilts" directory is now gone. The libraries are now
built as part of building the apps.
I added a minimal set of files for zlib, and a full set for nufxlib.
The Linux-specific nufxlib goodies are included for the benefit of
the Linux utilities, which are currently broken (don't build).
* Replace symbols used for include guards
Symbols with a leading "__" are reserved.
2014-11-10 23:32:55 +00:00
|
|
|
WCHAR buf[MAX_PATH];
|
2014-11-18 05:13:13 +00:00
|
|
|
if (::GetModuleFileName(NULL /*hModule*/, buf, NELEM(buf)) != 0) {
|
WinHelp to HtmlHelp conversion, part 1
The original version of CiderPress used a WinHelp help file, built
with an application called HelpMatic Pro. This app used a proprietary
format, and had no facility for exporting to "raw" HPJ + RTF files, so
I decompiled the HLP and imported it into HelpScribble.
Using HelpScribble, I cleaned up the help file formatting a little,
fixed up the table of contents, and exported as "raw" HtmlHelp (HHP,
HHK, HHC, and a whole bunch of HTML). I also split the pop-up help
text, which isn't supported by HelpScribble, into a separate text file
that Microsoft's HTML Help Workshop understands.
I'm checking in the files that HTML Help Workshop needs to generate a
CHM, so anyone can update the help text. I'm also checking in the CHM
file, rather than adding the help workshop to the build, so that it's
not necessary to download and configure the help workshop to build
CiderPress.
This change adds all of the updated help, but only updates the Help and
question mark button actions for one specific dialog. A subsequent
change will update the rest of the dialogs.
This change is essentially upgrading us from a totally obsolete help
system to a nearly-obsolete help system, but the systems are similar
enough to make this a useful half-step on the way to something else.
The code will centralize help activation in a pair of functions in the
main app class, so any future improvements should be more limited in
scope.
This also adds a build step to copy the CHM to the execution directory.
2014-12-09 06:34:34 +00:00
|
|
|
LOGD("Module name is '%ls'", buf);
|
2014-11-04 00:26:53 +00:00
|
|
|
fExeFileName = buf;
|
2007-03-27 17:47:10 +00:00
|
|
|
|
Large set of changes to restore CiderPress build.
CiderPress and MDC now compile, and execute far enough to open
their respective "about" boxes, but I doubt they'll do much
more than that.
* Switch from MBCS to UNICODE APIs
Microsoft switched to UTF-16 (by way of UCS-2) a long time ago,
and the support for MBCS seems to be getting phased out. So it's
time to switch to wide strings.
This is a bit awkward for CiderPress because it works with disk
and file archives with 8-bit filenames, and I want NufxLib and
DiskImgLib to continue to work on Linux (which has largely taken
the UTF-8 approach to Unicode). The libraries will continue to
work with 8-bit filenames, with CiderPress/MDC doing the
conversion at the appropriate point.
There were a couple of places where strings from a structure
handed back by one of the libraries were used directly in the UI,
or vice-versa, which is a problem because we have nowhere to
store the result of the conversion. These currently have fixed
place-holder "xyzzy" strings.
All UI strings are now wide.
Various format strings now use "%ls" and "%hs" to explicitly
specify wide and narrow. This doesn't play well with gcc, so
only the Windows-specific parts use those.
* Various updates to vcxproj files
The project-file conversion had some cruft that is now largely
gone. The build now has a common output directory for the EXEs
and libraries, avoiding the old post-build copy steps.
* Added zlib 1.2.8 and nufxlib 2.2.2 source snapshots
The old "prebuilts" directory is now gone. The libraries are now
built as part of building the apps.
I added a minimal set of files for zlib, and a full set for nufxlib.
The Linux-specific nufxlib goodies are included for the benefit of
the Linux utilities, which are currently broken (don't build).
* Replace symbols used for include guards
Symbols with a leading "__" are reserved.
2014-11-10 23:32:55 +00:00
|
|
|
WCHAR* cp = wcsrchr(buf, '\\');
|
2014-11-18 05:13:13 +00:00
|
|
|
if (cp == NULL)
|
Large set of changes to restore CiderPress build.
CiderPress and MDC now compile, and execute far enough to open
their respective "about" boxes, but I doubt they'll do much
more than that.
* Switch from MBCS to UNICODE APIs
Microsoft switched to UTF-16 (by way of UCS-2) a long time ago,
and the support for MBCS seems to be getting phased out. So it's
time to switch to wide strings.
This is a bit awkward for CiderPress because it works with disk
and file archives with 8-bit filenames, and I want NufxLib and
DiskImgLib to continue to work on Linux (which has largely taken
the UTF-8 approach to Unicode). The libraries will continue to
work with 8-bit filenames, with CiderPress/MDC doing the
conversion at the appropriate point.
There were a couple of places where strings from a structure
handed back by one of the libraries were used directly in the UI,
or vice-versa, which is a problem because we have nowhere to
store the result of the conversion. These currently have fixed
place-holder "xyzzy" strings.
All UI strings are now wide.
Various format strings now use "%ls" and "%hs" to explicitly
specify wide and narrow. This doesn't play well with gcc, so
only the Windows-specific parts use those.
* Various updates to vcxproj files
The project-file conversion had some cruft that is now largely
gone. The build now has a common output directory for the EXEs
and libraries, avoiding the old post-build copy steps.
* Added zlib 1.2.8 and nufxlib 2.2.2 source snapshots
The old "prebuilts" directory is now gone. The libraries are now
built as part of building the apps.
I added a minimal set of files for zlib, and a full set for nufxlib.
The Linux-specific nufxlib goodies are included for the benefit of
the Linux utilities, which are currently broken (don't build).
* Replace symbols used for include guards
Symbols with a leading "__" are reserved.
2014-11-10 23:32:55 +00:00
|
|
|
fExeBaseName = L"";
|
2014-11-04 00:26:53 +00:00
|
|
|
else
|
|
|
|
fExeBaseName = fExeFileName.Left(cp - buf +1);
|
|
|
|
} else {
|
WinHelp to HtmlHelp conversion, part 1
The original version of CiderPress used a WinHelp help file, built
with an application called HelpMatic Pro. This app used a proprietary
format, and had no facility for exporting to "raw" HPJ + RTF files, so
I decompiled the HLP and imported it into HelpScribble.
Using HelpScribble, I cleaned up the help file formatting a little,
fixed up the table of contents, and exported as "raw" HtmlHelp (HHP,
HHK, HHC, and a whole bunch of HTML). I also split the pop-up help
text, which isn't supported by HelpScribble, into a separate text file
that Microsoft's HTML Help Workshop understands.
I'm checking in the files that HTML Help Workshop needs to generate a
CHM, so anyone can update the help text. I'm also checking in the CHM
file, rather than adding the help workshop to the build, so that it's
not necessary to download and configure the help workshop to build
CiderPress.
This change adds all of the updated help, but only updates the Help and
question mark button actions for one specific dialog. A subsequent
change will update the rest of the dialogs.
This change is essentially upgrading us from a totally obsolete help
system to a nearly-obsolete help system, but the systems are similar
enough to make this a useful half-step on the way to something else.
The code will centralize help activation in a pair of functions in the
main app class, so any future improvements should be more limited in
scope.
This also adds a build step to copy the CHM to the execution directory.
2014-12-09 06:34:34 +00:00
|
|
|
LOGW("GLITCH: GetModuleFileName failed (err=%ld)", ::GetLastError());
|
2014-11-04 00:26:53 +00:00
|
|
|
}
|
2007-03-27 17:47:10 +00:00
|
|
|
|
Large set of changes to restore CiderPress build.
CiderPress and MDC now compile, and execute far enough to open
their respective "about" boxes, but I doubt they'll do much
more than that.
* Switch from MBCS to UNICODE APIs
Microsoft switched to UTF-16 (by way of UCS-2) a long time ago,
and the support for MBCS seems to be getting phased out. So it's
time to switch to wide strings.
This is a bit awkward for CiderPress because it works with disk
and file archives with 8-bit filenames, and I want NufxLib and
DiskImgLib to continue to work on Linux (which has largely taken
the UTF-8 approach to Unicode). The libraries will continue to
work with 8-bit filenames, with CiderPress/MDC doing the
conversion at the appropriate point.
There were a couple of places where strings from a structure
handed back by one of the libraries were used directly in the UI,
or vice-versa, which is a problem because we have nowhere to
store the result of the conversion. These currently have fixed
place-holder "xyzzy" strings.
All UI strings are now wide.
Various format strings now use "%ls" and "%hs" to explicitly
specify wide and narrow. This doesn't play well with gcc, so
only the Windows-specific parts use those.
* Various updates to vcxproj files
The project-file conversion had some cruft that is now largely
gone. The build now has a common output directory for the EXEs
and libraries, avoiding the old post-build copy steps.
* Added zlib 1.2.8 and nufxlib 2.2.2 source snapshots
The old "prebuilts" directory is now gone. The libraries are now
built as part of building the apps.
I added a minimal set of files for zlib, and a full set for nufxlib.
The Linux-specific nufxlib goodies are included for the benefit of
the Linux utilities, which are currently broken (don't build).
* Replace symbols used for include guards
Symbols with a leading "__" are reserved.
2014-11-10 23:32:55 +00:00
|
|
|
LogModuleLocation(L"riched.dll");
|
|
|
|
LogModuleLocation(L"riched20.dll");
|
|
|
|
LogModuleLocation(L"riched32.dll");
|
2014-12-19 01:25:46 +00:00
|
|
|
LogModuleLocation(L"msftedit.dll");
|
2007-03-27 17:47:10 +00:00
|
|
|
|
2014-12-11 21:53:02 +00:00
|
|
|
// This causes functions like SetProfileInt to use the registry rather
|
|
|
|
// than a .INI file. The registry key is "usually the name of a company".
|
2014-12-16 05:57:09 +00:00
|
|
|
#ifdef CAN_UPDATE_FILE_ASSOC
|
|
|
|
SetRegistryKey(fRegistry.GetAppRegistryKey());
|
|
|
|
#else
|
2014-12-11 21:53:02 +00:00
|
|
|
SetRegistryKey(L"faddenSoft");
|
2014-12-16 05:57:09 +00:00
|
|
|
#endif
|
2014-11-04 00:26:53 +00:00
|
|
|
|
2014-11-18 21:05:15 +00:00
|
|
|
//LOGI("Registry key is '%ls'", m_pszRegistryKey);
|
|
|
|
//LOGI("Profile name is '%ls'", m_pszProfileName);
|
|
|
|
LOGI("Short command line is '%ls'", m_lpCmdLine);
|
|
|
|
//LOGI("CP app name is '%ls'", m_pszAppName);
|
|
|
|
//LOGI("CP exe name is '%ls'", m_pszExeName);
|
|
|
|
LOGI("CP help file is '%ls'", m_pszHelpFilePath);
|
|
|
|
LOGI("Command line is '%ls'", ::GetCommandLine());
|
2014-11-04 00:26:53 +00:00
|
|
|
|
|
|
|
//if (!WriteProfileString("SectionOne", "MyEntry", "test"))
|
2014-11-18 21:05:15 +00:00
|
|
|
// LOGI("WriteProfileString failed");
|
2014-11-04 00:26:53 +00:00
|
|
|
|
2014-12-11 21:53:02 +00:00
|
|
|
#ifdef CAN_UPDATE_FILE_ASSOC
|
2014-11-04 00:26:53 +00:00
|
|
|
/*
|
|
|
|
* If we're installing or uninstalling, do what we need to and then
|
|
|
|
* bail immediately. This will hemorrhage memory, but I'm sure the
|
|
|
|
* incredibly robust Windows environment will take it in stride.
|
|
|
|
*/
|
Large set of changes to restore CiderPress build.
CiderPress and MDC now compile, and execute far enough to open
their respective "about" boxes, but I doubt they'll do much
more than that.
* Switch from MBCS to UNICODE APIs
Microsoft switched to UTF-16 (by way of UCS-2) a long time ago,
and the support for MBCS seems to be getting phased out. So it's
time to switch to wide strings.
This is a bit awkward for CiderPress because it works with disk
and file archives with 8-bit filenames, and I want NufxLib and
DiskImgLib to continue to work on Linux (which has largely taken
the UTF-8 approach to Unicode). The libraries will continue to
work with 8-bit filenames, with CiderPress/MDC doing the
conversion at the appropriate point.
There were a couple of places where strings from a structure
handed back by one of the libraries were used directly in the UI,
or vice-versa, which is a problem because we have nowhere to
store the result of the conversion. These currently have fixed
place-holder "xyzzy" strings.
All UI strings are now wide.
Various format strings now use "%ls" and "%hs" to explicitly
specify wide and narrow. This doesn't play well with gcc, so
only the Windows-specific parts use those.
* Various updates to vcxproj files
The project-file conversion had some cruft that is now largely
gone. The build now has a common output directory for the EXEs
and libraries, avoiding the old post-build copy steps.
* Added zlib 1.2.8 and nufxlib 2.2.2 source snapshots
The old "prebuilts" directory is now gone. The libraries are now
built as part of building the apps.
I added a minimal set of files for zlib, and a full set for nufxlib.
The Linux-specific nufxlib goodies are included for the benefit of
the Linux utilities, which are currently broken (don't build).
* Replace symbols used for include guards
Symbols with a leading "__" are reserved.
2014-11-10 23:32:55 +00:00
|
|
|
if (wcscmp(m_lpCmdLine, L"-install") == 0) {
|
2014-11-18 21:05:15 +00:00
|
|
|
LOGI("Invoked with INSTALL flag");
|
2014-11-04 00:26:53 +00:00
|
|
|
fRegistry.OneTimeInstall();
|
2014-12-16 05:57:09 +00:00
|
|
|
::SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, NULL, NULL);
|
2014-11-04 00:26:53 +00:00
|
|
|
exit(0);
|
Large set of changes to restore CiderPress build.
CiderPress and MDC now compile, and execute far enough to open
their respective "about" boxes, but I doubt they'll do much
more than that.
* Switch from MBCS to UNICODE APIs
Microsoft switched to UTF-16 (by way of UCS-2) a long time ago,
and the support for MBCS seems to be getting phased out. So it's
time to switch to wide strings.
This is a bit awkward for CiderPress because it works with disk
and file archives with 8-bit filenames, and I want NufxLib and
DiskImgLib to continue to work on Linux (which has largely taken
the UTF-8 approach to Unicode). The libraries will continue to
work with 8-bit filenames, with CiderPress/MDC doing the
conversion at the appropriate point.
There were a couple of places where strings from a structure
handed back by one of the libraries were used directly in the UI,
or vice-versa, which is a problem because we have nowhere to
store the result of the conversion. These currently have fixed
place-holder "xyzzy" strings.
All UI strings are now wide.
Various format strings now use "%ls" and "%hs" to explicitly
specify wide and narrow. This doesn't play well with gcc, so
only the Windows-specific parts use those.
* Various updates to vcxproj files
The project-file conversion had some cruft that is now largely
gone. The build now has a common output directory for the EXEs
and libraries, avoiding the old post-build copy steps.
* Added zlib 1.2.8 and nufxlib 2.2.2 source snapshots
The old "prebuilts" directory is now gone. The libraries are now
built as part of building the apps.
I added a minimal set of files for zlib, and a full set for nufxlib.
The Linux-specific nufxlib goodies are included for the benefit of
the Linux utilities, which are currently broken (don't build).
* Replace symbols used for include guards
Symbols with a leading "__" are reserved.
2014-11-10 23:32:55 +00:00
|
|
|
} else if (wcscmp(m_lpCmdLine, L"-uninstall") == 0) {
|
2014-11-18 21:05:15 +00:00
|
|
|
LOGI("Invoked with UNINSTALL flag");
|
2014-11-04 00:26:53 +00:00
|
|
|
fRegistry.OneTimeUninstall();
|
2014-12-16 05:57:09 +00:00
|
|
|
::SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, NULL, NULL);
|
2014-11-04 00:26:53 +00:00
|
|
|
exit(1); // tell DeployMaster to continue with uninstall
|
|
|
|
}
|
|
|
|
|
|
|
|
fRegistry.FixBasicSettings();
|
2014-12-11 21:53:02 +00:00
|
|
|
#endif
|
2014-11-04 00:26:53 +00:00
|
|
|
|
|
|
|
return TRUE;
|
2007-03-27 17:47:10 +00:00
|
|
|
}
|
|
|
|
|
2014-11-21 21:18:20 +00:00
|
|
|
void MyApp::LogModuleLocation(const WCHAR* name)
|
2007-03-27 17:47:10 +00:00
|
|
|
{
|
2014-11-04 00:26:53 +00:00
|
|
|
HMODULE hModule;
|
Large set of changes to restore CiderPress build.
CiderPress and MDC now compile, and execute far enough to open
their respective "about" boxes, but I doubt they'll do much
more than that.
* Switch from MBCS to UNICODE APIs
Microsoft switched to UTF-16 (by way of UCS-2) a long time ago,
and the support for MBCS seems to be getting phased out. So it's
time to switch to wide strings.
This is a bit awkward for CiderPress because it works with disk
and file archives with 8-bit filenames, and I want NufxLib and
DiskImgLib to continue to work on Linux (which has largely taken
the UTF-8 approach to Unicode). The libraries will continue to
work with 8-bit filenames, with CiderPress/MDC doing the
conversion at the appropriate point.
There were a couple of places where strings from a structure
handed back by one of the libraries were used directly in the UI,
or vice-versa, which is a problem because we have nowhere to
store the result of the conversion. These currently have fixed
place-holder "xyzzy" strings.
All UI strings are now wide.
Various format strings now use "%ls" and "%hs" to explicitly
specify wide and narrow. This doesn't play well with gcc, so
only the Windows-specific parts use those.
* Various updates to vcxproj files
The project-file conversion had some cruft that is now largely
gone. The build now has a common output directory for the EXEs
and libraries, avoiding the old post-build copy steps.
* Added zlib 1.2.8 and nufxlib 2.2.2 source snapshots
The old "prebuilts" directory is now gone. The libraries are now
built as part of building the apps.
I added a minimal set of files for zlib, and a full set for nufxlib.
The Linux-specific nufxlib goodies are included for the benefit of
the Linux utilities, which are currently broken (don't build).
* Replace symbols used for include guards
Symbols with a leading "__" are reserved.
2014-11-10 23:32:55 +00:00
|
|
|
WCHAR fileNameBuf[256];
|
2014-11-04 00:26:53 +00:00
|
|
|
hModule = ::GetModuleHandle(name);
|
2014-11-18 05:13:13 +00:00
|
|
|
if (hModule != NULL &&
|
Large set of changes to restore CiderPress build.
CiderPress and MDC now compile, and execute far enough to open
their respective "about" boxes, but I doubt they'll do much
more than that.
* Switch from MBCS to UNICODE APIs
Microsoft switched to UTF-16 (by way of UCS-2) a long time ago,
and the support for MBCS seems to be getting phased out. So it's
time to switch to wide strings.
This is a bit awkward for CiderPress because it works with disk
and file archives with 8-bit filenames, and I want NufxLib and
DiskImgLib to continue to work on Linux (which has largely taken
the UTF-8 approach to Unicode). The libraries will continue to
work with 8-bit filenames, with CiderPress/MDC doing the
conversion at the appropriate point.
There were a couple of places where strings from a structure
handed back by one of the libraries were used directly in the UI,
or vice-versa, which is a problem because we have nowhere to
store the result of the conversion. These currently have fixed
place-holder "xyzzy" strings.
All UI strings are now wide.
Various format strings now use "%ls" and "%hs" to explicitly
specify wide and narrow. This doesn't play well with gcc, so
only the Windows-specific parts use those.
* Various updates to vcxproj files
The project-file conversion had some cruft that is now largely
gone. The build now has a common output directory for the EXEs
and libraries, avoiding the old post-build copy steps.
* Added zlib 1.2.8 and nufxlib 2.2.2 source snapshots
The old "prebuilts" directory is now gone. The libraries are now
built as part of building the apps.
I added a minimal set of files for zlib, and a full set for nufxlib.
The Linux-specific nufxlib goodies are included for the benefit of
the Linux utilities, which are currently broken (don't build).
* Replace symbols used for include guards
Symbols with a leading "__" are reserved.
2014-11-10 23:32:55 +00:00
|
|
|
::GetModuleFileName(hModule, fileNameBuf, NELEM(fileNameBuf)) != 0)
|
2014-11-04 00:26:53 +00:00
|
|
|
{
|
|
|
|
// GetModuleHandle does not increase ref count, so no need to release
|
2014-11-18 21:05:15 +00:00
|
|
|
LOGI("Module '%ls' loaded from '%ls'", name, fileNameBuf);
|
2014-11-04 00:26:53 +00:00
|
|
|
} else {
|
2014-11-18 21:05:15 +00:00
|
|
|
LOGI("Module '%ls' not loaded", name);
|
2014-11-04 00:26:53 +00:00
|
|
|
}
|
2007-03-27 17:47:10 +00:00
|
|
|
}
|
|
|
|
|
2014-11-21 21:18:20 +00:00
|
|
|
BOOL MyApp::OnIdle(LONG lCount)
|
2007-03-27 17:47:10 +00:00
|
|
|
{
|
2014-11-04 00:26:53 +00:00
|
|
|
BOOL bMore = CWinApp::OnIdle(lCount);
|
2007-03-27 17:47:10 +00:00
|
|
|
|
2014-11-04 00:26:53 +00:00
|
|
|
//if (lCount == 0) {
|
2014-11-18 21:05:15 +00:00
|
|
|
// LOGI("IDLE lcount=%d", lCount);
|
2014-11-04 00:26:53 +00:00
|
|
|
//}
|
2007-03-27 17:47:10 +00:00
|
|
|
|
2014-11-04 00:26:53 +00:00
|
|
|
/*
|
|
|
|
* If MFC is done, we take a swing.
|
|
|
|
*/
|
|
|
|
if (bMore == false) {
|
|
|
|
/* downcast */
|
|
|
|
((MainWindow*)m_pMainWnd)->DoIdle();
|
|
|
|
}
|
2007-03-27 17:47:10 +00:00
|
|
|
|
2014-11-04 00:26:53 +00:00
|
|
|
return bMore;
|
2007-03-27 17:47:10 +00:00
|
|
|
}
|
WinHelp to HtmlHelp conversion, part 1
The original version of CiderPress used a WinHelp help file, built
with an application called HelpMatic Pro. This app used a proprietary
format, and had no facility for exporting to "raw" HPJ + RTF files, so
I decompiled the HLP and imported it into HelpScribble.
Using HelpScribble, I cleaned up the help file formatting a little,
fixed up the table of contents, and exported as "raw" HtmlHelp (HHP,
HHK, HHC, and a whole bunch of HTML). I also split the pop-up help
text, which isn't supported by HelpScribble, into a separate text file
that Microsoft's HTML Help Workshop understands.
I'm checking in the files that HTML Help Workshop needs to generate a
CHM, so anyone can update the help text. I'm also checking in the CHM
file, rather than adding the help workshop to the build, so that it's
not necessary to download and configure the help workshop to build
CiderPress.
This change adds all of the updated help, but only updates the Help and
question mark button actions for one specific dialog. A subsequent
change will update the rest of the dialogs.
This change is essentially upgrading us from a totally obsolete help
system to a nearly-obsolete help system, but the systems are similar
enough to make this a useful half-step on the way to something else.
The code will centralize help activation in a pair of functions in the
main app class, so any future improvements should be more limited in
scope.
This also adds a build step to copy the CHM to the execution directory.
2014-12-09 06:34:34 +00:00
|
|
|
|
|
|
|
// TODO: figure out why we have help topics without matching control ID constants
|
|
|
|
/*static*/ const DWORD MyApp::PopUpHelpIds[] = {
|
|
|
|
IDOK, IDH_IDOK,
|
|
|
|
IDCANCEL, IDH_IDCANCEL,
|
|
|
|
IDHELP, IDH_IDHELP,
|
|
|
|
IDC_NUFXLIB_VERS_TEXT, IDH_NUFXLIB_VERS_TEXT,
|
|
|
|
IDC_CONTENT_LIST, IDH_CONTENT_LIST,
|
|
|
|
IDC_COL_PATHNAME, IDH_COL_PATHNAME,
|
|
|
|
IDC_COL_TYPE, IDH_COL_TYPE,
|
|
|
|
IDC_COL_AUXTYPE, IDH_COL_AUXTYPE,
|
|
|
|
IDC_COL_MODDATE, IDH_COL_MODDATE,
|
|
|
|
IDC_COL_FORMAT, IDH_COL_FORMAT,
|
|
|
|
IDC_COL_SIZE, IDH_COL_SIZE,
|
|
|
|
IDC_COL_RATIO, IDH_COL_RATIO,
|
|
|
|
IDC_COL_PACKED, IDH_COL_PACKED,
|
|
|
|
IDC_COL_ACCESS, IDH_COL_ACCESS,
|
|
|
|
IDC_COL_DEFAULTS, IDH_COL_DEFAULTS,
|
|
|
|
IDC_DEFC_UNCOMPRESSED, IDH_DEFC_UNCOMPRESSED,
|
|
|
|
IDC_DEFC_SQUEEZE, IDH_DEFC_SQUEEZE,
|
|
|
|
IDC_DEFC_LZW1, IDH_DEFC_LZW1,
|
|
|
|
IDC_DEFC_LZW2, IDH_DEFC_LZW2,
|
|
|
|
IDC_DEFC_LZC12, IDH_DEFC_LZC12,
|
|
|
|
IDC_DEFC_LZC16, IDH_DEFC_LZC16,
|
|
|
|
IDC_DEFC_DEFLATE, IDH_DEFC_DEFLATE,
|
|
|
|
IDC_DEFC_BZIP2, IDH_DEFC_BZIP2,
|
|
|
|
1024, IDH_TOPIC1024,
|
|
|
|
IDC_PVIEW_NOWRAP_TEXT, IDH_PVIEW_NOWRAP_TEXT,
|
|
|
|
IDC_PVIEW_BOLD_HEXDUMP, IDH_PVIEW_BOLD_HEXDUMP,
|
|
|
|
IDC_PVIEW_BOLD_BASIC, IDH_PVIEW_BOLD_BASIC,
|
|
|
|
IDC_PVIEW_DISASM_ONEBYTEBRKCOP, IDH_PVIEW_DISASM_ONEBYTEBRKCOP,
|
|
|
|
IDC_PVIEW_HIRES_BW, IDH_PVIEW_HIRES_BW,
|
|
|
|
IDC_PVIEW_DHR_CONV_COMBO, IDH_PVIEW_DHR_CONV_COMBO,
|
2017-11-13 22:24:58 +00:00
|
|
|
IDC_PVIEW_MOUSETEXT_TO_ASCII, IDH_PVIEW_MOUSETEXT_TO_ASCII,
|
WinHelp to HtmlHelp conversion, part 1
The original version of CiderPress used a WinHelp help file, built
with an application called HelpMatic Pro. This app used a proprietary
format, and had no facility for exporting to "raw" HPJ + RTF files, so
I decompiled the HLP and imported it into HelpScribble.
Using HelpScribble, I cleaned up the help file formatting a little,
fixed up the table of contents, and exported as "raw" HtmlHelp (HHP,
HHK, HHC, and a whole bunch of HTML). I also split the pop-up help
text, which isn't supported by HelpScribble, into a separate text file
that Microsoft's HTML Help Workshop understands.
I'm checking in the files that HTML Help Workshop needs to generate a
CHM, so anyone can update the help text. I'm also checking in the CHM
file, rather than adding the help workshop to the build, so that it's
not necessary to download and configure the help workshop to build
CiderPress.
This change adds all of the updated help, but only updates the Help and
question mark button actions for one specific dialog. A subsequent
change will update the rest of the dialogs.
This change is essentially upgrading us from a totally obsolete help
system to a nearly-obsolete help system, but the systems are similar
enough to make this a useful half-step on the way to something else.
The code will centralize help activation in a pair of functions in the
main app class, so any future improvements should be more limited in
scope.
This also adds a build step to copy the CHM to the execution directory.
2014-12-09 06:34:34 +00:00
|
|
|
IDC_PVIEW_HITEXT, IDH_PVIEW_HITEXT,
|
|
|
|
IDC_PVIEW_PASCALTEXT, IDH_PVIEW_PASCALTEXT,
|
|
|
|
IDC_PVIEW_APPLESOFT, IDH_PVIEW_APPLESOFT,
|
|
|
|
IDC_PVIEW_INTEGER, IDH_PVIEW_INTEGER,
|
|
|
|
IDC_PVIEW_HIRES, IDH_PVIEW_HIRES,
|
|
|
|
IDC_PVIEW_DHR, IDH_PVIEW_DHR,
|
|
|
|
IDC_PVIEW_SHR, IDH_PVIEW_SHR,
|
|
|
|
IDC_PVIEW_AWP, IDH_PVIEW_AWP,
|
|
|
|
IDC_PVIEW_PRODOSFOLDER, IDH_PVIEW_PRODOSFOLDER,
|
|
|
|
IDC_PVIEW_RESOURCES, IDH_PVIEW_RESOURCES,
|
|
|
|
IDC_PVIEW_RELAX_GFX, IDH_PVIEW_RELAX_GFX,
|
|
|
|
IDC_PVIEW_ADB, IDH_PVIEW_ADB,
|
|
|
|
IDC_PVIEW_SCASSEM, IDH_PVIEW_SCASSEM,
|
|
|
|
IDC_PVIEW_ASP, IDH_PVIEW_ASP,
|
|
|
|
IDC_PVIEW_MACPAINT, IDH_PVIEW_MACPAINT,
|
|
|
|
IDC_PVIEW_PASCALCODE, IDH_PVIEW_PASCALCODE,
|
|
|
|
IDC_PVIEW_CPMTEXT, IDH_PVIEW_CPMTEXT,
|
|
|
|
IDC_PVIEW_GWP, IDH_PVIEW_GWP,
|
|
|
|
IDC_PVIEW_DISASM, IDH_PVIEW_DISASM,
|
|
|
|
IDC_PVIEW_PRINTSHOP, IDH_PVIEW_PRINTSHOP,
|
|
|
|
IDC_PVIEW_TEXT8, IDH_PVIEW_TEXT8,
|
|
|
|
IDC_PVIEW_SIZE_EDIT, IDH_PVIEW_SIZE_EDIT,
|
|
|
|
IDC_PVIEW_SIZE_SPIN, IDH_PVIEW_SIZE_SPIN,
|
|
|
|
IDC_DISKEDIT_DOREAD, IDH_DISKEDIT_DOREAD,
|
|
|
|
IDC_DISKEDIT_DOWRITE, IDH_DISKEDIT_DOWRITE,
|
|
|
|
IDC_DISKEDIT_TRACK, IDH_DISKEDIT_TRACK,
|
2014-12-09 22:10:52 +00:00
|
|
|
IDC_DISKEDIT_TRACKSPIN, IDH_DISKEDIT_TRACK, // remapped
|
|
|
|
IDC_DISKEDIT_SECTOR, IDH_DISKEDIT_TRACK, // remapped
|
|
|
|
IDC_DISKEDIT_SECTORSPIN, IDH_DISKEDIT_TRACK, // remapped
|
WinHelp to HtmlHelp conversion, part 1
The original version of CiderPress used a WinHelp help file, built
with an application called HelpMatic Pro. This app used a proprietary
format, and had no facility for exporting to "raw" HPJ + RTF files, so
I decompiled the HLP and imported it into HelpScribble.
Using HelpScribble, I cleaned up the help file formatting a little,
fixed up the table of contents, and exported as "raw" HtmlHelp (HHP,
HHK, HHC, and a whole bunch of HTML). I also split the pop-up help
text, which isn't supported by HelpScribble, into a separate text file
that Microsoft's HTML Help Workshop understands.
I'm checking in the files that HTML Help Workshop needs to generate a
CHM, so anyone can update the help text. I'm also checking in the CHM
file, rather than adding the help workshop to the build, so that it's
not necessary to download and configure the help workshop to build
CiderPress.
This change adds all of the updated help, but only updates the Help and
question mark button actions for one specific dialog. A subsequent
change will update the rest of the dialogs.
This change is essentially upgrading us from a totally obsolete help
system to a nearly-obsolete help system, but the systems are similar
enough to make this a useful half-step on the way to something else.
The code will centralize help activation in a pair of functions in the
main app class, so any future improvements should be more limited in
scope.
This also adds a build step to copy the CHM to the execution directory.
2014-12-09 06:34:34 +00:00
|
|
|
IDC_DISKEDIT_OPENFILE, IDH_DISKEDIT_OPENFILE,
|
|
|
|
IDC_DISKEDIT_EDIT, IDH_DISKEDIT_EDIT,
|
|
|
|
IDC_DISKEDIT_PREV, IDH_DISKEDIT_PREV,
|
|
|
|
IDC_DISKEDIT_NEXT, IDH_DISKEDIT_NEXT,
|
2014-12-09 22:10:52 +00:00
|
|
|
IDC_STEXT_SECTOR, IDH_DISKEDIT_TRACK, // remapped
|
|
|
|
IDC_STEXT_TRACK, IDH_DISKEDIT_TRACK, // remapped
|
WinHelp to HtmlHelp conversion, part 1
The original version of CiderPress used a WinHelp help file, built
with an application called HelpMatic Pro. This app used a proprietary
format, and had no facility for exporting to "raw" HPJ + RTF files, so
I decompiled the HLP and imported it into HelpScribble.
Using HelpScribble, I cleaned up the help file formatting a little,
fixed up the table of contents, and exported as "raw" HtmlHelp (HHP,
HHK, HHC, and a whole bunch of HTML). I also split the pop-up help
text, which isn't supported by HelpScribble, into a separate text file
that Microsoft's HTML Help Workshop understands.
I'm checking in the files that HTML Help Workshop needs to generate a
CHM, so anyone can update the help text. I'm also checking in the CHM
file, rather than adding the help workshop to the build, so that it's
not necessary to download and configure the help workshop to build
CiderPress.
This change adds all of the updated help, but only updates the Help and
question mark button actions for one specific dialog. A subsequent
change will update the rest of the dialogs.
This change is essentially upgrading us from a totally obsolete help
system to a nearly-obsolete help system, but the systems are similar
enough to make this a useful half-step on the way to something else.
The code will centralize help activation in a pair of functions in the
main app class, so any future improvements should be more limited in
scope.
This also adds a build step to copy the CHM to the execution directory.
2014-12-09 06:34:34 +00:00
|
|
|
IDC_DISKEDIT_DONE, IDH_DISKEDIT_DONE,
|
|
|
|
IDC_DISKEDIT_HEX, IDH_DISKEDIT_HEX,
|
|
|
|
IDC_DISKEDIT_SUBVOLUME, IDH_DISKEDIT_SUBVOLUME,
|
|
|
|
1082, IDH_TOPIC1082,
|
|
|
|
1089, IDH_TOPIC1089,
|
|
|
|
IDC_DECONF_FSFORMAT, IDH_DECONF_FSFORMAT,
|
|
|
|
IDC_DECONF_SECTORORDER, IDH_DECONF_SECTORORDER,
|
|
|
|
IDC_DECONF_PHYSICAL, IDH_DECONF_PHYSICAL,
|
|
|
|
IDC_DECONF_FILEFORMAT, IDH_DECONF_FILEFORMAT,
|
|
|
|
IDC_DECONF_SOURCE, IDH_DECONF_SOURCE,
|
|
|
|
IDC_DISKIMG_VERS_TEXT, IDH_DISKIMG_VERS_TEXT,
|
|
|
|
IDC_FVIEW_EDITBOX, IDH_FVIEW_EDITBOX,
|
|
|
|
IDC_SELECTED_COUNT, IDH_SELECTED_COUNT,
|
|
|
|
1103, IDH_TOPIC1103,
|
|
|
|
1105, IDH_TOPIC1105,
|
|
|
|
IDC_DECONF_HELP, IDH_DECONF_HELP,
|
|
|
|
IDC_SUBV_LIST, IDH_SUBV_LIST,
|
|
|
|
IDC_DEFILE_FILENAME, IDH_DEFILE_FILENAME,
|
|
|
|
IDC_DEFILE_RSRC, IDH_DEFILE_RSRC,
|
|
|
|
IDC_CIDERPRESS_VERS_TEXT, IDH_CIDERPRESS_VERS_TEXT,
|
|
|
|
IDC_PREF_TEMP_FOLDER, IDH_PREF_TEMP_FOLDER,
|
2015-01-16 00:10:08 +00:00
|
|
|
//IDC_CHOOSEDIR_TREE, IDH_CHOOSEDIR_TREE, // dialog removed
|
|
|
|
//IDC_CHOOSEDIR_PATHEDIT, IDH_CHOOSEDIR_PATHEDIT,
|
|
|
|
//IDC_CHOOSEDIR_EXPAND_TREE, IDH_CHOOSEDIR_EXPAND_TREE,
|
|
|
|
//IDC_CHOOSEDIR_PATH, IDH_CHOOSEDIR_PATH,
|
|
|
|
//IDC_CHOOSEDIR_NEW_FOLDER, IDH_CHOOSEDIR_NEW_FOLDER,
|
WinHelp to HtmlHelp conversion, part 1
The original version of CiderPress used a WinHelp help file, built
with an application called HelpMatic Pro. This app used a proprietary
format, and had no facility for exporting to "raw" HPJ + RTF files, so
I decompiled the HLP and imported it into HelpScribble.
Using HelpScribble, I cleaned up the help file formatting a little,
fixed up the table of contents, and exported as "raw" HtmlHelp (HHP,
HHK, HHC, and a whole bunch of HTML). I also split the pop-up help
text, which isn't supported by HelpScribble, into a separate text file
that Microsoft's HTML Help Workshop understands.
I'm checking in the files that HTML Help Workshop needs to generate a
CHM, so anyone can update the help text. I'm also checking in the CHM
file, rather than adding the help workshop to the build, so that it's
not necessary to download and configure the help workshop to build
CiderPress.
This change adds all of the updated help, but only updates the Help and
question mark button actions for one specific dialog. A subsequent
change will update the rest of the dialogs.
This change is essentially upgrading us from a totally obsolete help
system to a nearly-obsolete help system, but the systems are similar
enough to make this a useful half-step on the way to something else.
The code will centralize help activation in a pair of functions in the
main app class, so any future improvements should be more limited in
scope.
This also adds a build step to copy the CHM to the execution directory.
2014-12-09 06:34:34 +00:00
|
|
|
IDC_PREF_CHOOSE_TEMP_FOLDER, IDH_PREF_CHOOSE_TEMP_FOLDER,
|
|
|
|
IDC_FVIEW_FONT, IDH_FVIEW_FONT,
|
|
|
|
IDC_FVIEW_NEXT, IDH_FVIEW_NEXT,
|
|
|
|
IDC_FVIEW_PREV, IDH_FVIEW_PREV,
|
2015-01-13 21:21:43 +00:00
|
|
|
//IDC_NEWFOLDER_CURDIR, IDH_NEWFOLDER_CURDIR, // dialog removed
|
2015-01-16 00:10:08 +00:00
|
|
|
//IDC_NEWFOLDER_NAME, IDH_NEWFOLDER_NAME,
|
WinHelp to HtmlHelp conversion, part 1
The original version of CiderPress used a WinHelp help file, built
with an application called HelpMatic Pro. This app used a proprietary
format, and had no facility for exporting to "raw" HPJ + RTF files, so
I decompiled the HLP and imported it into HelpScribble.
Using HelpScribble, I cleaned up the help file formatting a little,
fixed up the table of contents, and exported as "raw" HtmlHelp (HHP,
HHK, HHC, and a whole bunch of HTML). I also split the pop-up help
text, which isn't supported by HelpScribble, into a separate text file
that Microsoft's HTML Help Workshop understands.
I'm checking in the files that HTML Help Workshop needs to generate a
CHM, so anyone can update the help text. I'm also checking in the CHM
file, rather than adding the help workshop to the build, so that it's
not necessary to download and configure the help workshop to build
CiderPress.
This change adds all of the updated help, but only updates the Help and
question mark button actions for one specific dialog. A subsequent
change will update the rest of the dialogs.
This change is essentially upgrading us from a totally obsolete help
system to a nearly-obsolete help system, but the systems are similar
enough to make this a useful half-step on the way to something else.
The code will centralize help activation in a pair of functions in the
main app class, so any future improvements should be more limited in
scope.
This also adds a build step to copy the CHM to the execution directory.
2014-12-09 06:34:34 +00:00
|
|
|
IDC_EXT_PATH, IDH_EXT_PATH,
|
|
|
|
IDC_EXT_CONVEOLTEXT, IDH_EXT_CONVEOLTEXT,
|
|
|
|
IDC_EXT_CONVEOLALL, IDH_EXT_CONVEOLALL,
|
|
|
|
IDC_EXT_STRIP_FOLDER, IDH_EXT_STRIP_FOLDER,
|
|
|
|
IDC_EXT_OVERWRITE_EXIST, IDH_EXT_OVERWRITE_EXIST,
|
|
|
|
IDC_EXT_SELECTED, IDH_EXT_SELECTED,
|
|
|
|
IDC_EXT_ALL, IDH_EXT_ALL,
|
|
|
|
IDC_EXT_REFORMAT, IDH_EXT_REFORMAT,
|
|
|
|
IDC_EXT_DATAFORK, IDH_EXT_DATAFORK,
|
|
|
|
IDC_EXT_RSRCFORK, IDH_EXT_RSRCFORK,
|
|
|
|
IDC_EXT_CONVEOLNONE, IDH_EXT_CONVEOLNONE,
|
|
|
|
IDC_EXT_CHOOSE_FOLDER, IDH_EXT_CHOOSE_FOLDER,
|
|
|
|
IDC_PROG_ARC_NAME, IDH_PROG_ARC_NAME,
|
|
|
|
IDC_PROG_FILE_NAME, IDH_PROG_FILE_NAME,
|
|
|
|
IDC_PROG_VERB, IDH_PROG_VERB,
|
|
|
|
IDC_PROG_TOFROM, IDH_PROG_TOFROM,
|
|
|
|
IDC_PROG_PROGRESS, IDH_PROG_PROGRESS,
|
|
|
|
IDC_OVWR_YES, IDH_OVWR_YES,
|
|
|
|
IDC_OVWR_YESALL, IDH_OVWR_YESALL,
|
|
|
|
IDC_OVWR_NO, IDH_OVWR_NO,
|
|
|
|
IDC_OVWR_NOALL, IDH_OVWR_NOALL,
|
|
|
|
IDC_OVWR_NEW_INFO, IDH_OVWR_NEW_INFO,
|
|
|
|
IDC_OVWR_RENAME, IDH_OVWR_RENAME,
|
|
|
|
IDC_OVWR_EXIST_NAME, IDH_OVWR_EXIST_NAME,
|
|
|
|
IDC_OVWR_EXIST_INFO, IDH_OVWR_EXIST_INFO,
|
|
|
|
IDC_OVWR_NEW_NAME, IDH_OVWR_NEW_NAME,
|
|
|
|
IDC_RENOVWR_SOURCE_NAME, IDH_RENOVWR_SOURCE_NAME,
|
|
|
|
IDC_RENOVWR_ORIG_NAME, IDH_RENOVWR_ORIG_NAME,
|
|
|
|
IDC_RENOVWR_NEW_NAME, IDH_RENOVWR_NEW_NAME,
|
|
|
|
IDC_SELECT_ACCEPT, IDH_SELECT_ACCEPT,
|
|
|
|
IDC_ADDFILES_PREFIX, IDH_ADDFILES_PREFIX,
|
|
|
|
IDC_ADDFILES_INCLUDE_SUBFOLDERS, IDH_ADDFILES_INCLUDE_SUBFOLDERS,
|
|
|
|
IDC_ADDFILES_STRIP_FOLDER, IDH_ADDFILES_STRIP_FOLDER,
|
|
|
|
IDC_ADDFILES_NOPRESERVE, IDH_ADDFILES_NOPRESERVE,
|
|
|
|
IDC_ADDFILES_PRESERVE, IDH_ADDFILES_PRESERVE,
|
|
|
|
IDC_ADDFILES_PRESERVEPLUS, IDH_ADDFILES_PRESERVEPLUS,
|
|
|
|
IDC_ADDFILES_STATIC1, IDH_ADDFILES_STATIC1,
|
|
|
|
IDC_ADDFILES_STATIC2, IDH_ADDFILES_STATIC2,
|
|
|
|
IDC_ADDFILES_STATIC3, IDH_ADDFILES_STATIC3,
|
|
|
|
IDC_ADDFILES_OVERWRITE, IDH_ADDFILES_OVERWRITE,
|
|
|
|
IDC_PREF_SHRINKIT_COMPAT, IDH_PREF_SHRINKIT_COMPAT,
|
|
|
|
IDC_USE_SELECTED, IDH_USE_SELECTED,
|
|
|
|
IDC_USE_ALL, IDH_USE_ALL,
|
|
|
|
IDC_RENAME_OLD, IDH_RENAME_OLD,
|
|
|
|
IDC_RENAME_NEW, IDH_RENAME_NEW,
|
|
|
|
IDC_RENAME_PATHSEP, IDH_RENAME_PATHSEP,
|
|
|
|
IDC_COMMENT_EDIT, IDH_COMMENT_EDIT,
|
|
|
|
IDC_COMMENT_DELETE, IDH_COMMENT_DELETE,
|
|
|
|
IDC_RECOMP_COMP, IDH_RECOMP_COMP,
|
|
|
|
IDC_PREF_ASSOCIATIONS, IDH_PREF_ASSOCIATIONS,
|
|
|
|
IDC_ASSOCIATION_LIST, IDH_ASSOCIATION_LIST,
|
|
|
|
IDC_REG_COMPANY_NAME, IDH_REG_COMPANY_NAME,
|
|
|
|
IDC_REG_EXPIRES, IDH_REG_EXPIRES,
|
|
|
|
IDC_ABOUT_ENTER_REG, IDH_ABOUT_ENTER_REG,
|
|
|
|
IDC_REGENTER_USER, IDH_REGENTER_USER,
|
|
|
|
IDC_REGENTER_COMPANY, IDH_REGENTER_COMPANY,
|
|
|
|
IDC_REGENTER_REG, IDH_REGENTER_REG,
|
|
|
|
IDC_REG_USER_NAME, IDH_REG_USER_NAME,
|
|
|
|
IDC_ZLIB_VERS_TEXT, IDH_ZLIB_VERS_TEXT,
|
|
|
|
IDC_EXT_CONVHIGHASCII, IDH_EXT_CONVHIGHASCII,
|
|
|
|
IDC_EXT_DISKIMAGE, IDH_EXT_DISKIMAGE,
|
|
|
|
IDC_EXT_DISK_2MG, IDH_EXT_DISK_2MG,
|
|
|
|
IDC_EXT_ADD_PRESERVE, IDH_EXT_ADD_PRESERVE,
|
|
|
|
IDC_EXT_ADD_EXTEN, IDH_EXT_ADD_EXTEN,
|
|
|
|
IDC_EXT_CONFIG_PRESERVE, IDH_EXT_CONFIG_PRESERVE,
|
|
|
|
IDC_EXT_CONFIG_CONVERT, IDH_EXT_CONFIG_CONVERT,
|
|
|
|
IDC_PREF_COERCE_DOS, IDH_PREF_COERCE_DOS,
|
|
|
|
IDC_PREF_SPACES_TO_UNDER, IDH_PREF_SPACES_TO_UNDER,
|
|
|
|
IDC_REGENTER_USERCRC, IDH_REGENTER_USERCRC,
|
|
|
|
IDC_REGENTER_COMPCRC, IDH_REGENTER_COMPCRC,
|
|
|
|
IDC_REGENTER_REGCRC, IDH_REGENTER_REGCRC,
|
|
|
|
IDC_RENAME_SKIP, IDH_RENAME_SKIP,
|
|
|
|
IDC_DECONF_VIEWASBLOCKS, IDH_DECONF_VIEWASBLOCKS,
|
|
|
|
IDC_DECONF_VIEWASSECTORS, IDH_DECONF_VIEWASSECTORS,
|
|
|
|
IDC_DECONF_VIEWASNIBBLES, IDH_DECONF_VIEWASNIBBLES,
|
|
|
|
IDC_DECONF_OUTERFORMAT, IDH_DECONF_OUTERFORMAT,
|
|
|
|
IDC_DECONF_VIEWAS, IDH_DECONF_VIEWAS,
|
|
|
|
IDC_IMAGE_TYPE, IDH_IMAGE_TYPE,
|
|
|
|
IDC_DISKCONV_DOS, IDH_DISKCONV_DOS,
|
|
|
|
IDC_DISKCONV_DOS2MG, IDH_DISKCONV_DOS2MG,
|
|
|
|
IDC_DISKCONV_PRODOS, IDH_DISKCONV_PRODOS,
|
|
|
|
IDC_DISKCONV_PRODOS2MG, IDH_DISKCONV_PRODOS2MG,
|
|
|
|
IDC_DISKCONV_NIB, IDH_DISKCONV_NIB,
|
|
|
|
IDC_DISKCONV_NIB2MG, IDH_DISKCONV_NIB2MG,
|
|
|
|
IDC_DISKCONV_D13, IDH_DISKCONV_D13,
|
|
|
|
IDC_DISKCONV_DC42, IDH_DISKCONV_DC42,
|
|
|
|
IDC_DISKCONV_SDK, IDH_DISKCONV_SDK,
|
|
|
|
IDC_DISKCONV_TRACKSTAR, IDH_DISKCONV_TRACKSTAR,
|
|
|
|
IDC_DISKCONV_HDV, IDH_DISKCONV_HDV,
|
|
|
|
IDC_DISKCONV_DDD, IDH_DISKCONV_DDD,
|
|
|
|
IDC_DISKCONV_GZIP, IDH_DISKCONV_GZIP,
|
|
|
|
IDC_DISKEDIT_NIBBLE_PARMS, IDH_DISKEDIT_NIBBLE_PARMS,
|
|
|
|
IDC_PROPS_PATHNAME, IDH_PROPS_PATHNAME,
|
|
|
|
IDC_PROPS_FILETYPE, IDH_PROPS_FILETYPE,
|
|
|
|
IDC_PROPS_AUXTYPE, IDH_PROPS_AUXTYPE,
|
|
|
|
IDC_PROPS_ACCESS_R, IDH_PROPS_ACCESS_R,
|
|
|
|
IDC_PROPS_ACCESS_W, IDH_PROPS_ACCESS_W,
|
|
|
|
IDC_PROPS_ACCESS_N, IDH_PROPS_ACCESS_N,
|
|
|
|
IDC_PROPS_ACCESS_D, IDH_PROPS_ACCESS_D,
|
|
|
|
IDC_PROPS_ACCESS_I, IDH_PROPS_ACCESS_I,
|
|
|
|
IDC_PROPS_ACCESS_B, IDH_PROPS_ACCESS_B,
|
|
|
|
IDC_PROPS_MODWHEN, IDH_PROPS_MODWHEN,
|
|
|
|
IDC_PROPS_TYPEDESCR, IDH_PROPS_TYPEDESCR,
|
|
|
|
1269, IDH_TOPIC1269,
|
|
|
|
IDC_CONVFILE_PRESERVEDIR, IDH_CONVFILE_PRESERVEDIR,
|
|
|
|
IDC_CONVDISK_140K, IDH_CONVDISK_140K,
|
|
|
|
IDC_CONVDISK_800K, IDH_CONVDISK_800K,
|
|
|
|
IDC_CONVDISK_1440K, IDH_CONVDISK_1440K,
|
|
|
|
IDC_CONVDISK_5MB, IDH_CONVDISK_5MB,
|
|
|
|
IDC_CONVDISK_16MB, IDH_CONVDISK_16MB,
|
|
|
|
IDC_CONVDISK_20MB, IDH_CONVDISK_20MB,
|
|
|
|
IDC_CONVDISK_32MB, IDH_CONVDISK_32MB,
|
|
|
|
IDC_CONVDISK_SPECIFY, IDH_CONVDISK_SPECIFY,
|
|
|
|
IDC_IMAGE_SIZE_TEXT, IDH_IMAGE_SIZE_TEXT,
|
|
|
|
IDC_BULKCONV_PATHNAME, IDH_BULKCONV_PATHNAME,
|
|
|
|
IDC_PREF_EXTVIEWER_EXTS, IDH_PREF_EXTVIEWER_EXTS,
|
|
|
|
IDC_VOLUME_LIST, IDH_VOLUME_LIST,
|
|
|
|
IDC_OPENVOL_READONLY, IDH_OPENVOL_READONLY,
|
|
|
|
IDC_VOLUMECOPYPROG_FROM, IDH_VOLUMECOPYPROG_FROM,
|
|
|
|
IDC_VOLUMECOPYPROG_TO, IDH_VOLUMECOPYPROG_TO,
|
|
|
|
IDC_VOLUMECOPYPROG_PROGRESS, IDH_VOLUMECOPYPROG_PROGRESS,
|
|
|
|
IDC_CONVDISK_SPECIFY_EDIT, IDH_CONVDISK_SPECIFY_EDIT,
|
|
|
|
IDC_CONVDISK_COMPUTE, IDH_CONVDISK_COMPUTE,
|
|
|
|
IDC_DEOW_FILE, IDH_DEOW_FILE,
|
|
|
|
IDC_CONVDISK_SPACEREQ, IDH_CONVDISK_SPACEREQ,
|
|
|
|
IDC_DEOW_VOLUME, IDH_DEOW_VOLUME,
|
|
|
|
IDC_DEOW_CURRENT, IDH_DEOW_CURRENT,
|
|
|
|
1306, IDH_TOPIC1306,
|
|
|
|
IDC_CONVDISK_VOLNAME, IDH_CONVDISK_VOLNAME,
|
|
|
|
IDC_VOLUME_FILTER, IDH_VOLUME_FILTER,
|
|
|
|
IDC_VOLUMECOPYSEL_LIST, IDH_VOLUMECOPYSEL_LIST,
|
|
|
|
IDC_VOLUEMCOPYSEL_TOFILE, IDH_VOLUEMCOPYSEL_TOFILE,
|
|
|
|
IDC_VOLUEMCOPYSEL_FROMFILE, IDH_VOLUEMCOPYSEL_FROMFILE,
|
|
|
|
IDC_CREATEFS_DOS32, IDH_CREATEFS_DOS32,
|
|
|
|
IDC_CREATEFS_DOS33, IDH_CREATEFS_DOS33,
|
|
|
|
IDC_CREATEFS_PRODOS, IDH_CREATEFS_PRODOS,
|
|
|
|
IDC_CREATEFS_PASCAL, IDH_CREATEFS_PASCAL,
|
|
|
|
IDC_CREATEFS_HFS, IDH_CREATEFS_HFS,
|
|
|
|
IDC_CREATEFS_BLANK, IDH_CREATEFS_BLANK,
|
|
|
|
1320, IDH_TOPIC1320,
|
|
|
|
IDC_CREATEFSDOS_ALLOCDOS, IDH_CREATEFSDOS_ALLOCDOS,
|
|
|
|
IDC_CREATEFSDOS_VOLNUM, IDH_CREATEFSDOS_VOLNUM,
|
|
|
|
IDC_CREATEFSPRODOS_VOLNAME, IDH_CREATEFSPRODOS_VOLNAME,
|
|
|
|
IDC_CREATEFSPASCAL_VOLNAME, IDH_CREATEFSPASCAL_VOLNAME,
|
|
|
|
IDC_ASPI_VERS_TEXT, IDH_ASPI_VERS_TEXT,
|
|
|
|
IDC_PREF_SUCCESS_BEEP, IDH_PREF_SUCCESS_BEEP,
|
|
|
|
IDC_ADD_TARGET_TREE, IDH_ADD_TARGET_TREE,
|
|
|
|
IDC_AIDISK_SUBVOLSEL, IDH_AIDISK_SUBVOLSEL,
|
|
|
|
IDC_AIDISK_NOTES, IDH_AIDISK_NOTES,
|
|
|
|
IDC_AI_FILENAME, IDH_AI_FILENAME,
|
|
|
|
IDC_AIBNY_RECORDS, IDH_AIBNY_RECORDS,
|
|
|
|
IDC_AINUFX_FORMAT, IDH_AINUFX_FORMAT,
|
|
|
|
IDC_AINUFX_RECORDS, IDH_AINUFX_RECORDS,
|
|
|
|
IDC_AINUFX_MASTERVERSION, IDH_AINUFX_MASTERVERSION,
|
|
|
|
IDC_AINUFX_CREATEWHEN, IDH_AINUFX_CREATEWHEN,
|
|
|
|
IDC_AINUFX_MODIFYWHEN, IDH_AINUFX_MODIFYWHEN,
|
|
|
|
IDC_AINUFX_JUNKSKIPPED, IDH_AINUFX_JUNKSKIPPED,
|
|
|
|
IDC_AIDISK_OUTERFORMAT, IDH_AIDISK_OUTERFORMAT,
|
|
|
|
IDC_AIDISK_FILEFORMAT, IDH_AIDISK_FILEFORMAT,
|
|
|
|
IDC_AIDISK_PHYSICALFORMAT, IDH_AIDISK_PHYSICALFORMAT,
|
|
|
|
IDC_AIDISK_SECTORORDER, IDH_AIDISK_SECTORORDER,
|
|
|
|
IDC_AIDISK_FSFORMAT, IDH_AIDISK_FSFORMAT,
|
|
|
|
IDC_AIDISK_FILECOUNT, IDH_AIDISK_FILECOUNT,
|
|
|
|
IDC_AIDISK_CAPACITY, IDH_AIDISK_CAPACITY,
|
|
|
|
IDC_AIDISK_FREESPACE, IDH_AIDISK_FREESPACE,
|
|
|
|
IDC_AIDISK_DAMAGED, IDH_AIDISK_DAMAGED,
|
|
|
|
IDC_AIDISK_WRITEABLE, IDH_AIDISK_WRITEABLE,
|
|
|
|
IDC_PDISK_CONFIRM_FORMAT, IDH_PDISK_CONFIRM_FORMAT,
|
|
|
|
IDC_PDISK_PRODOS_ALLOWLOWER, IDH_PDISK_PRODOS_ALLOWLOWER,
|
|
|
|
IDC_PDISK_PRODOS_USESPARSE, IDH_PDISK_PRODOS_USESPARSE,
|
|
|
|
IDC_FVIEW_PRINT, IDH_FVIEW_PRINT,
|
|
|
|
IDC_CREATESUBDIR_BASE, IDH_CREATESUBDIR_BASE,
|
|
|
|
IDC_CREATESUBDIR_NEW, IDH_CREATESUBDIR_NEW,
|
|
|
|
IDC_RENAMEVOL_TREE, IDH_RENAMEVOL_TREE,
|
|
|
|
IDC_RENAMEVOL_NEW, IDH_RENAMEVOL_NEW,
|
|
|
|
IDC_ADDFILES_CONVEOLNONE, IDH_ADDFILES_CONVEOLNONE,
|
|
|
|
IDC_ADDFILES_CONVEOLTEXT, IDH_ADDFILES_CONVEOLTEXT,
|
|
|
|
IDC_ADDFILES_CONVEOLALL, IDH_ADDFILES_CONVEOLALL,
|
|
|
|
IDC_ADDFILES_STATIC4, IDH_ADDFILES_STATIC4,
|
|
|
|
IDC_PROPS_CREATEWHEN, IDH_PROPS_CREATEWHEN,
|
|
|
|
IDC_EOLSCAN_CR, IDH_EOLSCAN_CR,
|
|
|
|
IDC_EOLSCAN_LF, IDH_EOLSCAN_LF,
|
|
|
|
IDC_EOLSCAN_CRLF, IDH_EOLSCAN_CRLF,
|
|
|
|
IDC_EOLSCAN_CHARS, IDH_EOLSCAN_CHARS,
|
|
|
|
IDC_PREF_PASTE_JUNKPATHS, IDH_PREF_PASTE_JUNKPATHS,
|
|
|
|
IDC_EXT_CONVEOLTYPE, IDH_EXT_CONVEOLTYPE,
|
|
|
|
IDC_ADDFILES_CONVEOLTYPE, IDH_ADDFILES_CONVEOLTYPE,
|
|
|
|
IDC_TWOIMG_LOCKED, IDH_TWOIMG_LOCKED,
|
|
|
|
IDC_TWOIMG_DOSVOLSET, IDH_TWOIMG_DOSVOLSET,
|
|
|
|
IDC_TWOIMG_DOSVOLNUM, IDH_TWOIMG_DOSVOLNUM,
|
|
|
|
IDC_TWOIMG_COMMENT, IDH_TWOIMG_COMMENT,
|
|
|
|
IDC_TWOIMG_CREATOR, IDH_TWOIMG_CREATOR,
|
|
|
|
IDC_TWOIMG_VERSION, IDH_TWOIMG_VERSION,
|
|
|
|
IDC_TWOIMG_FORMAT, IDH_TWOIMG_FORMAT,
|
|
|
|
IDC_TWOIMG_BLOCKS, IDH_TWOIMG_BLOCKS,
|
|
|
|
IDC_FVIEW_DATA, IDH_FVIEW_DATA,
|
|
|
|
IDC_FVIEW_RSRC, IDH_FVIEW_RSRC,
|
|
|
|
IDC_FVIEW_CMMT, IDH_FVIEW_CMMT,
|
|
|
|
IDC_FVIEW_FORMATSEL, IDH_FVIEW_FORMATSEL,
|
|
|
|
IDC_FVIEW_FMT_HEX, IDH_FVIEW_FMT_HEX,
|
|
|
|
IDC_FVIEW_FMT_RAW, IDH_FVIEW_FMT_RAW,
|
|
|
|
IDC_FVIEW_FMT_BEST, IDH_FVIEW_FMT_BEST,
|
|
|
|
IDC_PDISK_OPENVOL_RO, IDH_PDISK_OPENVOL_RO,
|
|
|
|
IDC_EOLSCAN_HIGHASCII, IDH_EOLSCAN_HIGHASCII,
|
|
|
|
IDC_CASSETTE_LIST, IDH_CASSETTE_LIST,
|
|
|
|
IDC_IMPORT_CHUNK, IDH_IMPORT_CHUNK,
|
|
|
|
IDC_CASSETTE_ALG, IDH_CASSETTE_ALG,
|
|
|
|
IDC_CASSETTE_INPUT, IDH_CASSETTE_INPUT,
|
|
|
|
IDC_CASSIMPTARG_FILENAME, IDH_CASSIMPTARG_FILENAME,
|
|
|
|
IDC_CASSIMPTARG_BAS, IDH_CASSIMPTARG_BAS,
|
|
|
|
IDC_CASSIMPTARG_INT, IDH_CASSIMPTARG_INT,
|
|
|
|
IDC_CASSIMPTARG_BIN, IDH_CASSIMPTARG_BIN,
|
|
|
|
IDC_CASSIMPTARG_BINADDR, IDH_CASSIMPTARG_BINADDR,
|
|
|
|
IDC_CASSIMPTARG_RANGE, IDH_CASSIMPTARG_RANGE,
|
|
|
|
IDC_CLASH_RENAME, IDH_CLASH_RENAME,
|
|
|
|
IDC_CLASH_SKIP, IDH_CLASH_SKIP,
|
|
|
|
IDC_CLASH_WINNAME, IDH_CLASH_WINNAME,
|
|
|
|
IDC_CLASH_STORAGENAME, IDH_CLASH_STORAGENAME,
|
|
|
|
IDC_PREF_REDUCE_SHK_ERROR_CHECKS, IDH_PREF_REDUCE_SHK_ERROR_CHECKS,
|
|
|
|
IDC_IMPORT_BAS_RESULTS, IDH_IMPORT_BAS_RESULTS,
|
|
|
|
IDC_IMPORT_BAS_SAVEAS, IDH_IMPORT_BAS_SAVEAS,
|
|
|
|
IDC_FVIEW_FIND, IDH_FVIEW_FIND,
|
|
|
|
IDC_CREATEFSHFS_VOLNAME, IDH_CREATEFSHFS_VOLNAME,
|
|
|
|
IDC_PROPS_HFS_FILETYPE, IDH_PROPS_HFS_FILETYPE,
|
|
|
|
IDC_PROPS_HFS_AUXTYPE, IDH_PROPS_HFS_AUXTYPE,
|
|
|
|
IDC_PROPS_HFS_MODE, IDH_PROPS_HFS_MODE,
|
|
|
|
IDC_PROPS_HFS_LABEL, IDH_PROPS_HFS_LABEL,
|
|
|
|
IDC_PASTE_SPECIAL_COUNT, IDH_PASTE_SPECIAL_COUNT,
|
|
|
|
IDC_PASTE_SPECIAL_PATHS, IDH_PASTE_SPECIAL_PATHS,
|
|
|
|
IDC_PASTE_SPECIAL_NOPATHS, IDH_PASTE_SPECIAL_NOPATHS,
|
|
|
|
IDC_PROGRESS_COUNTER_COUNT, IDH_PROGRESS_COUNTER_COUNT,
|
|
|
|
IDC_PROGRESS_COUNTER_DESC, IDH_PROGRESS_COUNTER_DESC,
|
|
|
|
IDC_PDISK_OPENVOL_PHYS0, IDH_PDISK_OPENVOL_PHYS0,
|
|
|
|
IDC_PREF_SHK_BAD_MAC, IDH_PREF_SHK_BAD_MAC,
|
|
|
|
0
|
|
|
|
};
|
|
|
|
|
|
|
|
/*static*/ BOOL MyApp::HandleHelpInfo(HELPINFO* lpHelpInfo)
|
|
|
|
{
|
|
|
|
CString path(gMyApp.m_pszHelpFilePath);
|
|
|
|
path += "::/PopUp.txt";
|
|
|
|
|
|
|
|
LOGD("HandleHelpInfo ID=%d", lpHelpInfo->iCtrlId);
|
|
|
|
::HtmlHelp((HWND) lpHelpInfo->hItemHandle, path,
|
|
|
|
HH_TP_HELP_WM_HELP, (DWORD) PopUpHelpIds);
|
|
|
|
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
/*static*/ void MyApp::HandleHelp(CWnd* pWnd, DWORD topicId)
|
|
|
|
{
|
2014-12-09 22:10:52 +00:00
|
|
|
// The CWnd#HtmlHelp() function is insisting on using the top-level
|
|
|
|
// parent, but if we do that with the Add Files custom file dialog
|
|
|
|
// then the help window pops up behind the app rather than in front.
|
WinHelp to HtmlHelp conversion, part 1
The original version of CiderPress used a WinHelp help file, built
with an application called HelpMatic Pro. This app used a proprietary
format, and had no facility for exporting to "raw" HPJ + RTF files, so
I decompiled the HLP and imported it into HelpScribble.
Using HelpScribble, I cleaned up the help file formatting a little,
fixed up the table of contents, and exported as "raw" HtmlHelp (HHP,
HHK, HHC, and a whole bunch of HTML). I also split the pop-up help
text, which isn't supported by HelpScribble, into a separate text file
that Microsoft's HTML Help Workshop understands.
I'm checking in the files that HTML Help Workshop needs to generate a
CHM, so anyone can update the help text. I'm also checking in the CHM
file, rather than adding the help workshop to the build, so that it's
not necessary to download and configure the help workshop to build
CiderPress.
This change adds all of the updated help, but only updates the Help and
question mark button actions for one specific dialog. A subsequent
change will update the rest of the dialogs.
This change is essentially upgrading us from a totally obsolete help
system to a nearly-obsolete help system, but the systems are similar
enough to make this a useful half-step on the way to something else.
The code will centralize help activation in a pair of functions in the
main app class, so any future improvements should be more limited in
scope.
This also adds a build step to copy the CHM to the execution directory.
2014-12-09 06:34:34 +00:00
|
|
|
CWnd* pParent = pWnd->GetTopLevelParent();
|
2014-12-09 22:10:52 +00:00
|
|
|
LOGD("HandleHelp ID=%lu pWnd=%p parent=%p", topicId, pWnd, pParent);
|
|
|
|
::HtmlHelp(pWnd->m_hWnd, gMyApp.m_pszHelpFilePath,
|
WinHelp to HtmlHelp conversion, part 1
The original version of CiderPress used a WinHelp help file, built
with an application called HelpMatic Pro. This app used a proprietary
format, and had no facility for exporting to "raw" HPJ + RTF files, so
I decompiled the HLP and imported it into HelpScribble.
Using HelpScribble, I cleaned up the help file formatting a little,
fixed up the table of contents, and exported as "raw" HtmlHelp (HHP,
HHK, HHC, and a whole bunch of HTML). I also split the pop-up help
text, which isn't supported by HelpScribble, into a separate text file
that Microsoft's HTML Help Workshop understands.
I'm checking in the files that HTML Help Workshop needs to generate a
CHM, so anyone can update the help text. I'm also checking in the CHM
file, rather than adding the help workshop to the build, so that it's
not necessary to download and configure the help workshop to build
CiderPress.
This change adds all of the updated help, but only updates the Help and
question mark button actions for one specific dialog. A subsequent
change will update the rest of the dialogs.
This change is essentially upgrading us from a totally obsolete help
system to a nearly-obsolete help system, but the systems are similar
enough to make this a useful half-step on the way to something else.
The code will centralize help activation in a pair of functions in the
main app class, so any future improvements should be more limited in
scope.
This also adds a build step to copy the CHM to the execution directory.
2014-12-09 06:34:34 +00:00
|
|
|
HH_HELP_CONTEXT, topicId);
|
|
|
|
}
|