summaryrefslogtreecommitdiffstats
path: root/examples/showimg/main.cpp
blob: 5ee950381f0097ed686bcab45b2378eb796e4221 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
/****************************************************************************
**
** Copyright (C) 1992-2008 Trolltech ASA.  All rights reserved.
**
** This file is part of an example program for Qt.  This example
** program may be used, distributed and modified without limitation.
**
*****************************************************************************/

#include "showimg.h"
#include "imagefip.h"
#include <qapplication.h>
#include <qimage.h>

int main( int argc, char **argv )
{
    if ( argc > 1 && QString(argv[1]) == "-m" ) {
	QApplication::setColorSpec( QApplication::ManyColor );
	argc--;
	argv++;
    } 
    else if ( argc > 1 && QString(argv[1]) == "-n" ) {
	QApplication::setColorSpec( QApplication::NormalColor );
	argc--;
	argv++;
    } 
    else {
	QApplication::setColorSpec( QApplication::CustomColor );
    }

    QApplication a( argc, argv );

    ImageIconProvider iip;
    QFileDialog::setIconProvider( &iip );

    if ( argc <= 1 ) {
	// Create a window which looks after its own existence.
	ImageViewer *w =
	    new ImageViewer(0, "new window", Qt::WDestructiveClose | Qt::WResizeNoErase );
	w->setCaption("Qt Example - Image Viewer");
	w->show();
    } else {
	for ( int i=1; i<argc; i++ ) {
	    // Create a window which looks after its own existence.
	    ImageViewer *w =
		new ImageViewer(0, argv[i], Qt::WDestructiveClose | Qt::WResizeNoErase );
	    w->setCaption("Qt Example - Image Viewer");
	    w->loadImage( argv[i] );
	    w->show();
	}
    }

    QObject::connect(qApp, SIGNAL(lastWindowClosed()), qApp, SLOT(quit()));

    return a.exec();
}