Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
XCCalendarManipulator: Show simple border for buttons on mouse over and no border...
authorSteve Brokenshire <sbrokenshire@xestia.co.uk>
Wed, 19 Jul 2017 21:58:17 +0000 (22:58 +0100)
committerSteve Brokenshire <sbrokenshire@xestia.co.uk>
Wed, 19 Jul 2017 21:58:17 +0000 (22:58 +0100)
source/widgets/XCCalendarManipulator.cpp
source/widgets/XCCalendarManipulator.h

index c71692c..131146f 100644 (file)
@@ -110,11 +110,20 @@ XCCalendarManipulator::XCCalendarManipulator(wxWindow* parent, const wxString& t
        // Setup the event controls.
 
        dateButton->Connect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(XCCalendarManipulator::DateTextClick), NULL, this);
+       dateButton->Connect(wxEVT_ENTER_WINDOW, wxMouseEventHandler(XCCalendarManipulator::ButtonMouseover), NULL, this);
+       dateButton->Connect(wxEVT_LEAVE_WINDOW, wxMouseEventHandler(XCCalendarManipulator::ButtonMouseout), NULL, this);
        nextButton->Connect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(XCCalendarManipulator::NextMonth), NULL, this);
+       nextButton->Connect(wxEVT_ENTER_WINDOW, wxMouseEventHandler(XCCalendarManipulator::ButtonMouseover), NULL, this);
+       nextButton->Connect(wxEVT_LEAVE_WINDOW, wxMouseEventHandler(XCCalendarManipulator::ButtonMouseout), NULL, this);
        calendarsButton->Connect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(XCCalendarManipulator::ShowCalendarsList), NULL, this);
+       calendarsButton->Connect(wxEVT_ENTER_WINDOW, wxMouseEventHandler(XCCalendarManipulator::ButtonMouseover), NULL, this);
+       calendarsButton->Connect(wxEVT_LEAVE_WINDOW, wxMouseEventHandler(XCCalendarManipulator::ButtonMouseout), NULL, this);
        previousButton->Connect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(XCCalendarManipulator::PreviousMonth), NULL, this);
-       
+       previousButton->Connect(wxEVT_ENTER_WINDOW, wxMouseEventHandler(XCCalendarManipulator::ButtonMouseover), NULL, this);
+       previousButton->Connect(wxEVT_LEAVE_WINDOW, wxMouseEventHandler(XCCalendarManipulator::ButtonMouseout), NULL, this);
        Bind(XCCALENDARMANIPULATOR_CHANGEGRID, &XCCalendarManipulator::ChangeGrid, this, ID_CHANGEGRID);
+
+       this->Refresh();
 }
 
 XCCalendarManipulator::~XCCalendarManipulator(){
@@ -308,4 +317,16 @@ vector<int> XCCalendarManipulator::GetHiddenCalendarsList(){
        
        return calendarList->GetHiddenCalendarsList();
        
+}
+
+void XCCalendarManipulator::ButtonMouseover(wxMouseEvent &event)
+{
+       wxWindow *eventObject = (wxWindow*)event.GetEventObject();
+       eventObject->SetWindowStyle(0 | wxSIMPLE_BORDER);
+}
+
+void XCCalendarManipulator::ButtonMouseout(wxMouseEvent &event)
+{
+       wxWindow *eventObject = (wxWindow*)event.GetEventObject();
+       eventObject->SetWindowStyle(0 | wxNO_BORDER);
 }
\ No newline at end of file
index 8f46398..4e5bb7e 100644 (file)
@@ -62,8 +62,8 @@ class XCCalendarManipulator: public wxPanel
        
                void UpdateDateButtonText();
        protected:
-               void DateTextMouseover(wxMouseEvent &event);
-               void DateTextMouseout(wxMouseEvent &event);
+               void ButtonMouseover(wxMouseEvent &event);
+               void ButtonMouseout(wxMouseEvent &event);
                void DateTextClick(wxCommandEvent &event);
                void ChangeGrid(wxCommandEvent &event);
                void NextMonth(wxCommandEvent &event);
Xestia Software Development
Yn Maystri
© 2006 - 2019 Xestia Software Development
Software

Xestia Address Book
Xestia Calendar
Development

Xestia Gelforn
Everything else

About
News
Privacy Policy