// Override this method to serialize specific properties bool UIPicture::OnSerializeFrom(GTTreeNode* pTreeNode) { if(NULL == pTreeNode) return false; UIWidgetSprite::OnSerializeFrom(pTreeNode); // PieceEnabled is not defined so check Image node if(false == m_Sprite.HasSprite()) { // Read Image node GTTreeNode* pImageNode = pTreeNode->FindChild(GTPropertyFile::TagImage); // Create static sprite object if(NULL == pImageNode) return false; m_pSprite = GameObjectCreation::CreateStaticSprite( pImageNode->GetValue().ToCharString(), // Image file name GetParent()->GetZOrder() // User parent's z-order ); if(NULL == m_pSprite) return false; } if(m_pSprite) { // Setup position m_pSprite->SetPosition(GetPosition()); // Setup ZOrder m_pSprite->SetZOrder(GetZOrder()); // Setup Visible m_pSprite->SetVisible(GetVisible()); } return true; }
// Initialize the font bool UIWidget::InitializeFont(void) { if(m_pUILabelBMFont) return true; // Tricky note: // Save the position and apply it for m_pUILabelBMFont // because once m_pUILabelBMFont is initialized, the position // will be returned by m_pUILabelBMFont->GetPosition(), // not GTGameObject::GetPosition(). GTPoint2 position = GetPosition(); m_pUILabelBMFont = GameObjectCreation::CreateUILabelBMFont(); if(m_pUILabelBMFont) { // Initialize the font m_pUILabelBMFont->Initialize(GetFontName(), GetZOrder()); // Set text m_pUILabelBMFont->SetText(GetText()); // Set position m_pUILabelBMFont->SetPosition(position); // Set visible m_pUILabelBMFont->SetVisible(UIWidget::GetVisible()); // Set ZOrder m_pUILabelBMFont->SetZOrder(UIWidget::GetZOrder()); return true; } return false; }
//------------------------------------------------------------------------- void CSlot::SetZOrder( f32 p_fValue ) { if( IsEqual( GetZOrder(), p_fValue ) ) return; m_fOffsetZOrder = p_fValue - m_fOriginZOrder - m_fTweenZOrder; if( m_pArmature ) m_pArmature->m_bIsSlotsZOrderChanged = true; }
TextBox::TextBox(Window* pWindow, const SDL_Rect& location) : Control(pWindow, location), m_caret(pWindow, SDLRect(location.x + TextOffsetX, location.y + 8, CaretWidth, location.h - 16)), m_pPrevCursor(nullptr), m_position(0), m_clipOffset(0) { SetBorderColor(SDLColor(128, 128, 128, 0)); SetBorderSize(1); // place the caret above the text box m_caret.SetZOrder(GetZOrder() + 1); }
Real NxTriangles::getSquaredViewDepth(const Camera* cam) const { return (10000.0f - (Ogre::Real)GetZOrder()); // return (20.0f - (Ogre::Real)GetZOrder()); //(void)cam; //return 0; /* Ogre::Vector3 min, max, mid, dist; min = mBox.getMinimum(); max = mBox.getMaximum(); mid = ((max + min) * 0.5); dist = getParentNode()->_getDerivedPosition() - cam->getDerivedPosition() - mid; return dist.squaredLength(); */ }
//-------------------------------------------------------------------------------------------------------------- //向用户界面对象发送消息 LONG_PTR GuiTrackBar::SendMsg( LONG_PTR nGM, LONG_PTR nGMA, LONG_PTR nGMB ) { switch (nGM) { case GM_Enable: Enable( ( nGMA == 1 ) ? true : false ); return TRUE; case GM_Show: Show( ( nGMA == 1 ) ? true : false ); return TRUE; case GM_Focus: Focus( ( nGMA == 1 ) ? true : false ); return TRUE; case GM_MouseMove: MouseMove( (InputSystem*)nGMA ); return TRUE; case GM_SetPos: SetPos( nGMA, nGMB ); return TRUE; case GM_MovePos: SetPos( mLoca.X + nGMA, mLoca.Y + nGMB ); return TRUE; case GM_SetZOrder: SetZOrder( (ZOrderType)nGMA, (OverlaySurface*)nGMB ); return TRUE; case GM_GetZOrder: return (LONG_PTR)GetZOrder( (ZOrderType)nGMA ); case GM_LDown: LDown( (InputSystem*)nGMA ); return TRUE; case GM_LUp: LUp( (InputSystem*)nGMA ); return TRUE; } return FALSE; }
bool SceneObject::operator<(const SceneObject& other) { return GetZOrder() < other.GetZOrder(); }
int CALLBACK GetMemoData( LPVOID lp, int nGetType, LPVOID lpData, int nDataSize) { switch( nGetType) { case _GET_MEMO: return GetMemo( lp, lpData, nDataSize); case _GET_TITLE: return GetTitle( lp, lpData, nDataSize); case _GET_FONT: return GetFont( lp, lpData, nDataSize); case _GET_FORECOLOR: return GetForeColor( lp, lpData, nDataSize); case _GET_BACKCOLOR: return GetBackColor( lp, lpData, nDataSize); case _GET_ICON: return GetIconIndex( lp); case _GET_ZORDER: return GetZOrder( lp); case _GET_WINDOWTYPE: return GetWindowType( lp); case _GET_RECT_NORMAL: return GetNormalRect( lp, lpData, nDataSize); case _GET_POINT_TITLE: return GetTitlePoint( lp, lpData, nDataSize); case _GET_POINT_ICON: return GetIconPoint( lp, lpData, nDataSize); case _GET_RECT_TITLE: return GetTitleRect( lp, lpData, nDataSize); case _GET_RECT_ICON: return GetIconRect( lp, lpData, nDataSize); case _GET_TIMERENABLE: return IsTimerEnable( lp); case _GET_TIMER_TYPE: return GetTimerType( lp); case _GET_TIMER_MONTH: return GetTimerMonth( lp); case _GET_TIMER_DAY: return GetTimerDay( lp); case _GET_TIMER_HOUR: return GetTimerHour( lp); case _GET_TIMER_MIN: return GetTimerMin( lp); case _GET_TIMER_WEEK: return GetTimerWeek( lp); case _GET_TIMER_SOUND: return GetTimerSound( lp, lpData, nDataSize); case _GET_LINKENABLE: return IsLink( lp); case _GET_LINK_FILE: return GetLinkFile( lp, lpData, nDataSize); case _GET_LINK_PARAM: return GetLinkParam( lp, lpData, nDataSize); case _GET_CREATE_YEAR: return GetCreateYear( lp); case _GET_CREATE_MONTH: return GetCreateMonth( lp); case _GET_CREATE_DAY: return GetCreateDay( lp); case _GET_DEF_FONT: return GetDefFont( lpData, nDataSize); case _GET_DEF_FORECLR: return GetDefForeColor( lpData, nDataSize); case _GET_DEF_BACKCLR: return GetDefBackColor( lpData, nDataSize); case _GET_VERSION: return VERSION_CODE; } return 0; }
bool NDUIXBoardHitProxy::UITouchBegin(NDTouch* pkTouch) { NDUILayer* pkLayer = 0; if (!canProcessTouch(pkLayer)) { if (pkLayer) { bool ret = pkLayer->UITouchBegin(pkTouch); return ret; } } assert(m_pkOwner && pkTouch); if (!IsVisible()) { return false; } //判断是否点击在其他ZOrder比较高的控件上 NDUIDialog* pkOwnerDialog = getOwnerDlg(); if (pkOwnerDialog) { const vector<NDNode*>& kChildrenVector = pkOwnerDialog->GetChildren(); for (int i = 0; i < kChildrenVector.size(); i++) { NDNode* pkNode = kChildrenVector[i]; if (pkNode && pkNode->IsA(RTCLS(NDUINode))) { NDUINode* pkUINode = static_cast<NDUINode*>(pkNode); if (pkUINode != this && pkUINode != GetParent() && pkUINode->IsA(RTCLS(NDUINode)) && pkUINode->GetZOrder() > GetZOrder() && pkUINode->GetEnabled() && pkUINode->GetScreenRect().containsPoint( pkTouch->GetLocation())) { return false; } } } } //------------------------------------------------------------ m_kTouchDownLocalPos = pkTouch->GetLocation(); m_pkTouchDownView = NULL; if (!hitTest(pkTouch->GetLocation())) return false; for (int i = 0; i < m_pkOwner->getViewCount(); i++) { NDUIXView* pkView = m_pkOwner->getViewAt(i); if (pkView && pkView->GetEnabled() && pkView->GetScreenRect().containsPoint( pkTouch->GetLocation())) { m_pkTouchDownView = pkView; bool ret = pkView->UITouchBegin(pkTouch); //return ret; } } return true; //return NDUILayer::UITouchBegin(touch); }