mirror of https://github.com/mono/CppSharp.git
6 changed files with 96 additions and 0 deletions
@ -0,0 +1,28 @@
@@ -0,0 +1,28 @@
|
||||
top_srcdir = ../.. |
||||
|
||||
INTEROP_DLL = \
|
||||
$(top_srcdir)/src/Mono.VisualC.Interop/bin/Debug/Mono.VisualC.Interop.dll |
||||
|
||||
all: hello.exe |
||||
|
||||
qt-gui.xml: qt-gui.h |
||||
gccxml -fxml=$@ --gccxml-cxxflags "`pkg-config --cflags QtCore QtGui`" qt-gui.h |
||||
|
||||
generated: qt-gui.xml |
||||
$(RM) -r generated |
||||
mono --debug $(top_srcdir)/src/generator2/bin/Debug/generator.exe -o=generated -ns=Qt.Gui -lib=QtGui --filters=qt-gui-filters.txt qt-gui.xml |
||||
|
||||
libQtGui-inline.so: qt-gui.cpp |
||||
g++ `pkg-config --cflags QtCore QtGui` --shared -fPIC -o $@ -fkeep-inline-functions qt-gui.cpp `pkg-config --libs QtCore QtGui` |
||||
|
||||
Qt.Gui-binding.dll: generated |
||||
mcs -out:$@ -target:library -unsafe -r:$(INTEROP_DLL) generated/*.cs |
||||
|
||||
hello.exe: Qt.Gui-binding.dll hello.cs libQtGui-inline.so |
||||
mcs -out:$@ -target:exe -r:$(INTEROP_DLL) -r:Qt.Gui-binding.dll hello.cs |
||||
|
||||
clean: |
||||
$(RM) -rf generated hello.exe qt-gui.xml Qt.Gui-binding.dll libQtGui-inline.so |
||||
|
||||
run: hello.exe |
||||
MONO_PATH=$(top_srcdir)/src/Mono.VisualC.Interop/bin/Debug mono hello.exe |
||||
@ -0,0 +1,38 @@
@@ -0,0 +1,38 @@
|
||||
using System; |
||||
using Qt.Gui; |
||||
|
||||
using Mono.VisualC.Interop; |
||||
|
||||
namespace QtTest { |
||||
class MainClass { |
||||
public static void Main (string[] args) |
||||
{ |
||||
int argc = args.Length; |
||||
using (QApplication app = new QApplication (ref argc, args, 0x040602)) { |
||||
QPushButton hello = new QPushButton (QString.FromUtf8 ("Hello", 5), null); |
||||
hello.Resize (100, 30); |
||||
hello.Show (); |
||||
CppLibrary.SaveInteropAssembly (); |
||||
QApplication.Exec (); |
||||
} |
||||
/* |
||||
using (QPushButton hello = new QPushButton ("Hello world!"), |
||||
hello2 = new QPushButton ("Another button")) { |
||||
|
||||
hello.Resize (100, 30); |
||||
hello2.Resize (200, 30); |
||||
|
||||
//CppLibrary.SaveInteropAssembly ();
|
||||
hello.Visible = true; |
||||
hello2.Visible = true; |
||||
|
||||
app.Exec (); |
||||
|
||||
|
||||
} |
||||
} |
||||
*/ |
||||
} |
||||
} |
||||
} |
||||
|
||||
@ -0,0 +1,9 @@
@@ -0,0 +1,9 @@
|
||||
QObject |
||||
QApplication |
||||
QCoreApplication |
||||
QWidget |
||||
QAbstractButton |
||||
QPushButton |
||||
QPaintDevice |
||||
QString |
||||
QSize |
||||
@ -0,0 +1,18 @@
@@ -0,0 +1,18 @@
|
||||
|
||||
/*
|
||||
* These are not in the unix version of qt, and -fkeep-inline-functions will generate |
||||
* references to their vtables etc., making the library unloadable. |
||||
*/ |
||||
#define QT_NO_STYLE_WINDOWSVISTA |
||||
#define QT_NO_STYLE_WINDOWSXP |
||||
#define QT_NO_STYLE_S60 |
||||
#define QT_NO_STYLE_WINDOWSCE |
||||
#define QT_NO_STYLE_WINDOWSMOBILE |
||||
#define QT_NO_QWSEMBEDWIDGET |
||||
|
||||
#include <QtCore> |
||||
#include <QtGui> |
||||
|
||||
int main () |
||||
{ |
||||
} |
||||
Loading…
Reference in new issue