Ejemplo n.º 1
0
//-----------------------------------------------
INT AflStringsWindow::printf(LPCSTR pString,...)
{
	bool bFlag = false;
	if(m_scrollVBar.isLastPos())
		bFlag = true;

	
	CHAR cBuff[2048];

	va_list vaList;
	va_start( vaList, pString );
	
	INT iRet = vsprintf(cBuff,pString,vaList);
	va_end(vaList);

	m_spriteStrings.addString(cBuff);

	m_spriteStrings.setLimitWidth();

	SIZE size;
	m_spriteStrings.getStringsSize(&size);
	setScrollBars(size.cx,size.cy);		
	
	AflFRect rect;
	getClientRect(&rect);
	m_spriteStrings.setLimitSize(rect.getWidth(),rect.getHeight());
	m_spriteStrings.setPoint(rect.fLeft,rect.fTop);
	m_spriteStrings.setRedraw();

	if(bFlag)
	{
		setScrollPos(SBS_VERT,100000);
	}
	return iRet;
}
Ejemplo n.º 2
0
void MapWindow::ensureVisible(qint32 x, qint32 y)
{
    const float scrollfactor = MapCanvas::SCROLLFACTOR();
    const float horizontalValue = static_cast<float>(m_horizontalScrollBar->value()) * scrollfactor;
    const float verticalValue = static_cast<float>(m_verticalScrollBar->value()) * scrollfactor;
    const auto X1 = static_cast<qint32>(horizontalValue - 5.0f);
    const auto Y1 = static_cast<qint32>(verticalValue - 5.0f);
    const auto X2 = static_cast<qint32>(horizontalValue + 5.0f);
    const auto Y2 = static_cast<qint32>(verticalValue + 5.0f);

    if (x > X2 - 1) {
        m_horizontalScrollBar->setValue(
            static_cast<qint32>(static_cast<float>(x - 2) / scrollfactor));
    } else if (x < X1 + 1) {
        m_horizontalScrollBar->setValue(
            static_cast<qint32>(static_cast<float>(x + 2) / scrollfactor));
    }

    if (y > Y2 - 1) {
        m_verticalScrollBar->setValue(static_cast<qint32>(static_cast<float>(y - 2) / scrollfactor));
    } else if (y < Y1 + 1) {
        m_verticalScrollBar->setValue(static_cast<qint32>(static_cast<float>(y + 2) / scrollfactor));
    }

    bool scrollsNeedsUpdate = false;
    if (x < m_scrollBarMinimumVisible.x) {
        m_scrollBarMinimumVisible.x = x;
        scrollsNeedsUpdate = true;
    }
    if (x > m_scrollBarMaximumVisible.x) {
        m_scrollBarMaximumVisible.x = x;
        scrollsNeedsUpdate = true;
    }
    if (y < m_scrollBarMinimumVisible.y) {
        m_scrollBarMinimumVisible.y = y;
        scrollsNeedsUpdate = true;
    }
    if (y > m_scrollBarMaximumVisible.y) {
        m_scrollBarMaximumVisible.y = y;
        scrollsNeedsUpdate = true;
    }

    if (scrollsNeedsUpdate) {
        setScrollBars(m_scrollBarMinimumVisible, m_scrollBarMaximumVisible);
    }
}
Ejemplo n.º 3
0
//-----------------------------------------------
bool AflStringsWindow::open(LPCSTR pFileName)
{
	if(!m_spriteStrings.open(pFileName))
		return false;
	m_spriteStrings.setLimitWidth();

	SIZE size;
	m_spriteStrings.getStringsSize(&size);
	setScrollBars(size.cx,size.cy);

	AflFRect rect;
	getClientRect(&rect);
	m_spriteStrings.setLimitSize(rect.getWidth(),rect.getHeight());
	m_spriteStrings.setPoint(rect.fLeft,rect.fTop);
	m_spriteStrings.setRedraw();
	return true;
}
Ejemplo n.º 4
0
void MapWindow::resizeEvent(QResizeEvent * /*event*/)
{
    setScrollBars(m_scrollBarMinimumVisible, m_scrollBarMaximumVisible);
}