diff --git a/headers/private/shared/CalendarView.h b/headers/private/shared/CalendarView.h index d61b7010a7..624f6e6980 100644 --- a/headers/private/shared/CalendarView.h +++ b/headers/private/shared/CalendarView.h @@ -36,10 +36,13 @@ class BCalendarView : public BView, public BInvoker { BCalendarView(BRect frame, const char *name, week_start start, uint32 resizeMask = B_FOLLOW_LEFT | B_FOLLOW_TOP, uint32 flags = B_WILL_DRAW | B_FRAME_EVENTS | B_NAVIGABLE); - + BCalendarView(const char* name, uint32 flags = B_WILL_DRAW | B_FRAME_EVENTS | B_NAVIGABLE); + BCalendarView(const char* name, week_start start, + uint32 flags = B_WILL_DRAW | B_FRAME_EVENTS | B_NAVIGABLE); + virtual ~BCalendarView(); BCalendarView(BMessage *archive); @@ -91,7 +94,7 @@ class BCalendarView : public BView, public BInvoker { virtual void ResizeToPreferred(); virtual void GetPreferredSize(float *width, float *height); - + virtual BSize MaxSize(); virtual BSize MinSize(); virtual BSize PreferredSize(); diff --git a/src/kits/shared/CalendarView.cpp b/src/kits/shared/CalendarView.cpp index 7dcc8e92aa..ce1894342d 100644 --- a/src/kits/shared/CalendarView.cpp +++ b/src/kits/shared/CalendarView.cpp @@ -91,6 +91,25 @@ BCalendarView::BCalendarView(const char* name, uint32 flags) } +BCalendarView::BCalendarView(const char* name, week_start start, + uint32 flags) + : + BView(name, flags), + BInvoker(), + fSelectionMessage(NULL), + fDay(0), + fYear(0), + fMonth(0), + fFocusChanged(false), + fSelectionChanged(false), + fWeekStart(start), + fDayNameHeaderVisible(true), + fWeekNumberHeaderVisible(true) +{ + _InitObject(); +} + + BCalendarView::~BCalendarView() { SetSelectionMessage(NULL); diff --git a/src/preferences/time/DateTimeView.cpp b/src/preferences/time/DateTimeView.cpp index 6eea1f7b8b..7a7ef43bed 100644 --- a/src/preferences/time/DateTimeView.cpp +++ b/src/preferences/time/DateTimeView.cpp @@ -46,7 +46,7 @@ using BPrivate::B_LOCAL_TIME; DateTimeView::DateTimeView(const char* name) - : + : BGroupView(name, B_HORIZONTAL, 5), fGmtTime(NULL), fUseGmtTime(false), @@ -81,30 +81,6 @@ DateTimeView::AttachedToWindow() } -void -DateTimeView::Draw(BRect /*updateRect*/) -{ - rgb_color viewcolor = ViewColor(); - rgb_color dark = tint_color(viewcolor, B_DARKEN_4_TINT); - rgb_color light = tint_color(viewcolor, B_LIGHTEN_MAX_TINT); - - // draw a separator line - BRect bounds(Bounds()); - BPoint start(bounds.Width() / 2.0f, bounds.top + 5.0f); - BPoint end(bounds.Width() / 2.0, bounds.bottom - 5.0f); - - BeginLineArray(2); - AddLine(start, end, dark); - start.x++; - end.x++; - AddLine(start, end, light); - EndLineArray(); - - fTimeEdit->Draw(bounds); - fDateEdit->Draw(bounds); -} - - void DateTimeView::MessageReceived(BMessage* message) { @@ -211,7 +187,9 @@ DateTimeView::_PrefletUptime() const void DateTimeView::_InitView() { - fCalendarView = new BCalendarView("calendar"); + BPrivate::week_start weekStart = (BPrivate::week_start) + BLocale::Default()->StartOfWeek(); + fCalendarView = new BCalendarView("calendar", weekStart); fCalendarView->SetWeekNumberHeaderVisible(false); fCalendarView->SetSelectionMessage(new BMessage(kDayChanged)); fCalendarView->SetInvocationMessage(new BMessage(kDayChanged)); @@ -219,7 +197,7 @@ DateTimeView::_InitView() fDateEdit = new TDateEdit("dateEdit", 3); fTimeEdit = new TTimeEdit("timeEdit", 4); fClock = new TAnalogClock("analogClock"); - + BTime time(BTime::CurrentTime(B_LOCAL_TIME)); fClock->SetTime(time.Hour(), time.Minute(), time.Second()); diff --git a/src/preferences/time/DateTimeView.h b/src/preferences/time/DateTimeView.h index 3c97d50dca..9426610e2c 100644 --- a/src/preferences/time/DateTimeView.h +++ b/src/preferences/time/DateTimeView.h @@ -34,7 +34,6 @@ public: virtual ~DateTimeView(); virtual void AttachedToWindow(); - virtual void Draw(BRect updaterect); virtual void MessageReceived(BMessage* message); bool CheckCanRevert();