You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
qt3/tools/qvfb/main.cpp

98 lines
2.9 KiB

/**********************************************************************
** Copyright (C) 1992-2008 Trolltech ASA. All rights reserved.
**
** This file is part of Qt/Embedded virtual framebuffer.
**
** This file may be used under the terms of the GNU General
** Public License versions 2.0 or 3.0 as published by the Free
** Software Foundation and appearing in the files LICENSE.GPL2
** and LICENSE.GPL3 included in the packaging of this file.
** Alternatively you may (at your option) use any later version
** of the GNU General Public License if such license has been
** publicly approved by Trolltech ASA (or its successors, if any)
** and the KDE Free Qt Foundation.
**
** Please review the following information to ensure GNU General
** Public Licensing requirements will be met:
** http://trolltech.com/products/qt/licenses/licensing/opensource/.
** If you are unsure which license is appropriate for your use, please
** review the following information:
** http://trolltech.com/products/qt/licenses/licensing/licensingoverview
** or contact the sales department at sales@trolltech.com.
**
** Licensees holding valid Qt Commercial licenses may use this file in
** accordance with the Qt Commercial License Agreement provided with
** the Software.
**
** This file is provided "AS IS" with NO WARRANTY OF ANY KIND,
** INCLUDING THE WARRANTIES OF DESIGN, MERCHANTABILITY AND FITNESS FOR
** A PARTICULAR PURPOSE. Trolltech reserves all rights not granted
** herein.
**
**********************************************************************/
#include "qvfb.h"
#include <qapplication.h>
#include <qpainter.h>
#include <qregexp.h>
#include <stdlib.h>
#include <stdio.h>
void usage( const char *app )
{
printf( "Usage: %s [-width width] [-height height] [-depth depth] "
"[-nocursor] [-qwsdisplay :id]\n"
"Supported depths: 1, 4, 8, 32\n", app );
}
int main( int argc, char *argv[] )
{
QApplication app( argc, argv );
int width = 240;
int height = 320;
int depth = 32;
bool cursor = TRUE;
QString displaySpec( ":0" );
QString skin;
for ( int i = 1; i < argc; i++ ){
QString arg = argv[i];
if ( arg == "-width" ) {
width = atoi( argv[++i] );
} else if ( arg == "-height" ) {
height = atoi( argv[++i] );
} else if ( arg == "-skin" ) {
skin = argv[++i];
} else if ( arg == "-depth" ) {
depth = atoi( argv[++i] );
} else if ( arg == "-nocursor" ) {
cursor = FALSE;
} else if ( arg == "-qwsdisplay" ) {
displaySpec = argv[++i];
} else {
printf( "Unknown parameter %s\n", arg.latin1() );
usage( argv[0] );
exit(1);
}
}
int displayId = 0;
QRegExp rx( ":[0-9]" );
int m = rx.search( displaySpec, 0 );
if ( m >= 0 ) {
displayId = displaySpec.mid( m+1, rx.matchedLength()-1 ).toInt();
}
qDebug( "Using display %d", displayId );
QVFb mw( displayId, width, height, depth, skin );
app.setMainWidget( &mw );
mw.enableCursor(cursor);
mw.show();
return app.exec();
}