|
This channel is intended for people just starting with the Raku Programming Language (raku.org). Logs are available at irclogs.raku.org/raku-beginner/live.html Set by lizmat on 8 June 2022. |
|||
|
00:58
notna joined
01:13
notna left
01:14
notna joined
01:16
notna left
01:26
notna joined
02:04
notna left
|
|||
| winfredraj | hello all | 08:31 | |
| im trying to run an example from the Gnome::Gtk for drawing Area and am not able to get it running | 08:34 | ||
| <script src="gist.github.com/winfredraj/463aede...script> | 08:36 | ||
| ===SORRY!=== Error while compiling /home/winfred/Code/Raku/Gnome/drawing_area.raku Invalid typename 'cairo_t' in parameter declaration. at /home/winfred/Code/Raku/Gnome/drawing_area.raku:7 ------> cairo_t⏏ $cr-no, Gnome::Gtk3::DrawingArea :_widg | 08:37 | ||
| I have tried Gnome::Cairo::cairo_t as well | 08:38 | ||
| Can anyone help me here please? | 08:40 | ||
| librasteve | lemme jump on my pc… 5 mins | 08:50 | |
| winfredraj | thanks librasteve | 08:54 | |
| Happy Easter everyone! | 08:55 | ||
| librasteve | ok - i have coffee - lets take a look | 09:00 | |
| gist.github.com/winfredraj/463aede...98708c8a70 | 09:01 | ||
| brew install gtk+3 | 09:06 | ||
| meantime - don't you need a comma after cairo_t? | |||
| seems like the gist has some awkward line continuations - possibly with extra spaces? | 09:11 | ||
| winfredraj | cdn.discordapp.com/attachments/768...2d1f0& | 09:33 | |
| cairo_t seems to be the type of $cr-no | 09:34 | ||
| librasteve | think I have GTK installed (phew!) | 09:36 | |
| please can you point me to the original example? | |||
| winfredraj | hold on | 09:37 | |
| martimm.github.io/gnome-gtk3/conte....html#wow9 | |||
| librasteve | thanks! | ||
| winfredraj | I think here a colon is missing before _widget in the method callback type signature | 09:38 | |
| I got another basic example working and I found it surprising snappy. I was expecting a very slow and laggy experience. It was a small window creation but I like what I could do a lot just with Raku code | 09:40 | ||
| this would help me move over to Raku a lot more when I need GUI, right now I have to spin WPF with F# backends to get some basic GUI | 09:41 | ||
|
09:41
habere-et-disper joined
|
|||
| habere-et-disper | m: say 3 (elem) [3,5] | 09:41 | |
| camelia | True | ||
| habere-et-disper | m: say 4 (elem) <4 5> | ||
| camelia | False | ||
| habere-et-disper | Is this expected because we have sets of Int and sets of IntStr ? | 09:43 | |
| I was expecting True for | 09:44 | ||
| m: say 4 (elem) <4 5> | |||
| camelia | False | ||
| winfredraj | m: say 4 (elem)(4,5) | 09:45 | |
| Raku eval | True | ||
| librasteve | @winfredraj - please try cairo_bool_t instead github.com/MARTIMM/gnome-native/bl...es.rakumod | 09:46 | |
| winfredraj | you mean cairo_bool_t $cr-no? | 09:47 | |
| librasteve | yep | 09:48 | |
| (or maybe just delete the type) | |||
| winfredraj | I tried deleting the type already | 09:49 | |
| librasteve | plus I guess you know that π character was butchered by the gist | ||
| winfredraj | Unknown type Any used in native call. If you want to pass a struct, be sure to use the CStruct or CPPStruct representation. If you want to pass an array, be sure to use the CArray type. | ||
| librasteve | ah - ok | 09:50 | |
| winfredraj | using cairo_bool_t makes the errors go away, but I dont have any window popping up either | 09:51 | |
| with my Gnome::Cairo $cr .= new(:native-object($cr-no)) | |||
| librasteve | well a different error is progress of a sort | ||
| winfredraj | $cr-no is used as a parameter for :native-object | 09:52 | |
| cdn.discordapp.com/attachments/768...d987a& | |||
| and native-object seems to have the type N-GObject | 09:53 | ||
| so this cairo_t or whatever type we use should match N-GObject at the end of the day | |||
| librasteve | @winfredraj - I am getting "kit" errors now on my mac ... | 10:02 | |
| Cannot locate native library 'libgtk-3.so.0': dlopen(libgtk blah, blah | 10:03 | ||
| winfredraj | In Linux we need to install libgtk-3-dev | ||
| librasteve | yeah - well brew has its limitations! | 10:04 | |
| tbh I am a bit out of my depth on the Gtk specific stuff - my best advice is to raise an issue over on the repo and see if you get any help from there ... github.com/MARTIMM/gnome-gtk3/issues | 10:05 | ||
| ab5tract | habere-et-disper: that is indeed a Int vs IntStr thing. because the types are different (or differ-Int ;), the (elem) call doesn't find the LHS | 10:10 | |
| m: dd set <4 5>, 4 | |||
| camelia | Set.new(4,IntStr.new(4, "4"),IntStr.new(5, "5")) | ||
| ab5tract | winfredraj: how complicated is your GUI going to be? I ask because I've always found GTK::Simple to be much easier to use | 10:15 | |
| habere-et-disper | Thanks ab5tract -- Happy 🐣 | 10:16 | |
| ab5tract | But if you need direct access to Cairo, martin's more comprehensive work is the only way to fly | ||
| winfredraj | Thanks librasteve | ||
| @ab5tract - initially I need it for basic stuff, but if I am really going to do what I am planning to do, then I will need a comprehensive framework like WPF | 10:18 | ||
| ab5tract | got it | ||
| winfredraj | so I wont have a lot of choice there | ||
| thanks ab5tract, let me see if I can figure something out | 10:20 | ||
| ab5tract | from your gist I don't see a gui/window set up. maybe using an instance of Gnome::Gtk3::Main (martimm.github.io/gnome-gtk3/conte...Main.html) will work as your :native-object argument? | 10:25 | |
| habere-et-disper: Thanks! and right back at you\ | 10:26 | ||
|
11:03
teatwo joined
11:06
teatime left
|
|||
| librasteve | m: say <4> (elem) <4 5> | 11:14 | |
| Raku eval | True | ||
| librasteve | dd <4> | 11:15 | |
| m: dd <4> | |||
| Raku eval | IntStr.new(4, "4") | ||
| librasteve | fwiw Set operations like (elem) use .WHICH to test sameness - so they are picky and look at value-types | 11:16 | |
| m: say 4.WHICH | |||
| Raku eval | Int|4 | ||
| librasteve | m: say <4>.WHICH | ||
| Raku eval | IntStr|Int|4|Str|4 | ||
| habere-et-disper | Thank you @librasteve :) | 11:35 | |
| Why can I narrow a Num to an Int, but not an IntStr to an Int ? | |||
| m: say (3.0).narrow.WHICH | |||
| camelia | Int|3 | ||
| habere-et-disper | m: say (<3>).narrow.WHICH | ||
| camelia | IntStr|Int|3|Str|3 | ||
| lizmat | "Returns the number converted to the narrowest type that can hold it without loss of precision" | 11:36 | |
| I guess can be interpreted as needing an IntStr to be converted to an Int | |||
| habere-et-disper | My internal working model of raku's magic is that more spicy magic is available behind quote words < > and ~~ and was surprised my dish needed more jalapeños. | 11:45 | |
|
12:01
habere-et-disper left
|
|||
| lizmat | habere-et-disper: I think it's just an oversight | 12:05 | |
|
16:19
habere-et-disper joined
|
|||
| habere-et-disper | Should True and False be included with raku localization ? | 16:20 | |
| github.com/Raku/L10N/tree/main/localizations | |||
| And what about "temp" ? | 16:22 | ||
| lizmat | habere-et-disper: please make an issue for that | 17:04 | |
| habere-et-disper | (y) | 17:05 | |
| lizmat | regarding True and False: handling enums in general is going to be tricky | ||
| perhaps an exception can be made for True / False and probably Less / Same / More | 17:06 | ||
|
19:09
habere-et-disper left
|
|||
| winfredraj | @librasteve and @ab5tract - got the Gtk example working! had to use Gnome::Cairo::Types to use cairo_t | 19:46 | |
| that naturally only solved the error but to see it in action, I had to hook it up to a window and a grid like ab5tract had suggested | 19:47 | ||
| cdn.discordapp.com/attachments/768...32539& | |||
| thanks !! | |||
| ab5tract | Great! | ||
|
20:59
teatwo left
21:00
teatwo joined
23:35
kjp left
23:38
kjp joined
|
|||