1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
|
Qt 4.4 introduces many new features as well as many improvements and
bugfixes over the 4.3.x series. For more details, see the online
documentation which is included in this distribution. The
documentation is also available at http://doc.trolltech.com/4.4
The Qt version 4.4 series is binary compatible with the 4.3.x series.
The Qt for Embedded Linux version 4.4 series is binary compatible with the
Qtopia Core 4.3.x series. Applications compiled for 4.3 will continue to
run with 4.4.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Task Tracker:
http://www.trolltech.com/developer/task-tracker
Each of these identifiers can be entered in the task tracker to obtain
more information about a particular change.
****************************************************************************
* General *
****************************************************************************
General Improvements
--------------------
- Legal
* This version introduces the GPL version 3 as an alternative
license for the Open Source Edition of Qt, in addition to the
existing licenses.
* Updated the GPL Exception to version 1.2, which grants additional
rights to developers using the LGPL version 3.0 and other licenses
for their software.
- Configuration/Compilation
* [102113, 151125] Make it possible to use Qt headers with MSVC's
warning level 4.
* [129841] Make Qt compile with Intel C++ 9.0 and Intel C++ 10 compilers
on Windows.
* [168868] Add experimental support for the Blackfin processor.
* [188167] Fixed a bug in the solaris-cc mkspec that would cause
it to always use RPATH, even when configured with -no-rpath.
* [176029] Added qmalloc.cpp with qMalloc() and qFree() implementation
to make it easier to replace the default container allocators with
custom allocators (by providing your own qmalloc.o(bj) file).
* Enable -reduce-exports automatically on linux-icc* mkspecs when
using version 10.1 of the Intel C++ Compiler for Linux.
* Add experimental support for the AVR32 processor.
* Allow building Qt with -release and the Intel C++ Compiler for
Linux. This required working around several compiler bugs by
turning optimizations off for certain modules. See the compiler
notes for more details.
* Add support for MSVC 2008, and add separate mkspecs for MSVC 2002 &
2003.
* [189185] Avoid quoting the the include and library paths for iconv.
- Documentation and Examples
* The Qt Designer Manual was updated to include new Qt Designer features.
* QtScript module overview was updated with more examples and reference
material.
* [161404] The 40000 Chips demo no longer shifts when clicking the OpenGL
button.
* [188676] Fixed text item moving in Diagram Scene example.
* New demo: Embedded Dialogs
* New demo: Browser
* New example: Graphics View / Pad Navigator
* New example: Item Views / Address Book
* New example: WebKit / Previewer
* New Example: XmlPatterns / Recipes
* New tutorial: Address Book
* Multiple bug fixes for the Torrent Client example.
* Speed-ups in the Ported Asteroids Example.
* [164223] All examples that use resources now include
Q_INIT_RESOURCES to avoid breakage in static builds.
- Translations
* Added a Traditional Chinese translation of the Qt and tools courtesy
of Franklin.
* Added a Spanish translation of Qt courtesy of Enrique Matias Sanchez.
- Signals and slots
* [147681] Added support for 'long long' and 'unsigned long long'
in queued connections.
* [125987] Optimized QMetaObject::activate(), the function that
actually delivers signals to all connected slots.
* [164558] Fixed a bug that caused queued signals to be delivered out
of order (not in the order they are emitted).
* [169554] Added Q_EMIT, to correspond to Q_SIGNAL and Q_SLOT.
- Multithreaded painting
* [66358, 142031] Added support for painting on QImage, QPicture,
and QPrinter in multiple threads. See the Multithreaded
Programming documentation for more details on supported features
and known limitations.
- Embedded QWidget support for Graphics View
* [177204] Added support for using layouts, styles, palettes and fonts,
as well as embedding QWidgets into a QGraphicsScene.
- XML support in QtCore
* The QXmlStreamReader, QXmlStreamWriter and supporting classes
have moved from the QtXml module to the QtCore module. This change is
both source- and binary-compatible with previous versions. New
applications can opt to not link to QtXml when using these classes.
- Printing
Made a number of improvements to printing in Qt 4.4, including
support for setting custom page sizes and custom margins as well as
the ability to programatically enumerate printers via the new
QPrinterInfo class. A couple of new classes, QPrintPreviewWidget
and QPrintPreviewDialog, have been added to make it easy to add a
print preview to an application. The QPrintDialog and QPageSetupDialog
for X11 have been redesigned and are hopefully easier to use.
New features
------------
- XQuery 1.0 and XPath 2.0 support provided through the new QtXmlPatterns
module.
- Qt Help module for embedding documentation into applications.
- QSystemSemaphore provides a general counting system semaphore.
- QSharedMemory provides access to a shared memory segment between multiple
threads and processes.
- QLocalServer class provides a local socket-based server with a matching
new QLocalSocket class.
- QFileSystemModel provides a data model for the local file system. Unlike
QDirModel, QFileSystemModel will fetch directory listings in a background
thread to prevent any locking in the GUI. QFileSystemModel is also much
faster and has a few more features then QDirModel.
- QCommandLinkButton to support Vista style command links on all platforms.
- QFormLayout provides a layout designed for convenient form creation with
the appropriate appearance on different platforms. This class previously
appeared in Qtopia/4.3, but has been integrated into Qt.
- QtConcurrent provides a high level multi-threading API.
- QPlainTextEdit provides a highly scalable plain text editor. It uses
similar technology and concepts as QTextEdit, but is optimized for plain
text handling; e.g. as a log viewer.
- QTextBoundaryFinder is a new class implementing the Unicode text
boundaries specification.
Third party components
----------------------
- Updated Qt's SQLite version to 3.5.4.
- Updated Qt's libpng version to 1.2.25.
- Added CLucene version 0.9.17.
- Added WebKit (see the src/3rdparty/webkit/VERSION file for the version).
- Added Phonon version 4.1.
****************************************************************************
* Library *
****************************************************************************
- General Fixes
* [147201] Assert in debug mode when using QReadLocker, QWriteLocker,
or QMutexLocker with unaligned pointers.
- QAbstractButton
* [190739] Ensure button with the TabFocus policy doesn't receive focus
through others ways.
* [192074] Disable key navigation for buttons in a item view.
- QAbstractItemModel
* [171469] Speed up insertion of rows into a model.
- QAbstractItemView
* [162487] Check canFetchMore() on the model before calling fetchMore().
* [179163] The virtual selectAll() is now called when the user types
"Ctrl+A"
* [181413] Fixed InternalMove for MoveAction-only models.
* [181988, 192114] Made mouse wheel smarter on ScrollPerPixel mode.
* [182248] Trasparent background for the dragged visual.
* [184507] setVerticalScrollMode(ScrollPerItem) can cause the view to
scroll to the bottom.
* Add autoScrollMargin property.
* [162547] Make the current index stay in the viewport when sorting.
* [165404] Make the drop indicator stylable.
* [160611] Ensured that the hover item is updated when dragging over the view.
* [162497] Allow key events to be propagated.
* [186052] Mac: The alternatingRowColors property now honors the
Graphite color setting.
* [202276] Fixed crash when pressing Ctrl+C in a view with no model.
* [202034] Ensured that the editor's geometry is kept up to date when rows
are inserted.
* [204403] Only scroll to the current index on reset if the view is
editing.
- QAbstractProxyModel
* [156789] Fixed a crash when deleting the source model.
* [194765] Made headerData() call mapToSource() when asking for data.
* [195023] Added setData() and setHeaderData() implementation.
- QAbstractScrollArea
* [159949] Fixed a bug where setting the horizontal scroll had no effect.
- QAbstractSpinBox
* [183108] Allowed a spin box to be cleared before it is visible.
* [198687] Always reset modified and undo states of the line edit upon
pressing Enter.
- QAccessible
* [177706] Windows narrator will now read Tooltips properly.
* [182437] Tooltips are now read aloud once instead of twice.
- QAction
* [200823] Fixed regression that caused the tool tip of an action not to
show the shortcut by default.
* [97238] Introduced the iconVisibleInMenu.
- QApplication
* [100630, 153895] Fixed a bug where key press events were always
sent as non-spontaneous events, while the key release event was
spontaneous.
* [194454, 196062] Fixed QApplication::quitOnLastWindowClosed to
work as documented.
* [97238] Introduce an attribute (AA_DontShowIconsInMenus) to control
the default behavior of icons in menus. This obsoletes the
qt_mac_set_menubar_icons() function.
* [201218] Fix bug on Mac OS X where Qt::WA_DeleteOnClose failed to
delete on close.
- QAtomicInt
- QAtomicPointer
* [168853] Introduced QAtomicInt and QAtomicPointer into the public API.
These classes provide a cross-platform API for doing atomic operations.
* Optimized testAndSet*() on PowerPC to not branch in the best case
(when value == expectedValue).
* [197244] Fixed the gcc inline assembler constraints for the PowerPC
implementation.
* [198399] Applied patch from SUSE to add S390(x) support.
- QBoxLayout
* [103626] Added insertSpacerItem() and addSpacerItem().
* [127621] Made setStretchFactor() behave correctly if widget == 0.
- QBrush
* [179308] Fixed a bug which caused QBrush to forget the color if it was
passed in the constructor along with Qt::NoBrush.
* [169502] Fixed a threading issue with setTextureImage().
- QBuffer
* [184730] A TIFF image can now be stored correctly in a QByteArray.
- QByteArray
* [193870] Copy the data of a QByteArray that is taken from
QByteArray::fromRawData() when appending more data.
* [82509] Added QT_NO_CAST_FROM_BYTEARRAY to disable "operator const
char *" and "operator const void *".
- QCalendarWidget
* [181388] Added support for updating the cell of a particular QDate.
* [172053] Fixed palette bug for calendar's buttons.
- QChar
- QCleanlooksStyle
* [194082] Fixed disabled checkbox painted as unchecked.
* [189609] Fixed an issue where QMdiSubWindow could have incorrect
buttons.
* [182806] Retain hover appearance on slider while dragging.
* [180105] Fixed gradient backgrounds shown as black on a pressed
QPushButton.
* [176674] Fixed combobox drop down ignoring custom icon sizes.
* [197691] Made the style work better on older X11 servers without
XRender support.
- QColorDialog
* [142706] use QDialogButtonBox to conform with the style it is running
in.
- QColumnView
* [167408] Added createColumn() to help make subclassing easier.
- QComboBox
* [155578] Improved calculation of size hint for combo box pop-up.
* [183982] Fix bug where the combobox width was not wide enough in some
styles.
* [187744] Made QComboBox behave slightly better when the view is a tree.
* [189444] Allowed separators in the list.
* [190332] Made the popup respect the view's selection behavior.
* Made setEditable(false) explicitly hide the lineEdit, otherwise it may
remain visible when executing a modal dialog immediately afterwards.
* [154884] Fixed a bug where the popup was hidden without calling
QComboBox::hidePopup().
* [169848] Fixed a bug where the combo box did not open as expected when
using a touch screen.
* [153975] Mac OS X: Improved the visual appearance (flash selected item
and fade away when hiding the menu).
* [190351] Fixed setView() for style using SH_ComboBox_Popup.
* [191329] Fixed the height calculation of the popup for custom view.
- QCommonStyle
* [173539] Make the combo label draw according to the combo box's layout
direction and not the application's.
- QCompleter
* [189564] Prevented unselectable items from appearing in the completion
list.
* [180785] Ensured that QCompleter emits activated() after pressing the
Return key.
- QCoreApplication
* [157435] Fixed the posted event implementation to prevent the pending
queue from growing endlessly while a modal event loop is running.
* [132395] Sent DeferredDelete events at the right time. Specifying the
QEventLoop::DeferredDeletion flag (now deprecated) to processEvents()
is no longer necessary.
* [131235] Added QCoreApplication::applicationPid().
* [132859] Don't explicitly set the LC_NUMBERIC locale to "C" on UNIX
systems.
* [187044] Fixed a crash when addLibraryPath() or setLibraryPaths()
is invoked before creating QCoreApplication.
* [161049, 171670] Don't leak the single QThread instance that Qt creates
to represent the main() thread.
* [143743] Added the QCoreApplication::applicationVersion property.
- QCryptographicHash
* [190062] Ensured that calling result() twice returns the same value.
- QDataWidgetMapper
* [194784] Allowed setting NULL values for editors.
- QDataStream
* [196100] Fixed compatibility issue with QCString in Qt3.x streams.
* [196415] Fixed compatibility issue with invalid colors in Qt 3.x
streams.
- QDateTime, QDate, QTime
* [189882] Optimized {QDate,QTime,QDateTime}::fromString() so that it
is about 40% faster than before.
* [193079] Have {QDate,QTime,QDateTime}::fromString() understand
locale-dependent string formats.
* Added enum values to distinguish between short and long formats.
- QDateTimeEdit
* Added properties minimumDateTime/maximumDateTime
* [169916] Added a timeSpec property for QDateTimeEdit
* [178027] Make QDateTimeEdit respect the locale property
* [158950] Disable QCalendarWidget popup when the dateTimeEdit is
read-only.
* [145872] Added a getter and setter for the QCalendarWidget popup.
- QDateEdit
* Don't interpret time-specific formats as special fields in a QDateEdit
and vice versa for QTimeEdit.
- QDesktopServices
* [89584] Added a way to get users Documents, Desktop, Movies
directories.
* [105740] Added a way to determine the location to store data files.
- QDialog
* [174842] Ignore the close event if the reimplementation of reject()
doesn't close the dialog.
- QDialogButtonBox
* [191642] Don't steal the default button if there is one already.
* [196352] Fixed roles of QDialogButtonBox::Abort and
QDialogButtonBox::Ignore.
- QDir
* [172057] Fixed bug when sorting directories containing files larger
than 2GB.
* [177904] Fixed a problem with QDir::tempPath() and QDir::homePath()
returning trailing slashes inconsistently. Now it returns the
absolute path name, without the trailing slash.
- QDirModel
* [176323] Fixed display of files moved by drag and drop (on a QTreeView).
* [196768] Fixed sorting.
- QDockWidget
* [171661] Fixed setTitlebarWidget(0) to reset the native decoration.
* [169808] SizeHint is now taken into account.
* [188583] Fixed a bug making dockLocationChanged signal not always
emitted.
* [193613] Highlighted splitters between QDockWidgets, now go back to
inactive state when the cursor have passed over it.
- QDoubleSpinBox
* [164696] QWidget::locale() is now used for all string-to-number
conversions.
- QErrorMessage
* [189429] Fixed "do not show again" with rich text message.
- QEvent
* [37536] Add QEvent:registerEventType() for obtaining a unique
event type ID.
* [161940] Fix QContextMenuEvent::modifiers() on X11 and Qt for Embedded
Linux to behave like the Windows and Mac OS X. Previously, this
* [166605] A drop event's drop action is now initialized to the drag
manager's current default action.
- QFile
* [107448] Fixed bug where QFile::write() would fail to report an error
on disk full.
* Added map() and unmap() to map files into memory.
- QFileDialog
* [71645] Added a property to hide filter details.
* [174510] Ensured that when multiple files are selected, all of them
will be deleted, not just the current one.
* [172254] selectFile should also set the current directory.
* [185930] getExistingDirectory directory file not updated after
renaming the new directory.
* [164591] Provided a way to set the QDir::filter on the model.
* [180459] Native OS X file dialog forgets last visited directory.
* [184508] Improved speed when showing a lot of files.
* [184508] Improved launch speed.
- QFont
* Add Capitalize font-capitalization feature including small caps.
* [191756] Do not crash when font config finds no fonts on the system.
* [145015] Don't replace '-' characters in font names anymore.
* Fixed a bug where glyphs sometimes showed up in italic for a non italic
font (X11/Embedded Linux only).
* Fixed a bug where xHeight() sometimes returned a wrong number
(X11/Embedded Linux only).
* Added support for word- and letter-spacing.
- QFontComboBox
* Fixed a bug where font name would not be displayed in some cases.
- QFontMetrics
* [179946] Fixed averageCharWidth() to change return value after adding
text to a QPainterPath.
- QFSFileEngine
* [200220] Fixed a potential crash and removed some potential resource
leaks.
* [190377] Fixed a reentrancy bug on all platforms; querying the canonical
path no longer relies on chdir() and realpath().
* [155284] Fixed uninitialized memory problem when calling realpath()
with an empty name on Solaris.
- QGL
* [137573] Fixed drawing of images/pixmaps larger than the maximum texture
size in the OpenGL paint engine.
* [175853] Added new drawTexture member functions for convenient drawing
of textures in QGLWidget, QGLContext, QGLFramebufferObject, and
QGLPixelBuffer.
* [187954] Fixed an issue with missing corner pixels when drawing
rectangles in the OpenGL paint engine.
- QGLContext
* [184996] Made isSharing() return something useful after a QGLWidget has
been reparented under Windows.
- QGLPixelBuffer
* [195317] Make QGLPixelBuffer::hasOpenGLPbuffers() preserve the current
GL context when called.
- QGLWidget
* [128157] QPixmap::grabWidget() now works on a QGLWidget.
* Added support for syncing drawing to QGLWidgets under X11 via the
QGLFormat::setSwapInterval() mechanism. This requires the
GLX_SGI_video_sync extension to be present.
* [183472] Made renderText() respect the currently set GL scissor box
and GL viewport.
* [182849] Fixed a crash on the Mac when renderPixmap() was called on a
multisampled GL context.
* [176618] Don't require depth testing to be enabled for the 3D version
of renderText() to work.
- QGradient
* [178299] Fixed an issue where calling setColorAt twice with the same
position would not replace the existing color at that position.
- QGraphicsItem
* [161160] Speedup when removing children from an item.
* [158799] QGraphicsItem now returns a different scene from
itemChange(ItemSceneChange).
* [127051] Added support for item caching in local and device
coordinates.
* [183996] Fixed a bug caused when items are moved by pressing many mouse
buttons at the same time.
* [192983] Added QGraphicsItem::boundingRegion(), which allows updating
items based on their shape instead of their bounding rect.
* Improved QGraphicsItem::isObscured() and QGraphicsItem::opaqueArea()
speed and accuracy.
* [195916] Fixed crash when deleting an item as it receives a
contextMenuEvent().
* [202476] DeviceCoordinateCache now works with perspective
transformations.
* [202718] DeviceCoordinateCache performance improved greatly when
the cached item does minimal updates.
* [202689] Scrolling works (but is slow) for cached items.
- QGraphicsItemAnimation
* [164587] QGraphicsItemAnimation::reset() has been marked as obsolete.
- QGraphicsLineItem
* [177918] Lines with the same start and end point are now valid, and
rendered as a point.
- QGraphicsScene
* [160463] QGraphicsScene::clearSelection() is now a slot.
* [161284] Added Q_DISABLE_COPY.
* [163854] QGraphicsScene no longer sends events to a disabled mouse
grabber item.
* [176902] Add support for context menu event propagation.
* [176178] QGraphicsScene::sceneRect() now auto-updates also with NoIndex
set.
* [186398] Added a fast QGraphicsScene::clear(), and massive speed-up in
recursive scene destruction.
* [180663] Fixed miscalculated expose rects in QGraphicsScene::render().
* [176124] Ensure that all mouse events that should have a widget assigned
do have a widget assigned.
* [174238] The selectionChanged() signal is no longer emitted twice when
replacing one selection with another.
* [160653] selectionChanged is now emitted when reselecting an already
selected item.
* QGraphicsScene::mouseMoveEvent now receives all mouse move events from
the views, and translates them into hover events for the items. This
allows you to track all mouse move events for the entire scene, without
having to reimplement QGraphicsScene::event() and duplicating the
QGraphicsScene implementation.
- QGraphicsSceneHoverEvent
* [151155] Added support for keyboard modifiers.
* [157222] Added support for lastPos, lastScenePos, and lastScreenPos.
- QGraphicsSceneWheelEvent
- QGraphicsSvgItem
* [171131] Fixed painting error caused by using obsolete pixmap cache
entry.
- QGraphicsView
* [152477] Fix to QGraphicsView's scroll bar range calculation.
* [161284] Added Q_DISABLE_COPY.
* [164025] Mouse press events now propagate through the view if ignored
by the scene.
* New ViewportUpdateMode: QGraphicsView::BoundingRectViewportUpdate
* [180429] Mouse release events propagate properly in RubberBandDrag
mode.
* [176902] Add support for context menu event propagation.
* [180663] Fixed miscalculated expose rects in QGraphicsView::render().
* [187791] QGraphicsView::setScene() now always updates the view
properly.
* [186827] Fixed an infinite loop caused by mouse replay after deleting
items in response to receiving mouse move events.
* [172231] Fixed erroneous clipping of untransformable items by scaled
graphics view.
* Fixed redraw bugs in QGraphicsView background rendering when using an
OpenGL viewport.
- QGridLayout
* [121549] Added itemAtPosition(int, int).
- QGroupBox
* [159480] QGroupBox's clicked() behavior is now the same as QCheckBox.
* [186297] Right-clicking a checkable group box now has no effect, which
is consistent with the behavior of QCheckBox.
* [178797] A checkable group box now correctly updates the sunken state
of its check box.
* Don't call updateGeometry() needlessly from resizeEvent().
- QHash
* [171909] Don't rehash in operator[] and insert() when the key already
exists -- to avoid subtle bugs when iterating on a QHash. (This is
documented as being undefined, since these functions are non-const,
but it's easy to avoid the rehashing.)
- QHeaderView
* [173773] QHeaderView now updates properly upon sorting a column.
* [192884] When the model emits layout changed unhide old hidden rows
and hide new hidden rows.
* [170935] QHeaderView now updates properly when swapping columns.
* [157081] Made headerviews semi-transparent while dragged.
* [148198] Optimize hiding sections when the resize mode is ResizeToContents.
* [168128] Fixed problem where the last section was resized when the last two sections are swapped.
* [168209] Update the header section when the font size changes.
- QHostInfo
* [194539] Fixed the ordering of IP addresses returned by the
host-lookup procedures. Qt respects the order supplied by the
system libraries.
* [176527] Fixed a problem in QHostInfo that would cause it to
print warnings if it was used before QCoreApplication is created
- QHttpHeaders
* [104648] Fixed QHttpHeaders to not change the order or
capitalisation of headers received or sent. QHttpHeaders is now
case-insensitive but case-preserving
- QHttp
* [181506] Fixed a bug that would cause QHttp to emit a warning
from QIODevice when connecting to some servers.
* [190605] Fixed a memory leak.
* [175357] Fixed a deadlock when trying to parse an empty HTTP
reply which did not contain Content-Length: 0 (such as those
found in 304 replies)
* [170860] Fixed a problem which would make QHttp emit the done()
signal too soon (before it was finished).
- QIcon
* [168488] Reduce memory usage if you call addPixmap severals times with the same arguments.
- QImage
* [176566] Fixed problem in scale() which would cause downscaled images to
become darker due to precision loss in the image scaling.
* [181265] Fixed crash in scale() when downscaling very large images.
* Added new image formats: QImage::Format_ARGB8565_Premultiplied,
QImage::Format_RGB666, QImage::Format_ARGB6666_Premultiplied,
QImage::Format_RGB555, QImage::Format_ARGB8555_Premultiplied,
QImage::Format_RGB444, QImage::Format_ARGB4444_Premultiplied,
and QImage::Format_RGB888.
* Added support for the ICO image format (from Qt Solutions)
* Fix drawing of text into a QImage on the Mac so that the native
CoreGraphics engine is used. This makes aliased text, or text with
a small point size, look much better.
* [188102] For Indexed image, fixed setColor() to expand the
colortable if necessary. Made colortable manipulation more robust.
- QImageReader
- QImageWriter
- QInputDialog
- QIntValidator
* [179131] Reverted QIntValidator's out-of-range semantics to Qt 4.2
behavior, at popular demand.
- QItemDelegate
* [175982] Escape did not close the editor if the application had registered
escape as a shortcut.
* [177039] Handle double precision properly.
* Don't finish editing if the validator is still in intermediate mode.
- QItemSelectionModel
* [169285] Items are now deselected properly.
* [192147] Fix an off-by-one bug in QItemSelectionModel
- QLabel
- QLayout
* Cache sizeHint() and minimumSizeHint() of widgets in a layout using
the internal class QWidgetItemV2, leading to significant performance
gains for widgets that have an expensive size hint implementation.
- QLibrary
* [155884] Fixed QPluginLoader to not load plugins with unresolved symbols.
* [170013] Make sure that libraries are opened with RTLD_LOCAL by default
on *all* platforms. (On Mac it was RTLD_GLOBAL by default). This should
make plugin loading more consistent.
* [190831] Fixed crash when calling loadHints on a default constructed
QLibrary.
* [155109] The real error message was discarded if the library existed,
but failed for another reason.
- QLineF
* [170170] Introduce new member function angleTo() which returns the angle
between two lines, also taking the direction into account.
* [174122] Added new member functions in QLineF for setting and getting
the angle of the line, as well as translating a line, and constructing
a line from polar coordinates.
- QLineEdit
* [151414] Add protected function to access the cursor rectangle.
* [153563] Don't show blinking cursor on read only line edit with input mask
* [174640] Emit editingFinished() when the user open a menu.
* [178752] Reverted to Qt3's behavior of using an arrow cursor instead of
a beam cursor when the QLineEdit is read only.
* [180999] Old selection now cleared upon activating a window.
* [188877] Fixed painting error resulting from pasting into a selection.
- QLinkedList
* Add QLinkedList::removeOne(), which removes the first occurrence of a
value from the list.
- QList
* Add QList::removeOne(), which removes the first occurrence of a value
from the list.
- QListView
* [158122] Wordwrap in ListMode
* [177028] Make sure that the scrollbars is automatically removed when the
model has less than two items.
* [186050] Make sure the content size is updated when moving item.
* [182816] Combine wordwrap and text eliding.
- QListWidget
* [199503] Fixed a crash when calling clear inside a slot connected to
currentItemChanged.
* [159792, 184946] Keyboard navigation fixed with non uniform item sizes.
* [255512] Add function to allow setting the current item without selecting it.
- QLocale
* [161049] Fixed a couple of static memory leaks in QLocale.
* Added the following functions to QLocale:
QString toString(const QDateTime &dateTime, FormatType format = LongFormat) const;
QString toString(const QDateTime &dateTime, const QString &format) const;
QString dateTimeFormat(FormatType format = LongFormat) const;
* Added the following enum values to QLocale::QueryType:
DateTimeFormatLong
DateTimeFormatShort
DateTimeToStringLong
DateTimeToStringShort
- QMacStyle
* [142746] Now respects the QComboBox::iconSize property.
* [184566] Make sure we pick up changes to QPushButton::setDefault().
* [174284] Don't truncate text on tabs in the small and mini size.
* [170971] Don't try to draw a mini scrollbar as it doesn't exist, draw a small one instead.
* [170977] Correct checkmarks for small and mini non-editable comboboxes.
* [170978] Prevent mini push buttons from being clipped.
* [202959] Draw the correct number of tickmarks for sliders.
- QMainWindow
* [178510] Context menu is not shown if all toggle view actions are invisible.
* [195945] Fixed resizing of QDockWidgets in QMainWindow without using any
central widget.
* [196569] Don't override the cursor set by the user with setCursor when hovering dock widgets.
- QMdiArea
* [155815] Fixed a bug causing sub-windows to overlap when tiling them.
* [148183] Added support activation order.
* [153175] Added support for tabbed workspace.
* [182852] Don't overwrite mainwindow title.
* [189758] Fixed a bug causing sub-windows to be squeezed when tiling them.
* [202657] Fixed focus issue on dockwidget when activating the main window.
- QMdiSubWindow
* [198638] Fixed so that minimumSize() and minimumSizeHint() was respected (it was
possible to resize the window to a smaller size earlier).
* [171207] Added tooltips for the buttons in the title bar.
* [169874, 47106] Added support for switching between sub-windows using Ctrl-Tab.
* [169734] Added an access function to QMdiArea.
* [192794] Fixed a bug causing installed event filters to be removed after maximizing a sub-window.
- QMenu
* [165457] Fixed torn-off QMenus to have the correct stacking order.
* [167894] Fixed focus management when activating an action from the keyboard.
* [167954] Increased the size of the tear-off handle.
* [172423] Mac OS X: Improved the visual appearance (flash selected item and fade away when hiding the menu).
* [183777] Fixed a bug with tear off menu making impossible to tear some menu off.
- QMenuBar
* [193355] Fied bug with action plugged in menu which did not return to their normal state
after being clicked
* [194677] Fixed a bug causing the corner widgets to be laid out incorrectly when adding them right
before the menu bar was shown.
- QMessageBox
* [176281] By default, if there is exactly one button with the RejectRole or
MessageBox::NoRole, it is now made the escape button.
* [181688] Better look with setInformativeText.
- QMetaObject
* [197741] Fixed a memory leak in QMetaObject::invokeMethod() when
called with unregistered data types.
* [171723] Support for 'unsigned' type in the meta-object system.
- QMetaType
* [179191] Added QMetaType::unregisterType() for unregistering a metatype.
- QMimeData
* Added a removeFormat() method.
- QMngHandler
* [155269] QMngHandler now initializes image backgrounds properly.
- QModelIndex
* [176068] optimize QModelIndex operator<
- QMotifStyle
* [185649] Fixed incorrect positioning of itemview frames in reverse mode.
- QMutex
* [151077] Optimized QMutex locking path to be comparable to Win32
CRITICAL_SECTIONs.
* [186088] Clarify documentation of lock() and tryLock() to be
more explicit about the behavior of these functions in recursive
vs. non-recursive mode.
- QNetworkInterface
- QNetworkProxy
- QObject
* [144976] Fix QObject::property() to return a QVariant that can be
converted to an enum if the enum is known to QMetaType.
* [171612] Fix QObject::removeEventFilter() to work as documented.
* [172061] convert() now return false if the result is invalid for date types.
* [184003] Fix a crash in QObject::queryList() when called from an
object's destructor.
* [173218] Document deleteLater()'s behavior when called before
QCoreApplication::exec().
- QOpenGLPaintEngine
* [183995] Reset the GL_TEXTURE_ENV attribute and pixel transfer modes to the
default values when QPainter::begin() is called.
* [174273] Fixed the annoying "Unable to compile fragment programs" problem
by adding a GL program cache, and compiling the programs on demand.
- QPainter
* [121105] Added drawEllipse overload that takes a center point and two
radii.
* [124248] Fixed some rounding issues causing inconsistencies between
text and line drawing.
* [142470] Fixed performance issue with non-cleartype text drawing on
Windows when doing several calls to QPainter::drawText().
* [142514] Fixed bug in X11 paint engine where a pixmap drawn
at non-integer coordinates would be drawn at different offsets depending
on whether opacity was set or not.
* [156787] Fixed problem with SmoothPixmapTransform and source rects in
drawImage and drawPixmap which would cause color bleeding from pixels
outside the source rect at the image borders.
* [156964] Improved accuracy of arc drawing, ensuring that arcs drawn
with same control rect but different sweeps are still coinciding.
* [162153] Fixed bug caused by integer overflow in QPainter::boundingBox
when passing a very large rectangle.
* [163605] Introduced new drawRoundedRect API with support for absolute
coordinates for the corner radii.
* [166702] Fixed some potential floating point exceptions in raster
paint engine line drawing.
* [167890] Prevent crash when drawing zero-length lines; these are now
drawn as points.
* [169711] Ensured that calling setClipRect with negative width/height
is treated as an empty clip region.
* [170208, 170213] Fixed some bugs with dashed line drawing and dash
dash offsets in the mac paint engine.
* [175912, 176386, 194360] Fixed some precision issues with projective
transformed pixmaps and images.
* [179507] Ensure that the final stop color is always used beyond the
radius when using a QRadialGradient.
* [180245] Fixed bug which caused setOpacity to be ignored when drawing
transformed RGB32 images.
* [182658] Fixed a problem with drawPoint in X11 paint engine which would
cause a one-pixel point to sometimes be drawn as two pixels.
* [184746] Fixed performance regression in drawEllipse() with raster paint
engine.
* [188012] Fixed stroking of empty rectangles in X11 paint engine.
* [190336] Fixed text drawing performance issue on Windows when using
setPixelSize to draw large fonts.
* [190394] setOpacity() now correctly paints transparent regions when
outputting to PDF.
* [190634] Fixed bug where drawLine would fill part of the paint device
instead of just drawing a line.
* [190733] Fixed some precision problems with miter joins and curve
segments which could cause ugly painting artifacts.
* [191531] Fixed a bug with alpha or pattern brush drawing to mono images.
* [191761] Fixed rendering of transformed ObjectBoundingMode gradients.
* [199234] Fixed a bug causing fillRect with a gradient fill to not work
with ObjectBoundingMode gradients in the raster paint engine.
* Introduced a new rasterizer for aliased drawing to address performance
and precision issues in the existing rasterizer.
* Remove warnings emitted when setting Source or SourceOver composition
modes on certain paint devices.
* [192820] Fix drawImage()/drawPixmap() with a source rect parameter outside
of the range of the source image dimensions.
* [183745] Fixed setting font point sizes < .5, would in some cases cause
the font size to default back to 12 points.
* [157547] Fixed inconsistent pen styles for DashLine, DotLine, DashDotLine
and DashDotDotLine across Win/Linux.
* [143526] Fixed a problem with drawing text or shapes that were drawn
with a very large scale factor. Typically you would get a crash after
memory was exhausted.
* [186070] Fixed potential integer overflow when drawing texture or pattern
brushes with a transform that has a small scale.
* [200616] Fixed bug causing transformed cosmetic pens with width > 0 and a
dash pattern to be partially or completely clipped (raster engine).
* [206050] Fixed QImage::scale with a SmoothTransformation to handle alpha
channel correctly when scaling.
- QPainterPath
* [121105] Added addEllipse overload that takes a center point and two
radii.
* [181774] Remove assert that could occur when calling pointAtPercent()
with parameters close to 0 or 1.
* [189695] Fixed bug relating to 360-degree arcs and winding fill.
* [187779, 187780] Fixed some bugs in intersects() and contains() when
dealing with paths with multiple subpaths.
* [191706] Fixed intersects(QRectF) for paths that represent vertical or
horizontal lines.
* [193367] Introduced simplified() to simplify paths with multiple
subpaths and/or self-intersections.
* [206160] Modify QPainterPath::operator== to do point comparisons with
an epsilon relative to the painter path's bounding rect size.
- QPainterPathStroker
* [174436] Fixed some bugs relating to dash offsets and dashing of
paths with multiple subpaths.
- QPalette
* [170106] Added QPalette::ToolTipBase and QPalette::ToolTipText.
- QPicture
- QPixmap
* [164116] QPixmap::x11Info() didn't report the correct depth when
the pixmap depth and the desktop depth was different.
- QPixmapCache
- QPlastiqueStyle
* More native appearance of button, combobox, spinbox and slider.
- QPolygon
* [163219] Added missing datastream operators to QPolygon.
- QPrintDialog
* [182255] Don't ask whice to overwrite axisting file.
* [183028] Changed to default for maxPage() to INT_MAX.
- QPrinter
* PDF engine now supports hyperlinks.
* [180313] Fixed a bug where QPrinter could not be used more than once
per instantiation.
* [121907] Change begin() to properly return 'false' when the file we
want to write to can not be written to.
* [189604] Make the pdf printer capable of having a different page size
and orientation for each page.
* [99441] Add setPaperSize(const QSizeF &paperSize, Unit unit).
* [182245] Make pageRect() return consistent values across
Mac/Win/Linux when fullPage() is set, and fix an off by one error in
the width()/height() functions on the Mac.
* [156508] PS/PDF generators: Correctly generate grayscale output when
requested.
- QPrintEngine
* [193986] Fixed the Trolltech copyright date on PDF files
- QProcess
* [162522] QProcess now emits stateChanged() consistently for all state
changes.
* [153565] Add define to make it compile with QNX RTOS.
* [196323] Try to unregister SIGCHLD while Qt is unloaded.
- QProgressBar
* [189512] sizeHint() doesn't depends anymore on PM_ProgressBarChunkWidth
- QProgressDialog
* [190318] Use the size of the label if setMinimumSize() and setLabel()
are called.
* [198202] Wixed crash when calling setLabel(0).
- QPushButton
- QReadWriteLock
* [131880, 170085] Add support for recursive read-lock
support. See the not below in the Important Behavior Changes
section.
- QRect
* Fixed a bug in normalized() when width() == 0 and height() < 0
or vice versa.
- QRectF
- QRegion
* Added numRects() which returns the number of rectangles in the region.
* [193612] Various optimizations for regions consisting of only one
rectangle.
- QResource
- QScriptEngine
* [200225] Made uncaughtExceptionBacktrace() return a correct backtrace
in the case where the value thrown is not an Error object.
* [202454] Made QScriptContext::isCalledAsConstructor() return the right
result for constructors registered with newQMetaObject().
* [198166] Made canEvaluate() handle C-style comments correctly.
* [202606] Made it possible to invoke slots with const QObject* arguments.
* [200599] Removed the need to register the metatype-id of QObject-derived types
before they can be used as arguments to slots where the type occurs
in the signature.
* [185580] Fixed a bug with automatic semi-colon insertion that caused the
prefix ++ operator to behave incorrectly.
* [190991] Implemented iteration for arguments objects.
* [175697] Made conditional function declarations have the same semantics as in
other popular ECMAScript implementations.
* [176020] Fixed a crash that occurred when the left-hand side of an assignment
was an object literal.
* [176020] Fixed a crash that occurred when an if-statement inside a function
contained a return statement in the false-branch but not in the
true-branch, and the function didn't contain any more statements.
* [182578] Fixed a bug that caused automatic QList<int>-to-QScriptValue
conversion to fail.
* [163318] Added abortEvaluation() function.
* [167711] Added qScriptConnect() and qScriptDisconnect() functions, so that
a signal can be connected to a script function from C++.
- QScrollArea
* Fixed an issue with child widgets with heightForWidth sizing behavior.
- QScrollBar
* [178919] Fixed a bug where the slider kept moving after the mouse button was released.
- QSemaphore
- QSettings
* [199061] Don't use more permissions than we have to, when opening the registry.
* [142457] Preserve the order of keys in .ini files when regenerating them.
* [186232] Unix and Mac OS X: OR the needed permissions flags with the
default flags (instead of overriding them).
* [184754] Hande out-of-disk-space condition more smoothly, by keeping the
old .ini/.conf file if possible (instead of trashing it).
* [189589] Don't create empty directories when accessing QSettings read-only.
* [182712] Added QSettings::setDefaultFormat(), defaultFormat(), and
format() to give more control over the format of QSettings objects
created using the default constructor.
* [183068] Added QSettings::scope(), applicationName(), and
organizationName() for retrieving the values passed to the constructor.
- QShortcut
* [141646] Add ShortcutContext::WidgetWithChildrenShortcut context, for shortcuts
which are valid for a widget and all it's children.
- QSize
* [172712] Fixed bug in QSize::scale() when passing INT_MAX as height and
KeepAspectRatio as mode.
* [191533] Fixed bug in QSize::scale() where scaling a size with zero
width or height would cause a division by zero.
- QSizeGrip
* [193199] Made the size grip always respect height-for-width on all
platforms.
* [161173] Fixed a bug causing the size grip to be visible when it shouldn't be.
* [184528] Windows: Fixed a bug causing a mouse press event not to be sent.
* [193350] Fixed a bug with QVBoxLayout.
- QSlider
* [180474] Fixed regression causing a tick mark not to be shown at the max value for
certain common cases.
- QSocketNotifier
- QSortFilterProxyModel
* [162503] Call mapToSource when mapping from proxy to source indexes.
* [146684] Allow the original order of the source model to be restored.
* [199518] Don't assert if the source model emits unbalanced change signals.
* [202908] dropMimeData incorrectly maps when row is rowCount(parent).
- QSpinBox
* [157520] Adopt the special value text when the value is explicitly set to the
minimum value with the keyboard
* [164696] QWidget::locale() is now used for all string-to-number conversions.
- QSplashScreen
- QSplitter
* [169702] Respect the minimum size of widgets.
* [187373] Ensure that widgets are properly initialized before being added to a QSplitter.
- QSql
- QSqlDatabase
* [129992] Make it possible to retrieve the connection name from a connection.
Use the connectionName() function.
* [143878] Give a warning if there is no QCoreApplication instance (required
when using a plug-in driver).
- QSqlDriver
* [141269] Add support for asynchronous database event notifications.
- QSqlQuery
* [157397] Set an error if QSqlQuery is used with an invalid database
connection.
* [122336] Support queries returning multiple result sets. Use the
nextResult() function.
* [149743] Fixed bug where seek() to a record which was not the next one
returned true, but the data could not be retrieved.
* [186812] Improved error handling for exec().
- QSqlQueryModel
- QSqlRelationalTableModel
- QSqlTableModel
* [160135] Emit headerDataChanged when removing rows when using the
OnManualSubmit edit strategy.
- QSslCertificate
* [186791] Fixed wildcard support in QSslCertificate::fromPath().
- QSslCipher
- QSslError
- QSslKey
- QSslSocket
* [190133] Fixed security hole in certificate verification.
* [186077] Fixed bug in ASN1 time parsing.
* [177375] Added support for peer verification.
* [191705] Fixed crash on remote disconnect.
* [177285, 170458] Enabled run-time resolving of OpenSSL libs also in
static Qt builds. Enabled by default, with configure option to force
(static) linkage.
- QStackedLayout
- QStackedWidget
* [124966] Honor QSizePolicy::Ignored in pages like we did in Qt 3.
- QStandardItemModel
* Improved general performance
* [133449] Improved setData() performance
- QStatusBar
* [194017] Ensure that explicitly hidden Widget in the status bar stay invisible.
- QString
* [202871] QString::sprintf() crashed with size_t format.
* [193684] Optimized common case in QString::replace(int, int, QString).
* [190186] Handle multiple-digit %n args in QString::arg(QString,
QString, ...) gracefully.
- QStringListModel
* [158908] Add MoveAction to the default supportedDropActions
* [180184] sort() was not updating the persistant model index's
- QStyle
* [127923] All implementations of QStyle::subControlRect() now respect QStyleOption::rect for
spin boxes.
* Added SH_SpinBox_ClickAutoRepeatThreshold which used to be hardcoded in QAbstractSpinBox
- QStyleOption
- QSvg
* [185844] Fixed parsing of the gradientUnits attribute to support
objectBoundingBox for gradients.
* [161275] Fixed parsing of repeatCount attribute for animateColor
and animateTransform tags.
* [176835] Fixed a memory leak in QSvgGenerator.
* [182196] Fixed problem in QSvgGenerator which would cause gradient
fills to be stored as images instead of using native SVG gradients.
* [187994] Always encode generated SVGs in UTF-8, and specify that
in the xml tag.
* [188847] Fixed a crash when an SVG file contains empty url keywords.
* [190936] Ensure properly sized viewport and viewbox, even when
the paint device does not have a size (such as QPicture).
* [191353, 192220] Fixed a couple of floating point exceptions occuring
when rendering certain SVGs containing curved paths.
* Added correct default attribute values for SVG gradients.
- QSyntaxHighligher
- QSystemTrayIcon
- QTabBar
* [182473] Fixed a bug causing the tabs to stay unchanged after calling setElideMode().
- QTableView
* [192919] Drag-selection from QTableView now respects single-selection mode.
* [172201] Painting errors when there are multiple regions that overlap that need to be painted.
* [148565] setSpan() and other spanning operations is slow when there are a lot of spans.
* [186431] Fix bug in wrapping to the next/previous line while doing cursor navigation.
* [189251] corner widget is hidden with header, but not unhidden
* [196532] Fixed bad repaint with hidden header and scrollPerItem.
* [158258] Add clearSpanns() function.
- QTableWidget
* [255512] Add function to allow setting the current item without selecting it.
- QTabWidget
* [159433] Emit currentChanged() when the first tab is created.
* [171464] QTabWidget::minimumSizeHint() now respects the orientation.
* [188357] Fixed a bug causing the corner widget to be displayed incorrectly.
- QtAlgorithms
* [304394] qBinaryFind() can potentially end up in an infinite loop with large collections
- QTcpSocket
* [149200] Fixed crash when using QTcpSocket without constructing
Q(Core)Application.
- QTemporaryFile
* [192890] Fixed resize bug on Windows.
* [194130] Fixed creation of temp files in toplevel directories on
Windows.
- QTextBrowser
* [166040] Detects the right format when calling setText() severals times.
* [177036] Fix handling of encoded urls.
* [169621] Fixes clearHistory() removes all history items except the first,
while it should keep the last entry.
* [176042] Fix selectAll to sometimes show focus frames instead of selected
text.
- QTextCodec
* [169065] Make calling QTextCodec::setCodecForLocale() with NULL
reset codecForLocale() to the default, instead of causing a crash.
* [167709] Improved support for cp932 codec.
* [185085] Make sure every codec has a unique mibEnum
* Added UTF-32 codecs
- QTextCursor
* [179634] Fixes loosing of x position when using vertical navigation
in a not yet fully layed out document.
* [178499] Add functionality to interpolate inside the glyph size if it
takes multiple characters to decide on the position.
* [182914] '/' is now considered a word separator.
* Faster QTextCursor::blockNumber().
- QTextDecoder
- QTextDocument
* [135133] Add proper support for the background attribute of HTML
tags, which enables specifying background images.
* [148847] Add support for padding-left, padding-right, padding-top,
and padding-bottom for table cells in the HTML import.
* [169724] Added API for changing the indent width in a QTextDocument.
* [173258] Fixed bug in text layout of tables with row spans and
empty cells.
* [174405] Added support for the border-width css property in the HTML
import.
* [176162] Fixed bug in HTML import which would cause block properties
of empty paragraphs to be transfered to following paragraphs.
* [179330] Fixed performance problem when a maximum block count is reached
which caused the whole document to be relayouted.
* Numerous fixes in the import of malformed HTML.
* QTextDocument::print() now preserves formats set by a syntax highlighter.
* Added QTextDocument::firstBlock() and lastBlock() for convenient iteration
* Added QTextDocument::undoCommandAdded() signal.
* [189691] Fixed bug in HTML image tags showing in incorrect width/height
when only one was provided.
* [193122] QTextTable::removeRows() correctly removes one row after a
mergeCells()
* [55520] Fix bi-directional text showing correctly when mixed with tabs.
* [170376] Fixes text layout QTextLine::setNumColumns(1) combined with
alignment not left
* [177024] Fixed bug in definition of ¤t; entity.
* [176898] QTextDocument loses UndoRedo stack when setting it on QTextEdit by
calling QTextEdit::setDocument()
* [180657] QTextDocument::documentSize() returns an incorrect width when there
is a long line with only spaces.
* [180430] Stop compression of space after an image tag.
* [154330] Implement Right, Justified and Center tabs and make Left tabs
behave as expected in all cases.
* [196744] Fixes colspan making a table cell multiply given user width.
* [197769] Fixed wrong modified state while undo/redo.
* Added QTextDocument::findBlockByNumber() and QTextBlock::blockNumber().
* Added QTextDocument::revision() and QTextBlock::setRevision()/revision().
* Added QTextBlock::setVisible()/visible() and QTextCursor::setVisualNavigation()/
visualNavigation().
- QTextDocumentFragment
- QTextEdit
* [80240] Fixed text color bug when creating a text edit with a disabled
parent widget that is then reenabled.
* [104778] Added convenience functions for getting/setting the background
color of text.
* [150562] Wrap correctly the text in a <table> when the flag
WrapAtWordBoundaryOrAnywhere is set.
* [165610] Fixed bug where a text fragment's underline would be drawn
too long.
* [166486] Fixed bug which caused the cursor to not be shown when
setting the cursor flash time to 0.
* [190852] Fixed a bug which caused the font sizes in tables to be wrong
in QTextEdit documents exported to HTML.
* Many performance improvements
* [190723] Fix problem where the bullet might disappear if there was an
extra selection selecting the word next to the bullet.
* [182200] Make the selectionChanged signal be emitted when pressing
"Ctrl+A" and there is already a selection present.
* [188589] Fixes regression in QTextEdit::keyReleaseEvent where it makes
the release events not be ignored when unused.
* [175825] Allow stopping auto-scrolling feature by moving the cursor
to a position other then the last position.
* [177151] Fix the "Copy Link Location" is always disabled in context
menus created with createStandardContextMenu()
* [182180] The value of cursor width desktop settings on windows is now
respected.
* [108739] Added DnD scrolling and made selection scrolling smoother.
* [202319] More precise QTextEdit::cursorRect().
* [181572] Accept Key_Up and Key_Down ShortcutOverride events.
- QTextFormat
* Fixed bug which caused QTextCharFormat::font() to return a wrong font
after changing font-unrelated properties in QTextCharFormat.
* [181177] Fix text directionality changing.
- QTextLayout
* Support WrapAtWordBoundaryOrAnywhere with QTextLine::setColumns.
* [188594] Make nextword and previous word be more synchronous by making
them stop at the same word boundaries.
- QTextStream
* [178772] setCodec() take effect immediatly even on open stream.
* [180679] Implemented AlignAccountingStyle.
* Add UTF-32 autodetection
- QTextTable
- QtGlobal
* [186969] Fixed theQT_NO_WARNING_OUTPUT define to work properly.
* qFuzzyCompare() is now part of Qt's API and is public.
- QThread
* QThread is no longer abstract. The default implementation of
QThread::run() function now calls QThread::exec().
- QThreadStorage
- QTimeEdit
- QTimeLine
* Add CosineShape.
- QTimer
- QToolBar
* [159715] If the main window is to small to contains the extension, show it in a menu.
* [179202] Toolbars can be resized by dragging them with the mouse.
* [175325] Changing toolButtonStyle on floating toolbars is handled correctly.
* [187996] Ensure that invisible action are invisible in the toolbar.
* [191727] Fix layouting issue with widgets on the toolbar.
- QToolBox
- QToolButton
* [QToolButton] Emit triggered(QAction*) on the activation of the default action even if
triggered from the menu.
- QToolTip
* [183679] Fixed problem of tool tip being closed when pressing certain keys.
* [191550] Fixed a regression causing the palette not to be updated after calling
QToolTip::setPalette.
* Added functions text() and isVisible().
* Fixed QToolTip::showText() with rectangle, it always created a new tip.
- QTransform
* [178609] Fixed division by zero in QTransform::mapRect when passing an
invalid QRect.
* Fixed problem with QTransform::inverted() returning the identity matrix
for transforms with a low scale factor.
- QTranslator
* [168416] Make it possible for QTranlator to open qm files generated with msgfmt.
(regression from Qt3)
- QTreeView
* [41004] Deleting a directory will delete all of its children.
* [174627] Moving left towards a custom root index now works correctly.
* [154742] Add property to hide the header
* [166175] Improve the performance of hide() and isHidden()
* [166175] Improve the performance of expanded() and isExpanded()
* [181508] adding a row to a item that is visible and not expanded wont update the '+'
* [179635] Incorrect row height if column with a multi-line item is not visible when tree is first shown.
* [187745] When the context key is pressed first check for a micro focus, but if that isn't valid then go to the mouse cursor position.
* [188862] Crash if a parent index of the root index in the view is removed
* Improving performance by reduce the number of calls to model->parent()
* [167811] Improve insertion speed
* [192104] scrollTo(PositionAtCenter) can scroll beyond the item if item is at 0
* [168237] Fixed selection when using SelectItems selection behavior and ExtendedSelection selection mode.
* [171902] Expansion is not managed correctly when the 1st column is hidden.
* [130628] Add expandsOnDoubleClick property.
* [189956] Make scrollTo() scroll correctly when the scrollHint is PositionAtBottom.
* [185068] Update editor geometries when columns are moved.
* [120922] Mac OS X: Improved the selection behavior.
* [197650] Fixed spanning items in "right to left" layouts, or if the first column is
moved in another position.
* [204726] Don't assert when sorting an unchanged tree.
* [185994] Introduce a style hint that describes how the view should treat empty areas.
- QTreeWidget
* [172685] When setting flags don't do anything if the new flag is the same as the old.
* [162736] Fixed potential slowness in QTreeWidget::isItemSelected()
* [167811] Improve insertion speed
* [255512] Add funtion to allow setting the current item without selecting it.
* [183566] Make rows containing widgets resize correctly.
* [189071] Make it possible to disable drop dirrectly on the viewport.
* [192840] Only paint disabled cells as disabled, not the entire row.
* [191329] The checkable items are now checkable even in RightToLeft mode.
- QTreeWidgetItemIterator
* [172275] Optimize QTreeWidgetItemIterator to not query various states
unless the user explictly specified the corresponding flags.
- QUdpSocket
- QUndoStack
* [143285] Added API to access individual commands in the undo stack.
- QUrl
* [162669] Fixed bug in QUrl::setAuthority() when input ends with a digit.
* [199967] Fixed a regression from Qt 4.4.0 Technical Preview 1
that caused isEmpty() to return true on non-empty URLs in some cases.
- QValidator
- QExplicitlySharedDataPointer
* A new reference counting pointer which doesn't perform copy on write.
- QVariant
* [186447] Do not call qFatal() when QVariant::load() enconters a UserType
that's unknown to the meta object system.
* [170901] Compare values _and_ keys in QVariant::operator==() when
applied to maps.
- QVarLengthArray
* [177708] Fix crash in QVarLengthArray::append() for types with a
non-trivial constructor (e.g., QString).
- QVector
* [161376] Fix unitialized read reported by Valgrind in QVector<T> for
sizeof(T) < 4.
- QWaitCondition
* [106086] Add support for QReadWriteLock to QWaitCondition::wait().
- QWidget
* [323] Add the Qt::WA_ShowWithoutActivating attribute, which can
be used to show a window without activating it.
* [176809] When using the Qt::PreventContextMenu policy, the
context menu key should be sent to the widget (instead of
consuming the event).
* [83698] Introduce QWidget::setWindowFilePath() that allows setting a
proxy icon on the mac and sets the window title if the window title
hasn't been set previously.
* X11/Win: Added support for non-native child widgets.
* [173044] Added support for rendering widgets before they are shown.
* [152962] Fixed a bug causing the widget to repaint itself twice when calling show().
* Added a render() overload taking an arbitrary QPainter.
* [183466] Fixed a bug where the mouse button release event was sent to wrong widget
when having a mouse grabber.
* [177605, 171333] Windows: Fixed a bug causing painting artifacts when using the
Qt::WA_PaintOnScreen attribute.
* [141857] Fixed a bug causing painting artifacts when using the Qt::WA_OpaquePaintEvent attribute.
* [198794] Fixed wrong calculation of the target offset in render().
* [180009] Fixed order dependency of setWindowFlags() and setWindowTitle() on Windows.
* [155297] Avoid crash in QWidget::setLayout() if the layout already has
a parent.
- QWidgetAction
* [193061] Fixed setEnabled that has no effect.
- QWindowsStyle
* [162326] Removed a warning when rendering to small rectangles.
- QWindowsXPStyle
* [189527] Fixed incorrect tab indentation on XP/Vista styles.
* [177846] Fixed setAutoRaise beeing ignored for tool buttons.
* [168515] Allow changing the background color of a disabled spinbox.
* [165124] Fixed context help button beeing ignored for QMdiSubWindows.
- QWindowsVistaStyle
* [164016] More native menu borders on Vista.
* [168611] Allow progress bar animation to complete after reaching 100%.
- QWizard
* [177022] Respect the minimum and maximum size.
* [189333] The (re)size behavior is now correct for Windows Me.
* [183550] Fixed wrong stretch factor for a wizard page in the interal layout.
* [166559] Honor isAcceptableInput().
* [170447] Make sure that the virtual QWizard::nextId() function is
called from QWizardPage::isFinalPage().
- QWizardPage
- QXmlStreamReader
* Added convenience function prefix() to the reader and the attributes, previously
we only had name() and qualifiedName().
* Added more DTD reporting.
* Added QXmlStreamEntityResolver for undeclared entities.
* [179320] Fixed wrongly reported premature end of document for non-recoverable errors
* [192810] Fixed namespace declarations in DTD attribute lists.
* Add UTF-32 autodetection
- QXmlStreamWriter
* Improvements to conformance to XML 1.0
* Added autoFormattingIndent property to customize the auto-formatted output.
* [18911] Fixed auto formatting for XML comments.
- QXmlStreamWriter
* Added autoFormatting() property which controls whether the output should be indented
for readability.
- QXmlSimpleReader
* [201459] That the class is not reentrant, has been documented.
* Add UTF-32 autodetection
- Q3ButtonGroup
* [198864] Fixed bug that caused Q3ButtonGroup::insert() to generate wrong
(typically non-unique) ids.
- Q3DateEdit
- Q3DockWindow
* [173255] When docked, relayout improved when the content is changed.
- Q3FileDialog
* [200264] Fixed the "QObject: Do not delete object, 'unnamed',
during its event handler!" warning found in the 4.4.0 beta.
- Q3GroupBox
- Q3ImageDrag
* [184521] Q3ImageDrag::canDecode() will now return true for image data that can be decoded.
- Q3ListView
* [127037] Q3ListView::paintCell() now uses the viewport's background role.
- Q3MainWindow
* [176544] Q3MainWindow::setDockEnabled() no longer adds dock windows that are already there.
* [176129] Q3MainWindow::setUsesBigPixmap now works.
- Q3PopupMenu
* [177490] Fixed regression causing activated and highlighted signals to be
emitted multiple times.
- Q3ScrollView
- Q3SqlCursor
- Q3Table
* [171801] Fixed a graphical error in Q3CheckTableItem.
* [196074] Fixed a crash when using Q3Table and Q3ComboTableItem together
with stylesheets.
- Q3TextEdit
* [197033] Fixed "select-and-copy" on X11
- Q3Toolbar
* [171843] QComboBox in a Q3Toolbar was generating warnings
- QSvgWidget
* Support for xml:space
- QWhatsThis
[177416] Fix sizing hints when using rich-text.
- Qt Style Sheets
* [163429] Stylesheet backgrounds now work on Mac. Note that there are
still issues with stylesheets on that platform.
* [169855] Setting a style sheet with gridline-color on QTableView now
works correctly.
* [182917] :hover no longer applies to disabled widgets.
* [184867] Several speedups to stylesheet parsing.
* [188344] Style sheets no longer reset font settings. They now
take precedence over manually set font settings, and will leave other
settings alone. The font is restored to the manual settings if
the style sheet is removed.
* [188702] Fixed a bug where QLineEdit would not react to the :focus
pseudo state.
* [190422] Fixed a bug where the width of QSpinBox subcontrols would not
be properly respected.
* [190423] Fixed a bug where gradient backgrounds were not shown correctly
in QComboBox.
* [191189] Fixed a bug where classes derived from QDialog by more than two
levels (QDialog -> MySubClass -> MySubSubClass) would not receive the
styled background.
* [191216] Menus with a background color will now be rendered using the
native style.
* [191822] Fixed a crash in subElementRect when widget pointer is null.
* [192374] An offset ::tab-bar element no longer offsets scroll buttons.
* [192535] Fixed a bug where a QComboBox would not always draw its
dropdown button when styled.
* [192655] Fixed a bug where it was sometimes impossible to toggle a
styled, checkable menu item.
* [199912] QHeaderView no longer collapses to zero contentsRect if size
is not specified.
****************************************************************************
* Database Drivers *
****************************************************************************
- Interbase driver
* [185482] Fixed bug where data corruption occurred when inserting data into
numeric fields on some platforms.
* [156090] Fixed bug where the connection information was always assumed to
be Latin1 encoded.
- MySQL driver
* [190311] Fixed bug where fetching BLOBs with a prepared query would fail
if the second BLOB was larger than the first.
* [184354] Implement QSqlDriver::escapeIdentifier() allowing reserved words and
white spaces in table and column names.
* [129925] Communicate with the database using UTF8 encoding for MySQL
versions >= 4.1.13 and < 5.0.0. This makes the behavior consistent with MySQL
versions >= 5.0.7.
- OCI driver
* [167644] Set an error when failing to start a transaction in addition to
printing an error.
* [177054] Fixed bug that caused QSqlField::length() to always return 38 for
non-numeric fields.
* [141706] Added support for the using the hostname and port number provided by
QSqlDatabase. This makes it possible to connect to Oracle databases without
a tnsnames.ora file on the client.
- ODBC driver
* [164680] Don't crash when updating a view displaying a model after the
database connection has been closed.
* [166003] Use SQLFetch() if SQLFetchScroll() isn't supported in the driver.
* [116534] Allow closing cursor without destruction of QSqlQuery object. Use
QSqlQuery::finish().
* [181039] Added support for a connection option to instruct the driver to
connect as an ODBC 3 application; SQL_OV_ODBC3. This is needed in order to
make the QODBC driver work with some ODBC drivers.
* [176233] Connection options are no longer case-sensitive (according to the
ODBC standard).
* [178532] Fixed bug where binding bools would fail.
* [176231] Support passing the username and password as part of a connection string
instead of using QSqlDatabase::setUserName() and QSqlDatabase::setPassword().
* [141822] Support the SQL_GUID type.
* [187936] Improved support for the Linux Easysoft ODBC driver.
* [165923] Improved error handling.
- SQLite driver
* [174340] Bind QVariant::UInt as int64 instead of string.
- PostgreSQL driver
* [152770] Support prepared queries natively for PostgreSQL 8.2.
* [164233] Fixed bug where QSqlDatabase::primaryIndex() would fail if the
table name was used in multiple schemas.
* [168934] Make a real error message available when failing to connect to a
database.
* [150373] Added support for NumericalPrecisionPolicy, allowing the user to
instruct the driver not to return NUMERICs as strings.
- DB2 driver
* [189727] Fixed bug where fetching the fields in a row multiple time would
fail unless the fields were fetched in order.
****************************************************************************
* QTestLib *
****************************************************************************
* The display is now enabled on Mac OS X just before a test in run and qtestlib will ensure
the application under test is the "front process" if it is a GUI application.
****************************************************************************
* QDBus *
****************************************************************************
- Library
* [195515] Fixed a bug where the Qt application would crash if it
tried to send some types of messages after the connection to the
bus was broken.
* [188728] Fixed a freeze caused by connecting to a slot that did
not exist
- Viewer
****************************************************************************
* Platform Specific Changes *
****************************************************************************
MIPS Linux
* [188320] Build Qt/X11 with FPU support, breaking binary
compatibility; see "Important Behavior Changes" below.
X11
---
* Improved GNOME platform detection.
* [193845] Improved support for KDE palette settings.
* [179200] Fixed an issue where Qt would print "QProcess: Destroyed
while process is still running." when using Cleanlooks.
* [155704] Fixed a bug where widgets with MSWindowsFixedSizeDialogHint
flag would be minimized when their parent QMainWindow was minimized.
The MSWindowsFixedSizeDialogHint is now ignored on X11.
* [153155] Make it possible to bypass g_thread_init() and have the
Unix event dispatcher be used in threads instead by setting the
QT_NO_THREADED_GLIB environment variable.
* [157807] Fix an inefficiency in the Glib dispatcher's
timerSourcePrepare() implementation.
* [158332] Fix a bug where text/uri-list drops from Qt 3 would
append a single, empty url to the uri-list.
* [166097] QWidget::show() no longer resets the WM_TRANSIENT_FOR
property if the Qt::WA_X11BybassTransientForHint attribute is
set.
* [166097] QWidget::show() no longer resets the _NET_WM_STATE
property. Qt now merges its own state with any previous state
set by the application programmer.
* [168285] Fixed QDrag to correctly reset the override cursor.
* [17566] Don't impose FD_SETSIZE limit when using the Glib event
dispatcher.
* [171513] Fixed a bug where an application would take up 100% CPU
after starting a QDrag.
* [184482] Fixed QApplication::setOverrideCursor() to not change
the cursor for the root window.
* [185048] Fixed a bug where calling QClipboard::set*()
immediately after QClipboard::clear() would result in the
clipboard staying cleared.
* [182840] Fixed a bug where QApplication::mouseButtons() would
sometimes report the wrong state.
* [173328] Fixed QEventLoop::exec(ExcludeUserInputEvents) to not
consume 100% when using the Glib event dispatcher.
* [179536] Make QEventLoop::X11ExcludeTimers work as expected with
the Glib event dispatcher.
* [182913] Qt will now always look for the _MOTIF_DRAG_WINDOW
property on screen 0 (instead of the default screen).
* [187752] Fixed a bug where calling show() and hide() on a window
before the event loop starts would prevent the window from ever
being shown.
* [189045] Reset the keyboard and mouse grabs to the current
grabber when the last popup is closed.
* [167707] Add support for all known _NET_WM_WINDOW_TYPE_* types
via QWidget::setAttribute(). The attributes follow the
Qt::WA_X11NetWmWindowType* naming scheme.
* [172623] Don't create a pipe in the Glib event dispatcher (as it
is not necessary).
* [192871] Fixed a regression found in the 4.4.0 snapshots that
broke QX11EmbedContainer.
* [192526] Similar to 170768 below, fixed the spin locking in the
QAtomic* implementation for 32-bit SPARC processors to yield
instead of busy waiting.
* [194566] Fixed a bug found in the 4.4.0 snapshots that would
always cause the cursor to change when QWidget::setCursor() was
called on a widget that was not under the mouse.
* [173746] Fixed a bug in QDialog that would cause the "What's
This?" popup menu to appear on the wrong X11 screen.
* [187965] Fixed a bug where moving a widget that is hidden could
cause the positioning to be incorrect.
* [160206] Fixed some bugs in QX11EmbedWidget and
QX11EmbedContainer to provide minimal support for multiple
containers and multiple embedded widgets in the same
application.
* [182898] Fixed a crash in Motif Drag-and-Drop support when the
_MOTIF_DRAG_WINDOW property is missing.
* [183477] Fixed a bug that would cause a window to disappear
after restoring it with QWidget::restoreGeometry().
* [163507] Fixed a couple of memory errors reported by valgrind.
* [192654] Fixed drag-and-drop of more than one URL (using the
text/uri-list mime type) between applications.
* [198709] Fix QDesktopWidget to not report overlapping screens on
servers with Xrandr 1.2.
* [146336] On UNIX systems without CUPS support, the
$HOME/.printers is now checked for a default printer.
* [185864] Allow Qt to find the OpenSSL libraries dynamically even
if the libssl.so file is not present.
* [168283] Set WM_WINDOW_ROLE directly from QWidget's windowRole() property.
* [187660] Implemented rotation for tablets on non-Irix X11 platforms.
* [192818] Fixed drawing shapes with a textured brush that had an offset.
* [133291] Fixed slow line drawing when using dashing under X11.
* [183070] Make it possible to filter events for overlay widgets in OpenGL
under X11.
* [176485] Make drawing text through FreeType beyond the SHORT_MIN/MAX
coordinate range work. Note that this won't work for XLFD based fonts.
* [182264] Fixed a crash in QClipboard::setMimeData() when several
clipboards share the same QMimeData instance.
* [182264] Copying rich-text contents of a QTextEdit and pasting
them to an editor that accepts rich text didn't work.
- QPrintDialog
* [128956] Fixed a bug which caused the print dialog to become hidden
while the overwrite dialog was shown.
* [192764] /etc/printcap with blank lines is now correctly parsed.
* Redesigned the print dialog and pagesetup dialog to be much nicer.
- QPrinter
* [148125] Switched to printing through the CUPS API. This should fix the
problem where the wrong lp/lpr command was picked up, and therefore
printed through the wrong print system. If CUPS is enabled at compile
time, it will always be used if available.
* [161936] lp no longer outputs job ID to the console when printing.
* [180669] QPrinter no longer crashes if the CUPS library cannot be found.
Windows
-------
* [185702] Fixed qatomic_windows.h to properly forward declare the
_Interlocked*() functions to avoid conflicts with other headers
that also use these functions.
* [183547] Replaced scalar delete with array delete in windows socket engine.
* [190066] Fixed setting spinbox and combobox bgcolor with stylesheets on Vista.
* [197055] Fixed a stylesheet background issue with TextEdit on Vista.
* Black regions are no longer exposed when resizing windows on Vista using Aero.
* [172757] Respect system font changes on Windows.
* [194803] Pass the keyboard modifiers in QTabletEvent on Windows.
* [194089] Avoid adding the current screen point when translating tablet events on Windows.
* [187712] Fixed QT_WA() macros to use correct windows version in static builds.
* [183975] Handle 'Win+M' key while showing modal dialogs.
* [187729] Fixed incorrect focus behavior when main-window is shown minimized.
* [187900] Increased area for scrolbar thumb dragging.
* [180416] Fixed incorrect command line parsing on windows.
* [169703] Fixed Drag & Drop returning Invalid data.
* [181816] Fixed drawing ClearType text into a QImage with the Format_ARGB32 format.
* [123455] Make QWidget::numColors() return something useful for widgets that's not
been shown yet.
- QApplication
* [167897] Fixed a bug where QApplication would treat single quotes
as a quote to signify the end of an argument.
- QFileDialog
* [173402] Fixed wrong sort order if cou reopen a file dialog.
* [178279] Be more smart for enabling or disabling the open button.
* [178897] Fixed QFileDialog minimym size while very long path are in the history.
* [181912] Not following folders that are symlinks.
* [187959] Change the button caption from "save" to "open" when selecting a folder
in a save dialog.
* [196062] HANDLEs are now freed when searching the paths.
* [198049] Selecting a file in the completer would display the full path rather then just the file name if it was in the current directory.
- QDesktopServices
* [194046] Fixed support for percentage encoded URL strings with openUrl().
* [172914] Fixed an issue where openUrl() would incorrectly return true
after failing to open on Windows.
- QFileSystemWatcher
* [170021] Make it possible to monitor FAT32 directories.
- QFont
* Use Harfbuzz instead of Uniscribe for complex text shaping enabling support of a broader
range of writing systems on all Windows versions.
- QKeySequence
* [187917] Fixed incorrect standard shortcut for PreviousChild.
- QListView
* [183299] More native appearance on list view selection backgrounds.
- QLocale
* [139582] An unrecognized LANG environment variable will now make QLocale
fall back to the Windows locale, instead of the C locale.
- QMenu
* [140954] Fixed an issue where pressing the Alt-key would not correctly
show and hide menu accelerators.
- QMutex
* [179050] Fixed a bug that cause a warning on startup from QMutex
running an application build with MinGW on Windows 9x.
- QPrintDialog
* [183448] Fixed a bug where the print-to-file setting would remain stuck
even after disabling it in the dialog.
- QPrinter
* [185751] Fixed a crash in QPrinter if QPainter.begin() failed.
* [191316] Fixed a crash when using certain nonstandard printer drivers.
- QScriptEngine
* [182241] Fixed a bug that caused qScriptValueFromQMetaObject() to generate
the wrong script constructor function with VC6.
- QSyntaxHighlighter
* Added QSyntaxHighlighter::currentBlock().
- QSystemTrayIcon
* [189196] Fixed showMessage timeout interval being ignored on windows.
- QTimer
* [179238] Make QTimer behavior consistent with UNIX by not
allowing them to fire recursively.
* [188820] Fixed a bug found in the 4.4.0 snapshots that caused
menu effects to "freeze."
- QWizard
* [180397] Fixed crash resulting from AeroStyle being assumed even when some of the required
symbols were unresolved.
- ActiveQt
* [198021] Optimized QAxHostWidget::paintEvent(), the painting code is required only when the
widget is being grabbed.
* [191314] Support browsing of ActiveQt controls in Microsoft Visual Studio.
* [190584] Support for large strings in code generated by dumpcpp.
* [190538] Fixed incomplete function declarations generated by dumpcpp.
* [90634] Support for 2D safe arrays.
* [158785] Support for ActiveX control initialization using stored data.
Mac OS X
--------
* [168290] Input Methods can now be used on windows of type Qt::Popup.
* [195099] Fixed a problem with posted an event to quit in one thread to
another thread would not quit the other threads loop.
* [193047] Extend support for all the function keys on a standard Apple keyboard.
* [193096] QtUiTools_debug.a is now included in the debuglibraries binary package.
* [141602] pixeltool is also included in the binary package.
* [188580] Respect the LSUIElements key in an application's Info.plist.
* [188267] Ensure that qAppName() checks CFBundleName before using the executable name.
* [183464] Fix "wrong clippboard content" issue.
* [189587] Prevent triggering menu shortcuts when showing native dialogs.
* [174769] Add separator above the "Preferences" menu item in the application menu.
* Some fixes to color space handling to ensure that the display color space is used when
drawing items to the screen (and printer). This works even if the display has a non-standard colorspace.
* Apply a fix so that programs using the sqlite plugin and built on Mac OS X 10.5 will run on older versions of Mac OS X.
- QAction
* [196332] Make actions with ApplicationSpecificRole get merged in all cases.
- QApplication
* [180466] Ensure that non Qt Windows get an activate.
* [171181] QApplication no longer send key events to disabled widgets.
- QContextMenuEvent
* [161940] Implement support for QContextMenuEvent::modifiers()
- QImage
* [182655] Switch off antialiasing when drawng to 1bpp images on Mac
- QMainWindow
* [171931] Fix crash when calling addToolBar while the user is dragging toolbars.
* [191544] Fix unified toolbar size constraint issues.
- QMime
Implement text/html for cutting and pasting.
- QPixmap
* QPixmap no longer breaks CGImageRef's immutability.
- QPushButton
* [183084] QPushButton will no longer change appearance between mini, small, and large
according to the size of it's contents. This behaviour can be switched on by using
WA_MacVariableSize.
* [172108] Unset the mnemonic if setText() is called with no &.
- QPrinter
* [189182, 194085] Querying printer properties on Mac now works after QPainter::end().
- QSettings
* Fixed QSettings::sync() spurious error on Mac OS X 10.5.
* Improved the Mac .plist serialization so that it doesn't generate
needless one-element CFArrays.
- QTextCodec
* Fixed "System" locale codec on little-endian Mac OS X (Intel).
- QTextEdit
* [176378] Make selections be shown full-width.
* [182243] Fix a regression where text editing widgets would insert command-keys that weren't shortcuts.
- QWidget
* [197087] Make masks work correctly for splashscreens and popups on Leopard.
* [167974] Fix offset issue when seMask() was used in combinatiojn with Qt::FramelessWindowHint.
* [192527] Fix a regression where Cmd+MouseButton on a window icon no longer sent a QIconDragEvent.
* [179073] WA_MacMiniSize and MA_MacSmallSize have an effect on the default fonts for a widget.
* [175199] Ensure sheets that later become normal windows have the correct opacity.
* [139002] Ensure macEvent() is called.
- QCoreGraphicsPaintEngine
* Implement Porter-Duff operations.
- QPageSetupDialog
- QPrintDialog
* Make both these dialogs sheets if they are given a parent.
- Q3ComboBox
* Make up/down arrows work when the popup is closed.
Qt for Embedded Linux
---------------------
- Screen drivers
* LinuxFB: Improved support for BGR framebuffers
* LinuxFB: Added 12, 15, 18 and 24 bit pixel depth detection.
* AHI: New driver using the ATI Handheld Interface library.
* DirectFB: New driver using the DirectFB library.
* SVGAlib: Add support for 4 and 8 bit mode.
* SVGAlib: Fixed the background color for 16 bit mode.
* Transformed: Fix bug preventing driver to load as a plugin
* VNC: Added support for the client cursor pseudo encoding.
* Added QProxyScreen, a class for simplifying proxy based screen drivers.
Currently used by the VNC and Transformed screen driver.
* Added framework for letting the screen driver control the QPixmap
implementation.
* [194139] Fixed background initialization in a multiscreen environment.
* [195661] Fixed disappearing mouse cursor in a multiscreen environment.
- Mouse drivers
* Made the Yopy, VR41xx, PC, LinuxTP, and Bus drivers available as plugins.
* [194413] Fixed missing newline when writing the calibration file.
* Configurable double-click jitter sensitivity through the
QWS_DBLCLICK_DISTANCE environment variable.
- Keyboard drivers
* Made the SL5000, USB, VR41xx and Yopy drivers available as plugins.
- Decoration drivers
* Made the Styled, Windows and Default decorations avaiable as plugins
- Demo applications
* Added embeddedsvgviewer, styledemo & fluidlauncher applications to
demos/embedded to demonstrate Qt/Embedded on small screens (QVGA/VGA).
Fluidlauncher is used to launch the demos.
* Modified the existing pathstroke & deform demos to add a -small-screen
command line option to optimize layout for small screens (QVGA/VGA).
- Windowing system
* Removed redundant blits to the screen.
* Fixed a bug in QWSWindowSurface preventing the Opaque property to be used.
* Fixed a bug making the window surface valid when the
windowEvent(QWSServer::Hide) signal is emitted.
* Fixed a crash when no mouse driver is installed.
* Fixed bug where QWSWindow::name() would be incorrect unless
setWindowTitle() was called.
* Allow normal windows to be raised above full screen windows.
* [179884] Fixed bug when calling showMaximized() on a FramelessWindowHint
window.
* Fixed bug where children of a StaysOnTop window would be shown below the
parent.
* Fixed painting bug when configuring with -opengl and resizing/showing
child widget of visible window.
- QDirectPainter
* [100114] Implemented lock() and unlock().
* default parameter bug fixed for startPainting(); see "Important Behavior Changes" below.
- QScreen
* Added classId() to enable safe casting to specific subclasses.
- QPixmap
* Fixed grabWindow() on 12, 15, 18 and 24 bit screens.
* Fixed grabWindow() on BGR framebuffers.
* Fixed grabWindow() on rotated screens.
- QVFb
* Fixed 12-bit support.
* Added 15-bit support.
* Added support for 32-bit ARGB
* [127623] Tab key presses are now passed to the embedded application.
- General fixes
* [181906] Fixed case insensitive key comparisions in the keyboard, mouse
and screen plugin factory.
* [170768] For ARM processors, fixed the spin lock protecting the
* QAtomic* implementations to yield instead busy waiting.
* Reduced number of double precision floating point operations as an
optimization for platforms without a floating point processor.
* Reduced memory usage in the backing store.
* [177057] Fixed use of the modifier window title tag.
****************************************************************************
* Compiler Specific Changes *
****************************************************************************
- ICC
* [169196] Use -fpic instead of deprecated -KPIC option.
****************************************************************************
* Tools *
****************************************************************************
- Build System
* Make it possible to use QT+=dbus and QT+=testlib to enable
compiling against the QtDBus and QtTestLib libraries.
- Assistant
* Renamed the existing Assistant to Assistant_adp and adjusted the QtAssistantClient library accordingly.
* Added the new Assistant based on the Qt Help module.
* Introduced qhelpconverter to convert adp or dcf files to the new file formats.
* Added the qhelpgenerator tool to create qch documentation files.
* Introduced qcollectiongenerator to create help collections.
- Designer
* [191493] Fixed issues with small widgets in grid layouts on Mac
* [177564] Fixed autoFillBackground being reverted when setting a stylesheet on a QLabel.
* [171900] Made Qt3Support functions visually different (signals and slots, widget icons)
* [182037] Fixed a bug which made it possible to resize QFrame-based containers to arbitrarily small sizes
* [176678] Made "Current Widget Help" work
* [193885] Fixed a crash caused by a widget box widget not having a geometry nor a valid sizeHint.
* [122185] Added support for QMdiArea, QWorkspace
* [173873] Made pasted widgets appear at mouse position
* [191789] Added QtDesigner.pc for pkg-config
* [157152] Added a context menu to the buddy editor
* [189739] Fixed a crash caused by internal layouts of custom widget plugins
* [133687] Fixed QDesignerContainerExtension; provided way to specify a method to add pages in domXML
* [161643] Changed rich text editor to detect plain text and store it as such
* [183110] Added a dialog for setting the tab order by sorting the list of widgets
* [188548] Added support for static custom widget plugins to QUiLoader
* [157164] Made QStackedWidget context menu available on browse buttons
* [157217] Fixed default size of spacers
* [182448] Fixed a bug that caused additional spacing between toolbar's last action and consecutive toolbar
* [84089] Added containers and custom containers to the "New Form" dialog
* [165443] Grey out the geometry property in Designer when it has no functionality
* [119506] Made comments available for shortcut properties
* [161480] Added detailed view to action editor
* [175146] Improved the signal/slot editor; do not reset the column sizes when switching forms
* [176121] Added "Save As" to code preview
* [176122] Added code preview
* [79138] Added support for QLayout::sizeConstraint
* [156718] Made it possible to copy actions between forms
* [168648] Improved object inspector selection
* [166406] Fixed a selection bug affecting custom subclasses of QTabBar
* [151323] Made it possible to use subclasses of QTabWidget, QToolBox or QStackedWidget as custom widgets
* [168564] Fixed a bug in table widget editor
* [132874] Added support for user-defined signals and slots of promoted widgets and main container
* [202256] Made header section size of the action editor persist when switching forms
* [201505] Extended the QDesignerIntegration::objectNameChanged() signal to carry the previous object name
* [196304] Exclude C++ and java keywords as names for objects
* [199838] Breaking layout didn't update properly minimumSize of a form
* [118874] Added spacing property for the QToolBox
* [120274] Q3Wizard - "currentPageText" property added, "caption" properly converted to "windowTitle"
* [181567] Added support for loading and saving items for Q3ListBox and Q3ListView
* [187593] Fixed issue with dynamic properties
* [107935] Actions provided by task menu extension are appended to the list of actions of superclass
* [188823] Compress margin/spacing properties in case all values are the same, for legacy reasons
* [160635] Make Z-order working properly
* [171900] Signals and slots from compat layer marked with red italic
* [177398] Added notr="true" attribite to styleSheet property - in this way styleSheet string will not appear in linguist
* [180367] Greyed out X and Y properties of geometry in case of main container
* [118393] Collapsing property groups in property editor allowed
* [190703] Fixed in-place editor behaviour
* [154745] Guidelines provided for grid layout
* [173516] New resource system integrated
* [142477] Improved rich text editor and added HTML editing
* Gradient editor added to stylesheet editor
* Resetting font and palette subproperties handled properly
* uint, qlonglong, qulonglong and QByteArray properties supported
* Property Browser Solution integrated
* Property Editor - added toolbar with object and class name, and some actions
* Property Editor - remember expansion state
* Property Editor - style sheet editor added
* Property Editor - sorting and coloring added
* Added basic fixup for URL properties to prevent data loss when the
user enters an intermediate URL (such as www.google.com).
- Linguist
* [39078] Added shortcut for adding an entry to a phrase book.
* [116913] Added tooltips to messages view and phrases view to be able to see the full text as well as to see a preview of HTML rendering.
* [142628] Fix a "What's this?" message in Linguist.
* [170053], [183645] Split the context / items tree up into a contexts window and a messages window.
* [171829] Added support for syntax highlighting in source/translation strings.
* [179415] When previewing a dialog via Qt Linguist that has the window
modality set to ApplicationModal do not block linguist.
* [181411] Make xliff utf-8 export use non-ascii characters, too.
* [183713] Identify the line number in the code for strings.
* [184586] Added ability to show multiple auxiliary (read-only) translations.
* [194325] Fixed an error with loading XLIFF files containing consecutive internal whitespace.
* Added a source code window. It shows the source file when available and highlights the line on which the source text was found.
* Added a window for showing warnings.
* Allow a translation to be marked as done when there are still warnings.
* Fixed undo/redo functionality.
* Show obsolete entries in grey.
* Ask whether modified phrase books should be saved on quit.
* Re-open phrasebooks at startup.
- lupdate
* [80235] Introduce QT_TRANSLATE_NOOP3 as a QT_TRANSLATE_NOOP3 variant
taking a comments parameter.
* [161106] When specifying ::QObject::tr() lupdate will no more take
the previous word as namespace.
* [165460] Make lupdate work with relative paths.
* [165679] Prevent lupdate from crashing on special string patterns.
* [179506] Handle the case of a class in a namespace inheriting from
another class in a different namespace correctly.
* [180318] Make lupdate work properly on deeply nested directories.
* Added an option (-pluralonly) that will only extract strings which
require a plural form, to ease adding plural translations for the same
language as the source messages.
* Do not require administrative privileges to run lupdate on Windows Vista.
- lrelease
* [187375] Allow lrelease to be run from a directory outside the .pro file.
* Added an option (-removeidentical) that omits translated strings that
are exactly the same as the source string, to reduce file size.
- rcc
* [105595] Add QT_NO_CAST_TO_ASCII define to tools by default.
* [188891] Fix crash when QResource is loaded from stream that was
rcc'd from an empty qrc file.
* [164840] Allow use of chinese characters in commandline arguments to rcc.
- moc
* Treat -DFOO as -DFOO=1 for macros defined on the commandline.
- uic
* [189327] Added support for QT_NO_ACCESSIBILITY
* [170919] Fixed a bug that caused nonsensical includes to appear in
conjunction with Qt support classes
* [171228] Fixed a bug that caused nonsensical includes to appear in
conjunction with Qt support classes
* [105595] Add QT_NO_CAST_TO_ASCII define to tools by default.
* [186989, 158836] Fixed invalid code generation in some cases when
cross-compiling.
- uic3
* [179540] Added support for QPushButton's "on"-property
* [170919] Fixed a bug regarding includes for classes in namespaces
* [299175] Transform Qt3's QSlider property tickmarks to Qt4's
tickPosition
- qmake
* [187938] Fix a bug that would cause Xcode projects generated by qmake to fail to link in Xcode 3.
* The pkgconfig files generated for the frameworks on Mac OS X are now correct.
* Makefiles for Mac OS X now always set QMAKE_MACOSX_DEPLOYMENT_TARGET=10.3
unless it is overridden in the .pro file, this will solves linking errors
on Leopard.
* [189409] The default Xcode generator format is now Xcode 2.2.
* Added an unsupported mkspec for LLVM on Mac OS X.
* [198562, 201942] Added support for overriding bundle extentions for Mac
* [152932] Specify the /MANIFEST option when embedding manifests into the application/library.
* Avoid adding silencing echos to the compiler when generating XCode projects.
* [191267] Only include the -L$$QT_PLUGINPATH option once in a project.
* Avoid memmoving data from outside a memory block.
* Generate proper MSVC 2008 VCPROJ and SLN files.
* [168308] Avoid double dir separators in subdir Makefiles.
* [168075] Make distcc work on Mac.
- configure
* [180315] Implement -qtlibinfix configure option to allow renaming of Qt
libraries.
* [180315] Implement -qtnamespace configure option to allow compiling all
Qt symbols in a user-defined namespace.
****************************************************************************
* Plugins *
****************************************************************************
- QTiffPlugin
* [187169] Return an error if loading fails instead of empty image.
- QSvgIconEngine
The qsvg icon engine plugin has been renamed to qsvgicon to disambiguate
it from the qsvg image format plugin.
* Now allows multiple SVG files and/or other images to be added to
QIcon for different modes.
* Streaming of SVG icons is fixed.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- Event filters
The behavior of event filters has changed starting with
4.4. Previously, thread affinity was ignored when adding,
removing, and activating an object's event filters. Now, event
filters must have the same thread affinity as the object they
are filtering. Qt will warn when it detects a filter that is
in a different thread from the object being filtered.
- QFont
Starting with Qt 4.4, the '-' characters in the raw font names
are no longer substituted with a ' ' (space character). This
may impact your application if you use fonts that have '-'
characters in their raw font names.
- QReadWriteLock
Starting with Qt 4.4, recursive lock support is disabled by
default in QReadWriteLock. Code that relies on recursive write
locking will need to be changed to construct the
QReadWriteLock with recursive lock support enabled. Previously,
recursive write-lock support (introduced in 4.3) was enabled by
default, but QReadWriteLock did not properly support recursive
read-lock support. QReadWriteLock now supports both and needs to
be constructed explicitly with recurive lock support enabled
(QMutex works in the same way).
- QPainterPath
We have changed QPainterPath::angleAtPercent() to use the same
angle definition as in the rest of Qt. This means that the angle
returned will be from 0 to but not including 360, specifying
the degrees from the 3 o'clock position in the counter-clockwise
direction.
- QDirectPainter [Qt for Embedded Linux-specific class]
startPainting() in Qt 4.3 had a default parameter lock=false,
the value of which was not used. The function would lock for
client processes, but not for the server process. From Qt 4.4,
the default value is changed to true, and startPainting() will
lock if lock == true, and not lock if lock == false. This means
that client processes running code that has not been recompiled
with Qt 4.4 may show flicker and/or painting problems. To get
exactly the same behaviour as for Qt 4.3, change startPainting()
to startPainting(QApplication::type() == QApplication::GuiClient).
- QPrinter
QPrinter::pageRect() did not return consistent values on
Linux/Mac/Windows when QPrinter::fullPage() was set to true. On
Mac and Windows pageRect() was not influenced by the fullPage()
setting. This has now been changed so that pageRect() returns
the same as paperRect() when fullPage() is true on all
platforms.
- QPixmap
Using QPixmap outside of the GUI thread is dangerous and error
prone. Because of this, starting with 4.4, any QPixmap created
outside of the GUI thread will always be a null pixmap.
- QDateTime
When using QDateTime::fromString() to parse dates, QDateTime
no longer tries to use English month names because that would
cause some dates to become unparseable. If you need to parse
date times in the English locale, use QLocale::toDateTime (in
specific, the QLocale::c() locale).
- Qt/Mac
Starting a Qt application no longer makes it the front process. This is
more in-line with other applications on Mac OS X. What this means is
that you can start a Qt application, do something else and not have the
Qt application steal your focus. If you desire for the Qt application
to become the front process, you can call QWidget::raise()
programmatically or launch the application with open(1) or using
QDesktopServices. This should not have any affect if launched from
double-clicking in Finder or run in a debugger.
- Qt/X11 on MIPS Linux
qreal is changed from float to double, breaking binary compatibility.
This change fixes a bug introduced in Qt 4.3.0 when qreal was
changed from double to float for embedded MIPS processors.
|