예제 #1
0
파일: LayoutBox.cpp 프로젝트: Noxalus/YAPOG
  float LayoutBox::MaxSize (char coord)
  {
    float maxSizeItem = 0;

    if (coord == 'x')
    {
      for (IWidget* item : childen_)
      {
        float currentSize = item->GetSize ().x;

        maxSizeItem = MathHelper::Max (maxSizeItem, currentSize);
      }

      return MathHelper::Max (
        maxSizeItem + externPad_.left + externPad_.right,
        GetUserSize ().x);
    }
    else if (coord == 'y')
    {
      for (IWidget* item : childen_)
      {
        float currentSize = item->GetSize ().y;

        maxSizeItem = MathHelper::Max (maxSizeItem, currentSize);
      }

      return MathHelper::Max (
        maxSizeItem + externPad_.top + externPad_.bottom,
        GetUserSize ().y);
    }

    // Error
    return -42;
  }
예제 #2
0
CUser* CUserManager::CreateUser( )
{

	/*
	CUserBuffer:

	We merge both classes of the internal server and the exe into one:

	1 'User'
	+-------------------+------------------------+
	|   sizeof( CUser ) |   sizeof( CTestUser )  |
	+-------------------+-------------------------
	*/

	auto pNetImpl = GetNetwork( )->GetNetImpl( );
	size_t nImplSize = pNetImpl->GetUserSize( );


	BYTE* pBuffer = new BYTE[ sizeof( CUser ) + nImplSize ];
	BYTE* pBufferPos = pBuffer;


	WSocket::IUserImpl* pUserImpl = pNetImpl->ConstructUser( pBufferPos + sizeof( CUser ) );
	CUser* pUser = new ( pBufferPos )CUser( pUserImpl );


	return pUser;
}
예제 #3
0
파일: Label.cpp 프로젝트: Noxalus/YAPOG
Vector2 Label::HandleGetSize () const
{
    if (userSize_ == Vector2 (0, 0))
        return Vector2 (padding_.left
                        + drawableText_.getGlobalBounds ().width
                        + padding_.right,
                        padding_.top
                        + /*drawableText_.getGlobalBounds ().height*/drawableText_.getCharacterSize ()
                        + padding_.bottom)
               + ((border_ != nullptr) ? Vector2 (border_->GetWidth ()
                       * 2, border_->GetWidth () * 2) : Vector2 ());
    else
        return GetUserSize ();
}
예제 #4
0
CUserIPCheckMgr::User& CUserIPCheckMgr::GetUser( DWORD connectionIndex )
{
	LPCTSTR ipAddrss = GetIpAddress( connectionIndex );

	for( DWORD i = 0; i < GetUserSize(); ++i )
	{
		User& user = mUserArray[ i ];

		if( 0 == _tcscmp( ipAddrss, user.mIpAddress ) )
		{
			return user;
		}
	}

	static User emptyUser;
	return emptyUser;
}