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

Class Index

kview'KViewPart (./kdegraphics/kview/kview_view.h:50)

class KViewPart: public KParts::ReadOnlyPart
{
  Q_OBJECT
public:
  KViewPart( QWidget *parent = 0, const char *name = 0 );
  virtual ~KViewPart();

  virtual bool openURL( const KURL &url );
  virtual bool closeURL();

  KImageCanvas *canvas() const { return m_pCanvas; }

protected:
  virtual bool openFile() { return false; } // not called

protected slots:
  void slotResult( KIO::Job * );
//void slotRedirection( int, const char * );

  void slotZoomIn();
  void slotZoomOut();
  void slotRotate();
  void slotReset();

  virtual void keyPressEvent( QKeyEvent *ev );
// removed resizeEvent...

private:
  KIO::SimpleJob * m_job;
  KViewKonqExtension * m_extension;
  QWMatrix matrix;
  int zoomFactor;
  KImageCanvas *m_pCanvas;

  KAction *m_paZoomIn;
  KAction *m_paZoomOut;
  KAction *m_paRotate;
  KAction *m_paReset;
};


kview'KViewPart::KViewPart() (./kdegraphics/kview/kview_view.cc:96)

KViewPart::KViewPart( QWidget *parent, const char *name )
 : KParts::ReadOnlyPart( parent, name )
{
  m_job = 0L;

  setInstance( KViewFactory::instance() );

  m_extension = new KViewKonqExtension( this );

  zoomFactor = 0;
  m_pCanvas = new KImageCanvas( parent );
  m_pCanvas->setFocusPolicy( QWidget::StrongFocus );
  setWidget( m_pCanvas );

  KVImageHolder *img = m_pCanvas->client();
  img->move( 0, 0 );
  img->show();
  m_pCanvas->show();

  m_paZoomIn = new KAction( i18n( "Zoom in 10%" ), QIconSet( BarIcon( "viewmag+", KViewFactory::instance() ) ) , 0, this, SLOT( slotZoomIn() ), actionCollection(), "zoomin" );
  m_paZoomOut = new KAction( i18n( "Zoom out 10%" ), QIconSet( BarIcon( "viewmag-", KViewFactory::instance() ) ), 0, this, SLOT( slotZoomOut() ), actionCollection(), "zoomout" );
  m_paRotate = new KAction( i18n( "Rotate clockwise" ), QIconSet( UserIcon( "rotate", KViewFactory::instance() ) ), 0, this, SLOT( slotRotate() ), actionCollection(), "rotate" );
  m_paReset = new KAction( i18n( "Reset" ), QIconSet( BarIcon( "undo", KViewFactory::instance() ) ), 0, this, SLOT( slotReset() ), actionCollection(), "reset" );

  setXMLFile( "kview_part.rc" );
}


kview'KViewPart::~KViewPart() (./kdegraphics/kview/kview_view.cc:123)

KViewPart::~KViewPart()
{
  closeURL();
}


kview'KViewPart::openURL() (./kdegraphics/kview/kview_view.cc:128)

bool KViewPart::openURL( const KURL &url )
{
  closeURL();

  m_job = KIO::get( url );

  //m_job->setGUImode( KIO::Job::NONE );

  QObject::connect( m_job, SIGNAL( result( KIO::Job * ) ), this, SLOT( slotResult( KIO::Job * ) ) );
  //QObject::connect( job, SIGNAL( sigRedirection( int, const char * ) ), this, SLOT( slotRedirection( int, const char * ) ) );

  (void)new KIOImageLoader( m_job, m_pCanvas->client() );

  m_url = url;

  emit started( m_job );

  return true;
}


kview'KViewPart::closeURL() (./kdegraphics/kview/kview_view.cc:148)

bool KViewPart::closeURL()
{
  if ( m_job )
  {
    m_job->kill();
    m_job = 0;
  }
  return true;
}


kview'KViewPart::slotZoomIn() (./kdegraphics/kview/kview_view.cc:158)

void KViewPart::slotZoomIn()
{
  matrix.scale( 1.1, 1.1 );
  m_pCanvas->transformImage( matrix );
}


kview'KViewPart::slotZoomOut() (./kdegraphics/kview/kview_view.cc:164)

void KViewPart::slotZoomOut()
{
  matrix.scale( 0.9, 0.9 );
  m_pCanvas->transformImage( matrix );
}


kview'KViewPart::slotRotate() (./kdegraphics/kview/kview_view.cc:170)

void KViewPart::slotRotate()
{
  matrix.rotate( -90 );
  m_pCanvas->transformImage( matrix );
}


kview'KViewPart::slotReset() (./kdegraphics/kview/kview_view.cc:176)

void KViewPart::slotReset()
{
  matrix.reset();
  m_pCanvas->transformImage( matrix );
}


kview'KViewPart::keyPressEvent() (./kdegraphics/kview/kview_view.cc:182)

void KViewPart::keyPressEvent( QKeyEvent *ev )
{
  switch ( ev->key() )
  {
    case Key_Down:
      ev->accept();
      m_pCanvas->lineDown();
      break;
    case Key_Up:
      ev->accept();
      m_pCanvas->lineUp();
      break;
    case Key_Left:
      ev->accept();
      m_pCanvas->lineLeft();
      break;
    case Key_Right:
      ev->accept();
      m_pCanvas->lineRight();
      break;
    case Key_PageUp:
      ev->accept();
      m_pCanvas->pageUp();
      break;
    case Key_PageDown:
      ev->accept();
      m_pCanvas->pageDown();
      break;
    default:
      ev->ignore();
      break;
  }
}


kview'KViewPart::slotResult() (./kdegraphics/kview/kview_view.cc:216)

void KViewPart::slotResult( KIO::Job * job )
{
  if (job->error())
  {
    job->showErrorDialog();
    closeURL();
    emit canceled( QString( job->errorString() ) );
  } else
  {
    m_pCanvas->updateScrollBars();
    emit completed();
  }
  m_job = 0;
}

/*
void KViewPart::slotRedirection( int, const char *url )
{
  QString sUrl ( url );
  m_url = KURL( sUrl );
  emit m_extension->setLocationBarURL( sUrl );
  emit setWindowCaption( m_url.decodedURL() );
}
*/