当前位置: 首页>>代码示例>>C++>>正文


C++ MouseEventUnrecPtr类代码示例

本文整理汇总了C++中MouseEventUnrecPtr的典型用法代码示例。如果您正苦于以下问题:C++ MouseEventUnrecPtr类的具体用法?C++ MouseEventUnrecPtr怎么用?C++ MouseEventUnrecPtr使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了MouseEventUnrecPtr类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: mouseReleased

 virtual void mouseReleased(const MouseEventUnrecPtr e)
 {
     if(dynamic_cast<WindowEventProducer*>(e->getSource())->getKeyModifiers() & KeyEvent::KEY_MODIFIER_CONTROL)
     {
         mgr->mouseButtonRelease(e->getButton(), e->getLocation().x(), e->getLocation().y());
     }
 }
开发者ID:Langkamp,项目名称:OpenSGToolbox,代码行数:7,代码来源:20RocketLauncher.cpp

示例2: TheColumn

void TableHeader::MarginDraggedListener::mouseDragged(const MouseEventUnrecPtr e)
{
	if(e->getButton() == e->BUTTON1)
	{
		Pnt2f MousePosInComponent = ViewportToComponent(e->getLocation(), TableHeaderRefPtr(_TableHeader), e->getViewport());


        TableColumnRefPtr TheColumn(_TableHeader->getColumnModel()->getColumn(_TableHeader->_ResizingColumn));
        Real32 NewWidth(MousePosInComponent.x() - _TableHeader->getColumnHeaders(_TableHeader->_ResizingColumn)->getPosition().x());

        if(NewWidth <= 0 || NewWidth < TheColumn->getMinWidth())
        {
            NewWidth = TheColumn->getMinWidth();
        }

        if(NewWidth > TheColumn->getMaxWidth())
        {
            NewWidth = TheColumn->getMaxWidth();
        }
        
		//Get the new desired center for this margin
	        TheColumn->setWidth(NewWidth);
        _TableHeader->updateLayout();
	}
}
开发者ID:Langkamp,项目名称:OpenSGToolbox,代码行数:25,代码来源:OSGTableHeader.cpp

示例3: ViewportToComponent

void Slider::KnobDraggedListener::mouseDragged(const MouseEventUnrecPtr e)
{
	if(e->getButton() == e->BUTTON1)
	{
		Pnt2f MousePosInComponent = ViewportToComponent(e->getLocation(), _Slider, e->getViewport());
		
        Pnt2f BorderTopLeft, BorderBottomRight;
        _Slider->getInsideInsetsBounds(BorderTopLeft, BorderBottomRight);
        
        UInt16 MajorAxis, MinorAxis;
        if(_Slider->getOrientation() == VERTICAL_ORIENTATION)
        {
            MajorAxis = 1;
        }
        else
        {
            MajorAxis = 0;
        }
        MinorAxis = (MajorAxis+1)%2;

		if(_Slider->getInverted())
		{
			MousePosInComponent[MajorAxis] = _Slider->getTrackMax() - (MousePosInComponent[MajorAxis] - _Slider->getTrackMin());
		}
        
        _Slider->setValue( _Slider->getMinimum() + (_Slider->getMaximum() - _Slider->getMinimum()) * (MousePosInComponent[MajorAxis] - _Slider->getTrackMin())/static_cast<Int32>(_Slider->getTrackLength()) );
	}
}
开发者ID:Langkamp,项目名称:OpenSGToolbox,代码行数:28,代码来源:OSGSlider.cpp

示例4: mouseDragged

 virtual void mouseDragged(const MouseEventUnrecPtr e)
 {
     if(TutorialWindow->getKeyModifiers() & KeyEvent::KEY_MODIFIER_CAPS_LOCK)
     {
         mgr->mouseMove(e->getLocation().x(), e->getLocation().y());
     }
 }
开发者ID:pjcamp,项目名称:OpenSGToolbox,代码行数:7,代码来源:07UIRectTextDomArea.cpp

示例5: ComponentMousePosition

void ScrollBar::ScrollBarDraggedListener::mouseDragged(const MouseEventUnrecPtr e)
{
    Pnt2f ComponentMousePosition(ViewportToComponent(e->getLocation(), _ScrollBar, e->getViewport()));

    _ScrollBar->setMajorAxisScrollBarPosition(_InitialScrollBarPosition + (ComponentMousePosition - _InitialMousePosition));
    //std::cout << "Diff "<< _InitialMousePosition[AxisIndex] - ComponentMousePosition[AxisIndex] << std::endl;
}
开发者ID:Langkamp,项目名称:OpenSGToolbox,代码行数:7,代码来源:OSGScrollBar.cpp

示例6: switch

void ContentPanel::SceneEditorPanelListener::mouseClicked(const MouseEventUnrecPtr e)
{
    switch (e->getButton())
    {
        case MouseEvent::BUTTON1: 
            //Cast a ray into the scene and select the closest node
            _ContentPanel->_ApplicationPlayer->selectNode(e->getLocation());
            break;
    }
}
开发者ID:msteners,项目名称:KabalaEngine,代码行数:10,代码来源:KEContentPanel.cpp

示例7: mouseClicked

    virtual void mouseClicked(const MouseEventUnrecPtr e)
    {
        if(e->getButton()== MouseEvent::BUTTON1)
        {
        }

        if(e->getButton()== MouseEvent::BUTTON3)
        {
        }
    }
开发者ID:danguilliams,项目名称:OpenSGToolbox,代码行数:10,代码来源:05aQuadSequenceParticleDrawer(AgeFunction).cpp

示例8: BottomRight

void InternalWindow::BorderDraggedListener::mouseDragged(const MouseEventUnrecPtr e)
{
    Vec2f Size;
    bool PositionChange;
    Pnt2f Position;
    Pnt2f BottomRight(_InternalWindow->getPosition() + _InternalWindow->getSize());
    switch(_BorderDragged)
    {
        case WINDOW_LEFT_BORDER:
            Size.setValues(BottomRight.x() - e->getLocation().x(), _InternalWindow->getPreferredSize().y());
            PositionChange = true;
            Position = BottomRight - Size;
            break;
        case WINDOW_RIGHT_BORDER:
            PositionChange = false;
            Size.setValues(e->getLocation().x() - _InternalWindow->getPosition().x(), _InternalWindow->getPreferredSize().y());
            break;
        case WINDOW_TOP_BORDER:
            Size.setValues(_InternalWindow->getPreferredSize().x(), BottomRight.y() - e->getLocation().y());
            PositionChange = true;
            Position = BottomRight - Size;
            break;
        case WINDOW_BOTTOM_BORDER:
            PositionChange = false;
            Size.setValues(_InternalWindow->getPreferredSize().x(), e->getLocation().y() - _InternalWindow->getPosition().y());
            break;
        case WINDOW_TOP_LEFT_BORDER:
            Size.setValues(BottomRight.x() - e->getLocation().x(), BottomRight.y() - e->getLocation().y());
            PositionChange = true;
            Position = BottomRight - Size;
            break;
        case WINDOW_BOTTOM_RIGHT_BORDER:
            PositionChange = false;
            Size.setValues(e->getLocation().x() - _InternalWindow->getPosition().x(), e->getLocation().y() - _InternalWindow->getPosition().y());
            break;
        case WINDOW_TOP_RIGHT_BORDER:
            Size.setValues(e->getLocation().x() - _InternalWindow->getPosition().x(), BottomRight.y() - e->getLocation().y());
            PositionChange = true;
            Position.setValues(_InternalWindow->getPosition().x(), BottomRight.y() - Size.y());
            break;
        case WINDOW_BOTTOM_LEFT_BORDER:
            Size.setValues(BottomRight.x() - e->getLocation().x(), e->getLocation().y() - _InternalWindow->getPosition().y());
            PositionChange = true;
            Position.setValues( BottomRight.x() - Size.x(), _InternalWindow->getPosition().y());
            break;
    }

    if(PositionChange)
    {
        _InternalWindow->setPreferredSize(Size);
        _InternalWindow->setPosition(Position);
    }
    else
    {
        _InternalWindow->setPreferredSize(Size);
    }
}
开发者ID:Langkamp,项目名称:OpenSGToolbox,代码行数:57,代码来源:OSGInternalWindow.cpp

示例9:

void InternalWindow::PopupMenuInteractionListener::mouseDragged(const MouseEventUnrecPtr e)
{
    for(Int32 i(_InternalWindow->getMFActivePopupMenus()->size()-1) ; i>=0 ; --i)
    {
        bool isContained = _InternalWindow->getActivePopupMenus(i)->isContained(e->getLocation(), true);
        _InternalWindow->checkMouseEnterExit(e,e->getLocation(),_InternalWindow->getActivePopupMenus(i),isContained,e->getViewport());
        if(isContained)
        {
            _InternalWindow->getActivePopupMenus(i)->mouseDragged(e);
            return;
        }
    }
}
开发者ID:Langkamp,项目名称:OpenSGToolbox,代码行数:13,代码来源:OSGInternalWindow.cpp

示例10: disconnect

void ScrollBar::ScrollBarDraggedListener::mouseReleased(const MouseEventUnrecPtr e)
{
	if(e->getButton() == e->BUTTON1)
	{
        disconnect();
    }
}
开发者ID:Langkamp,项目名称:OpenSGToolbox,代码行数:7,代码来源:OSGScrollBar.cpp

示例11: mousePressed

    virtual void mousePressed(const MouseEventUnrecPtr e)
    {
        if(dynamic_cast<WindowEventProducer*>(e->getSource())->getKeyModifiers() & KeyEvent::KEY_MODIFIER_CONTROL)
        {
            mgr->mouseButtonPress(e->getButton(), e->getLocation().x(), e->getLocation().y());
        }
        else
        {
            Line TheRay;
            if(e->getButton() == MouseEvent::BUTTON1)
            {

                mgr->getCamera()->calcViewRay(TheRay,e->getLocation().x(),e->getLocation().y(),*(mgr->getWindow()->getPort(0)));
                std::cout<<"Velocity "<<TheRay.getDirection()<<std::endl;
            }
            RocketParticleSystem->addParticle(TheRay.getPosition(),
                                              Vec3f(0.0,1.0f,0.0f),
                                              Color4f(1.0,0.0,0.0,1.0), 
                                              Vec3f(1.0,1.0,1.0), 
                                              10, 
                                              Vec3f(TheRay.getDirection()*50), //Velocity
                                              Vec3f(0.0f,0.0f,0.0f)
                                             );
        }
    }
开发者ID:Langkamp,项目名称:OpenSGToolbox,代码行数:25,代码来源:20RocketLauncher.cpp

示例12:

void ScrollBar::ScrollBarListener::mousePressed(const MouseEventUnrecPtr e)
{
	if(_ScrollBar->getEnabled() && e->getButton() == e->BUTTON1)
	{
        _ScrollBar->_ScrollBarDraggedListener.setInitialMousePosition(ViewportToComponent(e->getLocation(), _ScrollBar, e->getViewport()));
        _ScrollBar->_ScrollBarDraggedListener.setInitialScrollBarPosition(_ScrollBar->editScrollBar()->getPosition());
        _ScrollBar->getParentWindow()->getDrawingSurface()->getEventProducer()->addMouseMotionListener(&(_ScrollBar->_ScrollBarDraggedListener));
        _ScrollBar->getParentWindow()->getDrawingSurface()->getEventProducer()->addMouseListener(&(_ScrollBar->_ScrollBarDraggedListener));
    }
}
开发者ID:Langkamp,项目名称:OpenSGToolbox,代码行数:10,代码来源:OSGScrollBar.cpp

示例13: disconnect

void Slider::KnobDraggedListener::mouseReleased(const MouseEventUnrecPtr e)
{
    if(e->getButton() == e->BUTTON1 &&
       _Slider->getParentWindow() != NULL &&
       _Slider->getParentWindow()->getDrawingSurface() != NULL &&
       _Slider->getParentWindow()->getDrawingSurface()->getEventProducer() != NULL)
    {
        disconnect();
    }
}
开发者ID:Langkamp,项目名称:OpenSGToolbox,代码行数:10,代码来源:OSGSlider.cpp

示例14: checkMouseMargins

void TableHeader::checkMouseMargins(const MouseEventUnrecPtr e)
{
    if(isContainedClipBounds(e->getLocation(), TableHeaderRefPtr(this)))
    {
		Pnt2f MousePosInComponent = ViewportToComponent(e->getLocation(), TableHeaderRefPtr(this), e->getViewport());
        UInt32 CumulativeHeaderWidth(0);
        for(UInt32 i(0) ; i<getMFColumnHeaders()->size() ; ++i)
        {
            CumulativeHeaderWidth += getColumnHeaders(i)->getSize().x();
            if(MousePosInComponent.x() >= CumulativeHeaderWidth - getResizingCursorDriftAllowance() &&
               MousePosInComponent.x() <= CumulativeHeaderWidth + getColumnModel()->getColumnMargin() + getResizingCursorDriftAllowance())
            {
                getParentWindow()->getDrawingSurface()->getEventProducer()->setCursorType(WindowEventProducer::CURSOR_RESIZE_W_TO_E);
                return;
            }
            CumulativeHeaderWidth += getColumnModel()->getColumnMargin();
        }
    }
    getParentWindow()->getDrawingSurface()->getEventProducer()->setCursorType(WindowEventProducer::CURSOR_POINTER);
}
开发者ID:Langkamp,项目名称:OpenSGToolbox,代码行数:20,代码来源:OSGTableHeader.cpp

示例15: mouseDragged

void InternalWindow::mouseDragged(const MouseEventUnrecPtr e)
{
    if(getMenuBar() != NULL)
    {
        bool isContained;
        isContained = getMenuBar()->isContained(e->getLocation(), true);
        checkMouseEnterExit(e,e->getLocation(),getMenuBar(),isContained,e->getViewport());
        if(isContained)
        {
            getMenuBar()->mouseDragged(e);
            Component::mouseDragged(e);
            return;
        }
    }
    if(getTitlebar() != NULL)
    {
        bool isContained;
        isContained = getTitlebar()->isContained(e->getLocation(), true);
        checkMouseEnterExit(e,e->getLocation(),getTitlebar(),isContained,e->getViewport());
        if(isContained)
        {
            getTitlebar()->mouseDragged(e);
            Component::mouseDragged(e);
            return;
        }
    }
    if(!getLockInput())
    {
        ComponentContainer::mouseDragged(e);
    }
}
开发者ID:Langkamp,项目名称:OpenSGToolbox,代码行数:31,代码来源:OSGInternalWindow.cpp


注:本文中的MouseEventUnrecPtr类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。