OLD | NEW |
1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
6 | 6 |
7 #include "xfa/fwl/theme/cfwl_monthcalendartp.h" | 7 #include "xfa/fwl/theme/cfwl_monthcalendartp.h" |
8 | 8 |
9 #include "xfa/fde/tto/fde_textout.h" | 9 #include "xfa/fde/tto/fde_textout.h" |
10 #include "xfa/fwl/basewidget/ifwl_monthcalendar.h" | 10 #include "xfa/fwl/basewidget/ifwl_monthcalendar.h" |
(...skipping 443 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
454 rtHSep = pParams->m_rtPart; | 454 rtHSep = pParams->m_rtPart; |
455 path.MoveTo(rtHSep.left, rtHSep.top + rtHSep.height / 2); | 455 path.MoveTo(rtHSep.left, rtHSep.top + rtHSep.height / 2); |
456 path.LineTo(rtHSep.right(), rtHSep.top + rtHSep.height / 2); | 456 path.LineTo(rtHSep.right(), rtHSep.top + rtHSep.height / 2); |
457 pParams->m_pGraphics->SaveGraphState(); | 457 pParams->m_pGraphics->SaveGraphState(); |
458 CFX_Color clrHSep(m_pThemeData->clrSeperator); | 458 CFX_Color clrHSep(m_pThemeData->clrSeperator); |
459 pParams->m_pGraphics->SetStrokeColor(&clrHSep); | 459 pParams->m_pGraphics->SetStrokeColor(&clrHSep); |
460 pParams->m_pGraphics->StrokePath(&path, pMatrix); | 460 pParams->m_pGraphics->StrokePath(&path, pMatrix); |
461 pParams->m_pGraphics->RestoreGraphState(); | 461 pParams->m_pGraphics->RestoreGraphState(); |
462 return TRUE; | 462 return TRUE; |
463 } | 463 } |
| 464 |
464 FX_BOOL CFWL_MonthCalendarTP::DrawWeekNumSep(CFWL_ThemeBackground* pParams, | 465 FX_BOOL CFWL_MonthCalendarTP::DrawWeekNumSep(CFWL_ThemeBackground* pParams, |
465 CFX_Matrix* pMatrix) { | 466 CFX_Matrix* pMatrix) { |
466 CFX_Path path; | 467 CFX_Path path; |
467 path.Create(); | 468 path.Create(); |
468 CFX_RectF rtWeekSep; | 469 CFX_RectF rtWeekSep; |
469 rtWeekSep = pParams->m_rtPart; | 470 rtWeekSep = pParams->m_rtPart; |
470 path.MoveTo(rtWeekSep.left, rtWeekSep.top); | 471 path.MoveTo(rtWeekSep.left, rtWeekSep.top); |
471 path.LineTo(rtWeekSep.left, rtWeekSep.bottom()); | 472 path.LineTo(rtWeekSep.left, rtWeekSep.bottom()); |
472 pParams->m_pGraphics->SaveGraphState(); | 473 pParams->m_pGraphics->SaveGraphState(); |
473 CFX_Color clrHSep(m_pThemeData->clrSeperator); | 474 CFX_Color clrHSep(m_pThemeData->clrSeperator); |
474 pParams->m_pGraphics->SetStrokeColor(&clrHSep); | 475 pParams->m_pGraphics->SetStrokeColor(&clrHSep); |
475 pParams->m_pGraphics->StrokePath(&path, pMatrix); | 476 pParams->m_pGraphics->StrokePath(&path, pMatrix); |
476 pParams->m_pGraphics->RestoreGraphState(); | 477 pParams->m_pGraphics->RestoreGraphState(); |
477 return TRUE; | 478 return TRUE; |
478 } | 479 } |
| 480 |
479 FX_BOOL CFWL_MonthCalendarTP::DrawDatesInBK(CFWL_ThemeBackground* pParams, | 481 FX_BOOL CFWL_MonthCalendarTP::DrawDatesInBK(CFWL_ThemeBackground* pParams, |
480 CFX_Matrix* pMatrix) { | 482 CFX_Matrix* pMatrix) { |
481 pParams->m_pGraphics->SaveGraphState(); | 483 pParams->m_pGraphics->SaveGraphState(); |
482 if (pParams->m_dwStates & CFWL_PartState_Selected) { | 484 if (pParams->m_dwStates & CFWL_PartState_Selected) { |
483 CFX_Path path; | 485 CFX_Path path; |
484 path.Create(); | 486 path.Create(); |
485 CFX_RectF rtSelDay; | 487 CFX_RectF rtSelDay; |
486 rtSelDay = pParams->m_rtPart; | 488 rtSelDay = pParams->m_rtPart; |
487 path.AddRectangle(rtSelDay.left, rtSelDay.top, rtSelDay.width, | 489 path.AddRectangle(rtSelDay.left, rtSelDay.top, rtSelDay.width, |
488 rtSelDay.height); | 490 rtSelDay.height); |
489 CFX_Color clrSelDayBK; | 491 CFX_Color clrSelDayBK(m_pThemeData->clrDatesSelectedBK); |
490 clrSelDayBK = m_pThemeData->clrDatesSelectedBK; | |
491 pParams->m_pGraphics->SetFillColor(&clrSelDayBK); | 492 pParams->m_pGraphics->SetFillColor(&clrSelDayBK); |
492 pParams->m_pGraphics->FillPath(&path, FXFILL_WINDING, pMatrix); | 493 pParams->m_pGraphics->FillPath(&path, FXFILL_WINDING, pMatrix); |
493 } else if (pParams->m_dwStates & CFWL_PartState_Hovered) { | 494 } else if (pParams->m_dwStates & CFWL_PartState_Hovered) { |
494 CFX_Path path; | 495 CFX_Path path; |
495 path.Create(); | 496 path.Create(); |
496 CFX_RectF rtSelDay; | 497 CFX_RectF rtSelDay; |
497 rtSelDay = pParams->m_rtPart; | 498 rtSelDay = pParams->m_rtPart; |
498 path.AddRectangle(rtSelDay.left, rtSelDay.top, rtSelDay.width, | 499 path.AddRectangle(rtSelDay.left, rtSelDay.top, rtSelDay.width, |
499 rtSelDay.height); | 500 rtSelDay.height); |
500 CFX_Color clrSelDayBK; | 501 CFX_Color clrSelDayBK(m_pThemeData->clrDatesHoverBK); |
501 clrSelDayBK = m_pThemeData->clrDatesHoverBK; | |
502 pParams->m_pGraphics->SetFillColor(&clrSelDayBK); | 502 pParams->m_pGraphics->SetFillColor(&clrSelDayBK); |
503 pParams->m_pGraphics->FillPath(&path, FXFILL_WINDING, pMatrix); | 503 pParams->m_pGraphics->FillPath(&path, FXFILL_WINDING, pMatrix); |
504 } | 504 } |
505 pParams->m_pGraphics->RestoreGraphState(); | 505 pParams->m_pGraphics->RestoreGraphState(); |
506 return FALSE; | 506 return FALSE; |
507 } | 507 } |
| 508 |
508 FX_BOOL CFWL_MonthCalendarTP::DrawDatesInCircle(CFWL_ThemeBackground* pParams, | 509 FX_BOOL CFWL_MonthCalendarTP::DrawDatesInCircle(CFWL_ThemeBackground* pParams, |
509 CFX_Matrix* pMatrix) { | 510 CFX_Matrix* pMatrix) { |
510 CFX_Path path; | 511 CFX_Path path; |
511 path.Create(); | 512 path.Create(); |
512 CFX_RectF rtSelDay; | 513 CFX_RectF rtSelDay; |
513 rtSelDay = pParams->m_rtPart; | 514 rtSelDay = pParams->m_rtPart; |
514 path.AddRectangle(rtSelDay.left, rtSelDay.top, rtSelDay.width, | 515 path.AddRectangle(rtSelDay.left, rtSelDay.top, rtSelDay.width, |
515 rtSelDay.height); | 516 rtSelDay.height); |
516 pParams->m_pGraphics->SaveGraphState(); | 517 pParams->m_pGraphics->SaveGraphState(); |
517 CFX_Color clrSelDayBK; | 518 CFX_Color clrSelDayBK(m_pThemeData->clrDatesCircle); |
518 clrSelDayBK = m_pThemeData->clrDatesCircle; | |
519 pParams->m_pGraphics->SetStrokeColor(&clrSelDayBK); | 519 pParams->m_pGraphics->SetStrokeColor(&clrSelDayBK); |
520 pParams->m_pGraphics->StrokePath(&path, pMatrix); | 520 pParams->m_pGraphics->StrokePath(&path, pMatrix); |
521 pParams->m_pGraphics->RestoreGraphState(); | 521 pParams->m_pGraphics->RestoreGraphState(); |
522 return TRUE; | 522 return TRUE; |
523 } | 523 } |
| 524 |
524 FX_BOOL CFWL_MonthCalendarTP::DrawTodayCircle(CFWL_ThemeBackground* pParams, | 525 FX_BOOL CFWL_MonthCalendarTP::DrawTodayCircle(CFWL_ThemeBackground* pParams, |
525 CFX_Matrix* pMatrix) { | 526 CFX_Matrix* pMatrix) { |
526 CFX_Path path; | 527 CFX_Path path; |
527 path.Create(); | 528 path.Create(); |
528 CFX_RectF rtTodayCircle; | 529 CFX_RectF rtTodayCircle; |
529 rtTodayCircle = pParams->m_rtPart; | 530 rtTodayCircle = pParams->m_rtPart; |
530 path.AddRectangle(rtTodayCircle.left, rtTodayCircle.top, rtTodayCircle.width, | 531 path.AddRectangle(rtTodayCircle.left, rtTodayCircle.top, rtTodayCircle.width, |
531 rtTodayCircle.height); | 532 rtTodayCircle.height); |
532 pParams->m_pGraphics->SaveGraphState(); | 533 pParams->m_pGraphics->SaveGraphState(); |
533 CFX_Color clrTodayCircle; | 534 CFX_Color clrTodayCircle(m_pThemeData->clrDatesCircle); |
534 clrTodayCircle = m_pThemeData->clrDatesCircle; | |
535 pParams->m_pGraphics->SetStrokeColor(&clrTodayCircle); | 535 pParams->m_pGraphics->SetStrokeColor(&clrTodayCircle); |
536 pParams->m_pGraphics->StrokePath(&path, pMatrix); | 536 pParams->m_pGraphics->StrokePath(&path, pMatrix); |
537 pParams->m_pGraphics->RestoreGraphState(); | 537 pParams->m_pGraphics->RestoreGraphState(); |
538 return TRUE; | 538 return TRUE; |
539 } | 539 } |
540 | 540 |
541 FWLTHEME_STATE CFWL_MonthCalendarTP::GetState(uint32_t dwFWLStates) { | 541 FWLTHEME_STATE CFWL_MonthCalendarTP::GetState(uint32_t dwFWLStates) { |
542 if (dwFWLStates & CFWL_PartState_Hovered) | 542 if (dwFWLStates & CFWL_PartState_Hovered) |
543 return FWLTHEME_STATE_Hover; | 543 return FWLTHEME_STATE_Hover; |
544 if (dwFWLStates & CFWL_PartState_Pressed) | 544 if (dwFWLStates & CFWL_PartState_Pressed) |
(...skipping 13 matching lines...) Expand all Loading... |
558 } else { | 558 } else { |
559 m_pThemeData->clrCaption = ArgbEncode(0xff, 128, 128, 0); | 559 m_pThemeData->clrCaption = ArgbEncode(0xff, 128, 128, 0); |
560 m_pThemeData->clrSeperator = ArgbEncode(0xff, 128, 128, 64); | 560 m_pThemeData->clrSeperator = ArgbEncode(0xff, 128, 128, 64); |
561 m_pThemeData->clrDatesHoverBK = ArgbEncode(0xff, 217, 220, 191); | 561 m_pThemeData->clrDatesHoverBK = ArgbEncode(0xff, 217, 220, 191); |
562 m_pThemeData->clrDatesSelectedBK = ArgbEncode(0xff, 204, 208, 183); | 562 m_pThemeData->clrDatesSelectedBK = ArgbEncode(0xff, 204, 208, 183); |
563 m_pThemeData->clrDatesCircle = ArgbEncode(0xff, 128, 128, 0); | 563 m_pThemeData->clrDatesCircle = ArgbEncode(0xff, 128, 128, 0); |
564 m_pThemeData->clrToday = ArgbEncode(0xff, 0, 0, 0); | 564 m_pThemeData->clrToday = ArgbEncode(0xff, 0, 0, 0); |
565 m_pThemeData->clrBK = ArgbEncode(0xff, 255, 255, 255); | 565 m_pThemeData->clrBK = ArgbEncode(0xff, 255, 255, 255); |
566 } | 566 } |
567 } | 567 } |
OLD | NEW |