void ProfileChooser::hide ( )
{
	releaseModalFocus ();
	setVisible ( false );
	if ( getParent () )
		getParent()->moveToBottom (this);
}
Esempio n. 2
0
    void Widget::_setFocusHandler(FocusHandler* focusHandler)
    {
        if (mFocusHandler)
        {
            releaseModalFocus();
            mFocusHandler->remove(this);
        }

        if (focusHandler)
        {
            focusHandler->add(this);
        }

        mFocusHandler = focusHandler;
    }
Esempio n. 3
0
void PopupList::focusGained(const Event& event)
{
    const Widget *const source = event.getSource();
    if (!mVisible || source == this || source == mListBox
        || source == mScrollArea || source == mDropDown)
    {
        return;
    }

    if (mDropDown)
        mDropDown->updateSelection();
    setVisible(false);
    if (mModal)
        releaseModalFocus();
}
Esempio n. 4
0
void FocusHandler::remove(Widget *const widget)
{
    releaseModalFocus(widget);

    if (isFocused(widget))
        mFocusedWidget = nullptr;

    FOR_EACH (WidgetIterator, iter, mWidgets)
    {
        if ((*iter) == widget)
        {
            mWidgets.erase(iter);
            break;
        }
    }

    if (mDraggedWidget == widget)
    {
        mDraggedWidget = nullptr;
        return;
    }

    if (mLastWidgetWithMouse == widget)
    {
        mLastWidgetWithMouse = nullptr;
        return;
    }

    if (mLastWidgetWithModalFocus == widget)
    {
        mLastWidgetWithModalFocus = nullptr;
        return;
    }

    if (mLastWidgetWithModalMouseInputFocus == widget)
    {
        mLastWidgetWithModalMouseInputFocus = nullptr;
        return;
    }

    if (mLastWidgetPressed == widget)
    {
        mLastWidgetPressed = nullptr;
        return;
    }
}
Esempio n. 5
0
void PopupList::mouseReleased(MouseEvent& event)
{
    if (mPressedIndex != mListBox->getSelectionByMouse(
        event.getY() + mPadding))
    {
        mPressedIndex = -2;
        return;
    }

    mPressedIndex = -2;
    if (event.getSource() == mScrollArea)
        return;
    if (mDropDown)
        mDropDown->updateSelection();
    setVisible(false);
    if (mModal)
        releaseModalFocus();
}
Esempio n. 6
0
void GlassWindow::close() {
	//immediately release modal
	releaseModalFocus();
	markDelete();
}
Esempio n. 7
0
void FocusHandler::remove(gcn::Widget *widget)
{
    releaseModalFocus(widget);

    gcn::FocusHandler::remove(widget);
}