| 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 "fpdfsdk/include/pdfwindow/PWL_Note.h" | 7 #include "fpdfsdk/include/pdfwindow/PWL_Note.h" |
| 8 | 8 |
| 9 #include "fpdfsdk/include/pdfwindow/PWL_Button.h" | 9 #include "fpdfsdk/include/pdfwindow/PWL_Button.h" |
| 10 #include "fpdfsdk/include/pdfwindow/PWL_Caret.h" | 10 #include "fpdfsdk/include/pdfwindow/PWL_Caret.h" |
| (...skipping 24 matching lines...) Expand all Loading... |
| 35 | 35 |
| 36 void CPWL_Note_Options::SetTextColor(const CPWL_Color& color) { | 36 void CPWL_Note_Options::SetTextColor(const CPWL_Color& color) { |
| 37 CPWL_Wnd::SetTextColor(color); | 37 CPWL_Wnd::SetTextColor(color); |
| 38 | 38 |
| 39 if (m_pText) | 39 if (m_pText) |
| 40 m_pText->SetTextColor(color); | 40 m_pText->SetTextColor(color); |
| 41 } | 41 } |
| 42 | 42 |
| 43 void CPWL_Note_Options::RePosChildWnd() { | 43 void CPWL_Note_Options::RePosChildWnd() { |
| 44 if (IsValid()) { | 44 if (IsValid()) { |
| 45 CPDF_Rect rcClient = GetClientRect(); | 45 CFX_FloatRect rcClient = GetClientRect(); |
| 46 | 46 |
| 47 if (rcClient.Width() > 15.0f) { | 47 if (rcClient.Width() > 15.0f) { |
| 48 rcClient.right -= 15.0f; | 48 rcClient.right -= 15.0f; |
| 49 m_pText->Move(rcClient, TRUE, FALSE); | 49 m_pText->Move(rcClient, TRUE, FALSE); |
| 50 m_pText->SetVisible(TRUE); | 50 m_pText->SetVisible(TRUE); |
| 51 } else { | 51 } else { |
| 52 m_pText->Move(CPDF_Rect(0, 0, 0, 0), TRUE, FALSE); | 52 m_pText->Move(CFX_FloatRect(0, 0, 0, 0), TRUE, FALSE); |
| 53 m_pText->SetVisible(FALSE); | 53 m_pText->SetVisible(FALSE); |
| 54 } | 54 } |
| 55 } | 55 } |
| 56 } | 56 } |
| 57 | 57 |
| 58 void CPWL_Note_Options::CreateChildWnd(const PWL_CREATEPARAM& cp) { | 58 void CPWL_Note_Options::CreateChildWnd(const PWL_CREATEPARAM& cp) { |
| 59 m_pText = new CPWL_Label; | 59 m_pText = new CPWL_Label; |
| 60 PWL_CREATEPARAM tcp = cp; | 60 PWL_CREATEPARAM tcp = cp; |
| 61 tcp.pParentWnd = this; | 61 tcp.pParentWnd = this; |
| 62 tcp.dwFlags = PWS_CHILD | PWS_VISIBLE; | 62 tcp.dwFlags = PWS_CHILD | PWS_VISIBLE; |
| 63 m_pText->Create(tcp); | 63 m_pText->Create(tcp); |
| 64 } | 64 } |
| 65 | 65 |
| 66 void CPWL_Note_Options::SetText(const CFX_WideString& sText) { | 66 void CPWL_Note_Options::SetText(const CFX_WideString& sText) { |
| 67 m_pText->SetText(sText.c_str()); | 67 m_pText->SetText(sText.c_str()); |
| 68 } | 68 } |
| 69 | 69 |
| 70 void CPWL_Note_Options::DrawThisAppearance(CFX_RenderDevice* pDevice, | 70 void CPWL_Note_Options::DrawThisAppearance(CFX_RenderDevice* pDevice, |
| 71 CFX_Matrix* pUser2Device) { | 71 CFX_Matrix* pUser2Device) { |
| 72 CPWL_Wnd::DrawThisAppearance(pDevice, pUser2Device); | 72 CPWL_Wnd::DrawThisAppearance(pDevice, pUser2Device); |
| 73 | 73 |
| 74 CPDF_Rect rcClient = GetClientRect(); | 74 CFX_FloatRect rcClient = GetClientRect(); |
| 75 rcClient.left = rcClient.right - 15.0f; | 75 rcClient.left = rcClient.right - 15.0f; |
| 76 | 76 |
| 77 CPDF_Point ptCenter = CPDF_Point((rcClient.left + rcClient.right) * 0.5f, | 77 CFX_FloatPoint ptCenter = |
| 78 (rcClient.top + rcClient.bottom) * 0.5f); | 78 CFX_FloatPoint((rcClient.left + rcClient.right) * 0.5f, |
| 79 (rcClient.top + rcClient.bottom) * 0.5f); |
| 79 | 80 |
| 80 CPDF_Point pt1(ptCenter.x - 2.0f, ptCenter.y + 2.0f * 0.5f); | 81 CFX_FloatPoint pt1(ptCenter.x - 2.0f, ptCenter.y + 2.0f * 0.5f); |
| 81 CPDF_Point pt2(ptCenter.x + 2.0f, ptCenter.y + 2.0f * 0.5f); | 82 CFX_FloatPoint pt2(ptCenter.x + 2.0f, ptCenter.y + 2.0f * 0.5f); |
| 82 CPDF_Point pt3(ptCenter.x, ptCenter.y - 3.0f * 0.5f); | 83 CFX_FloatPoint pt3(ptCenter.x, ptCenter.y - 3.0f * 0.5f); |
| 83 | 84 |
| 84 CFX_PathData path; | 85 CFX_PathData path; |
| 85 | 86 |
| 86 path.SetPointCount(4); | 87 path.SetPointCount(4); |
| 87 path.SetPoint(0, pt1.x, pt1.y, FXPT_MOVETO); | 88 path.SetPoint(0, pt1.x, pt1.y, FXPT_MOVETO); |
| 88 path.SetPoint(1, pt2.x, pt2.y, FXPT_LINETO); | 89 path.SetPoint(1, pt2.x, pt2.y, FXPT_LINETO); |
| 89 path.SetPoint(2, pt3.x, pt3.y, FXPT_LINETO); | 90 path.SetPoint(2, pt3.x, pt3.y, FXPT_LINETO); |
| 90 path.SetPoint(3, pt1.x, pt1.y, FXPT_LINETO); | 91 path.SetPoint(3, pt1.x, pt1.y, FXPT_LINETO); |
| 91 | 92 |
| 92 pDevice->DrawPath( | 93 pDevice->DrawPath( |
| 93 &path, pUser2Device, NULL, | 94 &path, pUser2Device, NULL, |
| 94 CPWL_Utils::PWLColorToFXColor(GetTextColor(), GetTransparency()), 0, | 95 CPWL_Utils::PWLColorToFXColor(GetTextColor(), GetTransparency()), 0, |
| 95 FXFILL_ALTERNATE); | 96 FXFILL_ALTERNATE); |
| 96 } | 97 } |
| 97 | 98 |
| 98 CPDF_Rect CPWL_Note_Options::GetContentRect() const { | 99 CFX_FloatRect CPWL_Note_Options::GetContentRect() const { |
| 99 CPDF_Rect rcText = m_pText->GetContentRect(); | 100 CFX_FloatRect rcText = m_pText->GetContentRect(); |
| 100 rcText.right += 15.0f; | 101 rcText.right += 15.0f; |
| 101 return rcText; | 102 return rcText; |
| 102 } | 103 } |
| 103 | 104 |
| 104 CPWL_Note_Edit::CPWL_Note_Edit() | 105 CPWL_Note_Edit::CPWL_Note_Edit() |
| 105 : m_bEnableNotify(TRUE), | 106 : m_bEnableNotify(TRUE), |
| 106 m_fOldItemHeight(0.0f), | 107 m_fOldItemHeight(0.0f), |
| 107 m_bSizeChanged(FALSE), | 108 m_bSizeChanged(FALSE), |
| 108 m_fOldMin(0.0f), | 109 m_fOldMin(0.0f), |
| 109 m_fOldMax(0.0f) {} | 110 m_fOldMax(0.0f) {} |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 198 if (fLimitWidth > 0) { | 199 if (fLimitWidth > 0) { |
| 199 if (!m_bSizeChanged) | 200 if (!m_bSizeChanged) |
| 200 return m_fOldItemHeight; | 201 return m_fOldItemHeight; |
| 201 | 202 |
| 202 m_bSizeChanged = FALSE; | 203 m_bSizeChanged = FALSE; |
| 203 | 204 |
| 204 EnableNotify(FALSE); | 205 EnableNotify(FALSE); |
| 205 EnableRefresh(FALSE); | 206 EnableRefresh(FALSE); |
| 206 m_pEdit->EnableNotify(FALSE); | 207 m_pEdit->EnableNotify(FALSE); |
| 207 | 208 |
| 208 Move(CPDF_Rect(0, 0, fLimitWidth, 0), TRUE, FALSE); | 209 Move(CFX_FloatRect(0, 0, fLimitWidth, 0), TRUE, FALSE); |
| 209 FX_FLOAT fRet = GetContentRect().Height(); | 210 FX_FLOAT fRet = GetContentRect().Height(); |
| 210 | 211 |
| 211 m_pEdit->EnableNotify(TRUE); | 212 m_pEdit->EnableNotify(TRUE); |
| 212 EnableNotify(TRUE); | 213 EnableNotify(TRUE); |
| 213 EnableRefresh(TRUE); | 214 EnableRefresh(TRUE); |
| 214 | 215 |
| 215 return fRet; | 216 return fRet; |
| 216 } | 217 } |
| 217 | 218 |
| 218 return 0; | 219 return 0; |
| 219 } | 220 } |
| 220 | 221 |
| 221 FX_FLOAT CPWL_Note_Edit::GetItemLeftMargin() { | 222 FX_FLOAT CPWL_Note_Edit::GetItemLeftMargin() { |
| 222 return POPUP_ITEM_TEXT_INDENT; | 223 return POPUP_ITEM_TEXT_INDENT; |
| 223 } | 224 } |
| 224 | 225 |
| 225 FX_FLOAT CPWL_Note_Edit::GetItemRightMargin() { | 226 FX_FLOAT CPWL_Note_Edit::GetItemRightMargin() { |
| 226 return POPUP_ITEM_TEXT_INDENT; | 227 return POPUP_ITEM_TEXT_INDENT; |
| 227 } | 228 } |
| 228 | 229 |
| 229 CPWL_Note_LBBox::CPWL_Note_LBBox() {} | 230 CPWL_Note_LBBox::CPWL_Note_LBBox() {} |
| 230 | 231 |
| 231 CPWL_Note_LBBox::~CPWL_Note_LBBox() {} | 232 CPWL_Note_LBBox::~CPWL_Note_LBBox() {} |
| 232 | 233 |
| 233 void CPWL_Note_LBBox::DrawThisAppearance(CFX_RenderDevice* pDevice, | 234 void CPWL_Note_LBBox::DrawThisAppearance(CFX_RenderDevice* pDevice, |
| 234 CFX_Matrix* pUser2Device) { | 235 CFX_Matrix* pUser2Device) { |
| 235 CPDF_Rect rcClient = GetClientRect(); | 236 CFX_FloatRect rcClient = GetClientRect(); |
| 236 | 237 |
| 237 CFX_GraphStateData gsd; | 238 CFX_GraphStateData gsd; |
| 238 gsd.m_LineWidth = 1.0f; | 239 gsd.m_LineWidth = 1.0f; |
| 239 | 240 |
| 240 CFX_PathData pathCross; | 241 CFX_PathData pathCross; |
| 241 | 242 |
| 242 pathCross.SetPointCount(4); | 243 pathCross.SetPointCount(4); |
| 243 pathCross.SetPoint(0, rcClient.left, rcClient.top, FXPT_MOVETO); | 244 pathCross.SetPoint(0, rcClient.left, rcClient.top, FXPT_MOVETO); |
| 244 pathCross.SetPoint(1, rcClient.right, rcClient.bottom, FXPT_LINETO); | 245 pathCross.SetPoint(1, rcClient.right, rcClient.bottom, FXPT_LINETO); |
| 245 pathCross.SetPoint(2, rcClient.left, | 246 pathCross.SetPoint(2, rcClient.left, |
| 246 rcClient.bottom + rcClient.Height() * 0.5f, FXPT_MOVETO); | 247 rcClient.bottom + rcClient.Height() * 0.5f, FXPT_MOVETO); |
| 247 pathCross.SetPoint(3, rcClient.left + rcClient.Width() * 0.5f, | 248 pathCross.SetPoint(3, rcClient.left + rcClient.Width() * 0.5f, |
| 248 rcClient.bottom, FXPT_LINETO); | 249 rcClient.bottom, FXPT_LINETO); |
| 249 | 250 |
| 250 pDevice->DrawPath( | 251 pDevice->DrawPath( |
| 251 &pathCross, pUser2Device, &gsd, 0, | 252 &pathCross, pUser2Device, &gsd, 0, |
| 252 CPWL_Utils::PWLColorToFXColor(GetTextColor(), GetTransparency()), | 253 CPWL_Utils::PWLColorToFXColor(GetTextColor(), GetTransparency()), |
| 253 FXFILL_ALTERNATE); | 254 FXFILL_ALTERNATE); |
| 254 } | 255 } |
| 255 | 256 |
| 256 CPWL_Note_RBBox::CPWL_Note_RBBox() {} | 257 CPWL_Note_RBBox::CPWL_Note_RBBox() {} |
| 257 | 258 |
| 258 CPWL_Note_RBBox::~CPWL_Note_RBBox() {} | 259 CPWL_Note_RBBox::~CPWL_Note_RBBox() {} |
| 259 | 260 |
| 260 void CPWL_Note_RBBox::DrawThisAppearance(CFX_RenderDevice* pDevice, | 261 void CPWL_Note_RBBox::DrawThisAppearance(CFX_RenderDevice* pDevice, |
| 261 CFX_Matrix* pUser2Device) { | 262 CFX_Matrix* pUser2Device) { |
| 262 CPDF_Rect rcClient = GetClientRect(); | 263 CFX_FloatRect rcClient = GetClientRect(); |
| 263 | 264 |
| 264 CFX_GraphStateData gsd; | 265 CFX_GraphStateData gsd; |
| 265 gsd.m_LineWidth = 1.0f; | 266 gsd.m_LineWidth = 1.0f; |
| 266 | 267 |
| 267 CFX_PathData pathCross; | 268 CFX_PathData pathCross; |
| 268 | 269 |
| 269 pathCross.SetPointCount(4); | 270 pathCross.SetPointCount(4); |
| 270 pathCross.SetPoint(0, rcClient.right, rcClient.top, FXPT_MOVETO); | 271 pathCross.SetPoint(0, rcClient.right, rcClient.top, FXPT_MOVETO); |
| 271 pathCross.SetPoint(1, rcClient.left, rcClient.bottom, FXPT_LINETO); | 272 pathCross.SetPoint(1, rcClient.left, rcClient.bottom, FXPT_LINETO); |
| 272 pathCross.SetPoint(2, rcClient.right, | 273 pathCross.SetPoint(2, rcClient.right, |
| (...skipping 23 matching lines...) Expand all Loading... |
| 296 } | 297 } |
| 297 | 298 |
| 298 CPWL_Note_CloseBox::CPWL_Note_CloseBox() : m_bMouseDown(FALSE) {} | 299 CPWL_Note_CloseBox::CPWL_Note_CloseBox() : m_bMouseDown(FALSE) {} |
| 299 | 300 |
| 300 CPWL_Note_CloseBox::~CPWL_Note_CloseBox() {} | 301 CPWL_Note_CloseBox::~CPWL_Note_CloseBox() {} |
| 301 | 302 |
| 302 void CPWL_Note_CloseBox::DrawThisAppearance(CFX_RenderDevice* pDevice, | 303 void CPWL_Note_CloseBox::DrawThisAppearance(CFX_RenderDevice* pDevice, |
| 303 CFX_Matrix* pUser2Device) { | 304 CFX_Matrix* pUser2Device) { |
| 304 CPWL_Button::DrawThisAppearance(pDevice, pUser2Device); | 305 CPWL_Button::DrawThisAppearance(pDevice, pUser2Device); |
| 305 | 306 |
| 306 CPDF_Rect rcClient = GetClientRect(); | 307 CFX_FloatRect rcClient = GetClientRect(); |
| 307 rcClient = CPWL_Utils::DeflateRect(rcClient, 2.0f); | 308 rcClient = CPWL_Utils::DeflateRect(rcClient, 2.0f); |
| 308 | 309 |
| 309 CFX_GraphStateData gsd; | 310 CFX_GraphStateData gsd; |
| 310 gsd.m_LineWidth = 1.0f; | 311 gsd.m_LineWidth = 1.0f; |
| 311 | 312 |
| 312 CFX_PathData pathCross; | 313 CFX_PathData pathCross; |
| 313 | 314 |
| 314 if (m_bMouseDown) { | 315 if (m_bMouseDown) { |
| 315 rcClient.left += 0.5f; | 316 rcClient.left += 0.5f; |
| 316 rcClient.right += 0.5f; | 317 rcClient.right += 0.5f; |
| 317 rcClient.top -= 0.5f; | 318 rcClient.top -= 0.5f; |
| 318 rcClient.bottom -= 0.5f; | 319 rcClient.bottom -= 0.5f; |
| 319 } | 320 } |
| 320 | 321 |
| 321 pathCross.SetPointCount(4); | 322 pathCross.SetPointCount(4); |
| 322 pathCross.SetPoint(0, rcClient.left, rcClient.bottom, FXPT_MOVETO); | 323 pathCross.SetPoint(0, rcClient.left, rcClient.bottom, FXPT_MOVETO); |
| 323 pathCross.SetPoint(1, rcClient.right, rcClient.top, FXPT_LINETO); | 324 pathCross.SetPoint(1, rcClient.right, rcClient.top, FXPT_LINETO); |
| 324 pathCross.SetPoint(2, rcClient.left, rcClient.top, FXPT_MOVETO); | 325 pathCross.SetPoint(2, rcClient.left, rcClient.top, FXPT_MOVETO); |
| 325 pathCross.SetPoint(3, rcClient.right, rcClient.bottom, FXPT_LINETO); | 326 pathCross.SetPoint(3, rcClient.right, rcClient.bottom, FXPT_LINETO); |
| 326 | 327 |
| 327 pDevice->DrawPath( | 328 pDevice->DrawPath( |
| 328 &pathCross, pUser2Device, &gsd, 0, | 329 &pathCross, pUser2Device, &gsd, 0, |
| 329 CPWL_Utils::PWLColorToFXColor(GetTextColor(), GetTransparency()), | 330 CPWL_Utils::PWLColorToFXColor(GetTextColor(), GetTransparency()), |
| 330 FXFILL_ALTERNATE); | 331 FXFILL_ALTERNATE); |
| 331 } | 332 } |
| 332 | 333 |
| 333 FX_BOOL CPWL_Note_CloseBox::OnLButtonDown(const CPDF_Point& point, | 334 FX_BOOL CPWL_Note_CloseBox::OnLButtonDown(const CFX_FloatPoint& point, |
| 334 FX_DWORD nFlag) { | 335 FX_DWORD nFlag) { |
| 335 SetBorderStyle(PBS_INSET); | 336 SetBorderStyle(PBS_INSET); |
| 336 InvalidateRect(NULL); | 337 InvalidateRect(NULL); |
| 337 | 338 |
| 338 m_bMouseDown = TRUE; | 339 m_bMouseDown = TRUE; |
| 339 | 340 |
| 340 return CPWL_Button::OnLButtonDown(point, nFlag); | 341 return CPWL_Button::OnLButtonDown(point, nFlag); |
| 341 } | 342 } |
| 342 | 343 |
| 343 FX_BOOL CPWL_Note_CloseBox::OnLButtonUp(const CPDF_Point& point, | 344 FX_BOOL CPWL_Note_CloseBox::OnLButtonUp(const CFX_FloatPoint& point, |
| 344 FX_DWORD nFlag) { | 345 FX_DWORD nFlag) { |
| 345 m_bMouseDown = FALSE; | 346 m_bMouseDown = FALSE; |
| 346 | 347 |
| 347 SetBorderStyle(PBS_BEVELED); | 348 SetBorderStyle(PBS_BEVELED); |
| 348 InvalidateRect(NULL); | 349 InvalidateRect(NULL); |
| 349 | 350 |
| 350 return CPWL_Button::OnLButtonUp(point, nFlag); | 351 return CPWL_Button::OnLButtonUp(point, nFlag); |
| 351 } | 352 } |
| 352 | 353 |
| 353 CPWL_Note_Contents::CPWL_Note_Contents() : m_pEdit(NULL) {} | 354 CPWL_Note_Contents::CPWL_Note_Contents() : m_pEdit(NULL) {} |
| (...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 441 ASSERT(pChild->GetClassName() == "CPWL_NoteItem"); | 442 ASSERT(pChild->GetClassName() == "CPWL_NoteItem"); |
| 442 CPWL_NoteItem* pItem = (CPWL_NoteItem*)pChild; | 443 CPWL_NoteItem* pItem = (CPWL_NoteItem*)pChild; |
| 443 pItem->ResetSubjectName(i); | 444 pItem->ResetSubjectName(i); |
| 444 } | 445 } |
| 445 } | 446 } |
| 446 | 447 |
| 447 OnNotify(this, PNM_NOTEEDITCHANGED, 0, 0); | 448 OnNotify(this, PNM_NOTEEDITCHANGED, 0, 0); |
| 448 } | 449 } |
| 449 } | 450 } |
| 450 | 451 |
| 451 IPWL_NoteItem* CPWL_Note_Contents::GetHitNoteItem(const CPDF_Point& point) { | 452 IPWL_NoteItem* CPWL_Note_Contents::GetHitNoteItem(const CFX_FloatPoint& point) { |
| 452 CPDF_Point pt = ParentToChild(point); | 453 CFX_FloatPoint pt = ParentToChild(point); |
| 453 | 454 |
| 454 for (int32_t i = 0, sz = m_aChildren.GetSize(); i < sz; i++) { | 455 for (int32_t i = 0, sz = m_aChildren.GetSize(); i < sz; i++) { |
| 455 if (CPWL_Wnd* pChild = m_aChildren.GetAt(i)) { | 456 if (CPWL_Wnd* pChild = m_aChildren.GetAt(i)) { |
| 456 if (pChild->GetClassName() == "CPWL_NoteItem") { | 457 if (pChild->GetClassName() == "CPWL_NoteItem") { |
| 457 CPWL_NoteItem* pNoteItem = (CPWL_NoteItem*)pChild; | 458 CPWL_NoteItem* pNoteItem = (CPWL_NoteItem*)pChild; |
| 458 if (IPWL_NoteItem* pRet = pNoteItem->GetHitNoteItem(pt)) | 459 if (IPWL_NoteItem* pRet = pNoteItem->GetHitNoteItem(pt)) |
| 459 return pRet; | 460 return pRet; |
| 460 } | 461 } |
| 461 } | 462 } |
| 462 } | 463 } |
| (...skipping 18 matching lines...) Expand all Loading... |
| 481 if (CPWL_Wnd* pChild = m_aChildren.GetAt(i)) | 482 if (CPWL_Wnd* pChild = m_aChildren.GetAt(i)) |
| 482 pChild->OnNotify(this, PNM_NOTERESET, 0, 0); | 483 pChild->OnNotify(this, PNM_NOTERESET, 0, 0); |
| 483 } | 484 } |
| 484 | 485 |
| 485 if (CPWL_Wnd* pParent = GetParentWindow()) { | 486 if (CPWL_Wnd* pParent = GetParentWindow()) { |
| 486 pParent->OnNotify(this, PNM_NOTEEDITCHANGED, 0, 0); | 487 pParent->OnNotify(this, PNM_NOTEEDITCHANGED, 0, 0); |
| 487 } | 488 } |
| 488 } | 489 } |
| 489 return; | 490 return; |
| 490 case PNM_SCROLLWINDOW: | 491 case PNM_SCROLLWINDOW: |
| 491 SetScrollPos(CPDF_Point(0.0f, *(FX_FLOAT*)lParam)); | 492 SetScrollPos(CFX_FloatPoint(0.0f, *(FX_FLOAT*)lParam)); |
| 492 ResetFace(); | 493 ResetFace(); |
| 493 InvalidateRect(NULL); | 494 InvalidateRect(NULL); |
| 494 return; | 495 return; |
| 495 case PNM_SETCARETINFO: | 496 case PNM_SETCARETINFO: |
| 496 if (PWL_CARET_INFO* pInfo = (PWL_CARET_INFO*)wParam) { | 497 if (PWL_CARET_INFO* pInfo = (PWL_CARET_INFO*)wParam) { |
| 497 PWL_CARET_INFO newInfo = *pInfo; | 498 PWL_CARET_INFO newInfo = *pInfo; |
| 498 newInfo.bVisible = TRUE; | 499 newInfo.bVisible = TRUE; |
| 499 newInfo.ptHead = ChildToParent(pInfo->ptHead); | 500 newInfo.ptHead = ChildToParent(pInfo->ptHead); |
| 500 newInfo.ptFoot = ChildToParent(pInfo->ptFoot); | 501 newInfo.ptFoot = ChildToParent(pInfo->ptFoot); |
| 501 | 502 |
| (...skipping 15 matching lines...) Expand all Loading... |
| 517 m_pEdit->EnableNotify(FALSE); | 518 m_pEdit->EnableNotify(FALSE); |
| 518 ResetContent(0); | 519 ResetContent(0); |
| 519 m_pEdit->EnableNotify(TRUE); | 520 m_pEdit->EnableNotify(TRUE); |
| 520 } | 521 } |
| 521 return; | 522 return; |
| 522 } | 523 } |
| 523 | 524 |
| 524 CPWL_Wnd::OnNotify(pWnd, msg, wParam, lParam); | 525 CPWL_Wnd::OnNotify(pWnd, msg, wParam, lParam); |
| 525 } | 526 } |
| 526 | 527 |
| 527 FX_BOOL CPWL_Note_Contents::OnLButtonDown(const CPDF_Point& point, | 528 FX_BOOL CPWL_Note_Contents::OnLButtonDown(const CFX_FloatPoint& point, |
| 528 FX_DWORD nFlag) { | 529 FX_DWORD nFlag) { |
| 529 if (CPWL_Wnd::OnLButtonDown(point, nFlag)) | 530 if (CPWL_Wnd::OnLButtonDown(point, nFlag)) |
| 530 return TRUE; | 531 return TRUE; |
| 531 | 532 |
| 532 if (!m_pEdit->IsFocused()) { | 533 if (!m_pEdit->IsFocused()) { |
| 533 m_pEdit->SetFocus(); | 534 m_pEdit->SetFocus(); |
| 534 } | 535 } |
| 535 | 536 |
| 536 return TRUE; | 537 return TRUE; |
| 537 } | 538 } |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 624 CPWL_Color(COLORTYPE_RGB, 240 / 255.0f, 240 / 255.0f, 240 / 255.0f); | 625 CPWL_Color(COLORTYPE_RGB, 240 / 255.0f, 240 / 255.0f, 240 / 255.0f); |
| 625 ccp.dwFlags = PWS_VISIBLE | PWS_CHILD | PWS_BACKGROUND; | 626 ccp.dwFlags = PWS_VISIBLE | PWS_CHILD | PWS_BACKGROUND; |
| 626 m_pContents->Create(ccp); | 627 m_pContents->Create(ccp); |
| 627 m_pContents->SetItemSpace(POPUP_ITEM_SPACE); | 628 m_pContents->SetItemSpace(POPUP_ITEM_SPACE); |
| 628 m_pContents->SetTopSpace(POPUP_ITEM_SPACE); | 629 m_pContents->SetTopSpace(POPUP_ITEM_SPACE); |
| 629 m_pContents->SetBottomSpace(POPUP_ITEM_SPACE); | 630 m_pContents->SetBottomSpace(POPUP_ITEM_SPACE); |
| 630 } | 631 } |
| 631 | 632 |
| 632 void CPWL_NoteItem::RePosChildWnd() { | 633 void CPWL_NoteItem::RePosChildWnd() { |
| 633 if (IsValid()) { | 634 if (IsValid()) { |
| 634 CPDF_Rect rcClient = GetClientRect(); | 635 CFX_FloatRect rcClient = GetClientRect(); |
| 635 | 636 |
| 636 CPDF_Rect rcSubject = rcClient; | 637 CFX_FloatRect rcSubject = rcClient; |
| 637 rcSubject.left += POPUP_ITEM_TEXT_INDENT; | 638 rcSubject.left += POPUP_ITEM_TEXT_INDENT; |
| 638 rcSubject.top = rcClient.top; | 639 rcSubject.top = rcClient.top; |
| 639 rcSubject.right = | 640 rcSubject.right = |
| 640 PWL_MIN(rcSubject.left + m_pSubject->GetContentRect().Width() + 1.0f, | 641 PWL_MIN(rcSubject.left + m_pSubject->GetContentRect().Width() + 1.0f, |
| 641 rcClient.right); | 642 rcClient.right); |
| 642 rcSubject.bottom = rcSubject.top - m_pSubject->GetContentRect().Height(); | 643 rcSubject.bottom = rcSubject.top - m_pSubject->GetContentRect().Height(); |
| 643 rcSubject.Normalize(); | 644 rcSubject.Normalize(); |
| 644 m_pSubject->Move(rcSubject, TRUE, FALSE); | 645 m_pSubject->Move(rcSubject, TRUE, FALSE); |
| 645 m_pSubject->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcSubject)); | 646 m_pSubject->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcSubject)); |
| 646 | 647 |
| 647 CPDF_Rect rcDate = rcClient; | 648 CFX_FloatRect rcDate = rcClient; |
| 648 rcDate.right -= POPUP_ITEM_TEXT_INDENT; | 649 rcDate.right -= POPUP_ITEM_TEXT_INDENT; |
| 649 rcDate.left = | 650 rcDate.left = |
| 650 PWL_MAX(rcDate.right - m_pDateTime->GetContentRect().Width() - 1.0f, | 651 PWL_MAX(rcDate.right - m_pDateTime->GetContentRect().Width() - 1.0f, |
| 651 rcSubject.right); | 652 rcSubject.right); |
| 652 rcDate.bottom = rcDate.top - m_pDateTime->GetContentRect().Height(); | 653 rcDate.bottom = rcDate.top - m_pDateTime->GetContentRect().Height(); |
| 653 rcDate.Normalize(); | 654 rcDate.Normalize(); |
| 654 m_pDateTime->Move(rcDate, TRUE, FALSE); | 655 m_pDateTime->Move(rcDate, TRUE, FALSE); |
| 655 m_pDateTime->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcDate)); | 656 m_pDateTime->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcDate)); |
| 656 | 657 |
| 657 CPDF_Rect rcContents = rcClient; | 658 CFX_FloatRect rcContents = rcClient; |
| 658 rcContents.left += 1.0f; | 659 rcContents.left += 1.0f; |
| 659 rcContents.right -= 1.0f; | 660 rcContents.right -= 1.0f; |
| 660 rcContents.top = rcDate.bottom - POPUP_ITEM_HEAD_BOTTOM; | 661 rcContents.top = rcDate.bottom - POPUP_ITEM_HEAD_BOTTOM; |
| 661 rcContents.bottom += POPUP_ITEM_BOTTOMWIDTH; | 662 rcContents.bottom += POPUP_ITEM_BOTTOMWIDTH; |
| 662 rcContents.Normalize(); | 663 rcContents.Normalize(); |
| 663 m_pContents->Move(rcContents, TRUE, FALSE); | 664 m_pContents->Move(rcContents, TRUE, FALSE); |
| 664 m_pContents->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcContents)); | 665 m_pContents->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcContents)); |
| 665 } | 666 } |
| 666 | 667 |
| 667 SetClipRect(CPWL_Utils::InflateRect(GetWindowRect(), 1.0f)); | 668 SetClipRect(CPWL_Utils::InflateRect(GetWindowRect(), 1.0f)); |
| (...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 843 KillFocus(); | 844 KillFocus(); |
| 844 | 845 |
| 845 if (IPWL_NoteNotify* pNotify = GetNoteNotify()) { | 846 if (IPWL_NoteNotify* pNotify = GetNoteNotify()) { |
| 846 pNotify->OnItemDelete(pNoteItem); | 847 pNotify->OnItemDelete(pNoteItem); |
| 847 } | 848 } |
| 848 | 849 |
| 849 if (m_pContents) | 850 if (m_pContents) |
| 850 m_pContents->DeleteSubItem(pNoteItem); | 851 m_pContents->DeleteSubItem(pNoteItem); |
| 851 } | 852 } |
| 852 | 853 |
| 853 IPWL_NoteItem* CPWL_NoteItem::GetHitNoteItem(const CPDF_Point& point) { | 854 IPWL_NoteItem* CPWL_NoteItem::GetHitNoteItem(const CFX_FloatPoint& point) { |
| 854 CPDF_Point pt = ParentToChild(point); | 855 CFX_FloatPoint pt = ParentToChild(point); |
| 855 | 856 |
| 856 if (WndHitTest(pt)) { | 857 if (WndHitTest(pt)) { |
| 857 if (m_pContents) { | 858 if (m_pContents) { |
| 858 if (IPWL_NoteItem* pNoteItem = m_pContents->GetHitNoteItem(pt)) | 859 if (IPWL_NoteItem* pNoteItem = m_pContents->GetHitNoteItem(pt)) |
| 859 return pNoteItem; | 860 return pNoteItem; |
| 860 } | 861 } |
| 861 | 862 |
| 862 return this; | 863 return this; |
| 863 } | 864 } |
| 864 | 865 |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 902 } | 903 } |
| 903 | 904 |
| 904 FX_FLOAT CPWL_NoteItem::GetItemLeftMargin() { | 905 FX_FLOAT CPWL_NoteItem::GetItemLeftMargin() { |
| 905 return POPUP_ITEM_SIDEMARGIN; | 906 return POPUP_ITEM_SIDEMARGIN; |
| 906 } | 907 } |
| 907 | 908 |
| 908 FX_FLOAT CPWL_NoteItem::GetItemRightMargin() { | 909 FX_FLOAT CPWL_NoteItem::GetItemRightMargin() { |
| 909 return POPUP_ITEM_SIDEMARGIN; | 910 return POPUP_ITEM_SIDEMARGIN; |
| 910 } | 911 } |
| 911 | 912 |
| 912 FX_BOOL CPWL_NoteItem::OnLButtonDown(const CPDF_Point& point, FX_DWORD nFlag) { | 913 FX_BOOL CPWL_NoteItem::OnLButtonDown(const CFX_FloatPoint& point, |
| 914 FX_DWORD nFlag) { |
| 913 if (!m_pContents->WndHitTest(m_pContents->ParentToChild(point))) { | 915 if (!m_pContents->WndHitTest(m_pContents->ParentToChild(point))) { |
| 914 SetNoteFocus(FALSE); | 916 SetNoteFocus(FALSE); |
| 915 } | 917 } |
| 916 | 918 |
| 917 CPWL_Wnd::OnLButtonDown(point, nFlag); | 919 CPWL_Wnd::OnLButtonDown(point, nFlag); |
| 918 | 920 |
| 919 return TRUE; | 921 return TRUE; |
| 920 } | 922 } |
| 921 | 923 |
| 922 FX_BOOL CPWL_NoteItem::OnRButtonUp(const CPDF_Point& point, FX_DWORD nFlag) { | 924 FX_BOOL CPWL_NoteItem::OnRButtonUp(const CFX_FloatPoint& point, |
| 925 FX_DWORD nFlag) { |
| 923 if (!m_pContents->WndHitTest(m_pContents->ParentToChild(point))) { | 926 if (!m_pContents->WndHitTest(m_pContents->ParentToChild(point))) { |
| 924 SetNoteFocus(FALSE); | 927 SetNoteFocus(FALSE); |
| 925 PopupNoteItemMenu(point); | 928 PopupNoteItemMenu(point); |
| 926 | 929 |
| 927 return TRUE; | 930 return TRUE; |
| 928 } | 931 } |
| 929 | 932 |
| 930 return CPWL_Wnd::OnRButtonUp(point, nFlag); | 933 return CPWL_Wnd::OnRButtonUp(point, nFlag); |
| 931 } | 934 } |
| 932 | 935 |
| (...skipping 24 matching lines...) Expand all Loading... |
| 957 case PNM_NOTERESET: | 960 case PNM_NOTERESET: |
| 958 m_bSizeChanged = TRUE; | 961 m_bSizeChanged = TRUE; |
| 959 m_pContents->OnNotify(this, PNM_NOTERESET, 0, 0); | 962 m_pContents->OnNotify(this, PNM_NOTERESET, 0, 0); |
| 960 | 963 |
| 961 return; | 964 return; |
| 962 } | 965 } |
| 963 | 966 |
| 964 CPWL_Wnd::OnNotify(pWnd, msg, wParam, lParam); | 967 CPWL_Wnd::OnNotify(pWnd, msg, wParam, lParam); |
| 965 } | 968 } |
| 966 | 969 |
| 967 void CPWL_NoteItem::PopupNoteItemMenu(const CPDF_Point& point) { | 970 void CPWL_NoteItem::PopupNoteItemMenu(const CFX_FloatPoint& point) { |
| 968 if (IPWL_NoteNotify* pNotify = GetNoteNotify()) { | 971 if (IPWL_NoteNotify* pNotify = GetNoteNotify()) { |
| 969 int32_t x, y; | 972 int32_t x, y; |
| 970 PWLtoWnd(point, x, y); | 973 PWLtoWnd(point, x, y); |
| 971 if (IFX_SystemHandler* pSH = GetSystemHandler()) | 974 if (IFX_SystemHandler* pSH = GetSystemHandler()) |
| 972 pSH->ClientToScreen(GetAttachedHWnd(), x, y); | 975 pSH->ClientToScreen(GetAttachedHWnd(), x, y); |
| 973 pNotify->OnPopupMenu(this, x, y); | 976 pNotify->OnPopupMenu(this, x, y); |
| 974 } | 977 } |
| 975 } | 978 } |
| 976 | 979 |
| 977 const CPWL_Note* CPWL_NoteItem::GetNote() const { | 980 const CPWL_Note* CPWL_NoteItem::GetNote() const { |
| (...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1070 } else { | 1073 } else { |
| 1071 if (m_pContentsBar->IsVisible()) { | 1074 if (m_pContentsBar->IsVisible()) { |
| 1072 m_pContentsBar->SetVisible(FALSE); | 1075 m_pContentsBar->SetVisible(FALSE); |
| 1073 m_pContentsBar->InvalidateRect(NULL); | 1076 m_pContentsBar->InvalidateRect(NULL); |
| 1074 | 1077 |
| 1075 bScrollChanged = TRUE; | 1078 bScrollChanged = TRUE; |
| 1076 } | 1079 } |
| 1077 } | 1080 } |
| 1078 | 1081 |
| 1079 if (bScrollChanged) { | 1082 if (bScrollChanged) { |
| 1080 CPDF_Rect rcNote = GetClientRect(); | 1083 CFX_FloatRect rcNote = GetClientRect(); |
| 1081 CPDF_Rect rcContents = m_pContents->GetWindowRect(); | 1084 CFX_FloatRect rcContents = m_pContents->GetWindowRect(); |
| 1082 rcContents.right = rcNote.right - 3.0f; | 1085 rcContents.right = rcNote.right - 3.0f; |
| 1083 if (m_pContentsBar->IsVisible()) | 1086 if (m_pContentsBar->IsVisible()) |
| 1084 rcContents.right -= PWL_SCROLLBAR_WIDTH; | 1087 rcContents.right -= PWL_SCROLLBAR_WIDTH; |
| 1085 m_pContents->Move(rcContents, TRUE, TRUE); | 1088 m_pContents->Move(rcContents, TRUE, TRUE); |
| 1086 m_pContents->SetScrollPos(CPDF_Point(0.0f, 0.0f)); | 1089 m_pContents->SetScrollPos(CFX_FloatPoint(0.0f, 0.0f)); |
| 1087 m_pContents->InvalidateRect(NULL); | 1090 m_pContents->InvalidateRect(NULL); |
| 1088 } | 1091 } |
| 1089 | 1092 |
| 1090 return bScrollChanged; | 1093 return bScrollChanged; |
| 1091 } | 1094 } |
| 1092 | 1095 |
| 1093 FX_BOOL CPWL_Note::ScrollBarShouldVisible() { | 1096 FX_BOOL CPWL_Note::ScrollBarShouldVisible() { |
| 1094 CPDF_Rect rcContentsFact = m_pContents->GetScrollArea(); | 1097 CFX_FloatRect rcContentsFact = m_pContents->GetScrollArea(); |
| 1095 CPDF_Rect rcContentsClient = m_pContents->GetClientRect(); | 1098 CFX_FloatRect rcContentsClient = m_pContents->GetClientRect(); |
| 1096 | 1099 |
| 1097 return rcContentsFact.Height() > rcContentsClient.Height(); | 1100 return rcContentsFact.Height() > rcContentsClient.Height(); |
| 1098 } | 1101 } |
| 1099 | 1102 |
| 1100 void CPWL_Note::SetOptionsText(const CFX_WideString& sText) { | 1103 void CPWL_Note::SetOptionsText(const CFX_WideString& sText) { |
| 1101 if (m_pOptions) | 1104 if (m_pOptions) |
| 1102 m_pOptions->SetText(sText); | 1105 m_pOptions->SetText(sText); |
| 1103 | 1106 |
| 1104 RePosNoteChildren(); | 1107 RePosNoteChildren(); |
| 1105 } | 1108 } |
| 1106 | 1109 |
| 1107 void CPWL_Note::RePosNoteChildren() { | 1110 void CPWL_Note::RePosNoteChildren() { |
| 1108 if (m_bResizing) | 1111 if (m_bResizing) |
| 1109 return; | 1112 return; |
| 1110 | 1113 |
| 1111 m_bResizing = TRUE; | 1114 m_bResizing = TRUE; |
| 1112 | 1115 |
| 1113 if (IsValid()) { | 1116 if (IsValid()) { |
| 1114 CPDF_Rect rcClient = GetClientRect(); | 1117 CFX_FloatRect rcClient = GetClientRect(); |
| 1115 | 1118 |
| 1116 CPDF_Rect rcIcon = rcClient; | 1119 CFX_FloatRect rcIcon = rcClient; |
| 1117 rcIcon.top -= 2.0f; | 1120 rcIcon.top -= 2.0f; |
| 1118 rcIcon.right = rcIcon.left + 14.0f; | 1121 rcIcon.right = rcIcon.left + 14.0f; |
| 1119 rcIcon.bottom = rcIcon.top - 14.0f; | 1122 rcIcon.bottom = rcIcon.top - 14.0f; |
| 1120 rcIcon.Normalize(); | 1123 rcIcon.Normalize(); |
| 1121 m_pIcon->Move(rcIcon, TRUE, FALSE); | 1124 m_pIcon->Move(rcIcon, TRUE, FALSE); |
| 1122 m_pIcon->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcIcon)); | 1125 m_pIcon->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcIcon)); |
| 1123 | 1126 |
| 1124 CPDF_Rect rcCloseBox = rcClient; | 1127 CFX_FloatRect rcCloseBox = rcClient; |
| 1125 rcCloseBox.right -= 1.0f; | 1128 rcCloseBox.right -= 1.0f; |
| 1126 rcCloseBox.top -= 1.0f; | 1129 rcCloseBox.top -= 1.0f; |
| 1127 rcCloseBox.left = rcCloseBox.right - 14.0f; | 1130 rcCloseBox.left = rcCloseBox.right - 14.0f; |
| 1128 rcCloseBox.bottom = rcCloseBox.top - 14.0f; | 1131 rcCloseBox.bottom = rcCloseBox.top - 14.0f; |
| 1129 rcCloseBox.Normalize(); | 1132 rcCloseBox.Normalize(); |
| 1130 m_pCloseBox->Move(rcCloseBox, TRUE, FALSE); | 1133 m_pCloseBox->Move(rcCloseBox, TRUE, FALSE); |
| 1131 m_pCloseBox->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcCloseBox)); | 1134 m_pCloseBox->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcCloseBox)); |
| 1132 | 1135 |
| 1133 CPDF_Rect rcDate = rcClient; | 1136 CFX_FloatRect rcDate = rcClient; |
| 1134 rcDate.right = rcCloseBox.left - POPUP_ITEM_TEXT_INDENT; | 1137 rcDate.right = rcCloseBox.left - POPUP_ITEM_TEXT_INDENT; |
| 1135 rcDate.left = | 1138 rcDate.left = |
| 1136 PWL_MAX(rcDate.right - m_pDateTime->GetContentRect().Width() - 1.0f, | 1139 PWL_MAX(rcDate.right - m_pDateTime->GetContentRect().Width() - 1.0f, |
| 1137 rcIcon.right + 1.0f); | 1140 rcIcon.right + 1.0f); |
| 1138 rcDate.top = rcClient.top - 2.0f; | 1141 rcDate.top = rcClient.top - 2.0f; |
| 1139 rcDate.bottom = rcDate.top - m_pDateTime->GetContentRect().Height(); | 1142 rcDate.bottom = rcDate.top - m_pDateTime->GetContentRect().Height(); |
| 1140 rcDate.Normalize(); | 1143 rcDate.Normalize(); |
| 1141 m_pDateTime->Move(rcDate, TRUE, FALSE); | 1144 m_pDateTime->Move(rcDate, TRUE, FALSE); |
| 1142 m_pDateTime->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcDate)); | 1145 m_pDateTime->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcDate)); |
| 1143 | 1146 |
| 1144 CPDF_Rect rcSubject = rcClient; | 1147 CFX_FloatRect rcSubject = rcClient; |
| 1145 rcSubject.top = rcClient.top - 2.0f; | 1148 rcSubject.top = rcClient.top - 2.0f; |
| 1146 rcSubject.left = rcIcon.right + POPUP_ITEM_TEXT_INDENT; | 1149 rcSubject.left = rcIcon.right + POPUP_ITEM_TEXT_INDENT; |
| 1147 rcSubject.right = | 1150 rcSubject.right = |
| 1148 PWL_MIN(rcSubject.left + m_pSubject->GetContentRect().Width() + 1.0f, | 1151 PWL_MIN(rcSubject.left + m_pSubject->GetContentRect().Width() + 1.0f, |
| 1149 rcDate.left - 1.0f); | 1152 rcDate.left - 1.0f); |
| 1150 rcSubject.bottom = rcSubject.top - m_pSubject->GetContentRect().Height(); | 1153 rcSubject.bottom = rcSubject.top - m_pSubject->GetContentRect().Height(); |
| 1151 rcSubject.Normalize(); | 1154 rcSubject.Normalize(); |
| 1152 m_pSubject->Move(rcSubject, TRUE, FALSE); | 1155 m_pSubject->Move(rcSubject, TRUE, FALSE); |
| 1153 m_pSubject->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcSubject)); | 1156 m_pSubject->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcSubject)); |
| 1154 | 1157 |
| 1155 CPDF_Rect rcOptions = rcClient; | 1158 CFX_FloatRect rcOptions = rcClient; |
| 1156 rcOptions.left = | 1159 rcOptions.left = |
| 1157 PWL_MAX(rcOptions.right - m_pOptions->GetContentRect().Width(), | 1160 PWL_MAX(rcOptions.right - m_pOptions->GetContentRect().Width(), |
| 1158 rcIcon.right + 1.0f); | 1161 rcIcon.right + 1.0f); |
| 1159 rcOptions.top = rcSubject.bottom - 4.0f; | 1162 rcOptions.top = rcSubject.bottom - 4.0f; |
| 1160 rcOptions.bottom = rcOptions.top - m_pOptions->GetContentRect().Height(); | 1163 rcOptions.bottom = rcOptions.top - m_pOptions->GetContentRect().Height(); |
| 1161 rcOptions.Normalize(); | 1164 rcOptions.Normalize(); |
| 1162 m_pOptions->Move(rcOptions, TRUE, FALSE); | 1165 m_pOptions->Move(rcOptions, TRUE, FALSE); |
| 1163 m_pOptions->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcOptions)); | 1166 m_pOptions->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcOptions)); |
| 1164 | 1167 |
| 1165 CPDF_Rect rcAuthor = rcClient; | 1168 CFX_FloatRect rcAuthor = rcClient; |
| 1166 rcAuthor.top = rcSubject.bottom - 4.0f; | 1169 rcAuthor.top = rcSubject.bottom - 4.0f; |
| 1167 rcAuthor.left = rcSubject.left; | 1170 rcAuthor.left = rcSubject.left; |
| 1168 rcAuthor.right = | 1171 rcAuthor.right = |
| 1169 PWL_MIN(rcSubject.left + m_pAuthor->GetContentRect().Width() + 1.0f, | 1172 PWL_MIN(rcSubject.left + m_pAuthor->GetContentRect().Width() + 1.0f, |
| 1170 rcOptions.left - 1.0f); | 1173 rcOptions.left - 1.0f); |
| 1171 rcAuthor.bottom = rcAuthor.top - m_pAuthor->GetContentRect().Height(); | 1174 rcAuthor.bottom = rcAuthor.top - m_pAuthor->GetContentRect().Height(); |
| 1172 rcAuthor.Normalize(); | 1175 rcAuthor.Normalize(); |
| 1173 m_pAuthor->Move(rcAuthor, TRUE, FALSE); | 1176 m_pAuthor->Move(rcAuthor, TRUE, FALSE); |
| 1174 m_pAuthor->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcAuthor)); | 1177 m_pAuthor->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcAuthor)); |
| 1175 | 1178 |
| 1176 CPDF_Rect rcLBBox = rcClient; | 1179 CFX_FloatRect rcLBBox = rcClient; |
| 1177 rcLBBox.top = rcLBBox.bottom + 7.0f; | 1180 rcLBBox.top = rcLBBox.bottom + 7.0f; |
| 1178 rcLBBox.right = rcLBBox.left + 7.0f; | 1181 rcLBBox.right = rcLBBox.left + 7.0f; |
| 1179 rcLBBox.Normalize(); | 1182 rcLBBox.Normalize(); |
| 1180 m_pLBBox->Move(rcLBBox, TRUE, FALSE); | 1183 m_pLBBox->Move(rcLBBox, TRUE, FALSE); |
| 1181 m_pLBBox->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcLBBox)); | 1184 m_pLBBox->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcLBBox)); |
| 1182 | 1185 |
| 1183 CPDF_Rect rcRBBox = rcClient; | 1186 CFX_FloatRect rcRBBox = rcClient; |
| 1184 rcRBBox.top = rcRBBox.bottom + 7.0f; | 1187 rcRBBox.top = rcRBBox.bottom + 7.0f; |
| 1185 rcRBBox.left = rcRBBox.right - 7.0f; | 1188 rcRBBox.left = rcRBBox.right - 7.0f; |
| 1186 rcRBBox.Normalize(); | 1189 rcRBBox.Normalize(); |
| 1187 m_pRBBox->Move(rcRBBox, TRUE, FALSE); | 1190 m_pRBBox->Move(rcRBBox, TRUE, FALSE); |
| 1188 m_pRBBox->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcRBBox)); | 1191 m_pRBBox->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcRBBox)); |
| 1189 | 1192 |
| 1190 CPDF_Rect rcContents = rcClient; | 1193 CFX_FloatRect rcContents = rcClient; |
| 1191 rcContents.top = rcAuthor.bottom - POPUP_ITEM_HEAD_BOTTOM; | 1194 rcContents.top = rcAuthor.bottom - POPUP_ITEM_HEAD_BOTTOM; |
| 1192 rcContents.left += 3.0f; | 1195 rcContents.left += 3.0f; |
| 1193 rcContents.right -= 3.0f; | 1196 rcContents.right -= 3.0f; |
| 1194 if (m_pContentsBar->IsVisible()) | 1197 if (m_pContentsBar->IsVisible()) |
| 1195 rcContents.right -= PWL_SCROLLBAR_WIDTH; | 1198 rcContents.right -= PWL_SCROLLBAR_WIDTH; |
| 1196 rcContents.bottom += 14.0f; | 1199 rcContents.bottom += 14.0f; |
| 1197 rcContents.Normalize(); | 1200 rcContents.Normalize(); |
| 1198 m_pContents->Move(rcContents, FALSE, FALSE); | 1201 m_pContents->Move(rcContents, FALSE, FALSE); |
| 1199 m_pContents->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcContents)); | 1202 m_pContents->SetVisible(CPWL_Utils::ContainsRect(rcClient, rcContents)); |
| 1200 | 1203 |
| 1201 CPDF_Rect rcContentsBar = rcContents; | 1204 CFX_FloatRect rcContentsBar = rcContents; |
| 1202 rcContentsBar.right = rcClient.right - 3.0f; | 1205 rcContentsBar.right = rcClient.right - 3.0f; |
| 1203 rcContentsBar.left = rcContentsBar.right - PWL_SCROLLBAR_WIDTH; | 1206 rcContentsBar.left = rcContentsBar.right - PWL_SCROLLBAR_WIDTH; |
| 1204 rcContentsBar.Normalize(); | 1207 rcContentsBar.Normalize(); |
| 1205 m_pContentsBar->Move(rcContentsBar, TRUE, FALSE); | 1208 m_pContentsBar->Move(rcContentsBar, TRUE, FALSE); |
| 1206 } | 1209 } |
| 1207 | 1210 |
| 1208 m_bResizing = FALSE; | 1211 m_bResizing = FALSE; |
| 1209 } | 1212 } |
| 1210 | 1213 |
| 1211 void CPWL_Note::CreateChildWnd(const PWL_CREATEPARAM& cp) { | 1214 void CPWL_Note::CreateChildWnd(const PWL_CREATEPARAM& cp) { |
| (...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1290 } | 1293 } |
| 1291 | 1294 |
| 1292 CFX_WideString CPWL_Note::GetAuthorName() const { | 1295 CFX_WideString CPWL_Note::GetAuthorName() const { |
| 1293 if (m_pAuthor) | 1296 if (m_pAuthor) |
| 1294 return m_pAuthor->GetText(); | 1297 return m_pAuthor->GetText(); |
| 1295 | 1298 |
| 1296 return L""; | 1299 return L""; |
| 1297 } | 1300 } |
| 1298 | 1301 |
| 1299 FX_BOOL CPWL_Note::OnMouseWheel(short zDelta, | 1302 FX_BOOL CPWL_Note::OnMouseWheel(short zDelta, |
| 1300 const CPDF_Point& point, | 1303 const CFX_FloatPoint& point, |
| 1301 FX_DWORD nFlag) { | 1304 FX_DWORD nFlag) { |
| 1302 CPDF_Point ptScroll = m_pContents->GetScrollPos(); | 1305 CFX_FloatPoint ptScroll = m_pContents->GetScrollPos(); |
| 1303 CPDF_Rect rcScroll = m_pContents->GetScrollArea(); | 1306 CFX_FloatRect rcScroll = m_pContents->GetScrollArea(); |
| 1304 CPDF_Rect rcContents = m_pContents->GetClientRect(); | 1307 CFX_FloatRect rcContents = m_pContents->GetClientRect(); |
| 1305 | 1308 |
| 1306 if (rcScroll.top - rcScroll.bottom > rcContents.Height()) { | 1309 if (rcScroll.top - rcScroll.bottom > rcContents.Height()) { |
| 1307 CPDF_Point ptNew = ptScroll; | 1310 CFX_FloatPoint ptNew = ptScroll; |
| 1308 | 1311 |
| 1309 if (zDelta > 0) | 1312 if (zDelta > 0) |
| 1310 ptNew.y += 30; | 1313 ptNew.y += 30; |
| 1311 else | 1314 else |
| 1312 ptNew.y -= 30; | 1315 ptNew.y -= 30; |
| 1313 | 1316 |
| 1314 if (ptNew.y > rcScroll.top) | 1317 if (ptNew.y > rcScroll.top) |
| 1315 ptNew.y = rcScroll.top; | 1318 ptNew.y = rcScroll.top; |
| 1316 if (ptNew.y < rcScroll.bottom + rcContents.Height()) | 1319 if (ptNew.y < rcScroll.bottom + rcContents.Height()) |
| 1317 ptNew.y = rcScroll.bottom + rcContents.Height(); | 1320 ptNew.y = rcScroll.bottom + rcContents.Height(); |
| (...skipping 13 matching lines...) Expand all Loading... |
| 1331 | 1334 |
| 1332 return FALSE; | 1335 return FALSE; |
| 1333 } | 1336 } |
| 1334 | 1337 |
| 1335 void CPWL_Note::OnNotify(CPWL_Wnd* pWnd, | 1338 void CPWL_Note::OnNotify(CPWL_Wnd* pWnd, |
| 1336 FX_DWORD msg, | 1339 FX_DWORD msg, |
| 1337 intptr_t wParam, | 1340 intptr_t wParam, |
| 1338 intptr_t lParam) { | 1341 intptr_t lParam) { |
| 1339 switch (msg) { | 1342 switch (msg) { |
| 1340 case PNM_NOTEEDITCHANGED: { | 1343 case PNM_NOTEEDITCHANGED: { |
| 1341 CPDF_Rect rcScroll = m_pContents->GetScrollArea(); | 1344 CFX_FloatRect rcScroll = m_pContents->GetScrollArea(); |
| 1342 | 1345 |
| 1343 PWL_SCROLL_INFO sInfo; | 1346 PWL_SCROLL_INFO sInfo; |
| 1344 sInfo.fContentMin = rcScroll.bottom; | 1347 sInfo.fContentMin = rcScroll.bottom; |
| 1345 sInfo.fContentMax = rcScroll.top; | 1348 sInfo.fContentMax = rcScroll.top; |
| 1346 sInfo.fPlateWidth = m_pContents->GetClientRect().Height(); | 1349 sInfo.fPlateWidth = m_pContents->GetClientRect().Height(); |
| 1347 sInfo.fSmallStep = 13.0f; | 1350 sInfo.fSmallStep = 13.0f; |
| 1348 sInfo.fBigStep = sInfo.fPlateWidth; | 1351 sInfo.fBigStep = sInfo.fPlateWidth; |
| 1349 | 1352 |
| 1350 if (FXSYS_memcmp(&m_OldScrollInfo, &sInfo, sizeof(PWL_SCROLL_INFO)) != | 1353 if (FXSYS_memcmp(&m_OldScrollInfo, &sInfo, sizeof(PWL_SCROLL_INFO)) != |
| 1351 0) { | 1354 0) { |
| 1352 FX_BOOL bScrollChanged = FALSE; | 1355 FX_BOOL bScrollChanged = FALSE; |
| 1353 | 1356 |
| 1354 if (lParam < 3) { | 1357 if (lParam < 3) { |
| 1355 bScrollChanged = ResetScrollBar(); | 1358 bScrollChanged = ResetScrollBar(); |
| 1356 if (bScrollChanged) { | 1359 if (bScrollChanged) { |
| 1357 lParam++; | 1360 lParam++; |
| 1358 m_pContents->OnNotify(this, PNM_NOTERESET, 0, 0); | 1361 m_pContents->OnNotify(this, PNM_NOTERESET, 0, 0); |
| 1359 OnNotify(this, PNM_NOTEEDITCHANGED, 0, lParam); | 1362 OnNotify(this, PNM_NOTEEDITCHANGED, 0, lParam); |
| 1360 } | 1363 } |
| 1361 } | 1364 } |
| 1362 | 1365 |
| 1363 if (!bScrollChanged) { | 1366 if (!bScrollChanged) { |
| 1364 if (m_pContentsBar->IsVisible()) { | 1367 if (m_pContentsBar->IsVisible()) { |
| 1365 m_pContentsBar->OnNotify(pWnd, PNM_SETSCROLLINFO, SBT_VSCROLL, | 1368 m_pContentsBar->OnNotify(pWnd, PNM_SETSCROLLINFO, SBT_VSCROLL, |
| 1366 (intptr_t)&sInfo); | 1369 (intptr_t)&sInfo); |
| 1367 m_OldScrollInfo = sInfo; | 1370 m_OldScrollInfo = sInfo; |
| 1368 | 1371 |
| 1369 CPDF_Point ptScroll = m_pContents->GetScrollPos(); | 1372 CFX_FloatPoint ptScroll = m_pContents->GetScrollPos(); |
| 1370 CPDF_Point ptOld = ptScroll; | 1373 CFX_FloatPoint ptOld = ptScroll; |
| 1371 | 1374 |
| 1372 if (ptScroll.y > sInfo.fContentMax) | 1375 if (ptScroll.y > sInfo.fContentMax) |
| 1373 ptScroll.y = sInfo.fContentMax; | 1376 ptScroll.y = sInfo.fContentMax; |
| 1374 if (ptScroll.y < sInfo.fContentMin + sInfo.fPlateWidth) | 1377 if (ptScroll.y < sInfo.fContentMin + sInfo.fPlateWidth) |
| 1375 ptScroll.y = sInfo.fContentMin + sInfo.fPlateWidth; | 1378 ptScroll.y = sInfo.fContentMin + sInfo.fPlateWidth; |
| 1376 if (ptScroll.y < sInfo.fContentMin) | 1379 if (ptScroll.y < sInfo.fContentMin) |
| 1377 ptScroll.y = sInfo.fContentMin; | 1380 ptScroll.y = sInfo.fContentMin; |
| 1378 | 1381 |
| 1379 if (ptOld.y != ptScroll.y) { | 1382 if (ptOld.y != ptScroll.y) { |
| 1380 m_pContentsBar->OnNotify(this, PNM_SETSCROLLPOS, SBT_VSCROLL, | 1383 m_pContentsBar->OnNotify(this, PNM_SETSCROLLPOS, SBT_VSCROLL, |
| (...skipping 16 matching lines...) Expand all Loading... |
| 1397 return; | 1400 return; |
| 1398 case PNM_SETSCROLLPOS: | 1401 case PNM_SETSCROLLPOS: |
| 1399 if (m_pContentsBar) | 1402 if (m_pContentsBar) |
| 1400 m_pContentsBar->OnNotify(pWnd, PNM_SETSCROLLPOS, wParam, lParam); | 1403 m_pContentsBar->OnNotify(pWnd, PNM_SETSCROLLPOS, wParam, lParam); |
| 1401 return; | 1404 return; |
| 1402 } | 1405 } |
| 1403 | 1406 |
| 1404 if (msg == PNM_SETCARETINFO && IsValid()) { | 1407 if (msg == PNM_SETCARETINFO && IsValid()) { |
| 1405 if (PWL_CARET_INFO* pInfo = (PWL_CARET_INFO*)wParam) { | 1408 if (PWL_CARET_INFO* pInfo = (PWL_CARET_INFO*)wParam) { |
| 1406 if (m_pContents) { | 1409 if (m_pContents) { |
| 1407 CPDF_Rect rcClient = m_pContents->GetClientRect(); | 1410 CFX_FloatRect rcClient = m_pContents->GetClientRect(); |
| 1408 if (pInfo->ptHead.y > rcClient.top) { | 1411 if (pInfo->ptHead.y > rcClient.top) { |
| 1409 CPDF_Point pt = m_pContents->OutToIn(pInfo->ptHead); | 1412 CFX_FloatPoint pt = m_pContents->OutToIn(pInfo->ptHead); |
| 1410 m_pContents->OnNotify(this, PNM_SCROLLWINDOW, SBT_VSCROLL, | 1413 m_pContents->OnNotify(this, PNM_SCROLLWINDOW, SBT_VSCROLL, |
| 1411 (intptr_t)&pt.y); | 1414 (intptr_t)&pt.y); |
| 1412 | 1415 |
| 1413 CPDF_Point ptScroll = m_pContents->GetScrollPos(); | 1416 CFX_FloatPoint ptScroll = m_pContents->GetScrollPos(); |
| 1414 m_pContentsBar->OnNotify(this, PNM_SETSCROLLPOS, SBT_VSCROLL, | 1417 m_pContentsBar->OnNotify(this, PNM_SETSCROLLPOS, SBT_VSCROLL, |
| 1415 (intptr_t)&ptScroll.y); | 1418 (intptr_t)&ptScroll.y); |
| 1416 | 1419 |
| 1417 return; | 1420 return; |
| 1418 } | 1421 } |
| 1419 | 1422 |
| 1420 if (pInfo->ptFoot.y < rcClient.bottom) { | 1423 if (pInfo->ptFoot.y < rcClient.bottom) { |
| 1421 CPDF_Point pt = m_pContents->OutToIn(pInfo->ptFoot); | 1424 CFX_FloatPoint pt = m_pContents->OutToIn(pInfo->ptFoot); |
| 1422 pt.y += rcClient.Height(); | 1425 pt.y += rcClient.Height(); |
| 1423 m_pContents->OnNotify(this, PNM_SCROLLWINDOW, SBT_VSCROLL, | 1426 m_pContents->OnNotify(this, PNM_SCROLLWINDOW, SBT_VSCROLL, |
| 1424 (intptr_t)&pt.y); | 1427 (intptr_t)&pt.y); |
| 1425 | 1428 |
| 1426 CPDF_Point ptScroll = m_pContents->GetScrollPos(); | 1429 CFX_FloatPoint ptScroll = m_pContents->GetScrollPos(); |
| 1427 m_pContentsBar->OnNotify(this, PNM_SETSCROLLPOS, SBT_VSCROLL, | 1430 m_pContentsBar->OnNotify(this, PNM_SETSCROLLPOS, SBT_VSCROLL, |
| 1428 (intptr_t)&ptScroll.y); | 1431 (intptr_t)&ptScroll.y); |
| 1429 | 1432 |
| 1430 return; | 1433 return; |
| 1431 } | 1434 } |
| 1432 } | 1435 } |
| 1433 } | 1436 } |
| 1434 } | 1437 } |
| 1435 | 1438 |
| 1436 CPWL_NoteItem::OnNotify(pWnd, msg, wParam, lParam); | 1439 CPWL_NoteItem::OnNotify(pWnd, msg, wParam, lParam); |
| (...skipping 14 matching lines...) Expand all Loading... |
| 1451 if (m_pAuthor) | 1454 if (m_pAuthor) |
| 1452 m_pAuthor->SetTextColor(sTextColor); | 1455 m_pAuthor->SetTextColor(sTextColor); |
| 1453 if (m_pOptions) | 1456 if (m_pOptions) |
| 1454 m_pOptions->SetTextColor(sTextColor); | 1457 m_pOptions->SetTextColor(sTextColor); |
| 1455 if (m_pLBBox) | 1458 if (m_pLBBox) |
| 1456 m_pLBBox->SetTextColor(sTextColor); | 1459 m_pLBBox->SetTextColor(sTextColor); |
| 1457 if (m_pRBBox) | 1460 if (m_pRBBox) |
| 1458 m_pRBBox->SetTextColor(sTextColor); | 1461 m_pRBBox->SetTextColor(sTextColor); |
| 1459 } | 1462 } |
| 1460 | 1463 |
| 1461 FX_BOOL CPWL_Note::OnLButtonDown(const CPDF_Point& point, FX_DWORD nFlag) { | 1464 FX_BOOL CPWL_Note::OnLButtonDown(const CFX_FloatPoint& point, FX_DWORD nFlag) { |
| 1462 if (m_pOptions->WndHitTest(m_pOptions->ParentToChild(point))) { | 1465 if (m_pOptions->WndHitTest(m_pOptions->ParentToChild(point))) { |
| 1463 if (IPWL_NoteNotify* pNotify = GetNoteNotify()) { | 1466 if (IPWL_NoteNotify* pNotify = GetNoteNotify()) { |
| 1464 int32_t x, y; | 1467 int32_t x, y; |
| 1465 PWLtoWnd(point, x, y); | 1468 PWLtoWnd(point, x, y); |
| 1466 if (IFX_SystemHandler* pSH = GetSystemHandler()) | 1469 if (IFX_SystemHandler* pSH = GetSystemHandler()) |
| 1467 pSH->ClientToScreen(GetAttachedHWnd(), x, y); | 1470 pSH->ClientToScreen(GetAttachedHWnd(), x, y); |
| 1468 KillFocus(); | 1471 KillFocus(); |
| 1469 pNotify->OnPopupMenu(x, y); | 1472 pNotify->OnPopupMenu(x, y); |
| 1470 | 1473 |
| 1471 return TRUE; | 1474 return TRUE; |
| 1472 } | 1475 } |
| 1473 } | 1476 } |
| 1474 | 1477 |
| 1475 return CPWL_Wnd::OnLButtonDown(point, nFlag); | 1478 return CPWL_Wnd::OnLButtonDown(point, nFlag); |
| 1476 } | 1479 } |
| 1477 | 1480 |
| 1478 FX_BOOL CPWL_Note::OnRButtonUp(const CPDF_Point& point, FX_DWORD nFlag) { | 1481 FX_BOOL CPWL_Note::OnRButtonUp(const CFX_FloatPoint& point, FX_DWORD nFlag) { |
| 1479 return CPWL_Wnd::OnRButtonUp(point, nFlag); | 1482 return CPWL_Wnd::OnRButtonUp(point, nFlag); |
| 1480 } | 1483 } |
| 1481 | 1484 |
| 1482 const CPWL_Note* CPWL_Note::GetNote() const { | 1485 const CPWL_Note* CPWL_Note::GetNote() const { |
| 1483 return this; | 1486 return this; |
| 1484 } | 1487 } |
| 1485 | 1488 |
| 1486 IPWL_NoteNotify* CPWL_Note::GetNoteNotify() const { | 1489 IPWL_NoteNotify* CPWL_Note::GetNoteNotify() const { |
| 1487 return m_bEnableNotify ? m_pNoteNotify : nullptr; | 1490 return m_bEnableNotify ? m_pNoteNotify : nullptr; |
| 1488 } | 1491 } |
| (...skipping 11 matching lines...) Expand all Loading... |
| 1500 m_pContents->EnableRead(bEnabled); | 1503 m_pContents->EnableRead(bEnabled); |
| 1501 } | 1504 } |
| 1502 | 1505 |
| 1503 CFX_WideString CPWL_Note::GetReplyString() const { | 1506 CFX_WideString CPWL_Note::GetReplyString() const { |
| 1504 return m_sReplyString; | 1507 return m_sReplyString; |
| 1505 } | 1508 } |
| 1506 | 1509 |
| 1507 void CPWL_Note::SetReplyString(const CFX_WideString& string) { | 1510 void CPWL_Note::SetReplyString(const CFX_WideString& string) { |
| 1508 m_sReplyString = string; | 1511 m_sReplyString = string; |
| 1509 } | 1512 } |
| OLD | NEW |