📄 importwiz.c
字号:
pgTarget.Info.System.Import.Filter$ = s_strFilterFileSaved;
/// end USE_SAME_FILTER_FOR_MULTI_FILES_ON_FILEOPEN_AND_DRAGDROP
if( s_iActivePageType == EXIST_PLOT )
IW_PlotToActiveGraph(pgTarget, nFile); // Argument is 0 based index of file number until multiple files is implemented
}
/// EJP 09-16-2003 v7.5696 QA70-4575 UPDATE_PLOT_LEGEND
if( s_iActivePageType == EXIST_PLOT )
pgActive.LT_execute("Label -p 75 5 -B 0; Legend -s;");
/// end UPDATE_PLOT_LEGEND
if( IS_DATAFROM_CLIPBOARD )
DeleteFile(s_strDataFile); // delete temporary file
return TRUE;
}
static BOOL OnClickCancel()
{
DISABLE_CLICKED_FINISH;
if( !s_strWks.IsEmpty() )
{
#ifndef IW_DEBUG
Worksheet wks(s_strWks);
wks.Destroy();
#endif // !IW_DEBUG
s_strWks.Empty();
}
if( IS_DATAFROM_CLIPBOARD )
DeleteFile(s_strDataFile); // delete temporary file
return TRUE;
}
static BOOL OnDestroyDialog()
{
return TRUE;
}
static BOOL OnWksCtrlChangeColTypeOrDesignation(DWORD iCtrlID, LONG iColIndex)
{
int iPageID;
if( IDC_COL_WKS_PREVIEW == iCtrlID )
iPageID = IDD_AIW_COLUMNS;
else if( IDC_RANGE_PREVIEW == iCtrlID )
iPageID = IDD_IW_RANGE;
else
/// JCG 06/11/03 QA70-4575 v7.0600 FIX_ITEM32
/// return FALSE; // unknown wks ctrl
if( IDC_BIW_DATAPATERN_PREVIEW_LC == iCtrlID )
iPageID = IDD_BIW_DATAPATERN;
else
{
ASSERT(FALSE);
return FALSE;
}
/// end FIX_ITEM32
Worksheet wks(s_strWks);
if( !wks )
return FALSE;
fuSetDesignations(s_trFilter, wks.GetColDesignations());
fuSetFormats(s_trFilter, wks.GetColFormats());
/// EJP 08-19-2003 v7.5667 REIMPORT_AFTER_USER_CHANGE_COL_FORMAT
///UpdateWksCtrl(iPageID); // do not re-import, just update wks ctrl
UpdatePreview(iPageID);
/// end REIMPORT_AFTER_USER_CHANGE_COL_FORMAT
return TRUE;
}
//--------------------------------------------------------------------------
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
// Data Source Page
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
//--------------------------------------------------------------------------
static BOOL Source_OnInit()
{
LPCSTR lpcszDataFile;
Control pgSource = ImportWizDlg.GetItem(IDD_IW_SOURCE);
Edit editFileName = ImportWizDlg.GetItem(IDC_SOURCE_FILENAME, IDD_IW_SOURCE);
if( IS_DATAFROM_CLIPBOARD )
{
pgSource.CheckRadioButton(IDC_SOURCE_FILE, IDC_SOURCE_CLIPBOARD, IDC_SOURCE_CLIPBOARD);
editFileName.Text = "";
lpcszDataFile = NULL;
}
else
{
pgSource.CheckRadioButton(IDC_SOURCE_FILE, IDC_SOURCE_CLIPBOARD, IDC_SOURCE_FILE);
editFileName.Text = s_strDataFile;
lpcszDataFile = s_strDataFile;
}
ComboBox cbWksTemplate = ImportWizDlg.GetItem(IDC_TARGET_WKS_TEMPLATE, IDD_IW_SOURCE);
InitComboBoxWithTemplateNames(cbWksTemplate, EXIST_WKS);
///ComboBox cbMatrixTemplate = ImportWizDlg.GetItem(IDC_TARGET_MATRIX_TEMPLATE, IDD_IW_SOURCE);
///InitComboBoxWithTemplateNames(cbMatrixTemplate, EXIST_MATRIX);
Source_UpdateFilter(FALSE);
Source_EnableDataSourceCtrls();
Source_EnableTargetWindowCtrls();
Source_UpdateButtons();
Button chkCompatibleFilters = ImportWizDlg.GetItem(IDC_DISPLAY_ONLY_COMPATIBLE_CHK, IDD_IW_SOURCE);
chkCompatibleFilters.Check = 1;
Source_UpdateFilterComboBox();
Source_LoadCurSelFilter();
return TRUE;
}
static BOOL Source_OnActive()
{
Source_UpdateButtons();
return TRUE;
}
static BOOL Source_OnKillActive()
{
Source_UpdateFilter();
/// EJP 08-15-2003 v7.5661 QA70-4073.58 CLEAN_IMPORT_FROM_CLIPBOARD
/*
if( IS_DATAFROM_CLIPBOARD )
{
// Copy clipboard text into local string
string strClipboardText;
GetClipboardText(strClipboardText);
// Get a temporary file name
AIW_GetTempFileName(s_strDataFile);
// Write clipboard text to temporary file
stdioFile filTemp(s_strDataFile, file::modeCreate | file::modeWrite | file::shareExclusive | file::typeText );
filTemp.WriteString(strClipboardText);
filTemp.Close();
}
else // Data is from a file
{
Edit editFileName = ImportWizDlg.GetItem(IDC_SOURCE_FILENAME, IDD_IW_SOURCE);
s_strDataFile = editFileName.Text;
}
*/
/// end CLEAN_IMPORT_FROM_CLIPBOARD
////////////////////////////////////////////////////////////////////////
// Create a worksheet
////////////////////////////////////////////////////////////////////////
Worksheet wks;
if( !s_strWks.IsEmpty() )
{
// If we already created a wks then delete it
wks.Attach(s_strWks);
wks.Destroy();
s_strWks.Empty();
}
#ifdef IW_DEBUG
int nOption = CREATE_VISIBLE;
#else // !IW_DEBUG
int nOption = CREATE_HIDDEN;
#endif // !IW_DEBUG
ComboBox comboTemplate = ImportWizDlg.GetItem(IDC_TARGET_WKS_TEMPLATE);
if( comboTemplate.GetCurSel() == 0 )
wks.Create(NULL, nOption);
else
{
string strTemplate = comboTemplate.Text + ".otw";
wks.Create(strTemplate, nOption);
}
wks.GetPage().GetName(s_strWks);
BOOL bFilterRepetitive = fuGetRepetitive(s_trFilter);
wks.SetColDesignations(fuGetDesignations(s_trFilter), bFilterRepetitive);
wks.SetColFormats(fuGetFormats(s_trFilter), bFilterRepetitive);
if( EXIST_PLOT == s_iActivePageType )
{
s_vPlottingLayers.SetSize(0);
for( int i = 0; i < s_saDataFiles.GetSize(); i++ )
s_vPlottingLayers.Add(0); // 0=first layer
}
return TRUE;
}
///////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////// Data Type functions
///////////////////////////////////////////////////////////
static BOOL Source_OnClickDataType(Control Cntrl)
{
Control pgSource = ImportWizDlg.GetItem(IDD_IW_SOURCE);
int iType = pgSource.GetCheckedRadioButton(IDC_DATATYPE_ASCII, IDC_DATATYPE_USERDEF) - IDC_DATATYPE_ASCII;
s_trFilter.Type.nVal = iType;
Source_EnableDataSourceCtrls();
Source_EnableTargetWindowCtrls();
Source_UpdateFilterComboBox();
Source_LoadCurSelFilter();
Source_UpdateTargetWindowTemplateList();
Source_UpdateButtons();
return TRUE;
}
///////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////// Data Source functions
///////////////////////////////////////////////////////////
static BOOL Source_OnClickDataFrom(Control ctrl)
{
/// EJP 08-15-2003 v7.5661 QA70-4073.58 CLEAN_IMPORT_FROM_CLIPBOARD
if( IS_DATAFROM_CLIPBOARD )
DeleteFile(s_strDataFile); // delete temporary file
/// end CLEAN_IMPORT_FROM_CLIPBOARD
Button radioClipboard = ImportWizDlg.GetItem(IDC_SOURCE_CLIPBOARD, IDD_IW_SOURCE);
if( radioClipboard.Check )
{
SET_DATAFROM_CLIPBOARD;
/// EJP 08-15-2003 v7.5661 QA70-4073.58 CLEAN_IMPORT_FROM_CLIPBOARD
// Copy clipboard text into local string
string strClipboardText;
GetClipboardText(strClipboardText);
// Get a temporary file name
AIW_GetTempFileName(s_strDataFile);
// Write clipboard text to temporary file
stdioFile filTemp(s_strDataFile, file::modeCreate | file::modeWrite | file::shareExclusive | file::typeText );
filTemp.WriteString(strClipboardText);
filTemp.Close();
/// end CLEAN_IMPORT_FROM_CLIPBOARD
}
else
{
SET_DATAFROM_FILE;
/// EJP 08-15-2003 v7.5661 QA70-4073.58 CLEAN_IMPORT_FROM_CLIPBOARD
Edit editFileName = ImportWizDlg.GetItem(IDC_SOURCE_FILENAME, IDD_IW_SOURCE);
s_strDataFile = editFileName.Text;
/// end CLEAN_IMPORT_FROM_CLIPBOARD
}
Source_EnableFileCtrls(IS_DATAFROM_FILE);
Source_UpdateFilterComboBox();
Source_LoadCurSelFilter();
Source_UpdateButtons();
return TRUE;
}
static void Source_EnableFileCtrls(BOOL bEnable=true)
{
Edit ebFileName = ImportWizDlg.GetItem(IDC_SOURCE_FILENAME, IDD_IW_SOURCE);
ebFileName.Enable = bEnable;
Button btnBrowse = ImportWizDlg.GetItem(IDC_SOURCE_BROWSE, IDD_IW_SOURCE);
btnBrowse.Enable = bEnable;
Button chkRenameWks = ImportWizDlg.GetItem(IDC_IW_SOURCE_RENAMEWKS, IDD_IW_SOURCE);
chkRenameWks.Enable = bEnable;
Button chkFileNameToWksLabel = ImportWizDlg.GetItem(IDC_IW_FILENAME_TO_WKSLABEL, IDD_IW_SOURCE);
chkFileNameToWksLabel.Enable = bEnable;
}
static void Source_EnableDataSourceCtrls()
{
Control pgSource = ImportWizDlg.GetItem(IDD_IW_SOURCE);
Button radClipboard = ImportWizDlg.GetItem(IDC_SOURCE_CLIPBOARD, IDD_IW_SOURCE);
int iDataType = pgSource.GetCheckedRadioButton(IDC_DATATYPE_ASCII, IDC_DATATYPE_USERDEF);
if( IDC_DATATYPE_BINARY == iDataType )
{
pgSource.CheckRadioButton(IDC_SOURCE_FILE, IDC_SOURCE_CLIPBOARD, IDC_SOURCE_FILE);
SET_DATAFROM_FILE;
radClipboard.Enable = false;
}
else
radClipboard.Enable = true;
int iDataSource = pgSource.GetCheckedRadioButton(IDC_SOURCE_FILE, IDC_SOURCE_CLIPBOARD);
Source_EnableFileCtrls(IDC_SOURCE_FILE == iDataSource);
}
static BOOL Source_OnClickBrowse(Control ctrl)
{
ENABLE_ON_BROWSE_SOURCE; /// EJP 10-16-2003 v7.5722 QA70-5289.7 UPDATE_SOURCE_FILE_ON_EDIT_CHANGE
Control pgSource = ImportWizDlg.GetItem(IDD_IW_SOURCE);
int nDataType = pgSource.GetCheckedRadioButton(IDC_DATATYPE_ASCII, IDC_DATATYPE_USERDEF);
nDataType -= IDC_DATATYPE_ASCII;
StringArray saDataFiles;
if( GetMultiOpenBox(saDataFiles, nDataType + FDLOG_FILTER_ASCII) )
{
s_saDataFiles = saDataFiles;
Edit editFileName = ImportWizDlg.GetItem(IDC_SOURCE_FILENAME, IDD_IW_SOURCE);
editFileName.Text = s_saDataFiles[0];
/// EJP 06-26-2003: setting editFileName.Text will trigger a call to Source_OnChangeFileName
///Source_UpdateButtons();
///Source_SelectFilterOnChangeFileName();
}
DISABLE_ON_BROWSE_SOURCE; /// EJP 10-16-2003 v7.5722 QA70-5289.7 UPDATE_SOURCE_FILE_ON_EDIT_CHANGE
return TRUE;
}
static BOOL Source_OnChangeFileName(Control ctrl)
{
/// EJP 10-16-2003 v7.5722 QA70-5289.7 UPDATE_SOURCE_FILE_ON_EDIT_CHANGE
if( !IS_ON_BROWSE_SOURCE )
{
Edit editFileName = ImportWizDlg.GetItem(IDC_SOURCE_FILENAME, IDD_IW_SOURCE);
s_saDataFiles[0] = editFileName.Text;
}
/// end UPDATE_SOURCE_FILE_ON_EDIT_CHANGE
Source_UpdateButtons();
Source_UpdateFilterComboBox();
Source_LoadCurSelFilter();
return TRUE;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -