//## begin module%1.7%.codegen_version preserve=yes // Read the documentation to learn more about C++ code generator // versioning. //## end module%1.7%.codegen_version //## begin module%42007ECF0011.cm preserve=no //## end module%42007ECF0011.cm //## begin module%42007ECF0011.cp preserve=no // C O P Y R I G H T N O T I C E // This material is confidential to ERG and may not be disclosed in whole // or in part to any third party nor used in any manner whatsoever other // than for the purposes expressly consented to by ERG in writing. // // This material is also copyright and may not be reproduced, stored in a // retrieval system or transmitted in any form or by any means in whole or // in part without the express written consent of ERG. //## end module%42007ECF0011.cp //## Module: ProgressBar%42007ECF0011; Pseudo Package body //## Subsystem: MASS::Dev::Tools::TxnTestManager::src%41F5A79001E4 //## Source file: Z:\MASS_Dev\Tools\TxnTestManager\src\ProgressBar.cpp //## begin module%42007ECF0011.additionalIncludes preserve=no //## end module%42007ECF0011.additionalIncludes //## begin module%42007ECF0011.includes preserve=yes #include //## end module%42007ECF0011.includes // ProgressBar #include "ProgressBar.h" //## begin module%42007ECF0011.additionalDeclarations preserve=yes #define GREEN 1 //## end module%42007ECF0011.additionalDeclarations // Class ProgressBar //## Operation: ProgressBar%42007F04030F ProgressBar::ProgressBar (TWinControl *owner) //## begin ProgressBar::ProgressBar%42007F04030F.hasinit preserve=no : m_percent(0), m_position(0), m_progressBar(0), m_total(0) //## end ProgressBar::ProgressBar%42007F04030F.hasinit //## begin ProgressBar::ProgressBar%42007F04030F.initialization preserve=yes //## end ProgressBar::ProgressBar%42007F04030F.initialization { //## begin ProgressBar::ProgressBar%42007F04030F.body preserve=yes #ifdef ADV_PROGRESS_BAR m_progressBar = new TAdvProgressBar( owner ); m_progressBar->Parent = owner; m_progressBar->Steps = 10; m_progressBar->Position = 0; m_progressBar->ShowBorder = false; m_progressBar->ShowGradient = true; m_progressBar->ShowPercentage = true; m_progressBar->Stacked = false; m_progressBar->CompletionSmooth = false; m_progressBar->Visible = false; #if GREEN #define FROM_COLOUR 0x006AA676 #define TO_COLOUR 0x00BAE3C3 #else #define FROM_COLOUR 0x00C961AD #define TO_COLOUR 0x00FFBCEF #endif m_progressBar->Level0Color = Graphics::TColor( FROM_COLOUR ); m_progressBar->Level0ColorTo = Graphics::TColor( TO_COLOUR ); m_progressBar->Level1Color = Graphics::TColor( FROM_COLOUR ); m_progressBar->Level1ColorTo = Graphics::TColor( TO_COLOUR ); m_progressBar->Level2Color = Graphics::TColor( FROM_COLOUR ); m_progressBar->Level2ColorTo = Graphics::TColor( TO_COLOUR ); m_progressBar->Level3Color = Graphics::TColor( FROM_COLOUR ); m_progressBar->Level3ColorTo = Graphics::TColor( TO_COLOUR ); #else m_progressBar = new TProgressBar ( StatusBar ); m_progressBar->Parent = StatusBar; m_progressBar->Step = 10; m_progressBar->Max = 100; // We've normalised to percent. m_progressBar->Position = 0; m_progressBar->Visible = false; #endif //## end ProgressBar::ProgressBar%42007F04030F.body } ProgressBar::~ProgressBar() { //## begin ProgressBar::~ProgressBar%42007ECF0011_dest.body preserve=yes delete m_progressBar; m_progressBar = 0; //## end ProgressBar::~ProgressBar%42007ECF0011_dest.body } //## Other Operations (implementation) //## Operation: close%4200859302A4 void ProgressBar::close () { //## begin ProgressBar::close%4200859302A4.body preserve=yes m_progressBar->Hide(); m_percent = 0; m_position = 0; //## end ProgressBar::close%4200859302A4.body } //## Operation: increment%4200923803B3 void ProgressBar::increment (const unsigned int &delta) { //## begin ProgressBar::increment%4200923803B3.body preserve=yes update( m_position + delta ); //## end ProgressBar::increment%4200923803B3.body } //## Operation: open%4200813001F0 void ProgressBar::open (const unsigned int &total, const unsigned int &position) { //## begin ProgressBar::open%4200813001F0.body preserve=yes m_total = total; m_position = position; m_percent = ( m_total ? ( static_cast< int >( position / double( m_total ) * 100.0 ) ) : 100.0 ); #ifdef ADV_PROGRESS_BAR m_progressBar->Show(); m_progressBar->Position = m_percent; #else m_progressBar->Show(); m_progressBar->Position = m_percent; #endif //## end ProgressBar::open%4200813001F0.body } //## Operation: resize%4200826C0074 void ProgressBar::resize (const int &top, const int &left, const int &width, const int &height) { //## begin ProgressBar::resize%4200826C0074.body preserve=yes #ifdef ADV_PROGRESS_BAR m_progressBar->Top = top + 2; m_progressBar->Left = left + 4; m_progressBar->Width = width - 6; m_progressBar->Height = height - 4; #else m_progressBar->Top = top; m_progressBar->Left = left + 2; m_progressBar->Width = width - 2; m_progressBar->Height = height; #endif //## end ProgressBar::resize%4200826C0074.body } //## Operation: update%420085F6011D void ProgressBar::update (const unsigned int &position) { //## begin ProgressBar::update%420085F6011D.body preserve=yes // Do this only if we're open. if ( m_total ) { m_position = position; const unsigned int percent = ( static_cast< int >( position / double( m_total ) * 100.0 ) ); if ( m_percent != percent ) { m_percent = std::min< int >( percent, 100 ); #ifdef ADV_PROGRESS_BAR m_progressBar->Position = m_percent; #else m_progressBar->Position = m_percent; #endif } } //## end ProgressBar::update%420085F6011D.body } // Additional Declarations //## begin ProgressBar%42007ECF0011.declarations preserve=yes //## end ProgressBar%42007ECF0011.declarations //## begin module%42007ECF0011.epilog preserve=yes //## end module%42007ECF0011.epilog