void ShowFrameRate(FrameRateWnd *w, int frameRate) { if (w->frameRate == frameRate) { return; } w->frameRate = frameRate; SIZE s = GetIdealSize(w); PositionWindow(w, s); ScheduleRepaint(w->hwnd); }
HRESULT CMenuToolbarBase::GetSizes(SIZE* pMinSize, SIZE* pMaxSize, SIZE* pIntegralSize) { if (pMinSize) *pMinSize = m_idealSize; if (pMaxSize) *pMaxSize = m_idealSize; if (pIntegralSize) *pIntegralSize = m_itemSize; if (m_hasSizes) return S_OK; TRACE("Sizes out of date, recalculating.\n"); if (!m_hWnd) { return S_OK; } // Obtain the ideal size, to be used as min and max GetMaxSize(&m_idealSize); GetIdealSize((m_initFlags & SMINIT_VERTICAL) != 0, &m_idealSize); TRACE("Ideal Size: (%d, %d) for %d buttons\n", m_idealSize, GetButtonCount()); // Obtain the button size, to be used as the integral size DWORD size = GetButtonSize(); m_itemSize.cx = GET_X_LPARAM(size); m_itemSize.cy = GET_Y_LPARAM(size); m_hasSizes = TRUE; if (pMinSize) *pMinSize = m_idealSize; if (pMaxSize) *pMaxSize = m_idealSize; if (pIntegralSize) *pIntegralSize = m_itemSize; return S_OK; }