KissCount/src/view/ImportPanel.h
Grégory Soutadé 753b499b48 Add XMLImportEngine
Fix some bugs in ImportPanel and ImportEngines
2011-07-04 20:23:00 +02:00

75 lines
2.1 KiB
C++

/*
Copyright 2010-2011 Grégory Soutadé
This file is part of KissCount.
KissCount is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
KissCount is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with KissCount. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef IMPORTPANEL_H
#define IMPORTPANEL_H
#include <wx/wx.h>
#include <wx/grid.h>
#include <wx/treectrl.h>
#include <wx/statbox.h>
#include <wx/gbsizer.h>
#include <wx/stattext.h>
#include <wx/textctrl.h>
#include <wx/bmpcbox.h>
#include <wx/colordlg.h>
#include <wx/fontdlg.h>
#include "view.h"
#include <model/model.h>
#include <model/import/ImportEngine.h>
class ImportPanel: public KissPanel
{
public:
ImportPanel(KissCount* kiss, wxUI *parent);
KissPanel* CreatePanel();
wxBitmapButton* GetButton(int id);
wxString GetToolTip();
void OnShow(wxShowEvent& event);
void OnFile(wxCommandEvent& WXUNUSED(event));
void OnFileEnter(wxCommandEvent& WXUNUSED(event));
void OnLoadOperations(wxCommandEvent& WXUNUSED(event));
void OnIntegrate(wxCommandEvent& WXUNUSED(event));
void OnOperationModified(wxGridEvent& event);
private:
wxBoxSizer *_hbox;
wxGrid* _accountsGrid, *_categoriesGrid;
wxTextCtrl* _fileTxt;
GridAccount* _operationsGrid;
ImportEngine* _importEngine;
wxButton* _buttonLoadOperations, *_buttonIntegrate;
wxCheckBox *_checkSaveImportPatterns;
std::vector<Operation>* _operations;
std::vector<Account> _unresolvedAccounts;
std::vector<Category> _unresolvedCategories;
std::map<wxString, wxString> _resolvedAccounts;
std::map<wxString, wxString> _resolvedCategories;
void ProcessFile();
DECLARE_EVENT_TABLE();
};
#endif