// ************************************************************************** // * This file is part of the FreeFileSync project. It is distributed under * // * GNU General Public License: http://www.gnu.org/licenses/gpl.html * // * Copyright (C) 2008-2011 ZenJu (zhnmju123 AT gmx.de) * // ************************************************************************** // #ifndef BATCHCONFIG_H_INCLUDED #define BATCHCONFIG_H_INCLUDED #include "gui_generated.h" #include "../library/process_xml.h" namespace ffs3 { class DirectoryName; } class DirectoryPairBatch; class DirectoryPairBatchFirst; class BatchDialog: public BatchDlgGenerated { friend class BatchFileDropEvent; template friend class FolderPairCallback; public: BatchDialog(wxWindow* window, const xmlAccess::XmlBatchConfig& batchCfg); BatchDialog(wxWindow* window, const wxString& filename); ~BatchDialog(); enum { BATCH_FILE_SAVED = 15 }; private: void init(); virtual void OnCmpSettings( wxCommandEvent& event); virtual void OnSyncSettings( wxCommandEvent& event); virtual void OnConfigureFilter( wxCommandEvent& event); virtual void OnHelp( wxCommandEvent& event); void OnGlobalFilterOpenContext(wxCommandEvent& event); void OnGlobalFilterRemConfirm(wxCommandEvent& event); virtual void OnCheckSilent( wxCommandEvent& event); virtual void OnClose( wxCloseEvent& event); virtual void OnCancel( wxCommandEvent& event); virtual void OnSaveBatchJob( wxCommandEvent& event); virtual void OnLoadBatchJob( wxCommandEvent& event); virtual void OnAddFolderPair( wxCommandEvent& event); virtual void OnRemoveFolderPair( wxCommandEvent& event); virtual void OnRemoveTopFolderPair(wxCommandEvent& event); void addFolderPair(const std::vector& newPairs, bool addFront = false); void removeAddFolderPair(const int pos); void clearAddFolderPairs(); void updateGuiForFolderPair(); void updateGui(); //re-evaluate gui after config changes void updateVisibleTabs(); void showNotebookpage(wxWindow* page, const wxString& pageName, bool show); //error handling xmlAccess::OnError getSelectionHandleError() const; void setSelectionHandleError(const xmlAccess::OnError value); void OnChangeErrorHandling(wxCommandEvent& event); void updateToolTipErrorHandling(const xmlAccess::OnError value); bool saveBatchFile(const wxString& filename); void loadBatchFile(const wxString& filename); void loadBatchCfg(const xmlAccess::XmlBatchConfig& batchCfg); xmlAccess::XmlBatchConfig getCurrentConfiguration() const; boost::shared_ptr firstFolderPair; //always bound!!! std::vector additionalFolderPairs; //used when saving batch file wxString proposedBatchFileName; xmlAccess::XmlBatchConfig localBatchCfg; std::auto_ptr contextMenu; std::auto_ptr logfileDir; }; #endif // BATCHCONFIG_H_INCLUDED