Project

General

Profile

Actions

Bug #3574

closed

Wt::WCalendar browseToNextMonth() does not work correctly

Added by Anonymous about 10 years ago. Updated about 10 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Target version:
Start date:
09/10/2014
Due date:
% Done:

0%

Estimated time:

Description

clicking a date in the next month from December and attaching an event to the calendar that calls browseToNextMonth() takes the calendar to November in the same year.

Additionally when using a calendar which is connected to a WDateEdit as shown below, the calendar will only browse to the next once but it will browse to the previous month as expected.

@

Wt::WDateEdit* de = new Wt::WDateEdit(root());

Wt::WCalendar* cal = de->calendar();

cal->setSelectionMode(Wt::SelectionMode::ExtendedSelection);

cal->clicked().connect(std::bind([=](Wt::WDate d) {

std::cout << cal->currentMonth();

std::cout << d.month();

if(d.month() > cal->currentMonth())

{

std::cout << "GO NEXT\n";

cal->browseToNextMonth();

return;

}

else if(d.month() < cal->currentMonth())

{

std::cout << "GO PREV\n";

cal->browseToPreviousMonth();

return;

}

}, std::placeholders::_1));@

Actions #1

Updated by Koen Deforche about 10 years ago

  • Status changed from New to InProgress
  • Assignee set to Koen Deforche
  • Target version changed from 3.3.3 to 3.3.4
Actions #2

Updated by Koen Deforche about 10 years ago

  • Status changed from InProgress to Feedback

Hey,

I believe it's because you only check the month, not the year, and month '1' < month '12' ?

Regards,

koen

Actions #3

Updated by Alex V about 10 years ago

Hi Koen,

That solves the first issue which was created when I quickly wrote the example case and is a problem with the test code, Which I thought at the time was related to the actual bug which I described poorly in the description.

The actual bug is that the calendar widget only browses forwards once. For example with the code above clicking a November date from October works but then clicking a date in December from November does not do anything. The event handler is called, "GO NEXT" is printed but the calendar remains on November.

the behaviour is the same using

cal->browseToNextMonth();

and

cal->browseTo(d);

Firefox 30.0, Wt 3.3.3

Actions #4

Updated by Koen Deforche about 10 years ago

  • Status changed from Feedback to Resolved

Hey,

I couldn't reproduce this with latest git, but I believe it's been fixed indeed because of other changes. Could you check with latest git?

Koen

Actions #5

Updated by Koen Deforche about 10 years ago

  • Status changed from Resolved to Closed
Actions

Also available in: Atom PDF