www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - GtkD 3.0-beta

reply Mike Wey <mike-wey example.com> writes:
I'm glad to announce the first GtkD release that makes use of the new 
gir based generator.
The generator was rebuild from the ground up since the old one was no 
longer usable with the new GTK+ documentation.

For a list of changes see the changelog: http://gtkd.org/changelog.html
There is also an list of the breaking changes on the wiki: 
https://github.com/gtkd-developers/GtkD/wiki/GtkD-2-vs-GtkD-3

Download: http://gtkd.org/Downloads/sources/GtkD-3.0.0-beta.zip

-- 
Mike Wey
Mar 07 2015
next sibling parent "stewarth" <growlercab gmail.com> writes:
On Saturday, 7 March 2015 at 21:14:36 UTC, Mike Wey wrote:
 I'm glad to announce the first GtkD release that makes use of 
 the new gir based generator.
 The generator was rebuild from the ground up since the old one 
 was no longer usable with the new GTK+ documentation.

 For a list of changes see the changelog: 
 http://gtkd.org/changelog.html
 There is also an list of the breaking changes on the wiki: 
 https://github.com/gtkd-developers/GtkD/wiki/GtkD-2-vs-GtkD-3

 Download: http://gtkd.org/Downloads/sources/GtkD-3.0.0-beta.zip
I use GtkD so thank you very much for maintaining this project. Cheers, Stew
Mar 07 2015
prev sibling next sibling parent reply =?UTF-8?B?IlRow6lv?= Bueno" <munrek gmx.com> writes:
On Saturday, 7 March 2015 at 21:14:36 UTC, Mike Wey wrote:
 I'm glad to announce the first GtkD release that makes use of 
 the new gir based generator.
Yeah, thank you for maintaining Gtkd. It is by far the best GUI library we have currently for D. With the release of GTK+ 3.16 by the end of the month, can we expect another update ? I'm quite excited by the new GtkGLArea[1] widget. Regards, Théo. [1] https://www.bassi.io/articles/2014/10/13/quiet-strain/
Mar 08 2015
parent Mike Wey <mike-wey example.com> writes:
On 03/08/2015 09:08 PM, "=?UTF-8?B?IlRow6lv?= Bueno\" 
<munrek gmx.com>\"" wrote:
 On Saturday, 7 March 2015 at 21:14:36 UTC, Mike Wey wrote:
 I'm glad to announce the first GtkD release that makes use of the new
 gir based generator.
Yeah, thank you for maintaining Gtkd. It is by far the best GUI library we have currently for D. With the release of GTK+ 3.16 by the end of the month, can we expect another update ? I'm quite excited by the new GtkGLArea[1] widget. Regards, Théo. [1] https://www.bassi.io/articles/2014/10/13/quiet-strain/
The GtkGLArea looks promising, and yes you can expect a new GtkD release once 3.16 is out. -- Mike Wey
Mar 08 2015
prev sibling next sibling parent reply captaindet <2krnk gmx.net> writes:
On 2015-03-07 15:14, Mike Wey wrote:
 I'm glad to announce the first GtkD release that makes use of the new gir
based generator.
 The generator was rebuild from the ground up since the old one was no longer
usable with the new GTK+ documentation.

 For a list of changes see the changelog: http://gtkd.org/changelog.html
 There is also an list of the breaking changes on the wiki:
https://github.com/gtkd-developers/GtkD/wiki/GtkD-2-vs-GtkD-3

 Download: http://gtkd.org/Downloads/sources/GtkD-3.0.0-beta.zip
thanks mike, i am looking forward to trying it out soon
 Wraps the GTK+ 3.14 API
what does it mean for windows users? will it work with the 3.8 DL? can you point me to a DL of 3.14 for windows? cheers /det
Mar 08 2015
next sibling parent reply jollie <jollie home.net> writes:
captaindet <2krnk gmx.net> Wrote in message:

 
 can you point me to a DL of 3.14 for windows?
I have been using msys2. The mingw-w64 ports work well and include an x86 and x86_64 version. jollie
Mar 08 2015
next sibling parent reply captaindet <2krnk gmx.net> writes:
On 2015-03-08 22:23, jollie wrote:
 captaindet<2krnk gmx.net>  Wrote in message:

 can you point me to a DL of 3.14 for windows?
I have been using msys2. The mingw-w64 ports work well and include an x86 and x86_64 version. jollie
thanks for the info. however, i am not familiar with this project. to be honest, it is not quite clear to me what MSYS2 is good for or who would need it. the dox are very slim. so before i dig too deep into what looks like a lot of trouble/work, may i ask you this: after original & package installation & setup & whatnot, will i end up with a dedicated gtk3 folder somewhere that acts as a (self-sufficient) runtime environment - i.e., will i be able to just zip this folder, distribute it to colleagues, unzip it and set the windows path to include the gtk/bin and then gkt 3.14+ can be used on this computer? if not, MSYS2 would be of no use to me. /det
Mar 09 2015
next sibling parent "Kagamin" <spam here.lot> writes:
On Monday, 9 March 2015 at 18:48:53 UTC, captaindet wrote:
 after original & package installation & setup & whatnot, will i 
 end up with a dedicated gtk3 folder
msys provides pacman and gtk3 package to fetch (and build?).
Mar 10 2015
prev sibling parent reply jollie <jollie home.net> writes:
On Mon, 09 Mar 2015 13:48:54 -0500, captaindet wrote:

 thanks for the info. however, i am not familiar with this project. to be
honest, it is not quite clear to me what MSYS2 is good for or who would need
it. the dox are very slim. so before i dig too deep into what looks like a lot
of trouble/work, may i ask you this:
 
 after original & package installation & setup & whatnot, will i end up with a
dedicated gtk3 folder somewhere that acts as a (self-sufficient) runtime
environment - i.e., will i be able to just zip this folder, distribute it to
colleagues, unzip it and set the windows path to include the gtk/bin and then
gkt 3.14+ can be used on this computer?
 
 if not, MSYS2 would be of no use to me.
 
 /det
http://sourceforge.net/projects/msys2/ click Files tab you will see Base and REPOS. click Base and you will see X86_64 and i686. which version of msys2 do you want/need? if you need 64bit select x86_64 else if you need 32bit select i686 There is an installer you can use, I opt to use the tar.xz file and unpack it in the root dir to avoid spaces in dir/filenames. Run the Drive:\{msys32,msys64}\msys2_shell.bat file. It will initialize some things then you close window when done. Run the Drive:\{msys32,msys64}\msys2_shell.bat file again use pacman package manager to install packages. type the following pacman command to download gtk3 and its dependencies. $ pacman -S mingw-w64-i686-gtk3 resolving dependencies... looking for conflicting packages... warning: dependency cycle detected: warning: mingw-w64-i686-harfbuzz will be installed before its mingw-w64-i686-freetype dependency warning: dependency cycle detected: warning: mingw-w64-i686-cairo will be installed before its mingw-w64-i686-freetype dependency warning: dependency cycle detected: warning: mingw-w64-i686-fontconfig will be installed before its mingw-w64-i686-freetype dependency Packages (42) db-5.3.28-2 gdbm-1.11-3 libdb-5.3.28-2 libgdbm-1.11-3 mingw-w64-i686-adwaita-icon-theme-3.15.1-1 mingw-w64-i686-atk-2.15.4-1 mingw-w64-i686-bzip2-1.0.6-3 mingw-w64-i686-cairo-1.14.0-3 mingw-w64-i686-expat-2.1.0-4 mingw-w64-i686-fontconfig-2.11.1-3 mingw-w64-i686-freetype-2.5.5-3 mingw-w64-i686-gcc-libs-4.9.2-4 mingw-w64-i686-gdk-pixbuf2-2.31.1-2 mingw-w64-i686-gettext-0.19.4-2 mingw-w64-i686-glib2-2.42.2-2 mingw-w64-i686-gmp-6.0.0-2 mingw-w64-i686-gnome-common-3.14.0-1 mingw-w64-i686-harfbuzz-0.9.39-1 mingw-w64-i686-hicolor-icon-theme-0.14-1 mingw-w64-i686-icon-naming-utils-0.8.90-1 mingw-w64-i686-jasper-1.900.1-3 mingw-w64-i686-jbigkit-2.1-1 mingw-w64-i686-json-glib-1.0.2-2 mingw-w64-i686-libcroco-0.6.8-2 mingw-w64-i686-libffi-3.2.1-2 mingw-w64-i686-libiconv-1.14-3 mingw-w64-i686-libjpeg-turbo-1.4.0-2 mingw-w64-i686-libpng-1.6.16-1 mingw-w64-i686-librsvg-2.40.6-1 mingw-w64-i686-libtiff-4.0.3-4 mingw-w64-i686-libwinpthread-git-5.0.0.4455.32db221-1 mingw-w64-i686-libxml2-2.9.2-5 mingw-w64-i686-lzo2-2.09-1 mingw-w64-i686-pango-1.36.8-2 mingw-w64-i686-pixman-0.32.6-2 mingw-w64-i686-shared-mime-info-1.4-1 mingw-w64-i686-xz-5.2.1-1 mingw-w64-i686-zlib-1.2.8-6 perl-5.20.2-1 perl-XML-Parser-2.43-1 perl-XML-Simple-2.20-2 mingw-w64-i686-gtk3-3.14.9-2 Total Installed Size: 229.98 MiB :: Proceed with installation? [Y/n] Type Y and pacman will download and install gtk3 in the Drive:\{msys32,msys64}\{mingw32,mingw64} folder. Pack the appropriate mingw{32,64} folder and you have a gtk3 runtime. (this will include c library and include files, I will leave it to you to separate the wheat from the chaff). Alternatively, I just set my path to include Drive:\{msys32,msys64}\{mingw32,mingw64}\bin, then use pacman to update my files.
Mar 10 2015
parent reply captaindet <2krnk gmx.net> writes:
On 2015-03-10 10:56, jollie wrote:
 On Mon, 09 Mar 2015 13:48:54 -0500, captaindet wrote:

 thanks for the info. however, i am not familiar with this project. to be
honest, it is not quite clear to me what MSYS2 is good for or who would need
it. the dox are very slim. so before i dig too deep into what looks like a lot
of trouble/work, may i ask you this:

 after original&  package installation&  setup&  whatnot, will i end up with a
dedicated gtk3 folder somewhere that acts as a (self-sufficient) runtime
environment - i.e., will i be able to just zip this folder, distribute it to
colleagues, unzip it and set the windows path to include the gtk/bin and then
gkt 3.14+ can be used on this computer?

 if not, MSYS2 would be of no use to me.

 /det
http://sourceforge.net/projects/msys2/ click Files tab you will see Base and REPOS. click Base and you will see X86_64 and i686. which version of msys2 do you want/need? if you need 64bit select x86_64 else if you need 32bit select i686 There is an installer you can use, I opt to use the tar.xz file and unpack it in the root dir to avoid spaces in dir/filenames. Run the Drive:\{msys32,msys64}\msys2_shell.bat file. It will initialize some things then you close window when done. Run the Drive:\{msys32,msys64}\msys2_shell.bat file again use pacman package manager to install packages. type the following pacman command to download gtk3 and its dependencies. $ pacman -S mingw-w64-i686-gtk3 resolving dependencies... looking for conflicting packages... warning: dependency cycle detected: warning: mingw-w64-i686-harfbuzz will be installed before its mingw-w64-i686-freetype dependency warning: dependency cycle detected: warning: mingw-w64-i686-cairo will be installed before its mingw-w64-i686-freetype dependency warning: dependency cycle detected: warning: mingw-w64-i686-fontconfig will be installed before its mingw-w64-i686-freetype dependency Packages (42) db-5.3.28-2 gdbm-1.11-3 libdb-5.3.28-2 libgdbm-1.11-3 mingw-w64-i686-adwaita-icon-theme-3.15.1-1 mingw-w64-i686-atk-2.15.4-1 mingw-w64-i686-bzip2-1.0.6-3 mingw-w64-i686-cairo-1.14.0-3 mingw-w64-i686-expat-2.1.0-4 mingw-w64-i686-fontconfig-2.11.1-3 mingw-w64-i686-freetype-2.5.5-3 mingw-w64-i686-gcc-libs-4.9.2-4 mingw-w64-i686-gdk-pixbuf2-2.31.1-2 mingw-w64-i686-gettext-0.19.4-2 mingw-w64-i686-glib2-2.42.2-2 mingw-w64-i686-gmp-6.0.0-2 mingw-w64-i686-gnome-common-3.14.0-1 mingw-w64-i686-harfbuzz-0.9.39-1 mingw-w64-i686-hicolor-icon-theme-0.14-1 mingw-w64-i686-icon-naming-utils-0.8.90-1 mingw-w64-i686-jasper-1.900.1-3 mingw-w64-i686-jbigkit-2.1-1 mingw-w64-i686-json-glib-1.0.2-2 mingw-w64-i686-libcroco-0.6.8-2 mingw-w64-i686-libffi-3.2.1-2 mingw-w64-i686-libiconv-1.14-3 mingw-w64-i686-libjpeg-turbo-1.4.0-2 mingw-w64-i686-libpng-1.6.16-1 mingw-w64-i686-librsvg-2.40.6-1 mingw-w64-i686-libtiff-4.0.3-4 mingw-w64-i686-libwinpthread-git-5.0.0.4455.32db221-1 mingw-w64-i686-libxml2-2.9.2-5 mingw-w64-i686-lzo2-2.09-1 mingw-w64-i686-pango-1.36.8-2 mingw-w64-i686-pixman-0.32.6-2 mingw-w64-i686-shared-mime-info-1.4-1 mingw-w64-i686-xz-5.2.1-1 mingw-w64-i686-zlib-1.2.8-6 perl-5.20.2-1 perl-XML-Parser-2.43-1 perl-XML-Simple-2.20-2 mingw-w64-i686-gtk3-3.14.9-2 Total Installed Size: 229.98 MiB :: Proceed with installation? [Y/n] Type Y and pacman will download and install gtk3 in the Drive:\{msys32,msys64}\{mingw32,mingw64} folder. Pack the appropriate mingw{32,64} folder and you have a gtk3 runtime. (this will include c library and include files, I will leave it to you to separate the wheat from the chaff). Alternatively, I just set my path to include Drive:\{msys32,msys64}\{mingw32,mingw64}\bin, then use pacman to update my files.
thanks a lot, jollie, for the detailed description. i tried as advised, the shell output was a bit different than in your example, i guess because i installed the 32 bit version and your example was probably for 64bit. the problem though is that my GTK application lost most icons and there are tons of warning/critical messages (repeating every time i move the mouse): Gtk-WARNING **: Error loading theme icon 'help-contents' for stock: Icon 'help-contents' not present in theme Gtk-WARNING **: Error loading theme icon 'image-missing' for stock: Icon 'image-missing' not present in theme GLib-GObject-CRITICAL **: g_object_ref: assertion 'G_IS_OBJECT (object)' failed Gdk-CRITICAL **: gdk_cairo_surface_create_from_pixbuf: assertion 'GDK_IS_PIXBUF (pixbuf)' failed GLib-GObject-CRITICAL **: g_object_unref: assertion 'G_IS_OBJECT (object)' failed any idea how to fix this? cheers, det
Mar 10 2015
next sibling parent Mike Wey <mike-wey example.com> writes:
On 03/10/2015 09:41 PM, captaindet wrote:
 GLib-GObject-CRITICAL **: g_object_ref: assertion 'G_IS_OBJECT (object)'
 failed

 Gdk-CRITICAL **: gdk_cairo_surface_create_from_pixbuf: assertion
 'GDK_IS_PIXBUF (pixbuf)' failed

 GLib-GObject-CRITICAL **: g_object_unref: assertion 'G_IS_OBJECT
 (object)' failed



 any idea how to fix this?

 cheers,

 det
The CRITICAL errors could be due to changes in the ObjectG memory handling. -- Mike Wey
Mar 10 2015
prev sibling parent reply jollie <jollie home.net> writes:
On Tue, 10 Mar 2015 15:41:54 -0500, captaindet wrote:

 thanks a lot, jollie, for the detailed description. i tried as advised,
 the shell output was a bit different than in your example, i guess
 because i installed the 32 bit version and your example was probably for
 64bit.
I have been using both 32 and 64 bit msys2. For this example, I was using i686(32bit). If your machine is a 32bit machine use i686 or x86_64 for a 64bit machine. Once msys2 is installed, you can download 32bit or 64bit mingw_w64 packages. In this example "C:\msys32\mingw32"
 the problem though is that my GTK application lost most icons and there
 are tons of warning/critical messages (repeating every time i move the
 mouse):
Most likely, the adwaita theme was not installed. Try to download the icon themes again. This will say [installed] if theme is installed. Here I have both 32/64 bit. $ pacman -Ss adwaita mingw32/mingw-w64-i686-adwaita-icon-theme 3.15.1-1 (mingw-w64-i686-gnome) [installed] GNOME icon theme (mingw-w64) mingw64/mingw-w64-x86_64-adwaita-icon-theme 3.15.1-1 (mingw-w64-x86_64-gnome) [installed] GNOME icon theme (mingw-w64) If not type: $ pacman -S mingw-w64-i686-adwaita-icon-theme mingw-w64-i686-hicolor-icon-theme jollie
Mar 10 2015
parent reply captaindet <2krnk gmx.net> writes:
On 2015-03-10 18:05, jollie wrote:
 On Tue, 10 Mar 2015 15:41:54 -0500, captaindet wrote:

 thanks a lot, jollie, for the detailed description. i tried as advised,
 the shell output was a bit different than in your example, i guess
 because i installed the 32 bit version and your example was probably for
 64bit.
I have been using both 32 and 64 bit msys2. For this example, I was using i686(32bit). If your machine is a 32bit machine use i686 or x86_64 for a 64bit machine. Once msys2 is installed, you can download 32bit or 64bit mingw_w64 packages. In this example "C:\msys32\mingw32"
one question regarding 32 vs 64 bit MSYS2: i am on 64bit win7, but for the time being i only use the dmd toolchain, i.e., i create 32bit executables using optlink. so i need the 32bit GTK3 to call into. quite confusingly MSYS2 i686 (32bit) created a mingw32 and a mingw64 folder. so i was wondering if i could - or rather should - install MSYS2 x86_64 (64bit) after all and then be able to use the mingw32 folder for my 32bit D applications? would this be possible just by installing the one gtk3 package you mentioned (mingw-w64-i686-gtk3)?
 the problem though is that my GTK application lost most icons and there
 are tons of warning/critical messages (repeating every time i move the
 mouse):
Most likely, the adwaita theme was not installed. Try to download the icon themes again. This will say [installed] if theme is installed. Here I have both 32/64 bit. $ pacman -Ss adwaita mingw32/mingw-w64-i686-adwaita-icon-theme 3.15.1-1 (mingw-w64-i686-gnome) [installed] GNOME icon theme (mingw-w64) mingw64/mingw-w64-x86_64-adwaita-icon-theme 3.15.1-1 (mingw-w64-x86_64-gnome) [installed] GNOME icon theme (mingw-w64) If not type: $ pacman -S mingw-w64-i686-adwaita-icon-theme mingw-w64-i686-hicolor-icon-theme
it works now! i figured that the original installation was incomplete because i had to set rules for a lot of program executions and internet accesses (firewall rules). some parts of the MSYS2 install script timed out too quick and therefor some packages were skipped. i just followed the instructions on http://sourceforge.net/p/msys2/wiki/MSYS2%20installation part III. updating packages - and everything is there now (icons, pixbuffer dependencies). so far it works better than 3.8 which produced a good deal of these CRITICAL messages... also it is so much prettier ;) thanks jollie for your help getting GTK3 via MSYS2 and mike for providing GtkD!! /det ps: the mingw32 folder is >150MB (bin, etc, share only), the GTK3.8 folder was only ~50MB. gotta play with it a bit to see what i can leave out before distributing to other machines..
Mar 11 2015
parent jollie <jollie home.net> writes:
On Wed, 11 Mar 2015 11:48:27 -0500, captaindet wrote:

 one question regarding 32 vs 64 bit MSYS2:
 i am on 64bit win7, but for the time being i only use the dmd toolchain, i.e.,
i create 32bit executables using optlink. so i need the 32bit GTK3 to call into.
 
 quite confusingly MSYS2 i686 (32bit) created a mingw32 and a mingw64 folder.
so i was wondering if i could - or rather should - install MSYS2 x86_64 (64bit)
after all and then be able to use the mingw32 folder for my 32bit D
applications? would this be possible just by installing the one gtk3 package
you mentioned (mingw-w64-i686-gtk3)?
 
If your plan is to just install packages, it doesn't really matter. I use the x86_64 msys2 on my 64bit machines.
 and it also allows using the latest version of glade!
And more! jollie
Mar 12 2015
prev sibling parent captaindet <2krnk gmx.net> writes:
On 2015-03-08 22:23, jollie wrote:
 captaindet<2krnk gmx.net>  Wrote in message:

 can you point me to a DL of 3.14 for windows?
I have been using msys2. The mingw-w64 ports work well and include an x86 and x86_64 version. jollie
and it also allows using the latest version of glade! /det
Mar 11 2015
prev sibling parent Mike Wey <mike-wey example.com> writes:
On 03/09/2015 01:02 AM, captaindet wrote:
 thanks mike,

 i am looking forward to trying it out soon

 Wraps the GTK+ 3.14 API
what does it mean for windows users? will it work with the 3.8 DL? can you point me to a DL of 3.14 for windows? cheers /det
Yes, it will work with GTK+ 3.8, but you can't use any of the features added in later releases. I don't know a download location for 3.14 for Windows. -- Mike Wey
Mar 09 2015
prev sibling parent "Mengu" <mengukagan gmail.com> writes:
On Saturday, 7 March 2015 at 21:14:36 UTC, Mike Wey wrote:
 I'm glad to announce the first GtkD release that makes use of 
 the new gir based generator.
 The generator was rebuild from the ground up since the old one 
 was no longer usable with the new GTK+ documentation.

 For a list of changes see the changelog: 
 http://gtkd.org/changelog.html
 There is also an list of the breaking changes on the wiki: 
 https://github.com/gtkd-developers/GtkD/wiki/GtkD-2-vs-GtkD-3

 Download: http://gtkd.org/Downloads/sources/GtkD-3.0.0-beta.zip
i was building a text editor* with D back in 2010 and i was using gtkD. mike was always there to help and answer my n00b questions. thank you for supporting this library and your users for years mike. thank you. it really means a lot. * nope, never finished.
Mar 10 2015