ciderpress/app/ExtractOptionsDialog.h
Andy McFadden d8223dbcfd Relocate method comments
This moves method comments from the .cpp file to the .h file,
where users of the methods can find them.  This also makes it
possible for the IDE to show the comments when you mouse-hover over
the method name, though Visual Studio is a bit weak in this regard.

Also, added "override" keywords on overridden methods.  Reasonably
current versions of popular compilers seem to support this.

Also, don't have the return type on a separate line in the .cpp file.
The motivation for the practice -- quickly finding a method definition
with "^name" -- is less useful in C++ than C, and modern IDEs provide
more convenient ways to do the same thing.

Also, do some more conversion from unsigned types to uintXX_t.

This commit is primarily for the "app" directory.
2014-11-21 22:33:39 -08:00

108 lines
2.9 KiB
C++

/*
* CiderPress
* Copyright (C) 2007 by faddenSoft, LLC. All Rights Reserved.
* See the file LICENSE for distribution terms.
*/
/*
* Choose options related to file extraction.
*/
#ifndef APP_EXTRACTOPTIONSDIALOG_H
#define APP_EXTRACTOPTIONSDIALOG_H
#include "../util/UtilLib.h"
#include "resource.h"
/*
* Our somewhat complicated extraction options dialog.
*/
class ExtractOptionsDialog : public CDialog {
public:
ExtractOptionsDialog(int selCount, CWnd* pParentWnd = NULL) :
CDialog(IDD_EXTRACT_FILES, pParentWnd), fSelectedCount(selCount)
{
// init values; these should be overridden before DoModal
fExtractPath = "";
fFilesToExtract = 0;
fConvEOL = 0;
fConvHighASCII = FALSE;
fIncludeDataForks = fIncludeRsrcForks = fIncludeDiskImages = FALSE;
fEnableReformat = fDiskTo2MG = FALSE;
fAddTypePreservation = fAddExtension = fStripFolderNames = FALSE;
fOverwriteExisting = FALSE;
}
virtual ~ExtractOptionsDialog(void) {
//LOGI("~ExtractOptionsDialog()");
}
CString fExtractPath;
enum { kExtractSelection = 0, kExtractAll = 1 };
int fFilesToExtract;
// enum { kPreserveNone = 0, kPreserveTypes, kPreserveAndExtend };
// int fTypePreservation;
// this must match tab order of radio buttons in dialog
enum { kConvEOLNone = 0, kConvEOLType, kConvEOLAuto, kConvEOLAll };
int fConvEOL;
BOOL fConvHighASCII;
// enum { kDiskImageNoExtract = 0, kDiskImageAsPO = 1, kDiskImageAs2MG };
// int fDiskImageExtract;
BOOL fIncludeDataForks;
BOOL fIncludeRsrcForks;
BOOL fIncludeDiskImages;
BOOL fEnableReformat;
BOOL fDiskTo2MG;
BOOL fAddTypePreservation;
BOOL fAddExtension;
BOOL fStripFolderNames;
BOOL fOverwriteExisting;
bool ShouldTryReformat(void) const {
return fEnableReformat != 0;
}
private:
virtual BOOL OnInitDialog(void) override;
virtual void DoDataExchange(CDataExchange* pDX) override;
/*
* Reconfigure controls for best preservation of Apple II formats.
*/
afx_msg void OnConfigPreserve(void);
/*
* Reconfigure controls for easiest viewing under Windows.
*/
afx_msg void OnConfigConvert(void);
/*
* Enable or disable the "Convert high ASCII" button based on the current
* setting of the radio button above it.
*/
afx_msg void OnChangeTextConv(void);
/*
* They want to choose the folder from a tree.
*/
afx_msg void OnChooseFolder(void);
// Context help request (question mark button).
afx_msg BOOL OnHelpInfo(HELPINFO* lpHelpInfo);
// User pressed the "Help" button.
afx_msg void OnHelp(void);
MyBitmapButton fChooseFolderButton;
int fSelectedCount;
DECLARE_MESSAGE_MAP()
};
#endif /*APP_EXTRACTOPTIONSDIALOG_H*/