All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines
Public Member Functions | Protected Member Functions | Protected Attributes
QGpCoreTools::AbstractProgress Class Reference

Brief description of class still missing. More...

#include <AbstractProgress.h>

Inheritance diagram for QGpCoreTools::AbstractProgress:
QGpCoreTools::ConsoleProgress QGpGuiTools::ProgressBar SciFigs::PaintProgress

List of all members.

Public Member Functions

 AbstractProgress ()
const QString & caption () const
void increaseValue (int val=1)
int maximum () const
virtual void setCaption (QString c)
virtual void setMaximum (int val)
void setValue (int val)
int value () const
virtual ~AbstractProgress ()

Protected Member Functions

virtual void paint (QString caption, int value, int maximum)=0
QString valueString (int value, int maximum)

Protected Attributes

QString _caption
int _maximum
QMutex _mutex
int _value

Detailed Description

Brief description of class still missing.

Full description of class still missing


Constructor & Destructor Documentation

Description of constructor still missing

References _maximum, _value, and TRACE.

{
  TRACE;
  _value=0;
  _deltaValue=0;
  _maximum=-1;
  _lastTime=time(0);
}
{}

Member Function Documentation

const QString & QGpCoreTools::AbstractProgress::caption ( ) const

References _caption, and _mutex.

{
  QMutexLocker ml(&_mutex);
  return _caption;
}
void QGpCoreTools::AbstractProgress::increaseValue ( int  val = 1) [inline]

References TRACE.

Referenced by createManyCurves(), GeopsyMainWindow::increaseProgressValue(), and GeopsyCore::GeopsyCoreEngine::showMessage().

{
  TRACE;
  _deltaValue+=val; // Several increments may stack up if they arrive too fast.
  int now=time(0);
  if(_lastTime.fetchAndStoreOrdered(now)!=now) {
    increaseValueInternal();
    _deltaValue=0;
  }
}

Reimplemented in QGpGuiTools::ProgressBar.

References _maximum, and _mutex.

{
  QMutexLocker ml(&_mutex);
  return _maximum;
}
virtual void QGpCoreTools::AbstractProgress::paint ( QString  caption,
int  value,
int  maximum 
) [protected, pure virtual]
void QGpCoreTools::AbstractProgress::setCaption ( QString  c) [virtual]

Reimplemented in QGpCoreTools::ConsoleProgress.

References _caption, _mutex, and TRACE.

{
  TRACE;
  QMutexLocker ml(&_mutex);
  _caption=c;
}
void QGpCoreTools::AbstractProgress::setMaximum ( int  val) [virtual]
void QGpCoreTools::AbstractProgress::setValue ( int  val) [inline]
int QGpCoreTools::AbstractProgress::value ( ) const [inline]

Reimplemented in QGpGuiTools::ProgressBar.

{return _value+_deltaValue;}
QString QGpCoreTools::AbstractProgress::valueString ( int  value,
int  maximum 
) [protected]

Referenced by QGpCoreTools::ConsoleProgress::paint(), and SciFigs::PaintProgress::paint().

{
  if(value>maximum) {
    return QString::number(value);
  } else if(maximum>0){
    static const QString fmt("%1 %");
    return fmt.arg((100*value)/maximum);
  } else {
    return "100 %";
  }
}

Member Data Documentation

QMutex QGpCoreTools::AbstractProgress::_mutex [mutable, protected]

Referenced by AbstractProgress(), and setMaximum().


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines