00001
00002
00003
00004
00005 #include "WriteFilesDLG.h"
00006
00007
00008 #ifdef _DEBUG
00009 #define new DEBUG_NEW
00010 #undef THIS_FILE
00011 static char THIS_FILE[] = __FILE__;
00012 #endif
00013
00014
00015 using namespace jbxwl;
00016
00017
00019
00020
00021 CWriteFilesDLG::CWriteFilesDLG(LPCTSTR fname, int fmt, int fnum, int tnum, CWnd* pParent )
00022 : CDialog(CWriteFilesDLG::IDD, pParent)
00023 {
00024
00025
00026
00027
00028 fmtsCMBBox = NULL;
00029 fnameEBox = NULL;
00030 fromNumEBox = NULL;
00031 toNumEBox = NULL;
00032 mltSaveCBtn = NULL;
00033
00034 pWnd = pParent;
00035 fName = fname;
00036 format = fmt;
00037 fromNum = fnum;
00038 toNum = tnum;
00039 mltSave = FALSE;
00040 zSize = abs(tnum - fnum) + 1;
00041 }
00042
00043
00044
00045 CWriteFilesDLG::~CWriteFilesDLG()
00046 {
00047 }
00048
00049
00050
00051 void CWriteFilesDLG::DoDataExchange(CDataExchange* pDX)
00052 {
00053 CDialog::DoDataExchange(pDX);
00054
00055
00056
00057 }
00058
00059
00060
00061 BEGIN_MESSAGE_MAP(CWriteFilesDLG, CDialog)
00062
00063
00064 ON_CBN_SELCHANGE(IDC_WF_FORMATS, &CWriteFilesDLG::OnCbnSelchangeWfFormats)
00065 ON_BN_CLICKED(IDC_WF_MFL, &CWriteFilesDLG::OnBnClickedWfMfl)
00066 END_MESSAGE_MAP()
00067
00068
00069
00071
00072
00073 BOOL CWriteFilesDLG::OnInitDialog()
00074 {
00075 TCHAR buf[LNAME];
00076
00077
00078 fmtsCMBBox = (CComboBox*)GetDlgItem(IDC_WF_FORMATS);
00079 fnameEBox = (CEdit*)GetDlgItem(IDC_WF_FNAME);
00080 fromNumEBox = (CEdit*)GetDlgItem(IDC_WF_FROMNUM);
00081 toNumEBox = (CEdit*)GetDlgItem(IDC_WF_TONUM);
00082 mltSaveCBtn = (CButton*)GetDlgItem(IDC_WF_MFL);
00083
00084
00085 fmtsCMBBox->AddString(_T(CT_DATA_STR));
00086 fmtsCMBBox->AddString(_T(MOON_DATA_STR));
00087 fmtsCMBBox->AddString(_T(JPEG_RGB_DATA_STR));
00088 fmtsCMBBox->AddString(_T(JPEG_MONO_DATA_STR));
00089 fmtsCMBBox->AddString(_T(RAS_DATA_STR));
00090
00091 CString fmtStr = _T(CT_DATA_STR);
00092 if (format==CT_DATA) fmtStr = _T(CT_DATA_STR);
00093 else if (format==CT_3DM) fmtStr = _T(CT_DATA_STR);
00094 else if (format==MOON_DATA) fmtStr = _T(MOON_DATA_STR);
00095 else if (format==JPEG_RGB_DATA) fmtStr = _T(JPEG_RGB_DATA_STR);
00096 else if (format==JPEG_MONO_DATA) fmtStr = _T(JPEG_MONO_DATA_STR);
00097 else if (format==RAS_DATA) fmtStr = _T(RAS_DATA_STR);
00098
00099
00100
00101 fmtsCMBBox->SelectString(-1, fmtStr);
00102 setDLGState((LPCTSTR)fmtStr);
00103 setNumBoxState();
00104
00105
00106 if (fName!=_T("")) fnameEBox->SetWindowText(fName);
00107
00108 sntprintf(buf, LNAME, _T("%d"), fromNum);
00109 fromNumEBox->SetWindowText(buf);
00110
00111 sntprintf(buf, LNAME, _T("%d"), toNum);
00112 toNumEBox->SetWindowText(buf);
00113
00114 mltSaveCBtn->SetCheck(0);
00115
00116 return TRUE;
00117 }
00118
00119
00120
00121
00122
00123
00124
00125
00126
00127
00128
00129
00130
00131 void CWriteFilesDLG::OnOK()
00132 {
00133 TCHAR buf[LNAME];
00134
00135
00136 fnameEBox->GetWindowText(buf, LNAME);
00137 fName = buf;
00138
00139 fromNumEBox->GetWindowText(buf, LNAME);
00140 fromNum = ttoi(buf);
00141
00142 toNumEBox->GetWindowText(buf, LNAME);
00143 toNum = ttoi(buf);
00144
00145
00146 this->OnCbnSelchangeWfFormats();
00147
00148
00149 if (!mltSave && zSize>1) {
00150 if (format==CT_DATA) format = CT_3DM;
00151 }
00152
00153 CDialog::OnOK();
00154 }
00155
00156
00157
00158 void CWriteFilesDLG::OnCbnSelchangeWfFormats()
00159 {
00160 TCHAR buf[LNAME];
00161 fmtsCMBBox->GetWindowText(buf, LNAME);
00162
00163 setDLGState(buf);
00164 setNumBoxState();
00165 }
00166
00167
00168
00169 void CWriteFilesDLG::setDLGState(LPCTSTR str)
00170 {
00171 if (zSize==1) {
00172 mltSaveCBtn->EnableWindow(FALSE);
00173 mltSaveCBtn->SetCheck(0);
00174 mltSave = FALSE;
00175 }
00176
00177 if (!tcscmp(str,_T(CT_DATA_STR))) {
00178 if (zSize>1) {
00179 mltSaveCBtn->EnableWindow(TRUE);
00180 }
00181 format = CT_DATA;
00182 }
00183
00184
00185 else if (!tcscmp(str,_T(MOON_DATA_STR))) {
00186 if (zSize>1) {
00187 mltSaveCBtn->EnableWindow(FALSE);
00188 mltSaveCBtn->SetCheck(1);
00189 mltSave = TRUE;
00190 }
00191 format = MOON_DATA;
00192 }
00193 else if (!tcscmp(str,_T(RAS_DATA_STR))) {
00194 if (zSize>1) {
00195 mltSaveCBtn->EnableWindow(FALSE);
00196 mltSaveCBtn->SetCheck(1);
00197 mltSave = TRUE;
00198 }
00199 format = RAS_DATA;
00200 }
00201 else if (!tcscmp(str,_T(JPEG_MONO_DATA_STR))) {
00202 if (zSize>1) {
00203 mltSaveCBtn->EnableWindow(FALSE);
00204 mltSave = TRUE;
00205 mltSaveCBtn->SetCheck(1);
00206 }
00207 format = JPEG_MONO_DATA;
00208 }
00209 else if (!tcscmp(str,_T(JPEG_RGB_DATA_STR))){
00210 mltSaveCBtn->EnableWindow(FALSE);
00211 mltSaveCBtn->SetCheck(0);
00212 mltSave = FALSE;
00213 format = JPEG_RGB_DATA;
00214 }
00215 else {
00216 if (zSize>1) {
00217 mltSaveCBtn->EnableWindow(FALSE);
00218 mltSaveCBtn->SetCheck(1);
00219 mltSave = FALSE;
00220 }
00221 format = UN_KNOWN_DATA;
00222 }
00223 }
00224
00225
00226
00227 void CWriteFilesDLG::setNumBoxState(){
00228
00229 if (mltSaveCBtn->GetCheck()==1) {
00230 fromNumEBox->EnableWindow(TRUE);
00231 toNumEBox->EnableWindow(TRUE);
00232 mltSave = TRUE;
00233 }
00234 else {
00235 fromNumEBox->EnableWindow(FALSE);
00236 toNumEBox->EnableWindow(FALSE);
00237 mltSave = FALSE;
00238 }
00239 }
00240
00241
00242
00243 void CWriteFilesDLG::OnBnClickedWfMfl()
00244 {
00245 setNumBoxState();
00246 }
00247