/* # Copyright (C) 2001-2003, Parrot Foundation. # $Id: PQt.cpp 37422 2009-03-14 23:50:46Z allison $ =head1 NAME examples/nci/PQt.cpp - Qt/Parrot Library =head1 SYNOPSIS Compile with: *NIX: $ g++ -fPIC -I$QTDIR/include -I$QTDIR/include/QtGui -L$QTDIR -c PQt.cpp $ gcc -shared -o libPQt.so PQt.o $QTDIR/lib/libQtCore4.so $QTDIR/lib/libQtGui4.so Windows: > "%VS90COMNTOOLS%\vsvars32.bat" > set INCLUDE=%QTDIR%\include;%QTDIR%\include\QtGui;%INCLUDE% > set LIB=%QTDIR%\lib;%LIB% > cl /LD PQt.cpp QtGui4.lib QtCore4.lib Or something like that... =head1 DESCRIPTION Qt Native interface for Parrot. See F<examples/nci/QtHelloWorld.pir> for more information. =cut */ #ifdef _WIN32 #define PQT_API __declspec(dllexport) #else #define PQT_API #endif #include <QtGui> extern "C" { PQT_API QApplication * pApp; /* =head2 QApplication bindings =over 4 =item C<QApplication *QApplication_new(void)> =cut */ PQT_API QApplication *QApplication_new(void) { int PQtargc = 0; char *PQtargv[2]; PQtargv[0] = ""; PQtargv[1] = NULL; pApp = new QApplication(PQtargc, PQtargv); return pApp; } /* =item C<void QApplication_exec(QApplication *app)> =cut */ PQT_API void QApplication_exec(QApplication *app) { app->exec(); } /* =back =head2 QLabel bindings =over 4 =item C<QLabel * QLabel_new(const char *txt)> =cut */ PQT_API QLabel * QLabel_new(const char *txt) { QLabel * pLabel = new QLabel(txt, 0); return pLabel; } /* =item C<void QLabel_show(QLabel *label)> =cut */ PQT_API void QLabel_show(QLabel *label) { label->show(); } /* =item C<void QLabel_resize(QLabel *label, int x, int y)> =cut */ PQT_API void QLabel_resize(QLabel *label, int x, int y) { label->resize(x, y); } } /* =back =head1 SEE ALSO F<examples/nci/QtHelloWorld.pir>, F<docs/pdds/pdd03_calling_conventions.pod>. =cut */ /* * Local variables: * c-file-style: "parrot" * End: * vim: expandtab shiftwidth=4: */