X-Git-Url: http://Server1/repobrowser/?p=xestiacalendar%2F.git;a=blobdiff_plain;f=source%2Fwidgets%2FXCCalendarDayEntry.h;h=823a44c8cc910862bbe3843c0c1ae651e4856cef;hp=33a18ca918002c0b850adac8be5e526b56f42e43;hb=902d948e5e45ad483c8e235690dda8f2bf596ad5;hpb=f1ecf412b80a5c25421595fde8f1e86131414f4c diff --git a/source/widgets/XCCalendarDayEntry.h b/source/widgets/XCCalendarDayEntry.h index 33a18ca..823a44c 100644 --- a/source/widgets/XCCalendarDayEntry.h +++ b/source/widgets/XCCalendarDayEntry.h @@ -1,14 +1,14 @@ // XCCalendarDayEntry.h - Xestia Calendar XCCalendarDayEntry widget class. // -// (c) 2016 Xestia Software Development. +// (c) 2016-2017 Xestia Software Development. // // This file is part of Xestia Calendar. // -// Xestia Address Book is free software: you can redistribute it and/or modify +// Xestia Calendar 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, version 3 of the license. // -// Xestia Address Book is distributed in the hope that it will be useful, +// Xestia Calendar 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. @@ -27,6 +27,8 @@ #include "../common/events.h" #include "../bitmaps.h" +#include "structs.h" + enum XCCalendarDayEntryMode { XCCALENDARDAYENTRY_NORMAL, XCCALENDARDAYENTRY_SMALL, @@ -36,44 +38,73 @@ class XCCalendarDayEntry: public wxPanel { private: - wxWindow *DayPanel = nullptr; - string EventTextData = ""; - wxStaticText *EventText = nullptr; - wxStaticBitmap *HighPriorityIcon = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxPoint(14,7), wxDefaultSize, 0 ); - wxStaticBitmap *AlarmIcon = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxPoint(30,7), wxDefaultSize, 0 ); - wxBitmap AlarmIconBitmap; - wxBitmap PriorityIconBitmap; + wxWindow *dayPanel = nullptr; + wxPanel *mainPanel = nullptr; + wxPanel *borderPanel = nullptr; + wxPanel *calendarColour = nullptr; + string eventTextData = ""; + wxStaticText *eventTime = nullptr; + wxStaticText *eventText = nullptr; + wxStaticBitmap *highPriorityIcon = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxPoint(14,7), wxDefaultSize, 0 ); + wxStaticBitmap *alarmIcon = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxPoint(30,7), wxDefaultSize, 0 ); + wxBoxSizer *mainSizer = nullptr; + wxSizerItem *afterSpacer = nullptr; + wxBitmap alarmIconBitmap; + wxBitmap priorityIconBitmap; + + Colour entryColour; + + int timeHour = 0; + int timeMinute = 0; + int timeSecond = 0; - Colour EntryColour; + bool hasAlarm = false; + bool hasHighPriority = false; + int positionMode = 0; - bool HasAlarm = false; - bool HasHighPriority = false; - int PositionMode = 0; - int EntryID = 0; - const int FirstPosition = 14; - const int SecondPosition = 30; - const int ThirdPosition = 49; + int eventID = 0; + int accountID = 0; + int calendarID =0; + bool showAccount = true; + bool showCalendar = true; - void Repaint(); - void RepaintSelected(); + const int firstPosition = 14; + const int secondPosition = 30; + const int thirdPosition = 49; void UpdateInformation(); + + string BuildEventTime(int timeHour, int timeMinute); + + protected: + void LeftClick(wxMouseEvent &MouseEvent); + void RightClick(wxMouseEvent &MouseEvent); public: XCCalendarDayEntry(wxWindow* parent, const wxString& title, const wxPoint& pos, const wxSize& size, const int id); ~XCCalendarDayEntry(); - void PaintFrameEvent(wxPaintEvent &PaintEvent); - void ResizeFrameEvent(wxSizeEvent &SizeEvent); - void LeftClick(wxMouseEvent &MouseEvent); - void Deselect(wxCommandEvent &DeselectEvent); + void ResizeFrameEvent(wxSizeEvent &sizeEvent); + void Deselect(wxCommandEvent &deselectEvent); - void SetColour(Colour *ColourIn); - void SetDisplayAlarm(bool DisplayValue); - void SetDisplayHighPriority(bool DisplayValue); + void SetTime(int timeHour, int timeMinute, int timeSecond); + void SetColour(Colour *colourIn); + void SetDisplayAlarm(bool displayValue); + void SetDisplayHighPriority(bool displayValue); + void SetEntryIDs(int accountID, int calendarID, int eventID); + void SetAfterSpacer(wxSizerItem *afterSpacer); + void SetEventName(std::string eventName); int GetID(); + int GetCalendarID(); + int GetEventID(); + int GetAccountID(); + wxSizerItem* GetAfterSpacer(); bool GetDisplayAlarm(); bool GetDisplayHighPriority(); + void SetShowAccountStatus(bool statusInput); + void SetShowCalendarStatus(bool statusInput); + bool GetShowAccountStatus(); + bool GetShowCalendarStatus(); DECLARE_EVENT_TABLE() };