Re: Surprise - New Post on the GtkD Coding Blog
On 03-09-2021 20:42, M.M. wrote: I just recently visited your blog, and was wandering whether it's over now... I also visited gtkd website, and was wandering whether it's over now (the website still shows a wrapper for GTK 3.24). Happy to see you are back and well. I wonder where did you learn about a new gtkD release? Anyway, on the long run, I guess covering GTK 4 will be very welcome. The GTK 4 version still needs work and isn't released yet. I currently don't have the time to work on it, but i hope i am able to resume working on it later this year. -- Mike Wey
Re: gtkDcoding Facelift Launch
On 09-07-2019 11:53, Ron Tarrant wrote: Last week, gtkDcoding saw its 50th regularly-scheduled post. Today marks the launch of stage two of the facelift we've been working toward for the last month. The new features are: Looks great, and a big thanks for putting all the effort in. -- Mike Wey
Re: GtkD 3.9.0, A GTK+ D binding.
On 02-06-2019 22:19, Adam D. Ruppe wrote: On Wednesday, 29 May 2019 at 22:07:14 UTC, Mike Wey wrote: I was already using that I see you fixed that, but I introduced a regression with my public import thing. So for a while, I had modules with a single class just go straight to that class e.g. https://api.gtkd.org/gdk.Color.html would just automatically go to here: https://api.gtkd.org/gdk.Color.Color.html and I accidentally broke that by making it list public imports as "members" so it bypassed that logic. Do you feel it is good to go straight to the classes? Or do you see value in having it still list the modules and classes separately? A list of publicly imported modules could be useful, and you would lose that if you go straight to the class. -- Mike Wey
Re: GtkD 3.9.0, A GTK+ D binding.
On 30-05-2019 11:18, Ron Tarrant wrote: On Wednesday, 29 May 2019 at 20:30:03 UTC, Mike Wey wrote: GtkD is a D binding and OO wrapper of Gtk+ and is released on the LGPL license. At this point it feels long overdue, but finally there is an GtkD release that is updated for the latest GTK+ libraries. So... This is compliant with GTK 3.96? The latest stable version: 3.24.8. -- Mike Wey
Re: GtkD 3.9.0, A GTK+ D binding.
On 29-05-2019 23:37, Adam D. Ruppe wrote: On Wednesday, 29 May 2019 at 20:30:03 UTC, Mike Wey wrote: And i finally took the time to change the documentation on the website from candydoc to one generated by Adam's adrdox. https://api.gtkd.org A tip: when you generate the code with adrdox, use --special-preprocessor=gtk I was already using that, but looking a bit closer it only works when also passing `--jobs=1`. (Or changing `string specialPreprocessor` in doc2.d to `__gshared'). Should be updated soon. BTW nice work on teh css! It obviously needs to match the website ;) -- Mike Wey
Re: GtkD 3.9.0, A GTK+ D binding.
On 29-05-2019 22:38, M.M. wrote: So cool! I guess it will be a lot of work to get the bindings and wrapper to the upcoming GTK 4... Hopefully the generator can handle most of it without intervention. -- Mike Wey
GtkD 3.9.0, A GTK+ D binding.
GtkD is a D binding and OO wrapper of Gtk+ and is released on the LGPL license. At this point it feels long overdue, but finally there is an GtkD release that is updated for the latest GTK+ libraries. And i finally took the time to change the documentation on the website from candydoc to one generated by Adam's adrdox. https://api.gtkd.org Full changelog: https://gtkd.org/changelog.html Download: https://gtkd.org/download.html -- Mike Wey
Re: GtkD Blog Now Up and Running
On 31-01-2019 21:33, Ron Tarrant wrote: On Wednesday, 30 January 2019 at 21:21:24 UTC, Mike Wey wrote: This is whats going on: https://issues.dlang.org/show_bug.cgi?id=15418 To work around this you can either build things with "--arch=x86mscoff" or tell dub not to build the debug version with "--build=plain". Ah! Thanks, Mike. Does the lack of an answer to the last question there mean that this is an on-going issue? Yes, the issue is still open / on-going. -- Mike Wey
Re: GtkD Blog Now Up and Running
On 30-01-2019 21:07, Jacob Carlborg wrote: On 2019-01-30 11:35, Ron Tarrant wrote: You said you're on OSX, right? Is it possible that dub just isn't as cooperative on Windows 10? Of course, if you can see something in this output that hints at a fix, please let me know. It's Optlink being stupid as always. If you want to figure out what's wrong you can invoke Dub with the "--verbose" flag to have it print the commands it's running, i.e. how it's invoking the compiler and the linker. You can do the same thing when invoking the compiler manually by adding "-v" to see how it links the application and compare that with Dub. Or, you can try compiling as COFF instead of OMF which will not use Optlink. Add the flag "--arch=x86mscoff" when invoking Dub. This is whats going on: https://issues.dlang.org/show_bug.cgi?id=15418 To work around this you can either build things with "--arch=x86mscoff" or tell dub not to build the debug version with "--build=plain". -- Mike Wey
Re: Blog post: What D got wrong
On 18-12-2018 19:52, Russel Winder wrote: On Tue, 2018-12-18 at 16:50 +, Neia Neutuladh via Digitalmars-d-announce wrote: Is there a video link for that talk? I'd be interested in hearing it. The videos are here: https://gstconf.ubicast.tv/channels/#gstreamer-conference-2018 I think they recorded the lightning talks as a single video, so you'll have to fast forward to my little bit. If you are only interested in the MeTV part, this is the start of that lighting talk: https://gstconf.ubicast.tv/permalink/v125ac3127116gnuo89h/#start=2561 -- Mike Wey
Re: Blog post: What D got wrong
On 11-12-2018 12:10, Atila Neves wrote: On Tuesday, 11 December 2018 at 11:08:29 UTC, user1234 wrote: On Tuesday, 11 December 2018 at 10:45:39 UTC, Atila Neves wrote: A few things that have annoyed me about writing D lately: https://atilanevesoncode.wordpress.com/2018/12/11/what-d-got-wrong/ I agree about template lambdas. But is something that misses really an error ? It's debatable. I thought it was funny that it was an oversight given the fact that D had lambdas to avoid the problems that C++ used to have, then went and made the "same" mistake again. It isn't as bad as the example in the blog post, this also works: ``` range.map!(fun).filter!(gun).join; ``` -- Mike Wey
Re: Dub support was added to Meson
On 07-08-18 22:33, Atila Neves wrote: How does it track dependencies given that ninja needs functionality akin to gcc's to do that? Or does it always compile everything if any file changes? It currently only tracks dependencies when using gdc, for dmd and ldc dmd pull 6961[1] would have to be merged so that support can be extended to the other compilers. So when using ldc or dmd you will currently have to call 'ninja clean && ninja' to compile everything. [1] https://github.com/dlang/dmd/pull/6961 -- Mike Wey
Re: GDB + ddemangle
On 20-04-18 12:36, drug wrote: 20.04.2018 13:03, Joakim пишет: You are aware that gdb has built-in support for demangling D for 3-4 years now? But how to enable it? It doesn't work out of box at least for me. It should be automatic when the executable is build with debugging info. `-g` -- Mike Wey
Re: Gtk-D API Documentation now on dpldocs.info
On 08-03-18 02:27, Adam D. Ruppe wrote: GtkD is a D wrapper to the GTK library. It has plenty of doc comments attached... but they are in a special GTK syntax and all the cross references refer to C structs and functions instead of to D classes and methods. Well, adrdox got some special-case code to handle this and do the translations for us! I'd say I got it about 95% handled automatically... and I like the result a lot more than the official docs for either D or C. Take a look! http://gtk-d.dpldocs.info/index.html Well, I made a mistake generating these and there's a broken image and link in the header... but the text body looks pretty good! You can navigate around there and even go to the root and see all the various packages included in gtkd: http://gtk-d.dpldocs.info/gtk.html Any Gtk-D users here who can give me some practical feedback? Unlike most dub packages, gtkd is just too big to automatically generate on the server, so I have to do it on my computer and copy the (almost 26,000!!!) files up to the 'net. So I won't update it frequently, but I will keep improving if I hear good ideas. It looks great. Only glib (http://gtk-d.dpldocs.info/glib.html) seems to be broken / missing. -- Mike Wey
Re: Bootstrap D template
On 01-02-18 22:53, Tony wrote: On Monday, 29 January 2018 at 11:04:19 UTC, Seb wrote: https://github.com/wilzbach/d-bootstrap Happy bootstrapping! What does "|" do in a makefile? The target depends on `bin` but don't rebuild the target if `bin` is newer than the target. https://www.gnu.org/software/make/manual/html_node/Prerequisite-Types.html#Prerequisite-Types -- Mike Wey
Re: Blog post: using dynamic libraries in dub
On 19-12-17 18:58, Neia Neutuladh wrote: From the "it's a hacky workaround but it's what we've got" department: how to use dynamic libraries in dub, with GtkD as the example. GtkD takes about 45MB on its own, and that means it can take a fair bit of time to build anything that depends on it -- even if it only uses a handful of symbols. Building it as a dynamic library can shrink compile times significantly. https://blog.ikeran.org/?p=323 An example of this strategy in use: https://git.ikeran.org/dhasenan/resin-browser/src/master/dub.json And for GtkD, that is why it would make sense to relay on the packages supplied by your distribution. And just list "gtkd-3" in the "libs" section. Avoiding the need for the workaround to build a shared version. -- Mike Wey
GtkD 3.7.0 released, GTK+ with D.
GtkD is a D binding and OO wrapper of Gtk+ and is released on the LGPL license. Apart form the biannual update to the latest glib/gtk version, this release adds bindings for Gstreamer Mpegts and Gstreamer AppSink. Full changelog: http://gtkd.org/changelog.html Download: http://gtkd.org/Downloads/sources/GtkD-3.7.0.zip -- Mike Wey
Re: Go Your Own Way (Part One: The Stack)
On 07-07-17 22:10, Walter Bright wrote: On 7/7/2017 12:38 PM, Steven Schveighoffer wrote: Which would mean that the lack of alloca prototype on Windows is a straight up bug (the fact that you can just add the declaration and it works is pretty good proof). It's in core.stdc.stdlib Only for version DigitalMars and GNU. -- Mike Wey
Re: GtkD 3.5.0, GTK+ with D.
On 01/07/2017 02:46 PM, Joakim wrote: On Saturday, 7 January 2017 at 11:06:14 UTC, Mike Wey wrote: On 01/07/2017 08:24 AM, Joakim wrote: Hey Mike, any interest in providing a library for Android? You can try out my ldc cross-compiler for Android: https://github.com/joakim-noah/android/releases There would first need to be a GTK version for Android. There is a repo for it: https://github.com/eugals/GTKAndroid But if Gtk doesn't really bother supporting Android and you don't want to mess with it either, that's fine. Maybe when the android support is more mature. -- Mike Wey
Re: GtkD 3.5.0, GTK+ with D.
On 01/07/2017 06:32 PM, Gerald wrote: On Saturday, 7 January 2017 at 16:46:38 UTC, dlang user wrote: When I compile the HelloWorld.d demo code on version 3.4.1 in debug mode the resulting file size is 26.4MB, when I compile the same code with 3.5.0 the file size is 70.7MB, that is quite a jump in size. I am using DMD V2.072.2 on 64bit Debian testing. As you are probably aware, GtkD auto-generates code. Unfortunately, adding the ability to remove event handlers generated an increase in the size of code, instead of just tracking the delegate directly it now uses a wrapper class to also track the connect flags and returned handlerId. Right now a unique wrapper class is generated for each event handler which I suspect is the primary culprit for the increase in size. If this size increase is a major concern, one option might be for me to try to use a generic wrapper class instead of a generating a unique one. This would mean converting the generated code to cast the delegate before using it. I'll let Mike chime in with his thoughts first though before looking too much into it. I didn't expect a jump in size of that magnitude, but i didn't check for it either. In release builds the size difference is smaller, and the best results are with ldc. (-O -release + strip) With ldc the HelloWorld demo is just 2.4MB (2.2MiB) a 0.2MB increase from the previous release. For the library itself this is a bit more with a 30% increase in size. -- Mike Wey
Re: GtkD 3.5.0, GTK+ with D.
On 01/07/2017 08:24 AM, Joakim wrote: Hey Mike, any interest in providing a library for Android? You can try out my ldc cross-compiler for Android: https://github.com/joakim-noah/android/releases There would first need to be a GTK version for Android. -- Mike Wey
GtkD 3.5.0, GTK+ with D.
GtkD is a D binding and OO wrapper of Gtk+ and is released on the LGPL license. Close to the 3.4 release, but the new functionality to now also remove registered signal handlers added by Gerald Nunn warrants a new release. Signal handles can be removed with the `gobject.Signals.Signals.handlerDisconnect` function. ``` gulong id = addOnDraw(&myHandler); Signals.handlerDisconnect(this, id); ``` Users who previously removed there handlers from the internal array used by GtkD will need to update there code to the new system. Changelog: http://gtkd.org/changelog.html Download: http://gtkd.org/Downloads/sources/GtkD-3.5.0.zip -- Mike Wey
GtkD 3.3.0 released, GTK+ with D.
GtkD is a D binding and OO wrapper of Gtk+ and is released on the LGPL license. A new version of GTK was released today, and with that comes a new GtkD release so you can use the new features in D. GtkD 3.3.0 is now available on gtkd.org: http://gtkd.org/download.html -- Mike Wey
Re: Terminix 0.51.0 Released
On 02/28/2016 12:13 AM, Gerald wrote: Terminix is a tiling Linux terminal emulator I've been working on designed for the Gnome 3 environment and using GtkD. This newest release fixes a number of bugs and adds some new features. I'm announcing it here primarily for D programmers interested in development using GtkD since this might be useful as a real world GtkD program that exercises a significant percentage of the GTK API. Also, if anyone wants to contribute to the effort I'm always looking for help. Terminix can be found here: https://github.com/gnunn1/terminix Great work. -- Mike Wey
Re: GtkD 3.1.0 released, GTK+ with D.
On 04/19/2015 02:07 PM, Steve Teale wrote: On Thursday, 26 March 2015 at 22:41:01 UTC, Mike Wey wrote: GtkD is a D binding and OO wrapper of Gtk+ and is released on the LGPL license. Shortly after the last release, GtkD has been updated for GTK+ 3.16. GtkD 3.1.0 is now available on gtkd.org: http://gtkd.org/download.html Mike, Broadly speaking, how much work is involved in converting an app using GtkD 2.4? Thanks Steve Judging form the demos, the needed changes are minimal. -- Mike Wey
Re: GtkD 3.1.0 released, GTK+ with D.
On 04/10/2015 11:34 PM, Mike Wey wrote: On 04/10/2015 12:54 PM, stewarth wrote: On Thursday, 26 March 2015 at 22:41:01 UTC, Mike Wey wrote: GtkD is a D binding and OO wrapper of Gtk+ and is released on the LGPL license. Shortly after the last release, GtkD has been updated for GTK+ 3.16. GtkD 3.1.0 is now available on gtkd.org: http://gtkd.org/download.html Hi, I tried posting on the GtkD forum but it crashed when I hit post :P I've just upgraded to GtkD 3.1.1 (not 3.1.0). I now get a compiler error because the setState method in the gtk.Button class is not there anymore. Is this a bug or was it removed on purpose? Thanks, Stew That is a bug. Further investigation shows it was intentional, because of conflicts with other functions, use setStateFlags. Forum should be fixed now. -- Mike Wey
Re: GtkD 3.1.0 released, GTK+ with D.
On 04/10/2015 12:54 PM, stewarth wrote: On Thursday, 26 March 2015 at 22:41:01 UTC, Mike Wey wrote: GtkD is a D binding and OO wrapper of Gtk+ and is released on the LGPL license. Shortly after the last release, GtkD has been updated for GTK+ 3.16. GtkD 3.1.0 is now available on gtkd.org: http://gtkd.org/download.html Hi, I tried posting on the GtkD forum but it crashed when I hit post :P I've just upgraded to GtkD 3.1.1 (not 3.1.0). I now get a compiler error because the setState method in the gtk.Button class is not there anymore. Is this a bug or was it removed on purpose? Thanks, Stew That is a bug. Forum should be fixed now. -- Mike Wey
Re: GtkD 3.1.0 released, GTK+ with D.
On 03/28/2015 08:31 PM, captaindet wrote: On 2015-03-27 16:47, Mike Wey wrote: On 03/27/2015 10:27 PM, captaindet wrote: On 2015-03-26 17:41, Mike Wey wrote: GtkD is a D binding and OO wrapper of Gtk+ and is released on the LGPL license. Shortly after the last release, GtkD has been updated for GTK+ 3.16. GtkD 3.1.0 is now available on gtkd.org: http://gtkd.org/download.html great news - thanks for your efforts! there is a name conflict though. folder \srcgstreamer\gstreamer\ contains GStreamer.d and gstreamer.d this is not supported on windows machines i don't think DMD supports differentiating between them either. /det Fixed in 3.1.1. thanks a bunch! i ran into something else concerning Builder.addFromString in the 1.x versions it was uint addFromString(string buffer, gsize length) (clumsy C style) in the 2.x versions it became uint addFromString(string buffer) (D-ified, made sense) with 3.x it reverted to uint addFromString(string buffer, size_t length) (back to clumsy C style) i don't really like to change my code again and make it incompatible with 2.x versions. and i don't like the clumsy C style either. i'd appreciate if you could add an overload for the D style 2.x version call. cheers, det That change wasn't intentional, the gir files are missing the array information for this function. Fixed in: https://github.com/gtkd-developers/GtkD/commit/4ecf0e17f0951920461ec2d277c9c97d09eab94f -- Mike Wey
Re: GtkD 3.1.0 released, GTK+ with D.
On 03/27/2015 10:27 PM, captaindet wrote: On 2015-03-26 17:41, Mike Wey wrote: GtkD is a D binding and OO wrapper of Gtk+ and is released on the LGPL license. Shortly after the last release, GtkD has been updated for GTK+ 3.16. GtkD 3.1.0 is now available on gtkd.org: http://gtkd.org/download.html great news - thanks for your efforts! there is a name conflict though. folder \srcgstreamer\gstreamer\ contains GStreamer.d and gstreamer.d this is not supported on windows machines i don't think DMD supports differentiating between them either. /det Fixed in 3.1.1. -- Mike Wey
GtkD 3.1.0 released, GTK+ with D.
GtkD is a D binding and OO wrapper of Gtk+ and is released on the LGPL license. Shortly after the last release, GtkD has been updated for GTK+ 3.16. GtkD 3.1.0 is now available on gtkd.org: http://gtkd.org/download.html -- Mike Wey
Re: GtkD 3.0-beta
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
Re: GtkD 3.0-beta
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
Re: GtkD 3.0-beta
On 03/08/2015 09:08 PM, "=?UTF-8?B?IlRow6lv?= Bueno\" \"" 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
GtkD 3.0-beta
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
GtkD 2.4.0 released, GTK+ with D.
GtkD is a D binding and OO wrapper of Gtk+ and is released on the LGPL license. The most notable changes in this release are the discontinuation of the support for D1, and better support for installing more than one version of GTK+ on Windows. A full list of changes is available in the change log: http://gtkd.org/changelog.html GtkD 2.4.0 is now available on gtkd.org: http://gtkd.org/download.html Unlike previous releases this one doesn't come with an update to the latest release of GTK+. This is being worked on but changes in the gtk documentation means we need to switch to the gir files for generating the code. -- Mike Wey