Programming with gtkmm 4
-
1. Úvod
- 1.1. O této knize
- 1.2. gtkmm
-
2. Instalace
- 2.1. Závislosti
- 2.2. Unix a Linux
- 2.3. Microsoft Windows
-
3. Základy
- 3.1. Jednoduchý příklad
- 3.2. Hlavičkové soubory a linkování
- 3.3. Widgety
- 3.4. Signály
- 3.5. Glib::ustring
- 3.6. Míchání API z C a C++
- 3.7. „Ahoj Světe“ v gtkmm
-
4. Změny v gtkmm 3
-
5. Changes in gtkmm-4.0 and glibmm-2.68
- 6. Tlačítka
-
7. Widgety odvozené z Range
- 7.1. Posuvníkové widgety
- 7.2. Stupnicové widgety
- 7.3. Příklad
-
8. Různé widgety
- 8.1. Popisek (Label)
- 8.2. Vstupní pole (Entry)
- 8.3. Číselník (SpinButton)
- 8.4. Ukazatel průběhu (PrograssBar)
- 8.5. Informační lišta (InfoBar)
- 8.6. Vysvětlivky
- 9. Kontejnerové widgety
-
10. Widget TreeView
- 10.1. Model
- 10.2. Zobrazení (View)
- 10.3. Iterace přes řádky modelu
- 10.4. Výběr
- 10.5. Řazení
- 10.6. Táhni a upusť
- 10.7. Vyskakovací kontextová nabídka
- 10.8. Příklady
-
11. Rozbalovací seznamy (ComboBox)
- 11.1. Model
- 11.2. Vybraná položka
- 11.3. Reagování na změny
- 11.4. Úplný příklad
- 11.5. Jednoduchý textový příklad
- 11.6. ComboBox se vstupním polem
-
12. Zobrazení textu (TextView)
- 12.1. Vyrovnávací paměť
- 12.2. Widgety a kotvy potomků (ChildAnchors)
- 12.3. Příklady
-
13. Nabídky a nástrojové lišty
- 13.1. Akce
- 13.2. Menubar and Toolbar
- 13.3. Vyskakovací nabídky
- 13.4. Gio::Resource and glib-compile-resources
- 13.5. Příklady
- 14. Přizpůsobení (Adjustment)
- 15. Dialogová okna
-
16. The DrawingArea Widget
- 16.1. Kreslicí model Cairo
- 16.2. Kreslení rovných čar
- 16.3. Kreslení křivek
- 16.4. Kreslení oblouků a kružnic
- 16.5. Kreslení textu
- 16.6. Kreslení obrázků
- 16.7. Ukázková aplikace: Kreslení hodin pomocí knihovny Cairo
-
17. Táhni a upusť
- 17.1. Zdroje a cíle
- 17.2. Metody
- 17.3. Signály
- 17.4. Příklad
-
18. Schránka
- 18.1. Formats
- 18.2. Kopírování
- 18.3. Vložení
- 18.4. Příklady
-
19. Tisk
- 19.1. Tisková operace (PrintOperation)
- 19.2. Nastavení stránky
- 19.3. Vykreslování textu
- 19.4. Asynchronní operace
- 19.5. Export do PDF
- 19.6. Rozšířené dialogové okno tisku
- 19.7. Náhled
- 19.8. Příklad
- 20. Nedávno použité dokumenty
-
21. Události klávesnice
- 21.1. Přehled
- 21.2. Propagace události
-
22. Časové limity, V/V a funkce při nečinnosti
- 22.1. Časové limity
- 22.2. Sledování V/V
- 22.3. Funkce při nečinnosti
-
23. Správa paměti
- 23.1. Widgety
- 23.2. Sdílené prostředky
-
24. Glade a Gtk::Builder
- 24.1. Načtení souboru .glade
- 24.2. Přístup k widgetům
- 24.3. Používání odvozených widgetů
-
25. Internacionalizace a lokalizace
- 25.1. Příprava vašeho projektu
- 25.2. Označení řetězců k překladu
- 25.3. Očekává se UTF-8
- 25.4. Úskalí
- 25.5. Získání pomoci s překladem
-
26. Vlastní widgety
- 26.1. Vlastní kontejnery
- 26.2. Vlastní widgety
-
27. Vícevláknové programy
- 27.1. Omezení
- 27.2. Používání Glib::Dispatcher
- 27.3. Příklad
-
28. Doporučené techniky
- 28.1. Životnost aplikace
- 28.2. Používání widgetů gtkmm
-
29. Building applications
- 29.1. A trivial application
- 29.2. Populating the window
- 29.3. Opening files
- 29.4. A menu
- 29.5. A preference dialog
- 29.6. Adding a search bar
- 29.7. Adding a side bar
- 29.8. Properties
- 29.9. Header bar
-
30. Přispívání
-
A. Chytrý ukazatel RefPtr
- A.1. Kopírování
- A.2. Snižování referencí
- A.3. Přetypování
- A.4. Checking for nullptr
- A.5. Bezkonstantnost
- B. Signály
-
C. Vytváření vlastních signálů
- C.1. Příklad
-
D. Srovnání s jinými signalizačními systémy
-
E. gtkmm a Win32
- F. Práce se zdrojovým kódem gtkmm
-
G. Obalení knihoven C pomocí gmmproc
- G.1. Struktura sestavení
- G.2. Generování souborů .defs
- G.3. Soubory .hg a .ccg
- G.4. Ručně psané soubory se zdrojovými kódy
- G.5. Inicializace
- G.6. Problémy v API v C
- G.7. Dokumentace