MCPcopy Create free account
hub / github.com/SOUI2/soui / DropDown

Method DropDown

SOUI/src/control/SComboBase.cpp:368–393  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

366
367
368 void SComboBase::DropDown()
369 {
370 if(m_dwBtnState==WndState_PushDown) return;
371
372
373 if(!m_pDropDownWnd)
374 {
375 m_pDropDownWnd = new SDropDownWnd_ComboBox(this);
376 m_pDropDownWnd->SDispatchMessage(UM_SETSCALE, GetScale(), 0);
377 }
378
379 EventCBDropdown evt(this);
380 evt.pDropDown = m_pDropDownWnd;
381 FireEvent(evt);
382
383 CRect rcPopup;
384 BOOL bDown=CalcPopupRect(GetListBoxHeight(),rcPopup);
385 m_pDropDownWnd->Create(rcPopup,0);
386
387 if(m_nAnimTime>0)
388 m_pDropDownWnd->AnimateHostWindow(m_nAnimTime,AW_SLIDE|(bDown?AW_VER_POSITIVE:AW_VER_NEGATIVE));
389 else
390 m_pDropDownWnd->SetWindowPos(HWND_TOP,0,0,0,0,SWP_SHOWWINDOW|SWP_NOMOVE|SWP_NOZORDER|SWP_NOSIZE|SWP_NOACTIVATE);
391
392 m_pDropDownWnd->CSimpleWnd::SetCapture();
393 }
394
395 void SComboBase::CloseUp()
396 {

Callers

nothing calls this directly

Calls 4

SDispatchMessageMethod · 0.80
AnimateHostWindowMethod · 0.80
GetScaleFunction · 0.50
CreateMethod · 0.45

Tested by

no test coverage detected