mirror of
https://foundry.openuru.org/gitblit/r/CWE-ou-minkata.git
synced 2025-07-14 10:37:41 -04:00
Fix line endings and tabs
This commit is contained in:
@ -1,238 +1,238 @@
|
||||
/*==LICENSE==*
|
||||
|
||||
CyanWorlds.com Engine - MMOG client, server and tools
|
||||
Copyright (C) 2011 Cyan Worlds, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
You can contact Cyan Worlds, Inc. by email legal@cyan.com
|
||||
or by snail mail at:
|
||||
Cyan Worlds, Inc.
|
||||
14617 N Newport Hwy
|
||||
Mead, WA 99021
|
||||
|
||||
*==LICENSE==*/
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
// //
|
||||
// plDTProgressMgr Functions //
|
||||
// //
|
||||
//// History /////////////////////////////////////////////////////////////////
|
||||
// //
|
||||
// 2.28.2001 mcn - Created //
|
||||
// //
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#include <stdlib.h>
|
||||
#include "hsTypes.h"
|
||||
#include "plDTProgressMgr.h"
|
||||
#include "plPipeline.h"
|
||||
#include "plDebugText.h"
|
||||
#include "plPlates.h"
|
||||
|
||||
#include "../../Apps/plClient/res/resource.h"
|
||||
|
||||
#include "hsTimer.h"
|
||||
|
||||
|
||||
//// Constructor & Destructor ////////////////////////////////////////////////
|
||||
|
||||
plDTProgressMgr::plDTProgressMgr() :
|
||||
fCurrentImage(0),
|
||||
fLastDraw(0.0f),
|
||||
fStaticTextPlate(nil),
|
||||
fActivePlate(nil)
|
||||
{
|
||||
}
|
||||
|
||||
plDTProgressMgr::~plDTProgressMgr()
|
||||
{
|
||||
}
|
||||
|
||||
void plDTProgressMgr::DeclareThyself( void )
|
||||
{
|
||||
static plDTProgressMgr thyself;
|
||||
}
|
||||
|
||||
void plDTProgressMgr::Activate()
|
||||
{
|
||||
if (fStaticTextPlate == nil && fCurrentStaticText != plProgressMgr::kNone)
|
||||
{
|
||||
plPlateManager::Instance().CreatePlate(&fStaticTextPlate);
|
||||
|
||||
fStaticTextPlate->CreateFromJPEGResource(MAKEINTRESOURCE(plProgressMgr::GetStaticTextID(fCurrentStaticText)), 0);
|
||||
fStaticTextPlate->SetVisible(true);
|
||||
fStaticTextPlate->SetOpacity(1.0f);
|
||||
fStaticTextPlate->SetSize(2 * 0.192f, 2 * 0.041f, true);
|
||||
fStaticTextPlate->SetPosition(0, 0.5f, 0);
|
||||
}
|
||||
|
||||
if (fActivePlate == nil)
|
||||
{
|
||||
plPlateManager::Instance().CreatePlate( &fActivePlate );
|
||||
|
||||
fActivePlate->CreateFromJPEGResource( MAKEINTRESOURCE( plProgressMgr::GetLoadingFrameID(fCurrentImage) ), 0 );
|
||||
fActivePlate->SetVisible(true);
|
||||
fActivePlate->SetOpacity(1.0f);
|
||||
fActivePlate->SetSize(0.6, 0.6, true);
|
||||
fActivePlate->SetPosition(0, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
void plDTProgressMgr::Deactivate()
|
||||
{
|
||||
if (fStaticTextPlate)
|
||||
{
|
||||
fStaticTextPlate->SetVisible(false);
|
||||
plPlateManager::Instance().DestroyPlate( fStaticTextPlate );
|
||||
fStaticTextPlate = nil;
|
||||
}
|
||||
|
||||
if (fActivePlate)
|
||||
{
|
||||
fActivePlate->SetVisible(false);
|
||||
plPlateManager::Instance().DestroyPlate( fActivePlate );
|
||||
fActivePlate = nil;
|
||||
}
|
||||
}
|
||||
|
||||
//// Draw ////////////////////////////////////////////////////////////////////
|
||||
|
||||
void plDTProgressMgr::Draw( plPipeline *p )
|
||||
{
|
||||
UInt16 scrnWidth, scrnHeight, width, height, x, y;
|
||||
plDebugText &text = plDebugText::Instance();
|
||||
|
||||
plOperationProgress *prog;
|
||||
|
||||
|
||||
if( fOperations == nil )
|
||||
return;
|
||||
|
||||
scrnWidth = (UInt16)p->Width();
|
||||
scrnHeight = (UInt16)p->Height();
|
||||
|
||||
width = scrnWidth - 64;
|
||||
height = 16;
|
||||
x = ( scrnWidth - width ) >> 1;
|
||||
y = scrnHeight - 32 - height;
|
||||
if( fOperations->GetNext() == nil )
|
||||
y -= text.GetFontSize() + 8 + height + 4;
|
||||
|
||||
|
||||
text.SetDrawOnTopMode( true );
|
||||
|
||||
if (fActivePlate)
|
||||
{
|
||||
float currentMs = hsTimer::FullTicksToMs(hsTimer::GetFullTickCount());
|
||||
if ((currentMs - fLastDraw) > 30)
|
||||
{
|
||||
fCurrentImage++;
|
||||
if (fCurrentImage >= 18)
|
||||
fCurrentImage = 0;
|
||||
|
||||
fLastDraw = currentMs;
|
||||
|
||||
fActivePlate->ReloadFromJPEGResource(MAKEINTRESOURCE(plProgressMgr::GetInstance()->GetLoadingFrameID(fCurrentImage)), 0);
|
||||
fActivePlate->SetVisible(true);
|
||||
fActivePlate->SetOpacity(1.0f);
|
||||
fActivePlate->SetSize(0.6, 0.6, true);
|
||||
fActivePlate->SetPosition(0, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
for( prog = fOperations; prog != nil; prog = prog->GetNext() )
|
||||
{
|
||||
IDrawTheStupidThing( p, prog, x, y, width, height );
|
||||
y -= text.GetFontSize() + 8 + height + 4;
|
||||
}
|
||||
|
||||
text.SetDrawOnTopMode( false );
|
||||
}
|
||||
|
||||
//// IDrawTheStupidThing /////////////////////////////////////////////////////
|
||||
|
||||
void plDTProgressMgr::IDrawTheStupidThing( plPipeline *p, plOperationProgress *prog,
|
||||
UInt16 x, UInt16 y, UInt16 width, UInt16 height )
|
||||
{
|
||||
plDebugText &text = plDebugText::Instance();
|
||||
|
||||
// Lets just set the color to blue
|
||||
UInt32 color = 0xff302b3a;
|
||||
|
||||
if( prog->GetMax() > 0.f )
|
||||
{
|
||||
text.Draw3DBorder(x, y, x + width - 1, y + height - 1, color, color);
|
||||
|
||||
x += 2;
|
||||
y += 2;
|
||||
width -= 4;
|
||||
height -= 4;
|
||||
|
||||
UInt16 drawWidth = width;
|
||||
Int16 drawX = x;
|
||||
UInt16 rightX = drawX + drawWidth;
|
||||
|
||||
if (prog->GetProgress() <= prog->GetMax())
|
||||
drawWidth = (UInt16)( (hsScalar)width * prog->GetProgress() / prog->GetMax() );
|
||||
|
||||
rightX = drawX + drawWidth;
|
||||
|
||||
if( drawWidth > 0 )
|
||||
text.DrawRect( drawX, y, rightX, y + height, color );
|
||||
|
||||
int timeRemain = prog->fRemainingSecs;
|
||||
char remainStr[1024];
|
||||
strcpy(remainStr, "APPROXIMATELY ");
|
||||
if (timeRemain > 3600)
|
||||
{
|
||||
const char* term = ((timeRemain / 3600) > 1) ? "HOURS" : "HOUR";
|
||||
sprintf(remainStr, "%s%d %s ", remainStr, (timeRemain / 3600), term);
|
||||
timeRemain %= 3600;
|
||||
}
|
||||
if (timeRemain > 60)
|
||||
{
|
||||
const char* term = ((timeRemain / 60) > 1) ? "MINUTES" : "MINUTE";
|
||||
sprintf(remainStr, "%s%d %s ", remainStr, (timeRemain / 60), term);
|
||||
timeRemain %= 60;
|
||||
}
|
||||
const char* unitTerm = (timeRemain == 1) ? "SECOND" : "SECONDS";
|
||||
sprintf(remainStr, "%s%d %s REMAINING", remainStr, timeRemain, unitTerm);
|
||||
|
||||
text.DrawString(x, y + height + 2, remainStr, (UInt32)0xff635e6d );
|
||||
|
||||
x -= 2;
|
||||
y -= 2;
|
||||
}
|
||||
|
||||
y -= ( text.GetFontSize() << 1 ) + 4;
|
||||
|
||||
#ifndef PLASMA_EXTERNAL_RELEASE
|
||||
bool drawText = true;
|
||||
#else
|
||||
bool drawText = false;
|
||||
#endif
|
||||
|
||||
if (drawText)
|
||||
{
|
||||
if( prog->GetTitle()[ 0 ] != 0 )
|
||||
{
|
||||
text.DrawString( x, y, prog->GetTitle(), (UInt32)0xccb0b0b0 );
|
||||
x += (UInt16)text.CalcStringWidth( prog->GetTitle() );
|
||||
}
|
||||
|
||||
if( prog->GetStatusText()[ 0 ] != 0 )
|
||||
text.DrawString( x, y, prog->GetStatusText(), (UInt32)0xccb0b0b0 );
|
||||
}
|
||||
}
|
||||
|
||||
/*==LICENSE==*
|
||||
|
||||
CyanWorlds.com Engine - MMOG client, server and tools
|
||||
Copyright (C) 2011 Cyan Worlds, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
You can contact Cyan Worlds, Inc. by email legal@cyan.com
|
||||
or by snail mail at:
|
||||
Cyan Worlds, Inc.
|
||||
14617 N Newport Hwy
|
||||
Mead, WA 99021
|
||||
|
||||
*==LICENSE==*/
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
// //
|
||||
// plDTProgressMgr Functions //
|
||||
// //
|
||||
//// History /////////////////////////////////////////////////////////////////
|
||||
// //
|
||||
// 2.28.2001 mcn - Created //
|
||||
// //
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#include <stdlib.h>
|
||||
#include "hsTypes.h"
|
||||
#include "plDTProgressMgr.h"
|
||||
#include "plPipeline.h"
|
||||
#include "plDebugText.h"
|
||||
#include "plPlates.h"
|
||||
|
||||
#include "../../Apps/plClient/res/resource.h"
|
||||
|
||||
#include "hsTimer.h"
|
||||
|
||||
|
||||
//// Constructor & Destructor ////////////////////////////////////////////////
|
||||
|
||||
plDTProgressMgr::plDTProgressMgr() :
|
||||
fCurrentImage(0),
|
||||
fLastDraw(0.0f),
|
||||
fStaticTextPlate(nil),
|
||||
fActivePlate(nil)
|
||||
{
|
||||
}
|
||||
|
||||
plDTProgressMgr::~plDTProgressMgr()
|
||||
{
|
||||
}
|
||||
|
||||
void plDTProgressMgr::DeclareThyself( void )
|
||||
{
|
||||
static plDTProgressMgr thyself;
|
||||
}
|
||||
|
||||
void plDTProgressMgr::Activate()
|
||||
{
|
||||
if (fStaticTextPlate == nil && fCurrentStaticText != plProgressMgr::kNone)
|
||||
{
|
||||
plPlateManager::Instance().CreatePlate(&fStaticTextPlate);
|
||||
|
||||
fStaticTextPlate->CreateFromJPEGResource(MAKEINTRESOURCE(plProgressMgr::GetStaticTextID(fCurrentStaticText)), 0);
|
||||
fStaticTextPlate->SetVisible(true);
|
||||
fStaticTextPlate->SetOpacity(1.0f);
|
||||
fStaticTextPlate->SetSize(2 * 0.192f, 2 * 0.041f, true);
|
||||
fStaticTextPlate->SetPosition(0, 0.5f, 0);
|
||||
}
|
||||
|
||||
if (fActivePlate == nil)
|
||||
{
|
||||
plPlateManager::Instance().CreatePlate( &fActivePlate );
|
||||
|
||||
fActivePlate->CreateFromJPEGResource( MAKEINTRESOURCE( plProgressMgr::GetLoadingFrameID(fCurrentImage) ), 0 );
|
||||
fActivePlate->SetVisible(true);
|
||||
fActivePlate->SetOpacity(1.0f);
|
||||
fActivePlate->SetSize(0.6, 0.6, true);
|
||||
fActivePlate->SetPosition(0, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
void plDTProgressMgr::Deactivate()
|
||||
{
|
||||
if (fStaticTextPlate)
|
||||
{
|
||||
fStaticTextPlate->SetVisible(false);
|
||||
plPlateManager::Instance().DestroyPlate( fStaticTextPlate );
|
||||
fStaticTextPlate = nil;
|
||||
}
|
||||
|
||||
if (fActivePlate)
|
||||
{
|
||||
fActivePlate->SetVisible(false);
|
||||
plPlateManager::Instance().DestroyPlate( fActivePlate );
|
||||
fActivePlate = nil;
|
||||
}
|
||||
}
|
||||
|
||||
//// Draw ////////////////////////////////////////////////////////////////////
|
||||
|
||||
void plDTProgressMgr::Draw( plPipeline *p )
|
||||
{
|
||||
UInt16 scrnWidth, scrnHeight, width, height, x, y;
|
||||
plDebugText &text = plDebugText::Instance();
|
||||
|
||||
plOperationProgress *prog;
|
||||
|
||||
|
||||
if( fOperations == nil )
|
||||
return;
|
||||
|
||||
scrnWidth = (UInt16)p->Width();
|
||||
scrnHeight = (UInt16)p->Height();
|
||||
|
||||
width = scrnWidth - 64;
|
||||
height = 16;
|
||||
x = ( scrnWidth - width ) >> 1;
|
||||
y = scrnHeight - 32 - height;
|
||||
if( fOperations->GetNext() == nil )
|
||||
y -= text.GetFontSize() + 8 + height + 4;
|
||||
|
||||
|
||||
text.SetDrawOnTopMode( true );
|
||||
|
||||
if (fActivePlate)
|
||||
{
|
||||
float currentMs = hsTimer::FullTicksToMs(hsTimer::GetFullTickCount());
|
||||
if ((currentMs - fLastDraw) > 30)
|
||||
{
|
||||
fCurrentImage++;
|
||||
if (fCurrentImage >= 18)
|
||||
fCurrentImage = 0;
|
||||
|
||||
fLastDraw = currentMs;
|
||||
|
||||
fActivePlate->ReloadFromJPEGResource(MAKEINTRESOURCE(plProgressMgr::GetInstance()->GetLoadingFrameID(fCurrentImage)), 0);
|
||||
fActivePlate->SetVisible(true);
|
||||
fActivePlate->SetOpacity(1.0f);
|
||||
fActivePlate->SetSize(0.6, 0.6, true);
|
||||
fActivePlate->SetPosition(0, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
for( prog = fOperations; prog != nil; prog = prog->GetNext() )
|
||||
{
|
||||
IDrawTheStupidThing( p, prog, x, y, width, height );
|
||||
y -= text.GetFontSize() + 8 + height + 4;
|
||||
}
|
||||
|
||||
text.SetDrawOnTopMode( false );
|
||||
}
|
||||
|
||||
//// IDrawTheStupidThing /////////////////////////////////////////////////////
|
||||
|
||||
void plDTProgressMgr::IDrawTheStupidThing( plPipeline *p, plOperationProgress *prog,
|
||||
UInt16 x, UInt16 y, UInt16 width, UInt16 height )
|
||||
{
|
||||
plDebugText &text = plDebugText::Instance();
|
||||
|
||||
// Lets just set the color to blue
|
||||
UInt32 color = 0xff302b3a;
|
||||
|
||||
if( prog->GetMax() > 0.f )
|
||||
{
|
||||
text.Draw3DBorder(x, y, x + width - 1, y + height - 1, color, color);
|
||||
|
||||
x += 2;
|
||||
y += 2;
|
||||
width -= 4;
|
||||
height -= 4;
|
||||
|
||||
UInt16 drawWidth = width;
|
||||
Int16 drawX = x;
|
||||
UInt16 rightX = drawX + drawWidth;
|
||||
|
||||
if (prog->GetProgress() <= prog->GetMax())
|
||||
drawWidth = (UInt16)( (hsScalar)width * prog->GetProgress() / prog->GetMax() );
|
||||
|
||||
rightX = drawX + drawWidth;
|
||||
|
||||
if( drawWidth > 0 )
|
||||
text.DrawRect( drawX, y, rightX, y + height, color );
|
||||
|
||||
int timeRemain = prog->fRemainingSecs;
|
||||
char remainStr[1024];
|
||||
strcpy(remainStr, "APPROXIMATELY ");
|
||||
if (timeRemain > 3600)
|
||||
{
|
||||
const char* term = ((timeRemain / 3600) > 1) ? "HOURS" : "HOUR";
|
||||
sprintf(remainStr, "%s%d %s ", remainStr, (timeRemain / 3600), term);
|
||||
timeRemain %= 3600;
|
||||
}
|
||||
if (timeRemain > 60)
|
||||
{
|
||||
const char* term = ((timeRemain / 60) > 1) ? "MINUTES" : "MINUTE";
|
||||
sprintf(remainStr, "%s%d %s ", remainStr, (timeRemain / 60), term);
|
||||
timeRemain %= 60;
|
||||
}
|
||||
const char* unitTerm = (timeRemain == 1) ? "SECOND" : "SECONDS";
|
||||
sprintf(remainStr, "%s%d %s REMAINING", remainStr, timeRemain, unitTerm);
|
||||
|
||||
text.DrawString(x, y + height + 2, remainStr, (UInt32)0xff635e6d );
|
||||
|
||||
x -= 2;
|
||||
y -= 2;
|
||||
}
|
||||
|
||||
y -= ( text.GetFontSize() << 1 ) + 4;
|
||||
|
||||
#ifndef PLASMA_EXTERNAL_RELEASE
|
||||
bool drawText = true;
|
||||
#else
|
||||
bool drawText = false;
|
||||
#endif
|
||||
|
||||
if (drawText)
|
||||
{
|
||||
if( prog->GetTitle()[ 0 ] != 0 )
|
||||
{
|
||||
text.DrawString( x, y, prog->GetTitle(), (UInt32)0xccb0b0b0 );
|
||||
x += (UInt16)text.CalcStringWidth( prog->GetTitle() );
|
||||
}
|
||||
|
||||
if( prog->GetStatusText()[ 0 ] != 0 )
|
||||
text.DrawString( x, y, prog->GetStatusText(), (UInt32)0xccb0b0b0 );
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user