repos
/
qt.examples
/ annotate_shade
summary
|
shortlog
|
log
|
tree
|
commit
|
commitdiff
|
headdiff
|
annotate
|
headblob
|
headfilediff
|
filehistory
normal
|
plain
|
shade
|
zebra
use (setf instead of setter methods.
Annotate for file src/ui.lisp
2009-04-14 tobias
1
;;; Copyright 2009 Tobias Rautenkranz
14:29:22 '
2
;;; License: X11 license
'
3
2009-04-05 tobias
4
(in-package :qt.examples)
15:36:46 '
5
'
6
(defun load-ui-file ()
'
7
"Load a Qt Designer .ui file"
2009-07-01 tobias
8
(qt:with-app
2009-05-11 tobias
9
(let ((loader (make-instance 'qt.uitools:ui-loader))
18:30:39 '
10
(file (make-instance 'qt:file))
'
11
(widget))
'
12
(setf (cxx:file-name file)
'
13
(concatenate 'string
'
14
(directory-namestring
'
15
(mb.sysdef:input-file
'
16
(mb.sysdef:find-component :qt.examples "src" "ui")))
'
17
"widget.ui"))
'
18
(assert (cxx:exists file) (file)
'
19
"File ~A does not exists" (cxx:file-name file))
'
20
(unless (cxx:open file qt:iodevice.+read-only+)
'
21
(error "open failed"))
'
22
(setf widget (cxx:load loader file))
'
23
(when (cffi:null-pointer-p (smoke:pointer widget))
'
24
(error "load failed"))
'
25
(cxx:close file)
'
26
(cxx:show widget)
'
27
(qt:exec))))