31 #ifndef __DVHostedWidgetView__ 32 #define __DVHostedWidgetView__ 34 #include "AbstractControlView.h" 36 #include "DVAForwardDeclarations.h" 38 #ifdef DV_WIDGET_BUILD 58 virtual void SetFrame(
const PMRect& newFrame, bool16 invalidate = kTrue);
67 virtual PMRect GetInnerContentFrame()
const;
72 virtual void Resize(
const PMPoint& newDimensions, bool16 invalidate = kTrue);
77 virtual void MoveTo(
const PMPoint& where, bool16 invalidate = kTrue);
107 virtual void DV_Draw(dvaui::drawbot::Drawbot* drawbotP)
const {};
111 virtual void ForceRedraw(SysRgn invalidRgn, bool16 forceRedraw);
120 virtual void Hilite(bool16 doHilite = kTrue);
132 virtual void Show(bool16 doShow);
141 virtual bool16
IsVisible(bool16 requireVisibleWindow = kFalse)
const;
144 virtual void Enable(bool16 doEnable, bool16 invalidate);
147 virtual void Disable(bool16 invalidate);
159 virtual void Init(
const WidgetID& widgetId = kDefaultWidgetId,
160 const PMRect& bbox = kZeroRect,
168 virtual PMRect GlobalToWindow(
const PMRect& convertRect)
const;
169 virtual PMPoint GlobalToWindow(
const PMPoint& convertPoint)
const;
173 virtual PMRect WindowToGlobal(
const PMRect& convertRect)
const;
174 virtual PMPoint WindowToGlobal(
const PMPoint& convertPoint)
const;
181 virtual void SetEnableState(bool16 isVisible = kTrue);
198 virtual void SetIsAutoAttached(bool16 flag = kTrue);
200 void Set_UI_Node(dvaui::ui::UI_Node* node);
201 dvaui::ui::UI_Node* Get_UI_Node()
const;
206 void Release_UI_Node();
208 virtual void BoundsChangedCallback();
209 virtual void ParentEnableStateChangedCallback();
212 virtual void ResizeChildren(
const PMPoint& delta, bool16 invalidate);
213 virtual void AdaptLayoutToFrameBindings(
const PMPoint& delta, bool16 invalidate = kTrue);
220 unsigned int fGeometryBusy : 1;
221 class AcquireGeometry;
235 void UpdateToolTipOnMouseMove();
240 void ConnectCursorProviderToRegion();
243 bool16 fAutoAttached;
245 mutable SysRgn fDrawRegion;
249 PrivateImpl* Impl()
const {
return fImpl;}
257 bool16 IsWidgetConstructionFinished()
const;
258 void WidgetConstructionFinished(
const bool16 bFlag);
264 void MarkDisabledByNonSuppressedUIIfRequired(
const bool16 bFlag);
270 void MarkHiddenByNonSuppressedUIIfRequired(
const bool16 bFlag);
275 bool16 IsDisabledBySuppressedUI()
const;
276 void DisableBySuppressedUI(
const bool16 bFlag);
281 bool16 IsHiddenBySuppressedUI()
const;
282 void HideBySuppressedUI(
const bool16 bFlag);
288 bool16 IsEnableOrDisableFuncCalledFromSuppressedUI()
const;
289 void EnableOrDisableFuncCalledFromSuppressedUI(
const bool16 bFlag);
293 bool16 IsDisabledByNonSuppressedUI()
const;
294 void DisableByNonSuppressedUI(
const bool16 bFlag);
298 bool16 IsMarkedDisabled();
302 bool16 IsShowOrHideFuncCalledFromSuppressedUI()
const;
303 void ShowOrHideFuncCalledFromSuppressedUI(
const bool16 bFlag);
307 bool16 IsHiddenByNonSuppressedUI()
const;
308 void HideByNonSuppressedUI(
const bool16 bFlag);
313 bool16 IsMarkedHidden();
335 ASSERT_MSG(fView->fGeometryBusy == 0,
"AcquireGeometry - fGeometryBusy is already set, and it's a 1 bit bitfield. Not good.");
336 fView->fGeometryBusy++;
339 inline DVHostedWidgetView::AcquireGeometry::~AcquireGeometry()
341 ASSERT_MSG(fView->fGeometryBusy == 1,
"~AcquireGeometry - fGeometryBusy is already unset, and it's a 1 bit bitfield. Not good.");
342 fView->fGeometryBusy--;