X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;f=source%2Fwidgets%2FXCCalendarDayEntry.h;h=070d2685a817ab295e3f5dca86f4eb3bde47030a;hb=cba151c4b833a26c63984769f921bab5e755decd;hp=de30c90d0d4e96592f9bd445f1df018c2de0a145;hpb=bdc05156983bccd8f7ad725c612280a46b612876;p=xestiacalendar%2F.git diff --git a/source/widgets/XCCalendarDayEntry.h b/source/widgets/XCCalendarDayEntry.h index de30c90..070d268 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. @@ -20,9 +20,14 @@ #define __WIDGETS_XCCALENDARDAYENTRY_H__ #include +#include + #include "../common/colour.h" #include "../common/text.h" #include "../common/events.h" +#include "../bitmaps.h" + +#include "structs.h" enum XCCalendarDayEntryMode { XCCALENDARDAYENTRY_NORMAL, @@ -35,18 +40,30 @@ class XCCalendarDayEntry: public wxPanel private: wxWindow *DayPanel = 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 ); + wxSizerItem *afterSpacer = nullptr; wxBitmap AlarmIconBitmap; wxBitmap PriorityIconBitmap; Colour EntryColour; + int timeHour = 0; + int timeMinute = 0; + int timeSecond = 0; + bool HasAlarm = false; bool HasHighPriority = false; int PositionMode = 0; - int EntryID = 0; + + int eventID = 0; + int accountID = 0; + int calendarID =0; + bool showAccount = true; + bool showCalendar = true; + const int FirstPosition = 14; const int SecondPosition = 30; const int ThirdPosition = 49; @@ -55,6 +72,12 @@ class XCCalendarDayEntry: public wxPanel void RepaintSelected(); 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); @@ -62,15 +85,26 @@ class XCCalendarDayEntry: public wxPanel void PaintFrameEvent(wxPaintEvent &PaintEvent); void ResizeFrameEvent(wxSizeEvent &SizeEvent); - void LeftClick(wxMouseEvent &MouseEvent); void Deselect(wxCommandEvent &DeselectEvent); + 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(); + bool SetShowAccountStatus(bool statusInput); + bool SetShowCalendarStatus(bool statusInput); + bool GetShowAccountStatus(); + bool GetShowCalendarStatus(); DECLARE_EVENT_TABLE() };