Handling left mouse clicks in calendar

I need to find a way to create in
Calendar
new events by
clicking on left mouse button
. Currently in calendar I can handle range select events by adding handler
RangeSelectHandler.rangeSelect
or right clicks with actions (actually context menus).

From my code:

setHandler(new CalendarComponentEvents.RangeSelectHandler() {
            @Override
            public void rangeSelect(CalendarComponentEvents.RangeSelectEvent event) {
                ScheduleEvent scheduleEvent = scheduleEventForm.buildEvent(event.getStart()
                    , event.getEnd()); // creates new event in selected range
                addEvent(scheduleEvent);
            }
        });

But I want something like this:

setHandler(new CalendarComponentEvents.CellSelectHandler() {
            @Override
            public void cellSelect(CalendarComponentEvents.CellSelectEvent event) {
                ScheduleEvent scheduleEvent = scheduleEventForm.buildEvent(event.getDate()
                    , DateUtils.addHours(event.getDate(), 1)); // just plus one hour
                addEvent(scheduleEvent);
            }
        });

Any ideas? Workarounds? Suggestions?


I would appreciate any kind of help :slight_smile:

My idea is to have another component in the calendar container layout. In that component is where you create your event. When you want to create a event, set visible that component, and when you create or cancel the creation, set visible the calendar.

setHandler(new CalendarComponentEvents.RangeSelectHandler() {
            @Override
            public void rangeSelect(CalendarComponentEvents.RangeSelectEvent event) {
                eventsComponent.setVisible(true);
                calendar.setVisible(false);
            }
        });