From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!aioe.org!.POSTED!not-for-mail From: "Dmitry A. Kazakov" Newsgroups: comp.lang.ada Subject: Re: Gtkada, Gtkada_Builder.Add_From_String problem. Date: Mon, 8 Aug 2016 18:01:45 +0200 Organization: Aioe.org NNTP Server Message-ID: References: <317c7c35-7260-4b0a-9615-b8616c87dfdc@googlegroups.com> <995dcf3b-cc66-4179-8922-1a0b0d71d68a@googlegroups.com> NNTP-Posting-Host: xelDFTENDI+dlkJFd2Ot2w.user.gioia.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Complaints-To: abuse@aioe.org User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 X-Notice: Filtered by postfilter v. 0.8.2 Xref: news.eternal-september.org comp.lang.ada:31321 Date: 2016-08-08T18:01:45+02:00 List-Id: On 2016-08-08 16:54, George J wrote: > And for " never use GLADE or XML " : i don't know how to make > beautiful and understandeable GUI with Ada in other way. Could you > suggest something? It is not Ada specific. GTK is designed with widgets having no fixed layout in mind. There is a complex mechanism how children widgets communicate with the parameters in order to obtain their sizes. A GUI builder does not work well in this environment. It does not work well even when widgets are fixed, e.g. Win32 GDI with MS resource editor. Then GTK is permanently under incompatible changes. GLADE is poorly maintained and never catches up with the changes. All this makes GLADE programs practically unmaintainable. Just create widgets and put them into containers (boxes, grids, tables) from the program. Always create your specific widgets by deriving from existing ones (usually containers) and doing initialization in Initialize, which you call from Gtk_New. Use GTK signals and properties. You can define new signals and properties for your widgets when necessary. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de