• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C++ gcn::MouseEvent类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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



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

示例1: mouseDragged

void Viewport::mouseDragged(gcn::MouseEvent &event)
{
    if (!mCurrentMap || !player_node)
        return;

    if (mPlayerFollowMouse && mWalkTime == player_node->mWalkTime)
    {
        const int tileWidth = mCurrentMap->getTileWidth();
        const int tileHeight = mCurrentMap->getTileHeight();
        int destX = event.getX() / tileWidth + mTileViewX;
        int destY = event.getY() / tileHeight + mTileViewY;
        player_node->setDestination(destX, destY);
    }
}
开发者ID:Aethyra,项目名称:Client,代码行数:14,代码来源:viewport.cpp


示例2: mouseMoved

// Show ItemTooltip
void ItemContainer::mouseMoved(gcn::MouseEvent &event)
{
    Item *item = mInventory->getItem(getSlotIndex(event.getX(), event.getY()));

    if (item)
    {
        mItemPopup->setItem(item->getInfo());
        mItemPopup->view(viewport->getMouseX(), viewport->getMouseY());
    }
    else
    {
        mItemPopup->setVisible(false);
    }
}
开发者ID:mekolat,项目名称:elektrogamesvn,代码行数:15,代码来源:itemcontainer.cpp


示例3: mouseReleased

void GlassWindow::mouseReleased(gcn::MouseEvent& mouseEvent) {
	
	if(titleVisible) {
		if(mouseEvent.getY() <= (int)mTitleBarHeight && mouseEvent.getX()>=titleBarContainer.getX()) {
			gcn::Button *w;
			if((w = (gcn::Button*)titleBarContainer.getWidgetAt(mouseEvent.getX()-titleBarContainer.getX(), mouseEvent.getY())) != NULL) {
				w->mouseReleased(mouseEvent);
			}
		}
	}
	
	gcn::Window::mouseReleased(mouseEvent);
	
	GlassWidget::mouseReleased(mouseEvent);
}
开发者ID:newerthcom,项目名称:savagerebirth,代码行数:15,代码来源:GlassWindow.cpp


示例4: mousePressed

void ItemContainer::mousePressed(gcn::MouseEvent &event)
{
    if (!mInventory)
        return;

    const int button = event.getButton();
    mClicks = event.getClickCount();

    if (button == gcn::MouseEvent::LEFT || button == gcn::MouseEvent::RIGHT)
    {
        const int index = getSlotIndex(event.getX(), event.getY());
        if (index == Inventory::NO_SLOT_INDEX)
            return;

        Item *item = mInventory->getItem(index);

        // put item name into chat window
        if (item && mDescItems && chatWindow)
            chatWindow->addItemText(item->getInfo().getName());

        if (mSelectedIndex == index && mClicks != 2)
        {
            mSelectionStatus = SEL_DESELECTING;
        }
        else if (item && item->getId())
        {
            setSelectedIndex(index);
            mSelectionStatus = SEL_SELECTING;

            int num = itemShortcutWindow->getTabIndex();
            if (num >= 0 && num < SHORTCUT_TABS)
            {
                if (itemShortcut[num])
                    itemShortcut[num]->setItemSelected(item);
            }
            if (dropShortcut)
                dropShortcut->setItemSelected(item);
            if (item->isEquipment() && outfitWindow)
                outfitWindow->setItemSelected(item);
            if (shopWindow)
                shopWindow->setItemSelected(item->getId());
        }
        else
        {
            selectNone();
        }
    }
}
开发者ID:Evonline,项目名称:ManaPlus,代码行数:48,代码来源:itemcontainer.cpp


示例5: mouseClicked

void PlayState::mouseClicked( gcn::MouseEvent& mouseEvent )
{
	if (mouseEvent.GetSource() == mQuitButton)
	{
		Close();
	}
}
开发者ID:doveiya,项目名称:isilme,代码行数:7,代码来源:PlayState.cpp


示例6: mouseMoved

void ShopListBox::mouseMoved(gcn::MouseEvent &event)
{
    if (!mShopItems)
        return;

    int index = event.getY() / mRowHeight;

    if (index < 0 || index >= mShopItems->getNumberOfElements())
    {
        mItemPopup->setVisible(false);
    }
    else
    {
        Item *item = mShopItems->at(index);
        if (item)
        {
            mItemPopup->setItem(item->getInfo());
            mItemPopup->position(viewport->getMouseX(), viewport->getMouseY());
        }
        else
        {
            mItemPopup->setVisible(false);
        }
    }
}
开发者ID:Ablu,项目名称:invertika,代码行数:25,代码来源:shoplistbox.cpp


示例7: mouseClicked

void ItemMakerBox::mouseClicked(gcn::MouseEvent& mouseEvent){
    if( mouseEvent.isConsumed() ){ return; };

    //  Save Button
    if( mouseEvent.getSource() == saveBtn ){
        mouseEvent.consume();
        save( filenameFld->getText() );
    } else
    //  Load Button
    if( mouseEvent.getSource() == loadBtn ){
        mouseEvent.consume();
        load( filenameFld->getText() );
    } else {
        setCaption(caption_);
    }
}
开发者ID:hoodwolf,项目名称:Infraelly,代码行数:16,代码来源:ItemMakerBox.cpp


示例8: mouseDragged

void Viewport::mouseDragged(gcn::MouseEvent &event)
{
    if (!mMap || !player_node)
        return;

    if (mPlayerFollowMouse && !event.isShiftPressed())
    {
        if (get_elapsed_time(mLocalWalkTime) >= walkingMouseDelay)
        {
            mLocalWalkTime = tick_time;
            player_node->setDestination(event.getX() + (int) mPixelViewX,
                                        event.getY() + (int) mPixelViewY);
            player_node->pathSetByMouse();
        }
    }
}
开发者ID:mobilehub,项目名称:mana,代码行数:16,代码来源:viewport.cpp


示例9: mousePressed

// -- MouseListener notifications
void GuiTable::mousePressed(gcn::MouseEvent& mouseEvent)
{
    if (mouseEvent.getButton() == gcn::MouseEvent::LEFT)
    {
        int row = getRowForY(mouseEvent.getY());
        int column = getColumnForX(mouseEvent.getX());

        if (row > -1 && column > -1 &&
            row < mModel->getRows() && column < mModel->getColumns())
        {
            mSelectedColumn = column;
            mSelectedRow = row;
        }

        distributeActionEvent();
    }
}
开发者ID:Ablu,项目名称:invertika,代码行数:18,代码来源:table.cpp


示例10: mouseMoved

// Show ItemTooltip
void ItemAmountWindow::mouseMoved(gcn::MouseEvent &event)
{
    if (event.getSource() == mItemIcon)
    {
        mItemPopup->setItem(mItem->getInfo());
        mItemPopup->position(viewport->getMouseX(), viewport->getMouseY());
    }
}
开发者ID:Ablu,项目名称:invertika,代码行数:9,代码来源:itemamount.cpp


示例11: mouseMoved

// Show ItemTooltip
void ItemContainer::mouseMoved(gcn::MouseEvent &event)
{
    if (!mInventory)
        return;

    Item *item = mInventory->getItem(getSlotIndex(event.getX(), event.getY()));

    if (item && viewport)
    {
        mItemPopup->setItem(item);
        mItemPopup->position(viewport->getMouseX(), viewport->getMouseY());
    }
    else
    {
        mItemPopup->setVisible(false);
    }
}
开发者ID:Evonline,项目名称:ManaPlus,代码行数:18,代码来源:itemcontainer.cpp


示例12: mousePressed

void OutfitWindow::mousePressed(gcn::MouseEvent &event)
{
    Window::mousePressed(event);
    const int index = getIndexFromGrid(event.getX(), event.getY());
    if (index == -1) {
        return;
    }

    // Stores the selected item if there is one.
    if (isItemSelected()) {
        mItems[mCurrentOutfit][index] = mItemSelected;
        mItemSelected = -1;
    }
    else if (mItems[mCurrentOutfit][index]) {
        mItemClicked = true;
    }
}
开发者ID:weimingtom,项目名称:guichan-input,代码行数:17,代码来源:outfitwindow.cpp


示例13: mouseWheelMovedDown

void ListBox::mouseWheelMovedDown(gcn::MouseEvent& mouseEvent)
{
    if (isFocused())
    {
        incrementSelected();
        mouseEvent.consume();
    }
}
开发者ID:Aethyra,项目名称:Client,代码行数:8,代码来源:listbox.cpp


示例14: mouseMoved

void Viewport::mouseMoved(gcn::MouseEvent &event)
{
    // Check if we are on the map
    if (!mMap || !player_node)
        return;

    const int x = (event.getX() + (int) mPixelViewX);
    const int y = (event.getY() + (int) mPixelViewY);

    mHoverBeing = actorSpriteManager->findBeingByPixel(x, y);
    mBeingPopup->show(getMouseX(), getMouseY(), mHoverBeing);

    mHoverItem = actorSpriteManager->findItem(x / mMap->getTileWidth(),
                                              y / mMap->getTileHeight());

    updateCursorType();
}
开发者ID:mobilehub,项目名称:mana,代码行数:17,代码来源:viewport.cpp


示例15: mouseClicked

void BuyDialog::mouseClicked(gcn::MouseEvent &mouseEvent)
{
    if (mouseEvent.getSource() == mShopItemList &&
        isDoubleClick(mShopItemList->getSelected()))
    {
        action(gcn::ActionEvent(mBuyButton, mBuyButton->getActionEventId()));
    }
}
开发者ID:B-Rich,项目名称:mana,代码行数:8,代码来源:buy.cpp


示例16: mouseExited

void PlayControllerZone::mouseExited( gcn::MouseEvent& mouseEvent )
{

  model().resetMouse();
  view().resetMove();
  mouseEvent.consume();

}
开发者ID:jorgejcabrera,项目名称:gamemvc,代码行数:8,代码来源:playcontrollerzone.cpp


示例17: if

void LayerPanel::mouseClicked(gcn::MouseEvent& me)
{
    gcn::Widget *src = me.getSource();
    // poll the buttons for a click
    for(uint32 i = 0; i < LAYER_MAX; i++)
    {
        if(src == btnLayers[i])
        {
            if(me.getButton() == gcn::MouseEvent::LEFT)
                _engine->GetDrawPanel()->SetActiveLayer(i);
            else if(me.getButton() == gcn::MouseEvent::RIGHT)
                _engine->ToggleLayerVisible(i);

            return;
        }
    }
}
开发者ID:IamusNavarathna,项目名称:lv3proj,代码行数:17,代码来源:LayerPanel.cpp


示例18: mousePressed

void Window::mousePressed(gcn::MouseEvent &event)
{
    // Let Guichan move window to top and figure out title bar drag
    gcn::Window::mousePressed(event);

    if (event.getButton() == gcn::MouseEvent::LEFT)
    {
        const int x = event.getX();
        const int y = event.getY();

        // Handle close button
        if (mCloseButton)
        {
            gcn::Rectangle closeButtonRect(
                getWidth() - mSkin->getCloseImage()->getWidth() - getPadding(),
                getPadding(),
                mSkin->getCloseImage()->getWidth(),
                mSkin->getCloseImage()->getHeight());

            if (closeButtonRect.isPointInRect(x, y))
            {
                close();
            }
        }

        // Handle sticky button
        if (mStickyButton)
        {
            Image *button = mSkin->getStickyImage(mSticky);
            int rx = getWidth() - button->getWidth() - getPadding();
            if (mCloseButton)
                rx -= mSkin->getCloseImage()->getWidth();
            gcn::Rectangle stickyButtonRect(rx, getPadding(),
                                    button->getWidth(), button->getHeight());

            if (stickyButtonRect.isPointInRect(x, y))
            {
                setSticky(!isSticky());
            }
        }

        // Handle window resizing
        mouseResize = getResizeHandles(event);
    }
}
开发者ID:Ablu,项目名称:invertika,代码行数:45,代码来源:window.cpp


示例19: mouseClicked

void WorldSelectDialog::mouseClicked(gcn::MouseEvent &mouseEvent)
{
    if (mouseEvent.getSource() == mWorldList &&
        isDoubleClick(mWorldList->getSelected()))
    {
        action(gcn::ActionEvent(mChooseWorld,
                                mChooseWorld->getActionEventId()));
    }
}
开发者ID:B-Rich,项目名称:mana,代码行数:9,代码来源:worldselectdialog.cpp


示例20: mousePressed

void EmoteShortcutContainer::mousePressed(gcn::MouseEvent &event)
{
    const int index = getIndexFromGrid(event.getX(), event.getY());

    if (index == -1)
        return;

    // Stores the selected emote if there is one.
    if (emoteShortcut->isEmoteSelected())
    {
        emoteShortcut->setEmote(index);
        emoteShortcut->setEmoteSelected(0);
    }
    else if (emoteShortcut->getEmote(index))
    {
        mEmoteClicked = true;
    }
}
开发者ID:TonyRice,项目名称:mana,代码行数:18,代码来源:emoteshortcutcontainer.cpp



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C++ gd::ArbitraryResourceWorker类代码示例发布时间:2022-05-31
下一篇:
C++ gcn::KeyEvent类代码示例发布时间:2022-05-31
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap