diff --git a/src/view/AccountPanel.cpp b/src/view/AccountPanel.cpp index 197ae51..51da599 100644 --- a/src/view/AccountPanel.cpp +++ b/src/view/AccountPanel.cpp @@ -49,13 +49,11 @@ AccountPanel::AccountPanel(KissCount* kiss, wxUI *parent) : KissPanel(kiss, pare // ColorScheme* colorScheme = new ColorScheme(wxUI::categoryColors, WXSIZEOF(wxUI::categoryColors)); // _pie = new PiePlot(); - // _calendar = new wxCalendarCtrl(this, CALENDAR_ID, wxDefaultDateTime, wxDefaultPosition, wxDefaultSize, - // wxCAL_MONDAY_FIRST | wxCAL_NO_MONTH_CHANGE | wxCAL_SEQUENTIAL_MONTH_SELECTION); - // _calendar->EnableMonthChange(false); - // _calendar->EnableYearChange(false); - // _calendar->EnableHolidayDisplay(false); - // _calendar->Enable(false); - + _calendar = new QCalendarWidget(this); + _calendar->setGridVisible(false); + _calendar->setFirstDayOfWeek(Qt::Monday); + _calendar->setNavigationBarVisible(false); + _accounts = new QString[user->GetAccountsNumber()]; for (i=0, accountIt = user->_accounts.begin(); @@ -131,10 +129,10 @@ AccountPanel::AccountPanel(KissCount* kiss, wxUI *parent) : KissPanel(kiss, pare hbox->addLayout(vbox3); // // hbox->Add(vbox3, 0, wxGROW|wxALL, 2); // hbox2->Add(_accountsGrid, 0, wxGROW|wxALL, 2); - // hbox2->Add(_calendar, 0, wxALL, 2); - // vbox2->Add(hbox2, 0); + hbox2->addWidget(_calendar); + vbox2->addLayout(hbox2); // vbox2->Add(_grid, 0, wxGROW|wxALL, 2); - // hbox->Add(vbox2, 0, wxGROW|wxALL, 2); + hbox->addLayout(vbox2); // vbox->Add(_statsGrid, 0, wxGROW); // vbox->Add(chart, 0, wxALIGN_CENTER_HORIZONTAL|wxUP, 10); // hbox->Add(vbox, 0, wxGROW|wxALL, 2); @@ -234,7 +232,7 @@ void AccountPanel::InitStatsGrid(User* user) // _statsGrid->SetCellAlignment(BALANCE, 1, wxALIGN_RIGHT, wxALIGN_CENTRE); // _statsGrid->SetCellAlignment(NON_FIX, 1, wxALIGN_RIGHT, wxALIGN_CENTRE); } -#include + void AccountPanel::ChangeUser() { User* user = _kiss->GetUser(); @@ -327,8 +325,9 @@ void AccountPanel::ShowMonth(int month, int year) // DEFAULT_FONT(font); // std::vector::iterator categoryIt; // std::map >::iterator monthIt; - // wxDateTime curDate; - // curDate.SetToCurrent(); + QDate curDate = QDate::currentDate(); + QDate dateStart = QDate::currentDate(); + QDate dateEnd = QDate::currentDate(); // if (month == -1) // { @@ -358,7 +357,6 @@ void AccountPanel::ShowMonth(int month, int year) // _curYear = year; // _curMonth = month; // _wxUI->SetTitle(user->_name + wxT(" - ") + wxUI::months[month] + wxT(" ") + wxString::Format(wxT("%d"), year)); - // _calendar->Enable(true); // if (_grid->GetNumberRows() > 1) // _grid->DeleteRows(1, _grid->GetNumberRows()-1); @@ -370,15 +368,15 @@ void AccountPanel::ShowMonth(int month, int year) // InitAccountsGrid(user, month, year); - // _calendar->EnableMonthChange(true); - // _calendar->EnableYearChange(true); - // if (curDate.GetMonth() == month && curDate.GetYear() == year) - // _calendar->SetDate(curDate) ; - // else if (curDate.GetMonth() > month || curDate.GetYear() > year) - // _calendar->SetDate(curDate.GetLastMonthDay((wxDateTime::Month)month, year)); - // else if (curDate.GetMonth() < month || curDate.GetYear() < year) - // _calendar->SetDate(wxDateTime(1, (wxDateTime::Month)month, year)); - + dateStart.setDate(dateStart.year(), dateStart.month(), 1); + dateEnd.setDate(dateEnd.year(), dateEnd.month(), dateStart.daysInMonth()); + _calendar->setDateRange(dateStart, dateEnd); + if ((curDate.month()-1) == month && curDate.year() == year) + _calendar->showToday(); + else if ((curDate.month()-1) > month || curDate.year() > year) + _calendar->setSelectedDate (dateEnd) ; + else if ((curDate.month()-1) < month || curDate.year() < year) + _calendar->setSelectedDate(dateStart) ; // _calendar->EnableMonthChange(false); // _calendar->EnableYearChange(false); // _calendar->SetSize(_calendar->GetMinSize()); diff --git a/src/view/AccountPanel.hpp b/src/view/AccountPanel.hpp index 4839b07..a8eea17 100644 --- a/src/view/AccountPanel.hpp +++ b/src/view/AccountPanel.hpp @@ -28,6 +28,7 @@ // #include #include +#include #include "view.hpp" @@ -72,7 +73,7 @@ public: private: QTreeWidget *_tree; - // wxCalendarCtrl* _calendar; + QCalendarWidget* _calendar; // GridAccount* _grid; // wxGrid *_statsGrid, *_accountsGrid; // PiePlot* _pie;