summaryrefslogtreecommitdiff
path: root/src/corelib/global/qnamespace.qdoc
blob: 0ff6be2049818610726a1715d8e8bb5a2a343fbd (plain)
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
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
/****************************************************************************
**
** Copyright (C) 2016 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the documentation of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:FDL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU Free Documentation License Usage
** Alternatively, this file may be used under the terms of the GNU Free
** Documentation License version 1.3 as published by the Free Software
** Foundation and appearing in the file included in the packaging of
** this file. Please review the following information to ensure
** the GNU Free Documentation License version 1.3 requirements
** will be met: https://www.gnu.org/licenses/fdl-1.3.html.
** $QT_END_LICENSE$
**
****************************************************************************/

/*!
    \namespace Qt
    \inmodule QtCore
    \keyword Qt Namespace

    \brief The Qt namespace contains miscellaneous identifiers
    used throughout the Qt library.
*/

/*!
    \enum Qt::Orientation

    This type is used to signify an object's orientation.

    \value Horizontal
    \value Vertical

    Orientation is used with QScrollBar for example.
*/

/*!
    \enum Qt::AlignmentFlag

    This enum type is used to describe alignment. It contains
    horizontal and vertical flags that can be combined to produce
    the required effect.

    The \l{TextElideMode} enum can also be used in many situations
    to fine-tune the appearance of aligned text.

    The horizontal flags are:

    \value AlignLeft Aligns with the left edge.
    \value AlignRight Aligns with the right edge.
    \value AlignHCenter Centers horizontally in the available space.
    \value AlignJustify Justifies the text in the available space.

    The vertical flags are:

    \value AlignTop Aligns with the top.
    \value AlignBottom Aligns with the bottom.
    \value AlignVCenter Centers vertically in the available space.
    \value AlignBaseline Aligns with the baseline.

    You can use only one of the horizontal flags at a time. There is
    one two-dimensional flag:

    \value AlignCenter Centers in both dimensions.

    You can use at most one horizontal and one vertical flag at a
    time. Qt::AlignCenter counts as both horizontal and vertical.

    Three enum values are useful in applications that can be run in
    right-to-left mode:

    \value AlignAbsolute  If the widget's layout direction is
        Qt::RightToLeft (instead of Qt::LeftToRight, the default),
        Qt::AlignLeft refers to the \e right edge and Qt::AlignRight
        to the \e left edge. This is normally the desired behavior.
        If you want Qt::AlignLeft to always mean "left" and
        Qt::AlignRight to always mean "right", combine the flag with
        Qt::AlignAbsolute.
    \value AlignLeading  Synonym for Qt::AlignLeft.
    \value AlignTrailing  Synonym for Qt::AlignRight.

    Masks:

    \value AlignHorizontal_Mask
    \value AlignVertical_Mask

    Conflicting combinations of flags have undefined meanings.
*/

/*!
    \enum Qt::ApplicationAttribute

    This enum describes attributes that change the behavior of
    application-wide features. These are enabled and disabled using
    QCoreApplication::setAttribute(), and can be tested for with
    QCoreApplication::testAttribute().


    \value AA_DontShowIconsInMenus Actions with the Icon property won't be
           shown in any menus unless specifically set by the
           QAction::iconVisibleInMenu property.
           Menus that are currently open or menus already created in the native
           \macos menubar \e{may not} pick up a change in this attribute. Changes
           in the QAction::iconVisibleInMenu property will always be picked up.

    \value AA_DontShowShortcutsInContextMenus Actions with the Shortcut property
           won't be shown in any shortcut menus unless specifically set by the
           QAction::shortcutVisibleInContextMenu property. This value was added
           in Qt 5.10.

    \value AA_NativeWindows Ensures that widgets have native windows.

    \value AA_DontCreateNativeWidgetSiblings Ensures that siblings of native
           widgets stay non-native unless specifically set by the
           Qt::WA_NativeWindow attribute.

    \value AA_PluginApplication Indicates that Qt is used to author a plugin. Depending
           on the operating system, it suppresses specific initializations that do not
           necessarily make sense in the plugin case.
           For example on \macos, this includes avoiding loading our nib for the main
           menu and not taking possession of the native menu bar. Setting this
           attribute to true will also set the AA_DontUseNativeMenuBar attribute
           to true. It also disables native event filters.
           This attribute must be set before QGuiApplication constructed.
           This value was added in Qt 5.7.

    \value AA_DontUseNativeMenuBar All menubars created while this attribute is
           set to true won't be used as a native menubar (e.g, the menubar at
           the top of the main screen on \macos).

    \value AA_MacDontSwapCtrlAndMeta On \macos by default, Qt swaps the
           Control and Meta (Command) keys (i.e., whenever Control is pressed, Qt
           sends Meta, and whenever Meta is pressed Control is sent). When this
           attribute is true, Qt will not do the flip. \l QKeySequence::StandardKey
           will also flip accordingly (i.e., QKeySequence::Copy will be
           Command+C on the keyboard regardless of the value set, though what is output for
           QKeySequence::toString() will be different).

    \value AA_Use96Dpi Assume the screen has a resolution of 96 DPI rather
           than using the OS-provided resolution. This will cause font rendering
           to be consistent in pixels-per-point across devices rather than
           defining 1 point as 1/72 inch.

    \value AA_SynthesizeTouchForUnhandledMouseEvents All mouse events
           that are not accepted by the application will be translated
           to touch events instead.

    \value AA_SynthesizeMouseForUnhandledTouchEvents All touch events
           that are not accepted by the application will be translated
           to left button mouse events instead. This attribute is enabled
           by default.

    \value AA_UseHighDpiPixmaps Make QIcon::pixmap() generate high-dpi pixmaps
           that can be larger than the requested size. Such pixmaps will have
           \l {QPixmap::devicePixelRatio}{devicePixelRatio()} set to a value higher than 1.
           After setting this attribute, application code that uses pixmap
           sizes in layout geometry calculations should typically divide by
           \l {QPixmap::devicePixelRatio}{devicePixelRatio()} to get device-independent layout geometry.

    \value AA_ForceRasterWidgets Make top-level widgets use pure raster surfaces,
           and do not support non-native GL-based child widgets.

    \value AA_UseDesktopOpenGL Forces the usage of desktop OpenGL (for example,
           \e opengl32.dll or \e libGL.so) on platforms that use dynamic loading
           of the OpenGL implementation. This attribute must be set before
           QGuiApplication is constructed.
           This value was added in Qt 5.3.

    \value AA_UseOpenGLES Forces the usage of OpenGL ES 2.0 or higher on
           platforms that use dynamic loading of the OpenGL implementation.
           This attribute must be set before QGuiApplication is constructed.
           This value was added in Qt 5.3.

    \value AA_UseSoftwareOpenGL Forces the usage of a software based OpenGL
           implementation on platforms that use dynamic loading of the OpenGL
           implementation. This will typically be a patched build of
           \l{http://www.mesa3d.org/llvmpipe.html}{Mesa llvmpipe}, providing
           OpenGL 2.1. The value may have no effect if no such OpenGL
           implementation is available. The default name of this library is
           \c opengl32sw.dll and can be overridden by setting the environment
           variable \e QT_OPENGL_DLL. See the platform-specific pages, for
           instance \l{Qt for Windows}, for more information. This attribute
           must be set before QGuiApplication is constructed.
           This value was added in Qt 5.4.

    \value AA_ShareOpenGLContexts Enables resource sharing between the OpenGL
           contexts used by classes like QOpenGLWidget and QQuickWidget. This
           allows sharing OpenGL resources, like textures, between QOpenGLWidget
           instances that belong to different top-level windows. This attribute
           must be set before QGuiApplication is constructed.
           This value was added in Qt 5.4.

    \value AA_SetPalette Indicates whether a palette was explicitly set on the
           QGuiApplication. This value was added in Qt 5.5.

    \value AA_EnableHighDpiScaling Enables high-DPI scaling in Qt on supported
           platforms (see also \l{High DPI Displays}). Supported platforms are
           X11, Windows and Android. Enabling makes Qt scale the main (device
           independent) coordinate system according to display scale factors
           provided by the operating system. This corresponds to setting the
           QT_AUTO_SCREEN\unicode{0x200b}_SCALE_FACTOR environment variable to
           1. This attribute must be set before QGuiApplication is constructed.
           This value was added in Qt 5.6.

    \value AA_DisableHighDpiScaling Disables high-DPI scaling in Qt, exposing window
           system coordinates. Note that the window system may do its own scaling,
           so this does not guarantee that QPaintDevice::devicePixelRatio() will
           be equal to 1. In addition, scale factors set by QT_SCALE_FACTOR will not
           be affected. This corresponds to setting the
           QT_AUTO_SCREEN\unicode{0x200b}_SCALE_FACTOR environment variable to 0.
           This attribute must be set before QGuiApplication is constructed.
           This value was added in Qt 5.6.

    \value AA_UseStyleSheetPropagationInWidgetStyles By default, Qt Style Sheets
           disable regular QWidget palette and font propagation. When this flag
           is enabled, font and palette changes propagate as though the user had
           manually called the corresponding QWidget methods. See
           \l{The Style Sheet Syntax#Inheritance}{The Style Sheet Syntax - Inheritance}
           for more details.
           This value was added in Qt 5.7.

    \value AA_DontUseNativeDialogs All dialogs created while this attribute is
           set to true won't use the native dialogs provided by the platform.
           This value was added in Qt 5.7.

    \value AA_SynthesizeMouseForUnhandledTabletEvents All tablet events
           that are not accepted by the application will be translated
           to mouse events instead. This attribute is enabled
           by default.
           This value was added in Qt 5.7.

    \value AA_CompressHighFrequencyEvents Enables compression of certain frequent events.
           On the X11 windowing system, the default value is true, which means that
           QEvent::MouseMove, QEvent::TouchUpdate, and changes in window size and
           position will be combined whenever they occur more frequently than the
           application handles them, so that they don't accumulate and overwhelm the
           application later.
           On Windows 8 and above the default value is also true, but it only applies
           to touch events. Mouse and window events remain unaffected by this flag.
           On other platforms, the default is false.
           (In the future, the compression feature may be implemented across platforms.)
           You can test the attribute to see whether compression is enabled.
           If your application needs to handle all events with no compression,
           you can unset this attribute. Notice that input events from tablet devices
           will not be compressed. See AA_CompressTabletEvents if you want these to be
           compressed as well.
           This value was added in Qt 5.7.

    \value AA_CompressTabletEvents Enables compression of input events from tablet devices.
           Notice that AA_CompressHighFrequencyEvents must be true for events compression
           to be enabled, and that this flag extends the former to tablet events.
           Currently supported on the X11 windowing system, Windows 8 and above.
           The default value is false.
           This value was added in Qt 5.10.

    \value AA_DontCheckOpenGLContextThreadAffinity When making a context
           current using QOpenGLContext, do not check that the
           \l{QObject#Thread Affinity}{QObject thread affinity}
           of the QOpenGLContext object is the same thread calling
           \l{QOpenGLContext::makeCurrent}{makeCurrent()}.
           This value was added in Qt 5.8.

    \value AA_DisableShaderDiskCache Disables caching of shader program binaries
           on disk. By default Qt Quick, QPainter's OpenGL backend, and any
           application using QOpenGLShaderProgram with one of its
           \e addCacheableShaderFromSource overloads will employ a disk-based
           \l{Caching Program Binaries}{program binary cache} in either the shared
           or per-process cache storage location, on systems that support
           \e glProgramBinary(). In the unlikely event of this being problematic,
           set this attribute to disable all disk-based caching of shaders.

    \value AA_DisableWindowContextHelpButton Disables the WindowContextHelpButtonHint
           by default on Qt::Sheet and Qt::Dialog widgets. This hides the \gui ? button
           on Windows, which only makes sense if you use \l QWhatsThis functionality.
           This value was added in Qt 5.10. In Qt 6, WindowContextHelpButtonHint
           will not be set by default.

    \value AA_DisableSessionManager Disables the QSessionManager.
           By default Qt will connect to a running session manager for a GUI
           application on supported platforms, use of a session manager may be
           redundant for system services.
           This attribute must be set before QGuiApplication is constructed.
           This value was added in 5.13

    The following values are deprecated or obsolete:

    \value AA_ImmediateWidgetCreation This attribute is no longer fully
           supported in Qt 5. It ensures that widgets are created
           as soon as they are constructed. By default, resources for
           widgets are allocated on demand to improve efficiency and
           minimize resource usage. Setting or clearing this attribute
           affects widgets constructed after the change. Setting it
           tells Qt to create toplevel windows immediately.
           Therefore, if it is important to minimize resource
           consumption, do not set this attribute.

    \value AA_MacPluginApplication This attribute has been deprecated.
           Use AA_PluginApplication instead.

    \value AA_MSWindowsUseDirect3DByDefault This value is obsolete and
           has no effect.

    \value AA_X11InitThreads This value is obsolete and has no effect.

    \omitvalue AA_AttributeCount
*/

/*!
    \enum Qt::MouseButton

    This enum type describes the different mouse buttons.

    \value NoButton        The button state does not refer to any
           button (see QMouseEvent::button()).

    \value AllButtons      This value corresponds to a mask of all
           possible mouse buttons. Use to set the 'acceptedButtons'
           property of a MouseArea to accept ALL mouse buttons.

    \value LeftButton      The left button is pressed, or an event refers
           to the left button. (The left button may be the right button on
           left-handed mice.)
    \value RightButton     The right button.
    \value MidButton       The middle button.
    \value MiddleButton    The middle button.

    \value BackButton      The 'Back' button. (Typically present on
           the 'thumb' side of a mouse with extra buttons. This is NOT
           the tilt wheel.)
    \value XButton1        The 'Back' Button.
    \value ExtraButton1    The 'Back' Button.

    \value ForwardButton   The 'Forward' Button. (Typically present
           beside the 'Back' button, and also pressed by the thumb.)
    \value XButton2        The 'Forward Button.
    \value ExtraButton2    The 'Forward' Button.

    \value TaskButton      The 'Task' Button.
    \value ExtraButton3    The 'Task' Button.

    \value ExtraButton4    The 7th non-wheel Mouse Button.
    \value ExtraButton5    The 8th non-wheel Mouse Button.
    \value ExtraButton6    The 9th non-wheel Mouse Button.
    \value ExtraButton7    The 10th non-wheel Mouse Button.
    \value ExtraButton8    The 11th non-wheel Mouse Button.
    \value ExtraButton9    The 12th non-wheel Mouse Button.
    \value ExtraButton10   The 13th non-wheel Mouse Button.
    \value ExtraButton11   The 14th non-wheel Mouse Button.
    \value ExtraButton12   The 15th non-wheel Mouse Button.
    \value ExtraButton13   The 16th non-wheel Mouse Button.
    \value ExtraButton14   The 17th non-wheel Mouse Button.
    \value ExtraButton15   The 18th non-wheel Mouse Button.
    \value ExtraButton16   The 19th non-wheel Mouse Button.
    \value ExtraButton17   The 20th non-wheel Mouse Button.
    \value ExtraButton18   The 21st non-wheel Mouse Button.
    \value ExtraButton19   The 22nd non-wheel Mouse Button.
    \value ExtraButton20   The 23rd non-wheel Mouse Button.
    \value ExtraButton21   The 24th non-wheel Mouse Button.
    \value ExtraButton22   The 25th non-wheel Mouse Button.
    \value ExtraButton23   The 26th non-wheel Mouse Button.
    \value ExtraButton24   The 27th non-wheel Mouse Button.

    \omitvalue MaxMouseButton
    \omitvalue MouseButtonMask

    \note Some models of multi-button mice are pre-configured with
    high-numbered Buttons emulating keyboard sequences, for use in
    specific games. In order for these Buttons to be seen as
    actual 'Mouse Buttons', the device must be re-configured (using
    the vendor's configuration tool).

    \sa KeyboardModifier, Modifier
*/

/*!
    \enum Qt::KeyboardModifier

    This enum describes the modifier keys.

    \value NoModifier       No modifier key is pressed.
    \value ShiftModifier    A Shift key on the keyboard is pressed.
    \value ControlModifier  A Ctrl key on the keyboard is pressed.
    \value AltModifier      An Alt key on the keyboard is pressed.
    \value MetaModifier     A Meta key on the keyboard is pressed.
    \value KeypadModifier   A keypad button is pressed.
    \value GroupSwitchModifier X11 only (unless activated on Windows by a command line argument).
                            A Mode_switch key on the keyboard is pressed.

    \omitvalue KeyboardModifierMask

    \note On \macos, the \c ControlModifier value corresponds to
    the Command keys on the keyboard, and the \c MetaModifier value
    corresponds to the Control keys. The \c KeypadModifier value will also be set
    when an arrow key is pressed as the arrow keys are considered part of the
    keypad.

    \note On Windows Keyboards, Qt::MetaModifier and Qt::Key_Meta are mapped
    to the Windows key.

    \sa MouseButton, Modifier
*/

/*!
    \enum Qt::Modifier

    This enum provides shorter names for the keyboard modifier keys
    supported by Qt.

    \note On \macos, the \c CTRL value corresponds to
    the Command keys on the keyboard, and the \c META value
    corresponds to the Control keys.

    \value SHIFT The Shift keys provided on all standard keyboards.
    \value META The Meta keys.
    \value CTRL The Ctrl keys.
    \value ALT The normal Alt keys, but not keys like AltGr.
    \value UNICODE_ACCEL The shortcut is specified as a Unicode code
    point, not as a Qt Key.
    \omitvalue MODIFIER_MASK

    \sa KeyboardModifier, MouseButton
*/

/*!
    \enum Qt::GlobalColor

    Qt's predefined QColor objects:

    \value white       \span {id="color-white"} {White (#ffffff) }
    \value black       \span {id="color-black"} {Black (#000000) }
    \value red         \span {id="color-red"} {Red (#ff0000) }
    \value darkRed     \span {id="color-darkRed"} {Dark red (#800000) }
    \value green       \span {id="color-green"} {Green (#00ff00) }
    \value darkGreen   \span {id="color-darkGreen"} {Dark green (#008000) }
    \value blue        \span {id="color-blue"} {Blue (#0000ff) }
    \value darkBlue    \span {id="color-darkBlue"} {Dark blue (#000080) }
    \value cyan        \span {id="color-cyan"} {Cyan (#00ffff) }
    \value darkCyan    \span {id="color-darkCyan"} {Dark cyan (#008080) }
    \value magenta     \span {id="color-magenta"} {Magenta (#ff00ff) }
    \value darkMagenta \span {id="color-darkMagenta"} {Dark magenta (#800080) }
    \value yellow      \span {id="color-yellow"} {Yellow (#ffff00) }
    \value darkYellow  \span {id="color-darkYellow"} {Dark yellow (#808000) }
    \value gray        \span {id="color-gray"} {Gray (#a0a0a4) }
    \value darkGray    \span {id="color-darkGray"} {Dark gray (#808080) }
    \value lightGray   \span {id="color-lightGray"} {Light gray (#c0c0c0) }
    \value transparent a transparent black value (i.e., QColor(0, 0, 0, 0))
    \value color0 0 pixel value (for bitmaps)
    \value color1 1 pixel value (for bitmaps)

    \sa QColor

*/

/*!
    \enum Qt::PenStyle

    This enum type defines the pen styles that can be drawn using
    QPainter. The styles are:

    \table
    \row
    \li \inlineimage qpen-solid.png
    \li \inlineimage qpen-dash.png
    \li \inlineimage qpen-dot.png
    \row
    \li Qt::SolidLine
    \li Qt::DashLine
    \li Qt::DotLine
    \row
    \li \inlineimage qpen-dashdot.png
    \li \inlineimage qpen-dashdotdot.png
    \li \inlineimage qpen-custom.png
    \row
    \li Qt::DashDotLine
    \li Qt::DashDotDotLine
    \li Qt::CustomDashLine
    \endtable

    \value NoPen  no line at all. For example, QPainter::drawRect()
    fills but does not draw any boundary line.

    \value SolidLine  A plain line.
    \value DashLine  Dashes separated by a few pixels.
    \value DotLine  Dots separated by a few pixels.
    \value DashDotLine  Alternate dots and dashes.
    \value DashDotDotLine  One dash, two dots, one dash, two dots.
    \value CustomDashLine  A custom pattern defined using
                           QPainterPathStroker::setDashPattern().

    \omitvalue MPenStyle

    \sa QPen
*/

/*!
    \enum Qt::PenCapStyle

    This enum type defines the pen cap styles supported by Qt, i.e.
    the line end caps that can be drawn using QPainter.

    \table
    \row
    \li \inlineimage qpen-square.png
    \li \inlineimage qpen-flat.png
    \li \inlineimage qpen-roundcap.png
    \row
    \li Qt::SquareCap
    \li Qt::FlatCap
    \li Qt::RoundCap
    \endtable

    \value FlatCap  a square line end that does not cover the end
        point of the line.
    \value SquareCap  a square line end that covers the end point and
        extends beyond it by half the line width.
    \value RoundCap  a rounded line end.
    \omitvalue MPenCapStyle

    \sa QPen
*/

/*!
    \enum Qt::PenJoinStyle

    This enum type defines the pen join styles supported by Qt, i.e.
    which joins between two connected lines can be drawn using
    QPainter.

    \table
    \row
    \li \inlineimage qpen-bevel.png
    \li \inlineimage qpen-miter.png
    \li \inlineimage qpen-roundjoin.png
    \row
    \li Qt::BevelJoin
    \li Qt::MiterJoin
    \li Qt::RoundJoin
    \endtable

    \value MiterJoin  The outer edges of the lines are extended to
           meet at an angle, and this area is filled.
    \value BevelJoin  The triangular notch between the two lines is filled.
    \value RoundJoin  A circular arc between the two lines is filled.
    \value SvgMiterJoin A miter join corresponding to the definition of
           a miter join in the \l{http://www.w3.org/TR/SVGMobile12/}{SVG 1.2 Tiny} specification.
    \omitvalue MPenJoinStyle

    \sa QPen
*/

/*!
    \enum Qt::BrushStyle

    This enum type defines the brush styles supported by Qt, i.e. the
    fill pattern of shapes drawn using QPainter.

    \image brush-styles.png Brush Styles

    \value NoBrush  No brush pattern.
    \value SolidPattern  Uniform color.
    \value Dense1Pattern  Extremely dense brush pattern.
    \value Dense2Pattern  Very dense brush pattern.
    \value Dense3Pattern  Somewhat dense brush pattern.
    \value Dense4Pattern  Half dense brush pattern.
    \value Dense5Pattern  Somewhat sparse brush pattern.
    \value Dense6Pattern  Very sparse brush pattern.
    \value Dense7Pattern  Extremely sparse brush pattern.
    \value HorPattern  Horizontal lines.
    \value VerPattern  Vertical lines.
    \value CrossPattern  Crossing horizontal and vertical lines.
    \value BDiagPattern  Backward diagonal lines.
    \value FDiagPattern  Forward diagonal lines.
    \value DiagCrossPattern  Crossing diagonal lines.
    \value LinearGradientPattern  Linear gradient (set using a dedicated QBrush constructor).
    \value ConicalGradientPattern  Conical gradient (set using a dedicated QBrush constructor).
    \value RadialGradientPattern  Radial gradient (set using a dedicated QBrush constructor).
    \value TexturePattern  Custom pattern (see QBrush::setTexture()).

    \sa QBrush
*/

/*!
    \enum Qt::TextFlag

    This enum type is used to define some modifier flags. Some of
    these flags only make sense in the context of printing:

    \value TextSingleLine Treats all whitespace as spaces and prints just
           one line.
    \value TextDontClip If it's impossible to stay within the given bounds,
           it prints outside.
    \value TextExpandTabs Makes the U+0009 (ASCII tab) character move to
           the next tab stop.
    \value TextShowMnemonic Displays the string "\&P" as \underline{P}
           For an ampersand, use "\&\&".
    \value TextWordWrap Breaks lines at appropriate points, e.g. at word
           boundaries.
    \value TextWrapAnywhere Breaks lines anywhere, even within words.
    \value TextHideMnemonic Same as Qt::TextShowMnemonic but doesn't draw
           the underlines.
    \value TextDontPrint Treat this text as "hidden" and don't print it.
    \value TextIncludeTrailingSpaces When this option is set,
           QTextLine::naturalTextWidth() and QTextLine::naturalTextRect() will
           return a value that includes the width of trailing spaces in the
           text; otherwise this width is excluded.
    \value TextJustificationForced Ensures that text lines are justified.

    \omitvalue TextLongestVariant
    \omitvalue TextBypassShaping
    \omitvalue TextForceLeftToRight
    \omitvalue TextForceRightToLeft

    You can use as many modifier flags as you want, except that
    Qt::TextSingleLine and Qt::TextWordWrap cannot be combined.

    Flags that are inappropriate for a given use are generally
    ignored.
*/

/*!
    \enum Qt::BGMode

    Background mode:

    \value TransparentMode
    \value OpaqueMode
*/

/*!
    \enum Qt::ConnectionType

    This enum describes the types of connection that can be used
    between signals and slots. In particular, it determines whether a
    particular signal is delivered to a slot immediately or queued for
    delivery at a later time.

    \value AutoConnection
           \b (Default) If the receiver \l{QObject#Thread Affinity}{lives in} the
           thread that emits the signal, Qt::DirectConnection is used. Otherwise,
           Qt::QueuedConnection is used. The connection type is
           determined when the signal is emitted.

    \value DirectConnection
           The slot is invoked immediately when the signal is
           emitted. The slot is executed in the signalling thread.

    \value QueuedConnection
           The slot is invoked when control returns to the event loop
           of the receiver's thread. The slot is executed in the
           receiver's thread.

    \value BlockingQueuedConnection
           Same as Qt::QueuedConnection, except that the signalling thread blocks
           until the slot returns. This connection must \e not be used if the
           receiver lives in the signalling thread, or else the application
           will deadlock.

    \value UniqueConnection
           This is a flag that can be combined with any one of the above
           connection types, using a bitwise OR. When Qt::UniqueConnection is
           set, QObject::connect() will fail if the connection already exists
           (i.e. if the same signal is already connected to the same slot
           for the same pair of objects). This flag was introduced in Qt 4.6.

    With queued connections, the parameters must be of types that are
    known to Qt's meta-object system, because Qt needs to copy the
    arguments to store them in an event behind the scenes. If you try
    to use a queued connection and get the error message:

    \snippet code/doc_src_qnamespace.qdoc 0

    Call qRegisterMetaType() to register the data type before you
    establish the connection.

    When using signals and slots with multiple threads, see \l{Signals and Slots Across Threads}.

    \sa {Thread Support in Qt}, QObject::connect(), qRegisterMetaType(), Q_DECLARE_METATYPE()
*/

/*!
    \enum Qt::DateFormat

    \value TextDate The default Qt format, which includes the day and month name,
    the day number in the month, and the year in full. The day and month names will
    be short, localized names. This is basically equivalent to using the date format
    string, "ddd MMM d yyyy". See QDate::toString() for more information.

    \value ISODate \l{ISO 8601} extended format: either \c{yyyy-MM-dd} for dates or
    \c{yyyy-MM-ddTHH:mm:ss} (e.g. 2017-07-24T15:46:29), or with a time-zone
    suffix (Z for UTC otherwise an offset as [+|-]HH:mm) where appropriate
    for combined dates and times.

    \value ISODateWithMs \l{ISO 8601} extended format, including milliseconds if applicable.

    \value SystemLocaleShortDate The \l{QLocale::ShortFormat}{short format} used
    by the \l{QLocale::system()}{operating system}.

    \value SystemLocaleLongDate The \l{QLocale::LongFormat}{long format} used
    by the \l{QLocale::system()}{operating system}.

    \value DefaultLocaleShortDate The \l{QLocale::ShortFormat}{short format} specified
    by the \l{QLocale::setDefault()}{application's locale}.

    \value DefaultLocaleLongDate The \l{QLocale::LongFormat}{long format} used
    by the \l{QLocale::setDefault()}{application's locale}.

    \value SystemLocaleDate \e{This enum value is deprecated.} Use Qt::SystemLocaleShortDate
    instead (or Qt::SystemLocaleLongDate if you want long dates).

    \value LocaleDate \e{This enum value is deprecated.} Use Qt::DefaultLocaleShortDate
    instead (or Qt::DefaultLocaleLongDate if you want long dates).

    \value LocalDate \e{This enum value is deprecated.} Use Qt::SystemLocaleShortDate
    instead (or Qt::SystemLocaleLongDate if you want long dates).

    \value RFC2822Date \l{RFC 2822}, \l{RFC 850} and \l{RFC 1036} format: either
    \c{[ddd,] dd MMM yyyy hh:mm[:ss] +/-TZ} or \c{ddd MMM dd yyyy hh:mm[:ss] +/-TZ}
    for combined dates and times.

    \note For \c ISODate formats, each \c Y, \c M and \c D represents a single digit
    of the year, month and day used to specify the date. Each \c H, \c M and \c S
    represents a single digit of the hour, minute and second used to specify the time.
    The presence of a literal \c T character is used to separate the date and time when
    both are specified.
*/


/*!
    \enum Qt::TimeSpec

    \value LocalTime Locale dependent time (Timezones and Daylight Savings Time).
    \value UTC Coordinated Universal Time, replaces Greenwich Mean Time.
    \value OffsetFromUTC An offset in seconds from Coordinated Universal Time.
    \value TimeZone A named time zone using a specific set of Daylight Savings rules.
*/

/*!
    \enum Qt::DayOfWeek

    \value Monday
    \value Tuesday
    \value Wednesday
    \value Thursday
    \value Friday
    \value Saturday
    \value Sunday
*/

/*!
    \enum Qt::CaseSensitivity

    \value CaseInsensitive
    \value CaseSensitive
*/

/*!
    \enum Qt::ToolBarArea

    \value LeftToolBarArea
    \value RightToolBarArea
    \value TopToolBarArea
    \value BottomToolBarArea
    \value AllToolBarAreas
    \value NoToolBarArea

    \omitvalue ToolBarArea_Mask
*/

/*!
    \enum Qt::DockWidgetArea

    \value LeftDockWidgetArea
    \value RightDockWidgetArea
    \value TopDockWidgetArea
    \value BottomDockWidgetArea
    \value AllDockWidgetAreas
    \value NoDockWidgetArea

    \omitvalue DockWidgetArea_Mask
*/

/*!
    \enum Qt::ImageConversionFlag

    The options marked "(default)" are set if no other values from
    the list are included (since the defaults are zero):

    Color/Mono preference (ignored for QBitmap):

    \value AutoColor (default) - If the image has \l{QImage::depth()}{depth} 1 and contains only
           black and white pixels, the pixmap becomes monochrome.
    \value ColorOnly The pixmap is dithered/converted to the
           \l{QPixmap::defaultDepth()}{native display depth}.
    \value MonoOnly The pixmap becomes monochrome. If necessary,
           it is dithered using the chosen dithering algorithm.

    Dithering mode preference:

    \value DiffuseDither (default) - A high-quality dither using error diffusion.
    \value OrderedDither A faster, ordered dither.
    \value ThresholdDither No dithering; closest color is used.

    Dithering mode preference for 1-bit alpha masks:

    \value ThresholdAlphaDither (default) - No dithering.
    \value OrderedAlphaDither A faster, ordered dither.
    \value DiffuseAlphaDither A high-quality dither using error diffusion.
    \omitvalue NoAlpha

    Color matching versus dithering preference:

    \value PreferDither Always dither images when converting to smaller color-spaces.
    \value AvoidDither Only dither to indexed formats if the source image uses more
           different colors than the size of the color table of the destination format.
    \value AutoDither (default) - Only dither when down-converting to 1 or 8-bit indexed formats.

    \omitvalue ColorMode_Mask
    \omitvalue Dither_Mask
    \omitvalue AlphaDither_Mask
    \omitvalue DitherMode_Mask

    \value NoOpaqueDetection Do not check whether the image contains non-opaque
           pixels. Use this if you know that the image is semi-transparent and
           you want to avoid the overhead of checking the pixels in the image
           until a non-opaque pixel is found, or if you want the pixmap to
           retain an alpha channel for some other reason. If the image has no
           alpha channel this flag has no effect.

    \value NoFormatConversion Don't do any format conversions on the image.
           Can be useful when converting a QImage to a QPixmap for a one-time
           rendering operation for example. Note that a QPixmap not in the
           preferred format will be much slower as a paint device.
*/

/*!
    \enum Qt::UIEffect

    This enum describes the available UI effects.

    By default, Qt will try to use the platform specific desktop
    settings for each effect. Use the
    QApplication::setDesktopSettingsAware() function (passing \c false
    as argument) to prevent this, and the
    QApplication::setEffectEnabled() to enable or disable a particular
    effect.

    Note that all effects are disabled on screens running at less than
    16-bit color depth.

    \omitvalue UI_General

    \value UI_AnimateMenu Show animated menus.
    \value UI_FadeMenu Show faded menus.
    \value UI_AnimateCombo Show animated comboboxes.
    \value UI_AnimateTooltip Show tooltip animations.
    \value UI_FadeTooltip Show tooltip fading effects.
    \value UI_AnimateToolBox Reserved

    \sa QApplication::setEffectEnabled(), QGuiApplication::setDesktopSettingsAware()
*/

/*! \enum Qt::AspectRatioMode

    This enum type defines what happens to the aspect ratio when
    scaling an rectangle.

    \image qimage-scaling.png

    \value IgnoreAspectRatio  The size is scaled freely. The aspect
                              ratio is not preserved.
    \value KeepAspectRatio  The size is scaled to a rectangle as
                            large as possible inside a given
                            rectangle, preserving the aspect ratio.
    \value KeepAspectRatioByExpanding  The size is scaled to a
                                       rectangle as small as possible
                                       outside a given rectangle,
                                       preserving the aspect ratio.

    \sa QSize::scale(), QImage::scaled()
*/

/*! \enum Qt::TransformationMode

    This enum type defines whether image transformations (e.g.,
    scaling) should be smooth or not.

    \value FastTransformation  The transformation is performed
                               quickly, with no smoothing.
    \value SmoothTransformation  The resulting image is transformed
                                 using bilinear filtering.

    \sa QImage::scaled()
*/

/*! \enum Qt::Axis

    This enum type defines three values to represent the three
    axes in the cartesian coordinate system.

    \value XAxis  The X axis.
    \value YAxis  The Y axis.
    \value ZAxis  The Z axis.

    \sa QTransform::rotate(), QTransform::rotateRadians()
 */

/*!
    \enum Qt::WidgetAttribute

    \keyword widget attributes

    This enum type is used to specify various widget attributes.
    Attributes are set and cleared with QWidget::setAttribute(), and
    queried with QWidget::testAttribute(), although some have special
    convenience functions which are mentioned below.

    \value WA_AcceptDrops Allows data from drag and drop operations
    to be dropped onto the widget (see QWidget::setAcceptDrops()).

    \value WA_AlwaysShowToolTips Enables tooltips for inactive windows.

    \value WA_ContentsPropagated This flag is superfluous and
    obsolete; it no longer has any effect. Since Qt 4.1, all widgets
    that do not set WA_PaintOnScreen propagate their contents.

    \value WA_CustomWhatsThis Indicates that the widget wants to
    continue operating normally in "What's This?" mode. This is set by the
    widget's author.

    \value WA_DeleteOnClose Makes Qt delete this widget when the
    widget has accepted the close event (see QWidget::closeEvent()).

    \value WA_Disabled Indicates that the widget is disabled, i.e.
    it does not receive any mouse or keyboard events. There is also a
    getter functions QWidget::isEnabled().  This is set/cleared by the
    Qt kernel.

    \value WA_DontShowOnScreen Indicates that the widget is hidden or is
    not a part of the viewable Desktop.

    \omitvalue WA_DropSiteRegistered
    \omitvalue WA_ForceAcceptDrops

    \value WA_ForceDisabled Indicates that the widget is
    explicitly disabled, i.e. it will remain disabled even when all
    its ancestors are set to the enabled state. This implies
    WA_Disabled. This is set/cleared by QWidget::setEnabled() and
    QWidget::setDisabled().

    \value WA_ForceUpdatesDisabled Indicates that updates are
    explicitly disabled for the widget; i.e. it will remain disabled
    even when all its ancestors are set to the updates-enabled state.
    This implies WA_UpdatesDisabled. This is set/cleared by
    QWidget::setUpdatesEnabled().

    \value WA_GroupLeader
        \e{This attribute has been deprecated.} Use QWidget::windowModality
        instead.

    \value WA_Hover Forces Qt to generate paint events when the mouse
    enters or leaves the widget. This feature is typically used when
    implementing custom styles; see the \l{widgets/styles}{Styles}
    example for details.

    \value WA_InputMethodEnabled Enables input methods for Asian languages.
    Must be set when creating custom text editing widgets.

    \value WA_KeyboardFocusChange Set on a toplevel window when
    the users changes focus with the keyboard (tab, backtab, or shortcut).

    \value WA_KeyCompression Enables key event compression if set,
    and disables it if not set. By default key compression is off, so
    widgets receive one key press event for each key press (or more,
    since autorepeat is usually on). If you turn it on and your
    program doesn't keep up with key input, Qt may try to compress key
    events so that more than one character can be processed in each
    event.
    For example, a word processor widget might receive 2, 3 or more
    characters in each QKeyEvent::text(), if the layout recalculation
    takes too long for the CPU.
    If a widget supports multiple character unicode input, it is
    always safe to turn the compression on.
    Qt performs key event compression only for printable characters.
    Qt::Modifier keys, cursor movement keys, function keys and
    miscellaneous action keys (e.g. Escape, Enter, Backspace,
    PrintScreen) will stop key event compression, even if there are
    more compressible key events available.
    Platforms other than Mac and X11 do not support this compression,
    in which case turning it on will have no effect.
    This is set/cleared by the widget's author.

    \value WA_LayoutOnEntireRect Indicates that the widget
    wants QLayout to operate on the entire QWidget::rect(), not only
    on QWidget::contentsRect(). This is set by the widget's author.

    \value WA_LayoutUsesWidgetRect Ignore the layout item rect from the style
    when laying out this widget with QLayout.

    \value WA_MacNoClickThrough This value is obsolete and has no effect.

    \value WA_MacOpaqueSizeGrip Indicates that the native Carbon size grip
    should be opaque instead of transparent (the default). This attribute
    is only applicable to \macos and is set by the widget's author.

    \value WA_MacShowFocusRect Indicates that this widget should get a
    QFocusFrame around it. Some widgets draw their own focus halo
    regardless of this attribute. Not that the QWidget::focusPolicy
    also plays the main role in whether something is given focus or
    not, this only controls whether or not this gets the focus
    frame. This attribute is only applicable to \macos.

    \value WA_MacNormalSize Indicates the widget should have the
    normal size for widgets in \macos. This attribute is only
    applicable to \macos.

    \value WA_MacSmallSize Indicates the widget should have the small
    size for widgets in \macos. This attribute is only applicable to
    \macos.

    \value WA_MacMiniSize Indicates the widget should have the mini
    size for widgets in \macos. This attribute is only applicable to
    \macos.

    \value WA_MacVariableSize Indicates the widget can choose between
    alternative sizes for widgets to avoid clipping.
    This attribute is only applicable to \macos.

    \value WA_MacBrushedMetal This value is obsolete and has no effect.

    \omitvalue WA_MacMetalStyle

    \value WA_Mapped Indicates that the widget is mapped on screen.
    This is set/cleared by the Qt kernel.

    \value WA_MouseNoMask Makes the widget receive mouse events for
    the entire widget regardless of the currently set mask,
    overriding QWidget::setMask(). This is not applicable for
    top-level windows.

    \value WA_MouseTracking Indicates that the widget has mouse
    tracking enabled. See QWidget::mouseTracking.

    \value WA_Moved Indicates that the widget has an explicit
    position. This is set/cleared by QWidget::move() and
    by QWidget::setGeometry().

    \value WA_MSWindowsUseDirect3D This value is obsolete and has no
    effect.

    \value WA_NoBackground This value is obsolete. Use
    WA_OpaquePaintEvent instead.

    \value WA_NoChildEventsForParent Indicates that the widget does
    not want ChildAdded or ChildRemoved events sent to its
    parent. This is rarely necessary but can help to avoid automatic
    insertion widgets like splitters and layouts. This is set by a
    widget's author.

    \value WA_NoChildEventsFromChildren Indicates that the widget does
    not want to receive ChildAdded or ChildRemoved events sent from its
    children. This is set by a widget's author.

    \value WA_NoMouseReplay Used for pop-up widgets. Indicates that the most
    recent mouse press event should not be replayed when the pop-up widget
    closes. The flag is set by the widget's author and cleared by the Qt kernel
    every time the widget receives a new mouse event.

    \value WA_NoMousePropagation Prohibits mouse events from being propagated
    to the widget's parent. This attribute is disabled by default.

    \value WA_TransparentForMouseEvents When enabled, this attribute disables
    the delivery of mouse events to the widget and its children. Mouse events
    are delivered to other widgets as if the widget and its children were not
    present in the widget hierarchy; mouse clicks and other events effectively
    "pass through" them. This attribute is disabled by default.

    \value WA_NoSystemBackground Indicates that the widget has no background,
    i.e. when the widget receives paint events, the background is not
    automatically repainted. \b Note: Unlike WA_OpaquePaintEvent, newly exposed
    areas are \b never filled with the background (e.g., after showing a
    window for the first time the user can see "through" it until the
    application processes the paint events). This flag is set or cleared by the
    widget's author.

    \value WA_OpaquePaintEvent Indicates that the widget paints all its pixels
    when it receives a paint event. Thus, it is not required for operations
    like updating, resizing, scrolling and focus changes to erase the widget
    before generating paint events. The use of WA_OpaquePaintEvent provides a
    small optimization by helping to reduce flicker on systems that do not
    support double buffering and avoiding computational cycles necessary to
    erase the background prior to painting. \b Note: Unlike
    WA_NoSystemBackground, WA_OpaquePaintEvent makes an effort to avoid
    transparent window backgrounds. This flag is set or cleared by the widget's
    author.

    \value WA_OutsideWSRange Indicates that the widget is outside
    the valid range of the window system's coordinate system. A widget
    outside the valid range cannot be mapped on screen. This is
    set/cleared by the Qt kernel.

    \value WA_PaintOnScreen Indicates that the widget wants to draw directly
    onto the screen. Widgets with this attribute set do not participate in
    composition management, i.e. they cannot be semi-transparent or shine
    through semi-transparent overlapping widgets. \b Note: This flag is only
    supported on X11 and it disables double buffering. On Qt for Embedded
    Linux, the flag only works when set on a top-level widget and it relies on
    support from the active screen driver. This flag is set or cleared by the
    widget's author. To render outside of Qt's paint system, e.g., if you
    require native painting primitives, you need to reimplement
    QWidget::paintEngine() to return 0 and set this flag.

    \value WA_PaintUnclipped Makes all painters operating on this widget
    unclipped. Children of this widget or other widgets in front of it do not
    clip the area the painter can paint on. This flag is only supported for
    widgets with the WA_PaintOnScreen flag set. The preferred way to do this in
    a cross platform way is to create a transparent widget that lies in front
    of the other widgets.

    \value WA_PendingMoveEvent Indicates that a move event is pending, e.g.,
    when a hidden widget was moved. This flag is set or cleared by the Qt
    kernel.

    \value WA_PendingResizeEvent Indicates that a resize event is pending,
    e.g., when a hidden widget was resized. This flag is set or cleared by the
    Qt kernel.

    \value WA_QuitOnClose Makes Qt quit the application when the last widget
    with the attribute set has accepted closeEvent(). This behavior can be
    modified with the QApplication::quitOnLastWindowClosed property. By default
    this attribute is set for all widgets of type Qt::Window.

    \value WA_Resized Indicates that the widget has an explicit size. This flag
    is set or cleared by QWidget::resize() and QWidget::setGeometry().

    \value WA_RightToLeft Indicates that the layout direction for the widget
    is right to left.

    \value WA_SetCursor Indicates that the widget has a cursor of its own. This
    flag is set or cleared by QWidget::setCursor() and QWidget::unsetCursor().

    \value WA_SetFont Indicates that the widget has a font of its own. This
    flag is set or cleared by QWidget::setFont().

    \value WA_SetPalette Indicates that the widget has a palette of its own.
    This flag is set or cleared by QWidget::setPalette().

    \value WA_SetStyle Indicates that the widget has a style of its own. This
    flag is set or cleared by QWidget::setStyle().

    \value WA_ShowModal \e{This attribute has been deprecated.} Use
    QWidget::windowModality instead.

    \value WA_StaticContents Indicates that the widget contents are north-west
    aligned and static. On resize, such a widget will receive paint events only
    for parts of itself that are newly visible. This flag is set or cleared by
    the widget's author.

    \value WA_StyleSheet Indicates that the widget is styled using a
    \l{Qt Style Sheets}{style sheet}. WA_StyleSheet is set whenever a widget
    is subject to a style sheet, even if the style sheet did not affect the
    widget appearance.

    \value WA_StyleSheetTarget Indicates that the widget appearance was modified
    by a \l{Qt Style Sheets}{style sheet}. WA_StyleSheet will also be set.

    \value WA_TabletTracking Indicates that the widget has tablet
    tracking enabled. See QWidget::tabletTracking.

    \value WA_TranslucentBackground Indicates that the widget should have a
    translucent background, i.e., any non-opaque regions of the widgets will be
    translucent because the widget will have an alpha channel. Setting this
    flag causes WA_NoSystemBackground to be set. On Windows the
    widget also needs the Qt::FramelessWindowHint window flag to be set.
    This flag is set or cleared by the widget's author.

    \value WA_UnderMouse Indicates that the widget is under the mouse cursor.
    The value is not updated correctly during drag and drop operations. There
    is also a getter function, QWidget::underMouse(). This flag is set or
    cleared by the Qt kernel.

    \value WA_UpdatesDisabled Indicates that updates are blocked (including the
    system background). This flag is set or cleared by the Qt kernel.
    \b Warning: This flag must \e never be set or cleared by the widget's author.

    \value WA_WindowModified Indicates that the window is marked as modified.
    On some platforms this flag will do nothing, on others (including \macos
    and Windows) the window will take a modified appearance. This flag is set
    or cleared by QWidget::setWindowModified().

    \value WA_WindowPropagation Makes a toplevel window inherit font, palette
    and locale from its parent.

    \value WA_MacAlwaysShowToolWindow On \macos, show the tool window even
    when the application is not active.  By default, all tool windows are
    hidden when the application is inactive.

    \value WA_SetLocale Indicates the locale should be taken into consideration
    in the widget.

    \value WA_StyledBackground Indicates the widget should be drawn using a
    styled background.

    \value WA_ShowWithoutActivating Show the widget without making it active.

    \value WA_NativeWindow Indicates that a native window is created for the
    widget. Enabling this flag will also force a native window for the widget's
    ancestors unless Qt::WA_DontCreateNativeAncestors is set.

    \value WA_DontCreateNativeAncestors Indicates that the widget's ancestors
    are kept non-native even though the widget itself is native.

    \value WA_X11NetWmWindowTypeDesktop Adds _NET_WM_WINDOW_TYPE_DESKTOP to the
    window's _NET_WM_WINDOW_TYPE X11 window property. See
    http://standards.freedesktop.org/wm-spec/ for more details. This attribute
    has no effect on non-X11 platforms.

    \value WA_X11NetWmWindowTypeDock Adds _NET_WM_WINDOW_TYPE_DOCK to the
    window's _NET_WM_WINDOW_TYPE X11 window property. See
    http://standards.freedesktop.org/wm-spec/ for more details. This attribute
    has no effect on non-X11 platforms.

    \value WA_X11NetWmWindowTypeToolBar Adds _NET_WM_WINDOW_TYPE_TOOLBAR to the
    window's _NET_WM_WINDOW_TYPE X11 window property. See
    http://standards.freedesktop.org/wm-spec/ for more details. This attribute
    has no effect on non-X11 platforms. \b Note: Qt automatically sets this
    attribute for QToolBar.

    \value WA_X11NetWmWindowTypeMenu Adds _NET_WM_WINDOW_TYPE_MENU to the
    window's _NET_WM_WINDOW_TYPE X11 window property. See
    http://standards.freedesktop.org/wm-spec/ for more details. This attribute
    has no effect on non-X11 platforms. \b Note: Qt automatically sets this
    attribute for QMenu when torn-off.

    \value WA_X11NetWmWindowTypeUtility Adds _NET_WM_WINDOW_TYPE_UTILITY to the
    window's _NET_WM_WINDOW_TYPE X11 window property. See
    http://standards.freedesktop.org/wm-spec/ for more details. This attribute
    has no effect on non-X11 platforms. \b Note: Qt automatically sets this
    attribute for the Qt::Tool window type.

    \value WA_X11NetWmWindowTypeSplash Adds _NET_WM_WINDOW_TYPE_SPLASH to the
    window's _NET_WM_WINDOW_TYPE X11 window property. See
    http://standards.freedesktop.org/wm-spec/ for more details. This attribute
    has no effect on non-X11 platforms. \b Note: Qt automatically sets this
    attribute for the Qt::SplashScreen window type.

    \value WA_X11NetWmWindowTypeDialog Adds _NET_WM_WINDOW_TYPE_DIALOG
    to the window's _NET_WM_WINDOW_TYPE X11 window property. See
    http://standards.freedesktop.org/wm-spec/ for more details. This
    attribute has no effect on non-X11 platforms. \b Note: Qt automatically sets
    this attribute for the Qt::Dialog and Qt::Sheet window types.

    \value WA_X11NetWmWindowTypeDropDownMenu Adds
    _NET_WM_WINDOW_TYPE_DROPDOWN_MENU to the window's
    _NET_WM_WINDOW_TYPE X11 window property. See
    http://standards.freedesktop.org/wm-spec/ for more details. This
    attribute has no effect on non-X11 platforms. \b Note: Qt
    automatically sets this attribute for QMenu objects added to a QMenuBar.

    \value WA_X11NetWmWindowTypePopupMenu Adds _NET_WM_WINDOW_TYPE_POPUP_MENU
    to the window's _NET_WM_WINDOW_TYPE X11 window property. See
    http://standards.freedesktop.org/wm-spec/ for more details. This attribute
    has no effect on non-X11 platforms. \b Note: Qt automatically sets this
    attribute for QMenu.

    \value WA_X11NetWmWindowTypeToolTip Adds _NET_WM_WINDOW_TYPE_TOOLTIP to the
    window's _NET_WM_WINDOW_TYPE X11 window property. See
    http://standards.freedesktop.org/wm-spec/ for more details. This attribute
    has no effect on non-X11 platforms. \b Note: Qt automatically sets this
    attribute for the Qt::ToolTip window type.

    \value WA_X11NetWmWindowTypeNotification Adds
    _NET_WM_WINDOW_TYPE_NOTIFICATION to the window's _NET_WM_WINDOW_TYPE X11
    window property. See http://standards.freedesktop.org/wm-spec/ for more
    details. This attribute has no effect on non-X11 platforms.

    \value WA_X11NetWmWindowTypeCombo Adds _NET_WM_WINDOW_TYPE_COMBO
    to the window's _NET_WM_WINDOW_TYPE X11 window property. See
    http://standards.freedesktop.org/wm-spec/ for more details. This attribute
    has no effect on non-X11 platforms. \b Note: Qt automatically sets this
    attribute for the QComboBox pop-up.

    \value WA_X11NetWmWindowTypeDND Adds _NET_WM_WINDOW_TYPE_DND to
    the window's _NET_WM_WINDOW_TYPE X11 window property. See
    http://standards.freedesktop.org/wm-spec/ for more details. This attribute
    has no effect on non-X11 platforms. \b Note: Qt automatically sets this
    attribute on the feedback widget used during a drag.

    \value WA_MacFrameworkScaled This value is obsolete and has no effect.

    \value WA_AcceptTouchEvents Allows touch events (see QTouchEvent)
    to be sent to the widget. Must be set on all widgets that can
    handle touch events. Without this attribute set, events from a
    touch device will be sent as mouse events.

    \value WA_TouchPadAcceptSingleTouchEvents Allows touchpad single
    touch events to be sent to the widget.

    \value WA_X11DoNotAcceptFocus Asks the window manager to not give focus
    to this top level window. This attribute has no effect on non-X11
    platforms.

    \value WA_AlwaysStackOnTop Since Qt 5.4, this value forces QOpenGLWidget and
    QQuickWidget to be drawn last, on top of other widgets. Ignored for other
    type of widgets. Setting this attribute breaks the stacking order, but
    allows having a semi-transparent OpenGL widget with other widgets visible
    underneath. It is strongly recommended to call update() on the widget's
    top-level window after enabling or disabling this attribute.

    \omitvalue WA_SetLayoutDirection
    \omitvalue WA_InputMethodTransparent
    \omitvalue WA_WState_CompressKeys
    \omitvalue WA_WState_ConfigPending
    \omitvalue WA_WState_Created
    \omitvalue WA_WState_DND
    \omitvalue WA_WState_ExplicitShowHide
    \omitvalue WA_WState_Hidden
    \omitvalue WA_WState_InPaintEvent
    \omitvalue WA_WState_OwnSizePolicy
    \omitvalue WA_WState_Polished
    \omitvalue WA_WState_Reparented
    \omitvalue WA_WState_Visible
    \omitvalue WA_SetWindowIcon
    \omitvalue WA_PendingUpdate
    \omitvalue WA_LaidOut
    \omitvalue WA_GrabbedShortcut
    \omitvalue WA_DontShowOnScreen
    \omitvalue WA_InvalidSize
    \omitvalue WA_ForceUpdatesDisabled
    \omitvalue WA_NoX11EventCompression
    \omitvalue WA_TintedBackground
    \omitvalue WA_X11OpenGLOverlay
    \omitvalue WA_CanHostQMdiSubWindowTitleBar
    \omitvalue WA_AttributeCount
    \omitvalue WA_StyleSheet
    \omitvalue WA_X11BypassTransientForHint
    \omitvalue WA_SetWindowModality
    \omitvalue WA_WState_WindowOpacitySet
    \omitvalue WA_WState_AcceptedTouchBeginEvent
    \omitvalue WA_MacNoShadow
    \value WA_ContentsMarginsRespectsSafeArea A QWidget respects the safe
    area margins of a window by incorporating the margins into its contents'
    margins by default. This means, that a QLayout will use the content area
    of a widget for its layout, unless the Qt::WA_LayoutOnEntireRect attribute
    is set. This along with a contents margin of 0 can be used on the actual
    layout, to allow for example a background image to underlay the status bar and other
    system areas on an iOS device, while still allowing child widgets of
    that background to be inset based on the safe area.
*/

/*! \typedef Qt::HANDLE

    A handle type for system objects, defined as \c{void *}
    on all platforms.
*/

/*!
    \enum Qt::Key

    The key names used by Qt.

    \value Key_Escape
    \value Key_Tab
    \value Key_Backtab
    \value Key_Backspace
    \value Key_Return
    \value Key_Enter     Typically located on the keypad.
    \value Key_Insert
    \value Key_Delete
    \value Key_Pause    The Pause/Break key (\b Note: Not related to pausing media)
    \value Key_Print
    \value Key_SysReq
    \value Key_Clear    Corresponds to the \b Clear key on selected Apple
                        keyboard models. On other systems it is commonly mapped
                        to the numeric keypad key \b 5, when \b {Num Lock} is
                        \c off.
    \value Key_Home
    \value Key_End
    \value Key_Left
    \value Key_Up
    \value Key_Right
    \value Key_Down
    \value Key_PageUp
    \value Key_PageDown
    \value Key_Shift
    \value Key_Control    On \macos, this corresponds to the Command keys.
    \value Key_Meta       On \macos, this corresponds to the Control keys.
                          On Windows keyboards, this key is mapped to the
                          Windows key.
    \value Key_Alt
    \value Key_AltGr      On Windows, when the KeyDown event for this key is
                          sent, the Ctrl+Alt modifiers are also set.
    \value Key_CapsLock
    \value Key_NumLock
    \value Key_ScrollLock
    \value Key_F1
    \value Key_F2
    \value Key_F3
    \value Key_F4
    \value Key_F5
    \value Key_F6
    \value Key_F7
    \value Key_F8
    \value Key_F9
    \value Key_F10
    \value Key_F11
    \value Key_F12
    \value Key_F13
    \value Key_F14
    \value Key_F15
    \value Key_F16
    \value Key_F17
    \value Key_F18
    \value Key_F19
    \value Key_F20
    \value Key_F21
    \value Key_F22
    \value Key_F23
    \value Key_F24
    \value Key_F25
    \value Key_F26
    \value Key_F27
    \value Key_F28
    \value Key_F29
    \value Key_F30
    \value Key_F31
    \value Key_F32
    \value Key_F33
    \value Key_F34
    \value Key_F35
    \value Key_Super_L
    \value Key_Super_R
    \value Key_Menu
    \value Key_Hyper_L
    \value Key_Hyper_R
    \value Key_Help
    \value Key_Direction_L
    \value Key_Direction_R
    \value Key_Space
    \value Key_Any
    \value Key_Exclam
    \value Key_QuoteDbl
    \value Key_NumberSign
    \value Key_Dollar
    \value Key_Percent
    \value Key_Ampersand
    \value Key_Apostrophe
    \value Key_ParenLeft
    \value Key_ParenRight
    \value Key_Asterisk
    \value Key_Plus
    \value Key_Comma
    \value Key_Minus
    \value Key_Period
    \value Key_Slash
    \value Key_0
    \value Key_1
    \value Key_2
    \value Key_3
    \value Key_4
    \value Key_5
    \value Key_6
    \value Key_7
    \value Key_8
    \value Key_9
    \value Key_Colon
    \value Key_Semicolon
    \value Key_Less
    \value Key_Equal
    \value Key_Greater
    \value Key_Question
    \value Key_At
    \value Key_A
    \value Key_B
    \value Key_C
    \value Key_D
    \value Key_E
    \value Key_F
    \value Key_G
    \value Key_H
    \value Key_I
    \value Key_J
    \value Key_K
    \value Key_L
    \value Key_M
    \value Key_N
    \value Key_O
    \value Key_P
    \value Key_Q
    \value Key_R
    \value Key_S
    \value Key_T
    \value Key_U
    \value Key_V
    \value Key_W
    \value Key_X
    \value Key_Y
    \value Key_Z
    \value Key_BracketLeft
    \value Key_Backslash
    \value Key_BracketRight
    \value Key_AsciiCircum
    \value Key_Underscore
    \value Key_QuoteLeft
    \value Key_BraceLeft
    \value Key_Bar
    \value Key_BraceRight
    \value Key_AsciiTilde
    \value Key_nobreakspace
    \value Key_exclamdown
    \value Key_cent
    \value Key_sterling
    \value Key_currency
    \value Key_yen
    \value Key_brokenbar
    \value Key_section
    \value Key_diaeresis
    \value Key_copyright
    \value Key_ordfeminine
    \value Key_guillemotleft
    \value Key_notsign
    \value Key_hyphen
    \value Key_registered
    \value Key_macron
    \value Key_degree
    \value Key_plusminus
    \value Key_twosuperior
    \value Key_threesuperior
    \value Key_acute
    \value Key_mu
    \value Key_paragraph
    \value Key_periodcentered
    \value Key_cedilla
    \value Key_onesuperior
    \value Key_masculine
    \value Key_guillemotright
    \value Key_onequarter
    \value Key_onehalf
    \value Key_threequarters
    \value Key_questiondown
    \value Key_Agrave
    \value Key_Aacute
    \value Key_Acircumflex
    \value Key_Atilde
    \value Key_Adiaeresis
    \value Key_Aring
    \value Key_AE
    \value Key_Ccedilla
    \value Key_Egrave
    \value Key_Eacute
    \value Key_Ecircumflex
    \value Key_Ediaeresis
    \value Key_Igrave
    \value Key_Iacute
    \value Key_Icircumflex
    \value Key_Idiaeresis
    \value Key_ETH
    \value Key_Ntilde
    \value Key_Ograve
    \value Key_Oacute
    \value Key_Ocircumflex
    \value Key_Otilde
    \value Key_Odiaeresis
    \value Key_multiply
    \value Key_Ooblique
    \value Key_Ugrave
    \value Key_Uacute
    \value Key_Ucircumflex
    \value Key_Udiaeresis
    \value Key_Yacute
    \value Key_THORN
    \value Key_ssharp
    \value Key_division
    \value Key_ydiaeresis
    \value Key_Multi_key
    \value Key_Codeinput
    \value Key_SingleCandidate
    \value Key_MultipleCandidate
    \value Key_PreviousCandidate
    \value Key_Mode_switch
    \value Key_Kanji
    \value Key_Muhenkan
    \value Key_Henkan
    \value Key_Romaji
    \value Key_Hiragana
    \value Key_Katakana
    \value Key_Hiragana_Katakana
    \value Key_Zenkaku
    \value Key_Hankaku
    \value Key_Zenkaku_Hankaku
    \value Key_Touroku
    \value Key_Massyo
    \value Key_Kana_Lock
    \value Key_Kana_Shift
    \value Key_Eisu_Shift
    \value Key_Eisu_toggle
    \value Key_Hangul
    \value Key_Hangul_Start
    \value Key_Hangul_End
    \value Key_Hangul_Hanja
    \value Key_Hangul_Jamo
    \value Key_Hangul_Romaja
    \value Key_Hangul_Jeonja
    \value Key_Hangul_Banja
    \value Key_Hangul_PreHanja
    \value Key_Hangul_PostHanja
    \value Key_Hangul_Special
    \value Key_Dead_Grave
    \value Key_Dead_Acute
    \value Key_Dead_Circumflex
    \value Key_Dead_Tilde
    \value Key_Dead_Macron
    \value Key_Dead_Breve
    \value Key_Dead_Abovedot
    \value Key_Dead_Diaeresis
    \value Key_Dead_Abovering
    \value Key_Dead_Doubleacute
    \value Key_Dead_Caron
    \value Key_Dead_Cedilla
    \value Key_Dead_Ogonek
    \value Key_Dead_Iota
    \value Key_Dead_Voiced_Sound
    \value Key_Dead_Semivoiced_Sound
    \value Key_Dead_Belowdot
    \value Key_Dead_Hook
    \value Key_Dead_Horn
    \value Key_Dead_Stroke
    \value Key_Dead_Abovecomma
    \value Key_Dead_Abovereversedcomma
    \value Key_Dead_Doublegrave
    \value Key_Dead_Belowring
    \value Key_Dead_Belowmacron
    \value Key_Dead_Belowcircumflex
    \value Key_Dead_Belowtilde
    \value Key_Dead_Belowbreve
    \value Key_Dead_Belowdiaeresis
    \value Key_Dead_Invertedbreve
    \value Key_Dead_Belowcomma
    \value Key_Dead_Currency
    \value Key_Dead_a
    \value Key_Dead_A
    \value Key_Dead_e
    \value Key_Dead_E
    \value Key_Dead_i
    \value Key_Dead_I
    \value Key_Dead_o
    \value Key_Dead_O
    \value Key_Dead_u
    \value Key_Dead_U
    \value Key_Dead_Small_Schwa
    \value Key_Dead_Capital_Schwa
    \value Key_Dead_Greek
    \value Key_Dead_Lowline
    \value Key_Dead_Aboveverticalline
    \value Key_Dead_Belowverticalline
    \value Key_Dead_Longsolidusoverlay
    \value Key_Back
    \value Key_Forward
    \value Key_Stop
    \value Key_Refresh
    \value Key_VolumeDown
    \value Key_VolumeMute
    \value Key_VolumeUp
    \value Key_BassBoost
    \value Key_BassUp
    \value Key_BassDown
    \value Key_TrebleUp
    \value Key_TrebleDown
    \value Key_MediaPlay    A key setting the state of the media player to play
    \value Key_MediaStop    A key setting the state of the media player to stop
    \value Key_MediaPrevious
    \value Key_MediaNext
    \value Key_MediaRecord
    \value Key_MediaPause   A key setting the state of the media player to pause (\b Note: not the pause/break key)
    \value Key_MediaTogglePlayPause   A key to toggle the play/pause state in the media player (rather than setting an absolute state)
    \value Key_HomePage
    \value Key_Favorites
    \value Key_Search
    \value Key_Standby
    \value Key_OpenUrl
    \value Key_LaunchMail
    \value Key_LaunchMedia
    \value Key_Launch0 On X11 this key is mapped to "My Computer" (XF86XK_MyComputer) key for legacy reasons.
    \value Key_Launch1 On X11 this key is mapped to "Calculator" (XF86XK_Calculator) key for legacy reasons.
    \value Key_Launch2 On X11 this key is mapped to XF86XK_Launch0 key for legacy reasons.
    \value Key_Launch3 On X11 this key is mapped to XF86XK_Launch1 key for legacy reasons.
    \value Key_Launch4 On X11 this key is mapped to XF86XK_Launch2 key for legacy reasons.
    \value Key_Launch5 On X11 this key is mapped to XF86XK_Launch3 key for legacy reasons.
    \value Key_Launch6 On X11 this key is mapped to XF86XK_Launch4 key for legacy reasons.
    \value Key_Launch7 On X11 this key is mapped to XF86XK_Launch5 key for legacy reasons.
    \value Key_Launch8 On X11 this key is mapped to XF86XK_Launch6 key for legacy reasons.
    \value Key_Launch9 On X11 this key is mapped to XF86XK_Launch7 key for legacy reasons.
    \value Key_LaunchA On X11 this key is mapped to XF86XK_Launch8 key for legacy reasons.
    \value Key_LaunchB On X11 this key is mapped to XF86XK_Launch9 key for legacy reasons.
    \value Key_LaunchC On X11 this key is mapped to XF86XK_LaunchA key for legacy reasons.
    \value Key_LaunchD On X11 this key is mapped to XF86XK_LaunchB key for legacy reasons.
    \value Key_LaunchE On X11 this key is mapped to XF86XK_LaunchC key for legacy reasons.
    \value Key_LaunchF On X11 this key is mapped to XF86XK_LaunchD key for legacy reasons.
    \value Key_LaunchG On X11 this key is mapped to XF86XK_LaunchE key for legacy reasons.
    \value Key_LaunchH On X11 this key is mapped to XF86XK_LaunchF key for legacy reasons.
    \value Key_MonBrightnessUp
    \value Key_MonBrightnessDown
    \value Key_KeyboardLightOnOff
    \value Key_KeyboardBrightnessUp
    \value Key_KeyboardBrightnessDown
    \value Key_PowerOff
    \value Key_WakeUp
    \value Key_Eject
    \value Key_ScreenSaver
    \value Key_WWW
    \value Key_Memo
    \value Key_LightBulb
    \value Key_Shop
    \value Key_History
    \value Key_AddFavorite
    \value Key_HotLinks
    \value Key_BrightnessAdjust
    \value Key_Finance
    \value Key_Community
    \value Key_AudioRewind
    \value Key_BackForward
    \value Key_ApplicationLeft
    \value Key_ApplicationRight
    \value Key_Book
    \value Key_CD
    \value Key_Calculator On X11 this key is not mapped for legacy reasons. Use Qt::Key_Launch1 instead.
    \value Key_ToDoList
    \value Key_ClearGrab
    \value Key_Close
    \value Key_Copy
    \value Key_Cut
    \value Key_Display
    \value Key_DOS
    \value Key_Documents
    \value Key_Excel
    \value Key_Explorer
    \value Key_Game
    \value Key_Go
    \value Key_iTouch
    \value Key_LogOff
    \value Key_Market
    \value Key_Meeting
    \value Key_MenuKB
    \value Key_MenuPB
    \value Key_MySites
    \value Key_News
    \value Key_OfficeHome
    \value Key_Option
    \value Key_Paste
    \value Key_Phone
    \value Key_Calendar
    \value Key_Reply
    \value Key_Reload
    \value Key_RotateWindows
    \value Key_RotationPB
    \value Key_RotationKB
    \value Key_Save
    \value Key_Send
    \value Key_Spell
    \value Key_SplitScreen
    \value Key_Support
    \value Key_TaskPane
    \value Key_Terminal
    \value Key_Tools
    \value Key_Travel
    \value Key_Video
    \value Key_Word
    \value Key_Xfer
    \value Key_ZoomIn
    \value Key_ZoomOut
    \value Key_Away
    \value Key_Messenger
    \value Key_WebCam
    \value Key_MailForward
    \value Key_Pictures
    \value Key_Music
    \value Key_Battery
    \value Key_Bluetooth
    \value Key_WLAN
    \value Key_UWB
    \value Key_AudioForward
    \value Key_AudioRepeat
    \value Key_AudioRandomPlay
    \value Key_Subtitle
    \value Key_AudioCycleTrack
    \value Key_Time
    \value Key_Hibernate
    \value Key_View
    \value Key_TopMenu
    \value Key_PowerDown
    \value Key_Suspend
    \value Key_ContrastAdjust
    \value Key_TouchpadToggle
    \value Key_TouchpadOn
    \value Key_TouchpadOff
    \value Key_MicMute
    \value Key_Red
    \value Key_Green
    \value Key_Yellow
    \value Key_Blue
    \value Key_ChannelUp
    \value Key_ChannelDown
    \value Key_Guide
    \value Key_Info
    \value Key_Settings
    \value Key_MicVolumeUp
    \value Key_MicVolumeDown
    \value Key_New
    \value Key_Open
    \value Key_Find
    \value Key_Undo
    \value Key_Redo
    \value Key_MediaLast
    \value Key_unknown

    \value Key_Call     A key to answer or initiate a call (see Qt::Key_ToggleCallHangup for a key to toggle current call state)
    \value Key_Camera   A key to activate the camera shutter. On Windows Runtime, the environment variable QT_QPA_ENABLE_CAMERA_KEYS must be set to receive the event.
    \value Key_CameraFocus  A key to focus the camera. On Windows Runtime, the environment variable QT_QPA_ENABLE_CAMERA_KEYS must be set to receive the event.
    \value Key_Context1
    \value Key_Context2
    \value Key_Context3
    \value Key_Context4
    \value Key_Flip
    \value Key_Hangup   A key to end an ongoing call (see Qt::Key_ToggleCallHangup for a key to toggle current call state)
    \value Key_No
    \value Key_Select
    \value Key_Yes
    \value Key_ToggleCallHangup A key to toggle the current call state (ie. either answer, or hangup) depending on current call state
    \value Key_VoiceDial
    \value Key_LastNumberRedial

    \value Key_Execute
    \value Key_Printer
    \value Key_Play
    \value Key_Sleep
    \value Key_Zoom
    \value Key_Exit
    \value Key_Cancel

    \sa QKeyEvent::key()
*/

/*!
    \enum Qt::HitTestAccuracy

    This enum contains the types of accuracy that can be used by the
    QTextDocument class when testing for mouse clicks on text documents.

    \value ExactHit The point at which input occurred must coincide
                    exactly with input-sensitive parts of the document.
    \value FuzzyHit The point at which input occurred can lie close to
                    input-sensitive parts of the document.
*/

/*!
    \enum Qt::WhiteSpaceMode

    This enum describes the types of whitespace mode that are used by
    the QTextDocument class to meet the requirements of different kinds
    of textual information.

    \value WhiteSpaceNormal         The whitespace mode used to display
                                    normal word wrapped text in paragraphs.
    \value WhiteSpacePre            A preformatted text mode in which
                                    whitespace is reproduced exactly.
    \value WhiteSpaceNoWrap

    \omitvalue WhiteSpaceModeUndefined
*/

/*!
    \enum Qt::CheckState

    This enum describes the state of checkable items, controls, and widgets.

    \value Unchecked        The item is unchecked.
    \value PartiallyChecked The item is partially checked. Items in hierarchical models
                            may be partially checked if some, but not all, of their
                            children are checked.
    \value Checked          The item is checked.

    \sa QCheckBox, Qt::ItemFlags, Qt::ItemDataRole
*/


/*!
    \enum Qt::ToolButtonStyle

    The style of the tool button, describing how the button's text and
    icon should be displayed.

    \value ToolButtonIconOnly Only display the icon.
    \value ToolButtonTextOnly Only display the text.
    \value ToolButtonTextBesideIcon The text appears beside the icon.
    \value ToolButtonTextUnderIcon The text appears under the icon.
    \value ToolButtonFollowStyle Follow the \l{QStyle::SH_ToolButtonStyle}{style}.
*/

/*!
    \enum Qt::Corner

    This enum type specifies a corner in a rectangle:

    \value TopLeftCorner     The top-left corner of the rectangle.
    \value TopRightCorner    The top-right corner of the rectangle.
    \value BottomLeftCorner  The bottom-left corner of the rectangle.
    \value BottomRightCorner The bottom-right corner of the rectangle.
*/

/*!
    \enum Qt::Edge

    This enum type specifies an edge in a rectangle:

    \value TopEdge    The top edge of the rectangle.
    \value LeftEdge   The left edge of the rectangle.
    \value RightEdge  The right edge of the rectangle.
    \value BottomEdge The bottom edge of the rectangle.

    \since 5.1
*/

/*!
    \enum Qt::ScrollBarPolicy

    This enum type describes the various modes of QAbstractScrollArea's scroll
    bars.

    \value ScrollBarAsNeeded QAbstractScrollArea shows a scroll bar when the
    content is too large to fit and not otherwise. This is the
    default.

    \value ScrollBarAlwaysOff QAbstractScrollArea never shows a scroll bar.

    \value ScrollBarAlwaysOn  QAbstractScrollArea always shows a scroll bar. This
    property is ignored on systems with transient scroll bars (e.g., on Mac from
    version 10.7).

    (The modes for the horizontal and vertical scroll bars are
    independent.)
*/

/*!
    \enum Qt::ArrowType

    \value NoArrow
    \value UpArrow
    \value DownArrow
    \value LeftArrow
    \value RightArrow
*/

/*!
    \enum Qt::FocusReason

    This enum specifies why the focus changed. It will be passed
    through QWidget::setFocus and can be retrieved in the QFocusEvent
    sent to the widget upon focus change.

    \value MouseFocusReason        A mouse action occurred.
    \value TabFocusReason          The Tab key was pressed.
    \value BacktabFocusReason      A Backtab occurred. The input for this may
                                   include the Shift or Control keys;
                                   e.g. Shift+Tab.
    \value ActiveWindowFocusReason The window system made this window either
                                   active or inactive.
    \value PopupFocusReason        The application opened/closed a pop-up that
                                   grabbed/released the keyboard focus.
    \value ShortcutFocusReason     The user typed a label's buddy shortcut
    \value MenuBarFocusReason      The menu bar took focus.
    \value OtherFocusReason        Another reason, usually application-specific.

    \omitvalue NoFocusReason

    \sa {Keyboard Focus in Widgets}
*/

/*!
    \enum Qt::WindowState

    \keyword window state

    This enum type is used to specify the current state of a top-level
    window.

    The states are

    \value WindowNoState   The window has no state set (in normal state).
    \value WindowMinimized The window is minimized (i.e. iconified).
    \value WindowMaximized The window is maximized with a frame around it.
    \value WindowFullScreen The window fills the entire screen without any frame around it.
    \value WindowActive The window is the active window, i.e. it has keyboard focus.

*/

/*!
    \enum Qt::ApplicationState

    \keyword application state

    This enum type is used to specify the current state of the application.

    The states are

    \value ApplicationSuspended    The application is about to suspend. When entering this state, the
                                   application should save its state, cease all activities, and be
                                   prepared for code execution to stop. While suspended, the
                                   application can be killed at any time without further warnings
                                   (e.g. when low memory forces the OS to purge suspended applications).
    \value ApplicationHidden       The application is hidden and runs in the background. This
                                   is the normal state for applications that need to do background
                                   processing, like playing music, while the user interacts with
                                   other applications. The application should free up all graphical
                                   resources when entering this state.
    \value ApplicationInactive     The application is visible, but not selected to be in front.
                                   On desktop platforms, this typically means that the user
                                   activated another application. On mobile platforms, it is
                                   more common to enter this state when the OS is interrupting
                                   the user with e.g. incoming calls or SMS-messages.
                                   While in this state, consider reducing CPU-intensive tasks.
    \value ApplicationActive       The application is visible and selected to be in front.

    \since 5.1
*/

/*!
    \enum Qt::ScreenOrientation

    This enum type specifies the various orientations a screen might have.

    \value PrimaryOrientation           The display's primary orientation.
    \value LandscapeOrientation         Landscape orientation, display width is greater than display height.
    \value PortraitOrientation          Portrait orientation, display height is greater than display width,
                                        rotated 90 degree clockwise relative to landscape.
    \value InvertedLandscapeOrientation Inverted landscape orientation, rotated 180 degrees relative to landscape.
    \value InvertedPortraitOrientation  Inverted portrait orientation, rotated 180 degrees relative to portrait.
*/

/*!
    \enum Qt::ContextMenuPolicy

    This enum type defines the various policies a widget can have with
    respect to showing a context menu.

    \value NoContextMenu the widget does not feature a context menu,
    context menu handling is deferred to the widget's parent.
    \value PreventContextMenu the widget does not feature a context
    menu, and in contrast to \c NoContextMenu, the handling is \e not
    deferred to the widget's parent. This means that all right mouse
    button events are guaranteed to be delivered to the widget itself
    through QWidget::mousePressEvent(), and QWidget::mouseReleaseEvent().
    \value DefaultContextMenu  the widget's QWidget::contextMenuEvent() handler is called.
    \value ActionsContextMenu  the widget displays its QWidget::actions() as context menu.
    \value CustomContextMenu  the widget emits the QWidget::customContextMenuRequested() signal.
*/

/*!
    \enum Qt::FocusPolicy

    This enum type defines the various policies a widget can have with
    respect to acquiring keyboard focus.

    \value TabFocus  the widget accepts focus by tabbing.
    \value ClickFocus  the widget accepts focus by clicking.
    \value StrongFocus  the widget accepts focus by both tabbing
                    and clicking. On \macos this will also
                    be indicate that the widget accepts tab focus
                    when in 'Text/List focus mode'.
    \value WheelFocus  like Qt::StrongFocus plus the widget accepts
                    focus by using the mouse wheel.
    \value NoFocus  the widget does not accept focus.

*/

/*!
    \enum Qt::TabFocusBehavior
    \since 5.5

    This enum type provides different focus behaviors for tab navigation.

    \value NoTabFocus  iterate nothing.
    \value TabFocusTextControls  iterate text controls and widgets.
    \value TabFocusListControls  iterate list controls and widgets.
    \value TabFocusAllControls  iterate all controls and widgets.

*/

/*!
    \enum Qt::ShortcutContext

    For a QEvent::Shortcut event to occur, the shortcut's key sequence
    must be entered by the user in a context where the shortcut is
    active. The possible contexts are these:

    \value WidgetShortcut The shortcut is active when its
    parent widget has focus.
    \value WidgetWithChildrenShortcut The shortcut is active
    when its parent widget, or any of its children has focus.
    Children which are top-level widgets, except pop-ups, are
    not affected by this shortcut context.
    \value WindowShortcut The shortcut is active when its
    parent widget is a logical subwidget of the
    active top-level window.
    \value ApplicationShortcut The shortcut is active when one of
    the applications windows are active.
*/

/*!
    \typedef Qt::WFlags
    \obsolete
    This typedef is obsolete. Use Qt::WindowFlags instead.

    Synonym for Qt::WindowFlags.
*/

/*!
    \enum Qt::WindowType

    \keyword window flag

    This enum type is used to specify various window-system properties
    for the widget. They are fairly unusual but necessary in a few
    cases. Some of these flags depend on whether the underlying window
    manager supports them.

    The main types are

    \value Widget  This is the default type for QWidget. Widgets of
                   this type are child widgets if they have a parent,
                   and independent windows if they have no parent.
                   See also Qt::Window and Qt::SubWindow.

    \value Window  Indicates that the widget is a window, usually
                   with a window system frame and a title bar,
                   irrespective of whether the widget has a parent or
                   not. Note that it is not possible to unset this
                   flag if the widget does not have a parent.

    \value Dialog  Indicates that the widget is a window that should
                   be decorated as a dialog (i.e., typically no
                   maximize or minimize buttons in the title bar).
                   This is the default type for QDialog. If you want
                   to use it as a modal dialog, it should be launched
                   from another window, or have a parent and used
                   with the QWidget::windowModality property. If you make
                   it modal, the dialog will prevent other top-level
                   windows in the application from getting any input.
                   We refer to a top-level window that has a parent
                   as a \e secondary window.

    \value Sheet   Indicates that the window is a sheet on \macos. Since
                   using a sheet implies window modality, the recommended
                   way is to use QWidget::setWindowModality(), or
                   QDialog::open(), instead.

    \value Drawer  Indicates that the widget is a drawer on \macos.

    \value Popup   Indicates that the widget is a pop-up top-level
                   window, i.e. that it is modal, but has a window
                   system frame appropriate for pop-up menus.

    \value Tool    Indicates that the widget is a tool window. A tool
                   window is often a small window with a smaller than
                   usual title bar and decoration, typically used for
                   collections of tool buttons. If there is a parent,
                   the tool window will always be kept on top of it.
                   If there isn't a parent, you may consider using
                   Qt::WindowStaysOnTopHint as well. If the window
                   system supports it, a tool window can be decorated
                   with a somewhat lighter frame. It can also be
                   combined with Qt::FramelessWindowHint.
                   On \macos, tool windows correspond to the
                   \l{https://developer.apple.com/documentation/appkit/nspanel}{NSPanel}
                   class of windows. This means that the window lives on a
                   level above normal windows making it impossible to put a normal
                   window on top of it. By default, tool windows will disappear
                   when the application is inactive.  This can be controlled by
                   the Qt::WA_MacAlwaysShowToolWindow attribute.

    \value ToolTip Indicates that the widget is a tooltip. This is
                   used internally to implement
                   \l{QWidget::toolTip}{tooltips}.

    \value SplashScreen Indicates that the window is a splash screen.
                        This is the default type for QSplashScreen.

    \value Desktop  Indicates that this widget is the desktop. This
                    is the type for QDesktopWidget.

    \value SubWindow  Indicates that this widget is a sub-window, such
                      as a QMdiSubWindow widget.

    \value ForeignWindow Indicates that this window object is a handle
                         representing a native platform window created by
                         another process or by manually using native code.

    \value CoverWindow Indicates that the window represents a cover window,
                       which is shown when the application is minimized on
                       some platforms.

    There are also a number of flags which you can use to customize
    the appearance of top-level windows. These have no effect on other
    windows:

    \value MSWindowsFixedSizeDialogHint  Gives the window a thin dialog border on Windows.
           This style is traditionally used for fixed-size dialogs.

           \note The use of this flag is not recommended in multi-monitor
           environments. This is because the system will enforce that the window
           maintains its native size when moving it across screens. This is
           particularly undesirable when using monitors with different
           resolutions.

    \value MSWindowsOwnDC  Gives the window its own display
           context on Windows.

    \value BypassWindowManagerHint This flag can be used to indicate to the platform plugin
           that "all" window manager protocols should be disabled. This flag will behave
           different depending on what operating system the application is running on and
           what window manager is running. The flag can be used to get a native window
           with no configuration set.

    \value X11BypassWindowManagerHint  Bypass the window
           manager completely. This results in a borderless window
           that is not managed at all (i.e., no keyboard input unless
           you call QWidget::activateWindow() manually).

    \value FramelessWindowHint  Produces a borderless window.
           The user cannot move or resize a borderless window via the window
           system. On X11, the result of the flag is dependent on the window manager and its
           ability to understand Motif and/or NETWM hints. Most existing
           modern window managers can handle this.

    \value NoDropShadowWindowHint  Disables window drop shadow on supporting platforms.

    The \c CustomizeWindowHint flag is used to enable customization of
    the window controls. This flag must be set to allow the \c
    WindowTitleHint, \c WindowSystemMenuHint, \c
    WindowMinimizeButtonHint, \c WindowMaximizeButtonHint and \c
    WindowCloseButtonHint flags to be changed.

    \value CustomizeWindowHint  Turns off the default window title hints.

    \value WindowTitleHint  Gives the window a title bar.

    \value WindowSystemMenuHint Adds a window system menu, and
    possibly a close button (for example on Mac). If you need to hide
    or show a close button, it is more portable to use \c
    WindowCloseButtonHint.

    \value WindowMinimizeButtonHint  Adds a minimize button. On
           some platforms this implies Qt::WindowSystemMenuHint for it to work.

    \value WindowMaximizeButtonHint  Adds a maximize button. On
           some platforms this implies Qt::WindowSystemMenuHint for it to work.

    \value WindowMinMaxButtonsHint  Adds a minimize and a maximize
           button. On some platforms this implies Qt::WindowSystemMenuHint for it to work.

    \value WindowCloseButtonHint  Adds a close button. On
           some platforms this implies Qt::WindowSystemMenuHint for it
           to work.

    \value WindowContextHelpButtonHint  Adds a context help button to dialogs.
           On some platforms this implies Qt::WindowSystemMenuHint for it to work.

    \value MacWindowToolBarButtonHint On \macos adds a tool bar button (i.e.,
           the oblong button that is on the top right of windows that have toolbars).

    \value WindowFullscreenButtonHint On \macos adds a fullscreen button.

    \value BypassGraphicsProxyWidget Prevents the window and its children from
           automatically embedding themselves into a QGraphicsProxyWidget if the
           parent widget is already embedded. You can set this flag if you
           want your widget to always be a toplevel widget on the desktop,
           regardless of whether the parent widget is embedded in a scene or
           not.

    \value WindowShadeButtonHint Adds a shade button in place of the minimize
           button if the underlying window manager supports it.

    \value WindowStaysOnTopHint  Informs the window system that the
           window should stay on top of all other windows. Note that
           on some window managers on X11 you also have to pass
           Qt::X11BypassWindowManagerHint for this flag to work
           correctly.

    \value WindowStaysOnBottomHint Informs the window system that the
           window should stay on bottom of all other windows.

           \note On X11, this hint will work only in window managers
           that support _NET_WM_STATE_BELOW atom. If a window always
           on the bottom has a parent, the parent will also be left on
           the bottom.  This window hint is currently not implemented
           for \macos.

           \note On Windows, this will work only for frameless or
           full-screen windows.

    \value WindowTransparentForInput Informs the window system that this window
           is used only for output (displaying something) and does not take input.
           Therefore input events should pass through as if it wasn't there.

    \value WindowOverridesSystemGestures Informs the window system that this window
           implements its own set of gestures and that system level gestures, like for
           instance three-finger desktop switching, should be disabled.

    \value WindowDoesNotAcceptFocus Informs the window system that this window should
           not receive the input focus.

    \value MaximizeUsingFullscreenGeometryHint Informs the window system that when
           maximizing the window it should use as much of the available screen geometry
           as possible, including areas that may be covered by system UI such as status
           bars or application launchers. This may result in the window being placed
           under these system UIs, but does not guarantee it, depending on whether or
           not the platform supports it. When the flag is enabled the user is responsible
           for taking QScreen::availableGeometry() into account, so that any UI elements
           in the application that require user interaction are not covered by system UI.

    \value WindowType_Mask  A mask for extracting the window type
                            part of the window flags.

    \sa QWidget::windowFlags, {Window Flags Example}
*/

/*!
    \enum Qt::FindChildOption

    \value FindDirectChildrenOnly    Looks only at the direct children of the object.
    \value FindChildrenRecursively   Looks at all children of the object (recursive search).
*/

/*!
    \enum Qt::DropAction

    \value CopyAction       Copy the data to the target.
    \value MoveAction       Move the data from the source to the target.
    \value LinkAction       Create a link from the source to the target.
    \value ActionMask
    \value IgnoreAction     Ignore the action (do nothing with the data).
    \value TargetMoveAction On Windows, this value is used when the ownership of the D&D data
                            should be taken over by the target application,
                            i.e., the source application should not delete
                            the data.
                            On X11 this value is used to do a move.
                            TargetMoveAction is not used on the Mac.
*/

/*!
    \enum Qt::SortOrder

    This enum describes how the items in a widget are sorted.

    \value AscendingOrder The items are sorted ascending e.g. starts with
    'AAA' ends with 'ZZZ' in Latin-1 locales

    \value DescendingOrder The items are sorted descending e.g. starts with
    'ZZZ' ends with 'AAA' in Latin-1 locales
*/

/*!
    \enum Qt::SplitBehaviorFlags
    \since 5.14

    This enum specifies how the split() functions should behave with
    respect to empty strings.

    \value KeepEmptyParts  If a field is empty, keep it in the result.
    \value SkipEmptyParts  If a field is empty, don't include it in the result.

    \sa QString::split()
*/

/*!
    \enum Qt::ClipOperation

    \value NoClip This operation turns clipping off.

    \value ReplaceClip Replaces the current clip path/rect/region with
    the one supplied in the function call.

    \value IntersectClip Intersects the current clip path/rect/region
    with the one supplied in the function call.
*/

/*!
    \enum Qt::ItemSelectionMode

    This enum is used in QGraphicsItem, QGraphicsScene and QGraphicsView to
    specify how items are selected, or how to determine if shapes and items
    collide.

    \value ContainsItemShape The output list contains only items whose
           \l{QGraphicsItem::shape()}{shape} is fully contained inside the
           selection area. Items that intersect with the area's outline are
           not included.

    \value IntersectsItemShape The output list contains both items whose
           \l{QGraphicsItem::shape()}{shape} is fully contained inside the
           selection area, and items that intersect with the area's
           outline. This is a common mode for rubber band selection.

    \value ContainsItemBoundingRect The output list contains only items whose
           \l{QGraphicsItem::boundingRect()}{bounding rectangle} is fully
           contained inside the selection area. Items that intersect with the
           area's outline are not included.

    \value IntersectsItemBoundingRect The output list contains both items
           whose \l{QGraphicsItem::boundingRect()}{bounding rectangle} is
           fully contained inside the selection area, and items that intersect
           with the area's outline. This method is commonly used for
           determining areas that need redrawing.

    \sa QGraphicsScene::items(), QGraphicsScene::collidingItems(),
        QGraphicsView::items(), QGraphicsItem::collidesWithItem(),
        QGraphicsItem::collidesWithPath()
*/

/*!
    \enum Qt::ItemSelectionOperation

    This enum is used in QGraphicsScene to specify what to do with currently selected
    items when setting a selection area.

    \value ReplaceSelection The currently selected items are replaced by items
           in the selection area.

    \value AddToSelection The items in the selection area are added to the currently
           selected items.

    \sa QGraphicsScene::setSelectionArea()
*/

/*!
    \enum Qt::FillRule

    Specifies which method should be used to fill the paths and polygons.

    \value OddEvenFill Specifies that the region is filled using the
    odd even fill rule. With this rule, we determine whether a point
    is inside the shape by using the following method.
    Draw a horizontal line from the point to a location outside the shape,
    and count the number of intersections. If the number of intersections
    is an odd number, the point is inside the shape. This mode is the
    default.

    \value WindingFill Specifies that the region is filled using the
    non zero winding rule. With this rule, we determine whether a
    point is inside the shape by using the following method.
    Draw a horizontal line from the point to a location outside the shape.
    Determine whether the direction of the line at each intersection point
    is up or down. The winding number is determined by summing the
    direction of each intersection. If the number is non zero, the point
    is inside the shape. This fill mode can also in most cases be considered
    as the intersection of closed shapes.
*/

/*!
    \enum Qt::TextFormat

    This enum is used in widgets that can display both plain text and
    rich text, for example QLabel. It is used for deciding whether a text
    string should be interpreted as one or the other. This is normally
    done by passing one of the enum values to a QTextEdit::setTextFormat()
    function.

    \value PlainText  The text string is interpreted as a plain text
        string.

    \value RichText The text string is interpreted as a rich text
        string. See \l {Supported HTML Subset} for the definition
        of rich text.

    \value AutoText The text string is interpreted as for
        Qt::RichText if Qt::mightBeRichText() returns \c true, otherwise
        as Qt::PlainText.

    \value MarkdownText The text string is interpreted as Markdown-formatted text.
        This enum value was added in Qt 5.14.
*/

/*!
    \enum Qt::CursorShape

    This enum type defines the various cursors that can be used.

    The standard arrow cursor is the default for widgets in a normal state.

    \value ArrowCursor    \inlineimage cursor-arrow.png
                          The standard arrow cursor.
    \value UpArrowCursor  \inlineimage cursor-uparrow.png
                          An arrow pointing upwards toward the top of the screen.
    \value CrossCursor    \inlineimage cursor-cross.png
                          A crosshair cursor, typically used to help the
                          user accurately select a point on the screen.
    \value WaitCursor     \inlineimage cursor-wait.png
                          An hourglass or watch cursor, usually shown during
                          operations that prevent the user from interacting with
                          the application.
    \value IBeamCursor    \inlineimage cursor-ibeam.png
                          A caret or ibeam cursor, indicating that a widget can
                          accept and display text input.
    \value SizeVerCursor  \inlineimage cursor-sizev.png
                          A cursor used for elements that are used to vertically
                          resize top-level windows.
    \value SizeHorCursor  \inlineimage cursor-sizeh.png
                          A cursor used for elements that are used to horizontally
                          resize top-level windows.
    \value SizeBDiagCursor  \inlineimage cursor-sizeb.png
                          A cursor used for elements that are used to diagonally
                          resize top-level windows at their top-right and
                          bottom-left corners.
    \value SizeFDiagCursor  \inlineimage cursor-sizef.png
                          A cursor used for elements that are used to diagonally
                          resize top-level windows at their top-left and
                          bottom-right corners.
    \value SizeAllCursor  \inlineimage cursor-sizeall.png
                          A cursor used for elements that are used to resize
                          top-level windows in any direction.
    \value BlankCursor    A blank/invisible cursor, typically used when the cursor
                          shape needs to be hidden.
    \value SplitVCursor   \inlineimage cursor-vsplit.png
                          A cursor used for vertical splitters, indicating that
                          a handle can be dragged horizontally to adjust the use
                          of available space.
    \value SplitHCursor   \inlineimage cursor-hsplit.png
                          A cursor used for horizontal splitters, indicating that
                          a handle can be dragged vertically to adjust the use
                          of available space.
    \value PointingHandCursor  \inlineimage cursor-hand.png
                          A pointing hand cursor that is typically used for
                          clickable elements such as hyperlinks.
    \value ForbiddenCursor  \inlineimage cursor-forbidden.png
                          A slashed circle cursor, typically used during drag
                          and drop operations to indicate that dragged content
                          cannot be dropped on particular widgets or inside
                          certain regions.
    \value OpenHandCursor \inlineimage cursor-openhand.png
                          A cursor representing an open hand, typically used to
                          indicate that the area under the cursor is the visible
                          part of a canvas that the user can click and drag in
                          order to scroll around.
    \value ClosedHandCursor \inlineimage cursor-closedhand.png
                          A cursor representing a closed hand, typically used to
                          indicate that a dragging operation is in progress that
                          involves scrolling.
    \value WhatsThisCursor  \inlineimage cursor-whatsthis.png
                          An arrow with a question mark, typically used to indicate
                          the presence of What's This? help for a widget.
    \value BusyCursor     \inlineimage cursor-busy.png
                          An hourglass or watch cursor, usually shown during
                          operations that allow the user to interact with
                          the application while they are performed in the
                          background.
    \value DragMoveCursor
                          A cursor that is usually used when dragging an item.
    \value DragCopyCursor
                          A cursor that is usually used when dragging an item
                          to copy it.
    \value DragLinkCursor
                          A cursor that is usually used when dragging an item
                          to make a link to it.

    \value BitmapCursor
    \omitvalue LastCursor
    \omitvalue CustomCursor
*/

/*!
    \enum Qt::LayoutDirection

    Specifies the direction of Qt's layouts and text handling.

    \value LeftToRight  Left-to-right layout.
    \value RightToLeft  Right-to-left layout.
    \value LayoutDirectionAuto   Automatic layout.

    Right-to-left layouts are necessary for certain languages,
    notably Arabic and Hebrew.

    LayoutDirectionAuto serves two purposes. When used in conjunction with widgets and layouts, it
    will imply to use the layout direction set on the parent widget or QApplication. This
    has the same effect as QWidget::unsetLayoutDirection().

    When LayoutDirectionAuto is used in conjunction with text layouting, it will imply that the text
    directionality is determined from the content of the string to be layouted.

    \sa QGuiApplication::setLayoutDirection(), QWidget::setLayoutDirection(), QTextOption::setTextDirection(), QString::isRightToLeft()
*/

/*!
    \enum Qt::AnchorPoint

    Specifies a side of a layout item that can be anchored. This is used by
    QGraphicsAnchorLayout.

    \value AnchorLeft               The left side of a layout item.
    \value AnchorHorizontalCenter   A "virtual" side that is centered between the left and the
                                    right side of a layout item.
    \value AnchorRight              The right side of a layout item.
    \value AnchorTop                The top side of a layout item.
    \value AnchorVerticalCenter     A "virtual" side that is centered between the top and the
                                    bottom side of a layout item.
    \value AnchorBottom             The bottom side of a layout item.

    \sa QGraphicsAnchorLayout
*/

/*!
    \enum Qt::InputMethodHint

    \value ImhNone                   No hints.

    Flags that alter the behavior:

    \value ImhHiddenText             The input method should not show the characters while typing.
                                     This is automatically set when setting QLineEdit::echoMode to \c Password.
                                     Note that setting \c ImhHiddenText does not change the echo mode.
    \value ImhSensitiveData          Typed text should not be stored by the active input method
                                     in any persistent storage like predictive user dictionary.
    \value ImhNoAutoUppercase        The input method should not try to automatically switch to upper case
                                     when a sentence ends.
    \value ImhPreferNumbers          Numbers are preferred (but not required).
    \value ImhPreferUppercase        Upper case letters are preferred (but not required).
    \value ImhPreferLowercase        Lower case letters are preferred (but not required).
    \value ImhNoPredictiveText       Do not use predictive text (i.e. dictionary lookup) while typing.

    \value ImhDate                   The text editor functions as a date field.
    \value ImhTime                   The text editor functions as a time field.
    \value ImhPreferLatin            Latin characters are preferred (but not required).

    \value ImhMultiLine              Multiple lines can be entered into the text field.

    \value ImhNoEditMenu             Do not use built-in edit menu. This flag was introduced in Qt 5.11.
    \value ImhNoTextHandles          Do not use built-in text cursor and selection handles. This flag was introduced in Qt 5.11.

    Flags that restrict input (exclusive flags):

    \value ImhDigitsOnly             Only digits are allowed.
    \value ImhFormattedNumbersOnly   Only number input is allowed. This includes decimal point and minus sign.
    \value ImhUppercaseOnly          Only upper case letter input is allowed.
    \value ImhLowercaseOnly          Only lower case letter input is allowed.
    \value ImhDialableCharactersOnly Only characters suitable for phone dialing are allowed.
    \value ImhEmailCharactersOnly    Only characters suitable for email addresses are allowed.
    \value ImhUrlCharactersOnly      Only characters suitable for URLs are allowed.
    \value ImhLatinOnly              Only latin based input is allowed.

    Masks:

    \value ImhExclusiveInputMask     This mask yields nonzero if any of the exclusive flags are used.

    \note If several exclusive flags are OR-ed together, the resulting character set will
          consist of the union of the specified sets. For instance specifying \c ImhNumbersOnly and
          \c ImhUppercaseOnly would yield a set consisting of numbers and uppercase letters.

    \sa QGraphicsItem::inputMethodHints()
*/

/*!
    \enum Qt::InputMethodQuery

    \value ImEnabled            The widget accepts input method input.
    \value ImMicroFocus         This query is obsolete. Use \c ImCursorRectangle instead.
    \value ImCursorRectangle    The rectangle covering the area of the input cursor in widget coordinates.
    \value ImFont               The currently used font for text input.
    \value ImCursorPosition     The logical position of the cursor within the text surrounding the input area
                                (see \c ImSurroundingText).
    \value ImSurroundingText    The plain text around the input area, for example the current paragraph.
    \value ImCurrentSelection   The currently selected text.
    \value ImMaximumTextLength  The maximum number of characters that the widget can hold. If there is no limit,
                                QVariant::QVariant() is returned.
    \value ImAnchorPosition     The position of the selection anchor. This may be less or greater than
                                \c ImCursorPosition, depending on which side of selection the cursor is.
                                If there is no selection, it returns the same as \c ImCursorPosition.
    \value ImHints              The hints for input method on expected input. (See Qt::InputMethodHints)
    \value ImPreferredLanguage  The preferred input language.
    \value ImPlatformData       Platform specific data for input method.
    \value ImAbsolutePosition   The logical position of the cursor within the entire document.
    \value ImTextBeforeCursor   The plain text before the cursor. The widget can decide how much text to return,
                                but \b{must} not return an empty string unless the cursor is at the start of the document.
    \value ImTextAfterCursor    The plain text after the cursor. The widget can decide how much text to return,
                                but \b{must} not return an empty string unless the cursor is at the end of the document.
    \value ImEnterKeyType       The Enter key type.
    \value ImAnchorRectangle    The bounding rectangle of the selection anchor.
                                This value was added in Qt 5.7.
    \value ImInputItemClipRectangle The actual exposed input item rectangle. Parts of the input item might be
                                clipped. This value will take clipping into consideration and return the actual painted
                                item rectangle. The rectangle is in widget coordinates.

    Masks:

    \value ImQueryInput         Commonly changed properties on input.
    \value ImQueryAll           Query for all input method properties.

    \sa QInputMethodQueryEvent
*/

/*!
    \enum Qt::EnterKeyType

    This can be used to alter the appearance of the Return key on an on-screen keyboard.

    \note Not all of these values are supported on all platforms.
    For unsupported values the default key will be used instead.

    \value EnterKeyDefault     The default Enter key.
                               This can either be a button closing the keyboard, or a Return button
                               causing a new line in case of a multi-line input field.
    \value EnterKeyReturn      Show a Return button that inserts a new line.
                               The keyboard will not close when this button is pressed.
    \value EnterKeyDone        Show a "Done" button.
                               The keyboard will close when this button is pressed.
    \value EnterKeyGo          Show a "Go" button.
                               Typically used in an address bar when entering a URL; the keyboard
                               will close when this button is pressed.
    \value EnterKeySend        Show a "Send" button.
                               The keyboard will close when this button is pressed.
    \value EnterKeySearch      Show a "Search" button.
                               The keyboard will close when this button is pressed.
    \value EnterKeyNext        Show a "Next" button.
                               Typically used in a form to allow navigating to the next input field;
                               the keyboard will not close when this button is pressed.
    \value EnterKeyPrevious    Show a "Previous" button.
                               The keyboard will not close when this button is pressed.

    \since 5.6
*/

/*!
    \enum Qt::ItemDataRole

    Each item in the model has a set of data elements associated with
    it, each with its own role. The roles are used by the view to indicate
    to the model which type of data it needs. Custom models should return
    data in these types.

    The general purpose roles (and the associated types) are:

    \value DisplayRole    The key data to be rendered in the form of text. (QString)
    \value DecorationRole The data to be rendered as a decoration in the form
                          of an icon. (QColor, QIcon or QPixmap)
    \value EditRole       The data in a form suitable for editing in an
                          editor. (QString)
    \value ToolTipRole    The data displayed in the item's tooltip. (QString)
    \value StatusTipRole  The data displayed in the status bar. (QString)
    \value WhatsThisRole  The data displayed for the item in "What's This?"
                          mode. (QString)
    \value SizeHintRole   The size hint for the item that will be supplied
                          to views. (QSize)

    Roles describing appearance and meta data (with associated types):

    \value FontRole             The font used for items rendered with the default
                                delegate. (QFont)
    \value TextAlignmentRole    The alignment of the text for items rendered with the
                                default delegate. (Qt::Alignment)
    \value BackgroundRole       The background brush used for items rendered with
                                the default delegate. (QBrush)
    \value BackgroundColorRole  This role is obsolete. Use BackgroundRole instead.
    \value ForegroundRole       The foreground brush (text color, typically)
                                used for items rendered with the default delegate.
                                (QBrush)
    \value TextColorRole        This role is obsolete. Use ForegroundRole instead.
    \value CheckStateRole       This role is used to obtain the checked state of
                                an item. (Qt::CheckState)
    \value InitialSortOrderRole This role is used to obtain the initial sort order
                                of a header view section. (Qt::SortOrder). This
                                role was introduced in Qt 4.8.

    Accessibility roles (with associated types):

    \value AccessibleTextRole        The text to be used by accessibility
                                     extensions and plugins, such as screen
                                     readers. (QString)
    \value AccessibleDescriptionRole A description of the item for accessibility
                                     purposes. (QString)

    User roles:

    \value UserRole       The first role that can be used for application-specific purposes.

    \omitvalue DisplayPropertyRole
    \omitvalue DecorationPropertyRole
    \omitvalue ToolTipPropertyRole
    \omitvalue StatusTipPropertyRole
    \omitvalue WhatsThisPropertyRole

    For user roles, it is up to the developer to decide which types to use and ensure that
    components use the correct types when accessing and setting data.
*/

/*!
    \enum Qt::ItemFlag

    This enum describes the properties of an item:

    \value NoItemFlags It does not have any properties set.
    \value ItemIsSelectable It can be selected.
    \value ItemIsEditable It can be edited.
    \value ItemIsDragEnabled It can be dragged.
    \value ItemIsDropEnabled It can be used as a drop target.
    \value ItemIsUserCheckable It can be checked or unchecked by the user.
    \value ItemIsEnabled The user can interact with the item.
    \value ItemIsAutoTristate The item's state depends on the state of its children.
           This enables automatic management of the state of parent items in QTreeWidget
           (checked if all children are checked, unchecked if all children are unchecked,
           or partially checked if only some children are checked).
    \value ItemIsTristate \e{This enum value is deprecated.} Use Qt::ItemIsAutoTristate
    instead.
    \value ItemNeverHasChildren The item never has child items.
           This is used for optimization purposes only.
    \value ItemIsUserTristate The user can cycle through three separate states.
           This value was added in Qt 5.5.

    Note that checkable items need to be given both a suitable set of flags
    and an initial state, indicating whether the item is checked or not.
    This is handled automatically for model/view components, but needs
    to be explicitly set for instances of QListWidgetItem, QTableWidgetItem,
    and QTreeWidgetItem.

    Note that it is undefined behavior to reimplement QAbstractItemModel::hasChildren
    to return true for an index if that index has the Qt::ItemNeverHasChildren flag set.

    \sa QAbstractItemModel
*/

/*!
    \enum Qt::MatchFlag

    This enum describes the type of matches that can be used when searching
    for items in a model.

    \value MatchExactly     Performs QVariant-based matching.
    \value MatchFixedString Performs string-based matching.
           String-based comparisons are case-insensitive unless the
           \c MatchCaseSensitive flag is also specified.
    \value MatchContains    The search term is contained in the item.
    \value MatchStartsWith  The search term matches the start of the item.
    \value MatchEndsWith    The search term matches the end of the item.
    \value MatchCaseSensitive  The search is case sensitive.
    \value MatchRegExp      Performs string-based matching using a regular
           expression as the search term.
    \value MatchWildcard    Performs string-based matching using a string with
           wildcards as the search term.
    \value MatchWrap        Perform a search that wraps around, so that when
           the search reaches the last item in the model, it begins again at
           the first item and continues until all items have been examined.
    \value MatchRecursive   Searches the entire hierarchy.

    \sa QString::compare(), QRegExp
*/

/*!
    \enum Qt::TextElideMode

    This enum specifies where the ellipsis should appear when
    displaying texts that don't fit:

    \value ElideLeft    The ellipsis should appear at the beginning of the text.
    \value ElideRight   The ellipsis should appear at the end of the text.
    \value ElideMiddle  The ellipsis should appear in the middle of the text.
    \value ElideNone    Ellipsis should NOT appear in the text.

    Qt::ElideMiddle is normally the most appropriate choice for URLs (e.g.,
    "\l{http://bugreports.qt.io/browse/QTWEBSITE-13}{http://bugreports.qt.../QTWEBSITE-13/}"),
    whereas Qt::ElideRight is appropriate
    for other strings (e.g.,
    "\l{http://doc.qt.io/archives/qq/qq09-mac-deployment.html}{Deploying Applications on Ma...}").

    \sa QAbstractItemView::textElideMode, QFontMetrics::elidedText(), AlignmentFlag, QTabBar::elideMode
*/

/*!
    \enum Qt::WindowModality

    \keyword modal

    This enum specifies the behavior of a modal window. A modal window
    is one that blocks input to other windows. Note that windows that
    are children of a modal window are not blocked.

    The values are:
    \value NonModal         The window is not modal and does not block input to other windows.
    \value WindowModal      The window is modal to a single window hierarchy and blocks input to its parent window, all grandparent windows, and all siblings of its parent and grandparent windows.
    \value ApplicationModal The window is modal to the application and blocks input to all windows.

    \sa QWidget::windowModality, QDialog
*/

/*!
    \enum Qt::TextInteractionFlag

    This enum specifies how a text displaying widget reacts to user input.

    \value NoTextInteraction          No interaction with the text is possible.
    \value TextSelectableByMouse      Text can be selected with the mouse and copied to the clipboard using
                                      a context menu or standard keyboard shortcuts.
    \value TextSelectableByKeyboard   Text can be selected with the cursor keys on the keyboard. A text cursor is shown.
    \value LinksAccessibleByMouse     Links can be highlighted and activated with the mouse.
    \value LinksAccessibleByKeyboard  Links can be focused using tab and activated with enter.
    \value TextEditable               The text is fully editable.

    \value TextEditorInteraction      The default for a text editor.
    \value TextBrowserInteraction     The default for QTextBrowser.
*/

/*!
    \enum Qt::MaskMode

    This enum specifies the behavior of the
    QPixmap::createMaskFromColor() and QImage::createMaskFromColor()
    functions.

    \value MaskInColor   Creates a mask where all pixels matching the given color are opaque.
    \value MaskOutColor  Creates a mask where all pixels matching the given color are transparent.
*/

/*!
    \enum Qt::DockWidgetAreaSizes
    \internal
*/

/*!
    \enum Qt::ToolBarAreaSizes
    \internal
*/

/*!
    \enum Qt::EventPriority

    This enum can be used to specify event priorities.

    \value HighEventPriority Events with this priority are sent before
    events with NormalEventPriority or LowEventPriority.

    \value NormalEventPriority Events with this priority are sent
    after events with HighEventPriority, but before events with
    LowEventPriority.

    \value LowEventPriority Events with this priority are sent after
    events with HighEventPriority or NormalEventPriority.

    Note that these values are provided purely for convenience, since
    event priorities can be any value between \c INT_MAX and \c
    INT_MIN, inclusive. For example, you can define custom priorities
    as being relative to each other:

    \snippet code/doc_src_qnamespace.cpp 1

    \sa QCoreApplication::postEvent()
*/
/*!
    \enum Qt::SizeHint
    \since 4.4

    This enum is used by QGraphicsLayoutItem::sizeHint()

    \value MinimumSize is used to specify the minimum size of a graphics layout item.
    \value PreferredSize is used to specify the preferred size of a graphics layout item.
    \value MaximumSize is used to specify the maximum size of a graphics layout item.
    \value MinimumDescent is used to specify the minimum descent of a text string in a graphics layout item.
    \omitvalue NSizeHints

    \sa QGraphicsLayoutItem::sizeHint()
*/

/*!
    \enum Qt::SizeMode
    \since 4.4

    This enum is used by QPainter::drawRoundedRect() and QPainterPath::addRoundedRect()
    functions to specify the radii of rectangle corners with respect to the dimensions
    of the bounding rectangles specified.

    \value AbsoluteSize Specifies the size using absolute measurements.
    \value RelativeSize Specifies the size relative to the bounding rectangle,
                        typically using percentage measurements.
*/

/*!
    \enum Qt::WindowFrameSection
    \since 4.4

    This enum is used to describe parts of a window frame. It is returned by
    QGraphicsWidget::windowFrameSectionAt() to describe what section of the window
    frame is under the mouse.

    \value NoSection
    \value LeftSection
    \value TopLeftSection
    \value TopSection
    \value TopRightSection
    \value RightSection
    \value BottomRightSection
    \value BottomSection
    \value BottomLeftSection
    \value TitleBarArea

    \sa QGraphicsWidget::windowFrameEvent()
    \sa QGraphicsWidget::paintWindowFrame()
    \sa QGraphicsWidget::windowFrameSectionAt()

*/

/*!
  \enum Qt::TileRule
  \since 4.6

  This enum describes how to repeat or stretch the parts of an image
  when drawing.

  \value StretchTile  Scale the image to fit to the available area.

  \value RepeatTile   Repeat the image until there is no more space. May
  crop the last image.

  \value RoundTile    Similar to Repeat, but scales the image down to
  ensure that the last tile is not cropped.
*/

/*!
    \enum Qt::Initialization
    \internal
*/

/*!
    \enum Qt::CoordinateSystem
    \since 4.6

    This enum specifies the coordinate system.

    \value DeviceCoordinates Coordinates are relative to the top-left corner
    of the object's paint device.

    \value LogicalCoordinates Coordinates are relative to the top-left corner
    of the object.
*/

/*! \enum Qt::TouchPointState
    \since 4.6

    This enum represents the state of a touch point at the time a
    QTouchEvent occurred.

    \value TouchPointPressed The touch point is now pressed.
    \value TouchPointMoved The touch point moved.
    \value TouchPointStationary The touch point did not move.
    \value TouchPointReleased The touch point was released.
*/

/*!
    \enum Qt::GestureState
    \since 4.6

    This enum type describes the state of a gesture.

    \value NoGesture        No gesture has been detected.
    \value GestureStarted   A continuous gesture has started.
    \value GestureUpdated   A gesture continues.
    \value GestureFinished  A gesture has finished.
    \value GestureCanceled  A gesture was canceled.

    \sa QGesture
*/

/*!
    \enum Qt::GestureType
    \since 4.6

    This enum type describes the standard gestures.

    \value TapGesture        A Tap gesture.
    \value TapAndHoldGesture A Tap-And-Hold (Long-Tap) gesture.
    \value PanGesture        A Pan gesture.
    \value PinchGesture      A Pinch gesture.
    \value SwipeGesture      A Swipe gesture.
    \value CustomGesture A flag that can be used to test if the gesture is a
    user-defined gesture ID.
    \omitvalue LastGestureType

    User-defined gestures are registered with the
    QGestureRecognizer::registerRecognizer() function which generates a custom
    gesture ID with the Qt::CustomGesture flag set.

    \sa QGesture, QWidget::grabGesture(), QGraphicsObject::grabGesture()
*/

/*!
    \enum Qt::GestureFlag
    \since 4.6

    This enum type describes additional flags that can be used when subscribing
    to a gesture.

    \value DontStartGestureOnChildren By default gestures can start on the
    widget or over any of its children. Use this flag to disable this and allow
    a gesture to start on the widget only.

    \value ReceivePartialGestures Allows any ignored gesture events to be
    propagated to parent widgets which have specified this hint. By default
    only gestures that are in the Qt::GestureStarted state are propagated and
    the widget always gets the full gesture sequence starting with a gesture in
    the Qt::GestureStarted state and ending with a gesture in the
    Qt::GestureFinished or Qt::GestureCanceled states.

    \value IgnoredGesturesPropagateToParent Since Qt 4.7, this flag allows you
    to fine-tune gesture event propagation. By setting the flag when
    \l{QGraphicsObject::grabGesture()}{grabbing} a gesture all ignored partial
    gestures will propagate to their parent items.

    \sa QWidget::grabGesture(), QGraphicsObject::grabGesture()
*/

/*!
    \enum Qt::NativeGestureType
    \since 5.2

    This enum returns the gesture type.

    \value BeginNativeGesture Sent before gesture event stream.
    \value EndNativeGesture   Sent after gesture event stream.
    \value PanNativeGesture   Sent after a panning gesture.
                              Similar to a click-and-drag mouse movement.
    \value ZoomNativeGesture  Specifies the magnification delta in percent.
    \value SmartZoomNativeGesture Boolean magnification state.
    \value RotateNativeGesture    Rotation delta in degrees.
    \value SwipeNativeGesture     Sent after a swipe movements.

*/

/*!
    \enum Qt::NavigationMode
    \since 4.6

    This enum type describes the mode for moving focus.

    \value NavigationModeNone                Only the touch screen is used.
    \value NavigationModeKeypadTabOrder      Qt::Key_Up and Qt::Key_Down are used to change focus.
    \value NavigationModeKeypadDirectional   Qt::Key_Up, Qt::Key_Down, Qt::Key_Left and Qt::Key_Right are used to change focus.
    \value NavigationModeCursorAuto          The mouse cursor is used to change focus,
                                             it is displayed only on non touchscreen devices.
                                             The keypad is used to implement a virtual cursor, unless
                                             the device has an analog mouse type of input device (e.g. touchpad).
                                             This is the recommended setting for an application such as a web browser that
                                             needs pointer control on both touch and non-touch devices.
    \value NavigationModeCursorForceVisible  The mouse cursor is used to change focus,
                                             it is displayed regardless of device type.
                                             The keypad is used to implement a virtual cursor, unless
                                             the device has an analog mouse type of input device (e.g. touchpad)
    \note Cursor navigation is not currently implemented on any platform
    and behaves as NavigationModeNone.
    \sa QApplication::setNavigationMode()
    \sa QApplication::navigationMode()
*/

/*!
    \enum Qt::CursorMoveStyle

    This enum describes the movement style available to text cursors. The options
    are:

    \value LogicalMoveStyle Within a left-to-right text block, decrease cursor
    position when pressing left arrow key, increase cursor position when pressing
    the right arrow key. If the text block is right-to-left, the opposite behavior
    applies.
    \value VisualMoveStyle Pressing the left arrow key will always cause the cursor
    to move left, regardless of the text's writing direction. Pressing the right
    arrow key will always cause the cursor to move right.
*/

/*!
    \enum Qt::TimerType

    The timer type indicates how accurate a timer can be.

    \value PreciseTimer Precise timers try to keep millisecond accuracy
    \value CoarseTimer Coarse timers try to keep accuracy within 5% of the desired interval
    \value VeryCoarseTimer Very coarse timers only keep full second accuracy

    On UNIX (including Linux, \macos, and iOS), Qt will keep millisecond accuracy
    for Qt::PreciseTimer. For Qt::CoarseTimer, the interval will be adjusted up
    to 5% to align the timer with other timers that are expected to fire at or
    around the same time. The objective is to make most timers wake up at the
    same time, thereby reducing CPU wakeups and power consumption.

    On Windows, Qt will use Windows's Multimedia timer facility (if available)
    for Qt::PreciseTimer and normal Windows timers for Qt::CoarseTimer and
    Qt::VeryCoarseTimer.

    On all platforms, the interval for Qt::VeryCoarseTimer is rounded to the
    nearest full second (e.g. an interval of 23500ms will be rounded to
    24000ms, and 20300ms to 20000ms).
*/

/*!
    \enum Qt::ScrollPhase
    \since 5.2

    This enum describes the phase of scrolling.

    \value NoScrollPhase The input device doesn't support scroll phase.
    This value was introduced in Qt 5.7.

    \value ScrollBegin Scrolling is about to begin, but the scrolling
    distance did not yet change.

    \value ScrollUpdate The scrolling distance has changed (default).

    \value ScrollEnd Scrolling has ended, and the scrolling distance
    did not change anymore.

    \value ScrollMomentum The user no longer touches the input device,
    but scrolling continues due to scroll momentum.
    This value was introduced in Qt 5.12.
*/

/*!
    \enum Qt::MouseEventSource
    \since 5.3

    This enum describes the source of a mouse event and can be useful
    to determine if the event is an artificial mouse event originating
    from another device such as a touchscreen.

    \value MouseEventNotSynthesized The most common value. On
    platforms where such information is available this value indicates
    that the event was generated in response to a genuine mouse event
    in the system.

    \value MouseEventSynthesizedBySystem Indicates that the mouse
    event was synthesized from a touch event by the platform.

    \value MouseEventSynthesizedByQt Indicates that the mouse event was
    synthesized from an unhandled touch event by Qt.

    \value MouseEventSynthesizedByApplication Indicates that the mouse
    event was synthesized by the application. This allows
    distinguishing application-generated mouse events from the ones
    that are coming from the system or are synthesized by Qt. This
    value was introduced in Qt 5.6

    \sa Qt::AA_SynthesizeMouseForUnhandledTouchEvents
*/

/*!
    \enum Qt::MouseEventFlag
    \since 5.3

    This enum provides additional information concerning a QMouseEvent.

    \value MouseEventCreatedDoubleClick Indicates that Qt has created a
    \l {QEvent::MouseButtonDblClick}{MouseButtonDblClick} event from this event. The flag is set in the causing
    \l {QEvent::MouseButtonPress}{MouseButtonPress}, and not in the resulting \l {QEvent::MouseButtonDblClick}{MouseButtonDblClick}.

    \omitvalue MouseEventFlagMask
*/

/*!
  \enum Qt::ChecksumType
  \since 5.9

  This enum describes the possible standards used by qChecksum().

  \value ChecksumIso3309 Checksum calculation based on ISO 3309.

  \value ChecksumItuV41 Checksum calculation based on ITU-V.41.
*/