<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); --darkreader-inline-color:#e8e6e3;" data-darkreader-inline-color="">
I skipped the Lua part in my binding because I think it will not needed for Free Pascal. Don't know if we would have any use for it.<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); --darkreader-inline-color:#e8e6e3;" data-darkreader-inline-color="">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); --darkreader-inline-color:#e8e6e3;" data-darkreader-inline-color="">
About 1: Could we do canvas drawing with IUPCD? It use CD (Canvas Draw) graphic library, also developed by the same developer. Note that IUPCD is shipped with IUP itself, we don't need to install a separate library CD.</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); --darkreader-inline-color:#e8e6e3;" data-darkreader-inline-color="">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); --darkreader-inline-color:#e8e6e3;" data-darkreader-inline-color="">
About 2: I don't know about that. But I think there should be way to do absolute layout with IUP. Could you check it again? I have never use absolute position with IUP, though.</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); --darkreader-inline-color:#e8e6e3;" data-darkreader-inline-color="">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); --darkreader-inline-color:#e8e6e3;" data-darkreader-inline-color="">
I don't want it to replace GTK2 interface. But the GTK3 interface is definitely bad. I want to use IUP as an abstract layer on top of GTK. IUP, something not changed much, ontop of GTK, something changes rapidly. It will save us a lot of maintenance job in
 the future. It's my reasoning.<br>
</div>
<div id="appendonsend"></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); --darkreader-inline-color:#e8e6e3;" data-darkreader-inline-color="">
<br>
</div>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="divRplyFwdMsg" dir="ltr"><font style="font-size: 11pt; --darkreader-inline-color:#e8e6e3;" data-darkreader-inline-color="" face="Calibri, sans-serif" color="#000000"><b>From:</b> lazarus <lazarus-bounces@lists.lazarus-ide.org> on behalf of Michael
 Van Canneyt via lazarus <lazarus@lists.lazarus-ide.org><br>
<b>Sent:</b> Tuesday, April 14, 2020 6:08 PM<br>
<b>To:</b> zeljko via lazarus <lazarus@lists.lazarus-ide.org><br>
<b>Cc:</b> Michael Van Canneyt <michael@freepascal.org><br>
<b>Subject:</b> Re: [Lazarus] Completely solve the GTK trouble</font>
<div> </div>
</div>
<div class="BodyFragment"><font size="2"><span style="font-size:11pt">
<div class="PlainText"><br>
<br>
On Tue, 14 Apr 2020, zeljko via lazarus wrote:<br>
<br>
> On 4/14/20 10:07 AM, jiaxing ruan via lazarus wrote:<br>
>> Do you need tester? I can help with testing. But anything needs more <br>
>> knowledge I afraid I can't.<br>
>> <br>
>> Anyway, did we at any time found it's tired to catch up with GTK? May be <br>
>> we could keep the current GTK3 interface. But my suggestion also deal <br>
>> with GTK4, GTK5... One IUP interface, we could choose the appropriate <br>
>> GTK version. IUP currently supports both GTK2 and GTK3 and the API still <br>
>> the same. What I appreciate IUP is it focuses on a stable API. As I <br>
>> said, programs written for IUP 3.15 still compile and run fine with IUP <br>
>> 3.27. Investing on an IUP interface rather than GTK4, GTK5... interface <br>
>> is the most reasonable way to go.<br>
><br>
> Never heard about IUP, but maybe we can get ideas for various gtk3 <br>
> implementations from IUP. Maybe you should provide direct link to IUP <br>
> library, not to your h2pas conversion.<br>
<br>
See<br>
<a href="http://webserver2.tecgraf.puc-rio.br/iup/">http://webserver2.tecgraf.puc-rio.br/iup/</a><br>
<br>
I looked into it. <br>
Seems to me that a small OOP wrapper around the iup headers is a good idea.<br>
The LUA bindings add some nice ideas, it looks like what we know as properties.<br>
<br>
What does worry me in this widgetset is that there are 2 things missing:<br>
1. a canvas for regular controls. There is a canvas, but is a separate control,<br>
   and I'm not 100% sure whether that is a requirement for a LCL widgetset.<br>
2. No absolute positioning, which does not go well with the LCL. You need to<br>
use existing layouters.<br>
<br>
So for these reasons I am not yet sure it's a viable candidate for a new widgetset.<br>
Given that and the fact it adds it adds an additional layer, <br>
I would definitely not let it replace the existing GTK2/GTK3 interfaces.<br>
<br>
Michael.<br>
<br>
<br>
Michael.<br>
-- <br>
_______________________________________________<br>
lazarus mailing list<br>
lazarus@lists.lazarus-ide.org<br>
<a href="https://lists.lazarus-ide.org/listinfo/lazarus">https://lists.lazarus-ide.org/listinfo/lazarus</a><br>
</div>
</span></font></div>
</body>
</html>