Source Code (Use browser search to find items of interest.)
Class Index
kview'KView (./kdegraphics/kview/kview.h:24)
class KView : public QObject
{
Q_OBJECT
public:
/**
* KView Constructor
*/
KView();
/**
* KView Destructor
*/
virtual ~KView();
/**
* Execute the application.
*/
virtual int exec();
const QImage *currentSelection() const;
private slots:
void help( const char *tag );
void newViewer();
void closeViewer( KImageViewer * );
void setCutBuffer( QPixmap * );
void updateAllAccels();
protected:
/**
* Create and initialize a new viewer widget and
* return it.
*/
KImageViewer *makeViewer();
private:
KApplication _app;
void registerBuiltinFilters();
KFilterList *_filters;
KHelpIndex *_helper;
QList<KImageViewer> *_viewers;
QPtrDict<KFiltMenuFactory> *_filtMenus;
QPixmap *_cutBuffer;
};
kview'KView::KView() (./kdegraphics/kview/kview.cpp:25)
KView::KView()
: QObject( 0 ),
_app(),
_filters( new KFilterList ),
_helper( new KHelpIndex( "kview/kview.index" ) ),
_viewers( new QList<KImageViewer> ),
_filtMenus( new QPtrDict<KFiltMenuFactory> ),
_cutBuffer( 0 )
{
assert( _filters );
_viewers->setAutoDelete( true );
_filtMenus->setAutoDelete( true );
kimgioRegister();
registerBuiltinFilters();
}
kview'KView::~KView() (./kdegraphics/kview/kview.cpp:44)
KView::~KView()
{
delete _viewers; _viewers = 0;
delete _helper; _helper = 0;
delete _filters; _filters = 0;
delete _filtMenus; _filtMenus = 0;
}
kview'KView::exec() (./kdegraphics/kview/kview.cpp:52)
int KView::exec()
{
if( _app.isRestored() )
{
// restore saved viewers
for ( int i = 1; KTMainWindow::canBeRestored( i ); i++ )
{
makeViewer()->restore( i );
}
}
else
{
KImageViewer *viewer = makeViewer();
viewer->show();
// process arguments only if not restored
KCmdLineArgs *args = KCmdLineArgs::parsedArgs();
for( int i = 0; i < args->count(); i++ )
{
viewer->appendURL( args->url(i), (i == 0) );
}
}
return _app.exec();
}
kview'KView::registerBuiltinFilters() (./kdegraphics/kview/kview.cpp:78)
void KView::registerBuiltinFilters()
{
_filters->registerFilter( new BriteFilter,
KFilterList::AutoDelete );
_filters->registerFilter( new GreyFilter,
KFilterList::AutoDelete );
_filters->registerFilter( new SmoothFilter,
KFilterList::AutoDelete );
_filters->registerFilter( new GammaFilter,
KFilterList::AutoDelete );
}
kview'KView::help() (./kdegraphics/kview/kview.cpp:91)
void KView::help( const char *tag )
{
assert( _helper );
_helper->invoke( tag );
}
kview'KView::newViewer() (./kdegraphics/kview/kview.cpp:97)
void KView::newViewer()
{
KImageViewer *viewer = makeViewer();
viewer->show();
}
kview'KView::makeViewer() (./kdegraphics/kview/kview.cpp:104)
KImageViewer *KView::makeViewer()
{
KImageViewer *viewer = new KImageViewer;
if( viewer == 0 )
return 0;
KFiltMenuFactory *menu = new KFiltMenuFactory( _filters );
viewer->setFilterMenu( menu );
_viewers->append( viewer );
_filtMenus->insert( viewer, menu );
connect( viewer, SIGNAL(wantHelp( const char *)),
this, SLOT(help(const char *)) );
connect( viewer, SIGNAL(wantNewViewer()),
this, SLOT(newViewer()) );
connect( viewer, SIGNAL(wantToDie(KImageViewer *)),
this, SLOT(closeViewer(KImageViewer *)) );
connect( viewer, SIGNAL(accelChanged()),
this, SLOT( updateAllAccels()) );
return viewer;
}
kview'KView::closeViewer() (./kdegraphics/kview/kview.cpp:129)
void KView::closeViewer( KImageViewer *viewer )
{
assert( viewer != 0 );
_filtMenus->remove( viewer );
_viewers->remove( viewer );
if( _viewers->count() == 0 ) {
kapp->quit();
}
}
kview'KView::setCutBuffer() (./kdegraphics/kview/kview.cpp:141)
void KView::setCutBuffer( QPixmap * )
{
if( _cutBuffer ) {
delete _cutBuffer; _cutBuffer = 0;
}
}
kview'KView::updateAllAccels() (./kdegraphics/kview/kview.cpp:149)
void KView::updateAllAccels()
{
QListIterator<KImageViewer> iter( *_viewers );
for( ; iter.current(); ++iter ) {
iter.current()->updateAccel();
}
}