C
- m
p a n y C
- n
f i d e n t i a l
P y t h
- n
3 a n d Q t 5 w i t h Q M L
T h
- m
a s P e r l , J
- l
l a L t d . Q t D e v e l
- p
e r D a y s 2 1 3 , B e r l i n , 2 1 3
- 1
- 9
P y t h o n 3 a n d Q t 5 w i t h Q M L T h o - - PowerPoint PPT Presentation
P y t h o n 3 a n d Q t 5 w i t h Q M L T h o m a s P e r l , J o l l a L t d . Q t D e v e l o p e r D a y s 2 0 1 3 , B e r l i n , 2 0 1 3 - 1 0 - 0 9 C o m p a n
C
p a n y C
f i d e n t i a l
P y t h
3 a n d Q t 5 w i t h Q M L
T h
a s P e r l , J
l a L t d . Q t D e v e l
e r D a y s 2 1 3 , B e r l i n , 2 1 3
Q t D e v e l
e r D a y s 2 1 3 , B e r l i n , 2 1 3
P y t h
3 a n d Q t 5 w i t h Q M L , T h
a s P e r l
a c k g r
n d
p a r i s
P I O v e r v i e w
t a t u s a n d R
d m a p
n a k e s
a B
t
Q t D e v e l
e r D a y s 2 1 3 , B e r l i n , 2 1 3
P y t h
3 a n d Q t 5 w i t h Q M L , T h
a s P e r l
7 : P y G t k / H i l d
N 8 / N 8 1
9 : P y M a e m
H i l d
N 9
1 1 : P y S i d e / Q t 4
N 9
1 3 : P y O t h e r S i d e
S a i l f i s h O S
n
h e r p l a t f
m s :
– S
L 4 A , P y S 6 , B B
a r t , . . .
Q t D e v e l
e r D a y s 2 1 3 , B e r l i n , 2 1 3
P y t h
3 a n d Q t 5 w i t h Q M L , T h
a s P e r l
y Q t : G P L ' d a n d c
m e r c i a l b i n d i n g s
– Q
t 4 a n d Q t 5
– P
y t h
2 a n d P y t h
3
y S i d e : L G P L ' d b i n d i n g s + g e n e r a t
– Q
t 4
l y a t t h e m
e n t
– P
y t h
2 a n d P y t h
3
y O t h e r S i d e : I S C / B S D Q M L P l u g i n
– Q
t 5 ( Q t 4 s u p p
t a v a i l a b l e i n G i t h i s t
y )
– P
y t h
3 ( P y t h
2 s t i l l w
k s , b u t u n s u p p
t e d )
Q t D e v e l
e r D a y s 2 1 3 , B e r l i n , 2 1 3
P y t h
3 a n d Q t 5 w i t h Q M L , T h
a s P e r l
t a r t u p t i m e ( t
i r s t v i s i b l e s c r e e n )
– P
y S i d e / P y Q t : C P y t h
+ P y t h
c
e + B i n d i n g s + Q t
– P
y O t h e r S i d e : Q t
l y ( P y t h
l
d i n g d e l a y e d u n t i l u s e )
e s p
s i v e n e s s
– P
y S i d e / P y Q t : S y n c h r
s b y d e f a u l t
– P
y O t h e r S i d e : A s y n c h r
s b y d e f a u l t
i b r a r y s i z e ( s p a c e u s a g e , m e m
y f
p r i n t )
– P
y S i d e : Q t C
e ~ 2 . 8 M i B , Q t G u i : ~ 1 2 . 5 M i B , . . .
– P
y O t h e r S i d e : ~ 1 4 5 K i B
Q t D e v e l
e r D a y s 2 1 3 , B e r l i n , 2 1 3
P y t h
3 a n d Q t 5 w i t h Q M L , T h
a s P e r l
y S i d e / P y Q t
– P
y t h
i n t e r p r e t e r u s e s Q t / Q M L t
i s p l a y U I
y O t h e r S i d e
– Q
M L u s e s P y t h
a s a d a t a p r
i d e r / b a c k e n d
Q t D e v e l
e r D a y s 2 1 3 , B e r l i n , 2 1 3
P y t h
3 a n d Q t 5 w i t h Q M L , T h
a s P e r l
void addImportPath(path) void setHandler(event, callback) QVariant evaluate(expr) void importModule(name, callback) void call(func, args, callback)
Q t D e v e l
e r D a y s 2 1 3 , B e r l i n , 2 1 3
P y t h
3 a n d Q t 5 w i t h Q M L , T h
a s P e r l
received(data) error(traceback)
Q t D e v e l
e r D a y s 2 1 3 , B e r l i n , 2 1 3
P y t h
3 a n d Q t 5 w i t h Q M L , T h
a s P e r l
import pyotherside pyotherside.send(*args) pyotherside.atexit(f)
Q t D e v e l
e r D a y s 2 1 3 , B e r l i n , 2 1 3
P y t h
3 a n d Q t 5 w i t h Q M L , T h
a s P e r l
def func(image_id, size): return (pixels, (width, height), format) pyotherside.set_image_provider(func) Image { src: 'image://python/<image_id>' }
Q t D e v e l
e r D a y s 2 1 3 , B e r l i n , 2 1 3
P y t h
3 a n d Q t 5 w i t h Q M L , T h
a s P e r l
e s k t
P l a t f
m s f u l l y s u p p
t e d
a i l f i s h O S
– B
e s t s u p p
t : A l r e a d y i n M e r a n d S a i l f i s h O S r e p
i t
i e s
l a c k b e r r y 1
– P
y t h
3 f r
s y s t e m , s h i p Q t 5 a n d P y O t h e r S i d e i n a p p
n d r
d
– S
h i p P y t h
3 + Q t 5 + P y O t h e r S i d e i n a p p
Q t D e v e l
e r D a y s 2 1 3 , B e r l i n , 2 1 3
P y t h
3 a n d Q t 5 w i t h Q M L , T h
a s P e r l
m b e d P y t h
s c r i p t s i n Q t R e s
r c e s
t a t i c l i n k i n g
l i b p y t h
+ m
u l e s
u p p
t f
P y P y ( J I T )
r a p p i n g P y t h
j e c t s a s Q M L / J S v a l u e s
Q t D e v e l
e r D a y s 2 1 3 , B e r l i n , 2 1 3
P y t h
3 a n d Q t 5 w i t h Q M L , T h
a s P e r l
Q t D e v e l
e r D a y s 2 1 3 , B e r l i n , 2 1 3
P y t h
3 a n d Q t 5 w i t h Q M L , T h
a s P e r l
Project: http://thp.io/2011/pyotherside/ Source: http://github.com/thp/pyotherside/ @thp4 / m@thp.io