build wrapper functions by default (no more optionally)

This commit is contained in:
polos 2017-09-14 13:17:44 +02:00
parent 955734e192
commit fef57f5447
52 changed files with 41 additions and 242 deletions

View file

@ -18,7 +18,7 @@ Build (for the impatient)
In `src/` do: In `src/` do:
``` ```
$ ecl -shell make $ ecl -shell make # will take a while
$ qmake eql5.pro # comment out all modules you don't need $ qmake eql5.pro # comment out all modules you don't need
$ make $ make
$ sudo make install # Unix only $ sudo make install # Unix only
@ -28,9 +28,6 @@ Now you should be able to run `eql5`.
If there are problems, or you want more info, see detailed instructions below. If there are problems, or you want more info, see detailed instructions below.
N.B. If the above runs, please don't forget to integrate the
**wrapper functions**, see `README-3-OPTIONAL`, needed for serious development.
Tested with: Tested with:
@ -313,11 +310,6 @@ You might want to put this in your `~/.eclrc` file:
eql:*break-on-errors* t) eql:*break-on-errors* t)
``` ```
It is **highly recommended** to integrate the wrapper functions, see
`README-3-OPTIONAL`.
This will make all Qt functions real Lisp functions, which also means symbol
tab-completion, both in Emacs/Slime and with `ecl-readline`.
Please see also example `examples/X-extras/CLOS-encapsulation.lisp` for Please see also example `examples/X-extras/CLOS-encapsulation.lisp` for
encapsulation of Qt classes in Lisp classes or structs (that is, Lisp classes encapsulation of Qt classes in Lisp classes or structs (that is, Lisp classes
that behave like a Qt class if passed to Qt functions). that behave like a Qt class if passed to Qt functions).

View file

@ -1,55 +0,0 @@
### Wrapper functions
(for manual loading, see `src/lisp/all-wrappers.lisp`)
Examples:
```
(|show| widget)
(|toString| (|currentTime.QTime|)) ; static function
```
### Integrate them permanently
Build EQL5 as usual, then run (in `src/`)
```
$ eql5 make-wrappers.lisp
```
```
$ touch tmp/eql.o # Windows: del tmp/eql.obj
```
```
$ qmake eql_lib.pro
$ make # MSVC: nmake
$ sudo make install # Unix only
```
Note: The resulting shared library should be stripped (automatically done by
`make install`); this will reduce its size considerably.
--
The convenience macro `x:do-with` has been adapted to work with the wrappers:
```
(x:do-with item
(|setTextAlignment| 0 |Qt.AlignRight|)
(|setText| 0 "123"))
```
--
Normally not needed, but if you want to generate the wrappers for your
Qt version (much different from Qt 5.5) do:
```
$ cd src/lisp
$ eql5 define-all-wrappers.lisp
```

View file

@ -1,6 +1,3 @@
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
;;; Ported Qt Widgets Tutorial - Creating a Window ;;; Ported Qt Widgets Tutorial - Creating a Window
(in-package :eql-user) (in-package :eql-user)

View file

@ -1,6 +1,3 @@
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
;;; Ported Qt Widgets Tutorial - Child Widgets ;;; Ported Qt Widgets Tutorial - Child Widgets
(in-package :eql-user) (in-package :eql-user)

View file

@ -1,6 +1,3 @@
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
;;; Ported Qt Widgets Tutorial - Using Layouts ;;; Ported Qt Widgets Tutorial - Using Layouts
(in-package :eql-user) (in-package :eql-user)

View file

@ -1,6 +1,3 @@
#-qt-wrapper-functions
(load (in-home "src/lisp/all-wrappers"))
;;; Ported Qt Widgets Tutorial - Nested Layouts ;;; Ported Qt Widgets Tutorial - Nested Layouts
(in-package :eql-user) (in-package :eql-user)

View file

@ -1,8 +1,5 @@
;;; This is (kind of) a port of the Qt Script Example "Clock" ;;; This is (kind of) a port of the Qt Script Example "Clock"
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(defpackage :clock (defpackage :clock
(:use :common-lisp :eql) (:use :common-lisp :eql)
(:export (:export

View file

@ -1,6 +1,3 @@
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(defpackage :main-window (defpackage :main-window
(:use :common-lisp :eql) (:use :common-lisp :eql)
(:export (:export

View file

@ -1,8 +1,5 @@
;;; This is a port of the Qt Example "Wiggly Widget" ;;; This is a port of the Qt Example "Wiggly Widget"
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(defpackage :wiggly-widget (defpackage :wiggly-widget
(:nicknames :wiggly) (:nicknames :wiggly)
(:use :common-lisp :eql) (:use :common-lisp :eql)

View file

@ -7,9 +7,6 @@
;;; The good news: if a seg.fault happens (in C++), just choose the restart option "Abort" (below "Continue"), ;;; The good news: if a seg.fault happens (in C++), just choose the restart option "Abort" (below "Continue"),
;;; and the application will continue to run. ;;; and the application will continue to run.
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(defpackage :colliding-mice (defpackage :colliding-mice
(:nicknames :mice) (:nicknames :mice)
(:use :common-lisp :eql) (:use :common-lisp :eql)

View file

@ -1,6 +1,3 @@
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(unless (eql:qrequire :network) (unless (eql:qrequire :network)
(error "EQL module :network could not be found/loaded") (error "EQL module :network could not be found/loaded")
(eql:qq)) (eql:qq))

View file

@ -11,16 +11,13 @@
;;; ;;;
;;; (because of multiple inheritance from both QObject and QGraphicsItem) ;;; (because of multiple inheritance from both QObject and QGraphicsItem)
;;; ;;;
;;; If you use the wrapper functions instead (see "src/lisp/all-wrappers"), ;;; If you use the wrapper functions instead, this cast is done
;;; this cast is done automatically: ;;; automatically:
;;; ;;;
;;; (|setPos| graphics-text-item '(0 0))) ;;; (|setPos| graphics-text-item '(0 0)))
;;; ;;;
;;; ------------------------------------------------------------------------ ;;; ------------------------------------------------------------------------
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(load (eql:in-home "examples/7-Sokoban/3rd-party/sokoban")) (load (eql:in-home "examples/7-Sokoban/3rd-party/sokoban"))
(load (eql:in-home "examples/7-Sokoban/3rd-party/levels")) (load (eql:in-home "examples/7-Sokoban/3rd-party/levels"))

View file

@ -1,8 +1,5 @@
;;; This is a port of the Qt OpenGL Example "Grabber" ;;; This is a port of the Qt OpenGL Example "Grabber"
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(require :gl-widget (eql:in-home "examples/8-OpenGL/gl-widget")) (require :gl-widget (eql:in-home "examples/8-OpenGL/gl-widget"))
(defpackage :main-window (defpackage :main-window

View file

@ -1,8 +1,5 @@
;;; copyright (c) Polos Ruetz ;;; copyright (c) Polos Ruetz
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(unless (eql:qrequire :network) (unless (eql:qrequire :network)
(error "[EQL] module :network required") (error "[EQL] module :network required")
(eql:qq)) (eql:qq))

View file

@ -1,8 +1,5 @@
;;; port of example "camera" (QtMultimediaWidgets) ;;; port of example "camera" (QtMultimediaWidgets)
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(qrequire :multimedia) (qrequire :multimedia)
(require :ui (in-home "examples/M-modules/multimedia/camera/ui/ui-camera")) (require :ui (in-home "examples/M-modules/multimedia/camera/ui/ui-camera"))

View file

@ -1,8 +1,5 @@
;; port of Qt example "videographicsitem" (QtMultimediaWidgets) ;; port of Qt example "videographicsitem" (QtMultimediaWidgets)
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(qrequire :multimedia) (qrequire :multimedia)
(require :ui (in-home "examples/M-modules/multimedia/video-graphics-item/ui/ui-video-graphics-item")) (require :ui (in-home "examples/M-modules/multimedia/video-graphics-item/ui/ui-video-graphics-item"))

View file

@ -1,8 +1,5 @@
;; port of Qt example "videowidget" (QtMultimediaWidgets) ;; port of Qt example "videowidget" (QtMultimediaWidgets)
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(qrequire :multimedia) (qrequire :multimedia)
(require :ui (in-home "examples/M-modules/multimedia/video-widget/ui/ui-video-widget")) (require :ui (in-home "examples/M-modules/multimedia/video-widget/ui/ui-video-widget"))

View file

@ -5,9 +5,6 @@
;;; The JS game logic has been ported to Lisp. ;;; The JS game logic has been ported to Lisp.
;;; ;;;
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(qrequire :quick) (qrequire :quick)
(require :qml-lisp "qml-lisp") (require :qml-lisp "qml-lisp")

View file

@ -1,8 +1,5 @@
;;; abstract item model (please see README.txt) ;;; abstract item model (please see README.txt)
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(qrequire :quick) (qrequire :quick)
(require :qml-lisp "qml-lisp") (require :qml-lisp "qml-lisp")

View file

@ -1,8 +1,5 @@
;;; string-list model ;;; string-list model
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(qrequire :quick) (qrequire :quick)
(require :qml-lisp "qml-lisp") (require :qml-lisp "qml-lisp")

View file

@ -5,9 +5,6 @@
;;; See also "lib/qml_lisp.*" for PaintedItem. ;;; See also "lib/qml_lisp.*" for PaintedItem.
;;; ;;;
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(qrequire :quick) (qrequire :quick)
(require :qml-lisp "qml-lisp") (require :qml-lisp "qml-lisp")

View file

@ -1,8 +1,5 @@
;;; QQuickView running QML ;;; QQuickView running QML
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(qrequire :quick) (qrequire :quick)
(require :properties "properties") (require :properties "properties")

View file

@ -1,8 +1,5 @@
;;; palindrome ;;; palindrome
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(qrequire :quick) (qrequire :quick)
(require :qml-lisp "qml-lisp") (require :qml-lisp "qml-lisp")

View file

@ -1,8 +1,5 @@
;;; QQuickView loading Lisp enabled QML ;;; QQuickView loading Lisp enabled QML
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(qrequire :quick) (qrequire :quick)
(require :qml-lisp "qml-lisp") (require :qml-lisp "qml-lisp")

View file

@ -2,9 +2,6 @@
;;; ;;;
;;; (for a native QML container, use QQuickView) ;;; (for a native QML container, use QQuickView)
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(qrequire :quick) (qrequire :quick)
(defun example-url (name) (defun example-url (name)

View file

@ -4,9 +4,6 @@
;;; Use CHANGE-LEVEL to directly change the level index. ;;; Use CHANGE-LEVEL to directly change the level index.
;;; ;;;
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(qrequire :quick) (qrequire :quick)
(require :sokoban "3rd-party/sokoban") (require :sokoban "3rd-party/sokoban")

View file

@ -1,9 +1,6 @@
;;; this is (kind of) a simplified port of the "tableview" C++/QML example ;;; this is (kind of) a simplified port of the "tableview" C++/QML example
;;; (see also README.txt) ;;; (see also README.txt)
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(qrequire :quick) (qrequire :quick)
(require :qml-lisp "qml-lisp") (require :qml-lisp "qml-lisp")

View file

@ -1,6 +1,3 @@
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(in-package :eql-user) (in-package :eql-user)
(setf *break-on-errors* t) (setf *break-on-errors* t)

View file

@ -2,9 +2,6 @@
;;; ;;;
;;; "Just For Fun" ;;; "Just For Fun"
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(qrequire :webkit) (qrequire :webkit)
(qrequire :webengine) (qrequire :webengine)

View file

@ -1,8 +1,5 @@
;;; simple WebEngine example ;;; simple WebEngine example
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(qrequire :webengine) (qrequire :webengine)
(defvar *view* (qnew "QWebEngineView")) (defvar *view* (qnew "QWebEngineView"))

View file

@ -9,9 +9,6 @@
;;; ;;;
;;; Once downloaded, the application files are cached locally (to be run offline). ;;; Once downloaded, the application files are cached locally (to be run offline).
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(qrequire :webkit) (qrequire :webkit)
(qrequire :network) (qrequire :network)

View file

@ -1,8 +1,5 @@
;;; This is a port of Qt example "webkit/domtraversal/" ;;; This is a port of Qt example "webkit/domtraversal/"
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(qrequire :webkit) (qrequire :webkit)
(in-package :eql-user) (in-package :eql-user)

View file

@ -7,9 +7,6 @@
;;; Note: Adding QNetworkRequest to the plugin widget would allow to get ;;; Note: Adding QNetworkRequest to the plugin widget would allow to get
;;; any data from the web, but this is not shown here. ;;; any data from the web, but this is not shown here.
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(qrequire :webkit) (qrequire :webkit)
(in-package :eql-user) (in-package :eql-user)

View file

@ -32,9 +32,6 @@
;;; (iterate-elements "A" (|setOuterXml| element text)) ; unlink ;;; (iterate-elements "A" (|setOuterXml| element text)) ; unlink
;;; ;;;
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
#+win32 (si:trap-fpe 'floating-point-underflow nil) ; for QWebInspector #+win32 (si:trap-fpe 'floating-point-underflow nil) ; for QWebInspector
(qrequire :webkit) (qrequire :webkit)

View file

@ -2,9 +2,6 @@
;;; ;;;
;;; depends on small plugin, see "lib/" ;;; depends on small plugin, see "lib/"
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
#+win32 (si:trap-fpe 'floating-point-underflow nil) ; for QWebInspector #+win32 (si:trap-fpe 'floating-point-underflow nil) ; for QWebInspector
(qrequire :webkit) (qrequire :webkit)

View file

@ -1,6 +1,3 @@
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(in-package :eql-user) (in-package :eql-user)
;; define class or struct ;; define class or struct

View file

@ -3,9 +3,6 @@
;;; - displays exact value + float value ;;; - displays exact value + float value
;;; - runs visual automations ;;; - runs visual automations
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(defpackage :calculator (defpackage :calculator
(:nicknames :clc) (:nicknames :clc)
(:use :common-lisp :eql) (:use :common-lisp :eql)

View file

@ -1,8 +1,5 @@
;;; LCD pixel color test (inspired by a "comp.lang.lisp" thread) ;;; LCD pixel color test (inspired by a "comp.lang.lisp" thread)
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(in-package :eql-user) (in-package :eql-user)
(defun lcd-test () (defun lcd-test ()

View file

@ -2,9 +2,6 @@
;;; Contributed by Mark Cox, please see LICENSE-MAKE-QIMAGE.txt ;;; Contributed by Mark Cox, please see LICENSE-MAKE-QIMAGE.txt
;;; ;;;
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(defpackage "MAKE-QIMAGE-EXAMPLE" (defpackage "MAKE-QIMAGE-EXAMPLE"
(:use "COMMON-LISP" (:use "COMMON-LISP"
"EQL") "EQL")

View file

@ -5,9 +5,6 @@
;;; ;;;
;;; N.B: If you load this file in Slime, you need to use QLOAD instead of LOAD! ;;; N.B: If you load this file in Slime, you need to use QLOAD instead of LOAD!
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(in-package :eql-user) (in-package :eql-user)
(setf *break-on-errors* t) (setf *break-on-errors* t)

View file

@ -2,9 +2,6 @@
;;; ;;;
;;; N.B: If you load this file in Slime, you need to use QLOAD instead of LOAD! ;;; N.B: If you load this file in Slime, you need to use QLOAD instead of LOAD!
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(in-package :eql-user) (in-package :eql-user)
(require :definitions "definitions") (require :definitions "definitions")

View file

@ -16,9 +16,6 @@
;;; (resulting in better performance). ;;; (resulting in better performance).
;;; ;;;
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(defvar *tree-widget* (qnew "QTreeWidget" (defvar *tree-widget* (qnew "QTreeWidget"
"alternatingRowColors" t "alternatingRowColors" t
"size" '(500 300))) "size" '(500 300)))

View file

@ -8,9 +8,6 @@
;;; ;;;
;;; optionally pass image file as command line argument ;;; optionally pass image file as command line argument
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(defpackage :image-manipulation (defpackage :image-manipulation
(:nicknames :img) (:nicknames :img)
(:use :common-lisp :eql) (:use :common-lisp :eql)

View file

@ -1,8 +1,5 @@
;;; Screenshot with countdown ;;; Screenshot with countdown
#-qt-wrapper-functions
(load (in-home "src/lisp/all-wrappers"))
(in-package :eql-user) (in-package :eql-user)
(defvar *pixmap* (qnew "QPixmap(QString)" (in-home "examples/X-extras/screenshot/camera.png"))) (defvar *pixmap* (qnew "QPixmap(QString)" (in-home "examples/X-extras/screenshot/camera.png")))

View file

@ -2,9 +2,6 @@
;;; ;;;
;;; N.B: If you load this file in Slime, you need to use QLOAD instead of LOAD! ;;; N.B: If you load this file in Slime, you need to use QLOAD instead of LOAD!
#-qt-wrapper-functions ; see README-OPTIONAL.txt
(load (in-home "src/lisp/all-wrappers"))
(in-package :eql-user) (in-package :eql-user)
(defun print-mounted-volumes () (defun print-mounted-volumes ()

View file

@ -7,7 +7,7 @@
#include <QTimer> #include <QTimer>
#include <QStringList> #include <QStringList>
const char EQL::version[] = "17.7.1"; // July 2017 const char EQL::version[] = "17.9.1"; // September 2017
extern "C" void ini_EQL(cl_object); extern "C" void ini_EQL(cl_object);

View file

@ -1,4 +1,5 @@
# comment out all modules you don't need: # -----------------------------------------------------
# below you can comment out all modules you don't need:
SUBDIRS = help \ SUBDIRS = help \
multimedia \ multimedia \
@ -8,6 +9,7 @@ SUBDIRS = help \
svg \ svg \
# webengine \ # webengine \
webkit webkit
# -----------------------------------------------------
TEMPLATE = subdirs TEMPLATE = subdirs
SUBDIRS += lib exe SUBDIRS += lib exe

View file

@ -34,7 +34,7 @@ public:
Q_INVOKABLE void MsetSavePageFormat(QWebEngineDownloadItem* o, QWebEngineDownloadItem::SavePageFormat x1) { o->setSavePageFormat(x1); } Q_INVOKABLE void MsetSavePageFormat(QWebEngineDownloadItem* o, QWebEngineDownloadItem::SavePageFormat x1) { o->setSavePageFormat(x1); }
Q_INVOKABLE int Mstate(QWebEngineDownloadItem* o) const { return o->state(); } Q_INVOKABLE int Mstate(QWebEngineDownloadItem* o) const { return o->state(); }
Q_INVOKABLE qlonglong MtotalBytes(QWebEngineDownloadItem* o) const { return o->totalBytes(); } Q_INVOKABLE qlonglong MtotalBytes(QWebEngineDownloadItem* o) const { return o->totalBytes(); }
Q_INVOKABLE int Mtype(QWebEngineDownloadItem* o) const { return o->type(); } //Q_INVOKABLE int Mtype(QWebEngineDownloadItem* o) const { return o->type(); }
Q_INVOKABLE QUrl Murl(QWebEngineDownloadItem* o) const { return o->url(); } Q_INVOKABLE QUrl Murl(QWebEngineDownloadItem* o) const { return o->url(); }
}; };
@ -54,18 +54,18 @@ public:
Q_INVOKABLE QUrl MiconUrl(QWebEnginePage* o) const { return o->iconUrl(); } Q_INVOKABLE QUrl MiconUrl(QWebEnginePage* o) const { return o->iconUrl(); }
Q_INVOKABLE bool MisAudioMuted(QWebEnginePage* o) const { return o->isAudioMuted(); } Q_INVOKABLE bool MisAudioMuted(QWebEnginePage* o) const { return o->isAudioMuted(); }
Q_INVOKABLE void Mload(QWebEnginePage* o, const QUrl& x1) { o->load(x1); } Q_INVOKABLE void Mload(QWebEnginePage* o, const QUrl& x1) { o->load(x1); }
Q_INVOKABLE void Mprint(QWebEnginePage* o, QPrinter* x1, FunctorOrLambda x2) { o->print(x1, x2); } //Q_INVOKABLE void Mprint(QWebEnginePage* o, QPrinter* x1, FunctorOrLambda x2) { o->print(x1, x2); }
Q_INVOKABLE void MprintToPdf(QWebEnginePage* o, const QString& x1, const QPageLayout& x2 = QPageLayout_DEFAULT) { o->printToPdf(x1, x2); } Q_INVOKABLE void MprintToPdf(QWebEnginePage* o, const QString& x1, const QPageLayout& x2 = QPageLayout_DEFAULT) { o->printToPdf(x1, x2); }
Q_INVOKABLE void MprintToPdf(QWebEnginePage* o, FunctorOrLambda x1, const QPageLayout& x2 = QPageLayout_DEFAULT) { o->printToPdf(x1, x2); } Q_INVOKABLE void MprintToPdf(QWebEnginePage* o, FunctorOrLambda x1, const QPageLayout& x2 = QPageLayout_DEFAULT) { o->printToPdf(x1, x2); }
Q_INVOKABLE QWebEngineProfile* Mprofile(QWebEnginePage* o) const { return o->profile(); } Q_INVOKABLE QWebEngineProfile* Mprofile(QWebEnginePage* o) const { return o->profile(); }
Q_INVOKABLE bool MrecentlyAudible(QWebEnginePage* o) const { return o->recentlyAudible(); } Q_INVOKABLE bool MrecentlyAudible(QWebEnginePage* o) const { return o->recentlyAudible(); }
Q_INVOKABLE void MreplaceMisspelledWord(QWebEnginePage* o, const QString& x1) { o->replaceMisspelledWord(x1); } //Q_INVOKABLE void MreplaceMisspelledWord(QWebEnginePage* o, const QString& x1) { o->replaceMisspelledWord(x1); }
Q_INVOKABLE QUrl MrequestedUrl(QWebEnginePage* o) const { return o->requestedUrl(); } Q_INVOKABLE QUrl MrequestedUrl(QWebEnginePage* o) const { return o->requestedUrl(); }
Q_INVOKABLE void MrunJavaScript(QWebEnginePage* o, const QString& x1, quint32 x2, FunctorOrLambda x3) { o->runJavaScript(x1, x2, x3); } Q_INVOKABLE void MrunJavaScript(QWebEnginePage* o, const QString& x1, quint32 x2, FunctorOrLambda x3) { o->runJavaScript(x1, x2, x3); }
Q_INVOKABLE void MrunJavaScript(QWebEnginePage* o, const QString& x1, quint32 x2) { o->runJavaScript(x1, x2); } Q_INVOKABLE void MrunJavaScript(QWebEnginePage* o, const QString& x1, quint32 x2) { o->runJavaScript(x1, x2); }
Q_INVOKABLE void MrunJavaScript(QWebEnginePage* o, const QString& x1, FunctorOrLambda x2) { o->runJavaScript(x1, x2); } Q_INVOKABLE void MrunJavaScript(QWebEnginePage* o, const QString& x1, FunctorOrLambda x2) { o->runJavaScript(x1, x2); }
Q_INVOKABLE void MrunJavaScript(QWebEnginePage* o, const QString& x1) { o->runJavaScript(x1); } Q_INVOKABLE void MrunJavaScript(QWebEnginePage* o, const QString& x1) { o->runJavaScript(x1); }
Q_INVOKABLE void Msave(QWebEnginePage* o, const QString& x1, QWebEngineDownloadItem::SavePageFormat x2 = QWebEngineDownloadItem::MimeHtmlSaveFormat) const { o->save(x1, x2); } //Q_INVOKABLE void Msave(QWebEnginePage* o, const QString& x1, QWebEngineDownloadItem::SavePageFormat x2 = QWebEngineDownloadItem::MimeHtmlSaveFormat) const { o->save(x1, x2); }
Q_INVOKABLE QPointF MscrollPosition(QWebEnginePage* o) const { return o->scrollPosition(); } Q_INVOKABLE QPointF MscrollPosition(QWebEnginePage* o) const { return o->scrollPosition(); }
Q_INVOKABLE QString MselectedText(QWebEnginePage* o) const { return o->selectedText(); } Q_INVOKABLE QString MselectedText(QWebEnginePage* o) const { return o->selectedText(); }
Q_INVOKABLE void MsetAudioMuted(QWebEnginePage* o, bool x1) { o->setAudioMuted(x1); } Q_INVOKABLE void MsetAudioMuted(QWebEnginePage* o, bool x1) { o->setAudioMuted(x1); }
@ -102,7 +102,7 @@ public:
Q_INVOKABLE int MhttpCacheType(QWebEngineProfile* o) const { return o->httpCacheType(); } Q_INVOKABLE int MhttpCacheType(QWebEngineProfile* o) const { return o->httpCacheType(); }
Q_INVOKABLE QString MhttpUserAgent(QWebEngineProfile* o) const { return o->httpUserAgent(); } Q_INVOKABLE QString MhttpUserAgent(QWebEngineProfile* o) const { return o->httpUserAgent(); }
Q_INVOKABLE bool MisOffTheRecord(QWebEngineProfile* o) const { return o->isOffTheRecord(); } Q_INVOKABLE bool MisOffTheRecord(QWebEngineProfile* o) const { return o->isOffTheRecord(); }
Q_INVOKABLE bool MisSpellCheckEnabled(QWebEngineProfile* o) const { return o->isSpellCheckEnabled(); } //Q_INVOKABLE bool MisSpellCheckEnabled(QWebEngineProfile* o) const { return o->isSpellCheckEnabled(); }
Q_INVOKABLE int MpersistentCookiesPolicy(QWebEngineProfile* o) const { return o->persistentCookiesPolicy(); } Q_INVOKABLE int MpersistentCookiesPolicy(QWebEngineProfile* o) const { return o->persistentCookiesPolicy(); }
Q_INVOKABLE QString MpersistentStoragePath(QWebEngineProfile* o) const { return o->persistentStoragePath(); } Q_INVOKABLE QString MpersistentStoragePath(QWebEngineProfile* o) const { return o->persistentStoragePath(); }
Q_INVOKABLE void MremoveUrlScheme(QWebEngineProfile* o, const QByteArray& x1) { o->removeUrlScheme(x1); } Q_INVOKABLE void MremoveUrlScheme(QWebEngineProfile* o, const QByteArray& x1) { o->removeUrlScheme(x1); }
@ -115,10 +115,10 @@ public:
Q_INVOKABLE void MsetPersistentCookiesPolicy(QWebEngineProfile* o, QWebEngineProfile::PersistentCookiesPolicy x1) { o->setPersistentCookiesPolicy(x1); } Q_INVOKABLE void MsetPersistentCookiesPolicy(QWebEngineProfile* o, QWebEngineProfile::PersistentCookiesPolicy x1) { o->setPersistentCookiesPolicy(x1); }
Q_INVOKABLE void MsetPersistentStoragePath(QWebEngineProfile* o, const QString& x1) { o->setPersistentStoragePath(x1); } Q_INVOKABLE void MsetPersistentStoragePath(QWebEngineProfile* o, const QString& x1) { o->setPersistentStoragePath(x1); }
Q_INVOKABLE void MsetRequestInterceptor(QWebEngineProfile* o, QWebEngineUrlRequestInterceptor* x1) { o->setRequestInterceptor(x1); } Q_INVOKABLE void MsetRequestInterceptor(QWebEngineProfile* o, QWebEngineUrlRequestInterceptor* x1) { o->setRequestInterceptor(x1); }
Q_INVOKABLE void MsetSpellCheckEnabled(QWebEngineProfile* o, bool x1) { o->setSpellCheckEnabled(x1); } //Q_INVOKABLE void MsetSpellCheckEnabled(QWebEngineProfile* o, bool x1) { o->setSpellCheckEnabled(x1); }
Q_INVOKABLE void MsetSpellCheckLanguages(QWebEngineProfile* o, const QStringList& x1) { o->setSpellCheckLanguages(x1); } //Q_INVOKABLE void MsetSpellCheckLanguages(QWebEngineProfile* o, const QStringList& x1) { o->setSpellCheckLanguages(x1); }
Q_INVOKABLE QWebEngineSettings* Msettings(QWebEngineProfile* o) const { return o->settings(); } Q_INVOKABLE QWebEngineSettings* Msettings(QWebEngineProfile* o) const { return o->settings(); }
Q_INVOKABLE QStringList MspellCheckLanguages(QWebEngineProfile* o) const { return o->spellCheckLanguages(); } //Q_INVOKABLE QStringList MspellCheckLanguages(QWebEngineProfile* o) const { return o->spellCheckLanguages(); }
Q_INVOKABLE QString MstorageName(QWebEngineProfile* o) const { return o->storageName(); } Q_INVOKABLE QString MstorageName(QWebEngineProfile* o) const { return o->storageName(); }
Q_INVOKABLE bool MvisitedLinksContainsUrl(QWebEngineProfile* o, const QUrl& x1) const { return o->visitedLinksContainsUrl(x1); } Q_INVOKABLE bool MvisitedLinksContainsUrl(QWebEngineProfile* o, const QUrl& x1) const { return o->visitedLinksContainsUrl(x1); }
Q_INVOKABLE QWebEngineProfile* SdefaultProfile() { return QWebEngineProfile::defaultProfile(); } Q_INVOKABLE QWebEngineProfile* SdefaultProfile() { return QWebEngineProfile::defaultProfile(); }

View file

@ -1,28 +0,0 @@
#-eql5
(error "Please use the EQL5 executable to run this file")
(require :cmp)
(setf *break-on-signals* 'error)
#+msvc
(setf c::*compile-in-constants* t)
(defparameter *all-wrappers* (append (loop :for i :from 1 :to 12 :collect (format nil "all-wrappers-~D" i))
(loop :for i :from 1 :to 2 :collect (format nil "all-wrappers-webengine-~D" i))))
(defparameter *lisp-files* (append '("x" "package" "ini"
"enums1" "enums2" "enums3" "enums4" "enums5"
"special-extensions")
*all-wrappers*))
(dolist (file *all-wrappers*)
(compile-file (format nil "lisp/~A.lisp" file) :system-p t))
(c:build-static-library "ini_eql5"
:lisp-files (mapcar (lambda (file)
(format nil "lisp/~A.~A" file #+msvc "obj" #-msvc "o"))
*lisp-files*)
:init-name "ini_EQL")
(eql:qq)

View file

@ -8,9 +8,9 @@
#+msvc #+msvc
(setf c::*compile-in-constants* t) (setf c::*compile-in-constants* t)
(defparameter *lisp-files* (list "x" "package" "ini" (defvar *lisp-files* (list "x" "package" "ini"
"enums1" "enums2" "enums3" "enums4" "enums5" "enums1" "enums2" "enums3" "enums4" "enums5"
"special-extensions")) "special-extensions"))
(dolist (f *lisp-files*) (dolist (f *lisp-files*)
(let* ((file (format nil "lisp/~A" f)) (let* ((file (format nil "lisp/~A" f))
@ -19,10 +19,32 @@
(delete-file file.o)) (delete-file file.o))
(compile-file file :system-p t))) (compile-file file :system-p t)))
;; wrapper functions
(defvar *all-wrappers* (append (loop :for i :from 1 :to 12 :collect (format nil "all-wrappers-~D" i))
(loop :for i :from 1 :to 2 :collect (format nil "all-wrappers-webengine-~D" i))))
(load "lisp/x")
(load "lisp/package")
(defun eql::%invoke-method (&rest args))
(defun eql::qproperty (&rest args))
(defun eql::qset-property (&rest args))
(progn
(compile-file "lisp/ini")
(load "lisp/ini")
(compile-file "lisp/ini" :system-p t))
(dolist (file *all-wrappers*)
(compile-file (format nil "lisp/~A.lisp" file) :system-p t))
;; lib
(c:build-static-library "ini_eql5" (c:build-static-library "ini_eql5"
:lisp-files (mapcar (lambda (file) :lisp-files (mapcar (lambda (file)
(format nil "lisp/~A.~A" file #+msvc "obj" #-msvc "o")) (format nil "lisp/~A.~A" file #+msvc "obj" #-msvc "o"))
*lisp-files*) (append *lisp-files* *all-wrappers*))
:init-name "ini_EQL") :init-name "ini_EQL")
;; for eql5.pro (doesn't create directories) ;; for eql5.pro (doesn't create directories)

View file

@ -5,11 +5,6 @@ rm lisp/*.o
ecl -shell make.lisp && ecl -shell make.lisp &&
qmake eql5.pro && qmake eql5.pro &&
make && make &&
sudo make install &&
eql5 make-wrappers.lisp &&
touch tmp/eql.o &&
qmake eql_lib.pro &&
make &&
sudo make install sudo make install
echo OK echo OK