Source Code (Use browser search to find items of interest.)

Class Index

kspread'AutoFillDeltaSequence (./koffice/kspread/kspread_autofill.h:81)

class AutoFillDeltaSequence
{
public:
    AutoFillDeltaSequence( AutoFillSequence *_first, AutoFillSequence *_next );
    ~AutoFillDeltaSequence();
    
    bool isOk() { return ok; }
    
    bool equals( AutoFillDeltaSequence *_delta );
    
    QArray<double>* getSequence() { return sequence; }

    double getItemDelta( int _pos );
    
protected:
    bool ok;    
    QArray<double>* sequence;
};

kspread'AutoFillDeltaSequence::AutoFillDeltaSequence() (./koffice/kspread/kspread_autofill.cc:37)

AutoFillDeltaSequence::AutoFillDeltaSequence( AutoFillSequence *_first, AutoFillSequence *_next )
{
  ok = TRUE;
  sequence = 0L;

  if ( _first->count() != _next->count() )
  {
    ok = FALSE;
    return;
  }

  sequence = new QArray<double> ( _first->count() );

  AutoFillSequenceItem *item = _first->getFirst();
  AutoFillSequenceItem *item2 = _next->getFirst();
  int i = 0;
  // for( item = _first->getFirst(); item != 0L && item2 != 0L; item = _first->getNext() );
  for ( i = 0; i < _first->count(); i++ )
  {
    double d;
    if ( !item->getDelta( item2, d ) )
      {
	ok = FALSE;
	return;
      }
    sequence->at( i++ ) = d;
    item2 = _next->getNext();
    item = _first->getNext();
  }
}


kspread'AutoFillDeltaSequence::~AutoFillDeltaSequence() (./koffice/kspread/kspread_autofill.cc:68)

AutoFillDeltaSequence::~AutoFillDeltaSequence()
{
  if ( sequence )
    delete sequence;
}


kspread'AutoFillDeltaSequence::equals() (./koffice/kspread/kspread_autofill.cc:74)

bool AutoFillDeltaSequence::equals( AutoFillDeltaSequence *_delta )
{
  if ( sequence == 0L )
    return FALSE;
  if ( _delta->getSequence() == 0L )
    return FALSE;
  if ( sequence->size() != _delta->getSequence()->size() )
    return FALSE;

  for ( unsigned int i = 0; i < sequence->size(); i++ )
  {
    if ( sequence->at( i ) != _delta->getSequence()->at( i ) )
      return FALSE;
  }

  return TRUE;
}


kspread'AutoFillDeltaSequence::getItemDelta() (./koffice/kspread/kspread_autofill.cc:92)

double AutoFillDeltaSequence::getItemDelta( int _pos )
{
  if ( sequence == 0L )
    return 0.0;
  return sequence->at( _pos );
}

/**********************************************************************************
 *
 * AutoFillSequenceItem
 *
 **********************************************************************************/