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
|
<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.1.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
<!ENTITY kdevelop "<application
>KDevelop</application
>">
<!ENTITY kappname "&kdevelop;">
<!ENTITY % addindex "INCLUDE">
<!ENTITY % Russian "INCLUDE"
> <!-- change language only here -->
]>
<book lang="&language;">
<bookinfo>
<title
>ΠΡΠ½ΠΎΠ²Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² &kdevelop;</title>
<date
>2002-12-05</date>
<releaseinfo
>2.0</releaseinfo>
<authorgroup>
<author
><firstname
>Ralf</firstname
> <surname
>Nolden</surname
> <affiliation
><address
><email
>Ralf.Nolden@post.rwth-aachen.de</email
></address
></affiliation>
</author>
<author
><firstname
>Caleb</firstname
> <surname
>Tennis</surname
> <affiliation
><address
><email
>caleb@aei-tech.com</email
></address
></affiliation>
</author>
</authorgroup>
<copyright>
<year
>1999</year>
<holder
>Ralf Nolden</holder>
</copyright>
<copyright>
<year
>2002</year>
<holder
>Caleb Tennis</holder>
</copyright>
<!-- ROLES_OF_TRANSLATORS -->
<legalnotice
>&FDLNotice;</legalnotice>
<abstract>
<para
>Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ C++ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π΄Π»Ρ KDE Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ &kdevelop;</para>
</abstract>
<keywordset>
<keyword
>KDE</keyword>
<keyword
>KDevelop</keyword>
<keyword
>IDE</keyword>
<keyword
>ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°</keyword>
<keyword
>ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅</keyword>
</keywordset>
</bookinfo>
<chapter id="chapter1">
<title
>ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅</title>
<para
>Π‘ ΠΏΡΠΈΠΎΠ±ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Unix-ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ Π²ΡΡ Π±ΠΎΠ»ΡΡΠ΅ΠΉ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΠΈ Π΄Π°ΠΆΠ΅ ΡΡΠ΅Π΄ΠΈ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ
ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈΠ·-Π·Π° ΡΠ°ΠΊΠΈΡ
ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ², ΠΊΠ°ΠΊ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΡΡΡ, Π³ΠΈΠ±ΠΊΠΎΡΡΡ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ (Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΠ·-Π·Π° ΡΠ΅ΡΠ΅Π½ΠΈΡ Π½Π°ΡΠ°Π»ΡΡΡΠ²Π° ΠΎ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄Π΅ Π½Π° ΡΡΠΈ ΠΠ‘ - ΠΏΡΠΈΠΌ. ΠΏΠ΅ΡΠ΅Π².), Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΈΠ· Π½ΠΈΡ
ΡΠ°Π·ΠΎΡΠ°ΡΠΎΠ²ΡΠ²Π°ΡΡ ΠΈΠ·-Π·Π° Π½Π΅ΠΏΠΎΡ
ΠΎΠΆΠ΅Π³ΠΎ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ Π²ΠΈΠ΄Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΠΈ ΠΈΡ
ΡΠ°Π·Π»ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ. Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ, ΠΏΠΈΡΡΡΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ KDE, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΈΡΠ°ΡΡ ΠΏΠ΅ΡΠ²ΠΎΠΊΠ»Π°ΡΡΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄Π»Ρ Unix-ΠΊΠ»ΠΎΠ½ΠΎΠ², ΡΡΠΎ ΡΠΏΠΎΡΠΎΠ±ΡΡΠ²ΡΠ΅Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΡΡΠΈΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ
ΡΠΈΡΡΠ΅ΠΌ ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π»ΡΡΡΠ΅Π³ΠΎ ΠΊΠ°ΡΠ΅ΡΡΠ²Π°. ΠΠΎΡΡΠΎΠΌΡ KDE ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π²ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΠΉ ΡΡΠ΅Π΄ΠΎΠΉ Π΄Π»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Ρ
ΠΎΡΡΡ ΡΠΎΡΡΠ΅Π΄ΠΎΡΠΎΡΠΈΡΡΡΡ Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ ΡΠ΅Π»ΠΈ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΎΡΡΠ°Π²ΠΈΠ² ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠ°Π±ΠΎΡΡ ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌ KDE. </para>
<sect1 id="c1s1">
<title
>Π§ΡΠΎ Π½ΡΠΆΠ½ΠΎ Π·Π½Π°ΡΡ</title>
<para
>ΠΠ°Π»Π΅Π΅ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ, ΡΡΠΎ Π²Ρ ΡΠΆΠ΅ Π·Π½Π°Π΅ΡΠ΅ C++. ΠΡΠ»ΠΈ ΡΡΠΎ Π½Π΅ ΡΠ°ΠΊ, ΠΏΠΎΠΏΡΠ°ΠΊΡΠΈΠΊΡΠΉΡΠ΅ΡΡ ΡΠ½Π°ΡΠ°Π»Π° Π² ΡΠ°ΠΌΠΎΠΌ ΡΠ·ΡΠΊΠ΅. ΠΠ½ΠΈΠ³ΠΈ ΠΎ Π½ΡΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π»ΠΈΠ±ΠΎ Π² ΠΌΠ΅ΡΡΠ½ΠΎΠΌ ΠΊΠ½ΠΈΠΆΠ½ΠΎΠΌ ΠΌΠ°Π³Π°Π·ΠΈΠ½Π΅, Π»ΠΈΠ±ΠΎ Π² ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅ Π² Π‘Π΅ΡΠΈ. ΠΠ½Π°Π½ΠΈΡ ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° (GUI) Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½Ρ, Ρ.ΠΊ. Π² ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΡΠ°ΠΊΠΆΠ΅ Π΄Π°ΡΡΡΡ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ Π΄ΠΈΠ·Π°ΠΉΠ½Π° Π½Π° Π±Π°Π·Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Qt ΠΈ KDE. Π’Π°ΠΊΠΆΠ΅ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΎΡΠ²ΠΎΠΈΡΡΡΡ Ρ &kdevelop;, Π² ΡΡΠΌ Π²Π°ΠΌ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ &kdevelop;, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅Π΅ ΠΎΠ±Π·ΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ ΡΡΠΎΠΉ ΡΡΠ΅Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. </para>
</sect1>
<sect1 id="c1s2">
<title
>ΠΠ± ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅</title>
<para
>ΠΡΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ Π΄Π»Ρ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠ»Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ² Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ KDE Π² ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ KDevelop. </para>
<para
>Π‘Π»Π΅Π΄ΡΡΡΠΈΠ΅ Π³Π»Π°Π²Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΡΠΏΠΎΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠ΅ΡΠΎΠΌ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ°ΠΊΠΈΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°, ΠΊΠ°ΠΊ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², ΠΌΠ΅Π½Ρ, ΠΈ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ (view). </para>
<para
>ΠΠ°ΡΠ΅ΠΌ ΠΈΠ΄ΡΡ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ° Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ² Ρ ΠΈΠ·Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠ° ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ (ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΡ
ΡΠ°ΠΊΠΆΠ΅ Π²ΠΈΠ΄ΠΆΠ΅ΡΠ°ΠΌΠΈ) ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΡ
ΡΠ²ΠΎΠΉΡΡΠ². </para>
<para
>ΠΠ°Π²Π΅ΡΡΠ°Π΅ΡΡΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΠ΅ΠΌΠ°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΡΡ Π²Π°ΡΠΈ Π·Π½Π°Π½ΠΈΡ ΠΏΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ. </para>
<sect2 id="c1s2s1">
<title
>Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π³Π»Π°Π²Π΅</title>
<para
>ΠΡ ΠΎΠ±ΡΠ°ΡΠΈΠΌ Π½Π°Ρ Π²Π·Π³Π»ΡΠ΄ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Qt ΠΈ KDE, ΠΈΡ
ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅ ΠΏΠΎΡΠ΅ΠΌΡ Π²ΡΡ ΡΠ΄Π΅Π»Π°Π½ΠΎ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΎ Π΅ΡΡΡ. Π’Π°ΠΊΠΆΠ΅ Π±ΡΠ΄Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΡΠ΅Π±Π½ΡΡ
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΠΏΠΎΠ΄ Qt Ρ ΠΏΠΎΠΌΠΎΡΡΡ &kdevelop;, ΡΠ°ΠΊ ΡΡΠΎ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠ΅ ΡΠΌΠΎΠ³ΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠ΅ΡΠ²ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΡΠ²ΠΎΠΈΡΡΡΡ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ &kdevelop;. </para>
</sect2>
<sect2 id="c1s2s2">
<title
>Π ΡΠ»Π΅Π΄ΡΡΡΠΈΡ
Π³Π»Π°Π²Π°Ρ
</title>
<para
>ΠΡ Π½Π°ΡΡΠΈΡΠ΅ΡΡ: <itemizedlist>
<listitem
><para
>ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ KAppWizard</para
></listitem>
<listitem
><para
>ΡΠ·Π½Π°Π΅ΡΠ΅, ΡΡΠΎ ΡΠΆΠ΅ Π΅ΡΡΡ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ Π΅Π³ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ</para
></listitem>
<listitem
><para
>ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΡΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ ΠΊΠΎΠ΄</para
></listitem>
<listitem
><para
>Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅</para
></listitem>
<listitem
><para
>Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π½ΠΎΠ²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π² Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ², ΠΌΠ΅Π½Ρ ΠΈ ΠΏΠ°Π½Π΅Π»Π΅ΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ²</para
></listitem>
<listitem
><para
>Π΄Π΅Π»Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΡΡΠΌ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΎΠΉ ΡΠΏΡΠ°Π²ΠΊΠΈ</para
></listitem>
<listitem
><para
>ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ</para
></listitem>
</itemizedlist>
</para>
</sect2>
</sect1>
<sect1 id="c1s3">
<title
>ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ</title>
<para
>ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΏΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² Qt/KDE: <itemizedlist>
<listitem
><para
>ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ΄ Qt ΠΏΠΎΠ΄ ΡΠ΅Π΄Π°ΠΊΡΠΈΠ΅ΠΉ Matthias Kalle Dalheimer</para
></listitem>
<listitem
><para
><ulink url="www.kdevelop.org"
>Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ KDevelop, ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠ΅ Ρ KDevelop</ulink
></para
></listitem>
<listitem
><para
><ulink url="doc.trolltech.com"
>Π‘ΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊ ΠΏΠΎ ΡΡΠ½ΠΊΡΠΈΡΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Qt</ulink
></para
></listitem>
<listitem
><para
><ulink url="developer.kde.org"
>Π‘Π°ΠΉΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² KDE</ulink
></para
></listitem>
</itemizedlist>
</para>
<para
>Π’Π°ΠΊΠΆΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π²ΡΠΈΡΡ <ulink url="http://www.google.com"
>ΠΏΠΎΠΈΡΠΊΠΎΠ²ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½ΠΎΠΉ</ulink
>, ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠΎΠΉ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠΏΠΈΡΠΊΠΈ ΡΠ°ΡΡΡΠ»ΠΊΠΈ, ΡΠ΅ΡΡΡ Usenet. </para>
<para
>ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠΌΠΎΡΠΈ ΠΏΠΎ KDevelop IDE ΠΏΠΎΡΡΠ»Π°ΠΉΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ Π² ΡΠΏΠΈΡΠΎΠΊ ΡΠ°ΡΡΡΠ»ΠΊΠΈ <email
>kdevelop@kdevelop.org</email
>. ΠΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² KDevelop ΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π²Π°ΠΌ ΠΏΠΎΠΌΠΎΡΡ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ ΠΈ Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Ρ. ΠΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, Π·Π°Π΄Π°Π²Π°ΠΉΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎ KDevelop. </para>
</sect1>
</chapter>
<chapter id="chapter2">
<title
>ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ KDE ΠΈ Qt</title>
<para
>ΠΠΎΡΠ²Π΅ΠΆΡΠΊΠ°Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ TrollTech (<ulink url="http://www.trolltech.com"
>http://www.trolltech.com</ulink
>) ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ, Ρ.Π½. GUI-ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ, Qt. GUI ΡΠ°ΡΡΠΈΡΡΠΎΠ²ΡΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ "Graphical User Interface" ("Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ"). ΠΡΠΎΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ Π½ΡΠΆΠ΅Π½ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ, ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΡΠ΅ΡΠ΅Π· ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ X-Window (ΠΈΠ»ΠΈ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠΉ) Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°Ρ
Unix, Ρ.ΠΊ. ΡΠΈΡΡΠ΅ΠΌΠ° X Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΡΠ°ΠΌΠ° ΠΏΠΎ ΡΠ΅Π±Π΅ (Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π° Y Window System, ΠΊΠΎΡΠΎΡΠ°Ρ Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π±Π°Π·ΠΎΠ²ΡΠΉ Π½Π°Π±ΠΎΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², Π½ΠΎ Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΠ°Π΄ΠΈΠΈ - ΠΏΡΠΈΠΌ. ΠΏΠ΅ΡΠ΅Π².). ΠΠΎΡΡΡΠΏΠ½Ρ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°, Π½ΠΎ Qt ΠΈΠΌΠ΅Π΅Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ ΠΈ Π±ΡΡΡΡΠ΅Π΅. Qt ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΡΡΡΠΏΠ½Π° Π΄Π»Ρ Microsoft Windows, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄Π΅Π»Π°ΡΡ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ. </para>
<para
>Π¦Π΅Π»Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ KDE (<ulink url="http://www.kde.org"
>http://www.kde.org</ulink
>) -- ΡΠ΄Π΅Π»Π°ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Unix Π±ΠΎΠ»Π΅Π΅ Π΄ΡΡΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΌΠΈ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Qt, Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΎΠΊΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ° Π΄Π»Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ X-Window (ΠΈΠ»ΠΈ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΠΉ Ρ Π½Π΅ΠΉ), Π° ΡΠ°ΠΊΠΆΠ΅ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠ°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΡ
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ, ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ
Π² ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
KDE. ΠΠΎΡΠ»Π΅ Π²ΡΡ
ΠΎΠ΄Π° ΠΏΠ΅ΡΠ²ΡΡ
Π²Π΅ΡΡΠΈΠΉ KDE, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΎΠ±ΡΠ°ΡΠΈΠ»ΠΈ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π½ΡΡ ΠΈΠΌ ΡΡΠ΅Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ KDE ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΎΠ±ΡΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΈ ΠΊΠ»Π°ΡΡΡ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ ΡΠ½ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π΅ ΠΏΡΠΈΠ΄ΡΡΡΡ ΠΎΡΠ²Π°ΠΈΠ²Π°ΡΡΡΡ Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Ρ Π½ΡΠ»Ρ, Π° ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎ Π΅Ρ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ KDE Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΡΡ Π΄ΡΡΠ³ Ρ Π΄ΡΡΠ³ΠΎΠΌ Π² ΡΠ°ΠΌΠΊΠ°Ρ
ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΡΡΠΎΠ»Π°: ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠΌ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠΎΠΌ ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ "ΠΏΠ΅ΡΠ΅ΡΠ°ΡΠΈΡΡ ΠΈ ΠΎΡΡΠ°Π²ΠΈΡΡ", Ρ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠΎΠΌ ΡΠ΅ΡΡΠΈΠΈ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄ΡΡΠ³ΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌΠΈ KDE. </para>
<para
>Π Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° QT ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ KDE Π½Π°ΠΏΠΈΡΠ°Π½Ρ Π½Π° ΡΠ·ΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ C++, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΠΎΡΡΠΈ Π²ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΈΡ
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠ΅, ΡΠΎΠΆΠ΅ Π½Π°ΠΏΠΈΡΠ°Π½Ρ Π½Π° C++. Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΌΡ ΡΠΎΠ²Π΅ΡΡΠΈΠΌ ΠΊΡΠ°ΡΠΊΠΈΠΉ ΡΠΊΡΠΊΡΡΡ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΡΠ²ΠΈΠ΄ΠΈΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΎΠ½ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ, ΠΈ ΠΊΠ°ΠΊ Π² ΠΎΠ±ΡΠΈΡ
ΡΠ΅ΡΡΠ°Ρ
ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Qt ΠΈ KDE. </para>
<sect1 id="c2s1">
<title
>GUI-ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ Qt</title>
<para
>ΠΠ°ΠΊ ΡΠΊΠ°Π·Π°Π½ΠΎ Π²ΡΡΠ΅, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Qt ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ Π½Π°Π±ΠΎΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ². ΠΡΠΎΠΌΠ΅ ΡΡΠΎΠ³ΠΎ: <itemizedlist>
<listitem
><para
>ΠΠ»Π°ΡΡΡ ΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ, Π³ΠΎΡΠΎΠ²ΡΠ΅ ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π΄Π°ΠΆΠ΅ Π½Π΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΠΌΠΈ</para
></listitem>
<listitem
><para
>Π£Π΄ΠΎΠ±Π½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ ΡΠ΅ΡΠ΅Π· ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΈ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌ ΡΠΈΠ³Π½Π°Π»ΠΎΠ²/ΡΠ»ΠΎΡΠΎΠ²</para
></listitem>
<listitem
><para
>ΠΠ°Π±ΠΎΡ ΠΏΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ
GUI-ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΡ
"Π²ΠΈΠ΄ΠΆΠ΅ΡΠ°ΠΌΠΈ"</para
></listitem>
<listitem
><para
>ΠΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π΄ΠΈΠ°Π»ΠΎΠ³ ΠΎΡΠΊΡΡΡΠΈΡ ΡΠ°ΠΉΠ»Π°</para
></listitem>
</itemizedlist>
</para>
<para
>ΠΠ½Π°Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠΎΠ² Qt ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠ΄ KDE. ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΡΠ°Π·Π±Π΅ΡΡΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΠΎΠ΄ Qt, Π° ΠΏΠΎΡΠΎΠΌ ΡΠ΄Π΅Π»Π°Π΅ΠΌ ΠΈΠ· Π½Π΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΠΎΠ΄ KDE. </para>
<sect2 id="c2s1s1">
<title
>ΠΠ΅ΡΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Qt</title>
<para
>ΠΠ±ΡΡΠ½ΠΎ Π² Π½Π°ΡΠ°Π»Π΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° C++ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ <function
>main()</function
>, ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ Ρ
ΠΎΡΠΈΠΌ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΠΎΠΊΠ½Π° ΠΈ Π½Π°ΡΡΡΠΎΠΈΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ, ΡΠ½Π°ΡΠ°Π»Π° ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ, ΠΊΠ°ΠΊ ΡΡΠΈ ΠΎΠΊΠ½Π° Π±ΡΠ΄ΡΡ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΠΎΡΠΌΠΎΡΡΠΈΠΌ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΡΠ΅Π±Π½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΠ· Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ Qt ΠΈ ΡΠ°Π·Π±Π΅ΡΡΠΌ ΡΠ°Π³ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΎΠΊΠ½ΠΎ: <programlisting
>#include <qapplication.h>
#include <qpushbutton.h>
int main( int argc, char **argv )
{
QApplication a( argc, argv );
QPushButton hello( "Hello world!", 0 );
hello.resize( 100, 30 );
a.setMainWidget( &hello );
hello.show();
return a.exec();
}
</programlisting>
</para>
<para
>ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΠΈΡΠΎΠ²ΡΠ²Π°Π΅Ρ ΠΎΠΊΠ½ΠΎ Ρ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ "Hello world". ΠΠ»Ρ Π²ΡΠ΅Ρ
Qt-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ½Π°ΡΠ°Π»Π° ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΠΊΠ»Π°ΡΡΠ° <classname
>QApplication</classname
>, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ a. </para>
<para
>ΠΠ°Π»Π΅Π΅ ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΠΊΠ»Π°ΡΡΠ° <classname
>QPushButton</classname
> ΠΈ ΠΈΠΌΠ΅Π½Π΅ΠΌ hello. ΠΠ½ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΡ. ΠΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ hello ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΡΡΠΎΠΊΡ Π² Π²ΠΈΠ΄Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΡ Π΅Ρ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅. </para>
<para
>ΠΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ ΠΊΠ½ΠΎΠΏΠΊΠΈ hello <methodname
>resize()</methodname
>. ΠΠ½ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ <classname
>QPushButton</classname
> - ΡΠΈΡΠΈΠ½Π° 100 ΡΠΎΡΠ΅ΠΊ ΠΈ Π²ΡΡΠΎΡΠ° - 30. ΠΠ°ΠΊΠΎΠ½Π΅Ρ, Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ setMainWidget() Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ a ΠΈ show() Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ hello. QApplication Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ <methodname
>a.exec()</methodname
>, Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΡΠΈΠΊΠ» ΠΎΠΏΡΠΎΡΠ° ΡΠΎΠ±ΡΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ²ΡΠΎΡΡΠ΅ΡΡΡ Π΄ΠΎ ΡΠ΅Ρ
ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° ΡΠΎΠ±ΡΡΠΈΠ΅ΠΌ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½ΠΎ ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ, ΡΠΈΠ³Π½Π°Π»ΠΈΠ·ΠΈΡΡΡΡΠ΅Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π·Π°ΠΊΠΎΠ½ΡΠ΅Π½Π°. </para>
</sect2>
<sect2 id="c2s1s2">
<title
>Π‘ΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊ Qt</title>
<para
>Π’Π΅ΠΏΠ΅ΡΡ Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΡΠΏΡΠ°Π²ΠΎΡΠ½ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Qt. ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ &kdevelop; ΠΈ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ "Qt" ΠΈΠ· Π΄Π΅ΡΠ΅Π²Π°, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ. ΠΠ΄Π΅ΡΡ Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π²ΡΡ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΊΠ»Π°ΡΡΠ°Ρ
ΠΈ ΠΈΡ
ΠΌΠ΅ΡΠΎΠ΄Π°Ρ
Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Qt. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΠ°Π·Π±ΠΈΡΠ°Π΅ΠΌΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΏΠ΅ΡΠ²ΠΎΠΉ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ. ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΊΠ»Π°ΡΡΠ°Ρ
<classname
>QApplication</classname
> ΠΈ <classname
>QPushButton</classname
>, Π²ΡΠ±Π΅ΡΠΈΡΠ΅ ΡΠ°Π·Π΄Π΅Π» "Alphabetical Class List" ΠΈ Π½Π°ΠΉΠ΄ΠΈΡΠ΅ Π² ΡΠΏΠΈΡΠΊΠ΅ ΠΈΠΌΠ΅Π½Π° ΠΊΠ»Π°ΡΡΠΎΠ². ΠΠ°ΠΆΠΌΠΈΡΠ΅ Π½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΡΡ ΡΡΡΠ»ΠΊΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ³ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠ°. </para>
<para
>ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΏΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ Qt Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ Π½Π° ΡΠ°ΠΉΡΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Trolltech Π² ΡΠ°Π·Π΄Π΅Π»Π΅ <ulink url="doc.trolltech.com"
>Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Qt</ulink
> (Π½Π° Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅) </para>
<para
><classname
>QApplication</classname
> ΠΈΠΌΠ΅Π΅Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ. ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΎΡΠ»Π΅Π΄ΡΠ΅ΡΠ΅ Π·Π° ΡΡΡΠ»ΠΊΠΎΠΉ, ΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΡΠ·Π½Π°ΡΡ ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ· ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ². ΠΡΠΎ ΠΎΡΡΠ°ΡΡΡΡ Π²Π΅ΡΠ½ΡΠΌ ΠΈ Π΄Π»Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ KDE, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ΅ΠΉ ΡΡ
ΠΎΠΆΠΈΠΉ ΡΠΈΠΏ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ. </para>
<sect3 id="c2s1s2s1">
<title
>ΠΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΈΡ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ°</title>
<para
>ΠΠ°ΡΠΈΠ½ΠΈΡΠ΅ Ρ <classname
>QApplication</classname
>, ΠΈ Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ Π²ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π² ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅: <itemizedlist>
<listitem
><para
>ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ <methodname
>QApplication()</methodname
></para
></listitem>
<listitem
><para
>ΠΌΠ΅ΡΠΎΠ΄ <methodname
>setMainWidget()</methodname
></para
></listitem>
<listitem
><para
>ΠΌΠ΅ΡΠΎΠ΄ <methodname
>exec()</methodname
></para
></listitem>
</itemizedlist>
</para>
<para
>ΠΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΈΡ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠ°: <orderedlist>
<listitem
><para
>Π‘ΠΎΠ·Π΄Π°ΡΠΌ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΠΊΠ»Π°ΡΡΠ° <classname
>QApplication</classname
> Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ°, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π½Π°ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ GUI-ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΠ΅ Qt</para
></listitem>
<listitem
><para
>Π‘ΠΎΠ·Π΄Π°ΡΠΌ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π² ΠΎΠΊΠ½Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ</para
></listitem>
<listitem
><para
>ΠΠ΅Π»Π°Π΅ΠΌ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π³Π»Π°Π²Π½ΡΠΌ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ 'a')</para
></listitem>
<listitem
><para
>ΠΠ°ΠΏΡΡΠΊΠ°Π΅ΠΌ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ <classname
>QApplication</classname
></para
></listitem>
</orderedlist
>
</para>
<para
>ΠΡΠΎΡΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ Π½Π°ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ - ΠΊΠ½ΠΎΠΏΠΊΠ°, ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΠΊΠ»Π°ΡΡΠ° <classname
>QPushButton</classname
>. ΠΠ· Π΄Π²ΡΡ
Π΄ΠΎΡΡΡΠΏΠ½ΡΡ
ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠΎΠ² ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠ² ΡΡΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° ΠΌΡ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈΡΡ Π²ΡΠΎΡΡΠΌ: ΠΎΠ½ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π² Π²ΠΈΠ΄Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° ΡΡΡΠΎΠΊΡ ΡΠ΅ΠΊΡΡΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅. ΠΠ°ΡΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ <methodname
>resize()</methodname
> ΠΌΡ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌ ΡΠ°Π·ΠΌΠ΅Ρ ΠΊΠ½ΠΎΠΏΠΊΠΈ, ΡΡΠΎΠ±Ρ Π²ΡΡ ΡΡΡΠΎΠΊΠ° Π±ΡΠ»Π° Π²ΠΈΠ΄Π½Π° Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅. </para>
<para
>ΠΠ°Π»Π΅Π΅ ΠΈΠ΄ΡΡ ΠΌΠ΅ΡΠΎΠ΄ <methodname
>show()</methodname
>. ΠΠΎ Π΅Π³ΠΎ Π½Π΅Ρ Π² ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΈ ΠΊΠ»Π°ΡΡΠ° <classname
>QPushButton</classname
>. ΠΡΠΎΡ ΠΊΠ»Π°ΡΡ Π½Π°ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΊΠ»Π°ΡΡΠ° <classname
>QButton</classname
>, Π° ΡΠΎΡ, Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ, Π½Π°ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΌΠ΅ΡΠΎΠ΄Ρ <classname
>QWidget</classname
>. ΠΡΠΎΡ ΠΊΠ»Π°ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ², Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ <methodname
>show()</methodname
>. ΠΡΠ°ΠΊ, ΡΡΠΎ ΠΆΠ΅ Π΄Π΅Π»Π°Π»ΠΎΡΡ Ρ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ: <orderedlist>
<listitem
><para
>Π‘ΠΎΠ·Π΄Π°ΡΠΌ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΠΊΠ»Π°ΡΡΠ° <classname
>QPushButton</classname
>, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π²ΡΠΎΡΠΎΠΉ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ Π΄Π»Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΡ Π½Π°Π΄ΠΏΠΈΡΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅</para
></listitem>
<listitem
><para
>ΠΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌ ΡΠ°Π·ΠΌΠ΅Ρ ΠΊΠ½ΠΎΠΏΠΊΠΈ</para
></listitem>
<listitem
><para
>ΠΠ΅Π»Π°Π΅ΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠΌ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π°, ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ° ΠΊΠ»Π°ΡΡΠ° <classname
>QApplication</classname
></para
></listitem>
<listitem
><para
>ΠΡΠ·ΡΠ²Π°Π΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ <methodname
>show()</methodname
>, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ. ΠΠ½ Π½Π°ΡΠ»Π΅Π΄ΡΠ΅ΡΡΡ ΠΎΡ ΠΊΠ»Π°ΡΡΠ° <classname
>QWidget</classname
></para
></listitem>
</orderedlist>
</para>
<para
>ΠΠΎΡΠ»Π΅ Π²ΡΠ·ΠΎΠ²Π° ΠΌΠ΅ΡΠΎΠ΄Π° <methodname
>exec()</methodname
>, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π²ΠΈΠ΄ΠΈΠΌΡΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΠΊΠ½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΊΠ½ΠΎΠΏΠΊΡ "Hello world!". ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: GUI-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π²Π΅Π΄ΡΡ ΡΠ΅Π±Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΠΎΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ½ΡΡ
. ΠΠ»Π°Π²Π½ΠΎΠ΅ ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΡΠΎΡΡΠΎΠΈΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²Ρ
ΠΎΠ΄ΠΈΡ Π² Ρ.Π½. "Π³Π»Π°Π²Π½ΡΠΉ ΡΠΈΠΊΠ» ΡΠΎΠ±ΡΡΠΈΠΉ" ("main event loop"). ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΎΠΆΠΈΠ΄Π°Π΅Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΡΠΎ ΡΡΠΎΡΠΎΠ½Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΈ Π²ΡΠ΄Π°ΡΡ Π½Π° Π½ΠΈΡ
ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ ΡΠ΅Π°ΠΊΡΠΈΡ. Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ°Π·Π΄Π΅Π» ΡΠ°Π·ΡΡΡΠ½ΡΠ΅Ρ, ΡΡΠΎ ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π΄Π»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°, ΠΈ ΠΊΠ°ΠΊ ΡΡΠΈ ΡΠΎΠ±ΡΡΠΈΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ Π² Qt. </para>
<note
><para
>ΠΠ»Ρ ΠΎΠΏΡΡΠ½ΡΡ
: ΠΊΠ½ΠΎΠΏΠΊΠ° Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΠ΄ΠΈΡΠ΅Π»Ρ, ΡΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ΡΡΠΎ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡ
Π½Π΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ (top-level) ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΡΠΈΠΊΠ»Π΅ ΡΠΎΠ±ΡΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΠΎΠΌΡ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΆΠ΄Π°ΡΡ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΡΠΈΠΊΠ»Π° ΡΠΎΠ±ΡΡΠΈΠΉ. ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΡΠΎ ΠΎΠ±ΡΡΡΠ½Π΅Π½ΠΎ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΊΠ»Π°ΡΡΠ° QWidget ΠΈ The KDE Library Reference Guide</para>
</note
>
</sect3>
</sect2>
<sect2 id="c2s1s3">
<title
>ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ</title>
<para
>ΠΠΎΡΠ»Π΅ ΠΏΡΠΎΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ
ΡΠ°Π·Π΄Π΅Π»ΠΎΠ², Π²Ρ ΡΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π·Π½Π°ΡΡ: <itemizedlist>
<listitem
><para
>Π§ΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Qt Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Ρ
GUI-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ</para
></listitem>
<listitem
><para
>ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ°Ρ Qt ΠΈ</para
></listitem>
<listitem
><para
>ΠΠ΄Π΅ ΠΈ ΠΊΠ°ΠΊ Π½Π°ΠΉΡΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΊΠ»Π°ΡΡΠ°Ρ
, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π°ΠΌ Π½ΡΠΆΠ½Ρ</para
></listitem>
</itemizedlist
>
</para>
<para
>Π’Π΅ΠΏΠ΅ΡΡ ΠΎΠΆΠΈΠ²ΠΈΠΌ Π½Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° ΡΠΎΠ±ΡΡΠΈΠΉ. Π ΠΎΠ±ΡΠ΅ΠΌ, Π΅ΡΡΡ Π΄Π²Π° ΡΠΏΠΎΡΠΎΠ±Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ - ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠΎΠΉ ΠΈ ΠΌΡΡΡΡ. Π ΠΎΠ±ΠΎΠΈΡ
ΡΠ»ΡΡΠ°ΡΡ
Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ Π½ΠΎΠ²ΡΡ
ΡΠΎΠ±ΡΡΠΈΠΉ ΠΎΡ ΡΡΠΈΡ
ΡΡΡΡΠΎΠΉΡΡΠ² ΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΈΡ
ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ. </para
>
<para
>ΠΠΊΠΎΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΠΎΡΡΠ»Π°Π΅Ρ Π²ΡΠ΅ ΡΠΎΠ±ΡΡΠΈΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΌΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. <classname
>QApplication</classname
> ΠΏΠ΅ΡΠ΅ΡΡΠ»Π°Π΅Ρ ΠΈΡ
Π°ΠΊΡΠΈΠ²Π½ΠΎΠΌΡ ΠΎΠΊΠ½Ρ Π² Π²ΠΈΠ΄Π΅ <classname
>QEvent</classname
> ΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π·Π°ΡΠ΅ΠΌ ΡΠ΅ΡΠ°ΡΡ, ΡΡΠΎ ΠΏΡΠΈ ΡΡΠΎΠΌ Π΄Π΅Π»Π°ΡΡ. Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΡΠΎΠ±ΡΡΠΈΠ΅ ΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ <methodname
>QWidget::event (QEvent*)</methodname
>, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΡΠΈΠΏ ΡΠΎΠ±ΡΡΠΈΡ ΠΈ Π²ΡΠ΄Π°ΡΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ°Ρ ΡΠ΅Π°ΠΊΡΠΈΡ; <methodname
>event()</methodname
> - Π³Π»Π°Π²Π½ΡΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΠΎΠ±ΡΡΠΈΠΉ. ΠΠ½ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΡΠΎΠ±ΡΡΠΈΠ΅ Ρ.Π½. ΡΠΈΠ»ΡΡΡΠ°ΠΌ ΡΠΎΠ±ΡΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ, ΡΡΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ ΠΈ ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ Ρ ΡΡΠΈΠΌ ΡΠΎΠ±ΡΡΠΈΠ΅ΠΌ. ΠΡΠ»ΠΈ ΡΠΈΠ»ΡΡΡΠ° Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΡΠΎΠ±ΡΡΠΈΡ Π½Π΅Ρ, Π²ΡΠ·ΡΠ²Π°ΡΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ. ΠΠ½ΠΈ Π²ΡΠ·ΡΠ²Π°ΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΏΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ: <itemizedlist>
<listitem
><para
>Π‘ΠΎΠ±ΡΡΠΈΡ Ρ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ - Π½Π°ΠΆΠ°ΡΠΈΠ΅ ΠΊΠ»Π°Π²ΠΈΡ TAB ΠΈ Shift-TAB:</para>
<itemizedlist>
<listitem
><para
><methodname
>virtual void focusInEvent(QFocusEvent *)</methodname
></para
></listitem>
<listitem
><para
><methodname
>virtual void focusOutEvent(QFocusEvent *)</methodname
></para
></listitem>
</itemizedlist>
</listitem>
<listitem
><para
>ΠΠ΅ΡΡ ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠΉ Π²Π²ΠΎΠ΄ Ρ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ:</para>
<itemizedlist>
<listitem
><para
><methodname
>virtual void keyPressEvent(QKeyEvent *)</methodname
></para
></listitem>
<listitem
><para
><methodname
>virtual void keyReleaseEvent(QKeyEvent *)</methodname
></para
></listitem>
</itemizedlist>
</listitem>
<listitem
><para
>ΠΠ²ΠΈΠΆΠ΅Π½ΠΈΡ ΠΊΡΡΡΠΎΡΠ° ΠΌΡΡΠΈ:</para>
<itemizedlist>
<listitem
><para
><methodname
>virtual void mouseMoveEvent(QMouseEvent *)</methodname
></para
></listitem>
<listitem
><para
><methodname
>virtual void enterEvent(QEvent *)</methodname
></para
></listitem>
<listitem
><para
><methodname
>virtual void leaveEvent(QEvent *)</methodname
></para
></listitem>
</itemizedlist>
</listitem>
<listitem
><para
>Π©Π΅Π»ΡΠΊΠΈ ΠΌΡΡΡΡ</para>
<itemizedlist>
<listitem
><para
><methodname
>virtual void mousePressEvent(QMouseEvent *)</methodname
></para
></listitem>
<listitem
><para
><methodname
>virtual void mouseReleaseEvent(QMouseEvent *)</methodname
></para
></listitem>
<listitem
><para
><methodname
>virtual void mouseDoubleClickEvent(QMouseEvent *)</methodname
></para
></listitem>
</itemizedlist>
</listitem>
<listitem
><para
>Π‘ΠΎΠ±ΡΡΠΈΡ Ρ ΠΎΠΊΠ½ΠΎΠΌ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΌ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ</para>
<itemizedlist>
<listitem
><para
><methodname
>virtual void moveEvent(QMoveEvent *)</methodname
></para
></listitem>
<listitem
><para
><methodname
>virtual void resizeEvent(QResizeEvent *)</methodname
></para
></listitem>
<listitem
><para
><methodname
>virtual void closeEvent(QCloseEvent *)</methodname
></para
></listitem>
</itemizedlist>
</listitem>
</itemizedlist>
</para>
<para
>ΠΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ Π²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ ΡΠ²Π»ΡΡΡΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΈ Π·Π°ΡΠΈΡΡΠ½Π½ΡΠΌΠΈ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅Π½Π°Π·Π½Π°ΡΠΈΡΡ ΡΠΎΠ±ΡΡΠΈΡ, Π½ΡΠΆΠ½ΡΠ΅ Π²Π°ΠΌ, ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΠ²ΠΎΡ ΡΠ΅Π°ΠΊΡΠΈΡ. <classname
>QWidget</classname
> ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΠ³ΠΎΠ΄ΠΈΡΡΡΡ Π² Π²Π°ΡΠΈΡ
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°Ρ
. Π Π»ΡΠ±ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, ΠΊΠ»Π°ΡΡ <classname
>QWidget</classname
> Π½ΡΠΆΠ½ΠΎ ΡΠ·Π½Π°ΡΡ ΠΏΠΎΠ»ΡΡΡΠ΅. </para>
</sect2>
<sect2 id="c1s2s4">
<title
>ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΠ΅ΡΠ΅Π· ΡΠΈΠ³Π½Π°Π»Ρ ΠΈ ΡΠ»ΠΎΡΡ</title>
<para
>Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΠΌ ΠΊ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌΡ ΠΎΡΠ»ΠΈΡΠΈΡ Qt: ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΡ ΡΠΈΠ³Π½Π°Π»/ΡΠ»ΠΎΡ. ΠΡΠΎ Π±ΡΡΡΡΠΎΠ΅ ΠΈ ΡΠ΄ΠΎΠ±Π½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΎΠ±ΡΡΠ½ΠΎ ΡΠ΅ΡΠ°Π΅ΡΡΡ ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ callback-ΡΡΠ½ΠΊΡΠΈΠΉ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°Ρ
, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΡ
Ρ X-Window. Π’Π°ΠΊ ΠΊΠ°ΠΊ ΡΠ°ΠΊΠΎΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΡΡΠ΅Π±ΡΠ΅Ρ Π°ΠΊΠΊΡΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΈΠ½ΠΎΠ³Π΄Π° Π΄Π΅Π»Π°Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΎΡΠ΅Π½Ρ ΡΠ»ΠΎΠΆΠ½ΡΠΌ (ΡΡΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΠΎ Qt ΠΈ ΠΎΠ±ΡΡΡΠ½Π΅Π½ΠΎ Π² ΠΊΠ½ΠΈΠ³Π΅ Π.ΠΠ°Π»ΡΡ
Π΅ΠΉΠΌΠ΅ΡΠ° [K.Dalheimer] 'Programming with Qt'), Troll Tech ΠΏΡΠΈΠ΄ΡΠΌΠ°Π»Π° Π½ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ, Π³Π΄Π΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΡΡΠ»Π°ΡΡ ΡΠΈΠ³Π½Π°Π»Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΡΠ·ΡΠ²Π°ΡΡ Ρ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ, ΠΎΠ±ΡΡΠ²Π»Π΅Π½Π½ΡΠΌΠΈ ΠΊΠ°ΠΊ ΡΠ»ΠΎΡΡ. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ Π½Π° C++ Π½ΡΠΆΠ½ΠΎ Π·Π½Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π΅ΡΠΈ ΠΎ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠ΅: <itemizedlist>
<listitem
><para
>ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ΅Π³ΠΎ ΡΠΈΠ³Π½Π°Π»Ρ/ΡΠ»ΠΎΡ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΌΠ°ΠΊΡΠΎΡ Q_OBJECT Π² Π½Π°ΡΠ°Π»Π΅ (Π±Π΅Π· ΡΠΎΡΠΊΠΈ Ρ Π·Π°ΠΏΡΡΠΎΠΉ); ΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΡΠ½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΎ ΠΎΡ ΠΊΠ»Π°ΡΡΠ° <classname
>QObject</classname
> </para
></listitem>
<listitem
><para
>ΡΠΈΠ³Π½Π°Π» ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΡΠ»Π°Π½ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ ΡΠ»ΠΎΠ²ΠΎΠΌ emit (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, emit signal (ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ...)) ΠΈΠ· Π»ΡΠ±ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΊΠ»Π°ΡΡΠ°, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠ΅Π³ΠΎ ΡΠΈΠ³Π½Π°Π»Ρ/ΡΠ»ΠΎΡΡ </para
></listitem>
<listitem
><para
>Π²ΡΠ΅ ΡΠΈΠ³Π½Π°Π»Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠ΅ΡΡ Π½Π΅ Π½Π°ΡΠ»Π΅Π΄ΡΠ΅ΠΌΡΠΌΠΈ ΠΊΠ»Π°ΡΡΠ°ΠΌΠΈ, Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π² ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ° Π² ΡΠ°Π·Π΄Π΅Π»Π΅ signals </para
></listitem>
<listitem
><para
>Π²ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ²ΡΠ·Π°Π½Ρ Ρ ΡΠΈΠ³Π½Π°Π»ΠΎΠΌ, ΠΎΠ±ΡΡΠ²Π»ΡΡΡΡΡ Π² ΡΠ°Π·Π΄Π΅Π»Π°Ρ
ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠ° Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ ΡΠ»ΠΎΠ²ΠΎΠΌ slot, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ public slots </para
></listitem>
<listitem
><para
>ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΌΠ΅ΡΠ°ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² (moc, meta-object compiler) ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ, Π·Π°ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΠΊΡΠΎΡΡ Π½Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄ (ΡΡΠΎ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π·Π½Π°ΡΡ). ΠΡΠ²ΠΎΠ΄ moc ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ C++. </para
></listitem>
</itemizedlist>
</para>
<para
>ΠΡΡΠ³ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² Π±Π΅Π· Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ ΠΎΡ ΠΊΠ»Π°ΡΡΠ° <classname
>QObject</classname
> - ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ»Π°ΡΡ <classname
>QSignal</classname
>: Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΈ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ. ΠΠ°Π»Π΅Π΅ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅ΡΡΡ, ΡΡΠΎ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΡ ΠΊΠ»Π°ΡΡΠ° <classname
>QObject</classname
>. </para>
<para
>Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π²Π°Ρ ΠΊΠ»Π°ΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠ»Π°ΡΡ ΡΠΈΠ³Π½Π°Π»Ρ ΠΊΡΠ΄Π° ΡΠ³ΠΎΠ΄Π½ΠΎ ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ»ΠΎΡΡ, ΠΊ ΠΊΠΎΡΠΎΡΡΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠ²ΡΠ·ΡΠ²Π°ΡΡ Π»ΡΠ±ΡΠ΅ ΡΠΈΠ³Π½Π°Π»Ρ. ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠΈΠ³Π½Π°Π»Ρ, Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π·Π°Π±ΠΎΡΠΈΡΡΡΡ ΠΎ ΡΠΎΠΌ, ΠΊΡΠΎ ΠΈΡ
ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ - Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΡΠ»Π°ΡΡ ΡΠΈΠ³Π½Π°Π», Π° ΠΏΠΎΡΠΎΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ Π»ΡΠ±ΠΎΠΉ ΡΠ»ΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ ΠΏΡΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ΡΠΈΠ³Π½Π°Π»Π°. Π‘Π»ΠΎΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ Π² ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ. </para>
<para
>Π’Π΅ΠΏΠ΅ΡΡ, ΡΡΠΎΠ±Ρ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΡΠΈΠ³Π½Π°Π» ΡΠΎ ΡΠ»ΠΎΡΠΎΠΌ,Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ <methodname
>connect()</methodname
> ΠΊΠ»Π°ΡΡΠ° <classname
>QObject</classname
> ΠΈΠ»ΠΈ, Π΅ΡΠ»ΠΈ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ, Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΈΠ²ΡΠ·ΠΊΠΈ ΠΊ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΌΡ ΡΠΈΠ³Π½Π°Π»Ρ. </para>
<sect3 id="c1s2s4s1">
<title
>ΠΡΠΈΠΌΠ΅ΡΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅</title>
<para
>Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΠ±ΡΡΡΠ½Π΅Π½ΠΈΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ Π²ΠΎΠ·ΡΠΌΡΠΌ Π½Π°Ρ ΠΏΠ΅ΡΠ²ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΈ ΡΠ°ΡΡΠΈΡΠΈΠΌ Π΅Π³ΠΎ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΡΠΈΠ²ΡΠ·ΠΊΠΎΠΉ ΡΠΈΠ³Π½Π°Π»Π° ΠΈ ΡΠ»ΠΎΡΠ°: <programlisting
>#include <qapplication.h>
#include <qpushbutton.h>
int main( int argc, char **argv )
{
QApplication a( argc, argv );
QPushButton hello( "Hello world!" , 0);
hello.resize( 100, 30 );
a.setMainWidget( &hello );
QObject::connect(&hello, SIGNAL( clicked() ), &a, SLOT( quit() ));
hello.show();
return a.exec();
}
</programlisting>
</para>
<para
>ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡΠ΅, ΠΌΡ Π»ΠΈΡΡ ΡΠ°ΡΡΠΈΡΠΈΠ»ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄Π° <methodname
>connect()</methodname
>: <methodname
>connect(&hello, SIGNAL( clicked() ), &a, SLOT( quit() ))</methodname
> — Π²ΡΡ, ΡΡΠΎ ΠΌΡ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ. Π§ΡΠΎ ΠΆΠ΅ ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ? ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Π° <methodname
>connect()</methodname
> Π² ΠΊΠ»Π°ΡΡΠ΅ QObject: </para>
<para
><methodname
>bool connect ( const QObject * sender, const char * signal, const QObject * receiver, const char * member ) </methodname
></para>
<para
>ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ <classname
>QObject</classname
> ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΠ½ΠΈΡΠΈΠ°ΡΠΎΡΠΎΠΌ ΡΠΈΠ³Π½Π°Π»Π°, ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Π²ΠΎ Π²ΡΠΎΡΠΎΠΌ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ΅. ΠΡΡΠ°Π²ΡΠΈΠ΅ΡΡ Π΄Π²Π° Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° Π΅ΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ-ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΠΌΠ΅Π΅Ρ ΡΠ»ΠΎΡ, Π° Π·Π°ΡΠ΅ΠΌ ΠΈ ΠΈΠΌΡ ΡΡΠ½ΠΊΡΠΈΠΈ-ΡΠ»ΠΎΡΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π° ΠΏΡΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠΈ ΡΠΈΠ³Π½Π°Π»Π°. </para>
<para
>Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² ΠΈ ΡΠ»ΠΎΡΠΎΠ², ΠΎΠ±ΡΠ΅ΠΊΡΡ Π²Π°ΡΠΈΡ
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΠΌΠΎΠ³ΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Π΄ΡΡΠ³ Ρ Π΄ΡΡΠ³ΠΎΠΌ Π±Π΅Π· ΡΠ²Π½ΠΎΠΉ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΈΠΏΠ° ΠΎΠ±ΡΠ΅ΠΊΡΠ°-ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠ°. ΠΠ°Π»Π΅Π΅ Π² ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΡ ΠΌΠ΅Ρ
Π°Π½Π·ΠΈΠΌΠ° ΡΠΈΠ³Π½Π°Π»ΠΎΠ²/ΡΠ»ΠΎΡΠΎΠ². ΠΠΎΠΌΠ΅ ΡΡΠΎΠ³ΠΎ, ΠΎ Π½ΡΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΈΡΠ°ΡΡ Π² <ulink url="developer.kde.org/documentation/library/libraryref.html"
>The KDE Library Reference Guide</ulink
> ΠΈ <ulink url="doc.trolltech.com"
>Qt online reference</ulink
>. </para>
</sect3>
</sect2>
</sect1>
<sect1 id="c2s3">
<title
>Π§ΡΠΎ Π΄Π°ΡΡ KDE</title>
<sect2 id="c2s3s1">
<title
>ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ KDE 3.x</title>
<para
>ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ KDE, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π°ΠΌ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΡΡΡΡ ΠΏΡΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ KDE-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ: <itemizedlist>
<listitem
><para
>kdecore - Π²ΡΠ΅ ΠΊΠ»Π°ΡΡΡ Ρ Π½Π΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠΌΠΈ Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ </para
></listitem>
<listitem
><para
>kdeui - ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΌΠ΅Π½Ρ, ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΠΈ Ρ.Π΄. </para
></listitem>
<listitem
><para
>kfile - Π΄ΠΈΠ°Π»ΠΎΠ³ΠΈ Π²ΡΠ±ΠΎΡΠ° ΡΠ°ΠΉΠ»ΠΎΠ² </para
></listitem>
</itemizedlist>
</para>
<para
>Π’Π°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π²Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΡΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ: <itemizedlist>
<listitem
><para
>kdefx - ΡΠ°ΡΡΡΠΎΠ²ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΡΡΡΠ΅ΠΊΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ QStyle - KStyle </para
></listitem>
<listitem
><para
>khtml - ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΏΠΎΠΊΠ°Π·Π° HTML </para
></listitem>
<listitem
><para
>kjs - ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Javascript </para
></listitem>
<listitem
><para
>kio - Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ΅ΡΠ΅Π²ΡΠΌ ΡΠ°ΠΉΠ»Π°ΠΌ </para
></listitem>
<listitem
><para
>kparts - ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² (ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
, Π²Π½Π΅Π΄ΡΡΠ΅ΠΌΡΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ) </para
></listitem>
</itemizedlist>
</para>
<para
>Π’Π΅ΠΏΠ΅ΡΡ Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΡΠ΄Π΅Π»Π°ΡΡ ΠΈΠ· Π½Π°ΡΠ΅ΠΉ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° Qt KDE-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. </para>
</sect2>
<sect2 id="c2s3s2">
<title
>ΠΡΠΈΠΌΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ KDE</title>
<para
>Π Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅, ΡΡΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΠΏΠΎΠ΄ KDE Π½ΠΈ ΠΊΠ°ΠΏΠ΅Π»ΡΠΊΠΈ Π½Π΅ ΡΡΡΠ΄Π½Π΅Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° Qt. ΠΠ»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ KDE, Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠ»Π°ΡΡΡ. Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ ΠΎΠ±ΡΡΠ΄ΠΈΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ Π²Π΅ΡΡΠΈΠ΅ΠΉ Π½Π° Qt: <programlisting
>#include <kapplication.h>
#include <qpushbutton.h>
int main( int argc, char **argv )
{
KApplication a( argc, argv );
QPushButton hello( "Hello world!", 0 );
hello.resize( 100, 30 );
a.setTopWidget( &hello );
QObject::connect(&hello, SIGNAL( clicked() ), &a, SLOT( quit() ));
hello.show();
return a.exec();
}
</programlisting>
</para
>
<para
>ΠΡ Π²ΠΈΠ΄ΠΈΡΠ΅, ΡΡΠΎ ΠΌΡ ΠΏΠΎΠΌΠ΅Π½ΡΠ»ΠΈ ΠΊΠ»Π°ΡΡ <classname
>QApplication</classname
> Π½Π° <classname
>KApplication</classname
>. ΠΠ°ΡΠ΅ΠΌ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ ΠΌΠ΅ΡΠΎΠ΄ <methodname
>setTopWidget</methodname
> Π²ΠΌΠ΅ΡΡΠΎ <methodname
>setMainWidget()</methodname
> Π΄Π»Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΡ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄Π»Ρ <classname
>KApplication</classname
>. ΠΡΡ! ΠΠ°ΡΠ΅ ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ KDE Π³ΠΎΡΠΎΠ²ΠΎ - ΠΎΡΡΠ°Π»ΠΎΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΏΡΡΡ ΠΊ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΡΠΌ ΡΠ°ΠΉΠ»Π°ΠΌ KDE ΠΈ ΡΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Π°ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ kdecore ΠΊΠ»ΡΡΠΎΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΡΠΈΠΊΠ° -lkdecore. </para>
<para
>ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΠ΅ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΏΡΠΎΡΡΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π²Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ΄ΠΎΠ±Π½Π°Ρ ΡΡΠ΅Π΄Π° Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΠ. Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π³Π»Π°Π²Π΅ ΡΠ΅ΡΡ ΠΏΠΎΠΉΠ΄ΡΡ ΠΎ &kdevelop;. </para>
<para
>ΠΡΠ°ΠΊ, ΠΊ ΡΡΠΎΠΌΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, Π²Ρ ΡΠΆΠ΅ ΠΏΡΠΎΡΠ»ΠΈΡΡ ΠΏΠΎ ΡΡΡΠ°Π½ΠΈΡΠ°ΠΌ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Qt, Π² Ρ.Ρ. ΠΏΠΎ ΠΊΠ»Π°ΡΡΠ°ΠΌ <classname
>QApplication</classname
>, <classname
>QWidget</classname
> ΠΈ <classname
>QObject</classname
>, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ kdecore, ΠΊΠ»Π°ΡΡΡ <classname
>KApplication</classname
>. <ulink url="developer.kde.org/documentation/library/libraryref.html"
>KDE Library Reference handbook</ulink
> ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΠΎΠ»Π½ΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠΎΠ² <classname
>QApplication</classname
> ΠΈ <classname
>KApplication</classname
>, Π²ΠΊΠ»ΡΡΠ°Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΠΊΠ»ΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ. </para>
</sect2>
</sect1>
</chapter>
<chapter id="chapter3">
<title
>Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΡΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ</title>
<sect1 id="c3s1">
<title
>ΠΠ°ΡΡΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ</title>
<para
>ΠΠ°ΡΡΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (Application Wizard) ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ Π½Π°ΡΠ°ΡΡ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΠ² ΡΠΊΠ΅Π»Π΅Ρ-ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π»Ρ Π²Π°ΡΠΈΡ
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ. Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠ΅Π»ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ±ΡΠ°ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΉ ΡΠΈΠΏ ΡΠ°Π±Π»ΠΎΠ½Π°: <itemizedlist>
<listitem
><para
>KDE Application Framework: ΠΏΠΎΠ»Π½ΡΠΉ ΠΊΠ°ΡΠΊΠ°Ρ Π΄Π»Ρ ΠΎΠ±ΡΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ KDE </para
></listitem>
<listitem
><para
>QMake Project: ΡΡΡΡΠΊΡΡΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΎΡΠ½ΠΎΠ²ΡΠ²Π°Π΅ΡΡΡ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΠ±ΠΎΡΠΊΠΈ qmake ΡΠΈΡΠΌΡ Trolltech </para
></listitem>
<listitem
><para
>Simple hello world program: ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π½Π° C++ Π±Π΅Π· Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° </para
></listitem>
<listitem
><para
>ΠΈ Π½Π΅ΠΌΠ°Π»ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π΄ΡΡΠ³ΠΈΡ
ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ² </para
></listitem>
</itemizedlist>
</para>
<para
>Π ΡΡΠΎΠΉ Π³Π»Π°Π²Π΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΠ°ΡΡΠ΅ΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅ ΠΏΠ΅ΡΠ²ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° KDE. </para>
</sect1>
<sect1 id="c3s2">
<title
>ΠΠ°ΡΡΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°</title>
<sect2 id="c3s2s1">
<title
>ΠΠ°ΠΏΡΡΠΊ ΠΌΠ°ΡΡΠ΅ΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΠ΅ΡΠ²Π°Ρ ΡΡΡΠ°Π½ΠΈΡΠ°</title>
<para
>ΠΡΠΊΡΠΎΠΉΡΠ΅ &kdevelop;, Π² ΠΌΠ΅Π½Ρ "ΠΡΠΎΠ΅ΠΊΡ" Π²ΡΠ±Π΅ΡΠΈΡΠ΅ "ΠΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ". ΠΡΠ±Π΅ΡΠΈΡΠ΅ Π²Π΅ΡΠΊΡ C++, KDE, Application Framework. </para>
<para
>ΠΡΠ±Π΅ΡΠ΅ΠΌ ΠΈΠΌΡ KScribble. <screenshot
><mediaobject
><imageobject>
<imagedata fileref="appwizard.png" format="PNG"/>
</imageobject
><textobject
><phrase
>ΠΠ°ΡΡΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ</phrase
></textobject>
</mediaobject
></screenshot>
</para>
</sect2>
<sect2 id="c3s2s2">
<title
>Π‘ΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ</title>
<para
>ΠΠ°Π»Π΅Π΅ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π²ΡΠ±ΡΠ°ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ CVS, ΠΈΠ»ΠΈ ΠΎΡΠΊΠ°Π·Π°ΡΡΡΡ ΠΎΡ Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. Π Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ - ΡΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅. </para>
</sect2>
<sect2 id="c3s2s3">
<title
>Π¨Π°Π±Π»ΠΎΠ½Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΡΡ
ΠΈ ΠΈΡΡ
ΠΎΠ΄Π½ΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ²</title>
<para
>ΠΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΡΠΉΡΠ΅ ΡΠ΅ΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ Π² Π½Π°ΡΠ°Π»ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π²Π½ΠΎΠ²Ρ ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°. ΠΠ°ΡΠ΅ΠΌ Π½Π°ΠΆΠΌΠΈΡΠ΅ "ΠΠΎΡΠΎΠ²ΠΎ". ΠΡΠ»ΠΈ ΠΎΠ½Π° Π½Π΅Π°ΠΊΡΠΈΠ²Π½Π°, Π²Π΅ΡΠ½ΠΈΡΠ΅ΡΡ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΡΡΡ Π²ΡΠ±ΡΠ°Π½Π½ΡΡ
Π²Π°ΠΌΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ². </para>
</sect2>
<sect2 id="c3s2s4">
<title
>ΠΠΊΠΎΠ½ΡΠ°Π½ΠΈΠ΅</title>
<para
>ΠΡΠΊΡΠΎΠ΅ΡΡΡ ΠΎΠΊΠ½ΠΎ Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΠΌΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ, ΠΏΠΎΡΠ»Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎΠ³ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°, Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΡΠ²ΠΈΡΡΡΡ Π½Π°Π΄ΠΏΠΈΡΡ **** Success *****. </para>
</sect2>
</sect1>
<sect1 id="c3s3">
<title
>ΠΠ΅ΡΠ²Π°Ρ ΡΠ±ΠΎΡΠΊΠ°</title>
<para
>ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΡΠΎΠΉΠ΄ΡΠΌΡΡ ΠΏΠΎ Π²ΡΠ΄Π°Π½Π½ΠΎΠΌΡ ΠΌΠ°ΡΡΠ΅ΡΠΎΠΌ ΠΊΠΎΠ΄Ρ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΎΠ±ΡΠ΅Π³ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠΎ ΡΡΡΡΠΊΡΡΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. </para>
<para
>ΠΠ°Π»Π΅Π΅ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ, ΡΡΠΎ Π²Ρ ΠΎΡΠ²ΠΎΠΈΠ»ΠΈΡΡ Ρ Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠ΅ΠΉ &kdevelop;. ΠΡΠ»ΠΈ ΡΡΠΎ Π½Π΅ ΡΠ°ΠΊ, ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ΡΡ ΠΊ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Ρ KDevelop. </para>
<para
>ΠΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ Automake ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ ΡΠ°ΠΉΠ»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°: <screenshot
><mediaobject
><imageobject>
<imagedata fileref="kscribblefiles.png" format="PNG"/>
</imageobject
><textobject
><phrase
>Π€Π°ΠΉΠ»Ρ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°</phrase
></textobject>
</mediaobject
></screenshot>
</para>
<para
>ΠΠ΅ΡΠ΅Π΄ ΡΠ³Π»ΡΠ±Π»Π΅Π½ΠΈΠ΅ΠΌ Π² ΠΈΡΡ
ΠΎΠ΄Π½ΠΈΠΊΠΈ, Π²ΡΠΏΠΎΠ»Π½ΠΈΠΌ ΡΠ±ΠΎΡΠΊΡ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ "Π‘ΠΎΠ±ΡΠ°ΡΡ ΠΏΡΠΎΠ΅ΠΊΡ" ΠΈΠ· ΠΌΠ΅Π½Ρ "Π‘Π±ΠΎΡΠΊΠ°", ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ Π½Π°ΠΆΠΌΠΈΡΠ΅ F8. Π ΠΏΠΎΡΠ²ΠΈΠ²ΡΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ Π²ΡΠ²ΠΎΠ΄Π° Π±ΡΠ΄ΡΡ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΡΠ±ΠΎΡΡΠΈΠΊΠ° <command
>make</command
>. <programlisting
>1 cd /home/caleb/kscribble && WANT_AUTOCONF_2_5=1 WANT_AUTOMAKE_1_6=1 gmake k
2 gmake all-recursive
3 gmake[1]: Entering directory `/home/caleb/kscribble'
4 Making all in doc
5 gmake[2]: Entering directory `/home/caleb/kscribble/doc'
6 Making all in .
7 gmake[3]: Entering directory `/home/caleb/kscribble/doc'
8 gmake[3]: Nothing to be done for `all-am'.
9 gmake[3]: Leaving directory `/home/caleb/kscribble/doc'
10 Making all in en
11 gmake[3]: Entering directory `/home/caleb/kscribble/doc/en'
12 /usr/local/kde3/bin/meinproc --check --cache index.cache.bz2 /home/caleb/kscribble/doc/en/index.docbook
13 gmake[3]: Leaving directory `/home/caleb/kscribble/doc/en'
14 gmake[2]: Leaving directory `/home/caleb/kscribble/doc'
15 Making all in po
16 gmake[2]: Entering directory `/home/caleb/kscribble/po'
17 gmake[2]: Nothing to be done for `all'.
18 gmake[2]: Leaving directory `/home/caleb/kscribble/po'
19 Making all in src
20 gmake[2]: Entering directory `/home/caleb/kscribble/src'
21 source='main.cpp' object='main.o' libtool=no \
22 depfile='.deps/main.Po' tmpdepfile='.deps/main.TPo' \
23 depmode=gcc3 /bin/sh /home/caleb/kscribble/admin/depcomp \
24 g++ -DHAVE_CONFIG_H -I. -I/home/caleb/kscribble/src -I.. -I/usr/local/kde3/include
-I/usr/lib/qt/include -I/usr/X11R6/include -DQT_THREAD_SUPPORT -D_REENTRANT -Wnon-virtual-dtor
-Wno-long-long -Wundef -Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings
-ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -O2 -fno-exceptions -fno-check-new
-c -o main.o `test -f 'main.cpp' || echo '/home/caleb/kscribble/src/'`main.cpp
25 /usr/lib/qt/bin/moc /home/caleb/kscribble/src/kscribble.h -o kscribble.moc
26 source='kscribble.cpp' object='kscribble.o' libtool=no \
27 depfile='.deps/kscribble.Po' tmpdepfile='.deps/kscribble.TPo' \
28 depmode=gcc3 /bin/sh /home/caleb/kscribble/admin/depcomp \
29 g++ -DHAVE_CONFIG_H -I. -I/home/caleb/kscribble/src -I.. -I/usr/local/kde3/include
-I/usr/lib/qt/include -I/usr/X11R6/include -DQT_THREAD_SUPPORT -D_REENTRANT -Wnon-virtual-dtor
-Wno-long-long -Wundef -Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings
-ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -O2 -fno-exceptions -fno-check-new
-c -o kscribble.o `test -f 'kscribble.cpp' || echo '/home/caleb/kscribble/src/'`kscribble.cpp
30 kscribble.cpp: In member function `void KScribble::setupActions()'
31 kscribble.cpp:107: warning: unused variable `KAction*custom'
32 /usr/lib/qt/bin/moc /home/caleb/kscribble/src/kscribbleview.h -o kscribbleview.moc
33 source='kscribbleview.cpp' object='kscribbleview.o' libtool=no \
34 depfile='.deps/kscribbleview.Po' tmpdepfile='.deps/kscribbleview.TPo' \
35 depmode=gcc3 /bin/sh /home/caleb/kscribble/admin/depcomp \
36 g++ -DHAVE_CONFIG_H -I. -I/home/caleb/kscribble/src -I.. -I/usr/local/kde3/include
-I/usr/lib/qt/include -I/usr/X11R6/include -DQT_THREAD_SUPPORT -D_REENTRANT -Wnon-virtual-dtor
-Wno-long-long -Wundef -Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -ansi
-D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -O2 -fno-exceptions -fno-check-new -c
-o kscribbleview.o `test -f 'kscribbleview.cpp' || echo '/home/caleb/kscribble/src/'`kscribbleview.cpp
37 kscribbleview.cpp: In member function `void KScribbleView::print(QPainter*,
38 int, int)':
39 kscribbleview.cpp:79: warning: unused parameter `QPainter*p'
40 kscribbleview.cpp:79: warning: unused parameter `int height'
41 kscribbleview.cpp:79: warning: unused parameter `int width'
42 /usr/lib/qt/bin/moc /home/caleb/kscribble/src/pref.h -o pref.moc
43 source='pref.cpp' object='pref.o' libtool=no \
44 depfile='.deps/pref.Po' tmpdepfile='.deps/pref.TPo' \
45 depmode=gcc3 /bin/sh /home/caleb/kscribble/admin/depcomp \
46 g++ -DHAVE_CONFIG_H -I. -I/home/caleb/kscribble/src -I.. -I/usr/local/kde3/include
-I/usr/lib/qt/include -I/usr/X11R6/include -DQT_THREAD_SUPPORT -D_REENTRANT -Wnon-virtual-dtor
-Wno-long-long -Wundef -Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings
-ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -O2 -fno-exceptions -fno-check-new
-c -o pref.o `test -f 'pref.cpp' || echo '/home/caleb/kscribble/src/'`pref.cpp
47 /usr/local/kde3/bin/dcopidl /home/caleb/kscribble/src/kscribbleiface.h
> kscribbleiface.kidl ||
( rm -f kscribbleiface.kidl ; /bin/false )
48 /usr/local/kde3/bin/dcopidl2cpp --c++-suffix cpp --no-signals --no-stub kscribbleiface.kidl
49 source='kscribbleiface_skel.cpp' object='kscribbleiface_skel.o' libtool=no \
50 depfile='.deps/kscribbleiface_skel.Po' tmpdepfile='.deps/kscribbleiface_skel.TPo' \
51 depmode=gcc3 /bin/sh /home/caleb/kscribble/admin/depcomp \
52 g++ -DHAVE_CONFIG_H -I. -I/home/caleb/kscribble/src -I.. -I/usr/local/kde3/include
-I/usr/lib/qt/include -I/usr/X11R6/include -DQT_THREAD_SUPPORT -D_REENTRANT -Wnon-virtual-dtor
-Wno-long-long -Wundef -Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings
-ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -O2 -fno-exceptions -fno-check-new
-c -o kscribbleiface_skel.o `test -f 'kscribbleiface_skel.cpp' ||
echo '/home/caleb/kscribble/src/'`kscribbleiface_skel.cpp
53 /bin/sh ../libtool --silent --mode=link --tag=CXX g++ -Wnon-virtual-dtor -Wno-long-long -Wundef -Wall
-pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -ansi -D_XOPEN_SOURCE=500
-D_BSD_SOURCE -Wcast-align -Wconversion -O2 -fno-exceptions -fno-check-new -o kscribble -R
/usr/local/kde3/lib -R /usr/lib/qt/lib -R /usr/X11R6/lib -L/usr/X11R6/lib -L/usr/lib/qt/lib
-L/usr/local/kde3/lib main.o kscribble.o kscribbleview.o pref.o kscribbleiface_skel.o -lkio
54 source='kscribble_client.cpp' object='kscribble_client.o' libtool=no \
55 depfile='.deps/kscribble_client.Po' tmpdepfile='.deps/kscribble_client.TPo' \
56 depmode=gcc3 /bin/sh /home/caleb/kscribble/admin/depcomp \
57 g++ -DHAVE_CONFIG_H -I. -I/home/caleb/kscribble/src -I.. -I/usr/local/kde3/include
-I/usr/lib/qt/include -I/usr/X11R6/include -DQT_THREAD_SUPPORT -D_REENTRANT -Wnon-virtual-dtor
-Wno-long-long -Wundef -Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings
-ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -O2 -fno-exceptions -fno-check-new
-c -o kscribble_client.o `test -f 'kscribble_client.cpp' || echo
'/home/caleb/kscribble/src/'`kscribble_client.cpp
58 /bin/sh ../libtool --silent --mode=link --tag=CXX g++ -Wnon-virtual-dtor -Wno-long-long -Wundef
-Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -ansi -D_XOPEN_SOURCE=500
-D_BSD_SOURCE -Wcast-align -Wconversion -O2 -fno-exceptions -fno-check-new -o kscribble_client -R
/usr/local/kde3/lib -R /usr/lib/qt/lib -R /usr/X11R6/lib -L/usr/X11R6/lib -L/usr/lib/qt/lib
-L/usr/local/kde3/lib kscribble_client.o -lkdecore
59 gmake[2]: Leaving directory `/home/caleb/kscribble/src'
60 gmake[2]: Entering directory `/home/caleb/kscribble'
61 gmake[2]: Nothing to be done for `all-am'.
62 gmake[2]: Leaving directory `/home/caleb/kscribble'
63 gmake[1]: Leaving directory `/home/caleb/kscribble'
64 *** Success ***
</programlisting>
</para>
<para
>ΠΡ ΠΏΡΠΎΠ½ΡΠΌΠ΅ΡΠΎΠ²Π°Π»ΠΈ ΡΡΡΠΎΠΊΠΈ Π΄Π»Ρ ΠΏΡΠΎΡΡΠΎΡΡ ΠΈΡ
ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ. ΠΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ, <command
>gmake</command
> ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ΡΠ½Π°ΡΠ°Π»Π° ΠΎΠ½ Π½Π°Ρ
ΠΎΠ΄ΠΈΡ ΡΠ°ΠΌΡΠΉ Π³Π»ΡΠ±ΠΎΠΊΠΎΠ²Π»ΠΎΠΆΠ΅Π½Π½ΡΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³, ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ Π΅Π³ΠΎ, Π·Π°ΡΠ΅ΠΌ ΠΏΠΎΠ΄ΡΠΌΠ°Π΅ΡΡΡ Π½Π° ΡΡΠΎΠ²Π΅Π½Ρ Π²ΡΡΠ΅, ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΡΡΠΎΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅ Π΄ΠΎ ΡΠ°ΠΌΠΎΠ³ΠΎ Π²Π΅ΡΡ
Π½Π΅Π³ΠΎ. </para>
<para
>ΠΠ΅ΡΠ²Π°Ρ, ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΡΡΠ°Ρ Π½Π°Ρ ΡΡΡΠΎΠΊΠ° - 24. Π Π½Π΅ΠΉ <command
>make</command
> ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΊ GNU C++ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ <command
>g++</command
> Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΡΠ°ΠΉΠ»Π° main.cpp. ΠΡΠΈ ΡΡΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ
ΠΊΠ»ΡΡΠ΅ΠΉ, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ
ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΠ΅ΡΠ΅Π· &kdevelop;. </para>
<para
>ΠΠ΅ΡΠ΅Π΄ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΡΠ°ΠΉΠ»Π° (kscribble.cpp, ΡΡΡΠΎΠΊΠ° 29) Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° <command
>moc</command
> (meta object compiler, ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΌΠ΅ΡΠ°-ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²) Π΄Π»Ρ kscribble.h (ΡΡΡΠΎΠΊΠ° 25). ΠΡΠΎ ΠΈΠ·-Π·Π° ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΊΠ»Π°ΡΡΡ KScribble ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌ ΡΠΈΠ³Π½Π°Π»ΠΎΠ²/ΡΠ»ΠΎΡΠΎΠ². ΠΠ½Π° ΠΏΠΎΠ΄ΡΡΠ°Π²Π»ΡΠ΅Ρ Π²ΠΌΠ΅ΡΡΠΎ ΠΌΠ°ΠΊΡΠΎΡΠ° Q_OBJECT Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄. ΠΠΎΠ»ΡΡΠΈΠ²ΡΠΈΠΉΡΡ ΡΠ°ΠΉΠ», kscribble.moc, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ kscribble.cpp ΡΠ΅ΡΠ΅Π· #include. </para>
</sect1>
<sect1 id="c3s4">
<title
>ΠΠ°Π·ΠΎΠ²ΡΠΉ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄</title>
<para
>Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ ΠΏΡΠΈΠ½ΡΠΈΠΏ ΡΠ°Π±ΠΎΡΡ KDE-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ½Π°ΡΠ°Π»Π° ΠΏΠΎΠ±Π»ΠΈΠΆΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΠΉ ΠΠ°ΡΡΠ΅ΡΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π Π°Π·Π±Π΅ΡΡΠΌ ΠΊΠΎΠ΄ (ΠΏΠΎΡΡΠΈ) ΠΏΠΎΡΡΡΠΎΡΠ½ΠΎ, Π² ΡΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΎΠ½ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ, Π΄ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠ°, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π²ΠΎΠΉΠ΄ΡΡ Π² Π³Π»Π°Π²Π½ΡΠΉ ΡΠΈΠΊΠ» ΡΠΎΠ±ΡΡΠΈΠΉ ΠΈ Π±ΡΠ΄Π΅Ρ ΠΎΠΆΠΈΠ΄Π°ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. Π’.ΠΊ. Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ KDE ΠΈΠΌΠ΅ΡΡ ΠΏΠΎΡ
ΠΎΠΆΡΡ ΡΡΡΡΠΊΡΡΡΡ, ΡΡΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ Π»Π΅Π³ΡΠ΅ ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡΡΡ Π² ΠΊΠΎΠ΄Π΅ Π΄ΡΡΠ³ΠΈΡ
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ (Π±Π»Π°Π³ΠΎ, ΡΠ΅ ΠΎΠ½ΠΈ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡΡΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ). </para>
<sect2 id="c3s4s1">
<title
>Π€ΡΠ½ΠΊΡΠΈΡ main()</title>
<para
>ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ ΡΡΠ½ΠΊΡΠΈΠΈ <function
>main()</function
>. ΠΠ½Π° ΠΏΡΠΎΠΏΠΈΡΠ°Π½Π° Π² ΡΠ°ΠΉΠ»Π΅ main.cpp, Π΅Ρ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΠ΅ΡΠ΅Π· "ΠΠ±Π·ΠΎΡ ΠΊΠ»Π°ΡΡΠΎΠ²", Π² Π²Π΅ΡΠΊΠ΅ "ΠΠ»ΠΎΠ±Π°Π»ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ". <programlisting
>1 int main(int argc, char **argv)
2 {
3 KAboutData about("kscribble", I18N_NOOP("KScribble"), version, description,
4 KAboutData::License_GPL, "(C) 2002 Your Name", 0, 0, "you@you.com");
5 about.addAuthor( "Your Name", 0, "you@you.com" );
6 KCmdLineArgs::init(argc, argv, &about);
7 KCmdLineArgs::addCmdLineOptions(options);
8 KApplication app;
9
10 // register ourselves as a dcop client
11 app.dcopClient()->registerAs(app.name(), false);
12
13 // see if we are starting with session management
14 if (app.isRestored())
15 RESTORE(KScribble)
16 else
17 {
18 // no session.. just start up normally
19 KCmdLineArgs *args = KCmdLineArgs::parsedArgs();
20 if (args->count() == 0)
21 {
22 KScribble *widget = new KScribble;
23 widget->show();
24 }
25 else
26 {
27 int i = 0;
28 for (; i < args->count(); i++)
29 {
30 KScribble *widget = new KScribble;
31 widget->show();
32 widget->load(args->url(i));
33 }
34 }
35 args->clear();
36 }
37
38 return app.exec();
39 }
</programlisting>
</para
>
<para
>Π Π½Π΅ΠΉ ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ <classname
>KApplication</classname
>, Π½ΠΎ ΠΏΠ΅ΡΠ΅Π΄ ΡΡΠΈΠΌ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ KDE, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΠΈ Π°Π²ΡΠΎΡΠ΅. </para>
</sect2>
<sect2>
<title
>ΠΠ°ΠΏΡΡΠΊ ΠΏΠΎΠ»ΡΠ·Π²ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ</title>
<para
>... (Π·Π°Π±ΡΠ»ΠΈ Π½Π°ΠΏΠΈΡΠ°ΡΡ)</para>
</sect2>
<sect2>
<title
>ΠΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ</title>
<para
>ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ° <programlisting
>1 KScribble::KScribble()
2 : KMainWindow( 0, "KScribble" ),
3 m_view(new KScribbleView(this)),
4 m_printer(0)
5 {
6 // accept dnd
7 setAcceptDrops(true);
8
9 // tell the KMainWindow that this is indeed the main widget
10 setCentralWidget(m_view);
11
12 // then, setup our actions
13 setupActions();
14
15 // and a status bar
16 statusBar()->show();
17
18 // allow the view to change the statusbar and caption
19 connect(m_view, SIGNAL(signalChangeStatusbar(const QString&)),
20 this, SLOT(changeStatusbar(const QString&)));
21 connect(m_view, SIGNAL(signalChangeCaption(const QString&)),
22 this, SLOT(changeCaption(const QString&)));
23
24 }
</programlisting>
</para>
<para
><classname
>KScribble</classname
> Π½Π°ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΊΠ»Π°ΡΡ <classname
>KMainWindow</classname
> - Π±Π°Π·ΠΎΠ²ΡΠΉ ΠΊΠ»Π°ΡΡ KDE-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ. ΠΠ»Π°ΡΡ <classname
>KScribbleView</classname
> ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ, <classname
>KStatusBar</classname
> ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ <methodname
>statusBar()</methodname
> (ΡΡΡΠΎΠΊΠ° 16), Π·Π°ΡΠ΅ΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΈΠ³Π½Π°Π»Ρ ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡΡΡΡ ΡΠΎ ΡΠ»ΠΎΡΠ°ΠΌΠΈ. </para>
</sect2>
</sect1>
</chapter>
<chapter id="chapter4">
<title
>Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ</title>
<sect1 id="c4s1">
<title
>ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅</title>
<para
>ΠΡΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ (Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ), Π±ΠΎΠ»ΡΡΠ°Ρ ΡΠ°ΡΡΡ ΡΠ°Π±ΠΎΡΡ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Ρ.Π½. "ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ" ("view", Π΄ΠΈΠ·Π°ΠΉΠ½Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°) ΠΡΠΆΠ½ΠΎ ΡΠΌΠ΅ΡΡ ΡΡΠ³ΠΎΠ½ΠΎΠΌΠΈΡΠ½ΠΎ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π² ΠΎΠΊΠ½Π°Ρ
ΠΈ Π΄ΡΡΠ³ΠΈΡ
ΠΎΠ±ΡΠ΅ΠΊΡΠ°Ρ
, Π½Π΅ Π·Π»ΠΎΡΠΏΠΎΡΡΠ΅Π±Π»ΡΡΡ, Π½ΠΎ ΠΈ Π½Π΅ ΠΏΡΠ΅Π½Π΅Π±ΡΠ΅Π³Π°ΡΡ Π½ΠΈΠΌΠΈ. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΡΠ²ΠΎΡ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ΅ΡΠ΅Π· ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ, ΡΠΎΠ΅Π΄ΠΈΠ½ΡΠ½Π½ΡΠ΅ ΡΠΎ ΡΠ»ΠΎΡΠ°ΠΌΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ΅ΡΠ΅Π· ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ - ΡΠ΅Π°Π³ΠΈΡΡΡ Π½Π° Π½Π°ΠΆΠ°ΡΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ
(ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΉ) ΠΊΠ»Π°Π²ΠΈΡ. ΠΠ°Π½Π΅Π»Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ΅ΠΉ (Π½Π΅ΠΊΡΠΈΡΠΈΡΠ½ΠΎΠΉ) ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΈΠ»ΠΈ ΠΎ ΡΠ²ΠΎΠΉΡΡΠ²Π°Ρ
ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΊΠΎΠ½ΡΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ°. </para>
<para
>Π Π΅Π΄Π°ΠΊΡΠΎΡ - ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½Π°Ρ Π΄Π»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΠΈ/ΠΈΠ»ΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ². ΠΡΠ»ΠΈ Π²Ρ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ Kate, ΡΠΎ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°: <itemizedlist>
<listitem
><para
>ΠΠ΅Π½Ρ: ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΡΠ΅ (Π² Ρ.Ρ. Π½Π΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΠΌΡΠ΅) Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΠΎΡΠΊΡΡΡΠΈΠ΅, ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈ Π·Π°ΠΊΡΡΡΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ Ρ.Π΄. </para
></listitem>
<listitem
><para
>ΠΠ°Π½Π΅Π»Ρ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ²: Π½Π°Π±ΠΎΡ Π·Π½Π°ΡΠΊΠΎΠ², ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΡ
Π±ΡΡΡΡΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΌ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠΌ (ΡΠ°ΠΊΠΎΠ²ΡΠ΅, ΠΏΡΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ), </para
></listitem>
<listitem
><para
>ΠΠ°Π½Π΅Π»Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ: ΠΏΠΎΠ·ΠΈΡΠΈΡ ΠΊΡΡΡΠΎΡΠ°, Π²ΡΡΠ°Π²ΠΊΠ°/Π·Π°ΠΌΠ΅Π½Π°, </para
></listitem>
<listitem
><para
>ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΠ΅Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅Π΅ ΠΊΡΡΡΠΎΡ, ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΠΉ Ρ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ, Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ. </para
></listitem>
</itemizedlist>
</para>
<para
>ΠΠΎΡΠ»Π΅Π΄Π½ΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ°ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ΅ Π΅Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΏΡΠΎΡΡΠΎΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ("usability"). ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΡ
ΠΏΠ΅ΡΠ²ΡΡ
ΡΠ°Π³ΠΎΠ² ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈ ΠΊΠ°ΠΊΠΎΠΉ Π΄ΠΈΠ·Π°ΠΉΠ½ ΠΏΠΎΠ΄ΠΎΠΉΠ΄ΡΡ Π»ΡΡΡΠ΅, ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ Π½Π° ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ, ΡΠ°ΠΌΠΎΠ΅ Π³Π»Π°Π²Π½ΠΎΠ΅, Π½Π° ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ, ΡΡΠ΅Π±ΠΎΠ²Π°Π»ΠΎΡΡ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠ΅Π½ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. </para>
<para
>ΠΠ»Ρ ΡΠ°ΠΊΠΈΡ
Π·Π°Π΄Π°Ρ ΠΊΠ°ΠΊ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ° ΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ HTML, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Qt ΠΈ KDE ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΡΠΆΠ΅ Π³ΠΎΡΠΎΠ²ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ, "ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ", ΠΏΠΎ ΡΡΡΠΈ - Π²ΡΡΠΎΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ. ΠΠΎ Π΄Π»Ρ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π²ΡΡ ΠΆΠ΅ ΠΏΡΠΈΠ΄ΡΡΡΡ Π΄Π΅Π»Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ. ΠΠΎΡ ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΠΈΠ· ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ° Π΄ΠΈΠ·Π°ΠΉΠ½Π΅ΡΠ° ΠΈ Π³Π΄Π΅ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π²ΠΎΡΡΡΠ΅Π±ΠΎΠ²Π°Π½Π½ΠΎΠΉ Π²Π΅ΡΡ, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠ°Ρ ΠΌΠΎΠ΄Π½ΡΠΌ ΡΠ»ΠΎΠ²ΠΎΠΌ "ΠΊΡΠ΅Π°ΡΠΈΠ²", ΠΈΠ»ΠΈ ΠΏΠΎΠΏΡΠΎΡΡΡ ΡΠ²ΠΎΡΡΠ΅ΡΡΠ²ΠΎ. Π’ΡΡ, ΠΏΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ, Π³Π»Π°Π²Π½ΠΎΠ΅ ΠΈΠ½ΡΡΠΈΡΠΈΠ²Π½ΠΎΡΡΡ. ΠΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ Π»ΡΠ΄Π΅ΠΉ Π½Π΅ Π±ΡΠ΄ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π½Π΅: <itemizedlist>
<listitem
><para
>ΠΊΡΠ°ΡΠΈΠ²Π°Ρ </para
></listitem>
<listitem
><para
>ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ </para
></listitem>
<listitem
><para
>ΠΏΡΠΎΡΡΠ°Ρ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ </para
></listitem>
<listitem
><para
>Π±ΡΡΡΡΠ°Ρ Π² ΠΈΠ·ΡΡΠ΅Π½ΠΈΠΈ </para
></listitem>
</itemizedlist>
</para>
<para
>ΠΠ·Π»ΠΈΡΠ½ΠΈΠΌ Π±ΡΠ΄Π΅Ρ Π³ΠΎΠ²ΠΎΡΠΈΡΡ, ΡΡΠΎ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΡΡΡ - ΡΠ°ΠΌΠ°Ρ Π³Π»Π°Π²Π½Π°Ρ ΡΠ΅Π»Ρ. ΠΠΈΠΊΡΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ 100% ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΎΡΠΈΠ±ΠΎΠΊ ("bugs"), Π½ΠΎ ΡΠ°Π·ΡΠΌΠ½ΠΎΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ
Π½Π΅Π΄ΠΎΡΠ°Π±ΠΎΡΠΎΠΊ. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° C++, Π΅ΡΠ»ΠΈ Π²Ρ Π·Π½Π°Π΅ΡΠ΅ ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π»ΡΡΡΠΈΠ΅ ΡΡΠΎΡΠΎΠ½Ρ - Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΡΠΊΡΡΡΠΈΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ (ΠΌΠΎΠ΄ΡΠ»ΡΠ½ΠΎΡΡΡ) ΠΈ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, Π±Π΅Π·ΡΡΠ»ΠΎΠ²Π½ΠΎ ΠΏΡΠΈΠ½Π΅ΡΡΡ Π²Π°ΠΌ ΡΡΠΏΠ΅Ρ
. </para>
<para
>ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° KDE ΠΈΠ»ΠΈ Qt, Π΅Π³ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ (view) Π²ΡΠ΅Π³Π΄Π° Π½Π°ΡΠ»Π΅Π΄ΡΠ΅Ρ QWidget, Π»ΠΈΠ±ΠΎ Π½Π°ΠΏΡΡΠΌΡΡ, Π»ΠΈΠ±ΠΎ ΡΠ΅ΡΠ΅Π· Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ. ΠΠ°ΡΡΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠ·Π΄ΡΡ ΠΊΠΎΠ΄, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΠΊΠ»Π°ΡΡ yourappView, Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Ρ QWidget. </para>
<para
>Π ΡΡΠΎΠΉ Π³Π»Π°Π²Π΅ ΠΌΡ ΠΎΠΏΠΈΡΠ΅ΠΌ ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΡΡ
ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΉ, ΠΏΠΎΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΠΎΠ±Π·ΠΎΡ Π³ΠΎΡΠΎΠ²ΡΡ
ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ΠΈ ΡΠΆΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ. </para>
</sect1>
<sect1 id="c4s2">
<title
>ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΡΠ½ΡΡ
ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΉ</title>
<para
>ΠΠΎΡΠ»Π΅ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΏΡΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄. Π Ρ.Ρ. Π½Π°ΠΉΠ΄ΠΈΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅, ΠΈΠ»ΠΈ Ρ
ΠΎΡΡΠ±Ρ ΠΊΠ°ΠΊ Π΅Π³ΠΎ ΡΠ°ΡΡΡ, Π»ΠΈΠ±ΠΎ Π½Π°ΠΏΡΡΠΌΡΡ, Π»ΠΈΠ±ΠΎ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ. ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ KDE ΠΈ Qt ΡΠΆΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ Π½Π°Π±ΠΎΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ. ΠΡΡΡ Π΄Π²Π° ΡΠΏΠΎΡΠΎΠ±Π° ΡΡΠΎΠ³ΠΎ: <orderedlist>
<listitem
><para
>Π£Π΄Π°Π»ΠΈΡΡ ΠΊΠ»Π°ΡΡ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ, Π·Π°ΡΠ΅ΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΅Π³ΠΎ ΠΊΠ°ΠΊ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅, </para
></listitem>
<listitem
><para
>ΠΠ·ΠΌΠ΅Π½ΠΈΡΡ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΊΠ»Π°ΡΡΠ° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ. </para
></listitem>
</orderedlist>
</para>
<para
>Π Π»ΡΠ±ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π½Π΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ ΡΠ²ΡΠ·Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠΌ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ, ΠΈΠ½Π°ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΡΠΈΠΊ Π±ΡΠ΄Π΅Ρ Π²ΡΠ΄Π°Π²Π°ΡΡ ΠΎΡΠΈΠ±ΠΊΡ. ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² "ΠΡΠΎΠ΅ΠΊΡ"->"ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ", Π²ΠΊΠ»Π°Π΄ΠΊΠ° "ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΡΠΈΠΊΠ°" Π² &kdevelop;. ΠΡΠ»ΠΈ Π² ΡΠΏΠΈΡΠΊΠ΅ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΡΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, Π΄ΠΎΠΏΠΈΡΠΈΡΠ΅ Π΅Ρ ΡΡΠ΄Π°. Π§ΡΠΎΠ±Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠΏΠΈΡΠΎΠΊ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Π½Π°ΠΉΠ΄Π΅Π½Ρ ΡΡΠ΅Π½Π°ΡΠΈΠ΅ΠΌ <command
>configure</command
>, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΠΌΠ°ΠΊΡΠΎΡ Π² <filename
>configure.in</filename
> ΠΈΠ· ΠΊΠΎΡΠ½Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ, Π½Π΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ "Π‘Π±ΠΎΡΠΊΠ°"->"Autoconf ΠΈ automake" ΠΈ "Π‘Π±ΠΎΡΠΊΠ°"->"Configure". </para>
<para
>Π’Π°ΠΊΠΆΠ΅, Π΅ΡΠ»ΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π½Π°Ρ
ΠΎΠ΄ΡΡΡΡ Π½Π΅ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ (ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΏΠΎ ΠΊΠ»ΡΡΠ°ΠΌ -I ΠΎΠΊΠ½Π° Π²ΡΠ²ΠΎΠ΄Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ "Make"), Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ "ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ" Π½Π°ΡΡΡΠΎΠ΅ΠΊ ΠΏΡΠΎΠ΅ΠΊΡΠ°, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ Π½ΡΠΆΠ½ΡΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Ρ ΠΊΠ»ΡΡΡΠΌ -I ΠΈΠ»ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌ ΠΌΠ°ΠΊΡΠΎΡΠΎΠΌ automake Π² ΠΏΠΎΠ»Π΅ "ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ". </para>
<sect2 id="c4s3s1">
<title
>ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Qt</title>
<para
>ΠΠ° ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Qt Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ ΡΡΡΠ»ΠΊΡ Π½Π° "Widget Screenshots", ΡΡΠΎΠ±Ρ Π²ΡΠ±ΡΠ°ΡΡ Π½ΡΠΆΠ½ΡΠΉ. ΠΠ½ΠΈ ΡΠΆΠ΅ Π³ΠΎΡΠΎΠ²Ρ ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ, ΠΈ ΠΈΡ
ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ²ΠΌΠ΅ΡΠ°ΡΡ. ΠΠ°Π»Π΅Π΅, ΠΌΡ ΠΎΠ±ΡΡΠ΄ΠΈΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ
, Π½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ KDE ΠΌΠΎΠ³ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΠ²ΠΎΠΈ (Π΄ΠΎΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠ΅) ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠ΅ Π΄Π»Ρ ΡΠ΅Ρ
ΠΆΠ΅ Π·Π°Π΄Π°Ρ. </para>
<para
>ΠΠΎΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Qt ΠΈ ΠΈΡ
Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ: <orderedlist>
<listitem
><para
>ΠΡΠ»ΠΈ Π² ΠΎΠ±Π»Π°ΡΡΠΈ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π½Π΅ Ρ
Π²Π°ΡΠ°Π΅Ρ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ°, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡΡΡ ΠΏΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠΎΠ»ΠΎΡ ΠΏΡΠΎΠΊΡΡΡΠΊΠΈ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ, Π² Qt Π΅ΡΡΡ ΠΊΠ»Π°ΡΡ <classname
>QScrollView</classname
>. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ²ΠΎΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π½Π°ΡΠ»Π΅Π΄Π½ΠΈΠΊΠΎΠΌ <classname
>QScrollView</classname
> ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ. </para
></listitem
>
<listitem
><para
>ΠΠ»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ScrollView, ΡΠ½Π°ΡΠ»Π΅Π΄ΡΠΉΡΠ΅ Π²ΠΈΠ΄ΠΆΠ΅Ρ-ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΡ <classname
>QWidget</classname
> ΠΈ ΠΈ Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΈ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΠΎΠ»ΠΎΡΡ ΠΏΡΠΎΠΊΡΡΡΠΊΠΈ <classname
>QScrollBars </classname
> (ΡΠ°ΠΊ Π΄Π΅Π»Π°Π΅ΡΡΡ Π² KHTMLView). </para
></listitem
>
<listitem
><para
>ΠΠ»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ΅ΠΊΡΡΠ°, ΠΏΠ²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ <classname
>QTextEdit</classname
>. ΠΡΠΎΡ ΠΊΠ»Π°ΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π·Π°ΠΊΠΎΠ½ΡΠ΅Π½Π½ΡΠΉ Π²ΠΈΠ΄ΠΆΠ΅Ρ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ Π±ΡΡΠ΅ΡΠΎΠΌ ΠΎΠ±ΠΌΠ΅Π½Π°, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΠ»ΠΎΡΠ°ΠΌΠΈ ΠΏΡΠΎΠΊΡΡΡΠΊΠΈ scrollview. </para
></listitem
>
<listitem
><para
>ΠΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ <classname
>QTable</classname
> Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ
, ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ
Π² ΡΠ°Π±Π»ΠΈΡΡ. <classname
>QTable</classname
> ΡΠ°ΠΊΠΆΠ΅ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΠ»ΠΎΡΠ°ΠΌΠΈ ΠΏΡΠΎΠΊΡΡΡΠΊΠΈ. </para
></listitem
>
<listitem
><para
>ΠΠ»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π΄Π²ΡΡ
ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ
Π²ΠΈΠ΄ΠΆΠ΅ΡΠΎΠ² ΠΈΠ»ΠΈ Π΄Π²ΡΡ
ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠ² ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π²ΠΈΠ΄ΠΆΠ΅ΡΠ° ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ, Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ <classname
>QSplitter </classname
>. ΠΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΠΎ ΠΈΠ»ΠΈ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΠΎ. ΠΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ KMail ΠΈ KBabel. </para
></listitem
>
<listitem
><para
><classname
>QListView</classname
> ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅ Π² Π²ΠΈΠ΄Π΅ ΡΠΏΠΈΡΠΊΠ° ΠΈ Π΄Π΅ΡΠ΅Π²Π°. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π΅Π³ΠΎ Π΄Π»Ρ Π²ΡΠ²ΠΎΠ΄Π° ΠΈΠ΅ΡΠ°ΡΡ
ΠΈΡΠ΅ΡΠΊΠΈΡ
Π΄Π°Π½Π½ΡΡ
. </para
></listitem
>
</orderedlist>
</para>
<para
>ΠΡΡ, ΡΡΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ, ΡΠΆΠ΅ Π΅ΡΡΡ Π² Qt, Π²Π°ΠΌ ΠΎΡΡΠ°ΡΡΡΡ Π»ΠΈΡΡ ΡΠ·Π½Π°ΡΡ ΠΎ Π½ΡΠΆΠ½ΠΎΠΌ Π²Π°ΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ΅, Π½Π°ΡΡΠΈΡΡΡΡ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ, ΠΈ, Π΅ΡΠ»ΠΈ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ, Π΄ΠΎΠΏΠΎΠ»Π½ΡΡΡ. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ
ΡΠ΅ΡΠ΅Π½ΠΈΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ, ΠΏΡΠΈΠ²ΡΠΊΡΠΈΠΌ ΠΊ Π½ΠΈΠΌ, ΡΠΊΠΎΠ½ΡΠ΅Π½ΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΡ ΠΎΠ½ΠΈ Π½Π΅ΡΡΡ. </para>
</sect2>
<sect2 id="c4s3s2">
<title
>ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ KDE</title>
<para
>ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ KDE ΡΠΎΠ·Π΄Π°Π½Ρ ΡΡΠΎΠ±Ρ Π΅ΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠΏΡΠΎΡΡΠΈΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π΄Π»Ρ K Desktop Environment. ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° kdeui ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ: <orderedlist>
<listitem
><para
>KListView: Π±ΠΎΠ»Π΅Π΅ ΠΌΠΎΡΠ½Π°Ρ Π²Π΅ΡΡΠΈΡ <classname
>QListView</classname
> </para
></listitem>
<listitem
><para
>KIconView: Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΡΠΎΡΠΌΠΎΡΡ Π·Π½Π°ΡΠΊΠΎΠ² </para
></listitem>
</orderedlist>
</para>
<para
>ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° khtml ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΠΎΠ»Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ HTML. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π΄Π»Ρ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΡ Π²ΠΈΠ΄Π° Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠΎ Π΅Π³ΠΎ Π·Π°ΠΏΡΡΠΊΡ. </para>
</sect2>
</sect1>
<sect1 id="c4s4">
<title
>Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ
ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΉ</title>
<para
>ΠΠΠΠΠ‘ΠΠ’Π¬ </para>
</sect1>
</chapter>
<chapter id="chapter5">
<title
>ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΌΠ΅Π½Ρ ΠΈ ΠΏΠ°Π½Π΅Π»Π΅ΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ²</title>
<sect1 id="c5s1">
<title
>ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅</title>
<para
>ΠΠ΅Π½Ρ ΠΈ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² - ΠΎΠ΄Π½ΠΈ ΠΈΠ· ΡΠ°ΠΌΡΡ
Π³Π»Π°Π²Π½ΡΡ
ΡΠ°ΡΡΠ΅ΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ. Π‘Π»Π΅Π΄ΡΡ ΠΎΠ±ΡΠΈΠΌ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌ, Π²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Π΄ΠΎΡΡΡΠΏΠ½Ρ ΡΠ΅ΡΠ΅Π· ΠΌΠ΅Π½Ρ, ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ - Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ². </para>
<para
>Π ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠ°Π½Π΅Π»Π΅ΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ². ΠΠ½ΠΈ, ΠΊΡΠΎΠΌΠ΅ ΠΊΠ½ΠΎΠΏΠΎΠΊ, ΠΌΠΎΠ³ΡΡ ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π²ΡΠΏΠ°Π΄Π°ΡΡΠΈΠ΅ ΡΠΏΠΈΡΠΊΠΈ ΠΈ Ρ.Π΄. </para>
</sect1>
<sect1 id="c5s2">
<title
>ΠΠ°ΠΊ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ?</title>
<para
>ΠΡΠΈΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π°ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΊΠ»Π°ΡΡ <classname
>KMainWindow</classname
>, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°ΠΌ Π·Π°Π±ΠΎΡΠΈΡΡΡ ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΠΈ ΠΌΠ΅Π½Ρ. Π ΠΌΠ΅ΡΠΎΠ΄Π΅ <methodname
>KScribble::setupActions()</methodname
> Π΅ΡΡΡ Π²ΡΠ·ΠΎΠ² <methodname
>KMainWindow::createGUI()</methodname
>. ΠΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ Π·Π°Π³ΡΡΠΆΠ°Π΅Ρ ΡΠ°ΠΉΠ» ΡΠ΅ΡΡΡΡΠΎΠ², Π² Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΎ kscribbleui.rc, Π΄Π»Ρ ΠΈΠ½ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠ΅Π½Ρ. ΠΠΎΡ Π΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅: <programlisting
>1 <!DOCTYPE kpartgui SYSTEM "kpartgui.dtd">
2 <kpartgui name="kscribble" version="1">
3 <MenuBar>
4 <Menu name="custom"
><text
>C&ustom</text>
5 <Action name="custom_action" />
6 </Menu>
7 </MenuBar>
8 </kpartgui
>
</programlisting>
</para>
<para
>ΠΠ±ΡΡΡΠ½Π΅Π½ΠΈΠ΅... </para>
<para
>ΠΠΎΠΆΠΎ ΠΎΠ±ΠΎΠΉΡΠΈΡΡ ΠΈ Π±Π΅Π· ΡΠ°ΠΉΠ»Π° ΡΠ΅ΡΡΡΡΠΎΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠ΅ΡΠΎΠ΄ <methodname
>menuBar()</methodname
> Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ <classname
>KMenuBar</classname
>, ΡΠ²Π»ΡΡΡΠΈΠΉΡΡ ΠΌΠ΅Π½Ρ Π΄Π»Ρ Π½Π°ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΡ. <classname
>KMenuBar</classname
> ΠΈ Π΅Π³ΠΎ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΊΠ»Π°ΡΡ <classname
>QMenuBar</classname
> ΠΈΠΌΠ΅ΡΡ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² <methodname
>insertItem()</methodname
> Π΄Π»Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΠΏΡΠ½ΠΊΡΠΎΠ² ΠΌΠ΅Π½Ρ. </para>
<para
>ΠΠ΅ΡΠΎΠ΄Ρ <classname
>KMainWindow</classname
><methodname
>statusBar()</methodname
> ΠΈ <methodname
> toolBar()</methodname
> ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ. </para>
</sect1>
<sect1 id="c5s3">
<title
>ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΉ ΠΊΠ»Π°Π²ΠΈΡ.</title>
<para
>ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΡΠ΅Π³Π΄Π° Π·Π°Π±ΠΎΡΠΈΡΡΡΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ Π²ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π² Π²Π°ΡΠ΅ΠΉ ΠΏΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π»ΠΈΡΡ Ρ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ. Π’Π°ΠΊΠΎΠΉ ΠΌΠ΅ΡΠΎΠ΄ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΎΠΏΡΡΠ½ΡΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°Ρ
KDE Π΅ΡΡΡΠΊΠ»Π°ΡΡ <classname
> KAction</classname
>. </para>
<para
>ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ &kdevelop;, ΡΠΎΠ»ΡΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ ΠΊΠ»Π°Π²ΠΈΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ F1 ΠΈΠ»ΠΈ Ctrl+N. </para>
<para
>ΠΡΠ»ΠΈ Π² Π²Π°ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠ±ΠΈΠ½Π°ΡΠΈΠΉ ΠΊΠ»Π°Π²ΠΈΡ, Π»ΡΡΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΠΈΡ
Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΡΠΌΠΈ (ΡΠ΅ΡΠ΅Π· ΠΌΠ΅Π½Ρ ΠΠ°ΡΡΡΠΎΠΉΠΊΠ°->ΠΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ ΠΊΠ»Π°Π²ΠΈΡ). ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° KDE ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡ <classname
>KKeyChooser</classname
> Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π°Ρ
Ρ Π²ΠΊΠ»Π°Π΄ΠΊΠ°ΠΌΠΈ, ΡΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ <classname
>KKeyDialog</classname
> ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³. </para>
</sect1>
</chapter>
<!--
<chapter id="chapter6">
<title
>Other Features</title>
</chapter>
<chapter id="chapter7">
<title
>Printing Support</title>
</chapter>
-->
<chapter id="chapter8">
<title
>Π‘ΠΏΡΠ°Π²ΠΊΠ°</title>
<sect1 id="c8s1">
<title
>ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅</title>
<para
>ΠΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ Π½Π΅ Π²ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ - Linux-Π³ΡΡΡ ΠΈ Π΄Π»Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΠΈΠ· Π½ΠΈΡ
Π½ΡΠΆΠ½Π° ΡΠΏΡΠ°Π²ΠΊΠ° (ΠΊΠ°ΠΊ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½Π°Ρ, ΡΠ°ΠΊ ΠΈ ΠΏΡΠΎΡΡΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ):</para>
<itemizedlist>
<listitem
><para
>ΠΡΠΏΠ»ΡΠ²Π°ΡΡΠΈΠ΅ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠΈ</para
></listitem>
<listitem
><para
>Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² ΡΡΡΠΎΠΊΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ</para
></listitem>
<listitem
><para
>Π§ΡΠΎ ΡΡΠΎ?</para
></listitem>
</itemizedlist>
<para
>ΠΡ, ΠΈ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ ΠΆΠ΅, ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ, Π²ΡΠ·ΡΠ²Π°Π΅ΠΌΠΎΠ΅ ΡΠ΅ΡΠ΅Π· F1. ΠΡΡ ΡΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΠΊΠ»Π°ΡΡΠΎΠΌ <classname
>KMainWindow</classname
>, Π° Π²Π°ΠΌ Π»ΠΈΡΡ ΠΎΡΡΠ°ΡΡΡΡ Π½Π°ΠΏΠΎΠ»Π½ΠΈΡΡ Π΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ. </para>
<para
>&kdevelop; ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π° Π΄Π»Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π²ΡΠ΅Ρ
ΡΠΈΠΏΠΎΠ² ΡΠΏΡΠ°Π²ΠΊΠΈ Π² Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. </para>
<para
>Π ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΡΠΊΠΈ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΏΠΎΠΏΡΡΠ°ΠΉΡΠ΅ΡΡ Π±ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΌΠΈ Π²Π²Π΅Π·Π΄Π΅. ΠΠΈΡΠΈΡΠ΅ ΡΠΏΡΠ°Π²ΠΊΡ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠΎΠ΄Π°. ΠΠ½Π°ΡΠ΅ ΠΏΠΎΡΠΎΠΌ ΠΏΡΠΈΠ΄ΡΡΡΡ Π·Π°Π½ΠΎΠ²ΠΎ Π»Π΅Π·ΡΡ Π² ΠΊΠΎΠ΄ ΠΈ ΡΠ°Π·Π±ΠΈΡΠ°ΡΡΡΡ ΡΡΠΎ ΠΊ ΡΠ΅ΠΌΡ. </para>
</sect1>
<sect1 id="c8s2">
<title
>ΠΡΠΏΠ»ΡΠ²Π°ΡΡΠΈΠ΅ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠΈ</title>
<para
>Π‘Π°ΠΌΠ°Ρ ΠΏΡΠΎΡΡΠ°Ρ ΡΠΏΡΠ°Π²ΠΊΠ° - Π²ΡΠΏΠ»ΡΠ²Π°ΡΡΠΈΠ΅ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠΈ (ΠΏΠΎΡΠ²Π»ΡΡΡΠΈΠ΅ΡΡ ΠΏΠΎΡΠ»Π΅ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ ΠΊΡΡΡΠΎΡΠ° Π½Π°Π΄ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠΌ). ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π½Π° ΠΏΠ°Π½Π΅Π»ΡΡ
ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ². ΠΠ° ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΡΠΌΠΈ ΠΎΠ±ΡΠ°ΡΠ°ΠΉΡΠ΅ΡΡ ΠΊ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΊΠ»Π°ΡΡΠ° <classname
>KToolBar</classname
>, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠΊΠ΅ kdeui. </para>
<para
>ΠΠ°ΠΊ ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΊΠ½ΠΎΠΏΠΊΡ "New File": </para>
<para
>i18n("New File") Π½ΡΠΆΠ½Π° Π·Π°ΠΊΠ»ΡΡΠ°ΡΡ Π² ΠΌΠ°ΠΊΡΠΎΡ i18n(), ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π² kapp.h, Π΄Π»Ρ ΠΎΡΠΌΠ΅ΡΠΊΠΈ ΡΡΠΎΠΉ ΡΡΡΠΎΠΊΠΈ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π° Π½Π° Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ·ΡΠΊΠΈ. </para>
<para
>ΠΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠΈ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π² Π»ΡΠ±ΠΎΠΉ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅ΡΠ΅Π· <classname
>QToolTip</classname
>: </para>
</sect1>
<sect1 id="c8s3">
<title
>Π Π°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ΠΏΠ°Π½Π΅Π»ΠΈ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ</title>
<para
>Π’.ΠΊ. ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π½Π°ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠ»Π°ΡΡ <classname
>KMainWindow</classname
>, ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠ°Π½Π΅Π»Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ, Π΅Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π±ΠΎΠ»Π΅Π΅ Π΄Π»ΠΈΠ½Π½ΠΎΠ³ΠΎ ΡΠ΅Π΅ΠΊΡΡΠ°, ΡΠ΅ΠΌ Π² ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠ΅. </para>
</sect1>
<sect1 id="c8s4">
<title
>ΠΠ½ΠΎΠΏΠΊΠ° <guibutton
>Π§ΡΠΎ ΡΡΠΎ?</guibutton
></title>
<para
>ΠΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠ° <guibutton
>Π§ΡΠΎ ΡΡΠΎ?</guibutton
> Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΊΡΠ°ΡΠΊΡ ΡΠΏΡΠ°Π²ΠΊΡ (Π°Π±Π·Π°Ρ-Π΄Π²Π°) ΠΏΠΎ Π²ΡΠ±ΡΠ°Π½ΠΎΠΌΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ. Π‘Π°ΠΌΠ° ΠΊΠ½ΠΎΠΏΠΊΠ° <guibutton
>Π§ΡΠΎ ΡΡΠΎ?</guibutton
> ΠΎΠ±ΡΡΠ½ΠΎ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ Π»ΠΈΠ±ΠΎ Π² ΠΌΠ΅Π½Ρ, Π»ΠΈΠ±ΠΎ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², Π»ΠΈΠ±ΠΎ Π² Π·Π°Π³Π°Π»ΠΎΠ²ΠΊΠ΅ ΠΎΠΊΠ½Π°. ΠΠΎΡΠ»Π΅ Π½Π°ΠΆΠ°ΡΠΈΡ Π½Π° Π½Π΅ΠΉ, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°ΠΆΠ°ΡΡ Π½Π° Π½ΡΠΆΠ½ΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡΠ΅. </para>
<para
>ΠΠ»Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΡΠ°ΠΊΠΎΠΉ ΡΠΏΡΠ°Π²ΠΊΠΈ, Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ <methodname
>QWhatsThis::add(QWidget *widget, const QString &text)</methodname
> </para>
</sect1>
</chapter>
<chapter id="chapter9">
<title
>ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ</title>
<sect1 id="c9s1">
<title
>ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅</title>
<para
>ΠΡΠΎΠ³ΡΠ°ΠΌΡ, ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΡΠ΅ Π² &kdevelop; ΡΠΆΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΡΠ°Π±Π»ΠΎΠ½ Π΄Π»Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ. </para>
</sect1>
<sect1 id="c9s2">
<title
>ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠ°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ</title>
<para
>ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π΄Π»Ρ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ Π² ΠΏΡΡΡ-ΠΊ-ΠΏΡΠΎΠ΅ΠΊΡΡ/doc/en/index.docbook. Π‘ΠΏΡΠ°Π²ΠΊΠ° ΠΏΠΎ ΡΠ·ΡΠΊΡ ΡΠ°Π·ΠΌΠ΅ΡΠΊΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΌΡ Π΄Π»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ Π΄ΠΎΠΊΡΠΌΠ΅ΡΡΠ°ΡΠΈΠΈ, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π½Π° <ulink url="http://i18n.kde.org/doc/markup/"
>KDE's documentation website</ulink
>. ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΡΡΡΠ²Π°Π΅ΡΠ΅ ΡΡΡΠ΄Π½ΠΎΡΡΠΈ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° Π½Π° Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ, ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΠΊ KDE Editorial Team (ΡΠΌ. ΡΡΡΠ»ΠΊΡ Π²ΡΡΠ΅). </para>
</sect1>
<sect1 id="c9s3">
<title
>ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ²</title>
<para
>ΠΠ°Π½Π½Π°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΎΠ±ΡΡΠ½ΠΎ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΊ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ KDE. ΠΠ° ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΡΠΌΠΈ ΠΎΠ±ΡΠ°ΡΠ°ΠΉΡΠ΅ΡΡ <ulink url="http://developer.kde.org/"
>ΡΡΠ΄Π°</ulink
> </para>
</sect1>
</chapter>
<chapter id="chapter10">
<title
>ΠΠ½ΡΠ΅ΡΠ½Π°ΡΠΈΠΎΠ½Π°Π»ΠΈΠ·Π°ΡΠΈΡ</title>
<sect1 id="c10s1">
<title
>ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅</title>
<para
>i18n - ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΎΡ internationalization. ΠΠ½ΡΠ΅ΡΠ½Π°ΡΠΈΠΎΠ½Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π΅ Π²ΡΠ΅Ρ
ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ·ΡΠΊΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠ΅ΡΡΠΎΡΠΎΠ½Π½Π΅ΠΉ ΠΈΡ
ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ (ΠΊΠ°ΠΊ-ΡΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΡΠΎΡΠΌΡ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΎΠΊ ΠΈ Ρ.Π΄.). ΠΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΊ Π½Π΅ΠΉ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Π½Π° Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ, Ρ.ΠΊ. Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΡ
ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΡΠΈΠΊΠΎΠ² Π·Π½Π°Π΅Ρ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΡΠΎΡ ΡΠ·ΡΠΊ (Π΅ΡΠ»ΠΈ Π±Ρ KDE Π±ΡΠ» ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ Π½Π° Π½Π΅ΠΌΠ΅ΡΠΊΠΎΠΌ, Π²ΡΡΠ΄Π»ΠΈ ΠΌΡ Π±Ρ ΡΠ²ΠΈΠ΄Π΅Π»ΠΈ Π΅Π³ΠΎ ΡΡΡΡΠΊΠΈΠΉ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄). </para>
</sect1>
<!--
<sect1 id="c10s2">
<title
>How KDE support Internationalization</title>
</sect1
> -->
</chapter>
<!--
<chapter id="chapter11">
<title
>Finding Errors</title>
</chapter>
<chapter id="chapter12">
<title
>Licensing</title>
</chapter>
<chapter id="chapter13">
<title
>References</title>
</chapter>
-->
<chapter id="credits">
<title
>ΠΠ΅ΡΠ΅Π²ΠΎΠ΄</title>
<para
>ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈΠ» Π. Π¨Π°ΡΠΎΡΠΎΡΡΠΎΠ², <ulink url="http://program.net.ua/"
>http://program.net.ua</ulink
> </para>
<!--CREDITS_FOR_TRANSLATORS-->
</chapter
> <!-- credits -->
<appendix id="bibliography">
<title
>ΠΠΈΠ±Π»ΠΈΠΎΠ³ΡΠ°ΡΠΈΡ</title>
<bibliography>
<biblioentry>
<title
><ulink url="info://make/Top"
>GNU Make Manual</ulink
></title>
<authorgroup>
<author
><firstname
>Richard M.</firstname
><surname
>Stallman</surname
></author>
<author
><firstname
>Roland</firstname
><surname
>McGrath</surname
></author>
</authorgroup>
</biblioentry>
<biblioentry>
<title
><ulink url="info://automake/Top"
>GNU Automake</ulink
></title>
<authorgroup>
<author
><firstname
>David</firstname
><surname
>MacKenzie</surname
></author>
<author
><firstname
>Tom</firstname
><surname
>Tromey</surname
></author>
</authorgroup>
</biblioentry>
<biblioentry>
<title
><ulink url="info://autoconf/Top"
>GNU Autoconf</ulink
></title>
<authorgroup>
<author
><firstname
>David</firstname
><surname
>MacKenzie</surname
></author>
<author
><firstname
>Ben</firstname
><surname
>Elliston</surname
></author>
</authorgroup>
</biblioentry>
<biblioentry>
<title
><ulink url="info://gcc/Top"
>Using the GNU Compiler Collection</ulink
></title>
<author
><firstname
>Richard M.</firstname
><surname
>Stallman</surname
></author>
</biblioentry>
<biblioentry>
<title
><ulink url="info://libtool/Top"
>GNU Libtool</ulink
></title>
<authorgroup>
<author
><firstname
>Gordon</firstname
><surname
>Matzigkeit</surname
></author>
<author
><firstname
>Alexandre</firstname
><surname
>Oliva</surname
></author>
<author
><firstname
>Thomas</firstname
><surname
>Tanner</surname
></author>
<author
><firstname
>Gary V.</firstname
><surname
>Vaughan</surname
></author>
</authorgroup>
</biblioentry>
<biblioentry>
<title
>GNU Autoconf, Automake ΠΈ Libtool</title>
<edition
>1st edition</edition>
<pubdate
>October 2000</pubdate>
<authorgroup>
<author
><firstname
>Gary V.</firstname
><surname
>Vaughan</surname
></author>
<author
><firstname
>Ben</firstname
><surname
>Elliston</surname
></author>
<author
><firstname
>Tom</firstname
><surname
>Tromey</surname
></author>
<author
><firstname
>Ian Lance</firstname
><surname
>Taylor</surname
></author>
</authorgroup>
<publisher
><publishername
>New Riders Publishing</publishername
></publisher>
<isbn
>ISBN 1578701902</isbn>
</biblioentry>
<biblioentry>
<title
>Advanced Programming in the UNIX(R) Environment</title>
<edition
>1st edition</edition>
<pubdate
>June 1992</pubdate>
<author
><firstname
>W. Richard</firstname
><surname
>Stevens</surname
></author>
<publisher
><publishername
>Addison-Wesley Pub Co</publishername
></publisher>
<isbn
>ISBN 0201563177</isbn>
</biblioentry>
<biblioentry>
<title
>Thinking in C++, Volume 1: Introduction to Standard C++</title>
<edition
>2nd Edition</edition>
<pubdate
>April 15, 2000</pubdate>
<author
><firstname
>Bruce</firstname
><surname
>Eckel</surname
></author>
<publisher
><publishername
>Prentice Hall</publishername
></publisher>
<isbn
>ISBN 0139798099</isbn>
</biblioentry>
<biblioentry>
<title
>Open Source Development with CVS</title>
<edition
>2nd Edition</edition>
<pubdate
>October 12, 2001</pubdate>
<authorgroup>
<author
><firstname
>Karl</firstname
><surname
>Fogel</surname
></author>
<author
><firstname
>Moshe</firstname
><surname
>Bar</surname
></author>
</authorgroup>
<publisher
><publishername
>The Coriolis Group</publishername
></publisher>
<isbn
>ISBN 158880173X</isbn>
</biblioentry>
<biblioentry>
<title
>Programming PHP</title>
<edition
>1st edition</edition>
<pubdate
>March 2002</pubdate>
<authorgroup>
<author
><firstname
>Rasmus</firstname
><surname
>Lerdorf</surname
></author>
<author
><firstname
>Kevin</firstname
><surname
>Tatroe</surname
></author>
</authorgroup>
<publisher
><publishername
>O'Reilly & Associates</publishername
></publisher>
<isbn
>ISBN 1565926102</isbn>
</biblioentry>
<biblioentry>
<title
>Programming Python</title>
<edition
>2nd Edition</edition>
<pubdate
>March 2001</pubdate>
<author
><firstname
>Mark</firstname
><surname
>Lutz</surname
></author>
<publisher
><publishername
>O'Reilly & Associates</publishername
></publisher>
<isbn
>ISBN 0596000855</isbn>
</biblioentry>
<biblioentry>
<title
>Gui Programming With Python : Using the Qt Toolkit</title>
<edition
>Bk&Cd-r edition</edition>
<pubdate
>January 2002</pubdate>
<author
><firstname
>Boudewijn</firstname
><surname
>Rempt</surname
></author>
<publisher
><publishername
>Opendocs Llc</publishername
></publisher>
<isbn
>ISBN 0970033044</isbn>
</biblioentry>
<biblioentry>
<title
>Programming Perl</title>
<subtitle
>The Camel book</subtitle>
<edition
>3rd Edition</edition>
<pubdate
>July 2000</pubdate>
<authorgroup>
<author
><firstname
>Larry</firstname
><surname
>Wall</surname
></author>
<author
><firstname
>Tom</firstname
><surname
>Christiansen</surname
></author>
<author
><firstname
>Jon</firstname
><surname
>Orwant</surname
></author>
</authorgroup>
<publisher
><publishername
>O'Reilly & Associates</publishername
></publisher>
<isbn
>ISBN 0596000278</isbn>
</biblioentry>
<biblioentry>
<title
>Learning Perl</title>
<subtitle
>The Lama book</subtitle>
<edition
>3rd Edition</edition>
<pubdate
>July 15, 2001</pubdate>
<authorgroup>
<author
><firstname
>Randal L.</firstname
><surname
>Schwartz</surname
></author>
<author
><firstname
>Tom</firstname
><surname
>Phoenix</surname
></author>
</authorgroup>
<publisher
><publishername
>O'Reilly & Associates</publishername
></publisher>
<isbn
>ISBN 0596001320</isbn>
</biblioentry>
</bibliography>
&underFDL;
</appendix>
</book>
|