April 25, 2005
What does this mean / do  :

      this ~= (splitter = new Splitter(true));

?
"Andrew Fedoniouk" <news@terrainformatica.com> wrote in message
news:d4jon5$2r9u$1@digitaldaemon.com...
> Hi, Alex,
>
> > may we get the code of the demo to see how it works?
>
> main.d is attached to the post
>
>
>


April 25, 2005
On Tue, 26 Apr 2005 00:07:13 +0200, Charlie <charles@jwavro.com> wrote:

> What does this mean / do  :
>
>       this ~= (splitter = new Splitter(true));
>
> ?
> "Andrew Fedoniouk" <news@terrainformatica.com> wrote in message
> news:d4jon5$2r9u$1@digitaldaemon.com...
>> Hi, Alex,
>>
>> > may we get the code of the demo to see how it works?
>>
>> main.d is attached to the post
>>
>>
>>
>
>

I think it just adds the seperator to the big (list-)box in the left? ("this ~= uiObject" seems to add an object to the window)

Alex

-- 
huh? did you say something? :o
April 25, 2005
Ahh ok, calling Window's opCatAssign , just looked a little scary at first :).

Charlie


"Alexander Panek" <alexander.panek@brainsware.org> wrote in message news:op.sps6vqyly2yy8c@chello080109082145.3.15.vie.surfer.at...
> On Tue, 26 Apr 2005 00:07:13 +0200, Charlie <charles@jwavro.com> wrote:
>
> > What does this mean / do  :
> >
> >       this ~= (splitter = new Splitter(true));
> >
> > ?
> > "Andrew Fedoniouk" <news@terrainformatica.com> wrote in message
> > news:d4jon5$2r9u$1@digitaldaemon.com...
> >> Hi, Alex,
> >>
> >> > may we get the code of the demo to see how it works?
> >>
> >> main.d is attached to the post
> >>
> >>
> >>
> >
> >
>
> I think it just adds the seperator to the big (list-)box in the left?
> ("this ~= uiObject" seems to add an object to the window)
>
> Alex
>
> --
> huh? did you say something? :o


April 25, 2005
Andrew Fedoniouk wrote:
> After loading and starting you should see this picture: http://terrainformatica.com/screenshots/harmonia.png

Too bad I'm not running Windows, looks pretty neat though. :) I also like the idea of separating the GUI structure from the source code.

One question: wouldn't it be an important goal to support XTHML
or XML instead of this old HTML-stuff before anyone starts using
Harmonia? XML really did the same with markup language parsing as D
did with c-stylish programming language parsing.

Jari-Matti
April 25, 2005
> btw, is/will there also (be) menu-support? (the MainMenu, as it`s called
> in C# and C afaik)

Yes,
MenuBar, Menu and PopupMenu are almost there.

Basic widget set includes:
Buttons: Button, CommandButton,  OptionBox, CheckBox.
Edit: EditBox (singleline), RichTextBox ( multiline editor, if I will have a
time)
Selector: ListBox, DDListBox, ComboBox.
Other: TreeView, Grid (if I will have a time)
Bars: ToolBar and StatusBar.
Containers: Splitter and Tabs.
Tooltips (plain and HTML tooltips) and HTML popups.

All controls are "windowless" - means that they are not using system widgets.

Overall pure D part is pretty clean. Example of real Splitter.d attached. "native" modules (4 items) are mess a bit.



"Alexander Panek" <alexander.panek@brainsware.org> wrote in message news:op.sps5xwt8y2yy8c@chello080109082145.3.15.vie.surfer.at...
> On Mon, 25 Apr 2005 23:50:28 +0200, Andrew Fedoniouk <news@terrainformatica.com> wrote:
>
>> Hi, Alex,
>>
>>> may we get the code of the demo to see how it works?
>>
>> main.d is attached to the post
>>
>>
>>
>
> it also looks great! =)
>
> btw, is/will there also (be) menu-support? (the MainMenu, as it`s called
> in C# and C afaik)
>
> Alex
>
> -- 
> huh? did you say something? :o



April 26, 2005
On Mon, 25 Apr 2005 16:59:27 -0700, Andrew Fedoniouk wrote:


[snip]

> All controls are "windowless" - means that they are not using system widgets.

Does that mean you are doing the low-level rendering in D? And is that
using Regions, or just simple pixel draws. How are you handling the Z-order
issues?

-- 
Derek
Melbourne, Australia
26/04/2005 10:05:00 AM
April 26, 2005
"How are you planning on licensing Harmonia when you release it?"

Free. Just copuple of wishe like: a) to not remove copyright notices. b) to
place a link to our site on
derived products.


"Brad Beveridge" <brad@somewhere.net> wrote in message news:d4jpdc$2rui$1@digitaldaemon.com...
> Andrew Fedoniouk wrote:
>> Hi, Alex,
>>
>>
>>>may we get the code of the demo to see how it works?
>>
>>
>> main.d is attached to the post
> Very clean code - I like it!  Normally I hate programming GUI apps because the APIs suck.  Your API looks very nice and clean.  How are you planning on licensing Harmonia when you release it?
>
> Brad


April 26, 2005
> Does that mean you are doing the low-level rendering in D? And is that
> using Regions, or just simple pixel draws. How are you handling the
> Z-order
> issues?

I don't know what "low level" means here.
Nothing spectacular there in fact. All drawing done
through Graphics object (attached).
All target platforms have correspondent native*** function implemented.
This Graphics is a common denominator for all GUI platforms.

There are no Regions as a separate entity. Just
pair of PushClip/PopClip.

There are plans to create GraphicsEx based on http://www.antigrain.com/ but in next version.

Andrew.



"Derek Parnell" <derek@psych.ward> wrote in message news:1fvlwk767kij4.1delnx3s7y2ns.dlg@40tude.net...
> On Mon, 25 Apr 2005 16:59:27 -0700, Andrew Fedoniouk wrote:
>
>
> [snip]
>
>> All controls are "windowless" - means that they are not using system widgets.
>
> Does that mean you are doing the low-level rendering in D? And is that
> using Regions, or just simple pixel draws. How are you handling the
> Z-order
> issues?
>
> -- 
> Derek
> Melbourne, Australia
> 26/04/2005 10:05:00 AM



April 26, 2005
> Too bad I'm not running Windows, looks pretty neat though. :) I also like the idea of separating the GUI structure from the source code.

It will be a port to Linux and Mac.

> One question: wouldn't it be an important goal to support XTHML
> or XML instead of this old HTML-stuff before anyone starts using
> Harmonia? XML really did the same with markup language parsing as D
> did with c-stylish programming language parsing.

In fact parser supports XML only with minor SGMLism:
attribute values which comply to SGML TOKEN production
can be used without "". So <td colspan=1> and <td colspan="1">
are equivalent. If you don't want first case then you can use second
case only. Anyway it is not strictly speaking HTML - very close - yes,
but not exactly. Intention is to support HTML 3.2 with addons
suitable for form layout e.g. vertical alignment which standard
HTML up to propsed XHTML 2.0 does not have.

Andrew.


"Jari-Matti Mäkelä" <jmjmak@utu.fi.no.sp.am> wrote in message news:d4jqq7$2t8n$1@digitaldaemon.com...
> Andrew Fedoniouk wrote:
>> After loading and starting you should see this picture: http://terrainformatica.com/screenshots/harmonia.png
>
> Too bad I'm not running Windows, looks pretty neat though. :) I also like the idea of separating the GUI structure from the source code.
>
> One question: wouldn't it be an important goal to support XTHML
> or XML instead of this old HTML-stuff before anyone starts using
> Harmonia? XML really did the same with markup language parsing as D
> did with c-stylish programming language parsing.
>
> Jari-Matti


April 26, 2005
this ~= (splitter = new Splitter(true));
is a:

splitter = new Splitter(true); // adds vertical splitter - "resizeable"
divider between two widgets
this ~= splitter; // adds the splitter to the container - 'this' is window
instance.

There are three main classes:

Widget - rectangular entity capable to receive events.
Widgets: Widget -  container of widgets, has opCatAssign (~=), opApply & co.
Window: Widgets - OS window (frame), widget container by itself.

All other things are just derivations from these "three W".
E.g. Splitter : (is a) Widgets.

Andrew.

"Alexander Panek" <alexander.panek@brainsware.org> wrote in message news:op.sps6vqyly2yy8c@chello080109082145.3.15.vie.surfer.at...
> On Tue, 26 Apr 2005 00:07:13 +0200, Charlie <charles@jwavro.com> wrote:
>
>> What does this mean / do  :
>>
>>       this ~= (splitter = new Splitter(true));
>>
>> ?
>> "Andrew Fedoniouk" <news@terrainformatica.com> wrote in message
>> news:d4jon5$2r9u$1@digitaldaemon.com...
>>> Hi, Alex,
>>>
>>> > may we get the code of the demo to see how it works?
>>>
>>> main.d is attached to the post
>>>
>>>
>>>
>>
>>
>
> I think it just adds the seperator to the big (list-)box in the left? ("this ~= uiObject" seems to add an object to the window)
>
> Alex
>
> -- 
> huh? did you say something? :o