gtkmm on avoimeen lähdekoodiin perustuva, ilmainen, yksinkertainen ja kannettava komentorivin ohjelmisto, joka on toteutettu C ++ -ohjelmassa ja joka on suunniteltu offsetilta toimimaan käyttöliittymänä GTK + GUI toolkit -kirjastoon osana GNOME työpöytäympäristö.
Ominaisuudet yhdellä silmäyksellä
Gtmm: n kohokohdista voidaan mainita tyyppikelpoiset soittopyynnöt sekä monimutkaiset widgettiet, jotka voidaan laajentaa perintönä. Siinä on tyypiltään turvalliset signaalin käsittelijät, täysi kansainvälistyminen UTF8: lla, täydellinen C ++ -muistinhallinta (objektien koostumus ja dynaamisesti allokoidut widgetit), C ++ -nimisten tilojen täydellinen käyttö ja ei makroja.
Aloittaminen gtkmm: llä
Helpoin tapa asentaa gtkmm-projekti GNU / Linux-järjestelmään on jakeluasi oletuksena olevan paketinhallintaohjelmiston / ohjelmistovarastojen kautta. Jos paketti ei ole käytettävissä distro-ohjelmiston pääohjelmistosovelluksessa, voit ladata lähdekalenterin Softoware-ohjelmistosta.
Jos haluat asentaa gtkmm: n, tallenna tar-arkisto haluamallasi paikasta, purkaa sen sisältö, avata pääteemulaattori, siirry puretun arkistotiedoston sijaintiin käyttäen & lsquo; cd & rsquo; komento ja suorita & lsquo; ./ configure && make & rsquo; komento optimoi ja kääntää lähdekoodin.
Sitten sinun täytyy suorittaa & lsquo; tee asennus & rsquo; komennon pääkäyttäjänä tai sudoilla, jotta GTkmm-ohjelma laajennetaan, jolloin se on kaikkien käyttäjien käytettävissä. Erilaiset demot toimitetaan GTK-kehittäjille / demos-kansioon lähdekansion sisällä.
Tuetut käyttöjärjestelmät
gtkmm on foorumista riippumaton projekti, joka tukee GNU / Linuxia (kokoaa GCC: n kanssa), NetBSD (kootaan GCC: llä), FreeBSD (kootaan GCC: llä), Solaris (yhdistää GCC: n tai Forte: n kanssa), Microsoft Windows tai MSVC ++ .Net 2003/2005/2008) ja Mac OS X (kootaan GCC: n kanssa) käyttöjärjestelmät. Sekä 32-bittisiä että 64-bittisiä käskyjoukkoarkkitehtuureja tuetaan tällä hetkellä. Se on kirjoitettu kokonaan C ++ -ohjelmointikielellä.
Uutta strong> tässä julkaisussa:
- Gtk:
- Muokattava, RecentChooser, Scale: Korjaa muistivuotoja.
- PrintJob: Korjaa puhelu Glib :: throw_exception (): lle.
- Documentation:
- Gdk :: RGBA: Päivitä GTX + -päivitystiedostot ctor (ustring)
Uutta strong> versiona:
- GDK:
- Paranna Gdk :: Tapahtumaa luoden luokan hierarkian. (Mark Vender, Kjell Ahlstedt) Vihje # 135978
- Kohdistin: Vaihda kohdistimen tyyppi kohteeseen Cursor :: Type. (Murray Cumming)
- Laite: Muuta DeviceType Cursor :: Type. (Murray Cumming)
- Pixbuf: - Poista AlphaMode enum. - Vaihda PixbufRotation Pixbuf :: Rotation. (Murray Cumming)
- Seat: Vaihda SeatCapabilities Seat :: Capabilities. (Murray Cumming)
- Visual: Muuta VisualType Visual :: Type. (Murray Cumming)
- Ikkuna: - Vaihda ikkunaa Ohjeet ikkunaan :: Vihjeitä. - Vaihda WindowTypeHint to Window :: TypeHint. - Vaihda WindowType to Window :: Type. - Vaihda WindowState ikkunaan: State. (Murray Cumming)
- Gtk:
- Assistant: Vaihda AssistantPageType to Assistant :: PageType. (Murray Cumming)
- Laatikko: pack_start / pack_end (): Reimplement uudella GTK + API: lla. (GtkWidget halignand and hexpand properties) gtk_box_pack_start () ja gtk_box_pack_end () -toiminnoilla ei enää ole laajennus- ja täyttöargumentteja, mutta voimme myös poistaa nämä parametrit myöhemmin.Varmista, että pack_start / pack_end () oletuskäyttäytyminen on nyt muuttunut - Tee PackOptions enum-luokka tiukempaa tyyppitarkastusta varten. (Murray Cumming)
- Builder :: get_widget_derived (): Tee tämä staattinen. Jotta vältetään tarve luoda shared_ptr tähän. (Murray Cumming) Vihje # 755037
- ButtonBox: Poista näennäisesti-hyödytön BUTTONBOX_DEFAULT_SPACING. (Murray Cumming)
- Sovellus: Change ApplicationInhibitFlags Application :: InhibitFlags. (Murray Cumming)
- Kalenteri: Muuta kalenterinäytön asetuksia Kalenteriin :: Näytä :: Asetukset. (Murray Cumming)
- CellRendererAccel: Muuta CellRendererAccelMode CellRendererAccel :: Mode. (Murray Cumming)
- CssSection: Vaihda CssSectionType CssSection :: Typewq. (Murray Cumming)
- Kontti: - forall_vfunc (): Poista include_internals-parametri. - Poista set_focus_child (), get_focus_child () jne. (Murray Cumming)
- Entry: Muuta EntryIconPosition to Entry :: IconPosition. (Murray Cumming)
- FileFilter: Vaihda FileFilterFlags tiedostoon FileFilter :: Flags. (Murray Cumming)
- FileChooser: - Muuta FileChooserConfirmation to FileChooser :: Vahvistus. - Muuta FileChooserAction FileChooser :: Action. (Murray Cumming)
- IconView: Vaihda IconViewDropPosition IconView :: DropPosition. (Murray Cumming)
- Kuva: Muuta ImageType to Image :: Type. (Murray Cumming)
- Tarra: Poista get / set_angle () ja omaisuus. (Murray Cumming)
- LevelBar: Muuta tasoBarMode - tasolle :: Mode. (Murray Cumming)
- Notebook: Poista NotebookTab enum. (Murray Cumming)
- Popover: Vaihda PopoverConstraint Popover :: Rajoitus. (Murray Cumming)
- PrintOperation: - Muuta PrintOperationAction PrintOperation :: Action. - Muuta PrintOperationResult PrintOperation :: -tulokseen. (Murray Cumming)
- Alue: Suorita (ja toteuttaa) Suuntaava. (Muray Cumming) Vihje # 781655 (Daniel Boles)
- RecentFilter: ViimeisimpienFilterFlagsin muuttaminen RecentFilter :: Flags. (Murray Cumming)
- Vihje: Vaihda ScrollablePolicy - Scrollable :: Policy. (Murray Cumming)
- PikakuvakkeetShortcut: Suorita suoraan Widgetista. (Kjell Ahlstedt)
- KokoGroup: Nimeä SizeGroupMode enum SizeGroup :: Mode. (Murray Cumming)
- SpinButton: - Muuta SpinButtonUpdatePolicy SpinButton :: UpdatePolicy. - Siirrä INPUT_ERROR vakio luokkaan. (Murray Cumming)
- TextConstIter (TextModel :: const_iterator): Lisää oletusarvoinen konstruktori. (Murray Cumming)
- TextMark: Vältä luomaan RefPtr tähän. Lisäämällä yksityinen TextBuffer :: get_iter_at_mark () (Murray Cumming) Virhe # 755037 # c21
- TreeModel: Vaihda TreeModelFlags TreeModel :: Flags. (Murray Cumming)
- TreeView: - TreeViewGridLinesin muuttaminen GridLineiksi. - Muuta TreeViewDropPosition TreeView :: DropPosition. (Murray Cumming)
- TreeViewColumn: Muuta TreeViewColumnSizing TreeViewColumn :: Mitoitus. (Murray Cumming)
- Widget: - Poista get_preferred_width () jne. (Kjell Ahlstedt) - Poista get / set_center_widget (). (Murray Cumming)
- Ikkuna: - Poista get / set_hide_titlebar_when_maximized (). - Poista is_toplevel_focus () ja omaisuus. (Murray Cumming)
- Documentation:
- Gtk :: CellLayout: Paranna get_first_cell () funks -dokumentteja. (Daniel Boles)
- Gtk :: TreeModel: Parantaa foreach * () -funktioiden dokumentteja. (Daniel Boles)
- Gdk, Gtk: Laadukas enumien päivittäminen. (Kjell Ahlstedt)
- Demos: - Korjaa tarkistukset Glib :: SignalProxy :: connect () (Kjell Ahlstedt) muutosten jälkeen Bug 126213 - Sovita muutettuun Box :: pack_start / pack_end () toimintaan. Esimerkki: Määritä EXPAND_WIDGET, jossa aiemmin käytimme oletusarvoa. (Murray Cumming)
- Builder-demo: Poista & amp; laajenna & quot; aviotiedosto, koska se on poistettu GtkBoxista. Laajenna ScrolledWindow. (Kjell Ahlstedt)
- Rakenne:
- Sovita cairomm ja glibmm enum muutoksiin. (Murray Cumming)
- Muokkaa dynaamisia valokuvia RefPtr-tiedostoksi std :: shared_ptr. (Murray Cumming)
- Visual Studio rakentaa: Päivitä glibmm ABI -versio. (Chun-wei-tuuletin)
Uutta strong> versiossa 3.89.5.1:
Uutta strong> versiossa 3.89.3:
- Gtk:
- Grid: attach (): Lisää oletusarvot. (Kjell Ahlstedt)
- TextIter:
- TextIter: Tee todellinen const_iterator (Kjell Ahlstedt) Bug # 142126
- eteenpäin / taaksepäin_find_char (): Ota sigc :: aikaväli funktion osoittimen sijaan. (Kjell Ahlstedt)
- Documentation:
- Demos: Poista vanhentunut teksti TextView-demosta (Kjell Ahlstedt)
Uutta strong> versiossa 3.89.1:
- Tämä on gtkmm-4.0 API / ABI: n ensimmäinen julkaisu, joka käärii GTK + -4.0. Se asennetaan rinnakkain gktmm-3.0 API / ABI: n kanssa, jonka uusin versio on gtkmm 3.22.0.
- Build / Yleistä:
- Käytä GTK + -4.0 GTK + -3.0: n sijasta. (Kjell Ahlstedt)
- Käytä C ++ 14: ta. (Murray Cumming)
- Käytä glibmm-2.52: n sijasta glibmm-2.4, pangomm-2.42 sijaan pangomm-1.4 eikä atkmm-2.26 sijaan atkmm-1.6. Huomaa, että via glibmm käytämme nyt libsigc ++ - 3.0 libsigc ++ - 2.0: n sijasta. (Murray Cumming)
- Poista vanhentunut sovellusliittymä. (Kjell Ahlstedt)
- Lisää oletussignaalin käsittelijät (_ * ()), josta emme voineet tehdä ennen kuin ABI rikkoisi. (Kjell Ahlstedt)
- Gtk:
- Kontti: Lisää () ei-virtuaalinen. (Kjell Ahlstedt)
- FontButton: Poistetaan ja toteutetaan FontChooser-käyttöliittymä. (Kjell Ahlstedt)
- Tarra (): älä käytä harhaanjohtavia kohdistusnimiä. (djb) Bug # 774652
- Object: Poista gobject_disposed_. (Kjell Ahlstedt)
- ToolButton: Tuo Actionable-käyttöliittymän ja toteuttaa sen. (Kjell Ahlstedt)
- Widget: Lisää measure () ja measure_vfunc (), joka korvaa get_preferred _ * _ vfunc (). (Kjell Ahlstedt)
- Ikkuna: Nosta () ei-virtuaalista. (Kjell Ahlstedt)
- Documentation:
- Kehys: Aseta set_label_align () (Kjell Ahlstedt) dokumentaatio Bug # 774249
Uutta strong> versiossa 3.22.0:
- Gtk:
- ApplicationWindow: Lisää oikea kääri () -menetelmä, hylkäämällä väärä. (Kjell Ahlstedt) Vihje # 767951
- FlowBox, ListBox: Lisää bind_model () ja bind_list_store (). (Kjell Ahlstedt, Murray Cumming) # 755149
- UIManager, ActionGroup, RadioAction, RecentAction, ToggleAction: Epäonnistuneet, kuten C GTK + API: ssa. (Kjell Ahlstedt) Vihje # 768573.
- Rakenne:
- Korjaa hiljaiset rakenteet (Kjell Ahlstedt) Bug # 768797
Uutta strong> versiossa 3.21.4:
- Gtk:
- ApplicationWindow: Lisää oikea kääri () -menetelmä, hylkäämällä väärä. (Kjell Ahlstedt) Vihje # 767951
- FlowBox, ListBox: Lisää bind_model () ja bind_list_store (). (Kjell Ahlstedt, Murray Cumming) # 755149
- UIManager, ActionGroup, RadioAction, RecentAction, ToggleAction: Epäonnistuneet, kuten C GTK + API: ssa. (Kjell Ahlstedt) Vihje # 768573.
- Rakenne:
- Korjaa hiljaiset rakenteet (Kjell Ahlstedt) Bug # 768797
Uutta strong> versiossa 3.19.6:
- Gtk:
- TextIter: Lisää start_tag (), hylkää start_tag (). (Kjell Ahlstedt)
- TreeView: Korjaa kaatumisen get_tooltip_context_path () (Kjell Ahlstedt) -virheessä # 760030.
- GDK:
- Lisää Gdk :: Seat (Kjell Ahlstedt) Bug # 759806.
- Laite:
- Lisää get_seat ().
- Hylkää napata () ja ungrab ().
- DeviceManager, Display: Lisää ja oikaise (Kjell Ahlstedt) -virhe 759806.
- DeviceManager: Palauta list_devices () ja get_client_pointer (). (Kjell Ahlstedt) Bug # 759806.
- Näyttö:
- Huolehdi get_device_manager ().
- Lisää list_seats (), get_default_seat (), signal_seat_added () ja signal_seat_removed (). (Kjell Ahlstedt) Bug # 759806.
- Rakenne:
- C ++ 11: Käytä ohitusnäppäintä avainsanan sijaan virtuaalisesti, sopivien haittapuolten kohdalla. (Murray Cumming)
- Gdk :: suorakulmio: Lisää operaattori == (()
- C ++ 11: ohituksen avainsanan käyttö
).
Uutta strong> versiossa 3.17.4:
- Assistant: Lisää get / set_page_has_padding (). (Murray Cumming)
- FontChooser: Lisää get / set_font_map (). (Murray Cumming)
- IconInfo: Epäilen get_builtin_pixbuf (). (Kjell Ahlstedt)
- IconTheme: lookup_icon (), choose_icon (): Lisää oletusarvo 0 lippuja varten. (Murray Cumming)
- Widget: Purkaa drag_begin () ilman koordinaatteja. (Kjell Ahlstedt)
- GDK:
- Ikkuna: Lisää get / set_passthrough (). (Murray Cumming)
- Esittely: IconTheme: Älä käytä vanhentuneita sisäänrakennettuja kuvakkeita. (Murray Cumming)
- Rakenne:
- Älä poista vähemmän tarpeettomia varoituksia (Kjell Ahlstedt) Bug # 750379.
- Gtk:
- Builder: Älä saa gtkmm-johdettuja GTypes jäsentämällä TreeModel (Kjell Ahlstedt) -virhe # 742637.
Uutta strong>
Uutta strong> versiossa 3.15.4:
- Gtk:
- Rakentaja :: get_type_from_name_vfunc (): Soita perusluokan toiminto. Sen sijaan, että jusgin kutsuu g_type_from_name (), siinä tapauksessa, että perusluokan toiminto tekee enemmän. (Kjell Ahlstedt) Bug # 742637.
- TextBuffer:
- Lisää insert_martkup ().
- Lisää copy_target_list ja paste_target_list ominaisuudet. (Kjell Ahlstedt)
- Documentation:
- Pixbuf: Vaihda maininta Glib :: ResourceError Gio :: ResourceError. (Kjell Ahlstedt)
Uutta strong> versiossa 3.15.3:
- Gtk:
- CssProvider: Lisää CssProviderError ja signal_parsing_error () (Kjell Ahlstedt)
- Lisää CssSection. (Kjell Ahlstedt)
- Dialogi: Korjaa konstruktorit DialogFlagsilla. (Kjell Ahlstedt) Vihje # 738513 (Simonas Kazlauskas)
- ScaleButton: - Korjaa konstruktori. - Lisää konstruktori ilman kuvakkeita. (Murray Cumming)
- ScrolledWindow: Lisää get / set_overlay_scrolling () ja omaisuus. (Juan R. GarcAa Blanco)
- Stack: Lisää homogeenisia ja vhomogeenisiä ominaisuuksia. (Juan R. GarcAa Blanco)
- TextTag: Lisää varattu, varattu-setti, kirjain-välimatka ja kirjain-välimatka-asetukset. (Juan R. GarcAa Blanco)
- TextView: lisää monospace-ominaisuutta. (Juan R. GarcAa Blanco)
- Widget: Lisätty get_action_group () ja list_action_prefixes (). (Murray Cumming)
- Documentation:
- Lisää tyhjä rivi sen jälkeen kun @newin puuttuu. (Kjell Ahlstedt)
- Korjaa Doxygen-varoitukset. (Kjell Ahlstedt)
- ScaleButton: Kirjoittakaa rakentajat. (Murray Cumming)
Uutta strong> versiossa 3.15.2:
- Gtk:
- Dialogit: Lisää konstruktorit DialogFlagsilla, esimerkiksi luomalla dialogi otsikkorivillä. (Kjell Ahlstedt) Bug # 738513.
- Ruutu: Lisää attach_next_to () ilman "sibling" -parametria. (Kjell Ahlstedt) Vihje # 739340.
- Peittokuva: Korjaa & quot; since & quot; asiakirjat.
- SearchEntry: Lisää hakuvaihtoehto (Kjell Ahlstedt)
- Lisätty StyleProperty (Mark Vender) -virhe # 673317.
- GDK
- Curor: Palauta konstruktori, joka ei ota näyttöparametria. (Murray Cumming)
- Pixbuf: Deprecate create_from_inline (). (Kjell Ahlstedt)
- Dokumentaatio:
- Headerbar demo: Päivitetä uudelleen nimetyt nuolikuvakkeet. (Kjell Ahlstedt)
- Rakenne:
- Päivitä ja korjaa Visual Studio 2008 ja 2010 -projektit. (Chun-wei-tuuletin)
- Korjaa demot Windowsissa. (Chun-wei-tuuletin)
Uutta strong>
Uutta strong> versiossa 3.11.4:
- Gtk:
- Toiminto, jota voidaan käyttää: menetelmiä, jotka eivät käytä StockID-tunnusta. Emme halunneet jättää niitä vanhentuneiksi. (Kjell Ahlstedt)
- CellArea: Lisää signal_apply_attributes (). (Kjell Ahlstedt)
- SelectionData: Lisää get_data (int & pituus). (Kjell Ahlstedt)
- ToggleAction: Epäilen luomasi (vanhentunut) StockID (Kjell Ahlstedt) luo (),
- ToolItem: Lisää unset_proxy_menu_item (). (Kjell Ahlstedt)
- UIManager: Hylkää add-tearoffs-ominaisuuden. (Kjell Ahlstedt)
- GDK:
- Pixbuf: Lisää create_from_resource () -menetelmiä.
- RGBA, väri: Fix set_hsl (), parantaa dokumentaatiota. (Kjell Ahlstedt) Vihje # 720258
- Rakenne:
- CellArea: Fixed documented typedef SlotForeachAlloc Extra '& gt;' dokksissa loukussa Doxygen 1.8.4: ssä ääretönpiiriin. (Kjell Ahlstedt)
- Korjaa rakentaminen --disable-deprecated-api (Kjell Ahlstedt)
- Documentation:
- Lisää puuttuvat widget-kuvat. (Kjell Ahlstedt)
- AppChooser *: Paranna dokumentaatiota. (Kjell Ahlstedt) Vihje # 650012
- ColorChooser :: get_rgba (): Lisää dokumentaatio (Kjell Ahlstedt)
- SelectionData: Lisää menetelmiä docs. (Kjell Ahlstedt)
- ToolItem: Lisää luokkakirjoja. (Kjell Ahlstedt)
Uutta strong> versiossa 3.10.1:
- Gtk:
- Vältä myös vanhentuneen stockid.h. Tämä mahdollistaa sovellusten luomisen, kun vanhentunut sovellusliittymä on poistettu käytöstä.
- RadioAction, RecentAction: Epäilen rakentajia ja menetelmiä, jotka ottavat StockID: n. StockID oli jo vanhentunut, joten tämä ei saisi vaikuttaa sovellusten rakentamiseen.
Uutta strong> versiossa 3.10.0:
- Gtk:
- Uepimättömät UIManager-, Action-, ActionGroup-, ToggleAction-, RadioAction- ja RecentAction-toiminnot, vaikka ne ovat edelleen vanhentuneet C API: ssä. Katso https://mail.gnome.org/archives/gtkmm-list/2013-October/msg00003.html (Murray Cumming)
- RadioAction: Palauta rakentaja, joka käyttää StockID-tunnusta. (Murray Cumming)
- ToggleAction: Palauta rakentaja, joka käyttää StockID-tunnusta (Murray Cumming)
- Sovellus: - add / remove_accelerator (): Lisää ylikuormituksia ilman versioparametria. (Murray Cumming) - Lisää puuttuva gtk_init () -puhelu johonkin rakentajista. (Murray Cumming)
- Painike: Poista tarpeettomia BuiltinStockID-ilmoitus. (Murray Cumming)
- HeaderBar: Tee get_show_close_button () const. (Juan Rafael GarcAa Blanco)
- IconView: set_cursor (): Lisää versio ilman soluparametria (Murray Cumming)
- PlacesSidebar: Korjaa kaatuminen drag_signalsin kanssa, korjaa joitain OWNERSHIP_ * s, siirtää vektoreita viittaamalla signaaleihin (Murray Cumming) Bug # 705642
- Asetukset: Lisää create_action ().
- SearchBar: handle_event (): Ota GdkEventKey GdkEventin sijaan. (Murray Cumming)
- Ikkuna: get_frame_extents (): Lisää const-versio. (Murray Cumming)
- GDK:
- Epäasianmukainen väri. (Murray Cumming)
- Rakenne:
- Päivitä gtk-demo MSVC-projekteja (Chun-wei-tuuletin)
- Gtk:
- Lisää SearchBar. (Juan Rafael Garcia Blanco)
- Painike: Korvaa kuvakkeen nimi ctor set_image_from_icon_name (). (Kjell Ahlstedt) Vihje # 707791
- Scale: Constructor: Poista oletusparametriarvo epäselvyyden välttämiseksi. (Murray Cumming) Vihje # 707810 (cheshirekow)
- GDK:
- Ikkuna: Lisää set_opaque_region (). (Murray Cumming)
- Työkalut:
- gtk_generate_extra_defs.sh: Lisää --make-patch -vaihtoehto. (Kjell Ahlstedt)
- Rakenne:
- Päivitä Visual Studio Projects (Chun-wei-tuuletin)
Uutta strong>
Uutta strong> versiossa 3.9.12:
- Gtk:
- Painike: Lisää konstruktori, joka ottaa kuvakkeen ja koon. (Murray Cumming)
- Entry: Lisää get / set_tabs () ja omaisuus. (Murray Cumming)
- Tarra: Lisää get / set_lines () ja omaisuus. (Murray Cumming)
- Lisää Revealer. (Juan R. GarcAa Blanco) Vihje # 705460
- Widget:
- lisää get_scale_factor (). (Murray Cumming)
- Widget: Lisää drag_begin (), joka vie x- ja y-koordinaatit. (Murray Cumming)
- GDK:
- Kohdistin: Kierrä joitain uusia toimintoja. (Murray Cumming)
Kommentteja ei löytynyt