Compare commits
718 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f1c69a495b | ||
|
|
f1dfcef868 | ||
|
|
a23470f4b8 | ||
|
|
40fddc9697 | ||
|
|
fed715c1f4 | ||
|
|
8f06244895 | ||
|
|
d4c9097610 | ||
|
|
00bada8d45 | ||
|
|
18db57ba96 | ||
|
|
cd49565457 | ||
|
|
80365c9207 | ||
|
|
532e7e7e81 | ||
|
|
9378c05ef1 | ||
|
|
96e1f8e7cd | ||
|
|
1b5905dc54 | ||
|
|
42ded6ade9 | ||
|
|
b32c6566ff | ||
|
|
29c6b8e2d2 | ||
|
|
40ab82e4bd | ||
|
|
a69a5c7252 | ||
|
|
4bb906b9f8 | ||
|
|
36f34472ba | ||
|
|
3132e4dc17 | ||
|
|
844e375fac | ||
|
|
559a74847b | ||
|
|
ccedd6379b | ||
|
|
cbebf9ced7 | ||
|
|
9c7ac50ba6 | ||
|
|
599ede9a0b | ||
|
|
f227740e93 | ||
|
|
a299c1f9e8 | ||
|
|
3e79d7477e | ||
|
|
55e8612f27 | ||
|
|
2876916258 | ||
|
|
cd25799884 | ||
|
|
b86d8638bc | ||
|
|
6710ef3e2f | ||
|
|
978e86a8ba | ||
|
|
605f5305e4 | ||
|
|
a267d9d43b | ||
|
|
0ed64e7b51 | ||
|
|
c117f25711 | ||
|
|
ef69973e6d | ||
|
|
1f423a6da2 | ||
|
|
7c99f947eb | ||
|
|
ad53185645 | ||
|
|
ddd63d73b7 | ||
|
|
d9ef8217e5 | ||
|
|
26e2918841 | ||
|
|
68ed885568 | ||
|
|
034adfab2b | ||
|
|
4a5b63bbcd | ||
|
|
2ead44d9c0 | ||
|
|
02ca81ac64 | ||
|
|
82e4660ae9 | ||
|
|
e45de88bd6 | ||
|
|
ee946025d6 | ||
|
|
593c2b2646 | ||
|
|
5c9836418f | ||
|
|
f662067a68 | ||
|
|
fd7a30f143 | ||
|
|
91f87057bc | ||
|
|
1919501d1e | ||
|
|
84e67b8ec0 | ||
|
|
a2f5acdff1 | ||
|
|
27856d830b | ||
|
|
c15db1f77e | ||
|
|
0b2bcbc3e9 | ||
|
|
2cbda4e1e5 | ||
|
|
2ef8c44445 | ||
|
|
2ef06a0baa | ||
|
|
8cc7e86793 | ||
|
|
9d00ec273b | ||
|
|
7ca9afbd80 | ||
|
|
40257e3687 | ||
|
|
baf1e31b76 | ||
|
|
6e441312cb | ||
|
|
729a024ddf | ||
|
|
580306d090 | ||
|
|
47c7f76f2c | ||
|
|
62ceead444 | ||
|
|
ddc802c0af | ||
|
|
b9616bdf75 | ||
|
|
c8f2f6bc2b | ||
|
|
c2f1e95f3f | ||
|
|
d58e63c82f | ||
|
|
295b63bc0d | ||
|
|
b3f11e7dff | ||
|
|
d31c8b3602 | ||
|
|
bc172cf70c | ||
|
|
c6437ce893 | ||
|
|
98b0ebcce6 | ||
|
|
1828b14cda | ||
|
|
281f762869 | ||
|
|
c4a04a620f | ||
|
|
9e1a6d3d3d | ||
|
|
3226c93f88 | ||
|
|
54af494224 | ||
|
|
f13c61fbaf | ||
|
|
9d07456a29 | ||
|
|
3a8824a9a6 | ||
|
|
ebe6db3c48 | ||
|
|
680ea9f616 | ||
|
|
3e37be5d5c | ||
|
|
b19467bb07 | ||
|
|
54c4ac7cd8 | ||
|
|
6220b88ae9 | ||
|
|
eb728fb36e | ||
|
|
91a2d6b02e | ||
|
|
f25e63bad7 | ||
|
|
b38163b026 | ||
|
|
cab19a141f | ||
|
|
2a9f24d774 | ||
|
|
6706b3882d | ||
|
|
0e8e098932 | ||
|
|
0249d3fe61 | ||
|
|
86a4a388c3 | ||
|
|
621052645c | ||
|
|
b09aa49749 | ||
|
|
6792f9c77b | ||
|
|
050b856b25 | ||
|
|
4c13377d1e | ||
|
|
bf5a5fd529 | ||
|
|
5aa5a62b74 | ||
|
|
d3f3f5e095 | ||
|
|
17aaa5ceab | ||
|
|
f775d27371 | ||
|
|
abc0d03eb3 | ||
|
|
588de7966f | ||
|
|
c289c6c6eb | ||
|
|
9ad9d5a12f | ||
|
|
0913833f6c | ||
|
|
02b0512761 | ||
|
|
5cab9569c3 | ||
|
|
c36fc92041 | ||
|
|
b402d832f6 | ||
|
|
98e2700764 | ||
|
|
efa5fc443a | ||
|
|
420e82d421 | ||
|
|
1c722a425d | ||
|
|
2bfb1e0f1f | ||
|
|
cb78bd1a10 | ||
|
|
14a1f7140f | ||
|
|
7609607799 | ||
|
|
0072573925 | ||
|
|
d1353b7e73 | ||
|
|
45fbd7cb24 | ||
|
|
7c62de51ff | ||
|
|
877ff6fc49 | ||
|
|
d5132a899e | ||
|
|
b277f5cdb7 | ||
|
|
cde264e5a1 | ||
|
|
ebfeeb6872 | ||
|
|
32322c4450 | ||
|
|
616354b8e9 | ||
|
|
99b52d4cc1 | ||
|
|
08072346fd | ||
|
|
fcd713b8a6 | ||
|
|
0e49c13968 | ||
|
|
5b345cbc2d | ||
|
|
b678913da5 | ||
|
|
798f800913 | ||
|
|
7338c3e21e | ||
|
|
26ffbbc34f | ||
|
|
bb518043bc | ||
|
|
bfa8075acf | ||
|
|
d80f44d3fc | ||
|
|
a88b676588 | ||
|
|
06d675d39f | ||
|
|
20881c5297 | ||
|
|
175968c3c0 | ||
|
|
a385c63799 | ||
|
|
9eee689a76 | ||
|
|
abaf74a886 | ||
|
|
bd26a352fd | ||
|
|
12f3bb2082 | ||
|
|
77481b7339 | ||
|
|
9d9b4b83a1 | ||
|
|
f696263460 | ||
|
|
ade6b5aae0 | ||
|
|
afeab54f4d | ||
|
|
6fae60b6bb | ||
|
|
027c6fb9c0 | ||
|
|
1bd986d2cb | ||
|
|
39981835ce | ||
|
|
16255f1591 | ||
|
|
610b0d3537 | ||
|
|
08153c944d | ||
|
|
37309a91ac | ||
|
|
2b6e30bcb5 | ||
|
|
1313cd1a33 | ||
|
|
fe71cb962e | ||
|
|
3f1a3d8707 | ||
|
|
0a9ec55b43 | ||
|
|
4ec579112c | ||
|
|
9c8ae7f32b | ||
|
|
0ffc2ce141 | ||
|
|
aebe15acda | ||
|
|
3097fb058c | ||
|
|
46e562c86e | ||
|
|
2a0a3b5cbb | ||
|
|
4dcd9ddc45 | ||
|
|
9b141c4b19 | ||
|
|
a7b9fd2f2b | ||
|
|
438404e399 | ||
|
|
7de5e24df5 | ||
|
|
841daa2a6e | ||
|
|
3546fe421c | ||
|
|
0315568b80 | ||
|
|
6405876656 | ||
|
|
978c7c858b | ||
|
|
4716c25875 | ||
|
|
90d104cf61 | ||
|
|
533452acf7 | ||
|
|
23a8090a73 | ||
|
|
fc9d75b4f0 | ||
|
|
fb0f2971c0 | ||
|
|
9fec887044 | ||
|
|
29fefbc4bb | ||
|
|
3a919628b3 | ||
|
|
6d42350691 | ||
|
|
c3845ead85 | ||
|
|
803d1a429d | ||
|
|
57b771c879 | ||
|
|
7433cea0fd | ||
|
|
6a299e32d3 | ||
|
|
80455492b0 | ||
|
|
a597ded99b | ||
|
|
74576c340e | ||
|
|
d178b84baf | ||
|
|
a5b466ec05 | ||
|
|
71e544e0fc | ||
|
|
ebd77ba71d | ||
|
|
4081af12dd | ||
|
|
bb30b71b86 | ||
|
|
517358c8e9 | ||
|
|
01c26cedb1 | ||
|
|
bbc804bd56 | ||
|
|
0154be5138 | ||
|
|
f83644cec0 | ||
|
|
3281b81565 | ||
|
|
e492b1e93d | ||
|
|
f5dd8f8112 | ||
|
|
759e062bcc | ||
|
|
a439fc32da | ||
|
|
2e60f23733 | ||
|
|
3579276b49 | ||
|
|
189d0e8de3 | ||
|
|
f2c45df524 | ||
|
|
ffa588bf5d | ||
|
|
19d395a946 | ||
|
|
7b855a661a | ||
|
|
001f2e1fe7 | ||
|
|
839078d32f | ||
|
|
3336b26eea | ||
|
|
d6f549fef6 | ||
|
|
80ba0259dd | ||
|
|
5320285943 | ||
|
|
0b8523d58e | ||
|
|
b3da86bf08 | ||
|
|
520d82b0ff | ||
|
|
47ead03925 | ||
|
|
0ede06700a | ||
|
|
0b4ddb045e | ||
|
|
980b50f8cf | ||
|
|
dd0c79ee56 | ||
|
|
db9f47c6f2 | ||
|
|
c240295a74 | ||
|
|
2b8ef0e9b2 | ||
|
|
759ede3c57 | ||
|
|
6e8fc37ca9 | ||
|
|
3e30a11af8 | ||
|
|
cec7ebc24f | ||
|
|
f3a4b54601 | ||
|
|
91e1330b59 | ||
|
|
952f24e4e1 | ||
|
|
d9b09e78ad | ||
|
|
fd0a119885 | ||
|
|
837432a4f3 | ||
|
|
ab00a0310a | ||
|
|
b536c075ed | ||
|
|
9d2b83c4d5 | ||
|
|
02961ecc99 | ||
|
|
f7f041f11d | ||
|
|
3e1362628f | ||
|
|
5940ae6411 | ||
|
|
44c12064a6 | ||
|
|
9f7b92eccd | ||
|
|
fa2767cc65 | ||
|
|
b1f267e4dc | ||
|
|
daa0adfff9 | ||
|
|
56fa8a0ee2 | ||
|
|
a0d171bb49 | ||
|
|
dd26de7dd2 | ||
|
|
fb4ee55ffa | ||
|
|
17a319fdb3 | ||
|
|
4fc0b439ae | ||
|
|
74248b0284 | ||
|
|
b0681bc582 | ||
|
|
d28483fad4 | ||
|
|
12716a8c40 | ||
|
|
52c29bac5d | ||
|
|
340246367d | ||
|
|
8eef239b45 | ||
|
|
62c28cb58b | ||
|
|
07c81db79a | ||
|
|
a677f784f5 | ||
|
|
c8d7d23ee6 | ||
|
|
0f4405dbaf | ||
|
|
d672353ff9 | ||
|
|
5f84567bbb | ||
|
|
d2f3fbe3f7 | ||
|
|
58777dbc21 | ||
|
|
f3e560541b | ||
|
|
f6eae71397 | ||
|
|
a6861c3e94 | ||
|
|
fc02f96ef1 | ||
|
|
71f588a4fe | ||
|
|
810c60fd8c | ||
|
|
5531f49c3e | ||
|
|
325e45eafd | ||
|
|
b13579c7d9 | ||
|
|
a72a31e722 | ||
|
|
f66c54ee6b | ||
|
|
f979067dda | ||
|
|
e1d932aaeb | ||
|
|
a39810a9c5 | ||
|
|
3078544892 | ||
|
|
709c18e6fc | ||
|
|
931c249afe | ||
|
|
47dee02de4 | ||
|
|
afb40b8289 | ||
|
|
f2824f79f6 | ||
|
|
2c7fb82708 | ||
|
|
f4d159b2f0 | ||
|
|
b82adc7610 | ||
|
|
b016b859da | ||
|
|
b201a5a975 | ||
|
|
839ce20b88 | ||
|
|
c146843ab4 | ||
|
|
827055f32a | ||
|
|
064f5c70e7 | ||
|
|
23de47d307 | ||
|
|
a1646a8f9e | ||
|
|
e840d2bb17 | ||
|
|
6cf2987536 | ||
|
|
85bb526294 | ||
|
|
3c21469fe8 | ||
|
|
71d2651163 | ||
|
|
5a87bf4114 | ||
|
|
12ff88478c | ||
|
|
20b93d969f | ||
|
|
63037d6f1a | ||
|
|
18de2f724c | ||
|
|
2f130ff223 | ||
|
|
6fe380ff9f | ||
|
|
d8b1df875e | ||
|
|
4426e2dd78 | ||
|
|
e43ea5101e | ||
|
|
6236ef717e | ||
|
|
8116334557 | ||
|
|
e88e74ed94 | ||
|
|
67d77bd114 | ||
|
|
cb2df51af6 | ||
|
|
85f46cef8c | ||
|
|
ff481c810f | ||
|
|
259ca7c6cc | ||
|
|
7d752e3dda | ||
|
|
30452289e5 | ||
|
|
2b4e58b1b9 | ||
|
|
87becf552b | ||
|
|
d876861431 | ||
|
|
82fb3f590f | ||
|
|
9d22ec4900 | ||
|
|
58da5c5c3b | ||
|
|
35d4754380 | ||
|
|
945d9b1883 | ||
|
|
5830e0f657 | ||
|
|
14839e7afe | ||
|
|
e58c8a6fcb | ||
|
|
fa9850c319 | ||
|
|
78866622b9 | ||
|
|
cbb0219812 | ||
|
|
24c3ede889 | ||
|
|
96a698a4dc | ||
|
|
e46cc80d52 | ||
|
|
d72a3c4189 | ||
|
|
38ea16fea4 | ||
|
|
cdcd9d8d54 | ||
|
|
820339d390 | ||
|
|
77228d358d | ||
|
|
43e173567f | ||
|
|
9a3489694e | ||
|
|
2e853f9338 | ||
|
|
d966eebb7c | ||
|
|
fb7a48ec19 | ||
|
|
4c13b5dbee | ||
|
|
4f6c8f8008 | ||
|
|
b33323b62d | ||
|
|
760d706e5e | ||
|
|
4b99eb9c8d | ||
|
|
b23cd9fc11 | ||
|
|
7d8973d45a | ||
|
|
3aa2e592e0 | ||
|
|
0b8a05e435 | ||
|
|
7ba845ac74 | ||
|
|
9a1798f043 | ||
|
|
dcbdd0b0a5 | ||
|
|
0ed5131b65 | ||
|
|
1b79401edc | ||
|
|
4a4fb00ec0 | ||
|
|
9d28303459 | ||
|
|
972e78ae7a | ||
|
|
ed2bbc8236 | ||
|
|
a5622cfe3b | ||
|
|
300164e61c | ||
|
|
edb2a9d5f6 | ||
|
|
89228720cd | ||
|
|
afed48dd4a | ||
|
|
04b5044a6f | ||
|
|
9bf34731f4 | ||
|
|
f0a08a8713 | ||
|
|
eeb8c1297f | ||
|
|
e42eeb26fb | ||
|
|
3555710d67 | ||
|
|
1b1f9c5855 | ||
|
|
32ed45e399 | ||
|
|
61b7da069e | ||
|
|
591a0aaa16 | ||
|
|
890d4a816f | ||
|
|
4ed2d75c74 | ||
|
|
a6e82cf954 | ||
|
|
7c7d517b34 | ||
|
|
b94533fcb2 | ||
|
|
6170144fe9 | ||
|
|
9a72293e0a | ||
|
|
dc72800a5e | ||
|
|
73a4d3510d | ||
|
|
41f5a87c80 | ||
|
|
af9908f076 | ||
|
|
b9bed419aa | ||
|
|
5108685123 | ||
|
|
d3896ff53b | ||
|
|
62723f7576 | ||
|
|
0fd6f04aa9 | ||
|
|
cc004d435b | ||
|
|
7d8c45ec92 | ||
|
|
216b9ec52f | ||
|
|
cd700b16c6 | ||
|
|
f3065eb654 | ||
|
|
11da39b72d | ||
|
|
4ee52afc4d | ||
|
|
840ffa6482 | ||
|
|
1416e4e277 | ||
|
|
1545e7f796 | ||
|
|
ae78d13284 | ||
|
|
fdb93f700d | ||
|
|
322eef660e | ||
|
|
29a7c66e45 | ||
|
|
f88dd15647 | ||
|
|
79d65c1828 | ||
|
|
2aa44a2135 | ||
|
|
7f6f92ac85 | ||
|
|
5e0e0d2391 | ||
|
|
a66c051eb5 | ||
|
|
6100c1dcca | ||
|
|
76ca0acfd0 | ||
|
|
42d9537ad1 | ||
|
|
f6fec9a619 | ||
|
|
6ec61d4ad6 | ||
|
|
2225abec5c | ||
|
|
603fb63c91 | ||
|
|
92c31324b0 | ||
|
|
3e3e3cf5a9 | ||
|
|
9246597893 | ||
|
|
22aef5290f | ||
|
|
d858e96352 | ||
|
|
6d74140e39 | ||
|
|
c0e7019d4f | ||
|
|
ef285144ea | ||
|
|
009b326531 | ||
|
|
200073b826 | ||
|
|
8f35281e0a | ||
|
|
d6893d09dc | ||
|
|
978554ce28 | ||
|
|
6b39296677 | ||
|
|
dda1ad987d | ||
|
|
f8e006001b | ||
|
|
2eaa0148d0 | ||
|
|
fd2d3b6cc4 | ||
|
|
006ca44aa5 | ||
|
|
d80b378ae2 | ||
|
|
77eab809da | ||
|
|
5aa31b6ad6 | ||
|
|
750d45457b | ||
|
|
f1e8b0913d | ||
|
|
6bad3b4d7e | ||
|
|
0b96dd5362 | ||
|
|
f25fde09b7 | ||
|
|
a923829ba1 | ||
|
|
6222876ac4 | ||
|
|
e312adb786 | ||
|
|
6b565acbd6 | ||
|
|
e2da90e844 | ||
|
|
4b88aced20 | ||
|
|
b17c277a62 | ||
|
|
edf850be55 | ||
|
|
485a6b551f | ||
|
|
128cbefe0c | ||
|
|
db4f66cae7 | ||
|
|
93c29a1422 | ||
|
|
b9e6235018 | ||
|
|
5abb9de26c | ||
|
|
4ad8793ba1 | ||
|
|
460da06698 | ||
|
|
c8c13219ed | ||
|
|
8552b8421b | ||
|
|
2ed9d68b46 | ||
|
|
44f62fa9ba | ||
|
|
7f47fba37d | ||
|
|
b43f582386 | ||
|
|
f02a659fca | ||
|
|
fede9f9629 | ||
|
|
de8ffc78d7 | ||
|
|
5502f2503f | ||
|
|
ec5ea2afc1 | ||
|
|
ee7ffd6482 | ||
|
|
a6cf42d3ad | ||
|
|
4d7f6a4e3b | ||
|
|
2d53ab88a0 | ||
|
|
ed3601f883 | ||
|
|
d56e8ec9ea | ||
|
|
2c95fa5e15 | ||
|
|
600e97b053 | ||
|
|
ba0825c892 | ||
|
|
57b2efa6a5 | ||
|
|
df20ac3afd | ||
|
|
4487ad9e15 | ||
|
|
50222ad87e | ||
|
|
793fcb571c | ||
|
|
bb2cc23d88 | ||
|
|
28645401bd | ||
|
|
15d5f336dd | ||
|
|
87b57a26ad | ||
|
|
c80adfc21d | ||
|
|
cbaf7352c6 | ||
|
|
b69f0db975 | ||
|
|
3cf4c7f2fc | ||
|
|
e5c82fad21 | ||
|
|
46df0f32c8 | ||
|
|
d6bcab07ef | ||
|
|
cf643f95fd | ||
|
|
5e1dfb3769 | ||
|
|
21ac83eea5 | ||
|
|
35278c1114 | ||
|
|
a83700f943 | ||
|
|
032ca377cd | ||
|
|
204977d48a | ||
|
|
d145175d28 | ||
|
|
0ef129802b | ||
|
|
e3651be5d8 | ||
|
|
b05e1a8899 | ||
|
|
ecc49f9cd4 | ||
|
|
417024e6d2 | ||
|
|
84a47d3be7 | ||
|
|
583c0e5904 | ||
|
|
1fa4fd269e | ||
|
|
37de0904af | ||
|
|
ca34a09f20 | ||
|
|
0ba705bede | ||
|
|
daf85854f1 | ||
|
|
497602f47e | ||
|
|
785aeb7d7d | ||
|
|
1a6b1b698e | ||
|
|
03c5b5a230 | ||
|
|
b54ae9d784 | ||
|
|
fd339e401f | ||
|
|
c7181b8e1e | ||
|
|
b630c451f1 | ||
|
|
ff1b046c17 | ||
|
|
2517317461 | ||
|
|
1d499129ba | ||
|
|
e60052d440 | ||
|
|
bcb80a80fb | ||
|
|
17e9cd0f6d | ||
|
|
bbeac7509f | ||
|
|
3037c611e8 | ||
|
|
4ae5fc4505 | ||
|
|
c52295f881 | ||
|
|
a4e6781bfd | ||
|
|
367d0a8209 | ||
|
|
3004340378 | ||
|
|
16afb72166 | ||
|
|
6feef57b84 | ||
|
|
5110ebb18e | ||
|
|
9a83c26731 | ||
|
|
29befef3ea | ||
|
|
53728e1d13 | ||
|
|
3f8d7944c1 | ||
|
|
ede2065c26 | ||
|
|
6d7c55e7cc | ||
|
|
04b0932780 | ||
|
|
4ed11ebfff | ||
|
|
83a542713a | ||
|
|
7c71d977e2 | ||
|
|
f954e89434 | ||
|
|
9219061da1 | ||
|
|
550ccef09a | ||
|
|
69f6a1ee79 | ||
|
|
a163686eef | ||
|
|
087e2970cd | ||
|
|
59abcc2986 | ||
|
|
1d4057f137 | ||
|
|
89a3d6b505 | ||
|
|
4b8a33de1c | ||
|
|
ba6d56105f | ||
|
|
3edc46320d | ||
|
|
e8398e7db2 | ||
|
|
f566190bf2 | ||
|
|
98cad7151d | ||
|
|
63dbf7e9ef | ||
|
|
81f523cd21 | ||
|
|
e2f83e1662 | ||
|
|
bb416b520a | ||
|
|
ad21781c7c | ||
|
|
8f6be1c6ac | ||
|
|
742134c439 | ||
|
|
31b1ecb11c | ||
|
|
c606d6b459 | ||
|
|
5423abaa19 | ||
|
|
4dc2b5e780 | ||
|
|
4d230eda63 | ||
|
|
4f3f56f247 | ||
|
|
4f562bca09 | ||
|
|
17114350c4 | ||
|
|
f59cd2a882 | ||
|
|
aeafcacb0c | ||
|
|
3df66a7ed3 | ||
|
|
465b9f9a4a | ||
|
|
8e81880489 | ||
|
|
166e99c0bd | ||
|
|
8dd57e2845 | ||
|
|
20d7f74c33 | ||
|
|
ee5f393009 | ||
|
|
2b36f4d23a | ||
|
|
56a58d8f48 | ||
|
|
957e8a06f2 | ||
|
|
ac970f8852 | ||
|
|
2215167dea | ||
|
|
1360cd61a7 | ||
|
|
5d14f3fe4a | ||
|
|
775607c24f | ||
|
|
12a2c5e80e | ||
|
|
938f6edf38 | ||
|
|
97151e6d39 | ||
|
|
1a54daef31 | ||
|
|
a606893194 | ||
|
|
7d666ed225 | ||
|
|
c49e101d73 | ||
|
|
9327473ee8 | ||
|
|
e14464162e | ||
|
|
90776073e7 | ||
|
|
e211268158 | ||
|
|
a9450956c3 | ||
|
|
1f16e50c30 | ||
|
|
5c3d030b9a | ||
|
|
0841a478f6 | ||
|
|
2e9ea061d0 | ||
|
|
48756111a9 | ||
|
|
f87efbbd09 | ||
|
|
f12f21b16b | ||
|
|
1c28d59ed2 | ||
|
|
4857135e42 | ||
|
|
b63be192e6 | ||
|
|
a94acdea53 | ||
|
|
6168f3334d | ||
|
|
17c97a4fee | ||
|
|
0233389143 | ||
|
|
bf6bebb0aa | ||
|
|
c6fd532a40 | ||
|
|
21570c0479 | ||
|
|
12673ab6fe | ||
|
|
4f49f3b023 | ||
|
|
8172b82ed4 | ||
|
|
a4d9d7a617 | ||
|
|
37a2026266 | ||
|
|
3ac6d6d26c | ||
|
|
f33e8328c5 | ||
|
|
f1ac7a5c71 | ||
|
|
156ae31254 | ||
|
|
ed707c8f0e | ||
|
|
2e2455cf81 | ||
|
|
5952d75e6e | ||
|
|
580e6cde3d | ||
|
|
dc6f719d4d | ||
|
|
fe9a1bc947 | ||
|
|
542d9435d8 | ||
|
|
13f6eedcb2 | ||
|
|
8fc9aa6fdb | ||
|
|
001864baab | ||
|
|
1b14a65c6d | ||
|
|
dbc98062ed | ||
|
|
d955b29585 | ||
|
|
cb7b736fb8 | ||
|
|
4104903d45 | ||
|
|
d37a5680df | ||
|
|
015e9356ab | ||
|
|
d16865cb05 | ||
|
|
605b18aa27 | ||
|
|
e3e774176e | ||
|
|
bd4d43daaf | ||
|
|
425e2c2a81 | ||
|
|
b5e1aadef2 | ||
|
|
dd113d5dc0 | ||
|
|
0c399bfbed | ||
|
|
ae8ccd03e5 | ||
|
|
03508c1601 | ||
|
|
dac1e71150 |
160
.github/CONTRIBUTING.md
vendored
Normal file
@@ -0,0 +1,160 @@
|
||||
# Contributing
|
||||
|
||||
This document describes how you can contribute to Telegram Desktop. Please read it carefully.
|
||||
|
||||
**Table of Contents**
|
||||
|
||||
* [What contributions are accepted](#what-contributions-are-accepted)
|
||||
* [Sign your work](#sign-your-work)
|
||||
* [Change commit message of a pushed commit](#change-commit-message-of-a-pushed-commit)
|
||||
* [Build instructions](#build-instructions)
|
||||
* [Pull upstream changes into your fork regularly](#pull-upstream-changes-into-your-fork-regularly)
|
||||
* [How to get your pull request accepted](#how-to-get-your-pull-request-accepted)
|
||||
* [Keep your pull requests limited to a single issue](#keep-your-pull-requests-limited-to-a-single-issue)
|
||||
* [Squash your commits to a single commit](#squash-your-commits-to-a-single-commit)
|
||||
* [Don't mix code changes with whitespace cleanup](#dont-mix-code-changes-with-whitespace-cleanup)
|
||||
* [Keep your code simple!](#keep-your-code-simple)
|
||||
* [Test your changes!](#test-your-changes)
|
||||
* [Write a good commit message](#write-a-good-commit-message)
|
||||
|
||||
## What contributions are accepted
|
||||
|
||||
We highly appreciate your contributions in the matter of fixing bugs and optimizing the Telegram Desktop source code and its documentation. In case of fixing the existing user experience please push to your fork and [submit a pull request][pr].
|
||||
|
||||
Wait for us. We try to review your pull requests as fast as possible.
|
||||
If we find issues with your pull request, we may suggest some changes and improvements.
|
||||
|
||||
Unfortunately we **do not merge** any pull requests that have new feature implementations, translations to new languages and those which introduce any new user interface elements.
|
||||
|
||||
Telegram Desktop is not a standalone application but a part of [Telegram project][telegram], so all the decisions about the features, languages, user experience, user interface and the design are made inside Telegram team, often according to some roadmap which is not public.
|
||||
|
||||
## Sign your work
|
||||
|
||||
For contributions to be accepted they should be granted into the public domain. This will solve the issue if Telegram team needs to use full Telegram Desktop source code with some different license.
|
||||
|
||||
The sign-off is a simple line at the end of the explanation for the patch. Your signature certifies that you wrote the patch and you have the right to put it in the public domain. The rules are pretty simple: if you can certify the below:
|
||||
|
||||
```
|
||||
Telegram Desktop Developer Certificate of Origin
|
||||
|
||||
By making a contribution to this project, I certify that:
|
||||
|
||||
(a) The contribution was created in whole by me or is based upon
|
||||
previous work that, to the best of my knowledge, is in the
|
||||
public domain and I have the right to put it in the public domain.
|
||||
|
||||
(d) I understand and agree that this project and the contribution are
|
||||
public and that a record of the contribution (including all
|
||||
metadata and personal information I submit with it, including my
|
||||
sign-off) is maintained indefinitely and may be redistributed.
|
||||
|
||||
(e) I am granting this work into the public domain.
|
||||
```
|
||||
|
||||
Then you just add a line to every **git commit message** that states:
|
||||
|
||||
Signed-off-by: Random J Developer <random@developer.example.org> (github: rndjdev_github)
|
||||
|
||||
Replacing Random Developer’s details with your name, email address and GitHub username.
|
||||
|
||||
### Change commit message of a pushed commit
|
||||
|
||||
If you already pushed a commit and forgot to add the signature to the commit message, follow these steps to change the message of the commit:
|
||||
|
||||
1. Open `Git Bash` (or `Git Shell`)
|
||||
2. Enter following command to change the commit message of the most recent commit: `git commit --amend`
|
||||
3. Press <kbd>i</kbd> to get into Insert-mode
|
||||
4. Change the commit message (and add the [signature](#sign-your-work) at the and)
|
||||
5. After editing the message, press <kbd>ESC</kbd> to get out of the Insert-mode
|
||||
6. Write `:wq` and press <kbd>Enter</kbd> to save the new message or write `:q!` to discard your changes
|
||||
7. Enter `git push --force` to push the commit with the new commit message to the remote repository
|
||||
|
||||
For more info, see [GitHub Help][help_change_commit_message].
|
||||
|
||||
## Build instructions
|
||||
|
||||
See the [README.md](README.md#build-instructions) for details on the various build
|
||||
environments.
|
||||
|
||||
## Pull upstream changes into your fork regularly
|
||||
|
||||
Telegram Desktop is advancing quickly. It is therefore critical that you pull upstream changes into your fork on a regular basis. Nothing is worse than putting in a days of hard work into a pull request only to have it rejected because it has diverged too far from upstram.
|
||||
|
||||
To pull in upstream changes:
|
||||
|
||||
git remote add upstream https://github.com/telegramdesktop/tdesktop.git
|
||||
git fetch upstream master
|
||||
|
||||
Check the log to be sure that you actually want the changes, before merging:
|
||||
|
||||
git log upstream/master
|
||||
|
||||
Then rebase your changes on the latest commits in the `master` branch:
|
||||
|
||||
git rebase upstream/master
|
||||
|
||||
After that, you have to force push your commits:
|
||||
|
||||
git push --force
|
||||
|
||||
For more info, see [GitHub Help][help_fork_repo].
|
||||
|
||||
## How to get your pull request accepted
|
||||
|
||||
We want to improve Telegram Desktop with your contributions. But we also want to provide a stable experience for our users and the community. Follow these rules and you should succeed without a problem!
|
||||
|
||||
### Keep your pull requests limited to a single issue
|
||||
|
||||
Pull requests should be as small/atomic as possible. Large, wide-sweeping changes in a pull request will be **rejected**, with comments to isolate the specific code in your pull request. Some examples:
|
||||
|
||||
* If you are making spelling corrections in the docs, don't modify other files.
|
||||
* If you are adding new functions don't '*cleanup*' unrelated functions. That cleanup belongs in another pull request.
|
||||
|
||||
#### Squash your commits to a single commit
|
||||
|
||||
To keep the history of the project clean, you should make one commit per pull request.
|
||||
If you already have multiple commits, you can add the commits together (squash them) with the following commands in Git Bash:
|
||||
|
||||
1. Open `Git Bash` (or `Git Shell`)
|
||||
2. Enter following command to squash the recent {N} commits: `git reset --soft HEAD~{N} && git commit` (replace `{N}` with the number of commits you want to squash)
|
||||
3. Press <kbd>i</kbd> to get into Insert-mode
|
||||
4. Enter the commit message of the new commit (and add the [signature](#sign-your-work) at the and)
|
||||
5. After adding the message, press <kbd>ESC</kbd> to get out of the Insert-mode
|
||||
6. Write `:wq` and press <kbd>Enter</kbd> to save the new message or write `:q!` to discard your changes
|
||||
7. Enter `git push --force` to push the new commit to the remote repository
|
||||
|
||||
For example, if you want to squash the last 5 commits, use `git reset --soft HEAD~5 && git commit`
|
||||
|
||||
### Don't mix code changes with whitespace cleanup
|
||||
|
||||
If you change two lines of code and correct 200 lines of whitespace issues in a file the diff on that pull request is functionally unreadable and will be **rejected**. Whitespace cleanups need to be in their own pull request.
|
||||
|
||||
### Keep your code simple!
|
||||
|
||||
Please keep your code as clean and straightforward as possible.
|
||||
Furthermore, the pixel shortage is over. We want to see:
|
||||
|
||||
* `opacity` instead of `o`
|
||||
* `placeholder` instead of `ph`
|
||||
* `myFunctionThatDoesThings()` instead of `mftdt()`
|
||||
|
||||
### Test your changes!
|
||||
|
||||
Before you submit a pull request, please test your changes. Verify that Telegram Desktop still works and your changes don't cause other issue or crashes.
|
||||
|
||||
### Write a good commit message
|
||||
|
||||
Explain why you make the changes. [More infos about a good commit message.][commit_message]
|
||||
Maybe reference also the related issue in your commit message.
|
||||
Don't forget to [sign your patch](#sign-your-work) to put it in the public domain.
|
||||
|
||||
[//]: # (LINKS)
|
||||
[telegram]: https://telegram.org/
|
||||
[msvc]: MSVC.md
|
||||
[xcode]: XCODE.md
|
||||
[xcode_old]: XCODEold.md
|
||||
[qtcreator]: QTCREATOR.md
|
||||
[help_fork_repo]: https://help.github.com/articles/fork-a-repo/
|
||||
[help_change_commit_message]: https://help.github.com/articles/changing-a-commit-message/
|
||||
[commit_message]: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
|
||||
[pr]: ../../compare/
|
||||
26
.github/ISSUE_TEMPLATE.md
vendored
Normal file
@@ -0,0 +1,26 @@
|
||||
<!--
|
||||
Thanks for reporting issues of Telegram Desktop!
|
||||
|
||||
To make it easier for us to help you please enter detailed information below.
|
||||
-->
|
||||
### Steps to reproduce
|
||||
1.
|
||||
2.
|
||||
3.
|
||||
|
||||
### Expected behaviour
|
||||
Tell us what should happen
|
||||
|
||||
### Actual behaviour
|
||||
Tell us what happens instead
|
||||
|
||||
### Configuration
|
||||
**Operating system:**
|
||||
|
||||
**Version of Telegram Desktop:**
|
||||
|
||||
### Logs
|
||||
Insert logs here (if necessary)
|
||||
|
||||
You can type "debugmode" in settings and then see ~/.TelegramDesktop/DebugLogs/log_...txt for log files.
|
||||
Type "debugmode" in settings again to disable logs.
|
||||
2
.gitignore
vendored
@@ -7,9 +7,11 @@
|
||||
/Telegram/SourceFiles/art/sprite_125x.png
|
||||
/Telegram/SourceFiles/art/sprite_150x.png
|
||||
/Telegram/*.user
|
||||
*.vcxproj.user
|
||||
*.suo
|
||||
*.sdf
|
||||
*.opensdf
|
||||
*.opendb
|
||||
/Telegram/*.aps
|
||||
/Win32/
|
||||
ipch/
|
||||
|
||||
43
.travis.yml
Normal file
@@ -0,0 +1,43 @@
|
||||
sudo: required
|
||||
|
||||
language: cpp
|
||||
|
||||
env:
|
||||
- BUILD_VERSION=""
|
||||
- BUILD_VERSION="disable_autoupdate"
|
||||
- BUILD_VERSION="disable_register_custom_scheme"
|
||||
- BUILD_VERSION="disable_crash_reports"
|
||||
- BUILD_VERSION="disable_network_proxy"
|
||||
|
||||
arch:
|
||||
packages:
|
||||
- bzr
|
||||
- wget
|
||||
- qt5-base
|
||||
|
||||
- git
|
||||
- patch
|
||||
- libunity
|
||||
- libappindicator-gtk2
|
||||
|
||||
- ffmpeg
|
||||
- icu
|
||||
- jasper
|
||||
- libexif
|
||||
- libmng
|
||||
- libwebp
|
||||
- libxkbcommon-x11
|
||||
- libinput
|
||||
- libproxy
|
||||
- mtdev
|
||||
- openal
|
||||
- libva
|
||||
- desktop-file-utils
|
||||
- gtk-update-icon-cache
|
||||
|
||||
script:
|
||||
- libtool --finish /usr/lib
|
||||
- .travis/build.sh
|
||||
|
||||
script:
|
||||
- .travis/arch.sh
|
||||
296
.travis/arch.sh
Executable file
@@ -0,0 +1,296 @@
|
||||
#!/bin/bash
|
||||
# Copyright (C) 2016 Mikkel Oscar Lyderik Larsen
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
# Source: https://raw.githubusercontent.com/mikkeloscar/arch-travis/master/arch-travis.sh
|
||||
|
||||
# Script for setting up and running a travis-ci build in an up to date
|
||||
# Arch Linux chroot
|
||||
|
||||
ARCH_TRAVIS_MIRROR=${ARCH_TRAVIS_MIRROR:-"https://lug.mtu.edu/archlinux"}
|
||||
ARCH_TRAVIS_ARCH_ISO=${ARCH_TRAVIS_ARCH_ISO:-"$(date +%Y.%m).01"}
|
||||
mirror_entry='Server = '$ARCH_TRAVIS_MIRROR'/\$repo/os/\$arch'
|
||||
archive="archlinux-bootstrap-$ARCH_TRAVIS_ARCH_ISO-x86_64.tar.gz"
|
||||
default_root="root.x86_64"
|
||||
ARCH_TRAVIS_CHROOT=${ARCH_TRAVIS_CHROOT:-"$default_root"}
|
||||
user="travis"
|
||||
user_home="/home/$user"
|
||||
user_build_dir="/build"
|
||||
user_uid=$UID
|
||||
|
||||
if [ -n "$CC" ]; then
|
||||
# store travis CC
|
||||
TRAVIS_CC=$CC
|
||||
# reset to gcc for building arch packages
|
||||
CC=gcc
|
||||
fi
|
||||
|
||||
|
||||
# default packages
|
||||
default_packages=("base-devel" "git")
|
||||
|
||||
# pacman.conf repository line
|
||||
repo_line=70
|
||||
|
||||
# setup working Arch Linux chroot
|
||||
setup_chroot() {
|
||||
arch_msg "Setting up Arch chroot"
|
||||
|
||||
if [ ! -f $archive ]; then
|
||||
# get root fs
|
||||
local curl=$(curl --fail -O "$ARCH_TRAVIS_MIRROR/iso/$ARCH_TRAVIS_ARCH_ISO/$archive" 2>&1)
|
||||
|
||||
# if it fails, try arch iso form the previous month
|
||||
if [ $? -gt 0 ]; then
|
||||
ARCH_TRAVIS_ARCH_ISO="$(date +%Y.%m -d "-1 month").01"
|
||||
archive="archlinux-bootstrap-$ARCH_TRAVIS_ARCH_ISO-x86_64.tar.gz"
|
||||
as_normal "curl -O $ARCH_TRAVIS_MIRROR/iso/$ARCH_TRAVIS_ARCH_ISO/$archive"
|
||||
fi
|
||||
fi
|
||||
|
||||
# extract root fs
|
||||
as_root "tar xf $archive"
|
||||
|
||||
# remove archive if ARCH_TRAVIS_CLEAN_CHROOT is set
|
||||
if [ -n "$ARCH_TRAVIS_CLEAN_CHROOT" ]; then
|
||||
as_root "rm $archive"
|
||||
fi
|
||||
|
||||
if [ "$ARCH_TRAVIS_CHROOT" != "$default_root" ]; then
|
||||
as_root "mv $default_root $ARCH_TRAVIS_CHROOT"
|
||||
fi
|
||||
|
||||
# don't care for signed packages
|
||||
as_root "sed -i 's|SigLevel = Required DatabaseOptional|SigLevel = Never|' $ARCH_TRAVIS_CHROOT/etc/pacman.conf"
|
||||
|
||||
# enable multilib
|
||||
as_root "sed -i 's|#\[multilib\]|\[multilib\]\nInclude = /etc/pacman.d/mirrorlist|' $ARCH_TRAVIS_CHROOT/etc/pacman.conf"
|
||||
|
||||
# add mirror
|
||||
as_root "echo $mirror_entry >> $ARCH_TRAVIS_CHROOT/etc/pacman.d/mirrorlist"
|
||||
|
||||
# add nameserver to resolv.conf
|
||||
as_root "echo nameserver 8.8.8.8 >> $ARCH_TRAVIS_CHROOT/etc/resolv.conf"
|
||||
|
||||
sudo mount $ARCH_TRAVIS_CHROOT $ARCH_TRAVIS_CHROOT --bind
|
||||
sudo mount --bind /proc $ARCH_TRAVIS_CHROOT/proc
|
||||
sudo mount --bind /sys $ARCH_TRAVIS_CHROOT/sys
|
||||
sudo mount --bind /dev $ARCH_TRAVIS_CHROOT/dev
|
||||
sudo mount --bind /dev/pts $ARCH_TRAVIS_CHROOT/dev/pts
|
||||
sudo mount --bind /dev/shm $ARCH_TRAVIS_CHROOT/dev/shm
|
||||
sudo mount --bind /run $ARCH_TRAVIS_CHROOT/run
|
||||
|
||||
# update packages
|
||||
chroot_as_root "pacman -Syy"
|
||||
chroot_as_root "pacman -Syu ${default_packages[*]} --noconfirm"
|
||||
|
||||
# use LANG=en_US.UTF-8 as expected in travis environments
|
||||
as_root "sed -i 's|#en_US.UTF-8|en_US.UTF-8|' $ARCH_TRAVIS_CHROOT/etc/locale.gen"
|
||||
chroot_as_root "locale-gen"
|
||||
|
||||
# setup non-root user
|
||||
chroot_as_root "useradd -u $user_uid -m -s /bin/bash $user"
|
||||
|
||||
# disable password for sudo users
|
||||
as_root "echo \"$user ALL=(ALL) NOPASSWD: ALL\" >> $ARCH_TRAVIS_CHROOT/etc/sudoers.d/$user"
|
||||
|
||||
# Add build dir
|
||||
chroot_as_root "mkdir $user_build_dir && chown $user $user_build_dir"
|
||||
|
||||
# bind $TRAVIS_BUILD_DIR to chroot build dir
|
||||
sudo mount --bind $TRAVIS_BUILD_DIR $ARCH_TRAVIS_CHROOT$user_build_dir
|
||||
|
||||
# add custom repos
|
||||
add_repositories
|
||||
|
||||
# setup pacaur for AUR packages
|
||||
setup_pacaur
|
||||
}
|
||||
|
||||
# add custom repositories to pacman.conf
|
||||
add_repositories() {
|
||||
if [ ${#CONFIG_REPOS[@]} -gt 0 ]; then
|
||||
for r in "${CONFIG_REPOS[@]}"; do
|
||||
local splitarr=(${r//=/ })
|
||||
((repo_line+=1))
|
||||
as_root "sed -i '${repo_line}i[${splitarr[0]}]' $ARCH_TRAVIS_CHROOT/etc/pacman.conf"
|
||||
((repo_line+=1))
|
||||
as_root "sed -i '${repo_line}iServer = ${splitarr[1]}\n' $ARCH_TRAVIS_CHROOT/etc/pacman.conf"
|
||||
((repo_line+=1))
|
||||
done
|
||||
|
||||
# update repos
|
||||
chroot_as_root "pacman -Syy"
|
||||
fi
|
||||
}
|
||||
|
||||
# a wrapper which can be used to eventually add fakeroot support.
|
||||
sudo_wrapper() {
|
||||
sudo "$@"
|
||||
}
|
||||
|
||||
# run command as normal user
|
||||
as_normal() {
|
||||
local str="$@"
|
||||
run /bin/bash -c "$str"
|
||||
}
|
||||
|
||||
# run command as root
|
||||
as_root() {
|
||||
local str="$@"
|
||||
run sudo_wrapper /bin/bash -c "$str"
|
||||
}
|
||||
|
||||
# run command in chroot as root
|
||||
chroot_as_root() {
|
||||
local str="$@"
|
||||
run sudo_wrapper chroot $ARCH_TRAVIS_CHROOT /bin/bash -c "$str"
|
||||
}
|
||||
|
||||
# run command in chroot as normal user
|
||||
chroot_as_normal() {
|
||||
local str="$@"
|
||||
run sudo_wrapper chroot --userspec=$user:$user $ARCH_TRAVIS_CHROOT /bin/bash \
|
||||
-c "export HOME=$user_home USER=$user TRAVIS_BUILD_DIR=$user_build_dir && cd $user_build_dir && $str"
|
||||
}
|
||||
|
||||
# run command
|
||||
run() {
|
||||
"$@"
|
||||
local ret=$?
|
||||
|
||||
if [ $ret -gt 0 ]; then
|
||||
takedown_chroot
|
||||
exit $ret
|
||||
fi
|
||||
}
|
||||
|
||||
# run build script
|
||||
run_build_script() {
|
||||
local cmd="$@"
|
||||
echo "$ $cmd"
|
||||
sudo_wrapper chroot --userspec=$user:$user $ARCH_TRAVIS_CHROOT /bin/bash -c "export HOME=$user_home USER=$user TRAVIS_BUILD_DIR=$user_build_dir && cd $user_build_dir && $cmd"
|
||||
local ret=$?
|
||||
|
||||
if [ $ret -gt 0 ]; then
|
||||
takedown_chroot
|
||||
exit $ret
|
||||
fi
|
||||
}
|
||||
|
||||
# setup pacaur
|
||||
setup_pacaur() {
|
||||
local cowerarchive="cower.tar.gz"
|
||||
local aururl="https://aur.archlinux.org/cgit/aur.git/snapshot/"
|
||||
# install cower
|
||||
as_normal "curl -O $aururl/$cowerarchive"
|
||||
as_normal "tar xf $cowerarchive"
|
||||
chroot_as_normal "cd cower && makepkg -is --skippgpcheck --noconfirm"
|
||||
as_root "rm -r cower"
|
||||
as_normal "rm $cowerarchive"
|
||||
# install pacaur
|
||||
chroot_as_normal "cower -dd pacaur"
|
||||
chroot_as_normal "cd pacaur && makepkg -is --noconfirm"
|
||||
chroot_as_normal "rm -rf pacaur"
|
||||
}
|
||||
|
||||
# install package through pacaur
|
||||
_pacaur() {
|
||||
local pacaur="pacaur -S $@ --noconfirm --noedit"
|
||||
chroot_as_normal "$pacaur"
|
||||
}
|
||||
|
||||
# takedown chroot
|
||||
# unmounts anything mounted in the chroot setup
|
||||
takedown_chroot() {
|
||||
sudo umount $ARCH_TRAVIS_CHROOT/{run,dev/shm,dev/pts,dev,sys,proc}
|
||||
sudo umount $ARCH_TRAVIS_CHROOT$user_build_dir
|
||||
sudo umount $ARCH_TRAVIS_CHROOT
|
||||
|
||||
if [ -n "$ARCH_TRAVIS_CLEAN_CHROOT" ]; then
|
||||
as_root "rm -rf $ARCH_TRAVIS_CHROOT"
|
||||
fi
|
||||
}
|
||||
|
||||
# read value from .travis.yml
|
||||
travis_yml() {
|
||||
ruby -ryaml -e 'puts ARGV[1..-1].inject(YAML.load(File.read(ARGV[0]))) {|acc, key| acc[key] }' .travis.yml $@
|
||||
}
|
||||
|
||||
read_config() {
|
||||
old_ifs=$IFS
|
||||
IFS=$'\n'
|
||||
CONFIG_BUILD_SCRIPTS=($(travis_yml arch script))
|
||||
CONFIG_PACKAGES=($(travis_yml arch packages))
|
||||
CONFIG_REPOS=($(travis_yml arch repos))
|
||||
IFS=$old_ifs
|
||||
}
|
||||
|
||||
# run build scripts defined in .travis.yml
|
||||
build_scripts() {
|
||||
if [ ${#CONFIG_BUILD_SCRIPTS[@]} -gt 0 ]; then
|
||||
for script in "${CONFIG_BUILD_SCRIPTS[@]}"; do
|
||||
run_build_script $script
|
||||
done
|
||||
else
|
||||
echo "No build scripts defined"
|
||||
takedown_chroot
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
# install packages defined in .travis.yml
|
||||
install_packages() {
|
||||
for package in "${CONFIG_PACKAGES[@]}"; do
|
||||
_pacaur $package
|
||||
done
|
||||
}
|
||||
|
||||
# install custom compiler if CC != gcc
|
||||
install_c_compiler() {
|
||||
if [ "$TRAVIS_CC" != "gcc" ]; then
|
||||
_pacaur "$TRAVIS_CC"
|
||||
fi
|
||||
}
|
||||
|
||||
arch_msg() {
|
||||
lightblue='\033[1;34m'
|
||||
reset='\e[0m'
|
||||
echo -e "${lightblue}$@${reset}"
|
||||
}
|
||||
|
||||
# read .travis.yml
|
||||
read_config
|
||||
|
||||
echo "travis_fold:start:arch_travis"
|
||||
setup_chroot
|
||||
|
||||
install_packages
|
||||
|
||||
if [ -n "$CC" ]; then
|
||||
install_c_compiler
|
||||
|
||||
# restore CC
|
||||
CC=$TRAVIS_CC
|
||||
fi
|
||||
echo "travis_fold:end:arch_travis"
|
||||
echo ""
|
||||
|
||||
arch_msg "Running travis build"
|
||||
build_scripts
|
||||
|
||||
takedown_chroot
|
||||
|
||||
# vim:set ts=2 sw=2 et:
|
||||
199
.travis/build.sh
Executable file
@@ -0,0 +1,199 @@
|
||||
#!/bin/bash
|
||||
# Installs libs and compiles tdesktop
|
||||
|
||||
run() {
|
||||
info_msg "Build version: ${BUILD_VERSION}"
|
||||
|
||||
downloadLibs
|
||||
prepare
|
||||
build
|
||||
check
|
||||
}
|
||||
|
||||
# set colors
|
||||
RCol='\e[0m' # Text Reset
|
||||
|
||||
# Regular Bold Underline High Intensity BoldHigh Intens Background High Intensity Backgrounds
|
||||
Bla='\e[0;30m'; BBla='\e[1;30m'; UBla='\e[4;30m'; IBla='\e[0;90m'; BIBla='\e[1;90m'; On_Bla='\e[40m'; On_IBla='\e[0;100m';
|
||||
Red='\e[0;31m'; BRed='\e[1;31m'; URed='\e[4;31m'; IRed='\e[0;91m'; BIRed='\e[1;91m'; On_Red='\e[41m'; On_IRed='\e[0;101m';
|
||||
Gre='\e[0;32m'; BGre='\e[1;32m'; UGre='\e[4;32m'; IGre='\e[0;92m'; BIGre='\e[1;92m'; On_Gre='\e[42m'; On_IGre='\e[0;102m';
|
||||
Yel='\e[0;33m'; BYel='\e[1;33m'; UYel='\e[4;33m'; IYel='\e[0;93m'; BIYel='\e[1;93m'; On_Yel='\e[43m'; On_IYel='\e[0;103m';
|
||||
Blu='\e[0;34m'; BBlu='\e[1;34m'; UBlu='\e[4;34m'; IBlu='\e[0;94m'; BIBlu='\e[1;94m'; On_Blu='\e[44m'; On_IBlu='\e[0;104m';
|
||||
Pur='\e[0;35m'; BPur='\e[1;35m'; UPur='\e[4;35m'; IPur='\e[0;95m'; BIPur='\e[1;95m'; On_Pur='\e[45m'; On_IPur='\e[0;105m';
|
||||
Cya='\e[0;36m'; BCya='\e[1;36m'; UCya='\e[4;36m'; ICya='\e[0;96m'; BICya='\e[1;96m'; On_Cya='\e[46m'; On_ICya='\e[0;106m';
|
||||
Whi='\e[0;37m'; BWhi='\e[1;37m'; UWhi='\e[4;37m'; IWhi='\e[0;97m'; BIWhi='\e[1;97m'; On_Whi='\e[47m'; On_IWhi='\e[0;107m';
|
||||
|
||||
# Set variables
|
||||
_qtver=5.5.1
|
||||
srcdir=${PWD}
|
||||
|
||||
downloadLibs() {
|
||||
travis_fold_start "download_libs"
|
||||
# Move telegram project to subfolder
|
||||
mkdir tdesktop
|
||||
mv -f Telegram tdesktop
|
||||
|
||||
# Download libraries
|
||||
info_msg "QT-Version: ${_qtver}, SRC-Dir: ${srcdir}"
|
||||
|
||||
echo -e "\nDownload and extract qt"
|
||||
qt_file=qt-everywhere-opensource-src-$_qtver.tar.xz
|
||||
echo -e "QT-File: ${qt_file}"
|
||||
|
||||
wget "http://download.qt.io/official_releases/qt/${_qtver%.*}/$_qtver/single/$qt_file"
|
||||
tar xf $qt_file
|
||||
rm $qt_file
|
||||
|
||||
echo -e "Clone Breakpad"
|
||||
git clone https://chromium.googlesource.com/breakpad/breakpad breakpad
|
||||
|
||||
echo -e "\nClone Linux Syscall Support"
|
||||
git clone https://chromium.googlesource.com/linux-syscall-support breakpad-lss
|
||||
|
||||
echo -e "\nLets view the folder content"
|
||||
ls
|
||||
travis_fold_end "download_libs"
|
||||
}
|
||||
|
||||
prepare() {
|
||||
travis_fold_start "prepare"
|
||||
start_msg "Preparing the libraries..."
|
||||
|
||||
cd "$srcdir/tdesktop"
|
||||
|
||||
mkdir -p "$srcdir/Libraries"
|
||||
|
||||
local qt_patch_file="$srcdir/tdesktop/Telegram/_qtbase_${_qtver//./_}_patch.diff"
|
||||
if [ "$qt_patch_file" -nt "$srcdir/Libraries/QtStatic" ]; then
|
||||
rm -rf "$srcdir/Libraries/QtStatic"
|
||||
mv "$srcdir/qt-everywhere-opensource-src-$_qtver" "$srcdir/Libraries/QtStatic"
|
||||
cd "$srcdir/Libraries/QtStatic/qtbase"
|
||||
patch -p1 -i "$qt_patch_file"
|
||||
fi
|
||||
|
||||
if [ ! -h "$srcdir/Libraries/breakpad" ]; then
|
||||
ln -s "$srcdir/breakpad" "$srcdir/Libraries/breakpad"
|
||||
ln -s "$srcdir/breakpad-lss" "$srcdir/Libraries/breakpad/src/third_party/lss"
|
||||
fi
|
||||
|
||||
sed -i 's/CUSTOM_API_ID//g' "$srcdir/tdesktop/Telegram/Telegram.pro"
|
||||
sed -i 's,LIBS += /usr/local/lib/libxkbcommon.a,,g' "$srcdir/tdesktop/Telegram/Telegram.pro"
|
||||
sed -i 's,LIBS += /usr/local/lib/libz.a,LIBS += -lz,g' "$srcdir/tdesktop/Telegram/Telegram.pro"
|
||||
|
||||
local options=""
|
||||
|
||||
if [[ $BUILD_VERSION == *"disable_autoupdate"* ]]; then
|
||||
options+="\nDEFINES += TDESKTOP_DISABLE_AUTOUPDATE"
|
||||
fi
|
||||
|
||||
if [[ $BUILD_VERSION == *"disable_register_custom_scheme"* ]]; then
|
||||
options+="\nDEFINES += TDESKTOP_DISABLE_REGISTER_CUSTOM_SCHEME"
|
||||
fi
|
||||
|
||||
if [[ $BUILD_VERSION == *"disable_crash_reports"* ]]; then
|
||||
options+="\nDEFINES += TDESKTOP_DISABLE_CRASH_REPORTS"
|
||||
fi
|
||||
|
||||
if [[ $BUILD_VERSION == *"disable_network_proxy"* ]]; then
|
||||
options+="\nDEFINES += TDESKTOP_DISABLE_NETWORK_PROXY"
|
||||
fi
|
||||
|
||||
options+='\nINCLUDEPATH += "/usr/lib/glib-2.0/include"'
|
||||
options+='\nINCLUDEPATH += "/usr/lib/gtk-2.0/include"'
|
||||
options+='\nINCLUDEPATH += "/usr/include/opus"'
|
||||
options+='\nLIBS += -lcrypto -lssl'
|
||||
|
||||
info_msg "Build options: ${options}"
|
||||
|
||||
echo -e "${options}" >> "$srcdir/tdesktop/Telegram/Telegram.pro"
|
||||
|
||||
success_msg "Prepare done! :)"
|
||||
travis_fold_end "prepare"
|
||||
}
|
||||
|
||||
build() {
|
||||
start_msg "Building the projects..."
|
||||
|
||||
info_msg "Build patched Qt"
|
||||
# Build patched Qt
|
||||
cd "$srcdir/Libraries/QtStatic"
|
||||
./configure -prefix "$srcdir/qt" -release -opensource -confirm-license -qt-zlib \
|
||||
-qt-libpng -qt-libjpeg -qt-freetype -qt-harfbuzz -qt-pcre -qt-xcb \
|
||||
-qt-xkbcommon-x11 -no-opengl -static -nomake examples -nomake tests
|
||||
make --silent module-qtbase module-qtimageformats
|
||||
make --silent module-qtbase-install_subtargets module-qtimageformats-install_subtargets
|
||||
|
||||
export PATH="$srcdir/qt/bin:$PATH"
|
||||
|
||||
info_msg "Build breakpad"
|
||||
# Build breakpad
|
||||
cd "$srcdir/Libraries/breakpad"
|
||||
./configure
|
||||
make --silent
|
||||
|
||||
info_msg "Build MetaStyle"
|
||||
# Build MetaStyle
|
||||
mkdir -p "$srcdir/tdesktop/Linux/DebugIntermediateStyle"
|
||||
cd "$srcdir/tdesktop/Linux/DebugIntermediateStyle"
|
||||
qmake CONFIG+=debug "../../Telegram/MetaStyle.pro"
|
||||
make --silent
|
||||
|
||||
info_msg "Build MetaLang"
|
||||
# Build MetaLang
|
||||
mkdir -p "$srcdir/tdesktop/Linux/DebugIntermediateLang"
|
||||
cd "$srcdir/tdesktop/Linux/DebugIntermediateLang"
|
||||
qmake CONFIG+=debug "../../Telegram/MetaLang.pro"
|
||||
make --silent
|
||||
|
||||
info_msg "Build Telegram Desktop"
|
||||
# Build Telegram Desktop
|
||||
mkdir -p "$srcdir/tdesktop/Linux/ReleaseIntermediate"
|
||||
cd "$srcdir/tdesktop/Linux/ReleaseIntermediate"
|
||||
|
||||
qmake CONFIG+=release "../../Telegram/Telegram.pro"
|
||||
local pattern="^PRE_TARGETDEPS +="
|
||||
grep "$pattern" "$srcdir/tdesktop/Telegram/Telegram.pro" | sed "s/$pattern//g" | xargs make
|
||||
|
||||
qmake CONFIG+=release "../../Telegram/Telegram.pro"
|
||||
make
|
||||
}
|
||||
|
||||
check() {
|
||||
local filePath="$srcdir/tdesktop/Linux/Release/Telegram"
|
||||
if test -f "$filePath"; then
|
||||
success_msg "Build successful done! :)"
|
||||
|
||||
local size;
|
||||
size=$(stat -c %s "$filePath")
|
||||
success_msg "File size of ${filePath}: ${size} Bytes"
|
||||
else
|
||||
error_msg "Build error, output file does not exist"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
start_msg() {
|
||||
echo -e "\n${Gre}$*${RCol}"
|
||||
}
|
||||
|
||||
info_msg() {
|
||||
echo -e "\n${Cya}$*${RCol}"
|
||||
}
|
||||
|
||||
error_msg() {
|
||||
echo -e "\n${BRed}$*${RCol}"
|
||||
}
|
||||
|
||||
success_msg() {
|
||||
echo -e "\n${BGre}$*${RCol}"
|
||||
}
|
||||
|
||||
travis_fold_start() {
|
||||
echo "travis_fold:start:$*"
|
||||
}
|
||||
|
||||
travis_fold_end() {
|
||||
echo "travis_fold:end:$*"
|
||||
}
|
||||
|
||||
run
|
||||
17
LICENSE
@@ -1,4 +1,17 @@
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Telegram Desktop is licensed under the GNU General Public License
|
||||
version 3 with the addition of the following special exception:
|
||||
|
||||
In addition, as a special exception, the copyright holders give
|
||||
permission to link the code of portions of this program with the OpenSSL
|
||||
library.
|
||||
You must obey the GNU General Public License in all respects for all of
|
||||
the code used other than OpenSSL. If you modify file(s) with this
|
||||
exception, you may extend this exception to your version of the file(s),
|
||||
but you are not obligated to do so. If you do not wish to do so, delete
|
||||
this exception statement from your version. If you delete this exception
|
||||
statement from all source files in the program, then also delete it here.
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 3, 29 June 2007
|
||||
|
||||
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
||||
@@ -671,4 +684,4 @@ into proprietary programs. If your program is a subroutine library, you
|
||||
may consider it more useful to permit linking proprietary applications with
|
||||
the library. If this is what you want to do, use the GNU Lesser General
|
||||
Public License instead of this License. But first, please read
|
||||
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
|
||||
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
|
||||
|
||||
190
MSVC.md
@@ -1,190 +0,0 @@
|
||||
##Build instructions for Visual Studio 2013
|
||||
|
||||
###Prepare folder
|
||||
|
||||
Choose a folder for the future build, for example **D:\TBuild\**. There you will have two folders, **Libraries** for third-party libs and **tdesktop** (or **tdesktop-master**) for the app.
|
||||
|
||||
###Clone source code
|
||||
|
||||
By git – in [Git Bash](http://git-scm.com/downloads) go to **/d/tbuild** and run
|
||||
|
||||
git clone https://github.com/telegramdesktop/tdesktop.git
|
||||
|
||||
or download in ZIP and extract to **D:\TBuild\**, rename **tdesktop-master** to **tdesktop** to have **D:\TBuild\tdesktop\Telegram.sln** solution
|
||||
|
||||
###Prepare libraries
|
||||
|
||||
####OpenSSL 1.0.1h
|
||||
|
||||
https://www.openssl.org/related/binaries.html > **OpenSSL for Windows** > Download [**Win32 OpenSSL v1.0.1h** (16 Mb)](http://slproweb.com/download/Win32OpenSSL-1_0_1h.exe)
|
||||
|
||||
Install to **D:\TBuild\Libraries\OpenSSL-Win32**, while installing **Copy OpenSSL DLLs to** choose **The OpenSSL binaries (/bin) directory**
|
||||
|
||||
####LZMA SDK 9.20
|
||||
|
||||
http://www.7-zip.org/sdk.html > Download [**LZMA SDK (C, C++, C#, Java)** 9.20](http://downloads.sourceforge.net/sevenzip/lzma920.tar.bz2)
|
||||
|
||||
Extract to **D:\TBuild\Libraries**
|
||||
|
||||
#####Building library
|
||||
|
||||
* Open in VS2013 **D:\TBuild\Libraries\lzma\C\Util\LzmaLib\LzmaLib.dsw** > One-way upgrade – **OK**
|
||||
* For **Debug** and **Release** configurations
|
||||
* LzmaLib Properties > General > Configuration Type = **Static library (.lib)** – **OK**
|
||||
* LzmaLib Properties > Librarian > General > Target Machine = **MachineX86 (/MACHINE:X86)** – **OK**
|
||||
* Build Debug configuration
|
||||
* Build Release configuration
|
||||
|
||||
####zlib 1.2.8
|
||||
|
||||
http://www.zlib.net/ > Download [**zlib source code, version 1.2.8, zipfile format**](http://zlib.net/zlib128.zip)
|
||||
|
||||
Extract to **D:\\TBuild\\Libraries\\**
|
||||
|
||||
#####Building library
|
||||
|
||||
* Open in VS2013 **D:\TBuild\Libraries\zlib-1.2.8\contrib\vstudio\vc11\zlibvc.sln** > One-way upgrade – **OK**
|
||||
* We are interested only in **zlibstat** project, but it depends on some custom pre-build step, so build all
|
||||
* For **Debug** configuration
|
||||
* zlibstat Properties > C/C++ > Code Generation > Runtime Library = **Multi-threaded Debug (/MTd)** – **OK**
|
||||
* For **Release** configuration
|
||||
* zlibstat Properties > C/C++ > Code Generation > Runtime Library = **Multi-threaded (/MT)** – **OK**
|
||||
* Build Solution for Debug configuration – only **zlibstat** project builds successfully
|
||||
* Build Solution for Release configuration – only **zlibstat** project builds successfully
|
||||
|
||||
####libexif 0.6.20
|
||||
|
||||
Get sources from https://github.com/telegramdesktop/libexif-0.6.20, by git – in [Git Bash](http://git-scm.com/downloads) go to **/d/tbuild/libraries** and run
|
||||
|
||||
git clone https://github.com/telegramdesktop/libexif-0.6.20.git
|
||||
|
||||
or download in ZIP and extract to **D:\TBuild\Libraries\**, rename **libexif-0.6.20-master** to **libexif-0.6.20** to have **D:\TBuild\Libraries\libexif-0.6.20\win32\lib_exif.sln** solution
|
||||
|
||||
#####Building library
|
||||
|
||||
* Open in VS2013 **D:\TBuild\Libraries\libexif-0.6.20\win32\lib_exif.sln**
|
||||
* Build Debug configuration
|
||||
* Build Release configuration
|
||||
|
||||
####OpenAL Soft, slightly patched
|
||||
|
||||
Get sources by git – in [Git Bash](http://git-scm.com/downloads) go to **/d/tbuild/libraries** and run
|
||||
|
||||
git clone git://repo.or.cz/openal-soft.git
|
||||
|
||||
to have **D:\TBuild\Libraries\openal-soft\CMakeLists.txt**, then in [Git Bash](http://git-scm.com/downloads) go to **/d/tbuild/libraries/openal-soft** and run
|
||||
|
||||
git checkout 9479ea656b
|
||||
|
||||
Apply patch
|
||||
|
||||
* OR copy (with overwrite!) everything from **D:\\TBuild\\tdesktop\\\_openal\_patch\\** to **D:\\TBuild\\Libraries\\openal-soft\\**
|
||||
* OR in Git Bash go to **/d/tbuild/libraries/openal-soft/** and run
|
||||
|
||||
git apply ./../../tdesktop/Telegram/_openal_patch.diff
|
||||
|
||||
|
||||
#####Building library
|
||||
|
||||
* Install [CMake](http://www.cmake.org/)
|
||||
* Go in **cmd** to **D:\TBuild\Libraries\openal-soft\build\**
|
||||
* Run **cmake -G "Visual Studio 12 2013" -D LIBTYPE:STRING=STATIC ..**
|
||||
* Open in VS2013 **D:\TBuild\Libraries\openal-soft\build\OpenAL.sln**
|
||||
* For **Debug** configuration
|
||||
* OpenAL32 Properties > C/C++ > Code Generation > Runtime Library = **Multi-threaded Debug (/MTd)** – **OK**
|
||||
* common Properties > C/C++ > Code Generation > Runtime Library = **Multi-threaded Debug (/MTd)** – **OK**
|
||||
* For **Release** configuration
|
||||
* OpenAL32 Properties > C/C++ > Code Generation > Runtime Library = **Multi-threaded (/MT)** – **OK**
|
||||
* common Properties > C/C++ > Code Generation > Runtime Library = **Multi-threaded (/MT)** – **OK**
|
||||
|
||||
####Opus codec
|
||||
|
||||
Get sources by git – in [Git Bash](http://git-scm.com/downloads) go to **/d/tbuild/libraries** and run
|
||||
|
||||
git clone https://github.com/telegramdesktop/opus.git
|
||||
|
||||
to have **D:\TBuild\Libraries\opus\win32**
|
||||
|
||||
#####Building libraries
|
||||
|
||||
* Open in VS2013 **D:\TBuild\Libraries\opus\win32\VS2010\opus.sln**
|
||||
* Build Debug configuration
|
||||
* Build Release configuration (it will be required in **FFmpeg** build!)
|
||||
|
||||
####FFmpeg
|
||||
|
||||
https://www.ffmpeg.org/download.html > Download [ffmpeg-2.6.3.tar.bz2](http://ffmpeg.org/releases/ffmpeg-2.6.3.tar.bz2)
|
||||
|
||||
Extract to **D:\\TBuild\\Libraries**
|
||||
|
||||
http://msys2.github.io/ > Download [msys2-x86_64-20150512.exe](http://sourceforge.net/projects/msys2/files/Base/x86_64/msys2-x86_64-20150512.exe/download) and install to **D:\\msys64**
|
||||
|
||||
#####Building libraries
|
||||
|
||||
Download [yasm for Win64](http://www.tortall.net/projects/yasm/releases/yasm-1.3.0-win64.exe) from http://yasm.tortall.net/Download.html, rename **yasm-1.3.0-win64.exe** to **yasm.exe** and place it to your Visual C++ **bin** directory, like **\\Program Files (x86)\\Microsoft Visual Studio 12\\VC\\bin\\**
|
||||
|
||||
Open **VS2013 x86 Native Tools Command Prompt.bat** (should be in **\\Program Files (x86)\\Microsoft Visual Studio 12.0\\Common7\\Tools\\Shortcuts\\** folder), go to **D:\\msys64\\** and launch **msys2_shell.bat**, there run
|
||||
|
||||
PATH="/c/Program Files (x86)/Microsoft Visual Studio 12.0/VC/BIN:$PATH"
|
||||
|
||||
cd /d/TBuild/Libraries/ffmpeg-2.6.3
|
||||
pacman -S msys/make
|
||||
pacman -S mingw64/mingw-w64-x86_64-opus
|
||||
pacman -S pkg-config
|
||||
|
||||
PKG_CONFIG_PATH="/mingw64/lib/pkgconfig:$PKG_CONFIG_PATH"
|
||||
|
||||
./configure --toolchain=msvc --disable-programs --disable-everything --enable-libopus --enable-decoder=aac --enable-decoder=aac_latm --enable-decoder=aasc --enable-decoder=mp1 --enable-decoder=mp1float --enable-decoder=mp2 --enable-decoder=mp2float --enable-decoder=mp3 --enable-decoder=mp3adu --enable-decoder=mp3adufloat --enable-decoder=mp3float --enable-decoder=mp3on4 --enable-decoder=mp3on4float --enable-decoder=wavpack --enable-decoder=opus --enable-decoder=vorbis --enable-decoder=wmalossless --enable-decoder=wmapro --enable-decoder=wmav1 --enable-decoder=wmav2 --enable-decoder=wmavoice --enable-decoder=flac --enable-encoder=libopus --enable-parser=aac --enable-parser=aac_latm --enable-parser=mpegaudio --enable-parser=opus --enable-parser=vorbis --enable-parser=flac --enable-demuxer=aac --enable-demuxer=wav --enable-demuxer=mp3 --enable-demuxer=ogg --enable-demuxer=mov --enable-demuxer=flac --enable-muxer=ogg --enable-muxer=opus --extra-ldflags="-libpath:/d/TBuild/Libraries/opus/win32/VS2010/Win32/Release celt.lib silk_common.lib silk_float.lib"
|
||||
|
||||
make
|
||||
make install
|
||||
|
||||
####Qt 5.5.0, slightly patched
|
||||
|
||||
http://download.qt-project.org/official_releases/qt/5.5/5.5.0/single/qt-everywhere-opensource-src-5.5.0.zip
|
||||
|
||||
Extract to **D:\TBuild\Libraries\**, rename **qt-everywhere-opensource-src-5.5.0** to **QtStatic** to have **D:\TBuild\Libraries\QtStatic\qtbase\** folder
|
||||
|
||||
Apply patch
|
||||
|
||||
* OR copy (with overwrite!) everything from **D:\TBuild\tdesktop\\\_qt\_5\_5\_0\_patch\** to **D:\TBuild\Libraries\QtStatic\**
|
||||
* OR in Git Bash go to **/d/TBuild/Libraries/QtStatic/** and run
|
||||
|
||||
git apply ./../../tdesktop/Telegram/_qt_5_5_0_patch.diff
|
||||
|
||||
#####Building library
|
||||
|
||||
* Install Python 3.3.2 from https://www.python.org/download/releases/3.3.2 > [**Windows x86 MSI Installer (3.3.2)**](https://www.python.org/ftp/python/3.3.2/python-3.3.2.msi)
|
||||
* Open **VS2013 x86 Native Tools Command Prompt.bat** (should be in **\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\Shortcuts\** folder)
|
||||
|
||||
There go to Qt directory
|
||||
|
||||
D:
|
||||
cd TBuild\Libraries\QtStatic
|
||||
|
||||
and after that run configure
|
||||
|
||||
configure -debug-and-release -opensource -confirm-license -static -I "D:\TBuild\Libraries\OpenSSL-Win32\include" -L "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib" -l Gdi32 -no-opengl -openssl-linked OPENSSL_LIBS_DEBUG="D:\TBuild\Libraries\OpenSSL-Win32\lib\VC\static\ssleay32MTd.lib D:\TBuild\Libraries\OpenSSL-Win32\lib\VC\static\libeay32MTd.lib" OPENSSL_LIBS_RELEASE="D:\TBuild\Libraries\OpenSSL-Win32\lib\VC\static\ssleay32MT.lib D:\TBuild\Libraries\OpenSSL-Win32\lib\VC\static\libeay32MT.lib" -mp -nomake examples -nomake tests -platform win32-msvc2013
|
||||
|
||||
to configure Qt build. After configuration is complete run
|
||||
|
||||
nmake module-qtbase module-qtimageformats
|
||||
nmake module-qtbase-install_subtargets module-qtimageformats-install_subtargets
|
||||
|
||||
building (**nmake** command) will take really long time.
|
||||
|
||||
####Qt Visual Studio Addin 1.2.3
|
||||
|
||||
http://download.qt-project.org/official_releases/vsaddin/qt-vs-addin-1.2.3-opensource.exe
|
||||
|
||||
Close all VS2013 instances and install to default location
|
||||
|
||||
###Building Telegram Desktop
|
||||
|
||||
* Launch VS2013 for configuring Qt Addin
|
||||
* QT5 > Qt Options > Add
|
||||
* Version name: **QtStatic.5.5.0**
|
||||
* Path: **D:\TBuild\Libraries\QtStatic\qtbase**
|
||||
* Default Qt/Win version: **QtStatic.5.5.0** – **OK**
|
||||
* File > Open > Project/Solution > **D:\TBuild\tdesktop\Telegram.sln**
|
||||
* Build \ Build Solution (Debug and Release configurations)
|
||||
49
README.md
@@ -2,35 +2,40 @@
|
||||
|
||||
This is the complete source code and the build instructions for the alpha version of the official desktop client for the [Telegram][telegram] messenger, based on the [Telegram API][telegram_api] and the [MTProto][telegram_proto] secure protocol.
|
||||
|
||||
The source code is published under GPLv3, the license is available [here][license].
|
||||
[](https://travis-ci.org/telegramdesktop/tdesktop)
|
||||
|
||||
The source code is published under GPLv3 with OpenSSL exception, the license is available [here][license].
|
||||
|
||||
## Supported systems
|
||||
|
||||
* Windows XP - Windows 10 (**not** RT)
|
||||
* Mac OS X 10.8 - Mac OS X 10.10
|
||||
* Mac OS X 10.8 - Mac OS X 10.11
|
||||
* Mac OS X 10.6 - Mac OS X 10.7 (separate build)
|
||||
* Ubuntu 12.04 - Ubuntu 14.04
|
||||
* Ubuntu 12.04 - Ubuntu 15.04
|
||||
* Fedora 22
|
||||
|
||||
## Third-party libraries
|
||||
|
||||
* Qt 5.3.2 and 5.5.0, slightly patched ([LGPL](http://doc.qt.io/qt-5/lgpl.html))
|
||||
* Qt 5.3.2 and 5.5.1, slightly patched ([LGPL](http://doc.qt.io/qt-5/lgpl.html))
|
||||
* OpenSSL 1.0.1g ([OpenSSL License](https://www.openssl.org/source/license.html))
|
||||
* zlib 1.2.8 ([zlib License](http://www.zlib.net/zlib_license.html))
|
||||
* libexif 0.6.20 ([LGPL](https://www.gnu.org/licenses/old-licenses/lgpl-2.1.en.html))
|
||||
* LZMA SDK 9.20 ([public domain](http://www.7-zip.org/sdk.html))
|
||||
* liblzma ([public domain](http://tukaani.org/xz/))
|
||||
* Google Breakpad ([License](https://chromium.googlesource.com/breakpad/breakpad/+/master/LICENSE))
|
||||
* Google Crashpad ([Apache License 2.0](https://chromium.googlesource.com/crashpad/crashpad/+/master/LICENSE))
|
||||
* OpenAL Soft ([LGPL](http://kcat.strangesoft.net/openal.html))
|
||||
* Opus codec ([BSD license](http://www.opus-codec.org/license/))
|
||||
* FFmpeg ([LGPL](https://www.ffmpeg.org/legal.html))
|
||||
* Open Sans font ([Apache License](http://www.apache.org/licenses/LICENSE-2.0.html))
|
||||
* Open Sans font ([Apache License 2.0](http://www.apache.org/licenses/LICENSE-2.0.html))
|
||||
|
||||
## Build instructions
|
||||
|
||||
* [Visual Studio 2013][msvc]
|
||||
* [XCode 6.4][xcode]
|
||||
* [XCode 6.4 for OS X 10.6 and 10.7][xcode_old]
|
||||
* [Qt Creator 3.2.0 Ubuntu][qtcreator]
|
||||
* [Visual Studio 2015][msvc]
|
||||
* [XCode 7][xcode]
|
||||
* [XCode 7 for OS X 10.6 and 10.7][xcode_old]
|
||||
* [Qt Creator 3.5.1 Ubuntu][qtcreator]
|
||||
* [Using qmake on GNU/Linux][qmake]
|
||||
|
||||
## Projects in Telegram solution
|
||||
|
||||
@@ -46,21 +51,6 @@ The source code is published under GPLv3, the license is available [here][licens
|
||||
|
||||
Compiles given files to single update file, compresses it with lzma and signs with a private key. It is not built in **Debug** and **Release** configurations of Telegram solution, because private key is inaccessible.
|
||||
|
||||
* ### Prepare
|
||||
|
||||
Prepares a release for deployment, puts all current files to deploy/{version} folder.
|
||||
|
||||
**Windows**:
|
||||
* tsetup{version}.exe installer
|
||||
* Telegram.exe
|
||||
* Telegram.pdb (debug info for crash minidumps view)
|
||||
* tupdate{updversion} binary lzma update archive
|
||||
|
||||
**Mac**:
|
||||
* tsetup{version}.dmg
|
||||
* Telegram.app
|
||||
* tmacupd{updversion} binary lzma update archive
|
||||
|
||||
* ### MetaEmoji
|
||||
|
||||
Creates four sprites and text2emoji replace code
|
||||
@@ -92,7 +82,7 @@ The source code is published under GPLv3, the license is available [here][licens
|
||||
|
||||
* ### MetaLang
|
||||
|
||||
Creates from languagepack file `Resources/lang.txt` language constants code and language file parse code:
|
||||
Creates from languagepack file `Resources/lang.strings` language constants code and language file parse code:
|
||||
* GeneratedFiles/lang.h
|
||||
* GeneratedFiles/lang.cpp
|
||||
|
||||
@@ -102,7 +92,8 @@ The source code is published under GPLv3, the license is available [here][licens
|
||||
[telegram_api]: https://core.telegram.org
|
||||
[telegram_proto]: https://core.telegram.org/mtproto
|
||||
[license]: LICENSE
|
||||
[msvc]: MSVC.md
|
||||
[xcode]: XCODE.md
|
||||
[xcode_old]: XCODEold.md
|
||||
[qtcreator]: QTCREATOR.md
|
||||
[msvc]: doc/building-msvc.md
|
||||
[xcode]: doc/building-xcode.md
|
||||
[xcode_old]: doc/building-xcode-old.md
|
||||
[qtcreator]: doc/building-qtcreator.md
|
||||
[qmake]: doc/building-qmake.md
|
||||
|
||||
21
Telegram.sln
@@ -1,7 +1,7 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 2013
|
||||
VisualStudioVersion = 12.0.30501.0
|
||||
# Visual Studio 14
|
||||
VisualStudioVersion = 14.0.24720.0
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Telegram", "Telegram\Telegram.vcxproj", "{B12702AD-ABFB-343A-A199-8E24837244A3}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
@@ -18,10 +18,12 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Updater", "Telegram\Updater
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MetaLang", "Telegram\MetaLang.vcxproj", "{E417CAA4-259B-4C99-88E3-805F1300E8EB}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{2F863EAD-33C9-4014-A573-93F085BA9CB1}"
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "codegen", "codegen", "{2F863EAD-33C9-4014-A573-93F085BA9CB1}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Packer", "Telegram\Packer.vcxproj", "{56A9A4B2-21E5-4360-AFA8-85B43AC43B08}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "codegen_style", "Telegram\build\vc\codegen_style\codegen_style.vcxproj", "{E4DF8176-4DEF-4859-962F-B497E3E7A323}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Win32 = Debug|Win32
|
||||
@@ -82,8 +84,21 @@ Global
|
||||
{56A9A4B2-21E5-4360-AFA8-85B43AC43B08}.Deploy|x64.ActiveCfg = Release|Win32
|
||||
{56A9A4B2-21E5-4360-AFA8-85B43AC43B08}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{56A9A4B2-21E5-4360-AFA8-85B43AC43B08}.Release|x64.ActiveCfg = Release|Win32
|
||||
{E4DF8176-4DEF-4859-962F-B497E3E7A323}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{E4DF8176-4DEF-4859-962F-B497E3E7A323}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{E4DF8176-4DEF-4859-962F-B497E3E7A323}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{E4DF8176-4DEF-4859-962F-B497E3E7A323}.Deploy|Win32.ActiveCfg = Debug|Win32
|
||||
{E4DF8176-4DEF-4859-962F-B497E3E7A323}.Deploy|Win32.Build.0 = Debug|Win32
|
||||
{E4DF8176-4DEF-4859-962F-B497E3E7A323}.Deploy|x64.ActiveCfg = Release|Win32
|
||||
{E4DF8176-4DEF-4859-962F-B497E3E7A323}.Deploy|x64.Build.0 = Release|Win32
|
||||
{E4DF8176-4DEF-4859-962F-B497E3E7A323}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{E4DF8176-4DEF-4859-962F-B497E3E7A323}.Release|Win32.Build.0 = Release|Win32
|
||||
{E4DF8176-4DEF-4859-962F-B497E3E7A323}.Release|x64.ActiveCfg = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(NestedProjects) = preSolution
|
||||
{E4DF8176-4DEF-4859-962F-B497E3E7A323} = {2F863EAD-33C9-4014-A573-93F085BA9CB1}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
|
||||
195
Telegram/Build.bat
Normal file
@@ -0,0 +1,195 @@
|
||||
@echo OFF
|
||||
setlocal
|
||||
|
||||
FOR /F "tokens=1,2* delims= " %%i in (Version) do set "%%i=%%j"
|
||||
|
||||
set "VersionForPacker=%AppVersion%"
|
||||
if %BetaVersion% neq 0 (
|
||||
set "AppVersion=%BetaVersion%"
|
||||
set "AppVersionStrFull=%AppVersionStr%_%BetaVersion%"
|
||||
set "DevParam=-beta %BetaVersion%"
|
||||
set "BetaKeyFile=tbeta_%BetaVersion%_key"
|
||||
) else (
|
||||
if %DevChannel% neq 0 (
|
||||
set "DevParam=-dev"
|
||||
set "AppVersionStrFull=%AppVersionStr%.dev"
|
||||
) else (
|
||||
set "DevParam="
|
||||
set "AppVersionStrFull=%AppVersionStr%"
|
||||
)
|
||||
)
|
||||
|
||||
echo.
|
||||
echo Building version %AppVersionStrFull% for Windows..
|
||||
echo.
|
||||
|
||||
set "UpdateFile=tupdate%AppVersion%"
|
||||
set "SetupFile=tsetup.%AppVersionStrFull%.exe"
|
||||
set "PortableFile=tportable.%AppVersionStrFull%.zip"
|
||||
set "HomePath=..\..\Telegram"
|
||||
set "ReleasePath=..\Win32\Deploy"
|
||||
set "DeployPath=%ReleasePath%\deploy\%AppVersionStrMajor%\%AppVersionStrFull%"
|
||||
set "SignPath=..\..\TelegramPrivate\Sign.bat"
|
||||
set "BinaryName=Telegram"
|
||||
set "DropboxSymbolsPath=Z:\Dropbox\Telegram\symbols"
|
||||
|
||||
if %BetaVersion% neq 0 (
|
||||
if exist %DeployPath%\ (
|
||||
echo Deploy folder for version %AppVersionStr% already exists!
|
||||
exit /b 1
|
||||
)
|
||||
if exist %ReleasePath%\%BetaKeyFile% (
|
||||
echo Beta version key file for version %AppVersion% already exists!
|
||||
exit /b 1
|
||||
)
|
||||
) else (
|
||||
if exist %ReleasePath%\deploy\%AppVersionStrMajor%\%AppVersionStr%.dev\ (
|
||||
echo Deploy folder for version %AppVersionStr%.dev already exists!
|
||||
exit /b 1
|
||||
)
|
||||
if exist %ReleasePath%\deploy\%AppVersionStrMajor%\%AppVersionStr%\ (
|
||||
echo Deploy folder for version %AppVersionStr% already exists!
|
||||
exit /b 1
|
||||
)
|
||||
if exist %ReleasePath%\tupdate%AppVersion% (
|
||||
echo Update file for version %AppVersion% already exists!
|
||||
exit /b 1
|
||||
)
|
||||
)
|
||||
cd SourceFiles\
|
||||
if "%1" == "fast" (
|
||||
echo Skipping touching of telegram.qrc..
|
||||
) else (
|
||||
copy telegram.qrc /B+,,/Y
|
||||
)
|
||||
cd ..\
|
||||
if %errorlevel% neq 0 goto error
|
||||
|
||||
cd ..\
|
||||
MSBuild Telegram.sln /property:Configuration=Deploy
|
||||
cd Telegram\
|
||||
if %errorlevel% neq 0 goto error
|
||||
|
||||
echo .
|
||||
echo Version %AppVersionStrFull% build successfull. Preparing..
|
||||
echo .
|
||||
|
||||
echo Dumping debug symbols..
|
||||
call ..\..\Libraries\breakpad\src\tools\windows\binaries\dump_syms.exe %ReleasePath%\%BinaryName%.pdb > %ReleasePath%\%BinaryName%.sym
|
||||
echo Done!
|
||||
|
||||
set "PATH=%PATH%;C:\Program Files\7-Zip;C:\Program Files (x86)\Inno Setup 5"
|
||||
|
||||
call %SignPath% %ReleasePath%\%BinaryName%.exe
|
||||
if %errorlevel% neq 0 goto error
|
||||
|
||||
call %SignPath% %ReleasePath%\Updater.exe
|
||||
if %errorlevel% neq 0 goto error
|
||||
|
||||
if %BetaVersion% equ 0 (
|
||||
cd %ReleasePath%
|
||||
iscc /dMyAppVersion=%AppVersionStrSmall% /dMyAppVersionZero=%AppVersionStr% /dMyAppVersionFull=%AppVersionStrFull% %HomePath%\Setup.iss
|
||||
cd %HomePath%
|
||||
if %errorlevel% neq 0 goto error
|
||||
|
||||
call %SignPath% %ReleasePath%\tsetup.%AppVersionStrFull%.exe
|
||||
if %errorlevel% neq 0 goto error
|
||||
)
|
||||
|
||||
cd %ReleasePath%
|
||||
call Packer.exe -version %VersionForPacker% -path %BinaryName%.exe -path Updater.exe %DevParam%
|
||||
cd %HomePath%
|
||||
if %errorlevel% neq 0 goto error
|
||||
|
||||
if %BetaVersion% neq 0 (
|
||||
if not exist %ReleasePath%\%BetaKeyFile% (
|
||||
echo Beta version key file not found!
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
FOR /F "tokens=1* delims= " %%i in (%ReleasePath%\%BetaKeyFile%) do set "BetaSignature=%%i"
|
||||
)
|
||||
if %errorlevel% neq 0 goto error
|
||||
|
||||
if %BetaVersion% neq 0 (
|
||||
set "UpdateFile=%UpdateFile%_%BetaSignature%"
|
||||
set "PortableFile=tbeta%BetaVersion%_%BetaSignature%.zip"
|
||||
)
|
||||
|
||||
for /f ^"usebackq^ eol^=^
|
||||
|
||||
^ delims^=^" %%a in (%ReleasePath%\%BinaryName%.sym) do (
|
||||
set "SymbolsHashLine=%%a"
|
||||
goto symbolslinedone
|
||||
)
|
||||
:symbolslinedone
|
||||
FOR /F "tokens=1,2,3,4* delims= " %%i in ("%SymbolsHashLine%") do set "SymbolsHash=%%l"
|
||||
|
||||
echo Copying %BinaryName%.sym to %DropboxSymbolsPath%\%BinaryName%.pdb\%SymbolsHash%
|
||||
if not exist %DropboxSymbolsPath%\%BinaryName%.pdb mkdir %DropboxSymbolsPath%\%BinaryName%.pdb
|
||||
if not exist %DropboxSymbolsPath%\%BinaryName%.pdb\%SymbolsHash% mkdir %DropboxSymbolsPath%\%BinaryName%.pdb\%SymbolsHash%
|
||||
xcopy %ReleasePath%\%BinaryName%.sym %DropboxSymbolsPath%\%BinaryName%.pdb\%SymbolsHash%\
|
||||
echo Done!
|
||||
|
||||
if not exist %ReleasePath%\deploy mkdir %ReleasePath%\deploy
|
||||
if not exist %ReleasePath%\deploy\%AppVersionStrMajor% mkdir %ReleasePath%\deploy\%AppVersionStrMajor%
|
||||
mkdir %DeployPath%
|
||||
mkdir %DeployPath%\Telegram
|
||||
if %errorlevel% neq 0 goto error
|
||||
|
||||
move %ReleasePath%\Telegram.exe %DeployPath%\Telegram\
|
||||
move %ReleasePath%\Updater.exe %DeployPath%\
|
||||
move %ReleasePath%\Telegram.pdb %DeployPath%\
|
||||
move %ReleasePath%\Updater.pdb %DeployPath%\
|
||||
if %BetaVersion% equ 0 (
|
||||
move %ReleasePath%\%SetupFile% %DeployPath%\
|
||||
) else (
|
||||
move %ReleasePath%\%BetaKeyFile% %DeployPath%\
|
||||
)
|
||||
move %ReleasePath%\%UpdateFile% %DeployPath%\
|
||||
if %errorlevel% neq 0 goto error
|
||||
|
||||
cd %DeployPath%\
|
||||
7z a -mx9 %PortableFile% Telegram\
|
||||
cd ..\..\..\%HomePath%\
|
||||
if %errorlevel% neq 0 goto error
|
||||
|
||||
echo .
|
||||
echo Version %AppVersionStrFull% is ready for deploy!
|
||||
echo .
|
||||
|
||||
set "FinalReleasePath=Z:\TBuild\tother\tsetup"
|
||||
set "FinalDeployPath=%FinalReleasePath%\%AppVersionStrMajor%\%AppVersionStrFull%"
|
||||
|
||||
if not exist %DeployPath%\%UpdateFile% goto error
|
||||
if not exist %DeployPath%\%PortableFile% goto error
|
||||
if %BetaVersion% equ 0 (
|
||||
if not exist %DeployPath%\%SetupFile% goto error
|
||||
)
|
||||
if not exist %DeployPath%\%BinaryName%.pdb goto error
|
||||
if not exist %DeployPath%\Updater.exe goto error
|
||||
if not exist %DeployPath%\Updater.pdb goto error
|
||||
if not exist %FinalReleasePath%\%AppVersionStrMajor% mkdir %FinalReleasePath%\%AppVersionStrMajor%
|
||||
if not exist %FinalDeployPath% mkdir %FinalDeployPath%
|
||||
|
||||
xcopy %DeployPath%\%UpdateFile% %FinalDeployPath%\
|
||||
xcopy %DeployPath%\%PortableFile% %FinalDeployPath%\
|
||||
if %BetaVersion% equ 0 (
|
||||
xcopy %DeployPath%\%SetupFile% %FinalDeployPath%\
|
||||
) else (
|
||||
xcopy %DeployPath%\%BetaKeyFile% %FinalDeployPath%\ /Y
|
||||
)
|
||||
xcopy %DeployPath%\%BinaryName%.pdb %FinalDeployPath%\
|
||||
xcopy %DeployPath%\Updater.exe %FinalDeployPath%\
|
||||
xcopy %DeployPath%\Updater.pdb %FinalDeployPath%\
|
||||
|
||||
echo Version %AppVersionStrFull% is ready!
|
||||
|
||||
goto eof
|
||||
|
||||
:error
|
||||
echo ERROR occured!
|
||||
if %errorlevel% neq 0 exit /b %errorlevel%
|
||||
exit /b 1
|
||||
|
||||
:eof
|
||||
@@ -1,11 +1,22 @@
|
||||
set -e
|
||||
|
||||
FastParam="$1"
|
||||
|
||||
while IFS='' read -r line || [[ -n "$line" ]]; do
|
||||
set $line
|
||||
eval $1="$2"
|
||||
done < Version
|
||||
|
||||
AppVersionStrFull="$AppVersionStr"
|
||||
DevParam=''
|
||||
if [ "$DevChannel" != "0" ]; then
|
||||
VersionForPacker="$AppVersion"
|
||||
if [ "$BetaVersion" != "0" ]; then
|
||||
AppVersion="$BetaVersion"
|
||||
AppVersionStrFull="${AppVersionStr}_${BetaVersion}"
|
||||
DevParam="-beta $BetaVersion"
|
||||
BetaKeyFile="tbeta_${AppVersion}_key"
|
||||
elif [ "$DevChannel" == "0" ]; then
|
||||
AppVersionStrFull="$AppVersionStr"
|
||||
DevParam=''
|
||||
else
|
||||
AppVersionStrFull="$AppVersionStr.dev"
|
||||
DevParam='-dev'
|
||||
fi
|
||||
@@ -20,16 +31,23 @@ while IFS='' read -r line || [[ -n "$line" ]]; do
|
||||
done < Target
|
||||
|
||||
echo ""
|
||||
HomePath="./../../Telegram"
|
||||
if [ "$BuildTarget" == "linux" ]; then
|
||||
echo "Building version $AppVersionStrFull for Linux 64bit.."
|
||||
UpdateFile="tlinuxupd$AppVersion"
|
||||
SetupFile="tsetup.$AppVersionStrFull.tar.xz"
|
||||
WorkPath="./../Linux"
|
||||
FixScript="$HomePath/FixMake.sh"
|
||||
ReleasePath="./../Linux/Release"
|
||||
BinaryName="Telegram"
|
||||
elif [ "$BuildTarget" == "linux32" ]; then
|
||||
echo "Building version $AppVersionStrFull for Linux 32bit.."
|
||||
UpdateFile="tlinux32upd$AppVersion"
|
||||
SetupFile="tsetup32.$AppVersionStrFull.tar.xz"
|
||||
WorkPath="./../Linux"
|
||||
FixScript="$HomePath/FixMake32.sh"
|
||||
ReleasePath="./../Linux/Release"
|
||||
BinaryName="Telegram"
|
||||
elif [ "$BuildTarget" == "mac" ]; then
|
||||
echo "Building version $AppVersionStrFull for OS X 10.8+.."
|
||||
UpdateFile="tmacupd$AppVersion"
|
||||
@@ -43,6 +61,11 @@ elif [ "$BuildTarget" == "mac32" ]; then
|
||||
ReleasePath="./../Mac/Release"
|
||||
BinaryName="Telegram"
|
||||
elif [ "$BuildTarget" == "macstore" ]; then
|
||||
if [ "$BetaVersion" != "0" ]; then
|
||||
echo "Can't build macstore beta version!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Building version $AppVersionStrFull for Mac App Store.."
|
||||
ReleasePath="./../Mac/Release"
|
||||
BinaryName="Telegram Desktop"
|
||||
@@ -54,27 +77,56 @@ else
|
||||
fi
|
||||
|
||||
#if [ "$BuildTarget" == "linux" ] || [ "$BuildTarget" == "linux32" ] || [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "mac32" ] || [ "$BuildTarget" == "macstore" ]; then
|
||||
if [ -d "$ReleasePath/deploy/$AppVersionStrMajor/$AppVersionStr.dev" ]; then
|
||||
echo "Deploy folder for version $AppVersionStr.dev already exists!"
|
||||
exit 1
|
||||
fi
|
||||
if [ "$BetaVersion" != "0" ]; then
|
||||
if [ -f "$ReleasePath/$BetaKeyFile" ]; then
|
||||
echo "Beta version key file for version $AppVersion already exists!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -d "$ReleasePath/deploy/$AppVersionStrMajor/$AppVersionStr" ]; then
|
||||
echo "Deploy folder for version $AppVersionStr already exists!"
|
||||
exit 1
|
||||
fi
|
||||
if [ -d "$ReleasePath/deploy/$AppVersionStrMajor/$AppVersionStrFull" ]; then
|
||||
echo "Deploy folder for version $AppVersionStrFull already exists!"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
if [ -d "$ReleasePath/deploy/$AppVersionStrMajor/$AppVersionStr.dev" ]; then
|
||||
echo "Deploy folder for version $AppVersionStr.dev already exists!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -f "$ReleasePath/$UpdateFile" ]; then
|
||||
echo "Update file for version $AppVersion already exists!"
|
||||
exit 1
|
||||
if [ -f "$ReleasePath/$UpdateFile" ]; then
|
||||
echo "Update file for version $AppVersion already exists!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -d "$ReleasePath/deploy/$AppVersionStrMajor/$AppVersionStr" ]; then
|
||||
echo "Deploy folder for version $AppVersionStr already exists!"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
DeployPath="$ReleasePath/deploy/$AppVersionStrMajor/$AppVersionStrFull"
|
||||
#fi
|
||||
|
||||
if [ "$BuildTarget" == "linux" ] || [ "$BuildTarget" == "linux32" ]; then
|
||||
if [ ! -f "$ReleasePath/Telegram" ]; then
|
||||
echo "Telegram not found!"
|
||||
|
||||
DropboxSymbolsPath="/media/psf/Home/Dropbox/Telegram/symbols"
|
||||
|
||||
mkdir -p "$WorkPath/ReleaseIntermediateUpdater"
|
||||
cd "$WorkPath/ReleaseIntermediateUpdater"
|
||||
/usr/local/Qt-5.5.1/bin/qmake "$HomePath/Updater.pro" -r -spec linux-g++
|
||||
make
|
||||
echo "Updater build complete!"
|
||||
cd "$HomePath"
|
||||
|
||||
mkdir -p "$WorkPath/ReleaseIntermediate"
|
||||
cd "$WorkPath/ReleaseIntermediate"
|
||||
/usr/local/Qt-5.5.1/bin/qmake "$HomePath/Telegram.pro" -r -spec linux-g++
|
||||
eval "$FixScript"
|
||||
make
|
||||
echo "$BinaryName build complete!"
|
||||
cd "$HomePath"
|
||||
if [ ! -f "$ReleasePath/$BinaryName" ]; then
|
||||
echo "$BinaryName not found!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -83,10 +135,38 @@ if [ "$BuildTarget" == "linux" ] || [ "$BuildTarget" == "linux32" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Dumping debug symbols.."
|
||||
"./../../Libraries/breakpad/src/tools/linux/dump_syms/dump_syms" "$ReleasePath/$BinaryName" > "$ReleasePath/$BinaryName.sym"
|
||||
echo "Done!"
|
||||
|
||||
echo "Stripping the executable.."
|
||||
strip -s "$ReleasePath/$BinaryName"
|
||||
echo "Done!"
|
||||
|
||||
echo "Preparing version $AppVersionStrFull, executing Packer.."
|
||||
cd $ReleasePath && ./Packer -path Telegram -path Updater -version $AppVersion $DevParam && cd ./../../Telegram
|
||||
cd "$ReleasePath" && "./Packer" -path "$BinaryName" -path Updater -version $VersionForPacker $DevParam && cd "$HomePath"
|
||||
echo "Packer done!"
|
||||
|
||||
if [ "$BetaVersion" != "0" ]; then
|
||||
if [ ! -f "$ReleasePath/$BetaKeyFile" ]; then
|
||||
echo "Beta version key file not found!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
while IFS='' read -r line || [[ -n "$line" ]]; do
|
||||
BetaSignature="$line"
|
||||
done < "$ReleasePath/$BetaKeyFile"
|
||||
|
||||
UpdateFile="${UpdateFile}_${BetaSignature}"
|
||||
SetupFile="tbeta${BetaVersion}_${BetaSignature}.tar.xz"
|
||||
fi
|
||||
|
||||
SymbolsHash=`head -n 1 "$ReleasePath/$BinaryName.sym" | awk -F " " 'END {print $4}'`
|
||||
echo "Copying $BinaryName.sym to $DropboxSymbolsPath/$BinaryName/$SymbolsHash"
|
||||
mkdir -p "$DropboxSymbolsPath/$BinaryName/$SymbolsHash"
|
||||
cp "$ReleasePath/$BinaryName.sym" "$DropboxSymbolsPath/$BinaryName/$SymbolsHash/"
|
||||
echo "Done!"
|
||||
|
||||
if [ ! -d "$ReleasePath/deploy" ]; then
|
||||
mkdir "$ReleasePath/deploy"
|
||||
fi
|
||||
@@ -95,19 +175,26 @@ if [ "$BuildTarget" == "linux" ] || [ "$BuildTarget" == "linux32" ]; then
|
||||
mkdir "$ReleasePath/deploy/$AppVersionStrMajor"
|
||||
fi
|
||||
|
||||
echo "Copying Telegram, Updater and $UpdateFile to deploy/$AppVersionStrMajor/$AppVersionStrFull..";
|
||||
echo "Copying $BinaryName, Updater and $UpdateFile to deploy/$AppVersionStrMajor/$AppVersionStrFull..";
|
||||
mkdir "$DeployPath"
|
||||
mkdir "$DeployPath/Telegram"
|
||||
mv $ReleasePath/Telegram $DeployPath/Telegram/
|
||||
mv $ReleasePath/Updater $DeployPath/Telegram/
|
||||
mv $ReleasePath/$UpdateFile $DeployPath/
|
||||
cd $DeployPath && tar -cJvf $SetupFile Telegram/ && cd ./../../../../../Telegram
|
||||
mkdir "$DeployPath/$BinaryName"
|
||||
mv "$ReleasePath/$BinaryName" "$DeployPath/$BinaryName/"
|
||||
mv "$ReleasePath/Updater" "$DeployPath/$BinaryName/"
|
||||
mv "$ReleasePath/$UpdateFile" "$DeployPath/"
|
||||
if [ "$BetaVersion" != "0" ]; then
|
||||
mv "$ReleasePath/$BetaKeyFile" "$DeployPath/"
|
||||
fi
|
||||
cd "$DeployPath" && tar -cJvf "$SetupFile" "$BinaryName/" && cd "./../../../$HomePath"
|
||||
fi
|
||||
|
||||
if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "mac32" ] || [ "$BuildTarget" == "macstore" ]; then
|
||||
|
||||
touch ./SourceFiles/telegram.qrc or exit 1
|
||||
xcodebuild -project Telegram.xcodeproj -alltargets -configuration Release build or exit 1
|
||||
DropboxSymbolsPath="./../../../Dropbox/Telegram/symbols"
|
||||
|
||||
if [ "$FastParam" != "fast" ]; then
|
||||
touch "./SourceFiles/telegram.qrc"
|
||||
fi
|
||||
xcodebuild -project Telegram.xcodeproj -alltargets -configuration Release build
|
||||
|
||||
if [ ! -d "$ReleasePath/$BinaryName.app" ]; then
|
||||
echo "$BinaryName.app not found!"
|
||||
@@ -119,6 +206,28 @@ if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "mac32" ] || [ "$BuildTarg
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "mac32" ]; then
|
||||
echo "Removing Updater debug symbols.."
|
||||
rm -rf "$ReleasePath/$BinaryName.app/Contents/Frameworks/Updater.dSYM"
|
||||
echo "Done!"
|
||||
fi
|
||||
|
||||
echo "Dumping debug symbols.."
|
||||
"./../../Libraries/breakpad/src/tools/mac/dump_syms/build/Release/dump_syms" "$ReleasePath/$BinaryName.app.dSYM" > "$ReleasePath/$BinaryName.sym" 2>/dev/null
|
||||
echo "Done!"
|
||||
|
||||
echo "Stripping the executable.."
|
||||
strip "$ReleasePath/$BinaryName.app/Contents/MacOS/$BinaryName"
|
||||
echo "Done!"
|
||||
|
||||
echo "Signing the application.."
|
||||
if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "mac32" ]; then
|
||||
codesign --force --deep --sign "Developer ID Application: John Preston" "$ReleasePath/$BinaryName.app"
|
||||
elif [ "$BuildTarget" == "macstore" ]; then
|
||||
codesign --force --deep --sign "3rd Party Mac Developer Application: TELEGRAM MESSENGER LLP (6N38VWS5BX)" "$ReleasePath/$BinaryName.app" --entitlements "Telegram/Telegram Desktop.entitlements"
|
||||
fi
|
||||
echo "Done!"
|
||||
|
||||
AppUUID=`dwarfdump -u "$ReleasePath/$BinaryName.app/Contents/MacOS/$BinaryName" | awk -F " " '{print $2}'`
|
||||
DsymUUID=`dwarfdump -u "$ReleasePath/$BinaryName.app.dSYM" | awk -F " " '{print $2}'`
|
||||
if [ "$AppUUID" != "$DsymUUID" ]; then
|
||||
@@ -153,15 +262,38 @@ if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "mac32" ] || [ "$BuildTarg
|
||||
fi
|
||||
fi
|
||||
|
||||
SymbolsHash=`head -n 1 "$ReleasePath/$BinaryName.sym" | awk -F " " 'END {print $4}'`
|
||||
echo "Copying $BinaryName.sym to $DropboxSymbolsPath/$BinaryName/$SymbolsHash"
|
||||
mkdir -p "$DropboxSymbolsPath/$BinaryName/$SymbolsHash"
|
||||
cp "$ReleasePath/$BinaryName.sym" "$DropboxSymbolsPath/$BinaryName/$SymbolsHash/"
|
||||
echo "Done!"
|
||||
|
||||
if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "mac32" ]; then
|
||||
cd $ReleasePath
|
||||
temppath=`hdiutil attach -readwrite tsetup.dmg | awk -F "\t" 'END {print $3}'`
|
||||
cp -R "./$BinaryName.app" "$temppath/"
|
||||
bless --folder "$temppath/" --openfolder "$temppath/"
|
||||
hdiutil detach "$temppath"
|
||||
hdiutil convert tsetup.dmg -format UDZO -imagekey zlib-level=9 -ov -o $SetupFile
|
||||
cd ./../../Telegram
|
||||
cd $ReleasePath && ./Packer.app/Contents/MacOS/Packer -path "$BinaryName.app" -version $AppVersion $DevParam && cd ./../../Telegram
|
||||
if [ "$BetaVersion" == "0" ]; then
|
||||
cd "$ReleasePath"
|
||||
temppath=`hdiutil attach -readwrite tsetup.dmg | awk -F "\t" 'END {print $3}'`
|
||||
cp -R "./$BinaryName.app" "$temppath/"
|
||||
bless --folder "$temppath/" --openfolder "$temppath/"
|
||||
hdiutil detach "$temppath"
|
||||
hdiutil convert tsetup.dmg -format UDZO -imagekey zlib-level=9 -ov -o "$SetupFile"
|
||||
cd "./../../Telegram"
|
||||
fi
|
||||
cd "$ReleasePath" && "./Packer.app/Contents/MacOS/Packer" -path "$BinaryName.app" -version $VersionForPacker $DevParam && cd "$HomePath"
|
||||
echo "Packer done!"
|
||||
|
||||
if [ "$BetaVersion" != "0" ]; then
|
||||
if [ ! -f "$ReleasePath/$BetaKeyFile" ]; then
|
||||
echo "Beta version key file not found!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
while IFS='' read -r line || [[ -n "$line" ]]; do
|
||||
BetaSignature="$line"
|
||||
done < "$ReleasePath/$BetaKeyFile"
|
||||
|
||||
UpdateFile="${UpdateFile}_${BetaSignature}"
|
||||
SetupFile="tbeta${BetaVersion}_${BetaSignature}.zip"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -d "$ReleasePath/deploy" ]; then
|
||||
@@ -175,14 +307,18 @@ if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "mac32" ] || [ "$BuildTarg
|
||||
if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "mac32" ]; then
|
||||
echo "Copying $BinaryName.app and $UpdateFile to deploy/$AppVersionStrMajor/$AppVersionStr..";
|
||||
mkdir "$DeployPath"
|
||||
mkdir "$DeployPath/Telegram"
|
||||
cp -r "$ReleasePath/$BinaryName.app" $DeployPath/Telegram/
|
||||
mv "$ReleasePath/$BinaryName.app.dSYM" $DeployPath/
|
||||
mkdir "$DeployPath/$BinaryName"
|
||||
cp -r "$ReleasePath/$BinaryName.app" "$DeployPath/$BinaryName/"
|
||||
if [ "$BetaVersion" != "0" ]; then
|
||||
cd "$DeployPath" && zip -r "$SetupFile" "$BinaryName" && mv "$SetupFile" "./../../../" && cd "./../../../$HomePath"
|
||||
mv "$ReleasePath/$BetaKeyFile" "$DeployPath/"
|
||||
fi
|
||||
mv "$ReleasePath/$BinaryName.app.dSYM" "$DeployPath/"
|
||||
rm "$ReleasePath/$BinaryName.app/Contents/MacOS/$BinaryName"
|
||||
rm "$ReleasePath/$BinaryName.app/Contents/Frameworks/Updater"
|
||||
rm -rf "$ReleasePath/$BinaryName.app/Contents/_CodeSignature"
|
||||
mv $ReleasePath/$UpdateFile $DeployPath/
|
||||
mv $ReleasePath/$SetupFile $DeployPath/
|
||||
mv "$ReleasePath/$UpdateFile" "$DeployPath/"
|
||||
mv "$ReleasePath/$SetupFile" "$DeployPath/"
|
||||
|
||||
if [ "$BuildTarget" == "mac32" ]; then
|
||||
ReleaseToPath="./../../../TBuild/tother/tmac32"
|
||||
@@ -195,19 +331,23 @@ if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "mac32" ] || [ "$BuildTarg
|
||||
mkdir "$DeployToPath"
|
||||
fi
|
||||
|
||||
cp -v $DeployPath/$UpdateFile $DeployToPath/
|
||||
cp -v $DeployPath/$SetupFile $DeployToPath/
|
||||
cp -rv $DeployPath/$BinaryName.app.dSYM $DeployToPath/
|
||||
cp -v "$DeployPath/$UpdateFile" "$DeployToPath/"
|
||||
cp -v "$DeployPath/$SetupFile" "$DeployToPath/"
|
||||
cp -rv "$DeployPath/$BinaryName.app.dSYM" "$DeployToPath/"
|
||||
if [ "$BetaVersion" != "0" ]; then
|
||||
cp -v "$DeployPath/$BetaKeyFile" "$DeployToPath/"
|
||||
fi
|
||||
fi
|
||||
elif [ "$BuildTarget" == "macstore" ]; then
|
||||
echo "Copying $BinaryName.app to deploy/$AppVersionStrMajor/$AppVersionStr..";
|
||||
mkdir "$DeployPath"
|
||||
cp -r "$ReleasePath/$BinaryName.app" $DeployPath/
|
||||
mv "$ReleasePath/$BinaryName.pkg" $DeployPath/
|
||||
mv "$ReleasePath/$BinaryName.app.dSYM" $DeployPath/
|
||||
cp -r "$ReleasePath/$BinaryName.app" "$DeployPath/"
|
||||
mv "$ReleasePath/$BinaryName.pkg" "$DeployPath/"
|
||||
mv "$ReleasePath/$BinaryName.app.dSYM" "$DeployPath/"
|
||||
rm "$ReleasePath/$BinaryName.app/Contents/MacOS/$BinaryName"
|
||||
rm -rf "$ReleasePath/$BinaryName.app/Contents/_CodeSignature"
|
||||
|
||||
mkdir -p "$DropboxDeployPath"
|
||||
cp -v "$DeployPath/$BinaryName.app" "$DropboxDeployPath/"
|
||||
cp -rv "$DeployPath/$BinaryName.app.dSYM" "$DropboxDeployPath/"
|
||||
fi
|
||||
|
||||
@@ -1,123 +0,0 @@
|
||||
@echo OFF
|
||||
FOR /F "tokens=1,2* delims= " %%i in (Version) do set "%%i=%%j"
|
||||
|
||||
if %DevChannel% neq 0 goto preparedev
|
||||
|
||||
set "DevParam="
|
||||
set "AppVersionStrFull=%AppVersionStr%"
|
||||
goto devprepared
|
||||
|
||||
:preparedev
|
||||
|
||||
set "DevParam=-dev"
|
||||
set "AppVersionStrFull=%AppVersionStr%.dev"
|
||||
|
||||
:devprepared
|
||||
|
||||
echo.
|
||||
echo Building version %AppVersionStrFull% for Windows..
|
||||
echo.
|
||||
|
||||
if exist ..\Win32\Deploy\deploy\%AppVersionStrMajor%\%AppVersionStr%\ goto error_exist1
|
||||
if exist ..\Win32\Deploy\deploy\%AppVersionStrMajor%\%AppVersionStr%.dev\ goto error_exist2
|
||||
if exist ..\Win32\Deploy\tupdate%AppVersion% goto error_exist3
|
||||
|
||||
cd SourceFiles\
|
||||
copy telegram.qrc /B+,,/Y
|
||||
cd ..\
|
||||
if %errorlevel% neq 0 goto error
|
||||
|
||||
cd ..\
|
||||
MSBuild Telegram.sln /property:Configuration=Deploy
|
||||
if %errorlevel% neq 0 goto error0
|
||||
|
||||
echo .
|
||||
echo Version %AppVersionStrFull% build successfull! Preparing..
|
||||
echo .
|
||||
|
||||
set "PATH=%PATH%;C:\Program Files\7-Zip;C:\Program Files (x86)\Inno Setup 5"
|
||||
cd Win32\Deploy\
|
||||
|
||||
call ..\..\..\TelegramPrivate\Sign.bat Telegram.exe
|
||||
if %errorlevel% neq 0 goto error1
|
||||
|
||||
call ..\..\..\TelegramPrivate\Sign.bat Updater.exe
|
||||
if %errorlevel% neq 0 goto error1
|
||||
|
||||
iscc /dMyAppVersion=%AppVersionStrSmall% /dMyAppVersionZero=%AppVersionStr% /dMyAppVersionFull=%AppVersionStrFull% ..\..\Telegram\Setup.iss
|
||||
if %errorlevel% neq 0 goto error1
|
||||
|
||||
call ..\..\..\TelegramPrivate\Sign.bat tsetup.%AppVersionStrFull%.exe
|
||||
if %errorlevel% neq 0 goto error1
|
||||
|
||||
call Packer.exe -version %AppVersion% -path Telegram.exe -path Updater.exe %DevParam%
|
||||
if %errorlevel% neq 0 goto error1
|
||||
|
||||
if not exist deploy mkdir deploy
|
||||
if not exist deploy\%AppVersionStrMajor% mkdir deploy\%AppVersionStrMajor%
|
||||
mkdir deploy\%AppVersionStrMajor%\%AppVersionStrFull%
|
||||
mkdir deploy\%AppVersionStrMajor%\%AppVersionStrFull%\Telegram
|
||||
if %errorlevel% neq 0 goto error1
|
||||
|
||||
move Telegram.exe deploy\%AppVersionStrMajor%\%AppVersionStrFull%\Telegram\
|
||||
move Updater.exe deploy\%AppVersionStrMajor%\%AppVersionStrFull%\
|
||||
move Telegram.pdb deploy\%AppVersionStrMajor%\%AppVersionStrFull%\
|
||||
move Updater.pdb deploy\%AppVersionStrMajor%\%AppVersionStrFull%\
|
||||
move tsetup.%AppVersionStrFull%.exe deploy\%AppVersionStrMajor%\%AppVersionStrFull%\
|
||||
move tupdate%AppVersion% deploy\%AppVersionStrMajor%\%AppVersionStrFull%\
|
||||
if %errorlevel% neq 0 goto error1
|
||||
|
||||
cd deploy\%AppVersionStrMajor%\%AppVersionStrFull%\
|
||||
7z a -mx9 tportable.%AppVersionStrFull%.zip Telegram\
|
||||
if %errorlevel% neq 0 goto error2
|
||||
|
||||
echo .
|
||||
echo Version %AppVersionStrFull% is ready for deploy!
|
||||
echo .
|
||||
|
||||
if not exist tupdate%AppVersion% goto error2
|
||||
if not exist tportable.%AppVersionStrFull%.zip goto error2
|
||||
if not exist tsetup.%AppVersionStrFull%.exe goto error2
|
||||
if not exist Telegram.pdb goto error2
|
||||
if not exist Updater.exe goto error2
|
||||
if not exist Updater.pdb goto error2
|
||||
if not exist Z:\TBuild\tother\tsetup\%AppVersionStrMajor% mkdir Z:\TBuild\tother\tsetup\%AppVersionStrMajor%
|
||||
if not exist Z:\TBuild\tother\tsetup\%AppVersionStrMajor%\%AppVersionStrFull% mkdir Z:\TBuild\tother\tsetup\%AppVersionStrMajor%\%AppVersionStrFull%
|
||||
|
||||
xcopy tupdate%AppVersion% Z:\TBuild\tother\tsetup\%AppVersionStrMajor%\%AppVersionStrFull%\
|
||||
xcopy tportable.%AppVersionStrFull%.zip Z:\TBuild\tother\tsetup\%AppVersionStrMajor%\%AppVersionStrFull%\
|
||||
xcopy tsetup.%AppVersionStrFull%.exe Z:\TBuild\tother\tsetup\%AppVersionStrMajor%\%AppVersionStrFull%\
|
||||
xcopy Telegram.pdb Z:\TBuild\tother\tsetup\%AppVersionStrMajor%\%AppVersionStrFull%\
|
||||
xcopy Updater.exe Z:\TBuild\tother\tsetup\%AppVersionStrMajor%\%AppVersionStrFull%\
|
||||
xcopy Updater.pdb Z:\TBuild\tother\tsetup\%AppVersionStrMajor%\%AppVersionStrFull%\
|
||||
|
||||
echo Version %AppVersionStrFull% is ready!
|
||||
|
||||
cd ..\..\..\..\..\Telegram\
|
||||
goto eof
|
||||
|
||||
:error2
|
||||
cd ..\..\..\
|
||||
:error1
|
||||
cd ..\..\
|
||||
:error0
|
||||
cd Telegram\
|
||||
goto error
|
||||
|
||||
:error_exist1
|
||||
echo Deploy folder for version %AppVersionStr% already exists!
|
||||
exit /b 1
|
||||
|
||||
:error_exist2
|
||||
echo Deploy folder for version %AppVersionStr%.dev already exists!
|
||||
exit /b 1
|
||||
|
||||
:error_exist3
|
||||
echo Update file for version %AppVersion% already exists!
|
||||
exit /b 1
|
||||
|
||||
:error
|
||||
echo ERROR occured!
|
||||
exit /b %errorlevel%
|
||||
|
||||
:eof
|
||||
@@ -1,17 +1,27 @@
|
||||
set -e
|
||||
|
||||
DeployTarget="$1"
|
||||
|
||||
while IFS='' read -r line || [[ -n "$line" ]]; do
|
||||
set $line
|
||||
eval $1="$2"
|
||||
done < Version
|
||||
|
||||
AppVersionStrFull="$AppVersionStr"
|
||||
DevParam=''
|
||||
if [ "$DevChannel" != "0" ]; then
|
||||
if [ "$BetaVersion" != "0" ]; then
|
||||
AppVersion="$BetaVersion"
|
||||
AppVersionStrFull="${AppVersionStr}_${BetaVersion}"
|
||||
DevParam="-beta $BetaVersion"
|
||||
BetaKeyFile="tbeta_${AppVersion}_key"
|
||||
elif [ "$DevChannel" == "0" ]; then
|
||||
AppVersionStrFull="$AppVersionStr"
|
||||
DevParam=''
|
||||
else
|
||||
AppVersionStrFull="$AppVersionStr.dev"
|
||||
DevParam='-dev'
|
||||
fi
|
||||
|
||||
if [ ! -f "Target" ]; then
|
||||
echo "Build target not found!"
|
||||
echo "Deploy target not found!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -33,7 +43,28 @@ elif [ "$BuildTarget" == "linux32" ]; then
|
||||
ReleasePath="./../Linux/Release"
|
||||
RemoteFolder="tlinux32"
|
||||
elif [ "$BuildTarget" == "mac" ]; then
|
||||
echo "Deploying three versions of $AppVersionStrFull: for Windows, OS X 10.6 and 10.7 and OS X 10.8+.."
|
||||
DeployMac="0"
|
||||
DeployMac32="0"
|
||||
DeployWin="0"
|
||||
if [ "$DeployTarget" == "mac" ]; then
|
||||
DeployMac="1"
|
||||
echo "Deploying version $AppVersionStrFull for OS X 10.8+.."
|
||||
elif [ "$DeployTarget" == "mac32" ]; then
|
||||
DeployMac32="1"
|
||||
echo "Deploying version $AppVersionStrFull for OS X 10.6 and 10.7.."
|
||||
elif [ "$DeployTarget" == "win" ]; then
|
||||
DeployWin="1"
|
||||
echo "Deploying version $AppVersionStrFull for Windows.."
|
||||
else
|
||||
DeployMac="1"
|
||||
if [ "$BetaVersion" != "0" ]; then
|
||||
DeployMac32="0"
|
||||
else
|
||||
DeployMac32="1"
|
||||
fi
|
||||
DeployWin="1"
|
||||
echo "Deploying three versions of $AppVersionStrFull: for Windows, OS X 10.6 and 10.7 and OS X 10.8+.."
|
||||
fi
|
||||
UpdateFile="tmacupd$AppVersion"
|
||||
SetupFile="tsetup.$AppVersionStrFull.dmg"
|
||||
ReleasePath="./../Mac/Release"
|
||||
@@ -45,10 +76,12 @@ elif [ "$BuildTarget" == "mac" ]; then
|
||||
WinDeployPath="./../../tother/tsetup/$AppVersionStrMajor/$AppVersionStrFull"
|
||||
WinUpdateFile="tupdate$AppVersion"
|
||||
WinSetupFile="tsetup.$AppVersionStrFull.exe"
|
||||
WinPortableFile="tportable.$AppVersionStr.zip"
|
||||
WinPortableFile="tportable.$AppVersionStrFull.zip"
|
||||
WinRemoteFolder="tsetup"
|
||||
DropboxPath="./../../../Dropbox/Telegram/deploy/$AppVersionStrMajor"
|
||||
DropboxDeployPath="$DropboxPath/$AppVersionStrFull"
|
||||
DropboxSetupFile="$SetupFile"
|
||||
DropboxMac32SetupFile="$Mac32SetupFile"
|
||||
elif [ "$BuildTarget" == "mac32" ] || [ "$BuildTarget" = "macstore" ]; then
|
||||
echo "No need to deploy this target."
|
||||
exit
|
||||
@@ -59,69 +92,128 @@ fi
|
||||
|
||||
DeployPath="$ReleasePath/deploy/$AppVersionStrMajor/$AppVersionStrFull"
|
||||
|
||||
#if [ "$BuildTarget" == "linux" ] || [ "$BuildTarget" == "linux32" ] || [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "mac32" ] || [ "$BuildTarget" == "macstore" ]; then
|
||||
|
||||
if [ ! -f "$DeployPath/$UpdateFile" ]; then
|
||||
echo "$UpdateFile not found!";
|
||||
exit 1
|
||||
if [ "$BetaVersion" != "0" ]; then
|
||||
if [ "$DeployTarget" == "win" ]; then
|
||||
BetaFilePath="$WinDeployPath/$BetaKeyFile"
|
||||
elif [ "$DeployTarget" == "mac32" ]; then
|
||||
BetaFilePath="$Mac32DeployPath/$BetaKeyFile"
|
||||
else
|
||||
BetaFilePath="$DeployPath/$BetaKeyFile"
|
||||
fi
|
||||
if [ ! -f "$BetaFilePath" ]; then
|
||||
echo "Beta key file for $AppVersionStrFull not found :("
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -f "$DeployPath/$SetupFile" ]; then
|
||||
while IFS='' read -r line || [[ -n "$line" ]]; do
|
||||
BetaSignature="$line"
|
||||
done < "$BetaFilePath"
|
||||
|
||||
UpdateFile="${UpdateFile}_${BetaSignature}"
|
||||
if [ "$BuildTarget" == "linux" ] || [ "$BuildTarget" == "linux32" ]; then
|
||||
SetupFile="tbeta${BetaVersion}_${BetaSignature}.tar.xz"
|
||||
elif [ "$BuildTarget" == "mac" ]; then
|
||||
SetupFile="tbeta${BetaVersion}_${BetaSignature}.zip"
|
||||
DropboxSetupFile="tbeta${BetaVersion}_${BetaSignature}_mac.zip"
|
||||
Mac32UpdateFile="${Mac32UpdateFile}_${BetaSignature}"
|
||||
Mac32SetupFile="tbeta${BetaVersion}_${BetaSignature}.zip"
|
||||
DropboxMac32SetupFile="tbeta${BetaVersion}_${BetaSignature}_mac32.zip"
|
||||
WinUpdateFile="${WinUpdateFile}_${BetaSignature}"
|
||||
WinPortableFile="tbeta${BetaVersion}_${BetaSignature}.zip"
|
||||
fi
|
||||
fi
|
||||
|
||||
#if [ "$BuildTarget" == "linux" ] || [ "$BuildTarget" == "linux32" ] || [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "mac32" ] || [ "$BuildTarget" == "macstore" ]; then
|
||||
|
||||
if [ "$BuildTarget" != "mac" ] || [ "$DeployMac" == "1" ]; then
|
||||
if [ ! -f "$DeployPath/$UpdateFile" ]; then
|
||||
echo "$UpdateFile not found!";
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -f "$DeployPath/$SetupFile" ]; then
|
||||
echo "$SetupFile not found!"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$BuildTarget" == "mac" ]; then
|
||||
if [ ! -f "$Mac32DeployPath/$Mac32UpdateFile" ]; then
|
||||
echo "$Mac32UpdateFile not found!"
|
||||
exit 1
|
||||
if [ "$DeployMac32" == "1" ]; then
|
||||
if [ ! -f "$Mac32DeployPath/$Mac32UpdateFile" ]; then
|
||||
echo "$Mac32UpdateFile not found!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -f "$Mac32DeployPath/$Mac32SetupFile" ]; then
|
||||
echo "$Mac32SetupFile not found!"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -f "$Mac32DeployPath/$Mac32SetupFile" ]; then
|
||||
echo "$Mac32SetupFile not found!"
|
||||
exit 1
|
||||
if [ "$DeployWin" == "1" ]; then
|
||||
if [ ! -f "$WinDeployPath/$WinUpdateFile" ]; then
|
||||
echo "$WinUpdateFile not found!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ "$BetaVersion" == "0" ]; then
|
||||
if [ ! -f "$WinDeployPath/$WinSetupFile" ]; then
|
||||
echo "$WinSetupFile not found!"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -f "$WinDeployPath/$WinPortableFile" ]; then
|
||||
echo "$WinPortableFile not found!"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -f "$WinDeployPath/$WinUpdateFile" ]; then
|
||||
echo "$WinUpdateFile not found!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -f "$WinDeployPath/$WinSetupFile" ]; then
|
||||
echo "$WinSetupFile not found!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -f "$WinDeployPath/$WinPortableFile" ]; then
|
||||
echo "$WinPortableFile not found!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -d "./../../../Dropbox/Telegram/deploy/$AppVersionStrMajor" ]; then
|
||||
mkdir "./../../../Dropbox/Telegram/deploy/$AppVersionStrMajor"
|
||||
fi
|
||||
mkdir -p "$DropboxDeployPath"
|
||||
fi
|
||||
#fi
|
||||
|
||||
if [ "$BuildTarget" == "linux" ] || [ "$BuildTarget" == "linux32" ] || [ "$BuildTarget" == "mac" ]; then
|
||||
scp "$DeployPath/$UpdateFile" "tmaster:tdesktop/www/$RemoteFolder/"
|
||||
scp "$DeployPath/$SetupFile" "tmaster:tdesktop/www/$RemoteFolder/"
|
||||
|
||||
if [ "$BuildTarget" != "mac" ] || [ "$DeployMac" == "1" ]; then
|
||||
scp "$DeployPath/$UpdateFile" "tmaster:tdesktop/www/$RemoteFolder/"
|
||||
scp "$DeployPath/$SetupFile" "tmaster:tdesktop/www/$RemoteFolder/"
|
||||
fi
|
||||
if [ "$BuildTarget" == "mac" ]; then
|
||||
scp "$Mac32DeployPath/$Mac32UpdateFile" "tmaster:tdesktop/www/$Mac32RemoteFolder/"
|
||||
scp "$Mac32DeployPath/$Mac32SetupFile" "tmaster:tdesktop/www/$Mac32RemoteFolder/"
|
||||
scp "$WinDeployPath/$WinUpdateFile" "tmaster:tdesktop/www/$WinRemoteFolder/"
|
||||
scp "$WinDeployPath/$WinSetupFile" "tmaster:tdesktop/www/$WinRemoteFolder/"
|
||||
scp "$WinDeployPath/$WinPortableFile" "tmaster:tdesktop/www/$WinRemoteFolder/"
|
||||
if [ "$DeployMac32" == "1" ]; then
|
||||
scp "$Mac32DeployPath/$Mac32UpdateFile" "tmaster:tdesktop/www/$Mac32RemoteFolder/"
|
||||
scp "$Mac32DeployPath/$Mac32SetupFile" "tmaster:tdesktop/www/$Mac32RemoteFolder/"
|
||||
fi
|
||||
if [ "$DeployWin" == "1" ]; then
|
||||
scp "$WinDeployPath/$WinUpdateFile" "tmaster:tdesktop/www/$WinRemoteFolder/"
|
||||
if [ "$BetaVersion" == "0" ]; then
|
||||
scp "$WinDeployPath/$WinSetupFile" "tmaster:tdesktop/www/$WinRemoteFolder/"
|
||||
fi
|
||||
scp "$WinDeployPath/$WinPortableFile" "tmaster:tdesktop/www/$WinRemoteFolder/"
|
||||
fi
|
||||
|
||||
mv -v "$WinDeployPath" "$DropboxPath/"
|
||||
|
||||
cp -v "$DeployPath/$UpdateFile" "$DropboxDeployPath/"
|
||||
cp -v "$DeployPath/$SetupFile" "$DropboxDeployPath/"
|
||||
cp -rv "$DeployPath/Telegram.app.dSYM" "$DropboxDeployPath/"
|
||||
cp -v "$Mac32DeployPath/$Mac32UpdateFile" "$DropboxDeployPath/"
|
||||
cp -v "$Mac32DeployPath/$Mac32SetupFile" "$DropboxDeployPath/"
|
||||
cp -rv "$DeployPath/Telegram.app.dSYM" "$DropboxDeployPath/Telegram32.app.dSYM"
|
||||
if [ "$DeployMac" == "1" ]; then
|
||||
cp -v "$DeployPath/$SetupFile" "$DropboxDeployPath/$DropboxSetupFile"
|
||||
if [ -d "$DropboxDeployPath/Telegram.app.dSYM" ]; then
|
||||
rm -rf "$DropboxDeployPath/Telegram.app.dSYM"
|
||||
fi
|
||||
cp -rv "$DeployPath/Telegram.app.dSYM" "$DropboxDeployPath/"
|
||||
fi
|
||||
if [ "$DeployMac32" == "1" ]; then
|
||||
mv -v "$Mac32DeployPath/$Mac32SetupFile" "$DropboxDeployPath/$DropboxMac32SetupFile"
|
||||
if [ -d "$DropboxDeployPath/Telegram32.app.dSYM" ]; then
|
||||
rm -rf "$DropboxDeployPath/Telegram32.app.dSYM"
|
||||
fi
|
||||
mv -v "$Mac32DeployPath/Telegram.app.dSYM" "$DropboxDeployPath/Telegram32.app.dSYM"
|
||||
fi
|
||||
if [ "$DeployWin" == "1" ]; then
|
||||
mv -v "$WinDeployPath/Telegram.pdb" "$DropboxDeployPath/"
|
||||
mv -v "$WinDeployPath/Updater.exe" "$DropboxDeployPath/"
|
||||
mv -v "$WinDeployPath/Updater.pdb" "$DropboxDeployPath/"
|
||||
if [ "$BetaVersion" == "0" ]; then
|
||||
mv -v "$WinDeployPath/$WinSetupFile" "$DropboxDeployPath/"
|
||||
fi
|
||||
mv -v "$WinDeployPath/$WinPortableFile" "$DropboxDeployPath/"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
<key>CFBundleGetInfoString</key>
|
||||
<string>MetaEmoji compiler</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.tdesktop.${PRODUCT_NAME:rfc1034identifier}</string>
|
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleSignature</key>
|
||||
|
||||
@@ -11,21 +11,18 @@ Replace () {
|
||||
}
|
||||
|
||||
Replace '\-llzma' '\/usr\/lib\/x86_64\-linux\-gnu\/liblzma\.a'
|
||||
Replace '\-lz' '\/usr\/lib\/x86_64\-linux\-gnu\/libz\.a'
|
||||
Replace '\-lssl' '\/usr\/lib\/x86_64\-linux\-gnu\/libssl\.a'
|
||||
Replace '\-lcrypto' '\/usr\/lib\/x86_64\-linux\-gnu\/libcrypto\.a'
|
||||
Replace '\-lexif' '\/usr\/lib\/x86_64\-linux\-gnu\/libexif\.a'
|
||||
Replace '\-lgobject\-2\.0' '\/usr\/lib\/x86_64\-linux\-gnu\/libgobject\-2\.0\.a \/usr\/lib\/x86_64\-linux\-gnu\/libffi\.a'
|
||||
Replace '\-lXi' '\/usr\/lib\/x86_64\-linux\-gnu\/libXi\.a'
|
||||
Replace '\-lXi' '\/usr\/lib\/x86_64\-linux\-gnu\/libXi\.a \/usr\/lib\/x86_64\-linux\-gnu\/libXext\.a'
|
||||
Replace '\-lSM' '\/usr\/lib\/x86_64\-linux\-gnu\/libSM\.a'
|
||||
Replace '\-lICE' '\/usr\/lib\/x86_64\-linux\-gnu\/libICE\.a'
|
||||
Replace '\-lfontconfig' '\/usr\/lib\/x86_64\-linux\-gnu\/libfontconfig\.a \/usr\/lib\/x86_64\-linux\-gnu\/libexpat\.a'
|
||||
Replace '\-lfreetype' '\/usr\/lib\/x86_64\-linux\-gnu\/libfreetype\.a'
|
||||
Replace '\-lpng' '\/usr\/lib\/x86_64\-linux\-gnu\/libpng\.a'
|
||||
Replace '\-lXext' '\/usr\/lib\/x86_64\-linux\-gnu\/libXext\.a'
|
||||
Replace '\-lopus' '\/usr\/local\/lib\/libopus\.a'
|
||||
Replace '\-lopenal' '\/usr\/local\/lib\/libopenal\.a'
|
||||
Replace '\-lavformat' '\/usr\/local\/lib\/libavformat\.a'
|
||||
Replace '\-lavcodec' '\/usr\/local\/lib\/libavcodec\.a'
|
||||
Replace '\-lswresample' '\/usr\/local\/lib\/libswresample\.a'
|
||||
Replace '\-lswscale' '\/usr\/local\/lib\/libswscale\.a'
|
||||
Replace '\-lavutil' '\/usr\/local\/lib\/libavutil\.a'
|
||||
Replace '\-lva' '\/usr\/local\/lib\/libva\.a'
|
||||
Replace '\-lQt5Network' '\/usr\/local\/Qt-5.5.1\/lib\/libQt5Network.a \/usr\/local\/ssl\/lib\/libssl.a \/usr\/local\/ssl\/lib\/libcrypto.a'
|
||||
|
||||
@@ -11,21 +11,18 @@ Replace () {
|
||||
}
|
||||
|
||||
Replace '\-llzma' '\/usr\/lib\/i386\-linux\-gnu\/liblzma\.a'
|
||||
Replace '\-lz' '\/usr\/lib\/i386\-linux\-gnu\/libz\.a'
|
||||
Replace '\-lssl' '\/usr\/lib\/i386\-linux\-gnu\/libssl\.a'
|
||||
Replace '\-lcrypto' '\/usr\/lib\/i386\-linux\-gnu\/libcrypto\.a'
|
||||
Replace '\-lexif' '\/usr\/lib\/i386\-linux\-gnu\/libexif\.a'
|
||||
Replace '\-lgobject\-2\.0' '\/usr\/lib\/i386\-linux\-gnu\/libgobject\-2\.0\.a \/usr\/lib\/i386\-linux\-gnu\/libffi\.a'
|
||||
Replace '\-lXi' '\/usr\/lib\/i386\-linux\-gnu\/libXi\.a'
|
||||
Replace '\-lXi' '\/usr\/lib\/i386\-linux\-gnu\/libXi\.a \/usr\/lib\/i386\-linux\-gnu\/libXext\.a'
|
||||
Replace '\-lSM' '\/usr\/lib\/i386\-linux\-gnu\/libSM\.a'
|
||||
Replace '\-lICE' '\/usr\/lib\/i386\-linux\-gnu\/libICE\.a'
|
||||
Replace '\-lfontconfig' '\/usr\/lib\/i386\-linux\-gnu\/libfontconfig\.a \/usr\/lib\/i386\-linux\-gnu\/libexpat\.a'
|
||||
Replace '\-lfreetype' '\/usr\/lib\/i386\-linux\-gnu\/libfreetype\.a'
|
||||
Replace '\-lpng' '\/usr\/lib\/i386\-linux\-gnu\/libpng\.a'
|
||||
Replace '\-lXext' '\/usr\/lib\/i386\-linux\-gnu\/libXext\.a'
|
||||
Replace '\-lopus' '\/usr\/local\/lib\/libopus\.a'
|
||||
Replace '\-lopenal' '\/usr\/local\/lib\/libopenal\.a'
|
||||
Replace '\-lavformat' '\/usr\/local\/lib\/libavformat\.a'
|
||||
Replace '\-lavcodec' '\/usr\/local\/lib\/libavcodec\.a'
|
||||
Replace '\-lswresample' '\/usr\/local\/lib\/libswresample\.a'
|
||||
Replace '\-lswscale' '\/usr\/local\/lib\/libswscale\.a'
|
||||
Replace '\-lavutil' '\/usr\/local\/lib\/libavutil\.a'
|
||||
Replace '\-lva' '\/usr\/local\/lib\/libva\.a'
|
||||
Replace '\-lQt5Network' '\/usr\/local\/Qt-5.5.1\/lib\/libQt5Network.a \/usr\/local\/ssl\/lib\/libssl.a \/usr\/local\/ssl\/lib\/libcrypto.a'
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
<key>CFBundleGetInfoString</key>
|
||||
<string>MetaLang compiler</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.tdesktop.${PRODUCT_NAME:rfc1034identifier}</string>
|
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleSignature</key>
|
||||
|
||||
@@ -27,7 +27,7 @@ HEADERS += \
|
||||
./SourceFiles/_other/memain.h \
|
||||
./SourceFiles/_other/genemoji.h \
|
||||
|
||||
INCLUDEPATH += ./../../Libraries/QtStatic/qtbase/include/QtGui/5.5.0/QtGui\
|
||||
./../../Libraries/QtStatic/qtbase/include/QtCore/5.5.0/QtCore\
|
||||
INCLUDEPATH += ./../../Libraries/QtStatic/qtbase/include/QtGui/5.5.1/QtGui\
|
||||
./../../Libraries/QtStatic/qtbase/include/QtCore/5.5.1/QtCore\
|
||||
./../../Libraries/QtStatic/qtbase/include\
|
||||
|
||||
|
||||
@@ -54,15 +54,15 @@
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v120_xp</PlatformToolset>
|
||||
<PlatformToolset>v140_xp</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v120_xp</PlatformToolset>
|
||||
<PlatformToolset>v140_xp</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Deploy|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v120_xp</PlatformToolset>
|
||||
<PlatformToolset>v140_xp</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
|
||||
@@ -63,161 +63,161 @@
|
||||
/* End PBXContainerItemProxy section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
04391BE7A8B9D811E255100A /* Qt5Gui */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Gui; path = "/usr/local/Qt-5.5.0/lib/libQt5Gui$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
060A694B42A4555240009936 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtga.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtga.pri"; sourceTree = "<absolute>"; };
|
||||
075EB50EB07CF69FD62FB8DF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql_private.pri"; sourceTree = "<absolute>"; };
|
||||
07D795491B5544B200DE9598 /* qtpcre */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtpcre; path = "usr/local/Qt-5.5.0/lib/libqtpcre$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<group>"; };
|
||||
0ABCEA8D0DD45589040B0AF2 /* /usr/local/Qt-5.5.0/mkspecs/common/unix.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/unix.conf"; sourceTree = "<absolute>"; };
|
||||
111BBEE3D1432C3B517FD539 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdds.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdds.pri"; sourceTree = "<absolute>"; };
|
||||
16DD53E17C65AC8B450CC6C3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick.pri"; sourceTree = "<absolute>"; };
|
||||
04391BE7A8B9D811E255100A /* Qt5Gui */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Gui; path = "/usr/local/Qt-5.5.1/lib/libQt5Gui$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
060A694B42A4555240009936 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtga.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtga.pri"; sourceTree = "<absolute>"; };
|
||||
075EB50EB07CF69FD62FB8DF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql_private.pri"; sourceTree = "<absolute>"; };
|
||||
07D795491B5544B200DE9598 /* qtpcre */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtpcre; path = "usr/local/Qt-5.5.1/lib/libqtpcre$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<group>"; };
|
||||
0ABCEA8D0DD45589040B0AF2 /* /usr/local/Qt-5.5.1/mkspecs/common/unix.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/unix.conf"; sourceTree = "<absolute>"; };
|
||||
111BBEE3D1432C3B517FD539 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdds.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdds.pri"; sourceTree = "<absolute>"; };
|
||||
16DD53E17C65AC8B450CC6C3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick.pri"; sourceTree = "<absolute>"; };
|
||||
1F47C130E1F45B4A5A91DB5E /* genemoji.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = genemoji.cpp; path = SourceFiles/_other/genemoji.cpp; sourceTree = "<absolute>"; };
|
||||
1FAE75C970AA73F2DEDDB508 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfcamera.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfcamera.pri"; sourceTree = "<absolute>"; };
|
||||
23BC8B0FC3279421D41CA268 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui.pri"; sourceTree = "<absolute>"; };
|
||||
2440CD1D4CEF80443BCA1B8B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qgenericbearer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qgenericbearer.pri"; sourceTree = "<absolute>"; };
|
||||
247D8DF3B1DDB665B80BBA25 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblequick.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblequick.pri"; sourceTree = "<absolute>"; };
|
||||
24B6929EE3952310F2DAECB1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri"; sourceTree = "<absolute>"; };
|
||||
28BD0D10214709D95B161E24 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets.pri"; sourceTree = "<absolute>"; };
|
||||
293C8DEEE270847AC20E70F9 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network.pri"; sourceTree = "<absolute>"; };
|
||||
2E48BB382B895A5ACD79AF9F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth_private.pri"; sourceTree = "<absolute>"; };
|
||||
2E6D9B1D2743D24E31B0B284 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns.pri"; sourceTree = "<absolute>"; };
|
||||
311004331A04F3D69C98643C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport_private.pri"; sourceTree = "<absolute>"; };
|
||||
31120EDB269DFF13E1D49847 /* qicns */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qicns; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqicns$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
33F165B1DB8CBF182C56FAB5 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras_private.pri"; sourceTree = "<absolute>"; };
|
||||
346287C9E754E7C458153F03 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwbmp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwbmp.pri"; sourceTree = "<absolute>"; };
|
||||
360D4B3ED25D126430DE27D4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio.pri"; sourceTree = "<absolute>"; };
|
||||
3685604BDB64DD6E92169B73 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdeclarativeview.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdeclarativeview.pri"; sourceTree = "<absolute>"; };
|
||||
382E89A91A34F7898C25FD0D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network_private.pri"; sourceTree = "<absolute>"; };
|
||||
1FAE75C970AA73F2DEDDB508 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfcamera.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfcamera.pri"; sourceTree = "<absolute>"; };
|
||||
23BC8B0FC3279421D41CA268 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui.pri"; sourceTree = "<absolute>"; };
|
||||
2440CD1D4CEF80443BCA1B8B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qgenericbearer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qgenericbearer.pri"; sourceTree = "<absolute>"; };
|
||||
247D8DF3B1DDB665B80BBA25 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblequick.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblequick.pri"; sourceTree = "<absolute>"; };
|
||||
24B6929EE3952310F2DAECB1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri"; sourceTree = "<absolute>"; };
|
||||
28BD0D10214709D95B161E24 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets.pri"; sourceTree = "<absolute>"; };
|
||||
293C8DEEE270847AC20E70F9 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network.pri"; sourceTree = "<absolute>"; };
|
||||
2E48BB382B895A5ACD79AF9F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth_private.pri"; sourceTree = "<absolute>"; };
|
||||
2E6D9B1D2743D24E31B0B284 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns.pri"; sourceTree = "<absolute>"; };
|
||||
311004331A04F3D69C98643C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport_private.pri"; sourceTree = "<absolute>"; };
|
||||
31120EDB269DFF13E1D49847 /* qicns */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qicns; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqicns$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
33F165B1DB8CBF182C56FAB5 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras_private.pri"; sourceTree = "<absolute>"; };
|
||||
346287C9E754E7C458153F03 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwbmp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwbmp.pri"; sourceTree = "<absolute>"; };
|
||||
360D4B3ED25D126430DE27D4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio.pri"; sourceTree = "<absolute>"; };
|
||||
3685604BDB64DD6E92169B73 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdeclarativeview.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdeclarativeview.pri"; sourceTree = "<absolute>"; };
|
||||
382E89A91A34F7898C25FD0D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network_private.pri"; sourceTree = "<absolute>"; };
|
||||
3AC2626B26B65AA88F06BFB5 /* memain.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = memain.cpp; path = SourceFiles/_other/memain.cpp; sourceTree = "<absolute>"; };
|
||||
3F08D430CEC8D2117735CCB4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri"; sourceTree = "<absolute>"; };
|
||||
45B95DB3B70B47A910FC847B /* /usr/local/Qt-5.5.0/mkspecs/common/gcc-base.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/gcc-base.conf"; sourceTree = "<absolute>"; };
|
||||
45DB132B756499D4DF38430E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qjp2.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qjp2.pri"; sourceTree = "<absolute>"; };
|
||||
4689C06178B60B84E7F3A3B7 /* Qt5Widgets */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Widgets; path = "/usr/local/Qt-5.5.0/lib/libQt5Widgets$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
4C6C71914B1926119120DACD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio_private.pri"; sourceTree = "<absolute>"; };
|
||||
3F08D430CEC8D2117735CCB4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri"; sourceTree = "<absolute>"; };
|
||||
45B95DB3B70B47A910FC847B /* /usr/local/Qt-5.5.1/mkspecs/common/gcc-base.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/gcc-base.conf"; sourceTree = "<absolute>"; };
|
||||
45DB132B756499D4DF38430E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qjp2.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qjp2.pri"; sourceTree = "<absolute>"; };
|
||||
4689C06178B60B84E7F3A3B7 /* Qt5Widgets */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Widgets; path = "/usr/local/Qt-5.5.1/lib/libQt5Widgets$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
4C6C71914B1926119120DACD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio_private.pri"; sourceTree = "<absolute>"; };
|
||||
4D765E1B1EA6C757220C63E7 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = /System/Library/Frameworks/CoreFoundation.framework; sourceTree = "<absolute>"; };
|
||||
4FB6657DA22BC68B819B64B3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmldevtools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmldevtools_private.pri"; sourceTree = "<absolute>"; };
|
||||
5597304BEC94BFB9EAAEBC4B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions_private.pri"; sourceTree = "<absolute>"; };
|
||||
4FB6657DA22BC68B819B64B3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmldevtools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmldevtools_private.pri"; sourceTree = "<absolute>"; };
|
||||
5597304BEC94BFB9EAAEBC4B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions_private.pri"; sourceTree = "<absolute>"; };
|
||||
58308B26DE991A86E8589883 /* genemoji.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = genemoji.h; path = SourceFiles/_other/genemoji.h; sourceTree = "<absolute>"; };
|
||||
5A80A1907B6CFFB524C1E57D /* Qt5Core */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Core; path = "/usr/local/Qt-5.5.0/lib/libQt5Core$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
5B22E9E4EE9AAE42ABC24AB3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri"; sourceTree = "<absolute>"; };
|
||||
5CEA7A2DB2136425A88D1254 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl.pri"; sourceTree = "<absolute>"; };
|
||||
5F781C7FD8422D359EA1D2FE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core_private.pri"; sourceTree = "<absolute>"; };
|
||||
6102C69805B6398AF6FA5BEB /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml_private.pri"; sourceTree = "<absolute>"; };
|
||||
63E722139886C87BC82DBDF5 /* /usr/local/Qt-5.5.0/mkspecs/macx-clang/qmake.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/macx-clang/qmake.conf"; sourceTree = "<absolute>"; };
|
||||
669FB007C4A3D58424D85EC8 /* /usr/local/Qt-5.5.0/mkspecs/common/shell-unix.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/shell-unix.conf"; sourceTree = "<absolute>"; };
|
||||
69347C39E4D922E94D0860BF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designercomponents_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designercomponents_private.pri"; sourceTree = "<absolute>"; };
|
||||
6C08BFC27C4C303A3A5181DB /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport.pri"; sourceTree = "<absolute>"; };
|
||||
6E67D23B15FC4B628DB2E0B2 /* /usr/local/Qt-5.5.0/mkspecs/qdevice.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/qdevice.pri"; sourceTree = "<absolute>"; };
|
||||
74C1C232DFAA71028A0412CA /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri"; sourceTree = "<absolute>"; };
|
||||
77FF486B1F9BCD55A8A3F35D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent.pri"; sourceTree = "<absolute>"; };
|
||||
7A94C7168B3FCBE5F04A013B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative.pri"; sourceTree = "<absolute>"; };
|
||||
7C2F42B222EE88E26A6FED62 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer_private.pri"; sourceTree = "<absolute>"; };
|
||||
7D28E9003CE64D8A7F2E292E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent_private.pri"; sourceTree = "<absolute>"; };
|
||||
7DE30A90667C03C4F91A2A91 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql.pri"; sourceTree = "<absolute>"; };
|
||||
7ECCC1F9442988B4F2707CC1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core.pri"; sourceTree = "<absolute>"; };
|
||||
817A0F5A41B553A6DE67FDEB /* /usr/local/Qt-5.5.0/mkspecs/common/macx.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/macx.conf"; sourceTree = "<absolute>"; };
|
||||
82E7DCFD95559532D8FC6CDD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickparticles_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickparticles_private.pri"; sourceTree = "<absolute>"; };
|
||||
83D37373949868693FB7816D /* qmng */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qmng; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqmng$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
85061B1DA49D125991117950 /* /usr/local/Qt-5.5.0/mkspecs/macx-xcode/qmake.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/macx-xcode/qmake.conf"; sourceTree = "<absolute>"; };
|
||||
85B6936EDBE61D9BB8F8B33B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors.pri"; sourceTree = "<absolute>"; };
|
||||
87A4C1983FD641360BF80A02 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri"; sourceTree = "<absolute>"; };
|
||||
87EEF25EE25CF21572D1438C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets_private.pri"; sourceTree = "<absolute>"; };
|
||||
8849E60AEC7DB97A475C17EA /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib_private.pri"; sourceTree = "<absolute>"; };
|
||||
892D36BEF797BA4AF48D378A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_dummy.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_dummy.pri"; sourceTree = "<absolute>"; };
|
||||
89863CCAF1D29037AE95755D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative_private.pri"; sourceTree = "<absolute>"; };
|
||||
8A04A4A3625204D12A1207F6 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc.pri"; sourceTree = "<absolute>"; };
|
||||
8B4BB4E74F8A4442EF563D7D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri"; sourceTree = "<absolute>"; };
|
||||
8C31D89BDFCDF466DAED19A0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick_private.pri"; sourceTree = "<absolute>"; };
|
||||
8C5164D4E37556D40C5E6AA2 /* /usr/local/Qt-5.5.0/mkspecs/common/clang.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/clang.conf"; sourceTree = "<absolute>"; };
|
||||
8CF51323544B886B8F4A2232 /* qwbmp */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qwbmp; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqwbmp$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
5A80A1907B6CFFB524C1E57D /* Qt5Core */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Core; path = "/usr/local/Qt-5.5.1/lib/libQt5Core$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
5B22E9E4EE9AAE42ABC24AB3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri"; sourceTree = "<absolute>"; };
|
||||
5CEA7A2DB2136425A88D1254 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl.pri"; sourceTree = "<absolute>"; };
|
||||
5F781C7FD8422D359EA1D2FE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core_private.pri"; sourceTree = "<absolute>"; };
|
||||
6102C69805B6398AF6FA5BEB /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml_private.pri"; sourceTree = "<absolute>"; };
|
||||
63E722139886C87BC82DBDF5 /* /usr/local/Qt-5.5.1/mkspecs/macx-clang/qmake.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/macx-clang/qmake.conf"; sourceTree = "<absolute>"; };
|
||||
669FB007C4A3D58424D85EC8 /* /usr/local/Qt-5.5.1/mkspecs/common/shell-unix.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/shell-unix.conf"; sourceTree = "<absolute>"; };
|
||||
69347C39E4D922E94D0860BF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designercomponents_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designercomponents_private.pri"; sourceTree = "<absolute>"; };
|
||||
6C08BFC27C4C303A3A5181DB /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport.pri"; sourceTree = "<absolute>"; };
|
||||
6E67D23B15FC4B628DB2E0B2 /* /usr/local/Qt-5.5.1/mkspecs/qdevice.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/qdevice.pri"; sourceTree = "<absolute>"; };
|
||||
74C1C232DFAA71028A0412CA /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri"; sourceTree = "<absolute>"; };
|
||||
77FF486B1F9BCD55A8A3F35D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent.pri"; sourceTree = "<absolute>"; };
|
||||
7A94C7168B3FCBE5F04A013B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative.pri"; sourceTree = "<absolute>"; };
|
||||
7C2F42B222EE88E26A6FED62 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer_private.pri"; sourceTree = "<absolute>"; };
|
||||
7D28E9003CE64D8A7F2E292E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent_private.pri"; sourceTree = "<absolute>"; };
|
||||
7DE30A90667C03C4F91A2A91 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql.pri"; sourceTree = "<absolute>"; };
|
||||
7ECCC1F9442988B4F2707CC1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core.pri"; sourceTree = "<absolute>"; };
|
||||
817A0F5A41B553A6DE67FDEB /* /usr/local/Qt-5.5.1/mkspecs/common/macx.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/macx.conf"; sourceTree = "<absolute>"; };
|
||||
82E7DCFD95559532D8FC6CDD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickparticles_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickparticles_private.pri"; sourceTree = "<absolute>"; };
|
||||
83D37373949868693FB7816D /* qmng */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qmng; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqmng$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
85061B1DA49D125991117950 /* /usr/local/Qt-5.5.1/mkspecs/macx-xcode/qmake.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/macx-xcode/qmake.conf"; sourceTree = "<absolute>"; };
|
||||
85B6936EDBE61D9BB8F8B33B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors.pri"; sourceTree = "<absolute>"; };
|
||||
87A4C1983FD641360BF80A02 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri"; sourceTree = "<absolute>"; };
|
||||
87EEF25EE25CF21572D1438C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets_private.pri"; sourceTree = "<absolute>"; };
|
||||
8849E60AEC7DB97A475C17EA /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib_private.pri"; sourceTree = "<absolute>"; };
|
||||
892D36BEF797BA4AF48D378A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_dummy.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_dummy.pri"; sourceTree = "<absolute>"; };
|
||||
89863CCAF1D29037AE95755D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative_private.pri"; sourceTree = "<absolute>"; };
|
||||
8A04A4A3625204D12A1207F6 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc.pri"; sourceTree = "<absolute>"; };
|
||||
8B4BB4E74F8A4442EF563D7D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri"; sourceTree = "<absolute>"; };
|
||||
8C31D89BDFCDF466DAED19A0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick_private.pri"; sourceTree = "<absolute>"; };
|
||||
8C5164D4E37556D40C5E6AA2 /* /usr/local/Qt-5.5.1/mkspecs/common/clang.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/clang.conf"; sourceTree = "<absolute>"; };
|
||||
8CF51323544B886B8F4A2232 /* qwbmp */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qwbmp; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqwbmp$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
8D9815BDB5BD9F90D2BC05C5 /* AGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AGL.framework; path = /System/Library/Frameworks/AGL.framework; sourceTree = "<absolute>"; };
|
||||
8DDE1D26B3206CDB8B57FABE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg_private.pri"; sourceTree = "<absolute>"; };
|
||||
8E9136256AFFBA6EF048AA55 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
8F500B5166907B6D9A7C3E3D /* qico */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qico; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqico$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
8F572030CE9AB8CC5F672201 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_platformsupport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_platformsupport_private.pri"; sourceTree = "<absolute>"; };
|
||||
8F97C9CAE38CA3AFAC0B3953 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets.pri"; sourceTree = "<absolute>"; };
|
||||
8DDE1D26B3206CDB8B57FABE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg_private.pri"; sourceTree = "<absolute>"; };
|
||||
8E9136256AFFBA6EF048AA55 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
8F500B5166907B6D9A7C3E3D /* qico */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qico; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqico$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
8F572030CE9AB8CC5F672201 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_platformsupport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_platformsupport_private.pri"; sourceTree = "<absolute>"; };
|
||||
8F97C9CAE38CA3AFAC0B3953 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets.pri"; sourceTree = "<absolute>"; };
|
||||
93E4BE1A02365B73BAF00B73 /* moc_genemoji.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = moc_genemoji.cpp; path = GeneratedFiles/Debug/moc_genemoji.cpp; sourceTree = "<absolute>"; };
|
||||
946BEA667170DC1A7A8F9DB0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmng.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmng.pri"; sourceTree = "<absolute>"; };
|
||||
946BEA667170DC1A7A8F9DB0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmng.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmng.pri"; sourceTree = "<absolute>"; };
|
||||
9742F24EE18EA44D52824F1E /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = /System/Library/Frameworks/CoreServices.framework; sourceTree = "<absolute>"; };
|
||||
9A0BDF67E013BB4FFB8685B0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qqt7engine.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qqt7engine.pri"; sourceTree = "<absolute>"; };
|
||||
9A0BDF67E013BB4FFB8685B0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qqt7engine.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qqt7engine.pri"; sourceTree = "<absolute>"; };
|
||||
9DFF62A901D70814B8A323D4 /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = /System/Library/Frameworks/Carbon.framework; sourceTree = "<absolute>"; };
|
||||
A022AF919D1977534CA66BB8 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets.pri"; sourceTree = "<absolute>"; };
|
||||
A022AF919D1977534CA66BB8 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets.pri"; sourceTree = "<absolute>"; };
|
||||
A1A67BEAA744704B29168D39 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = /System/Library/Frameworks/IOKit.framework; sourceTree = "<absolute>"; };
|
||||
A4D8AC60897F435C1C3B9D02 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_generic.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_generic.pri"; sourceTree = "<absolute>"; };
|
||||
A59F74CD76FDC2B4B9910E18 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools_private.pri"; sourceTree = "<absolute>"; };
|
||||
A5B17ABEFBA1C2F43443D644 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras.pri"; sourceTree = "<absolute>"; };
|
||||
A9E30FA27827990C5F182223 /* /usr/local/Qt-5.5.0/mkspecs/common/gcc-base-mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/gcc-base-mac.conf"; sourceTree = "<absolute>"; };
|
||||
AA73DC3C2901E2979FE8AD5B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml.pri"; sourceTree = "<absolute>"; };
|
||||
AB1C02DDBD8E88DD9A9AFDDD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri"; sourceTree = "<absolute>"; };
|
||||
A4D8AC60897F435C1C3B9D02 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_generic.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_generic.pri"; sourceTree = "<absolute>"; };
|
||||
A59F74CD76FDC2B4B9910E18 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools_private.pri"; sourceTree = "<absolute>"; };
|
||||
A5B17ABEFBA1C2F43443D644 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras.pri"; sourceTree = "<absolute>"; };
|
||||
A9E30FA27827990C5F182223 /* /usr/local/Qt-5.5.1/mkspecs/common/gcc-base-mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/gcc-base-mac.conf"; sourceTree = "<absolute>"; };
|
||||
AA73DC3C2901E2979FE8AD5B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml.pri"; sourceTree = "<absolute>"; };
|
||||
AB1C02DDBD8E88DD9A9AFDDD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri"; sourceTree = "<absolute>"; };
|
||||
AB745978DF0F41D1801ABDA6 /* .qmake.stash */ = {isa = PBXFileReference; lastKnownFileType = file; path = .qmake.stash; sourceTree = "<absolute>"; };
|
||||
ABA9AB4619F09DCFD2D4A27F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest_private.pri"; sourceTree = "<absolute>"; };
|
||||
ACC8A73268E5D9AF64E97AF4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth.pri"; sourceTree = "<absolute>"; };
|
||||
ADC6308023253CEA51F86E21 /* qwebp */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qwebp; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqwebp$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
ADFC79902C14A612AE93A89A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg.pri"; sourceTree = "<absolute>"; };
|
||||
ABA9AB4619F09DCFD2D4A27F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest_private.pri"; sourceTree = "<absolute>"; };
|
||||
ACC8A73268E5D9AF64E97AF4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth.pri"; sourceTree = "<absolute>"; };
|
||||
ADC6308023253CEA51F86E21 /* qwebp */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qwebp; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqwebp$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
ADFC79902C14A612AE93A89A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg.pri"; sourceTree = "<absolute>"; };
|
||||
AEA456A2F75ED9F5CDA7BCBE /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
|
||||
AFD721AA33A2F785E77B1698 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcocoa.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcocoa.pri"; sourceTree = "<absolute>"; };
|
||||
B064BF3B496A7BF7A449CA1E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsqlite.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsqlite.pri"; sourceTree = "<absolute>"; };
|
||||
B2246267D4C0D789259A86B0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
B26239063A068F800A2C95F4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwebp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwebp.pri"; sourceTree = "<absolute>"; };
|
||||
B382B645B34234E451AE5D94 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml.pri"; sourceTree = "<absolute>"; };
|
||||
B518DA4EE7376002AFC71FD5 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools_private.pri"; sourceTree = "<absolute>"; };
|
||||
B51B01657BFE9EAEF5590561 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc_private.pri"; sourceTree = "<absolute>"; };
|
||||
B678DA730B4ECE863AD631AE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qminimal.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qminimal.pri"; sourceTree = "<absolute>"; };
|
||||
B8525798C5AA7D7C6D68E1B3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri"; sourceTree = "<absolute>"; };
|
||||
B8C1F6C965A7A14FBA8D4518 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri"; sourceTree = "<absolute>"; };
|
||||
BD22EFEFCC02644B1883CE19 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtiff.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtiff.pri"; sourceTree = "<absolute>"; };
|
||||
BD4D97801B547471B37A4CDC /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bootstrap_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bootstrap_private.pri"; sourceTree = "<absolute>"; };
|
||||
BDC9ECADEE40D11E3C2EA93F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors_private.pri"; sourceTree = "<absolute>"; };
|
||||
BFF0C38FB0EC140C5F0304AE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport.pri"; sourceTree = "<absolute>"; };
|
||||
AFD721AA33A2F785E77B1698 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcocoa.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcocoa.pri"; sourceTree = "<absolute>"; };
|
||||
B064BF3B496A7BF7A449CA1E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsqlite.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsqlite.pri"; sourceTree = "<absolute>"; };
|
||||
B2246267D4C0D789259A86B0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
B26239063A068F800A2C95F4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwebp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwebp.pri"; sourceTree = "<absolute>"; };
|
||||
B382B645B34234E451AE5D94 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml.pri"; sourceTree = "<absolute>"; };
|
||||
B518DA4EE7376002AFC71FD5 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools_private.pri"; sourceTree = "<absolute>"; };
|
||||
B51B01657BFE9EAEF5590561 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc_private.pri"; sourceTree = "<absolute>"; };
|
||||
B678DA730B4ECE863AD631AE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qminimal.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qminimal.pri"; sourceTree = "<absolute>"; };
|
||||
B8525798C5AA7D7C6D68E1B3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri"; sourceTree = "<absolute>"; };
|
||||
B8C1F6C965A7A14FBA8D4518 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri"; sourceTree = "<absolute>"; };
|
||||
BD22EFEFCC02644B1883CE19 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtiff.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtiff.pri"; sourceTree = "<absolute>"; };
|
||||
BD4D97801B547471B37A4CDC /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bootstrap_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bootstrap_private.pri"; sourceTree = "<absolute>"; };
|
||||
BDC9ECADEE40D11E3C2EA93F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors_private.pri"; sourceTree = "<absolute>"; };
|
||||
BFF0C38FB0EC140C5F0304AE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport.pri"; sourceTree = "<absolute>"; };
|
||||
C3345709A0BD182590087379 /* MetaEmoji.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MetaEmoji.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
C4295BE59CCEBCDD16268349 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qico.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qico.pri"; sourceTree = "<absolute>"; };
|
||||
C505A18319B9B63C63877858 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script_private.pri"; sourceTree = "<absolute>"; };
|
||||
C84546C18DCBB04166195DCF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri"; sourceTree = "<absolute>"; };
|
||||
CCF75CFFB857487FB18F99F9 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qoffscreen.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qoffscreen.pri"; sourceTree = "<absolute>"; };
|
||||
CE829DD126DD2B97E8D70A7A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools.pri"; sourceTree = "<absolute>"; };
|
||||
CF86CD5BB01B9011E6B6FD3E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_clucene_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_clucene_private.pri"; sourceTree = "<absolute>"; };
|
||||
CFCB992BEC24B71BFB8A2F30 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script.pri"; sourceTree = "<absolute>"; };
|
||||
CFFBE05DB004895080314289 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvgicon.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvgicon.pri"; sourceTree = "<absolute>"; };
|
||||
D0CDC87DAFDA7F18A7AF450F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport_private.pri"; sourceTree = "<absolute>"; };
|
||||
D1FA7CAB5ACC09D563AE569F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
D2FE4D909926A0D1656068C4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia.pri"; sourceTree = "<absolute>"; };
|
||||
D3D1BE0BEA3AEE0551AD39AC /* qdds */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qdds; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqdds$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
C4295BE59CCEBCDD16268349 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qico.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qico.pri"; sourceTree = "<absolute>"; };
|
||||
C505A18319B9B63C63877858 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script_private.pri"; sourceTree = "<absolute>"; };
|
||||
C84546C18DCBB04166195DCF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri"; sourceTree = "<absolute>"; };
|
||||
CCF75CFFB857487FB18F99F9 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qoffscreen.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qoffscreen.pri"; sourceTree = "<absolute>"; };
|
||||
CE829DD126DD2B97E8D70A7A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools.pri"; sourceTree = "<absolute>"; };
|
||||
CF86CD5BB01B9011E6B6FD3E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_clucene_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_clucene_private.pri"; sourceTree = "<absolute>"; };
|
||||
CFCB992BEC24B71BFB8A2F30 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script.pri"; sourceTree = "<absolute>"; };
|
||||
CFFBE05DB004895080314289 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvgicon.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvgicon.pri"; sourceTree = "<absolute>"; };
|
||||
D0CDC87DAFDA7F18A7AF450F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport_private.pri"; sourceTree = "<absolute>"; };
|
||||
D1FA7CAB5ACC09D563AE569F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
D2FE4D909926A0D1656068C4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia.pri"; sourceTree = "<absolute>"; };
|
||||
D3D1BE0BEA3AEE0551AD39AC /* qdds */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qdds; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqdds$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
D4B32C2222F82AC56BADEB21 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = /System/Library/Frameworks/OpenGL.framework; sourceTree = "<absolute>"; };
|
||||
D4DE537C1FBBD48BD989FAD1 /* /usr/local/Qt-5.5.0/mkspecs/qconfig.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/qconfig.pri"; sourceTree = "<absolute>"; };
|
||||
D5141F795670589C8CC41CBC /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_cocoaprintersupport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_cocoaprintersupport.pri"; sourceTree = "<absolute>"; };
|
||||
D53D8E6A188E05078A114294 /* qcocoa */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qcocoa; path = "/usr/local/Qt-5.5.0/plugins/platforms/libqcocoa$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
D6193B79CECC9DD0142D1200 /* qtharfbuzzng */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtharfbuzzng; path = "/usr/local/Qt-5.5.0/lib/libqtharfbuzzng$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
D7A0618DE39A427EBF41940E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help_private.pri"; sourceTree = "<absolute>"; };
|
||||
D81E3D9A18202BE8EC3D0E2C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui_private.pri"; sourceTree = "<absolute>"; };
|
||||
D948D4D8F949D45158F8DE35 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets.pri"; sourceTree = "<absolute>"; };
|
||||
DB0A26DDC377B2004F61BFE3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib.pri"; sourceTree = "<absolute>"; };
|
||||
DBF506D10449BFABD45B82DA /* Qt5PrintSupport */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5PrintSupport; path = "/usr/local/Qt-5.5.0/lib/libQt5PrintSupport$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
DCEFD9167C239650120B0145 /* qtga */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtga; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqtga$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
DF8188E30892A4654B984221 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest.pri"; sourceTree = "<absolute>"; };
|
||||
D4DE537C1FBBD48BD989FAD1 /* /usr/local/Qt-5.5.1/mkspecs/qconfig.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/qconfig.pri"; sourceTree = "<absolute>"; };
|
||||
D5141F795670589C8CC41CBC /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_cocoaprintersupport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_cocoaprintersupport.pri"; sourceTree = "<absolute>"; };
|
||||
D53D8E6A188E05078A114294 /* qcocoa */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qcocoa; path = "/usr/local/Qt-5.5.1/plugins/platforms/libqcocoa$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
D6193B79CECC9DD0142D1200 /* qtharfbuzzng */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtharfbuzzng; path = "/usr/local/Qt-5.5.1/lib/libqtharfbuzzng$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
D7A0618DE39A427EBF41940E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help_private.pri"; sourceTree = "<absolute>"; };
|
||||
D81E3D9A18202BE8EC3D0E2C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui_private.pri"; sourceTree = "<absolute>"; };
|
||||
D948D4D8F949D45158F8DE35 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets.pri"; sourceTree = "<absolute>"; };
|
||||
DB0A26DDC377B2004F61BFE3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib.pri"; sourceTree = "<absolute>"; };
|
||||
DBF506D10449BFABD45B82DA /* Qt5PrintSupport */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5PrintSupport; path = "/usr/local/Qt-5.5.1/lib/libQt5PrintSupport$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
DCEFD9167C239650120B0145 /* qtga */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtga; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqtga$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
DF8188E30892A4654B984221 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest.pri"; sourceTree = "<absolute>"; };
|
||||
DFD7912080BC557230093752 /* ApplicationServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ApplicationServices.framework; path = /System/Library/Frameworks/ApplicationServices.framework; sourceTree = "<absolute>"; };
|
||||
E0F4563EA350EB65112A0EF4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl_private.pri"; sourceTree = "<absolute>"; };
|
||||
E37365B4489B4918BEBB707D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml_private.pri"; sourceTree = "<absolute>"; };
|
||||
E432DA897A5F027987342E8F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions.pri"; sourceTree = "<absolute>"; };
|
||||
E50FA73B8A23BC179A642B27 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools.pri"; sourceTree = "<absolute>"; };
|
||||
E66B9EC81C285CA9A7FB6A2E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning_private.pri"; sourceTree = "<absolute>"; };
|
||||
E7B2F248E3F7970788F35BF5 /* Qt5PlatformSupport */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5PlatformSupport; path = "/usr/local/Qt-5.5.0/lib/libQt5PlatformSupport$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
E7D67CB158408BB7DEA74764 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia_private.pri"; sourceTree = "<absolute>"; };
|
||||
E0F4563EA350EB65112A0EF4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl_private.pri"; sourceTree = "<absolute>"; };
|
||||
E37365B4489B4918BEBB707D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml_private.pri"; sourceTree = "<absolute>"; };
|
||||
E432DA897A5F027987342E8F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions.pri"; sourceTree = "<absolute>"; };
|
||||
E50FA73B8A23BC179A642B27 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools.pri"; sourceTree = "<absolute>"; };
|
||||
E66B9EC81C285CA9A7FB6A2E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning_private.pri"; sourceTree = "<absolute>"; };
|
||||
E7B2F248E3F7970788F35BF5 /* Qt5PlatformSupport */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5PlatformSupport; path = "/usr/local/Qt-5.5.1/lib/libQt5PlatformSupport$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
E7D67CB158408BB7DEA74764 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia_private.pri"; sourceTree = "<absolute>"; };
|
||||
E981470FA003A8DCE3C52E59 /* memain.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = memain.h; path = SourceFiles/_other/memain.h; sourceTree = "<absolute>"; };
|
||||
EA5D4FF9DE4AC4215D7DCE0D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcorewlanbearer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcorewlanbearer.pri"; sourceTree = "<absolute>"; };
|
||||
EB1F99FD112917157F3C3F6E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qicns.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qicns.pri"; sourceTree = "<absolute>"; };
|
||||
EB29AC635054C09EFA749AE1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp.pri"; sourceTree = "<absolute>"; };
|
||||
EBD39B69F368CEEAC360A16D /* /usr/local/Qt-5.5.0/mkspecs/common/mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/mac.conf"; sourceTree = "<absolute>"; };
|
||||
F0681BC551FC8A2B132FC646 /* qjp2 */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qjp2; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqjp2$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
F0A58515945747E36783CC21 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_inspector.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_inspector.pri"; sourceTree = "<absolute>"; };
|
||||
EA5D4FF9DE4AC4215D7DCE0D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcorewlanbearer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcorewlanbearer.pri"; sourceTree = "<absolute>"; };
|
||||
EB1F99FD112917157F3C3F6E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qicns.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qicns.pri"; sourceTree = "<absolute>"; };
|
||||
EB29AC635054C09EFA749AE1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp.pri"; sourceTree = "<absolute>"; };
|
||||
EBD39B69F368CEEAC360A16D /* /usr/local/Qt-5.5.1/mkspecs/common/mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/mac.conf"; sourceTree = "<absolute>"; };
|
||||
F0681BC551FC8A2B132FC646 /* qjp2 */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qjp2; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqjp2$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
F0A58515945747E36783CC21 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_inspector.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_inspector.pri"; sourceTree = "<absolute>"; };
|
||||
F13124A218B58585B027D96A /* MetaEmoji.pro */ = {isa = PBXFileReference; lastKnownFileType = text; path = MetaEmoji.pro; sourceTree = "<absolute>"; };
|
||||
F2453BA07315EB9F34F1CD57 /* qtiff */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtiff; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqtiff$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
F2F823087EA182CCBD5748B8 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer.pri"; sourceTree = "<absolute>"; };
|
||||
F33BE16353DD1557A9AB3558 /* /usr/local/Qt-5.5.0/mkspecs/common/clang-mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/clang-mac.conf"; sourceTree = "<absolute>"; };
|
||||
F4EB01857048DCFCFFAAC4D0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfmediaplayer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfmediaplayer.pri"; sourceTree = "<absolute>"; };
|
||||
F7ADBF552F6B9A5982915164 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning.pri"; sourceTree = "<absolute>"; };
|
||||
F83F87F8A60C9DF666911D42 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvg.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvg.pri"; sourceTree = "<absolute>"; };
|
||||
F9BEAA743A908603687DA204 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns_private.pri"; sourceTree = "<absolute>"; };
|
||||
F2453BA07315EB9F34F1CD57 /* qtiff */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtiff; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqtiff$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
F2F823087EA182CCBD5748B8 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer.pri"; sourceTree = "<absolute>"; };
|
||||
F33BE16353DD1557A9AB3558 /* /usr/local/Qt-5.5.1/mkspecs/common/clang-mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/clang-mac.conf"; sourceTree = "<absolute>"; };
|
||||
F4EB01857048DCFCFFAAC4D0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfmediaplayer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfmediaplayer.pri"; sourceTree = "<absolute>"; };
|
||||
F7ADBF552F6B9A5982915164 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning.pri"; sourceTree = "<absolute>"; };
|
||||
F83F87F8A60C9DF666911D42 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvg.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvg.pri"; sourceTree = "<absolute>"; };
|
||||
F9BEAA743A908603687DA204 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns_private.pri"; sourceTree = "<absolute>"; };
|
||||
FCC237CA5AD60B9BA4447615 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
|
||||
FD944B80F033DFE737D401A2 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help.pri"; sourceTree = "<absolute>"; };
|
||||
FD944B80F033DFE737D401A2 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help.pri"; sourceTree = "<absolute>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
@@ -297,127 +297,127 @@
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
F13124A218B58585B027D96A /* MetaEmoji.pro */,
|
||||
6E67D23B15FC4B628DB2E0B2 /* /usr/local/Qt-5.5.0/mkspecs/qdevice.pri */,
|
||||
669FB007C4A3D58424D85EC8 /* /usr/local/Qt-5.5.0/mkspecs/common/shell-unix.conf */,
|
||||
0ABCEA8D0DD45589040B0AF2 /* /usr/local/Qt-5.5.0/mkspecs/common/unix.conf */,
|
||||
EBD39B69F368CEEAC360A16D /* /usr/local/Qt-5.5.0/mkspecs/common/mac.conf */,
|
||||
817A0F5A41B553A6DE67FDEB /* /usr/local/Qt-5.5.0/mkspecs/common/macx.conf */,
|
||||
45B95DB3B70B47A910FC847B /* /usr/local/Qt-5.5.0/mkspecs/common/gcc-base.conf */,
|
||||
A9E30FA27827990C5F182223 /* /usr/local/Qt-5.5.0/mkspecs/common/gcc-base-mac.conf */,
|
||||
8C5164D4E37556D40C5E6AA2 /* /usr/local/Qt-5.5.0/mkspecs/common/clang.conf */,
|
||||
F33BE16353DD1557A9AB3558 /* /usr/local/Qt-5.5.0/mkspecs/common/clang-mac.conf */,
|
||||
D4DE537C1FBBD48BD989FAD1 /* /usr/local/Qt-5.5.0/mkspecs/qconfig.pri */,
|
||||
ACC8A73268E5D9AF64E97AF4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth.pri */,
|
||||
2E48BB382B895A5ACD79AF9F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth_private.pri */,
|
||||
BD4D97801B547471B37A4CDC /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bootstrap_private.pri */,
|
||||
CF86CD5BB01B9011E6B6FD3E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_clucene_private.pri */,
|
||||
77FF486B1F9BCD55A8A3F35D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent.pri */,
|
||||
7D28E9003CE64D8A7F2E292E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent_private.pri */,
|
||||
7ECCC1F9442988B4F2707CC1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core.pri */,
|
||||
5F781C7FD8422D359EA1D2FE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core_private.pri */,
|
||||
7A94C7168B3FCBE5F04A013B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative.pri */,
|
||||
89863CCAF1D29037AE95755D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative_private.pri */,
|
||||
F2F823087EA182CCBD5748B8 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer.pri */,
|
||||
7C2F42B222EE88E26A6FED62 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer_private.pri */,
|
||||
69347C39E4D922E94D0860BF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designercomponents_private.pri */,
|
||||
360D4B3ED25D126430DE27D4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio.pri */,
|
||||
4C6C71914B1926119120DACD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio_private.pri */,
|
||||
23BC8B0FC3279421D41CA268 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui.pri */,
|
||||
D81E3D9A18202BE8EC3D0E2C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui_private.pri */,
|
||||
FD944B80F033DFE737D401A2 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help.pri */,
|
||||
D7A0618DE39A427EBF41940E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help_private.pri */,
|
||||
A5B17ABEFBA1C2F43443D644 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras.pri */,
|
||||
33F165B1DB8CBF182C56FAB5 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras_private.pri */,
|
||||
D2FE4D909926A0D1656068C4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia.pri */,
|
||||
E7D67CB158408BB7DEA74764 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia_private.pri */,
|
||||
28BD0D10214709D95B161E24 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets.pri */,
|
||||
D1FA7CAB5ACC09D563AE569F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets_private.pri */,
|
||||
293C8DEEE270847AC20E70F9 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network.pri */,
|
||||
382E89A91A34F7898C25FD0D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network_private.pri */,
|
||||
8A04A4A3625204D12A1207F6 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc.pri */,
|
||||
B51B01657BFE9EAEF5590561 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc_private.pri */,
|
||||
5CEA7A2DB2136425A88D1254 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl.pri */,
|
||||
E0F4563EA350EB65112A0EF4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl_private.pri */,
|
||||
E432DA897A5F027987342E8F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions.pri */,
|
||||
5597304BEC94BFB9EAAEBC4B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions_private.pri */,
|
||||
8F572030CE9AB8CC5F672201 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_platformsupport_private.pri */,
|
||||
F7ADBF552F6B9A5982915164 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning.pri */,
|
||||
E66B9EC81C285CA9A7FB6A2E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning_private.pri */,
|
||||
6C08BFC27C4C303A3A5181DB /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport.pri */,
|
||||
D0CDC87DAFDA7F18A7AF450F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport_private.pri */,
|
||||
B382B645B34234E451AE5D94 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml.pri */,
|
||||
6102C69805B6398AF6FA5BEB /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml_private.pri */,
|
||||
4FB6657DA22BC68B819B64B3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmldevtools_private.pri */,
|
||||
DF8188E30892A4654B984221 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest.pri */,
|
||||
ABA9AB4619F09DCFD2D4A27F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest_private.pri */,
|
||||
5B22E9E4EE9AAE42ABC24AB3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri */,
|
||||
16DD53E17C65AC8B450CC6C3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick.pri */,
|
||||
8C31D89BDFCDF466DAED19A0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick_private.pri */,
|
||||
82E7DCFD95559532D8FC6CDD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickparticles_private.pri */,
|
||||
D948D4D8F949D45158F8DE35 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets.pri */,
|
||||
B2246267D4C0D789259A86B0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets_private.pri */,
|
||||
CFCB992BEC24B71BFB8A2F30 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script.pri */,
|
||||
C505A18319B9B63C63877858 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script_private.pri */,
|
||||
CE829DD126DD2B97E8D70A7A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools.pri */,
|
||||
A59F74CD76FDC2B4B9910E18 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools_private.pri */,
|
||||
85B6936EDBE61D9BB8F8B33B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors.pri */,
|
||||
BDC9ECADEE40D11E3C2EA93F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors_private.pri */,
|
||||
BFF0C38FB0EC140C5F0304AE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport.pri */,
|
||||
311004331A04F3D69C98643C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport_private.pri */,
|
||||
7DE30A90667C03C4F91A2A91 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql.pri */,
|
||||
075EB50EB07CF69FD62FB8DF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql_private.pri */,
|
||||
ADFC79902C14A612AE93A89A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg.pri */,
|
||||
8DDE1D26B3206CDB8B57FABE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg_private.pri */,
|
||||
DB0A26DDC377B2004F61BFE3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib.pri */,
|
||||
8849E60AEC7DB97A475C17EA /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib_private.pri */,
|
||||
E50FA73B8A23BC179A642B27 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools.pri */,
|
||||
B518DA4EE7376002AFC71FD5 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools_private.pri */,
|
||||
8F97C9CAE38CA3AFAC0B3953 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets.pri */,
|
||||
87EEF25EE25CF21572D1438C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets_private.pri */,
|
||||
A022AF919D1977534CA66BB8 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets.pri */,
|
||||
8E9136256AFFBA6EF048AA55 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets_private.pri */,
|
||||
AA73DC3C2901E2979FE8AD5B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml.pri */,
|
||||
E37365B4489B4918BEBB707D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml_private.pri */,
|
||||
2E6D9B1D2743D24E31B0B284 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns.pri */,
|
||||
F9BEAA743A908603687DA204 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns_private.pri */,
|
||||
D5141F795670589C8CC41CBC /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_cocoaprintersupport.pri */,
|
||||
1FAE75C970AA73F2DEDDB508 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfcamera.pri */,
|
||||
F4EB01857048DCFCFFAAC4D0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfmediaplayer.pri */,
|
||||
AFD721AA33A2F785E77B1698 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcocoa.pri */,
|
||||
EA5D4FF9DE4AC4215D7DCE0D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcorewlanbearer.pri */,
|
||||
111BBEE3D1432C3B517FD539 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdds.pri */,
|
||||
3685604BDB64DD6E92169B73 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdeclarativeview.pri */,
|
||||
2440CD1D4CEF80443BCA1B8B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qgenericbearer.pri */,
|
||||
EB1F99FD112917157F3C3F6E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qicns.pri */,
|
||||
C4295BE59CCEBCDD16268349 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qico.pri */,
|
||||
45DB132B756499D4DF38430E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qjp2.pri */,
|
||||
B678DA730B4ECE863AD631AE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qminimal.pri */,
|
||||
F0A58515945747E36783CC21 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_inspector.pri */,
|
||||
B8525798C5AA7D7C6D68E1B3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri */,
|
||||
EB29AC635054C09EFA749AE1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp.pri */,
|
||||
3F08D430CEC8D2117735CCB4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri */,
|
||||
946BEA667170DC1A7A8F9DB0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmng.pri */,
|
||||
CCF75CFFB857487FB18F99F9 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qoffscreen.pri */,
|
||||
9A0BDF67E013BB4FFB8685B0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qqt7engine.pri */,
|
||||
B064BF3B496A7BF7A449CA1E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsqlite.pri */,
|
||||
F83F87F8A60C9DF666911D42 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvg.pri */,
|
||||
CFFBE05DB004895080314289 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvgicon.pri */,
|
||||
247D8DF3B1DDB665B80BBA25 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblequick.pri */,
|
||||
87A4C1983FD641360BF80A02 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri */,
|
||||
24B6929EE3952310F2DAECB1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri */,
|
||||
060A694B42A4555240009936 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtga.pri */,
|
||||
BD22EFEFCC02644B1883CE19 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtiff.pri */,
|
||||
B8C1F6C965A7A14FBA8D4518 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri */,
|
||||
74C1C232DFAA71028A0412CA /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri */,
|
||||
C84546C18DCBB04166195DCF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri */,
|
||||
AB1C02DDBD8E88DD9A9AFDDD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri */,
|
||||
8B4BB4E74F8A4442EF563D7D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri */,
|
||||
892D36BEF797BA4AF48D378A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_dummy.pri */,
|
||||
A4D8AC60897F435C1C3B9D02 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_generic.pri */,
|
||||
346287C9E754E7C458153F03 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwbmp.pri */,
|
||||
B26239063A068F800A2C95F4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwebp.pri */,
|
||||
63E722139886C87BC82DBDF5 /* /usr/local/Qt-5.5.0/mkspecs/macx-clang/qmake.conf */,
|
||||
85061B1DA49D125991117950 /* /usr/local/Qt-5.5.0/mkspecs/macx-xcode/qmake.conf */,
|
||||
6E67D23B15FC4B628DB2E0B2 /* /usr/local/Qt-5.5.1/mkspecs/qdevice.pri */,
|
||||
669FB007C4A3D58424D85EC8 /* /usr/local/Qt-5.5.1/mkspecs/common/shell-unix.conf */,
|
||||
0ABCEA8D0DD45589040B0AF2 /* /usr/local/Qt-5.5.1/mkspecs/common/unix.conf */,
|
||||
EBD39B69F368CEEAC360A16D /* /usr/local/Qt-5.5.1/mkspecs/common/mac.conf */,
|
||||
817A0F5A41B553A6DE67FDEB /* /usr/local/Qt-5.5.1/mkspecs/common/macx.conf */,
|
||||
45B95DB3B70B47A910FC847B /* /usr/local/Qt-5.5.1/mkspecs/common/gcc-base.conf */,
|
||||
A9E30FA27827990C5F182223 /* /usr/local/Qt-5.5.1/mkspecs/common/gcc-base-mac.conf */,
|
||||
8C5164D4E37556D40C5E6AA2 /* /usr/local/Qt-5.5.1/mkspecs/common/clang.conf */,
|
||||
F33BE16353DD1557A9AB3558 /* /usr/local/Qt-5.5.1/mkspecs/common/clang-mac.conf */,
|
||||
D4DE537C1FBBD48BD989FAD1 /* /usr/local/Qt-5.5.1/mkspecs/qconfig.pri */,
|
||||
ACC8A73268E5D9AF64E97AF4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth.pri */,
|
||||
2E48BB382B895A5ACD79AF9F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth_private.pri */,
|
||||
BD4D97801B547471B37A4CDC /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bootstrap_private.pri */,
|
||||
CF86CD5BB01B9011E6B6FD3E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_clucene_private.pri */,
|
||||
77FF486B1F9BCD55A8A3F35D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent.pri */,
|
||||
7D28E9003CE64D8A7F2E292E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent_private.pri */,
|
||||
7ECCC1F9442988B4F2707CC1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core.pri */,
|
||||
5F781C7FD8422D359EA1D2FE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core_private.pri */,
|
||||
7A94C7168B3FCBE5F04A013B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative.pri */,
|
||||
89863CCAF1D29037AE95755D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative_private.pri */,
|
||||
F2F823087EA182CCBD5748B8 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer.pri */,
|
||||
7C2F42B222EE88E26A6FED62 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer_private.pri */,
|
||||
69347C39E4D922E94D0860BF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designercomponents_private.pri */,
|
||||
360D4B3ED25D126430DE27D4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio.pri */,
|
||||
4C6C71914B1926119120DACD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio_private.pri */,
|
||||
23BC8B0FC3279421D41CA268 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui.pri */,
|
||||
D81E3D9A18202BE8EC3D0E2C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui_private.pri */,
|
||||
FD944B80F033DFE737D401A2 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help.pri */,
|
||||
D7A0618DE39A427EBF41940E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help_private.pri */,
|
||||
A5B17ABEFBA1C2F43443D644 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras.pri */,
|
||||
33F165B1DB8CBF182C56FAB5 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras_private.pri */,
|
||||
D2FE4D909926A0D1656068C4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia.pri */,
|
||||
E7D67CB158408BB7DEA74764 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia_private.pri */,
|
||||
28BD0D10214709D95B161E24 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets.pri */,
|
||||
D1FA7CAB5ACC09D563AE569F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets_private.pri */,
|
||||
293C8DEEE270847AC20E70F9 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network.pri */,
|
||||
382E89A91A34F7898C25FD0D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network_private.pri */,
|
||||
8A04A4A3625204D12A1207F6 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc.pri */,
|
||||
B51B01657BFE9EAEF5590561 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc_private.pri */,
|
||||
5CEA7A2DB2136425A88D1254 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl.pri */,
|
||||
E0F4563EA350EB65112A0EF4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl_private.pri */,
|
||||
E432DA897A5F027987342E8F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions.pri */,
|
||||
5597304BEC94BFB9EAAEBC4B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions_private.pri */,
|
||||
8F572030CE9AB8CC5F672201 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_platformsupport_private.pri */,
|
||||
F7ADBF552F6B9A5982915164 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning.pri */,
|
||||
E66B9EC81C285CA9A7FB6A2E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning_private.pri */,
|
||||
6C08BFC27C4C303A3A5181DB /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport.pri */,
|
||||
D0CDC87DAFDA7F18A7AF450F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport_private.pri */,
|
||||
B382B645B34234E451AE5D94 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml.pri */,
|
||||
6102C69805B6398AF6FA5BEB /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml_private.pri */,
|
||||
4FB6657DA22BC68B819B64B3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmldevtools_private.pri */,
|
||||
DF8188E30892A4654B984221 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest.pri */,
|
||||
ABA9AB4619F09DCFD2D4A27F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest_private.pri */,
|
||||
5B22E9E4EE9AAE42ABC24AB3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri */,
|
||||
16DD53E17C65AC8B450CC6C3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick.pri */,
|
||||
8C31D89BDFCDF466DAED19A0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick_private.pri */,
|
||||
82E7DCFD95559532D8FC6CDD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickparticles_private.pri */,
|
||||
D948D4D8F949D45158F8DE35 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets.pri */,
|
||||
B2246267D4C0D789259A86B0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets_private.pri */,
|
||||
CFCB992BEC24B71BFB8A2F30 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script.pri */,
|
||||
C505A18319B9B63C63877858 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script_private.pri */,
|
||||
CE829DD126DD2B97E8D70A7A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools.pri */,
|
||||
A59F74CD76FDC2B4B9910E18 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools_private.pri */,
|
||||
85B6936EDBE61D9BB8F8B33B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors.pri */,
|
||||
BDC9ECADEE40D11E3C2EA93F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors_private.pri */,
|
||||
BFF0C38FB0EC140C5F0304AE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport.pri */,
|
||||
311004331A04F3D69C98643C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport_private.pri */,
|
||||
7DE30A90667C03C4F91A2A91 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql.pri */,
|
||||
075EB50EB07CF69FD62FB8DF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql_private.pri */,
|
||||
ADFC79902C14A612AE93A89A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg.pri */,
|
||||
8DDE1D26B3206CDB8B57FABE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg_private.pri */,
|
||||
DB0A26DDC377B2004F61BFE3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib.pri */,
|
||||
8849E60AEC7DB97A475C17EA /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib_private.pri */,
|
||||
E50FA73B8A23BC179A642B27 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools.pri */,
|
||||
B518DA4EE7376002AFC71FD5 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools_private.pri */,
|
||||
8F97C9CAE38CA3AFAC0B3953 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets.pri */,
|
||||
87EEF25EE25CF21572D1438C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets_private.pri */,
|
||||
A022AF919D1977534CA66BB8 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets.pri */,
|
||||
8E9136256AFFBA6EF048AA55 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets_private.pri */,
|
||||
AA73DC3C2901E2979FE8AD5B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml.pri */,
|
||||
E37365B4489B4918BEBB707D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml_private.pri */,
|
||||
2E6D9B1D2743D24E31B0B284 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns.pri */,
|
||||
F9BEAA743A908603687DA204 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns_private.pri */,
|
||||
D5141F795670589C8CC41CBC /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_cocoaprintersupport.pri */,
|
||||
1FAE75C970AA73F2DEDDB508 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfcamera.pri */,
|
||||
F4EB01857048DCFCFFAAC4D0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfmediaplayer.pri */,
|
||||
AFD721AA33A2F785E77B1698 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcocoa.pri */,
|
||||
EA5D4FF9DE4AC4215D7DCE0D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcorewlanbearer.pri */,
|
||||
111BBEE3D1432C3B517FD539 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdds.pri */,
|
||||
3685604BDB64DD6E92169B73 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdeclarativeview.pri */,
|
||||
2440CD1D4CEF80443BCA1B8B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qgenericbearer.pri */,
|
||||
EB1F99FD112917157F3C3F6E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qicns.pri */,
|
||||
C4295BE59CCEBCDD16268349 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qico.pri */,
|
||||
45DB132B756499D4DF38430E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qjp2.pri */,
|
||||
B678DA730B4ECE863AD631AE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qminimal.pri */,
|
||||
F0A58515945747E36783CC21 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_inspector.pri */,
|
||||
B8525798C5AA7D7C6D68E1B3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri */,
|
||||
EB29AC635054C09EFA749AE1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp.pri */,
|
||||
3F08D430CEC8D2117735CCB4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri */,
|
||||
946BEA667170DC1A7A8F9DB0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmng.pri */,
|
||||
CCF75CFFB857487FB18F99F9 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qoffscreen.pri */,
|
||||
9A0BDF67E013BB4FFB8685B0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qqt7engine.pri */,
|
||||
B064BF3B496A7BF7A449CA1E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsqlite.pri */,
|
||||
F83F87F8A60C9DF666911D42 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvg.pri */,
|
||||
CFFBE05DB004895080314289 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvgicon.pri */,
|
||||
247D8DF3B1DDB665B80BBA25 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblequick.pri */,
|
||||
87A4C1983FD641360BF80A02 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri */,
|
||||
24B6929EE3952310F2DAECB1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri */,
|
||||
060A694B42A4555240009936 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtga.pri */,
|
||||
BD22EFEFCC02644B1883CE19 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtiff.pri */,
|
||||
B8C1F6C965A7A14FBA8D4518 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri */,
|
||||
74C1C232DFAA71028A0412CA /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri */,
|
||||
C84546C18DCBB04166195DCF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri */,
|
||||
AB1C02DDBD8E88DD9A9AFDDD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri */,
|
||||
8B4BB4E74F8A4442EF563D7D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri */,
|
||||
892D36BEF797BA4AF48D378A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_dummy.pri */,
|
||||
A4D8AC60897F435C1C3B9D02 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_generic.pri */,
|
||||
346287C9E754E7C458153F03 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwbmp.pri */,
|
||||
B26239063A068F800A2C95F4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwebp.pri */,
|
||||
63E722139886C87BC82DBDF5 /* /usr/local/Qt-5.5.1/mkspecs/macx-clang/qmake.conf */,
|
||||
85061B1DA49D125991117950 /* /usr/local/Qt-5.5.1/mkspecs/macx-xcode/qmake.conf */,
|
||||
AB745978DF0F41D1801ABDA6 /* .qmake.stash */,
|
||||
);
|
||||
name = "Supporting Files";
|
||||
@@ -519,7 +519,7 @@
|
||||
6DB9C3763D02B1415CD9D565 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 0630;
|
||||
LastUpgradeCheck = 0700;
|
||||
};
|
||||
buildConfigurationList = DAC4C1AA5EDEA1C85E9CA5E6 /* Build configuration list for PBXProject "MetaEmoji" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
@@ -602,25 +602,25 @@
|
||||
GCC_WARN_UNUSED_FUNCTION = NO;
|
||||
GCC_WARN_UNUSED_VARIABLE = NO;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
../../Libraries/QtStatic/qtbase/include/QtGui/5.5.0/QtGui,
|
||||
../../Libraries/QtStatic/qtbase/include/QtCore/5.5.0/QtCore,
|
||||
../../Libraries/QtStatic/qtbase/include/QtGui/5.5.1/QtGui,
|
||||
../../Libraries/QtStatic/qtbase/include/QtCore/5.5.1/QtCore,
|
||||
../../Libraries/QtStatic/qtbase/include,
|
||||
"/usr/local/Qt-5.5.0/include",
|
||||
"/usr/local/Qt-5.5.0/include/QtGui",
|
||||
"/usr/local/Qt-5.5.0/include/QtCore",
|
||||
"/usr/local/Qt-5.5.1/include",
|
||||
"/usr/local/Qt-5.5.1/include/QtGui",
|
||||
"/usr/local/Qt-5.5.1/include/QtCore",
|
||||
GeneratedFiles/Debug,
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers,
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers,
|
||||
"/usr/local/Qt-5.5.0/mkspecs/macx-clang",
|
||||
"/usr/local/Qt-5.5.1/mkspecs/macx-clang",
|
||||
);
|
||||
INFOPLIST_FILE = Emoji.plist;
|
||||
INSTALL_DIR = ../Mac/ReleaseEmoji/;
|
||||
LDPLUSPLUS = "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++";
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
/System/Library/Frameworks/,
|
||||
"/usr/local/Qt-5.5.0/lib",
|
||||
"/usr/local/Qt-5.5.0/plugins/platforms",
|
||||
"/usr/local/Qt-5.5.0/plugins/imageformats",
|
||||
"/usr/local/Qt-5.5.1/lib",
|
||||
"/usr/local/Qt-5.5.1/plugins/platforms",
|
||||
"/usr/local/Qt-5.5.1/plugins/imageformats",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.7;
|
||||
OBJROOT = ./../Mac/ReleaseIntermediateEmoji/;
|
||||
@@ -649,10 +649,10 @@
|
||||
OTHER_LDFLAGS = (
|
||||
"-headerpad_max_install_names",
|
||||
"-stdlib=libc++",
|
||||
"-L/usr/local/Qt-5.5.0/lib",
|
||||
"-L/usr/local/Qt-5.5.0/plugins/platforms",
|
||||
"-L/usr/local/Qt-5.5.1/lib",
|
||||
"-L/usr/local/Qt-5.5.1/plugins/platforms",
|
||||
"-lcups",
|
||||
"-L/usr/local/Qt-5.5.0/plugins/imageformats",
|
||||
"-L/usr/local/Qt-5.5.1/plugins/imageformats",
|
||||
"-lz",
|
||||
"-lm",
|
||||
);
|
||||
@@ -680,6 +680,7 @@
|
||||
DYLIB_COMPATIBILITY_VERSION = 1.0;
|
||||
DYLIB_CURRENT_VERSION = 1.0.0;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
ENABLE_TESTABILITY = YES;
|
||||
FRAMEWORK_SEARCH_PATHS = "";
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
@@ -692,25 +693,25 @@
|
||||
GCC_WARN_UNUSED_FUNCTION = NO;
|
||||
GCC_WARN_UNUSED_VARIABLE = NO;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
../../Libraries/QtStatic/qtbase/include/QtGui/5.5.0/QtGui,
|
||||
../../Libraries/QtStatic/qtbase/include/QtCore/5.5.0/QtCore,
|
||||
../../Libraries/QtStatic/qtbase/include/QtGui/5.5.1/QtGui,
|
||||
../../Libraries/QtStatic/qtbase/include/QtCore/5.5.1/QtCore,
|
||||
../../Libraries/QtStatic/qtbase/include,
|
||||
"/usr/local/Qt-5.5.0/include",
|
||||
"/usr/local/Qt-5.5.0/include/QtGui",
|
||||
"/usr/local/Qt-5.5.0/include/QtCore",
|
||||
"/usr/local/Qt-5.5.1/include",
|
||||
"/usr/local/Qt-5.5.1/include/QtGui",
|
||||
"/usr/local/Qt-5.5.1/include/QtCore",
|
||||
GeneratedFiles/Debug,
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers,
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers,
|
||||
"/usr/local/Qt-5.5.0/mkspecs/macx-clang",
|
||||
"/usr/local/Qt-5.5.1/mkspecs/macx-clang",
|
||||
);
|
||||
INFOPLIST_FILE = Emoji.plist;
|
||||
INSTALL_DIR = ../Mac/DebugEmoji/;
|
||||
LDPLUSPLUS = "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++";
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
/System/Library/Frameworks/,
|
||||
"/usr/local/Qt-5.5.0/lib",
|
||||
"/usr/local/Qt-5.5.0/plugins/platforms",
|
||||
"/usr/local/Qt-5.5.0/plugins/imageformats",
|
||||
"/usr/local/Qt-5.5.1/lib",
|
||||
"/usr/local/Qt-5.5.1/plugins/platforms",
|
||||
"/usr/local/Qt-5.5.1/plugins/imageformats",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.7;
|
||||
OBJROOT = ./../Mac/DebugIntermediateEmoji/;
|
||||
@@ -740,10 +741,10 @@
|
||||
OTHER_LDFLAGS = (
|
||||
"-headerpad_max_install_names",
|
||||
"-stdlib=libc++",
|
||||
"-L/usr/local/Qt-5.5.0/lib",
|
||||
"-L/usr/local/Qt-5.5.0/plugins/platforms",
|
||||
"-L/usr/local/Qt-5.5.1/lib",
|
||||
"-L/usr/local/Qt-5.5.1/plugins/platforms",
|
||||
"-lcups",
|
||||
"-L/usr/local/Qt-5.5.0/plugins/imageformats",
|
||||
"-L/usr/local/Qt-5.5.1/plugins/imageformats",
|
||||
"-lz",
|
||||
"-lm",
|
||||
);
|
||||
@@ -760,6 +761,7 @@
|
||||
COMBINE_HIDPI_IMAGES = YES;
|
||||
COPY_PHASE_STRIP = YES;
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.tdesktop.${PRODUCT_NAME:rfc1034identifier}";
|
||||
PRODUCT_NAME = MetaEmoji;
|
||||
QT_LIBRARY_SUFFIX = "";
|
||||
SDKROOT = macosx;
|
||||
@@ -774,6 +776,7 @@
|
||||
DEBUG_INFORMATION_FORMAT = dwarf;
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.tdesktop.${PRODUCT_NAME:rfc1034identifier}";
|
||||
PRODUCT_NAME = MetaEmoji;
|
||||
QT_LIBRARY_SUFFIX = _debug;
|
||||
SDKROOT = macosx;
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
#############################################################################
|
||||
# Makefile for building: ../Mac/DebugEmoji/MetaEmoji.app/Contents/MacOS/MetaEmoji
|
||||
# Generated by qmake (3.0) (Qt 5.5.0)
|
||||
# Generated by qmake (3.0) (Qt 5.5.1)
|
||||
# Project: MetaEmoji.pro
|
||||
# Template: app
|
||||
# Command: /usr/local/Qt-5.5.0/bin/qmake -spec macx-xcode -o MetaEmoji.xcodeproj/project.pbxproj MetaEmoji.pro
|
||||
# Command: /usr/local/Qt-5.5.1/bin/qmake -spec macx-xcode -o MetaEmoji.xcodeproj/project.pbxproj MetaEmoji.pro
|
||||
#############################################################################
|
||||
|
||||
MAKEFILE = project.pbxproj
|
||||
|
||||
MOC = /usr/local/Qt-5.5.0/bin/moc
|
||||
MOC = /usr/local/Qt-5.5.1/bin/moc
|
||||
UIC =
|
||||
LEX = flex
|
||||
LEXFLAGS =
|
||||
YACC = yacc
|
||||
YACCFLAGS = -d
|
||||
DEFINES = -D_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB
|
||||
INCPATH = -I/usr/local/Qt-5.5.0/mkspecs/macx-clang -I. -I../../Libraries/QtStatic/qtbase/include/QtGui/5.5.0/QtGui -I../../Libraries/QtStatic/qtbase/include/QtCore/5.5.0/QtCore -I../../Libraries/QtStatic/qtbase/include -I/usr/local/Qt-5.5.0/include -I/usr/local/Qt-5.5.0/include/QtGui -I/usr/local/Qt-5.5.0/include/QtCore -IGeneratedFiles/Debug -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers
|
||||
INCPATH = -I/usr/local/Qt-5.5.1/mkspecs/macx-clang -I. -I../../Libraries/QtStatic/qtbase/include/QtGui/5.5.1/QtGui -I../../Libraries/QtStatic/qtbase/include/QtCore/5.5.1/QtCore -I../../Libraries/QtStatic/qtbase/include -I/usr/local/Qt-5.5.1/include -I/usr/local/Qt-5.5.1/include/QtGui -I/usr/local/Qt-5.5.1/include/QtCore -IGeneratedFiles/Debug -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers
|
||||
DEL_FILE = rm -f
|
||||
MOVE = mv -f
|
||||
|
||||
@@ -54,7 +54,7 @@ GeneratedFiles/Debug/moc_genemoji.cpp: ../../Libraries/QtStatic/qtbase/include/Q
|
||||
../../Libraries/QtStatic/qtbase/include/QtCore/QCoreApplication \
|
||||
../../Libraries/QtStatic/qtbase/include/QtGui/QGuiApplication \
|
||||
SourceFiles/_other/genemoji.h
|
||||
/usr/local/Qt-5.5.0/bin/moc $(DEFINES) -D__APPLE__ -D__GNUC__=4 -I/usr/local/Qt-5.5.0/mkspecs/macx-clang -I. -I/usr/local/Qt-5.5.0/include/QtGui/5.5.0/QtGui -I/usr/local/Qt-5.5.0/include/QtCore/5.5.0/QtCore -I/usr/local/Qt-5.5.0/include -I/usr/local/Qt-5.5.0/include/QtGui -I/usr/local/Qt-5.5.0/include/QtCore -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1/backward -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/5.1/include -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include SourceFiles/_other/genemoji.h -o GeneratedFiles/Debug/moc_genemoji.cpp
|
||||
/usr/local/Qt-5.5.1/bin/moc $(DEFINES) -D__APPLE__ -D__GNUC__=4 -I/usr/local/Qt-5.5.1/mkspecs/macx-clang -I. -I/usr/local/Qt-5.5.1/include/QtGui/5.5.1/QtGui -I/usr/local/Qt-5.5.1/include/QtCore/5.5.1/QtCore -I/usr/local/Qt-5.5.1/include -I/usr/local/Qt-5.5.1/include/QtGui -I/usr/local/Qt-5.5.1/include/QtCore -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1/backward -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/5.1/include -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include SourceFiles/_other/genemoji.h -o GeneratedFiles/Debug/moc_genemoji.cpp
|
||||
|
||||
compiler_moc_source_make_all:
|
||||
compiler_moc_source_clean:
|
||||
|
||||
@@ -12,7 +12,7 @@ CONFIG(release, debug|release) {
|
||||
DESTDIR = ./../ReleaseLang
|
||||
}
|
||||
|
||||
CONFIG += plugin static
|
||||
CONFIG += plugin static c++11
|
||||
|
||||
macx {
|
||||
QMAKE_INFO_PLIST = ./SourceFiles/_other/Lang.plist
|
||||
@@ -27,7 +27,7 @@ HEADERS += \
|
||||
./SourceFiles/_other/mlmain.h \
|
||||
./SourceFiles/_other/genlang.h \
|
||||
|
||||
INCLUDEPATH += ./../../Libraries/QtStatic/qtbase/include/QtGui/5.5.0/QtGui\
|
||||
./../../Libraries/QtStatic/qtbase/include/QtCore/5.5.0/QtCore\
|
||||
INCLUDEPATH += ./../../Libraries/QtStatic/qtbase/include/QtGui/5.5.1/QtGui\
|
||||
./../../Libraries/QtStatic/qtbase/include/QtCore/5.5.1/QtCore\
|
||||
./../../Libraries/QtStatic/qtbase/include\
|
||||
|
||||
|
||||
@@ -54,15 +54,15 @@
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v120_xp</PlatformToolset>
|
||||
<PlatformToolset>v140_xp</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v120_xp</PlatformToolset>
|
||||
<PlatformToolset>v140_xp</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Deploy|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v120_xp</PlatformToolset>
|
||||
<PlatformToolset>v140_xp</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
|
||||
@@ -22,8 +22,8 @@
|
||||
/* End PBXAggregateTarget section */
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
0E4EEB1BFC9FA7662AD934C6 /* moc_genlang.cpp in Compile Sources */ = {isa = PBXBuildFile; fileRef = 680437016D61255E7F889A94 /* moc_genlang.cpp */; settings = {ATTRIBUTES = (); }; };
|
||||
07D7954A1B5544B200DE9598 /* qtpcre in Link Binary With Libraries */ = {isa = PBXBuildFile; fileRef = 07D795491B5544B200DE9598 /* qtpcre */; };
|
||||
0E4EEB1BFC9FA7662AD934C6 /* moc_genlang.cpp in Compile Sources */ = {isa = PBXBuildFile; fileRef = 680437016D61255E7F889A94 /* moc_genlang.cpp */; settings = {ATTRIBUTES = (); }; };
|
||||
1A681B886F50EE30FBE62B4B /* Qt5PrintSupport in Link Binary With Libraries */ = {isa = PBXBuildFile; fileRef = DBF506D10449BFABD45B82DA /* Qt5PrintSupport */; };
|
||||
1BB705CDB741E2B7450201A5 /* Cocoa.framework in Link Binary With Libraries */ = {isa = PBXBuildFile; fileRef = AEA456A2F75ED9F5CDA7BCBE /* Cocoa.framework */; };
|
||||
328FD74542F6E2C873EE4D4B /* ApplicationServices.framework in Link Binary With Libraries */ = {isa = PBXBuildFile; fileRef = DFD7912080BC557230093752 /* ApplicationServices.framework */; };
|
||||
@@ -64,161 +64,161 @@
|
||||
/* End PBXContainerItemProxy section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
04391BE7A8B9D811E255100A /* Qt5Gui */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Gui; path = "/usr/local/Qt-5.5.0/lib/libQt5Gui$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
060A694B42A4555240009936 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtga.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtga.pri"; sourceTree = "<absolute>"; };
|
||||
075EB50EB07CF69FD62FB8DF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql_private.pri"; sourceTree = "<absolute>"; };
|
||||
07D795491B5544B200DE9598 /* qtpcre */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtpcre; path = "usr/local/Qt-5.5.0/lib/libqtpcre$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<group>"; };
|
||||
0ABCEA8D0DD45589040B0AF2 /* /usr/local/Qt-5.5.0/mkspecs/common/unix.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/unix.conf"; sourceTree = "<absolute>"; };
|
||||
111BBEE3D1432C3B517FD539 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdds.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdds.pri"; sourceTree = "<absolute>"; };
|
||||
16DD53E17C65AC8B450CC6C3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick.pri"; sourceTree = "<absolute>"; };
|
||||
1FAE75C970AA73F2DEDDB508 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfcamera.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfcamera.pri"; sourceTree = "<absolute>"; };
|
||||
23BC8B0FC3279421D41CA268 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui.pri"; sourceTree = "<absolute>"; };
|
||||
2440CD1D4CEF80443BCA1B8B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qgenericbearer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qgenericbearer.pri"; sourceTree = "<absolute>"; };
|
||||
247D8DF3B1DDB665B80BBA25 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblequick.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblequick.pri"; sourceTree = "<absolute>"; };
|
||||
24B6929EE3952310F2DAECB1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri"; sourceTree = "<absolute>"; };
|
||||
28BD0D10214709D95B161E24 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets.pri"; sourceTree = "<absolute>"; };
|
||||
293C8DEEE270847AC20E70F9 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network.pri"; sourceTree = "<absolute>"; };
|
||||
2E48BB382B895A5ACD79AF9F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth_private.pri"; sourceTree = "<absolute>"; };
|
||||
2E6D9B1D2743D24E31B0B284 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns.pri"; sourceTree = "<absolute>"; };
|
||||
311004331A04F3D69C98643C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport_private.pri"; sourceTree = "<absolute>"; };
|
||||
31120EDB269DFF13E1D49847 /* qicns */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qicns; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqicns$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
04391BE7A8B9D811E255100A /* Qt5Gui */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Gui; path = "/usr/local/Qt-5.5.1/lib/libQt5Gui$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
060A694B42A4555240009936 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtga.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtga.pri"; sourceTree = "<absolute>"; };
|
||||
075EB50EB07CF69FD62FB8DF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql_private.pri"; sourceTree = "<absolute>"; };
|
||||
07D795491B5544B200DE9598 /* qtpcre */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtpcre; path = "usr/local/Qt-5.5.1/lib/libqtpcre$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<group>"; };
|
||||
0ABCEA8D0DD45589040B0AF2 /* /usr/local/Qt-5.5.1/mkspecs/common/unix.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/unix.conf"; sourceTree = "<absolute>"; };
|
||||
111BBEE3D1432C3B517FD539 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdds.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdds.pri"; sourceTree = "<absolute>"; };
|
||||
16DD53E17C65AC8B450CC6C3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick.pri"; sourceTree = "<absolute>"; };
|
||||
1FAE75C970AA73F2DEDDB508 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfcamera.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfcamera.pri"; sourceTree = "<absolute>"; };
|
||||
23BC8B0FC3279421D41CA268 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui.pri"; sourceTree = "<absolute>"; };
|
||||
2440CD1D4CEF80443BCA1B8B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qgenericbearer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qgenericbearer.pri"; sourceTree = "<absolute>"; };
|
||||
247D8DF3B1DDB665B80BBA25 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblequick.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblequick.pri"; sourceTree = "<absolute>"; };
|
||||
24B6929EE3952310F2DAECB1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri"; sourceTree = "<absolute>"; };
|
||||
28BD0D10214709D95B161E24 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets.pri"; sourceTree = "<absolute>"; };
|
||||
293C8DEEE270847AC20E70F9 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network.pri"; sourceTree = "<absolute>"; };
|
||||
2E48BB382B895A5ACD79AF9F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth_private.pri"; sourceTree = "<absolute>"; };
|
||||
2E6D9B1D2743D24E31B0B284 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns.pri"; sourceTree = "<absolute>"; };
|
||||
311004331A04F3D69C98643C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport_private.pri"; sourceTree = "<absolute>"; };
|
||||
31120EDB269DFF13E1D49847 /* qicns */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qicns; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqicns$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
33A9E861B2FAD8C39E154E7C /* MetaLang.pro */ = {isa = PBXFileReference; lastKnownFileType = text; path = MetaLang.pro; sourceTree = "<absolute>"; };
|
||||
33F165B1DB8CBF182C56FAB5 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras_private.pri"; sourceTree = "<absolute>"; };
|
||||
346287C9E754E7C458153F03 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwbmp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwbmp.pri"; sourceTree = "<absolute>"; };
|
||||
360D4B3ED25D126430DE27D4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio.pri"; sourceTree = "<absolute>"; };
|
||||
3685604BDB64DD6E92169B73 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdeclarativeview.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdeclarativeview.pri"; sourceTree = "<absolute>"; };
|
||||
382E89A91A34F7898C25FD0D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network_private.pri"; sourceTree = "<absolute>"; };
|
||||
3F08D430CEC8D2117735CCB4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri"; sourceTree = "<absolute>"; };
|
||||
45B95DB3B70B47A910FC847B /* /usr/local/Qt-5.5.0/mkspecs/common/gcc-base.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/gcc-base.conf"; sourceTree = "<absolute>"; };
|
||||
45DB132B756499D4DF38430E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qjp2.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qjp2.pri"; sourceTree = "<absolute>"; };
|
||||
4689C06178B60B84E7F3A3B7 /* Qt5Widgets */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Widgets; path = "/usr/local/Qt-5.5.0/lib/libQt5Widgets$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
4C6C71914B1926119120DACD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio_private.pri"; sourceTree = "<absolute>"; };
|
||||
33F165B1DB8CBF182C56FAB5 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras_private.pri"; sourceTree = "<absolute>"; };
|
||||
346287C9E754E7C458153F03 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwbmp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwbmp.pri"; sourceTree = "<absolute>"; };
|
||||
360D4B3ED25D126430DE27D4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio.pri"; sourceTree = "<absolute>"; };
|
||||
3685604BDB64DD6E92169B73 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdeclarativeview.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdeclarativeview.pri"; sourceTree = "<absolute>"; };
|
||||
382E89A91A34F7898C25FD0D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network_private.pri"; sourceTree = "<absolute>"; };
|
||||
3F08D430CEC8D2117735CCB4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri"; sourceTree = "<absolute>"; };
|
||||
45B95DB3B70B47A910FC847B /* /usr/local/Qt-5.5.1/mkspecs/common/gcc-base.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/gcc-base.conf"; sourceTree = "<absolute>"; };
|
||||
45DB132B756499D4DF38430E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qjp2.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qjp2.pri"; sourceTree = "<absolute>"; };
|
||||
4689C06178B60B84E7F3A3B7 /* Qt5Widgets */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Widgets; path = "/usr/local/Qt-5.5.1/lib/libQt5Widgets$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
4C6C71914B1926119120DACD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio_private.pri"; sourceTree = "<absolute>"; };
|
||||
4D765E1B1EA6C757220C63E7 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = /System/Library/Frameworks/CoreFoundation.framework; sourceTree = "<absolute>"; };
|
||||
4FB6657DA22BC68B819B64B3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmldevtools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmldevtools_private.pri"; sourceTree = "<absolute>"; };
|
||||
4FB6657DA22BC68B819B64B3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmldevtools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmldevtools_private.pri"; sourceTree = "<absolute>"; };
|
||||
54D6D1A7260739988F6FC406 /* genlang.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = genlang.h; path = SourceFiles/_other/genlang.h; sourceTree = "<absolute>"; };
|
||||
5597304BEC94BFB9EAAEBC4B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions_private.pri"; sourceTree = "<absolute>"; };
|
||||
5A80A1907B6CFFB524C1E57D /* Qt5Core */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Core; path = "/usr/local/Qt-5.5.0/lib/libQt5Core$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
5B22E9E4EE9AAE42ABC24AB3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri"; sourceTree = "<absolute>"; };
|
||||
5CEA7A2DB2136425A88D1254 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl.pri"; sourceTree = "<absolute>"; };
|
||||
5F781C7FD8422D359EA1D2FE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core_private.pri"; sourceTree = "<absolute>"; };
|
||||
6102C69805B6398AF6FA5BEB /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml_private.pri"; sourceTree = "<absolute>"; };
|
||||
63E722139886C87BC82DBDF5 /* /usr/local/Qt-5.5.0/mkspecs/macx-clang/qmake.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/macx-clang/qmake.conf"; sourceTree = "<absolute>"; };
|
||||
5597304BEC94BFB9EAAEBC4B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions_private.pri"; sourceTree = "<absolute>"; };
|
||||
5A80A1907B6CFFB524C1E57D /* Qt5Core */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Core; path = "/usr/local/Qt-5.5.1/lib/libQt5Core$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
5B22E9E4EE9AAE42ABC24AB3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri"; sourceTree = "<absolute>"; };
|
||||
5CEA7A2DB2136425A88D1254 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl.pri"; sourceTree = "<absolute>"; };
|
||||
5F781C7FD8422D359EA1D2FE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core_private.pri"; sourceTree = "<absolute>"; };
|
||||
6102C69805B6398AF6FA5BEB /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml_private.pri"; sourceTree = "<absolute>"; };
|
||||
63E722139886C87BC82DBDF5 /* /usr/local/Qt-5.5.1/mkspecs/macx-clang/qmake.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/macx-clang/qmake.conf"; sourceTree = "<absolute>"; };
|
||||
669AB12AE74AC219B4669D79 /* genlang.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = genlang.cpp; path = SourceFiles/_other/genlang.cpp; sourceTree = "<absolute>"; };
|
||||
669FB007C4A3D58424D85EC8 /* /usr/local/Qt-5.5.0/mkspecs/common/shell-unix.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/shell-unix.conf"; sourceTree = "<absolute>"; };
|
||||
669FB007C4A3D58424D85EC8 /* /usr/local/Qt-5.5.1/mkspecs/common/shell-unix.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/shell-unix.conf"; sourceTree = "<absolute>"; };
|
||||
680437016D61255E7F889A94 /* moc_genlang.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = moc_genlang.cpp; path = GeneratedFiles/Debug/moc_genlang.cpp; sourceTree = "<absolute>"; };
|
||||
69347C39E4D922E94D0860BF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designercomponents_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designercomponents_private.pri"; sourceTree = "<absolute>"; };
|
||||
6C08BFC27C4C303A3A5181DB /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport.pri"; sourceTree = "<absolute>"; };
|
||||
6E67D23B15FC4B628DB2E0B2 /* /usr/local/Qt-5.5.0/mkspecs/qdevice.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/qdevice.pri"; sourceTree = "<absolute>"; };
|
||||
74C1C232DFAA71028A0412CA /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri"; sourceTree = "<absolute>"; };
|
||||
77FF486B1F9BCD55A8A3F35D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent.pri"; sourceTree = "<absolute>"; };
|
||||
7A94C7168B3FCBE5F04A013B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative.pri"; sourceTree = "<absolute>"; };
|
||||
7C2F42B222EE88E26A6FED62 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer_private.pri"; sourceTree = "<absolute>"; };
|
||||
7D28E9003CE64D8A7F2E292E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent_private.pri"; sourceTree = "<absolute>"; };
|
||||
7DE30A90667C03C4F91A2A91 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql.pri"; sourceTree = "<absolute>"; };
|
||||
7ECCC1F9442988B4F2707CC1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core.pri"; sourceTree = "<absolute>"; };
|
||||
817A0F5A41B553A6DE67FDEB /* /usr/local/Qt-5.5.0/mkspecs/common/macx.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/macx.conf"; sourceTree = "<absolute>"; };
|
||||
82E7DCFD95559532D8FC6CDD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickparticles_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickparticles_private.pri"; sourceTree = "<absolute>"; };
|
||||
83D37373949868693FB7816D /* qmng */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qmng; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqmng$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
69347C39E4D922E94D0860BF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designercomponents_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designercomponents_private.pri"; sourceTree = "<absolute>"; };
|
||||
6C08BFC27C4C303A3A5181DB /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport.pri"; sourceTree = "<absolute>"; };
|
||||
6E67D23B15FC4B628DB2E0B2 /* /usr/local/Qt-5.5.1/mkspecs/qdevice.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/qdevice.pri"; sourceTree = "<absolute>"; };
|
||||
74C1C232DFAA71028A0412CA /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri"; sourceTree = "<absolute>"; };
|
||||
77FF486B1F9BCD55A8A3F35D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent.pri"; sourceTree = "<absolute>"; };
|
||||
7A94C7168B3FCBE5F04A013B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative.pri"; sourceTree = "<absolute>"; };
|
||||
7C2F42B222EE88E26A6FED62 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer_private.pri"; sourceTree = "<absolute>"; };
|
||||
7D28E9003CE64D8A7F2E292E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent_private.pri"; sourceTree = "<absolute>"; };
|
||||
7DE30A90667C03C4F91A2A91 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql.pri"; sourceTree = "<absolute>"; };
|
||||
7ECCC1F9442988B4F2707CC1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core.pri"; sourceTree = "<absolute>"; };
|
||||
817A0F5A41B553A6DE67FDEB /* /usr/local/Qt-5.5.1/mkspecs/common/macx.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/macx.conf"; sourceTree = "<absolute>"; };
|
||||
82E7DCFD95559532D8FC6CDD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickparticles_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickparticles_private.pri"; sourceTree = "<absolute>"; };
|
||||
83D37373949868693FB7816D /* qmng */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qmng; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqmng$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
83FFCB79DDEB015B4A5CB301 /* MetaLang.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MetaLang.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
85061B1DA49D125991117950 /* /usr/local/Qt-5.5.0/mkspecs/macx-xcode/qmake.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/macx-xcode/qmake.conf"; sourceTree = "<absolute>"; };
|
||||
85B6936EDBE61D9BB8F8B33B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors.pri"; sourceTree = "<absolute>"; };
|
||||
87A4C1983FD641360BF80A02 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri"; sourceTree = "<absolute>"; };
|
||||
87EEF25EE25CF21572D1438C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets_private.pri"; sourceTree = "<absolute>"; };
|
||||
8849E60AEC7DB97A475C17EA /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib_private.pri"; sourceTree = "<absolute>"; };
|
||||
892D36BEF797BA4AF48D378A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_dummy.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_dummy.pri"; sourceTree = "<absolute>"; };
|
||||
89863CCAF1D29037AE95755D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative_private.pri"; sourceTree = "<absolute>"; };
|
||||
8A04A4A3625204D12A1207F6 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc.pri"; sourceTree = "<absolute>"; };
|
||||
8B4BB4E74F8A4442EF563D7D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri"; sourceTree = "<absolute>"; };
|
||||
8C31D89BDFCDF466DAED19A0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick_private.pri"; sourceTree = "<absolute>"; };
|
||||
8C5164D4E37556D40C5E6AA2 /* /usr/local/Qt-5.5.0/mkspecs/common/clang.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/clang.conf"; sourceTree = "<absolute>"; };
|
||||
8CF51323544B886B8F4A2232 /* qwbmp */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qwbmp; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqwbmp$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
85061B1DA49D125991117950 /* /usr/local/Qt-5.5.1/mkspecs/macx-xcode/qmake.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/macx-xcode/qmake.conf"; sourceTree = "<absolute>"; };
|
||||
85B6936EDBE61D9BB8F8B33B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors.pri"; sourceTree = "<absolute>"; };
|
||||
87A4C1983FD641360BF80A02 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri"; sourceTree = "<absolute>"; };
|
||||
87EEF25EE25CF21572D1438C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets_private.pri"; sourceTree = "<absolute>"; };
|
||||
8849E60AEC7DB97A475C17EA /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib_private.pri"; sourceTree = "<absolute>"; };
|
||||
892D36BEF797BA4AF48D378A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_dummy.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_dummy.pri"; sourceTree = "<absolute>"; };
|
||||
89863CCAF1D29037AE95755D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative_private.pri"; sourceTree = "<absolute>"; };
|
||||
8A04A4A3625204D12A1207F6 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc.pri"; sourceTree = "<absolute>"; };
|
||||
8B4BB4E74F8A4442EF563D7D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri"; sourceTree = "<absolute>"; };
|
||||
8C31D89BDFCDF466DAED19A0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick_private.pri"; sourceTree = "<absolute>"; };
|
||||
8C5164D4E37556D40C5E6AA2 /* /usr/local/Qt-5.5.1/mkspecs/common/clang.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/clang.conf"; sourceTree = "<absolute>"; };
|
||||
8CF51323544B886B8F4A2232 /* qwbmp */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qwbmp; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqwbmp$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
8D9815BDB5BD9F90D2BC05C5 /* AGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AGL.framework; path = /System/Library/Frameworks/AGL.framework; sourceTree = "<absolute>"; };
|
||||
8DDE1D26B3206CDB8B57FABE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg_private.pri"; sourceTree = "<absolute>"; };
|
||||
8E9136256AFFBA6EF048AA55 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
8F500B5166907B6D9A7C3E3D /* qico */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qico; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqico$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
8F572030CE9AB8CC5F672201 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_platformsupport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_platformsupport_private.pri"; sourceTree = "<absolute>"; };
|
||||
8F97C9CAE38CA3AFAC0B3953 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets.pri"; sourceTree = "<absolute>"; };
|
||||
946BEA667170DC1A7A8F9DB0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmng.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmng.pri"; sourceTree = "<absolute>"; };
|
||||
8DDE1D26B3206CDB8B57FABE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg_private.pri"; sourceTree = "<absolute>"; };
|
||||
8E9136256AFFBA6EF048AA55 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
8F500B5166907B6D9A7C3E3D /* qico */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qico; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqico$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
8F572030CE9AB8CC5F672201 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_platformsupport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_platformsupport_private.pri"; sourceTree = "<absolute>"; };
|
||||
8F97C9CAE38CA3AFAC0B3953 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets.pri"; sourceTree = "<absolute>"; };
|
||||
946BEA667170DC1A7A8F9DB0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmng.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmng.pri"; sourceTree = "<absolute>"; };
|
||||
9742F24EE18EA44D52824F1E /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = /System/Library/Frameworks/CoreServices.framework; sourceTree = "<absolute>"; };
|
||||
9A0BDF67E013BB4FFB8685B0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qqt7engine.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qqt7engine.pri"; sourceTree = "<absolute>"; };
|
||||
9A0BDF67E013BB4FFB8685B0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qqt7engine.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qqt7engine.pri"; sourceTree = "<absolute>"; };
|
||||
9DFF62A901D70814B8A323D4 /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = /System/Library/Frameworks/Carbon.framework; sourceTree = "<absolute>"; };
|
||||
A022AF919D1977534CA66BB8 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets.pri"; sourceTree = "<absolute>"; };
|
||||
A022AF919D1977534CA66BB8 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets.pri"; sourceTree = "<absolute>"; };
|
||||
A1A67BEAA744704B29168D39 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = /System/Library/Frameworks/IOKit.framework; sourceTree = "<absolute>"; };
|
||||
A4D8AC60897F435C1C3B9D02 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_generic.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_generic.pri"; sourceTree = "<absolute>"; };
|
||||
A59F74CD76FDC2B4B9910E18 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools_private.pri"; sourceTree = "<absolute>"; };
|
||||
A5B17ABEFBA1C2F43443D644 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras.pri"; sourceTree = "<absolute>"; };
|
||||
A4D8AC60897F435C1C3B9D02 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_generic.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_generic.pri"; sourceTree = "<absolute>"; };
|
||||
A59F74CD76FDC2B4B9910E18 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools_private.pri"; sourceTree = "<absolute>"; };
|
||||
A5B17ABEFBA1C2F43443D644 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras.pri"; sourceTree = "<absolute>"; };
|
||||
A83296E7180A28ABB0FD85D2 /* mlmain.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = mlmain.cpp; path = SourceFiles/_other/mlmain.cpp; sourceTree = "<absolute>"; };
|
||||
A9E30FA27827990C5F182223 /* /usr/local/Qt-5.5.0/mkspecs/common/gcc-base-mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/gcc-base-mac.conf"; sourceTree = "<absolute>"; };
|
||||
AA73DC3C2901E2979FE8AD5B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml.pri"; sourceTree = "<absolute>"; };
|
||||
AB1C02DDBD8E88DD9A9AFDDD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri"; sourceTree = "<absolute>"; };
|
||||
A9E30FA27827990C5F182223 /* /usr/local/Qt-5.5.1/mkspecs/common/gcc-base-mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/gcc-base-mac.conf"; sourceTree = "<absolute>"; };
|
||||
AA73DC3C2901E2979FE8AD5B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml.pri"; sourceTree = "<absolute>"; };
|
||||
AB1C02DDBD8E88DD9A9AFDDD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri"; sourceTree = "<absolute>"; };
|
||||
AB745978DF0F41D1801ABDA6 /* .qmake.stash */ = {isa = PBXFileReference; lastKnownFileType = file; path = .qmake.stash; sourceTree = "<absolute>"; };
|
||||
ABA9AB4619F09DCFD2D4A27F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest_private.pri"; sourceTree = "<absolute>"; };
|
||||
ACC8A73268E5D9AF64E97AF4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth.pri"; sourceTree = "<absolute>"; };
|
||||
ADC6308023253CEA51F86E21 /* qwebp */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qwebp; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqwebp$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
ADFC79902C14A612AE93A89A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg.pri"; sourceTree = "<absolute>"; };
|
||||
ABA9AB4619F09DCFD2D4A27F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest_private.pri"; sourceTree = "<absolute>"; };
|
||||
ACC8A73268E5D9AF64E97AF4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth.pri"; sourceTree = "<absolute>"; };
|
||||
ADC6308023253CEA51F86E21 /* qwebp */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qwebp; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqwebp$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
ADFC79902C14A612AE93A89A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg.pri"; sourceTree = "<absolute>"; };
|
||||
AEA456A2F75ED9F5CDA7BCBE /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
|
||||
AFD721AA33A2F785E77B1698 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcocoa.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcocoa.pri"; sourceTree = "<absolute>"; };
|
||||
B064BF3B496A7BF7A449CA1E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsqlite.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsqlite.pri"; sourceTree = "<absolute>"; };
|
||||
B2246267D4C0D789259A86B0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
B26239063A068F800A2C95F4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwebp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwebp.pri"; sourceTree = "<absolute>"; };
|
||||
B382B645B34234E451AE5D94 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml.pri"; sourceTree = "<absolute>"; };
|
||||
B518DA4EE7376002AFC71FD5 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools_private.pri"; sourceTree = "<absolute>"; };
|
||||
B51B01657BFE9EAEF5590561 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc_private.pri"; sourceTree = "<absolute>"; };
|
||||
B678DA730B4ECE863AD631AE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qminimal.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qminimal.pri"; sourceTree = "<absolute>"; };
|
||||
B8525798C5AA7D7C6D68E1B3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri"; sourceTree = "<absolute>"; };
|
||||
B8C1F6C965A7A14FBA8D4518 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri"; sourceTree = "<absolute>"; };
|
||||
BD22EFEFCC02644B1883CE19 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtiff.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtiff.pri"; sourceTree = "<absolute>"; };
|
||||
BD4D97801B547471B37A4CDC /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bootstrap_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bootstrap_private.pri"; sourceTree = "<absolute>"; };
|
||||
BDC9ECADEE40D11E3C2EA93F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors_private.pri"; sourceTree = "<absolute>"; };
|
||||
BFF0C38FB0EC140C5F0304AE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport.pri"; sourceTree = "<absolute>"; };
|
||||
C4295BE59CCEBCDD16268349 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qico.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qico.pri"; sourceTree = "<absolute>"; };
|
||||
C505A18319B9B63C63877858 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script_private.pri"; sourceTree = "<absolute>"; };
|
||||
C84546C18DCBB04166195DCF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri"; sourceTree = "<absolute>"; };
|
||||
CCF75CFFB857487FB18F99F9 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qoffscreen.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qoffscreen.pri"; sourceTree = "<absolute>"; };
|
||||
CE829DD126DD2B97E8D70A7A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools.pri"; sourceTree = "<absolute>"; };
|
||||
CF86CD5BB01B9011E6B6FD3E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_clucene_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_clucene_private.pri"; sourceTree = "<absolute>"; };
|
||||
CFCB992BEC24B71BFB8A2F30 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script.pri"; sourceTree = "<absolute>"; };
|
||||
CFFBE05DB004895080314289 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvgicon.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvgicon.pri"; sourceTree = "<absolute>"; };
|
||||
D0CDC87DAFDA7F18A7AF450F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport_private.pri"; sourceTree = "<absolute>"; };
|
||||
D1FA7CAB5ACC09D563AE569F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
D2FE4D909926A0D1656068C4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia.pri"; sourceTree = "<absolute>"; };
|
||||
D3D1BE0BEA3AEE0551AD39AC /* qdds */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qdds; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqdds$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
AFD721AA33A2F785E77B1698 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcocoa.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcocoa.pri"; sourceTree = "<absolute>"; };
|
||||
B064BF3B496A7BF7A449CA1E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsqlite.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsqlite.pri"; sourceTree = "<absolute>"; };
|
||||
B2246267D4C0D789259A86B0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
B26239063A068F800A2C95F4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwebp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwebp.pri"; sourceTree = "<absolute>"; };
|
||||
B382B645B34234E451AE5D94 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml.pri"; sourceTree = "<absolute>"; };
|
||||
B518DA4EE7376002AFC71FD5 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools_private.pri"; sourceTree = "<absolute>"; };
|
||||
B51B01657BFE9EAEF5590561 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc_private.pri"; sourceTree = "<absolute>"; };
|
||||
B678DA730B4ECE863AD631AE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qminimal.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qminimal.pri"; sourceTree = "<absolute>"; };
|
||||
B8525798C5AA7D7C6D68E1B3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri"; sourceTree = "<absolute>"; };
|
||||
B8C1F6C965A7A14FBA8D4518 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri"; sourceTree = "<absolute>"; };
|
||||
BD22EFEFCC02644B1883CE19 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtiff.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtiff.pri"; sourceTree = "<absolute>"; };
|
||||
BD4D97801B547471B37A4CDC /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bootstrap_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bootstrap_private.pri"; sourceTree = "<absolute>"; };
|
||||
BDC9ECADEE40D11E3C2EA93F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors_private.pri"; sourceTree = "<absolute>"; };
|
||||
BFF0C38FB0EC140C5F0304AE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport.pri"; sourceTree = "<absolute>"; };
|
||||
C4295BE59CCEBCDD16268349 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qico.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qico.pri"; sourceTree = "<absolute>"; };
|
||||
C505A18319B9B63C63877858 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script_private.pri"; sourceTree = "<absolute>"; };
|
||||
C84546C18DCBB04166195DCF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri"; sourceTree = "<absolute>"; };
|
||||
CCF75CFFB857487FB18F99F9 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qoffscreen.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qoffscreen.pri"; sourceTree = "<absolute>"; };
|
||||
CE829DD126DD2B97E8D70A7A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools.pri"; sourceTree = "<absolute>"; };
|
||||
CF86CD5BB01B9011E6B6FD3E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_clucene_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_clucene_private.pri"; sourceTree = "<absolute>"; };
|
||||
CFCB992BEC24B71BFB8A2F30 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script.pri"; sourceTree = "<absolute>"; };
|
||||
CFFBE05DB004895080314289 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvgicon.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvgicon.pri"; sourceTree = "<absolute>"; };
|
||||
D0CDC87DAFDA7F18A7AF450F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport_private.pri"; sourceTree = "<absolute>"; };
|
||||
D1FA7CAB5ACC09D563AE569F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
D2FE4D909926A0D1656068C4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia.pri"; sourceTree = "<absolute>"; };
|
||||
D3D1BE0BEA3AEE0551AD39AC /* qdds */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qdds; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqdds$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
D4B32C2222F82AC56BADEB21 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = /System/Library/Frameworks/OpenGL.framework; sourceTree = "<absolute>"; };
|
||||
D4DE537C1FBBD48BD989FAD1 /* /usr/local/Qt-5.5.0/mkspecs/qconfig.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/qconfig.pri"; sourceTree = "<absolute>"; };
|
||||
D5141F795670589C8CC41CBC /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_cocoaprintersupport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_cocoaprintersupport.pri"; sourceTree = "<absolute>"; };
|
||||
D53D8E6A188E05078A114294 /* qcocoa */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qcocoa; path = "/usr/local/Qt-5.5.0/plugins/platforms/libqcocoa$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
D6193B79CECC9DD0142D1200 /* qtharfbuzzng */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtharfbuzzng; path = "/usr/local/Qt-5.5.0/lib/libqtharfbuzzng$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
D7A0618DE39A427EBF41940E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help_private.pri"; sourceTree = "<absolute>"; };
|
||||
D4DE537C1FBBD48BD989FAD1 /* /usr/local/Qt-5.5.1/mkspecs/qconfig.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/qconfig.pri"; sourceTree = "<absolute>"; };
|
||||
D5141F795670589C8CC41CBC /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_cocoaprintersupport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_cocoaprintersupport.pri"; sourceTree = "<absolute>"; };
|
||||
D53D8E6A188E05078A114294 /* qcocoa */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qcocoa; path = "/usr/local/Qt-5.5.1/plugins/platforms/libqcocoa$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
D6193B79CECC9DD0142D1200 /* qtharfbuzzng */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtharfbuzzng; path = "/usr/local/Qt-5.5.1/lib/libqtharfbuzzng$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
D7A0618DE39A427EBF41940E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help_private.pri"; sourceTree = "<absolute>"; };
|
||||
D7D645CBFF3B86CF39CEF3DA /* mlmain.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mlmain.h; path = SourceFiles/_other/mlmain.h; sourceTree = "<absolute>"; };
|
||||
D81E3D9A18202BE8EC3D0E2C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui_private.pri"; sourceTree = "<absolute>"; };
|
||||
D948D4D8F949D45158F8DE35 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets.pri"; sourceTree = "<absolute>"; };
|
||||
DB0A26DDC377B2004F61BFE3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib.pri"; sourceTree = "<absolute>"; };
|
||||
DBF506D10449BFABD45B82DA /* Qt5PrintSupport */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5PrintSupport; path = "/usr/local/Qt-5.5.0/lib/libQt5PrintSupport$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
DCEFD9167C239650120B0145 /* qtga */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtga; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqtga$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
DF8188E30892A4654B984221 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest.pri"; sourceTree = "<absolute>"; };
|
||||
D81E3D9A18202BE8EC3D0E2C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui_private.pri"; sourceTree = "<absolute>"; };
|
||||
D948D4D8F949D45158F8DE35 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets.pri"; sourceTree = "<absolute>"; };
|
||||
DB0A26DDC377B2004F61BFE3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib.pri"; sourceTree = "<absolute>"; };
|
||||
DBF506D10449BFABD45B82DA /* Qt5PrintSupport */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5PrintSupport; path = "/usr/local/Qt-5.5.1/lib/libQt5PrintSupport$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
DCEFD9167C239650120B0145 /* qtga */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtga; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqtga$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
DF8188E30892A4654B984221 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest.pri"; sourceTree = "<absolute>"; };
|
||||
DFD7912080BC557230093752 /* ApplicationServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ApplicationServices.framework; path = /System/Library/Frameworks/ApplicationServices.framework; sourceTree = "<absolute>"; };
|
||||
E0F4563EA350EB65112A0EF4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl_private.pri"; sourceTree = "<absolute>"; };
|
||||
E37365B4489B4918BEBB707D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml_private.pri"; sourceTree = "<absolute>"; };
|
||||
E432DA897A5F027987342E8F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions.pri"; sourceTree = "<absolute>"; };
|
||||
E50FA73B8A23BC179A642B27 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools.pri"; sourceTree = "<absolute>"; };
|
||||
E66B9EC81C285CA9A7FB6A2E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning_private.pri"; sourceTree = "<absolute>"; };
|
||||
E7B2F248E3F7970788F35BF5 /* Qt5PlatformSupport */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5PlatformSupport; path = "/usr/local/Qt-5.5.0/lib/libQt5PlatformSupport$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
E7D67CB158408BB7DEA74764 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia_private.pri"; sourceTree = "<absolute>"; };
|
||||
EA5D4FF9DE4AC4215D7DCE0D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcorewlanbearer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcorewlanbearer.pri"; sourceTree = "<absolute>"; };
|
||||
EB1F99FD112917157F3C3F6E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qicns.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qicns.pri"; sourceTree = "<absolute>"; };
|
||||
EB29AC635054C09EFA749AE1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp.pri"; sourceTree = "<absolute>"; };
|
||||
EBD39B69F368CEEAC360A16D /* /usr/local/Qt-5.5.0/mkspecs/common/mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/mac.conf"; sourceTree = "<absolute>"; };
|
||||
F0681BC551FC8A2B132FC646 /* qjp2 */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qjp2; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqjp2$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
F0A58515945747E36783CC21 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_inspector.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_inspector.pri"; sourceTree = "<absolute>"; };
|
||||
F2453BA07315EB9F34F1CD57 /* qtiff */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtiff; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqtiff$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
F2F823087EA182CCBD5748B8 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer.pri"; sourceTree = "<absolute>"; };
|
||||
F33BE16353DD1557A9AB3558 /* /usr/local/Qt-5.5.0/mkspecs/common/clang-mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/clang-mac.conf"; sourceTree = "<absolute>"; };
|
||||
F4EB01857048DCFCFFAAC4D0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfmediaplayer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfmediaplayer.pri"; sourceTree = "<absolute>"; };
|
||||
F7ADBF552F6B9A5982915164 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning.pri"; sourceTree = "<absolute>"; };
|
||||
F83F87F8A60C9DF666911D42 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvg.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvg.pri"; sourceTree = "<absolute>"; };
|
||||
F9BEAA743A908603687DA204 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns_private.pri"; sourceTree = "<absolute>"; };
|
||||
E0F4563EA350EB65112A0EF4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl_private.pri"; sourceTree = "<absolute>"; };
|
||||
E37365B4489B4918BEBB707D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml_private.pri"; sourceTree = "<absolute>"; };
|
||||
E432DA897A5F027987342E8F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions.pri"; sourceTree = "<absolute>"; };
|
||||
E50FA73B8A23BC179A642B27 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools.pri"; sourceTree = "<absolute>"; };
|
||||
E66B9EC81C285CA9A7FB6A2E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning_private.pri"; sourceTree = "<absolute>"; };
|
||||
E7B2F248E3F7970788F35BF5 /* Qt5PlatformSupport */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5PlatformSupport; path = "/usr/local/Qt-5.5.1/lib/libQt5PlatformSupport$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
E7D67CB158408BB7DEA74764 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia_private.pri"; sourceTree = "<absolute>"; };
|
||||
EA5D4FF9DE4AC4215D7DCE0D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcorewlanbearer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcorewlanbearer.pri"; sourceTree = "<absolute>"; };
|
||||
EB1F99FD112917157F3C3F6E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qicns.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qicns.pri"; sourceTree = "<absolute>"; };
|
||||
EB29AC635054C09EFA749AE1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp.pri"; sourceTree = "<absolute>"; };
|
||||
EBD39B69F368CEEAC360A16D /* /usr/local/Qt-5.5.1/mkspecs/common/mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/mac.conf"; sourceTree = "<absolute>"; };
|
||||
F0681BC551FC8A2B132FC646 /* qjp2 */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qjp2; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqjp2$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
F0A58515945747E36783CC21 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_inspector.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_inspector.pri"; sourceTree = "<absolute>"; };
|
||||
F2453BA07315EB9F34F1CD57 /* qtiff */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtiff; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqtiff$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
F2F823087EA182CCBD5748B8 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer.pri"; sourceTree = "<absolute>"; };
|
||||
F33BE16353DD1557A9AB3558 /* /usr/local/Qt-5.5.1/mkspecs/common/clang-mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/clang-mac.conf"; sourceTree = "<absolute>"; };
|
||||
F4EB01857048DCFCFFAAC4D0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfmediaplayer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfmediaplayer.pri"; sourceTree = "<absolute>"; };
|
||||
F7ADBF552F6B9A5982915164 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning.pri"; sourceTree = "<absolute>"; };
|
||||
F83F87F8A60C9DF666911D42 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvg.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvg.pri"; sourceTree = "<absolute>"; };
|
||||
F9BEAA743A908603687DA204 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns_private.pri"; sourceTree = "<absolute>"; };
|
||||
FCC237CA5AD60B9BA4447615 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
|
||||
FD944B80F033DFE737D401A2 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help.pri"; sourceTree = "<absolute>"; };
|
||||
FD944B80F033DFE737D401A2 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help.pri"; sourceTree = "<absolute>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
@@ -298,127 +298,127 @@
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
33A9E861B2FAD8C39E154E7C /* MetaLang.pro */,
|
||||
6E67D23B15FC4B628DB2E0B2 /* /usr/local/Qt-5.5.0/mkspecs/qdevice.pri */,
|
||||
669FB007C4A3D58424D85EC8 /* /usr/local/Qt-5.5.0/mkspecs/common/shell-unix.conf */,
|
||||
0ABCEA8D0DD45589040B0AF2 /* /usr/local/Qt-5.5.0/mkspecs/common/unix.conf */,
|
||||
EBD39B69F368CEEAC360A16D /* /usr/local/Qt-5.5.0/mkspecs/common/mac.conf */,
|
||||
817A0F5A41B553A6DE67FDEB /* /usr/local/Qt-5.5.0/mkspecs/common/macx.conf */,
|
||||
45B95DB3B70B47A910FC847B /* /usr/local/Qt-5.5.0/mkspecs/common/gcc-base.conf */,
|
||||
A9E30FA27827990C5F182223 /* /usr/local/Qt-5.5.0/mkspecs/common/gcc-base-mac.conf */,
|
||||
8C5164D4E37556D40C5E6AA2 /* /usr/local/Qt-5.5.0/mkspecs/common/clang.conf */,
|
||||
F33BE16353DD1557A9AB3558 /* /usr/local/Qt-5.5.0/mkspecs/common/clang-mac.conf */,
|
||||
D4DE537C1FBBD48BD989FAD1 /* /usr/local/Qt-5.5.0/mkspecs/qconfig.pri */,
|
||||
ACC8A73268E5D9AF64E97AF4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth.pri */,
|
||||
2E48BB382B895A5ACD79AF9F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth_private.pri */,
|
||||
BD4D97801B547471B37A4CDC /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bootstrap_private.pri */,
|
||||
CF86CD5BB01B9011E6B6FD3E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_clucene_private.pri */,
|
||||
77FF486B1F9BCD55A8A3F35D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent.pri */,
|
||||
7D28E9003CE64D8A7F2E292E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent_private.pri */,
|
||||
7ECCC1F9442988B4F2707CC1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core.pri */,
|
||||
5F781C7FD8422D359EA1D2FE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core_private.pri */,
|
||||
7A94C7168B3FCBE5F04A013B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative.pri */,
|
||||
89863CCAF1D29037AE95755D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative_private.pri */,
|
||||
F2F823087EA182CCBD5748B8 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer.pri */,
|
||||
7C2F42B222EE88E26A6FED62 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer_private.pri */,
|
||||
69347C39E4D922E94D0860BF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designercomponents_private.pri */,
|
||||
360D4B3ED25D126430DE27D4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio.pri */,
|
||||
4C6C71914B1926119120DACD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio_private.pri */,
|
||||
23BC8B0FC3279421D41CA268 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui.pri */,
|
||||
D81E3D9A18202BE8EC3D0E2C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui_private.pri */,
|
||||
FD944B80F033DFE737D401A2 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help.pri */,
|
||||
D7A0618DE39A427EBF41940E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help_private.pri */,
|
||||
A5B17ABEFBA1C2F43443D644 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras.pri */,
|
||||
33F165B1DB8CBF182C56FAB5 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras_private.pri */,
|
||||
D2FE4D909926A0D1656068C4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia.pri */,
|
||||
E7D67CB158408BB7DEA74764 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia_private.pri */,
|
||||
28BD0D10214709D95B161E24 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets.pri */,
|
||||
D1FA7CAB5ACC09D563AE569F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets_private.pri */,
|
||||
293C8DEEE270847AC20E70F9 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network.pri */,
|
||||
382E89A91A34F7898C25FD0D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network_private.pri */,
|
||||
8A04A4A3625204D12A1207F6 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc.pri */,
|
||||
B51B01657BFE9EAEF5590561 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc_private.pri */,
|
||||
5CEA7A2DB2136425A88D1254 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl.pri */,
|
||||
E0F4563EA350EB65112A0EF4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl_private.pri */,
|
||||
E432DA897A5F027987342E8F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions.pri */,
|
||||
5597304BEC94BFB9EAAEBC4B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions_private.pri */,
|
||||
8F572030CE9AB8CC5F672201 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_platformsupport_private.pri */,
|
||||
F7ADBF552F6B9A5982915164 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning.pri */,
|
||||
E66B9EC81C285CA9A7FB6A2E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning_private.pri */,
|
||||
6C08BFC27C4C303A3A5181DB /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport.pri */,
|
||||
D0CDC87DAFDA7F18A7AF450F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport_private.pri */,
|
||||
B382B645B34234E451AE5D94 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml.pri */,
|
||||
6102C69805B6398AF6FA5BEB /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml_private.pri */,
|
||||
4FB6657DA22BC68B819B64B3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmldevtools_private.pri */,
|
||||
DF8188E30892A4654B984221 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest.pri */,
|
||||
ABA9AB4619F09DCFD2D4A27F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest_private.pri */,
|
||||
5B22E9E4EE9AAE42ABC24AB3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri */,
|
||||
16DD53E17C65AC8B450CC6C3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick.pri */,
|
||||
8C31D89BDFCDF466DAED19A0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick_private.pri */,
|
||||
82E7DCFD95559532D8FC6CDD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickparticles_private.pri */,
|
||||
D948D4D8F949D45158F8DE35 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets.pri */,
|
||||
B2246267D4C0D789259A86B0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets_private.pri */,
|
||||
CFCB992BEC24B71BFB8A2F30 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script.pri */,
|
||||
C505A18319B9B63C63877858 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script_private.pri */,
|
||||
CE829DD126DD2B97E8D70A7A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools.pri */,
|
||||
A59F74CD76FDC2B4B9910E18 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools_private.pri */,
|
||||
85B6936EDBE61D9BB8F8B33B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors.pri */,
|
||||
BDC9ECADEE40D11E3C2EA93F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors_private.pri */,
|
||||
BFF0C38FB0EC140C5F0304AE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport.pri */,
|
||||
311004331A04F3D69C98643C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport_private.pri */,
|
||||
7DE30A90667C03C4F91A2A91 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql.pri */,
|
||||
075EB50EB07CF69FD62FB8DF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql_private.pri */,
|
||||
ADFC79902C14A612AE93A89A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg.pri */,
|
||||
8DDE1D26B3206CDB8B57FABE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg_private.pri */,
|
||||
DB0A26DDC377B2004F61BFE3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib.pri */,
|
||||
8849E60AEC7DB97A475C17EA /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib_private.pri */,
|
||||
E50FA73B8A23BC179A642B27 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools.pri */,
|
||||
B518DA4EE7376002AFC71FD5 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools_private.pri */,
|
||||
8F97C9CAE38CA3AFAC0B3953 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets.pri */,
|
||||
87EEF25EE25CF21572D1438C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets_private.pri */,
|
||||
A022AF919D1977534CA66BB8 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets.pri */,
|
||||
8E9136256AFFBA6EF048AA55 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets_private.pri */,
|
||||
AA73DC3C2901E2979FE8AD5B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml.pri */,
|
||||
E37365B4489B4918BEBB707D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml_private.pri */,
|
||||
2E6D9B1D2743D24E31B0B284 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns.pri */,
|
||||
F9BEAA743A908603687DA204 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns_private.pri */,
|
||||
D5141F795670589C8CC41CBC /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_cocoaprintersupport.pri */,
|
||||
1FAE75C970AA73F2DEDDB508 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfcamera.pri */,
|
||||
F4EB01857048DCFCFFAAC4D0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfmediaplayer.pri */,
|
||||
AFD721AA33A2F785E77B1698 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcocoa.pri */,
|
||||
EA5D4FF9DE4AC4215D7DCE0D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcorewlanbearer.pri */,
|
||||
111BBEE3D1432C3B517FD539 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdds.pri */,
|
||||
3685604BDB64DD6E92169B73 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdeclarativeview.pri */,
|
||||
2440CD1D4CEF80443BCA1B8B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qgenericbearer.pri */,
|
||||
EB1F99FD112917157F3C3F6E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qicns.pri */,
|
||||
C4295BE59CCEBCDD16268349 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qico.pri */,
|
||||
45DB132B756499D4DF38430E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qjp2.pri */,
|
||||
B678DA730B4ECE863AD631AE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qminimal.pri */,
|
||||
F0A58515945747E36783CC21 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_inspector.pri */,
|
||||
B8525798C5AA7D7C6D68E1B3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri */,
|
||||
EB29AC635054C09EFA749AE1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp.pri */,
|
||||
3F08D430CEC8D2117735CCB4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri */,
|
||||
946BEA667170DC1A7A8F9DB0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmng.pri */,
|
||||
CCF75CFFB857487FB18F99F9 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qoffscreen.pri */,
|
||||
9A0BDF67E013BB4FFB8685B0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qqt7engine.pri */,
|
||||
B064BF3B496A7BF7A449CA1E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsqlite.pri */,
|
||||
F83F87F8A60C9DF666911D42 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvg.pri */,
|
||||
CFFBE05DB004895080314289 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvgicon.pri */,
|
||||
247D8DF3B1DDB665B80BBA25 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblequick.pri */,
|
||||
87A4C1983FD641360BF80A02 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri */,
|
||||
24B6929EE3952310F2DAECB1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri */,
|
||||
060A694B42A4555240009936 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtga.pri */,
|
||||
BD22EFEFCC02644B1883CE19 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtiff.pri */,
|
||||
B8C1F6C965A7A14FBA8D4518 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri */,
|
||||
74C1C232DFAA71028A0412CA /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri */,
|
||||
C84546C18DCBB04166195DCF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri */,
|
||||
AB1C02DDBD8E88DD9A9AFDDD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri */,
|
||||
8B4BB4E74F8A4442EF563D7D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri */,
|
||||
892D36BEF797BA4AF48D378A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_dummy.pri */,
|
||||
A4D8AC60897F435C1C3B9D02 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_generic.pri */,
|
||||
346287C9E754E7C458153F03 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwbmp.pri */,
|
||||
B26239063A068F800A2C95F4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwebp.pri */,
|
||||
63E722139886C87BC82DBDF5 /* /usr/local/Qt-5.5.0/mkspecs/macx-clang/qmake.conf */,
|
||||
85061B1DA49D125991117950 /* /usr/local/Qt-5.5.0/mkspecs/macx-xcode/qmake.conf */,
|
||||
6E67D23B15FC4B628DB2E0B2 /* /usr/local/Qt-5.5.1/mkspecs/qdevice.pri */,
|
||||
669FB007C4A3D58424D85EC8 /* /usr/local/Qt-5.5.1/mkspecs/common/shell-unix.conf */,
|
||||
0ABCEA8D0DD45589040B0AF2 /* /usr/local/Qt-5.5.1/mkspecs/common/unix.conf */,
|
||||
EBD39B69F368CEEAC360A16D /* /usr/local/Qt-5.5.1/mkspecs/common/mac.conf */,
|
||||
817A0F5A41B553A6DE67FDEB /* /usr/local/Qt-5.5.1/mkspecs/common/macx.conf */,
|
||||
45B95DB3B70B47A910FC847B /* /usr/local/Qt-5.5.1/mkspecs/common/gcc-base.conf */,
|
||||
A9E30FA27827990C5F182223 /* /usr/local/Qt-5.5.1/mkspecs/common/gcc-base-mac.conf */,
|
||||
8C5164D4E37556D40C5E6AA2 /* /usr/local/Qt-5.5.1/mkspecs/common/clang.conf */,
|
||||
F33BE16353DD1557A9AB3558 /* /usr/local/Qt-5.5.1/mkspecs/common/clang-mac.conf */,
|
||||
D4DE537C1FBBD48BD989FAD1 /* /usr/local/Qt-5.5.1/mkspecs/qconfig.pri */,
|
||||
ACC8A73268E5D9AF64E97AF4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth.pri */,
|
||||
2E48BB382B895A5ACD79AF9F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth_private.pri */,
|
||||
BD4D97801B547471B37A4CDC /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bootstrap_private.pri */,
|
||||
CF86CD5BB01B9011E6B6FD3E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_clucene_private.pri */,
|
||||
77FF486B1F9BCD55A8A3F35D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent.pri */,
|
||||
7D28E9003CE64D8A7F2E292E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent_private.pri */,
|
||||
7ECCC1F9442988B4F2707CC1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core.pri */,
|
||||
5F781C7FD8422D359EA1D2FE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core_private.pri */,
|
||||
7A94C7168B3FCBE5F04A013B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative.pri */,
|
||||
89863CCAF1D29037AE95755D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative_private.pri */,
|
||||
F2F823087EA182CCBD5748B8 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer.pri */,
|
||||
7C2F42B222EE88E26A6FED62 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer_private.pri */,
|
||||
69347C39E4D922E94D0860BF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designercomponents_private.pri */,
|
||||
360D4B3ED25D126430DE27D4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio.pri */,
|
||||
4C6C71914B1926119120DACD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio_private.pri */,
|
||||
23BC8B0FC3279421D41CA268 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui.pri */,
|
||||
D81E3D9A18202BE8EC3D0E2C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui_private.pri */,
|
||||
FD944B80F033DFE737D401A2 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help.pri */,
|
||||
D7A0618DE39A427EBF41940E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help_private.pri */,
|
||||
A5B17ABEFBA1C2F43443D644 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras.pri */,
|
||||
33F165B1DB8CBF182C56FAB5 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras_private.pri */,
|
||||
D2FE4D909926A0D1656068C4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia.pri */,
|
||||
E7D67CB158408BB7DEA74764 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia_private.pri */,
|
||||
28BD0D10214709D95B161E24 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets.pri */,
|
||||
D1FA7CAB5ACC09D563AE569F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets_private.pri */,
|
||||
293C8DEEE270847AC20E70F9 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network.pri */,
|
||||
382E89A91A34F7898C25FD0D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network_private.pri */,
|
||||
8A04A4A3625204D12A1207F6 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc.pri */,
|
||||
B51B01657BFE9EAEF5590561 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc_private.pri */,
|
||||
5CEA7A2DB2136425A88D1254 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl.pri */,
|
||||
E0F4563EA350EB65112A0EF4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl_private.pri */,
|
||||
E432DA897A5F027987342E8F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions.pri */,
|
||||
5597304BEC94BFB9EAAEBC4B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions_private.pri */,
|
||||
8F572030CE9AB8CC5F672201 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_platformsupport_private.pri */,
|
||||
F7ADBF552F6B9A5982915164 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning.pri */,
|
||||
E66B9EC81C285CA9A7FB6A2E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning_private.pri */,
|
||||
6C08BFC27C4C303A3A5181DB /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport.pri */,
|
||||
D0CDC87DAFDA7F18A7AF450F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport_private.pri */,
|
||||
B382B645B34234E451AE5D94 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml.pri */,
|
||||
6102C69805B6398AF6FA5BEB /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml_private.pri */,
|
||||
4FB6657DA22BC68B819B64B3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmldevtools_private.pri */,
|
||||
DF8188E30892A4654B984221 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest.pri */,
|
||||
ABA9AB4619F09DCFD2D4A27F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest_private.pri */,
|
||||
5B22E9E4EE9AAE42ABC24AB3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri */,
|
||||
16DD53E17C65AC8B450CC6C3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick.pri */,
|
||||
8C31D89BDFCDF466DAED19A0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick_private.pri */,
|
||||
82E7DCFD95559532D8FC6CDD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickparticles_private.pri */,
|
||||
D948D4D8F949D45158F8DE35 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets.pri */,
|
||||
B2246267D4C0D789259A86B0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets_private.pri */,
|
||||
CFCB992BEC24B71BFB8A2F30 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script.pri */,
|
||||
C505A18319B9B63C63877858 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script_private.pri */,
|
||||
CE829DD126DD2B97E8D70A7A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools.pri */,
|
||||
A59F74CD76FDC2B4B9910E18 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools_private.pri */,
|
||||
85B6936EDBE61D9BB8F8B33B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors.pri */,
|
||||
BDC9ECADEE40D11E3C2EA93F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors_private.pri */,
|
||||
BFF0C38FB0EC140C5F0304AE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport.pri */,
|
||||
311004331A04F3D69C98643C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport_private.pri */,
|
||||
7DE30A90667C03C4F91A2A91 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql.pri */,
|
||||
075EB50EB07CF69FD62FB8DF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql_private.pri */,
|
||||
ADFC79902C14A612AE93A89A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg.pri */,
|
||||
8DDE1D26B3206CDB8B57FABE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg_private.pri */,
|
||||
DB0A26DDC377B2004F61BFE3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib.pri */,
|
||||
8849E60AEC7DB97A475C17EA /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib_private.pri */,
|
||||
E50FA73B8A23BC179A642B27 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools.pri */,
|
||||
B518DA4EE7376002AFC71FD5 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools_private.pri */,
|
||||
8F97C9CAE38CA3AFAC0B3953 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets.pri */,
|
||||
87EEF25EE25CF21572D1438C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets_private.pri */,
|
||||
A022AF919D1977534CA66BB8 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets.pri */,
|
||||
8E9136256AFFBA6EF048AA55 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets_private.pri */,
|
||||
AA73DC3C2901E2979FE8AD5B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml.pri */,
|
||||
E37365B4489B4918BEBB707D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml_private.pri */,
|
||||
2E6D9B1D2743D24E31B0B284 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns.pri */,
|
||||
F9BEAA743A908603687DA204 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns_private.pri */,
|
||||
D5141F795670589C8CC41CBC /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_cocoaprintersupport.pri */,
|
||||
1FAE75C970AA73F2DEDDB508 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfcamera.pri */,
|
||||
F4EB01857048DCFCFFAAC4D0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfmediaplayer.pri */,
|
||||
AFD721AA33A2F785E77B1698 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcocoa.pri */,
|
||||
EA5D4FF9DE4AC4215D7DCE0D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcorewlanbearer.pri */,
|
||||
111BBEE3D1432C3B517FD539 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdds.pri */,
|
||||
3685604BDB64DD6E92169B73 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdeclarativeview.pri */,
|
||||
2440CD1D4CEF80443BCA1B8B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qgenericbearer.pri */,
|
||||
EB1F99FD112917157F3C3F6E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qicns.pri */,
|
||||
C4295BE59CCEBCDD16268349 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qico.pri */,
|
||||
45DB132B756499D4DF38430E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qjp2.pri */,
|
||||
B678DA730B4ECE863AD631AE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qminimal.pri */,
|
||||
F0A58515945747E36783CC21 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_inspector.pri */,
|
||||
B8525798C5AA7D7C6D68E1B3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri */,
|
||||
EB29AC635054C09EFA749AE1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp.pri */,
|
||||
3F08D430CEC8D2117735CCB4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri */,
|
||||
946BEA667170DC1A7A8F9DB0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmng.pri */,
|
||||
CCF75CFFB857487FB18F99F9 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qoffscreen.pri */,
|
||||
9A0BDF67E013BB4FFB8685B0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qqt7engine.pri */,
|
||||
B064BF3B496A7BF7A449CA1E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsqlite.pri */,
|
||||
F83F87F8A60C9DF666911D42 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvg.pri */,
|
||||
CFFBE05DB004895080314289 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvgicon.pri */,
|
||||
247D8DF3B1DDB665B80BBA25 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblequick.pri */,
|
||||
87A4C1983FD641360BF80A02 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri */,
|
||||
24B6929EE3952310F2DAECB1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri */,
|
||||
060A694B42A4555240009936 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtga.pri */,
|
||||
BD22EFEFCC02644B1883CE19 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtiff.pri */,
|
||||
B8C1F6C965A7A14FBA8D4518 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri */,
|
||||
74C1C232DFAA71028A0412CA /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri */,
|
||||
C84546C18DCBB04166195DCF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri */,
|
||||
AB1C02DDBD8E88DD9A9AFDDD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri */,
|
||||
8B4BB4E74F8A4442EF563D7D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri */,
|
||||
892D36BEF797BA4AF48D378A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_dummy.pri */,
|
||||
A4D8AC60897F435C1C3B9D02 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_generic.pri */,
|
||||
346287C9E754E7C458153F03 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwbmp.pri */,
|
||||
B26239063A068F800A2C95F4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwebp.pri */,
|
||||
63E722139886C87BC82DBDF5 /* /usr/local/Qt-5.5.1/mkspecs/macx-clang/qmake.conf */,
|
||||
85061B1DA49D125991117950 /* /usr/local/Qt-5.5.1/mkspecs/macx-xcode/qmake.conf */,
|
||||
AB745978DF0F41D1801ABDA6 /* .qmake.stash */,
|
||||
);
|
||||
name = "Supporting Files";
|
||||
@@ -520,7 +520,7 @@
|
||||
6DB9C3763D02B1415CD9D565 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 0640;
|
||||
LastUpgradeCheck = 0700;
|
||||
};
|
||||
buildConfigurationList = DAC4C1AA5EDEA1C85E9CA5E6 /* Build configuration list for PBXProject "MetaLang" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
@@ -616,25 +616,25 @@
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
../../Libraries/QtStatic/qtbase/include/QtGui/5.5.0/QtGui,
|
||||
../../Libraries/QtStatic/qtbase/include/QtCore/5.5.0/QtCore,
|
||||
../../Libraries/QtStatic/qtbase/include/QtGui/5.5.1/QtGui,
|
||||
../../Libraries/QtStatic/qtbase/include/QtCore/5.5.1/QtCore,
|
||||
../../Libraries/QtStatic/qtbase/include,
|
||||
"/usr/local/Qt-5.5.0/include",
|
||||
"/usr/local/Qt-5.5.0/include/QtGui",
|
||||
"/usr/local/Qt-5.5.0/include/QtCore",
|
||||
"/usr/local/Qt-5.5.1/include",
|
||||
"/usr/local/Qt-5.5.1/include/QtGui",
|
||||
"/usr/local/Qt-5.5.1/include/QtCore",
|
||||
GeneratedFiles/Debug,
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers,
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers,
|
||||
"/usr/local/Qt-5.5.0/mkspecs/macx-clang",
|
||||
"/usr/local/Qt-5.5.1/mkspecs/macx-clang",
|
||||
);
|
||||
INFOPLIST_FILE = Lang.plist;
|
||||
INSTALL_DIR = ../Mac/ReleaseLang/;
|
||||
LDPLUSPLUS = "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++";
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
/System/Library/Frameworks/,
|
||||
"/usr/local/Qt-5.5.0/lib",
|
||||
"/usr/local/Qt-5.5.0/plugins/platforms",
|
||||
"/usr/local/Qt-5.5.0/plugins/imageformats",
|
||||
"/usr/local/Qt-5.5.1/lib",
|
||||
"/usr/local/Qt-5.5.1/plugins/platforms",
|
||||
"/usr/local/Qt-5.5.1/plugins/imageformats",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.7;
|
||||
OBJROOT = ./../Mac/ReleaseIntermediateLang;
|
||||
@@ -663,10 +663,10 @@
|
||||
OTHER_LDFLAGS = (
|
||||
"-headerpad_max_install_names",
|
||||
"-stdlib=libc++",
|
||||
"-L/usr/local/Qt-5.5.0/lib",
|
||||
"-L/usr/local/Qt-5.5.0/plugins/platforms",
|
||||
"-L/usr/local/Qt-5.5.1/lib",
|
||||
"-L/usr/local/Qt-5.5.1/plugins/platforms",
|
||||
"-lcups",
|
||||
"-L/usr/local/Qt-5.5.0/plugins/imageformats",
|
||||
"-L/usr/local/Qt-5.5.1/plugins/imageformats",
|
||||
"-lz",
|
||||
"-lm",
|
||||
);
|
||||
@@ -694,6 +694,7 @@
|
||||
DYLIB_COMPATIBILITY_VERSION = 1.0;
|
||||
DYLIB_CURRENT_VERSION = 1.0.0;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
ENABLE_TESTABILITY = YES;
|
||||
FRAMEWORK_SEARCH_PATHS = "";
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
@@ -706,25 +707,25 @@
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
../../Libraries/QtStatic/qtbase/include/QtGui/5.5.0/QtGui,
|
||||
../../Libraries/QtStatic/qtbase/include/QtCore/5.5.0/QtCore,
|
||||
../../Libraries/QtStatic/qtbase/include/QtGui/5.5.1/QtGui,
|
||||
../../Libraries/QtStatic/qtbase/include/QtCore/5.5.1/QtCore,
|
||||
../../Libraries/QtStatic/qtbase/include,
|
||||
"/usr/local/Qt-5.5.0/include",
|
||||
"/usr/local/Qt-5.5.0/include/QtGui",
|
||||
"/usr/local/Qt-5.5.0/include/QtCore",
|
||||
"/usr/local/Qt-5.5.1/include",
|
||||
"/usr/local/Qt-5.5.1/include/QtGui",
|
||||
"/usr/local/Qt-5.5.1/include/QtCore",
|
||||
GeneratedFiles/Debug,
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers,
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers,
|
||||
"/usr/local/Qt-5.5.0/mkspecs/macx-clang",
|
||||
"/usr/local/Qt-5.5.1/mkspecs/macx-clang",
|
||||
);
|
||||
INFOPLIST_FILE = Lang.plist;
|
||||
INSTALL_DIR = ../Mac/DebugLang/;
|
||||
LDPLUSPLUS = "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++";
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
/System/Library/Frameworks/,
|
||||
"/usr/local/Qt-5.5.0/lib",
|
||||
"/usr/local/Qt-5.5.0/plugins/platforms",
|
||||
"/usr/local/Qt-5.5.0/plugins/imageformats",
|
||||
"/usr/local/Qt-5.5.1/lib",
|
||||
"/usr/local/Qt-5.5.1/plugins/platforms",
|
||||
"/usr/local/Qt-5.5.1/plugins/imageformats",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.7;
|
||||
OBJROOT = ./../Mac/DebugIntermediateLang;
|
||||
@@ -754,10 +755,10 @@
|
||||
OTHER_LDFLAGS = (
|
||||
"-headerpad_max_install_names",
|
||||
"-stdlib=libc++",
|
||||
"-L/usr/local/Qt-5.5.0/lib",
|
||||
"-L/usr/local/Qt-5.5.0/plugins/platforms",
|
||||
"-L/usr/local/Qt-5.5.1/lib",
|
||||
"-L/usr/local/Qt-5.5.1/plugins/platforms",
|
||||
"-lcups",
|
||||
"-L/usr/local/Qt-5.5.0/plugins/imageformats",
|
||||
"-L/usr/local/Qt-5.5.1/plugins/imageformats",
|
||||
"-lz",
|
||||
"-lm",
|
||||
);
|
||||
@@ -775,17 +776,18 @@
|
||||
COPY_PHASE_STRIP = YES;
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
./../../Libraries/QtStatic/qtbase/include/QtGui/5.5.0/QtGui,
|
||||
./../../Libraries/QtStatic/qtbase/include/QtCore/5.5.0/QtCore,
|
||||
./../../Libraries/QtStatic/qtbase/include/QtGui/5.5.1/QtGui,
|
||||
./../../Libraries/QtStatic/qtbase/include/QtCore/5.5.1/QtCore,
|
||||
./../../Libraries/QtStatic/qtbase/include,
|
||||
"/usr/local/Qt-5.5.0/include",
|
||||
"/usr/local/Qt-5.5.0/include/QtGui",
|
||||
"/usr/local/Qt-5.5.0/include/QtCore",
|
||||
"/usr/local/Qt-5.5.1/include",
|
||||
"/usr/local/Qt-5.5.1/include/QtGui",
|
||||
"/usr/local/Qt-5.5.1/include/QtCore",
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers,
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers,
|
||||
"/usr/local/Qt-5.5.0/mkspecs/macx-clang",
|
||||
"/usr/local/Qt-5.5.1/mkspecs/macx-clang",
|
||||
);
|
||||
INSTALL_DIR = ../Mac/ReleaseLang/;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.tdesktop.${PRODUCT_NAME:rfc1034identifier}";
|
||||
PRODUCT_NAME = MetaLang;
|
||||
QT_LIBRARY_SUFFIX = "";
|
||||
SDKROOT = macosx;
|
||||
@@ -801,17 +803,18 @@
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
./../../Libraries/QtStatic/qtbase/include/QtGui/5.5.0/QtGui,
|
||||
./../../Libraries/QtStatic/qtbase/include/QtCore/5.5.0/QtCore,
|
||||
./../../Libraries/QtStatic/qtbase/include/QtGui/5.5.1/QtGui,
|
||||
./../../Libraries/QtStatic/qtbase/include/QtCore/5.5.1/QtCore,
|
||||
./../../Libraries/QtStatic/qtbase/include,
|
||||
"/usr/local/Qt-5.5.0/include",
|
||||
"/usr/local/Qt-5.5.0/include/QtGui",
|
||||
"/usr/local/Qt-5.5.0/include/QtCore",
|
||||
"/usr/local/Qt-5.5.1/include",
|
||||
"/usr/local/Qt-5.5.1/include/QtGui",
|
||||
"/usr/local/Qt-5.5.1/include/QtCore",
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers,
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers,
|
||||
"/usr/local/Qt-5.5.0/mkspecs/macx-clang",
|
||||
"/usr/local/Qt-5.5.1/mkspecs/macx-clang",
|
||||
);
|
||||
INSTALL_DIR = ../Mac/DebugLang/;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.tdesktop.${PRODUCT_NAME:rfc1034identifier}";
|
||||
PRODUCT_NAME = MetaLang;
|
||||
QT_LIBRARY_SUFFIX = _debug;
|
||||
SDKROOT = macosx;
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
#############################################################################
|
||||
# Makefile for building: ../Mac/DebugLang/MetaLang.app/Contents/MacOS/MetaLang
|
||||
# Generated by qmake (3.0) (Qt 5.5.0)
|
||||
# Generated by qmake (3.0) (Qt 5.5.1)
|
||||
# Project: MetaLang.pro
|
||||
# Template: app
|
||||
# Command: /usr/local/Qt-5.5.0/bin/qmake -spec macx-xcode -o MetaLang.xcodeproj/project.pbxproj MetaLang.pro
|
||||
# Command: /usr/local/Qt-5.5.1/bin/qmake -spec macx-xcode -o MetaLang.xcodeproj/project.pbxproj MetaLang.pro
|
||||
#############################################################################
|
||||
|
||||
MAKEFILE = project.pbxproj
|
||||
|
||||
MOC = /usr/local/Qt-5.5.0/bin/moc
|
||||
MOC = /usr/local/Qt-5.5.1/bin/moc
|
||||
UIC =
|
||||
LEX = flex
|
||||
LEXFLAGS =
|
||||
YACC = yacc
|
||||
YACCFLAGS = -d
|
||||
DEFINES = -D_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB
|
||||
INCPATH = -I/usr/local/Qt-5.5.0/mkspecs/macx-clang -I. -I../../Libraries/QtStatic/qtbase/include/QtGui/5.5.0/QtGui -I../../Libraries/QtStatic/qtbase/include/QtCore/5.5.0/QtCore -I../../Libraries/QtStatic/qtbase/include -I/usr/local/Qt-5.5.0/include -I/usr/local/Qt-5.5.0/include/QtGui -I/usr/local/Qt-5.5.0/include/QtCore -IGeneratedFiles/Debug -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers
|
||||
INCPATH = -I/usr/local/Qt-5.5.1/mkspecs/macx-clang -I. -I../../Libraries/QtStatic/qtbase/include/QtGui/5.5.1/QtGui -I../../Libraries/QtStatic/qtbase/include/QtCore/5.5.1/QtCore -I../../Libraries/QtStatic/qtbase/include -I/usr/local/Qt-5.5.1/include -I/usr/local/Qt-5.5.1/include/QtGui -I/usr/local/Qt-5.5.1/include/QtCore -IGeneratedFiles/Debug -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers
|
||||
DEL_FILE = rm -f
|
||||
MOVE = mv -f
|
||||
|
||||
@@ -52,7 +52,7 @@ GeneratedFiles/Debug/moc_genlang.cpp: ../../Libraries/QtStatic/qtbase/include/Qt
|
||||
../../Libraries/QtStatic/qtbase/include/QtCore/QCoreApplication \
|
||||
../../Libraries/QtStatic/qtbase/include/QtGui/QGuiApplication \
|
||||
SourceFiles/_other/genlang.h
|
||||
/usr/local/Qt-5.5.0/bin/moc $(DEFINES) -D__APPLE__ -D__GNUC__=4 -I/usr/local/Qt-5.5.0/mkspecs/macx-clang -I. -I/usr/local/Qt-5.5.0/include/QtGui/5.5.0/QtGui -I/usr/local/Qt-5.5.0/include/QtCore/5.5.0/QtCore -I/usr/local/Qt-5.5.0/include -I/usr/local/Qt-5.5.0/include/QtGui -I/usr/local/Qt-5.5.0/include/QtCore -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1/backward -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/5.1/include -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include SourceFiles/_other/genlang.h -o GeneratedFiles/Debug/moc_genlang.cpp
|
||||
/usr/local/Qt-5.5.1/bin/moc $(DEFINES) -D__APPLE__ -D__GNUC__=4 -I/usr/local/Qt-5.5.1/mkspecs/macx-clang -I. -I/usr/local/Qt-5.5.1/include/QtGui/5.5.1/QtGui -I/usr/local/Qt-5.5.1/include/QtCore/5.5.1/QtCore -I/usr/local/Qt-5.5.1/include -I/usr/local/Qt-5.5.1/include/QtGui -I/usr/local/Qt-5.5.1/include/QtCore -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1/backward -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/5.1/include -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include SourceFiles/_other/genlang.h -o GeneratedFiles/Debug/moc_genlang.cpp
|
||||
|
||||
compiler_moc_source_make_all:
|
||||
compiler_moc_source_clean:
|
||||
|
||||
@@ -12,7 +12,7 @@ CONFIG(release, debug|release) {
|
||||
DESTDIR = ./../ReleaseStyle
|
||||
}
|
||||
|
||||
CONFIG += plugin static
|
||||
CONFIG += plugin static c++11
|
||||
|
||||
macx {
|
||||
QMAKE_INFO_PLIST = ./SourceFiles/_other/Style.plist
|
||||
@@ -27,7 +27,7 @@ HEADERS += \
|
||||
./SourceFiles/_other/msmain.h \
|
||||
./SourceFiles/_other/genstyles.h \
|
||||
|
||||
INCLUDEPATH += ./../../Libraries/QtStatic/qtbase/include/QtGui/5.5.0/QtGui\
|
||||
./../../Libraries/QtStatic/qtbase/include/QtCore/5.5.0/QtCore\
|
||||
INCLUDEPATH += ./../../Libraries/QtStatic/qtbase/include/QtGui/5.5.1/QtGui\
|
||||
./../../Libraries/QtStatic/qtbase/include/QtCore/5.5.1/QtCore\
|
||||
./../../Libraries/QtStatic/qtbase/include\
|
||||
|
||||
|
||||
@@ -75,15 +75,15 @@
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v120_xp</PlatformToolset>
|
||||
<PlatformToolset>v140_xp</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v120_xp</PlatformToolset>
|
||||
<PlatformToolset>v140_xp</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Deploy|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v120_xp</PlatformToolset>
|
||||
<PlatformToolset>v140_xp</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
|
||||
@@ -64,161 +64,161 @@
|
||||
/* End PBXContainerItemProxy section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
04391BE7A8B9D811E255100A /* Qt5Gui */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Gui; path = "/usr/local/Qt-5.5.0/lib/libQt5Gui$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
060A694B42A4555240009936 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtga.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtga.pri"; sourceTree = "<absolute>"; };
|
||||
075EB50EB07CF69FD62FB8DF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql_private.pri"; sourceTree = "<absolute>"; };
|
||||
07D795491B5544B200DE9598 /* qtpcre */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtpcre; path = "usr/local/Qt-5.5.0/lib/libqtpcre$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<group>"; };
|
||||
0ABCEA8D0DD45589040B0AF2 /* /usr/local/Qt-5.5.0/mkspecs/common/unix.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/unix.conf"; sourceTree = "<absolute>"; };
|
||||
04391BE7A8B9D811E255100A /* Qt5Gui */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Gui; path = "/usr/local/Qt-5.5.1/lib/libQt5Gui$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
060A694B42A4555240009936 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtga.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtga.pri"; sourceTree = "<absolute>"; };
|
||||
075EB50EB07CF69FD62FB8DF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql_private.pri"; sourceTree = "<absolute>"; };
|
||||
07D795491B5544B200DE9598 /* qtpcre */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtpcre; path = "usr/local/Qt-5.5.1/lib/libqtpcre$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<group>"; };
|
||||
0ABCEA8D0DD45589040B0AF2 /* /usr/local/Qt-5.5.1/mkspecs/common/unix.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/unix.conf"; sourceTree = "<absolute>"; };
|
||||
10F719DFC6D0B05605ED1C16 /* MetaStyle.pro */ = {isa = PBXFileReference; lastKnownFileType = text; path = MetaStyle.pro; sourceTree = "<absolute>"; };
|
||||
111BBEE3D1432C3B517FD539 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdds.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdds.pri"; sourceTree = "<absolute>"; };
|
||||
16DD53E17C65AC8B450CC6C3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick.pri"; sourceTree = "<absolute>"; };
|
||||
1FAE75C970AA73F2DEDDB508 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfcamera.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfcamera.pri"; sourceTree = "<absolute>"; };
|
||||
23BC8B0FC3279421D41CA268 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui.pri"; sourceTree = "<absolute>"; };
|
||||
2440CD1D4CEF80443BCA1B8B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qgenericbearer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qgenericbearer.pri"; sourceTree = "<absolute>"; };
|
||||
247D8DF3B1DDB665B80BBA25 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblequick.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblequick.pri"; sourceTree = "<absolute>"; };
|
||||
24B6929EE3952310F2DAECB1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri"; sourceTree = "<absolute>"; };
|
||||
28BD0D10214709D95B161E24 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets.pri"; sourceTree = "<absolute>"; };
|
||||
293C8DEEE270847AC20E70F9 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network.pri"; sourceTree = "<absolute>"; };
|
||||
111BBEE3D1432C3B517FD539 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdds.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdds.pri"; sourceTree = "<absolute>"; };
|
||||
16DD53E17C65AC8B450CC6C3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick.pri"; sourceTree = "<absolute>"; };
|
||||
1FAE75C970AA73F2DEDDB508 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfcamera.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfcamera.pri"; sourceTree = "<absolute>"; };
|
||||
23BC8B0FC3279421D41CA268 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui.pri"; sourceTree = "<absolute>"; };
|
||||
2440CD1D4CEF80443BCA1B8B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qgenericbearer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qgenericbearer.pri"; sourceTree = "<absolute>"; };
|
||||
247D8DF3B1DDB665B80BBA25 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblequick.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblequick.pri"; sourceTree = "<absolute>"; };
|
||||
24B6929EE3952310F2DAECB1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri"; sourceTree = "<absolute>"; };
|
||||
28BD0D10214709D95B161E24 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets.pri"; sourceTree = "<absolute>"; };
|
||||
293C8DEEE270847AC20E70F9 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network.pri"; sourceTree = "<absolute>"; };
|
||||
2CBD32689B153445ED220FAE /* MetaStyle.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MetaStyle.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
2E48BB382B895A5ACD79AF9F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth_private.pri"; sourceTree = "<absolute>"; };
|
||||
2E6D9B1D2743D24E31B0B284 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns.pri"; sourceTree = "<absolute>"; };
|
||||
311004331A04F3D69C98643C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport_private.pri"; sourceTree = "<absolute>"; };
|
||||
31120EDB269DFF13E1D49847 /* qicns */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qicns; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqicns$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
33F165B1DB8CBF182C56FAB5 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras_private.pri"; sourceTree = "<absolute>"; };
|
||||
346287C9E754E7C458153F03 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwbmp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwbmp.pri"; sourceTree = "<absolute>"; };
|
||||
360D4B3ED25D126430DE27D4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio.pri"; sourceTree = "<absolute>"; };
|
||||
3685604BDB64DD6E92169B73 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdeclarativeview.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdeclarativeview.pri"; sourceTree = "<absolute>"; };
|
||||
382E89A91A34F7898C25FD0D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network_private.pri"; sourceTree = "<absolute>"; };
|
||||
3F08D430CEC8D2117735CCB4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri"; sourceTree = "<absolute>"; };
|
||||
45B95DB3B70B47A910FC847B /* /usr/local/Qt-5.5.0/mkspecs/common/gcc-base.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/gcc-base.conf"; sourceTree = "<absolute>"; };
|
||||
45DB132B756499D4DF38430E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qjp2.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qjp2.pri"; sourceTree = "<absolute>"; };
|
||||
4689C06178B60B84E7F3A3B7 /* Qt5Widgets */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Widgets; path = "/usr/local/Qt-5.5.0/lib/libQt5Widgets$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
4C6C71914B1926119120DACD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio_private.pri"; sourceTree = "<absolute>"; };
|
||||
2E48BB382B895A5ACD79AF9F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth_private.pri"; sourceTree = "<absolute>"; };
|
||||
2E6D9B1D2743D24E31B0B284 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns.pri"; sourceTree = "<absolute>"; };
|
||||
311004331A04F3D69C98643C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport_private.pri"; sourceTree = "<absolute>"; };
|
||||
31120EDB269DFF13E1D49847 /* qicns */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qicns; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqicns$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
33F165B1DB8CBF182C56FAB5 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras_private.pri"; sourceTree = "<absolute>"; };
|
||||
346287C9E754E7C458153F03 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwbmp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwbmp.pri"; sourceTree = "<absolute>"; };
|
||||
360D4B3ED25D126430DE27D4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio.pri"; sourceTree = "<absolute>"; };
|
||||
3685604BDB64DD6E92169B73 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdeclarativeview.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdeclarativeview.pri"; sourceTree = "<absolute>"; };
|
||||
382E89A91A34F7898C25FD0D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network_private.pri"; sourceTree = "<absolute>"; };
|
||||
3F08D430CEC8D2117735CCB4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri"; sourceTree = "<absolute>"; };
|
||||
45B95DB3B70B47A910FC847B /* /usr/local/Qt-5.5.1/mkspecs/common/gcc-base.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/gcc-base.conf"; sourceTree = "<absolute>"; };
|
||||
45DB132B756499D4DF38430E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qjp2.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qjp2.pri"; sourceTree = "<absolute>"; };
|
||||
4689C06178B60B84E7F3A3B7 /* Qt5Widgets */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Widgets; path = "/usr/local/Qt-5.5.1/lib/libQt5Widgets$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
4C6C71914B1926119120DACD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio_private.pri"; sourceTree = "<absolute>"; };
|
||||
4D765E1B1EA6C757220C63E7 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = /System/Library/Frameworks/CoreFoundation.framework; sourceTree = "<absolute>"; };
|
||||
4FB6657DA22BC68B819B64B3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmldevtools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmldevtools_private.pri"; sourceTree = "<absolute>"; };
|
||||
5597304BEC94BFB9EAAEBC4B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions_private.pri"; sourceTree = "<absolute>"; };
|
||||
5A80A1907B6CFFB524C1E57D /* Qt5Core */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Core; path = "/usr/local/Qt-5.5.0/lib/libQt5Core$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
5B22E9E4EE9AAE42ABC24AB3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri"; sourceTree = "<absolute>"; };
|
||||
5CEA7A2DB2136425A88D1254 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl.pri"; sourceTree = "<absolute>"; };
|
||||
5F781C7FD8422D359EA1D2FE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core_private.pri"; sourceTree = "<absolute>"; };
|
||||
6102C69805B6398AF6FA5BEB /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml_private.pri"; sourceTree = "<absolute>"; };
|
||||
63E722139886C87BC82DBDF5 /* /usr/local/Qt-5.5.0/mkspecs/macx-clang/qmake.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/macx-clang/qmake.conf"; sourceTree = "<absolute>"; };
|
||||
669FB007C4A3D58424D85EC8 /* /usr/local/Qt-5.5.0/mkspecs/common/shell-unix.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/shell-unix.conf"; sourceTree = "<absolute>"; };
|
||||
69347C39E4D922E94D0860BF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designercomponents_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designercomponents_private.pri"; sourceTree = "<absolute>"; };
|
||||
6C08BFC27C4C303A3A5181DB /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport.pri"; sourceTree = "<absolute>"; };
|
||||
6E67D23B15FC4B628DB2E0B2 /* /usr/local/Qt-5.5.0/mkspecs/qdevice.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/qdevice.pri"; sourceTree = "<absolute>"; };
|
||||
4FB6657DA22BC68B819B64B3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmldevtools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmldevtools_private.pri"; sourceTree = "<absolute>"; };
|
||||
5597304BEC94BFB9EAAEBC4B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions_private.pri"; sourceTree = "<absolute>"; };
|
||||
5A80A1907B6CFFB524C1E57D /* Qt5Core */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Core; path = "/usr/local/Qt-5.5.1/lib/libQt5Core$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
5B22E9E4EE9AAE42ABC24AB3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri"; sourceTree = "<absolute>"; };
|
||||
5CEA7A2DB2136425A88D1254 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl.pri"; sourceTree = "<absolute>"; };
|
||||
5F781C7FD8422D359EA1D2FE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core_private.pri"; sourceTree = "<absolute>"; };
|
||||
6102C69805B6398AF6FA5BEB /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml_private.pri"; sourceTree = "<absolute>"; };
|
||||
63E722139886C87BC82DBDF5 /* /usr/local/Qt-5.5.1/mkspecs/macx-clang/qmake.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/macx-clang/qmake.conf"; sourceTree = "<absolute>"; };
|
||||
669FB007C4A3D58424D85EC8 /* /usr/local/Qt-5.5.1/mkspecs/common/shell-unix.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/shell-unix.conf"; sourceTree = "<absolute>"; };
|
||||
69347C39E4D922E94D0860BF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designercomponents_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designercomponents_private.pri"; sourceTree = "<absolute>"; };
|
||||
6C08BFC27C4C303A3A5181DB /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport.pri"; sourceTree = "<absolute>"; };
|
||||
6E67D23B15FC4B628DB2E0B2 /* /usr/local/Qt-5.5.1/mkspecs/qdevice.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/qdevice.pri"; sourceTree = "<absolute>"; };
|
||||
6FF81CB4A724CE1990CEE99A /* msmain.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = msmain.h; path = SourceFiles/_other/msmain.h; sourceTree = "<absolute>"; };
|
||||
74C1C232DFAA71028A0412CA /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri"; sourceTree = "<absolute>"; };
|
||||
77FF486B1F9BCD55A8A3F35D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent.pri"; sourceTree = "<absolute>"; };
|
||||
7A94C7168B3FCBE5F04A013B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative.pri"; sourceTree = "<absolute>"; };
|
||||
7C2F42B222EE88E26A6FED62 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer_private.pri"; sourceTree = "<absolute>"; };
|
||||
7D28E9003CE64D8A7F2E292E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent_private.pri"; sourceTree = "<absolute>"; };
|
||||
7DE30A90667C03C4F91A2A91 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql.pri"; sourceTree = "<absolute>"; };
|
||||
7ECCC1F9442988B4F2707CC1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core.pri"; sourceTree = "<absolute>"; };
|
||||
817A0F5A41B553A6DE67FDEB /* /usr/local/Qt-5.5.0/mkspecs/common/macx.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/macx.conf"; sourceTree = "<absolute>"; };
|
||||
82E7DCFD95559532D8FC6CDD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickparticles_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickparticles_private.pri"; sourceTree = "<absolute>"; };
|
||||
83D37373949868693FB7816D /* qmng */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qmng; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqmng$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
85061B1DA49D125991117950 /* /usr/local/Qt-5.5.0/mkspecs/macx-xcode/qmake.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/macx-xcode/qmake.conf"; sourceTree = "<absolute>"; };
|
||||
85B6936EDBE61D9BB8F8B33B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors.pri"; sourceTree = "<absolute>"; };
|
||||
74C1C232DFAA71028A0412CA /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri"; sourceTree = "<absolute>"; };
|
||||
77FF486B1F9BCD55A8A3F35D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent.pri"; sourceTree = "<absolute>"; };
|
||||
7A94C7168B3FCBE5F04A013B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative.pri"; sourceTree = "<absolute>"; };
|
||||
7C2F42B222EE88E26A6FED62 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer_private.pri"; sourceTree = "<absolute>"; };
|
||||
7D28E9003CE64D8A7F2E292E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent_private.pri"; sourceTree = "<absolute>"; };
|
||||
7DE30A90667C03C4F91A2A91 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql.pri"; sourceTree = "<absolute>"; };
|
||||
7ECCC1F9442988B4F2707CC1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core.pri"; sourceTree = "<absolute>"; };
|
||||
817A0F5A41B553A6DE67FDEB /* /usr/local/Qt-5.5.1/mkspecs/common/macx.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/macx.conf"; sourceTree = "<absolute>"; };
|
||||
82E7DCFD95559532D8FC6CDD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickparticles_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickparticles_private.pri"; sourceTree = "<absolute>"; };
|
||||
83D37373949868693FB7816D /* qmng */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qmng; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqmng$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
85061B1DA49D125991117950 /* /usr/local/Qt-5.5.1/mkspecs/macx-xcode/qmake.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/macx-xcode/qmake.conf"; sourceTree = "<absolute>"; };
|
||||
85B6936EDBE61D9BB8F8B33B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors.pri"; sourceTree = "<absolute>"; };
|
||||
861D2151FB56504EB72BDB6E /* moc_genstyles.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = moc_genstyles.cpp; path = GeneratedFiles/Debug/moc_genstyles.cpp; sourceTree = "<absolute>"; };
|
||||
87A4C1983FD641360BF80A02 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri"; sourceTree = "<absolute>"; };
|
||||
87EEF25EE25CF21572D1438C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets_private.pri"; sourceTree = "<absolute>"; };
|
||||
8849E60AEC7DB97A475C17EA /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib_private.pri"; sourceTree = "<absolute>"; };
|
||||
892D36BEF797BA4AF48D378A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_dummy.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_dummy.pri"; sourceTree = "<absolute>"; };
|
||||
89863CCAF1D29037AE95755D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative_private.pri"; sourceTree = "<absolute>"; };
|
||||
8A04A4A3625204D12A1207F6 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc.pri"; sourceTree = "<absolute>"; };
|
||||
8B4BB4E74F8A4442EF563D7D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri"; sourceTree = "<absolute>"; };
|
||||
8C31D89BDFCDF466DAED19A0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick_private.pri"; sourceTree = "<absolute>"; };
|
||||
8C5164D4E37556D40C5E6AA2 /* /usr/local/Qt-5.5.0/mkspecs/common/clang.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/clang.conf"; sourceTree = "<absolute>"; };
|
||||
8CF51323544B886B8F4A2232 /* qwbmp */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qwbmp; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqwbmp$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
87A4C1983FD641360BF80A02 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri"; sourceTree = "<absolute>"; };
|
||||
87EEF25EE25CF21572D1438C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets_private.pri"; sourceTree = "<absolute>"; };
|
||||
8849E60AEC7DB97A475C17EA /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib_private.pri"; sourceTree = "<absolute>"; };
|
||||
892D36BEF797BA4AF48D378A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_dummy.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_dummy.pri"; sourceTree = "<absolute>"; };
|
||||
89863CCAF1D29037AE95755D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative_private.pri"; sourceTree = "<absolute>"; };
|
||||
8A04A4A3625204D12A1207F6 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc.pri"; sourceTree = "<absolute>"; };
|
||||
8B4BB4E74F8A4442EF563D7D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri"; sourceTree = "<absolute>"; };
|
||||
8C31D89BDFCDF466DAED19A0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick_private.pri"; sourceTree = "<absolute>"; };
|
||||
8C5164D4E37556D40C5E6AA2 /* /usr/local/Qt-5.5.1/mkspecs/common/clang.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/clang.conf"; sourceTree = "<absolute>"; };
|
||||
8CF51323544B886B8F4A2232 /* qwbmp */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qwbmp; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqwbmp$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
8D9815BDB5BD9F90D2BC05C5 /* AGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AGL.framework; path = /System/Library/Frameworks/AGL.framework; sourceTree = "<absolute>"; };
|
||||
8DDE1D26B3206CDB8B57FABE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg_private.pri"; sourceTree = "<absolute>"; };
|
||||
8E9136256AFFBA6EF048AA55 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
8F500B5166907B6D9A7C3E3D /* qico */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qico; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqico$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
8F572030CE9AB8CC5F672201 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_platformsupport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_platformsupport_private.pri"; sourceTree = "<absolute>"; };
|
||||
8F97C9CAE38CA3AFAC0B3953 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets.pri"; sourceTree = "<absolute>"; };
|
||||
946BEA667170DC1A7A8F9DB0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmng.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmng.pri"; sourceTree = "<absolute>"; };
|
||||
8DDE1D26B3206CDB8B57FABE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg_private.pri"; sourceTree = "<absolute>"; };
|
||||
8E9136256AFFBA6EF048AA55 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
8F500B5166907B6D9A7C3E3D /* qico */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qico; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqico$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
8F572030CE9AB8CC5F672201 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_platformsupport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_platformsupport_private.pri"; sourceTree = "<absolute>"; };
|
||||
8F97C9CAE38CA3AFAC0B3953 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets.pri"; sourceTree = "<absolute>"; };
|
||||
946BEA667170DC1A7A8F9DB0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmng.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmng.pri"; sourceTree = "<absolute>"; };
|
||||
9742F24EE18EA44D52824F1E /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = /System/Library/Frameworks/CoreServices.framework; sourceTree = "<absolute>"; };
|
||||
9A0BDF67E013BB4FFB8685B0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qqt7engine.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qqt7engine.pri"; sourceTree = "<absolute>"; };
|
||||
9A0BDF67E013BB4FFB8685B0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qqt7engine.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qqt7engine.pri"; sourceTree = "<absolute>"; };
|
||||
9DFF62A901D70814B8A323D4 /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = /System/Library/Frameworks/Carbon.framework; sourceTree = "<absolute>"; };
|
||||
A022AF919D1977534CA66BB8 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets.pri"; sourceTree = "<absolute>"; };
|
||||
A022AF919D1977534CA66BB8 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets.pri"; sourceTree = "<absolute>"; };
|
||||
A1A67BEAA744704B29168D39 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = /System/Library/Frameworks/IOKit.framework; sourceTree = "<absolute>"; };
|
||||
A35D133D7C0EFB42FA85D194 /* genstyles.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = genstyles.h; path = SourceFiles/_other/genstyles.h; sourceTree = "<absolute>"; };
|
||||
A4D8AC60897F435C1C3B9D02 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_generic.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_generic.pri"; sourceTree = "<absolute>"; };
|
||||
A59F74CD76FDC2B4B9910E18 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools_private.pri"; sourceTree = "<absolute>"; };
|
||||
A5B17ABEFBA1C2F43443D644 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras.pri"; sourceTree = "<absolute>"; };
|
||||
A9E30FA27827990C5F182223 /* /usr/local/Qt-5.5.0/mkspecs/common/gcc-base-mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/gcc-base-mac.conf"; sourceTree = "<absolute>"; };
|
||||
AA73DC3C2901E2979FE8AD5B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml.pri"; sourceTree = "<absolute>"; };
|
||||
AB1C02DDBD8E88DD9A9AFDDD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri"; sourceTree = "<absolute>"; };
|
||||
A4D8AC60897F435C1C3B9D02 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_generic.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_generic.pri"; sourceTree = "<absolute>"; };
|
||||
A59F74CD76FDC2B4B9910E18 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools_private.pri"; sourceTree = "<absolute>"; };
|
||||
A5B17ABEFBA1C2F43443D644 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras.pri"; sourceTree = "<absolute>"; };
|
||||
A9E30FA27827990C5F182223 /* /usr/local/Qt-5.5.1/mkspecs/common/gcc-base-mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/gcc-base-mac.conf"; sourceTree = "<absolute>"; };
|
||||
AA73DC3C2901E2979FE8AD5B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml.pri"; sourceTree = "<absolute>"; };
|
||||
AB1C02DDBD8E88DD9A9AFDDD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri"; sourceTree = "<absolute>"; };
|
||||
AB745978DF0F41D1801ABDA6 /* .qmake.stash */ = {isa = PBXFileReference; lastKnownFileType = file; path = .qmake.stash; sourceTree = "<absolute>"; };
|
||||
ABA9AB4619F09DCFD2D4A27F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest_private.pri"; sourceTree = "<absolute>"; };
|
||||
ACC8A73268E5D9AF64E97AF4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth.pri"; sourceTree = "<absolute>"; };
|
||||
ADC6308023253CEA51F86E21 /* qwebp */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qwebp; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqwebp$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
ADFC79902C14A612AE93A89A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg.pri"; sourceTree = "<absolute>"; };
|
||||
ABA9AB4619F09DCFD2D4A27F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest_private.pri"; sourceTree = "<absolute>"; };
|
||||
ACC8A73268E5D9AF64E97AF4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth.pri"; sourceTree = "<absolute>"; };
|
||||
ADC6308023253CEA51F86E21 /* qwebp */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qwebp; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqwebp$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
ADFC79902C14A612AE93A89A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg.pri"; sourceTree = "<absolute>"; };
|
||||
AEA456A2F75ED9F5CDA7BCBE /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
|
||||
AFD721AA33A2F785E77B1698 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcocoa.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcocoa.pri"; sourceTree = "<absolute>"; };
|
||||
B064BF3B496A7BF7A449CA1E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsqlite.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsqlite.pri"; sourceTree = "<absolute>"; };
|
||||
B2246267D4C0D789259A86B0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
B26239063A068F800A2C95F4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwebp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwebp.pri"; sourceTree = "<absolute>"; };
|
||||
B382B645B34234E451AE5D94 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml.pri"; sourceTree = "<absolute>"; };
|
||||
B518DA4EE7376002AFC71FD5 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools_private.pri"; sourceTree = "<absolute>"; };
|
||||
B51B01657BFE9EAEF5590561 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc_private.pri"; sourceTree = "<absolute>"; };
|
||||
B678DA730B4ECE863AD631AE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qminimal.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qminimal.pri"; sourceTree = "<absolute>"; };
|
||||
B8525798C5AA7D7C6D68E1B3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri"; sourceTree = "<absolute>"; };
|
||||
B8C1F6C965A7A14FBA8D4518 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri"; sourceTree = "<absolute>"; };
|
||||
BD22EFEFCC02644B1883CE19 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtiff.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtiff.pri"; sourceTree = "<absolute>"; };
|
||||
BD4D97801B547471B37A4CDC /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bootstrap_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bootstrap_private.pri"; sourceTree = "<absolute>"; };
|
||||
BDC9ECADEE40D11E3C2EA93F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors_private.pri"; sourceTree = "<absolute>"; };
|
||||
BFF0C38FB0EC140C5F0304AE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport.pri"; sourceTree = "<absolute>"; };
|
||||
C4295BE59CCEBCDD16268349 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qico.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qico.pri"; sourceTree = "<absolute>"; };
|
||||
C505A18319B9B63C63877858 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script_private.pri"; sourceTree = "<absolute>"; };
|
||||
C84546C18DCBB04166195DCF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri"; sourceTree = "<absolute>"; };
|
||||
CCF75CFFB857487FB18F99F9 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qoffscreen.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qoffscreen.pri"; sourceTree = "<absolute>"; };
|
||||
CE829DD126DD2B97E8D70A7A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools.pri"; sourceTree = "<absolute>"; };
|
||||
CF86CD5BB01B9011E6B6FD3E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_clucene_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_clucene_private.pri"; sourceTree = "<absolute>"; };
|
||||
CFCB992BEC24B71BFB8A2F30 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script.pri"; sourceTree = "<absolute>"; };
|
||||
CFFBE05DB004895080314289 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvgicon.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvgicon.pri"; sourceTree = "<absolute>"; };
|
||||
D0CDC87DAFDA7F18A7AF450F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport_private.pri"; sourceTree = "<absolute>"; };
|
||||
D1FA7CAB5ACC09D563AE569F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
D2FE4D909926A0D1656068C4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia.pri"; sourceTree = "<absolute>"; };
|
||||
D3D1BE0BEA3AEE0551AD39AC /* qdds */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qdds; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqdds$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
AFD721AA33A2F785E77B1698 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcocoa.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcocoa.pri"; sourceTree = "<absolute>"; };
|
||||
B064BF3B496A7BF7A449CA1E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsqlite.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsqlite.pri"; sourceTree = "<absolute>"; };
|
||||
B2246267D4C0D789259A86B0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
B26239063A068F800A2C95F4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwebp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwebp.pri"; sourceTree = "<absolute>"; };
|
||||
B382B645B34234E451AE5D94 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml.pri"; sourceTree = "<absolute>"; };
|
||||
B518DA4EE7376002AFC71FD5 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools_private.pri"; sourceTree = "<absolute>"; };
|
||||
B51B01657BFE9EAEF5590561 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc_private.pri"; sourceTree = "<absolute>"; };
|
||||
B678DA730B4ECE863AD631AE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qminimal.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qminimal.pri"; sourceTree = "<absolute>"; };
|
||||
B8525798C5AA7D7C6D68E1B3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri"; sourceTree = "<absolute>"; };
|
||||
B8C1F6C965A7A14FBA8D4518 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri"; sourceTree = "<absolute>"; };
|
||||
BD22EFEFCC02644B1883CE19 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtiff.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtiff.pri"; sourceTree = "<absolute>"; };
|
||||
BD4D97801B547471B37A4CDC /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bootstrap_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bootstrap_private.pri"; sourceTree = "<absolute>"; };
|
||||
BDC9ECADEE40D11E3C2EA93F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors_private.pri"; sourceTree = "<absolute>"; };
|
||||
BFF0C38FB0EC140C5F0304AE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport.pri"; sourceTree = "<absolute>"; };
|
||||
C4295BE59CCEBCDD16268349 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qico.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qico.pri"; sourceTree = "<absolute>"; };
|
||||
C505A18319B9B63C63877858 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script_private.pri"; sourceTree = "<absolute>"; };
|
||||
C84546C18DCBB04166195DCF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri"; sourceTree = "<absolute>"; };
|
||||
CCF75CFFB857487FB18F99F9 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qoffscreen.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qoffscreen.pri"; sourceTree = "<absolute>"; };
|
||||
CE829DD126DD2B97E8D70A7A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools.pri"; sourceTree = "<absolute>"; };
|
||||
CF86CD5BB01B9011E6B6FD3E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_clucene_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_clucene_private.pri"; sourceTree = "<absolute>"; };
|
||||
CFCB992BEC24B71BFB8A2F30 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script.pri"; sourceTree = "<absolute>"; };
|
||||
CFFBE05DB004895080314289 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvgicon.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvgicon.pri"; sourceTree = "<absolute>"; };
|
||||
D0CDC87DAFDA7F18A7AF450F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport_private.pri"; sourceTree = "<absolute>"; };
|
||||
D1FA7CAB5ACC09D563AE569F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
D2FE4D909926A0D1656068C4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia.pri"; sourceTree = "<absolute>"; };
|
||||
D3D1BE0BEA3AEE0551AD39AC /* qdds */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qdds; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqdds$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
D4B32C2222F82AC56BADEB21 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = /System/Library/Frameworks/OpenGL.framework; sourceTree = "<absolute>"; };
|
||||
D4DE537C1FBBD48BD989FAD1 /* /usr/local/Qt-5.5.0/mkspecs/qconfig.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/qconfig.pri"; sourceTree = "<absolute>"; };
|
||||
D5141F795670589C8CC41CBC /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_cocoaprintersupport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_cocoaprintersupport.pri"; sourceTree = "<absolute>"; };
|
||||
D53D8E6A188E05078A114294 /* qcocoa */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qcocoa; path = "/usr/local/Qt-5.5.0/plugins/platforms/libqcocoa$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
D6193B79CECC9DD0142D1200 /* qtharfbuzzng */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtharfbuzzng; path = "/usr/local/Qt-5.5.0/lib/libqtharfbuzzng$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
D7A0618DE39A427EBF41940E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help_private.pri"; sourceTree = "<absolute>"; };
|
||||
D81E3D9A18202BE8EC3D0E2C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui_private.pri"; sourceTree = "<absolute>"; };
|
||||
D948D4D8F949D45158F8DE35 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets.pri"; sourceTree = "<absolute>"; };
|
||||
DB0A26DDC377B2004F61BFE3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib.pri"; sourceTree = "<absolute>"; };
|
||||
DBF506D10449BFABD45B82DA /* Qt5PrintSupport */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5PrintSupport; path = "/usr/local/Qt-5.5.0/lib/libQt5PrintSupport$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
DCEFD9167C239650120B0145 /* qtga */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtga; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqtga$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
DF8188E30892A4654B984221 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest.pri"; sourceTree = "<absolute>"; };
|
||||
D4DE537C1FBBD48BD989FAD1 /* /usr/local/Qt-5.5.1/mkspecs/qconfig.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/qconfig.pri"; sourceTree = "<absolute>"; };
|
||||
D5141F795670589C8CC41CBC /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_cocoaprintersupport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_cocoaprintersupport.pri"; sourceTree = "<absolute>"; };
|
||||
D53D8E6A188E05078A114294 /* qcocoa */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qcocoa; path = "/usr/local/Qt-5.5.1/plugins/platforms/libqcocoa$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
D6193B79CECC9DD0142D1200 /* qtharfbuzzng */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtharfbuzzng; path = "/usr/local/Qt-5.5.1/lib/libqtharfbuzzng$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
D7A0618DE39A427EBF41940E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help_private.pri"; sourceTree = "<absolute>"; };
|
||||
D81E3D9A18202BE8EC3D0E2C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui_private.pri"; sourceTree = "<absolute>"; };
|
||||
D948D4D8F949D45158F8DE35 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets.pri"; sourceTree = "<absolute>"; };
|
||||
DB0A26DDC377B2004F61BFE3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib.pri"; sourceTree = "<absolute>"; };
|
||||
DBF506D10449BFABD45B82DA /* Qt5PrintSupport */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5PrintSupport; path = "/usr/local/Qt-5.5.1/lib/libQt5PrintSupport$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
DCEFD9167C239650120B0145 /* qtga */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtga; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqtga$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
DF8188E30892A4654B984221 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest.pri"; sourceTree = "<absolute>"; };
|
||||
DFD7912080BC557230093752 /* ApplicationServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ApplicationServices.framework; path = /System/Library/Frameworks/ApplicationServices.framework; sourceTree = "<absolute>"; };
|
||||
E0F4563EA350EB65112A0EF4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl_private.pri"; sourceTree = "<absolute>"; };
|
||||
E37365B4489B4918BEBB707D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml_private.pri"; sourceTree = "<absolute>"; };
|
||||
E432DA897A5F027987342E8F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions.pri"; sourceTree = "<absolute>"; };
|
||||
E50FA73B8A23BC179A642B27 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools.pri"; sourceTree = "<absolute>"; };
|
||||
E66B9EC81C285CA9A7FB6A2E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning_private.pri"; sourceTree = "<absolute>"; };
|
||||
E7B2F248E3F7970788F35BF5 /* Qt5PlatformSupport */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5PlatformSupport; path = "/usr/local/Qt-5.5.0/lib/libQt5PlatformSupport$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
E7D67CB158408BB7DEA74764 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia_private.pri"; sourceTree = "<absolute>"; };
|
||||
EA5D4FF9DE4AC4215D7DCE0D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcorewlanbearer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcorewlanbearer.pri"; sourceTree = "<absolute>"; };
|
||||
EB1F99FD112917157F3C3F6E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qicns.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qicns.pri"; sourceTree = "<absolute>"; };
|
||||
EB29AC635054C09EFA749AE1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp.pri"; sourceTree = "<absolute>"; };
|
||||
EBD39B69F368CEEAC360A16D /* /usr/local/Qt-5.5.0/mkspecs/common/mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/mac.conf"; sourceTree = "<absolute>"; };
|
||||
E0F4563EA350EB65112A0EF4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl_private.pri"; sourceTree = "<absolute>"; };
|
||||
E37365B4489B4918BEBB707D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml_private.pri"; sourceTree = "<absolute>"; };
|
||||
E432DA897A5F027987342E8F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions.pri"; sourceTree = "<absolute>"; };
|
||||
E50FA73B8A23BC179A642B27 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools.pri"; sourceTree = "<absolute>"; };
|
||||
E66B9EC81C285CA9A7FB6A2E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning_private.pri"; sourceTree = "<absolute>"; };
|
||||
E7B2F248E3F7970788F35BF5 /* Qt5PlatformSupport */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5PlatformSupport; path = "/usr/local/Qt-5.5.1/lib/libQt5PlatformSupport$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
E7D67CB158408BB7DEA74764 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia_private.pri"; sourceTree = "<absolute>"; };
|
||||
EA5D4FF9DE4AC4215D7DCE0D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcorewlanbearer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcorewlanbearer.pri"; sourceTree = "<absolute>"; };
|
||||
EB1F99FD112917157F3C3F6E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qicns.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qicns.pri"; sourceTree = "<absolute>"; };
|
||||
EB29AC635054C09EFA749AE1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp.pri"; sourceTree = "<absolute>"; };
|
||||
EBD39B69F368CEEAC360A16D /* /usr/local/Qt-5.5.1/mkspecs/common/mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/mac.conf"; sourceTree = "<absolute>"; };
|
||||
EF5243ECB3132AF2796F09DF /* msmain.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = msmain.cpp; path = SourceFiles/_other/msmain.cpp; sourceTree = "<absolute>"; };
|
||||
F0681BC551FC8A2B132FC646 /* qjp2 */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qjp2; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqjp2$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
F0A58515945747E36783CC21 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_inspector.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_inspector.pri"; sourceTree = "<absolute>"; };
|
||||
F2453BA07315EB9F34F1CD57 /* qtiff */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtiff; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqtiff$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
F2F823087EA182CCBD5748B8 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer.pri"; sourceTree = "<absolute>"; };
|
||||
F33BE16353DD1557A9AB3558 /* /usr/local/Qt-5.5.0/mkspecs/common/clang-mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/clang-mac.conf"; sourceTree = "<absolute>"; };
|
||||
F4EB01857048DCFCFFAAC4D0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfmediaplayer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfmediaplayer.pri"; sourceTree = "<absolute>"; };
|
||||
F7ADBF552F6B9A5982915164 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning.pri"; sourceTree = "<absolute>"; };
|
||||
F83F87F8A60C9DF666911D42 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvg.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvg.pri"; sourceTree = "<absolute>"; };
|
||||
F0681BC551FC8A2B132FC646 /* qjp2 */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qjp2; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqjp2$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
F0A58515945747E36783CC21 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_inspector.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_inspector.pri"; sourceTree = "<absolute>"; };
|
||||
F2453BA07315EB9F34F1CD57 /* qtiff */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtiff; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqtiff$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
F2F823087EA182CCBD5748B8 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer.pri"; sourceTree = "<absolute>"; };
|
||||
F33BE16353DD1557A9AB3558 /* /usr/local/Qt-5.5.1/mkspecs/common/clang-mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/clang-mac.conf"; sourceTree = "<absolute>"; };
|
||||
F4EB01857048DCFCFFAAC4D0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfmediaplayer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfmediaplayer.pri"; sourceTree = "<absolute>"; };
|
||||
F7ADBF552F6B9A5982915164 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning.pri"; sourceTree = "<absolute>"; };
|
||||
F83F87F8A60C9DF666911D42 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvg.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvg.pri"; sourceTree = "<absolute>"; };
|
||||
F8BC976260B6D624F23C32D6 /* genstyles.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = genstyles.cpp; path = SourceFiles/_other/genstyles.cpp; sourceTree = "<absolute>"; };
|
||||
F9BEAA743A908603687DA204 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns_private.pri"; sourceTree = "<absolute>"; };
|
||||
F9BEAA743A908603687DA204 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns_private.pri"; sourceTree = "<absolute>"; };
|
||||
FCC237CA5AD60B9BA4447615 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
|
||||
FD944B80F033DFE737D401A2 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help.pri"; sourceTree = "<absolute>"; };
|
||||
FD944B80F033DFE737D401A2 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help.pri"; sourceTree = "<absolute>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
@@ -298,127 +298,127 @@
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
10F719DFC6D0B05605ED1C16 /* MetaStyle.pro */,
|
||||
6E67D23B15FC4B628DB2E0B2 /* /usr/local/Qt-5.5.0/mkspecs/qdevice.pri */,
|
||||
669FB007C4A3D58424D85EC8 /* /usr/local/Qt-5.5.0/mkspecs/common/shell-unix.conf */,
|
||||
0ABCEA8D0DD45589040B0AF2 /* /usr/local/Qt-5.5.0/mkspecs/common/unix.conf */,
|
||||
EBD39B69F368CEEAC360A16D /* /usr/local/Qt-5.5.0/mkspecs/common/mac.conf */,
|
||||
817A0F5A41B553A6DE67FDEB /* /usr/local/Qt-5.5.0/mkspecs/common/macx.conf */,
|
||||
45B95DB3B70B47A910FC847B /* /usr/local/Qt-5.5.0/mkspecs/common/gcc-base.conf */,
|
||||
A9E30FA27827990C5F182223 /* /usr/local/Qt-5.5.0/mkspecs/common/gcc-base-mac.conf */,
|
||||
8C5164D4E37556D40C5E6AA2 /* /usr/local/Qt-5.5.0/mkspecs/common/clang.conf */,
|
||||
F33BE16353DD1557A9AB3558 /* /usr/local/Qt-5.5.0/mkspecs/common/clang-mac.conf */,
|
||||
D4DE537C1FBBD48BD989FAD1 /* /usr/local/Qt-5.5.0/mkspecs/qconfig.pri */,
|
||||
ACC8A73268E5D9AF64E97AF4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth.pri */,
|
||||
2E48BB382B895A5ACD79AF9F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth_private.pri */,
|
||||
BD4D97801B547471B37A4CDC /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bootstrap_private.pri */,
|
||||
CF86CD5BB01B9011E6B6FD3E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_clucene_private.pri */,
|
||||
77FF486B1F9BCD55A8A3F35D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent.pri */,
|
||||
7D28E9003CE64D8A7F2E292E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent_private.pri */,
|
||||
7ECCC1F9442988B4F2707CC1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core.pri */,
|
||||
5F781C7FD8422D359EA1D2FE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core_private.pri */,
|
||||
7A94C7168B3FCBE5F04A013B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative.pri */,
|
||||
89863CCAF1D29037AE95755D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative_private.pri */,
|
||||
F2F823087EA182CCBD5748B8 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer.pri */,
|
||||
7C2F42B222EE88E26A6FED62 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer_private.pri */,
|
||||
69347C39E4D922E94D0860BF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designercomponents_private.pri */,
|
||||
360D4B3ED25D126430DE27D4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio.pri */,
|
||||
4C6C71914B1926119120DACD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio_private.pri */,
|
||||
23BC8B0FC3279421D41CA268 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui.pri */,
|
||||
D81E3D9A18202BE8EC3D0E2C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui_private.pri */,
|
||||
FD944B80F033DFE737D401A2 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help.pri */,
|
||||
D7A0618DE39A427EBF41940E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help_private.pri */,
|
||||
A5B17ABEFBA1C2F43443D644 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras.pri */,
|
||||
33F165B1DB8CBF182C56FAB5 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras_private.pri */,
|
||||
D2FE4D909926A0D1656068C4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia.pri */,
|
||||
E7D67CB158408BB7DEA74764 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia_private.pri */,
|
||||
28BD0D10214709D95B161E24 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets.pri */,
|
||||
D1FA7CAB5ACC09D563AE569F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets_private.pri */,
|
||||
293C8DEEE270847AC20E70F9 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network.pri */,
|
||||
382E89A91A34F7898C25FD0D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network_private.pri */,
|
||||
8A04A4A3625204D12A1207F6 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc.pri */,
|
||||
B51B01657BFE9EAEF5590561 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc_private.pri */,
|
||||
5CEA7A2DB2136425A88D1254 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl.pri */,
|
||||
E0F4563EA350EB65112A0EF4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl_private.pri */,
|
||||
E432DA897A5F027987342E8F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions.pri */,
|
||||
5597304BEC94BFB9EAAEBC4B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions_private.pri */,
|
||||
8F572030CE9AB8CC5F672201 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_platformsupport_private.pri */,
|
||||
F7ADBF552F6B9A5982915164 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning.pri */,
|
||||
E66B9EC81C285CA9A7FB6A2E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning_private.pri */,
|
||||
6C08BFC27C4C303A3A5181DB /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport.pri */,
|
||||
D0CDC87DAFDA7F18A7AF450F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport_private.pri */,
|
||||
B382B645B34234E451AE5D94 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml.pri */,
|
||||
6102C69805B6398AF6FA5BEB /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml_private.pri */,
|
||||
4FB6657DA22BC68B819B64B3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmldevtools_private.pri */,
|
||||
DF8188E30892A4654B984221 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest.pri */,
|
||||
ABA9AB4619F09DCFD2D4A27F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest_private.pri */,
|
||||
5B22E9E4EE9AAE42ABC24AB3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri */,
|
||||
16DD53E17C65AC8B450CC6C3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick.pri */,
|
||||
8C31D89BDFCDF466DAED19A0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick_private.pri */,
|
||||
82E7DCFD95559532D8FC6CDD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickparticles_private.pri */,
|
||||
D948D4D8F949D45158F8DE35 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets.pri */,
|
||||
B2246267D4C0D789259A86B0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets_private.pri */,
|
||||
CFCB992BEC24B71BFB8A2F30 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script.pri */,
|
||||
C505A18319B9B63C63877858 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script_private.pri */,
|
||||
CE829DD126DD2B97E8D70A7A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools.pri */,
|
||||
A59F74CD76FDC2B4B9910E18 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools_private.pri */,
|
||||
85B6936EDBE61D9BB8F8B33B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors.pri */,
|
||||
BDC9ECADEE40D11E3C2EA93F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors_private.pri */,
|
||||
BFF0C38FB0EC140C5F0304AE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport.pri */,
|
||||
311004331A04F3D69C98643C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport_private.pri */,
|
||||
7DE30A90667C03C4F91A2A91 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql.pri */,
|
||||
075EB50EB07CF69FD62FB8DF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql_private.pri */,
|
||||
ADFC79902C14A612AE93A89A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg.pri */,
|
||||
8DDE1D26B3206CDB8B57FABE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg_private.pri */,
|
||||
DB0A26DDC377B2004F61BFE3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib.pri */,
|
||||
8849E60AEC7DB97A475C17EA /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib_private.pri */,
|
||||
E50FA73B8A23BC179A642B27 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools.pri */,
|
||||
B518DA4EE7376002AFC71FD5 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools_private.pri */,
|
||||
8F97C9CAE38CA3AFAC0B3953 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets.pri */,
|
||||
87EEF25EE25CF21572D1438C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets_private.pri */,
|
||||
A022AF919D1977534CA66BB8 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets.pri */,
|
||||
8E9136256AFFBA6EF048AA55 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets_private.pri */,
|
||||
AA73DC3C2901E2979FE8AD5B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml.pri */,
|
||||
E37365B4489B4918BEBB707D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml_private.pri */,
|
||||
2E6D9B1D2743D24E31B0B284 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns.pri */,
|
||||
F9BEAA743A908603687DA204 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns_private.pri */,
|
||||
D5141F795670589C8CC41CBC /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_cocoaprintersupport.pri */,
|
||||
1FAE75C970AA73F2DEDDB508 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfcamera.pri */,
|
||||
F4EB01857048DCFCFFAAC4D0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfmediaplayer.pri */,
|
||||
AFD721AA33A2F785E77B1698 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcocoa.pri */,
|
||||
EA5D4FF9DE4AC4215D7DCE0D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcorewlanbearer.pri */,
|
||||
111BBEE3D1432C3B517FD539 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdds.pri */,
|
||||
3685604BDB64DD6E92169B73 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdeclarativeview.pri */,
|
||||
2440CD1D4CEF80443BCA1B8B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qgenericbearer.pri */,
|
||||
EB1F99FD112917157F3C3F6E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qicns.pri */,
|
||||
C4295BE59CCEBCDD16268349 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qico.pri */,
|
||||
45DB132B756499D4DF38430E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qjp2.pri */,
|
||||
B678DA730B4ECE863AD631AE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qminimal.pri */,
|
||||
F0A58515945747E36783CC21 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_inspector.pri */,
|
||||
B8525798C5AA7D7C6D68E1B3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri */,
|
||||
EB29AC635054C09EFA749AE1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp.pri */,
|
||||
3F08D430CEC8D2117735CCB4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri */,
|
||||
946BEA667170DC1A7A8F9DB0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmng.pri */,
|
||||
CCF75CFFB857487FB18F99F9 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qoffscreen.pri */,
|
||||
9A0BDF67E013BB4FFB8685B0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qqt7engine.pri */,
|
||||
B064BF3B496A7BF7A449CA1E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsqlite.pri */,
|
||||
F83F87F8A60C9DF666911D42 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvg.pri */,
|
||||
CFFBE05DB004895080314289 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvgicon.pri */,
|
||||
247D8DF3B1DDB665B80BBA25 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblequick.pri */,
|
||||
87A4C1983FD641360BF80A02 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri */,
|
||||
24B6929EE3952310F2DAECB1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri */,
|
||||
060A694B42A4555240009936 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtga.pri */,
|
||||
BD22EFEFCC02644B1883CE19 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtiff.pri */,
|
||||
B8C1F6C965A7A14FBA8D4518 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri */,
|
||||
74C1C232DFAA71028A0412CA /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri */,
|
||||
C84546C18DCBB04166195DCF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri */,
|
||||
AB1C02DDBD8E88DD9A9AFDDD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri */,
|
||||
8B4BB4E74F8A4442EF563D7D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri */,
|
||||
892D36BEF797BA4AF48D378A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_dummy.pri */,
|
||||
A4D8AC60897F435C1C3B9D02 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_generic.pri */,
|
||||
346287C9E754E7C458153F03 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwbmp.pri */,
|
||||
B26239063A068F800A2C95F4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwebp.pri */,
|
||||
63E722139886C87BC82DBDF5 /* /usr/local/Qt-5.5.0/mkspecs/macx-clang/qmake.conf */,
|
||||
85061B1DA49D125991117950 /* /usr/local/Qt-5.5.0/mkspecs/macx-xcode/qmake.conf */,
|
||||
6E67D23B15FC4B628DB2E0B2 /* /usr/local/Qt-5.5.1/mkspecs/qdevice.pri */,
|
||||
669FB007C4A3D58424D85EC8 /* /usr/local/Qt-5.5.1/mkspecs/common/shell-unix.conf */,
|
||||
0ABCEA8D0DD45589040B0AF2 /* /usr/local/Qt-5.5.1/mkspecs/common/unix.conf */,
|
||||
EBD39B69F368CEEAC360A16D /* /usr/local/Qt-5.5.1/mkspecs/common/mac.conf */,
|
||||
817A0F5A41B553A6DE67FDEB /* /usr/local/Qt-5.5.1/mkspecs/common/macx.conf */,
|
||||
45B95DB3B70B47A910FC847B /* /usr/local/Qt-5.5.1/mkspecs/common/gcc-base.conf */,
|
||||
A9E30FA27827990C5F182223 /* /usr/local/Qt-5.5.1/mkspecs/common/gcc-base-mac.conf */,
|
||||
8C5164D4E37556D40C5E6AA2 /* /usr/local/Qt-5.5.1/mkspecs/common/clang.conf */,
|
||||
F33BE16353DD1557A9AB3558 /* /usr/local/Qt-5.5.1/mkspecs/common/clang-mac.conf */,
|
||||
D4DE537C1FBBD48BD989FAD1 /* /usr/local/Qt-5.5.1/mkspecs/qconfig.pri */,
|
||||
ACC8A73268E5D9AF64E97AF4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth.pri */,
|
||||
2E48BB382B895A5ACD79AF9F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth_private.pri */,
|
||||
BD4D97801B547471B37A4CDC /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bootstrap_private.pri */,
|
||||
CF86CD5BB01B9011E6B6FD3E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_clucene_private.pri */,
|
||||
77FF486B1F9BCD55A8A3F35D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent.pri */,
|
||||
7D28E9003CE64D8A7F2E292E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent_private.pri */,
|
||||
7ECCC1F9442988B4F2707CC1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core.pri */,
|
||||
5F781C7FD8422D359EA1D2FE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core_private.pri */,
|
||||
7A94C7168B3FCBE5F04A013B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative.pri */,
|
||||
89863CCAF1D29037AE95755D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative_private.pri */,
|
||||
F2F823087EA182CCBD5748B8 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer.pri */,
|
||||
7C2F42B222EE88E26A6FED62 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer_private.pri */,
|
||||
69347C39E4D922E94D0860BF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designercomponents_private.pri */,
|
||||
360D4B3ED25D126430DE27D4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio.pri */,
|
||||
4C6C71914B1926119120DACD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio_private.pri */,
|
||||
23BC8B0FC3279421D41CA268 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui.pri */,
|
||||
D81E3D9A18202BE8EC3D0E2C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui_private.pri */,
|
||||
FD944B80F033DFE737D401A2 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help.pri */,
|
||||
D7A0618DE39A427EBF41940E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help_private.pri */,
|
||||
A5B17ABEFBA1C2F43443D644 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras.pri */,
|
||||
33F165B1DB8CBF182C56FAB5 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras_private.pri */,
|
||||
D2FE4D909926A0D1656068C4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia.pri */,
|
||||
E7D67CB158408BB7DEA74764 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia_private.pri */,
|
||||
28BD0D10214709D95B161E24 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets.pri */,
|
||||
D1FA7CAB5ACC09D563AE569F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets_private.pri */,
|
||||
293C8DEEE270847AC20E70F9 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network.pri */,
|
||||
382E89A91A34F7898C25FD0D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network_private.pri */,
|
||||
8A04A4A3625204D12A1207F6 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc.pri */,
|
||||
B51B01657BFE9EAEF5590561 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc_private.pri */,
|
||||
5CEA7A2DB2136425A88D1254 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl.pri */,
|
||||
E0F4563EA350EB65112A0EF4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl_private.pri */,
|
||||
E432DA897A5F027987342E8F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions.pri */,
|
||||
5597304BEC94BFB9EAAEBC4B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions_private.pri */,
|
||||
8F572030CE9AB8CC5F672201 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_platformsupport_private.pri */,
|
||||
F7ADBF552F6B9A5982915164 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning.pri */,
|
||||
E66B9EC81C285CA9A7FB6A2E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning_private.pri */,
|
||||
6C08BFC27C4C303A3A5181DB /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport.pri */,
|
||||
D0CDC87DAFDA7F18A7AF450F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport_private.pri */,
|
||||
B382B645B34234E451AE5D94 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml.pri */,
|
||||
6102C69805B6398AF6FA5BEB /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml_private.pri */,
|
||||
4FB6657DA22BC68B819B64B3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmldevtools_private.pri */,
|
||||
DF8188E30892A4654B984221 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest.pri */,
|
||||
ABA9AB4619F09DCFD2D4A27F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest_private.pri */,
|
||||
5B22E9E4EE9AAE42ABC24AB3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri */,
|
||||
16DD53E17C65AC8B450CC6C3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick.pri */,
|
||||
8C31D89BDFCDF466DAED19A0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick_private.pri */,
|
||||
82E7DCFD95559532D8FC6CDD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickparticles_private.pri */,
|
||||
D948D4D8F949D45158F8DE35 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets.pri */,
|
||||
B2246267D4C0D789259A86B0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets_private.pri */,
|
||||
CFCB992BEC24B71BFB8A2F30 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script.pri */,
|
||||
C505A18319B9B63C63877858 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script_private.pri */,
|
||||
CE829DD126DD2B97E8D70A7A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools.pri */,
|
||||
A59F74CD76FDC2B4B9910E18 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools_private.pri */,
|
||||
85B6936EDBE61D9BB8F8B33B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors.pri */,
|
||||
BDC9ECADEE40D11E3C2EA93F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors_private.pri */,
|
||||
BFF0C38FB0EC140C5F0304AE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport.pri */,
|
||||
311004331A04F3D69C98643C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport_private.pri */,
|
||||
7DE30A90667C03C4F91A2A91 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql.pri */,
|
||||
075EB50EB07CF69FD62FB8DF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql_private.pri */,
|
||||
ADFC79902C14A612AE93A89A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg.pri */,
|
||||
8DDE1D26B3206CDB8B57FABE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg_private.pri */,
|
||||
DB0A26DDC377B2004F61BFE3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib.pri */,
|
||||
8849E60AEC7DB97A475C17EA /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib_private.pri */,
|
||||
E50FA73B8A23BC179A642B27 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools.pri */,
|
||||
B518DA4EE7376002AFC71FD5 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools_private.pri */,
|
||||
8F97C9CAE38CA3AFAC0B3953 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets.pri */,
|
||||
87EEF25EE25CF21572D1438C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets_private.pri */,
|
||||
A022AF919D1977534CA66BB8 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets.pri */,
|
||||
8E9136256AFFBA6EF048AA55 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets_private.pri */,
|
||||
AA73DC3C2901E2979FE8AD5B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml.pri */,
|
||||
E37365B4489B4918BEBB707D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml_private.pri */,
|
||||
2E6D9B1D2743D24E31B0B284 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns.pri */,
|
||||
F9BEAA743A908603687DA204 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns_private.pri */,
|
||||
D5141F795670589C8CC41CBC /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_cocoaprintersupport.pri */,
|
||||
1FAE75C970AA73F2DEDDB508 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfcamera.pri */,
|
||||
F4EB01857048DCFCFFAAC4D0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfmediaplayer.pri */,
|
||||
AFD721AA33A2F785E77B1698 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcocoa.pri */,
|
||||
EA5D4FF9DE4AC4215D7DCE0D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcorewlanbearer.pri */,
|
||||
111BBEE3D1432C3B517FD539 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdds.pri */,
|
||||
3685604BDB64DD6E92169B73 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdeclarativeview.pri */,
|
||||
2440CD1D4CEF80443BCA1B8B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qgenericbearer.pri */,
|
||||
EB1F99FD112917157F3C3F6E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qicns.pri */,
|
||||
C4295BE59CCEBCDD16268349 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qico.pri */,
|
||||
45DB132B756499D4DF38430E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qjp2.pri */,
|
||||
B678DA730B4ECE863AD631AE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qminimal.pri */,
|
||||
F0A58515945747E36783CC21 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_inspector.pri */,
|
||||
B8525798C5AA7D7C6D68E1B3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri */,
|
||||
EB29AC635054C09EFA749AE1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp.pri */,
|
||||
3F08D430CEC8D2117735CCB4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri */,
|
||||
946BEA667170DC1A7A8F9DB0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmng.pri */,
|
||||
CCF75CFFB857487FB18F99F9 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qoffscreen.pri */,
|
||||
9A0BDF67E013BB4FFB8685B0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qqt7engine.pri */,
|
||||
B064BF3B496A7BF7A449CA1E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsqlite.pri */,
|
||||
F83F87F8A60C9DF666911D42 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvg.pri */,
|
||||
CFFBE05DB004895080314289 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvgicon.pri */,
|
||||
247D8DF3B1DDB665B80BBA25 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblequick.pri */,
|
||||
87A4C1983FD641360BF80A02 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri */,
|
||||
24B6929EE3952310F2DAECB1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri */,
|
||||
060A694B42A4555240009936 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtga.pri */,
|
||||
BD22EFEFCC02644B1883CE19 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtiff.pri */,
|
||||
B8C1F6C965A7A14FBA8D4518 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri */,
|
||||
74C1C232DFAA71028A0412CA /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri */,
|
||||
C84546C18DCBB04166195DCF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri */,
|
||||
AB1C02DDBD8E88DD9A9AFDDD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri */,
|
||||
8B4BB4E74F8A4442EF563D7D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri */,
|
||||
892D36BEF797BA4AF48D378A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_dummy.pri */,
|
||||
A4D8AC60897F435C1C3B9D02 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_generic.pri */,
|
||||
346287C9E754E7C458153F03 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwbmp.pri */,
|
||||
B26239063A068F800A2C95F4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwebp.pri */,
|
||||
63E722139886C87BC82DBDF5 /* /usr/local/Qt-5.5.1/mkspecs/macx-clang/qmake.conf */,
|
||||
85061B1DA49D125991117950 /* /usr/local/Qt-5.5.1/mkspecs/macx-xcode/qmake.conf */,
|
||||
AB745978DF0F41D1801ABDA6 /* .qmake.stash */,
|
||||
);
|
||||
name = "Supporting Files";
|
||||
@@ -520,7 +520,7 @@
|
||||
6DB9C3763D02B1415CD9D565 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 0630;
|
||||
LastUpgradeCheck = 0700;
|
||||
};
|
||||
buildConfigurationList = DAC4C1AA5EDEA1C85E9CA5E6 /* Build configuration list for PBXProject "MetaStyle" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
@@ -616,25 +616,25 @@
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
../../Libraries/QtStatic/qtbase/include/QtGui/5.5.0/QtGui,
|
||||
../../Libraries/QtStatic/qtbase/include/QtCore/5.5.0/QtCore,
|
||||
../../Libraries/QtStatic/qtbase/include/QtGui/5.5.1/QtGui,
|
||||
../../Libraries/QtStatic/qtbase/include/QtCore/5.5.1/QtCore,
|
||||
../../Libraries/QtStatic/qtbase/include,
|
||||
"/usr/local/Qt-5.5.0/include",
|
||||
"/usr/local/Qt-5.5.0/include/QtGui",
|
||||
"/usr/local/Qt-5.5.0/include/QtCore",
|
||||
"/usr/local/Qt-5.5.1/include",
|
||||
"/usr/local/Qt-5.5.1/include/QtGui",
|
||||
"/usr/local/Qt-5.5.1/include/QtCore",
|
||||
GeneratedFiles/Debug,
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers,
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers,
|
||||
"/usr/local/Qt-5.5.0/mkspecs/macx-clang",
|
||||
"/usr/local/Qt-5.5.1/mkspecs/macx-clang",
|
||||
);
|
||||
INFOPLIST_FILE = Style.plist;
|
||||
INSTALL_DIR = ../Mac/ReleaseStyle/;
|
||||
LDPLUSPLUS = "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++";
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
/System/Library/Frameworks/,
|
||||
"/usr/local/Qt-5.5.0/lib",
|
||||
"/usr/local/Qt-5.5.0/plugins/platforms",
|
||||
"/usr/local/Qt-5.5.0/plugins/imageformats",
|
||||
"/usr/local/Qt-5.5.1/lib",
|
||||
"/usr/local/Qt-5.5.1/plugins/platforms",
|
||||
"/usr/local/Qt-5.5.1/plugins/imageformats",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.7;
|
||||
OBJROOT = ./../Mac/ReleaseIntermediateStyle;
|
||||
@@ -663,10 +663,10 @@
|
||||
OTHER_LDFLAGS = (
|
||||
"-headerpad_max_install_names",
|
||||
"-stdlib=libc++",
|
||||
"-L/usr/local/Qt-5.5.0/lib",
|
||||
"-L/usr/local/Qt-5.5.0/plugins/platforms",
|
||||
"-L/usr/local/Qt-5.5.1/lib",
|
||||
"-L/usr/local/Qt-5.5.1/plugins/platforms",
|
||||
"-lcups",
|
||||
"-L/usr/local/Qt-5.5.0/plugins/imageformats",
|
||||
"-L/usr/local/Qt-5.5.1/plugins/imageformats",
|
||||
"-lz",
|
||||
"-lm",
|
||||
);
|
||||
@@ -694,6 +694,7 @@
|
||||
DYLIB_COMPATIBILITY_VERSION = 1.0;
|
||||
DYLIB_CURRENT_VERSION = 1.0.0;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
ENABLE_TESTABILITY = YES;
|
||||
FRAMEWORK_SEARCH_PATHS = "";
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
@@ -706,25 +707,25 @@
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
../../Libraries/QtStatic/qtbase/include/QtGui/5.5.0/QtGui,
|
||||
../../Libraries/QtStatic/qtbase/include/QtCore/5.5.0/QtCore,
|
||||
../../Libraries/QtStatic/qtbase/include/QtGui/5.5.1/QtGui,
|
||||
../../Libraries/QtStatic/qtbase/include/QtCore/5.5.1/QtCore,
|
||||
../../Libraries/QtStatic/qtbase/include,
|
||||
"/usr/local/Qt-5.5.0/include",
|
||||
"/usr/local/Qt-5.5.0/include/QtGui",
|
||||
"/usr/local/Qt-5.5.0/include/QtCore",
|
||||
"/usr/local/Qt-5.5.1/include",
|
||||
"/usr/local/Qt-5.5.1/include/QtGui",
|
||||
"/usr/local/Qt-5.5.1/include/QtCore",
|
||||
GeneratedFiles/Debug,
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers,
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers,
|
||||
"/usr/local/Qt-5.5.0/mkspecs/macx-clang",
|
||||
"/usr/local/Qt-5.5.1/mkspecs/macx-clang",
|
||||
);
|
||||
INFOPLIST_FILE = Style.plist;
|
||||
INSTALL_DIR = ../Mac/DebugStyle/;
|
||||
LDPLUSPLUS = "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++";
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
/System/Library/Frameworks/,
|
||||
"/usr/local/Qt-5.5.0/lib",
|
||||
"/usr/local/Qt-5.5.0/plugins/platforms",
|
||||
"/usr/local/Qt-5.5.0/plugins/imageformats",
|
||||
"/usr/local/Qt-5.5.1/lib",
|
||||
"/usr/local/Qt-5.5.1/plugins/platforms",
|
||||
"/usr/local/Qt-5.5.1/plugins/imageformats",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.7;
|
||||
OBJROOT = ./../Mac/DebugIntermediateStyle;
|
||||
@@ -754,10 +755,10 @@
|
||||
OTHER_LDFLAGS = (
|
||||
"-headerpad_max_install_names",
|
||||
"-stdlib=libc++",
|
||||
"-L/usr/local/Qt-5.5.0/lib",
|
||||
"-L/usr/local/Qt-5.5.0/plugins/platforms",
|
||||
"-L/usr/local/Qt-5.5.1/lib",
|
||||
"-L/usr/local/Qt-5.5.1/plugins/platforms",
|
||||
"-lcups",
|
||||
"-L/usr/local/Qt-5.5.0/plugins/imageformats",
|
||||
"-L/usr/local/Qt-5.5.1/plugins/imageformats",
|
||||
"-lz",
|
||||
"-lm",
|
||||
);
|
||||
@@ -775,17 +776,18 @@
|
||||
COPY_PHASE_STRIP = YES;
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
./../../Libraries/QtStatic/qtbase/include/QtGui/5.5.0/QtGui,
|
||||
./../../Libraries/QtStatic/qtbase/include/QtCore/5.5.0/QtCore,
|
||||
./../../Libraries/QtStatic/qtbase/include/QtGui/5.5.1/QtGui,
|
||||
./../../Libraries/QtStatic/qtbase/include/QtCore/5.5.1/QtCore,
|
||||
./../../Libraries/QtStatic/qtbase/include,
|
||||
"/usr/local/Qt-5.5.0/include",
|
||||
"/usr/local/Qt-5.5.0/include/QtGui",
|
||||
"/usr/local/Qt-5.5.0/include/QtCore",
|
||||
"/usr/local/Qt-5.5.1/include",
|
||||
"/usr/local/Qt-5.5.1/include/QtGui",
|
||||
"/usr/local/Qt-5.5.1/include/QtCore",
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers,
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers,
|
||||
"/usr/local/Qt-5.5.0/mkspecs/macx-clang",
|
||||
"/usr/local/Qt-5.5.1/mkspecs/macx-clang",
|
||||
);
|
||||
INSTALL_DIR = ./../Mac/ReleaseStyle/;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.tdesktop.${PRODUCT_NAME:rfc1034identifier}";
|
||||
PRODUCT_NAME = MetaStyle;
|
||||
QT_LIBRARY_SUFFIX = "";
|
||||
SDKROOT = macosx;
|
||||
@@ -801,17 +803,18 @@
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
./../../Libraries/QtStatic/qtbase/include/QtGui/5.5.0/QtGui,
|
||||
./../../Libraries/QtStatic/qtbase/include/QtCore/5.5.0/QtCore,
|
||||
./../../Libraries/QtStatic/qtbase/include/QtGui/5.5.1/QtGui,
|
||||
./../../Libraries/QtStatic/qtbase/include/QtCore/5.5.1/QtCore,
|
||||
./../../Libraries/QtStatic/qtbase/include,
|
||||
"/usr/local/Qt-5.5.0/include",
|
||||
"/usr/local/Qt-5.5.0/include/QtGui",
|
||||
"/usr/local/Qt-5.5.0/include/QtCore",
|
||||
"/usr/local/Qt-5.5.1/include",
|
||||
"/usr/local/Qt-5.5.1/include/QtGui",
|
||||
"/usr/local/Qt-5.5.1/include/QtCore",
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers,
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers,
|
||||
"/usr/local/Qt-5.5.0/mkspecs/macx-clang",
|
||||
"/usr/local/Qt-5.5.1/mkspecs/macx-clang",
|
||||
);
|
||||
INSTALL_DIR = ./../Mac/DebugStyle/;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.tdesktop.${PRODUCT_NAME:rfc1034identifier}";
|
||||
PRODUCT_NAME = MetaStyle;
|
||||
QT_LIBRARY_SUFFIX = _debug;
|
||||
SDKROOT = macosx;
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
#############################################################################
|
||||
# Makefile for building: ../Mac/DebugStyle/MetaStyle.app/Contents/MacOS/MetaStyle
|
||||
# Generated by qmake (3.0) (Qt 5.5.0)
|
||||
# Generated by qmake (3.0) (Qt 5.5.1)
|
||||
# Project: MetaStyle.pro
|
||||
# Template: app
|
||||
# Command: /usr/local/Qt-5.5.0/bin/qmake -spec macx-xcode -o MetaStyle.xcodeproj/project.pbxproj MetaStyle.pro
|
||||
# Command: /usr/local/Qt-5.5.1/bin/qmake -spec macx-xcode -o MetaStyle.xcodeproj/project.pbxproj MetaStyle.pro
|
||||
#############################################################################
|
||||
|
||||
MAKEFILE = project.pbxproj
|
||||
|
||||
MOC = /usr/local/Qt-5.5.0/bin/moc
|
||||
MOC = /usr/local/Qt-5.5.1/bin/moc
|
||||
UIC =
|
||||
LEX = flex
|
||||
LEXFLAGS =
|
||||
YACC = yacc
|
||||
YACCFLAGS = -d
|
||||
DEFINES = -D_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB
|
||||
INCPATH = -I/usr/local/Qt-5.5.0/mkspecs/macx-clang -I. -I../../Libraries/QtStatic/qtbase/include/QtGui/5.5.0/QtGui -I../../Libraries/QtStatic/qtbase/include/QtCore/5.5.0/QtCore -I../../Libraries/QtStatic/qtbase/include -I/usr/local/Qt-5.5.0/include -I/usr/local/Qt-5.5.0/include/QtGui -I/usr/local/Qt-5.5.0/include/QtCore -IGeneratedFiles/Debug -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers
|
||||
INCPATH = -I/usr/local/Qt-5.5.1/mkspecs/macx-clang -I. -I../../Libraries/QtStatic/qtbase/include/QtGui/5.5.1/QtGui -I../../Libraries/QtStatic/qtbase/include/QtCore/5.5.1/QtCore -I../../Libraries/QtStatic/qtbase/include -I/usr/local/Qt-5.5.1/include -I/usr/local/Qt-5.5.1/include/QtGui -I/usr/local/Qt-5.5.1/include/QtCore -IGeneratedFiles/Debug -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers
|
||||
DEL_FILE = rm -f
|
||||
MOVE = mv -f
|
||||
|
||||
@@ -51,7 +51,7 @@ GeneratedFiles/Debug/moc_genstyles.cpp: ../../Libraries/QtStatic/qtbase/include/
|
||||
../../Libraries/QtStatic/qtbase/include/QtGui/QGuiApplication \
|
||||
../../Libraries/QtStatic/qtbase/include/QtGui/QPainter \
|
||||
SourceFiles/_other/genstyles.h
|
||||
/usr/local/Qt-5.5.0/bin/moc $(DEFINES) -D__APPLE__ -D__GNUC__=4 -I/usr/local/Qt-5.5.0/mkspecs/macx-clang -I. -I/usr/local/Qt-5.5.0/include/QtGui/5.5.0/QtGui -I/usr/local/Qt-5.5.0/include/QtCore/5.5.0/QtCore -I/usr/local/Qt-5.5.0/include -I/usr/local/Qt-5.5.0/include/QtGui -I/usr/local/Qt-5.5.0/include/QtCore -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1/backward -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/5.1/include -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include SourceFiles/_other/genstyles.h -o GeneratedFiles/Debug/moc_genstyles.cpp
|
||||
/usr/local/Qt-5.5.1/bin/moc $(DEFINES) -D__APPLE__ -D__GNUC__=4 -I/usr/local/Qt-5.5.1/mkspecs/macx-clang -I. -I/usr/local/Qt-5.5.1/include/QtGui/5.5.1/QtGui -I/usr/local/Qt-5.5.1/include/QtCore/5.5.1/QtCore -I/usr/local/Qt-5.5.1/include -I/usr/local/Qt-5.5.1/include/QtGui -I/usr/local/Qt-5.5.1/include/QtCore -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1/backward -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/5.1/include -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include SourceFiles/_other/genstyles.h -o GeneratedFiles/Debug/moc_genstyles.cpp
|
||||
|
||||
compiler_moc_source_make_all:
|
||||
compiler_moc_source_clean:
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.tdesktop.$(PRODUCT_NAME:rfc1034identifier)</string>
|
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleSignature</key>
|
||||
|
||||
@@ -35,8 +35,8 @@ unix {
|
||||
}
|
||||
}
|
||||
|
||||
INCLUDEPATH += ./../../Libraries/QtStatic/qtbase/include/QtGui/5.5.0/QtGui\
|
||||
./../../Libraries/QtStatic/qtbase/include/QtCore/5.5.0/QtCore\
|
||||
INCLUDEPATH += ./../../Libraries/QtStatic/qtbase/include/QtGui/5.5.1/QtGui\
|
||||
./../../Libraries/QtStatic/qtbase/include/QtCore/5.5.1/QtCore\
|
||||
./../../Libraries/QtStatic/qtbase/include
|
||||
|
||||
LIBS += -lcrypto -lssl -lz -llzma
|
||||
|
||||
@@ -27,15 +27,15 @@
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v120_xp</PlatformToolset>
|
||||
<PlatformToolset>v140_xp</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v120_xp</PlatformToolset>
|
||||
<PlatformToolset>v140_xp</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Deploy|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v120_xp</PlatformToolset>
|
||||
<PlatformToolset>v140_xp</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
@@ -106,14 +106,14 @@
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<AdditionalIncludeDirectories>.\..\..\Libraries\lzma\C;.;$(QTDIR)\include;.\..\..\Libraries\zlib-1.2.8;.\..\..\Libraries\OpenSSL-Win32\include;.\GeneratedFiles\$(ConfigurationName);$(QTDIR)\include\QtCore;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>.\..\..\Libraries\lzma\C;.;$(QTDIR)\include;.\..\..\Libraries\zlib-1.2.8;.\..\..\Libraries\openssl\Release\include;.\GeneratedFiles\$(ConfigurationName);$(QTDIR)\include\QtCore;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<TreatWChar_tAsBuiltInType>false</TreatWChar_tAsBuiltInType>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OutputFile>$(OutDir)\$(ProjectName).exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>.\..\..\Libraries\lzma\C\Util\LzmaLib\Release;$(QTDIR)\lib;.\..\..\Libraries\zlib-1.2.8\contrib\vstudio\vc11\x86\ZlibStatRelease;.\..\..\Libraries\OpenSSL-Win32\lib\VC\static;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalDependencies>kernel32.lib;user32.lib;shell32.lib;uuid.lib;ole32.lib;advapi32.lib;ws2_32.lib;qtmain.lib;zlibstat.lib;libeay32MT.lib;Qt5Core.lib;qtpcre.lib;LzmaLib.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>.\..\..\Libraries\lzma\C\Util\LzmaLib\Release;$(QTDIR)\lib;.\..\..\Libraries\zlib-1.2.8\contrib\vstudio\vc11\x86\ZlibStatRelease;.\..\..\Libraries\openssl\Release\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalDependencies>kernel32.lib;user32.lib;shell32.lib;uuid.lib;ole32.lib;advapi32.lib;ws2_32.lib;qtmain.lib;zlibstat.lib;libeay32.lib;Qt5Core.lib;qtpcre.lib;LzmaLib.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<ImageHasSafeExceptionHandlers>
|
||||
</ImageHasSafeExceptionHandlers>
|
||||
|
||||
@@ -61,158 +61,158 @@
|
||||
/* End PBXContainerItemProxy section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
04391BE7A8B9D811E255100A /* Qt5Gui */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Gui; path = "/usr/local/Qt-5.5.0/lib/libQt5Gui$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
060A694B42A4555240009936 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtga.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtga.pri"; sourceTree = "<absolute>"; };
|
||||
075EB50EB07CF69FD62FB8DF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql_private.pri"; sourceTree = "<absolute>"; };
|
||||
07D795491B5544B200DE9598 /* qtpcre */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtpcre; path = "usr/local/Qt-5.5.0/lib/libqtpcre$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<group>"; };
|
||||
0ABCEA8D0DD45589040B0AF2 /* /usr/local/Qt-5.5.0/mkspecs/common/unix.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/unix.conf"; sourceTree = "<absolute>"; };
|
||||
111BBEE3D1432C3B517FD539 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdds.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdds.pri"; sourceTree = "<absolute>"; };
|
||||
16DD53E17C65AC8B450CC6C3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick.pri"; sourceTree = "<absolute>"; };
|
||||
1FAE75C970AA73F2DEDDB508 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfcamera.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfcamera.pri"; sourceTree = "<absolute>"; };
|
||||
23BC8B0FC3279421D41CA268 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui.pri"; sourceTree = "<absolute>"; };
|
||||
2440CD1D4CEF80443BCA1B8B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qgenericbearer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qgenericbearer.pri"; sourceTree = "<absolute>"; };
|
||||
247D8DF3B1DDB665B80BBA25 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblequick.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblequick.pri"; sourceTree = "<absolute>"; };
|
||||
24B6929EE3952310F2DAECB1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri"; sourceTree = "<absolute>"; };
|
||||
28BD0D10214709D95B161E24 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets.pri"; sourceTree = "<absolute>"; };
|
||||
293C8DEEE270847AC20E70F9 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network.pri"; sourceTree = "<absolute>"; };
|
||||
2E48BB382B895A5ACD79AF9F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth_private.pri"; sourceTree = "<absolute>"; };
|
||||
2E6D9B1D2743D24E31B0B284 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns.pri"; sourceTree = "<absolute>"; };
|
||||
311004331A04F3D69C98643C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport_private.pri"; sourceTree = "<absolute>"; };
|
||||
31120EDB269DFF13E1D49847 /* qicns */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qicns; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqicns$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
33F165B1DB8CBF182C56FAB5 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras_private.pri"; sourceTree = "<absolute>"; };
|
||||
346287C9E754E7C458153F03 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwbmp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwbmp.pri"; sourceTree = "<absolute>"; };
|
||||
360D4B3ED25D126430DE27D4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio.pri"; sourceTree = "<absolute>"; };
|
||||
3685604BDB64DD6E92169B73 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdeclarativeview.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdeclarativeview.pri"; sourceTree = "<absolute>"; };
|
||||
382E89A91A34F7898C25FD0D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network_private.pri"; sourceTree = "<absolute>"; };
|
||||
3F08D430CEC8D2117735CCB4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri"; sourceTree = "<absolute>"; };
|
||||
45B95DB3B70B47A910FC847B /* /usr/local/Qt-5.5.0/mkspecs/common/gcc-base.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/gcc-base.conf"; sourceTree = "<absolute>"; };
|
||||
45DB132B756499D4DF38430E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qjp2.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qjp2.pri"; sourceTree = "<absolute>"; };
|
||||
4689C06178B60B84E7F3A3B7 /* Qt5Widgets */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Widgets; path = "/usr/local/Qt-5.5.0/lib/libQt5Widgets$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
4C6C71914B1926119120DACD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio_private.pri"; sourceTree = "<absolute>"; };
|
||||
04391BE7A8B9D811E255100A /* Qt5Gui */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Gui; path = "/usr/local/Qt-5.5.1/lib/libQt5Gui$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
060A694B42A4555240009936 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtga.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtga.pri"; sourceTree = "<absolute>"; };
|
||||
075EB50EB07CF69FD62FB8DF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql_private.pri"; sourceTree = "<absolute>"; };
|
||||
07D795491B5544B200DE9598 /* qtpcre */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtpcre; path = "usr/local/Qt-5.5.1/lib/libqtpcre$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<group>"; };
|
||||
0ABCEA8D0DD45589040B0AF2 /* /usr/local/Qt-5.5.1/mkspecs/common/unix.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/unix.conf"; sourceTree = "<absolute>"; };
|
||||
111BBEE3D1432C3B517FD539 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdds.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdds.pri"; sourceTree = "<absolute>"; };
|
||||
16DD53E17C65AC8B450CC6C3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick.pri"; sourceTree = "<absolute>"; };
|
||||
1FAE75C970AA73F2DEDDB508 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfcamera.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfcamera.pri"; sourceTree = "<absolute>"; };
|
||||
23BC8B0FC3279421D41CA268 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui.pri"; sourceTree = "<absolute>"; };
|
||||
2440CD1D4CEF80443BCA1B8B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qgenericbearer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qgenericbearer.pri"; sourceTree = "<absolute>"; };
|
||||
247D8DF3B1DDB665B80BBA25 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblequick.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblequick.pri"; sourceTree = "<absolute>"; };
|
||||
24B6929EE3952310F2DAECB1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri"; sourceTree = "<absolute>"; };
|
||||
28BD0D10214709D95B161E24 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets.pri"; sourceTree = "<absolute>"; };
|
||||
293C8DEEE270847AC20E70F9 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network.pri"; sourceTree = "<absolute>"; };
|
||||
2E48BB382B895A5ACD79AF9F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth_private.pri"; sourceTree = "<absolute>"; };
|
||||
2E6D9B1D2743D24E31B0B284 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns.pri"; sourceTree = "<absolute>"; };
|
||||
311004331A04F3D69C98643C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport_private.pri"; sourceTree = "<absolute>"; };
|
||||
31120EDB269DFF13E1D49847 /* qicns */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qicns; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqicns$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
33F165B1DB8CBF182C56FAB5 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras_private.pri"; sourceTree = "<absolute>"; };
|
||||
346287C9E754E7C458153F03 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwbmp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwbmp.pri"; sourceTree = "<absolute>"; };
|
||||
360D4B3ED25D126430DE27D4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio.pri"; sourceTree = "<absolute>"; };
|
||||
3685604BDB64DD6E92169B73 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdeclarativeview.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdeclarativeview.pri"; sourceTree = "<absolute>"; };
|
||||
382E89A91A34F7898C25FD0D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network_private.pri"; sourceTree = "<absolute>"; };
|
||||
3F08D430CEC8D2117735CCB4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri"; sourceTree = "<absolute>"; };
|
||||
45B95DB3B70B47A910FC847B /* /usr/local/Qt-5.5.1/mkspecs/common/gcc-base.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/gcc-base.conf"; sourceTree = "<absolute>"; };
|
||||
45DB132B756499D4DF38430E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qjp2.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qjp2.pri"; sourceTree = "<absolute>"; };
|
||||
4689C06178B60B84E7F3A3B7 /* Qt5Widgets */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Widgets; path = "/usr/local/Qt-5.5.1/lib/libQt5Widgets$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
4C6C71914B1926119120DACD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio_private.pri"; sourceTree = "<absolute>"; };
|
||||
4D765E1B1EA6C757220C63E7 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = /System/Library/Frameworks/CoreFoundation.framework; sourceTree = "<absolute>"; };
|
||||
4FB6657DA22BC68B819B64B3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmldevtools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmldevtools_private.pri"; sourceTree = "<absolute>"; };
|
||||
4FB6657DA22BC68B819B64B3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmldevtools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmldevtools_private.pri"; sourceTree = "<absolute>"; };
|
||||
5520A59148EC5EC44EF0D3CD /* Packer.pro */ = {isa = PBXFileReference; lastKnownFileType = text; path = Packer.pro; sourceTree = "<absolute>"; };
|
||||
5597304BEC94BFB9EAAEBC4B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions_private.pri"; sourceTree = "<absolute>"; };
|
||||
5A80A1907B6CFFB524C1E57D /* Qt5Core */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Core; path = "/usr/local/Qt-5.5.0/lib/libQt5Core$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
5597304BEC94BFB9EAAEBC4B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions_private.pri"; sourceTree = "<absolute>"; };
|
||||
5A80A1907B6CFFB524C1E57D /* Qt5Core */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5Core; path = "/usr/local/Qt-5.5.1/lib/libQt5Core$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
5AA25EFD83BC060B26945285 /* packer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = packer.h; path = SourceFiles/_other/packer.h; sourceTree = "<absolute>"; };
|
||||
5B22E9E4EE9AAE42ABC24AB3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri"; sourceTree = "<absolute>"; };
|
||||
5CEA7A2DB2136425A88D1254 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl.pri"; sourceTree = "<absolute>"; };
|
||||
5F781C7FD8422D359EA1D2FE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core_private.pri"; sourceTree = "<absolute>"; };
|
||||
6102C69805B6398AF6FA5BEB /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml_private.pri"; sourceTree = "<absolute>"; };
|
||||
63E722139886C87BC82DBDF5 /* /usr/local/Qt-5.5.0/mkspecs/macx-clang/qmake.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/macx-clang/qmake.conf"; sourceTree = "<absolute>"; };
|
||||
669FB007C4A3D58424D85EC8 /* /usr/local/Qt-5.5.0/mkspecs/common/shell-unix.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/shell-unix.conf"; sourceTree = "<absolute>"; };
|
||||
69347C39E4D922E94D0860BF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designercomponents_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designercomponents_private.pri"; sourceTree = "<absolute>"; };
|
||||
6C08BFC27C4C303A3A5181DB /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport.pri"; sourceTree = "<absolute>"; };
|
||||
6E67D23B15FC4B628DB2E0B2 /* /usr/local/Qt-5.5.0/mkspecs/qdevice.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/qdevice.pri"; sourceTree = "<absolute>"; };
|
||||
74C1C232DFAA71028A0412CA /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri"; sourceTree = "<absolute>"; };
|
||||
77FF486B1F9BCD55A8A3F35D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent.pri"; sourceTree = "<absolute>"; };
|
||||
7A94C7168B3FCBE5F04A013B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative.pri"; sourceTree = "<absolute>"; };
|
||||
7C2F42B222EE88E26A6FED62 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer_private.pri"; sourceTree = "<absolute>"; };
|
||||
7D28E9003CE64D8A7F2E292E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent_private.pri"; sourceTree = "<absolute>"; };
|
||||
7DE30A90667C03C4F91A2A91 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql.pri"; sourceTree = "<absolute>"; };
|
||||
7ECCC1F9442988B4F2707CC1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core.pri"; sourceTree = "<absolute>"; };
|
||||
817A0F5A41B553A6DE67FDEB /* /usr/local/Qt-5.5.0/mkspecs/common/macx.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/macx.conf"; sourceTree = "<absolute>"; };
|
||||
82E7DCFD95559532D8FC6CDD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickparticles_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickparticles_private.pri"; sourceTree = "<absolute>"; };
|
||||
83D37373949868693FB7816D /* qmng */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qmng; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqmng$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
85061B1DA49D125991117950 /* /usr/local/Qt-5.5.0/mkspecs/macx-xcode/qmake.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/macx-xcode/qmake.conf"; sourceTree = "<absolute>"; };
|
||||
85B6936EDBE61D9BB8F8B33B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors.pri"; sourceTree = "<absolute>"; };
|
||||
87A4C1983FD641360BF80A02 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri"; sourceTree = "<absolute>"; };
|
||||
87EEF25EE25CF21572D1438C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets_private.pri"; sourceTree = "<absolute>"; };
|
||||
8849E60AEC7DB97A475C17EA /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib_private.pri"; sourceTree = "<absolute>"; };
|
||||
892D36BEF797BA4AF48D378A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_dummy.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_dummy.pri"; sourceTree = "<absolute>"; };
|
||||
89863CCAF1D29037AE95755D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative_private.pri"; sourceTree = "<absolute>"; };
|
||||
8A04A4A3625204D12A1207F6 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc.pri"; sourceTree = "<absolute>"; };
|
||||
8B4BB4E74F8A4442EF563D7D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri"; sourceTree = "<absolute>"; };
|
||||
8C31D89BDFCDF466DAED19A0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick_private.pri"; sourceTree = "<absolute>"; };
|
||||
8C5164D4E37556D40C5E6AA2 /* /usr/local/Qt-5.5.0/mkspecs/common/clang.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/clang.conf"; sourceTree = "<absolute>"; };
|
||||
8CF51323544B886B8F4A2232 /* qwbmp */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qwbmp; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqwbmp$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
5B22E9E4EE9AAE42ABC24AB3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri"; sourceTree = "<absolute>"; };
|
||||
5CEA7A2DB2136425A88D1254 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl.pri"; sourceTree = "<absolute>"; };
|
||||
5F781C7FD8422D359EA1D2FE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core_private.pri"; sourceTree = "<absolute>"; };
|
||||
6102C69805B6398AF6FA5BEB /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml_private.pri"; sourceTree = "<absolute>"; };
|
||||
63E722139886C87BC82DBDF5 /* /usr/local/Qt-5.5.1/mkspecs/macx-clang/qmake.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/macx-clang/qmake.conf"; sourceTree = "<absolute>"; };
|
||||
669FB007C4A3D58424D85EC8 /* /usr/local/Qt-5.5.1/mkspecs/common/shell-unix.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/shell-unix.conf"; sourceTree = "<absolute>"; };
|
||||
69347C39E4D922E94D0860BF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designercomponents_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designercomponents_private.pri"; sourceTree = "<absolute>"; };
|
||||
6C08BFC27C4C303A3A5181DB /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport.pri"; sourceTree = "<absolute>"; };
|
||||
6E67D23B15FC4B628DB2E0B2 /* /usr/local/Qt-5.5.1/mkspecs/qdevice.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/qdevice.pri"; sourceTree = "<absolute>"; };
|
||||
74C1C232DFAA71028A0412CA /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri"; sourceTree = "<absolute>"; };
|
||||
77FF486B1F9BCD55A8A3F35D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent.pri"; sourceTree = "<absolute>"; };
|
||||
7A94C7168B3FCBE5F04A013B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative.pri"; sourceTree = "<absolute>"; };
|
||||
7C2F42B222EE88E26A6FED62 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer_private.pri"; sourceTree = "<absolute>"; };
|
||||
7D28E9003CE64D8A7F2E292E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent_private.pri"; sourceTree = "<absolute>"; };
|
||||
7DE30A90667C03C4F91A2A91 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql.pri"; sourceTree = "<absolute>"; };
|
||||
7ECCC1F9442988B4F2707CC1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core.pri"; sourceTree = "<absolute>"; };
|
||||
817A0F5A41B553A6DE67FDEB /* /usr/local/Qt-5.5.1/mkspecs/common/macx.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/macx.conf"; sourceTree = "<absolute>"; };
|
||||
82E7DCFD95559532D8FC6CDD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickparticles_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickparticles_private.pri"; sourceTree = "<absolute>"; };
|
||||
83D37373949868693FB7816D /* qmng */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qmng; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqmng$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
85061B1DA49D125991117950 /* /usr/local/Qt-5.5.1/mkspecs/macx-xcode/qmake.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/macx-xcode/qmake.conf"; sourceTree = "<absolute>"; };
|
||||
85B6936EDBE61D9BB8F8B33B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors.pri"; sourceTree = "<absolute>"; };
|
||||
87A4C1983FD641360BF80A02 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri"; sourceTree = "<absolute>"; };
|
||||
87EEF25EE25CF21572D1438C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets_private.pri"; sourceTree = "<absolute>"; };
|
||||
8849E60AEC7DB97A475C17EA /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib_private.pri"; sourceTree = "<absolute>"; };
|
||||
892D36BEF797BA4AF48D378A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_dummy.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_dummy.pri"; sourceTree = "<absolute>"; };
|
||||
89863CCAF1D29037AE95755D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative_private.pri"; sourceTree = "<absolute>"; };
|
||||
8A04A4A3625204D12A1207F6 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc.pri"; sourceTree = "<absolute>"; };
|
||||
8B4BB4E74F8A4442EF563D7D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri"; sourceTree = "<absolute>"; };
|
||||
8C31D89BDFCDF466DAED19A0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick_private.pri"; sourceTree = "<absolute>"; };
|
||||
8C5164D4E37556D40C5E6AA2 /* /usr/local/Qt-5.5.1/mkspecs/common/clang.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/clang.conf"; sourceTree = "<absolute>"; };
|
||||
8CF51323544B886B8F4A2232 /* qwbmp */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qwbmp; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqwbmp$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
8D9815BDB5BD9F90D2BC05C5 /* AGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AGL.framework; path = /System/Library/Frameworks/AGL.framework; sourceTree = "<absolute>"; };
|
||||
8DDE1D26B3206CDB8B57FABE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg_private.pri"; sourceTree = "<absolute>"; };
|
||||
8E9136256AFFBA6EF048AA55 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
8F500B5166907B6D9A7C3E3D /* qico */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qico; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqico$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
8F572030CE9AB8CC5F672201 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_platformsupport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_platformsupport_private.pri"; sourceTree = "<absolute>"; };
|
||||
8F97C9CAE38CA3AFAC0B3953 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets.pri"; sourceTree = "<absolute>"; };
|
||||
946BEA667170DC1A7A8F9DB0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmng.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmng.pri"; sourceTree = "<absolute>"; };
|
||||
8DDE1D26B3206CDB8B57FABE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg_private.pri"; sourceTree = "<absolute>"; };
|
||||
8E9136256AFFBA6EF048AA55 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
8F500B5166907B6D9A7C3E3D /* qico */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qico; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqico$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
8F572030CE9AB8CC5F672201 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_platformsupport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_platformsupport_private.pri"; sourceTree = "<absolute>"; };
|
||||
8F97C9CAE38CA3AFAC0B3953 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets.pri"; sourceTree = "<absolute>"; };
|
||||
946BEA667170DC1A7A8F9DB0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmng.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmng.pri"; sourceTree = "<absolute>"; };
|
||||
9742F24EE18EA44D52824F1E /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = /System/Library/Frameworks/CoreServices.framework; sourceTree = "<absolute>"; };
|
||||
9A0BDF67E013BB4FFB8685B0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qqt7engine.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qqt7engine.pri"; sourceTree = "<absolute>"; };
|
||||
9A0BDF67E013BB4FFB8685B0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qqt7engine.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qqt7engine.pri"; sourceTree = "<absolute>"; };
|
||||
9DFF62A901D70814B8A323D4 /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = /System/Library/Frameworks/Carbon.framework; sourceTree = "<absolute>"; };
|
||||
A022AF919D1977534CA66BB8 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets.pri"; sourceTree = "<absolute>"; };
|
||||
A022AF919D1977534CA66BB8 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets.pri"; sourceTree = "<absolute>"; };
|
||||
A1A67BEAA744704B29168D39 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = /System/Library/Frameworks/IOKit.framework; sourceTree = "<absolute>"; };
|
||||
A4D8AC60897F435C1C3B9D02 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_generic.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_generic.pri"; sourceTree = "<absolute>"; };
|
||||
A4D8AC60897F435C1C3B9D02 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_generic.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_generic.pri"; sourceTree = "<absolute>"; };
|
||||
A5588D4B50885E2A9CAA5505 /* Packer.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Packer.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
A59F74CD76FDC2B4B9910E18 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools_private.pri"; sourceTree = "<absolute>"; };
|
||||
A5B17ABEFBA1C2F43443D644 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras.pri"; sourceTree = "<absolute>"; };
|
||||
A9E30FA27827990C5F182223 /* /usr/local/Qt-5.5.0/mkspecs/common/gcc-base-mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/gcc-base-mac.conf"; sourceTree = "<absolute>"; };
|
||||
AA73DC3C2901E2979FE8AD5B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml.pri"; sourceTree = "<absolute>"; };
|
||||
AB1C02DDBD8E88DD9A9AFDDD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri"; sourceTree = "<absolute>"; };
|
||||
A59F74CD76FDC2B4B9910E18 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools_private.pri"; sourceTree = "<absolute>"; };
|
||||
A5B17ABEFBA1C2F43443D644 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras.pri"; sourceTree = "<absolute>"; };
|
||||
A9E30FA27827990C5F182223 /* /usr/local/Qt-5.5.1/mkspecs/common/gcc-base-mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/gcc-base-mac.conf"; sourceTree = "<absolute>"; };
|
||||
AA73DC3C2901E2979FE8AD5B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml.pri"; sourceTree = "<absolute>"; };
|
||||
AB1C02DDBD8E88DD9A9AFDDD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri"; sourceTree = "<absolute>"; };
|
||||
AB745978DF0F41D1801ABDA6 /* .qmake.stash */ = {isa = PBXFileReference; lastKnownFileType = file; path = .qmake.stash; sourceTree = "<absolute>"; };
|
||||
ABA9AB4619F09DCFD2D4A27F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest_private.pri"; sourceTree = "<absolute>"; };
|
||||
ACC8A73268E5D9AF64E97AF4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth.pri"; sourceTree = "<absolute>"; };
|
||||
ADC6308023253CEA51F86E21 /* qwebp */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qwebp; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqwebp$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
ADFC79902C14A612AE93A89A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg.pri"; sourceTree = "<absolute>"; };
|
||||
ABA9AB4619F09DCFD2D4A27F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest_private.pri"; sourceTree = "<absolute>"; };
|
||||
ACC8A73268E5D9AF64E97AF4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth.pri"; sourceTree = "<absolute>"; };
|
||||
ADC6308023253CEA51F86E21 /* qwebp */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qwebp; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqwebp$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
ADFC79902C14A612AE93A89A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg.pri"; sourceTree = "<absolute>"; };
|
||||
AEA456A2F75ED9F5CDA7BCBE /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
|
||||
AFD721AA33A2F785E77B1698 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcocoa.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcocoa.pri"; sourceTree = "<absolute>"; };
|
||||
B064BF3B496A7BF7A449CA1E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsqlite.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsqlite.pri"; sourceTree = "<absolute>"; };
|
||||
B2246267D4C0D789259A86B0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
B26239063A068F800A2C95F4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwebp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwebp.pri"; sourceTree = "<absolute>"; };
|
||||
B382B645B34234E451AE5D94 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml.pri"; sourceTree = "<absolute>"; };
|
||||
B518DA4EE7376002AFC71FD5 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools_private.pri"; sourceTree = "<absolute>"; };
|
||||
B51B01657BFE9EAEF5590561 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc_private.pri"; sourceTree = "<absolute>"; };
|
||||
B678DA730B4ECE863AD631AE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qminimal.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qminimal.pri"; sourceTree = "<absolute>"; };
|
||||
B8525798C5AA7D7C6D68E1B3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri"; sourceTree = "<absolute>"; };
|
||||
B8C1F6C965A7A14FBA8D4518 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri"; sourceTree = "<absolute>"; };
|
||||
BD22EFEFCC02644B1883CE19 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtiff.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtiff.pri"; sourceTree = "<absolute>"; };
|
||||
BD4D97801B547471B37A4CDC /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bootstrap_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bootstrap_private.pri"; sourceTree = "<absolute>"; };
|
||||
BDC9ECADEE40D11E3C2EA93F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors_private.pri"; sourceTree = "<absolute>"; };
|
||||
BFF0C38FB0EC140C5F0304AE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport.pri"; sourceTree = "<absolute>"; };
|
||||
C4295BE59CCEBCDD16268349 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qico.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qico.pri"; sourceTree = "<absolute>"; };
|
||||
C505A18319B9B63C63877858 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script_private.pri"; sourceTree = "<absolute>"; };
|
||||
C84546C18DCBB04166195DCF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri"; sourceTree = "<absolute>"; };
|
||||
CCF75CFFB857487FB18F99F9 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qoffscreen.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qoffscreen.pri"; sourceTree = "<absolute>"; };
|
||||
CE829DD126DD2B97E8D70A7A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools.pri"; sourceTree = "<absolute>"; };
|
||||
CF86CD5BB01B9011E6B6FD3E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_clucene_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_clucene_private.pri"; sourceTree = "<absolute>"; };
|
||||
CFCB992BEC24B71BFB8A2F30 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script.pri"; sourceTree = "<absolute>"; };
|
||||
CFFBE05DB004895080314289 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvgicon.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvgicon.pri"; sourceTree = "<absolute>"; };
|
||||
D0CDC87DAFDA7F18A7AF450F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport_private.pri"; sourceTree = "<absolute>"; };
|
||||
D1FA7CAB5ACC09D563AE569F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
D2FE4D909926A0D1656068C4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia.pri"; sourceTree = "<absolute>"; };
|
||||
D3D1BE0BEA3AEE0551AD39AC /* qdds */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qdds; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqdds$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
AFD721AA33A2F785E77B1698 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcocoa.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcocoa.pri"; sourceTree = "<absolute>"; };
|
||||
B064BF3B496A7BF7A449CA1E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsqlite.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsqlite.pri"; sourceTree = "<absolute>"; };
|
||||
B2246267D4C0D789259A86B0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
B26239063A068F800A2C95F4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwebp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwebp.pri"; sourceTree = "<absolute>"; };
|
||||
B382B645B34234E451AE5D94 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml.pri"; sourceTree = "<absolute>"; };
|
||||
B518DA4EE7376002AFC71FD5 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools_private.pri"; sourceTree = "<absolute>"; };
|
||||
B51B01657BFE9EAEF5590561 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc_private.pri"; sourceTree = "<absolute>"; };
|
||||
B678DA730B4ECE863AD631AE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qminimal.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qminimal.pri"; sourceTree = "<absolute>"; };
|
||||
B8525798C5AA7D7C6D68E1B3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri"; sourceTree = "<absolute>"; };
|
||||
B8C1F6C965A7A14FBA8D4518 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri"; sourceTree = "<absolute>"; };
|
||||
BD22EFEFCC02644B1883CE19 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtiff.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtiff.pri"; sourceTree = "<absolute>"; };
|
||||
BD4D97801B547471B37A4CDC /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bootstrap_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bootstrap_private.pri"; sourceTree = "<absolute>"; };
|
||||
BDC9ECADEE40D11E3C2EA93F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors_private.pri"; sourceTree = "<absolute>"; };
|
||||
BFF0C38FB0EC140C5F0304AE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport.pri"; sourceTree = "<absolute>"; };
|
||||
C4295BE59CCEBCDD16268349 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qico.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qico.pri"; sourceTree = "<absolute>"; };
|
||||
C505A18319B9B63C63877858 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script_private.pri"; sourceTree = "<absolute>"; };
|
||||
C84546C18DCBB04166195DCF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri"; sourceTree = "<absolute>"; };
|
||||
CCF75CFFB857487FB18F99F9 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qoffscreen.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qoffscreen.pri"; sourceTree = "<absolute>"; };
|
||||
CE829DD126DD2B97E8D70A7A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools.pri"; sourceTree = "<absolute>"; };
|
||||
CF86CD5BB01B9011E6B6FD3E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_clucene_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_clucene_private.pri"; sourceTree = "<absolute>"; };
|
||||
CFCB992BEC24B71BFB8A2F30 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script.pri"; sourceTree = "<absolute>"; };
|
||||
CFFBE05DB004895080314289 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvgicon.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvgicon.pri"; sourceTree = "<absolute>"; };
|
||||
D0CDC87DAFDA7F18A7AF450F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport_private.pri"; sourceTree = "<absolute>"; };
|
||||
D1FA7CAB5ACC09D563AE569F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets_private.pri"; sourceTree = "<absolute>"; };
|
||||
D2FE4D909926A0D1656068C4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia.pri"; sourceTree = "<absolute>"; };
|
||||
D3D1BE0BEA3AEE0551AD39AC /* qdds */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qdds; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqdds$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
D4B32C2222F82AC56BADEB21 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = /System/Library/Frameworks/OpenGL.framework; sourceTree = "<absolute>"; };
|
||||
D4DE537C1FBBD48BD989FAD1 /* /usr/local/Qt-5.5.0/mkspecs/qconfig.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/qconfig.pri"; sourceTree = "<absolute>"; };
|
||||
D5141F795670589C8CC41CBC /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_cocoaprintersupport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_cocoaprintersupport.pri"; sourceTree = "<absolute>"; };
|
||||
D53D8E6A188E05078A114294 /* qcocoa */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qcocoa; path = "/usr/local/Qt-5.5.0/plugins/platforms/libqcocoa$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
D6193B79CECC9DD0142D1200 /* qtharfbuzzng */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtharfbuzzng; path = "/usr/local/Qt-5.5.0/lib/libqtharfbuzzng$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
D7A0618DE39A427EBF41940E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help_private.pri"; sourceTree = "<absolute>"; };
|
||||
D81E3D9A18202BE8EC3D0E2C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui_private.pri"; sourceTree = "<absolute>"; };
|
||||
D948D4D8F949D45158F8DE35 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets.pri"; sourceTree = "<absolute>"; };
|
||||
DB0A26DDC377B2004F61BFE3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib.pri"; sourceTree = "<absolute>"; };
|
||||
DBF506D10449BFABD45B82DA /* Qt5PrintSupport */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5PrintSupport; path = "/usr/local/Qt-5.5.0/lib/libQt5PrintSupport$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
DCEFD9167C239650120B0145 /* qtga */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtga; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqtga$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
DF8188E30892A4654B984221 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest.pri"; sourceTree = "<absolute>"; };
|
||||
D4DE537C1FBBD48BD989FAD1 /* /usr/local/Qt-5.5.1/mkspecs/qconfig.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/qconfig.pri"; sourceTree = "<absolute>"; };
|
||||
D5141F795670589C8CC41CBC /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_cocoaprintersupport.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_cocoaprintersupport.pri"; sourceTree = "<absolute>"; };
|
||||
D53D8E6A188E05078A114294 /* qcocoa */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qcocoa; path = "/usr/local/Qt-5.5.1/plugins/platforms/libqcocoa$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
D6193B79CECC9DD0142D1200 /* qtharfbuzzng */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtharfbuzzng; path = "/usr/local/Qt-5.5.1/lib/libqtharfbuzzng$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
D7A0618DE39A427EBF41940E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help_private.pri"; sourceTree = "<absolute>"; };
|
||||
D81E3D9A18202BE8EC3D0E2C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui_private.pri"; sourceTree = "<absolute>"; };
|
||||
D948D4D8F949D45158F8DE35 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets.pri"; sourceTree = "<absolute>"; };
|
||||
DB0A26DDC377B2004F61BFE3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib.pri"; sourceTree = "<absolute>"; };
|
||||
DBF506D10449BFABD45B82DA /* Qt5PrintSupport */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5PrintSupport; path = "/usr/local/Qt-5.5.1/lib/libQt5PrintSupport$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
DCEFD9167C239650120B0145 /* qtga */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtga; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqtga$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
DF8188E30892A4654B984221 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest.pri"; sourceTree = "<absolute>"; };
|
||||
DFD7912080BC557230093752 /* ApplicationServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ApplicationServices.framework; path = /System/Library/Frameworks/ApplicationServices.framework; sourceTree = "<absolute>"; };
|
||||
E0F4563EA350EB65112A0EF4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl_private.pri"; sourceTree = "<absolute>"; };
|
||||
E37365B4489B4918BEBB707D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml_private.pri"; sourceTree = "<absolute>"; };
|
||||
E0F4563EA350EB65112A0EF4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl_private.pri"; sourceTree = "<absolute>"; };
|
||||
E37365B4489B4918BEBB707D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml_private.pri"; sourceTree = "<absolute>"; };
|
||||
E3790AE49DBDB3F5EFA42FE1 /* packer.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = packer.cpp; path = SourceFiles/_other/packer.cpp; sourceTree = "<absolute>"; };
|
||||
E432DA897A5F027987342E8F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions.pri"; sourceTree = "<absolute>"; };
|
||||
E50FA73B8A23BC179A642B27 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools.pri"; sourceTree = "<absolute>"; };
|
||||
E66B9EC81C285CA9A7FB6A2E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning_private.pri"; sourceTree = "<absolute>"; };
|
||||
E7B2F248E3F7970788F35BF5 /* Qt5PlatformSupport */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5PlatformSupport; path = "/usr/local/Qt-5.5.0/lib/libQt5PlatformSupport$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
E7D67CB158408BB7DEA74764 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia_private.pri"; sourceTree = "<absolute>"; };
|
||||
EA5D4FF9DE4AC4215D7DCE0D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcorewlanbearer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcorewlanbearer.pri"; sourceTree = "<absolute>"; };
|
||||
EB1F99FD112917157F3C3F6E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qicns.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qicns.pri"; sourceTree = "<absolute>"; };
|
||||
EB29AC635054C09EFA749AE1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp.pri"; sourceTree = "<absolute>"; };
|
||||
EBD39B69F368CEEAC360A16D /* /usr/local/Qt-5.5.0/mkspecs/common/mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/mac.conf"; sourceTree = "<absolute>"; };
|
||||
F0681BC551FC8A2B132FC646 /* qjp2 */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qjp2; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqjp2$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
F0A58515945747E36783CC21 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_inspector.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_inspector.pri"; sourceTree = "<absolute>"; };
|
||||
F2453BA07315EB9F34F1CD57 /* qtiff */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtiff; path = "/usr/local/Qt-5.5.0/plugins/imageformats/libqtiff$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
F2F823087EA182CCBD5748B8 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer.pri"; sourceTree = "<absolute>"; };
|
||||
F33BE16353DD1557A9AB3558 /* /usr/local/Qt-5.5.0/mkspecs/common/clang-mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/common/clang-mac.conf"; sourceTree = "<absolute>"; };
|
||||
F4EB01857048DCFCFFAAC4D0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfmediaplayer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfmediaplayer.pri"; sourceTree = "<absolute>"; };
|
||||
F7ADBF552F6B9A5982915164 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning.pri"; sourceTree = "<absolute>"; };
|
||||
F83F87F8A60C9DF666911D42 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvg.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvg.pri"; sourceTree = "<absolute>"; };
|
||||
F9BEAA743A908603687DA204 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns_private.pri"; sourceTree = "<absolute>"; };
|
||||
E432DA897A5F027987342E8F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions.pri"; sourceTree = "<absolute>"; };
|
||||
E50FA73B8A23BC179A642B27 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools.pri"; sourceTree = "<absolute>"; };
|
||||
E66B9EC81C285CA9A7FB6A2E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning_private.pri"; sourceTree = "<absolute>"; };
|
||||
E7B2F248E3F7970788F35BF5 /* Qt5PlatformSupport */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = Qt5PlatformSupport; path = "/usr/local/Qt-5.5.1/lib/libQt5PlatformSupport$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
E7D67CB158408BB7DEA74764 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia_private.pri"; sourceTree = "<absolute>"; };
|
||||
EA5D4FF9DE4AC4215D7DCE0D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcorewlanbearer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcorewlanbearer.pri"; sourceTree = "<absolute>"; };
|
||||
EB1F99FD112917157F3C3F6E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qicns.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qicns.pri"; sourceTree = "<absolute>"; };
|
||||
EB29AC635054C09EFA749AE1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp.pri"; sourceTree = "<absolute>"; };
|
||||
EBD39B69F368CEEAC360A16D /* /usr/local/Qt-5.5.1/mkspecs/common/mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/mac.conf"; sourceTree = "<absolute>"; };
|
||||
F0681BC551FC8A2B132FC646 /* qjp2 */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qjp2; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqjp2$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
F0A58515945747E36783CC21 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_inspector.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_inspector.pri"; sourceTree = "<absolute>"; };
|
||||
F2453BA07315EB9F34F1CD57 /* qtiff */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = qtiff; path = "/usr/local/Qt-5.5.1/plugins/imageformats/libqtiff$(QT_LIBRARY_SUFFIX).a"; sourceTree = "<absolute>"; };
|
||||
F2F823087EA182CCBD5748B8 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer.pri"; sourceTree = "<absolute>"; };
|
||||
F33BE16353DD1557A9AB3558 /* /usr/local/Qt-5.5.1/mkspecs/common/clang-mac.conf */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/common/clang-mac.conf"; sourceTree = "<absolute>"; };
|
||||
F4EB01857048DCFCFFAAC4D0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfmediaplayer.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfmediaplayer.pri"; sourceTree = "<absolute>"; };
|
||||
F7ADBF552F6B9A5982915164 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning.pri"; sourceTree = "<absolute>"; };
|
||||
F83F87F8A60C9DF666911D42 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvg.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvg.pri"; sourceTree = "<absolute>"; };
|
||||
F9BEAA743A908603687DA204 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns_private.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns_private.pri"; sourceTree = "<absolute>"; };
|
||||
FCC237CA5AD60B9BA4447615 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
|
||||
FD944B80F033DFE737D401A2 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help.pri"; sourceTree = "<absolute>"; };
|
||||
FD944B80F033DFE737D401A2 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help.pri */ = {isa = PBXFileReference; lastKnownFileType = text; path = "/usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help.pri"; sourceTree = "<absolute>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
@@ -282,127 +282,127 @@
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
5520A59148EC5EC44EF0D3CD /* Packer.pro */,
|
||||
6E67D23B15FC4B628DB2E0B2 /* /usr/local/Qt-5.5.0/mkspecs/qdevice.pri */,
|
||||
669FB007C4A3D58424D85EC8 /* /usr/local/Qt-5.5.0/mkspecs/common/shell-unix.conf */,
|
||||
0ABCEA8D0DD45589040B0AF2 /* /usr/local/Qt-5.5.0/mkspecs/common/unix.conf */,
|
||||
EBD39B69F368CEEAC360A16D /* /usr/local/Qt-5.5.0/mkspecs/common/mac.conf */,
|
||||
817A0F5A41B553A6DE67FDEB /* /usr/local/Qt-5.5.0/mkspecs/common/macx.conf */,
|
||||
45B95DB3B70B47A910FC847B /* /usr/local/Qt-5.5.0/mkspecs/common/gcc-base.conf */,
|
||||
A9E30FA27827990C5F182223 /* /usr/local/Qt-5.5.0/mkspecs/common/gcc-base-mac.conf */,
|
||||
8C5164D4E37556D40C5E6AA2 /* /usr/local/Qt-5.5.0/mkspecs/common/clang.conf */,
|
||||
F33BE16353DD1557A9AB3558 /* /usr/local/Qt-5.5.0/mkspecs/common/clang-mac.conf */,
|
||||
D4DE537C1FBBD48BD989FAD1 /* /usr/local/Qt-5.5.0/mkspecs/qconfig.pri */,
|
||||
ACC8A73268E5D9AF64E97AF4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth.pri */,
|
||||
2E48BB382B895A5ACD79AF9F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bluetooth_private.pri */,
|
||||
BD4D97801B547471B37A4CDC /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_bootstrap_private.pri */,
|
||||
CF86CD5BB01B9011E6B6FD3E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_clucene_private.pri */,
|
||||
77FF486B1F9BCD55A8A3F35D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent.pri */,
|
||||
7D28E9003CE64D8A7F2E292E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_concurrent_private.pri */,
|
||||
7ECCC1F9442988B4F2707CC1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core.pri */,
|
||||
5F781C7FD8422D359EA1D2FE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_core_private.pri */,
|
||||
7A94C7168B3FCBE5F04A013B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative.pri */,
|
||||
89863CCAF1D29037AE95755D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_declarative_private.pri */,
|
||||
F2F823087EA182CCBD5748B8 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer.pri */,
|
||||
7C2F42B222EE88E26A6FED62 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designer_private.pri */,
|
||||
69347C39E4D922E94D0860BF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_designercomponents_private.pri */,
|
||||
360D4B3ED25D126430DE27D4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio.pri */,
|
||||
4C6C71914B1926119120DACD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_enginio_private.pri */,
|
||||
23BC8B0FC3279421D41CA268 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui.pri */,
|
||||
D81E3D9A18202BE8EC3D0E2C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_gui_private.pri */,
|
||||
FD944B80F033DFE737D401A2 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help.pri */,
|
||||
D7A0618DE39A427EBF41940E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_help_private.pri */,
|
||||
A5B17ABEFBA1C2F43443D644 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras.pri */,
|
||||
33F165B1DB8CBF182C56FAB5 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_macextras_private.pri */,
|
||||
D2FE4D909926A0D1656068C4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia.pri */,
|
||||
E7D67CB158408BB7DEA74764 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimedia_private.pri */,
|
||||
28BD0D10214709D95B161E24 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets.pri */,
|
||||
D1FA7CAB5ACC09D563AE569F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_multimediawidgets_private.pri */,
|
||||
293C8DEEE270847AC20E70F9 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network.pri */,
|
||||
382E89A91A34F7898C25FD0D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_network_private.pri */,
|
||||
8A04A4A3625204D12A1207F6 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc.pri */,
|
||||
B51B01657BFE9EAEF5590561 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_nfc_private.pri */,
|
||||
5CEA7A2DB2136425A88D1254 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl.pri */,
|
||||
E0F4563EA350EB65112A0EF4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_opengl_private.pri */,
|
||||
E432DA897A5F027987342E8F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions.pri */,
|
||||
5597304BEC94BFB9EAAEBC4B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_openglextensions_private.pri */,
|
||||
8F572030CE9AB8CC5F672201 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_platformsupport_private.pri */,
|
||||
F7ADBF552F6B9A5982915164 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning.pri */,
|
||||
E66B9EC81C285CA9A7FB6A2E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_positioning_private.pri */,
|
||||
6C08BFC27C4C303A3A5181DB /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport.pri */,
|
||||
D0CDC87DAFDA7F18A7AF450F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_printsupport_private.pri */,
|
||||
B382B645B34234E451AE5D94 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml.pri */,
|
||||
6102C69805B6398AF6FA5BEB /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qml_private.pri */,
|
||||
4FB6657DA22BC68B819B64B3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmldevtools_private.pri */,
|
||||
DF8188E30892A4654B984221 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest.pri */,
|
||||
ABA9AB4619F09DCFD2D4A27F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qmltest_private.pri */,
|
||||
5B22E9E4EE9AAE42ABC24AB3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri */,
|
||||
16DD53E17C65AC8B450CC6C3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick.pri */,
|
||||
8C31D89BDFCDF466DAED19A0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quick_private.pri */,
|
||||
82E7DCFD95559532D8FC6CDD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickparticles_private.pri */,
|
||||
D948D4D8F949D45158F8DE35 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets.pri */,
|
||||
B2246267D4C0D789259A86B0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_quickwidgets_private.pri */,
|
||||
CFCB992BEC24B71BFB8A2F30 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script.pri */,
|
||||
C505A18319B9B63C63877858 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_script_private.pri */,
|
||||
CE829DD126DD2B97E8D70A7A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools.pri */,
|
||||
A59F74CD76FDC2B4B9910E18 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_scripttools_private.pri */,
|
||||
85B6936EDBE61D9BB8F8B33B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors.pri */,
|
||||
BDC9ECADEE40D11E3C2EA93F /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sensors_private.pri */,
|
||||
BFF0C38FB0EC140C5F0304AE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport.pri */,
|
||||
311004331A04F3D69C98643C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_serialport_private.pri */,
|
||||
7DE30A90667C03C4F91A2A91 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql.pri */,
|
||||
075EB50EB07CF69FD62FB8DF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_sql_private.pri */,
|
||||
ADFC79902C14A612AE93A89A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg.pri */,
|
||||
8DDE1D26B3206CDB8B57FABE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_svg_private.pri */,
|
||||
DB0A26DDC377B2004F61BFE3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib.pri */,
|
||||
8849E60AEC7DB97A475C17EA /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_testlib_private.pri */,
|
||||
E50FA73B8A23BC179A642B27 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools.pri */,
|
||||
B518DA4EE7376002AFC71FD5 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_uitools_private.pri */,
|
||||
8F97C9CAE38CA3AFAC0B3953 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets.pri */,
|
||||
87EEF25EE25CF21572D1438C /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_websockets_private.pri */,
|
||||
A022AF919D1977534CA66BB8 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets.pri */,
|
||||
8E9136256AFFBA6EF048AA55 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_widgets_private.pri */,
|
||||
AA73DC3C2901E2979FE8AD5B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml.pri */,
|
||||
E37365B4489B4918BEBB707D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xml_private.pri */,
|
||||
2E6D9B1D2743D24E31B0B284 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns.pri */,
|
||||
F9BEAA743A908603687DA204 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_lib_xmlpatterns_private.pri */,
|
||||
D5141F795670589C8CC41CBC /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_cocoaprintersupport.pri */,
|
||||
1FAE75C970AA73F2DEDDB508 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfcamera.pri */,
|
||||
F4EB01857048DCFCFFAAC4D0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qavfmediaplayer.pri */,
|
||||
AFD721AA33A2F785E77B1698 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcocoa.pri */,
|
||||
EA5D4FF9DE4AC4215D7DCE0D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qcorewlanbearer.pri */,
|
||||
111BBEE3D1432C3B517FD539 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdds.pri */,
|
||||
3685604BDB64DD6E92169B73 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qdeclarativeview.pri */,
|
||||
2440CD1D4CEF80443BCA1B8B /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qgenericbearer.pri */,
|
||||
EB1F99FD112917157F3C3F6E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qicns.pri */,
|
||||
C4295BE59CCEBCDD16268349 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qico.pri */,
|
||||
45DB132B756499D4DF38430E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qjp2.pri */,
|
||||
B678DA730B4ECE863AD631AE /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qminimal.pri */,
|
||||
F0A58515945747E36783CC21 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_inspector.pri */,
|
||||
B8525798C5AA7D7C6D68E1B3 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri */,
|
||||
EB29AC635054C09EFA749AE1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp.pri */,
|
||||
3F08D430CEC8D2117735CCB4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri */,
|
||||
946BEA667170DC1A7A8F9DB0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qmng.pri */,
|
||||
CCF75CFFB857487FB18F99F9 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qoffscreen.pri */,
|
||||
9A0BDF67E013BB4FFB8685B0 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qqt7engine.pri */,
|
||||
B064BF3B496A7BF7A449CA1E /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsqlite.pri */,
|
||||
F83F87F8A60C9DF666911D42 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvg.pri */,
|
||||
CFFBE05DB004895080314289 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qsvgicon.pri */,
|
||||
247D8DF3B1DDB665B80BBA25 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblequick.pri */,
|
||||
87A4C1983FD641360BF80A02 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri */,
|
||||
24B6929EE3952310F2DAECB1 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri */,
|
||||
060A694B42A4555240009936 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtga.pri */,
|
||||
BD22EFEFCC02644B1883CE19 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtiff.pri */,
|
||||
B8C1F6C965A7A14FBA8D4518 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri */,
|
||||
74C1C232DFAA71028A0412CA /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri */,
|
||||
C84546C18DCBB04166195DCF /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri */,
|
||||
AB1C02DDBD8E88DD9A9AFDDD /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri */,
|
||||
8B4BB4E74F8A4442EF563D7D /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri */,
|
||||
892D36BEF797BA4AF48D378A /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_dummy.pri */,
|
||||
A4D8AC60897F435C1C3B9D02 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qtsensors_generic.pri */,
|
||||
346287C9E754E7C458153F03 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwbmp.pri */,
|
||||
B26239063A068F800A2C95F4 /* /usr/local/Qt-5.5.0/mkspecs/modules/qt_plugin_qwebp.pri */,
|
||||
63E722139886C87BC82DBDF5 /* /usr/local/Qt-5.5.0/mkspecs/macx-clang/qmake.conf */,
|
||||
85061B1DA49D125991117950 /* /usr/local/Qt-5.5.0/mkspecs/macx-xcode/qmake.conf */,
|
||||
6E67D23B15FC4B628DB2E0B2 /* /usr/local/Qt-5.5.1/mkspecs/qdevice.pri */,
|
||||
669FB007C4A3D58424D85EC8 /* /usr/local/Qt-5.5.1/mkspecs/common/shell-unix.conf */,
|
||||
0ABCEA8D0DD45589040B0AF2 /* /usr/local/Qt-5.5.1/mkspecs/common/unix.conf */,
|
||||
EBD39B69F368CEEAC360A16D /* /usr/local/Qt-5.5.1/mkspecs/common/mac.conf */,
|
||||
817A0F5A41B553A6DE67FDEB /* /usr/local/Qt-5.5.1/mkspecs/common/macx.conf */,
|
||||
45B95DB3B70B47A910FC847B /* /usr/local/Qt-5.5.1/mkspecs/common/gcc-base.conf */,
|
||||
A9E30FA27827990C5F182223 /* /usr/local/Qt-5.5.1/mkspecs/common/gcc-base-mac.conf */,
|
||||
8C5164D4E37556D40C5E6AA2 /* /usr/local/Qt-5.5.1/mkspecs/common/clang.conf */,
|
||||
F33BE16353DD1557A9AB3558 /* /usr/local/Qt-5.5.1/mkspecs/common/clang-mac.conf */,
|
||||
D4DE537C1FBBD48BD989FAD1 /* /usr/local/Qt-5.5.1/mkspecs/qconfig.pri */,
|
||||
ACC8A73268E5D9AF64E97AF4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth.pri */,
|
||||
2E48BB382B895A5ACD79AF9F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bluetooth_private.pri */,
|
||||
BD4D97801B547471B37A4CDC /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_bootstrap_private.pri */,
|
||||
CF86CD5BB01B9011E6B6FD3E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_clucene_private.pri */,
|
||||
77FF486B1F9BCD55A8A3F35D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent.pri */,
|
||||
7D28E9003CE64D8A7F2E292E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_concurrent_private.pri */,
|
||||
7ECCC1F9442988B4F2707CC1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core.pri */,
|
||||
5F781C7FD8422D359EA1D2FE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_core_private.pri */,
|
||||
7A94C7168B3FCBE5F04A013B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative.pri */,
|
||||
89863CCAF1D29037AE95755D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_declarative_private.pri */,
|
||||
F2F823087EA182CCBD5748B8 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer.pri */,
|
||||
7C2F42B222EE88E26A6FED62 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designer_private.pri */,
|
||||
69347C39E4D922E94D0860BF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_designercomponents_private.pri */,
|
||||
360D4B3ED25D126430DE27D4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio.pri */,
|
||||
4C6C71914B1926119120DACD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_enginio_private.pri */,
|
||||
23BC8B0FC3279421D41CA268 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui.pri */,
|
||||
D81E3D9A18202BE8EC3D0E2C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_gui_private.pri */,
|
||||
FD944B80F033DFE737D401A2 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help.pri */,
|
||||
D7A0618DE39A427EBF41940E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_help_private.pri */,
|
||||
A5B17ABEFBA1C2F43443D644 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras.pri */,
|
||||
33F165B1DB8CBF182C56FAB5 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_macextras_private.pri */,
|
||||
D2FE4D909926A0D1656068C4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia.pri */,
|
||||
E7D67CB158408BB7DEA74764 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimedia_private.pri */,
|
||||
28BD0D10214709D95B161E24 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets.pri */,
|
||||
D1FA7CAB5ACC09D563AE569F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_multimediawidgets_private.pri */,
|
||||
293C8DEEE270847AC20E70F9 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network.pri */,
|
||||
382E89A91A34F7898C25FD0D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_network_private.pri */,
|
||||
8A04A4A3625204D12A1207F6 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc.pri */,
|
||||
B51B01657BFE9EAEF5590561 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_nfc_private.pri */,
|
||||
5CEA7A2DB2136425A88D1254 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl.pri */,
|
||||
E0F4563EA350EB65112A0EF4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_opengl_private.pri */,
|
||||
E432DA897A5F027987342E8F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions.pri */,
|
||||
5597304BEC94BFB9EAAEBC4B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_openglextensions_private.pri */,
|
||||
8F572030CE9AB8CC5F672201 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_platformsupport_private.pri */,
|
||||
F7ADBF552F6B9A5982915164 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning.pri */,
|
||||
E66B9EC81C285CA9A7FB6A2E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_positioning_private.pri */,
|
||||
6C08BFC27C4C303A3A5181DB /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport.pri */,
|
||||
D0CDC87DAFDA7F18A7AF450F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_printsupport_private.pri */,
|
||||
B382B645B34234E451AE5D94 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml.pri */,
|
||||
6102C69805B6398AF6FA5BEB /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qml_private.pri */,
|
||||
4FB6657DA22BC68B819B64B3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmldevtools_private.pri */,
|
||||
DF8188E30892A4654B984221 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest.pri */,
|
||||
ABA9AB4619F09DCFD2D4A27F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qmltest_private.pri */,
|
||||
5B22E9E4EE9AAE42ABC24AB3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri */,
|
||||
16DD53E17C65AC8B450CC6C3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick.pri */,
|
||||
8C31D89BDFCDF466DAED19A0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quick_private.pri */,
|
||||
82E7DCFD95559532D8FC6CDD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickparticles_private.pri */,
|
||||
D948D4D8F949D45158F8DE35 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets.pri */,
|
||||
B2246267D4C0D789259A86B0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_quickwidgets_private.pri */,
|
||||
CFCB992BEC24B71BFB8A2F30 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script.pri */,
|
||||
C505A18319B9B63C63877858 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_script_private.pri */,
|
||||
CE829DD126DD2B97E8D70A7A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools.pri */,
|
||||
A59F74CD76FDC2B4B9910E18 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_scripttools_private.pri */,
|
||||
85B6936EDBE61D9BB8F8B33B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors.pri */,
|
||||
BDC9ECADEE40D11E3C2EA93F /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sensors_private.pri */,
|
||||
BFF0C38FB0EC140C5F0304AE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport.pri */,
|
||||
311004331A04F3D69C98643C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_serialport_private.pri */,
|
||||
7DE30A90667C03C4F91A2A91 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql.pri */,
|
||||
075EB50EB07CF69FD62FB8DF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_sql_private.pri */,
|
||||
ADFC79902C14A612AE93A89A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg.pri */,
|
||||
8DDE1D26B3206CDB8B57FABE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_svg_private.pri */,
|
||||
DB0A26DDC377B2004F61BFE3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib.pri */,
|
||||
8849E60AEC7DB97A475C17EA /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_testlib_private.pri */,
|
||||
E50FA73B8A23BC179A642B27 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools.pri */,
|
||||
B518DA4EE7376002AFC71FD5 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_uitools_private.pri */,
|
||||
8F97C9CAE38CA3AFAC0B3953 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets.pri */,
|
||||
87EEF25EE25CF21572D1438C /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_websockets_private.pri */,
|
||||
A022AF919D1977534CA66BB8 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets.pri */,
|
||||
8E9136256AFFBA6EF048AA55 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_widgets_private.pri */,
|
||||
AA73DC3C2901E2979FE8AD5B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml.pri */,
|
||||
E37365B4489B4918BEBB707D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xml_private.pri */,
|
||||
2E6D9B1D2743D24E31B0B284 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns.pri */,
|
||||
F9BEAA743A908603687DA204 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_lib_xmlpatterns_private.pri */,
|
||||
D5141F795670589C8CC41CBC /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_cocoaprintersupport.pri */,
|
||||
1FAE75C970AA73F2DEDDB508 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfcamera.pri */,
|
||||
F4EB01857048DCFCFFAAC4D0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qavfmediaplayer.pri */,
|
||||
AFD721AA33A2F785E77B1698 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcocoa.pri */,
|
||||
EA5D4FF9DE4AC4215D7DCE0D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qcorewlanbearer.pri */,
|
||||
111BBEE3D1432C3B517FD539 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdds.pri */,
|
||||
3685604BDB64DD6E92169B73 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qdeclarativeview.pri */,
|
||||
2440CD1D4CEF80443BCA1B8B /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qgenericbearer.pri */,
|
||||
EB1F99FD112917157F3C3F6E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qicns.pri */,
|
||||
C4295BE59CCEBCDD16268349 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qico.pri */,
|
||||
45DB132B756499D4DF38430E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qjp2.pri */,
|
||||
B678DA730B4ECE863AD631AE /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qminimal.pri */,
|
||||
F0A58515945747E36783CC21 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_inspector.pri */,
|
||||
B8525798C5AA7D7C6D68E1B3 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_qtquick2.pri */,
|
||||
EB29AC635054C09EFA749AE1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp.pri */,
|
||||
3F08D430CEC8D2117735CCB4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmldbg_tcp_qtdeclarative.pri */,
|
||||
946BEA667170DC1A7A8F9DB0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qmng.pri */,
|
||||
CCF75CFFB857487FB18F99F9 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qoffscreen.pri */,
|
||||
9A0BDF67E013BB4FFB8685B0 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qqt7engine.pri */,
|
||||
B064BF3B496A7BF7A449CA1E /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsqlite.pri */,
|
||||
F83F87F8A60C9DF666911D42 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvg.pri */,
|
||||
CFFBE05DB004895080314289 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qsvgicon.pri */,
|
||||
247D8DF3B1DDB665B80BBA25 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblequick.pri */,
|
||||
87A4C1983FD641360BF80A02 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaccessiblewidgets.pri */,
|
||||
24B6929EE3952310F2DAECB1 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtaudio_coreaudio.pri */,
|
||||
060A694B42A4555240009936 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtga.pri */,
|
||||
BD22EFEFCC02644B1883CE19 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtiff.pri */,
|
||||
B8C1F6C965A7A14FBA8D4518 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmedia_audioengine.pri */,
|
||||
74C1C232DFAA71028A0412CA /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtmultimedia_m3u.pri */,
|
||||
C84546C18DCBB04166195DCF /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtposition_positionpoll.pri */,
|
||||
AB1C02DDBD8E88DD9A9AFDDD /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_plugin.pri */,
|
||||
8B4BB4E74F8A4442EF563D7D /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensorgestures_shakeplugin.pri */,
|
||||
892D36BEF797BA4AF48D378A /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_dummy.pri */,
|
||||
A4D8AC60897F435C1C3B9D02 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qtsensors_generic.pri */,
|
||||
346287C9E754E7C458153F03 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwbmp.pri */,
|
||||
B26239063A068F800A2C95F4 /* /usr/local/Qt-5.5.1/mkspecs/modules/qt_plugin_qwebp.pri */,
|
||||
63E722139886C87BC82DBDF5 /* /usr/local/Qt-5.5.1/mkspecs/macx-clang/qmake.conf */,
|
||||
85061B1DA49D125991117950 /* /usr/local/Qt-5.5.1/mkspecs/macx-xcode/qmake.conf */,
|
||||
AB745978DF0F41D1801ABDA6 /* .qmake.stash */,
|
||||
);
|
||||
name = "Supporting Files";
|
||||
@@ -487,7 +487,7 @@
|
||||
6DB9C3763D02B1415CD9D565 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 0640;
|
||||
LastUpgradeCheck = 0700;
|
||||
};
|
||||
buildConfigurationList = DAC4C1AA5EDEA1C85E9CA5E6 /* Build configuration list for PBXProject "Packer" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
@@ -567,26 +567,26 @@
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
../../Libraries/QtStatic/qtbase/include/QtGui/5.5.0/QtGui,
|
||||
../../Libraries/QtStatic/qtbase/include/QtCore/5.5.0/QtCore,
|
||||
../../Libraries/QtStatic/qtbase/include/QtGui/5.5.1/QtGui,
|
||||
../../Libraries/QtStatic/qtbase/include/QtCore/5.5.1/QtCore,
|
||||
../../Libraries/QtStatic/qtbase/include,
|
||||
/usr/local/include,
|
||||
"/usr/local/Qt-5.5.0/include",
|
||||
"/usr/local/Qt-5.5.0/include/QtGui",
|
||||
"/usr/local/Qt-5.5.0/include/QtCore",
|
||||
"/usr/local/Qt-5.5.1/include",
|
||||
"/usr/local/Qt-5.5.1/include/QtGui",
|
||||
"/usr/local/Qt-5.5.1/include/QtCore",
|
||||
GeneratedFiles/Debug,
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers,
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers,
|
||||
"/usr/local/Qt-5.5.0/mkspecs/macx-clang",
|
||||
"/usr/local/Qt-5.5.1/mkspecs/macx-clang",
|
||||
);
|
||||
INFOPLIST_FILE = Packer.plist;
|
||||
INSTALL_DIR = "../Mac/$(CONFIGURATION)";
|
||||
LDPLUSPLUS = "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++";
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
/System/Library/Frameworks/,
|
||||
"/usr/local/Qt-5.5.0/lib",
|
||||
"/usr/local/Qt-5.5.0/plugins/platforms",
|
||||
"/usr/local/Qt-5.5.0/plugins/imageformats",
|
||||
"/usr/local/Qt-5.5.1/lib",
|
||||
"/usr/local/Qt-5.5.1/plugins/platforms",
|
||||
"/usr/local/Qt-5.5.1/plugins/imageformats",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.7;
|
||||
OBJROOT = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)IntermediatePacker/";
|
||||
@@ -617,10 +617,10 @@
|
||||
"-stdlib=libc++",
|
||||
"-lcrypto",
|
||||
"-lssl",
|
||||
"-L/usr/local/Qt-5.5.0/lib",
|
||||
"-L/usr/local/Qt-5.5.0/plugins/platforms",
|
||||
"-L/usr/local/Qt-5.5.1/lib",
|
||||
"-L/usr/local/Qt-5.5.1/plugins/platforms",
|
||||
"-lcups",
|
||||
"-L/usr/local/Qt-5.5.0/plugins/imageformats",
|
||||
"-L/usr/local/Qt-5.5.1/plugins/imageformats",
|
||||
"-lz",
|
||||
"-lm",
|
||||
"-llzma",
|
||||
@@ -648,6 +648,7 @@
|
||||
DYLIB_COMPATIBILITY_VERSION = 1.0;
|
||||
DYLIB_CURRENT_VERSION = 1.0.0;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
ENABLE_TESTABILITY = YES;
|
||||
FRAMEWORK_SEARCH_PATHS = "";
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
@@ -660,26 +661,26 @@
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
../../Libraries/QtStatic/qtbase/include/QtGui/5.5.0/QtGui,
|
||||
../../Libraries/QtStatic/qtbase/include/QtCore/5.5.0/QtCore,
|
||||
../../Libraries/QtStatic/qtbase/include/QtGui/5.5.1/QtGui,
|
||||
../../Libraries/QtStatic/qtbase/include/QtCore/5.5.1/QtCore,
|
||||
../../Libraries/QtStatic/qtbase/include,
|
||||
/usr/local/include,
|
||||
"/usr/local/Qt-5.5.0/include",
|
||||
"/usr/local/Qt-5.5.0/include/QtGui",
|
||||
"/usr/local/Qt-5.5.0/include/QtCore",
|
||||
"/usr/local/Qt-5.5.1/include",
|
||||
"/usr/local/Qt-5.5.1/include/QtGui",
|
||||
"/usr/local/Qt-5.5.1/include/QtCore",
|
||||
GeneratedFiles/Debug,
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers,
|
||||
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers,
|
||||
"/usr/local/Qt-5.5.0/mkspecs/macx-clang",
|
||||
"/usr/local/Qt-5.5.1/mkspecs/macx-clang",
|
||||
);
|
||||
INFOPLIST_FILE = Packer.plist;
|
||||
INSTALL_DIR = "../Mac/$(CONFIGURATION)";
|
||||
LDPLUSPLUS = "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++";
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
/System/Library/Frameworks/,
|
||||
"/usr/local/Qt-5.5.0/lib",
|
||||
"/usr/local/Qt-5.5.0/plugins/platforms",
|
||||
"/usr/local/Qt-5.5.0/plugins/imageformats",
|
||||
"/usr/local/Qt-5.5.1/lib",
|
||||
"/usr/local/Qt-5.5.1/plugins/platforms",
|
||||
"/usr/local/Qt-5.5.1/plugins/imageformats",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.7;
|
||||
OBJROOT = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)IntermediatePacker/";
|
||||
@@ -711,10 +712,10 @@
|
||||
"-stdlib=libc++",
|
||||
"-lcrypto",
|
||||
"-lssl",
|
||||
"-L/usr/local/Qt-5.5.0/lib",
|
||||
"-L/usr/local/Qt-5.5.0/plugins/platforms",
|
||||
"-L/usr/local/Qt-5.5.1/lib",
|
||||
"-L/usr/local/Qt-5.5.1/plugins/platforms",
|
||||
"-lcups",
|
||||
"-L/usr/local/Qt-5.5.0/plugins/imageformats",
|
||||
"-L/usr/local/Qt-5.5.1/plugins/imageformats",
|
||||
"-lz",
|
||||
"-lm",
|
||||
"-llzma",
|
||||
@@ -734,7 +735,7 @@
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"/usr/local/Qt-5.5.0/lib",
|
||||
"/usr/local/Qt-5.5.1/lib",
|
||||
);
|
||||
OBJROOT = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)IntermediatePacker";
|
||||
OTHER_CFLAGS = (
|
||||
@@ -761,6 +762,7 @@
|
||||
"-DQT_CORE_LIB",
|
||||
"-I./../../Libraries/openssl-xcode/include",
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.tdesktop.$(PRODUCT_NAME:rfc1034identifier)";
|
||||
PRODUCT_NAME = Packer;
|
||||
QT_LIBRARY_SUFFIX = "";
|
||||
SDKROOT = macosx;
|
||||
@@ -777,7 +779,7 @@
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"/usr/local/Qt-5.5.0/lib",
|
||||
"/usr/local/Qt-5.5.1/lib",
|
||||
);
|
||||
OBJROOT = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)IntermediatePacker";
|
||||
OTHER_CFLAGS = (
|
||||
@@ -804,6 +806,7 @@
|
||||
"-DQT_CORE_LIB",
|
||||
"-I./../../Libraries/openssl-xcode/include",
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.tdesktop.$(PRODUCT_NAME:rfc1034identifier)";
|
||||
PRODUCT_NAME = Packer;
|
||||
QT_LIBRARY_SUFFIX = _debug;
|
||||
SDKROOT = macosx;
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
#############################################################################
|
||||
# Makefile for building: ../Mac/DebugPacker/Packer.app/Contents/MacOS/Packer
|
||||
# Generated by qmake (3.0) (Qt 5.5.0)
|
||||
# Generated by qmake (3.0) (Qt 5.5.1)
|
||||
# Project: Packer.pro
|
||||
# Template: app
|
||||
# Command: /usr/local/Qt-5.5.0/bin/qmake -spec macx-xcode -o Packer.xcodeproj/project.pbxproj Packer.pro
|
||||
# Command: /usr/local/Qt-5.5.1/bin/qmake -spec macx-xcode -o Packer.xcodeproj/project.pbxproj Packer.pro
|
||||
#############################################################################
|
||||
|
||||
MAKEFILE = project.pbxproj
|
||||
|
||||
MOC = /usr/local/Qt-5.5.0/bin/moc
|
||||
MOC = /usr/local/Qt-5.5.1/bin/moc
|
||||
UIC =
|
||||
LEX = flex
|
||||
LEXFLAGS =
|
||||
YACC = yacc
|
||||
YACCFLAGS = -d
|
||||
DEFINES = -D_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB
|
||||
INCPATH = -I/usr/local/Qt-5.5.0/mkspecs/macx-clang -I. -I../../Libraries/QtStatic/qtbase/include/QtGui/5.5.0/QtGui -I../../Libraries/QtStatic/qtbase/include/QtCore/5.5.0/QtCore -I../../Libraries/QtStatic/qtbase/include -I../../Libraries/lzma/C -I/usr/local/Qt-5.5.0/include -I/usr/local/Qt-5.5.0/include/QtGui -I/usr/local/Qt-5.5.0/include/QtCore -IGeneratedFiles/Debug -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers
|
||||
INCPATH = -I/usr/local/Qt-5.5.1/mkspecs/macx-clang -I. -I../../Libraries/QtStatic/qtbase/include/QtGui/5.5.1/QtGui -I../../Libraries/QtStatic/qtbase/include/QtCore/5.5.1/QtCore -I../../Libraries/QtStatic/qtbase/include -I../../Libraries/lzma/C -I/usr/local/Qt-5.5.1/include -I/usr/local/Qt-5.5.1/include/QtGui -I/usr/local/Qt-5.5.1/include/QtCore -IGeneratedFiles/Debug -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers
|
||||
DEL_FILE = rm -f
|
||||
MOVE = mv -f
|
||||
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
"lng_language_name" = "English";
|
||||
"lng_switch_to_this" = "Switch to English";
|
||||
@@ -25,6 +28,8 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_menu_restart" = "Restart";
|
||||
"lng_menu_back" = "Back";
|
||||
|
||||
"lng_disable_notifications_from_tray" = "Disable notifications";
|
||||
"lng_enable_notifications_from_tray" = "Enable notifications";
|
||||
"lng_open_from_tray" = "Open Telegram";
|
||||
"lng_minimize_to_tray" = "Minimize to tray";
|
||||
"lng_quit_from_tray" = "Quit Telegram";
|
||||
@@ -43,6 +48,19 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_month11" = "November";
|
||||
"lng_month12" = "December";
|
||||
|
||||
"lng_month1_small" = "Jan";
|
||||
"lng_month2_small" = "Feb";
|
||||
"lng_month3_small" = "Mar";
|
||||
"lng_month4_small" = "Apr";
|
||||
"lng_month5_small" = "May";
|
||||
"lng_month6_small" = "Jun";
|
||||
"lng_month7_small" = "Jul";
|
||||
"lng_month8_small" = "Aug";
|
||||
"lng_month9_small" = "Sep";
|
||||
"lng_month10_small" = "Oct";
|
||||
"lng_month11_small" = "Nov";
|
||||
"lng_month12_small" = "Dec";
|
||||
|
||||
"lng_weekday1" = "Mon";
|
||||
"lng_weekday2" = "Tue";
|
||||
"lng_weekday3" = "Wed";
|
||||
@@ -61,12 +79,15 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
|
||||
"lng_month_day" = "{month} {day}";
|
||||
"lng_month_day_year" = "{month} {day}, {year}";
|
||||
"lng_month_year" = "{month}, {year}";
|
||||
|
||||
"lng_box_ok" = "OK";
|
||||
|
||||
"lng_cancel" = "Cancel";
|
||||
"lng_continue" = "Continue";
|
||||
"lng_close" = "Close";
|
||||
"lng_connecting" = "Connecting..";
|
||||
"lng_reconnecting" = "Reconnect {count:now|in # s|in # s}..";
|
||||
"lng_connecting" = "Connecting...";
|
||||
"lng_reconnecting" = "Reconnect {count:now|in # s|in # s}...";
|
||||
"lng_reconnecting_try_now" = "Try now";
|
||||
|
||||
"lng_status_service_notifications" = "service notifications";
|
||||
@@ -87,21 +108,34 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_status_lastseen_date" = "last seen {date}";
|
||||
"lng_status_lastseen_date_time" = "last seen {date} at {time}";
|
||||
"lng_status_online" = "online";
|
||||
"lng_status_connecting" = "connecting..";
|
||||
"lng_status_connecting" = "connecting...";
|
||||
|
||||
"lng_chat_status_unaccessible" = "group is unaccessible";
|
||||
"lng_chat_status_members" = "{count:no members|# member|# members}";
|
||||
"lng_chat_status_members_online" = "{count:_not_used_|# member|# members}, {count_online:_not_used_|# online|# online}";
|
||||
|
||||
"lng_channel_status" = "channel";
|
||||
"lng_group_status" = "group";
|
||||
|
||||
"lng_channel_members_link" = "{count:_not_used_|# member|# members} »";
|
||||
"lng_channel_admins_link" = "{count:_not_used_|# administrator|# administrators} »";
|
||||
"lng_channel_admins_link" = "{count:Manage administrators|# administrator|# administrators} »";
|
||||
|
||||
"lng_server_error" = "Internal server error.";
|
||||
"lng_flood_error" = "Too many tries. Please try again later.";
|
||||
"lng_gif_error" = "An error has occured while reading GIF animation :(";
|
||||
"lng_edit_error" = "You cannot edit this message";
|
||||
"lng_edit_deleted" = "This message was deleted";
|
||||
"lng_edit_too_long" = "Your message text is too long";
|
||||
"lng_edit_message" = "Edit message";
|
||||
"lng_edit_message_text" = "New message text...";
|
||||
"lng_deleted" = "Unknown";
|
||||
"lng_deleted_message" = "Deleted message";
|
||||
"lng_pinned_message" = "Pinned message";
|
||||
"lng_pinned_unpin_sure" = "Would you like to unpin this message?";
|
||||
"lng_pinned_pin_sure" = "Would you like to pin this message?";
|
||||
"lng_pinned_pin" = "Pin";
|
||||
"lng_pinned_unpin" = "Unpin";
|
||||
"lng_pinned_notify" = "Notify all members";
|
||||
|
||||
"lng_intro" = "Welcome to the official [a href=\"https://telegram.org/\"]Telegram[/a] desktop app.\nIt's [b]fast[/b] and [b]secure[/b].";
|
||||
"lng_start_msgs" = "START MESSAGING";
|
||||
@@ -110,6 +144,8 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_intro_finish" = "SIGN UP";
|
||||
"lng_intro_submit" = "SUBMIT";
|
||||
|
||||
"lng_photo_caption" = "Caption";
|
||||
|
||||
"lng_phone_ph" = "Your phone number";
|
||||
"lng_phone_title" = "Your Phone";
|
||||
"lng_phone_desc" = "Please confirm your country code and\nenter your phone number.";
|
||||
@@ -119,41 +155,40 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_country_ph" = "Search";
|
||||
"lng_country_done" = "Done";
|
||||
"lng_country_none" = "Country not found";
|
||||
"lng_country_select" = "Select Country";
|
||||
"lng_country_select" = "Select country";
|
||||
|
||||
"lng_code_ph" = "Your code";
|
||||
"lng_code_desc" = "We have sent you a message with activation\ncode to your phone. Please enter it below.";
|
||||
"lng_code_telegram" = "Please enter the code you've just\nreceived in your previous [b]Telegram[/b] app.";
|
||||
"lng_code_no_telegram" = "Send code via SMS";
|
||||
"lng_code_call" = "Telegram will dial your number in {minutes}:{seconds}";
|
||||
"lng_code_calling" = "Requesting a call from Telegram..";
|
||||
"lng_code_calling" = "Requesting a call from Telegram...";
|
||||
"lng_code_called" = "Telegram dialed your number";
|
||||
|
||||
"lng_bad_phone" = "Invalid phone number. Please try again.";
|
||||
"lng_bad_phone_noreg" = "Phone number not registered.";
|
||||
"lng_bad_code" = "You have entered an invalid code. Please try again.";
|
||||
"lng_bad_code" = "You have entered an invalid code.";
|
||||
"lng_bad_name" = "Please enter your first and last name.";
|
||||
"lng_bad_photo" = "Bad image selected.";
|
||||
|
||||
"lng_bad_image_for_photo" = "This image can't be sent that way.\nWould you like to send it as a file?";
|
||||
|
||||
"lng_signin_title" = "Cloud password check";
|
||||
"lng_signin_desc" = "Please enter your cloud password.";
|
||||
"lng_signin_recover_desc" = "Please enter the code from the e-mail.";
|
||||
"lng_signin_password" = "Your cloud password";
|
||||
"lng_signin_code" = "Code from e-mail";
|
||||
"lng_signin_recover" = "Forgot password?";
|
||||
"lng_signin_recover_title" = "Password reset";
|
||||
"lng_signin_hint" = "Hint: {password_hint}";
|
||||
"lng_signin_recover_hint" = "Code was sent to {recover_email}";
|
||||
"lng_signin_bad_password" = "You have entered a wrong password.";
|
||||
"lng_signin_wrong_code" = "You have entered an invalid code. Please try again.";
|
||||
"lng_signin_wrong_code" = "You have entered an invalid code.";
|
||||
"lng_signin_try_password" = "Having trouble accessing your e-mail?";
|
||||
"lng_signin_password_removed" = "Your cloud password was disabled.\nYou can set a new one in Settings.";
|
||||
"lng_signin_no_email_forgot" = "Since you haven't provided a recovery\ne-mail when setting up your password, your remaining options are either to remember your password or to reset your account.";
|
||||
"lng_signin_cant_email_forgot" = "If you can't restore access to the e-mail, your remaining options are either to remember your password or to reset your account.";
|
||||
"lng_signin_reset_account" = "Reset your account";
|
||||
"lng_sigin_sure_reset" = "Warning!\n\nYou will lose all your chats and messages,\nalong with any media and files you shared!\n\nDo you want to reset your account?";
|
||||
"lng_sigin_reset" = "Reset";
|
||||
"lng_signin_sure_reset" = "Warning!\n\nYou will lose all your chats and messages, along with any media and files you shared!\n\nDo you want to reset your account?";
|
||||
"lng_signin_reset" = "Reset";
|
||||
|
||||
"lng_signup_title" = "Information and photo";
|
||||
"lng_signup_desc" = "Please enter your name and\nupload a photo.";
|
||||
@@ -166,24 +201,29 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_dlg_new_channel_name" = "Channel name";
|
||||
"lng_no_contacts" = "You have no contacts";
|
||||
"lng_no_chats" = "Your chats will be here";
|
||||
"lng_contacts_loading" = "Loading..";
|
||||
"lng_contacts_loading" = "Loading...";
|
||||
"lng_contacts_not_found" = "No contacts found";
|
||||
"lng_dlg_search_chat" = "Search in this chat";
|
||||
"lng_dlg_search_channel" = "Search in this channel";
|
||||
"lng_dlg_search_for_messages" = "Search for messages";
|
||||
|
||||
"lng_settings_save" = "Save";
|
||||
"lng_settings_upload" = "Set Profile Photo";
|
||||
"lng_settings_crop_profile" = "Select a square area for your profile photo";
|
||||
"lng_settings_uploading_photo" = "Uploading photo..";
|
||||
"lng_settings_uploading_photo" = "Uploading photo...";
|
||||
|
||||
"lng_username_title" = "Change username";
|
||||
"lng_username_title" = "Username";
|
||||
"lng_username_about" = "You can choose a username on Telegram.\nIf you do, other people will be able to find\nyou by this username and contact you\nwithout knowing your phone number.\n\nYou can use a-z, 0-9 and underscores.\nMinimum length is 5 characters.";
|
||||
"lng_username_choose" = "Choose your username.";
|
||||
"lng_username_invalid" = "This username is invalid.";
|
||||
"lng_username_occupied" = "This username is already occupied.";
|
||||
"lng_username_too_short" = "This username is too short.";
|
||||
"lng_username_bad_symbols" = "This username has bad symbols.";
|
||||
"lng_username_available" = "This username is available.";
|
||||
"lng_username_not_found" = "User @{user} not found.";
|
||||
"lng_username_link_willbe" = "Such link will open a chat with you:";
|
||||
"lng_username_link" = "This link opens a chat with you:";
|
||||
"lng_username_copied" = "Link copied to clipboard.";
|
||||
|
||||
"lng_settings_section_contact_info" = "Contact info";
|
||||
"lng_settings_phone_number" = "Phone number:";
|
||||
@@ -203,13 +243,13 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_settings_section_general" = "General";
|
||||
"lng_settings_change_lang" = "Change language";
|
||||
"lng_languages" = "Languages";
|
||||
"lng_sure_save_language" = "Telegram will restart\nin order to change language";
|
||||
"lng_sure_save_language" = "Telegram will restart in order to change language";
|
||||
"lng_settings_auto_update" = "Update automatically";
|
||||
"lng_settings_current_version" = "Version {version}";
|
||||
"lng_settings_check_now" = "Check for updates";
|
||||
"lng_settings_update_checking" = "Checking for updates..";
|
||||
"lng_settings_update_checking" = "Checking for updates...";
|
||||
"lng_settings_latest_installed" = "Latest version is installed";
|
||||
"lng_settings_downloading" = "Downloading update {ready} / {total} MB..";
|
||||
"lng_settings_downloading" = "Downloading update {ready} / {total} MB...";
|
||||
"lng_settings_update_ready" = "New version is ready";
|
||||
"lng_settings_update_now" = "Restart Now";
|
||||
"lng_settings_update_fail" = "Update check failed :(";
|
||||
@@ -222,9 +262,9 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_settings_scale_auto" = "Auto ({cur})";
|
||||
|
||||
"lng_settings_section_chat" = "Chat options";
|
||||
"lng_settings_replace_emojis" = "Replace emojis";
|
||||
"lng_settings_replace_emojis" = "Replace emoji";
|
||||
"lng_settings_view_emojis" = "View list";
|
||||
"lng_settings_emoji_list" = "List of supported emojis";
|
||||
"lng_settings_emoji_list" = "Supported emoji";
|
||||
"lng_settings_send_enter" = "Send by Enter";
|
||||
"lng_settings_send_ctrlenter" = "Send by Ctrl+Enter";
|
||||
"lng_settings_send_cmdenter" = "Send by Cmd+Enter";
|
||||
@@ -233,6 +273,7 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_settings_bg_from_gallery" = "Choose from gallery";
|
||||
"lng_settings_bg_from_file" = "Choose from file";
|
||||
"lng_settings_bg_tile" = "Tile background";
|
||||
"lng_settings_adaptive_wide" = "Adaptive layout for wide screens";
|
||||
|
||||
"lng_backgrounds_header" = "Choose your new chat background";
|
||||
|
||||
@@ -248,9 +289,9 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_download_path_choose" = "Choose download path";
|
||||
"lng_sure_clear_downloads" = "Do you want to remove all downloaded files from temp folder? It is done automatically on logout or program uninstall.";
|
||||
"lng_download_path_failed" = "File download could not be started. It could happen because of a bad download location.\n\nYou can change download path in Settings.";
|
||||
"lng_download_path_settings" = "Go to Settings";
|
||||
"lng_download_path_settings" = "Settings";
|
||||
"lng_download_finish_failed" = "File download could not be finished.\n\nWould you like to try again?";
|
||||
"lng_download_path_clearing" = "Clearing..";
|
||||
"lng_download_path_clearing" = "Clearing...";
|
||||
"lng_download_path_cleared" = "Cleared!";
|
||||
"lng_download_path_clear_failed" = "Clear failed :(";
|
||||
|
||||
@@ -259,7 +300,7 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_settings_images_cached" = "{count:_not_used_|# image|# images}, {size}";
|
||||
"lng_settings_audios_cached" = "{count:_not_used_|# voice message|# voice messages}, {size}";
|
||||
"lng_local_storage_clear" = "Clear all";
|
||||
"lng_local_storage_clearing" = "Clearing..";
|
||||
"lng_local_storage_clearing" = "Clearing...";
|
||||
"lng_local_storage_cleared" = "Cleared!";
|
||||
"lng_local_storage_clear_failed" = "Clear failed :(";
|
||||
|
||||
@@ -269,7 +310,7 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
|
||||
"lng_passcode_turn_on" = "Turn on local passcode";
|
||||
"lng_passcode_change" = "Change local passcode";
|
||||
"lng_passcode_create" = "Create local passcode";
|
||||
"lng_passcode_create" = "Local passcode";
|
||||
"lng_passcode_remove" = "Remove local passcode";
|
||||
"lng_passcode_turn_off" = "Turn off";
|
||||
"lng_passcode_autolock" = "Auto-Lock";
|
||||
@@ -277,35 +318,38 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_passcode_autolock_inactive" = "Auto-Lock if inactive for:";
|
||||
"lng_passcode_autolock_minutes" = "{count:_not_used_|# minute|# minutes}";
|
||||
"lng_passcode_autolock_hours" = "{count:_not_used_|# hour|# hours}";
|
||||
"lng_passcode_enter_old" = "Enter old passcode";
|
||||
"lng_passcode_enter_old" = "Enter current passcode";
|
||||
"lng_passcode_enter_first" = "Enter a passcode";
|
||||
"lng_passcode_enter_new" = "Enter new passcode";
|
||||
"lng_passcode_confirm_new" = "Re-enter new passcode";
|
||||
"lng_passcode_about" = "When a local passcode is set, a lock icon appears in the top menu. Click it to lock the app.\n\nNote: if you forget your local passcode, you'll need to relogin in Telegram Desktop.";
|
||||
"lng_passcode_about" = "When a local passcode is set, a lock icon appears in the top right corner of the window. Click it to lock the app.\n\nNote: if you forget your local passcode, you'll need to relogin in Telegram Desktop.";
|
||||
"lng_passcode_differ" = "Passcodes are different";
|
||||
"lng_passcode_wrong" = "Wrong passcode";
|
||||
"lng_passcode_is_same" = "Passcode was not changed";
|
||||
"lng_passcode_enter" = "Enter your local passcode";
|
||||
"lng_passcode_submit" = "Submit";
|
||||
"lng_passcode_logout" = "Log out";
|
||||
"lng_passcode_need_unblock" = "You need to unlock me first.";
|
||||
|
||||
"lng_cloud_password_waiting" = "Confirmation link sent to {email}..";
|
||||
"lng_cloud_password_waiting" = "Confirmation link sent to {email}...";
|
||||
"lng_cloud_password_change" = "Change cloud password";
|
||||
"lng_cloud_password_create" = "Create cloud password";
|
||||
"lng_cloud_password_create" = "Cloud password";
|
||||
"lng_cloud_password_remove" = "Remove cloud password";
|
||||
"lng_cloud_password_set" = "Enable two-step verification";
|
||||
"lng_cloud_password_edit" = "Change cloud password";
|
||||
"lng_cloud_password_enter_old" = "Enter old password";
|
||||
"lng_cloud_password_enter_old" = "Enter current password";
|
||||
"lng_cloud_password_enter_first" = "Enter a password";
|
||||
"lng_cloud_password_enter_new" = "Enter new password";
|
||||
"lng_cloud_password_confirm_new" = "Re-enter new password";
|
||||
"lng_cloud_password_hint" = "Enter password hint";
|
||||
"lng_cloud_password_change_hint" = "Enter new password hint";
|
||||
"lng_cloud_password_bad" = "Password and hint cannot be the same.";
|
||||
"lng_cloud_password_email" = "Enter recovery e-mail";
|
||||
"lng_cloud_password_bad_email" = "Incorrect e-mail, please try other.";
|
||||
"lng_cloud_password_about" = "This password will be required when you log in on a new device in addition to the pin code.";
|
||||
"lng_cloud_password_about" = "This password will be asked when you log in on a new device in addition to the pin code.";
|
||||
"lng_cloud_password_about_recover" = "Warning! Are you sure you don't want to\nadd a password recovery e-mail?\n\nIf you forget your password, you will\nlose access to your Telegram account.";
|
||||
"lng_cloud_password_almost" = "A confirmation link was sent\nto the e-mail you provided.\n\nTwo-step verification will be enabled\nas soon as you follow that link.";
|
||||
"lng_cloud_password_skip_email" = "Skip e-mail";
|
||||
"lng_cloud_password_almost" = "A confirmation link was sent to the\ne-mail you provided. Two-step verification will be enabled as soon as you follow that link.";
|
||||
"lng_cloud_password_was_set" = "Two-step verification enabled.";
|
||||
"lng_cloud_password_updated" = "Your cloud password was updated.";
|
||||
"lng_cloud_password_removed" = "Two-step verification was disabled.";
|
||||
@@ -314,9 +358,9 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_cloud_password_is_same" = "Password was not changed";
|
||||
|
||||
"lng_connection_type" = "Connection type:";
|
||||
"lng_connection_auto_connecting" = "Default (connecting..)";
|
||||
"lng_connection_auto_connecting" = "Default (connecting...)";
|
||||
"lng_connection_auto" = "Default ({transport} used)";
|
||||
"lng_connection_proxy_connecting" = "Connecting through proxy..";
|
||||
"lng_connection_proxy_connecting" = "Connecting through proxy...";
|
||||
"lng_connection_proxy" = "{transport} with proxy";
|
||||
"lng_connection_header" = "Connection type";
|
||||
"lng_connection_auto_rb" = "Auto (TCP if available or HTTP)";
|
||||
@@ -342,17 +386,17 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_settings_logout" = "Log Out";
|
||||
"lng_sure_logout" = "Are you sure you want to log out?";
|
||||
|
||||
"lng_settings_need_restart" = "You need to restart for applying\nsome of the new settings. Restart now?";
|
||||
"lng_settings_restart_now" = "Restart";
|
||||
"lng_settings_restart_later" = "Later";
|
||||
"lng_settings_need_restart" = "You need to restart for applying some of the new settings. Restart now?";
|
||||
"lng_settings_restart_now" = "RESTART";
|
||||
"lng_settings_restart_later" = "LATER";
|
||||
|
||||
"lng_sessions_header" = "Current session";
|
||||
"lng_sessions_other_header" = "Active sessions";
|
||||
"lng_sessions_no_other" = "No other sessions";
|
||||
"lng_sessions_other_desc" = "You can log in to Telegram from other\nmobile, tablet and desktop devices, using\nthe same phone number. All your data\nwill be instantly synchronized.";
|
||||
"lng_sessions_terminate_all" = "Terminate all";
|
||||
"lng_sessions_other_desc" = "You can log in to Telegram from other mobile, tablet and desktop devices, using the same phone number. All your data will be instantly synchronized.";
|
||||
"lng_sessions_terminate_all" = "Terminate all other sessions";
|
||||
|
||||
"lng_preview_loading" = "Getting Link Info..";
|
||||
"lng_preview_loading" = "Getting Link Info...";
|
||||
|
||||
"lng_profile_chat_unaccessible" = "Group is unaccessible";
|
||||
"lng_topbar_info" = "Info";
|
||||
@@ -376,6 +420,8 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_profile_clear_and_exit" = "Delete and exit";
|
||||
"lng_profile_leave_channel" = "Leave channel";
|
||||
"lng_profile_delete_channel" = "Delete channel";
|
||||
"lng_profile_leave_group" = "Leave group";
|
||||
"lng_profile_delete_group" = "Delete group";
|
||||
"lng_profile_search_messages" = "Search for messages";
|
||||
"lng_profile_block_user" = "Block user";
|
||||
"lng_profile_unblock_user" = "Unblock user";
|
||||
@@ -389,48 +435,61 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_profile_add_participant" = "Add Members";
|
||||
"lng_profile_delete_and_exit" = "Leave";
|
||||
"lng_profile_kick" = "Remove";
|
||||
"lng_profile_admin" = "admin";
|
||||
"lng_profile_sure_kick" = "Remove {user} from the group?";
|
||||
"lng_profile_sure_kick_channel" = "Remove {user} from the channel?";
|
||||
"lng_profile_sure_kick_admin" = "Remove {user} from administrators?";
|
||||
"lng_profile_loading" = "Loading..";
|
||||
"lng_profile_loading" = "Loading...";
|
||||
"lng_profile_shared_media" = "Shared media";
|
||||
"lng_profile_no_media" = "No media in this conversation.";
|
||||
"lng_profile_photos" = "{count:_not_used_|# photo|# photos} »";
|
||||
"lng_profile_photos_header" = "Photos overview";
|
||||
"lng_profile_videos" = "{count:_not_used_|# video file|# video files} »";
|
||||
"lng_profile_videos_header" = "Video files overview";
|
||||
"lng_profile_songs" = "{count:_not_used_|# audio file|# audio files} »";
|
||||
"lng_profile_songs_header" = "Audio files overview";
|
||||
"lng_profile_files" = "{count:_not_used_|# file|# files} »";
|
||||
"lng_profile_files_header" = "Files overview";
|
||||
"lng_profile_audios" = "{count:_not_used_|# voice message|# voice messages} »";
|
||||
"lng_profile_audios_header" = "Voice messages overview";
|
||||
"lng_profile_shared_links" = "{count:_not_used_|# shared link|# shared links} »";
|
||||
"lng_profile_shared_links_header" = "Shared links overview";
|
||||
"lng_profile_audio_files_header" = "Playlist";
|
||||
"lng_profile_copy_phone" = "Copy phone number";
|
||||
"lng_profile_copy_fullname" = "Copy name";
|
||||
|
||||
"lng_channel_add_admins" = "Add";
|
||||
"lng_channel_add_admins" = "New administrator";
|
||||
"lng_channel_add_members" = "Add members";
|
||||
"lng_channel_members" = "Members";
|
||||
"lng_channel_only_last_shown" = "Only the last {count:_not_used_|# member is|# members are} shown here";
|
||||
"lng_channel_admins" = "Administrators";
|
||||
"lng_channel_add_admin" = "Add Administrator";
|
||||
"lng_channel_admin_sure" = "Add {user} to administrators?";
|
||||
"lng_channel_admins_too_much" = "Sorry, you have reached the limit of the administrators. Please remove one administrator first.";
|
||||
|
||||
"lng_chat_all_members_admins" = "All Members Are Admins";
|
||||
"lng_chat_about_all_admins" = "Group members can add new members, edit name and photo of the group.";
|
||||
"lng_chat_about_admins" = "Group admins can add and remove members, edit name and photo of the group.";
|
||||
|
||||
"lng_participant_filter" = "Search";
|
||||
"lng_participant_invite" = "Invite";
|
||||
"lng_participant_invite_sorry" = "Sorry, you can only add the first\n{count} members to a channel personally.\n\nFrom now on, people will need\nto join via your invite link.";
|
||||
"lng_participant_invite_sorry" = "Sorry, you can only add the first {count:_not_used|# member|# members} to a channel personally.\n\nFrom now on, people will need to join via your invite link.";
|
||||
"lng_create_group_back" = "Back";
|
||||
"lng_create_group_next" = "Next";
|
||||
"lng_create_group_create" = "Create";
|
||||
"lng_create_group_title" = "New Group";
|
||||
"lng_create_group_about" = "Groups are ideal for smaller communities, they can have up to {count} members";
|
||||
"lng_create_group_about" = "Groups are ideal for limited communities,\nthey can have up to {count:_not_used|# member|# members}";
|
||||
"lng_create_channel_title" = "New Channel";
|
||||
"lng_create_channel_about" = "Channels are a tool for broadcasting your messages to unlimited audiences";
|
||||
"lng_create_public_channel_title" = "Public Channel";
|
||||
"lng_create_public_channel_about" = "Anyone can find the channel in search and join";
|
||||
"lng_create_private_channel_title" = "Private Channel";
|
||||
"lng_create_private_channel_about" = "Only people with a special invite link may join";
|
||||
"lng_create_public_group_title" = "Public Group";
|
||||
"lng_create_public_group_about" = "Anyone can find the group in search and join, chat history is available to everybody";
|
||||
"lng_create_private_group_title" = "Private Group";
|
||||
"lng_create_private_group_about" = "People can only join if they were invited or have an invite link";
|
||||
"lng_create_channel_comments" = "Enable Comments";
|
||||
"lng_create_channel_comments_about" = "If you enable comments, members will be able to discuss your posts in the channel";
|
||||
"lng_create_group_save" = "Save";
|
||||
"lng_create_group_skip" = "Skip";
|
||||
|
||||
"lng_create_channel_link_invalid" = "This link is invalid";
|
||||
@@ -444,22 +503,29 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_create_channel_crop" = "Select a square area for channel photo";
|
||||
|
||||
"lng_failed_add_participant" = "Could not add user. Please try again later.";
|
||||
"lng_failed_add_not_mutual" = "Sorry, if a person leaves a group, only a\nmutual contact can bring them back\n(they need to have your phone\nnumber, and you need theirs).";
|
||||
"lng_failed_add_not_mutual_channel" = "Sorry, if a person leaves a channel, only a\nmutual contact can bring them back\n(they need to have your phone\nnumber, and you need theirs).";
|
||||
"lng_failed_add_not_mutual" = "Sorry, if a person leaves a group, only a mutual contact can bring them back (they need to have your phone number, and you need theirs).";
|
||||
"lng_failed_add_not_mutual_channel" = "Sorry, if a person leaves a channel, only a mutual contact can bring them back (they need to have your phone number, and you need theirs).";
|
||||
|
||||
"lng_sure_delete_contact" = "Are you sure, you want to delete {contact} from your contact list?";
|
||||
"lng_sure_delete_history" = "Are you sure, you want to delete all message history with {contact}?\n\nThis action cannot be undone.";
|
||||
"lng_sure_delete_group_history" = "Are you sure, you want to delete all message history in «{group}»?\n\nThis action cannot be undone.";
|
||||
"lng_sure_delete_and_exit" = "Are you sure, you want to delete all message history and leave «{group}»?\n\nThis action cannot be undone.";
|
||||
"lng_sure_leave_channel" = "Are you sure, you want\nto leave this channel?";
|
||||
"lng_sure_delete_channel" = "Are you sure, you want\nto delete this channel?\n\nAll members will be removed\nand all messages will be lost.";
|
||||
"lng_sure_leave_channel" = "Are you sure, you want to leave\nthis channel?";
|
||||
"lng_sure_delete_channel" = "Are you sure, you want to delete this channel? All members will be removed and all messages will be lost.";
|
||||
"lng_sure_leave_group" = "Are you sure, you want to leave\nthis group? This action cannot be undone.";
|
||||
"lng_sure_delete_group" = "Are you sure, you want to delete this group? All members will be removed and all messages will be lost.";
|
||||
|
||||
"lng_message_empty" = "Empty Message";
|
||||
"lng_media_unsupported" = "Media Unsupported";
|
||||
"lng_message_unsupported" = "This message is not supported by your version of Telegram Desktop. Please update to the last version in Settings or install it from {link}";
|
||||
|
||||
"lng_action_add_user" = "{from} added {user}";
|
||||
"lng_action_add_users_many" = "{from} added {users}";
|
||||
"lng_action_add_users_and_one" = "{accumulated}, {user}";
|
||||
"lng_action_add_users_and_last" = "{accumulated} and {user}";
|
||||
"lng_action_add_you" = "{from} added you to this channel";
|
||||
"lng_action_you_joined" = "You joined this channel";
|
||||
"lng_action_add_you_group" = "{from} added you to this group";
|
||||
"lng_action_you_joined_group" = "You joined this group";
|
||||
"lng_action_kick_user" = "{from} removed {user}";
|
||||
"lng_action_user_left" = "{from} left the group";
|
||||
"lng_action_user_joined" = "{from} joined the group";
|
||||
@@ -473,15 +539,47 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_action_changed_title_channel" = "Channel name was changed to «{title}»";
|
||||
"lng_action_created_chat" = "{from} created group «{title}»";
|
||||
"lng_action_created_channel" = "Channel «{title}» created";
|
||||
"lng_action_group_migrate" = "The group was upgraded to a supergroup";
|
||||
"lng_action_pinned_message" = "{from} pinned «{text}»";
|
||||
"lng_action_pinned_media" = "{from} pinned {media}";
|
||||
"lng_action_pinned_media_photo" = "a photo";
|
||||
"lng_action_pinned_media_video" = "a video file";
|
||||
"lng_action_pinned_media_audio" = "an audio file";
|
||||
"lng_action_pinned_media_voice" = "a voice message";
|
||||
"lng_action_pinned_media_file" = "a file";
|
||||
"lng_action_pinned_media_gif" = "a GIF animation";
|
||||
"lng_action_pinned_media_contact" = "a contact information";
|
||||
"lng_action_pinned_media_location" = "a location mark";
|
||||
"lng_action_pinned_media_sticker" = "a sticker";
|
||||
|
||||
"lng_profile_migrate_reached" = "{count:_not_used_|# member|# members} limit reached";
|
||||
"lng_profile_migrate_about" = "If you'd like to go over this limit, you can upgrade your group to a supergroup. In supergroups:";
|
||||
"lng_profile_migrate_feature1" = "— The members limit is {count:_not_used_|# user|# users}";
|
||||
"lng_profile_migrate_feature2" = "— New members see the entire chat history";
|
||||
"lng_profile_migrate_feature3" = "— Admins delete messages for everyone";
|
||||
"lng_profile_migrate_feature4" = "— Notifications are muted by default";
|
||||
"lng_profile_migrate_button" = "Upgrade to supergroup";
|
||||
"lng_profile_migrate_sure" = "Are you sure you want to upgrade this group to supergroup? This action cannot be undone.";
|
||||
"lng_profile_convert_button" = "Convert to supergroup";
|
||||
"lng_profile_convert_title" = "Convert to supergroup";
|
||||
"lng_profile_convert_about" = "In supergroups:";
|
||||
"lng_profile_convert_feature1" = "— New members see the full message history";
|
||||
"lng_profile_convert_feature2" = "— Messages are deleted for all members";
|
||||
"lng_profile_convert_feature3" = "— Members can edit their own messages";
|
||||
"lng_profile_convert_feature4" = "— Creator can set a public link for the group";
|
||||
"lng_profile_convert_warning" = "{bold_start}Note:{bold_end} This action can not be undone";
|
||||
"lng_profile_convert_confirm" = "Convert";
|
||||
"lng_profile_add_more_after_upgrade" = "You will be able to add up to {count:_not_used_|# member|# members} after you upgrade your group to a supergroup.";
|
||||
|
||||
"lng_channel_comments_count" = "{count:_not_used_|# comment|# comments}";
|
||||
"lng_channel_hide_comments" = "Hide comments";
|
||||
"lng_channel_not_accessible" = "Sorry, this channel is not accessible.";
|
||||
"lng_group_not_accessible" = "Sorry, this group is not accessible.";
|
||||
|
||||
"lng_channels_too_much_public_existing" = "Sorry, you have created\ntoo many public channels already.\n\nPlease delete one first.";
|
||||
"lng_channels_too_much_public" = "Sorry, you have created\ntoo many public channels.\n\nYou can either create a private channel\nor delete one of your public channels first.";
|
||||
"lng_channels_too_much_public_existing" = "Sorry, you have created too many public channels already. Please delete one first.";
|
||||
"lng_channels_too_much_public" = "Sorry, you have created too many public channels.\n\nYou can either create a private channel\nor delete one of your public channels first.";
|
||||
|
||||
"lng_group_invite_bad_link" = "This invite link is broken\nor has expired.";
|
||||
"lng_group_invite_bad_link" = "This invite link is broken or has expired.";
|
||||
"lng_group_invite_want_join" = "Do you want to join the group «{title}»?";
|
||||
"lng_group_invite_want_join_channel" = "Do you want to join the channel «{title}»?";
|
||||
"lng_group_invite_join" = "Join";
|
||||
@@ -492,11 +590,15 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_group_invite_create_new" = "Revoke invite link";
|
||||
"lng_group_invite_about_new" = "Your previous link will be deactivated\nand we'll generate a new invite link for you.";
|
||||
"lng_group_invite_copied" = "Invite link copied to clipboard.";
|
||||
"lng_group_invite_no_room" = "Unable to join this group because there are\ntoo many members in it already.";
|
||||
"lng_group_invite_no_room" = "Unable to join this group because there are too many members in it already.";
|
||||
|
||||
"lng_channel_public_link_copied" = "Link copied to clipboard.";
|
||||
|
||||
"lng_forwarded_from" = "Forwarded from";
|
||||
"lng_forwarded" = "Forwarded from {user}";
|
||||
"lng_forwarded_channel" = "Forwarded from {channel}";
|
||||
"lng_forwarded_via" = "Forwarded from {user} via {inline_bot}";
|
||||
"lng_forwarded_channel_via" = "Forwarded from {channel} via {inline_bot}";
|
||||
"lng_forwarded_signed" = "{channel} ({user})";
|
||||
"lng_in_reply_to" = "In reply to";
|
||||
|
||||
"lng_attach_failed" = "Failed";
|
||||
@@ -506,6 +608,7 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_media_type" = "Media type";
|
||||
"lng_media_type_photos" = "Photos";
|
||||
"lng_media_type_videos" = "Video files";
|
||||
"lng_media_type_songs" = "Audio files";
|
||||
"lng_media_type_files" = "Files";
|
||||
"lng_media_type_audios" = "Voice messages";
|
||||
"lng_media_type_links" = "Shared links";
|
||||
@@ -516,51 +619,84 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_media_video" = "Video file";
|
||||
"lng_media_audio" = "Voice message";
|
||||
|
||||
"lng_media_auto_settings" = "Automatic media download settings";
|
||||
"lng_media_auto_photo" = "Automatic photo download";
|
||||
"lng_media_auto_audio" = "Automatic voice message download";
|
||||
"lng_media_auto_gif" = "Automatic GIF download";
|
||||
"lng_media_auto_private_chats" = "Private chats";
|
||||
"lng_media_auto_groups" = "Groups and channels";
|
||||
"lng_media_auto_play" = "Autoplay";
|
||||
|
||||
"lng_emoji_category0" = "Frequently used";
|
||||
"lng_emoji_category1" = "People";
|
||||
"lng_emoji_category2" = "Nature";
|
||||
"lng_emoji_category3" = "Food & Drink";
|
||||
"lng_emoji_category4" = "Celebration";
|
||||
"lng_emoji_category5" = "Activity";
|
||||
"lng_emoji_category6" = "Travel & Places";
|
||||
"lng_emoji_category7" = "Objects & Symbols";
|
||||
"lng_emoji_category4" = "Activity";
|
||||
"lng_emoji_category5" = "Travel & Places";
|
||||
"lng_emoji_category6" = "Objects";
|
||||
"lng_emoji_category7" = "Symbols & Flags";
|
||||
|
||||
"lng_switch_stickers" = "Stickers";
|
||||
"lng_switch_stickers_gifs" = "GIFs & Stickers";
|
||||
"lng_switch_emoji" = "Emoji";
|
||||
|
||||
"lng_saved_gifs" = "Saved GIFs";
|
||||
"lng_inline_bot_results" = "Results from {inline_bot}";
|
||||
"lng_inline_bot_no_results" = "No results";
|
||||
"lng_inline_bot_via" = "via {inline_bot}";
|
||||
|
||||
"lng_box_remove" = "Remove";
|
||||
|
||||
"lng_custom_stickers" = "Custom stickers";
|
||||
"lng_stickers_remove_pack" = "Remove «{sticker_pack}»?";
|
||||
"lng_stickers_add_pack" = "Add {count:_not_used_|# Sticker|# Stickers}";
|
||||
"lng_stickers_add_pack" = "Add stickers";
|
||||
"lng_stickers_share_pack" = "Share Stickers";
|
||||
"lng_stickers_not_found" = "Sticker pack not found.";
|
||||
"lng_stickers_copied" = "Sticker pack link copied to clipboard.";
|
||||
"lng_stickers_default_set" = "Great Minds";
|
||||
"lng_stickers_you_have" = "Manage and reorder sticker packs";
|
||||
"lng_stickers_packs" = "Sticker Packs";
|
||||
"lng_stickers_reorder" = "Click and drag to reorder sticker packs";
|
||||
"lng_stickers_remove" = "Delete";
|
||||
"lng_stickers_return" = "Undo";
|
||||
"lng_stickers_restore" = "Restore";
|
||||
"lng_stickers_count" = "{count:Loading...|# sticker|# stickers}";
|
||||
|
||||
"lng_in_dlg_photo" = "Photo";
|
||||
"lng_in_dlg_video" = "Video";
|
||||
"lng_in_dlg_video" = "Video file";
|
||||
"lng_in_dlg_audio_file" = "Audio file";
|
||||
"lng_in_dlg_contact" = "Contact";
|
||||
"lng_in_dlg_audio" = "Audio";
|
||||
"lng_in_dlg_audio" = "Voice message";
|
||||
"lng_in_dlg_file" = "File";
|
||||
"lng_in_dlg_sticker" = "Sticker";
|
||||
"lng_in_dlg_sticker_emoji" = "{emoji} (sticker)";
|
||||
|
||||
"lng_ban_user" = "Ban User";
|
||||
"lng_delete_all_from" = "Delete all from this user";
|
||||
"lng_report_spam" = "Report Spam";
|
||||
"lng_report_spam_hide" = "Hide";
|
||||
"lng_report_spam_thanks" = "Thank you for your report!";
|
||||
"lng_report_spam_sure" = "Are you sure you want\nto report spam from this user?";
|
||||
"lng_report_spam_sure_group" = "Are you sure you want\nto report spam in this group?";
|
||||
"lng_report_spam_sure_channel" = "Are you sure you want\nto report spam in this channel?";
|
||||
"lng_report_spam_sure" = "Are you sure you want to report spam from this user?";
|
||||
"lng_report_spam_sure_group" = "Are you sure you want to report spam in this group?";
|
||||
"lng_report_spam_sure_channel" = "Are you sure you want to report spam in this channel?";
|
||||
"lng_report_spam_ok" = "Report";
|
||||
"lng_cant_send_to_not_contact" = "Sorry, you can only send messages to\nmutual contacts at the moment. {more_info}";
|
||||
"lng_cant_invite_not_contact" = "Sorry, you can only add mutual contacts\nto groups at the moment. {more_info}";
|
||||
"lng_cant_invite_not_contact_channel" = "Sorry, you can only add mutual contacts\nto channels at the moment. {more_info}";
|
||||
"lng_cant_send_to_not_contact" = "Sorry, you can only send messages to\nmutual contacts at the moment.\n{more_info}";
|
||||
"lng_cant_invite_not_contact" = "Sorry, you can only add mutual contacts\nto groups at the moment.\n{more_info}";
|
||||
"lng_cant_invite_not_contact_channel" = "Sorry, you can only add mutual contacts\nto channels at the moment.\n{more_info}";
|
||||
"lng_cant_more_info" = "More info »";
|
||||
"lng_cant_invite_banned" = "Sorry, only admin can add this user.";
|
||||
"lng_cant_invite_privacy" = "Sorry, you cannot add this user to groups because of the privacy settings.";
|
||||
"lng_cant_invite_privacy_channel" = "Sorry, you cannot add this user to channels because of the privacy settings.";
|
||||
"lng_cant_do_this" = "Sorry, this action is unavailable.";
|
||||
|
||||
"lng_send_button" = "Send";
|
||||
"lng_message_ph" = "Write a message..";
|
||||
"lng_comment_ph" = "Write a comment..";
|
||||
"lng_broadcast_ph" = "Broadcast a message..";
|
||||
"lng_message_ph" = "Write a message...";
|
||||
"lng_comment_ph" = "Write a comment...";
|
||||
"lng_broadcast_ph" = "Broadcast a message...";
|
||||
"lng_broadcast_silent_ph" = "Silent broadcast...";
|
||||
"lng_record_cancel" = "Release outside this field to cancel";
|
||||
"lng_will_be_notified" = "Members will be notified when you post";
|
||||
"lng_wont_be_notified" = "Members will not be notified when you post";
|
||||
"lng_empty_history" = "";
|
||||
"lng_willbe_history" = "Please select a chat to start messaging";
|
||||
"lng_message_with_from" = "[c]{from}:[/c] {message}";
|
||||
@@ -585,43 +721,46 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_user_typing" = "{user} is typing";
|
||||
"lng_users_typing" = "{user} and {second_user} are typing";
|
||||
"lng_many_typing" = "{count:_not_used_|# is|# are} typing";
|
||||
"lng_send_action_record_video" = "recording video";
|
||||
"lng_user_action_record_video" = "{user} is recording video";
|
||||
"lng_send_action_upload_video" = "sending video";
|
||||
"lng_user_action_upload_video" = "{user} is sending video";
|
||||
"lng_send_action_record_audio" = "recording audio";
|
||||
"lng_user_action_record_audio" = "{user} is recording audio";
|
||||
"lng_send_action_upload_audio" = "sending audio";
|
||||
"lng_user_action_upload_audio" = "{user} is sending audio";
|
||||
"lng_send_action_upload_photo" = "sending photo";
|
||||
"lng_user_action_upload_photo" = "{user} is sending photo";
|
||||
"lng_send_action_upload_file" = "sending file";
|
||||
"lng_user_action_upload_file" = "{user} is sending file";
|
||||
"lng_send_action_geo_location" = "picking location";
|
||||
"lng_user_action_geo_location" = "{user} is picking location";
|
||||
"lng_send_action_choose_contact" = "choosing contact";
|
||||
"lng_user_action_choose_contact" = "{user} is choosing contact";
|
||||
"lng_send_action_record_video" = "recording a video";
|
||||
"lng_user_action_record_video" = "{user} is recording a video";
|
||||
"lng_send_action_upload_video" = "sending a video";
|
||||
"lng_user_action_upload_video" = "{user} is sending a video";
|
||||
"lng_send_action_record_audio" = "recording a voice message";
|
||||
"lng_user_action_record_audio" = "{user} is recording a voice message";
|
||||
"lng_send_action_upload_audio" = "sending a voice message";
|
||||
"lng_user_action_upload_audio" = "{user} is sending a voice message";
|
||||
"lng_send_action_upload_photo" = "sending a photo";
|
||||
"lng_user_action_upload_photo" = "{user} is sending a photo";
|
||||
"lng_send_action_upload_file" = "sending a file";
|
||||
"lng_user_action_upload_file" = "{user} is sending a file";
|
||||
"lng_send_action_geo_location" = "picking a location";
|
||||
"lng_user_action_geo_location" = "{user} is picking a location";
|
||||
"lng_send_action_choose_contact" = "choosing a contact";
|
||||
"lng_user_action_choose_contact" = "{user} is choosing a contact";
|
||||
"lng_unread_bar" = "{count:_not_used_|# unread message|# unread messages}";
|
||||
|
||||
"lng_maps_point" = "Location";
|
||||
"lng_save_photo" = "Save image";
|
||||
"lng_save_video" = "Save video";
|
||||
"lng_save_audio" = "Save audio";
|
||||
"lng_save_video" = "Save video file";
|
||||
"lng_save_audio_file" = "Save audio file";
|
||||
"lng_save_audio" = "Save voice message";
|
||||
"lng_save_file" = "Save file";
|
||||
"lng_save_downloaded" = "{ready} / {total} {mb}";
|
||||
"lng_duration_and_size" = "{duration}, {size}";
|
||||
"lng_duration_played" = "{played} / {duration}";
|
||||
"lng_date_and_duration" = "{date}, {duration}";
|
||||
"lng_choose_images" = "Choose images";
|
||||
|
||||
"lng_context_open_link" = "Open Link";
|
||||
"lng_context_view_profile" = "View profile";
|
||||
"lng_context_view_group" = "View group info";
|
||||
"lng_context_view_channel" = "View channel info";
|
||||
|
||||
"lng_context_copy_link" = "Copy Link";
|
||||
"lng_context_open_email" = "Write to this address";
|
||||
"lng_context_copy_post_link" = "Copy Post Link";
|
||||
"lng_context_copy_email" = "Copy email address";
|
||||
"lng_context_open_hashtag" = "Search by hashtag";
|
||||
"lng_context_copy_hashtag" = "Copy hashtag";
|
||||
"lng_context_open_mention" = "Open profile";
|
||||
"lng_context_copy_mention" = "Copy username";
|
||||
"lng_context_open_image" = "Open Image";
|
||||
"lng_context_save_image" = "Save Image As..";
|
||||
"lng_context_save_image" = "Save Image As...";
|
||||
"lng_context_forward_image" = "Forward Image";
|
||||
"lng_context_delete_image" = "Delete Image";
|
||||
"lng_context_copy_image" = "Copy Image";
|
||||
@@ -629,23 +768,25 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_context_cancel_download" = "Cancel Download";
|
||||
"lng_context_show_in_folder" = "Show in Folder";
|
||||
"lng_context_show_in_finder" = "Show in Finder";
|
||||
"lng_context_open_video" = "Open Video";
|
||||
"lng_context_save_video" = "Save Video As..";
|
||||
"lng_context_open_audio" = "Open Audio";
|
||||
"lng_context_save_audio" = "Save Audio As..";
|
||||
"lng_context_save_video" = "Save Video File As...";
|
||||
"lng_context_save_audio_file" = "Save Audio File As...";
|
||||
"lng_context_save_audio" = "Save Voice Message As...";
|
||||
"lng_context_pack_info" = "Pack Info";
|
||||
"lng_context_pack_add" = "Add Stickers";
|
||||
"lng_context_open_file" = "Open File";
|
||||
"lng_context_save_file" = "Save File As..";
|
||||
"lng_context_save_file" = "Save File As...";
|
||||
"lng_context_forward_file" = "Forward File";
|
||||
"lng_context_delete_file" = "Delete File";
|
||||
"lng_context_close_file" = "Close File";
|
||||
"lng_context_copy_text" = "Copy Text";
|
||||
"lng_context_save_gif" = "Save GIF";
|
||||
"lng_context_to_msg" = "Go To Message";
|
||||
"lng_context_reply_msg" = "Reply";
|
||||
"lng_context_edit_msg" = "Edit";
|
||||
"lng_context_forward_msg" = "Forward Message";
|
||||
"lng_context_delete_msg" = "Delete Message";
|
||||
"lng_context_select_msg" = "Select Message";
|
||||
"lng_context_pin_msg" = "Pin Message";
|
||||
"lng_context_unpin_msg" = "Unpin Message";
|
||||
"lng_context_cancel_upload" = "Cancel Upload";
|
||||
"lng_context_copy_selected" = "Copy Selected Text";
|
||||
"lng_context_forward_selected" = "Forward Selected";
|
||||
@@ -655,32 +796,39 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_really_send_file" = "Do you want to send this file?";
|
||||
"lng_really_share_contact" = "Do you want to share this contact?";
|
||||
"lng_send_image_compressed" = "Send compressed image";
|
||||
"lng_send_image_empty" = "Could not send an empty file :(";
|
||||
"lng_send_image_too_large" = "Could not send a file, because it is larger than 1.5 GB :(";
|
||||
"lng_send_folder" = "Could not send «{name}» because it is a directory :(";
|
||||
|
||||
"lng_forward_choose" = "Choose recipient..";
|
||||
"lng_forward_choose" = "Choose recipient...";
|
||||
"lng_forward_cant" = "Sorry, no way to forward here :(";
|
||||
"lng_forward_confirm" = "Forward to {recipient}?";
|
||||
"lng_forward_share_contact" = "Share contact to {recipient}?";
|
||||
"lng_forward_send_file_confirm" = "Send «{name}» to {recipient}?";
|
||||
"lng_forward_send_files_confirm" = "Send selected files to {recipient}?";
|
||||
"lng_forward" = "Forward";
|
||||
"lng_forward_send" = "Send";
|
||||
"lng_forward_messages" = "{count:_not_used_|Forwarded message|# forwarded messages}";
|
||||
"lng_forwarding_from" = "{user} and {count:_not_used_|# other|# others}";
|
||||
"lng_forwarding_from_two" = "{user} and {second_user}";
|
||||
|
||||
"lng_share_cant" = "Sorry, no way to share here :(";
|
||||
"lng_reply_cant" = "Sorry, no way to reply to an old message in supergroup :(";
|
||||
"lng_reply_cant_forward" = "Sorry, no way to reply to an old message in supergroup :( Do you wish to forward it and add your comment?";
|
||||
|
||||
"lng_contact_phone" = "Phone number";
|
||||
"lng_enter_contact_data" = "New Contact";
|
||||
"lng_edit_group_title" = "Edit group name";
|
||||
"lng_edit_contact_title" = "Edit contact name";
|
||||
"lng_edit_channel_title" = "Edit channel";
|
||||
"lng_edit_sign_messages" = "Sign messages";
|
||||
"lng_edit_group" = "Edit group";
|
||||
"lng_edit_self_title" = "Edit your name";
|
||||
"lng_confirm_contact_data" = "New Contact";
|
||||
"lng_add_contact" = "Create";
|
||||
"lng_add_contact_button" = "Add Contact";
|
||||
"lng_add_contact_button" = "New contact";
|
||||
"lng_contacts_header" = "Contacts";
|
||||
"lng_contact_not_joined" = "Unfortunately {name} did not join Telegram yet, but you can send your friend an invitation.\n\nWe will notify you about any of your contacts who is joining Telegram.";
|
||||
"lng_try_other_contact" = "Try other";
|
||||
"lng_contacts_done" = "Close";
|
||||
"lng_create_group_link" = "Link";
|
||||
"lng_create_group_invite_link" = "Invite link";
|
||||
"lng_create_group_photo" = "Set Photo";
|
||||
@@ -698,20 +846,24 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
"lng_selected_delete" = "Delete";
|
||||
"lng_selected_forward" = "Forward";
|
||||
"lng_selected_count" = "{count:_not_used_|# message|# messages}";
|
||||
"lng_selected_cancel_sure_this" = "Do you want to cancel this upload?";
|
||||
"lng_selected_cancel_sure_this" = "Cancel uploading?";
|
||||
"lng_selected_upload_stop" = "Stop";
|
||||
"lng_selected_delete_sure_this" = "Do you want to delete this message?";
|
||||
"lng_selected_delete_sure" = "Do you want to delete {count:_not_used_|# message|# messages}?";
|
||||
"lng_selected_delete_confirm" = "Delete";
|
||||
"lng_box_delete" = "Delete";
|
||||
"lng_box_leave" = "Leave";
|
||||
|
||||
"lng_about_version" = "Version {version}";
|
||||
"lng_about_text" = "Official free messaging app based on [a href=\"https://core.telegram.org/mtproto\"]MTProto[/a] and\n[a href=\"https://core.telegram.org/api\"]Telegram API[/a] for speed and security\n\nThis software is licensed under [a href=\"https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE\"]GNU GPL[/a] version 3,\nsource code is available on [a href=\"https://github.com/telegramdesktop/tdesktop\"]GitHub[/a].";
|
||||
"lng_about_version" = "version {version}";
|
||||
"lng_about_text_1" = "Official free messaging app based on [a href=\"https://core.telegram.org/api\"]Telegram API[/a]\nfor speed and security";
|
||||
"lng_about_text_2" = "This software is licensed under [a href=\"https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE\"]GNU GPL[/a] version 3.\nSource code is available on [a href=\"https://github.com/telegramdesktop/tdesktop\"]GitHub[/a].";
|
||||
"lng_about_text_3" = "Visit {faq_open}Telegram FAQ{faq_close} for more info.";
|
||||
"lng_about_done" = "Done";
|
||||
|
||||
"lng_search_found_results" = "{count:No messages found|Found # message|Found # messages}";
|
||||
"lng_search_global_results" = "Global search results";
|
||||
|
||||
"lng_media_save_progress" = "{ready} of {total} {mb}";
|
||||
"lng_mediaview_save_as" = "Save As..";
|
||||
"lng_mediaview_save_as" = "Save As...";
|
||||
"lng_mediaview_copy" = "Copy";
|
||||
"lng_mediaview_forward" = "Forward";
|
||||
"lng_mediaview_delete" = "Delete";
|
||||
@@ -734,7 +886,7 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
|
||||
"lng_new_version_wrap" = "Telegram Desktop was updated to version {version}\n\n{changes}\n\nFull version history is available here:\n{link}";
|
||||
"lng_new_version_minor" = "— Bug fixes and other minor improvements";
|
||||
"lng_new_version_text" = "— Introducing Channels — a great new way to broadcast your messages to unlimited audiences\n— Other fixes and improvements\n\nMore about channels here: {link}";
|
||||
"lng_new_version_text" = "PUBLIC GROUPS, PINNED POSTS, 5,000 MEMBERS\n\n— Groups can now have 5,000 members (up from 1,000)\n— Groups of any size may be converted to supergroups\n\nNew tools for supergroup admins:\n\n— Make your group public by setting up a public link – anyone will be able to view the chat and join it\n— Pin messages to keep important updates visible and notify all members\n— Select messages to delete, report as spam, block users, or remove all messages from a user\n\nMore about this update:\n{link}";
|
||||
|
||||
"lng_menu_insert_unicode" = "Insert Unicode control character";
|
||||
|
||||
|
||||
@@ -12,14 +12,18 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
textStyle {
|
||||
lnkFlags: font;
|
||||
lnkOverFlags: font;
|
||||
lnkColor: color;
|
||||
lnkDownColor: color;
|
||||
linkFlags: font;
|
||||
linkFlagsOver: font;
|
||||
linkFg: color;
|
||||
linkFgDown: color;
|
||||
monoFg: color;
|
||||
selectBg: color;
|
||||
selectOverlay: color;
|
||||
lineHeight: number;
|
||||
@@ -195,27 +199,6 @@ countryInput {
|
||||
align: align;
|
||||
}
|
||||
|
||||
countryList {
|
||||
notFoundColor: color;
|
||||
notFoundFont: font;
|
||||
|
||||
verticalMargin: number;
|
||||
|
||||
font: font;
|
||||
codeFont: font;
|
||||
rowHeight: number;
|
||||
color: color;
|
||||
codeColor: color;
|
||||
bgColor: color;
|
||||
bgHovered: color;
|
||||
margin: number;
|
||||
codeWidth: number;
|
||||
|
||||
borderMargin: number;
|
||||
borderColor: color;
|
||||
borderWidth: number;
|
||||
}
|
||||
|
||||
slider {
|
||||
color: color;
|
||||
thikness: number;
|
||||
@@ -260,6 +243,49 @@ dropdown {
|
||||
width: number;
|
||||
}
|
||||
|
||||
PopupMenu {
|
||||
skip: number;
|
||||
|
||||
shadow: sprite;
|
||||
shadowShift: number;
|
||||
|
||||
itemBg: color;
|
||||
itemBgOver: color;
|
||||
itemFg: color;
|
||||
itemFgOver: color;
|
||||
itemFgDisabled: color;
|
||||
itemFgShortcut: color;
|
||||
itemFgShortcutOver: color;
|
||||
itemFgShortcutDisabled: color;
|
||||
itemPadding: margins;
|
||||
itemFont: font;
|
||||
|
||||
separatorPadding: margins;
|
||||
separatorWidth: number;
|
||||
separatorFg: color;
|
||||
|
||||
arrow: sprite;
|
||||
|
||||
duration: number;
|
||||
|
||||
widthMin: number;
|
||||
widthMax: number;
|
||||
}
|
||||
|
||||
Tooltip {
|
||||
textBg: color;
|
||||
textFg: color;
|
||||
textFont: font;
|
||||
textBorder: color;
|
||||
textPadding: margins;
|
||||
|
||||
shift: point;
|
||||
skip: number;
|
||||
|
||||
widthMax: number;
|
||||
linesMax: number;
|
||||
}
|
||||
|
||||
botKeyboardButton {
|
||||
margin: number;
|
||||
padding: number;
|
||||
@@ -268,6 +294,88 @@ botKeyboardButton {
|
||||
downTextTop: number;
|
||||
}
|
||||
|
||||
BoxButton {
|
||||
textFg: color;
|
||||
textFgOver: color;
|
||||
textBg: color; // rect of textBg with rounded rect of textBgOver upon it
|
||||
textBgOver: color;
|
||||
|
||||
width: number;
|
||||
height: number;
|
||||
|
||||
textTop: number;
|
||||
|
||||
font: font;
|
||||
duration: number;
|
||||
}
|
||||
|
||||
Checkbox {
|
||||
textFg: color;
|
||||
textBg: color;
|
||||
|
||||
checkFg: color;
|
||||
checkFgOver: color;
|
||||
checkFgActive: color;
|
||||
|
||||
width: number;
|
||||
height: number;
|
||||
|
||||
textPosition: point;
|
||||
diameter: number;
|
||||
thickness: number;
|
||||
checkIcon: sprite;
|
||||
|
||||
font: font;
|
||||
duration: number;
|
||||
}
|
||||
|
||||
Radiobutton {
|
||||
textFg: color;
|
||||
textBg: color;
|
||||
|
||||
checkFg: color;
|
||||
checkFgOver: color;
|
||||
checkFgActive: color;
|
||||
|
||||
width: number;
|
||||
height: number;
|
||||
|
||||
textPosition: point;
|
||||
diameter: number;
|
||||
thickness: number;
|
||||
checkSkip: number;
|
||||
|
||||
font: font;
|
||||
duration: number;
|
||||
}
|
||||
|
||||
InputArea {
|
||||
textFg: color;
|
||||
textMargins: margins;
|
||||
|
||||
placeholderFg: color;
|
||||
placeholderFgActive: color;
|
||||
placeholderMargins: margins;
|
||||
placeholderAlign: align;
|
||||
placeholderShift: number;
|
||||
|
||||
duration: number;
|
||||
|
||||
borderFg: color;
|
||||
borderFgActive: color;
|
||||
borderFgError: color;
|
||||
|
||||
border: number;
|
||||
borderActive: number;
|
||||
borderError: number;
|
||||
|
||||
font: font;
|
||||
|
||||
width: number;
|
||||
heightMin: number;
|
||||
heightMax: number;
|
||||
}
|
||||
|
||||
InputField {
|
||||
textFg: color;
|
||||
textMargins: margins;
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include <QtCore/QMap>
|
||||
#include <QtCore/QVector>
|
||||
@@ -23,7 +26,6 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
#include <QtCore/QDir>
|
||||
#include <QtCore/QRegularExpression>
|
||||
#include <QtGui/QImage>
|
||||
#include <QtGui/QPixmap>
|
||||
#include <QtGui/QPainter>
|
||||
#include <iostream>
|
||||
#include <exception>
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include "genlang.h"
|
||||
|
||||
@@ -186,7 +189,7 @@ void readKeyValue(const char *&from, const char *end) {
|
||||
|
||||
if (*from == ':') {
|
||||
start = ++from;
|
||||
|
||||
|
||||
QVector<QString> &counted(keysCounted[varName][tagName]);
|
||||
QByteArray subvarValue;
|
||||
bool foundtag = false;
|
||||
@@ -259,7 +262,7 @@ void readKeyValue(const char *&from, const char *end) {
|
||||
}
|
||||
}
|
||||
|
||||
QString escapeCpp(const QByteArray &key, QString value, bool wideChar) {
|
||||
QString escapeCpp(const QByteArray &key, QString value) {
|
||||
if (value.isEmpty()) return "QString()";
|
||||
|
||||
QString res;
|
||||
@@ -271,25 +274,13 @@ QString escapeCpp(const QByteArray &key, QString value, bool wideChar) {
|
||||
res.append('"');
|
||||
instr = false;
|
||||
}
|
||||
res.append(' ');
|
||||
if (wideChar) {
|
||||
res.append('L').append('"').append('\\').append('x').append(QString("%1").arg(ch->unicode(), 4, 16, QChar('0'))).append('"');
|
||||
} else {
|
||||
res.append('"');
|
||||
QByteArray utf(QString(*ch).toUtf8());
|
||||
for (const unsigned char *uch = (const unsigned char *)utf.constData(), *ue = (const unsigned char *)utf.constData() + utf.size(); uch != ue; ++uch) {
|
||||
res.append('\\').append('x').append(QString("%1").arg(ushort(*uch), 2, 16, QChar('0')));
|
||||
}
|
||||
res.append('"');
|
||||
}
|
||||
res.append(' ').append('u').append('"').append('\\').append('x').append(QString("%1").arg(ch->unicode(), 4, 16, QChar('0'))).append('"');
|
||||
} else {
|
||||
if (!instr) {
|
||||
res.append(' ');
|
||||
if (wideChar) res.append('L');
|
||||
res.append('"');
|
||||
instr = true;
|
||||
}
|
||||
if (ch->unicode() == '\\' || ch->unicode() == '\n' || ch->unicode() == '\r' || ch->unicode() == '"') {
|
||||
if (!instr) {
|
||||
res.append(' ').append('u').append('"');
|
||||
instr = true;
|
||||
}
|
||||
res.append('\\');
|
||||
if (ch->unicode() == '\\' || ch->unicode() == '"') {
|
||||
res.append(*ch);
|
||||
@@ -303,35 +294,36 @@ QString escapeCpp(const QByteArray &key, QString value, bool wideChar) {
|
||||
if (ch + 3 >= e || (ch + 1)->unicode() != TextCommandLangTag || (ch + 2)->unicode() > 0x007F || (ch + 2)->unicode() < 0x0020 || *(ch + 3) != TextCommand) {
|
||||
throw Exception(QString("Bad value for key '%1'").arg(QLatin1String(key)));
|
||||
} else {
|
||||
if (instr) {
|
||||
res.append('"');
|
||||
instr = false;
|
||||
}
|
||||
res.append(' ').append('u').append('"');
|
||||
res.append('\\').append('x').append(QString("%1").arg(ch->unicode(), 2, 16, QChar('0')));
|
||||
res.append('\\').append('x').append(QString("%1").arg((ch + 1)->unicode(), 2, 16, QChar('0')));
|
||||
res.append('\\').append('x').append(QString("%1").arg((ch + 2)->unicode(), 2, 16, QChar('0')));
|
||||
res.append('\\').append('x').append(QString("%1").arg((ch + 3)->unicode(), 2, 16, QChar('0')));
|
||||
res.append('"');
|
||||
ch += 3;
|
||||
}
|
||||
} else {
|
||||
throw Exception(QString("Bad value for key '%1'").arg(QLatin1String(key)));
|
||||
}
|
||||
} else {
|
||||
if (!instr) {
|
||||
res.append(' ').append('u').append('"');
|
||||
instr = true;
|
||||
}
|
||||
res.append(*ch);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (instr) res.append('"');
|
||||
return (wideChar ? "qsl(" : "QString::fromUtf8(") + res.mid(wideChar ? 2 : 1) + ")";
|
||||
return "qsl(" + res.mid(1) + ")";
|
||||
}
|
||||
|
||||
void writeCppKey(QTextStream &tcpp, const QByteArray &key, const QString &val) {
|
||||
QString wide = escapeCpp(key, val, true), utf = escapeCpp(key, val, false);
|
||||
if (wide.indexOf(" L\"") < 0) {
|
||||
tcpp << "\t\t\tset(" << key << ", " << wide << ");\n";
|
||||
} else {
|
||||
tcpp << "#ifdef Q_OS_WIN\n";
|
||||
tcpp << "\t\t\tset(" << key << ", " << wide << ");\n";
|
||||
tcpp << "#else\n";
|
||||
tcpp << "\t\t\tset(" << key << ", " << utf << ");\n";
|
||||
tcpp << "#endif\n";
|
||||
}
|
||||
tcpp << "\t\t\tset(" << key << ", " << escapeCpp(key, val) << ");\n";
|
||||
}
|
||||
|
||||
bool genLang(const QString &lang_in, const QString &lang_out) {
|
||||
@@ -399,7 +391,7 @@ bool genLang(const QString &lang_in, const QString &lang_out) {
|
||||
th.setCodec("ISO 8859-1");
|
||||
th << "\
|
||||
/*\n\
|
||||
Created from \'/Resources/lang.txt\' by \'/MetaLang\' project\n\
|
||||
Created from \'/Resources/lang.strings\' by \'/MetaLang\' project\n\
|
||||
\n\
|
||||
WARNING! All changes made in this file will be lost!\n\
|
||||
\n\
|
||||
@@ -416,8 +408,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of\n\
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n\
|
||||
GNU General Public License for more details.\n\
|
||||
\n\
|
||||
In addition, as a special exception, the copyright holders give permission\n\
|
||||
to link the code of portions of this program with the OpenSSL library.\n\
|
||||
\n\
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE\n\
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org\n\
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org\n\
|
||||
*/\n";
|
||||
th << "#pragma once\n\n";
|
||||
|
||||
@@ -480,7 +475,7 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org\n\
|
||||
|
||||
tcpp << "\
|
||||
/*\n\
|
||||
Created from \'/Resources/lang.txt\' by \'/MetaLang\' project\n\
|
||||
Created from \'/Resources/lang.strings\' by \'/MetaLang\' project\n\
|
||||
\n\
|
||||
WARNING! All changes made in this file will be lost!\n\
|
||||
\n\
|
||||
@@ -497,8 +492,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of\n\
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n\
|
||||
GNU General Public License for more details.\n\
|
||||
\n\
|
||||
In addition, as a special exception, the copyright holders give permission\n\
|
||||
to link the code of portions of this program with the OpenSSL library.\n\
|
||||
\n\
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE\n\
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org\n\
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org\n\
|
||||
*/\n";
|
||||
tcpp << "#include \"stdafx.h\"\n#include \"lang.h\"\n\n";
|
||||
tcpp << "namespace {\n";
|
||||
@@ -608,13 +606,22 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org\n\
|
||||
++depth;
|
||||
current += ich;
|
||||
|
||||
if (tag == current) {
|
||||
bool exact = (tag == current);
|
||||
if (exact) {
|
||||
tcpp << tab.repeated(depth + 1) << "if (ch + " << depth << " == e) {\n";
|
||||
tcpp << tab.repeated(depth + 1) << "\treturn lt_" << tag << ";\n";
|
||||
tcpp << tab.repeated(depth + 1) << "}\n";
|
||||
}
|
||||
|
||||
tcpp << tab.repeated(depth + 1) << "if (ch + " << depth << " < e) switch (*(ch + " << depth << ")) {\n";
|
||||
QByteArray nexttag = j.key();
|
||||
if (exact && depth > 0 && nexttag.mid(0, depth) != current) {
|
||||
current.chop(1);
|
||||
--depth;
|
||||
tcpp << tab.repeated(depth + 1) << "break;\n";
|
||||
break;
|
||||
} else {
|
||||
tcpp << tab.repeated(depth + 1) << "if (ch + " << depth << " < e) switch (*(ch + " << depth << ")) {\n";
|
||||
}
|
||||
} while (true);
|
||||
++j;
|
||||
}
|
||||
@@ -639,7 +646,7 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org\n\
|
||||
tcpp << "\tswitch (*(ch + " << depth << ")) {\n";
|
||||
for (LangKeys::const_iterator i = keys.cbegin(), j = i + 1, e = keys.cend(); i != e; ++i) {
|
||||
QByteArray key = i.key();
|
||||
while (key.mid(0, depth) != current) {
|
||||
while (depth > 0 && key.mid(0, depth) != current) {
|
||||
tcpp << tab.repeated(depth - 3) << "}\n";
|
||||
current.chop(1);
|
||||
--depth;
|
||||
@@ -647,7 +654,7 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org\n\
|
||||
}
|
||||
do {
|
||||
if (key == current) break;
|
||||
|
||||
|
||||
char ich = i.key().at(current.size());
|
||||
tcpp << tab.repeated(current.size() - 3) << "case '" << ich << "':\n";
|
||||
if (j == e || ich != ((j.key().size() > depth) ? j.key().at(depth) : 0)) {
|
||||
@@ -663,13 +670,22 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org\n\
|
||||
++depth;
|
||||
current += ich;
|
||||
|
||||
if (key == current) {
|
||||
bool exact = (key == current);
|
||||
if (exact) {
|
||||
tcpp << tab.repeated(depth - 3) << "if (ch + " << depth << " == e) {\n";
|
||||
tcpp << tab.repeated(depth - 3) << "\treturn " << key << (keysTags[key].isEmpty() ? "" : "__tagged") << ";\n";
|
||||
tcpp << tab.repeated(depth - 3) << "}\n";
|
||||
}
|
||||
|
||||
tcpp << tab.repeated(depth - 3) << "if (ch + " << depth << " < e) switch (*(ch + " << depth << ")) {\n";
|
||||
QByteArray nextkey = j.key();
|
||||
if (exact && depth > 0 && nextkey.mid(0, depth) != current) {
|
||||
current.chop(1);
|
||||
--depth;
|
||||
tcpp << tab.repeated(depth - 3) << "break;\n";
|
||||
break;
|
||||
} else {
|
||||
tcpp << tab.repeated(depth - 3) << "if (ch + " << depth << " < e) switch (*(ch + " << depth << ")) {\n";
|
||||
}
|
||||
} while (true);
|
||||
++j;
|
||||
}
|
||||
@@ -709,16 +725,25 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org\n\
|
||||
tcpp << "\tif (index >= lngtags_max_counted_values) return lngkeys_cnt;\n\n";
|
||||
if (!tags.isEmpty()) {
|
||||
tcpp << "\tswitch (key) {\n";
|
||||
for (int i = 0, l = keysOrder.size(); i < l; ++i) {
|
||||
QVector<QByteArray> &tagsList(keysTags[keysOrder[i]]);
|
||||
for (auto key : keysOrder) {
|
||||
QVector<QByteArray> &tagsList(keysTags[key]);
|
||||
if (tagsList.isEmpty()) continue;
|
||||
|
||||
QMap<QByteArray, QVector<QString> > &countedTags(keysCounted[keysOrder[i]]);
|
||||
tcpp << "\tcase " << keysOrder[i] << "__tagged: {\n";
|
||||
QMap<QByteArray, QVector<QString> > &countedTags(keysCounted[key]);
|
||||
bool hasCounted = false;
|
||||
for (auto tag : tagsList) {
|
||||
if (!countedTags[tag].isEmpty()) {
|
||||
hasCounted = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!hasCounted) continue;
|
||||
|
||||
tcpp << "\tcase " << key << "__tagged: {\n";
|
||||
tcpp << "\t\tswitch (tag) {\n";
|
||||
for (int j = 0, s = tagsList.size(); j < s; ++j) {
|
||||
if (!countedTags[tagsList[j]].isEmpty()) {
|
||||
tcpp << "\t\tcase lt_" << tagsList[j] << ": return LangKey(" << keysOrder[i] << "__" << tagsList[j] << "0 + index);\n";
|
||||
for (auto tag : tagsList) {
|
||||
if (!countedTags[tag].isEmpty()) {
|
||||
tcpp << "\t\tcase lt_" << tag << ": return LangKey(" << key << "__" << tag << "0 + index);\n";
|
||||
}
|
||||
}
|
||||
tcpp << "\t\t}\n";
|
||||
@@ -726,7 +751,7 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org\n\
|
||||
}
|
||||
tcpp << "\t}\n\n";
|
||||
}
|
||||
tcpp << "\treturn lngkeys_cnt;";
|
||||
tcpp << "\treturn lngkeys_cnt;\n";
|
||||
tcpp << "}\n\n";
|
||||
|
||||
tcpp << "bool LangLoader::feedKeyValue(LangKey key, const QString &value) {\n";
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include <QtCore/QMap>
|
||||
#include <QtCore/QVector>
|
||||
@@ -21,14 +24,12 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
#include <QtCore/QDir>
|
||||
#include <QtCore/QRegularExpression>
|
||||
#include <QtGui/QImage>
|
||||
#include <QtGui/QPixmap>
|
||||
#include <QtGui/QPainter>
|
||||
#include <iostream>
|
||||
#include <exception>
|
||||
#include <QtCore/QTextStream>
|
||||
#include <QtCore/QString>
|
||||
#include <QtCore/QCoreApplication>
|
||||
#include <QtGui/QGuiApplication>
|
||||
|
||||
using std::string;
|
||||
using std::cout;
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include "genstyles.h"
|
||||
|
||||
@@ -374,8 +377,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of\n\
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n\
|
||||
GNU General Public License for more details.\n\
|
||||
\n\
|
||||
In addition, as a special exception, the copyright holders give permission\n\
|
||||
to link the code of portions of this program with the OpenSSL library.\n\
|
||||
\n\
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE\n\
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org\n\
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org\n\
|
||||
*/\n";
|
||||
tout << "#pragma once\n\n#include \"style.h\"\n\nnamespace style {\n";
|
||||
for (int i = 0, l = byIndex.size(); i < l; ++i) {
|
||||
@@ -447,7 +453,6 @@ static const int variants[] = { 0, 2, 3, 4 }, variantsCount = sizeof(variants) /
|
||||
static const char *variantNames[] = { "dbisOne", "dbisOneAndQuarter", "dbisOneAndHalf", "dbisTwo" };
|
||||
|
||||
static const char *variantPostfixes[] = { "", "_125x", "_150x", "_200x" };
|
||||
QPixmap *spriteMax = 0;
|
||||
QImage *variantSprites = 0;
|
||||
int *spriteWidths = 0;
|
||||
QImage *variantGrids = 0;
|
||||
@@ -847,8 +852,7 @@ ScalarValue prepareSprite(int variant, const char *&text, const char *end) {
|
||||
QImage lastCopy = variantSprites[variantsCount - 1].copy(adjustPx(varLast, sprite.x(), true), adjustPx(varLast, sprite.y(), true), adjustPx(varLast, sprite.width(), true), adjustPx(varLast, sprite.height(), true));
|
||||
for (int i = 1; i < variantsCount - 1; ++i) {
|
||||
QPainter p(&variantSprites[i]);
|
||||
QPixmap copy = QPixmap::fromImage(lastCopy.scaled(adjustPx(variants[i], sprite.width(), true), adjustPx(variants[i], sprite.height(), true), Qt::IgnoreAspectRatio, Qt::SmoothTransformation), Qt::ColorOnly);
|
||||
p.drawPixmap(QPoint(adjustPx(variants[i], sprite.x(), true), adjustPx(variants[i], sprite.y(), true)), copy);
|
||||
p.drawImage(QPoint(adjustPx(variants[i], sprite.x(), true), adjustPx(variants[i], sprite.y(), true)), lastCopy.scaled(adjustPx(variants[i], sprite.width(), true), adjustPx(variants[i], sprite.height(), true), Qt::IgnoreAspectRatio, Qt::SmoothTransformation));
|
||||
}
|
||||
|
||||
for (int i = 0; i < variantsCount; ++i) {
|
||||
@@ -1392,9 +1396,6 @@ bool genStyles(const QString &classes_in, const QString &classes_out, const QStr
|
||||
variantSprites[variantsCount - 1] = QImage(spriteLast);
|
||||
spriteWidths[variantsCount - 1] = variantSprites[variantsCount - 1].width();
|
||||
|
||||
QPixmap spriteMaxPix = QPixmap::fromImage(variantSprites[variantsCount - 1], Qt::ColorOnly);
|
||||
spriteMax = &spriteMaxPix;
|
||||
|
||||
if (!variantSprites[0].width() || !variantSprites[0].height()) {
|
||||
cout << "Could not open input sprite file '" << sprite0.toUtf8().constData() << "'!\n";
|
||||
QCoreApplication::exit(1);
|
||||
@@ -1537,8 +1538,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of\n\
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n\
|
||||
GNU General Public License for more details.\n\
|
||||
\n\
|
||||
In addition, as a special exception, the copyright holders give permission\n\
|
||||
to link the code of portions of this program with the OpenSSL library.\n\
|
||||
\n\
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE\n\
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org\n\
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org\n\
|
||||
*/\n";
|
||||
tout << "#pragma once\n\n#include \"style.h\"\n\nnamespace st {\n";
|
||||
tcpp << "\
|
||||
@@ -1560,8 +1564,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of\n\
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n\
|
||||
GNU General Public License for more details.\n\
|
||||
\n\
|
||||
In addition, as a special exception, the copyright holders give permission\n\
|
||||
to link the code of portions of this program with the OpenSSL library.\n\
|
||||
\n\
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE\n\
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org\n\
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org\n\
|
||||
*/\n";
|
||||
tcpp << "#include \"stdafx.h\"\n#include \"style_auto.h\"\n\nnamespace {\n";
|
||||
for (int i = 0, l = scalars.size(); i < l; ++i) {
|
||||
@@ -1934,8 +1941,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of\n\
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n\
|
||||
GNU General Public License for more details.\n\
|
||||
\n\
|
||||
In addition, as a special exception, the copyright holders give permission\n\
|
||||
to link the code of portions of this program with the OpenSSL library.\n\
|
||||
\n\
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE\n\
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org\n\
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org\n\
|
||||
*/\n";
|
||||
tnum << "#include \"stdafx.h\"\n#include \"numbers.h\"\n\n";
|
||||
tnum << "QVector<int> phoneNumberParse(const QString &number) {\n";
|
||||
@@ -1950,7 +1960,7 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org\n\
|
||||
while (!already.isEmpty() && (already.size() > k.size() || !already.endsWith(k.at(already.size() - 1)))) {
|
||||
if (!onlyLastChanged) {
|
||||
tnum << QString("\t").repeated(1 + already.size()) << "}\n";
|
||||
tnum << QString("\t").repeated(1 + already.size()) << "return result;\n";
|
||||
tnum << QString("\t").repeated(already.size()) << "break;\n";
|
||||
}
|
||||
already = already.mid(0, already.size() - 1);
|
||||
onlyLastChanged = false;
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include <QtCore/QMap>
|
||||
#include <QtCore/QVector>
|
||||
@@ -26,7 +29,6 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
#include <QtCore/QTextStream>
|
||||
#include <QtCore/QString>
|
||||
#include <QtCore/QCoreApplication>
|
||||
#include <QtGui/QGuiApplication>
|
||||
#include <QtGui/QPainter>
|
||||
|
||||
using std::string;
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include "memain.h"
|
||||
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include <QtCore/QTimer>
|
||||
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include "mlmain.h"
|
||||
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include <QtCore/QTimer>
|
||||
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include "msmain.h"
|
||||
#include <QtCore/QDir>
|
||||
@@ -52,7 +55,7 @@ int main(int argc, char *argv[]) {
|
||||
#endif
|
||||
QObject *taskImpl = new GenStyles(classes_in, classes_out, styles_in, styles_out, path_to_sprites);
|
||||
|
||||
QGuiApplication a(argc, argv);
|
||||
QCoreApplication a(argc, argv);
|
||||
|
||||
QObject::connect(taskImpl, SIGNAL(finished()), &a, SLOT(quit()));
|
||||
QTimer::singleShot(0, taskImpl, SLOT(run()));
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include <QtCore/QTimer>
|
||||
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include "packer.h"
|
||||
|
||||
@@ -33,8 +36,9 @@ Q_IMPORT_PLUGIN(QWebpPlugin)
|
||||
#endif
|
||||
|
||||
bool DevChannel = false;
|
||||
quint64 BetaVersion = 0;
|
||||
|
||||
const char *publicKey = "\
|
||||
const char *PublicKey = "\
|
||||
-----BEGIN RSA PUBLIC KEY-----\n\
|
||||
MIGJAoGBAMA4ViQrjkPZ9xj0lrer3r23JvxOnrtE8nI69XLGSr+sRERz9YnUptnU\n\
|
||||
BZpkIfKaRcl6XzNJiN28cVwO1Ui5JSa814UAiDHzWUqCaXUiUEQ6NmNTneiGx2sQ\n\
|
||||
@@ -42,7 +46,7 @@ BZpkIfKaRcl6XzNJiN28cVwO1Ui5JSa814UAiDHzWUqCaXUiUEQ6NmNTneiGx2sQ\n\
|
||||
-----END RSA PUBLIC KEY-----\
|
||||
";
|
||||
|
||||
const char *publicDevKey = "\
|
||||
const char *PublicDevKey = "\
|
||||
-----BEGIN RSA PUBLIC KEY-----\n\
|
||||
MIGJAoGBALWu9GGs0HED7KG7BM73CFZ6o0xufKBRQsdnq3lwA8nFQEvmdu+g/I1j\n\
|
||||
0LQ+0IQO7GW4jAgzF/4+soPDb6uHQeNFrlVx1JS9DZGhhjZ5rf65yg11nTCIHZCG\n\
|
||||
@@ -50,9 +54,12 @@ w/CVnbwQOw0g5GBwwFV3r0uTTvy44xx8XXxk+Qknu4eBCsmrAFNnAgMBAAE=\n\
|
||||
-----END RSA PUBLIC KEY-----\
|
||||
";
|
||||
|
||||
extern const char *privateKey;
|
||||
extern const char *privateDevKey;
|
||||
extern const char *PrivateKey;
|
||||
extern const char *PrivateDevKey;
|
||||
#include "../../../../TelegramPrivate/packer_private.h" // RSA PRIVATE KEYS for update signing
|
||||
#include "../../../../TelegramPrivate/beta_private.h" // private key for beta version file generation
|
||||
|
||||
QString countBetaVersionSignature(quint64 version);
|
||||
|
||||
// sha1 hash
|
||||
typedef unsigned char uchar;
|
||||
@@ -135,6 +142,8 @@ int32 *hashSha1(const void *data, uint32 len, void *dest) {
|
||||
return (int32*)sha1To;
|
||||
}
|
||||
|
||||
QString BetaSignature;
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
QString workDir;
|
||||
@@ -164,14 +173,28 @@ int main(int argc, char *argv[])
|
||||
version = QString(argv[i + 1]).toInt();
|
||||
} else if (string("-dev") == argv[i]) {
|
||||
DevChannel = true;
|
||||
} else if (string("-beta") == argv[i] && i + 1 < argc) {
|
||||
BetaVersion = QString(argv[i + 1]).toULongLong();
|
||||
if (BetaVersion > version * 1000ULL && BetaVersion < (version + 1) * 1000ULL) {
|
||||
DevChannel = false;
|
||||
BetaSignature = countBetaVersionSignature(BetaVersion);
|
||||
if (BetaSignature.isEmpty()) {
|
||||
return -1;
|
||||
}
|
||||
} else {
|
||||
cout << "Bad -beta param value passed, should be for the same version: " << version << ", beta: " << BetaVersion << "\n";
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (files.isEmpty() || remove.isEmpty() || version <= 1016 || version > 999999) { // not for release =)
|
||||
if (files.isEmpty() || remove.isEmpty() || version <= 1016 || version > 999999999) {
|
||||
#ifdef Q_OS_WIN
|
||||
cout << "Usage: Packer.exe -path {file} -version {version} OR Packer.exe -path {dir} -version {version}\n";
|
||||
#elif defined Q_OS_MAC
|
||||
cout << "Usage: Packer.app -path {file} -version {version} OR Packer.app -path {dir} -version {version}\n";
|
||||
#else
|
||||
cout << "Usage: Packer -path {file} -version {version} OR Packer -path {dir} -version {version}\n";
|
||||
#endif
|
||||
return -1;
|
||||
}
|
||||
@@ -215,7 +238,12 @@ int main(int argc, char *argv[])
|
||||
QDataStream stream(&buffer);
|
||||
stream.setVersion(QDataStream::Qt_5_1);
|
||||
|
||||
stream << quint32(version);
|
||||
if (BetaVersion) {
|
||||
stream << quint32(0x7FFFFFFF);
|
||||
stream << quint64(BetaVersion);
|
||||
} else {
|
||||
stream << quint32(version);
|
||||
}
|
||||
|
||||
stream << quint32(files.size());
|
||||
cout << "Found " << files.size() << " file" << (files.size() == 1 ? "" : "s") << "..\n";
|
||||
@@ -406,19 +434,19 @@ int main(int argc, char *argv[])
|
||||
uint32 siglen = 0;
|
||||
|
||||
cout << "Signing..\n";
|
||||
RSA *prKey = PEM_read_bio_RSAPrivateKey(BIO_new_mem_buf(const_cast<char*>(DevChannel ? privateDevKey : privateKey), -1), 0, 0, 0);
|
||||
RSA *prKey = PEM_read_bio_RSAPrivateKey(BIO_new_mem_buf(const_cast<char*>((DevChannel || BetaVersion) ? PrivateDevKey : PrivateKey), -1), 0, 0, 0);
|
||||
if (!prKey) {
|
||||
cout << "Could not read RSA private key!\n";
|
||||
return -1;
|
||||
}
|
||||
if (RSA_size(prKey) != hSigLen) {
|
||||
RSA_free(prKey);
|
||||
cout << "Bad private key, size: " << RSA_size(prKey) << "\n";
|
||||
RSA_free(prKey);
|
||||
return -1;
|
||||
}
|
||||
if (RSA_sign(NID_sha1, (const uchar*)(compressed.constData() + hSigLen), hShaLen, (uchar*)(compressed.data()), &siglen, prKey) != 1) { // count signature
|
||||
RSA_free(prKey);
|
||||
cout << "Signing failed!\n";
|
||||
RSA_free(prKey);
|
||||
return -1;
|
||||
}
|
||||
RSA_free(prKey);
|
||||
@@ -429,7 +457,7 @@ int main(int argc, char *argv[])
|
||||
}
|
||||
|
||||
cout << "Checking signature..\n";
|
||||
RSA *pbKey = PEM_read_bio_RSAPublicKey(BIO_new_mem_buf(const_cast<char*>(DevChannel ? publicDevKey : publicKey), -1), 0, 0, 0);
|
||||
RSA *pbKey = PEM_read_bio_RSAPublicKey(BIO_new_mem_buf(const_cast<char*>((DevChannel || BetaVersion) ? PublicDevKey : PublicKey), -1), 0, 0, 0);
|
||||
if (!pbKey) {
|
||||
cout << "Could not read RSA public key!\n";
|
||||
return -1;
|
||||
@@ -442,16 +470,19 @@ int main(int argc, char *argv[])
|
||||
cout << "Signature verified!\n";
|
||||
RSA_free(pbKey);
|
||||
#ifdef Q_OS_WIN
|
||||
QString outName(QString("tupdate%1").arg(version));
|
||||
QString outName(QString("tupdate%1").arg(BetaVersion ? BetaVersion : version));
|
||||
#elif defined Q_OS_MAC
|
||||
QString outName(QString("tmacupd%1").arg(version));
|
||||
QString outName(QString("tmacupd%1").arg(BetaVersion ? BetaVersion : version));
|
||||
#elif defined Q_OS_LINUX32
|
||||
QString outName(QString("tlinux32upd%1").arg(version));
|
||||
QString outName(QString("tlinux32upd%1").arg(BetaVersion ? BetaVersion : version));
|
||||
#elif defined Q_OS_LINUX64
|
||||
QString outName(QString("tlinuxupd%1").arg(version));
|
||||
QString outName(QString("tlinuxupd%1").arg(BetaVersion ? BetaVersion : version));
|
||||
#else
|
||||
#error Unknown platform!
|
||||
#endif
|
||||
if (BetaVersion) {
|
||||
outName += "_" + BetaSignature;
|
||||
}
|
||||
QFile out(outName);
|
||||
if (!out.open(QIODevice::WriteOnly)) {
|
||||
cout << "Can't open '" << outName.toUtf8().constData() << "' for write..\n";
|
||||
@@ -460,7 +491,63 @@ int main(int argc, char *argv[])
|
||||
out.write(compressed);
|
||||
out.close();
|
||||
|
||||
if (BetaVersion) {
|
||||
QString keyName(QString("tbeta_%1_key").arg(BetaVersion));
|
||||
QFile key(keyName);
|
||||
if (!key.open(QIODevice::WriteOnly)) {
|
||||
cout << "Can't open '" << keyName.toUtf8().constData() << "' for write..\n";
|
||||
return -1;
|
||||
}
|
||||
key.write(BetaSignature.toUtf8());
|
||||
key.close();
|
||||
}
|
||||
|
||||
cout << "Update file '" << outName.toUtf8().constData() << "' written successfully!\n";
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
QString countBetaVersionSignature(quint64 version) { // duplicated in autoupdate.cpp
|
||||
QByteArray cBetaPrivateKey(BetaPrivateKey);
|
||||
if (cBetaPrivateKey.isEmpty()) {
|
||||
cout << "Error: Trying to count beta version signature without beta private key!\n";
|
||||
return QString();
|
||||
}
|
||||
|
||||
QByteArray signedData = (QLatin1String("TelegramBeta_") + QString::number(version, 16).toLower()).toUtf8();
|
||||
|
||||
static const int32 shaSize = 20, keySize = 128;
|
||||
|
||||
uchar sha1Buffer[shaSize];
|
||||
hashSha1(signedData.constData(), signedData.size(), sha1Buffer); // count sha1
|
||||
|
||||
uint32 siglen = 0;
|
||||
|
||||
RSA *prKey = PEM_read_bio_RSAPrivateKey(BIO_new_mem_buf(const_cast<char*>(cBetaPrivateKey.constData()), -1), 0, 0, 0);
|
||||
if (!prKey) {
|
||||
cout << "Error: Could not read beta private key!\n";
|
||||
return QString();
|
||||
}
|
||||
if (RSA_size(prKey) != keySize) {
|
||||
cout << "Error: Bad beta private key size: " << RSA_size(prKey) << "\n";
|
||||
RSA_free(prKey);
|
||||
return QString();
|
||||
}
|
||||
QByteArray signature;
|
||||
signature.resize(keySize);
|
||||
if (RSA_sign(NID_sha1, (const uchar*)(sha1Buffer), shaSize, (uchar*)(signature.data()), &siglen, prKey) != 1) { // count signature
|
||||
cout << "Error: Counting beta version signature failed!\n";
|
||||
RSA_free(prKey);
|
||||
return QString();
|
||||
}
|
||||
RSA_free(prKey);
|
||||
|
||||
if (siglen != keySize) {
|
||||
cout << "Error: Bad beta version signature length: " << siglen << "\n";
|
||||
return QString();
|
||||
}
|
||||
|
||||
signature = signature.toBase64(QByteArray::Base64UrlEncoding | QByteArray::OmitTrailingEquals);
|
||||
signature = signature.replace('-', '8').replace('_', 'B');
|
||||
return QString::fromUtf8(signature.mid(19, 32));
|
||||
}
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include "updater.h"
|
||||
|
||||
@@ -27,8 +30,8 @@ bool equal(const wstring &a, const wstring &b) {
|
||||
|
||||
void updateError(const WCHAR *msg, DWORD errorCode) {
|
||||
WCHAR errMsg[2048];
|
||||
LPTSTR errorText = NULL, errorTextDefault = L"(Unknown error)";
|
||||
FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_IGNORE_INSERTS, NULL, errorCode, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR)&errorText, 0, 0);
|
||||
LPWSTR errorText = NULL, errorTextDefault = L"(Unknown error)";
|
||||
FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_IGNORE_INSERTS, NULL, errorCode, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPWSTR)&errorText, 0, 0);
|
||||
if (!errorText) {
|
||||
errorText = errorTextDefault;
|
||||
}
|
||||
@@ -143,12 +146,16 @@ bool update() {
|
||||
|
||||
HANDLE versionFile = CreateFile((tdataDir + L"\\version").c_str(), GENERIC_READ, FILE_SHARE_READ, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
|
||||
if (versionFile != INVALID_HANDLE_VALUE) {
|
||||
if (ReadFile(versionFile, &versionNum, sizeof(DWORD), &readLen, NULL) != TRUE || readLen != sizeof(DWORD)) {
|
||||
versionNum = 0;
|
||||
} else if (ReadFile(versionFile, &versionLen, sizeof(DWORD), &readLen, NULL) != TRUE || readLen != sizeof(DWORD) || versionLen > 63) {
|
||||
versionNum = 0;
|
||||
} else if (ReadFile(versionFile, versionStr, versionLen, &readLen, NULL) != TRUE || readLen != versionLen) {
|
||||
if (!ReadFile(versionFile, &versionNum, sizeof(DWORD), &readLen, NULL) || readLen != sizeof(DWORD)) {
|
||||
versionNum = 0;
|
||||
} else {
|
||||
if (versionNum == 0x7FFFFFFF) { // beta version
|
||||
|
||||
} else if (!ReadFile(versionFile, &versionLen, sizeof(DWORD), &readLen, NULL) || readLen != sizeof(DWORD) || versionLen > 63) {
|
||||
versionNum = 0;
|
||||
} else if (!ReadFile(versionFile, versionStr, versionLen, &readLen, NULL) || readLen != versionLen) {
|
||||
versionNum = 0;
|
||||
}
|
||||
}
|
||||
CloseHandle(versionFile);
|
||||
writeLog(L"Version file read.");
|
||||
@@ -242,14 +249,14 @@ bool update() {
|
||||
int copyTries = 0;
|
||||
do {
|
||||
copyResult = CopyFile(fname.c_str(), tofname.c_str(), FALSE);
|
||||
if (copyResult == FALSE) {
|
||||
if (!copyResult) {
|
||||
++copyTries;
|
||||
Sleep(100);
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
} while (copyTries < 30);
|
||||
if (copyResult == FALSE) {
|
||||
} while (copyTries < 100);
|
||||
if (!copyResult) {
|
||||
writeLog(L"Error: failed to copy, asking to retry..");
|
||||
WCHAR errMsg[2048];
|
||||
wsprintf(errMsg, L"Failed to update Telegram :(\n%s is not accessible.", tofname.c_str());
|
||||
@@ -258,7 +265,7 @@ bool update() {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
} while (copyResult == FALSE);
|
||||
} while (!copyResult);
|
||||
}
|
||||
|
||||
writeLog(L"Update succeed! Clearing folder..");
|
||||
@@ -267,7 +274,7 @@ bool update() {
|
||||
}
|
||||
|
||||
void updateRegistry() {
|
||||
if (versionNum) {
|
||||
if (versionNum && versionNum != 0x7FFFFFFF) {
|
||||
writeLog(L"Updating registry..");
|
||||
versionStr[versionLen / 2] = 0;
|
||||
HKEY rkey;
|
||||
@@ -289,7 +296,7 @@ void updateRegistry() {
|
||||
}
|
||||
}
|
||||
if (locationType == REG_EXPAND_SZ || locationType == REG_SZ) {
|
||||
if (PathCanonicalize(exp, locationStr) == TRUE) {
|
||||
if (PathCanonicalize(exp, locationStr)) {
|
||||
memcpy(locationStr, exp, bufSize * sizeof(WCHAR));
|
||||
if (GetFullPathName(L".", bufSize, exp, 0) < bufSize) {
|
||||
wstring installpath = locationStr, mypath = exp;
|
||||
@@ -321,14 +328,11 @@ void updateRegistry() {
|
||||
}
|
||||
}
|
||||
|
||||
#include <ShlObj.h>
|
||||
|
||||
int APIENTRY WinMain(HINSTANCE instance, HINSTANCE prevInstance, LPSTR cmdParamarg, int cmdShow) {
|
||||
int APIENTRY wWinMain(HINSTANCE instance, HINSTANCE prevInstance, LPWSTR cmdParamarg, int cmdShow) {
|
||||
openLog();
|
||||
|
||||
#ifdef _NEED_WIN_GENERATE_DUMP
|
||||
_oldWndExceptionFilter = SetUnhandledExceptionFilter(_exceptionFilter);
|
||||
#endif
|
||||
// CAPIHook apiHook("kernel32.dll", "SetUnhandledExceptionFilter", (PROC)RedirectedSetUnhandledExceptionFilter);
|
||||
|
||||
writeLog(L"Updaters started..");
|
||||
|
||||
@@ -452,13 +456,12 @@ int APIENTRY WinMain(HINSTANCE instance, HINSTANCE prevInstance, LPSTR cmdParama
|
||||
ShellExecute(0, 0, (updateTo + L"Telegram.exe").c_str(), (L"-noupdate" + targs).c_str(), 0, SW_SHOWNORMAL);
|
||||
}
|
||||
|
||||
writeLog(L"Executed Telegram.exe, closing log and quiting..");
|
||||
writeLog(L"Executed Telegram.exe, closing log and quitting..");
|
||||
closeLog();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
#ifdef _NEED_WIN_GENERATE_DUMP
|
||||
static const WCHAR *_programName = L"Telegram Desktop"; // folder in APPDATA, if current path is unavailable for writing
|
||||
static const WCHAR *_exeName = L"Updater.exe";
|
||||
|
||||
@@ -479,13 +482,18 @@ HANDLE _generateDumpFileAtPath(const WCHAR *path) {
|
||||
static const int maxFileLen = MAX_PATH * 10;
|
||||
|
||||
WCHAR szPath[maxFileLen];
|
||||
wsprintf(szPath, L"%stdumps\\", path);
|
||||
|
||||
wsprintf(szPath, L"%stdata\\", path);
|
||||
if (!CreateDirectory(szPath, NULL)) {
|
||||
if (GetLastError() != ERROR_ALREADY_EXISTS) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
wsprintf(szPath, L"%sdumps\\", path);
|
||||
if (!CreateDirectory(szPath, NULL)) {
|
||||
if (GetLastError() != ERROR_ALREADY_EXISTS) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
WCHAR szFileName[maxFileLen];
|
||||
WCHAR szExeName[maxFileLen];
|
||||
@@ -500,10 +508,10 @@ HANDLE _generateDumpFileAtPath(const WCHAR *path) {
|
||||
|
||||
GetLocalTime(&stLocalTime);
|
||||
|
||||
wsprintf(szFileName, L"%s%s-%s-%04d%02d%02d-%02d%02d%02d-%ld-%ld.dmp",
|
||||
szPath, szExeName, updaterVersionStr,
|
||||
stLocalTime.wYear, stLocalTime.wMonth, stLocalTime.wDay,
|
||||
stLocalTime.wHour, stLocalTime.wMinute, stLocalTime.wSecond,
|
||||
wsprintf(szFileName, L"%s%s-%s-%04d%02d%02d-%02d%02d%02d-%ld-%ld.dmp",
|
||||
szPath, szExeName, updaterVersionStr,
|
||||
stLocalTime.wYear, stLocalTime.wMonth, stLocalTime.wDay,
|
||||
stLocalTime.wHour, stLocalTime.wMinute, stLocalTime.wSecond,
|
||||
GetCurrentProcessId(), GetCurrentThreadId());
|
||||
return CreateFile(szFileName, GENERIC_READ|GENERIC_WRITE, FILE_SHARE_WRITE|FILE_SHARE_READ, 0, CREATE_ALWAYS, 0, 0);
|
||||
}
|
||||
@@ -539,7 +547,7 @@ void _generateDump(EXCEPTION_POINTERS* pExceptionPointers) {
|
||||
hDumpFile = _generateDumpFileAtPath(wstrPath);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (!hDumpFile || hDumpFile == INVALID_HANDLE_VALUE) {
|
||||
return;
|
||||
}
|
||||
@@ -557,4 +565,10 @@ LONG CALLBACK _exceptionFilter(EXCEPTION_POINTERS* pExceptionPointers) {
|
||||
return _oldWndExceptionFilter ? (*_oldWndExceptionFilter)(pExceptionPointers) : EXCEPTION_CONTINUE_SEARCH;
|
||||
}
|
||||
|
||||
#endif
|
||||
// see http://www.codeproject.com/Articles/154686/SetUnhandledExceptionFilter-and-the-C-C-Runtime-Li
|
||||
LPTOP_LEVEL_EXCEPTION_FILTER WINAPI RedirectedSetUnhandledExceptionFilter(_In_opt_ LPTOP_LEVEL_EXCEPTION_FILTER lpTopLevelExceptionFilter) {
|
||||
// When the CRT calls SetUnhandledExceptionFilter with NULL parameter
|
||||
// our handler will not get removed.
|
||||
_oldWndExceptionFilter = lpTopLevelExceptionFilter;
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -12,14 +12,23 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <windows.h>
|
||||
#include <string>
|
||||
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable:4091)
|
||||
#include <DbgHelp.h>
|
||||
#include <ShlObj.h>
|
||||
#pragma warning(pop)
|
||||
|
||||
#include <Shellapi.h>
|
||||
#include <Shlwapi.h>
|
||||
|
||||
@@ -29,12 +38,9 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
using std::deque;
|
||||
using std::wstring;
|
||||
|
||||
#define _NEED_WIN_GENERATE_DUMP
|
||||
|
||||
#ifdef _NEED_WIN_GENERATE_DUMP
|
||||
extern LPTOP_LEVEL_EXCEPTION_FILTER _oldWndExceptionFilter;
|
||||
LONG CALLBACK _exceptionFilter(EXCEPTION_POINTERS* pExceptionPointers);
|
||||
#endif _NEED_WIN_GENERATE_DUMP
|
||||
LPTOP_LEVEL_EXCEPTION_FILTER WINAPI RedirectedSetUnhandledExceptionFilter(_In_opt_ LPTOP_LEVEL_EXCEPTION_FILTER lpTopLevelExceptionFilter);
|
||||
|
||||
static int updaterVersion = 1000;
|
||||
static const WCHAR *updaterVersionStr = L"0.1.0";
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include <cstdio>
|
||||
#include <sys/stat.h>
|
||||
@@ -321,7 +324,7 @@ bool update() {
|
||||
int main(int argc, char *argv[]) {
|
||||
bool needupdate = true, autostart = false, debug = false, tosettings = false, startintray = false, testmode = false;
|
||||
|
||||
char *key = 0;
|
||||
char *key = 0, *crashreport = 0;
|
||||
for (int i = 1; i < argc; ++i) {
|
||||
if (equal(argv[i], "-noupdate")) {
|
||||
needupdate = false;
|
||||
@@ -339,7 +342,9 @@ int main(int argc, char *argv[]) {
|
||||
key = argv[i];
|
||||
} else if (equal(argv[i], "-workpath") && ++i < argc) {
|
||||
workDir = argv[i];
|
||||
}
|
||||
} else if (equal(argv[i], "-crashreport") && ++i < argc) {
|
||||
crashreport = argv[i];
|
||||
}
|
||||
}
|
||||
openLog();
|
||||
|
||||
@@ -405,24 +410,27 @@ int main(int argc, char *argv[]) {
|
||||
char *args[MaxArgsCount] = {0}, p_noupdate[] = "-noupdate", p_autostart[] = "-autostart", p_debug[] = "-debug", p_tosettings[] = "-tosettings", p_key[] = "-key", p_startintray[] = "-startintray", p_testmode[] = "-testmode";
|
||||
int argIndex = 0;
|
||||
args[argIndex++] = path;
|
||||
args[argIndex++] = p_noupdate;
|
||||
if (autostart) args[argIndex++] = p_autostart;
|
||||
if (debug) args[argIndex++] = p_debug;
|
||||
if (startintray) args[argIndex++] = p_startintray;
|
||||
if (testmode) args[argIndex++] = p_testmode;
|
||||
if (tosettings) args[argIndex++] = p_tosettings;
|
||||
if (key) {
|
||||
args[argIndex++] = p_key;
|
||||
args[argIndex++] = key;
|
||||
}
|
||||
|
||||
if (crashreport) {
|
||||
args[argIndex++] = crashreport;
|
||||
} else {
|
||||
args[argIndex++] = p_noupdate;
|
||||
if (autostart) args[argIndex++] = p_autostart;
|
||||
if (debug) args[argIndex++] = p_debug;
|
||||
if (startintray) args[argIndex++] = p_startintray;
|
||||
if (testmode) args[argIndex++] = p_testmode;
|
||||
if (tosettings) args[argIndex++] = p_tosettings;
|
||||
if (key) {
|
||||
args[argIndex++] = p_key;
|
||||
args[argIndex++] = key;
|
||||
}
|
||||
}
|
||||
pid_t pid = fork();
|
||||
switch (pid) {
|
||||
case -1: writeLog("fork() failed!"); return 1;
|
||||
case 0: execv(path, args); return 1;
|
||||
}
|
||||
|
||||
writeLog("Executed Telegram, closing log and quiting..");
|
||||
writeLog("Executed Telegram, closing log and quitting..");
|
||||
closeLog();
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -12,14 +12,18 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#import <Cocoa/Cocoa.h>
|
||||
|
||||
NSString *appName = @"Telegram.app";
|
||||
NSString *appDir = nil;
|
||||
NSString *workDir = nil;
|
||||
NSString *crashReportArg = nil;
|
||||
|
||||
#ifdef _DEBUG
|
||||
BOOL _debug = YES;
|
||||
@@ -98,6 +102,10 @@ int main(int argc, const char * argv[]) {
|
||||
[formatter setNumberStyle:NSNumberFormatterDecimalStyle];
|
||||
procId = [[formatter numberFromString:[NSString stringWithUTF8String:argv[i]]] intValue];
|
||||
}
|
||||
} else if ([@"-crashreport" isEqualToString:[NSString stringWithUTF8String:argv[i]]]) {
|
||||
if (++i < argc) {
|
||||
crashReportArg = [NSString stringWithUTF8String:argv[i]];
|
||||
}
|
||||
} else if ([@"-noupdate" isEqualToString:[NSString stringWithUTF8String:argv[i]]]) {
|
||||
update = NO;
|
||||
} else if ([@"-tosettings" isEqualToString:[NSString stringWithUTF8String:argv[i]]]) {
|
||||
@@ -211,15 +219,17 @@ int main(int argc, const char * argv[]) {
|
||||
}
|
||||
|
||||
NSString *appPath = [[NSArray arrayWithObjects:appDir, appRealName, nil] componentsJoinedByString:@""];
|
||||
NSMutableArray *args = [[NSMutableArray alloc] initWithObjects:@"-noupdate", nil];
|
||||
if (toSettings) [args addObject:@"-tosettings"];
|
||||
if (_debug) [args addObject:@"-debug"];
|
||||
if (startInTray) [args addObject:@"-startintray"];
|
||||
if (testMode) [args addObject:@"-testmode"];
|
||||
if (autoStart) [args addObject:@"-autostart"];
|
||||
if (key) {
|
||||
[args addObject:@"-key"];
|
||||
[args addObject:key];
|
||||
NSMutableArray *args = [[NSMutableArray alloc] initWithObjects: crashReportArg ? crashReportArg : @"-noupdate", nil];
|
||||
if (!crashReportArg) {
|
||||
if (toSettings) [args addObject:@"-tosettings"];
|
||||
if (_debug) [args addObject:@"-debug"];
|
||||
if (startInTray) [args addObject:@"-startintray"];
|
||||
if (testMode) [args addObject:@"-testmode"];
|
||||
if (autoStart) [args addObject:@"-autostart"];
|
||||
if (key) {
|
||||
[args addObject:@"-key"];
|
||||
[args addObject:key];
|
||||
}
|
||||
}
|
||||
writeLog([[NSArray arrayWithObjects:@"Running application '", appPath, @"' with args '", [args componentsJoinedByString:@"' '"], @"'..", nil] componentsJoinedByString:@""]);
|
||||
NSError *error = nil;
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "style.h"
|
||||
@@ -26,119 +29,65 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
|
||||
#include "localstorage.h"
|
||||
|
||||
ApiWrap::ApiWrap(QObject *parent) : QObject(parent) {
|
||||
ApiWrap::ApiWrap(QObject *parent) : QObject(parent)
|
||||
, _messageDataResolveDelayed(new SingleDelayedCall(this, "resolveMessageDatas")) {
|
||||
App::initBackground();
|
||||
|
||||
connect(&_replyToTimer, SIGNAL(timeout()), this, SLOT(resolveReplyTo()));
|
||||
connect(&_webPagesTimer, SIGNAL(timeout()), this, SLOT(resolveWebPages()));
|
||||
}
|
||||
|
||||
void ApiWrap::init() {
|
||||
}
|
||||
|
||||
void ApiWrap::itemRemoved(HistoryItem *item) {
|
||||
if (HistoryReply *reply = item->toHistoryReply()) {
|
||||
ChannelData *channel = reply->history()->peer->asChannel();
|
||||
ReplyToRequests *requests(replyToRequests(channel, true));
|
||||
if (requests) {
|
||||
ReplyToRequests::iterator i = requests->find(reply->replyToId());
|
||||
if (i != requests->cend()) {
|
||||
for (QList<HistoryReply*>::iterator j = i->replies.begin(); j != i->replies.end();) {
|
||||
if ((*j) == reply) {
|
||||
j = i->replies.erase(j);
|
||||
} else {
|
||||
++j;
|
||||
}
|
||||
}
|
||||
if (i->replies.isEmpty()) {
|
||||
requests->erase(i);
|
||||
}
|
||||
}
|
||||
if (channel && requests->isEmpty()) {
|
||||
_channelReplyToRequests.remove(channel);
|
||||
}
|
||||
}
|
||||
}
|
||||
void ApiWrap::requestMessageData(ChannelData *channel, MsgId msgId, RequestMessageDataCallback *callback) {
|
||||
MessageDataRequest::CallbackPtr pcallback(callback);
|
||||
MessageDataRequest &req(channel ? _channelMessageDataRequests[channel][msgId] : _messageDataRequests[msgId]);
|
||||
req.callbacks.append(pcallback);
|
||||
if (!req.req) _messageDataResolveDelayed->call();
|
||||
}
|
||||
|
||||
void ApiWrap::itemReplaced(HistoryItem *oldItem, HistoryItem *newItem) {
|
||||
if (HistoryReply *reply = oldItem->toHistoryReply()) {
|
||||
ChannelData *channel = reply->history()->peer->asChannel();
|
||||
ReplyToRequests *requests(replyToRequests(channel, true));
|
||||
if (requests) {
|
||||
ReplyToRequests::iterator i = requests->find(reply->replyToId());
|
||||
if (i != requests->cend()) {
|
||||
for (QList<HistoryReply*>::iterator j = i->replies.begin(); j != i->replies.end();) {
|
||||
if ((*j) == reply) {
|
||||
if (HistoryReply *newReply = newItem->toHistoryReply()) {
|
||||
*j = newReply;
|
||||
++j;
|
||||
} else {
|
||||
j = i->replies.erase(j);
|
||||
}
|
||||
} else {
|
||||
++j;
|
||||
}
|
||||
}
|
||||
if (i->replies.isEmpty()) {
|
||||
requests->erase(i);
|
||||
}
|
||||
}
|
||||
if (channel && requests->isEmpty()) {
|
||||
_channelReplyToRequests.remove(channel);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void ApiWrap::requestReplyTo(HistoryReply *reply, ChannelData *channel, MsgId id) {
|
||||
ReplyToRequest &req(channel ? _channelReplyToRequests[channel][id] : _replyToRequests[id]);
|
||||
req.replies.append(reply);
|
||||
if (!req.req) _replyToTimer.start(1);
|
||||
}
|
||||
|
||||
ApiWrap::MessageIds ApiWrap::collectMessageIds(const ReplyToRequests &requests) {
|
||||
ApiWrap::MessageIds ApiWrap::collectMessageIds(const MessageDataRequests &requests) {
|
||||
MessageIds result;
|
||||
result.reserve(requests.size());
|
||||
for (ReplyToRequests::const_iterator i = requests.cbegin(), e = requests.cend(); i != e; ++i) {
|
||||
for (MessageDataRequests::const_iterator i = requests.cbegin(), e = requests.cend(); i != e; ++i) {
|
||||
if (i.value().req > 0) continue;
|
||||
result.push_back(MTP_int(i.key()));
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
ApiWrap::ReplyToRequests *ApiWrap::replyToRequests(ChannelData *channel, bool onlyExisting) {
|
||||
ApiWrap::MessageDataRequests *ApiWrap::messageDataRequests(ChannelData *channel, bool onlyExisting) {
|
||||
if (channel) {
|
||||
ChannelReplyToRequests::iterator i = _channelReplyToRequests.find(channel);
|
||||
if (i == _channelReplyToRequests.cend()) {
|
||||
ChannelMessageDataRequests::iterator i = _channelMessageDataRequests.find(channel);
|
||||
if (i == _channelMessageDataRequests.cend()) {
|
||||
if (onlyExisting) return 0;
|
||||
i = _channelReplyToRequests.insert(channel, ReplyToRequests());
|
||||
i = _channelMessageDataRequests.insert(channel, MessageDataRequests());
|
||||
}
|
||||
return &i.value();
|
||||
}
|
||||
return &_replyToRequests;
|
||||
return &_messageDataRequests;
|
||||
}
|
||||
|
||||
void ApiWrap::resolveReplyTo() {
|
||||
if (_replyToRequests.isEmpty() && _channelReplyToRequests.isEmpty()) return;
|
||||
void ApiWrap::resolveMessageDatas() {
|
||||
if (_messageDataRequests.isEmpty() && _channelMessageDataRequests.isEmpty()) return;
|
||||
|
||||
MessageIds ids = collectMessageIds(_replyToRequests);
|
||||
MessageIds ids = collectMessageIds(_messageDataRequests);
|
||||
if (!ids.isEmpty()) {
|
||||
mtpRequestId req = MTP::send(MTPmessages_GetMessages(MTP_vector<MTPint>(ids)), rpcDone(&ApiWrap::gotReplyTo, (ChannelData*)0), RPCFailHandlerPtr(), 0, 5);
|
||||
for (ReplyToRequests::iterator i = _replyToRequests.begin(); i != _replyToRequests.cend(); ++i) {
|
||||
mtpRequestId req = MTP::send(MTPmessages_GetMessages(MTP_vector<MTPint>(ids)), rpcDone(&ApiWrap::gotMessageDatas, (ChannelData*)nullptr), RPCFailHandlerPtr(), 0, 5);
|
||||
for (MessageDataRequests::iterator i = _messageDataRequests.begin(); i != _messageDataRequests.cend(); ++i) {
|
||||
if (i.value().req > 0) continue;
|
||||
i.value().req = req;
|
||||
}
|
||||
}
|
||||
for (ChannelReplyToRequests::iterator j = _channelReplyToRequests.begin(); j != _channelReplyToRequests.cend();) {
|
||||
for (ChannelMessageDataRequests::iterator j = _channelMessageDataRequests.begin(); j != _channelMessageDataRequests.cend();) {
|
||||
if (j->isEmpty()) {
|
||||
j = _channelReplyToRequests.erase(j);
|
||||
j = _channelMessageDataRequests.erase(j);
|
||||
continue;
|
||||
}
|
||||
MessageIds ids = collectMessageIds(j.value());
|
||||
if (!ids.isEmpty()) {
|
||||
mtpRequestId req = MTP::send(MTPchannels_GetMessages(j.key()->inputChannel, MTP_vector<MTPint>(ids)), rpcDone(&ApiWrap::gotReplyTo, j.key()), RPCFailHandlerPtr(), 0, 5);
|
||||
for (ReplyToRequests::iterator i = j->begin(); i != j->cend(); ++i) {
|
||||
mtpRequestId req = MTP::send(MTPchannels_GetMessages(j.key()->inputChannel, MTP_vector<MTPint>(ids)), rpcDone(&ApiWrap::gotMessageDatas, j.key()), RPCFailHandlerPtr(), 0, 5);
|
||||
for (MessageDataRequests::iterator i = j->begin(); i != j->cend(); ++i) {
|
||||
if (i.value().req > 0) continue;
|
||||
i.value().req = req;
|
||||
}
|
||||
@@ -147,7 +96,7 @@ void ApiWrap::resolveReplyTo() {
|
||||
}
|
||||
}
|
||||
|
||||
void ApiWrap::gotReplyTo(ChannelData *channel, const MTPmessages_Messages &msgs, mtpRequestId req) {
|
||||
void ApiWrap::gotMessageDatas(ChannelData *channel, const MTPmessages_Messages &msgs, mtpRequestId req) {
|
||||
switch (msgs.type()) {
|
||||
case mtpc_messages_messages: {
|
||||
const MTPDmessages_messages &d(msgs.c_messages_messages());
|
||||
@@ -168,10 +117,10 @@ void ApiWrap::gotReplyTo(ChannelData *channel, const MTPmessages_Messages &msgs,
|
||||
if (channel) {
|
||||
channel->ptsReceived(d.vpts.v);
|
||||
} else {
|
||||
LOG(("App Error: received messages.channelMessages when no channel was passed! (ApiWrap::gotReplyTo)"));
|
||||
LOG(("App Error: received messages.channelMessages when no channel was passed! (ApiWrap::gotDependencyItem)"));
|
||||
}
|
||||
if (d.has_collapsed()) { // should not be returned
|
||||
LOG(("API Error: channels.getMessages and messages.getMessages should not return collapsed groups! (ApiWrap::gotReplyTo)"));
|
||||
LOG(("API Error: channels.getMessages and messages.getMessages should not return collapsed groups! (ApiWrap::gotDependencyItem)"));
|
||||
}
|
||||
|
||||
App::feedUsers(d.vusers);
|
||||
@@ -179,16 +128,12 @@ void ApiWrap::gotReplyTo(ChannelData *channel, const MTPmessages_Messages &msgs,
|
||||
App::feedMsgs(d.vmessages, NewMessageExisting);
|
||||
} break;
|
||||
}
|
||||
ReplyToRequests *requests(replyToRequests(channel, true));
|
||||
MessageDataRequests *requests(messageDataRequests(channel, true));
|
||||
if (requests) {
|
||||
for (ReplyToRequests::iterator i = requests->begin(); i != requests->cend();) {
|
||||
for (MessageDataRequests::iterator i = requests->begin(); i != requests->cend();) {
|
||||
if (i.value().req == req) {
|
||||
for (QList<HistoryReply*>::const_iterator j = i.value().replies.cbegin(), e = i.value().replies.cend(); j != e; ++j) {
|
||||
if (*j) {
|
||||
(*j)->updateReplyTo(true);
|
||||
} else {
|
||||
App::main()->updateReplyTo();
|
||||
}
|
||||
for (MessageDataRequest::Callbacks::const_iterator j = i.value().callbacks.cbegin(), e = i.value().callbacks.cend(); j != e; ++j) {
|
||||
(*j)->call(channel, i.key());
|
||||
}
|
||||
i = requests->erase(i);
|
||||
} else {
|
||||
@@ -196,7 +141,7 @@ void ApiWrap::gotReplyTo(ChannelData *channel, const MTPmessages_Messages &msgs,
|
||||
}
|
||||
}
|
||||
if (channel && requests->isEmpty()) {
|
||||
_channelReplyToRequests.remove(channel);
|
||||
_channelMessageDataRequests.remove(channel);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -215,7 +160,15 @@ void ApiWrap::requestFullPeer(PeerData *peer) {
|
||||
if (req) _fullPeerRequests.insert(peer, req);
|
||||
}
|
||||
|
||||
void ApiWrap::gotChatFull(PeerData *peer, const MTPmessages_ChatFull &result) {
|
||||
void ApiWrap::processFullPeer(PeerData *peer, const MTPmessages_ChatFull &result) {
|
||||
gotChatFull(peer, result, 0);
|
||||
}
|
||||
|
||||
void ApiWrap::processFullPeer(PeerData *peer, const MTPUserFull &result) {
|
||||
gotUserFull(peer, result, 0);
|
||||
}
|
||||
|
||||
void ApiWrap::gotChatFull(PeerData *peer, const MTPmessages_ChatFull &result, mtpRequestId req) {
|
||||
const MTPDmessages_chatFull &d(result.c_messages_chatFull());
|
||||
const QVector<MTPChat> &vc(d.vchats.c_vector().v);
|
||||
bool badVersion = false;
|
||||
@@ -268,29 +221,92 @@ void ApiWrap::gotChatFull(PeerData *peer, const MTPmessages_ChatFull &result) {
|
||||
const MTPDchannelFull &f(d.vfull_chat.c_channelFull());
|
||||
PhotoData *photo = App::feedPhoto(f.vchat_photo);
|
||||
ChannelData *channel = peer->asChannel();
|
||||
channel->flagsFull = f.vflags.v;
|
||||
if (photo) {
|
||||
channel->photoId = photo->id;
|
||||
photo->peer = channel;
|
||||
} else {
|
||||
channel->photoId = 0;
|
||||
}
|
||||
if (f.has_migrated_from_chat_id()) {
|
||||
if (!channel->mgInfo) {
|
||||
channel->flags |= MTPDchannel::Flag::f_megagroup;
|
||||
channel->flagsUpdated();
|
||||
}
|
||||
ChatData *cfrom = App::chat(peerFromChat(f.vmigrated_from_chat_id));
|
||||
bool updatedTo = (cfrom->migrateToPtr != channel), updatedFrom = (channel->mgInfo->migrateFromPtr != cfrom);
|
||||
if (updatedTo) {
|
||||
cfrom->migrateToPtr = channel;
|
||||
}
|
||||
if (updatedFrom) {
|
||||
channel->mgInfo->migrateFromPtr = cfrom;
|
||||
if (History *h = App::historyLoaded(cfrom->id)) {
|
||||
if (History *hto = App::historyLoaded(channel->id)) {
|
||||
if (!h->isEmpty()) {
|
||||
h->clear(true);
|
||||
}
|
||||
if (hto->inChatList() && h->inChatList()) {
|
||||
App::removeDialog(h);
|
||||
}
|
||||
}
|
||||
}
|
||||
Notify::migrateUpdated(channel);
|
||||
}
|
||||
if (updatedTo) {
|
||||
Notify::migrateUpdated(cfrom);
|
||||
App::main()->peerUpdated(cfrom);
|
||||
}
|
||||
}
|
||||
const QVector<MTPBotInfo> &v(f.vbot_info.c_vector().v);
|
||||
for (QVector<MTPBotInfo>::const_iterator i = v.cbegin(), e = v.cend(); i < e; ++i) {
|
||||
switch (i->type()) {
|
||||
case mtpc_botInfo: {
|
||||
const MTPDbotInfo &b(i->c_botInfo());
|
||||
UserData *user = App::userLoaded(b.vuser_id.v);
|
||||
if (user) {
|
||||
user->setBotInfo(*i);
|
||||
App::clearPeerUpdated(user);
|
||||
emit fullPeerUpdated(user);
|
||||
}
|
||||
} break;
|
||||
}
|
||||
}
|
||||
channel->about = qs(f.vabout);
|
||||
channel->count = f.has_participants_count() ? f.vparticipants_count.v : 0;
|
||||
int32 newCount = f.has_participants_count() ? f.vparticipants_count.v : 0;
|
||||
if (newCount != channel->count) {
|
||||
if (channel->isMegagroup() && !channel->mgInfo->lastParticipants.isEmpty()) {
|
||||
channel->mgInfo->lastParticipantsStatus |= MegagroupInfo::LastParticipantsCountOutdated;
|
||||
channel->mgInfo->lastParticipantsCount = channel->count;
|
||||
}
|
||||
channel->count = newCount;
|
||||
}
|
||||
channel->adminsCount = f.has_admins_count() ? f.vadmins_count.v : 0;
|
||||
channel->invitationUrl = (f.vexported_invite.type() == mtpc_chatInviteExported) ? qs(f.vexported_invite.c_chatInviteExported().vlink) : QString();
|
||||
if (History *h = App::historyLoaded(channel->id)) {
|
||||
if (h->inboxReadBefore < f.vread_inbox_max_id.v + 1) {
|
||||
h->setUnreadCount(f.vunread_important_count.v);
|
||||
h->setUnreadCount(channel->isMegagroup() ? f.vunread_count.v : f.vunread_important_count.v);
|
||||
h->inboxReadBefore = f.vread_inbox_max_id.v + 1;
|
||||
h->asChannelHistory()->unreadCountAll = f.vunread_count.v;
|
||||
}
|
||||
}
|
||||
if (channel->isMegagroup()) {
|
||||
if (f.has_pinned_msg_id()) {
|
||||
channel->mgInfo->pinnedMsgId = f.vpinned_msg_id.v;
|
||||
} else {
|
||||
channel->mgInfo->pinnedMsgId = 0;
|
||||
}
|
||||
}
|
||||
channel->fullUpdated();
|
||||
|
||||
App::main()->gotNotifySetting(MTP_inputNotifyPeer(peer->input), f.vnotify_settings);
|
||||
}
|
||||
|
||||
_fullPeerRequests.remove(peer);
|
||||
if (req) {
|
||||
QMap<PeerData*, mtpRequestId>::iterator i = _fullPeerRequests.find(peer);
|
||||
if (i != _fullPeerRequests.cend() && i.value() == req) {
|
||||
_fullPeerRequests.erase(i);
|
||||
}
|
||||
}
|
||||
if (badVersion) {
|
||||
if (peer->isChat()) {
|
||||
peer->asChat()->version = vc.at(0).c_chat().vversion.v;
|
||||
@@ -304,24 +320,38 @@ void ApiWrap::gotChatFull(PeerData *peer, const MTPmessages_ChatFull &result) {
|
||||
App::emitPeerUpdated();
|
||||
}
|
||||
|
||||
void ApiWrap::gotUserFull(PeerData *peer, const MTPUserFull &result) {
|
||||
void ApiWrap::gotUserFull(PeerData *peer, const MTPUserFull &result, mtpRequestId req) {
|
||||
const MTPDuserFull &d(result.c_userFull());
|
||||
App::feedUsers(MTP_vector<MTPUser>(1, d.vuser), false);
|
||||
App::feedPhoto(d.vprofile_photo);
|
||||
if (d.has_profile_photo()) {
|
||||
App::feedPhoto(d.vprofile_photo);
|
||||
}
|
||||
App::feedUserLink(MTP_int(peerToUser(peer->id)), d.vlink.c_contacts_link().vmy_link, d.vlink.c_contacts_link().vforeign_link, false);
|
||||
App::main()->gotNotifySetting(MTP_inputNotifyPeer(peer->input), d.vnotify_settings);
|
||||
if (App::main()) {
|
||||
App::main()->gotNotifySetting(MTP_inputNotifyPeer(peer->input), d.vnotify_settings);
|
||||
}
|
||||
|
||||
peer->asUser()->setBotInfo(d.vbot_info);
|
||||
peer->asUser()->blocked = d.vblocked.v ? UserIsBlocked : UserIsNotBlocked;
|
||||
if (d.has_bot_info()) {
|
||||
peer->asUser()->setBotInfo(d.vbot_info);
|
||||
} else {
|
||||
peer->asUser()->setBotInfoVersion(-1);
|
||||
}
|
||||
peer->asUser()->blocked = d.is_blocked() ? UserIsBlocked : UserIsNotBlocked;
|
||||
peer->asUser()->about = d.has_about() ? qs(d.vabout) : QString();
|
||||
|
||||
_fullPeerRequests.remove(peer);
|
||||
if (req) {
|
||||
QMap<PeerData*, mtpRequestId>::iterator i = _fullPeerRequests.find(peer);
|
||||
if (i != _fullPeerRequests.cend() && i.value() == req) {
|
||||
_fullPeerRequests.erase(i);
|
||||
}
|
||||
}
|
||||
App::clearPeerUpdated(peer);
|
||||
emit fullPeerUpdated(peer);
|
||||
App::emitPeerUpdated();
|
||||
}
|
||||
|
||||
bool ApiWrap::gotPeerFullFailed(PeerData *peer, const RPCError &error) {
|
||||
if (error.type().startsWith(qsl("FLOOD_WAIT_"))) return false;
|
||||
if (mtpIsFlood(error)) return false;
|
||||
|
||||
_fullPeerRequests.remove(peer);
|
||||
return true;
|
||||
@@ -363,9 +393,32 @@ void ApiWrap::requestPeers(const QList<PeerData*> &peers) {
|
||||
if (!users.isEmpty()) MTP::send(MTPusers_GetUsers(MTP_vector<MTPInputUser>(users)), rpcDone(&ApiWrap::gotUsers));
|
||||
}
|
||||
|
||||
void ApiWrap::requestLastParticipants(ChannelData *peer, bool fromStart) {
|
||||
if (!peer || !peer->isMegagroup()) return;
|
||||
bool needAdmins = peer->amEditor(), adminsOutdated = (peer->mgInfo->lastParticipantsStatus & MegagroupInfo::LastParticipantsAdminsOutdated);
|
||||
if ((needAdmins && adminsOutdated) || peer->lastParticipantsCountOutdated()) {
|
||||
fromStart = true;
|
||||
}
|
||||
QMap<PeerData*, mtpRequestId>::iterator i = _participantsRequests.find(peer);
|
||||
if (i != _participantsRequests.cend()) {
|
||||
if (fromStart && i.value() < 0) { // was not loading from start
|
||||
_participantsRequests.erase(i);
|
||||
} else {
|
||||
return;
|
||||
}
|
||||
}
|
||||
mtpRequestId req = MTP::send(MTPchannels_GetParticipants(peer->inputChannel, MTP_channelParticipantsRecent(), MTP_int(fromStart ? 0 : peer->mgInfo->lastParticipants.size()), MTP_int(Global::ChatSizeMax())), rpcDone(&ApiWrap::lastParticipantsDone, peer), rpcFail(&ApiWrap::lastParticipantsFail, peer));
|
||||
_participantsRequests.insert(peer, fromStart ? req : -req);
|
||||
}
|
||||
|
||||
void ApiWrap::requestBots(ChannelData *peer) {
|
||||
if (!peer || !peer->isMegagroup() || _botsRequests.contains(peer)) return;
|
||||
_botsRequests.insert(peer, MTP::send(MTPchannels_GetParticipants(peer->inputChannel, MTP_channelParticipantsBots(), MTP_int(0), MTP_int(Global::ChatSizeMax())), rpcDone(&ApiWrap::lastParticipantsDone, peer), rpcFail(&ApiWrap::lastParticipantsFail, peer)));
|
||||
}
|
||||
|
||||
void ApiWrap::gotChat(PeerData *peer, const MTPmessages_Chats &result) {
|
||||
_peerRequests.remove(peer);
|
||||
|
||||
|
||||
if (result.type() == mtpc_messages_chats) {
|
||||
const QVector<MTPChat> &v(result.c_messages_chats().vchats.c_vector().v);
|
||||
bool badVersion = false;
|
||||
@@ -405,12 +458,112 @@ void ApiWrap::gotUsers(const MTPVector<MTPUser> &result) {
|
||||
}
|
||||
|
||||
bool ApiWrap::gotPeerFailed(PeerData *peer, const RPCError &error) {
|
||||
if (error.type().startsWith(qsl("FLOOD_WAIT_"))) return false;
|
||||
if (mtpIsFlood(error)) return false;
|
||||
|
||||
_peerRequests.remove(peer);
|
||||
return true;
|
||||
}
|
||||
|
||||
void ApiWrap::lastParticipantsDone(ChannelData *peer, const MTPchannels_ChannelParticipants &result, mtpRequestId req) {
|
||||
bool bots = (_botsRequests.value(peer) == req), fromStart = false;
|
||||
if (bots) {
|
||||
_botsRequests.remove(peer);
|
||||
} else {
|
||||
int32 was = _participantsRequests.value(peer);
|
||||
if (was == req) {
|
||||
fromStart = true;
|
||||
} else if (was != -req) {
|
||||
return;
|
||||
}
|
||||
_participantsRequests.remove(peer);
|
||||
}
|
||||
|
||||
if (!peer->mgInfo || result.type() != mtpc_channels_channelParticipants) return;
|
||||
|
||||
History *h = 0;
|
||||
if (bots) {
|
||||
h = App::historyLoaded(peer->id);
|
||||
peer->mgInfo->bots.clear();
|
||||
peer->mgInfo->botStatus = -1;
|
||||
} else if (fromStart) {
|
||||
peer->mgInfo->lastAdmins.clear();
|
||||
peer->mgInfo->lastParticipants.clear();
|
||||
peer->mgInfo->lastParticipantsStatus = MegagroupInfo::LastParticipantsUpToDate;
|
||||
}
|
||||
|
||||
const MTPDchannels_channelParticipants &d(result.c_channels_channelParticipants());
|
||||
const QVector<MTPChannelParticipant> &v(d.vparticipants.c_vector().v);
|
||||
App::feedUsers(d.vusers);
|
||||
bool added = false, needBotsInfos = false;
|
||||
int32 botStatus = peer->mgInfo->botStatus;
|
||||
bool keyboardBotFound = !h || !h->lastKeyboardFrom;
|
||||
for (QVector<MTPChannelParticipant>::const_iterator i = v.cbegin(), e = v.cend(); i != e; ++i) {
|
||||
int32 userId = 0;
|
||||
bool admin = false;
|
||||
|
||||
switch (i->type()) {
|
||||
case mtpc_channelParticipant: userId = i->c_channelParticipant().vuser_id.v; break;
|
||||
case mtpc_channelParticipantSelf: userId = i->c_channelParticipantSelf().vuser_id.v; break;
|
||||
case mtpc_channelParticipantModerator: userId = i->c_channelParticipantModerator().vuser_id.v; break;
|
||||
case mtpc_channelParticipantEditor: userId = i->c_channelParticipantEditor().vuser_id.v; admin = true; break;
|
||||
case mtpc_channelParticipantKicked: userId = i->c_channelParticipantKicked().vuser_id.v; break;
|
||||
case mtpc_channelParticipantCreator: userId = i->c_channelParticipantCreator().vuser_id.v; admin = true; break;
|
||||
}
|
||||
UserData *u = App::user(userId);
|
||||
if (bots) {
|
||||
if (u->botInfo) {
|
||||
peer->mgInfo->bots.insert(u);
|
||||
botStatus = 2;// (botStatus > 0/* || !i.key()->botInfo->readsAllHistory*/) ? 2 : 1;
|
||||
if (!u->botInfo->inited) {
|
||||
needBotsInfos = true;
|
||||
}
|
||||
}
|
||||
if (!keyboardBotFound && u->id == h->lastKeyboardFrom) {
|
||||
keyboardBotFound = true;
|
||||
}
|
||||
} else {
|
||||
if (peer->mgInfo->lastParticipants.indexOf(u) < 0) {
|
||||
peer->mgInfo->lastParticipants.push_back(u);
|
||||
if (admin) peer->mgInfo->lastAdmins.insert(u);
|
||||
if (u->botInfo) {
|
||||
peer->mgInfo->bots.insert(u);
|
||||
if (peer->mgInfo->botStatus != 0 && peer->mgInfo->botStatus < 2) {
|
||||
peer->mgInfo->botStatus = 2;
|
||||
}
|
||||
}
|
||||
added = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (needBotsInfos) {
|
||||
requestFullPeer(peer);
|
||||
}
|
||||
if (!keyboardBotFound) {
|
||||
h->clearLastKeyboard();
|
||||
if (App::main()) App::main()->updateBotKeyboard(h);
|
||||
}
|
||||
if (d.vcount.v > peer->count) {
|
||||
peer->count = d.vcount.v;
|
||||
} else if (v.count() > peer->count) {
|
||||
peer->count = v.count();
|
||||
}
|
||||
if (!bots && v.isEmpty()) {
|
||||
peer->count = peer->mgInfo->lastParticipants.size();
|
||||
}
|
||||
peer->mgInfo->botStatus = botStatus;
|
||||
if (App::main()) emit fullPeerUpdated(peer);
|
||||
}
|
||||
|
||||
bool ApiWrap::lastParticipantsFail(ChannelData *peer, const RPCError &error, mtpRequestId req) {
|
||||
if (mtpIsFlood(error)) return false;
|
||||
if (_participantsRequests.value(peer) == req || _participantsRequests.value(peer) == -req) {
|
||||
_participantsRequests.remove(peer);
|
||||
} else if (_botsRequests.value(peer) == req) {
|
||||
_botsRequests.remove(peer);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
void ApiWrap::requestSelfParticipant(ChannelData *channel) {
|
||||
if (_selfParticipantRequests.contains(channel)) return;
|
||||
_selfParticipantRequests.insert(channel, MTP::send(MTPchannels_GetParticipant(channel->inputChannel, MTP_inputUserSelf()), rpcDone(&ApiWrap::gotSelfParticipant, channel), rpcFail(&ApiWrap::gotSelfParticipantFail, channel), 0, 5));
|
||||
@@ -465,6 +618,48 @@ bool ApiWrap::gotSelfParticipantFail(ChannelData *channel, const RPCError &error
|
||||
return true;
|
||||
}
|
||||
|
||||
void ApiWrap::kickParticipant(PeerData *peer, UserData *user) {
|
||||
KickRequest req(peer, user);
|
||||
if (_kickRequests.contains(req)) return;
|
||||
|
||||
if (peer->isChannel()) {
|
||||
_kickRequests.insert(req, MTP::send(MTPchannels_KickFromChannel(peer->asChannel()->inputChannel, user->inputUser, MTP_bool(true)), rpcDone(&ApiWrap::kickParticipantDone, req), rpcFail(&ApiWrap::kickParticipantFail, req)));
|
||||
}
|
||||
}
|
||||
|
||||
void ApiWrap::kickParticipantDone(KickRequest kick, const MTPUpdates &result, mtpRequestId req) {
|
||||
_kickRequests.remove(kick);
|
||||
if (kick.first->isMegagroup()) {
|
||||
int32 i = kick.first->asChannel()->mgInfo->lastParticipants.indexOf(kick.second);
|
||||
if (i >= 0) {
|
||||
kick.first->asChannel()->mgInfo->lastParticipants.removeAt(i);
|
||||
}
|
||||
if (kick.first->asChannel()->count > 1) {
|
||||
--kick.first->asChannel()->count;
|
||||
} else {
|
||||
kick.first->asChannel()->mgInfo->lastParticipantsStatus |= MegagroupInfo::LastParticipantsCountOutdated;
|
||||
kick.first->asChannel()->mgInfo->lastParticipantsCount = 0;
|
||||
}
|
||||
if (kick.first->asChannel()->mgInfo->lastAdmins.contains(kick.second)) {
|
||||
kick.first->asChannel()->mgInfo->lastAdmins.remove(kick.second);
|
||||
if (kick.first->asChannel()->adminsCount > 1) {
|
||||
--kick.first->asChannel()->adminsCount;
|
||||
}
|
||||
}
|
||||
kick.first->asChannel()->mgInfo->bots.remove(kick.second);
|
||||
if (kick.first->asChannel()->mgInfo->bots.isEmpty() && kick.first->asChannel()->mgInfo->botStatus > 0) {
|
||||
kick.first->asChannel()->mgInfo->botStatus = -1;
|
||||
}
|
||||
}
|
||||
emit fullPeerUpdated(kick.first);
|
||||
}
|
||||
|
||||
bool ApiWrap::kickParticipantFail(KickRequest kick, const RPCError &error, mtpRequestId req) {
|
||||
if (mtpIsFlood(error)) return false;
|
||||
_kickRequests.remove(kick);
|
||||
return true;
|
||||
}
|
||||
|
||||
void ApiWrap::scheduleStickerSetRequest(uint64 setId, uint64 access) {
|
||||
if (!_stickerSetRequests.contains(setId)) {
|
||||
_stickerSetRequests.insert(setId, qMakePair(access, 0));
|
||||
@@ -473,9 +668,9 @@ void ApiWrap::scheduleStickerSetRequest(uint64 setId, uint64 access) {
|
||||
|
||||
void ApiWrap::requestStickerSets() {
|
||||
for (QMap<uint64, QPair<uint64, mtpRequestId> >::iterator i = _stickerSetRequests.begin(), j = i, e = _stickerSetRequests.end(); i != e; i = j) {
|
||||
++j;
|
||||
if (i.value().second) continue;
|
||||
|
||||
++j;
|
||||
int32 wait = (j == e) ? 0 : 10;
|
||||
i.value().second = MTP::send(MTPmessages_GetStickerSet(MTP_inputStickerSetID(MTP_long(i.key()), MTP_long(i.value().first))), rpcDone(&ApiWrap::gotStickerSet, i.key()), rpcFail(&ApiWrap::gotStickerSetFail, i.key()), 0, wait);
|
||||
}
|
||||
@@ -483,43 +678,33 @@ void ApiWrap::requestStickerSets() {
|
||||
|
||||
void ApiWrap::gotStickerSet(uint64 setId, const MTPmessages_StickerSet &result) {
|
||||
_stickerSetRequests.remove(setId);
|
||||
|
||||
|
||||
if (result.type() != mtpc_messages_stickerSet) return;
|
||||
const MTPDmessages_stickerSet &d(result.c_messages_stickerSet());
|
||||
|
||||
|
||||
if (d.vset.type() != mtpc_stickerSet) return;
|
||||
const MTPDstickerSet &s(d.vset.c_stickerSet());
|
||||
|
||||
StickerSets &sets(cRefStickerSets());
|
||||
StickerSets::iterator it = sets.find(setId);
|
||||
Stickers::Sets &sets(Global::RefStickerSets());
|
||||
auto it = sets.find(setId);
|
||||
if (it == sets.cend()) return;
|
||||
|
||||
it->access = s.vaccess_hash.v;
|
||||
it->hash = s.vhash.v;
|
||||
it->shortName = qs(s.vshort_name);
|
||||
QString title = qs(s.vtitle);
|
||||
if ((it->flags & MTPDstickerSet_flag_official) && !title.compare(qstr("Great Minds"), Qt::CaseInsensitive)) {
|
||||
title = lang(lng_stickers_default_set);
|
||||
}
|
||||
it->title = title;
|
||||
it->title = stickerSetTitle(s);
|
||||
it->flags = s.vflags.v;
|
||||
|
||||
const QVector<MTPDocument> &d_docs(d.vdocuments.c_vector().v);
|
||||
StickerSets::iterator custom = sets.find(CustomStickerSetId);
|
||||
auto custom = sets.find(Stickers::CustomSetId);
|
||||
|
||||
QSet<DocumentData*> found;
|
||||
int32 wasCount = -1;
|
||||
StickerPack pack;
|
||||
pack.reserve(d_docs.size());
|
||||
for (int32 i = 0, l = d_docs.size(); i != l; ++i) {
|
||||
DocumentData *doc = App::feedDocument(d_docs.at(i));
|
||||
if (!doc || !doc->sticker()) continue;
|
||||
|
||||
if (wasCount < 0) wasCount = it->stickers.size();
|
||||
if (it->stickers.indexOf(doc) < 0) {
|
||||
it->stickers.push_back(doc);
|
||||
} else {
|
||||
found.insert(doc);
|
||||
}
|
||||
|
||||
pack.push_back(doc);
|
||||
if (custom != sets.cend()) {
|
||||
int32 index = custom->stickers.indexOf(doc);
|
||||
if (index >= 0) {
|
||||
@@ -534,39 +719,40 @@ void ApiWrap::gotStickerSet(uint64 setId, const MTPmessages_StickerSet &result)
|
||||
|
||||
bool writeRecent = false;
|
||||
RecentStickerPack &recent(cGetRecentStickers());
|
||||
|
||||
if (wasCount < 0) { // no stickers received
|
||||
for (RecentStickerPack::iterator i = recent.begin(); i != recent.cend();) {
|
||||
if (it->stickers.indexOf(i->first) >= 0) {
|
||||
i = recent.erase(i);
|
||||
writeRecent = true;
|
||||
} else {
|
||||
++i;
|
||||
}
|
||||
for (RecentStickerPack::iterator i = recent.begin(); i != recent.cend();) {
|
||||
if (it->stickers.indexOf(i->first) >= 0 && pack.indexOf(i->first) < 0) {
|
||||
i = recent.erase(i);
|
||||
writeRecent = true;
|
||||
} else {
|
||||
++i;
|
||||
}
|
||||
cRefStickerSetsOrder().removeOne(setId);
|
||||
}
|
||||
|
||||
if (pack.isEmpty()) {
|
||||
int removeIndex = Global::StickerSetsOrder().indexOf(setId);
|
||||
if (removeIndex >= 0) Global::RefStickerSetsOrder().removeAt(removeIndex);
|
||||
sets.erase(it);
|
||||
} else {
|
||||
for (int32 j = 0, l = wasCount; j < l;) {
|
||||
if (found.contains(it->stickers.at(j))) {
|
||||
++j;
|
||||
} else {
|
||||
for (RecentStickerPack::iterator i = recent.begin(); i != recent.cend();) {
|
||||
if (it->stickers.at(j) == i->first) {
|
||||
i = recent.erase(i);
|
||||
writeRecent = true;
|
||||
} else {
|
||||
++i;
|
||||
}
|
||||
it->stickers = pack;
|
||||
it->emoji.clear();
|
||||
const QVector<MTPStickerPack> &v(d.vpacks.c_vector().v);
|
||||
for (int32 i = 0, l = v.size(); i < l; ++i) {
|
||||
if (v.at(i).type() != mtpc_stickerPack) continue;
|
||||
|
||||
const MTPDstickerPack &pack(v.at(i).c_stickerPack());
|
||||
if (EmojiPtr e = emojiGetNoColor(emojiFromText(qs(pack.vemoticon)))) {
|
||||
const QVector<MTPlong> &stickers(pack.vdocuments.c_vector().v);
|
||||
StickerPack p;
|
||||
p.reserve(stickers.size());
|
||||
for (int32 j = 0, c = stickers.size(); j < c; ++j) {
|
||||
DocumentData *doc = App::document(stickers.at(j).v);
|
||||
if (!doc || !doc->sticker()) continue;
|
||||
|
||||
p.push_back(doc);
|
||||
}
|
||||
it->stickers.removeAt(j);
|
||||
--l;
|
||||
it->emoji.insert(e, p);
|
||||
}
|
||||
}
|
||||
if (it->stickers.isEmpty()) {
|
||||
cRefStickerSetsOrder().removeOne(setId);
|
||||
sets.erase(it);
|
||||
}
|
||||
}
|
||||
|
||||
if (writeRecent) {
|
||||
@@ -579,7 +765,7 @@ void ApiWrap::gotStickerSet(uint64 setId, const MTPmessages_StickerSet &result)
|
||||
}
|
||||
|
||||
bool ApiWrap::gotStickerSetFail(uint64 setId, const RPCError &error) {
|
||||
if (error.type().startsWith(qsl("FLOOD_WAIT_"))) return false;
|
||||
if (mtpIsFlood(error)) return false;
|
||||
|
||||
_stickerSetRequests.remove(setId);
|
||||
return true;
|
||||
@@ -665,6 +851,12 @@ void ApiWrap::resolveWebPages() {
|
||||
if (m < INT_MAX) _webPagesTimer.start(m * 1000);
|
||||
}
|
||||
|
||||
void ApiWrap::delayedRequestParticipantsCount() {
|
||||
if (App::main() && App::main()->peer() && App::main()->peer()->isChannel()) {
|
||||
requestFullPeer(App::main()->peer());
|
||||
}
|
||||
}
|
||||
|
||||
void ApiWrap::gotWebPages(ChannelData *channel, const MTPmessages_Messages &msgs, mtpRequestId req) {
|
||||
const QVector<MTPMessage> *v = 0;
|
||||
switch (msgs.type()) {
|
||||
@@ -710,12 +902,9 @@ void ApiWrap::gotWebPages(ChannelData *channel, const MTPmessages_Messages &msgs
|
||||
}
|
||||
}
|
||||
|
||||
MainWidget *m = App::main();
|
||||
for (QMap<uint64, int32>::const_iterator i = msgsIds.cbegin(), e = msgsIds.cend(); i != e; ++i) {
|
||||
HistoryItem *item = App::histories().addNewMessage(v->at(i.value()), NewMessageExisting);
|
||||
if (item) {
|
||||
item->initDimensions();
|
||||
if (m) m->itemResized(item);
|
||||
if (HistoryItem *item = App::histories().addNewMessage(v->at(i.value()), NewMessageExisting)) {
|
||||
item->setPendingInitDimensions();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -727,8 +916,7 @@ void ApiWrap::gotWebPages(ChannelData *channel, const MTPmessages_Messages &msgs
|
||||
WebPageItems::const_iterator j = items.constFind(i.key());
|
||||
if (j != items.cend()) {
|
||||
for (HistoryItemsMap::const_iterator k = j.value().cbegin(), e = j.value().cend(); k != e; ++k) {
|
||||
k.key()->initDimensions();
|
||||
if (m) m->itemResized(k.key());
|
||||
k.key()->setPendingInitDimensions();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -740,5 +928,5 @@ void ApiWrap::gotWebPages(ChannelData *channel, const MTPmessages_Messages &msgs
|
||||
}
|
||||
|
||||
ApiWrap::~ApiWrap() {
|
||||
App::deinitMedia(false);
|
||||
App::clearHistories();
|
||||
}
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
@@ -25,16 +28,20 @@ public:
|
||||
ApiWrap(QObject *parent);
|
||||
void init();
|
||||
|
||||
void itemRemoved(HistoryItem *item);
|
||||
void itemReplaced(HistoryItem *oldItem, HistoryItem *newItem);
|
||||
|
||||
void requestReplyTo(HistoryReply *reply, ChannelData *channel, MsgId id);
|
||||
typedef SharedCallback2<void, ChannelData*, MsgId> RequestMessageDataCallback;
|
||||
void requestMessageData(ChannelData *channel, MsgId msgId, RequestMessageDataCallback *callback);
|
||||
|
||||
void requestFullPeer(PeerData *peer);
|
||||
void requestPeer(PeerData *peer);
|
||||
void requestPeers(const QList<PeerData*> &peers);
|
||||
void requestLastParticipants(ChannelData *peer, bool fromStart = true);
|
||||
void requestBots(ChannelData *peer);
|
||||
|
||||
void processFullPeer(PeerData *peer, const MTPmessages_ChatFull &result);
|
||||
void processFullPeer(PeerData *peer, const MTPUserFull &result);
|
||||
|
||||
void requestSelfParticipant(ChannelData *channel);
|
||||
void kickParticipant(PeerData *peer, UserData *user);
|
||||
|
||||
void requestWebPageDelayed(WebPageData *page);
|
||||
void clearWebPageRequest(WebPageData *page);
|
||||
@@ -51,33 +58,37 @@ signals:
|
||||
|
||||
public slots:
|
||||
|
||||
void resolveReplyTo();
|
||||
void resolveMessageDatas();
|
||||
void resolveWebPages();
|
||||
|
||||
void delayedRequestParticipantsCount();
|
||||
|
||||
private:
|
||||
|
||||
void gotReplyTo(ChannelData *channel, const MTPmessages_Messages &result, mtpRequestId req);
|
||||
struct ReplyToRequest {
|
||||
ReplyToRequest() : req(0) {
|
||||
void gotMessageDatas(ChannelData *channel, const MTPmessages_Messages &result, mtpRequestId req);
|
||||
struct MessageDataRequest {
|
||||
MessageDataRequest() : req(0) {
|
||||
}
|
||||
typedef SharedCallback2<void, ChannelData*, MsgId>::Ptr CallbackPtr;
|
||||
typedef QList<CallbackPtr> Callbacks;
|
||||
mtpRequestId req;
|
||||
QList<HistoryReply*> replies;
|
||||
Callbacks callbacks;
|
||||
};
|
||||
typedef QMap<MsgId, ReplyToRequest> ReplyToRequests;
|
||||
ReplyToRequests _replyToRequests;
|
||||
typedef QMap<ChannelData*, ReplyToRequests> ChannelReplyToRequests;
|
||||
ChannelReplyToRequests _channelReplyToRequests;
|
||||
SingleTimer _replyToTimer;
|
||||
typedef QMap<MsgId, MessageDataRequest> MessageDataRequests;
|
||||
MessageDataRequests _messageDataRequests;
|
||||
typedef QMap<ChannelData*, MessageDataRequests> ChannelMessageDataRequests;
|
||||
ChannelMessageDataRequests _channelMessageDataRequests;
|
||||
SingleDelayedCall *_messageDataResolveDelayed;
|
||||
typedef QVector<MTPint> MessageIds;
|
||||
MessageIds collectMessageIds(const ReplyToRequests &requests);
|
||||
ReplyToRequests *replyToRequests(ChannelData *channel, bool onlyExisting = false);
|
||||
MessageIds collectMessageIds(const MessageDataRequests &requests);
|
||||
MessageDataRequests *messageDataRequests(ChannelData *channel, bool onlyExisting = false);
|
||||
|
||||
void gotChatFull(PeerData *peer, const MTPmessages_ChatFull &result);
|
||||
void gotUserFull(PeerData *peer, const MTPUserFull &result);
|
||||
void gotChatFull(PeerData *peer, const MTPmessages_ChatFull &result, mtpRequestId req);
|
||||
void gotUserFull(PeerData *peer, const MTPUserFull &result, mtpRequestId req);
|
||||
bool gotPeerFullFailed(PeerData *peer, const RPCError &err);
|
||||
typedef QMap<PeerData*, mtpRequestId> PeerRequests;
|
||||
PeerRequests _fullPeerRequests;
|
||||
|
||||
|
||||
void gotChat(PeerData *peer, const MTPmessages_Chats &result);
|
||||
void gotUser(PeerData *peer, const MTPVector<MTPUser> &result);
|
||||
void gotChats(const MTPmessages_Chats &result);
|
||||
@@ -85,6 +96,16 @@ private:
|
||||
bool gotPeerFailed(PeerData *peer, const RPCError &err);
|
||||
PeerRequests _peerRequests;
|
||||
|
||||
void lastParticipantsDone(ChannelData *peer, const MTPchannels_ChannelParticipants &result, mtpRequestId req);
|
||||
bool lastParticipantsFail(ChannelData *peer, const RPCError &error, mtpRequestId req);
|
||||
PeerRequests _participantsRequests, _botsRequests;
|
||||
|
||||
typedef QPair<PeerData*, UserData*> KickRequest;
|
||||
typedef QMap<KickRequest, mtpRequestId> KickRequests;
|
||||
void kickParticipantDone(KickRequest kick, const MTPUpdates &updates, mtpRequestId req);
|
||||
bool kickParticipantFail(KickRequest kick, const RPCError &error, mtpRequestId req);
|
||||
KickRequests _kickRequests;
|
||||
|
||||
void gotSelfParticipant(ChannelData *channel, const MTPchannels_ChannelParticipant &result);
|
||||
bool gotSelfParticipantFail(ChannelData *channel, const RPCError &error);
|
||||
typedef QMap<ChannelData*, mtpRequestId> SelfParticipantRequests;
|
||||
|
||||
@@ -12,14 +12,17 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include "types.h"
|
||||
|
||||
class Application;
|
||||
class AppClass;
|
||||
class Window;
|
||||
class MainWidget;
|
||||
class SettingsWidget;
|
||||
@@ -29,56 +32,30 @@ class Color;
|
||||
class FileUploader;
|
||||
|
||||
#include "history.h"
|
||||
#include "layout.h"
|
||||
|
||||
typedef QMap<HistoryItem*, bool> HistoryItemsMap;
|
||||
typedef QHash<VideoData*, HistoryItemsMap> VideoItems;
|
||||
typedef QHash<AudioData*, HistoryItemsMap> AudioItems;
|
||||
typedef QMap<HistoryItem*, NullType> HistoryItemsMap;
|
||||
typedef QHash<PhotoData*, HistoryItemsMap> PhotoItems;
|
||||
typedef QHash<DocumentData*, HistoryItemsMap> DocumentItems;
|
||||
typedef QHash<WebPageData*, HistoryItemsMap> WebPageItems;
|
||||
typedef QHash<int32, HistoryItemsMap> SharedContactItems;
|
||||
typedef QHash<ClipReader*, HistoryItem*> GifItems;
|
||||
|
||||
typedef QHash<PhotoId, PhotoData*> PhotosData;
|
||||
typedef QHash<DocumentId, DocumentData*> DocumentsData;
|
||||
|
||||
struct ReplyMarkup {
|
||||
ReplyMarkup(int32 flags = 0) : flags(flags) {
|
||||
ReplyMarkup(MTPDreplyKeyboardMarkup::Flags flags = 0) : flags(flags) {
|
||||
}
|
||||
typedef QList<QList<QString> > Commands;
|
||||
Commands commands;
|
||||
int32 flags;
|
||||
MTPDreplyKeyboardMarkup::Flags flags;
|
||||
};
|
||||
|
||||
enum RoundCorners {
|
||||
MaskCorners = 0x00, // for images
|
||||
BlackCorners,
|
||||
ServiceCorners,
|
||||
ServiceSelectedCorners,
|
||||
SelectedOverlayCorners,
|
||||
DateCorners,
|
||||
DateSelectedCorners,
|
||||
ForwardCorners,
|
||||
MediaviewSaveCorners,
|
||||
EmojiHoverCorners,
|
||||
StickerHoverCorners,
|
||||
BotKeyboardCorners,
|
||||
BotKeyboardOverCorners,
|
||||
BotKeyboardDownCorners,
|
||||
PhotoSelectOverlayCorners,
|
||||
|
||||
DocRedCorners,
|
||||
DocYellowCorners,
|
||||
DocGreenCorners,
|
||||
DocBlueCorners,
|
||||
|
||||
InShadowCorners, // for photos without bg
|
||||
InSelectedShadowCorners,
|
||||
|
||||
MessageInCorners, // with shadow
|
||||
MessageInSelectedCorners,
|
||||
MessageOutCorners,
|
||||
MessageOutSelectedCorners,
|
||||
ButtonHoverCorners,
|
||||
|
||||
RoundCornersCount
|
||||
};
|
||||
class LayeredWidget;
|
||||
|
||||
namespace App {
|
||||
Application *app();
|
||||
AppClass *app();
|
||||
Window *wnd();
|
||||
MainWidget *main();
|
||||
SettingsWidget *settings();
|
||||
@@ -86,9 +63,7 @@ namespace App {
|
||||
FileUploader *uploader();
|
||||
ApiWrap *api();
|
||||
|
||||
void showSettings();
|
||||
void logOut();
|
||||
bool loggedOut();
|
||||
|
||||
QString formatPhone(QString phone);
|
||||
|
||||
@@ -102,7 +77,13 @@ namespace App {
|
||||
void feedParticipants(const MTPChatParticipants &p, bool requestBotInfos, bool emitPeerUpdated = true);
|
||||
void feedParticipantAdd(const MTPDupdateChatParticipantAdd &d, bool emitPeerUpdated = true);
|
||||
void feedParticipantDelete(const MTPDupdateChatParticipantDelete &d, bool emitPeerUpdated = true);
|
||||
void checkEntitiesAndViewsUpdate(const MTPDmessage &m);
|
||||
void feedChatAdmins(const MTPDupdateChatAdmins &d, bool emitPeerUpdated = true);
|
||||
void feedParticipantAdmin(const MTPDupdateChatParticipantAdmin &d, bool emitPeerUpdated = true);
|
||||
bool checkEntitiesAndViewsUpdate(const MTPDmessage &m); // returns true if item found and it is not detached
|
||||
void updateEditedMessage(const MTPDmessage &m);
|
||||
void addSavedGif(DocumentData *doc);
|
||||
void checkSavedGif(HistoryItem *item);
|
||||
void feedMsgs(const QVector<MTPMessage> &msgs, NewMessageType type);
|
||||
void feedMsgs(const MTPVector<MTPMessage> &msgs, NewMessageType type);
|
||||
void feedInboxRead(const PeerId &peer, MsgId upTo);
|
||||
void feedOutboxRead(const PeerId &peer, MsgId upTo);
|
||||
@@ -121,9 +102,6 @@ namespace App {
|
||||
PhotoData *feedPhoto(const MTPPhoto &photo, const PreparedPhotoThumbs &thumbs);
|
||||
PhotoData *feedPhoto(const MTPPhoto &photo, PhotoData *convert = 0);
|
||||
PhotoData *feedPhoto(const MTPDphoto &photo, PhotoData *convert = 0);
|
||||
VideoData *feedVideo(const MTPDvideo &video, VideoData *convert = 0);
|
||||
AudioData *feedAudio(const MTPaudio &audio, AudioData *convert = 0);
|
||||
AudioData *feedAudio(const MTPDaudio &audio, AudioData *convert = 0);
|
||||
DocumentData *feedDocument(const MTPdocument &document, const QPixmap &thumb);
|
||||
DocumentData *feedDocument(const MTPdocument &document, DocumentData *convert = 0);
|
||||
DocumentData *feedDocument(const MTPDdocument &document, DocumentData *convert = 0);
|
||||
@@ -131,36 +109,57 @@ namespace App {
|
||||
WebPageData *feedWebPage(const MTPDwebPagePending &webpage, WebPageData *convert = 0);
|
||||
WebPageData *feedWebPage(const MTPWebPage &webpage);
|
||||
|
||||
PeerData *peerLoaded(const PeerId &id);
|
||||
UserData *userLoaded(const PeerId &id);
|
||||
ChatData *chatLoaded(const PeerId &id);
|
||||
ChannelData *channelLoaded(const PeerId &id);
|
||||
UserData *userLoaded(int32 user);
|
||||
ChatData *chatLoaded(int32 chat);
|
||||
ChannelData *channelLoaded(int32 channel);
|
||||
PeerData *peer(const PeerId &id, PeerData::LoadedStatus restriction = PeerData::NotLoaded);
|
||||
inline UserData *user(const PeerId &id, PeerData::LoadedStatus restriction = PeerData::NotLoaded) {
|
||||
return asUser(peer(id, restriction));
|
||||
}
|
||||
inline ChatData *chat(const PeerId &id, PeerData::LoadedStatus restriction = PeerData::NotLoaded) {
|
||||
return asChat(peer(id, restriction));
|
||||
}
|
||||
inline ChannelData *channel(const PeerId &id, PeerData::LoadedStatus restriction = PeerData::NotLoaded) {
|
||||
return asChannel(peer(id, restriction));
|
||||
}
|
||||
inline UserData *user(UserId userId, PeerData::LoadedStatus restriction = PeerData::NotLoaded) {
|
||||
return asUser(peer(peerFromUser(userId), restriction));
|
||||
}
|
||||
inline ChatData *chat(ChatId chatId, PeerData::LoadedStatus restriction = PeerData::NotLoaded) {
|
||||
return asChat(peer(peerFromChat(chatId), restriction));
|
||||
}
|
||||
inline ChannelData *channel(ChannelId channelId, PeerData::LoadedStatus restriction = PeerData::NotLoaded) {
|
||||
return asChannel(peer(peerFromChannel(channelId), restriction));
|
||||
}
|
||||
inline PeerData *peerLoaded(const PeerId &id) {
|
||||
return peer(id, PeerData::FullLoaded);
|
||||
}
|
||||
inline UserData *userLoaded(const PeerId &id) {
|
||||
return user(id, PeerData::FullLoaded);
|
||||
}
|
||||
inline ChatData *chatLoaded(const PeerId &id) {
|
||||
return chat(id, PeerData::FullLoaded);
|
||||
}
|
||||
inline ChannelData *channelLoaded(const PeerId &id) {
|
||||
return channel(id, PeerData::FullLoaded);
|
||||
}
|
||||
inline UserData *userLoaded(UserId userId) {
|
||||
return user(userId, PeerData::FullLoaded);
|
||||
}
|
||||
inline ChatData *chatLoaded(ChatId chatId) {
|
||||
return chat(chatId, PeerData::FullLoaded);
|
||||
}
|
||||
inline ChannelData *channelLoaded(ChannelId channelId) {
|
||||
return channel(channelId, PeerData::FullLoaded);
|
||||
}
|
||||
|
||||
PeerData *peer(const PeerId &id);
|
||||
UserData *user(const PeerId &id);
|
||||
ChatData *chat(const PeerId &id);
|
||||
ChannelData *channel(const PeerId &id);
|
||||
UserData *user(int32 user_id);
|
||||
ChatData *chat(int32 chat_id);
|
||||
ChannelData *channel(int32 channel_id);
|
||||
UserData *self();
|
||||
PeerData *peerByName(const QString &username);
|
||||
QString peerName(const PeerData *peer, bool forDialogs = false);
|
||||
PhotoData *photo(const PhotoId &photo);
|
||||
PhotoData *photoSet(const PhotoId &photo, PhotoData *convert, const uint64 &access, int32 date, const ImagePtr &thumb, const ImagePtr &medium, const ImagePtr &full);
|
||||
VideoData *video(const VideoId &video);
|
||||
VideoData *videoSet(const VideoId &video, VideoData *convert, const uint64 &access, int32 date, int32 duration, int32 w, int32 h, const ImagePtr &thumb, int32 dc, int32 size);
|
||||
AudioData *audio(const AudioId &audio);
|
||||
AudioData *audioSet(const AudioId &audio, AudioData *convert, const uint64 &access, int32 date, const QString &mime, int32 duration, int32 dc, int32 size);
|
||||
DocumentData *document(const DocumentId &document);
|
||||
DocumentData *documentSet(const DocumentId &document, DocumentData *convert, const uint64 &access, int32 date, const QVector<MTPDocumentAttribute> &attributes, const QString &mime, const ImagePtr &thumb, int32 dc, int32 size, const StorageImageLocation &thumbLocation);
|
||||
WebPageData *webPage(const WebPageId &webPage);
|
||||
WebPageData *webPageSet(const WebPageId &webPage, WebPageData *convert, const QString &, const QString &url, const QString &displayUrl, const QString &siteName, const QString &title, const QString &description, PhotoData *photo, DocumentData *doc, int32 duration, const QString &author, int32 pendingTill);
|
||||
ImageLinkData *imageLink(const QString &imageLink);
|
||||
ImageLinkData *imageLinkSet(const QString &imageLink, ImageLinkType type, const QString &url);
|
||||
LocationData *location(const LocationCoords &coords);
|
||||
void forgetMedia();
|
||||
|
||||
MTPPhoto photoFromUserPhoto(MTPint userId, MTPint date, const MTPUserProfilePhoto &photo);
|
||||
@@ -170,16 +169,27 @@ namespace App {
|
||||
History *historyFromDialog(const PeerId &peer, int32 unreadCnt, int32 maxInboxRead);
|
||||
History *historyLoaded(const PeerId &peer);
|
||||
HistoryItem *histItemById(ChannelId channelId, MsgId itemId);
|
||||
inline History *history(const PeerData *peer) {
|
||||
t_assert(peer != nullptr);
|
||||
return history(peer->id);
|
||||
}
|
||||
inline History *historyLoaded(const PeerData *peer) {
|
||||
return peer ? historyLoaded(peer->id) : nullptr;
|
||||
}
|
||||
inline HistoryItem *histItemById(const ChannelData *channel, MsgId itemId) {
|
||||
return histItemById(channel ? peerToChannel(channel->id) : 0, itemId);
|
||||
}
|
||||
inline HistoryItem *histItemById(const FullMsgId &msgId) {
|
||||
return histItemById(msgId.channel, msgId.msg);
|
||||
}
|
||||
HistoryItem *historyRegItem(HistoryItem *item);
|
||||
void historyRegItem(HistoryItem *item);
|
||||
void historyItemDetached(HistoryItem *item);
|
||||
void historyUnregItem(HistoryItem *item);
|
||||
void historyUpdateDependent(HistoryItem *item);
|
||||
void historyClearMsgs();
|
||||
void historyClearItems();
|
||||
void historyRegReply(HistoryReply *reply, HistoryItem *to);
|
||||
void historyUnregReply(HistoryReply *reply, HistoryItem *to);
|
||||
void historyRegDependency(HistoryItem *dependent, HistoryItem *dependency);
|
||||
void historyUnregDependency(HistoryItem *dependent, HistoryItem *dependency);
|
||||
|
||||
void historyRegRandom(uint64 randomId, const FullMsgId &itemId);
|
||||
void historyUnregRandom(uint64 randomId);
|
||||
@@ -201,66 +211,77 @@ namespace App {
|
||||
void mousedItem(HistoryItem *item);
|
||||
HistoryItem *mousedItem();
|
||||
|
||||
const style::font &monofont();
|
||||
const QPixmap &sprite();
|
||||
const QPixmap &emojis();
|
||||
const QPixmap &emojisLarge();
|
||||
const QPixmap &emoji();
|
||||
const QPixmap &emojiLarge();
|
||||
const QPixmap &emojiSingle(EmojiPtr emoji, int32 fontHeight);
|
||||
|
||||
void clearHistories();
|
||||
|
||||
void initMedia();
|
||||
void deinitMedia(bool completely = true);
|
||||
void deinitMedia();
|
||||
void playSound();
|
||||
|
||||
void checkImageCacheSize();
|
||||
|
||||
bool isValidPhone(QString phone);
|
||||
|
||||
enum LaunchState {
|
||||
Launched = 0,
|
||||
QuitRequested = 1,
|
||||
QuitProcessed = 2,
|
||||
};
|
||||
void quit();
|
||||
bool quiting();
|
||||
void setQuiting();
|
||||
bool quitting();
|
||||
LaunchState launchState();
|
||||
void setLaunchState(LaunchState state);
|
||||
|
||||
QImage readImage(QByteArray data, QByteArray *format = 0, bool opaque = true, bool *animated = 0);
|
||||
QImage readImage(QByteArray data, QByteArray *format = 0, bool opaque = true, bool *animated = 0);
|
||||
QImage readImage(const QString &file, QByteArray *format = 0, bool opaque = true, bool *animated = 0, QByteArray *content = 0);
|
||||
|
||||
void regVideoItem(VideoData *data, HistoryItem *item);
|
||||
void unregVideoItem(VideoData *data, HistoryItem *item);
|
||||
const VideoItems &videoItems();
|
||||
|
||||
void regAudioItem(AudioData *data, HistoryItem *item);
|
||||
void unregAudioItem(AudioData*data, HistoryItem *item);
|
||||
const AudioItems &audioItems();
|
||||
void regPhotoItem(PhotoData *data, HistoryItem *item);
|
||||
void unregPhotoItem(PhotoData *data, HistoryItem *item);
|
||||
const PhotoItems &photoItems();
|
||||
const PhotosData &photosData();
|
||||
|
||||
void regDocumentItem(DocumentData *data, HistoryItem *item);
|
||||
void unregDocumentItem(DocumentData *data, HistoryItem *item);
|
||||
const DocumentItems &documentItems();
|
||||
const DocumentsData &documentsData();
|
||||
|
||||
void regWebPageItem(WebPageData *data, HistoryItem *item);
|
||||
void unregWebPageItem(WebPageData *data, HistoryItem *item);
|
||||
const WebPageItems &webPageItems();
|
||||
|
||||
void regSharedContactPhone(int32 userId, const QString &phone);
|
||||
void regSharedContactItem(int32 userId, HistoryItem *item);
|
||||
void unregSharedContactItem(int32 userId, HistoryItem *item);
|
||||
const SharedContactItems &sharedContactItems();
|
||||
QString phoneFromSharedContact(int32 userId);
|
||||
|
||||
void regGifItem(ClipReader *reader, HistoryItem *item);
|
||||
void unregGifItem(ClipReader *reader);
|
||||
void stopGifItems();
|
||||
|
||||
void regMuted(PeerData *peer, int32 changeIn);
|
||||
void unregMuted(PeerData *peer);
|
||||
void updateMuted();
|
||||
|
||||
void regInlineResultLoader(FileLoader *loader, InlineResult *result);
|
||||
void unregInlineResultLoader(FileLoader *loader);
|
||||
InlineResult *inlineResultFromLoader(FileLoader *loader);
|
||||
|
||||
void feedReplyMarkup(ChannelId channelId, MsgId msgId, const MTPReplyMarkup &markup);
|
||||
void clearReplyMarkup(ChannelId channelId, MsgId msgId);
|
||||
const ReplyMarkup &replyMarkup(ChannelId channelId, MsgId msgId);
|
||||
|
||||
void setProxySettings(QNetworkAccessManager &manager);
|
||||
#ifndef TDESKTOP_DISABLE_NETWORK_PROXY
|
||||
QNetworkProxy getHttpProxySettings();
|
||||
#endif
|
||||
void setProxySettings(QTcpSocket &socket);
|
||||
|
||||
void sendBotCommand(const QString &cmd, MsgId replyTo = 0);
|
||||
void insertBotCommand(const QString &cmd);
|
||||
void searchByHashtag(const QString &tag, PeerData *inPeer);
|
||||
void openPeerByName(const QString &username, bool toProfile = false, const QString &startToken = QString());
|
||||
void joinGroupByHash(const QString &hash);
|
||||
void stickersBox(const QString &name);
|
||||
void openLocalUrl(const QString &url);
|
||||
|
||||
QImage **cornersMask();
|
||||
QPixmap **corners(RoundCorners index);
|
||||
void roundRect(Painter &p, int32 x, int32 y, int32 w, int32 h, const style::color &bg, RoundCorners index, const style::color *sh = 0);
|
||||
inline void roundRect(Painter &p, const QRect &rect, const style::color &bg, RoundCorners index, const style::color *sh = 0) {
|
||||
return roundRect(p, rect.x(), rect.y(), rect.width(), rect.height(), bg, index, sh);
|
||||
@@ -269,6 +290,10 @@ namespace App {
|
||||
inline void roundShadow(Painter &p, const QRect &rect, const style::color &sh, RoundCorners index) {
|
||||
return roundShadow(p, rect.x(), rect.y(), rect.width(), rect.height(), sh, index);
|
||||
}
|
||||
void roundRect(Painter &p, int32 x, int32 y, int32 w, int32 h, const style::color &bg);
|
||||
inline void roundRect(Painter &p, const QRect &rect, const style::color &bg) {
|
||||
return roundRect(p, rect.x(), rect.y(), rect.width(), rect.height(), bg);
|
||||
}
|
||||
|
||||
void initBackground(int32 id = DefaultChatBackground, const QImage &p = QImage(), bool nowrite = false);
|
||||
|
||||
@@ -291,3 +316,5 @@ namespace App {
|
||||
DeclareSetting(WallPapers, ServerBackgrounds);
|
||||
|
||||
};
|
||||
|
||||
#include "facades.h"
|
||||
|
||||
@@ -12,36 +12,61 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <QtNetwork/QLocalSocket>
|
||||
#include <QtNetwork/QLocalServer>
|
||||
#include <QtNetwork/QNetworkReply>
|
||||
|
||||
#include "window.h"
|
||||
#include "pspecific.h"
|
||||
|
||||
class MainWidget;
|
||||
class FileUploader;
|
||||
class Translator;
|
||||
class UpdateDownloader;
|
||||
|
||||
class Application : public PsApplication, public RPCSender {
|
||||
class UpdateChecker;
|
||||
class Application : public QApplication {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
|
||||
Application(int &argc, char **argv);
|
||||
~Application();
|
||||
|
||||
static Application *app();
|
||||
static Window *wnd();
|
||||
static QString language();
|
||||
static int32 languageId();
|
||||
static MainWidget *main();
|
||||
|
||||
// Single instance application
|
||||
public slots:
|
||||
|
||||
void socketConnected();
|
||||
void socketError(QLocalSocket::LocalSocketError e);
|
||||
void socketDisconnected();
|
||||
void socketWritten(qint64 bytes);
|
||||
void socketReading();
|
||||
void newInstanceConnected();
|
||||
|
||||
void readClients();
|
||||
void removeClients();
|
||||
|
||||
void startApplication(); // will be done in exec()
|
||||
void closeApplication(); // will be done in aboutToQuit()
|
||||
|
||||
private:
|
||||
|
||||
typedef QPair<QLocalSocket*, QByteArray> LocalClient;
|
||||
typedef QList<LocalClient> LocalClients;
|
||||
|
||||
QString _localServerName, _localSocketReadData;
|
||||
QLocalServer _localServer;
|
||||
QLocalSocket _localSocket;
|
||||
LocalClients _localClients;
|
||||
bool _secondInstance;
|
||||
|
||||
void singleInstanceChecked();
|
||||
|
||||
#ifndef TDESKTOP_DISABLE_AUTOUPDATE
|
||||
|
||||
// Autoupdating
|
||||
public:
|
||||
|
||||
void startUpdateCheck(bool forceWait);
|
||||
void stopUpdate();
|
||||
|
||||
enum UpdatingState {
|
||||
UpdatingNone,
|
||||
@@ -49,10 +74,87 @@ public:
|
||||
UpdatingReady,
|
||||
};
|
||||
UpdatingState updatingState();
|
||||
#ifndef TDESKTOP_DISABLE_AUTOUPDATE
|
||||
int32 updatingSize();
|
||||
int32 updatingReady();
|
||||
#endif
|
||||
|
||||
signals:
|
||||
|
||||
void updateChecking();
|
||||
void updateLatest();
|
||||
void updateProgress(qint64 ready, qint64 total);
|
||||
void updateReady();
|
||||
void updateFailed();
|
||||
|
||||
public slots:
|
||||
|
||||
void updateCheck();
|
||||
|
||||
void updateGotCurrent();
|
||||
void updateFailedCurrent(QNetworkReply::NetworkError e);
|
||||
|
||||
void onUpdateReady();
|
||||
void onUpdateFailed();
|
||||
|
||||
private:
|
||||
|
||||
SingleTimer _updateCheckTimer;
|
||||
QNetworkReply *_updateReply;
|
||||
QNetworkAccessManager _updateManager;
|
||||
QThread *_updateThread;
|
||||
UpdateChecker *_updateChecker;
|
||||
|
||||
#endif
|
||||
};
|
||||
|
||||
namespace Sandbox {
|
||||
|
||||
QRect availableGeometry();
|
||||
QRect screenGeometry(const QPoint &p);
|
||||
void setActiveWindow(QWidget *window);
|
||||
bool isSavingSession();
|
||||
|
||||
void installEventFilter(QObject *filter);
|
||||
|
||||
void execExternal(const QString &cmd);
|
||||
|
||||
#ifndef TDESKTOP_DISABLE_AUTOUPDATE
|
||||
|
||||
void startUpdateCheck();
|
||||
void stopUpdate();
|
||||
|
||||
Application::UpdatingState updatingState();
|
||||
int32 updatingSize();
|
||||
int32 updatingReady();
|
||||
|
||||
void updateChecking();
|
||||
void updateLatest();
|
||||
void updateProgress(qint64 ready, qint64 total);
|
||||
void updateFailed();
|
||||
void updateReady();
|
||||
|
||||
#endif
|
||||
|
||||
void connect(const char *signal, QObject *object, const char *method);
|
||||
|
||||
void launch();
|
||||
|
||||
}
|
||||
|
||||
class MainWidget;
|
||||
class FileUploader;
|
||||
class Translator;
|
||||
|
||||
class AppClass : public QObject, public RPCSender {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
|
||||
AppClass();
|
||||
~AppClass();
|
||||
|
||||
static AppClass *app();
|
||||
static Window *wnd();
|
||||
static MainWidget *main();
|
||||
|
||||
FileUploader *uploader();
|
||||
void uploadProfilePhoto(const QImage &tosend, const PeerId &peerId);
|
||||
@@ -61,7 +163,8 @@ public:
|
||||
bool isPhotoUpdating(const PeerId &peer);
|
||||
void cancelPhotoUpdate(const PeerId &peer);
|
||||
|
||||
void stopUpdate();
|
||||
void mtpPause();
|
||||
void mtpUnpause();
|
||||
|
||||
void selfPhotoCleared(const MTPUserProfilePhoto &result);
|
||||
void chatPhotoCleared(PeerId peer, const MTPUpdates &updates);
|
||||
@@ -80,14 +183,6 @@ public:
|
||||
|
||||
signals:
|
||||
|
||||
#ifndef TDESKTOP_DISABLE_AUTOUPDATE
|
||||
void updateChecking();
|
||||
void updateLatest();
|
||||
void updateDownloading(qint64 ready, qint64 total);
|
||||
void updateReady();
|
||||
void updateFailed();
|
||||
#endif
|
||||
|
||||
void peerPhotoDone(PeerId peer);
|
||||
void peerPhotoFail(PeerId peer);
|
||||
|
||||
@@ -95,29 +190,9 @@ signals:
|
||||
|
||||
public slots:
|
||||
|
||||
#ifndef TDESKTOP_DISABLE_AUTOUPDATE
|
||||
void startUpdateCheck(bool forceWait = false);
|
||||
#endif
|
||||
void socketConnected();
|
||||
void socketError(QLocalSocket::LocalSocketError e);
|
||||
void socketDisconnected();
|
||||
void socketWritten(qint64 bytes);
|
||||
void socketReading();
|
||||
void newInstanceConnected();
|
||||
void closeApplication();
|
||||
void doMtpUnpause();
|
||||
|
||||
void readClients();
|
||||
void removeClients();
|
||||
|
||||
#ifndef TDESKTOP_DISABLE_AUTOUPDATE
|
||||
void updateGotCurrent();
|
||||
void updateFailedCurrent(QNetworkReply::NetworkError e);
|
||||
|
||||
void onUpdateReady();
|
||||
void onUpdateFailed();
|
||||
#endif
|
||||
|
||||
void photoUpdated(const FullMsgId &msgId, const MTPInputFile &file);
|
||||
void photoUpdated(const FullMsgId &msgId, bool silent, const MTPInputFile &file);
|
||||
|
||||
void onSwitchDebugMode();
|
||||
void onSwitchTestMode();
|
||||
@@ -125,6 +200,8 @@ public slots:
|
||||
void killDownloadSessions();
|
||||
void onAppStateChanged(Qt::ApplicationState state);
|
||||
|
||||
void call_handleHistoryUpdate();
|
||||
|
||||
private:
|
||||
|
||||
QMap<FullMsgId, PeerId> photoUpdates;
|
||||
@@ -132,35 +209,12 @@ private:
|
||||
QMap<int32, uint64> killDownloadSessionTimes;
|
||||
SingleTimer killDownloadSessionsTimer;
|
||||
|
||||
void startApp();
|
||||
|
||||
typedef QPair<QLocalSocket*, QByteArray> ClientSocket;
|
||||
typedef QVector<ClientSocket> ClientSockets;
|
||||
|
||||
QString serverName;
|
||||
QLocalSocket socket;
|
||||
QString socketRead;
|
||||
QLocalServer server;
|
||||
ClientSockets clients;
|
||||
bool closing;
|
||||
|
||||
uint64 lastActionTime;
|
||||
|
||||
void execExternal(const QString &cmd);
|
||||
|
||||
Window *window;
|
||||
|
||||
#ifndef TDESKTOP_DISABLE_AUTOUPDATE
|
||||
mtpRequestId updateRequestId;
|
||||
QNetworkAccessManager updateManager;
|
||||
QNetworkReply *updateReply;
|
||||
SingleTimer updateCheckTimer;
|
||||
QThread *updateThread;
|
||||
UpdateDownloader *updateDownloader;
|
||||
#endif
|
||||
|
||||
QTimer writeUserConfigTimer;
|
||||
uint64 _lastActionTime;
|
||||
|
||||
Window *_window;
|
||||
FileUploader *_uploader;
|
||||
Translator *_translator;
|
||||
|
||||
SingleTimer _mtpUnpauseTimer;
|
||||
|
||||
};
|
||||
|
||||
|
Before Width: | Height: | Size: 586 KiB After Width: | Height: | Size: 762 KiB |
|
Before Width: | Height: | Size: 789 KiB After Width: | Height: | Size: 1.0 MiB |
|
Before Width: | Height: | Size: 1.2 MiB After Width: | Height: | Size: 1.6 MiB |
|
Before Width: | Height: | Size: 1.1 MiB After Width: | Height: | Size: 1.5 MiB |
|
Before Width: | Height: | Size: 1.6 MiB After Width: | Height: | Size: 2.1 MiB |
|
Before Width: | Height: | Size: 174 KiB After Width: | Height: | Size: 178 KiB |
|
Before Width: | Height: | Size: 233 KiB After Width: | Height: | Size: 243 KiB |
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
@@ -53,9 +56,11 @@ public:
|
||||
void play(const AudioMsgId &audio, int64 position = 0);
|
||||
void play(const SongMsgId &song, int64 position = 0);
|
||||
void pauseresume(MediaOverviewType type, bool fast = false);
|
||||
void seek(int64 position); // type == OverviewDocuments
|
||||
void seek(int64 position); // type == OverviewFiles
|
||||
void stop(MediaOverviewType type);
|
||||
|
||||
void stopAndClear();
|
||||
|
||||
void currentState(AudioMsgId *audio, AudioPlayerState *state = 0, int64 *position = 0, int64 *duration = 0, int32 *frequency = 0);
|
||||
void currentState(SongMsgId *song, AudioPlayerState *state = 0, int64 *position = 0, int64 *duration = 0, int32 *frequency = 0);
|
||||
|
||||
@@ -106,13 +111,23 @@ private:
|
||||
bool checkCurrentALError(MediaOverviewType type);
|
||||
|
||||
struct Msg {
|
||||
Msg() : position(0), duration(0), frequency(AudioVoiceMsgFrequency), skipStart(0), skipEnd(0), loading(0), started(0),
|
||||
state(AudioPlayerStopped), source(0), nextBuffer(0) {
|
||||
Msg() : position(0)
|
||||
, duration(0)
|
||||
, frequency(AudioVoiceMsgFrequency)
|
||||
, skipStart(0)
|
||||
, skipEnd(0)
|
||||
, loading(false)
|
||||
, started(0)
|
||||
, state(AudioPlayerStopped)
|
||||
, source(0)
|
||||
, nextBuffer(0) {
|
||||
memset(buffers, 0, sizeof(buffers));
|
||||
memset(samplesCount, 0, sizeof(samplesCount));
|
||||
}
|
||||
|
||||
QString fname;
|
||||
void clearData();
|
||||
|
||||
FileLocation file;
|
||||
QByteArray data;
|
||||
int64 position, duration;
|
||||
int32 frequency;
|
||||
@@ -129,11 +144,19 @@ private:
|
||||
struct AudioMsg : public Msg {
|
||||
AudioMsg() {
|
||||
}
|
||||
void clear() {
|
||||
audio = AudioMsgId();
|
||||
Msg::clearData();
|
||||
}
|
||||
AudioMsgId audio;
|
||||
};
|
||||
struct SongMsg : public Msg {
|
||||
SongMsg() {
|
||||
}
|
||||
void clear() {
|
||||
song = SongMsgId();
|
||||
Msg::clearData();
|
||||
}
|
||||
SongMsgId song;
|
||||
};
|
||||
|
||||
@@ -178,8 +201,8 @@ signals:
|
||||
void captureOnStart();
|
||||
void captureOnStop(bool needResult);
|
||||
|
||||
void onDone(QByteArray data, qint32 samples);
|
||||
void onUpdate(qint16 level, qint32 samples);
|
||||
void onDone(QByteArray data, VoiceWaveform waveform, qint32 samples);
|
||||
void onUpdate(quint16 level, qint32 samples);
|
||||
void onError();
|
||||
|
||||
private:
|
||||
@@ -315,8 +338,8 @@ public:
|
||||
signals:
|
||||
|
||||
void error();
|
||||
void update(qint16 level, qint32 samples);
|
||||
void done(QByteArray data, qint32 samples);
|
||||
void update(quint16 level, qint32 samples);
|
||||
void done(QByteArray data, VoiceWaveform waveform, qint32 samples);
|
||||
|
||||
public slots:
|
||||
|
||||
@@ -337,3 +360,4 @@ private:
|
||||
};
|
||||
|
||||
MTPDocumentAttribute audioReadSongAttributes(const QString &fname, const QByteArray &data, QImage &cover, QByteArray &coverBytes, QByteArray &coverFormat);
|
||||
VoiceWaveform audioCountWaveform(const FileLocation &file, const QByteArray &data);
|
||||
|
||||
@@ -12,14 +12,30 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
|
||||
#include "stdafx.h"
|
||||
|
||||
#include "autoupdater.h"
|
||||
|
||||
#include <openssl/rsa.h>
|
||||
#include <openssl/pem.h>
|
||||
#include <openssl/bio.h>
|
||||
#include <openssl/err.h>
|
||||
|
||||
#ifdef Q_OS_WIN // use Lzma SDK for win
|
||||
#include <LzmaLib.h>
|
||||
#else // Q_OS_WIN
|
||||
#include <lzma.h>
|
||||
#endif // else of Q_OS_WIN
|
||||
|
||||
#include "application.h"
|
||||
#include "pspecific.h"
|
||||
#include "autoupdater.h"
|
||||
|
||||
#ifndef TDESKTOP_DISABLE_AUTOUPDATE
|
||||
|
||||
@@ -31,7 +47,7 @@ typedef int VerInt;
|
||||
typedef wchar_t VerChar;
|
||||
#endif
|
||||
|
||||
UpdateDownloader::UpdateDownloader(QThread *thread, const QString &url) : reply(0), already(0), full(0) {
|
||||
UpdateChecker::UpdateChecker(QThread *thread, const QString &url) : reply(0), already(0), full(0) {
|
||||
updateUrl = url;
|
||||
moveToThread(thread);
|
||||
manager.moveToThread(thread);
|
||||
@@ -41,14 +57,14 @@ UpdateDownloader::UpdateDownloader(QThread *thread, const QString &url) : reply(
|
||||
initOutput();
|
||||
}
|
||||
|
||||
void UpdateDownloader::initOutput() {
|
||||
void UpdateChecker::initOutput() {
|
||||
QString fileName;
|
||||
QRegularExpressionMatch m = QRegularExpression(qsl("/([^/\\?]+)(\\?|$)")).match(updateUrl);
|
||||
if (m.hasMatch()) {
|
||||
fileName = m.captured(1).replace(QRegularExpression(qsl("[^a-zA-Z0-9_\\-]")), QString());
|
||||
}
|
||||
if (fileName.isEmpty()) {
|
||||
fileName = qsl("tupdate-%1").arg(rand());
|
||||
fileName = qsl("tupdate-%1").arg(rand_value<uint32>() % 1000000);
|
||||
}
|
||||
QString dirStr = cWorkingDir() + qsl("tupdates/");
|
||||
fileName = dirStr + fileName;
|
||||
@@ -96,11 +112,11 @@ void UpdateDownloader::initOutput() {
|
||||
}
|
||||
}
|
||||
|
||||
void UpdateDownloader::start() {
|
||||
void UpdateChecker::start() {
|
||||
sendRequest();
|
||||
}
|
||||
|
||||
void UpdateDownloader::sendRequest() {
|
||||
void UpdateChecker::sendRequest() {
|
||||
QNetworkRequest req(updateUrl);
|
||||
QByteArray rangeHeaderValue = "bytes=" + QByteArray::number(already) + "-";
|
||||
req.setRawHeader("Range", rangeHeaderValue);
|
||||
@@ -112,7 +128,7 @@ void UpdateDownloader::sendRequest() {
|
||||
connect(reply, SIGNAL(metaDataChanged()), this, SLOT(partMetaGot()));
|
||||
}
|
||||
|
||||
void UpdateDownloader::partMetaGot() {
|
||||
void UpdateChecker::partMetaGot() {
|
||||
typedef QList<QNetworkReply::RawHeaderPair> Pairs;
|
||||
Pairs pairs = reply->rawHeaderPairs();
|
||||
for (Pairs::iterator i = pairs.begin(), e = pairs.end(); i != e; ++i) {
|
||||
@@ -123,23 +139,24 @@ void UpdateDownloader::partMetaGot() {
|
||||
QMutexLocker lock(&mutex);
|
||||
full = m.captured(1).toInt();
|
||||
}
|
||||
emit App::app()->updateDownloading(already, full);
|
||||
|
||||
Sandbox::updateProgress(already, full);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
int32 UpdateDownloader::ready() {
|
||||
int32 UpdateChecker::ready() {
|
||||
QMutexLocker lock(&mutex);
|
||||
return already;
|
||||
}
|
||||
|
||||
int32 UpdateDownloader::size() {
|
||||
int32 UpdateChecker::size() {
|
||||
QMutexLocker lock(&mutex);
|
||||
return full;
|
||||
}
|
||||
|
||||
void UpdateDownloader::partFinished(qint64 got, qint64 total) {
|
||||
void UpdateChecker::partFinished(qint64 got, qint64 total) {
|
||||
if (!reply) return;
|
||||
|
||||
QVariant statusCode = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute);
|
||||
@@ -176,11 +193,11 @@ void UpdateDownloader::partFinished(qint64 got, qint64 total) {
|
||||
outputFile.close();
|
||||
unpackUpdate();
|
||||
} else {
|
||||
emit App::app()->updateDownloading(already, full);
|
||||
Sandbox::updateProgress(already, full);
|
||||
}
|
||||
}
|
||||
|
||||
void UpdateDownloader::partFailed(QNetworkReply::NetworkError e) {
|
||||
void UpdateChecker::partFailed(QNetworkReply::NetworkError e) {
|
||||
if (!reply) return;
|
||||
|
||||
QVariant statusCode = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute);
|
||||
@@ -195,15 +212,15 @@ void UpdateDownloader::partFailed(QNetworkReply::NetworkError e) {
|
||||
}
|
||||
}
|
||||
LOG(("Update Error: failed to download part starting from %1, error %2").arg(already).arg(e));
|
||||
emit App::app()->updateFailed();
|
||||
Sandbox::updateFailed();
|
||||
}
|
||||
|
||||
void UpdateDownloader::fatalFail() {
|
||||
void UpdateChecker::fatalFail() {
|
||||
clearAll();
|
||||
emit App::app()->updateFailed();
|
||||
Sandbox::updateFailed();
|
||||
}
|
||||
|
||||
void UpdateDownloader::clearAll() {
|
||||
void UpdateChecker::clearAll() {
|
||||
psDeleteDir(cWorkingDir() + qsl("tupdates"));
|
||||
}
|
||||
|
||||
@@ -222,7 +239,7 @@ void UpdateDownloader::clearAll() {
|
||||
// return QString::fromWCharArray(errMsg);
|
||||
//}
|
||||
|
||||
void UpdateDownloader::unpackUpdate() {
|
||||
void UpdateChecker::unpackUpdate() {
|
||||
QByteArray packed;
|
||||
if (!outputFile.open(QIODevice::ReadOnly)) {
|
||||
LOG(("Update Error: cant read updates file!"));
|
||||
@@ -266,7 +283,7 @@ void UpdateDownloader::unpackUpdate() {
|
||||
}
|
||||
if (RSA_verify(NID_sha1, (const uchar*)(compressed.constData() + hSigLen), hShaLen, (const uchar*)(compressed.constData()), hSigLen, pbKey) != 1) { // verify signature
|
||||
RSA_free(pbKey);
|
||||
if (cDevVersion()) { // try other public key, if we are in dev version
|
||||
if (cDevVersion() || cBetaVersion()) { // try other public key, if we are in dev or beta version
|
||||
pbKey = PEM_read_bio_RSAPublicKey(BIO_new_mem_buf(const_cast<char*>(DevVersion ? UpdatesPublicKey : UpdatesPublicDevKey), -1), 0, 0, 0);
|
||||
if (!pbKey) {
|
||||
LOG(("Update Error: cant read public rsa key!"));
|
||||
@@ -357,7 +374,19 @@ void UpdateDownloader::unpackUpdate() {
|
||||
LOG(("Update Error: cant read version from downloaded stream, status: %1").arg(stream.status()));
|
||||
return fatalFail();
|
||||
}
|
||||
if (int32(version) <= AppVersion) {
|
||||
|
||||
quint64 betaVersion = 0;
|
||||
if (version == 0x7FFFFFFF) { // beta version
|
||||
stream >> betaVersion;
|
||||
if (stream.status() != QDataStream::Ok) {
|
||||
LOG(("Update Error: cant read beta version from downloaded stream, status: %1").arg(stream.status()));
|
||||
return fatalFail();
|
||||
}
|
||||
if (!cBetaVersion() || betaVersion <= cBetaVersion()) {
|
||||
LOG(("Update Error: downloaded beta version %1 is not greater, than mine %2").arg(betaVersion).arg(cBetaVersion()));
|
||||
return fatalFail();
|
||||
}
|
||||
} else if (int32(version) <= AppVersion) {
|
||||
LOG(("Update Error: downloaded version %1 is not greater, than mine %2").arg(version).arg(AppVersion));
|
||||
return fatalFail();
|
||||
}
|
||||
@@ -427,8 +456,12 @@ void UpdateDownloader::unpackUpdate() {
|
||||
return fatalFail();
|
||||
}
|
||||
fVersion.write((const char*)&versionNum, sizeof(VerInt));
|
||||
fVersion.write((const char*)&versionLen, sizeof(VerInt));
|
||||
fVersion.write((const char*)&versionStr[0], versionLen);
|
||||
if (versionNum == 0x7FFFFFFF) { // beta version
|
||||
fVersion.write((const char*)&betaVersion, sizeof(quint64));
|
||||
} else {
|
||||
fVersion.write((const char*)&versionLen, sizeof(VerInt));
|
||||
fVersion.write((const char*)&versionStr[0], versionLen);
|
||||
}
|
||||
fVersion.close();
|
||||
}
|
||||
|
||||
@@ -446,10 +479,10 @@ void UpdateDownloader::unpackUpdate() {
|
||||
}
|
||||
outputFile.remove();
|
||||
|
||||
emit App::app()->updateReady();
|
||||
Sandbox::updateReady();
|
||||
}
|
||||
|
||||
UpdateDownloader::~UpdateDownloader() {
|
||||
UpdateChecker::~UpdateChecker() {
|
||||
delete reply;
|
||||
reply = 0;
|
||||
}
|
||||
@@ -458,7 +491,7 @@ bool checkReadyUpdate() {
|
||||
QString readyFilePath = cWorkingDir() + qsl("tupdates/temp/ready"), readyPath = cWorkingDir() + qsl("tupdates/temp");
|
||||
if (!QFile(readyFilePath).exists()) {
|
||||
if (QDir(cWorkingDir() + qsl("tupdates/ready")).exists() || QDir(cWorkingDir() + qsl("tupdates/temp")).exists()) {
|
||||
UpdateDownloader::clearAll();
|
||||
UpdateChecker::clearAll();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -469,21 +502,33 @@ bool checkReadyUpdate() {
|
||||
QFile fVersion(versionPath);
|
||||
if (!fVersion.open(QIODevice::ReadOnly)) {
|
||||
LOG(("Update Error: cant read version file '%1'").arg(versionPath));
|
||||
UpdateDownloader::clearAll();
|
||||
UpdateChecker::clearAll();
|
||||
return false;
|
||||
}
|
||||
VerInt versionNum;
|
||||
if (fVersion.read((char*)&versionNum, sizeof(VerInt)) != sizeof(VerInt)) {
|
||||
LOG(("Update Error: cant read version from file '%1'").arg(versionPath));
|
||||
UpdateDownloader::clearAll();
|
||||
UpdateChecker::clearAll();
|
||||
return false;
|
||||
}
|
||||
if (versionNum == 0x7FFFFFFF) { // beta version
|
||||
quint64 betaVersion = 0;
|
||||
if (fVersion.read((char*)&betaVersion, sizeof(quint64)) != sizeof(quint64)) {
|
||||
LOG(("Update Error: cant read beta version from file '%1'").arg(versionPath));
|
||||
UpdateChecker::clearAll();
|
||||
return false;
|
||||
}
|
||||
if (!cBetaVersion() || betaVersion <= cBetaVersion()) {
|
||||
LOG(("Update Error: cant install beta version %1 having beta version %2").arg(betaVersion).arg(cBetaVersion()));
|
||||
UpdateChecker::clearAll();
|
||||
return false;
|
||||
}
|
||||
} else if (versionNum <= AppVersion) {
|
||||
LOG(("Update Error: cant install version %1 having version %2").arg(versionNum).arg(AppVersion));
|
||||
UpdateChecker::clearAll();
|
||||
return false;
|
||||
}
|
||||
fVersion.close();
|
||||
if (versionNum <= AppVersion) {
|
||||
LOG(("Update Error: cant install version %1 having version %2").arg(versionNum).arg(AppVersion));
|
||||
UpdateDownloader::clearAll();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef Q_OS_WIN
|
||||
@@ -499,11 +544,11 @@ bool checkReadyUpdate() {
|
||||
if (!updater.exists()) {
|
||||
QFileInfo current(curUpdater);
|
||||
if (!current.exists()) {
|
||||
UpdateDownloader::clearAll();
|
||||
UpdateChecker::clearAll();
|
||||
return false;
|
||||
}
|
||||
if (!QFile(current.absoluteFilePath()).copy(updater.absoluteFilePath())) {
|
||||
UpdateDownloader::clearAll();
|
||||
UpdateChecker::clearAll();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -514,24 +559,24 @@ bool checkReadyUpdate() {
|
||||
cSetWriteProtected(true);
|
||||
return true;
|
||||
} else {
|
||||
UpdateDownloader::clearAll();
|
||||
UpdateChecker::clearAll();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
if (DeleteFile(updater.absoluteFilePath().toStdWString().c_str()) == FALSE) {
|
||||
UpdateDownloader::clearAll();
|
||||
UpdateChecker::clearAll();
|
||||
return false;
|
||||
}
|
||||
#elif defined Q_OS_MAC
|
||||
QDir().mkpath(QFileInfo(curUpdater).absolutePath());
|
||||
DEBUG_LOG(("Update Info: moving %1 to %2..").arg(updater.absoluteFilePath()).arg(curUpdater));
|
||||
DEBUG_LOG(("Update Info: moving %1 to %2...").arg(updater.absoluteFilePath()).arg(curUpdater));
|
||||
if (!objc_moveFile(updater.absoluteFilePath(), curUpdater)) {
|
||||
UpdateDownloader::clearAll();
|
||||
UpdateChecker::clearAll();
|
||||
return false;
|
||||
}
|
||||
#elif defined Q_OS_LINUX
|
||||
if (!linuxMoveFile(QFile::encodeName(updater.absoluteFilePath()).constData(), QFile::encodeName(curUpdater).constData())) {
|
||||
UpdateDownloader::clearAll();
|
||||
UpdateChecker::clearAll();
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
@@ -539,3 +584,47 @@ bool checkReadyUpdate() {
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
QString countBetaVersionSignature(uint64 version) { // duplicated in packer.cpp
|
||||
if (cBetaPrivateKey().isEmpty()) {
|
||||
LOG(("Error: Trying to count beta version signature without beta private key!"));
|
||||
return QString();
|
||||
}
|
||||
|
||||
QByteArray signedData = (qstr("TelegramBeta_") + QString::number(version, 16).toLower()).toUtf8();
|
||||
|
||||
static const int32 shaSize = 20, keySize = 128;
|
||||
|
||||
uchar sha1Buffer[shaSize];
|
||||
hashSha1(signedData.constData(), signedData.size(), sha1Buffer); // count sha1
|
||||
|
||||
uint32 siglen = 0;
|
||||
|
||||
RSA *prKey = PEM_read_bio_RSAPrivateKey(BIO_new_mem_buf(const_cast<char*>(cBetaPrivateKey().constData()), -1), 0, 0, 0);
|
||||
if (!prKey) {
|
||||
LOG(("Error: Could not read beta private key!"));
|
||||
return QString();
|
||||
}
|
||||
if (RSA_size(prKey) != keySize) {
|
||||
LOG(("Error: Bad beta private key size: %1").arg(RSA_size(prKey)));
|
||||
RSA_free(prKey);
|
||||
return QString();
|
||||
}
|
||||
QByteArray signature;
|
||||
signature.resize(keySize);
|
||||
if (RSA_sign(NID_sha1, (const uchar*)(sha1Buffer), shaSize, (uchar*)(signature.data()), &siglen, prKey) != 1) { // count signature
|
||||
LOG(("Error: Counting beta version signature failed!"));
|
||||
RSA_free(prKey);
|
||||
return QString();
|
||||
}
|
||||
RSA_free(prKey);
|
||||
|
||||
if (siglen != keySize) {
|
||||
LOG(("Error: Bad beta version signature length: %1").arg(siglen));
|
||||
return QString();
|
||||
}
|
||||
|
||||
signature = signature.toBase64(QByteArray::Base64UrlEncoding | QByteArray::OmitTrailingEquals);
|
||||
signature = signature.replace('-', '8').replace('_', 'B');
|
||||
return QString::fromUtf8(signature.mid(19, 32));
|
||||
}
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
@@ -23,11 +26,11 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
#include <QtNetwork/QLocalServer>
|
||||
#include <QtNetwork/QNetworkReply>
|
||||
|
||||
class UpdateDownloader : public QObject {
|
||||
class UpdateChecker : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
UpdateDownloader(QThread *thread, const QString &url);
|
||||
UpdateChecker(QThread *thread, const QString &url);
|
||||
|
||||
void unpackUpdate();
|
||||
|
||||
@@ -36,7 +39,7 @@ public:
|
||||
|
||||
static void clearAll();
|
||||
|
||||
~UpdateDownloader();
|
||||
~UpdateChecker();
|
||||
|
||||
public slots:
|
||||
|
||||
@@ -63,4 +66,11 @@ private:
|
||||
|
||||
bool checkReadyUpdate();
|
||||
|
||||
#else
|
||||
class UpdateChecker : public QObject {
|
||||
Q_OBJECT
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
QString countBetaVersionSignature(uint64 version);
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "lang.h"
|
||||
@@ -22,36 +25,71 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
#include "mainwidget.h"
|
||||
#include "window.h"
|
||||
|
||||
AboutBox::AboutBox() :
|
||||
_done(this, lang(lng_about_done), st::aboutCloseButton),
|
||||
_version(this, qsl("[a href=\"https://desktop.telegram.org/#changelog\"]") + textClean(lng_about_version(lt_version, QString::fromWCharArray(AppVersionStr) + (cDevVersion() ? " dev" : ""))) + qsl("[/a]"), st::aboutVersion, st::defaultTextStyle),
|
||||
_text(this, lang(lng_about_text), st::aboutLabel, st::aboutTextStyle) {
|
||||
|
||||
resizeMaxHeight(st::aboutWidth, st::aboutHeight);
|
||||
#include "autoupdater.h"
|
||||
#include "boxes/confirmbox.h"
|
||||
|
||||
_version.move(0, st::aboutVersionTop);
|
||||
_text.move(0, st::aboutTextTop);
|
||||
#include "application.h"
|
||||
|
||||
_headerWidth = st::aboutHeaderFont->m.width(qsl("Telegram "));
|
||||
_subheaderWidth = st::aboutSubheaderFont->m.width(qsl("Desktop"));
|
||||
AboutBox::AboutBox() : AbstractBox(st::aboutWidth)
|
||||
, _version(this, lng_about_version(lt_version, QString::fromWCharArray(AppVersionStr) + (cDevVersion() ? " dev" : "") + (cBetaVersion() ? qsl(" beta %1").arg(cBetaVersion()) : QString())), st::aboutVersionLink)
|
||||
, _text1(this, lang(lng_about_text_1), st::aboutLabel, st::aboutTextStyle)
|
||||
, _text2(this, lang(lng_about_text_2), st::aboutLabel, st::aboutTextStyle)
|
||||
, _text3(this, QString(), st::aboutLabel, st::aboutTextStyle)
|
||||
, _done(this, lang(lng_close), st::defaultBoxButton) {
|
||||
_text3.setRichText(lng_about_text_3(lt_faq_open, qsl("[a href=\"%1\"]").arg(telegramFaqLink()), lt_faq_close, qsl("[/a]")));
|
||||
|
||||
_done.move(0, height() - _done.height());
|
||||
setMaxHeight(st::boxTitleHeight + st::aboutTextTop + _text1.height() + st::aboutSkip + _text2.height() + st::aboutSkip + _text3.height() + st::boxButtonPadding.top() + _done.height() + st::boxButtonPadding.bottom());
|
||||
|
||||
connect(&_version, SIGNAL(clicked()), this, SLOT(onVersion()));
|
||||
connect(&_done, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
|
||||
prepare();
|
||||
|
||||
setAcceptDrops(true);
|
||||
}
|
||||
|
||||
void AboutBox::hideAll() {
|
||||
_done.hide();
|
||||
_version.hide();
|
||||
_text.hide();
|
||||
_text1.hide();
|
||||
_text2.hide();
|
||||
_text3.hide();
|
||||
_done.hide();
|
||||
}
|
||||
|
||||
void AboutBox::showAll() {
|
||||
_done.show();
|
||||
_version.show();
|
||||
_text.show();
|
||||
_text1.show();
|
||||
_text2.show();
|
||||
_text3.show();
|
||||
_done.show();
|
||||
}
|
||||
|
||||
void AboutBox::resizeEvent(QResizeEvent *e) {
|
||||
_version.moveToLeft(st::boxPadding.left(), st::boxTitleHeight + st::aboutVersionTop);
|
||||
_text1.moveToLeft(st::boxPadding.left(), st::boxTitleHeight + st::aboutTextTop);
|
||||
_text2.moveToLeft(st::boxPadding.left(), _text1.y() + _text1.height() + st::aboutSkip);
|
||||
_text3.moveToLeft(st::boxPadding.left(), _text2.y() + _text2.height() + st::aboutSkip);
|
||||
_done.moveToRight(st::boxButtonPadding.right(), height() - st::boxButtonPadding.bottom() - _done.height());
|
||||
}
|
||||
|
||||
void AboutBox::onVersion() {
|
||||
if (cRealBetaVersion()) {
|
||||
QString url = qsl("https://tdesktop.com/");
|
||||
switch (cPlatform()) {
|
||||
case dbipWindows: url += qsl("win/%1.zip"); break;
|
||||
case dbipMac: url += qsl("mac/%1.zip"); break;
|
||||
case dbipMacOld: url += qsl("mac32/%1.zip"); break;
|
||||
case dbipLinux32: url += qsl("linux32/%1.tar.xz"); break;
|
||||
case dbipLinux64: url += qsl("linux/%1.tar.xz"); break;
|
||||
}
|
||||
url = url.arg(qsl("tbeta%1_%2").arg(cRealBetaVersion()).arg(countBetaVersionSignature(cRealBetaVersion())));
|
||||
|
||||
Application::clipboard()->setText(url);
|
||||
|
||||
Ui::showLayer(new InformBox("The link to the current private beta version of Telegram Desktop was copied to the clipboard."));
|
||||
} else {
|
||||
QDesktopServices::openUrl(qsl("https://desktop.telegram.org/?_hash=changelog"));
|
||||
}
|
||||
}
|
||||
|
||||
void AboutBox::keyPressEvent(QKeyEvent *e) {
|
||||
@@ -63,15 +101,50 @@ void AboutBox::keyPressEvent(QKeyEvent *e) {
|
||||
}
|
||||
|
||||
void AboutBox::paintEvent(QPaintEvent *e) {
|
||||
QPainter p(this);
|
||||
Painter p(this);
|
||||
if (paint(p)) return;
|
||||
|
||||
p.drawPixmap(QPoint((width() - st::aboutIcon.pxWidth()) / 2, st::aboutIconTop), App::sprite(), st::aboutIcon);
|
||||
|
||||
p.setPen(st::black->p);
|
||||
p.setFont(st::aboutHeaderFont->f);
|
||||
p.drawText((width() - (_headerWidth + _subheaderWidth)) / 2, st::aboutHeaderTop + st::aboutHeaderFont->ascent, qsl("Telegram"));
|
||||
|
||||
p.setFont(st::aboutSubheaderFont->f);
|
||||
p.drawText((width() - (_headerWidth + _subheaderWidth)) / 2 + _headerWidth, st::aboutHeaderTop + st::aboutSubheaderFont->ascent, qsl("Desktop"));
|
||||
paintTitle(p, qsl("Telegram Desktop"));
|
||||
}
|
||||
|
||||
#ifndef TDESKTOP_DISABLE_CRASH_REPORTS
|
||||
QString _getCrashReportFile(const QMimeData *m) {
|
||||
if (!m || m->urls().size() != 1) return QString();
|
||||
|
||||
QString file(m->urls().at(0).toLocalFile());
|
||||
if (file.startsWith(qsl("/.file/id="))) file = psConvertFileUrl(file);
|
||||
|
||||
return file.endsWith(qstr(".telegramcrash"), Qt::CaseInsensitive) ? file : QString();
|
||||
}
|
||||
#endif // !TDESKTOP_DISABLE_CRASH_REPORTS
|
||||
|
||||
void AboutBox::dragEnterEvent(QDragEnterEvent *e) {
|
||||
#ifndef TDESKTOP_DISABLE_CRASH_REPORTS
|
||||
if (!_getCrashReportFile(e->mimeData()).isEmpty()) {
|
||||
e->setDropAction(Qt::CopyAction);
|
||||
e->accept();
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void AboutBox::dropEvent(QDropEvent *e) {
|
||||
#ifndef TDESKTOP_DISABLE_CRASH_REPORTS
|
||||
if (!_getCrashReportFile(e->mimeData()).isEmpty()) {
|
||||
e->acceptProposedAction();
|
||||
showCrashReportWindow(_getCrashReportFile(e->mimeData()));
|
||||
}
|
||||
#endif // !TDESKTOP_DISABLE_CRASH_REPORTS
|
||||
}
|
||||
|
||||
QString telegramFaqLink() {
|
||||
QString result = qsl("https://telegram.org/faq");
|
||||
if (cLang() > languageDefault && cLang() < languageCount) {
|
||||
const char *code = LanguageCodes[cLang()];
|
||||
if (qstr("de") == code || qstr("es") == code || qstr("it") == code || qstr("ko") == code) {
|
||||
result += qsl("/") + code;
|
||||
} else if (qstr("pt_BR") == code) {
|
||||
result += qsl("/br");
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
@@ -25,9 +28,17 @@ class AboutBox : public AbstractBox {
|
||||
public:
|
||||
|
||||
AboutBox();
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
void keyPressEvent(QKeyEvent *e);
|
||||
void paintEvent(QPaintEvent *e);
|
||||
|
||||
|
||||
void dragEnterEvent(QDragEnterEvent *e);
|
||||
void dropEvent(QDropEvent *e);
|
||||
|
||||
public slots:
|
||||
|
||||
void onVersion();
|
||||
|
||||
protected:
|
||||
|
||||
void hideAll();
|
||||
@@ -35,7 +46,9 @@ protected:
|
||||
|
||||
private:
|
||||
|
||||
BottomButton _done;
|
||||
FlatLabel _version, _text;
|
||||
int32 _headerWidth, _subheaderWidth;
|
||||
LinkButton _version;
|
||||
FlatLabel _text1, _text2, _text3;
|
||||
BoxButton _done;
|
||||
};
|
||||
|
||||
QString telegramFaqLink();
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "lang.h"
|
||||
@@ -24,13 +27,66 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
#include "mainwidget.h"
|
||||
#include "window.h"
|
||||
|
||||
AbstractBox::AbstractBox() : _maxHeight(0), _hiding(false), a_opacity(0, 1) {
|
||||
resize(st::boxWidth, 0);
|
||||
void BlueTitleShadow::paintEvent(QPaintEvent *e) {
|
||||
Painter p(this);
|
||||
|
||||
QRect r(e->rect());
|
||||
p.drawPixmap(QRect(r.left(), 0, r.width(), height()), App::sprite(), st::boxBlueShadow);
|
||||
}
|
||||
|
||||
BlueTitleClose::BlueTitleClose(QWidget *parent) : Button(parent)
|
||||
, a_iconFg(st::boxBlueCloseBg->c)
|
||||
, _a_over(animation(this, &BlueTitleClose::step_over)) {
|
||||
resize(st::boxTitleHeight, st::boxTitleHeight);
|
||||
setCursor(style::cur_pointer);
|
||||
connect(this, SIGNAL(stateChanged(int, ButtonStateChangeSource)), this, SLOT(onStateChange(int, ButtonStateChangeSource)));
|
||||
}
|
||||
|
||||
void BlueTitleClose::onStateChange(int oldState, ButtonStateChangeSource source) {
|
||||
if ((oldState & StateOver) != (_state & StateOver)) {
|
||||
a_iconFg.start(((_state & StateOver) ? st::white : st::boxBlueCloseBg)->c);
|
||||
_a_over.start();
|
||||
}
|
||||
}
|
||||
|
||||
void BlueTitleClose::step_over(float64 ms, bool timer) {
|
||||
float64 dt = ms / st::boxBlueCloseDuration;
|
||||
if (dt >= 1) {
|
||||
_a_over.stop();
|
||||
a_iconFg.finish();
|
||||
} else {
|
||||
a_iconFg.update(dt, anim::linear);
|
||||
}
|
||||
if (timer) update((st::boxTitleHeight - st::boxBlueCloseIcon.pxWidth()) / 2, (st::boxTitleHeight - st::boxBlueCloseIcon.pxHeight()) / 2, st::boxBlueCloseIcon.pxWidth(), st::boxBlueCloseIcon.pxHeight());
|
||||
}
|
||||
|
||||
void BlueTitleClose::paintEvent(QPaintEvent *e) {
|
||||
Painter p(this);
|
||||
|
||||
QRect r(e->rect()), s((st::boxTitleHeight - st::boxBlueCloseIcon.pxWidth()) / 2, (st::boxTitleHeight - st::boxBlueCloseIcon.pxHeight()) / 2, st::boxBlueCloseIcon.pxWidth(), st::boxBlueCloseIcon.pxHeight());
|
||||
if (!s.contains(r)) {
|
||||
p.fillRect(r, st::boxBlueTitleBg->b);
|
||||
}
|
||||
if (s.intersects(r)) {
|
||||
p.fillRect(s.intersected(r), a_iconFg.current());
|
||||
p.drawSprite(s.topLeft(), st::boxBlueCloseIcon);
|
||||
}
|
||||
}
|
||||
|
||||
AbstractBox::AbstractBox(int32 w) : LayeredWidget()
|
||||
, _maxHeight(0)
|
||||
, _hiding(false)
|
||||
, _closed(false)
|
||||
, a_opacity(0, 1)
|
||||
, _blueTitle(false)
|
||||
, _blueClose(0)
|
||||
, _blueShadow(0) {
|
||||
resize(w, 0);
|
||||
}
|
||||
|
||||
void AbstractBox::prepare() {
|
||||
showAll();
|
||||
_cache = myGrab(this, rect());
|
||||
_cache = myGrab(this);
|
||||
hideAll();
|
||||
}
|
||||
|
||||
@@ -42,6 +98,16 @@ void AbstractBox::keyPressEvent(QKeyEvent *e) {
|
||||
}
|
||||
}
|
||||
|
||||
void AbstractBox::resizeEvent(QResizeEvent *e) {
|
||||
if (_blueClose) {
|
||||
_blueClose->moveToRight(0, 0);
|
||||
}
|
||||
if (_blueShadow) {
|
||||
_blueShadow->moveToLeft(0, st::boxTitleHeight);
|
||||
_blueShadow->resize(width(), st::boxBlueShadow.pxHeight());
|
||||
}
|
||||
}
|
||||
|
||||
void AbstractBox::parentResized() {
|
||||
int32 newHeight = countHeight();
|
||||
setGeometry((App::wnd()->width() - width()) / 2, (App::wnd()->height() - newHeight) / 2, width(), newHeight);
|
||||
@@ -54,7 +120,7 @@ bool AbstractBox::paint(QPainter &p) {
|
||||
result = (_hiding && a_opacity.current() < 0.01);
|
||||
|
||||
// fill bg
|
||||
p.fillRect(rect(), st::boxBG->b);
|
||||
p.fillRect(rect(), st::boxBg->b);
|
||||
} else {
|
||||
p.setOpacity(a_opacity.current());
|
||||
p.drawPixmap(0, 0, _cache);
|
||||
@@ -62,23 +128,24 @@ bool AbstractBox::paint(QPainter &p) {
|
||||
return result;
|
||||
}
|
||||
|
||||
void AbstractBox::paintTitle(Painter &p, const QString &title, bool withShadow) {
|
||||
if (withShadow) {
|
||||
// paint shadow
|
||||
p.fillRect(0, st::boxTitleHeight, width(), st::scrollDef.topsh, st::scrollDef.shColor->b);
|
||||
void AbstractBox::paintTitle(Painter &p, const QString &title, const QString &additional) {
|
||||
p.setFont(st::boxTitleFont);
|
||||
if (_blueTitle) {
|
||||
p.fillRect(0, 0, width(), st::boxTitleHeight, st::boxBlueTitleBg->b);
|
||||
p.setPen(st::white);
|
||||
|
||||
int32 titleWidth = st::boxTitleFont->width(title);
|
||||
p.drawTextLeft(st::boxBlueTitlePosition.x(), st::boxBlueTitlePosition.y(), width(), title, titleWidth);
|
||||
|
||||
if (!additional.isEmpty()) {
|
||||
p.setFont(st::boxTextFont);
|
||||
p.setPen(st::boxBlueTitleAdditionalFg);
|
||||
p.drawTextLeft(st::boxBlueTitlePosition.x() + titleWidth + st::boxBlueTitleAdditionalSkip, st::boxBlueTitlePosition.y(), width(), additional);
|
||||
}
|
||||
} else {
|
||||
p.setPen(st::boxTitleFg);
|
||||
p.drawTextLeft(st::boxTitlePosition.x(), st::boxTitlePosition.y(), width(), title);
|
||||
}
|
||||
|
||||
// paint box title
|
||||
p.setFont(st::boxTitleFont->f);
|
||||
p.setPen(st::black->p);
|
||||
p.drawTextLeft(st::boxTitlePos.x(), st::boxTitlePos.y(), width(), title);
|
||||
}
|
||||
|
||||
void AbstractBox::paintGrayTitle(QPainter &p, const QString &title) {
|
||||
// draw box title
|
||||
p.setFont(st::boxFont->f);
|
||||
p.setPen(st::boxGrayTitle->p);
|
||||
p.drawText(QRect(st::boxTitlePos.x(), st::boxTitlePos.y(), width() - 2 * st::boxTitlePos.x(), st::boxFont->height), title, style::al_top);
|
||||
}
|
||||
|
||||
void AbstractBox::paintEvent(QPaintEvent *e) {
|
||||
@@ -86,7 +153,7 @@ void AbstractBox::paintEvent(QPaintEvent *e) {
|
||||
if (paint(p)) return;
|
||||
}
|
||||
|
||||
void AbstractBox::animStep(float64 ms) {
|
||||
void AbstractBox::showStep(float64 ms) {
|
||||
if (ms >= 1) {
|
||||
a_opacity.finish();
|
||||
_cache = QPixmap();
|
||||
@@ -110,7 +177,17 @@ void AbstractBox::resizeMaxHeight(int32 newWidth, int32 maxHeight) {
|
||||
QRect g(geometry());
|
||||
_maxHeight = maxHeight;
|
||||
resize(newWidth, countHeight());
|
||||
if (parentWidget()) parentWidget()->update(geometry().united(g).marginsAdded(QMargins(st::boxShadow.pxWidth(), st::boxShadow.pxHeight(), st::boxShadow.pxWidth(), st::boxShadow.pxHeight())));
|
||||
if (parentWidget()) {
|
||||
QRect r = geometry();
|
||||
int32 parenth = parentWidget()->height();
|
||||
if (r.top() + r.height() + st::boxVerticalMargin > parenth) {
|
||||
int32 newTop = qMax(parenth - int(st::boxVerticalMargin) - r.height(), (parenth - r.height()) / 2);
|
||||
if (newTop != r.top()) {
|
||||
move(r.left(), newTop);
|
||||
}
|
||||
}
|
||||
parentWidget()->update(geometry().united(g).marginsAdded(QMargins(st::boxShadow.pxWidth(), st::boxShadow.pxHeight(), st::boxShadow.pxWidth(), st::boxShadow.pxHeight())));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -119,26 +196,47 @@ int32 AbstractBox::countHeight() const {
|
||||
}
|
||||
|
||||
void AbstractBox::onClose() {
|
||||
closePressed();
|
||||
if (!_closed) {
|
||||
_closed = true;
|
||||
closePressed();
|
||||
}
|
||||
emit closed();
|
||||
}
|
||||
|
||||
void AbstractBox::startHide() {
|
||||
_hiding = true;
|
||||
if (_cache.isNull()) {
|
||||
_cache = myGrab(this, rect());
|
||||
_cache = myGrab(this);
|
||||
hideAll();
|
||||
}
|
||||
a_opacity.start(0);
|
||||
setAttribute(Qt::WA_OpaquePaintEvent, false);
|
||||
}
|
||||
|
||||
ScrollableBox::ScrollableBox(const style::flatScroll &scroll) : AbstractBox(),
|
||||
_scroll(this, scroll), _innerPtr(0), _topSkip(st::boxTitleHeight), _bottomSkip(0) {
|
||||
void AbstractBox::setBlueTitle(bool blue) {
|
||||
_blueTitle = blue;
|
||||
delete _blueShadow;
|
||||
_blueShadow = new BlueTitleShadow(this);
|
||||
delete _blueClose;
|
||||
_blueClose = new BlueTitleClose(this);
|
||||
_blueClose->setAttribute(Qt::WA_OpaquePaintEvent);
|
||||
connect(_blueClose, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
}
|
||||
|
||||
void AbstractBox::raiseShadow() {
|
||||
if (_blueShadow) {
|
||||
_blueShadow->raise();
|
||||
}
|
||||
}
|
||||
|
||||
ScrollableBox::ScrollableBox(const style::flatScroll &scroll, int32 w) : AbstractBox(w),
|
||||
_scroll(this, scroll), _innerPtr(0), _topSkip(st::boxTitleHeight), _bottomSkip(st::boxScrollSkip) {
|
||||
setBlueTitle(true);
|
||||
}
|
||||
|
||||
void ScrollableBox::resizeEvent(QResizeEvent *e) {
|
||||
_scroll.setGeometry(0, _topSkip, width(), height() - _topSkip - _bottomSkip);
|
||||
AbstractBox::resizeEvent(e);
|
||||
}
|
||||
|
||||
void ScrollableBox::init(QWidget *inner, int32 bottomSkip, int32 topSkip) {
|
||||
@@ -152,12 +250,14 @@ void ScrollableBox::init(QWidget *inner, int32 bottomSkip, int32 topSkip) {
|
||||
|
||||
void ScrollableBox::hideAll() {
|
||||
_scroll.hide();
|
||||
AbstractBox::hideAll();
|
||||
}
|
||||
|
||||
void ScrollableBox::showAll() {
|
||||
_scroll.show();
|
||||
AbstractBox::showAll();
|
||||
}
|
||||
|
||||
ItemListBox::ItemListBox(const style::flatScroll &scroll) : ScrollableBox(scroll) {
|
||||
ItemListBox::ItemListBox(const style::flatScroll &scroll, int32 w) : ScrollableBox(scroll, w) {
|
||||
setMaxHeight(st::boxMaxListHeight);
|
||||
}
|
||||
|
||||
@@ -12,24 +12,56 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include "layerwidget.h"
|
||||
|
||||
class BlueTitleShadow : public TWidget {
|
||||
public:
|
||||
BlueTitleShadow(QWidget *parent) : TWidget(parent) {
|
||||
}
|
||||
void paintEvent(QPaintEvent *e);
|
||||
};
|
||||
|
||||
class BlueTitleClose : public Button {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
BlueTitleClose(QWidget *parent);
|
||||
void paintEvent(QPaintEvent *e);
|
||||
|
||||
public slots:
|
||||
|
||||
void onStateChange(int oldState, ButtonStateChangeSource source);
|
||||
|
||||
private:
|
||||
void step_over(float64 ms, bool timer);
|
||||
anim::cvalue a_iconFg;
|
||||
Animation _a_over;
|
||||
|
||||
};
|
||||
|
||||
class AbstractBox : public LayeredWidget {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
|
||||
AbstractBox();
|
||||
AbstractBox(int32 w = st::boxWideWidth);
|
||||
void parentResized();
|
||||
void animStep(float64 ms);
|
||||
void showStep(float64 ms);
|
||||
void keyPressEvent(QKeyEvent *e);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
void paintEvent(QPaintEvent *e);
|
||||
void startHide();
|
||||
|
||||
void setBlueTitle(bool blue);
|
||||
void raiseShadow();
|
||||
|
||||
public slots:
|
||||
|
||||
@@ -39,16 +71,19 @@ protected:
|
||||
|
||||
void prepare();
|
||||
bool paint(QPainter &p);
|
||||
void paintTitle(Painter &p, const QString &title, bool withShadow);
|
||||
void paintGrayTitle(QPainter &p, const QString &title);
|
||||
void paintTitle(Painter &p, const QString &title, const QString &additional = QString());
|
||||
void setMaxHeight(int32 maxHeight);
|
||||
void resizeMaxHeight(int32 newWidth, int32 maxHeight);
|
||||
|
||||
virtual void closePressed() {
|
||||
}
|
||||
virtual void hideAll() {
|
||||
if (_blueClose) _blueClose->hide();
|
||||
if (_blueShadow) _blueShadow->hide();
|
||||
}
|
||||
virtual void showAll() {
|
||||
if (_blueClose) _blueClose->show();
|
||||
if (_blueShadow) _blueShadow->show();
|
||||
}
|
||||
virtual void showDone() {
|
||||
setFocus();
|
||||
@@ -59,21 +94,31 @@ private:
|
||||
int32 _maxHeight;
|
||||
int32 countHeight() const;
|
||||
|
||||
bool _hiding;
|
||||
bool _hiding, _closed;
|
||||
QPixmap _cache;
|
||||
|
||||
anim::fvalue a_opacity;
|
||||
|
||||
bool _blueTitle;
|
||||
BlueTitleClose *_blueClose;
|
||||
BlueTitleShadow *_blueShadow;
|
||||
};
|
||||
|
||||
class ScrollableBoxShadow : public PlainShadow {
|
||||
public:
|
||||
ScrollableBoxShadow(QWidget *parent) : PlainShadow(parent, st::boxScrollShadowBg) {
|
||||
}
|
||||
};
|
||||
|
||||
class ScrollableBox : public AbstractBox {
|
||||
public:
|
||||
|
||||
ScrollableBox(const style::flatScroll &scroll);
|
||||
ScrollableBox(const style::flatScroll &scroll, int32 w = st::boxWideWidth);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
|
||||
protected:
|
||||
|
||||
void init(QWidget *inner, int32 bottomSkip = 0, int32 topSkip = st::boxTitleHeight);
|
||||
void init(QWidget *inner, int32 bottomSkip = st::boxScrollSkip, int32 topSkip = st::boxTitleHeight);
|
||||
|
||||
virtual void hideAll();
|
||||
virtual void showAll();
|
||||
@@ -90,6 +135,12 @@ private:
|
||||
class ItemListBox : public ScrollableBox {
|
||||
public:
|
||||
|
||||
ItemListBox(const style::flatScroll &scroll);
|
||||
ItemListBox(const style::flatScroll &scroll, int32 w = st::boxWideWidth);
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
enum CreatingGroupType {
|
||||
CreatingGroupNone,
|
||||
CreatingGroupGroup,
|
||||
CreatingGroupChannel,
|
||||
};
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
@@ -25,18 +28,18 @@ class AddContactBox : public AbstractBox, public RPCSender {
|
||||
public:
|
||||
|
||||
AddContactBox(QString fname = QString(), QString lname = QString(), QString phone = QString());
|
||||
AddContactBox(PeerData *peer);
|
||||
void keyPressEvent(QKeyEvent *e);
|
||||
AddContactBox(UserData *user);
|
||||
void paintEvent(QPaintEvent *e);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
|
||||
void setInnerFocus() {
|
||||
_firstInput.setFocus();
|
||||
_first.setFocus();
|
||||
}
|
||||
|
||||
public slots:
|
||||
|
||||
void onSend();
|
||||
void onSubmit();
|
||||
void onSave();
|
||||
void onRetry();
|
||||
|
||||
protected:
|
||||
@@ -49,20 +52,17 @@ private:
|
||||
|
||||
void onImportDone(const MTPcontacts_ImportedContacts &res);
|
||||
|
||||
void onSaveSelfDone(const MTPUser &user);
|
||||
bool onSaveSelfFail(const RPCError &error);
|
||||
|
||||
void onSaveChatDone(const MTPUpdates &updates);
|
||||
void onSaveUserDone(const MTPcontacts_ImportedContacts &res);
|
||||
bool onSaveFail(const RPCError &e);
|
||||
bool onSaveUserFail(const RPCError &e);
|
||||
|
||||
void initBox();
|
||||
|
||||
PeerData *_peer;
|
||||
UserData *_user;
|
||||
QString _boxTitle;
|
||||
|
||||
FlatButton _addButton, _retryButton, _cancelButton;
|
||||
FlatInput _firstInput, _lastInput, _phoneInput;
|
||||
BoxButton _save, _cancel, _retry;
|
||||
InputField _first, _last;
|
||||
PhoneInput _phone;
|
||||
|
||||
bool _invertOrder;
|
||||
|
||||
@@ -72,6 +72,215 @@ private:
|
||||
QString _sentName;
|
||||
};
|
||||
|
||||
class NewGroupBox : public AbstractBox {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
|
||||
NewGroupBox();
|
||||
void keyPressEvent(QKeyEvent *e);
|
||||
void paintEvent(QPaintEvent *e);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
|
||||
public slots:
|
||||
|
||||
void onNext();
|
||||
|
||||
protected:
|
||||
|
||||
void hideAll();
|
||||
void showAll();
|
||||
void showDone();
|
||||
|
||||
private:
|
||||
|
||||
Radiobutton _group, _channel;
|
||||
int32 _aboutGroupWidth, _aboutGroupHeight;
|
||||
Text _aboutGroup, _aboutChannel;
|
||||
BoxButton _next, _cancel;
|
||||
|
||||
};
|
||||
|
||||
class GroupInfoBox : public AbstractBox, public RPCSender {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
|
||||
GroupInfoBox(CreatingGroupType creating, bool fromTypeChoose);
|
||||
void paintEvent(QPaintEvent *e);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
void mouseMoveEvent(QMouseEvent *e);
|
||||
void mousePressEvent(QMouseEvent *e);
|
||||
void leaveEvent(QEvent *e);
|
||||
|
||||
void setInnerFocus() {
|
||||
_title.setFocus();
|
||||
}
|
||||
|
||||
public slots:
|
||||
|
||||
void onPhoto();
|
||||
void onPhotoReady(const QImage &img);
|
||||
|
||||
void onNext();
|
||||
void onNameSubmit();
|
||||
void onDescriptionResized();
|
||||
|
||||
protected:
|
||||
|
||||
void hideAll();
|
||||
void showAll();
|
||||
void showDone();
|
||||
|
||||
private:
|
||||
|
||||
void step_photoOver(float64 ms, bool timer);
|
||||
|
||||
QRect photoRect() const;
|
||||
|
||||
void updateMaxHeight();
|
||||
void updateSelected(const QPoint &cursorGlobalPosition);
|
||||
CreatingGroupType _creating;
|
||||
|
||||
anim::fvalue a_photoOver;
|
||||
Animation _a_photoOver;
|
||||
bool _photoOver;
|
||||
|
||||
InputField _title;
|
||||
InputArea _description;
|
||||
|
||||
QImage _photoBig;
|
||||
QPixmap _photoSmall;
|
||||
BoxButton _next, _cancel;
|
||||
|
||||
// channel creation
|
||||
int32 _creationRequestId;
|
||||
ChannelData *_createdChannel;
|
||||
|
||||
void creationDone(const MTPUpdates &updates);
|
||||
bool creationFail(const RPCError &e);
|
||||
void exportDone(const MTPExportedChatInvite &result);
|
||||
};
|
||||
|
||||
class SetupChannelBox : public AbstractBox, public RPCSender {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
|
||||
SetupChannelBox(ChannelData *channel, bool existing = false);
|
||||
void keyPressEvent(QKeyEvent *e);
|
||||
void paintEvent(QPaintEvent *e);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
void mouseMoveEvent(QMouseEvent *e);
|
||||
void mousePressEvent(QMouseEvent *e);
|
||||
void leaveEvent(QEvent *e);
|
||||
|
||||
void closePressed();
|
||||
|
||||
void setInnerFocus() {
|
||||
if (_link.isHidden()) {
|
||||
setFocus();
|
||||
} else {
|
||||
_link.setFocus();
|
||||
}
|
||||
}
|
||||
|
||||
public slots:
|
||||
|
||||
void onSave();
|
||||
void onChange();
|
||||
void onCheck();
|
||||
|
||||
void onPrivacyChange();
|
||||
|
||||
protected:
|
||||
|
||||
void hideAll();
|
||||
void showAll();
|
||||
void showDone();
|
||||
|
||||
private:
|
||||
|
||||
void updateSelected(const QPoint &cursorGlobalPosition);
|
||||
void step_goodFade(float64 ms, bool timer);
|
||||
|
||||
void onUpdateDone(const MTPBool &result);
|
||||
bool onUpdateFail(const RPCError &error);
|
||||
|
||||
void onCheckDone(const MTPBool &result);
|
||||
bool onCheckFail(const RPCError &error);
|
||||
bool onFirstCheckFail(const RPCError &error);
|
||||
|
||||
void updateMaxHeight();
|
||||
|
||||
ChannelData *_channel;
|
||||
bool _existing;
|
||||
|
||||
Radiobutton _public, _private;
|
||||
Checkbox _comments;
|
||||
int32 _aboutPublicWidth, _aboutPublicHeight;
|
||||
Text _aboutPublic, _aboutPrivate, _aboutComments;
|
||||
UsernameInput _link;
|
||||
QRect _invitationLink;
|
||||
bool _linkOver;
|
||||
BoxButton _save, _skip;
|
||||
|
||||
bool _tooMuchUsernames;
|
||||
|
||||
mtpRequestId _saveRequestId, _checkRequestId;
|
||||
QString _sentUsername, _checkUsername, _errorText, _goodText;
|
||||
|
||||
QString _goodTextLink;
|
||||
anim::fvalue a_goodOpacity;
|
||||
Animation _a_goodFade;
|
||||
|
||||
QTimer _checkTimer;
|
||||
};
|
||||
|
||||
class EditNameTitleBox : public AbstractBox, public RPCSender {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
|
||||
EditNameTitleBox(PeerData *peer);
|
||||
void paintEvent(QPaintEvent *e);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
|
||||
void setInnerFocus() {
|
||||
_first.setFocus();
|
||||
}
|
||||
|
||||
public slots:
|
||||
|
||||
void onSave();
|
||||
void onSubmit();
|
||||
|
||||
protected:
|
||||
|
||||
void hideAll();
|
||||
void showAll();
|
||||
void showDone();
|
||||
|
||||
private:
|
||||
|
||||
void onSaveSelfDone(const MTPUser &user);
|
||||
bool onSaveSelfFail(const RPCError &error);
|
||||
|
||||
void onSaveChatDone(const MTPUpdates &updates);
|
||||
bool onSaveChatFail(const RPCError &e);
|
||||
|
||||
PeerData *_peer;
|
||||
QString _boxTitle;
|
||||
|
||||
BoxButton _save, _cancel;
|
||||
InputField _first, _last;
|
||||
|
||||
bool _invertOrder;
|
||||
|
||||
mtpRequestId _requestId;
|
||||
QString _sentName;
|
||||
};
|
||||
|
||||
class EditChannelBox : public AbstractBox, public RPCSender {
|
||||
Q_OBJECT
|
||||
|
||||
@@ -81,13 +290,6 @@ public:
|
||||
void keyPressEvent(QKeyEvent *e);
|
||||
void paintEvent(QPaintEvent *e);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
void mouseMoveEvent(QMouseEvent *e);
|
||||
void mousePressEvent(QMouseEvent *e);
|
||||
void leaveEvent(QEvent *e);
|
||||
|
||||
bool eventFilter(QObject *obj, QEvent *e);
|
||||
|
||||
bool descriptionAnimStep(float64 ms);
|
||||
|
||||
void setInnerFocus() {
|
||||
if (!_description.hasFocus()) {
|
||||
@@ -111,29 +313,25 @@ protected:
|
||||
|
||||
private:
|
||||
|
||||
QRect descriptionRect() const;
|
||||
void updateMaxHeight();
|
||||
void updateSelected(const QPoint &cursorGlobalPosition);
|
||||
|
||||
void onSaveTitleDone(const MTPUpdates &updates);
|
||||
void onSaveDescriptionDone(const MTPBool &result);
|
||||
void onSaveSignDone(const MTPUpdates &updates);
|
||||
bool onSaveFail(const RPCError &e, mtpRequestId req);
|
||||
|
||||
void saveDescription();
|
||||
void saveSign();
|
||||
|
||||
ChannelData *_channel;
|
||||
QString _boxTitle;
|
||||
|
||||
FlatButton _saveButton, _cancelButton;
|
||||
FlatInput _title;
|
||||
|
||||
bool _descriptionOver;
|
||||
anim::cvalue a_descriptionBg, a_descriptionBorder;
|
||||
Animation a_description;
|
||||
FlatTextarea _description;
|
||||
BoxButton _save, _cancel;
|
||||
InputField _title;
|
||||
InputArea _description;
|
||||
Checkbox _sign;
|
||||
|
||||
LinkButton _publicLink;
|
||||
|
||||
mtpRequestId _saveTitleRequestId, _saveDescriptionRequestId;
|
||||
mtpRequestId _saveTitleRequestId, _saveDescriptionRequestId, _saveSignRequestId;
|
||||
QString _sentTitle, _sentDescription;
|
||||
};
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "lang.h"
|
||||
@@ -26,39 +29,39 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
#include "window.h"
|
||||
|
||||
AutoLockBox::AutoLockBox() :
|
||||
_done(this, lang(lng_about_done), st::langsCloseButton) {
|
||||
_close(this, lang(lng_box_ok), st::defaultBoxButton) {
|
||||
|
||||
bool haveTestLang = (cLang() == languageTest);
|
||||
|
||||
int32 opts[] = { 60, 300, 3600, 18000 }, cnt = sizeof(opts) / sizeof(opts[0]);
|
||||
|
||||
resizeMaxHeight(st::langsWidth, st::boxTitleHeight + st::langsPadding.top() + st::langsPadding.bottom() + cnt * (st::langPadding.top() + st::rbDefFlat.height + st::langPadding.bottom()) + _done.height());
|
||||
resizeMaxHeight(st::langsWidth, st::boxTitleHeight + cnt * (st::boxOptionListPadding.top() + st::langsButton.height) + st::boxOptionListPadding.bottom() + st::boxPadding.bottom() + st::boxButtonPadding.top() + _close.height() + st::boxButtonPadding.bottom());
|
||||
|
||||
int32 y = st::boxTitleHeight + st::langsPadding.top();
|
||||
int32 y = st::boxTitleHeight + st::boxOptionListPadding.top();
|
||||
_options.reserve(cnt);
|
||||
for (int32 i = 0; i < cnt; ++i) {
|
||||
int32 v = opts[i];
|
||||
_options.push_back(new FlatRadiobutton(this, qsl("autolock"), v, (v % 3600) ? lng_passcode_autolock_minutes(lt_count, v / 60) : lng_passcode_autolock_hours(lt_count, v / 3600), (cAutoLock() == v), st::langButton));
|
||||
_options.back()->move(st::langsPadding.left() + st::langPadding.left(), y + st::langPadding.top());
|
||||
y += st::langPadding.top() + _options.back()->height() + st::langPadding.bottom();
|
||||
_options.push_back(new Radiobutton(this, qsl("autolock"), v, (v % 3600) ? lng_passcode_autolock_minutes(lt_count, v / 60) : lng_passcode_autolock_hours(lt_count, v / 3600), (cAutoLock() == v), st::langsButton));
|
||||
_options.back()->move(st::boxPadding.left() + st::boxOptionListPadding.left(), y);
|
||||
y += _options.back()->height() + st::boxOptionListPadding.top();
|
||||
connect(_options.back(), SIGNAL(changed()), this, SLOT(onChange()));
|
||||
}
|
||||
|
||||
connect(&_done, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
connect(&_close, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
|
||||
_done.move(0, height() - _done.height());
|
||||
_close.moveToRight(st::boxButtonPadding.right(), height() - st::boxButtonPadding.bottom() - _close.height());
|
||||
prepare();
|
||||
}
|
||||
|
||||
void AutoLockBox::hideAll() {
|
||||
_done.hide();
|
||||
_close.hide();
|
||||
for (int32 i = 0, l = _options.size(); i < l; ++i) {
|
||||
_options[i]->hide();
|
||||
}
|
||||
}
|
||||
|
||||
void AutoLockBox::showAll() {
|
||||
_done.show();
|
||||
_close.show();
|
||||
for (int32 i = 0, l = _options.size(); i < l; ++i) {
|
||||
_options[i]->show();
|
||||
}
|
||||
@@ -68,7 +71,7 @@ void AutoLockBox::paintEvent(QPaintEvent *e) {
|
||||
Painter p(this);
|
||||
if (paint(p)) return;
|
||||
|
||||
paintTitle(p, lang(lng_passcode_autolock), true);
|
||||
paintTitle(p, lang(lng_passcode_autolock));
|
||||
}
|
||||
|
||||
void AutoLockBox::onChange() {
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
@@ -39,6 +42,6 @@ protected:
|
||||
|
||||
private:
|
||||
|
||||
QVector<FlatRadiobutton*> _options;
|
||||
BottomButton _done;
|
||||
QVector<Radiobutton*> _options;
|
||||
BoxButton _close;
|
||||
};
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "lang.h"
|
||||
@@ -25,6 +28,7 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
|
||||
BackgroundInner::BackgroundInner() :
|
||||
_bgCount(0), _rows(0), _over(-1), _overDown(-1) {
|
||||
connect(App::wnd(), SIGNAL(imageLoaded()), this, SLOT(update()));
|
||||
if (App::cServerBackgrounds().isEmpty()) {
|
||||
resize(BackgroundsInRow * (st::backgroundSize.width() + st::backgroundPadding) + st::backgroundPadding, 2 * (st::backgroundSize.height() + st::backgroundPadding) + st::backgroundPadding);
|
||||
MTP::send(MTPaccount_GetWallPapers(), rpcDone(&BackgroundInner::gotWallpapers));
|
||||
@@ -171,39 +175,21 @@ BackgroundInner::~BackgroundInner() {
|
||||
void BackgroundInner::resizeEvent(QResizeEvent *e) {
|
||||
}
|
||||
|
||||
BackgroundBox::BackgroundBox() : ItemListBox(st::boxScroll), _inner(),
|
||||
_close(this, lang(lng_cancel), st::contactsClose) {
|
||||
BackgroundBox::BackgroundBox() : ItemListBox(st::backgroundScroll)
|
||||
, _inner() {
|
||||
|
||||
init(&_inner, _close.height(), st::boxFont->height + st::newGroupNamePadding.top() + st::newGroupNamePadding.bottom());
|
||||
init(&_inner);
|
||||
|
||||
connect(&_close, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
connect(&_inner, SIGNAL(backgroundChosen(int)), this, SLOT(onBackgroundChosen(int)));
|
||||
|
||||
prepare();
|
||||
}
|
||||
|
||||
void BackgroundBox::hideAll() {
|
||||
ItemListBox::hideAll();
|
||||
_close.hide();
|
||||
}
|
||||
|
||||
void BackgroundBox::showAll() {
|
||||
ItemListBox::showAll();
|
||||
_close.show();
|
||||
_close.raise();
|
||||
}
|
||||
|
||||
void BackgroundBox::paintEvent(QPaintEvent *e) {
|
||||
QPainter p(this);
|
||||
Painter p(this);
|
||||
if (paint(p)) return;
|
||||
|
||||
paintGrayTitle(p, lang(lng_backgrounds_header));
|
||||
}
|
||||
|
||||
void BackgroundBox::resizeEvent(QResizeEvent *e) {
|
||||
ItemListBox::resizeEvent(e);
|
||||
_inner.resize(width(), _inner.height());
|
||||
_close.move(0, height() - _close.height());
|
||||
paintTitle(p, lang(lng_backgrounds_header));
|
||||
}
|
||||
|
||||
void BackgroundBox::onBackgroundChosen(int index) {
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
@@ -55,19 +58,13 @@ public:
|
||||
|
||||
BackgroundBox();
|
||||
void paintEvent(QPaintEvent *e);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
|
||||
public slots:
|
||||
|
||||
void onBackgroundChosen(int index);
|
||||
|
||||
protected:
|
||||
|
||||
void hideAll();
|
||||
void showAll();
|
||||
|
||||
private:
|
||||
|
||||
BackgroundInner _inner;
|
||||
BottomButton _close;
|
||||
|
||||
};
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "lang.h"
|
||||
@@ -31,42 +34,38 @@ TextParseOptions _confirmBoxTextOptions = {
|
||||
Qt::LayoutDirectionAuto, // dir
|
||||
};
|
||||
|
||||
ConfirmBox::ConfirmBox(const QString &text, const QString &doneText, const QString &cancelText, const style::flatButton &doneStyle, const style::flatButton &cancelStyle) : _infoMsg(false),
|
||||
_confirm(this, doneText.isEmpty() ? lang(lng_continue) : doneText, doneStyle),
|
||||
_cancel(this, cancelText.isEmpty() ? lang(lng_cancel) : cancelText, cancelStyle),
|
||||
_close(this, QString(), st::btnInfoClose),
|
||||
_text(100) {
|
||||
ConfirmBox::ConfirmBox(const QString &text, const QString &doneText, const style::BoxButton &doneStyle, const QString &cancelText, const style::BoxButton &cancelStyle) : AbstractBox(st::boxWidth)
|
||||
, _informative(false)
|
||||
, _text(100)
|
||||
, _confirm(this, doneText.isEmpty() ? lang(lng_box_ok) : doneText, doneStyle)
|
||||
, _cancel(this, cancelText.isEmpty() ? lang(lng_cancel) : cancelText, cancelStyle) {
|
||||
init(text);
|
||||
}
|
||||
|
||||
ConfirmBox::ConfirmBox(const QString &text, bool noDone, const QString &cancelText) : _infoMsg(true),
|
||||
_confirm(this, QString(), st::btnSelectDone),
|
||||
_cancel(this, QString(), st::btnSelectCancel),
|
||||
_close(this, cancelText.isEmpty() ? lang(lng_close) : cancelText, st::btnInfoClose),
|
||||
_text(100) {
|
||||
ConfirmBox::ConfirmBox(const QString &text, const QString &doneText, const style::BoxButton &doneStyle, bool informative) : AbstractBox(st::boxWidth)
|
||||
, _informative(true)
|
||||
, _text(100)
|
||||
, _confirm(this, doneText.isEmpty() ? lang(lng_box_ok) : doneText, doneStyle)
|
||||
, _cancel(this, QString(), st::cancelBoxButton) {
|
||||
init(text);
|
||||
}
|
||||
|
||||
void ConfirmBox::init(const QString &text) {
|
||||
_text.setText(st::boxFont, text, (_infoMsg ? _confirmBoxTextOptions : _textPlainOptions));
|
||||
_text.setText(st::boxTextFont, text, _informative ? _confirmBoxTextOptions : _textPlainOptions);
|
||||
|
||||
_textWidth = st::boxWidth + 10 - st::boxPadding.left() - st::boxPadding.right();
|
||||
_textHeight = qMin(_text.countHeight(_textWidth), 16 * st::boxFont->height);
|
||||
setMaxHeight(st::boxPadding.top() + _textHeight + st::boxPadding.bottom() + (_infoMsg ? _close.height() : _confirm.height()));
|
||||
textstyleSet(&st::boxTextStyle);
|
||||
_textWidth = st::boxWidth - st::boxPadding.left() - st::boxButtonPadding.right();
|
||||
_textHeight = qMin(_text.countHeight(_textWidth), 16 * int(st::boxTextStyle.lineHeight));
|
||||
setMaxHeight(st::boxPadding.top() + _textHeight + st::boxPadding.bottom() + st::boxButtonPadding.top() + _confirm.height() + st::boxButtonPadding.bottom());
|
||||
textstyleRestore();
|
||||
|
||||
if (_infoMsg) {
|
||||
_confirm.hide();
|
||||
connect(&_confirm, SIGNAL(clicked()), this, SIGNAL(confirmed()));
|
||||
connect(&_cancel, SIGNAL(clicked()), this, SLOT(onCancel()));
|
||||
if (_informative) {
|
||||
_cancel.hide();
|
||||
|
||||
connect(&_close, SIGNAL(clicked()), this, SLOT(onCancel()));
|
||||
|
||||
setMouseTracking(_text.hasLinks());
|
||||
} else {
|
||||
_close.hide();
|
||||
|
||||
connect(&_confirm, SIGNAL(clicked()), this, SIGNAL(confirmed()));
|
||||
connect(&_cancel, SIGNAL(clicked()), this, SLOT(onCancel()));
|
||||
connect(this, SIGNAL(confirmed()), this, SLOT(onCancel()));
|
||||
}
|
||||
setMouseTracking(_text.hasLinks());
|
||||
|
||||
prepare();
|
||||
}
|
||||
@@ -95,7 +94,7 @@ void ConfirmBox::mouseReleaseEvent(QMouseEvent *e) {
|
||||
_lastMousePos = e->globalPos();
|
||||
updateHover();
|
||||
if (textlnkOver() && textlnkOver() == textlnkDown()) {
|
||||
App::wnd()->hideLayer();
|
||||
Ui::hideLayer();
|
||||
textlnkOver()->onClick(e->button());
|
||||
}
|
||||
textlnkDown(TextLinkPtr());
|
||||
@@ -121,7 +120,9 @@ void ConfirmBox::updateLink() {
|
||||
void ConfirmBox::updateHover() {
|
||||
QPoint m(mapFromGlobal(_lastMousePos));
|
||||
bool wasMy = (_myLink == textlnkOver());
|
||||
_myLink = _text.link(m.x() - st::boxPadding.left(), m.y() - st::boxPadding.top(), _textWidth, (_text.maxWidth() < width()) ? style::al_center : style::al_left);
|
||||
textstyleSet(&st::boxTextStyle);
|
||||
_myLink = _text.linkLeft(m.x() - st::boxPadding.left(), m.y() - st::boxPadding.top(), _textWidth, width(), (_text.maxWidth() < width()) ? style::al_center : style::al_left);
|
||||
textstyleRestore();
|
||||
if (_myLink != textlnkOver()) {
|
||||
if (wasMy || _myLink || rect().contains(m)) {
|
||||
textlnkOver(_myLink);
|
||||
@@ -138,12 +139,11 @@ void ConfirmBox::closePressed() {
|
||||
void ConfirmBox::hideAll() {
|
||||
_confirm.hide();
|
||||
_cancel.hide();
|
||||
_close.hide();
|
||||
}
|
||||
|
||||
void ConfirmBox::showAll() {
|
||||
if (_infoMsg) {
|
||||
_close.show();
|
||||
if (_informative) {
|
||||
_confirm.show();
|
||||
} else {
|
||||
_confirm.show();
|
||||
_cancel.show();
|
||||
@@ -162,52 +162,44 @@ void ConfirmBox::paintEvent(QPaintEvent *e) {
|
||||
QPainter p(this);
|
||||
if (paint(p)) return;
|
||||
|
||||
if (!_infoMsg) {
|
||||
// paint shadows
|
||||
p.fillRect(0, height() - st::btnSelectCancel.height - st::scrollDef.bottomsh, width(), st::scrollDef.bottomsh, st::scrollDef.shColor->b);
|
||||
|
||||
// paint button sep
|
||||
p.fillRect(st::btnSelectCancel.width, height() - st::btnSelectCancel.height, st::lineWidth, st::btnSelectCancel.height, st::btnSelectSep->b);
|
||||
}
|
||||
|
||||
// draw box title / text
|
||||
p.setFont(st::boxFont->f);
|
||||
p.setPen(st::black->p);
|
||||
_text.drawElided(p, st::boxPadding.left(), st::boxPadding.top(), _textWidth, 16, (_text.maxWidth() < width()) ? style::al_center : style::al_left);
|
||||
textstyleSet(&st::boxTextStyle);
|
||||
_text.drawLeftElided(p, st::boxPadding.left(), st::boxPadding.top(), _textWidth, width(), 16, style::al_left);
|
||||
textstyleRestore();
|
||||
}
|
||||
|
||||
void ConfirmBox::resizeEvent(QResizeEvent *e) {
|
||||
if (_infoMsg) {
|
||||
_close.move(0, st::boxPadding.top() + _textHeight + st::boxPadding.bottom());
|
||||
} else {
|
||||
_confirm.move(width() - _confirm.width(), st::boxPadding.top() + _textHeight + st::boxPadding.bottom());
|
||||
_cancel.move(0, st::boxPadding.top() + _textHeight + st::boxPadding.bottom());
|
||||
}
|
||||
_confirm.moveToRight(st::boxButtonPadding.right(), height() - st::boxButtonPadding.bottom() - _confirm.height());
|
||||
_cancel.moveToRight(st::boxButtonPadding.right() + _confirm.width() + st::boxButtonPadding.left(), _confirm.y());
|
||||
}
|
||||
|
||||
ConfirmLinkBox::ConfirmLinkBox(const QString &url) : ConfirmBox(lang(lng_open_this_link) + qsl("\n\n") + url, lang(lng_open_link)), _url(url) {
|
||||
ConfirmLinkBox::ConfirmLinkBox(const QString &url) : ConfirmBox(lang(lng_open_this_link) + qsl("\n\n") + url, lang(lng_open_link))
|
||||
, _url(url) {
|
||||
connect(this, SIGNAL(confirmed()), this, SLOT(onOpenLink()));
|
||||
}
|
||||
|
||||
void ConfirmLinkBox::onOpenLink() {
|
||||
Ui::hideLayer();
|
||||
if (reMailStart().match(_url).hasMatch()) {
|
||||
EmailLink(_url).onClick(Qt::LeftButton);
|
||||
} else {
|
||||
TextLink(_url).onClick(Qt::LeftButton);
|
||||
}
|
||||
App::wnd()->hideLayer();
|
||||
}
|
||||
|
||||
MaxInviteBox::MaxInviteBox(const QString &link) :
|
||||
_close(this, lang(lng_close), st::btnInfoClose),
|
||||
_text(st::boxFont, lng_participant_invite_sorry(lt_count, QString::number(cMaxGroupCount())), _confirmBoxTextOptions),
|
||||
_link(link), _linkOver(false),
|
||||
a_goodOpacity(0, 0), a_good(animFunc(this, &MaxInviteBox::goodAnimStep)) {
|
||||
MaxInviteBox::MaxInviteBox(const QString &link) : AbstractBox(st::boxWidth)
|
||||
, _close(this, lang(lng_box_ok), st::defaultBoxButton)
|
||||
, _text(st::boxTextFont, lng_participant_invite_sorry(lt_count, Global::ChatSizeMax()), _confirmBoxTextOptions, st::boxWidth - st::boxPadding.left() - st::boxButtonPadding.right())
|
||||
, _link(link)
|
||||
, _linkOver(false)
|
||||
, a_goodOpacity(0, 0)
|
||||
, _a_good(animation(this, &MaxInviteBox::step_good)) {
|
||||
setMouseTracking(true);
|
||||
|
||||
_textWidth = st::boxWidth + 10 - st::boxPadding.left() - st::boxPadding.right();
|
||||
_textHeight = qMin(_text.countHeight(_textWidth), 16 * st::boxFont->height);
|
||||
setMaxHeight(st::boxPadding.top() + _textHeight + st::newGroupLinkPadding.top() + st::newGroupLink.height + st::newGroupLinkPadding.bottom() + _close.height());
|
||||
_textWidth = st::boxWidth - st::boxPadding.left() - st::boxButtonPadding.right();
|
||||
_textHeight = qMin(_text.countHeight(_textWidth), 16 * int(st::boxTextStyle.lineHeight));
|
||||
setMaxHeight(st::boxPadding.top() + _textHeight + st::boxTextFont->height + st::boxTextFont->height * 2 + st::newGroupLinkPadding.bottom() + st::boxButtonPadding.top() + _close.height() + st::boxButtonPadding.bottom());
|
||||
|
||||
connect(&_close, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
|
||||
@@ -221,10 +213,10 @@ void MaxInviteBox::mouseMoveEvent(QMouseEvent *e) {
|
||||
void MaxInviteBox::mousePressEvent(QMouseEvent *e) {
|
||||
mouseMoveEvent(e);
|
||||
if (_linkOver) {
|
||||
App::app()->clipboard()->setText(_link);
|
||||
Application::clipboard()->setText(_link);
|
||||
_goodTextLink = lang(lng_create_channel_link_copied);
|
||||
a_goodOpacity = anim::fvalue(1, 0);
|
||||
a_good.start();
|
||||
_a_good.start();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -243,17 +235,15 @@ void MaxInviteBox::updateSelected(const QPoint &cursorGlobalPosition) {
|
||||
}
|
||||
}
|
||||
|
||||
bool MaxInviteBox::goodAnimStep(float64 ms) {
|
||||
void MaxInviteBox::step_good(float64 ms, bool timer) {
|
||||
float dt = ms / st::newGroupLinkFadeDuration;
|
||||
bool res = true;
|
||||
if (dt >= 1) {
|
||||
res = false;
|
||||
_a_good.stop();
|
||||
a_goodOpacity.finish();
|
||||
} else {
|
||||
a_goodOpacity.update(dt, anim::linear);
|
||||
}
|
||||
update();
|
||||
return res;
|
||||
if (timer) update();
|
||||
}
|
||||
|
||||
void MaxInviteBox::hideAll() {
|
||||
@@ -269,25 +259,249 @@ void MaxInviteBox::paintEvent(QPaintEvent *e) {
|
||||
if (paint(p)) return;
|
||||
|
||||
// draw box title / text
|
||||
p.setFont(st::boxFont->f);
|
||||
p.setPen(st::black->p);
|
||||
_text.drawElided(p, st::boxPadding.left(), st::boxPadding.top(), _textWidth, 16, (_text.maxWidth() < width()) ? style::al_center : style::al_left);
|
||||
_text.drawLeftElided(p, st::boxPadding.left(), st::boxPadding.top(), _textWidth, width(), 16, style::al_left);
|
||||
|
||||
QTextOption option(style::al_left);
|
||||
option.setWrapMode(QTextOption::WrapAnywhere);
|
||||
p.setFont(_linkOver ? st::newGroupLink.font->underline() : st::newGroupLink.font);
|
||||
p.setFont(_linkOver ? st::defaultInputField.font->underline() : st::defaultInputField.font);
|
||||
p.setPen(st::btnDefLink.color);
|
||||
p.drawText(_invitationLink, _link, option);
|
||||
if (!_goodTextLink.isEmpty() && a_goodOpacity.current() > 0) {
|
||||
p.setOpacity(a_goodOpacity.current());
|
||||
p.setPen(st::setGoodColor->p);
|
||||
p.setFont(st::setErrFont->f);
|
||||
p.drawText(QRect(st::newGroupPadding.left(), st::boxPadding.top() + _textHeight + st::newGroupLinkTop + st::newGroupLinkFont->height - st::setErrFont->ascent, width() - st::newGroupPadding.left() - st::newGroupPadding.right(), st::setErrFont->height), _goodTextLink, style::al_top);
|
||||
p.setFont(st::boxTextFont->f);
|
||||
p.drawTextLeft(st::boxPadding.left(), height() - st::boxButtonPadding.bottom() - _close.height() + st::defaultBoxButton.textTop + st::defaultBoxButton.font->ascent - st::boxTextFont->ascent, width(), _goodTextLink);
|
||||
p.setOpacity(1);
|
||||
}
|
||||
}
|
||||
|
||||
void MaxInviteBox::resizeEvent(QResizeEvent *e) {
|
||||
_close.move(0, height() - _close.height());
|
||||
_invitationLink = QRect(st::newGroupPadding.left(), st::boxPadding.top() + _textHeight + st::newGroupLinkPadding.top() + (st::newGroupLink.height / 2) - st::newGroupLinkFont->height, width() - st::newGroupPadding.left() - st::newGroupPadding.right(), 2 * st::newGroupLinkFont->height);
|
||||
_close.moveToRight(st::boxButtonPadding.right(), height() - st::boxButtonPadding.bottom() - _close.height());
|
||||
_invitationLink = myrtlrect(st::boxPadding.left(), st::boxPadding.top() + _textHeight + st::boxTextFont->height, width() - st::boxPadding.left() - st::boxPadding.right(), 2 * st::boxTextFont->height);
|
||||
}
|
||||
|
||||
ConvertToSupergroupBox::ConvertToSupergroupBox(ChatData *chat) : AbstractBox(st::boxWideWidth)
|
||||
, _chat(chat)
|
||||
, _text(100)
|
||||
, _note(100)
|
||||
, _convert(this, lang(lng_profile_convert_confirm), st::defaultBoxButton)
|
||||
, _cancel(this, lang(lng_cancel), st::cancelBoxButton) {
|
||||
QStringList text;
|
||||
text.push_back(lang(lng_profile_convert_feature1));
|
||||
text.push_back(lang(lng_profile_convert_feature2));
|
||||
text.push_back(lang(lng_profile_convert_feature3));
|
||||
text.push_back(lang(lng_profile_convert_feature4));
|
||||
|
||||
textstyleSet(&st::boxTextStyle);
|
||||
_text.setText(st::boxTextFont, text.join('\n'), _confirmBoxTextOptions);
|
||||
_note.setText(st::boxTextFont, lng_profile_convert_warning(lt_bold_start, textcmdStartSemibold(), lt_bold_end, textcmdStopSemibold()), _confirmBoxTextOptions);
|
||||
_textWidth = st::boxWideWidth - st::boxPadding.left() - st::boxButtonPadding.right();
|
||||
_textHeight = _text.countHeight(_textWidth);
|
||||
setMaxHeight(st::boxTitleHeight + _textHeight + st::boxPadding.bottom() + _note.countHeight(_textWidth) + st::boxButtonPadding.top() + _convert.height() + st::boxButtonPadding.bottom());
|
||||
textstyleRestore();
|
||||
|
||||
connect(&_convert, SIGNAL(clicked()), this, SLOT(onConvert()));
|
||||
connect(&_cancel, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
|
||||
prepare();
|
||||
}
|
||||
|
||||
void ConvertToSupergroupBox::onConvert() {
|
||||
MTP::send(MTPmessages_MigrateChat(_chat->inputChat), rpcDone(&ConvertToSupergroupBox::convertDone), rpcFail(&ConvertToSupergroupBox::convertFail));
|
||||
}
|
||||
|
||||
void ConvertToSupergroupBox::convertDone(const MTPUpdates &updates) {
|
||||
Ui::hideLayer();
|
||||
App::main()->sentUpdatesReceived(updates);
|
||||
const QVector<MTPChat> *v = 0;
|
||||
switch (updates.type()) {
|
||||
case mtpc_updates: v = &updates.c_updates().vchats.c_vector().v; break;
|
||||
case mtpc_updatesCombined: v = &updates.c_updatesCombined().vchats.c_vector().v; break;
|
||||
default: LOG(("API Error: unexpected update cons %1 (ConvertToSupergroupBox::convertDone)").arg(updates.type())); break;
|
||||
}
|
||||
|
||||
PeerData *peer = 0;
|
||||
if (v && !v->isEmpty()) {
|
||||
for (int32 i = 0, l = v->size(); i < l; ++i) {
|
||||
if (v->at(i).type() == mtpc_channel) {
|
||||
peer = App::channel(v->at(i).c_channel().vid.v);
|
||||
Ui::showPeerHistory(peer, ShowAtUnreadMsgId);
|
||||
QTimer::singleShot(ReloadChannelMembersTimeout, App::api(), SLOT(delayedRequestParticipantsCount()));
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!peer) {
|
||||
LOG(("API Error: channel not found in updates (ProfileInner::migrateDone)"));
|
||||
}
|
||||
}
|
||||
|
||||
bool ConvertToSupergroupBox::convertFail(const RPCError &error) {
|
||||
if (mtpIsFlood(error)) return false;
|
||||
Ui::hideLayer();
|
||||
return true;
|
||||
}
|
||||
|
||||
void ConvertToSupergroupBox::hideAll() {
|
||||
_convert.hide();
|
||||
_cancel.hide();
|
||||
}
|
||||
|
||||
void ConvertToSupergroupBox::showAll() {
|
||||
_convert.show();
|
||||
_cancel.show();
|
||||
}
|
||||
|
||||
void ConvertToSupergroupBox::keyPressEvent(QKeyEvent *e) {
|
||||
if (e->key() == Qt::Key_Enter || e->key() == Qt::Key_Return) {
|
||||
onConvert();
|
||||
} else {
|
||||
AbstractBox::keyPressEvent(e);
|
||||
}
|
||||
}
|
||||
|
||||
void ConvertToSupergroupBox::paintEvent(QPaintEvent *e) {
|
||||
Painter p(this);
|
||||
if (paint(p)) return;
|
||||
|
||||
paintTitle(p, lang(lng_profile_convert_title));
|
||||
|
||||
// draw box title / text
|
||||
p.setPen(st::black);
|
||||
textstyleSet(&st::boxTextStyle);
|
||||
_text.drawLeft(p, st::boxPadding.left(), st::boxTitleHeight, _textWidth, width());
|
||||
_note.drawLeft(p, st::boxPadding.left(), st::boxTitleHeight + _textHeight + st::boxPadding.bottom(), _textWidth, width());
|
||||
textstyleRestore();
|
||||
}
|
||||
|
||||
void ConvertToSupergroupBox::resizeEvent(QResizeEvent *e) {
|
||||
_convert.moveToRight(st::boxButtonPadding.right(), height() - st::boxButtonPadding.bottom() - _convert.height());
|
||||
_cancel.moveToRight(st::boxButtonPadding.right() + _convert.width() + st::boxButtonPadding.left(), _convert.y());
|
||||
}
|
||||
|
||||
PinMessageBox::PinMessageBox(ChannelData *channel, MsgId msgId) : AbstractBox(st::boxWidth)
|
||||
, _channel(channel)
|
||||
, _msgId(msgId)
|
||||
, _text(this, lang(lng_pinned_pin_sure), st::boxLabel)
|
||||
, _notify(this, lang(lng_pinned_notify), true)
|
||||
, _pin(this, lang(lng_pinned_pin), st::defaultBoxButton)
|
||||
, _cancel(this, lang(lng_cancel), st::cancelBoxButton)
|
||||
, _requestId(0) {
|
||||
_text.resizeToWidth(st::boxWidth - st::boxPadding.left() - st::boxButtonPadding.right());
|
||||
setMaxHeight(st::boxPadding.top() + _text.height() + st::boxMediumSkip + _notify.height() + st::boxPadding.bottom() + st::boxButtonPadding.top() + _pin.height() + st::boxButtonPadding.bottom());
|
||||
|
||||
connect(&_pin, SIGNAL(clicked()), this, SLOT(onPin()));
|
||||
connect(&_cancel, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
}
|
||||
|
||||
void PinMessageBox::resizeEvent(QResizeEvent *e) {
|
||||
_text.moveToLeft(st::boxPadding.left(), st::boxPadding.top());
|
||||
_notify.moveToLeft(st::boxPadding.left(), _text.y() + _text.height() + st::boxMediumSkip);
|
||||
_pin.moveToRight(st::boxButtonPadding.right(), height() - st::boxButtonPadding.bottom() - _pin.height());
|
||||
_cancel.moveToRight(st::boxButtonPadding.right() + _pin.width() + st::boxButtonPadding.left(), _pin.y());
|
||||
}
|
||||
|
||||
void PinMessageBox::onPin() {
|
||||
if (_requestId) return;
|
||||
|
||||
MTPchannels_UpdatePinnedMessage::Flags flags = 0;
|
||||
if (_notify.checked()) {
|
||||
flags |= MTPchannels_UpdatePinnedMessage::Flag::f_silent;
|
||||
}
|
||||
_requestId = MTP::send(MTPchannels_UpdatePinnedMessage(MTP_flags(flags), _channel->inputChannel, MTP_int(_msgId)), rpcDone(&PinMessageBox::pinDone), rpcFail(&PinMessageBox::pinFail));
|
||||
}
|
||||
|
||||
void PinMessageBox::showAll() {
|
||||
_text.show();
|
||||
_notify.show();
|
||||
_pin.show();
|
||||
_cancel.show();
|
||||
}
|
||||
|
||||
void PinMessageBox::hideAll() {
|
||||
_text.hide();
|
||||
_notify.hide();
|
||||
_pin.hide();
|
||||
_cancel.hide();
|
||||
}
|
||||
|
||||
void PinMessageBox::pinDone(const MTPUpdates &updates) {
|
||||
if (App::main()) {
|
||||
App::main()->sentUpdatesReceived(updates);
|
||||
}
|
||||
Ui::hideLayer();
|
||||
}
|
||||
|
||||
bool PinMessageBox::pinFail(const RPCError &error) {
|
||||
if (mtpIsFlood(error)) return false;
|
||||
Ui::hideLayer();
|
||||
return true;
|
||||
}
|
||||
|
||||
RichDeleteMessageBox::RichDeleteMessageBox(ChannelData *channel, UserData *from, MsgId msgId) : AbstractBox(st::boxWidth)
|
||||
, _channel(channel)
|
||||
, _from(from)
|
||||
, _msgId(msgId)
|
||||
, _text(this, lang(lng_selected_delete_sure_this), st::boxLabel)
|
||||
, _banUser(this, lang(lng_ban_user), false)
|
||||
, _reportSpam(this, lang(lng_report_spam), false)
|
||||
, _deleteAll(this, lang(lng_delete_all_from), false)
|
||||
, _delete(this, lang(lng_box_delete), st::defaultBoxButton)
|
||||
, _cancel(this, lang(lng_cancel), st::cancelBoxButton) {
|
||||
t_assert(_channel != nullptr);
|
||||
|
||||
_text.resizeToWidth(st::boxWidth - st::boxPadding.left() - st::boxButtonPadding.right());
|
||||
setMaxHeight(st::boxPadding.top() + _text.height() + st::boxMediumSkip + _banUser.height() + st::boxLittleSkip + _reportSpam.height() + st::boxLittleSkip + _deleteAll.height() + st::boxPadding.bottom() + st::boxButtonPadding.top() + _delete.height() + st::boxButtonPadding.bottom());
|
||||
|
||||
connect(&_delete, SIGNAL(clicked()), this, SLOT(onDelete()));
|
||||
connect(&_cancel, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
}
|
||||
|
||||
void RichDeleteMessageBox::resizeEvent(QResizeEvent *e) {
|
||||
_text.moveToLeft(st::boxPadding.left(), st::boxPadding.top());
|
||||
_banUser.moveToLeft(st::boxPadding.left(), _text.y() + _text.height() + st::boxMediumSkip);
|
||||
_reportSpam.moveToLeft(st::boxPadding.left(), _banUser.y() + _banUser.height() + st::boxLittleSkip);
|
||||
_deleteAll.moveToLeft(st::boxPadding.left(), _reportSpam.y() + _reportSpam.height() + st::boxLittleSkip);
|
||||
_delete.moveToRight(st::boxButtonPadding.right(), height() - st::boxButtonPadding.bottom() - _delete.height());
|
||||
_cancel.moveToRight(st::boxButtonPadding.right() + _delete.width() + st::boxButtonPadding.left(), _delete.y());
|
||||
}
|
||||
|
||||
void RichDeleteMessageBox::onDelete() {
|
||||
if (_banUser.checked()) {
|
||||
MTP::send(MTPchannels_KickFromChannel(_channel->inputChannel, _from->inputUser, MTP_boolTrue()), App::main()->rpcDone(&MainWidget::sentUpdatesReceived));
|
||||
}
|
||||
if (_reportSpam.checked()) {
|
||||
MTP::send(MTPchannels_ReportSpam(_channel->inputChannel, _from->inputUser, MTP_vector<MTPint>(1, MTP_int(_msgId))));
|
||||
}
|
||||
if (_deleteAll.checked()) {
|
||||
App::main()->deleteAllFromUser(_channel, _from);
|
||||
}
|
||||
if (HistoryItem *item = App::histItemById(_channel ? peerToChannel(_channel->id) : 0, _msgId)) {
|
||||
bool wasLast = (item->history()->lastMsg == item);
|
||||
item->destroy();
|
||||
if (_msgId > 0) {
|
||||
App::main()->deleteMessages(_channel, QVector<MTPint>(1, MTP_int(_msgId)));
|
||||
} else if (wasLast) {
|
||||
App::main()->checkPeerHistory(_channel);
|
||||
}
|
||||
}
|
||||
Ui::hideLayer();
|
||||
}
|
||||
|
||||
void RichDeleteMessageBox::showAll() {
|
||||
_text.show();
|
||||
_banUser.show();
|
||||
_reportSpam.show();
|
||||
_deleteAll.show();
|
||||
_delete.show();
|
||||
_cancel.show();
|
||||
}
|
||||
|
||||
void RichDeleteMessageBox::hideAll() {
|
||||
_text.hide();
|
||||
_banUser.hide();
|
||||
_reportSpam.hide();
|
||||
_deleteAll.hide();
|
||||
_delete.hide();
|
||||
_cancel.hide();
|
||||
}
|
||||
|
||||
@@ -12,20 +12,23 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include "abstractbox.h"
|
||||
|
||||
class InformBox;
|
||||
class ConfirmBox : public AbstractBox {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
|
||||
ConfirmBox(const QString &text, const QString &doneText = QString(), const QString &cancelText = QString(), const style::flatButton &doneStyle = st::btnSelectDone, const style::flatButton &cancelStyle = st::btnSelectCancel);
|
||||
ConfirmBox(const QString &text, bool noDone, const QString &cancelText = QString());
|
||||
ConfirmBox(const QString &text, const QString &doneText = QString(), const style::BoxButton &doneStyle = st::defaultBoxButton, const QString &cancelText = QString(), const style::BoxButton &cancelStyle = st::cancelBoxButton);
|
||||
void keyPressEvent(QKeyEvent *e);
|
||||
void paintEvent(QPaintEvent *e);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
@@ -53,12 +56,13 @@ protected:
|
||||
|
||||
private:
|
||||
|
||||
ConfirmBox(const QString &text, const QString &doneText, const style::BoxButton &doneStyle, bool informative);
|
||||
friend class InformBox;
|
||||
|
||||
void init(const QString &text);
|
||||
|
||||
bool _infoMsg;
|
||||
bool _informative;
|
||||
|
||||
FlatButton _confirm, _cancel;
|
||||
BottomButton _close;
|
||||
Text _text;
|
||||
int32 _textWidth, _textHeight;
|
||||
|
||||
@@ -66,6 +70,14 @@ private:
|
||||
|
||||
QPoint _lastMousePos;
|
||||
TextLinkPtr _myLink;
|
||||
|
||||
BoxButton _confirm, _cancel;
|
||||
};
|
||||
|
||||
class InformBox : public ConfirmBox {
|
||||
public:
|
||||
InformBox(const QString &text, const QString &doneText = QString(), const style::BoxButton &doneStyle = st::defaultBoxButton) : ConfirmBox(text, doneText, doneStyle, true) {
|
||||
}
|
||||
};
|
||||
|
||||
class ConfirmLinkBox : public ConfirmBox {
|
||||
@@ -96,7 +108,6 @@ public:
|
||||
void mouseMoveEvent(QMouseEvent *e);
|
||||
void mousePressEvent(QMouseEvent *e);
|
||||
void leaveEvent(QEvent *e);
|
||||
void updateLink();
|
||||
|
||||
protected:
|
||||
|
||||
@@ -106,9 +117,9 @@ protected:
|
||||
private:
|
||||
|
||||
void updateSelected(const QPoint &cursorGlobalPosition);
|
||||
bool goodAnimStep(float64 ms);
|
||||
void step_good(float64 ms, bool timer);
|
||||
|
||||
BottomButton _close;
|
||||
BoxButton _close;
|
||||
Text _text;
|
||||
int32 _textWidth, _textHeight;
|
||||
|
||||
@@ -120,5 +131,102 @@ private:
|
||||
|
||||
QString _goodTextLink;
|
||||
anim::fvalue a_goodOpacity;
|
||||
Animation a_good;
|
||||
Animation _a_good;
|
||||
};
|
||||
|
||||
class ConvertToSupergroupBox : public AbstractBox, public RPCSender {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
|
||||
ConvertToSupergroupBox(ChatData *chat);
|
||||
void keyPressEvent(QKeyEvent *e);
|
||||
void paintEvent(QPaintEvent *e);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
|
||||
public slots:
|
||||
|
||||
void onConvert();
|
||||
|
||||
protected:
|
||||
|
||||
void hideAll();
|
||||
void showAll();
|
||||
|
||||
private:
|
||||
|
||||
void convertDone(const MTPUpdates &updates);
|
||||
bool convertFail(const RPCError &error);
|
||||
|
||||
ChatData *_chat;
|
||||
Text _text, _note;
|
||||
int32 _textWidth, _textHeight;
|
||||
|
||||
BoxButton _convert, _cancel;
|
||||
};
|
||||
|
||||
class PinMessageBox : public AbstractBox, public RPCSender {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
|
||||
PinMessageBox(ChannelData *channel, MsgId msgId);
|
||||
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
|
||||
public slots:
|
||||
|
||||
void onPin();
|
||||
|
||||
protected:
|
||||
|
||||
void showAll();
|
||||
void hideAll();
|
||||
|
||||
private:
|
||||
|
||||
void pinDone(const MTPUpdates &updates);
|
||||
bool pinFail(const RPCError &error);
|
||||
|
||||
ChannelData *_channel;
|
||||
MsgId _msgId;
|
||||
|
||||
FlatLabel _text;
|
||||
Checkbox _notify;
|
||||
|
||||
BoxButton _pin, _cancel;
|
||||
|
||||
mtpRequestId _requestId;
|
||||
|
||||
};
|
||||
|
||||
class RichDeleteMessageBox : public AbstractBox, public RPCSender {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
|
||||
RichDeleteMessageBox(ChannelData *channel, UserData *from, MsgId msgId);
|
||||
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
|
||||
public slots:
|
||||
|
||||
void onDelete();
|
||||
|
||||
protected:
|
||||
|
||||
void showAll();
|
||||
void hideAll();
|
||||
|
||||
private:
|
||||
|
||||
ChannelData *_channel;
|
||||
UserData *_from;
|
||||
MsgId _msgId;
|
||||
|
||||
FlatLabel _text;
|
||||
Checkbox _banUser, _reportSpam, _deleteAll;
|
||||
|
||||
BoxButton _delete, _cancel;
|
||||
|
||||
};
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "lang.h"
|
||||
@@ -24,26 +27,29 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
#include "mainwidget.h"
|
||||
#include "window.h"
|
||||
|
||||
ConnectionBox::ConnectionBox() :
|
||||
_saveButton(this, lang(lng_connection_save), st::btnSelectDone),
|
||||
_cancelButton(this, lang(lng_cancel), st::btnSelectCancel),
|
||||
_hostInput(this, st::inpConnectionHost, lang(lng_connection_host_ph), cConnectionProxy().host),
|
||||
_portInput(this, st::inpConnectionPort, lang(lng_connection_port_ph), QString::number(cConnectionProxy().port)),
|
||||
_userInput(this, st::inpConnectionUser, lang(lng_connection_user_ph), cConnectionProxy().user),
|
||||
_passwordInput(this, st::inpConnectionPassword, lang(lng_connection_password_ph), cConnectionProxy().password),
|
||||
_autoRadio(this, qsl("conn_type"), dbictAuto, lang(lng_connection_auto_rb), (cConnectionType() == dbictAuto)),
|
||||
_httpProxyRadio(this, qsl("conn_type"), dbictHttpProxy, lang(lng_connection_http_proxy_rb), (cConnectionType() == dbictHttpProxy)),
|
||||
_tcpProxyRadio(this, qsl("conn_type"), dbictTcpProxy, lang(lng_connection_tcp_proxy_rb), (cConnectionType() == dbictTcpProxy)),
|
||||
_tryIPv6(this, lang(lng_connection_try_ipv6), cTryIPv6()) {
|
||||
ConnectionBox::ConnectionBox() : AbstractBox(st::boxWidth)
|
||||
, _hostInput(this, st::connectionHostInputField, lang(lng_connection_host_ph), cConnectionProxy().host)
|
||||
, _portInput(this, st::connectionPortInputField, lang(lng_connection_port_ph), QString::number(cConnectionProxy().port))
|
||||
, _userInput(this, st::connectionUserInputField, lang(lng_connection_user_ph), cConnectionProxy().user)
|
||||
, _passwordInput(this, st::connectionPasswordInputField, lang(lng_connection_password_ph), cConnectionProxy().password)
|
||||
, _autoRadio(this, qsl("conn_type"), dbictAuto, lang(lng_connection_auto_rb), (cConnectionType() == dbictAuto))
|
||||
, _httpProxyRadio(this, qsl("conn_type"), dbictHttpProxy, lang(lng_connection_http_proxy_rb), (cConnectionType() == dbictHttpProxy))
|
||||
, _tcpProxyRadio(this, qsl("conn_type"), dbictTcpProxy, lang(lng_connection_tcp_proxy_rb), (cConnectionType() == dbictTcpProxy))
|
||||
, _tryIPv6(this, lang(lng_connection_try_ipv6), cTryIPv6())
|
||||
, _save(this, lang(lng_connection_save), st::defaultBoxButton)
|
||||
, _cancel(this, lang(lng_cancel), st::cancelBoxButton) {
|
||||
|
||||
connect(&_saveButton, SIGNAL(clicked()), this, SLOT(onSave()));
|
||||
connect(&_cancelButton, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
connect(&_save, SIGNAL(clicked()), this, SLOT(onSave()));
|
||||
connect(&_cancel, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
|
||||
connect(&_autoRadio, SIGNAL(changed()), this, SLOT(onChange()));
|
||||
connect(&_httpProxyRadio, SIGNAL(changed()), this, SLOT(onChange()));
|
||||
connect(&_tcpProxyRadio, SIGNAL(changed()), this, SLOT(onChange()));
|
||||
|
||||
_passwordInput.setEchoMode(QLineEdit::Password);
|
||||
connect(&_hostInput, SIGNAL(submitted(bool)), this, SLOT(onSubmit()));
|
||||
connect(&_portInput, SIGNAL(submitted(bool)), this, SLOT(onSubmit()));
|
||||
connect(&_userInput, SIGNAL(submitted(bool)), this, SLOT(onSubmit()));
|
||||
connect(&_passwordInput, SIGNAL(submitted(bool)), this, SLOT(onSubmit()));
|
||||
|
||||
prepare();
|
||||
}
|
||||
@@ -59,8 +65,8 @@ void ConnectionBox::hideAll() {
|
||||
_userInput.hide();
|
||||
_passwordInput.hide();
|
||||
|
||||
_saveButton.hide();
|
||||
_cancelButton.hide();
|
||||
_save.hide();
|
||||
_cancel.hide();
|
||||
}
|
||||
|
||||
void ConnectionBox::showAll() {
|
||||
@@ -69,9 +75,9 @@ void ConnectionBox::showAll() {
|
||||
_tcpProxyRadio.show();
|
||||
_tryIPv6.show();
|
||||
|
||||
int32 h = st::boxTitleHeight + st::connectionSkip + _autoRadio.height() + st::connectionSkip + _httpProxyRadio.height() + st::connectionSkip + _tcpProxyRadio.height() + st::connectionSkip + st::lineWidth + st::connectionSkip + _tryIPv6.height() + st::connectionSkip;
|
||||
int32 h = st::boxTitleHeight + st::boxOptionListPadding.top() + _autoRadio.height() + st::boxOptionListPadding.top() + _httpProxyRadio.height() + st::boxOptionListPadding.top() + _tcpProxyRadio.height() + st::boxOptionListPadding.top() + st::connectionIPv6Skip + _tryIPv6.height() + st::boxOptionListPadding.bottom() + st::boxPadding.bottom() + st::boxButtonPadding.top() + _save.height() + st::boxButtonPadding.bottom();
|
||||
if (_httpProxyRadio.checked() || _tcpProxyRadio.checked()) {
|
||||
h += 2 * st::boxPadding.top() + 2 * _hostInput.height();
|
||||
h += 2 * st::boxOptionListPadding.top() + 2 * _hostInput.height();
|
||||
_hostInput.show();
|
||||
_portInput.show();
|
||||
_userInput.show();
|
||||
@@ -83,10 +89,10 @@ void ConnectionBox::showAll() {
|
||||
_passwordInput.hide();
|
||||
}
|
||||
|
||||
_saveButton.show();
|
||||
_cancelButton.show();
|
||||
_save.show();
|
||||
_cancel.show();
|
||||
|
||||
setMaxHeight(h + _saveButton.height());
|
||||
setMaxHeight(h);
|
||||
resizeEvent(0);
|
||||
}
|
||||
|
||||
@@ -100,52 +106,43 @@ void ConnectionBox::paintEvent(QPaintEvent *e) {
|
||||
Painter p(this);
|
||||
if (paint(p)) return;
|
||||
|
||||
paintTitle(p, lang(lng_connection_header), true);
|
||||
|
||||
// paint separator
|
||||
p.fillRect(st::boxPadding.left(), _tryIPv6.y() - st::connectionSkip - st::lineWidth, width() - st::boxPadding.left() - st::boxPadding.right(), st::lineWidth, st::scrollDef.shColor->b);
|
||||
|
||||
// paint shadow
|
||||
p.fillRect(0, height() - st::btnSelectCancel.height - st::scrollDef.bottomsh, width(), st::scrollDef.bottomsh, st::scrollDef.shColor->b);
|
||||
|
||||
// paint button sep
|
||||
p.fillRect(st::btnSelectCancel.width, height() - st::btnSelectCancel.height, st::lineWidth, st::btnSelectCancel.height, st::btnSelectSep->b);
|
||||
paintTitle(p, lang(lng_connection_header));
|
||||
}
|
||||
|
||||
void ConnectionBox::resizeEvent(QResizeEvent *e) {
|
||||
_autoRadio.move(st::boxPadding.left(), st::boxTitleHeight + st::connectionSkip);
|
||||
_httpProxyRadio.move(st::boxPadding.left(), _autoRadio.y() + _autoRadio.height() + st::connectionSkip);
|
||||
_autoRadio.moveToLeft(st::boxPadding.left() + st::boxOptionListPadding.left(), st::boxTitleHeight + st::boxOptionListPadding.top());
|
||||
_httpProxyRadio.moveToLeft(st::boxPadding.left() + st::boxOptionListPadding.left(), _autoRadio.y() + _autoRadio.height() + st::boxOptionListPadding.top());
|
||||
|
||||
int32 inputy = 0;
|
||||
if (_httpProxyRadio.checked()) {
|
||||
inputy = _httpProxyRadio.y() + _httpProxyRadio.height() + st::boxPadding.top();
|
||||
_tcpProxyRadio.move(st::boxPadding.left(), inputy + st::boxPadding.top() + 2 * _hostInput.height() + st::connectionSkip);
|
||||
inputy = _httpProxyRadio.y() + _httpProxyRadio.height() + st::boxOptionListPadding.top();
|
||||
_tcpProxyRadio.moveToLeft(st::boxPadding.left() + st::boxOptionListPadding.left(), inputy + st::boxOptionListPadding.top() + 2 * _hostInput.height() + st::boxOptionListPadding.top());
|
||||
} else {
|
||||
_tcpProxyRadio.move(st::boxPadding.left(), _httpProxyRadio.y() + _httpProxyRadio.height() + st::connectionSkip);
|
||||
_tcpProxyRadio.moveToLeft(st::boxPadding.left() + st::boxOptionListPadding.left(), _httpProxyRadio.y() + _httpProxyRadio.height() + st::boxOptionListPadding.top());
|
||||
if (_tcpProxyRadio.checked()) {
|
||||
inputy = _tcpProxyRadio.y() + _tcpProxyRadio.height() + st::boxPadding.top();
|
||||
inputy = _tcpProxyRadio.y() + _tcpProxyRadio.height() + st::boxOptionListPadding.top();
|
||||
}
|
||||
}
|
||||
|
||||
if (inputy) {
|
||||
_hostInput.move(st::boxPadding.left() + st::rbDefFlat.textLeft, inputy);
|
||||
_portInput.move(width() - st::boxPadding.right() - _portInput.width(), inputy);
|
||||
_userInput.move(st::boxPadding.left() + st::rbDefFlat.textLeft, _hostInput.y() + _hostInput.height() + st::boxPadding.top());
|
||||
_passwordInput.move(width() - st::boxPadding.right() - _passwordInput.width(), _userInput.y());
|
||||
_hostInput.moveToLeft(st::boxPadding.left() + st::boxOptionListPadding.left() + st::defaultRadiobutton.textPosition.x() - st::defaultInputField.textMargins.left(), inputy);
|
||||
_portInput.moveToRight(st::boxPadding.right(), inputy);
|
||||
_userInput.moveToLeft(st::boxPadding.left() + st::boxOptionListPadding.left() + st::defaultRadiobutton.textPosition.x() - st::defaultInputField.textMargins.left(), _hostInput.y() + _hostInput.height() + st::boxOptionListPadding.top());
|
||||
_passwordInput.moveToRight(st::boxPadding.right(), _userInput.y());
|
||||
}
|
||||
|
||||
int32 tryipv6y = (_tcpProxyRadio.checked() ? (_userInput.y() + _userInput.height()) : (_tcpProxyRadio.y() + _tcpProxyRadio.height())) + st::connectionSkip + st::lineWidth + st::connectionSkip;
|
||||
_tryIPv6.move(st::boxPadding.left(), tryipv6y);
|
||||
int32 tryipv6y = (_tcpProxyRadio.checked() ? (_userInput.y() + _userInput.height()) : (_tcpProxyRadio.y() + _tcpProxyRadio.height())) + st::boxOptionListPadding.top() + st::connectionIPv6Skip;
|
||||
_tryIPv6.moveToLeft(st::boxPadding.left() + st::boxOptionListPadding.left(), tryipv6y);
|
||||
|
||||
_saveButton.move(width() - _saveButton.width(), _tryIPv6.y() + _tryIPv6.height() + st::connectionSkip);
|
||||
_cancelButton.move(0, _saveButton.y());
|
||||
_save.moveToRight(st::boxButtonPadding.right(), height() - st::boxButtonPadding.bottom() - _save.height());
|
||||
_cancel.moveToRight(st::boxButtonPadding.right() + _save.width() + st::boxButtonPadding.left(), _save.y());
|
||||
}
|
||||
|
||||
void ConnectionBox::onChange() {
|
||||
showAll();
|
||||
if (_httpProxyRadio.checked() || _tcpProxyRadio.checked()) {
|
||||
_hostInput.setFocus();
|
||||
if (_httpProxyRadio.checked() && !_portInput.text().toInt()) {
|
||||
if (_httpProxyRadio.checked() && !_portInput.getLastText().toInt()) {
|
||||
_portInput.setText(qsl("80"));
|
||||
_portInput.updatePlaceholder();
|
||||
}
|
||||
@@ -153,13 +150,41 @@ void ConnectionBox::onChange() {
|
||||
update();
|
||||
}
|
||||
|
||||
void ConnectionBox::onSubmit() {
|
||||
if (_hostInput.hasFocus()) {
|
||||
if (!_hostInput.getLastText().trimmed().isEmpty()) {
|
||||
_portInput.setFocus();
|
||||
} else {
|
||||
_hostInput.showError();
|
||||
}
|
||||
} else if (_portInput.hasFocus()) {
|
||||
if (_portInput.getLastText().trimmed().toInt() > 0) {
|
||||
_userInput.setFocus();
|
||||
} else {
|
||||
_portInput.showError();
|
||||
}
|
||||
} else if (_userInput.hasFocus()) {
|
||||
_passwordInput.setFocus();
|
||||
} else if (_passwordInput.hasFocus()) {
|
||||
if (_hostInput.getLastText().trimmed().isEmpty()) {
|
||||
_hostInput.setFocus();
|
||||
_hostInput.showError();
|
||||
} else if (_portInput.getLastText().trimmed().toInt() <= 0) {
|
||||
_portInput.setFocus();
|
||||
_portInput.showError();
|
||||
} else {
|
||||
onSave();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void ConnectionBox::onSave() {
|
||||
if (_httpProxyRadio.checked() || _tcpProxyRadio.checked()) {
|
||||
ConnectionProxy p;
|
||||
p.host = _hostInput.text().trimmed();
|
||||
p.user = _userInput.text().trimmed();
|
||||
p.password = _passwordInput.text().trimmed();
|
||||
p.port = _portInput.text().toInt();
|
||||
p.host = _hostInput.getLastText().trimmed();
|
||||
p.user = _userInput.getLastText().trimmed();
|
||||
p.password = _passwordInput.getLastText().trimmed();
|
||||
p.port = _portInput.getLastText().toInt();
|
||||
if (p.host.isEmpty()) {
|
||||
_hostInput.setFocus();
|
||||
return;
|
||||
@@ -176,8 +201,10 @@ void ConnectionBox::onSave() {
|
||||
} else {
|
||||
cSetConnectionType(dbictAuto);
|
||||
cSetConnectionProxy(ConnectionProxy());
|
||||
#ifndef TDESKTOP_DISABLE_NETWORK_PROXY
|
||||
QNetworkProxyFactory::setUseSystemConfiguration(false);
|
||||
QNetworkProxyFactory::setUseSystemConfiguration(true);
|
||||
#endif
|
||||
}
|
||||
if (cPlatform() == dbipWindows && cTryIPv6() != _tryIPv6.checked()) {
|
||||
cSetTryIPv6(_tryIPv6.checked());
|
||||
@@ -190,6 +217,136 @@ void ConnectionBox::onSave() {
|
||||
Local::writeSettings();
|
||||
MTP::restart();
|
||||
reinitImageLinkManager();
|
||||
reinitWebLoadManager();
|
||||
emit closed();
|
||||
}
|
||||
}
|
||||
|
||||
AutoDownloadBox::AutoDownloadBox() : AbstractBox(st::boxWidth)
|
||||
, _photoPrivate(this, lang(lng_media_auto_private_chats), !(cAutoDownloadPhoto() & dbiadNoPrivate))
|
||||
, _photoGroups(this, lang(lng_media_auto_groups), !(cAutoDownloadPhoto() & dbiadNoGroups))
|
||||
, _audioPrivate(this, lang(lng_media_auto_private_chats), !(cAutoDownloadAudio() & dbiadNoPrivate))
|
||||
, _audioGroups(this, lang(lng_media_auto_groups), !(cAutoDownloadAudio() & dbiadNoGroups))
|
||||
, _gifPrivate(this, lang(lng_media_auto_private_chats), !(cAutoDownloadGif() & dbiadNoPrivate))
|
||||
, _gifGroups(this, lang(lng_media_auto_groups), !(cAutoDownloadGif() & dbiadNoGroups))
|
||||
, _gifPlay(this, lang(lng_media_auto_play), cAutoPlayGif())
|
||||
, _sectionHeight(st::boxTitleHeight + 2 * (st::defaultCheckbox.height + st::setLittleSkip))
|
||||
, _save(this, lang(lng_connection_save), st::defaultBoxButton)
|
||||
, _cancel(this, lang(lng_cancel), st::cancelBoxButton) {
|
||||
|
||||
setMaxHeight(3 * _sectionHeight + st::setLittleSkip + _gifPlay.height() + st::setLittleSkip + st::boxButtonPadding.top() + _save.height() + st::boxButtonPadding.bottom());
|
||||
|
||||
connect(&_save, SIGNAL(clicked()), this, SLOT(onSave()));
|
||||
connect(&_cancel, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
|
||||
prepare();
|
||||
}
|
||||
|
||||
void AutoDownloadBox::hideAll() {
|
||||
_photoPrivate.hide();
|
||||
_photoGroups.hide();
|
||||
_audioPrivate.hide();
|
||||
_audioGroups.hide();
|
||||
_gifPrivate.hide();
|
||||
_gifGroups.hide();
|
||||
_gifPlay.hide();
|
||||
|
||||
_save.hide();
|
||||
_cancel.hide();
|
||||
}
|
||||
|
||||
void AutoDownloadBox::showAll() {
|
||||
_photoPrivate.show();
|
||||
_photoGroups.show();
|
||||
_audioPrivate.show();
|
||||
_audioGroups.show();
|
||||
_gifPrivate.show();
|
||||
_gifGroups.show();
|
||||
_gifPlay.show();
|
||||
|
||||
_save.show();
|
||||
_cancel.show();
|
||||
}
|
||||
|
||||
void AutoDownloadBox::paintEvent(QPaintEvent *e) {
|
||||
Painter p(this);
|
||||
if (paint(p)) return;
|
||||
|
||||
p.setPen(st::black);
|
||||
p.setFont(st::semiboldFont);
|
||||
p.drawTextLeft(st::boxTitlePosition.x(), st::boxTitlePosition.y(), width(), lang(lng_media_auto_photo));
|
||||
p.drawTextLeft(st::boxTitlePosition.x(), _sectionHeight + st::boxTitlePosition.y(), width(), lang(lng_media_auto_audio));
|
||||
p.drawTextLeft(st::boxTitlePosition.x(), 2 * _sectionHeight + st::boxTitlePosition.y(), width(), lang(lng_media_auto_gif));
|
||||
}
|
||||
|
||||
void AutoDownloadBox::resizeEvent(QResizeEvent *e) {
|
||||
_photoPrivate.moveToLeft(st::boxTitlePosition.x(), st::boxTitleHeight + st::setLittleSkip);
|
||||
_photoGroups.moveToLeft(st::boxTitlePosition.x(), _photoPrivate.y() + _photoPrivate.height() + st::setLittleSkip);
|
||||
|
||||
_audioPrivate.moveToLeft(st::boxTitlePosition.x(), _sectionHeight + st::boxTitleHeight + st::setLittleSkip);
|
||||
_audioGroups.moveToLeft(st::boxTitlePosition.x(), _audioPrivate.y() + _audioPrivate.height() + st::setLittleSkip);
|
||||
|
||||
_gifPrivate.moveToLeft(st::boxTitlePosition.x(), 2 * _sectionHeight + st::boxTitleHeight + st::setLittleSkip);
|
||||
_gifGroups.moveToLeft(st::boxTitlePosition.x(), _gifPrivate.y() + _gifPrivate.height() + st::setLittleSkip);
|
||||
_gifPlay.moveToLeft(st::boxTitlePosition.x(), _gifGroups.y() + _gifGroups.height() + st::setLittleSkip);
|
||||
|
||||
_save.moveToRight(st::boxButtonPadding.right(), height() - st::boxButtonPadding.bottom() - _save.height());
|
||||
_cancel.moveToRight(st::boxButtonPadding.right() + _save.width() + st::boxButtonPadding.left(), _save.y());
|
||||
}
|
||||
|
||||
void AutoDownloadBox::onSave() {
|
||||
bool changed = false;
|
||||
int32 autoDownloadPhoto = (_photoPrivate.checked() ? 0 : dbiadNoPrivate) | (_photoGroups.checked() ? 0 : dbiadNoGroups);
|
||||
if (cAutoDownloadPhoto() != autoDownloadPhoto) {
|
||||
bool enabledPrivate = ((cAutoDownloadPhoto() & dbiadNoPrivate) && !(autoDownloadPhoto & dbiadNoPrivate));
|
||||
bool enabledGroups = ((cAutoDownloadPhoto() & dbiadNoGroups) && !(autoDownloadPhoto & dbiadNoGroups));
|
||||
cSetAutoDownloadPhoto(autoDownloadPhoto);
|
||||
if (enabledPrivate || enabledGroups) {
|
||||
const PhotosData &data(App::photosData());
|
||||
for (PhotosData::const_iterator i = data.cbegin(), e = data.cend(); i != e; ++i) {
|
||||
i.value()->automaticLoadSettingsChanged();
|
||||
}
|
||||
}
|
||||
changed = true;
|
||||
}
|
||||
int32 autoDownloadAudio = (_audioPrivate.checked() ? 0 : dbiadNoPrivate) | (_audioGroups.checked() ? 0 : dbiadNoGroups);
|
||||
if (cAutoDownloadAudio() != autoDownloadAudio) {
|
||||
bool enabledPrivate = ((cAutoDownloadAudio() & dbiadNoPrivate) && !(autoDownloadAudio & dbiadNoPrivate));
|
||||
bool enabledGroups = ((cAutoDownloadAudio() & dbiadNoGroups) && !(autoDownloadAudio & dbiadNoGroups));
|
||||
cSetAutoDownloadAudio(autoDownloadAudio);
|
||||
if (enabledPrivate || enabledGroups) {
|
||||
const DocumentsData &data(App::documentsData());
|
||||
for (DocumentsData::const_iterator i = data.cbegin(), e = data.cend(); i != e; ++i) {
|
||||
if (i.value()->voice()) {
|
||||
i.value()->automaticLoadSettingsChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
changed = true;
|
||||
}
|
||||
int32 autoDownloadGif = (_gifPrivate.checked() ? 0 : dbiadNoPrivate) | (_gifGroups.checked() ? 0 : dbiadNoGroups);
|
||||
if (cAutoDownloadGif() != autoDownloadGif) {
|
||||
bool enabledPrivate = ((cAutoDownloadGif() & dbiadNoPrivate) && !(autoDownloadGif & dbiadNoPrivate));
|
||||
bool enabledGroups = ((cAutoDownloadGif() & dbiadNoGroups) && !(autoDownloadGif & dbiadNoGroups));
|
||||
cSetAutoDownloadGif(autoDownloadGif);
|
||||
if (enabledPrivate || enabledGroups) {
|
||||
const DocumentsData &data(App::documentsData());
|
||||
for (DocumentsData::const_iterator i = data.cbegin(), e = data.cend(); i != e; ++i) {
|
||||
if (i.value()->isAnimation()) {
|
||||
i.value()->automaticLoadSettingsChanged();
|
||||
}
|
||||
}
|
||||
Notify::automaticLoadSettingsChangedGif();
|
||||
}
|
||||
changed = true;
|
||||
}
|
||||
if (cAutoPlayGif() != _gifPlay.checked()) {
|
||||
cSetAutoPlayGif(_gifPlay.checked());
|
||||
if (!cAutoPlayGif()) {
|
||||
App::stopGifItems();
|
||||
}
|
||||
changed = true;
|
||||
}
|
||||
if (changed) Local::writeUserSettings();
|
||||
onClose();
|
||||
}
|
||||
|
||||
@@ -12,12 +12,14 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include "gui/phoneinput.h"
|
||||
#include "abstractbox.h"
|
||||
|
||||
class ConnectionBox : public AbstractBox {
|
||||
@@ -32,6 +34,7 @@ public:
|
||||
public slots:
|
||||
|
||||
void onChange();
|
||||
void onSubmit();
|
||||
void onSave();
|
||||
|
||||
protected:
|
||||
@@ -42,10 +45,41 @@ protected:
|
||||
|
||||
private:
|
||||
|
||||
FlatButton _saveButton, _cancelButton;
|
||||
FlatInput _hostInput;
|
||||
InputField _hostInput;
|
||||
PortInput _portInput;
|
||||
FlatInput _userInput, _passwordInput;
|
||||
FlatRadiobutton _autoRadio, _httpProxyRadio, _tcpProxyRadio;
|
||||
FlatCheckbox _tryIPv6;
|
||||
InputField _userInput;
|
||||
PasswordField _passwordInput;
|
||||
Radiobutton _autoRadio, _httpProxyRadio, _tcpProxyRadio;
|
||||
Checkbox _tryIPv6;
|
||||
|
||||
BoxButton _save, _cancel;
|
||||
};
|
||||
|
||||
class AutoDownloadBox : public AbstractBox {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
|
||||
AutoDownloadBox();
|
||||
void paintEvent(QPaintEvent *e);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
|
||||
public slots:
|
||||
|
||||
void onSave();
|
||||
|
||||
protected:
|
||||
|
||||
void hideAll();
|
||||
void showAll();
|
||||
|
||||
private:
|
||||
|
||||
Checkbox _photoPrivate, _photoGroups;
|
||||
Checkbox _audioPrivate, _audioGroups;
|
||||
Checkbox _gifPrivate, _gifGroups, _gifPlay;
|
||||
|
||||
int32 _sectionHeight;
|
||||
|
||||
BoxButton _save, _cancel;
|
||||
};
|
||||
|
||||
@@ -12,19 +12,16 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include "abstractbox.h"
|
||||
|
||||
enum CreatingGroupType {
|
||||
CreatingGroupNone,
|
||||
CreatingGroupGroup,
|
||||
CreatingGroupChannel,
|
||||
};
|
||||
|
||||
enum MembersFilter {
|
||||
MembersFilterRecent,
|
||||
MembersFilterAdmins,
|
||||
@@ -42,10 +39,11 @@ private:
|
||||
public:
|
||||
|
||||
ContactsInner(CreatingGroupType creating = CreatingGroupNone);
|
||||
ContactsInner(ChannelData *channel, MembersFilter channelFilter = MembersFilterRecent, const MembersAlreadyIn &already = MembersAlreadyIn());
|
||||
ContactsInner(ChatData *chat);
|
||||
ContactsInner(ChannelData *channel, MembersFilter membersFilter, const MembersAlreadyIn &already);
|
||||
ContactsInner(ChatData *chat, MembersFilter membersFilter);
|
||||
ContactsInner(UserData *bot);
|
||||
void init();
|
||||
void initList();
|
||||
|
||||
void paintEvent(QPaintEvent *e);
|
||||
void enterEvent(QEvent *e);
|
||||
@@ -63,6 +61,9 @@ public:
|
||||
QVector<UserData*> selected();
|
||||
QVector<MTPInputUser> selectedInputs();
|
||||
PeerData *selectedUser();
|
||||
bool allAdmins() const {
|
||||
return _allAdmins.checked();
|
||||
}
|
||||
|
||||
void loadProfilePhotos(int32 yFrom);
|
||||
void chooseParticipant();
|
||||
@@ -75,7 +76,7 @@ public:
|
||||
|
||||
ChatData *chat() const;
|
||||
ChannelData *channel() const;
|
||||
MembersFilter channelFilter() const;
|
||||
MembersFilter membersFilter() const;
|
||||
UserData *bot() const;
|
||||
CreatingGroupType creating() const;
|
||||
|
||||
@@ -84,6 +85,8 @@ public:
|
||||
return !_already.isEmpty();
|
||||
}
|
||||
|
||||
void saving(bool flag);
|
||||
|
||||
~ContactsInner();
|
||||
|
||||
signals:
|
||||
@@ -93,6 +96,7 @@ signals:
|
||||
void searchByUsername();
|
||||
void chosenChanged();
|
||||
void adminAdded();
|
||||
void addRequested();
|
||||
|
||||
public slots:
|
||||
|
||||
@@ -106,20 +110,29 @@ public slots:
|
||||
void onAddAdmin();
|
||||
void onNoAddAdminBox(QObject *obj);
|
||||
|
||||
void onAllAdminsChanged();
|
||||
|
||||
private:
|
||||
|
||||
void updateSelectedRow();
|
||||
void addAdminDone(const MTPBool &result, mtpRequestId req);
|
||||
void addAdminDone(const MTPUpdates &result, mtpRequestId req);
|
||||
bool addAdminFail(const RPCError &error, mtpRequestId req);
|
||||
|
||||
int32 _rowHeight, _newItemHeight;
|
||||
bool _newItemSel;
|
||||
|
||||
ChatData *_chat;
|
||||
ChannelData *_channel;
|
||||
MembersFilter _channelFilter;
|
||||
MembersFilter _membersFilter;
|
||||
UserData *_bot;
|
||||
CreatingGroupType _creating;
|
||||
MembersAlreadyIn _already;
|
||||
|
||||
ChatData *_addToChat;
|
||||
Checkbox _allAdmins;
|
||||
int32 _aboutWidth;
|
||||
Text _aboutAllAdmins, _aboutAdmins;
|
||||
|
||||
PeerData *_addToPeer;
|
||||
UserData *_addAdmin;
|
||||
mtpRequestId _addAdminRequestId;
|
||||
ConfirmBox *_addAdminBox;
|
||||
@@ -139,6 +152,7 @@ private:
|
||||
struct ContactData {
|
||||
Text name;
|
||||
QString online;
|
||||
bool onlineColor;
|
||||
bool inchat;
|
||||
bool check;
|
||||
};
|
||||
@@ -161,6 +175,9 @@ private:
|
||||
QPoint _lastMousePos;
|
||||
LinkButton _addContactLnk;
|
||||
|
||||
bool _saving;
|
||||
bool _allAdminsChecked;
|
||||
|
||||
};
|
||||
|
||||
class ContactsBox : public ItemListBox, public RPCSender {
|
||||
@@ -172,7 +189,7 @@ public:
|
||||
ContactsBox(const QString &name, const QImage &photo); // group creation
|
||||
ContactsBox(ChannelData *channel); // channel setup
|
||||
ContactsBox(ChannelData *channel, MembersFilter filter, const MembersAlreadyIn &already);
|
||||
ContactsBox(ChatData *chat);
|
||||
ContactsBox(ChatData *chat, MembersFilter filter);
|
||||
ContactsBox(UserData *bot);
|
||||
void keyPressEvent(QKeyEvent *e);
|
||||
void paintEvent(QPaintEvent *e);
|
||||
@@ -191,11 +208,15 @@ signals:
|
||||
public slots:
|
||||
|
||||
void onFilterUpdate();
|
||||
void onFilterCancel();
|
||||
void onChosenChanged();
|
||||
void onScroll();
|
||||
|
||||
void onAdd();
|
||||
void onInvite();
|
||||
void onCreate();
|
||||
void onSaveAdmins();
|
||||
|
||||
void onSubmit();
|
||||
|
||||
bool onSearchByUsername(bool searchCache = false);
|
||||
void onNeedSearchByUsername();
|
||||
@@ -211,12 +232,14 @@ private:
|
||||
void init();
|
||||
|
||||
ContactsInner _inner;
|
||||
FlatButton _addContact;
|
||||
FlatInput _filter;
|
||||
InputField _filter;
|
||||
IconedButton _filterCancel;
|
||||
|
||||
FlatButton _next, _cancel;
|
||||
BoxButton _next, _cancel;
|
||||
MembersFilter _membersFilter;
|
||||
|
||||
ScrollableBoxShadow _topShadow, *_bottomShadow;
|
||||
|
||||
void peopleReceived(const MTPcontacts_Found &result, mtpRequestId req);
|
||||
bool peopleFailed(const RPCError &error, mtpRequestId req);
|
||||
|
||||
@@ -231,8 +254,18 @@ private:
|
||||
typedef QMap<mtpRequestId, QString> PeopleQueries;
|
||||
PeopleQueries _peopleQueries;
|
||||
|
||||
int32 _saveRequestId;
|
||||
|
||||
// saving admins
|
||||
void saveAdminsDone(const MTPUpdates &result);
|
||||
void saveSelectedAdmins();
|
||||
void getAdminsDone(const MTPmessages_ChatFull &result);
|
||||
void setAdminDone(UserData *user, const MTPBool &result);
|
||||
void removeAdminDone(UserData *user, const MTPBool &result);
|
||||
bool saveAdminsFail(const RPCError &error);
|
||||
bool editAdminFail(const RPCError &error);
|
||||
|
||||
// group creation
|
||||
int32 _creationRequestId;
|
||||
QString _creationName;
|
||||
QImage _creationPhoto;
|
||||
|
||||
@@ -274,6 +307,7 @@ public:
|
||||
bool isLoaded() const {
|
||||
return !_loading;
|
||||
}
|
||||
void clearSel();
|
||||
|
||||
QMap<UserData*, bool> already() const;
|
||||
|
||||
@@ -282,7 +316,7 @@ public:
|
||||
signals:
|
||||
|
||||
void mustScrollTo(int ymin, int ymax);
|
||||
|
||||
void addRequested();
|
||||
void loaded();
|
||||
|
||||
public slots:
|
||||
@@ -298,19 +332,21 @@ public slots:
|
||||
private:
|
||||
|
||||
void updateSelectedRow();
|
||||
void clearSel();
|
||||
MemberData *data(int32 index);
|
||||
|
||||
void membersReceived(const MTPchannels_ChannelParticipants &result, mtpRequestId req);
|
||||
bool membersFailed(const RPCError &error, mtpRequestId req);
|
||||
|
||||
void kickDone(const MTPUpdates &result, mtpRequestId req);
|
||||
void kickAdminDone(const MTPBool &result, mtpRequestId req);
|
||||
void kickAdminDone(const MTPUpdates &result, mtpRequestId req);
|
||||
bool kickFail(const RPCError &error, mtpRequestId req);
|
||||
void removeKicked();
|
||||
|
||||
void clear();
|
||||
|
||||
int32 _rowHeight, _newItemHeight;
|
||||
bool _newItemSel;
|
||||
|
||||
ChannelData *_channel;
|
||||
MembersFilter _filter;
|
||||
|
||||
@@ -337,6 +373,7 @@ private:
|
||||
struct MemberData {
|
||||
Text name;
|
||||
QString online;
|
||||
bool onlineColor;
|
||||
bool canKick;
|
||||
};
|
||||
|
||||
@@ -351,6 +388,10 @@ private:
|
||||
MemberRoles _roles;
|
||||
MemberDatas _datas;
|
||||
|
||||
int32 _aboutWidth;
|
||||
Text _about;
|
||||
int32 _aboutHeight;
|
||||
|
||||
QPoint _lastMousePos;
|
||||
|
||||
};
|
||||
@@ -371,7 +412,6 @@ public:
|
||||
|
||||
public slots:
|
||||
|
||||
void onLoaded();
|
||||
void onScroll();
|
||||
|
||||
void onAdd();
|
||||
@@ -379,187 +419,13 @@ public slots:
|
||||
|
||||
protected:
|
||||
|
||||
void hideAll();
|
||||
void showAll();
|
||||
void showDone();
|
||||
|
||||
private:
|
||||
|
||||
MembersInner _inner;
|
||||
FlatButton _add, _done;
|
||||
|
||||
ContactsBox *_addBox;
|
||||
|
||||
SingleTimer _loadTimer;
|
||||
};
|
||||
|
||||
class NewGroupBox : public AbstractBox {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
|
||||
NewGroupBox();
|
||||
void keyPressEvent(QKeyEvent *e);
|
||||
void paintEvent(QPaintEvent *e);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
|
||||
public slots:
|
||||
|
||||
void onNext();
|
||||
|
||||
protected:
|
||||
|
||||
void hideAll();
|
||||
void showAll();
|
||||
void showDone();
|
||||
|
||||
private:
|
||||
|
||||
FlatRadiobutton _group, _channel;
|
||||
int32 _aboutGroupWidth, _aboutGroupHeight;
|
||||
Text _aboutGroup, _aboutChannel;
|
||||
FlatButton _next, _cancel;
|
||||
|
||||
};
|
||||
|
||||
class GroupInfoBox : public AbstractBox, public RPCSender {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
|
||||
GroupInfoBox(CreatingGroupType creating, bool fromTypeChoose);
|
||||
void keyPressEvent(QKeyEvent *e);
|
||||
void paintEvent(QPaintEvent *e);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
void mouseMoveEvent(QMouseEvent *e);
|
||||
void mousePressEvent(QMouseEvent *e);
|
||||
void leaveEvent(QEvent *e);
|
||||
|
||||
bool eventFilter(QObject *obj, QEvent *e);
|
||||
|
||||
bool descriptionAnimStep(float64 ms);
|
||||
bool photoAnimStep(float64 ms);
|
||||
|
||||
void setInnerFocus() {
|
||||
_name.setFocus();
|
||||
}
|
||||
|
||||
public slots:
|
||||
|
||||
void onPhoto();
|
||||
void onPhotoReady(const QImage &img);
|
||||
|
||||
void onNext();
|
||||
void onDescriptionResized();
|
||||
|
||||
protected:
|
||||
|
||||
void hideAll();
|
||||
void showAll();
|
||||
void showDone();
|
||||
|
||||
private:
|
||||
|
||||
QRect descriptionRect() const;
|
||||
QRect photoRect() const;
|
||||
|
||||
void updateMaxHeight();
|
||||
void updateSelected(const QPoint &cursorGlobalPosition);
|
||||
CreatingGroupType _creating;
|
||||
|
||||
anim::fvalue a_photoOver;
|
||||
Animation a_photo;
|
||||
bool _photoOver, _descriptionOver;
|
||||
|
||||
anim::cvalue a_descriptionBg, a_descriptionBorder;
|
||||
Animation a_description;
|
||||
|
||||
FlatInput _name;
|
||||
FlatButton _photo;
|
||||
FlatTextarea _description;
|
||||
QImage _photoBig;
|
||||
QPixmap _photoSmall;
|
||||
FlatButton _next, _cancel;
|
||||
|
||||
// channel creation
|
||||
int32 _creationRequestId;
|
||||
ChannelData *_createdChannel;
|
||||
|
||||
void creationDone(const MTPUpdates &updates);
|
||||
bool creationFail(const RPCError &e);
|
||||
void exportDone(const MTPExportedChatInvite &result);
|
||||
};
|
||||
|
||||
class SetupChannelBox : public AbstractBox, public RPCSender {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
|
||||
SetupChannelBox(ChannelData *channel, bool existing = false);
|
||||
void keyPressEvent(QKeyEvent *e);
|
||||
void paintEvent(QPaintEvent *e);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
void mouseMoveEvent(QMouseEvent *e);
|
||||
void mousePressEvent(QMouseEvent *e);
|
||||
void leaveEvent(QEvent *e);
|
||||
|
||||
void closePressed();
|
||||
|
||||
void setInnerFocus() {
|
||||
if (_link.isHidden()) {
|
||||
setFocus();
|
||||
} else {
|
||||
_link.setFocus();
|
||||
}
|
||||
}
|
||||
|
||||
public slots:
|
||||
|
||||
void onSave();
|
||||
void onChange();
|
||||
void onCheck();
|
||||
|
||||
void onPrivacyChange();
|
||||
|
||||
protected:
|
||||
|
||||
void hideAll();
|
||||
void showAll();
|
||||
void showDone();
|
||||
|
||||
private:
|
||||
|
||||
void updateSelected(const QPoint &cursorGlobalPosition);
|
||||
bool goodAnimStep(float64 ms);
|
||||
|
||||
ChannelData *_channel;
|
||||
bool _existing;
|
||||
|
||||
FlatRadiobutton _public, _private;
|
||||
FlatCheckbox _comments;
|
||||
int32 _aboutPublicWidth, _aboutPublicHeight;
|
||||
Text _aboutPublic, _aboutPrivate, _aboutComments;
|
||||
QString _linkPlaceholder;
|
||||
UsernameInput _link;
|
||||
QRect _invitationLink;
|
||||
bool _linkOver;
|
||||
FlatButton _save, _skip;
|
||||
|
||||
void onUpdateDone(const MTPBool &result);
|
||||
bool onUpdateFail(const RPCError &error);
|
||||
|
||||
void onCheckDone(const MTPBool &result);
|
||||
bool onCheckFail(const RPCError &error);
|
||||
bool onFirstCheckFail(const RPCError &error);
|
||||
|
||||
bool _tooMuchUsernames;
|
||||
|
||||
mtpRequestId _saveRequestId, _checkRequestId;
|
||||
QString _sentUsername, _checkUsername, _errorText, _goodText;
|
||||
|
||||
QString _goodTextLink;
|
||||
anim::fvalue a_goodOpacity;
|
||||
Animation a_good;
|
||||
|
||||
QTimer _checkTimer;
|
||||
};
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "lang.h"
|
||||
@@ -22,57 +25,60 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
|
||||
#include "downloadpathbox.h"
|
||||
#include "gui/filedialog.h"
|
||||
#include "pspecific.h"
|
||||
|
||||
DownloadPathBox::DownloadPathBox() :
|
||||
_path(cDownloadPath()),
|
||||
_defaultRadio(this, qsl("dir_type"), 0, lang(lng_download_path_default_radio), _path.isEmpty()),
|
||||
_tempRadio(this, qsl("dir_type"), 1, lang(lng_download_path_temp_radio), _path == qsl("tmp")),
|
||||
_dirRadio(this, qsl("dir_type"), 2, lang(lng_download_path_dir_radio), !_path.isEmpty() && _path != qsl("tmp")),
|
||||
_dirInput(this, st::inpDownloadDir, QString(), (_path.isEmpty() || _path == qsl("tmp")) ? QString() : QDir::toNativeSeparators(_path)),
|
||||
_saveButton(this, lang(lng_connection_save), st::btnSelectDone),
|
||||
_cancelButton(this, lang(lng_cancel), st::btnSelectCancel) {
|
||||
DownloadPathBox::DownloadPathBox() : AbstractBox()
|
||||
, _path(cDownloadPath())
|
||||
, _pathBookmark(cDownloadPathBookmark())
|
||||
, _default(this, qsl("dir_type"), 0, lang(lng_download_path_default_radio), _path.isEmpty())
|
||||
, _temp(this, qsl("dir_type"), 1, lang(lng_download_path_temp_radio), _path == qsl("tmp"))
|
||||
, _dir(this, qsl("dir_type"), 2, lang(lng_download_path_dir_radio), !_path.isEmpty() && _path != qsl("tmp"))
|
||||
, _pathLink(this, QString(), st::defaultBoxLinkButton)
|
||||
, _save(this, lang(lng_connection_save), st::defaultBoxButton)
|
||||
, _cancel(this, lang(lng_cancel), st::cancelBoxButton) {
|
||||
|
||||
connect(&_saveButton, SIGNAL(clicked()), this, SLOT(onSave()));
|
||||
connect(&_cancelButton, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
connect(&_save, SIGNAL(clicked()), this, SLOT(onSave()));
|
||||
connect(&_cancel, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
|
||||
connect(&_defaultRadio, SIGNAL(changed()), this, SLOT(onChange()));
|
||||
connect(&_tempRadio, SIGNAL(changed()), this, SLOT(onChange()));
|
||||
connect(&_dirRadio, SIGNAL(changed()), this, SLOT(onChange()));
|
||||
|
||||
connect(&_dirInput, SIGNAL(focused()), this, SLOT(onEditPath()));
|
||||
_dirInput.setCursorPosition(0);
|
||||
connect(&_default, SIGNAL(changed()), this, SLOT(onChange()));
|
||||
connect(&_temp, SIGNAL(changed()), this, SLOT(onChange()));
|
||||
connect(&_dir, SIGNAL(changed()), this, SLOT(onChange()));
|
||||
|
||||
connect(&_pathLink, SIGNAL(clicked()), this, SLOT(onEditPath()));
|
||||
if (!_path.isEmpty() && _path != qsl("tmp")) {
|
||||
setPathText(QDir::toNativeSeparators(_path));
|
||||
}
|
||||
prepare();
|
||||
}
|
||||
|
||||
void DownloadPathBox::hideAll() {
|
||||
_defaultRadio.hide();
|
||||
_tempRadio.hide();
|
||||
_dirRadio.hide();
|
||||
_default.hide();
|
||||
_temp.hide();
|
||||
_dir.hide();
|
||||
|
||||
_dirInput.hide();
|
||||
_pathLink.hide();
|
||||
|
||||
_saveButton.hide();
|
||||
_cancelButton.hide();
|
||||
_save.hide();
|
||||
_cancel.hide();
|
||||
}
|
||||
|
||||
void DownloadPathBox::showAll() {
|
||||
_defaultRadio.show();
|
||||
_tempRadio.show();
|
||||
_dirRadio.show();
|
||||
_default.show();
|
||||
_temp.show();
|
||||
_dir.show();
|
||||
|
||||
if (_dirRadio.checked()) {
|
||||
_dirInput.show();
|
||||
if (_dir.checked()) {
|
||||
_pathLink.show();
|
||||
} else {
|
||||
_dirInput.hide();
|
||||
_pathLink.hide();
|
||||
}
|
||||
|
||||
_saveButton.show();
|
||||
_cancelButton.show();
|
||||
_save.show();
|
||||
_cancel.show();
|
||||
|
||||
int32 h = st::boxTitleHeight + st::downloadSkip + _defaultRadio.height() + st::downloadSkip + _tempRadio.height() + st::downloadSkip + _dirRadio.height();
|
||||
if (_dirRadio.checked()) h += st::boxPadding.top() + _dirInput.height();
|
||||
h += st::downloadSkip + _saveButton.height();
|
||||
int32 h = st::boxTitleHeight + st::boxOptionListPadding.top() + _default.height() + st::boxOptionListPadding.top() + _temp.height() + st::boxOptionListPadding.top() + _dir.height();
|
||||
if (_dir.checked()) h += st::downloadPathSkip + _pathLink.height();
|
||||
h += st::boxOptionListPadding.bottom() + st::boxButtonPadding.top() + _save.height() + st::boxButtonPadding.bottom();
|
||||
|
||||
setMaxHeight(h);
|
||||
}
|
||||
@@ -81,42 +87,34 @@ void DownloadPathBox::paintEvent(QPaintEvent *e) {
|
||||
Painter p(this);
|
||||
if (paint(p)) return;
|
||||
|
||||
paintTitle(p, lang(lng_download_path_header), true);
|
||||
|
||||
// paint shadows
|
||||
p.fillRect(0, height() - st::btnSelectCancel.height - st::scrollDef.bottomsh, width(), st::scrollDef.bottomsh, st::scrollDef.shColor->b);
|
||||
|
||||
// paint button sep
|
||||
p.fillRect(st::btnSelectCancel.width, height() - st::btnSelectCancel.height, st::lineWidth, st::btnSelectCancel.height, st::btnSelectSep->b);
|
||||
paintTitle(p, lang(lng_download_path_header));
|
||||
}
|
||||
|
||||
void DownloadPathBox::resizeEvent(QResizeEvent *e) {
|
||||
_defaultRadio.move(st::boxPadding.left(), st::boxTitleHeight + st::downloadSkip);
|
||||
_tempRadio.move(st::boxPadding.left(), _defaultRadio.y() + _defaultRadio.height() + st::downloadSkip);
|
||||
_dirRadio.move(st::boxPadding.left(), _tempRadio.y() + _tempRadio.height() + st::downloadSkip);
|
||||
int32 inputy = _dirRadio.y() + _dirRadio.height() + st::boxPadding.top();
|
||||
_default.moveToLeft(st::boxPadding.left() + st::boxOptionListPadding.left(), st::boxTitleHeight + st::boxOptionListPadding.top());
|
||||
_temp.moveToLeft(st::boxPadding.left() + st::boxOptionListPadding.left(), _default.y() + _default.height() + st::boxOptionListPadding.top());
|
||||
_dir.moveToLeft(st::boxPadding.left() + st::boxOptionListPadding.left(), _temp.y() + _temp.height() + st::boxOptionListPadding.top());
|
||||
int32 inputx = st::boxPadding.left() + st::boxOptionListPadding.left() + st::defaultRadiobutton.textPosition.x();
|
||||
int32 inputy = _dir.y() + _dir.height() + st::downloadPathSkip;
|
||||
|
||||
_dirInput.move(st::boxPadding.left() + st::rbDefFlat.textLeft, inputy);
|
||||
_pathLink.moveToLeft(inputx, inputy);
|
||||
|
||||
int32 buttony = (_dirRadio.checked() ? (_dirInput.y() + _dirInput.height()) : (_dirRadio.y() + _dirRadio.height())) + st::downloadSkip;
|
||||
|
||||
_saveButton.move(width() - _saveButton.width(), buttony);
|
||||
_cancelButton.move(0, buttony);
|
||||
_save.moveToRight(st::boxButtonPadding.right(), height() - st::boxButtonPadding.bottom() - _save.height());
|
||||
_cancel.moveToRight(st::boxButtonPadding.right() + _save.width() + st::boxButtonPadding.left(), _save.y());
|
||||
}
|
||||
|
||||
void DownloadPathBox::onChange() {
|
||||
if (_dirRadio.checked()) {
|
||||
if (_dir.checked()) {
|
||||
if (_path.isEmpty() || _path == qsl("tmp")) {
|
||||
(_path.isEmpty() ? _defaultRadio : _tempRadio).setChecked(true);
|
||||
(_path.isEmpty() ? _default : _temp).setChecked(true);
|
||||
onEditPath();
|
||||
if (!_path.isEmpty() && _path != qsl("tmp")) {
|
||||
_dirRadio.setChecked(true);
|
||||
_dir.setChecked(true);
|
||||
}
|
||||
} else {
|
||||
_dirInput.setText(QDir::toNativeSeparators(_path));
|
||||
_dirInput.setCursorPosition(0);
|
||||
setPathText(QDir::toNativeSeparators(_path));
|
||||
}
|
||||
} else if (_tempRadio.checked()) {
|
||||
} else if (_temp.checked()) {
|
||||
_path = qsl("tmp");
|
||||
} else {
|
||||
_path = QString();
|
||||
@@ -126,25 +124,29 @@ void DownloadPathBox::onChange() {
|
||||
}
|
||||
|
||||
void DownloadPathBox::onEditPath() {
|
||||
_dirInput.clearFocus();
|
||||
|
||||
filedialogInit();
|
||||
QString path, lastPath = cDialogLastPath();
|
||||
if (!cDownloadPath().isEmpty()) {
|
||||
cSetDialogLastPath(cDownloadPath());
|
||||
if (!cDownloadPath().isEmpty() && cDownloadPath() != qstr("tmp")) {
|
||||
cSetDialogLastPath(cDownloadPath().left(cDownloadPath().size() - (cDownloadPath().endsWith('/') ? 1 : 0)));
|
||||
}
|
||||
if (filedialogGetDir(path, lang(lng_download_path_choose))) {
|
||||
if (!path.isEmpty()) {
|
||||
_path = path + '/';
|
||||
_dirInput.setText(QDir::toNativeSeparators(_path));
|
||||
_dirInput.setCursorPosition(0);
|
||||
_pathBookmark = psDownloadPathBookmark(_path);
|
||||
setPathText(QDir::toNativeSeparators(_path));
|
||||
}
|
||||
}
|
||||
cSetDialogLastPath(lastPath);
|
||||
}
|
||||
|
||||
void DownloadPathBox::onSave() {
|
||||
cSetDownloadPath(_defaultRadio.checked() ? QString() : (_tempRadio.checked() ? qsl("tmp") : _path));
|
||||
cSetDownloadPath(_default.checked() ? QString() : (_temp.checked() ? qsl("tmp") : _path));
|
||||
cSetDownloadPathBookmark((_default.checked() || _temp.checked()) ? QByteArray() : _pathBookmark);
|
||||
Local::writeUserSettings();
|
||||
emit closed();
|
||||
}
|
||||
|
||||
void DownloadPathBox::setPathText(const QString &text) {
|
||||
int32 availw = st::boxWideWidth - st::boxPadding.left() - st::defaultRadiobutton.textPosition.x() - st::boxPadding.right();
|
||||
_pathLink.setText(st::boxTextFont->elided(text, availw));
|
||||
}
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
@@ -41,9 +44,12 @@ protected:
|
||||
|
||||
private:
|
||||
|
||||
QString _path;
|
||||
void setPathText(const QString &text);
|
||||
|
||||
FlatRadiobutton _defaultRadio, _tempRadio, _dirRadio;
|
||||
FlatInput _dirInput;
|
||||
FlatButton _saveButton, _cancelButton;
|
||||
QString _path;
|
||||
QByteArray _pathBookmark;
|
||||
|
||||
Radiobutton _default, _temp, _dir;
|
||||
LinkButton _pathLink;
|
||||
BoxButton _save, _cancel;
|
||||
};
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "lang.h"
|
||||
@@ -68,14 +71,14 @@ namespace {
|
||||
const uint32 replacesCount = sizeof(replaces) / sizeof(EmojiReplace), replacesInRow = 7;
|
||||
}
|
||||
|
||||
EmojiBox::EmojiBox() : _esize(EmojiSizes[EIndex + 1]), _done(this, lang(lng_about_done), st::aboutCloseButton) {
|
||||
EmojiBox::EmojiBox() : _esize(EmojiSizes[EIndex + 1]) {
|
||||
setBlueTitle(true);
|
||||
|
||||
fillBlocks();
|
||||
|
||||
_blockHeight = st::emojiReplaceInnerHeight;
|
||||
|
||||
resizeMaxHeight(_blocks[0].size() * st::emojiReplaceWidth + (st::emojiReplaceWidth - _esize), st::boxPadding.top() + st::boxFont->height + _blocks.size() * st::emojiReplaceHeight + (st::emojiReplaceHeight - _blockHeight) + _done.height());
|
||||
|
||||
connect(&_done, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
resizeMaxHeight(_blocks[0].size() * st::emojiReplaceWidth + 2 * st::emojiReplacePadding, st::boxTitleHeight + st::emojiReplacePadding + _blocks.size() * st::emojiReplaceHeight + (st::emojiReplaceHeight - _blockHeight) + st::emojiReplacePadding);
|
||||
|
||||
prepare();
|
||||
}
|
||||
@@ -110,14 +113,6 @@ void EmojiBox::fillBlocks() {
|
||||
}
|
||||
}
|
||||
|
||||
void EmojiBox::hideAll() {
|
||||
_done.hide();
|
||||
}
|
||||
|
||||
void EmojiBox::showAll() {
|
||||
_done.show();
|
||||
}
|
||||
|
||||
void EmojiBox::keyPressEvent(QKeyEvent *e) {
|
||||
if (e->key() == Qt::Key_Enter || e->key() == Qt::Key_Return) {
|
||||
onClose();
|
||||
@@ -127,19 +122,19 @@ void EmojiBox::keyPressEvent(QKeyEvent *e) {
|
||||
}
|
||||
|
||||
void EmojiBox::paintEvent(QPaintEvent *e) {
|
||||
QPainter p(this);
|
||||
Painter p(this);
|
||||
if (paint(p)) return;
|
||||
|
||||
paintGrayTitle(p, lang(lng_settings_emoji_list));
|
||||
paintTitle(p, lang(lng_settings_emoji_list));
|
||||
|
||||
p.setFont(st::emojiTextFont->f);
|
||||
p.setPen(st::black->p);
|
||||
int32 top = st::boxPadding.top() + st::boxFont->height + (st::emojiReplaceHeight - _blockHeight) / 2;
|
||||
int32 top = st::boxTitleHeight + st::emojiReplacePadding + (st::emojiReplaceHeight - _blockHeight) / 2;
|
||||
for (Blocks::const_iterator i = _blocks.cbegin(), e = _blocks.cend(); i != e; ++i) {
|
||||
int32 rowSize = i->size(), left = (width() - rowSize * st::emojiReplaceWidth) / 2;
|
||||
for (BlockRow::const_iterator j = i->cbegin(), en = i->cend(); j != en; ++j) {
|
||||
if (j->emoji) {
|
||||
p.drawPixmap(QPoint(left + (st::emojiReplaceWidth - _esize) / 2, top + (st::emojiReplaceHeight - _blockHeight) / 2), App::emojisLarge(), QRect(j->emoji->x * _esize, j->emoji->y * _esize, _esize, _esize));
|
||||
p.drawPixmap(QPoint(left + (st::emojiReplaceWidth - _esize) / 2, top + (st::emojiReplaceHeight - _blockHeight) / 2), App::emojiLarge(), QRect(j->emoji->x * _esize, j->emoji->y * _esize, _esize, _esize));
|
||||
}
|
||||
QRect trect(left, top + (st::emojiReplaceHeight + _blockHeight) / 2 - st::emojiTextFont->height, st::emojiReplaceWidth, st::emojiTextFont->height);
|
||||
p.drawText(trect, j->text, QTextOption(Qt::AlignHCenter | Qt::AlignTop));
|
||||
@@ -148,7 +143,3 @@ void EmojiBox::paintEvent(QPaintEvent *e) {
|
||||
top += st::emojiReplaceHeight;
|
||||
}
|
||||
}
|
||||
|
||||
void EmojiBox::resizeEvent(QResizeEvent *e) {
|
||||
_done.setGeometry(0, height() - _done.height(), width(), _done.height());
|
||||
}
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
@@ -27,19 +30,12 @@ public:
|
||||
EmojiBox();
|
||||
void keyPressEvent(QKeyEvent *e);
|
||||
void paintEvent(QPaintEvent *e);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
|
||||
protected:
|
||||
|
||||
void hideAll();
|
||||
void showAll();
|
||||
|
||||
private:
|
||||
|
||||
void fillBlocks();
|
||||
|
||||
int32 _esize;
|
||||
BottomButton _done;
|
||||
|
||||
int32 _blockHeight;
|
||||
struct Block {
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "lang.h"
|
||||
@@ -28,16 +31,16 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
#include "langloaderplain.h"
|
||||
|
||||
LanguageBox::LanguageBox() :
|
||||
_done(this, lang(lng_about_done), st::langsCloseButton) {
|
||||
_close(this, lang(lng_box_ok), st::defaultBoxButton) {
|
||||
|
||||
bool haveTestLang = (cLang() == languageTest);
|
||||
|
||||
int32 y = st::boxTitleHeight + st::langsPadding.top();
|
||||
int32 y = st::boxTitleHeight + st::boxOptionListPadding.top();
|
||||
_langs.reserve(languageCount + (haveTestLang ? 1 : 0));
|
||||
if (haveTestLang) {
|
||||
_langs.push_back(new FlatRadiobutton(this, qsl("lang"), languageTest, qsl("Custom Lang"), (cLang() == languageTest), st::langButton));
|
||||
_langs.back()->move(st::langsPadding.left() + st::langPadding.left(), y + st::langPadding.top());
|
||||
y += st::langPadding.top() + _langs.back()->height() + st::langPadding.bottom();
|
||||
_langs.push_back(new Radiobutton(this, qsl("lang"), languageTest, qsl("Custom Lang"), (cLang() == languageTest), st::langsButton));
|
||||
_langs.back()->move(st::boxPadding.left() + st::boxOptionListPadding.left(), y);
|
||||
y += _langs.back()->height() + st::boxOptionListPadding.top();
|
||||
connect(_langs.back(), SIGNAL(changed()), this, SLOT(onChange()));
|
||||
}
|
||||
for (int32 i = 0; i < languageCount; ++i) {
|
||||
@@ -48,28 +51,29 @@ _done(this, lang(lng_about_done), st::langsCloseButton) {
|
||||
} else {
|
||||
result.insert(lng_language_name, langOriginal(lng_language_name));
|
||||
}
|
||||
_langs.push_back(new FlatRadiobutton(this, qsl("lang"), i, result.value(lng_language_name, LanguageCodes[i] + qsl(" language")), (cLang() == i), st::langButton));
|
||||
_langs.back()->move(st::langsPadding.left() + st::langPadding.left(), y + st::langPadding.top());
|
||||
y += st::langPadding.top() + _langs.back()->height() + st::langPadding.bottom();
|
||||
_langs.push_back(new Radiobutton(this, qsl("lang"), i, result.value(lng_language_name, LanguageCodes[i] + qsl(" language")), (cLang() == i), st::langsButton));
|
||||
_langs.back()->move(st::boxPadding.left() + st::boxOptionListPadding.left(), y);
|
||||
y += _langs.back()->height() + st::boxOptionListPadding.top();
|
||||
connect(_langs.back(), SIGNAL(changed()), this, SLOT(onChange()));
|
||||
}
|
||||
|
||||
resizeMaxHeight(st::langsWidth, st::boxTitleHeight + st::langsPadding.top() + st::langsPadding.bottom() + (languageCount + (haveTestLang ? 1 : 0)) * (st::langPadding.top() + st::rbDefFlat.height + st::langPadding.bottom()) + _done.height());
|
||||
resizeMaxHeight(st::langsWidth, st::boxTitleHeight + (languageCount + (haveTestLang ? 1 : 0)) * (st::boxOptionListPadding.top() + st::langsButton.height) + st::boxOptionListPadding.bottom() + st::boxPadding.bottom() + st::boxButtonPadding.top() + _close.height() + st::boxButtonPadding.bottom());
|
||||
|
||||
connect(&_done, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
connect(&_close, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
|
||||
_close.moveToRight(st::boxButtonPadding.right(), height() - st::boxButtonPadding.bottom() - _close.height());
|
||||
prepare();
|
||||
}
|
||||
|
||||
void LanguageBox::hideAll() {
|
||||
_done.hide();
|
||||
_close.hide();
|
||||
for (int32 i = 0, l = _langs.size(); i < l; ++i) {
|
||||
_langs[i]->hide();
|
||||
}
|
||||
}
|
||||
|
||||
void LanguageBox::showAll() {
|
||||
_done.show();
|
||||
_close.show();
|
||||
for (int32 i = 0, l = _langs.size(); i < l; ++i) {
|
||||
_langs[i]->show();
|
||||
}
|
||||
@@ -80,16 +84,16 @@ void LanguageBox::mousePressEvent(QMouseEvent *e) {
|
||||
for (int32 i = 1; i < languageCount; ++i) {
|
||||
LangLoaderPlain loader(qsl(":/langs/lang_") + LanguageCodes[i] + qsl(".strings"), LangLoaderRequest(lngkeys_cnt));
|
||||
if (!loader.errors().isEmpty()) {
|
||||
App::wnd()->showLayer(new ConfirmBox(qsl("Lang \"") + LanguageCodes[i] + qsl("\" error :(\n\nError: ") + loader.errors(), true, lang(lng_close)));
|
||||
Ui::showLayer(new InformBox(qsl("Lang \"") + LanguageCodes[i] + qsl("\" error :(\n\nError: ") + loader.errors()));
|
||||
return;
|
||||
} else if (!loader.warnings().isEmpty()) {
|
||||
QString warn = loader.warnings();
|
||||
if (warn.size() > 256) warn = warn.mid(0, 254) + qsl("..");
|
||||
App::wnd()->showLayer(new ConfirmBox(qsl("Lang \"") + LanguageCodes[i] + qsl("\" warnings :(\n\nWarnings: ") + warn, true, lang(lng_close)));
|
||||
if (warn.size() > 256) warn = warn.mid(0, 253) + qsl("...");
|
||||
Ui::showLayer(new InformBox(qsl("Lang \"") + LanguageCodes[i] + qsl("\" warnings :(\n\nWarnings: ") + warn));
|
||||
return;
|
||||
}
|
||||
}
|
||||
App::wnd()->showLayer(new ConfirmBox(qsl("Everything seems great in all %1 languages!").arg(languageCount - 1), true, lang(lng_close)));
|
||||
Ui::showLayer(new InformBox(qsl("Everything seems great in all %1 languages!").arg(languageCount - 1)));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -97,11 +101,7 @@ void LanguageBox::paintEvent(QPaintEvent *e) {
|
||||
Painter p(this);
|
||||
if (paint(p)) return;
|
||||
|
||||
paintTitle(p, lang(lng_languages), true);
|
||||
}
|
||||
|
||||
void LanguageBox::resizeEvent(QResizeEvent *e) {
|
||||
_done.move(0, height() - _done.height());
|
||||
paintTitle(p, lang(lng_languages));
|
||||
}
|
||||
|
||||
void LanguageBox::onChange() {
|
||||
@@ -112,19 +112,19 @@ void LanguageBox::onChange() {
|
||||
if (_langs[i]->checked() && langId != cLang()) {
|
||||
LangLoaderResult result;
|
||||
if (langId > 0) {
|
||||
LangLoaderPlain loader(qsl(":/langs/lang_") + LanguageCodes[langId] + qsl(".strings"), LangLoaderRequest(lng_sure_save_language, lng_cancel, lng_continue));
|
||||
LangLoaderPlain loader(qsl(":/langs/lang_") + LanguageCodes[langId] + qsl(".strings"), LangLoaderRequest(lng_sure_save_language, lng_cancel, lng_box_ok));
|
||||
result = loader.found();
|
||||
} else if (langId == languageTest) {
|
||||
LangLoaderPlain loader(cLangFile(), LangLoaderRequest(lng_sure_save_language, lng_cancel, lng_continue));
|
||||
LangLoaderPlain loader(cLangFile(), LangLoaderRequest(lng_sure_save_language, lng_cancel, lng_box_ok));
|
||||
result = loader.found();
|
||||
}
|
||||
QString text = result.value(lng_sure_save_language, langOriginal(lng_sure_save_language)),
|
||||
save = result.value(lng_continue, langOriginal(lng_continue)),
|
||||
save = result.value(lng_box_ok, langOriginal(lng_box_ok)),
|
||||
cancel = result.value(lng_cancel, langOriginal(lng_cancel));
|
||||
ConfirmBox *box = new ConfirmBox(text, save, cancel);
|
||||
ConfirmBox *box = new ConfirmBox(text, save, st::defaultBoxButton, cancel);
|
||||
connect(box, SIGNAL(confirmed()), this, SLOT(onSave()));
|
||||
connect(box, SIGNAL(closed()), this, SLOT(onRestore()));
|
||||
App::wnd()->replaceLayer(box);
|
||||
Ui::showLayer(box, KeepOtherLayers);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
@@ -27,7 +30,6 @@ public:
|
||||
LanguageBox();
|
||||
void mousePressEvent(QMouseEvent *e);
|
||||
void paintEvent(QPaintEvent *e);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
~LanguageBox();
|
||||
|
||||
public slots:
|
||||
@@ -43,6 +45,6 @@ protected:
|
||||
|
||||
private:
|
||||
|
||||
QVector<FlatRadiobutton*> _langs;
|
||||
BottomButton _done;
|
||||
QVector<Radiobutton*> _langs;
|
||||
BoxButton _close;
|
||||
};
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "lang.h"
|
||||
@@ -24,57 +27,74 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
|
||||
#include "localstorage.h"
|
||||
|
||||
PasscodeBox::PasscodeBox(bool turningOff) : _replacedBy(0), _turningOff(turningOff), _cloudPwd(false),
|
||||
_setRequest(0), _hasRecovery(false), _aboutHeight(0),
|
||||
_about(st::boxWidth - st::addContactPadding.left() - st::addContactPadding.right()),
|
||||
_saveButton(this, lang(_turningOff ? lng_passcode_remove_button : lng_settings_save), st::btnSelectDone),
|
||||
_cancelButton(this, lang(lng_cancel), st::btnSelectCancel),
|
||||
_oldPasscode(this, st::inpAddContact, lang(lng_passcode_enter_old)),
|
||||
_newPasscode(this, st::inpAddContact, lang(cHasPasscode() ? lng_passcode_enter_new : lng_passcode_enter_first)),
|
||||
_reenterPasscode(this, st::inpAddContact, lang(lng_passcode_confirm_new)),
|
||||
_passwordHint(this, st::inpAddContact, lang(lng_cloud_password_hint)),
|
||||
_recoverEmail(this, st::inpAddContact, lang(lng_cloud_password_email)),
|
||||
_recover(this, lang(lng_signin_recover)) {
|
||||
PasscodeBox::PasscodeBox(bool turningOff) : AbstractBox(st::boxWidth)
|
||||
, _replacedBy(0)
|
||||
, _turningOff(turningOff)
|
||||
, _cloudPwd(false)
|
||||
, _setRequest(0)
|
||||
, _hasRecovery(false)
|
||||
, _skipEmailWarning(false)
|
||||
, _aboutHeight(0)
|
||||
, _about(st::boxWidth - st::boxPadding.left() * 1.5)
|
||||
, _saveButton(this, lang(_turningOff ? lng_passcode_remove_button : lng_settings_save), st::defaultBoxButton)
|
||||
, _cancelButton(this, lang(lng_cancel), st::cancelBoxButton)
|
||||
, _oldPasscode(this, st::defaultInputField, lang(lng_passcode_enter_old))
|
||||
, _newPasscode(this, st::defaultInputField, lang(cHasPasscode() ? lng_passcode_enter_new : lng_passcode_enter_first))
|
||||
, _reenterPasscode(this, st::defaultInputField, lang(lng_passcode_confirm_new))
|
||||
, _passwordHint(this, st::defaultInputField, lang(lng_cloud_password_hint))
|
||||
, _recoverEmail(this, st::defaultInputField, lang(lng_cloud_password_email))
|
||||
, _recover(this, lang(lng_signin_recover)) {
|
||||
init();
|
||||
prepare();
|
||||
}
|
||||
|
||||
PasscodeBox::PasscodeBox(const QByteArray &newSalt, const QByteArray &curSalt, bool hasRecovery, const QString &hint, bool turningOff) : _replacedBy(0), _turningOff(turningOff), _cloudPwd(true),
|
||||
_setRequest(0), _newSalt(newSalt), _curSalt(curSalt), _hasRecovery(hasRecovery), _hint(hint), _aboutHeight(0),
|
||||
_about(st::boxWidth - st::addContactPadding.left() - st::addContactPadding.right()),
|
||||
_saveButton(this, lang(_turningOff ? lng_passcode_remove_button : lng_settings_save), st::btnSelectDone),
|
||||
_cancelButton(this, lang(lng_cancel), st::btnSelectCancel),
|
||||
_oldPasscode(this, st::inpAddContact, lang(lng_cloud_password_enter_old)),
|
||||
_newPasscode(this, st::inpAddContact, lang(curSalt.isEmpty() ? lng_cloud_password_enter_first : lng_cloud_password_enter_new)),
|
||||
_reenterPasscode(this, st::inpAddContact, lang(lng_cloud_password_confirm_new)),
|
||||
_passwordHint(this, st::inpAddContact, lang(lng_cloud_password_hint)),
|
||||
_recoverEmail(this, st::inpAddContact, lang(lng_cloud_password_email)),
|
||||
_recover(this, lang(lng_signin_recover)) {
|
||||
PasscodeBox::PasscodeBox(const QByteArray &newSalt, const QByteArray &curSalt, bool hasRecovery, const QString &hint, bool turningOff) : AbstractBox(st::boxWidth)
|
||||
, _replacedBy(0)
|
||||
, _turningOff(turningOff)
|
||||
, _cloudPwd(true)
|
||||
, _setRequest(0)
|
||||
, _newSalt(newSalt)
|
||||
, _curSalt(curSalt)
|
||||
, _hasRecovery(hasRecovery)
|
||||
, _skipEmailWarning(false)
|
||||
, _aboutHeight(0)
|
||||
, _about(st::boxWidth - st::boxPadding.left() * 1.5)
|
||||
, _saveButton(this, lang(_turningOff ? lng_passcode_remove_button : lng_settings_save), st::defaultBoxButton)
|
||||
, _cancelButton(this, lang(lng_cancel), st::cancelBoxButton)
|
||||
, _oldPasscode(this, st::defaultInputField, lang(lng_cloud_password_enter_old))
|
||||
, _newPasscode(this, st::defaultInputField, lang(curSalt.isEmpty() ? lng_cloud_password_enter_first : lng_cloud_password_enter_new))
|
||||
, _reenterPasscode(this, st::defaultInputField, lang(lng_cloud_password_confirm_new))
|
||||
, _passwordHint(this, st::defaultInputField, lang(curSalt.isEmpty() ? lng_cloud_password_hint : lng_cloud_password_change_hint))
|
||||
, _recoverEmail(this, st::defaultInputField, lang(lng_cloud_password_email))
|
||||
, _recover(this, lang(lng_signin_recover)) {
|
||||
textstyleSet(&st::usernameTextStyle);
|
||||
if (!hint.isEmpty()) _hintText.setText(st::normalFont, lng_signin_hint(lt_password_hint, hint));
|
||||
textstyleRestore();
|
||||
init();
|
||||
prepare();
|
||||
}
|
||||
|
||||
void PasscodeBox::init() {
|
||||
_about.setRichText(st::usernameFont, lang(_cloudPwd ? lng_cloud_password_about : lng_passcode_about));
|
||||
if (!_hint.isEmpty()) _hintText.setText(st::usernameFont, lng_signin_hint(lt_password_hint, _hint));
|
||||
_aboutHeight = _about.countHeight(st::boxWidth - st::addContactPadding.left() - st::addContactPadding.right());
|
||||
_oldPasscode.setEchoMode(QLineEdit::Password);
|
||||
_newPasscode.setEchoMode(QLineEdit::Password);
|
||||
_reenterPasscode.setEchoMode(QLineEdit::Password);
|
||||
setBlueTitle(true);
|
||||
|
||||
textstyleSet(&st::usernameTextStyle);
|
||||
_about.setRichText(st::normalFont, lang(_cloudPwd ? lng_cloud_password_about : lng_passcode_about));
|
||||
_aboutHeight = _about.countHeight(st::boxWidth - st::boxPadding.left() * 1.5);
|
||||
textstyleRestore();
|
||||
if (_turningOff) {
|
||||
_oldPasscode.show();
|
||||
_boxTitle = lang(_cloudPwd ? lng_cloud_password_remove : lng_passcode_remove);
|
||||
setMaxHeight(st::boxTitleHeight + st::addContactPadding.top() + 1 * _oldPasscode.height() + st::usernameSkip + _aboutHeight + (_hasRecovery ? ((st::usernameSkip + _recover.height()) / 2) : 0) + st::addContactPadding.bottom() + _saveButton.height());
|
||||
setMaxHeight(st::boxTitleHeight + st::passcodePadding.top() + _oldPasscode.height() + st::passcodeSkip + ((_hasRecovery && !_hintText.isEmpty()) ? st::passcodeSkip : 0) + _aboutHeight + st::passcodePadding.bottom() + st::boxButtonPadding.top() + _saveButton.height() + st::boxButtonPadding.bottom());
|
||||
} else {
|
||||
bool has = _cloudPwd ? (!_curSalt.isEmpty()) : cHasPasscode();
|
||||
if (has) {
|
||||
_oldPasscode.show();
|
||||
_boxTitle = lang(_cloudPwd ? lng_cloud_password_change : lng_passcode_change);
|
||||
setMaxHeight(st::boxTitleHeight + st::addContactPadding.top() + 3 * _oldPasscode.height() + st::usernameSkip * 2 + 1 * st::addContactDelta + (_cloudPwd ? _passwordHint.height() + st::addContactDelta : 0) + _aboutHeight + (_hasRecovery ? ((st::usernameSkip + _recover.height()) / 2) : 0) + st::addContactPadding.bottom() + _saveButton.height());
|
||||
setMaxHeight(st::boxTitleHeight + st::passcodePadding.top() + _oldPasscode.height() + st::passcodeSkip + ((_hasRecovery && !_hintText.isEmpty()) ? st::passcodeSkip : 0) + _newPasscode.height() + st::contactSkip + _reenterPasscode.height() + st::passcodeSkip + (_cloudPwd ? _passwordHint.height() + st::contactSkip : 0) + _aboutHeight + st::passcodePadding.bottom() + st::boxButtonPadding.top() + _saveButton.height() + st::boxButtonPadding.bottom());
|
||||
} else {
|
||||
_oldPasscode.hide();
|
||||
_boxTitle = lang(_cloudPwd ? lng_cloud_password_create : lng_passcode_create);
|
||||
setMaxHeight(st::boxTitleHeight + st::addContactPadding.top() + 2 * _oldPasscode.height() + st::usernameSkip + 1 * st::addContactDelta + (_cloudPwd ? _passwordHint.height() + st::addContactDelta : 0) + _aboutHeight + (_cloudPwd ? st::addContactDelta + _recoverEmail.height() + st::usernameSkip : st::addContactPadding.bottom()) + _saveButton.height());
|
||||
setMaxHeight(st::boxTitleHeight + st::passcodePadding.top() + _newPasscode.height() + st::contactSkip + _reenterPasscode.height() + st::passcodeSkip + (_cloudPwd ? _passwordHint.height() + st::contactSkip : 0) + _aboutHeight + (_cloudPwd ? st::contactSkip + _recoverEmail.height() + st::passcodeSkip : st::passcodePadding.bottom()) + st::boxButtonPadding.top() + _saveButton.height() + st::boxButtonPadding.bottom());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -84,8 +104,15 @@ void PasscodeBox::init() {
|
||||
connect(&_oldPasscode, SIGNAL(changed()), this, SLOT(onOldChanged()));
|
||||
connect(&_newPasscode, SIGNAL(changed()), this, SLOT(onNewChanged()));
|
||||
connect(&_reenterPasscode, SIGNAL(changed()), this, SLOT(onNewChanged()));
|
||||
connect(&_passwordHint, SIGNAL(changed()), this, SLOT(onNewChanged()));
|
||||
connect(&_recoverEmail, SIGNAL(changed()), this, SLOT(onEmailChanged()));
|
||||
|
||||
connect(&_oldPasscode, SIGNAL(submitted(bool)), this, SLOT(onSubmit()));
|
||||
connect(&_newPasscode, SIGNAL(submitted(bool)), this, SLOT(onSubmit()));
|
||||
connect(&_reenterPasscode, SIGNAL(submitted(bool)), this, SLOT(onSubmit()));
|
||||
connect(&_passwordHint, SIGNAL(submitted(bool)), this, SLOT(onSubmit()));
|
||||
connect(&_recoverEmail, SIGNAL(submitted(bool)), this, SLOT(onSubmit()));
|
||||
|
||||
connect(&_recover, SIGNAL(clicked()), this, SLOT(onRecoverByEmail()));
|
||||
}
|
||||
|
||||
@@ -98,6 +125,7 @@ void PasscodeBox::hideAll() {
|
||||
_recover.hide();
|
||||
_saveButton.hide();
|
||||
_cancelButton.hide();
|
||||
AbstractBox::hideAll();
|
||||
}
|
||||
|
||||
void PasscodeBox::showAll() {
|
||||
@@ -139,44 +167,41 @@ void PasscodeBox::showAll() {
|
||||
}
|
||||
_saveButton.show();
|
||||
_cancelButton.show();
|
||||
AbstractBox::showAll();
|
||||
}
|
||||
|
||||
void PasscodeBox::keyPressEvent(QKeyEvent *e) {
|
||||
void PasscodeBox::onSubmit() {
|
||||
bool has = _cloudPwd ? (!_curSalt.isEmpty()) : cHasPasscode();
|
||||
if (e->key() == Qt::Key_Enter || e->key() == Qt::Key_Return) {
|
||||
if (_oldPasscode.hasFocus()) {
|
||||
if (_turningOff) {
|
||||
onSave();
|
||||
} else {
|
||||
_newPasscode.setFocus();
|
||||
}
|
||||
} else if (_newPasscode.hasFocus()) {
|
||||
_reenterPasscode.setFocus();
|
||||
} else if (_reenterPasscode.hasFocus()) {
|
||||
if (has && _oldPasscode.text().isEmpty()) {
|
||||
_oldPasscode.setFocus();
|
||||
_oldPasscode.notaBene();
|
||||
} else if (_newPasscode.text().isEmpty()) {
|
||||
_newPasscode.setFocus();
|
||||
_newPasscode.notaBene();
|
||||
} else if (_reenterPasscode.text().isEmpty()) {
|
||||
_reenterPasscode.notaBene();
|
||||
} else if (!_passwordHint.isHidden()) {
|
||||
_passwordHint.setFocus();
|
||||
} else {
|
||||
onSave();
|
||||
}
|
||||
} else if (_passwordHint.hasFocus()) {
|
||||
if (_recoverEmail.isHidden()) {
|
||||
onSave();
|
||||
} else {
|
||||
_recoverEmail.setFocus();
|
||||
}
|
||||
} else if (_recoverEmail.hasFocus()) {
|
||||
if (_oldPasscode.hasFocus()) {
|
||||
if (_turningOff) {
|
||||
onSave();
|
||||
} else {
|
||||
_newPasscode.setFocus();
|
||||
}
|
||||
} else if (_newPasscode.hasFocus()) {
|
||||
_reenterPasscode.setFocus();
|
||||
} else if (_reenterPasscode.hasFocus()) {
|
||||
if (has && _oldPasscode.text().isEmpty()) {
|
||||
_oldPasscode.setFocus();
|
||||
_oldPasscode.showError();
|
||||
} else if (_newPasscode.text().isEmpty()) {
|
||||
_newPasscode.setFocus();
|
||||
_newPasscode.showError();
|
||||
} else if (_reenterPasscode.text().isEmpty()) {
|
||||
_reenterPasscode.showError();
|
||||
} else if (!_passwordHint.isHidden()) {
|
||||
_passwordHint.setFocus();
|
||||
} else {
|
||||
onSave();
|
||||
}
|
||||
} else {
|
||||
AbstractBox::keyPressEvent(e);
|
||||
} else if (_passwordHint.hasFocus()) {
|
||||
if (_recoverEmail.isHidden()) {
|
||||
onSave();
|
||||
} else {
|
||||
_recoverEmail.setFocus();
|
||||
}
|
||||
} else if (_recoverEmail.hasFocus()) {
|
||||
onSave();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -184,75 +209,78 @@ void PasscodeBox::paintEvent(QPaintEvent *e) {
|
||||
Painter p(this);
|
||||
if (paint(p)) return;
|
||||
|
||||
paintTitle(p, _boxTitle, true);
|
||||
paintTitle(p, _boxTitle);
|
||||
|
||||
// paint shadow
|
||||
p.fillRect(0, height() - st::btnSelectCancel.height - st::scrollDef.bottomsh, width(), st::scrollDef.bottomsh, st::scrollDef.shColor->b);
|
||||
textstyleSet(&st::usernameTextStyle);
|
||||
|
||||
int32 w = width() - st::addContactPadding.left() - st::addContactPadding.right();
|
||||
int32 abouty = (_passwordHint.isHidden() ? (_reenterPasscode.isHidden() ? _oldPasscode : _reenterPasscode).y() + st::usernameSkip : _passwordHint.y() + st::addContactDelta) + _oldPasscode.height();
|
||||
p.setPen(st::usernameColor->p);
|
||||
_about.draw(p, st::addContactPadding.left(), abouty, w);
|
||||
int32 w = st::boxWidth - st::boxPadding.left() * 1.5;
|
||||
int32 abouty = (_passwordHint.isHidden() ? (_reenterPasscode.isHidden() ? (_oldPasscode.y() + (_hasRecovery && !_hintText.isEmpty() ? st::passcodeSkip : 0)) : _reenterPasscode.y()) + st::passcodeSkip : _passwordHint.y() + st::contactSkip) + _oldPasscode.height();
|
||||
p.setPen(st::black);
|
||||
_about.drawLeft(p, st::boxPadding.left(), abouty, w, width());
|
||||
|
||||
if (!_hint.isEmpty() && _oldError.isEmpty()) {
|
||||
if (!_hintText.isEmpty() && _oldError.isEmpty()) {
|
||||
p.setPen(st::black->p);
|
||||
_hintText.drawElided(p, st::addContactPadding.left(), _oldPasscode.y() + _oldPasscode.height() + ((st::usernameSkip - st::usernameFont->height) / 2), w, 1, style::al_top);
|
||||
_hintText.drawLeftElided(p, st::boxPadding.left(), _oldPasscode.y() + _oldPasscode.height() + ((st::passcodeSkip - st::normalFont->height) / 2), w, width(), 1, style::al_topleft);
|
||||
}
|
||||
|
||||
if (!_oldError.isEmpty()) {
|
||||
p.setPen(st::setErrColor->p);
|
||||
p.drawText(QRect(0, _oldPasscode.y() + _oldPasscode.height(), width(), st::usernameSkip), _oldError, style::al_center);
|
||||
p.drawText(QRect(st::boxPadding.left(), _oldPasscode.y() + _oldPasscode.height(), w, st::passcodeSkip), _oldError, style::al_left);
|
||||
}
|
||||
|
||||
if (!_newError.isEmpty()) {
|
||||
p.setPen(st::setErrColor->p);
|
||||
p.drawText(QRect(0, _reenterPasscode.y() + _reenterPasscode.height(), width(), st::usernameSkip), _newError, style::al_center);
|
||||
p.drawText(QRect(st::boxPadding.left(), _reenterPasscode.y() + _reenterPasscode.height(), w, st::passcodeSkip), _newError, style::al_left);
|
||||
}
|
||||
|
||||
if (!_emailError.isEmpty()) {
|
||||
p.setPen(st::setErrColor->p);
|
||||
p.drawText(QRect(0, _recoverEmail.y() + _recoverEmail.height(), width(), st::usernameSkip), _emailError, style::al_center);
|
||||
p.drawText(QRect(st::boxPadding.left(), _recoverEmail.y() + _recoverEmail.height(), w, st::passcodeSkip), _emailError, style::al_left);
|
||||
}
|
||||
|
||||
// paint button sep
|
||||
p.fillRect(st::btnSelectCancel.width, size().height() - st::btnSelectCancel.height, st::lineWidth, st::btnSelectCancel.height, st::btnSelectSep->b);
|
||||
textstyleRestore();
|
||||
}
|
||||
|
||||
void PasscodeBox::resizeEvent(QResizeEvent *e) {
|
||||
bool has = _cloudPwd ? (!_curSalt.isEmpty()) : cHasPasscode();
|
||||
_oldPasscode.setGeometry(st::addContactPadding.left(), st::boxTitleHeight + st::addContactPadding.top(), width() - st::addContactPadding.left() - st::addContactPadding.right(), _oldPasscode.height());
|
||||
_newPasscode.setGeometry(st::addContactPadding.left(), _oldPasscode.y() + ((_turningOff || has) ? (_oldPasscode.height() + st::usernameSkip) : 0), _oldPasscode.width(), _oldPasscode.height());
|
||||
_reenterPasscode.setGeometry(st::addContactPadding.left(), _newPasscode.y() + _newPasscode.height() + st::addContactDelta, _newPasscode.width(), _newPasscode.height());
|
||||
_passwordHint.setGeometry(st::addContactPadding.left(), _reenterPasscode.y() + _reenterPasscode.height() + st::usernameSkip, _reenterPasscode.width(), _reenterPasscode.height());
|
||||
|
||||
_recoverEmail.setGeometry(st::addContactPadding.left(), _passwordHint.y() + _passwordHint.height() + st::addContactDelta + _aboutHeight + st::addContactDelta, _passwordHint.width(), _passwordHint.height());
|
||||
int32 w = st::boxWidth - st::boxPadding.left() - st::boxPadding.right();
|
||||
_oldPasscode.resize(w, _oldPasscode.height());
|
||||
_oldPasscode.moveToLeft(st::boxPadding.left(), st::boxTitleHeight + st::passcodePadding.top());
|
||||
_newPasscode.resize(w, _newPasscode.height());
|
||||
_newPasscode.moveToLeft(st::boxPadding.left(), _oldPasscode.y() + ((_turningOff || has) ? (_oldPasscode.height() + st::passcodeSkip + ((_hasRecovery && !_hintText.isEmpty()) ? st::passcodeSkip : 0)) : 0));
|
||||
_reenterPasscode.resize(w, _reenterPasscode.height());
|
||||
_reenterPasscode.moveToLeft(st::boxPadding.left(), _newPasscode.y() + _newPasscode.height() + st::contactSkip);
|
||||
_passwordHint.resize(w, _passwordHint.height());
|
||||
_passwordHint.moveToLeft(st::boxPadding.left(), _reenterPasscode.y() + _reenterPasscode.height() + st::passcodeSkip);
|
||||
_recoverEmail.resize(w, _passwordHint.height());
|
||||
_recoverEmail.moveToLeft(st::boxPadding.left(), _passwordHint.y() + _passwordHint.height() + st::contactSkip + _aboutHeight + st::contactSkip);
|
||||
|
||||
if (!_recover.isHidden()) {
|
||||
if (_turningOff) {
|
||||
_recover.move((width() - _recover.width()) / 2, _oldPasscode.y() + _oldPasscode.height() + st::usernameSkip + _aboutHeight + ((st::usernameSkip - _recover.height()) / 2));
|
||||
} else {
|
||||
_recover.move((width() - _recover.width()) / 2, _passwordHint.y() + _passwordHint.height() + st::addContactDelta + _aboutHeight + ((st::usernameSkip - _recover.height()) / 2));
|
||||
}
|
||||
_recover.moveToLeft(st::boxPadding.left(), _oldPasscode.y() + _oldPasscode.height() + (_hintText.isEmpty() ? ((st::passcodeSkip - _recover.height()) / 2) : st::passcodeSkip));
|
||||
}
|
||||
|
||||
int32 buttonTop = height() - _cancelButton.height();
|
||||
_cancelButton.move(0, buttonTop);
|
||||
_saveButton.move(width() - _saveButton.width(), buttonTop);
|
||||
_saveButton.moveToRight(st::boxButtonPadding.right(), height() - st::boxButtonPadding.bottom() - _saveButton.height());
|
||||
_cancelButton.moveToRight(st::boxButtonPadding.right() + _saveButton.width() + st::boxButtonPadding.left(), _saveButton.y());
|
||||
|
||||
AbstractBox::resizeEvent(e);
|
||||
}
|
||||
|
||||
void PasscodeBox::showDone() {
|
||||
if (_oldPasscode.isHidden()) {
|
||||
if (_skipEmailWarning && !_recoverEmail.isHidden()) {
|
||||
_recoverEmail.setFocus();
|
||||
} else if (_oldPasscode.isHidden()) {
|
||||
_newPasscode.setFocus();
|
||||
} else {
|
||||
_oldPasscode.setFocus();
|
||||
}
|
||||
_skipEmailWarning = false;
|
||||
}
|
||||
|
||||
void PasscodeBox::setPasswordDone(const MTPBool &result) {
|
||||
_setRequest = 0;
|
||||
emit reloadPassword();
|
||||
ConfirmBox *box = new ConfirmBox(lang(_reenterPasscode.isHidden() ? lng_cloud_password_removed : (_oldPasscode.isHidden() ? lng_cloud_password_was_set : lng_cloud_password_updated)), true, lang(lng_about_done));
|
||||
App::wnd()->showLayer(box, true);
|
||||
ConfirmBox *box = new InformBox(lang(_reenterPasscode.isHidden() ? lng_cloud_password_removed : (_oldPasscode.isHidden() ? lng_cloud_password_was_set : lng_cloud_password_updated)));
|
||||
Ui::showLayer(box);
|
||||
}
|
||||
|
||||
bool PasscodeBox::setPasswordFail(const RPCError &error) {
|
||||
@@ -268,7 +296,7 @@ bool PasscodeBox::setPasswordFail(const RPCError &error) {
|
||||
}
|
||||
} else if (err == "NEW_PASSWORD_BAD") {
|
||||
_newPasscode.setFocus();
|
||||
_newPasscode.notaBene();
|
||||
_newPasscode.showError();
|
||||
_newError = lang(lng_cloud_password_bad);
|
||||
update();
|
||||
} else if (err == "NEW_SALT_INVALID") {
|
||||
@@ -277,19 +305,22 @@ bool PasscodeBox::setPasswordFail(const RPCError &error) {
|
||||
} else if (err == "EMAIL_INVALID") {
|
||||
_emailError = lang(lng_cloud_password_bad_email);
|
||||
_recoverEmail.setFocus();
|
||||
_recoverEmail.notaBene();
|
||||
_recoverEmail.showError();
|
||||
update();
|
||||
} else if (err == "EMAIL_UNCONFIRMED") {
|
||||
ConfirmBox *box = new ConfirmBox(lang(lng_cloud_password_almost), true, lang(lng_about_done));
|
||||
App::wnd()->showLayer(box, true);
|
||||
Ui::showLayer(new InformBox(lang(lng_cloud_password_almost)));
|
||||
emit reloadPassword();
|
||||
} else if (error.type().startsWith(qsl("FLOOD_WAIT_"))) {
|
||||
} else if (mtpIsFlood(error)) {
|
||||
if (_oldPasscode.isHidden()) return false;
|
||||
|
||||
_oldPasscode.selectAll();
|
||||
_oldPasscode.setFocus();
|
||||
_oldPasscode.notaBene();
|
||||
_oldPasscode.showError();
|
||||
_oldError = lang(lng_flood_error);
|
||||
if (_hasRecovery && _hintText.isEmpty()) {
|
||||
_recover.hide();
|
||||
}
|
||||
update();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
@@ -303,7 +334,7 @@ void PasscodeBox::onSave(bool force) {
|
||||
if (!passcodeCanTry()) {
|
||||
_oldError = lang(lng_flood_error);
|
||||
_oldPasscode.setFocus();
|
||||
_oldPasscode.notaBene();
|
||||
_oldPasscode.showError();
|
||||
update();
|
||||
return;
|
||||
}
|
||||
@@ -320,13 +351,14 @@ void PasscodeBox::onSave(bool force) {
|
||||
}
|
||||
if (!_turningOff && pwd.isEmpty()) {
|
||||
_newPasscode.setFocus();
|
||||
_newPasscode.notaBene();
|
||||
_newPasscode.showError();
|
||||
if (isHidden() && _replacedBy && !_replacedBy->isHidden()) _replacedBy->onClose();
|
||||
return;
|
||||
}
|
||||
if (pwd != conf) {
|
||||
_reenterPasscode.selectAll();
|
||||
_reenterPasscode.setFocus();
|
||||
_reenterPasscode.notaBene();
|
||||
_reenterPasscode.showError();
|
||||
if (!conf.isEmpty()) {
|
||||
_newError = lang(_cloudPwd ? lng_cloud_password_differ : lng_passcode_differ);
|
||||
update();
|
||||
@@ -334,25 +366,26 @@ void PasscodeBox::onSave(bool force) {
|
||||
if (isHidden() && _replacedBy && !_replacedBy->isHidden()) _replacedBy->onClose();
|
||||
} else if (!_turningOff && has && old == pwd) {
|
||||
_newPasscode.setFocus();
|
||||
_newPasscode.notaBene();
|
||||
_newPasscode.showError();
|
||||
_newError = lang(_cloudPwd ? lng_cloud_password_is_same : lng_passcode_is_same);
|
||||
update();
|
||||
if (isHidden() && _replacedBy && !_replacedBy->isHidden()) _replacedBy->onClose();
|
||||
} else if (_cloudPwd) {
|
||||
QString hint = _passwordHint.text(), email = _recoverEmail.text().trimmed();
|
||||
QString hint = _passwordHint.getLastText(), email = _recoverEmail.getLastText().trimmed();
|
||||
if (_cloudPwd && pwd == hint && !_passwordHint.isHidden() && !_newPasscode.isHidden()) {
|
||||
_newPasscode.setFocus();
|
||||
_newPasscode.notaBene();
|
||||
_newPasscode.showError();
|
||||
_newError = lang(lng_cloud_password_bad);
|
||||
update();
|
||||
if (isHidden() && _replacedBy && !_replacedBy->isHidden()) _replacedBy->onClose();
|
||||
return;
|
||||
}
|
||||
if (!_recoverEmail.isHidden() && email.isEmpty() && !force) {
|
||||
_replacedBy = new ConfirmBox(lang(lng_cloud_password_about_recover));
|
||||
_skipEmailWarning = true;
|
||||
_replacedBy = new ConfirmBox(lang(lng_cloud_password_about_recover), lang(lng_cloud_password_skip_email), st::attentionBoxButton);
|
||||
connect(_replacedBy, SIGNAL(confirmed()), this, SLOT(onForceNoMail()));
|
||||
connect(_replacedBy, SIGNAL(destroyed(QObject*)), this, SLOT(onBoxDestroyed(QObject*)));
|
||||
App::wnd()->replaceLayer(_replacedBy);
|
||||
Ui::showLayer(_replacedBy, KeepOtherLayers);
|
||||
} else {
|
||||
QByteArray newPasswordData = pwd.isEmpty() ? QByteArray() : (_newSalt + pwd.toUtf8() + _newSalt);
|
||||
QByteArray newPasswordHash = pwd.isEmpty() ? QByteArray() : QByteArray(32, Qt::Uninitialized);
|
||||
@@ -367,11 +400,11 @@ void PasscodeBox::onSave(bool force) {
|
||||
if (!_oldPasscode.isHidden()) {
|
||||
hashSha256(oldPasswordData.constData(), oldPasswordData.size(), oldPasswordHash.data());
|
||||
}
|
||||
int32 flags = MTPDaccount_passwordInputSettings::flag_new_salt | MTPDaccount_passwordInputSettings::flag_new_password_hash | MTPDaccount_passwordInputSettings::flag_hint;
|
||||
MTPDaccount_passwordInputSettings::Flags flags = MTPDaccount_passwordInputSettings::Flag::f_new_salt | MTPDaccount_passwordInputSettings::Flag::f_new_password_hash | MTPDaccount_passwordInputSettings::Flag::f_hint;
|
||||
if (_oldPasscode.isHidden() || _newPasscode.isHidden()) {
|
||||
flags |= MTPDaccount_passwordInputSettings::flag_email;
|
||||
flags |= MTPDaccount_passwordInputSettings::Flag::f_email;
|
||||
}
|
||||
MTPaccount_PasswordInputSettings settings(MTP_account_passwordInputSettings(MTP_int(flags), MTP_string(_newSalt), MTP_string(newPasswordHash), MTP_string(hint), MTP_string(email)));
|
||||
MTPaccount_PasswordInputSettings settings(MTP_account_passwordInputSettings(MTP_flags(flags), MTP_string(_newSalt), MTP_string(newPasswordHash), MTP_string(hint), MTP_string(email)));
|
||||
_setRequest = MTP::send(MTPaccount_UpdatePasswordSettings(MTP_string(oldPasswordHash), settings), rpcDone(&PasscodeBox::setPasswordDone), rpcFail(&PasscodeBox::setPasswordFail));
|
||||
}
|
||||
} else {
|
||||
@@ -386,14 +419,20 @@ void PasscodeBox::onSave(bool force) {
|
||||
void PasscodeBox::onBadOldPasscode() {
|
||||
_oldPasscode.selectAll();
|
||||
_oldPasscode.setFocus();
|
||||
_oldPasscode.notaBene();
|
||||
_oldPasscode.showError();
|
||||
_oldError = lang(_cloudPwd ? lng_cloud_password_wrong : lng_passcode_wrong);
|
||||
if (_hasRecovery && _hintText.isEmpty()) {
|
||||
_recover.hide();
|
||||
}
|
||||
update();
|
||||
}
|
||||
|
||||
void PasscodeBox::onOldChanged() {
|
||||
if (!_oldError.isEmpty()) {
|
||||
_oldError = QString();
|
||||
if (_hasRecovery && _hintText.isEmpty()) {
|
||||
_recover.show();
|
||||
}
|
||||
update();
|
||||
}
|
||||
}
|
||||
@@ -442,7 +481,7 @@ void PasscodeBox::recover() {
|
||||
connect(_replacedBy, SIGNAL(reloadPassword()), this, SIGNAL(reloadPassword()));
|
||||
connect(_replacedBy, SIGNAL(recoveryExpired()), this, SLOT(onRecoverExpired()));
|
||||
connect(_replacedBy, SIGNAL(destroyed(QObject*)), this, SLOT(onBoxDestroyed(QObject*)));
|
||||
App::wnd()->replaceLayer(_replacedBy);
|
||||
Ui::showLayer(_replacedBy, KeepOtherLayers);
|
||||
}
|
||||
|
||||
void PasscodeBox::recoverStarted(const MTPauth_PasswordRecovery &result) {
|
||||
@@ -451,24 +490,28 @@ void PasscodeBox::recoverStarted(const MTPauth_PasswordRecovery &result) {
|
||||
}
|
||||
|
||||
bool PasscodeBox::recoverStartFail(const RPCError &error) {
|
||||
if (error.type().startsWith(qsl("FLOOD_WAIT_"))) return false;
|
||||
if (mtpIsFlood(error)) return false;
|
||||
|
||||
_pattern = QString();
|
||||
onClose();
|
||||
return true;
|
||||
}
|
||||
|
||||
RecoverBox::RecoverBox(const QString &pattern) :
|
||||
_submitRequest(0), _pattern(st::usernameFont->m.elidedText(lng_signin_recover_hint(lt_recover_email, pattern), Qt::ElideRight, st::boxWidth - st::addContactPadding.left() - st::addContactPadding.right())),
|
||||
_saveButton(this, lang(lng_passcode_submit), st::btnSelectDone),
|
||||
_cancelButton(this, lang(lng_cancel), st::btnSelectCancel),
|
||||
_recoverCode(this, st::inpAddContact, lang(lng_signin_code)) {
|
||||
setMaxHeight(st::boxTitleHeight + st::addContactPadding.top() + st::usernameSkip + _recoverCode.height() + st::usernameSkip + st::addContactPadding.bottom() + _saveButton.height());
|
||||
RecoverBox::RecoverBox(const QString &pattern) : AbstractBox(st::boxWidth)
|
||||
, _submitRequest(0)
|
||||
, _pattern(st::normalFont->elided(lng_signin_recover_hint(lt_recover_email, pattern), st::boxWidth - st::boxPadding.left() * 1.5))
|
||||
, _saveButton(this, lang(lng_passcode_submit), st::defaultBoxButton)
|
||||
, _cancelButton(this, lang(lng_cancel), st::cancelBoxButton)
|
||||
, _recoverCode(this, st::defaultInputField, lang(lng_signin_code)) {
|
||||
setBlueTitle(true);
|
||||
|
||||
setMaxHeight(st::boxTitleHeight + st::passcodePadding.top() + st::passcodeSkip + _recoverCode.height() + st::passcodeSkip + st::passcodePadding.bottom() + st::boxButtonPadding.top() + _saveButton.height() + st::boxButtonPadding.bottom());
|
||||
|
||||
connect(&_saveButton, SIGNAL(clicked()), this, SLOT(onSubmit()));
|
||||
connect(&_cancelButton, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
|
||||
connect(&_recoverCode, SIGNAL(changed()), this, SLOT(onCodeChanged()));
|
||||
connect(&_recoverCode, SIGNAL(submitted(bool)), this, SLOT(onSubmit()));
|
||||
|
||||
prepare();
|
||||
}
|
||||
@@ -477,55 +520,41 @@ void RecoverBox::hideAll() {
|
||||
_recoverCode.hide();
|
||||
_saveButton.hide();
|
||||
_cancelButton.hide();
|
||||
AbstractBox::hideAll();
|
||||
}
|
||||
|
||||
void RecoverBox::showAll() {
|
||||
_recoverCode.show();
|
||||
_saveButton.show();
|
||||
_cancelButton.show();
|
||||
}
|
||||
|
||||
void RecoverBox::keyPressEvent(QKeyEvent *e) {
|
||||
if (e->key() == Qt::Key_Enter || e->key() == Qt::Key_Return) {
|
||||
if (_recoverCode.text().isEmpty()) {
|
||||
_recoverCode.setFocus();
|
||||
_recoverCode.notaBene();
|
||||
} else {
|
||||
onSubmit();
|
||||
}
|
||||
} else {
|
||||
AbstractBox::keyPressEvent(e);
|
||||
}
|
||||
AbstractBox::showAll();
|
||||
}
|
||||
|
||||
void RecoverBox::paintEvent(QPaintEvent *e) {
|
||||
Painter p(this);
|
||||
if (paint(p)) return;
|
||||
|
||||
paintTitle(p, lang(lng_signin_recover), true);
|
||||
paintTitle(p, lang(lng_signin_recover_title));
|
||||
|
||||
// paint shadow
|
||||
p.fillRect(0, height() - st::btnSelectCancel.height - st::scrollDef.bottomsh, width(), st::scrollDef.bottomsh, st::scrollDef.shColor->b);
|
||||
|
||||
p.setFont(st::usernameFont->f);
|
||||
int32 w = width() - st::addContactPadding.left() - st::addContactPadding.right();
|
||||
p.drawText(QRect(st::addContactPadding.left(), _recoverCode.y() - st::usernameSkip - st::addContactPadding.top(), w, st::addContactPadding.top() + st::usernameSkip), _pattern, style::al_center);
|
||||
p.setFont(st::normalFont);
|
||||
p.setPen(st::black);
|
||||
int32 w = st::boxWidth - st::boxPadding.left() * 1.5;
|
||||
p.drawText(QRect(st::boxPadding.left(), _recoverCode.y() - st::passcodeSkip - st::passcodePadding.top(), w, st::passcodePadding.top() + st::passcodeSkip), _pattern, style::al_left);
|
||||
|
||||
if (!_error.isEmpty()) {
|
||||
p.setPen(st::setErrColor->p);
|
||||
p.drawText(QRect(0, _recoverCode.y() + _recoverCode.height(), width(), st::usernameSkip), _error, style::al_center);
|
||||
p.drawText(QRect(st::boxPadding.left(), _recoverCode.y() + _recoverCode.height(), w, st::passcodeSkip), _error, style::al_left);
|
||||
}
|
||||
|
||||
// paint button sep
|
||||
p.fillRect(st::btnSelectCancel.width, size().height() - st::btnSelectCancel.height, st::lineWidth, st::btnSelectCancel.height, st::btnSelectSep->b);
|
||||
}
|
||||
|
||||
void RecoverBox::resizeEvent(QResizeEvent *e) {
|
||||
_recoverCode.setGeometry(st::addContactPadding.left(), st::boxTitleHeight + st::addContactPadding.top() + st::usernameSkip, width() - st::addContactPadding.left() - st::addContactPadding.right(), _recoverCode.height());
|
||||
_recoverCode.resize(st::boxWidth - st::boxPadding.left() - st::boxPadding.right(), _recoverCode.height());
|
||||
_recoverCode.moveToLeft(st::boxPadding.left(), st::boxTitleHeight + st::passcodePadding.top() + st::passcodeSkip);
|
||||
|
||||
int32 buttonTop = height() - _cancelButton.height();
|
||||
_cancelButton.move(0, buttonTop);
|
||||
_saveButton.move(width() - _saveButton.width(), buttonTop);
|
||||
_saveButton.moveToRight(st::boxButtonPadding.right(), height() - st::boxButtonPadding.bottom() - _saveButton.height());
|
||||
_cancelButton.moveToRight(st::boxButtonPadding.right() + _saveButton.width() + st::boxButtonPadding.left(), _saveButton.y());
|
||||
|
||||
AbstractBox::resizeEvent(e);
|
||||
}
|
||||
|
||||
void RecoverBox::showDone() {
|
||||
@@ -535,9 +564,10 @@ void RecoverBox::showDone() {
|
||||
void RecoverBox::onSubmit() {
|
||||
if (_submitRequest) return;
|
||||
|
||||
QString code = _recoverCode.text().trimmed();
|
||||
QString code = _recoverCode.getLastText().trimmed();
|
||||
if (code.isEmpty()) {
|
||||
_recoverCode.notaBene();
|
||||
_recoverCode.setFocus();
|
||||
_recoverCode.showError();
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -553,8 +583,7 @@ void RecoverBox::codeSubmitDone(bool recover, const MTPauth_Authorization &resul
|
||||
_submitRequest = 0;
|
||||
|
||||
emit reloadPassword();
|
||||
ConfirmBox *box = new ConfirmBox(lang(lng_cloud_password_removed), true, lang(lng_about_done));
|
||||
App::wnd()->showLayer(box, true);
|
||||
Ui::showLayer(new InformBox(lang(lng_cloud_password_removed)));
|
||||
}
|
||||
|
||||
bool RecoverBox::codeSubmitFail(const RPCError &error) {
|
||||
@@ -563,8 +592,7 @@ bool RecoverBox::codeSubmitFail(const RPCError &error) {
|
||||
const QString &err = error.type();
|
||||
if (err == "PASSWORD_EMPTY") {
|
||||
emit reloadPassword();
|
||||
ConfirmBox *box = new ConfirmBox(lang(lng_cloud_password_removed), true, lang(lng_about_done));
|
||||
App::wnd()->showLayer(box, true);
|
||||
Ui::showLayer(new InformBox(lang(lng_cloud_password_removed)));
|
||||
return true;
|
||||
} else if (err == "PASSWORD_RECOVERY_NA") {
|
||||
onClose();
|
||||
@@ -576,12 +604,14 @@ bool RecoverBox::codeSubmitFail(const RPCError &error) {
|
||||
} else if (err == "CODE_INVALID") {
|
||||
_error = lang(lng_signin_wrong_code);
|
||||
update();
|
||||
_recoverCode.notaBene();
|
||||
_recoverCode.selectAll();
|
||||
_recoverCode.setFocus();
|
||||
_recoverCode.showError();
|
||||
return true;
|
||||
} else if (error.type().startsWith(qsl("FLOOD_WAIT_"))) {
|
||||
} else if (mtpIsFlood(error)) {
|
||||
_error = lang(lng_flood_error);
|
||||
update();
|
||||
_recoverCode.notaBene();
|
||||
_recoverCode.showError();
|
||||
return true;
|
||||
}
|
||||
if (cDebug()) { // internal server error
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
@@ -27,7 +30,6 @@ public:
|
||||
PasscodeBox(bool turningOff = false);
|
||||
PasscodeBox(const QByteArray &newSalt, const QByteArray &curSalt, bool hasRecovery, const QString &hint, bool turningOff = false);
|
||||
void init();
|
||||
void keyPressEvent(QKeyEvent *e);
|
||||
void paintEvent(QPaintEvent *e);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
|
||||
@@ -42,6 +44,7 @@ public slots:
|
||||
void onBoxDestroyed(QObject *obj);
|
||||
void onRecoverByEmail();
|
||||
void onRecoverExpired();
|
||||
void onSubmit();
|
||||
|
||||
signals:
|
||||
|
||||
@@ -69,16 +72,16 @@ private:
|
||||
mtpRequestId _setRequest;
|
||||
|
||||
QByteArray _newSalt, _curSalt;
|
||||
bool _hasRecovery;
|
||||
QString _hint;
|
||||
bool _hasRecovery, _skipEmailWarning;
|
||||
|
||||
int32 _aboutHeight;
|
||||
|
||||
QString _boxTitle;
|
||||
Text _about, _hintText;
|
||||
|
||||
FlatButton _saveButton, _cancelButton;
|
||||
FlatInput _oldPasscode, _newPasscode, _reenterPasscode, _passwordHint, _recoverEmail;
|
||||
BoxButton _saveButton, _cancelButton;
|
||||
PasswordField _oldPasscode, _newPasscode, _reenterPasscode;
|
||||
InputField _passwordHint, _recoverEmail;
|
||||
LinkButton _recover;
|
||||
|
||||
QString _oldError, _newError, _emailError;
|
||||
@@ -90,7 +93,6 @@ class RecoverBox : public AbstractBox, public RPCSender {
|
||||
public:
|
||||
|
||||
RecoverBox(const QString &pattern);
|
||||
void keyPressEvent(QKeyEvent *e);
|
||||
void paintEvent(QPaintEvent *e);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
|
||||
@@ -119,8 +121,8 @@ private:
|
||||
|
||||
QString _pattern;
|
||||
|
||||
FlatButton _saveButton, _cancelButton;
|
||||
FlatInput _recoverCode;
|
||||
BoxButton _saveButton, _cancelButton;
|
||||
InputField _recoverCode;
|
||||
|
||||
QString _error;
|
||||
};
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "style.h"
|
||||
@@ -24,26 +27,40 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
#include "photocropbox.h"
|
||||
#include "fileuploader.h"
|
||||
|
||||
PhotoCropBox::PhotoCropBox(const QImage &img, const PeerId &peer, bool upload) : _downState(0),
|
||||
_sendButton(this, lang(lng_settings_save), st::btnSelectDone),
|
||||
_cancelButton(this, lang(lng_cancel), st::btnSelectCancel),
|
||||
_img(img), _peerId(peer) {
|
||||
PhotoCropBox::PhotoCropBox(const QImage &img, const PeerId &peer) : AbstractBox()
|
||||
, _downState(0)
|
||||
, _done(this, lang(lng_settings_save), st::defaultBoxButton)
|
||||
, _cancel(this, lang(lng_cancel), st::cancelBoxButton)
|
||||
, _img(img)
|
||||
, _peerId(peer) {
|
||||
init(img, 0);
|
||||
}
|
||||
|
||||
if (peerIsChannel(_peerId)) {
|
||||
_title = lang(lng_create_channel_crop);
|
||||
} else if (peerIsChat(_peerId)) {
|
||||
PhotoCropBox::PhotoCropBox(const QImage &img, PeerData *peer) : AbstractBox()
|
||||
, _downState(0)
|
||||
, _done(this, lang(lng_settings_save), st::defaultBoxButton)
|
||||
, _cancel(this, lang(lng_cancel), st::cancelBoxButton)
|
||||
, _img(img)
|
||||
, _peerId(peer->id) {
|
||||
init(img, peer);
|
||||
}
|
||||
|
||||
void PhotoCropBox::init(const QImage &img, PeerData *peer) {
|
||||
if (peerIsChat(_peerId) || (peer && peer->isMegagroup())) {
|
||||
_title = lang(lng_create_group_crop);
|
||||
} else if (peerIsChannel(_peerId)) {
|
||||
_title = lang(lng_create_channel_crop);
|
||||
} else {
|
||||
_title = lang(lng_settings_crop_profile);
|
||||
}
|
||||
|
||||
connect(&_sendButton, SIGNAL(clicked()), this, SLOT(onSend()));
|
||||
connect(&_cancelButton, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
if (_peerId && upload) {
|
||||
connect(this, SIGNAL(ready(const QImage &)), this, SLOT(onReady(const QImage &)));
|
||||
connect(&_done, SIGNAL(clicked()), this, SLOT(onSend()));
|
||||
connect(&_cancel, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
if (peerToBareInt(_peerId)) {
|
||||
connect(this, SIGNAL(ready(const QImage&)), this, SLOT(onReady(const QImage&)));
|
||||
}
|
||||
|
||||
int32 s = st::cropBoxWidth - st::boxPadding.left() - st::boxPadding.right();
|
||||
int32 s = st::boxWideWidth - st::boxPhotoPadding.left() - st::boxPhotoPadding.right();
|
||||
_thumb = QPixmap::fromImage(img.scaled(s, s, Qt::KeepAspectRatio, Qt::SmoothTransformation), Qt::ColorOnly);
|
||||
_thumbw = _thumb.width();
|
||||
_thumbh = _thumb.height();
|
||||
@@ -55,11 +72,11 @@ PhotoCropBox::PhotoCropBox(const QImage &img, const PeerId &peer, bool upload) :
|
||||
_cropx = (_thumbw - _cropw) / 2;
|
||||
_cropy = (_thumbh - _cropw) / 2;
|
||||
|
||||
_thumbx = (st::cropBoxWidth - _thumbw) / 2;
|
||||
_thumby = st::boxPadding.top() * 2 + st::boxFont->height;
|
||||
_thumbx = (st::boxWideWidth - _thumbw) / 2;
|
||||
_thumby = st::boxPhotoPadding.top();
|
||||
setMouseTracking(true);
|
||||
|
||||
resizeMaxHeight(st::cropBoxWidth, _thumbh + st::boxPadding.top() + st::boxFont->height + st::boxPadding.top() + st::boxPadding.bottom() + _sendButton.height());
|
||||
resizeMaxHeight(st::boxWideWidth, st::boxPhotoPadding.top() + _thumbh + st::boxPhotoPadding.bottom() + st::boxTextFont->height + st::cropSkip + st::boxButtonPadding.top() + _done.height() + st::boxButtonPadding.bottom());
|
||||
}
|
||||
|
||||
void PhotoCropBox::mousePressEvent(QMouseEvent *e) {
|
||||
@@ -208,16 +225,12 @@ void PhotoCropBox::keyPressEvent(QKeyEvent *e) {
|
||||
}
|
||||
|
||||
void PhotoCropBox::paintEvent(QPaintEvent *e) {
|
||||
QPainter p(this);
|
||||
Painter p(this);
|
||||
if (paint(p)) return;
|
||||
|
||||
// paint shadow
|
||||
p.fillRect(0, height() - st::btnSelectCancel.height - st::scrollDef.bottomsh, width(), st::scrollDef.bottomsh, st::scrollDef.shColor->b);
|
||||
|
||||
// paint button sep
|
||||
p.fillRect(st::btnSelectCancel.width, height() - st::btnSelectCancel.height, st::lineWidth, st::btnSelectCancel.height, st::btnSelectSep->b);
|
||||
|
||||
paintGrayTitle(p, _title);
|
||||
p.setFont(st::boxTextFont);
|
||||
p.setPen(st::boxPhotoTextFg);
|
||||
p.drawText(QRect(st::boxPhotoPadding.left(), st::boxPhotoPadding.top() + _thumbh + st::boxPhotoPadding.bottom(), width() - st::boxPhotoPadding.left() - st::boxPhotoPadding.right(), st::boxTextFont->height), _title, style::al_top);
|
||||
|
||||
p.translate(_thumbx, _thumby);
|
||||
p.drawPixmap(0, 0, _thumb);
|
||||
@@ -243,8 +256,8 @@ void PhotoCropBox::paintEvent(QPaintEvent *e) {
|
||||
}
|
||||
|
||||
void PhotoCropBox::resizeEvent(QResizeEvent *e) {
|
||||
_sendButton.move(width() - _sendButton.width(), height() - _sendButton.height());
|
||||
_cancelButton.move(0, height() - _cancelButton.height());
|
||||
_done.moveToRight(st::boxButtonPadding.right(), height() - st::boxButtonPadding.bottom() - _done.height());
|
||||
_cancel.moveToRight(st::boxButtonPadding.right() + _done.width() + st::boxButtonPadding.left(), _done.y());
|
||||
}
|
||||
|
||||
void PhotoCropBox::onSend() {
|
||||
@@ -267,7 +280,11 @@ void PhotoCropBox::onSend() {
|
||||
iw = from.height() - iy;
|
||||
}
|
||||
int32 offset = ix * from.depth() / 8 + iy * from.bytesPerLine();
|
||||
QImage cropped(from.bits() + offset, iw, iw, from.bytesPerLine(), from.format()), tosend;
|
||||
QImage cropped(from.constBits() + offset, iw, iw, from.bytesPerLine(), from.format()), tosend;
|
||||
if (from.format() == QImage::Format_Indexed8) {
|
||||
cropped.setColorCount(from.colorCount());
|
||||
cropped.setColorTable(from.colorTable());
|
||||
}
|
||||
if (cropped.width() > 1280) {
|
||||
tosend = cropped.scaled(1280, 1280, Qt::KeepAspectRatio, Qt::SmoothTransformation);
|
||||
} else if (cropped.width() < 320) {
|
||||
@@ -285,11 +302,11 @@ void PhotoCropBox::onReady(const QImage &tosend) {
|
||||
}
|
||||
|
||||
void PhotoCropBox::hideAll() {
|
||||
_sendButton.hide();
|
||||
_cancelButton.hide();
|
||||
_done.hide();
|
||||
_cancel.hide();
|
||||
}
|
||||
|
||||
void PhotoCropBox::showAll() {
|
||||
_sendButton.show();
|
||||
_cancelButton.show();
|
||||
_done.show();
|
||||
_cancel.show();
|
||||
}
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
@@ -24,7 +27,8 @@ class PhotoCropBox : public AbstractBox {
|
||||
|
||||
public:
|
||||
|
||||
PhotoCropBox(const QImage &img, const PeerId &peer, bool upload = true);
|
||||
PhotoCropBox(const QImage &img, const PeerId &peer);
|
||||
PhotoCropBox(const QImage &img, PeerData *peer);
|
||||
void keyPressEvent(QKeyEvent *e);
|
||||
void paintEvent(QPaintEvent *e);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
@@ -50,12 +54,14 @@ protected:
|
||||
|
||||
private:
|
||||
|
||||
void init(const QImage &img, PeerData *peer);
|
||||
|
||||
QString _title;
|
||||
int32 _downState;
|
||||
int32 _thumbx, _thumby, _thumbw, _thumbh;
|
||||
int32 _cropx, _cropy, _cropw;
|
||||
int32 _fromposx, _fromposy, _fromcropx, _fromcropy, _fromcropw;
|
||||
FlatButton _sendButton, _cancelButton;
|
||||
BoxButton _done, _cancel;
|
||||
QImage _img;
|
||||
QPixmap _thumb;
|
||||
PeerId _peerId;
|
||||
|
||||
@@ -12,8 +12,11 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "style.h"
|
||||
@@ -24,29 +27,76 @@ Copyright (c) 2014 John Preston, https://desktop.telegram.org
|
||||
#include "mainwidget.h"
|
||||
#include "photosendbox.h"
|
||||
|
||||
PhotoSendBox::PhotoSendBox(const ReadyLocalMedia &img) : _img(new ReadyLocalMedia(img)),
|
||||
_thumbx(0), _thumby(0), _thumbw(0), _thumbh(0), _namew(0), _textw(0),
|
||||
_compressed(this, lang(lng_send_image_compressed), cCompressPastedImage()),
|
||||
_sendButton(this, lang(lng_send_button), st::btnSelectDone),
|
||||
_cancelButton(this, lang(lng_cancel), st::btnSelectCancel),
|
||||
_replyTo(img.replyTo) {
|
||||
connect(&_sendButton, SIGNAL(clicked()), this, SLOT(onSend()));
|
||||
connect(&_cancelButton, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
PhotoSendBox::PhotoSendBox(const FileLoadResultPtr &file) : AbstractBox(st::boxWideWidth)
|
||||
, _file(file)
|
||||
, _animated(false)
|
||||
, _caption(this, st::confirmCaptionArea, lang(lng_photo_caption))
|
||||
, _compressedFromSettings(_file->type == PrepareAuto)
|
||||
, _compressed(this, lang(lng_send_image_compressed), _compressedFromSettings ? cCompressPastedImage() : true)
|
||||
, _send(this, lang(lng_send_button), st::defaultBoxButton)
|
||||
, _cancel(this, lang(lng_cancel), st::cancelBoxButton)
|
||||
, _thumbx(0)
|
||||
, _thumby(0)
|
||||
, _thumbw(0)
|
||||
, _thumbh(0)
|
||||
, _statusw(0)
|
||||
, _isImage(false)
|
||||
, _replyTo(_file->to.replyTo)
|
||||
, _confirmed(false) {
|
||||
connect(&_send, SIGNAL(clicked()), this, SLOT(onSend()));
|
||||
connect(&_cancel, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
|
||||
if (_img->type == ToPreparePhoto) {
|
||||
_animated = false;
|
||||
QSize dimensions;
|
||||
if (_file->photo.type() != mtpc_photoEmpty) {
|
||||
_file->type = PreparePhoto;
|
||||
} else if (_file->document.type() == mtpc_document) {
|
||||
const MTPDdocument &document(_file->document.c_document());
|
||||
const QVector<MTPDocumentAttribute> &attributes(document.vattributes.c_vector().v);
|
||||
for (int32 i = 0, l = attributes.size(); i < l; ++i) {
|
||||
if (attributes.at(i).type() == mtpc_documentAttributeAnimated) {
|
||||
_animated = true;
|
||||
} else if (attributes.at(i).type() == mtpc_documentAttributeImageSize) {
|
||||
dimensions = QSize(attributes.at(i).c_documentAttributeImageSize().vw.v, attributes.at(i).c_documentAttributeImageSize().vh.v);
|
||||
} else if (attributes.at(i).type() == mtpc_documentAttributeVideo) {
|
||||
dimensions = QSize(attributes.at(i).c_documentAttributeVideo().vw.v, attributes.at(i).c_documentAttributeVideo().vh.v);
|
||||
}
|
||||
}
|
||||
if (dimensions.isEmpty()) _animated = false;
|
||||
}
|
||||
if (_file->type == PreparePhoto || _animated) {
|
||||
int32 maxW = 0, maxH = 0;
|
||||
for (PreparedPhotoThumbs::const_iterator i = _img->photoThumbs.cbegin(), e = _img->photoThumbs.cend(); i != e; ++i) {
|
||||
if (i->width() >= maxW && i->height() >= maxH) {
|
||||
_thumb = *i;
|
||||
maxW = _thumb.width();
|
||||
maxH = _thumb.height();
|
||||
if (_animated) {
|
||||
int32 limitW = width() - st::boxPhotoPadding.left() - st::boxPhotoPadding.right();
|
||||
int32 limitH = st::confirmMaxHeight;
|
||||
maxW = qMax(dimensions.width(), 1);
|
||||
maxH = qMax(dimensions.height(), 1);
|
||||
if (maxW * limitH > maxH * limitW) {
|
||||
if (maxW < limitW) {
|
||||
maxH = maxH * limitW / maxW;
|
||||
maxW = limitW;
|
||||
}
|
||||
} else {
|
||||
if (maxH < limitH) {
|
||||
maxW = maxW * limitH / maxH;
|
||||
maxH = limitH;
|
||||
}
|
||||
}
|
||||
_thumb = imagePix(_file->thumb.toImage(), maxW * cIntRetinaFactor(), maxH * cIntRetinaFactor(), ImagePixSmooth | ImagePixBlurred, maxW, maxH);
|
||||
} else {
|
||||
for (PreparedPhotoThumbs::const_iterator i = _file->photoThumbs.cbegin(), e = _file->photoThumbs.cend(); i != e; ++i) {
|
||||
if (i->width() >= maxW && i->height() >= maxH) {
|
||||
_thumb = *i;
|
||||
maxW = _thumb.width();
|
||||
maxH = _thumb.height();
|
||||
}
|
||||
}
|
||||
}
|
||||
int32 tw = _thumb.width(), th = _thumb.height();
|
||||
if (!tw || !th) {
|
||||
tw = th = 1;
|
||||
}
|
||||
_thumbw = width() - st::boxPadding.left() - st::boxPadding.right();
|
||||
_thumbw = width() - st::boxPhotoPadding.left() - st::boxPhotoPadding.right();
|
||||
if (_thumb.width() < _thumbw) {
|
||||
_thumbw = (_thumb.width() > 20) ? _thumb.width() : 20;
|
||||
}
|
||||
@@ -59,61 +109,100 @@ PhotoSendBox::PhotoSendBox(const ReadyLocalMedia &img) : _img(new ReadyLocalMedi
|
||||
_thumbw = 10;
|
||||
}
|
||||
}
|
||||
resizeMaxHeight(st::boxWidth, _thumbh + st::boxPadding.top() + st::boxFont->height + st::boxPadding.bottom() + st::boxPadding.bottom() + _compressed.height() + _sendButton.height());
|
||||
_thumbx = (width() - _thumbw) / 2;
|
||||
|
||||
_thumb = QPixmap::fromImage(_thumb.toImage().scaled(_thumbw * cIntRetinaFactor(), _thumbh * cIntRetinaFactor(), Qt::IgnoreAspectRatio, Qt::SmoothTransformation), Qt::ColorOnly);
|
||||
_thumb.setDevicePixelRatio(cRetinaFactor());
|
||||
} else {
|
||||
_compressed.hide();
|
||||
if (!_img->photoThumbs.isEmpty()) {
|
||||
_thumb = _img->photoThumbs.cbegin().value();
|
||||
if (_file->thumb.isNull()) {
|
||||
_thumbw = 0;
|
||||
} else {
|
||||
_thumb = _file->thumb;
|
||||
int32 tw = _thumb.width(), th = _thumb.height();
|
||||
if (_thumb.isNull() || !tw || !th) {
|
||||
_thumbw = _thumbx = _thumby = 0;
|
||||
} else if (tw > th) {
|
||||
_thumbw = (tw * st::mediaThumbSize) / th;
|
||||
_thumbx = (_thumbw - st::mediaThumbSize) / 2;
|
||||
_thumby = 0;
|
||||
if (tw > th) {
|
||||
_thumbw = (tw * st::msgFileThumbSize) / th;
|
||||
} else {
|
||||
_thumbw = st::mediaThumbSize;
|
||||
_thumbx = 0;
|
||||
_thumby = ((th * _thumbw) / tw - st::mediaThumbSize) / 2;
|
||||
_thumbw = st::msgFileThumbSize;
|
||||
}
|
||||
_thumb = imagePix(_thumb.toImage(), _thumbw * cIntRetinaFactor(), 0, ImagePixSmooth | ImagePixRounded, st::msgFileThumbSize, st::msgFileThumbSize);
|
||||
}
|
||||
if (_thumbw) {
|
||||
_thumb = QPixmap::fromImage(_thumb.toImage().scaledToWidth(_thumbw * cIntRetinaFactor(), Qt::SmoothTransformation), Qt::ColorOnly);
|
||||
_thumb.setDevicePixelRatio(cRetinaFactor());
|
||||
}
|
||||
resizeMaxHeight(st::boxWidth, st::boxPadding.top() + st::boxFont->height + st::boxPadding.bottom() + st::mediaPadding.top() + st::mediaThumbSize + st::mediaPadding.bottom() + st::boxPadding.bottom() + _sendButton.height());
|
||||
|
||||
_name = _img->filename;
|
||||
_namew = st::mediaFont->m.width(_name);
|
||||
_size = formatSizeText(_img->filesize);
|
||||
_textw = qMax(_namew, st::mediaFont->m.width(_size));
|
||||
_name.setText(st::semiboldFont, _file->filename, _textNameOptions);
|
||||
_status = formatSizeText(_file->filesize);
|
||||
_statusw = qMax(_name.maxWidth(), st::normalFont->width(_status));
|
||||
_isImage = fileIsImage(_file->filename, _file->filemime);
|
||||
}
|
||||
if (_file->type != PreparePhoto) {
|
||||
_compressed.hide();
|
||||
}
|
||||
|
||||
updateBoxSize();
|
||||
_caption.setMaxLength(MaxPhotoCaption);
|
||||
_caption.setCtrlEnterSubmit(CtrlEnterSubmitBoth);
|
||||
connect(&_compressed, SIGNAL(changed()), this, SLOT(onCompressedChange()));
|
||||
connect(&_caption, SIGNAL(resized()), this, SLOT(onCaptionResized()));
|
||||
connect(&_caption, SIGNAL(submitted(bool)), this, SLOT(onSend(bool)));
|
||||
connect(&_caption, SIGNAL(cancelled()), this, SLOT(onClose()));
|
||||
|
||||
prepare();
|
||||
}
|
||||
|
||||
PhotoSendBox::PhotoSendBox(const QString &phone, const QString &fname, const QString &lname, MsgId replyTo) : _img(0),
|
||||
_thumbx(0), _thumby(0), _thumbw(0), _thumbh(0), _namew(0), _textw(0),
|
||||
_compressed(this, lang(lng_send_image_compressed), true),
|
||||
_sendButton(this, lang(lng_send_button), st::btnSelectDone),
|
||||
_cancelButton(this, lang(lng_cancel), st::btnSelectCancel),
|
||||
_phone(phone), _fname(fname), _lname(lname), _replyTo(replyTo) {
|
||||
connect(&_sendButton, SIGNAL(clicked()), this, SLOT(onSend()));
|
||||
connect(&_cancelButton, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
PhotoSendBox::PhotoSendBox(const QString &phone, const QString &fname, const QString &lname, MsgId replyTo) : AbstractBox(st::boxWideWidth)
|
||||
, _caption(this, st::confirmCaptionArea, lang(lng_photo_caption))
|
||||
, _compressed(this, lang(lng_send_image_compressed), true)
|
||||
, _send(this, lang(lng_send_button), st::defaultBoxButton)
|
||||
, _cancel(this, lang(lng_cancel), st::cancelBoxButton)
|
||||
, _thumbx(0)
|
||||
, _thumby(0)
|
||||
, _thumbw(0)
|
||||
, _thumbh(0)
|
||||
, _statusw(0)
|
||||
, _isImage(false)
|
||||
, _phone(phone)
|
||||
, _fname(fname)
|
||||
, _lname(lname)
|
||||
, _replyTo(replyTo)
|
||||
, _confirmed(false) {
|
||||
connect(&_send, SIGNAL(clicked()), this, SLOT(onSend()));
|
||||
connect(&_cancel, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
|
||||
_compressed.hide();
|
||||
|
||||
_name = lng_full_name(lt_first_name, _fname, lt_last_name, _lname);
|
||||
_namew = st::mediaFont->m.width(_name);
|
||||
_size = _phone;
|
||||
_textw = qMax(_namew, st::mediaFont->m.width(_size));
|
||||
_name.setText(st::semiboldFont, lng_full_name(lt_first_name, _fname, lt_last_name, _lname), _textNameOptions);
|
||||
_status = _phone;
|
||||
_statusw = qMax(_name.maxWidth(), st::normalFont->width(_status));
|
||||
|
||||
resizeMaxHeight(st::boxWidth, st::boxPadding.top() + st::boxFont->height + st::boxPadding.bottom() + st::mediaPadding.top() + st::mediaThumbSize + st::mediaPadding.bottom() + st::boxPadding.bottom() + _sendButton.height());
|
||||
updateBoxSize();
|
||||
prepare();
|
||||
}
|
||||
|
||||
void PhotoSendBox::onCompressedChange() {
|
||||
showAll();
|
||||
if (_caption.isHidden()) {
|
||||
setFocus();
|
||||
} else {
|
||||
_caption.setFocus();
|
||||
}
|
||||
updateBoxSize();
|
||||
resizeEvent(0);
|
||||
update();
|
||||
}
|
||||
|
||||
void PhotoSendBox::onCaptionResized() {
|
||||
updateBoxSize();
|
||||
resizeEvent(0);
|
||||
update();
|
||||
}
|
||||
|
||||
void PhotoSendBox::updateBoxSize() {
|
||||
if (_file && (_file->type == PreparePhoto || _animated)) {
|
||||
setMaxHeight(st::boxPhotoPadding.top() + _thumbh + st::boxPhotoPadding.bottom() + (_animated ? 0 : (st::boxPhotoCompressedPadding.top() + _compressed.height())) + st::boxPhotoCompressedPadding.bottom() + _caption.height() + st::boxButtonPadding.top() + _send.height() + st::boxButtonPadding.bottom());
|
||||
} else if (_thumbw) {
|
||||
setMaxHeight(st::boxPhotoPadding.top() + st::msgFileThumbPadding.top() + st::msgFileThumbSize + st::msgFileThumbPadding.bottom() + (_file ? (st::boxPhotoCompressedPadding.bottom() + _caption.height()) : 0) + st::boxPhotoPadding.bottom() + st::boxButtonPadding.top() + _send.height() + st::boxButtonPadding.bottom());
|
||||
} else {
|
||||
setMaxHeight(st::boxPhotoPadding.top() + st::msgFilePadding.top() + st::msgFileSize + st::msgFilePadding.bottom() + (_file ? (st::boxPhotoCompressedPadding.bottom() + _caption.height()) : 0) + st::boxPhotoPadding.bottom() + st::boxButtonPadding.top() + _send.height() + st::boxButtonPadding.bottom());
|
||||
}
|
||||
}
|
||||
|
||||
void PhotoSendBox::keyPressEvent(QKeyEvent *e) {
|
||||
if (e->key() == Qt::Key_Enter || e->key() == Qt::Key_Return) {
|
||||
@@ -127,98 +216,473 @@ void PhotoSendBox::paintEvent(QPaintEvent *e) {
|
||||
Painter p(this);
|
||||
if (paint(p)) return;
|
||||
|
||||
// paint shadow
|
||||
p.fillRect(0, height() - st::btnSelectCancel.height - st::scrollDef.bottomsh, width(), st::scrollDef.bottomsh, st::scrollDef.shColor->b);
|
||||
|
||||
// paint button sep
|
||||
p.fillRect(st::btnSelectCancel.width, height() - st::btnSelectCancel.height, st::lineWidth, st::btnSelectCancel.height, st::btnSelectSep->b);
|
||||
|
||||
if (_img && _img->type == ToPreparePhoto) {
|
||||
paintGrayTitle(p, lang(lng_really_send_image));
|
||||
p.drawPixmap((width() - _thumbw) / 2, st::boxPadding.top() * 2 + st::boxFont->height, _thumb);
|
||||
} else {
|
||||
paintGrayTitle(p, lang(_img ? lng_really_send_file : lng_really_share_contact));
|
||||
|
||||
int32 w = width() - st::boxPadding.left() - st::boxPadding.right(), h = st::mediaPadding.top() + st::mediaThumbSize + st::mediaPadding.bottom();
|
||||
int32 tleft = st::mediaPadding.left() + st::mediaThumbSize + st::mediaPadding.right();
|
||||
int32 twidth = w - tleft - st::mediaPadding.right();
|
||||
if (twidth > _textw) {
|
||||
w -= (twidth - _textw);
|
||||
twidth = _textw;
|
||||
if (_file && (_file->type == PreparePhoto || _animated)) {
|
||||
if (_thumbx > st::boxPhotoPadding.left()) {
|
||||
p.fillRect(st::boxPhotoPadding.left(), st::boxPhotoPadding.top(), _thumbx - st::boxPhotoPadding.left(), _thumbh, st::confirmBg->b);
|
||||
}
|
||||
int32 x = (width() - w) / 2, y = st::boxPadding.top() * 2 + st::boxFont->height;
|
||||
if (_thumbx + _thumbw < width() - st::boxPhotoPadding.right()) {
|
||||
p.fillRect(_thumbx + _thumbw, st::boxPhotoPadding.top(), width() - st::boxPhotoPadding.right() - _thumbx - _thumbw, _thumbh, st::confirmBg->b);
|
||||
}
|
||||
p.drawPixmap(_thumbx, st::boxPhotoPadding.top(), _thumb);
|
||||
if (_animated) {
|
||||
QRect inner(_thumbx + (_thumbw - st::msgFileSize) / 2, st::boxPhotoPadding.top() + (_thumbh - st::msgFileSize) / 2, st::msgFileSize, st::msgFileSize);
|
||||
p.setPen(Qt::NoPen);
|
||||
p.setBrush(st::msgDateImgBg);
|
||||
|
||||
p.setRenderHint(QPainter::HighQualityAntialiasing);
|
||||
p.drawEllipse(inner);
|
||||
p.setRenderHint(QPainter::HighQualityAntialiasing, false);
|
||||
|
||||
p.drawSpriteCenter(inner, st::msgFileInPlay);
|
||||
}
|
||||
} else {
|
||||
int32 w = width() - st::boxPhotoPadding.left() - st::boxPhotoPadding.right();
|
||||
int32 h = _thumbw ? (st::msgFileThumbPadding.top() + st::msgFileThumbSize + st::msgFileThumbPadding.bottom()) : (st::msgFilePadding.top() + st::msgFileSize + st::msgFilePadding.bottom());
|
||||
int32 nameleft = 0, nametop = 0, nameright = 0, statustop = 0, linktop = 0;
|
||||
if (_thumbw) {
|
||||
nameleft = st::msgFileThumbPadding.left() + st::msgFileThumbSize + st::msgFileThumbPadding.right();
|
||||
nametop = st::msgFileThumbNameTop;
|
||||
nameright = st::msgFileThumbPadding.left();
|
||||
statustop = st::msgFileThumbStatusTop;
|
||||
linktop = st::msgFileThumbLinkTop;
|
||||
} else {
|
||||
nameleft = st::msgFilePadding.left() + st::msgFileSize + st::msgFilePadding.right();
|
||||
nametop = st::msgFileNameTop;
|
||||
nameright = st::msgFilePadding.left();
|
||||
statustop = st::msgFileStatusTop;
|
||||
}
|
||||
int32 namewidth = w - nameleft - (_thumbw ? st::msgFileThumbPadding.left() : st::msgFilePadding.left());
|
||||
if (namewidth > _statusw) {
|
||||
w -= (namewidth - _statusw);
|
||||
namewidth = _statusw;
|
||||
}
|
||||
int32 x = (width() - w) / 2, y = st::boxPhotoPadding.top();
|
||||
|
||||
App::roundRect(p, x, y, w, h, st::msgOutBg, MessageOutCorners, &st::msgOutShadow);
|
||||
|
||||
if (_thumbw) {
|
||||
int32 rf(cIntRetinaFactor());
|
||||
p.drawPixmap(QPoint(x + st::mediaPadding.left(), y + st::mediaPadding.top()), _thumb, QRect(_thumbx * rf, _thumby * rf, st::mediaThumbSize * rf, st::mediaThumbSize * rf));
|
||||
} else if (_img) {
|
||||
p.drawPixmap(QPoint(x + st::mediaPadding.left(), y + st::mediaPadding.top()), App::sprite(), st::mediaDocOutImg);
|
||||
} else {
|
||||
p.drawPixmap(x + st::mediaPadding.left(), y + st::mediaPadding.top(), userDefPhoto(1)->pix(st::mediaThumbSize));
|
||||
}
|
||||
QRect rthumb(rtlrect(x + st::msgFileThumbPadding.left(), y + st::msgFileThumbPadding.top(), st::msgFileThumbSize, st::msgFileThumbSize, width()));
|
||||
p.drawPixmap(rthumb.topLeft(), _thumb);
|
||||
} else if (_file) {
|
||||
QRect inner(rtlrect(x + st::msgFilePadding.left(), y + st::msgFilePadding.top(), st::msgFileSize, st::msgFileSize, width()));
|
||||
p.setPen(Qt::NoPen);
|
||||
p.setBrush(st::msgFileOutBg);
|
||||
|
||||
p.setFont(st::mediaFont->f);
|
||||
p.setPen(st::black->c);
|
||||
if (twidth < _namew) {
|
||||
p.drawText(x + tleft, y + st::mediaPadding.top() + st::mediaNameTop + st::mediaFont->ascent, st::mediaFont->m.elidedText(_name, Qt::ElideRight, twidth));
|
||||
} else {
|
||||
p.drawText(x + tleft, y + st::mediaPadding.top() + st::mediaNameTop + st::mediaFont->ascent, _name);
|
||||
}
|
||||
p.setRenderHint(QPainter::HighQualityAntialiasing);
|
||||
p.drawEllipse(inner);
|
||||
p.setRenderHint(QPainter::HighQualityAntialiasing, false);
|
||||
|
||||
p.setPen(st::mediaOutColor->p);
|
||||
p.drawText(x + tleft, y + st::mediaPadding.top() + st::mediaThumbSize - st::mediaDetailsShift - st::mediaFont->descent, _size);
|
||||
p.drawSpriteCenter(inner, _isImage ? st::msgFileOutImage : st::msgFileOutFile);
|
||||
} else {
|
||||
p.drawPixmapLeft(x + st::msgFilePadding.left(), y + st::msgFilePadding.top(), width(), userDefPhoto(1)->pixCircled(st::msgFileSize));
|
||||
}
|
||||
p.setFont(st::semiboldFont);
|
||||
p.setPen(st::black);
|
||||
_name.drawLeftElided(p, x + nameleft, y + nametop, namewidth, width());
|
||||
|
||||
style::color status(st::mediaOutFg);
|
||||
p.setFont(st::normalFont);
|
||||
p.setPen(status);
|
||||
p.drawTextLeft(x + nameleft, y + statustop, width(), _status);
|
||||
}
|
||||
}
|
||||
|
||||
void PhotoSendBox::resizeEvent(QResizeEvent *e) {
|
||||
_sendButton.move(width() - _sendButton.width(), height() - _sendButton.height());
|
||||
_cancelButton.move(0, height() - _cancelButton.height());
|
||||
_compressed.move((width() - _compressed.width()) / 2, height() - _cancelButton.height() - _compressed.height() - st::confirmCompressedSkip);
|
||||
_send.moveToRight(st::boxButtonPadding.right(), height() - st::boxButtonPadding.bottom() - _send.height());
|
||||
_cancel.moveToRight(st::boxButtonPadding.right() + _send.width() + st::boxButtonPadding.left(), _send.y());
|
||||
_caption.resize(st::boxWideWidth - st::boxPhotoPadding.left() - st::boxPhotoPadding.right(), _caption.height());
|
||||
_caption.moveToLeft(st::boxPhotoPadding.left(), _send.y() - st::boxButtonPadding.top() - _caption.height());
|
||||
_compressed.moveToLeft(st::boxPhotoPadding.left(), st::boxPhotoPadding.top() + _thumbh + st::boxPhotoPadding.bottom() + st::boxPhotoCompressedPadding.top());
|
||||
}
|
||||
|
||||
void PhotoSendBox::closePressed() {
|
||||
if (App::main()) App::main()->cancelSendImage();
|
||||
if (!_confirmed && App::main()) {
|
||||
if (_file) {
|
||||
App::main()->onSendFileCancel(_file);
|
||||
} else {
|
||||
App::main()->onShareContactCancel();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void PhotoSendBox::hideAll() {
|
||||
_sendButton.hide();
|
||||
_cancelButton.hide();
|
||||
_send.hide();
|
||||
_cancel.hide();
|
||||
_caption.hide();
|
||||
_compressed.hide();
|
||||
}
|
||||
|
||||
void PhotoSendBox::showAll() {
|
||||
_sendButton.show();
|
||||
_cancelButton.show();
|
||||
if (_img && _img->type == ToPreparePhoto) {
|
||||
_compressed.show();
|
||||
_send.show();
|
||||
_cancel.show();
|
||||
if (_file) {
|
||||
if (_file->type == PreparePhoto) {
|
||||
_compressed.show();
|
||||
}
|
||||
_caption.show();
|
||||
} else {
|
||||
_caption.hide();
|
||||
_compressed.hide();
|
||||
}
|
||||
}
|
||||
|
||||
void PhotoSendBox::onSend(bool ctrlShiftEnter) {
|
||||
if (!_img) {
|
||||
if (App::main()) App::main()->confirmShareContact(ctrlShiftEnter, _phone, _fname, _lname, _replyTo);
|
||||
} else {
|
||||
if (!_compressed.isHidden()) {
|
||||
if (_compressed.checked() != cCompressPastedImage()) {
|
||||
cSetCompressPastedImage(_compressed.checked());
|
||||
Local::writeUserSettings();
|
||||
}
|
||||
}
|
||||
if (_compressed.isHidden() || _compressed.checked()) {
|
||||
_img->ctrlShiftEnter = ctrlShiftEnter;
|
||||
if (App::main()) App::main()->confirmSendImage(*_img);
|
||||
} else {
|
||||
if (App::main()) App::main()->confirmSendImageUncompressed(ctrlShiftEnter, _replyTo);
|
||||
}
|
||||
}
|
||||
emit confirmed();
|
||||
emit closed();
|
||||
void PhotoSendBox::showDone() {
|
||||
setInnerFocus();
|
||||
}
|
||||
|
||||
PhotoSendBox::~PhotoSendBox() {
|
||||
delete _img;
|
||||
closePressed();
|
||||
void PhotoSendBox::onSend(bool ctrlShiftEnter) {
|
||||
if (App::main()) {
|
||||
if (_file) {
|
||||
if (_compressed.isHidden()) {
|
||||
if (_file->type == PrepareAuto) {
|
||||
_file->type = PrepareDocument;
|
||||
}
|
||||
} else {
|
||||
if (_compressedFromSettings && _compressed.checked() != cCompressPastedImage()) {
|
||||
cSetCompressPastedImage(_compressed.checked());
|
||||
Local::writeUserSettings();
|
||||
}
|
||||
if (_compressed.checked()) {
|
||||
_file->type = PreparePhoto;
|
||||
} else {
|
||||
_file->type = PrepareDocument;
|
||||
}
|
||||
}
|
||||
if (!_caption.isHidden()) {
|
||||
_file->caption = prepareText(_caption.getLastText(), true);
|
||||
}
|
||||
App::main()->onSendFileConfirm(_file, ctrlShiftEnter);
|
||||
} else {
|
||||
App::main()->onShareContactConfirm(_phone, _fname, _lname, _replyTo, ctrlShiftEnter);
|
||||
}
|
||||
}
|
||||
_confirmed = true;
|
||||
onClose();
|
||||
}
|
||||
|
||||
EditCaptionBox::EditCaptionBox(HistoryItem *msg) : AbstractBox(st::boxWideWidth)
|
||||
, _msgId(msg->fullId())
|
||||
, _animated(false)
|
||||
, _photo(false)
|
||||
, _doc(false)
|
||||
, _field(0)
|
||||
, _save(this, lang(lng_settings_save), st::defaultBoxButton)
|
||||
, _cancel(this, lang(lng_cancel), st::cancelBoxButton)
|
||||
, _thumbx(0)
|
||||
, _thumby(0)
|
||||
, _thumbw(0)
|
||||
, _thumbh(0)
|
||||
, _statusw(0)
|
||||
, _isImage(false)
|
||||
, _previewCancelled(false)
|
||||
, _saveRequestId(0) {
|
||||
connect(&_save, SIGNAL(clicked()), this, SLOT(onSave()));
|
||||
connect(&_cancel, SIGNAL(clicked()), this, SLOT(onClose()));
|
||||
|
||||
QSize dimensions;
|
||||
ImagePtr image;
|
||||
QString caption;
|
||||
DocumentData *doc = 0;
|
||||
if (HistoryMedia *media = msg->getMedia()) {
|
||||
HistoryMediaType t = media->type();
|
||||
switch (t) {
|
||||
case MediaTypeGif: {
|
||||
_animated = true;
|
||||
doc = static_cast<HistoryGif*>(media)->getDocument();
|
||||
dimensions = doc->dimensions;
|
||||
image = doc->thumb;
|
||||
} break;
|
||||
|
||||
case MediaTypePhoto: {
|
||||
_photo = true;
|
||||
PhotoData *photo = static_cast<HistoryPhoto*>(media)->photo();
|
||||
dimensions = QSize(photo->full->width(), photo->full->height());
|
||||
image = photo->full;
|
||||
} break;
|
||||
|
||||
case MediaTypeVideo: {
|
||||
_animated = true;
|
||||
doc = static_cast<HistoryVideo*>(media)->getDocument();
|
||||
dimensions = doc->dimensions;
|
||||
image = doc->thumb;
|
||||
} break;
|
||||
|
||||
case MediaTypeFile:
|
||||
case MediaTypeMusicFile:
|
||||
case MediaTypeVoiceFile: {
|
||||
_doc = true;
|
||||
doc = static_cast<HistoryDocument*>(media)->getDocument();
|
||||
image = doc->thumb;
|
||||
} break;
|
||||
}
|
||||
caption = media->getCaption();
|
||||
}
|
||||
if ((!_animated && (dimensions.isEmpty() || doc)) || image->isNull()) {
|
||||
_animated = false;
|
||||
if (image->isNull()) {
|
||||
_thumbw = 0;
|
||||
} else {
|
||||
int32 tw = image->width(), th = image->height();
|
||||
if (tw > th) {
|
||||
_thumbw = (tw * st::msgFileThumbSize) / th;
|
||||
} else {
|
||||
_thumbw = st::msgFileThumbSize;
|
||||
}
|
||||
_thumb = imagePix(image->pix().toImage(), _thumbw * cIntRetinaFactor(), 0, ImagePixSmooth | ImagePixRounded, st::msgFileThumbSize, st::msgFileThumbSize);
|
||||
}
|
||||
|
||||
if (doc) {
|
||||
if (doc->voice()) {
|
||||
_name.setText(st::semiboldFont, lang(lng_media_audio), _textNameOptions);
|
||||
} else {
|
||||
_name.setText(st::semiboldFont, documentName(doc), _textNameOptions);
|
||||
}
|
||||
_status = formatSizeText(doc->size);
|
||||
_statusw = qMax(_name.maxWidth(), st::normalFont->width(_status));
|
||||
_isImage = doc->isImage();
|
||||
}
|
||||
} else {
|
||||
int32 maxW = 0, maxH = 0;
|
||||
if (_animated) {
|
||||
int32 limitW = width() - st::boxPhotoPadding.left() - st::boxPhotoPadding.right();
|
||||
int32 limitH = st::confirmMaxHeight;
|
||||
maxW = qMax(dimensions.width(), 1);
|
||||
maxH = qMax(dimensions.height(), 1);
|
||||
if (maxW * limitH > maxH * limitW) {
|
||||
if (maxW < limitW) {
|
||||
maxH = maxH * limitW / maxW;
|
||||
maxW = limitW;
|
||||
}
|
||||
} else {
|
||||
if (maxH < limitH) {
|
||||
maxW = maxW * limitH / maxH;
|
||||
maxH = limitH;
|
||||
}
|
||||
}
|
||||
_thumb = image->pixNoCache(maxW * cIntRetinaFactor(), maxH * cIntRetinaFactor(), ImagePixSmooth | ImagePixBlurred, maxW, maxH);
|
||||
} else {
|
||||
maxW = dimensions.width();
|
||||
maxH = dimensions.height();
|
||||
_thumb = image->pixNoCache(maxW * cIntRetinaFactor(), maxH * cIntRetinaFactor(), ImagePixSmooth | ImagePixRounded, maxW, maxH);
|
||||
}
|
||||
int32 tw = _thumb.width(), th = _thumb.height();
|
||||
if (!tw || !th) {
|
||||
tw = th = 1;
|
||||
}
|
||||
_thumbw = width() - st::boxPhotoPadding.left() - st::boxPhotoPadding.right();
|
||||
if (_thumb.width() < _thumbw) {
|
||||
_thumbw = (_thumb.width() > 20) ? _thumb.width() : 20;
|
||||
}
|
||||
int32 maxthumbh = qMin(qRound(1.5 * _thumbw), int(st::confirmMaxHeight));
|
||||
_thumbh = qRound(th * float64(_thumbw) / tw);
|
||||
if (_thumbh > maxthumbh) {
|
||||
_thumbw = qRound(_thumbw * float64(maxthumbh) / _thumbh);
|
||||
_thumbh = maxthumbh;
|
||||
if (_thumbw < 10) {
|
||||
_thumbw = 10;
|
||||
}
|
||||
}
|
||||
_thumbx = (width() - _thumbw) / 2;
|
||||
|
||||
_thumb = QPixmap::fromImage(_thumb.toImage().scaled(_thumbw * cIntRetinaFactor(), _thumbh * cIntRetinaFactor(), Qt::IgnoreAspectRatio, Qt::SmoothTransformation), Qt::ColorOnly);
|
||||
_thumb.setDevicePixelRatio(cRetinaFactor());
|
||||
}
|
||||
|
||||
if (_animated || _photo || _doc) {
|
||||
_field = new InputArea(this, st::confirmCaptionArea, lang(lng_photo_caption), caption);
|
||||
_field->setMaxLength(MaxPhotoCaption);
|
||||
_field->setCtrlEnterSubmit(CtrlEnterSubmitBoth);
|
||||
} else {
|
||||
QString text = textApplyEntities(msg->originalText(), msg->originalEntities());
|
||||
_field = new InputArea(this, st::editTextArea, lang(lng_photo_caption), text);
|
||||
// _field->setMaxLength(MaxMessageSize); // entities can make text in input field larger but still valid
|
||||
_field->setCtrlEnterSubmit(cCtrlEnter() ? CtrlEnterSubmitCtrlEnter : CtrlEnterSubmitEnter);
|
||||
}
|
||||
updateBoxSize();
|
||||
connect(_field, SIGNAL(submitted(bool)), this, SLOT(onSave(bool)));
|
||||
connect(_field, SIGNAL(cancelled()), this, SLOT(onClose()));
|
||||
connect(_field, SIGNAL(resized()), this, SLOT(onCaptionResized()));
|
||||
|
||||
QTextCursor c(_field->textCursor());
|
||||
c.movePosition(QTextCursor::End);
|
||||
_field->setTextCursor(c);
|
||||
|
||||
prepare();
|
||||
}
|
||||
|
||||
bool EditCaptionBox::captionFound() const {
|
||||
return _animated || _photo || _doc;
|
||||
}
|
||||
|
||||
void EditCaptionBox::onCaptionResized() {
|
||||
updateBoxSize();
|
||||
resizeEvent(0);
|
||||
update();
|
||||
}
|
||||
|
||||
void EditCaptionBox::updateBoxSize() {
|
||||
int32 bottomh = st::boxPhotoCompressedPadding.bottom() + _field->height() + st::normalFont->height + st::boxButtonPadding.top() + _save.height() + st::boxButtonPadding.bottom();
|
||||
if (_photo || _animated) {
|
||||
setMaxHeight(st::boxPhotoPadding.top() + _thumbh + bottomh);
|
||||
} else if (_thumbw) {
|
||||
setMaxHeight(st::boxPhotoPadding.top() + 0 + st::msgFileThumbSize + 0 + bottomh);
|
||||
} else if (_doc) {
|
||||
setMaxHeight(st::boxPhotoPadding.top() + 0 + st::msgFileSize + 0 + bottomh);
|
||||
} else {
|
||||
setMaxHeight(st::boxPhotoPadding.top() + st::boxTitleFont->height + bottomh);
|
||||
}
|
||||
}
|
||||
|
||||
void EditCaptionBox::paintEvent(QPaintEvent *e) {
|
||||
Painter p(this);
|
||||
if (paint(p)) return;
|
||||
|
||||
if (_photo || _animated) {
|
||||
if (_thumbx > st::boxPhotoPadding.left()) {
|
||||
p.fillRect(st::boxPhotoPadding.left(), st::boxPhotoPadding.top(), _thumbx - st::boxPhotoPadding.left(), _thumbh, st::confirmBg->b);
|
||||
}
|
||||
if (_thumbx + _thumbw < width() - st::boxPhotoPadding.right()) {
|
||||
p.fillRect(_thumbx + _thumbw, st::boxPhotoPadding.top(), width() - st::boxPhotoPadding.right() - _thumbx - _thumbw, _thumbh, st::confirmBg->b);
|
||||
}
|
||||
p.drawPixmap(_thumbx, st::boxPhotoPadding.top(), _thumb);
|
||||
if (_animated) {
|
||||
QRect inner(_thumbx + (_thumbw - st::msgFileSize) / 2, st::boxPhotoPadding.top() + (_thumbh - st::msgFileSize) / 2, st::msgFileSize, st::msgFileSize);
|
||||
p.setPen(Qt::NoPen);
|
||||
p.setBrush(st::msgDateImgBg);
|
||||
|
||||
p.setRenderHint(QPainter::HighQualityAntialiasing);
|
||||
p.drawEllipse(inner);
|
||||
p.setRenderHint(QPainter::HighQualityAntialiasing, false);
|
||||
|
||||
p.drawSpriteCenter(inner, st::msgFileInPlay);
|
||||
}
|
||||
} else if (_doc) {
|
||||
int32 w = width() - st::boxPhotoPadding.left() - st::boxPhotoPadding.right();
|
||||
int32 h = _thumbw ? (0 + st::msgFileThumbSize + 0) : (0 + st::msgFileSize + 0);
|
||||
int32 nameleft = 0, nametop = 0, nameright = 0, statustop = 0;
|
||||
if (_thumbw) {
|
||||
nameleft = 0 + st::msgFileThumbSize + st::msgFileThumbPadding.right();
|
||||
nametop = st::msgFileThumbNameTop - st::msgFileThumbPadding.top();
|
||||
nameright = 0;
|
||||
statustop = st::msgFileThumbStatusTop - st::msgFileThumbPadding.top();
|
||||
} else {
|
||||
nameleft = 0 + st::msgFileSize + st::msgFilePadding.right();
|
||||
nametop = st::msgFileNameTop - st::msgFilePadding.top();
|
||||
nameright = 0;
|
||||
statustop = st::msgFileStatusTop - st::msgFilePadding.top();
|
||||
}
|
||||
int32 namewidth = w - nameleft - 0;
|
||||
if (namewidth > _statusw) {
|
||||
//w -= (namewidth - _statusw);
|
||||
//namewidth = _statusw;
|
||||
}
|
||||
int32 x = (width() - w) / 2, y = st::boxPhotoPadding.top();
|
||||
|
||||
// App::roundRect(p, x, y, w, h, st::msgInBg, MessageInCorners, &st::msgInShadow);
|
||||
|
||||
if (_thumbw) {
|
||||
QRect rthumb(rtlrect(x + 0, y + 0, st::msgFileThumbSize, st::msgFileThumbSize, width()));
|
||||
p.drawPixmap(rthumb.topLeft(), _thumb);
|
||||
} else {
|
||||
QRect inner(rtlrect(x + 0, y + 0, st::msgFileSize, st::msgFileSize, width()));
|
||||
p.setPen(Qt::NoPen);
|
||||
p.setBrush(st::msgFileInBg);
|
||||
|
||||
p.setRenderHint(QPainter::HighQualityAntialiasing);
|
||||
p.drawEllipse(inner);
|
||||
p.setRenderHint(QPainter::HighQualityAntialiasing, false);
|
||||
|
||||
p.drawSpriteCenter(inner, _isImage ? st::msgFileInImage : st::msgFileInFile);
|
||||
}
|
||||
p.setFont(st::semiboldFont);
|
||||
p.setPen(st::black);
|
||||
_name.drawLeftElided(p, x + nameleft, y + nametop, namewidth, width());
|
||||
|
||||
style::color status(st::mediaInFg);
|
||||
p.setFont(st::normalFont);
|
||||
p.setPen(status);
|
||||
p.drawTextLeft(x + nameleft, y + statustop, width(), _status);
|
||||
} else {
|
||||
p.setFont(st::boxTitleFont);
|
||||
p.setPen(st::black);
|
||||
p.drawTextLeft(_field->x(), st::boxPhotoPadding.top(), width(), lang(lng_edit_message));
|
||||
}
|
||||
|
||||
if (!_error.isEmpty()) {
|
||||
p.setFont(st::normalFont);
|
||||
p.setPen(st::setErrColor);
|
||||
p.drawTextLeft(_field->x(), _field->y() + _field->height() + (st::boxButtonPadding.top() / 2), width(), _error);
|
||||
}
|
||||
}
|
||||
|
||||
void EditCaptionBox::resizeEvent(QResizeEvent *e) {
|
||||
_save.moveToRight(st::boxButtonPadding.right(), height() - st::boxButtonPadding.bottom() - _save.height());
|
||||
_cancel.moveToRight(st::boxButtonPadding.right() + _save.width() + st::boxButtonPadding.left(), _save.y());
|
||||
_field->resize(st::boxWideWidth - st::boxPhotoPadding.left() - st::boxPhotoPadding.right(), _field->height());
|
||||
_field->moveToLeft(st::boxPhotoPadding.left(), _save.y() - st::boxButtonPadding.top() - st::normalFont->height - _field->height());
|
||||
}
|
||||
|
||||
void EditCaptionBox::hideAll() {
|
||||
_save.hide();
|
||||
_cancel.hide();
|
||||
_field->hide();
|
||||
}
|
||||
|
||||
void EditCaptionBox::showAll() {
|
||||
_save.show();
|
||||
_cancel.show();
|
||||
_field->show();
|
||||
}
|
||||
|
||||
void EditCaptionBox::showDone() {
|
||||
setInnerFocus();
|
||||
}
|
||||
|
||||
void EditCaptionBox::onSave(bool ctrlShiftEnter) {
|
||||
if (_saveRequestId) return;
|
||||
|
||||
HistoryItem *item = App::histItemById(_msgId);
|
||||
if (!item) {
|
||||
_error = lang(lng_edit_deleted);
|
||||
update();
|
||||
return;
|
||||
}
|
||||
|
||||
MTPchannels_EditMessage::Flags flags = 0;
|
||||
if (_previewCancelled) {
|
||||
flags |= MTPchannels_EditMessage::Flag::f_no_webpage;
|
||||
}
|
||||
MTPVector<MTPMessageEntity> sentEntities;
|
||||
if (!sentEntities.c_vector().v.isEmpty()) {
|
||||
flags |= MTPchannels_EditMessage::Flag::f_entities;
|
||||
}
|
||||
_saveRequestId = MTP::send(MTPchannels_EditMessage(MTP_flags(flags), item->history()->peer->asChannel()->inputChannel, MTP_int(item->id), MTP_string(_field->getLastText()), sentEntities), rpcDone(&EditCaptionBox::saveDone), rpcFail(&EditCaptionBox::saveFail));
|
||||
}
|
||||
|
||||
void EditCaptionBox::saveDone(const MTPUpdates &updates) {
|
||||
_saveRequestId = 0;
|
||||
onClose();
|
||||
if (App::main()) {
|
||||
App::main()->sentUpdatesReceived(updates);
|
||||
}
|
||||
}
|
||||
|
||||
bool EditCaptionBox::saveFail(const RPCError &error) {
|
||||
if (mtpIsFlood(error)) return false;
|
||||
|
||||
_saveRequestId = 0;
|
||||
QString err = error.type();
|
||||
if (err == qstr("MESSAGE_ID_INVALID") || err == qstr("CHAT_ADMIN_REQUIRED") || err == qstr("MESSAGE_EDIT_TIME_EXPIRED")) {
|
||||
_error = lang(lng_edit_error);
|
||||
} else if (err == qstr("MESSAGE_NOT_MODIFIED")) {
|
||||
onClose();
|
||||
return true;
|
||||
} else if (err == qstr("MESSAGE_EMPTY")) {
|
||||
_field->setFocus();
|
||||
_field->showError();
|
||||
} else {
|
||||
_error = lang(lng_edit_error);
|
||||
}
|
||||
update();
|
||||
return true;
|
||||
}
|
||||
|
||||