KissCount/src/view/wxUI.h
Grégory Soutadé c69621c2fe Add unresolved categories in ImportPanel
Fix two bugs :
Don't take in account unknown categories (in stats)
Don't try to draw more than MAX_CATEGORIES (12) in charts
2011-04-25 19:55:31 +02:00

98 lines
2.3 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 WXUI_H
#define WXUI_H
class ImportEngine;
#include <wx/wx.h>
#include "AccountPanel.h"
#include "PreferencesPanel.h"
#include "UsersDialog.h"
#include "GenerateDialog.h"
#include "SearchPanel.h"
#include "StatsPanel.h"
#include "ImportPanel.h"
#include <controller/KissCount.h>
#include "grid/wxMyGrid.h"
#include "grid/wxGridCellFastBoolEditor.h"
#include "grid/wxGridCellButtonRenderer.h"
#include "grid/wxGridCellButtonEditor.h"
#ifdef WIN32
#undef _
#define _(s) wxString(wxGetTranslation(s))
#endif
class KissCount;
class AccountPanel;
class PreferencesPanel;
extern wxString months[12];
extern wxColour categoryColors[12];
#define MAX_CATEGORY 12
class wxUI: public wxFrame
{
public:
wxUI(KissCount* kiss, const wxString& title, const wxPoint& pos, const wxSize& size);
~wxUI();
bool SetLanguage(long language);
void ChangeUser();
void LoadUser();
void ShowAccount();
void ShowSearch();
void ShowPreferences();
void GenerateMonth(int month, int year);
void KillMe();
void ShowPanel(KissPanel* panel);
void NeedReload();
wxLanguage _language;
void OnButtonClicked(wxCommandEvent& event);
void OnButtonChangeUser(wxCommandEvent& event);
void OnButtonAbout(wxCommandEvent& event);
void OnButtonQuit(wxCommandEvent& event);
private:
KissCount *_kiss;
wxBoxSizer *_vbox, *_buttonsBox;
KissPanel *_curPanel;
std::vector<KissPanel*> _panels;
std::vector<wxBitmapButton*> _buttons;
wxLocale *_locale;
bool _needReload;
void InitPanels();
void LoadPanels();
DECLARE_EVENT_TABLE();
};
#endif