Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(206)

Unified Diff: xfa/fwl/core/ifwl_combobox.h

Issue 2494743002: IFWL cleanup in the Combo classes (Closed)
Patch Set: Review feedback Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « xfa/fwl/core/cfwl_listbox.cpp ('k') | xfa/fwl/core/ifwl_combobox.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: xfa/fwl/core/ifwl_combobox.h
diff --git a/xfa/fwl/core/ifwl_combobox.h b/xfa/fwl/core/ifwl_combobox.h
index 0b586b424f9d7ab3e06d11b181d18c7cfa2f3778..8332a793d1367b7b7bfae107c76816634da14629 100644
--- a/xfa/fwl/core/ifwl_combobox.h
+++ b/xfa/fwl/core/ifwl_combobox.h
@@ -7,6 +7,7 @@
#ifndef XFA_FWL_CORE_IFWL_COMBOBOX_H_
#define XFA_FWL_CORE_IFWL_COMBOBOX_H_
+#include "xfa/fwl/core/ifwl_combolist.h"
#include "xfa/fwl/core/ifwl_form.h"
#include "xfa/fwl/core/ifwl_listbox.h"
#include "xfa/fxgraphics/cfx_graphics.h"
@@ -15,7 +16,6 @@ class CFWL_WidgetProperties;
class IFWL_ComboBox;
class IFWL_ComboBoxProxy;
class IFWL_ComboEdit;
-class IFWL_ComboList;
class IFWL_FormProxy;
class IFWL_ListBox;
class IFWL_Widget;
@@ -99,22 +99,16 @@ class IFWL_ComboBox : public IFWL_Widget {
void OnDrawWidget(CFX_Graphics* pGraphics,
const CFX_Matrix* pMatrix) override;
- int32_t GetCurSel();
- FWL_Error SetCurSel(int32_t iSel);
+ int32_t GetCurSel() const;
+ void SetCurSel(int32_t iSel);
+
void SetEditText(const CFX_WideString& wsText);
- int32_t GetEditTextLength() const;
- FWL_Error GetEditText(CFX_WideString& wsText,
- int32_t nStart = 0,
- int32_t nCount = -1) const;
- FWL_Error SetEditSelRange(int32_t nStart, int32_t nCount = -1);
- int32_t GetEditSelRange(int32_t nIndex, int32_t& nStart);
- int32_t GetEditLimit();
- FWL_Error SetEditLimit(int32_t nLimit);
- bool EditRedo(const IFDE_TxtEdtDoRecord* pRecord);
- bool EditUndo(const IFDE_TxtEdtDoRecord* pRecord);
- IFWL_ListBox* GetListBoxt();
- bool AfterFocusShowDropList();
- FWL_Error OpenDropDownList(bool bActivate);
+ void GetEditText(CFX_WideString& wsText,
+ int32_t nStart = 0,
+ int32_t nCount = -1) const;
+
+ void OpenDropDownList(bool bActivate);
+
bool EditCanUndo();
bool EditCanRedo();
bool EditUndo();
@@ -128,39 +122,57 @@ class IFWL_ComboBox : public IFWL_Widget {
bool EditSelectAll();
bool EditDelete();
bool EditDeSelect();
- FWL_Error GetBBox(CFX_RectF& rect);
+
+ void GetBBox(CFX_RectF& rect);
void EditModifyStylesEx(uint32_t dwStylesExAdded, uint32_t dwStylesExRemoved);
void DrawStretchHandler(CFX_Graphics* pGraphics, const CFX_Matrix* pMatrix);
- bool IsDropListShowed();
+ bool IsDropListVisible();
+
void ShowDropList(bool bActivate);
IFWL_ComboEdit* GetComboEdit() const { return m_pEdit.get(); }
+
void ProcessSelChanged(bool bLButtonUp);
int32_t GetCurrentSelection() const { return m_iCurSel; }
- protected:
+ private:
FX_FLOAT GetListHeight();
- bool IsDropDownStyle() const;
+ bool IsDropDownStyle() const {
+ return !!(m_pProperties->m_dwStyleExes & FWL_STYLEEXT_CMB_DropDown);
+ }
void MatchEditText();
- void SynchrEditText(int32_t iListItem);
+ void SyncEditText(int32_t iListItem);
void Layout();
- void ReSetTheme();
- void ReSetEditAlignment();
- void ReSetListItemAlignment();
+ void ResetTheme();
+ void ResetEditAlignment();
+ void ResetListItemAlignment();
void InitProxyForm();
void DisForm_InitComboList();
void DisForm_InitComboEdit();
void DisForm_ShowDropList(bool bActivate);
- bool DisForm_IsDropListShowed();
+ bool DisForm_IsDropListVisible() const {
+ return !(m_pListBox->GetStates() & FWL_WGTSTATE_Invisible);
+ }
void DisForm_ModifyStylesEx(uint32_t dwStylesExAdded,
uint32_t dwStylesExRemoved);
void DisForm_Update();
FWL_WidgetHit DisForm_HitTest(FX_FLOAT fx, FX_FLOAT fy);
void DisForm_DrawWidget(CFX_Graphics* pGraphics,
const CFX_Matrix* pMatrix = nullptr);
- FWL_Error DisForm_GetBBox(CFX_RectF& rect);
+ void DisForm_GetBBox(CFX_RectF& rect);
void DisForm_Layout();
+ void OnFocusChanged(CFWL_Message* pMsg, bool bSet = true);
+ void OnLButtonDown(CFWL_MsgMouse* pMsg);
+ void OnLButtonUp(CFWL_MsgMouse* pMsg);
+ void OnMouseMove(CFWL_MsgMouse* pMsg);
+ void OnMouseLeave(CFWL_MsgMouse* pMsg);
+ void OnKey(CFWL_MsgKey* pMsg);
+ void DoSubCtrlKey(CFWL_MsgKey* pMsg);
+ void DisForm_OnProcessMessage(CFWL_Message* pMessage);
+ void DisForm_OnLButtonDown(CFWL_MsgMouse* pMsg);
+ void DisForm_OnFocusChanged(CFWL_Message* pMsg, bool bSet = true);
+ void DisForm_OnKey(CFWL_MsgKey* pMsg);
CFX_RectF m_rtClient;
CFX_RectF m_rtContent;
@@ -177,21 +189,6 @@ class IFWL_ComboBox : public IFWL_Widget {
int32_t m_iBtnState;
FX_FLOAT m_fComboFormHandler;
FX_FLOAT m_fItemHeight;
- bool m_bNeedShowList;
-
- private:
- void OnFocusChanged(CFWL_Message* pMsg, bool bSet = true);
- void OnLButtonDown(CFWL_MsgMouse* pMsg);
- void OnLButtonUp(CFWL_MsgMouse* pMsg);
- void OnMouseMove(CFWL_MsgMouse* pMsg);
- void OnMouseLeave(CFWL_MsgMouse* pMsg);
- void OnKey(CFWL_MsgKey* pMsg);
- void DoSubCtrlKey(CFWL_MsgKey* pMsg);
- void DisForm_OnProcessMessage(CFWL_Message* pMessage);
- void DisForm_OnLButtonDown(CFWL_MsgMouse* pMsg);
- void DisForm_OnFocusChanged(CFWL_Message* pMsg, bool bSet = true);
- void DisForm_OnKey(CFWL_MsgKey* pMsg);
-
};
#endif // XFA_FWL_CORE_IFWL_COMBOBOX_H_
« no previous file with comments | « xfa/fwl/core/cfwl_listbox.cpp ('k') | xfa/fwl/core/ifwl_combobox.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698