chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Need GUI (again), gauging interest in an alternative approach.


From: Matt Welland
Subject: Re: Need GUI (again), gauging interest in an alternative approach.
Date: Thu, 23 Mar 2023 09:20:37 -0400

Thanks for the suggestion elf. More than ever I recognize how important it is to make these decisions carefully and I appreciate input from the list.

I'll sketch out an analysis of my decision and then gauge wx in that light. Maybe this will be of use to others, if not, my apologies for the email clutter.

Project A, need gui with decent text widget. 90% done, (all Chicken) and existing gui in IUP is decent.
Project B, builds on A, needs gui, text editing and 2D graphics, probably vector and bitmap.
Project C, builds on A, needs 3D graphics and (hopefully) VR support (I have a Valve Index, VR aspect would be fun to build and use I hope).
Project D unifies A, B and C but is an ordinary gui, it just needs good widgets, especially text.

Linux, Windows, MacOS and Android support is important, IOS would be icing on the cake.

In each of these projects the data to and from the gui from the logic side is not large. The tcp to Godot approach or even json files in/out of Godot will work ok.
So would wx save time, improve look and feel or have some other advantage? Is there some other option I should consider?

On Thu, Mar 23, 2023 at 8:06 AM elf <elf@ephemeral.net> wrote:
Perhaps something more like wx would be better? Excellent cross-platform support, including all necessary support structures, and iirc it can give you lower-level graphics access too? Plus, of course, there are already bindings for a large num of languages, and a guide to writing new bindings, so...

-elf


On 23 March 2023 13:43:10 GMT+02:00, Matt Welland <mattrwelland@gmail.com> wrote:
Tk is great, no doubt about it. I still miss Eric Gallesio's STk. The reasons I decided against tk include:
  1. Clunky 1980's look and feel. (i)
  2. No IOS or Android support. (ii)
  3. I seemed to fight the widget layout model a lot when I used it. (iii)
  4. Two of the projects I'm starting are more game than normal app, including plans to have a VR view.
(i) has been addressed with the latest tk, including themes apparently.
(ii) it does appear possible to use tk on android but there is no touch support as best I can tell.
(iii) Godot seems somewhat similar to IUP with hboxes, vboxes etc. hopefully easier for me to learn.

#2 is a big concern but #4 is the deciding factor. I really need something that works and where I can reuse what I learn in many projects. I'd strongly prefer to use 100% Chicken but I also need to get things done and if I have to learn and use gd script for some of my projects I'll deal with it. I am also starting to see the value of a well done gui designer.

What I want is a button in Godot that switches out gd script for Chicken Scheme. That would be an awesome tool! I'll settle for doing the communications, logic and other heavy lifting in a Chicken program and bolt on Godot for the user interface (via tcp for now).

Just my $0.02

On Wed, Mar 22, 2023 at 11:37 PM elf <elf@ephemeral.net> wrote:
Erm, what's wrong with the tk bindings, which should work everywhere already?

-elf

On 23 March 2023 02:36:43 GMT+02:00, Matt Welland <mattrwelland@gmail.com> wrote:
>That would be great Thomas. For my part, I'll start working on my project
>using what I can, learning Godot along the way. When you get to working on
>this please let me know how I can help.
>
>Regarding the approach, I like the tooling to generate a loadable module
>idea. I figure leverage as much of Godot as a tool as possible.
>
>Thanks.
>
>On Wed, Mar 22, 2023 at 12:27 PM Thomas Chust <thomas.chust@gmail.com>
>wrote:
>
>> Hello,
>>
>> a combination of CHICKEN and Godot sounds very interesting! I've been
>> meaning to experiment more with that engine for a while, and with Godot 4.0
>> just out the door the time is probably perfect to try out the new extension
>> APIs.
>>
>> I'm not completely sure how the CHICKEN/Godot hybrid should look like and
>> suspect that embedding Godot in a CHICKEN egg would at least be cumbersome.
>> Maybe some kind of tooling to streamline the task of rolling CHICKEN code
>> into a single loadable module for Godot to use would be most promising 🤔
>>
>> I think I've just found a project for the upcoming CHICKEN summer workshop
>> 😁
>>
>> Ciao,
>> Thomas C.
>>
>>
>> Am Mi., 22. März 2023 um 15:28 Uhr schrieb Matt Welland <
>> mattrwelland@gmail.com>:
>>
>>> I've been using IUP with Chicken for years. I really enjoy using it
>>> (thanks Thomas!). But, here we are, over 10 years later and IUP is still
>>> not available as an official Debian package and it is a burden to deploy.
>>> It is also still not supported on Mac.
>>>
>>> So, I'm scouting around (again) for alternatives and I'm starting to lean
>>> towards using Godot for my next project. Godot + Chicken scheme that is.
>>> I'm hoping that I can deploy  to mac, Linux and Windows and maybe even
>>> android without too much pain.
>>>
>>> Here is an article that makes the case for using Godot for graphical user
>>> interfaces:
>>>
>>>
>>> https://medium.com/swlh/what-makes-godot-engine-great-for-advance-gui-applications-b1cfb941df3b
>>>
>>> I can achieve what I need with any one of three approaches:
>>>
>>> 1. Godot <==> chicken executable, where the connection could be tcp, http
>>> or similar.
>>>
>>> 2. Godot <==> chicken .so file
>>>
>>> 3. Chicken <==> godot egg
>>>
>>> I don't have time or expertise to do an egg without help. Before I start
>>> working using option 1 or 2 I wanted to ask the chicken community if there
>>> was interest in collaborating on creating a godot egg.
>>>
>>> Thanks!
>>>
>>> NOTE: If hypergiant had a widget library with a decent text widget (line
>>> wrapping, copy/paste to the OS etc.) I'd have considered it. Raylib was
>>> also interesting and it's text support might have been adequate but the egg
>>> was never published and seems abandoned.
>>>
>>>
>>> --
>>> Complexity is your enemy. Any fool can make something complicated.
>>> It is hard to keep things simple. - Richard Branson.
>>>
>>
>


--
Complexity is your enemy. Any fool can make something complicated.
It is hard to keep things simple. - Richard Branson.


--
--
Complexity is your enemy. Any fool can make something complicated.
It is hard to keep things simple. - Richard Branson.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]