// CodeGear C++Builder
// Copyright (c) 1995, 2020 by Embarcadero Technologies, Inc.
// All rights reserved

// (DO NOT EDIT: machine generated header) 'QImport3Common.pas' rev: 34.00 (Windows)

#ifndef Qimport3commonHPP
#define Qimport3commonHPP

#pragma delphiheader begin
#pragma option push
#pragma option -w-      // All warnings off
#pragma option -Vx      // Zero-length empty class member 
#pragma pack(push,8)
#include <System.hpp>
#include <SysInit.hpp>
#include <System.WideStrings.hpp>
#include <System.Classes.hpp>
#include <System.IniFiles.hpp>
#include <System.SysUtils.hpp>
#include <System.Variants.hpp>
#include <System.UITypes.hpp>
#include <Data.DB.hpp>
#include <Winapi.Windows.hpp>
#include <System.NetEncoding.hpp>
#include <Vcl.Graphics.hpp>
#include <Vcl.Grids.hpp>
#include <Vcl.Controls.hpp>
#include <Vcl.DBGrids.hpp>
#include <Vcl.ComCtrls.hpp>
#include <QImport3XLSMapParser.hpp>
#include <QImport3StrTypes.hpp>
#include <QImport3XLSUtils.hpp>
#include <QImport3StrIDs.hpp>
#include <QImport3WideStrUtils.hpp>

//-- user supplied -----------------------------------------------------------

namespace Qimport3common
{
//-- forward type declarations -----------------------------------------------
class DELPHICLASS TQImportLocale;
class DELPHICLASS EQImportError;
//-- type declarations -------------------------------------------------------
typedef System::StaticArray<System::UnicodeString, 12> Qimport3common__1;

typedef System::StaticArray<System::UnicodeString, 12> Qimport3common__2;

typedef void __fastcall (__closure *TLocalizeEvent)(int StringID, System::UnicodeString &ResultString);

class PASCALIMPLEMENTATION TQImportLocale : public System::TObject
{
	typedef System::TObject inherited;
	
private:
	unsigned FDllHandle;
	bool FLoaded;
	TLocalizeEvent FOnLocalize;
	bool FIDEMode;
	
public:
	__fastcall TQImportLocale();
	System::UnicodeString __fastcall LoadStr(int ID);
	void __fastcall LoadDll(const System::UnicodeString Name);
	void __fastcall UnloadDll();
	__property TLocalizeEvent OnLocalize = {read=FOnLocalize, write=FOnLocalize};
public:
	/* TObject.Destroy */ inline __fastcall virtual ~TQImportLocale() { }
	
};


enum DECLSPEC_DENUM TQImportDestination : unsigned char { qidDataSet, qidDBGrid, qidListView, qidStringGrid, qidUserDefined };

enum DECLSPEC_DENUM TAllowedImport : unsigned char { aiXLS, aiDBF, aiXML, aiTXT, aiCSV, aiMDB, aiHTML, aiXMLDoc, aiXlsx, aiDocx, aiODS, aiODT, aiACCDB };

typedef System::Set<TAllowedImport, TAllowedImport::aiXLS, TAllowedImport::aiACCDB> TAllowedImports;

class PASCALIMPLEMENTATION EQImportError : public System::Sysutils::Exception
{
	typedef System::Sysutils::Exception inherited;
	
public:
	/* Exception.Create */ inline __fastcall EQImportError(const System::UnicodeString Msg) : System::Sysutils::Exception(Msg) { }
	/* Exception.CreateFmt */ inline __fastcall EQImportError(const System::UnicodeString Msg, const System::TVarRec *Args, const int Args_High) : System::Sysutils::Exception(Msg, Args, Args_High) { }
	/* Exception.CreateRes */ inline __fastcall EQImportError(NativeUInt Ident)/* overload */ : System::Sysutils::Exception(Ident) { }
	/* Exception.CreateRes */ inline __fastcall EQImportError(System::PResStringRec ResStringRec)/* overload */ : System::Sysutils::Exception(ResStringRec) { }
	/* Exception.CreateResFmt */ inline __fastcall EQImportError(NativeUInt Ident, const System::TVarRec *Args, const int Args_High)/* overload */ : System::Sysutils::Exception(Ident, Args, Args_High) { }
	/* Exception.CreateResFmt */ inline __fastcall EQImportError(System::PResStringRec ResStringRec, const System::TVarRec *Args, const int Args_High)/* overload */ : System::Sysutils::Exception(ResStringRec, Args, Args_High) { }
	/* Exception.CreateHelp */ inline __fastcall EQImportError(const System::UnicodeString Msg, int AHelpContext) : System::Sysutils::Exception(Msg, AHelpContext) { }
	/* Exception.CreateFmtHelp */ inline __fastcall EQImportError(const System::UnicodeString Msg, const System::TVarRec *Args, const int Args_High, int AHelpContext) : System::Sysutils::Exception(Msg, Args, Args_High, AHelpContext) { }
	/* Exception.CreateResHelp */ inline __fastcall EQImportError(NativeUInt Ident, int AHelpContext)/* overload */ : System::Sysutils::Exception(Ident, AHelpContext) { }
	/* Exception.CreateResHelp */ inline __fastcall EQImportError(System::PResStringRec ResStringRec, int AHelpContext)/* overload */ : System::Sysutils::Exception(ResStringRec, AHelpContext) { }
	/* Exception.CreateResFmtHelp */ inline __fastcall EQImportError(System::PResStringRec ResStringRec, const System::TVarRec *Args, const int Args_High, int AHelpContext)/* overload */ : System::Sysutils::Exception(ResStringRec, Args, Args_High, AHelpContext) { }
	/* Exception.CreateResFmtHelp */ inline __fastcall EQImportError(NativeUInt Ident, const System::TVarRec *Args, const int Args_High, int AHelpContext)/* overload */ : System::Sysutils::Exception(Ident, Args, Args_High, AHelpContext) { }
	/* Exception.Destroy */ inline __fastcall virtual ~EQImportError() { }
	
};


typedef void __fastcall (__closure *TQImportFillFieldsListCallback)(Vcl::Comctrls::TListItem* &Item, TAllowedImport ImportType);

typedef System::Set<char, _DELPHI_SET_CHAR(0), _DELPHI_SET_CHAR(255)> TSysCharSet;

//-- var, const, procedure ---------------------------------------------------
#define QI_ABOUT L"(About Advanced Data Import VCL)"
#define QI_REG_URL L"http://www.sqlmanager.net/products/tools/advancedimport/bu"\
	L"y"
#define QI_WIZARD_HELP L"AImportWizard.hlp"
#define QI_FULL_PRODUCT_NAME L"Advanced Data Import VCL"
#define QI_COPYRIGHT "� 1999-2020 EMS Software Development. All rights reserve"\
	"d."
#define QI_VERSION_NUMBER L"3.12.0.0"
#define QI_VERSION L"Registered version"
#define QIW_FIRST_STEP L"FIRST_STEP"
#define QIW_FILE_NAME L"FileName"
#define QIW_IMPORT_TYPE L"ImportType"
#define QIW_GO_TO_LAST_PAGE L"GoToLastPage"
#define QIW_AUTO_SAVE_TEMPLATE L"AutoSaveTemplate"
#define QIW_SKIP_INVISIBLE_COLUMNS L"SkipInvisibleColumns"
#define QIW_XLSX_MAP L"XLSX_MAP"
#define QIW_XLSX_OPTIONS L"XLSX_OPTIONS"
#define QIW_XLSX_SKIP_LINES L"SkipLines"
#define QIW_XLSX_SHEET_NAME L"SheetName"
#define QIW_XLSX_NEED_FILLMERGE L"NeedFillMerge"
#define QIW_XLSX_LOAD_HIDDENSHEET L"LoadHiddenSheet"
#define QIW_DOCX_MAP L"DOCX_MAP"
#define QIW_DOCX_SKIP_LINES L"SkipLines"
#define QIW_DOCX_TABLE_NUMBER L"TableNumber"
#define QIW_DOCX_OPTIONS L"DOCX_OPTIONS"
#define QIW_ODS_MAP L"ODS_MAP"
#define QIW_ODS_OPTIONS L"ODS_OPTIONS"
#define QIW_ODS_SKIP_LINES L"SkipLines"
#define QIW_ODS_SHEET_NAME L"SheetName"
#define QIW_ODT_MAP L"ODT_MAP"
#define QIW_ODT_OPTIONS L"ODT_OPTIONS"
#define QIW_ODT_SKIP_LINES L"SkipLines"
#define QIW_ODT_SHEET_NAME L"SheetName"
#define QIW_ODT_USE_HEADER L"UseHeader"
#define QIW_XLS_MAP L"XLS_MAP"
#define QIW_XLS_OPTIONS L"XLS_OPTIONS"
#define QIW_XLS_SKIP_COLS L"SkipCols"
#define QIW_XLS_SKIP_ROWS L"SkipRows"
#define QIW_TXT_MAP L"TXT_MAP"
#define QIW_TXT_OPTIONS L"ASCII_OPTIONS"
#define QIW_TXT_SKIP_LINES L"SkipLines"
#define QIW_TXT_ENCODING_OPTION L"Encoding"
#define QIW_CSV_MAP L"CSV_MAP"
#define QIW_CSV_OPTIONS L"CSV_OPTIONS"
#define QIW_CSV_DELIMITER L"Delimiter"
#define QIW_CSV_SKIP_LINES L"SkipLines"
#define QIW_CSV_QUOTE L"Quote"
#define QIW_CSV_ENCODING_OPTION L"Encoding"
#define QIW_DBF_MAP L"DBF_MAP"
#define QIW_DBF_OPTIONS L"DBF_OPTIONS"
#define QIW_DBF_SKIP_DELETED L"SkipDeleted"
#define QIW_HTML_MAP L"HTML_MAP"
#define QIW_HTML_OPTIONS L"HTML_OPTIONS"
#define QIW_HTML_SKIP_LINES L"SkipLines"
#define QIW_XML_MAP L"XML_MAP"
#define QIW_XML_OPTIONS L"XML_OPTIONS"
#define QIW_XML_WRITE_ON_FLY L"WriteOnFly"
#define QIW_MDB_MAP L"ACCESS_MAP"
#define QIW_MDB_OPTIONS L"ACCESS_OPTIONS"
#define QIW_MDB_PASSWORD L"Password"
#define QIW_MDB_SOURCETYPE L"SourceType"
#define QIW_MDB_TABLENAME L"TableName"
#define QIW_MDB_QUERY L"ACCESS_SQL"
#define QIW_MDB_SQL_LINE L"Line_"
#define QIW_BASE_FORMATS L"BASE_FORMATS"
#define QIW_BF_DECIMAL_SEPARATOR L"DecimalSeparator"
#define QIW_BF_THOUSAND_SEPARATOR L"ThousandSeparator"
#define QIW_BF_SHORT_DATE_FORMAT L"ShortDateFormat"
#define QIW_BF_LONG_DATE_FORMAT L"LongDateFormat"
#define QIW_BF_DATE_SEPARATOR L"DateSeparator"
#define QIW_BF_SHORT_TIME_FORMAT L"ShortTimeFormat"
#define QIW_BF_LONG_TIME_FORMAT L"LongTimeFormat"
#define QIW_BF_TIME_SEPARATOR L"TimeSeparator"
#define QIW_BOOLEAN_TRUE L"BOOLEAN_TRUE"
#define QIW_BOOLEAN_FALSE L"BOOLEAN_FALSE"
#define QIW_NULL_VALUES L"NULL_VALUES"
#define QIW_XML_DOC_MAP L"XML_DOC_MAP"
#define QIW_XML_DOC_MAP_LINE L"QIW_XML_DOC_MAP_LINE_"
#define QIW_XML_DOC_OPTIONS L"XML_DOC_OPTIONS"
#define QIW_XML_DOC_XPATH L"QIW_XML_DOC_XPATH"
#define QIW_XML_DOC_DATALOCATION L"QIW_XML_DOC_DATALOCATION"
#define QIW_XML_DOC_SKIPLINES L"QIW_XML_DOC_SKIPLINES"
#define QIW_DATA_FORMATS L"DATA_FORMATS_"
#define QIW_DF_GENERATOR_VALUE L"GeneratorValue"
#define QIW_DF_GENERATOR_STEP L"GeneratorStep"
#define QIW_DF_CONSTANT_VALUE L"ConstantValue"
#define QIW_DF_NULL_VALUE L"NullValue"
#define QIW_DF_DEFAULT_VALUE L"DefaultValue"
#define QIW_DF_LEFT_QUOTE L"LeftQuote"
#define QIW_DF_RIGHT_QUOTE L"RightQuote"
#define QIW_DF_QUOTE_ACTION L"QuoteAction"
#define QIW_DF_CHAR_CASE L"CharCase"
#define QIW_DF_CHAR_SET L"CharSet"
#define QIW_DF_SCRIPT L"Script"
#define QIW_REPLACEMENTS L"REPLACEMENTS_"
#define QIW_RP_TEXT_TO_FIND L"TextToFind"
#define QIW_RP_REPLACE_WITH L"ReplaceWith"
#define QIW_RP_IGNORE_CASE L"IgnoreCase"
#define QIW_ITEM L"ITEM_"
#define QIW_LAST_STEP L"LAST_STEP"
#define QIW_COMMIT_AFTER_DONE L"CommitAfterDone"
#define QIW_COMMIT_REC_COUNT L"CommitRecCount"
#define QIW_IMPORT_REC_COUNT L"ImportRecCount"
#define QIW_CLOSE_AFTER_IMPORT L"CloseAfterImport"
#define QIW_ENABLE_ERROR_LOG L"EnableErrorLog"
#define QIW_ERROR_LOG_FILE_NAME L"ErrorLogFileName"
#define QIW_REWRITE_ERROR_LOG_FILE L"RewriteErrorLogFile"
#define QIW_SHOW_ERROR_LOG L"ShowErrorLog"
#define QIW_ENABLE_SQL_LOG L"EnableSQLLog"
#define QIW_SQL_LOG_FILE_NAME L"SQLLogFileName"
#define QIW_REWRITE_SQL_LOG_FILE L"RewriteSQLLogFile"
#define QIW_IMPORT_MODE L"ImportMode"
#define QIW_ADD_TYPE L"AddType"
#define QIW_KEY_COLUMNS L"KeyColumns"
#define QIW_AUTO_TRIM_VALUE L"AutoTrimValue"
#define QIW_IMPORT_EMPTY_ROWS L"ImportEmptyRows"
#define QI_BASE L"BASE"
#define QI_FILE_NAME L"FileName"
#define QI_IMPORT_TYPE L"ImportType"
#define QI_IMPORT_DESTINATION L"ImportDestination"
#define QI_IMPORT_MODE L"ImportMode"
#define QI_MAP L"MAP"
#define QI_KEY_COLUMNS L"KeyColumns"
#define QI_GRID_CAPTION_ROW L"GridCaptionRow"
#define QI_GRID_START_ROW L"GridStartRow"
#define QI_COMMIT_AFTER_DONE L"CommitAfterDone"
#define QI_COMMIT_REC_COUNT L"CommitRecCount"
#define QI_IMPORT_REC_COUNT L"ImportRecCount"
#define QI_ENABLE_ERROR_LOG L"EnableErrorLog"
#define QI_ERROR_LOG_FILE_NAME L"ErrorLogFileName"
#define QI_REWRITE_ERROR_LOG_FILE L"RewriteErrorLogFile"
#define QI_SHOW_ERROR_LOG L"ShowErrorLog"
#define QI_IMPORT_EMPTY_ROWS L"ImportEmptyRows"
#define QI_AUTO_TRIM_VALUE L"AutoTrimValue"
#define QI_REPLACEMENTS L"REPLACEMENTS_"
#define QI_RP_TEXT_TO_FIND L"TextToFind"
#define QI_RP_REPLACE_WITH L"ReplaceWith"
#define QI_RP_TEXT_TO_FIND_HEX L"TextToFindHex"
#define QI_RP_REPLACE_WITH_HEX L"ReplaceWithHex"
#define QI_RP_IGNORE_CASE L"IgnoreCase"
#define BASE_FORMATS L"BASE_FORMATS"
#define BF_DECIMAL_SEPARATOR L"DecimalSeparator"
#define BF_THOUSAND_SEPARATOR L"ThousandSeparator"
#define BF_SHORT_DATE_FORMAT L"ShortDateFormat"
#define BF_LONG_DATE_FORMAT L"LongDateFormat"
#define BF_SHORT_TIME_FORMAT L"ShortTimeFormat"
#define BF_LONG_TIME_FORMAT L"LongTimeFormat"
#define BF_QUOTATION_ACTION L"QuotationAction"
#define BOOLEAN_TRUE L"BOOLEAN_TRUE"
#define BOOLEAN_FALSE L"BOOLEAN_FALSE"
#define NULL_VALUES L"NULL_VALUES"
#define DATA_FORMATS L"DATA_FORMATS_"
#define DF_GENERATOR_VALUE L"GeneratorValue"
#define DF_GENERATOR_STEP L"GeneratorStep"
#define DF_CONSTANT_VALUE L"ConstantValue"
#define DF_NULL_VALUE L"NullValue"
#define DF_DEFAULT_VALUE L"DefaultValue"
#define DF_LEFT_QUOTE L"LeftQuote"
#define DF_RIGHT_QUOTE L"RightQuote"
#define DF_QUOTE_ACTION L"QuoteAction"
#define DF_CHAR_CASE L"CharCase"
#define DF_CHAR_SET L"CharSet"
#define QI_FUNCTION L"Function"
#define XLS_OPTIONS L"XLS_OPTIONS"
#define XLS_SKIP_COLS L"SkipCols"
#define XLS_SKIP_ROWS L"SkipRows"
#define ASCII_OPTIONS L"ASCII_OPTIONS"
#define ASCII_SKIP_LINES L"SkipLines"
#define ASCII_COMMA L"Comma"
#define ASCII_Quote L"Quote"
#define ASCII_ENCODING L"Encoding"
#define DBF_OPTIONS L"DBF_OPTIONS"
#define DBF_SKIP_LINES L"SkipLines"
#define DBF_CHARSET L"CharSet"
#define HTML_OPTIONS L"HTML_OPTIONS"
#define HTML_SKIP_LINES L"SkipLines"
#define XML_OPTIONS L"XML_OPTIONS"
#define XML_SKIP_LINES L"SkipLines"
#define XML_WRITE_ON_FLY L"WriteOnFly"
#define DATA_SET_OPTIONS L"DATA_SET_OPTIONS"
#define DATA_SET_SKIP_LINES L"SkipLines"
#define ODS_OPTIONS L"ODS_OPTIONS"
#define ODS_SKIP_LINES L"SkipRows"
#define ODS_SHEET_NAME L"SheetName"
#define ODS_NOT_EXPAND_MERGED_VALUE L"NotExpandMergedValue"
#define ODT_OPTIONS L"ODT_OPTIONS"
#define ODT_SKIP_LINES L"SkipRows"
#define ODT_SHEET_NAME L"SheetName"
#define ODT_USE_HEADER L"UseHeader"
#define ODT_COMPLEX_TABLE L"ComplexTable"
#define XLSX_OPTIONS L"XLSX_OPTIONS"
#define XLSX_SKIP_LINES L"SkipRows"
#define XLSX_SHEET_NAME L"SheetName"
#define XLSX_LOAD_HIDDEN_SHEET L"LoadHiddenSheet"
#define XLSX_NEED_FILL_MERGE L"NeedFillMerge"
#define DOCX_OPTIONS L"DOCX_OPTIONS"
#define DOCX_SKIP_LINES L"SkipRows"
#define DOCX_TABLE_NUMBER L"TableNumber"
#define DOCX_NEED_FILLMERGE L"NeedFillMerge"
#define ACCESS_OPTIONS L"ACCESS_OPTIONS"
#define ACCESS_SKIP_LINES L"SkipRows"
#define ACCESS_TABLE_NAME L"TableName"
#define ACCESS_SQL L"SQL"
#define ACCESS_SQL_LINE L"Line"
#define ACCESS_SOURCE_TYPE L"SourceType"
#define ACCESS_PASSWORD L"Password"
#define XLS_EXT L".xls"
#define XLSX_EXT L".xlsx"
#define DOCX_EXT L".docx"
#define ODS_EXT L".ods"
#define ODT_EXT L".odt"
#define DBF_EXT L".dbf"
#define DB_EXT L".db"
#define HTM_EXT L".htm"
#define HTML_EXT L".html"
#define XML_EXT L".xml"
#define TXT_EXT L".txt"
#define CSV_EXT L".csv"
#define MDB_EXT L".mdb"
#define ACCDB_EXT L".accdb"
static const System::WideChar PathDelim = (System::WideChar)(0x2f);
static const System::Word DefMapXlsxColCount = System::Word(0x2bf);
static const System::Word DefMapColRowCount = System::Word(0x101);
#define SShortMonthNameJan L"Jan"
#define SShortMonthNameFeb L"Feb"
#define SShortMonthNameMar L"Mar"
#define SShortMonthNameApr L"Apr"
#define SShortMonthNameMay L"May"
#define SShortMonthNameJun L"Jun"
#define SShortMonthNameJul L"Jul"
#define SShortMonthNameAug L"Aug"
#define SShortMonthNameSep L"Sep"
#define SShortMonthNameOct L"Oct"
#define SShortMonthNameNov L"Nov"
#define SShortMonthNameDec L"Dec"
#define SLongMonthNameJan L"January"
#define SLongMonthNameFeb L"February"
#define SLongMonthNameMar L"March"
#define SLongMonthNameApr L"April"
#define SLongMonthNameMay L"May"
#define SLongMonthNameJun L"June"
#define SLongMonthNameJul L"July"
#define SLongMonthNameAug L"August"
#define SLongMonthNameSep L"September"
#define SLongMonthNameOct L"October"
#define SLongMonthNameNov L"November"
#define SLongMonthNameDec L"December"
#define SShortDayNameSun L"Sun"
#define SShortDayNameMon L"Mon"
#define SShortDayNameTue L"Tue"
#define SShortDayNameWed L"Wed"
#define SShortDayNameThu L"Thu"
#define SShortDayNameFri L"Fri"
#define SShortDayNameSat L"Sat"
#define SLongDayNameSun L"Sunday"
#define SLongDayNameMon L"Monday"
#define SLongDayNameTue L"Tuesday"
#define SLongDayNameWed L"Wednesday"
#define SLongDayNameThu L"Thursday"
#define SLongDayNameFri L"Friday"
#define SLongDayNameSat L"Saturday"
extern DELPHI_PACKAGE Qimport3common__1 DefShortMonthNames;
extern DELPHI_PACKAGE Qimport3common__2 DefLongMonthNames;
extern DELPHI_PACKAGE System::AnsiString __fastcall QIGetEmptyStr(void);
extern DELPHI_PACKAGE bool __fastcall CharInSet(char C, const TSysCharSet &CharSet)/* overload */;
extern DELPHI_PACKAGE bool __fastcall CharInSet(System::WideChar C, const TSysCharSet &CharSet)/* overload */;
extern DELPHI_PACKAGE System::AnsiString __fastcall UpperCase(const System::AnsiString S)/* overload */;
extern DELPHI_PACKAGE int __fastcall GetColIdFromColIndex(System::UnicodeString ColIndex);
extern DELPHI_PACKAGE TQImportLocale* __fastcall QImportLocale(void);
extern DELPHI_PACKAGE System::UnicodeString __fastcall QImportLoadStr(int ID);
extern DELPHI_PACKAGE char __fastcall StringToChar(const System::AnsiString S, const char Default);
extern DELPHI_PACKAGE System::AnsiString __fastcall PadString(const System::AnsiString S, char Chr, int Len);
extern DELPHI_PACKAGE System::UnicodeString __fastcall Char2Str(System::WideChar Chr)/* overload */;
extern DELPHI_PACKAGE System::UnicodeString __fastcall Char2Str(char Chr)/* overload */;
extern DELPHI_PACKAGE System::WideChar __fastcall Str2Char(const System::UnicodeString Str, System::WideChar Default)/* overload */;
extern DELPHI_PACKAGE char __fastcall Str2Char(const System::UnicodeString Str, char Default)/* overload */;
extern DELPHI_PACKAGE void __fastcall GridDrawCell(Vcl::Grids::TStringGrid* Grid, const System::UnicodeString SheetName, int SheetNumber, int ACol, int ARow, const System::Types::TRect &Rect, Vcl::Grids::TGridDrawState State, Qimport3xlsmapparser::TMapRow* DefinedRanges, int SkipCols, int SkipRows, bool IsEditing, Qimport3xlsmapparser::TMapRow* Selection);
extern DELPHI_PACKAGE void __fastcall GridMoveCurrCell(Vcl::Grids::TStringGrid* Grid, int ACol, int ARow);
extern DELPHI_PACKAGE void __fastcall GridSelCell(Vcl::Grids::TStringGrid* Grid, int RowNo, int ColNo, bool NeedClear, System::UnicodeString &CurrSel);
extern DELPHI_PACKAGE void __fastcall GridSelRow(Vcl::Grids::TStringGrid* Grid, int FirstCol, int LastCol, int RowNo, int StartCol, int SkipRows, int SkipCols, bool NeedClear, System::UnicodeString &CurrSel);
extern DELPHI_PACKAGE void __fastcall GridSelCol(Vcl::Grids::TStringGrid* Grid, int FirstRow, int LastRow, int ColNo, int StartRow, int SkipRows, int SkipCols, bool NeedClear, System::UnicodeString &CurrSel);
extern DELPHI_PACKAGE void __fastcall GridMouseDown(Vcl::Grids::TStringGrid* Grid, System::Uitypes::TMouseButton Button, System::Classes::TShiftState Shift, int X, int Y, int FirstCol, int LastCol, int FirstRow, int LastRow, int SkipRows, int SkipCols, System::UnicodeString &CurrSel);
extern DELPHI_PACKAGE void __fastcall GridSelectCell(Vcl::Grids::TStringGrid* Grid, int ACol, int ARow, System::Classes::TShiftState Shift, System::UnicodeString &CurrSel);
extern DELPHI_PACKAGE void __fastcall GridFillFixedCells(Vcl::Grids::TStringGrid* Grid);
extern DELPHI_PACKAGE void __fastcall CSVStringToStrings _DEPRECATED_ATTRIBUTE0 (const System::WideString Str, char Quote, char Separator, System::Widestrings::TWideStrings* Columns);
extern DELPHI_PACKAGE void __fastcall ReplaceTabs(System::WideString &Str);
extern DELPHI_PACKAGE System::WideChar __fastcall GetListSeparator(void);
extern DELPHI_PACKAGE void __fastcall ClearIniFile(System::Inifiles::TCustomIniFile* IniFile);
extern DELPHI_PACKAGE void __fastcall QImportCheckDestination(bool IsCSV, TQImportDestination ImportDestination, Data::Db::TDataSet* DataSet, Vcl::Dbgrids::TDBGrid* DBGrid, Vcl::Comctrls::TListView* ListView, Vcl::Grids::TStringGrid* StringGrid);
extern DELPHI_PACKAGE bool __fastcall QImportIsDestinationActive(bool IsCSV, TQImportDestination ImportDestination, Data::Db::TDataSet* DataSet, Vcl::Dbgrids::TDBGrid* DBGrid, Vcl::Comctrls::TListView* ListView, Vcl::Grids::TStringGrid* StringGrid);
extern DELPHI_PACKAGE void __fastcall QImportIsDestinationOpen(bool IsCSV, TQImportDestination ImportDestination, Data::Db::TDataSet* DataSet, Vcl::Dbgrids::TDBGrid* DBGrid, Vcl::Comctrls::TListView* ListView, Vcl::Grids::TStringGrid* StringGrid);
extern DELPHI_PACKAGE void __fastcall QImportIsDestinationClose(bool IsCSV, TQImportDestination ImportDestination, Data::Db::TDataSet* DataSet, Vcl::Dbgrids::TDBGrid* DBGrid, Vcl::Comctrls::TListView* ListView, Vcl::Grids::TStringGrid* StringGrid);
extern DELPHI_PACKAGE int __fastcall QImportDestinationColCount(bool IsCSV, TQImportDestination ImportDestination, Data::Db::TDataSet* DataSet, Vcl::Dbgrids::TDBGrid* DBGrid, Vcl::Comctrls::TListView* ListView, Vcl::Grids::TStringGrid* StringGrid);
extern DELPHI_PACKAGE System::UnicodeString __fastcall QImportDestinationColName(bool IsCSV, TQImportDestination ImportDestination, Data::Db::TDataSet* DataSet, Vcl::Dbgrids::TDBGrid* DBGrid, Vcl::Comctrls::TListView* ListView, Vcl::Grids::TStringGrid* StringGrid, int GridCaptionRow, int Index);
extern DELPHI_PACKAGE bool __fastcall QImportDestinationColVisible(bool IsCSV, TQImportDestination ImportDestination, Data::Db::TDataSet* DataSet, Vcl::Dbgrids::TDBGrid* DBGrid, Vcl::Comctrls::TListView* ListView, Vcl::Grids::TStringGrid* StringGrid, int Index);
extern DELPHI_PACKAGE void __fastcall QImportFillDestinationFieldsList(Vcl::Comctrls::TListView* FieldList, TQImportDestination ImportDestination, Data::Db::TDataSet* DataSet, Vcl::Dbgrids::TDBGrid* DBGrid, Vcl::Comctrls::TListView* ListView, Vcl::Grids::TStringGrid* StringGrid, int GridCaptionRow, bool SkipInvisible, TAllowedImport ImportType, TQImportFillFieldsListCallback CallBack);
extern DELPHI_PACKAGE bool __fastcall QImportDestinationAssigned(bool IsCSV, TQImportDestination ImportDestination, Data::Db::TDataSet* DataSet, Vcl::Dbgrids::TDBGrid* DBGrid, Vcl::Comctrls::TListView* ListView, Vcl::Grids::TStringGrid* StringGrid);
extern DELPHI_PACKAGE int __fastcall QImportDestinationFindColumn(bool IsCSV, TQImportDestination ImportDestination, Data::Db::TDataSet* DataSet, Vcl::Dbgrids::TDBGrid* DBGrid, Vcl::Comctrls::TListView* ListView, Vcl::Grids::TStringGrid* StringGrid, int GridCaptionRow, const System::UnicodeString ColName);
extern DELPHI_PACKAGE System::UnicodeString __fastcall IncludePathDelimiter(const System::UnicodeString S);
extern DELPHI_PACKAGE System::UnicodeString __fastcall GetNumericString(const System::UnicodeString Str);
extern DELPHI_PACKAGE System::TDateTime __fastcall FormatStrToDateTime(System::UnicodeString ADateTimeStr, System::UnicodeString AFormatStr);
extern DELPHI_PACKAGE bool __fastcall TryStrToDateTime(const System::UnicodeString Str, System::TDateTime &DateTime);
extern DELPHI_PACKAGE bool __fastcall DirExists(const System::UnicodeString Directory);
extern DELPHI_PACKAGE System::UnicodeString __fastcall MinimizeName(const System::UnicodeString Filename, Vcl::Graphics::TCanvas* Canvas, int MaxLen);
extern DELPHI_PACKAGE System::WideString __fastcall QIAddQuote(const System::WideString S, const System::WideString LeftQuote, const System::WideString RightQuote);
extern DELPHI_PACKAGE System::WideString __fastcall QIRemoveQuote(const System::WideString S, const System::WideString LeftQuote, const System::WideString RightQuote);
extern DELPHI_PACKAGE System::WideString __fastcall QIUpperFirst(const System::WideString S);
extern DELPHI_PACKAGE System::WideString __fastcall QIUpperFirstWord(const System::WideString S);
extern DELPHI_PACKAGE Data::Db::TFieldType __fastcall GetFieldDataType(const System::UnicodeString Value);
extern DELPHI_PACKAGE System::UnicodeString __fastcall FileToBase64(System::UnicodeString AFileName);
extern DELPHI_PACKAGE System::UnicodeString __fastcall QIDecodeBase64(System::WideString AValue);
extern DELPHI_PACKAGE System::UnicodeString __fastcall QIEncodeBase64(System::WideString AValue);
extern DELPHI_PACKAGE System::Classes::TStream* __fastcall CreateBlobBinaryStream(Data::Db::TField* Field, Data::Db::TBlobStreamMode Mode);
extern DELPHI_PACKAGE System::UnicodeString __fastcall TrimChar(const System::UnicodeString Value, const System::WideChar Character);
extern DELPHI_PACKAGE bool __fastcall FullRemoveDir(System::UnicodeString Dir, bool DeleteAllFilesAndFolders, bool StopIfNotAllDeleted, bool RemoveRoot);
extern DELPHI_PACKAGE System::WideString __fastcall QReplaceSpecs(const System::WideString AValue);
extern DELPHI_PACKAGE void __fastcall SetStringGridColWidth(Vcl::Grids::TStringGrid* StringGrid, int ColIndex, int RowIndex);
}	/* namespace Qimport3common */
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_QIMPORT3COMMON)
using namespace Qimport3common;
#endif
#pragma pack(pop)
#pragma option pop

#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif	// Qimport3commonHPP
