May 27, 2005
On Fri, 27 May 2005 12:51:53 -0500, TechnoZeus wrote:

> Does anyone know if there are any plans to eventually have native Windows support in the D language?

Yes. I have plans to port my Windows development library to D. It only supports the Windows 32 API and is not cross platform. And it provides high level interface to the API while still allowing direct API calls in your application.

-- 
Derek Parnell
Melbourne, Australia
28/05/2005 8:04:13 AM
May 27, 2005
"Brad Beveridge"wrote:
> Andrew Fedoniouk wrote:
> <snip>
>
> Andrew - if you don't mind me summarising - you are saying that:
> As long as your app does useful work, and the UI is intuitive - and let's
> face it most UI's are more or less the same - then it doesn't matter that
> it does or doesn't look like the native platform?

Exactly! Moreover: pretty frequently "nativeness" of look-n-feel
is just a stopper. E.g. application:
http://www.evernote.com/en/images/EN-screenshot-8-full.gif
*must* look different. It uses idiom of endless tape with notes
(HTML and free hand) which you cannot describe in terms of
OS widgets. I will say also: it is using  HWNDs on Windows
and this is... I'd better stay silent here.

>
> That is a very interesting view - I will have to take note of how many apps I run that use "non standard" UI elements.  I hadn't thought about it before, but I thinkt that you are completly correct.  Even Apple, who are usually very strict on UI, have now got multiple different looks to their application.

:)

Microsoft Office,
WinAmp/MediaPlayer,
MSN Messenger,
Netscape/Opera browsers.
        FireFox is pretending to be native but
        it does not and this is bad (small details
        missed, heavvy, slow, etc.).
        It would be much more better if its UI will
        be implemented natively on Win32 or just
        completely different.
All Adobe products,
All Symantec/McAfee consumer products.
KlipFolio (http://www.serence.com/images/content/screens/kf-2.jpg)

And only one really native Win32 application I am using
I wrote by myself:
http://blocknote.net/images/screenshot.jpg
:)))))))



>
> I which case, Harmonia would be a good UI to choose :)

Oh, yeh! And the best one if D will run on mobile platforms.

> BTW, are you planning on allowing Harmonia to have multiple windows at some point in the future?

What do you mean under "multiple windows"?
You can create as much OS windows as you want now....
Or you mean MDI? MDI is a usability disaster (imo) -
you can show multiple documents in many and more
convenient ways to the user in Harmonia.

Andrew.



>
> Brad


May 27, 2005
"Andrew Fedoniouk" <news@terrainformatica.com>
> Exactly! Moreover: pretty frequently "nativeness" of look-n-feel
> is just a stopper. E.g. application:
> http://www.evernote.com/en/images/EN-screenshot-8-full.gif
> *must* look different. It uses idiom of endless tape with notes
> (HTML and free hand) which you cannot describe in terms of
> OS widgets.

EverNote looks like a great product! Is this something you're involved with, Andrew?


May 27, 2005
> Oh, yeh! And the best one if D will run on mobile platforms.
> 
Well, I can tell you that D has already run on at least one mobile platform.  The last place I worked was a linux house specialising in ARM based systems.  We cross compiled GDC to run on ARM linux, and build a small test app to make sure D and Phobos were behaving.  I guess that strictly speaking, the board wasn't mobile - it didn't actually have a battery on the prototype units we had :)

If only getting tool chains to work with PocketPC were so easy ;)

Brad
May 27, 2005
"Kris" <fu@bar.com> wrote in message news:d7877i$2b97$1@digitaldaemon.com...
>
> "Andrew Fedoniouk" <news@terrainformatica.com>
>> Exactly! Moreover: pretty frequently "nativeness" of look-n-feel
>> is just a stopper. E.g. application:
>> http://www.evernote.com/en/images/EN-screenshot-8-full.gif
>> *must* look different. It uses idiom of endless tape with notes
>> (HTML and free hand) which you cannot describe in terms of
>> OS widgets.
>
> EverNote looks like a great product! Is this something you're involved
> with,
> Andrew?

Thanks. Concept is just perfect.
UI implementation.... we are working on that :))

....I guess TerraInformatica should be in "Help/About..."... yes, it is there.

I wish D working on mobiles.... :(

Andrew.


May 27, 2005
I disagree.  I hate programs that try to have their own look, and avoid using them unless they are the only thing that opens PDFs, DOCs, etc... like most of the examples you gave.

I tried Eclipse, and it doesn't feel native.  It's not the look, it's the feel.

-[Unknown]


>>In graphical user interface design, a HUGE part of making something USABLE is
>>NOT forcing the user to learn something new unless absolutely nessecary. Making
>>the interface different from the native look and feel, even as small of a change
>>as changing an icon in a scroll bar, can make the application less usable on
>>that platform.
> 
> 
> I would agree, but...
> 
> There are two different types of UI we are facing these days:
> 1) "native" and 2) Web UI.
> 
> If you will count sites or online Web applications with number of
> native applications in active use now then you will find that Web apps
> are overwhelming latter in magnitude of times.
> 
> I am pretty sure that to create really 'native' application - a good citizen
> of target platform you should use tools and languages of the platform
> designed for that (E.g. Objective C for Mac and NextStep).
> There is no compromises here. Dixi.
> 
> Generally speaking if your application is not an OS extender like
> e.g. name space extension widget/driver on Windows then you are free
> to choose your own style. Main requirement - your app should
> be useful and its UI must follow metaphor of its main function and
> users will accept it on any platform and in any form.
> 
> Take a look on Eclipse: even it is using native widgets it is
> a foreigner on Mac:
> http://developer.apple.com/tools/images/eclipse_plugin.jpg
> For example take a look on scrollbars there - to be
> ergonomic they should be implemented as less invisible as possible
> in such kind of UI - productive IDEs.
> 
> Take a look on Microsoft Office - it is *absolutely* non-native
> Windows UI.
> http://www.winsupersite.com/images/reviews/office11_10.gif
> Pay attention on Header of Inbox view ("Arranged by Date") - this
> is the only one "native" part left from native widget set of Windows
> on this screen. And it looks as just a UI bug, isn't it?
> 
> Do you think you need native widget set for something like this?:
> http://www.activewin.com/reviews/software/utils/v/vscan5d/images/VS5Big.jpg
> 
> Again, there are applications which *must* look as native as possible.
> But there are 90% of others which would just win if they will take off the
> uniform they are wearing now.
> 
> Another example:
> 
> Take a look on the app I am participating in creation:
> http://www.evernote.com/en/products/evernote/
> UI is not perfect yet but in any case this application *must not* follow
> standard native platform look.
> 
> IMHO, of course.
> 
> Andrew.
> 
> 
> "Trevor Parscal" <Trevor_member@pathlink.com> wrote in message news:d77uke$24r0$1@digitaldaemon.com...
> 
>>>I would hope that a better solution would be to use/invent a D specific
>>>GUI library that was cross-platform.  Since we have a whole new
>>>language, if you're going to write a GUI style wrapper it may as well be
>>>able to run on more than just Windows.
>>>I would suggest that either wxWindows or Gtk+ would make good backends
>>>for a D UI wrapper.
>>>
>>>Brad
>>
>>I have to take issue with this one. Cause if you do make a GUI wrapper, how
>>native the wrapper looks makes a big deal, which than of course limits the
>>wrapper to the lowest denominator of the platforms it supports. So if there is
>>no DatePicker on OSX, than you have to either fake one, or not use it on ANY
>>platform.
>>
>>I also see it from the Gtk+ side, where native style is not such a big deal, and
>>you can theme your own app to be the same everywhere, but for that to be THE gui
>>library of D seems limited too. Why?
>>
>>In graphical user interface design, a HUGE part of making something USABLE is
>>NOT forcing the user to learn something new unless absolutely nessecary. Making
>>the interface different from the native look and feel, even as small of a change
>>as changing an icon in a scroll bar, can make the application less usable on
>>that platform.
>>
>>Than there is the other extreme. The one that I am admitedly taking. Using
>>something like OpenGL to make a next generation gui. This way I am creating a
>>new experience entirely, which causes a learning curve, but is in no way
>>limiting from platform to platform... Blender is an application that proves this
>>design can be successful. www.blender.org
>>
>>The good thing is, you can choose which way you want to go already, and D is in
>>it's early stages. Perhaps D doesn't need a gui toolkit that is in anyway more
>>associated with D than any other.
>>
>>Just my thoughts.
>>
>>Thanks,
>>Trevor Parscal
>>www.trevorparscal.com
>>trevorparscal@hotmail.com 
> 
> 
> 
May 27, 2005
> I hate programs that try to have their own look, and avoid using them ...

WinAmp, now playing, Status Quo: "Oh-oo-oh you're in the army, in the army now".

:))) (WinAmp. sic!)

Russian anekdote:
Drill-sergeant: "If you, civil, think that you are so wise
then why aren't you marching in the order?"
I am not sure about my translation but it should be close.

To be serious:

Name applications you are using which you consider as good from your point?

No offence implied, honestly.
As many people as many opionions. That is true and good.

Andrew.


"Unknown W. Brackets" <unknown@simplemachines.org> wrote in message news:d7892e$2coi$1@digitaldaemon.com...
>I disagree.  I hate programs that try to have their own look, and avoid using them unless they are the only thing that opens PDFs, DOCs, etc... like most of the examples you gave.
>
> I tried Eclipse, and it doesn't feel native.  It's not the look, it's the feel.
>
> -[Unknown]
>
>
>>>In graphical user interface design, a HUGE part of making something
>>>USABLE is
>>>NOT forcing the user to learn something new unless absolutely nessecary.
>>>Making
>>>the interface different from the native look and feel, even as small of a
>>>change
>>>as changing an icon in a scroll bar, can make the application less usable
>>>on
>>>that platform.
>>
>>
>> I would agree, but...
>>
>> There are two different types of UI we are facing these days:
>> 1) "native" and 2) Web UI.
>>
>> If you will count sites or online Web applications with number of native applications in active use now then you will find that Web apps are overwhelming latter in magnitude of times.
>>
>> I am pretty sure that to create really 'native' application - a good
>> citizen
>> of target platform you should use tools and languages of the platform
>> designed for that (E.g. Objective C for Mac and NextStep).
>> There is no compromises here. Dixi.
>>
>> Generally speaking if your application is not an OS extender like
>> e.g. name space extension widget/driver on Windows then you are free
>> to choose your own style. Main requirement - your app should
>> be useful and its UI must follow metaphor of its main function and
>> users will accept it on any platform and in any form.
>>
>> Take a look on Eclipse: even it is using native widgets it is
>> a foreigner on Mac:
>> http://developer.apple.com/tools/images/eclipse_plugin.jpg
>> For example take a look on scrollbars there - to be
>> ergonomic they should be implemented as less invisible as possible
>> in such kind of UI - productive IDEs.
>>
>> Take a look on Microsoft Office - it is *absolutely* non-native
>> Windows UI.
>> http://www.winsupersite.com/images/reviews/office11_10.gif
>> Pay attention on Header of Inbox view ("Arranged by Date") - this
>> is the only one "native" part left from native widget set of Windows
>> on this screen. And it looks as just a UI bug, isn't it?
>>
>> Do you think you need native widget set for something like this?: http://www.activewin.com/reviews/software/utils/v/vscan5d/images/VS5Big.jpg
>>
>> Again, there are applications which *must* look as native as possible.
>> But there are 90% of others which would just win if they will take off
>> the
>> uniform they are wearing now.
>>
>> Another example:
>>
>> Take a look on the app I am participating in creation:
>> http://www.evernote.com/en/products/evernote/
>> UI is not perfect yet but in any case this application *must not* follow
>> standard native platform look.
>>
>> IMHO, of course.
>>
>> Andrew.
>>
>>
>> "Trevor Parscal" <Trevor_member@pathlink.com> wrote in message news:d77uke$24r0$1@digitaldaemon.com...
>>
>>>>I would hope that a better solution would be to use/invent a D specific
>>>>GUI library that was cross-platform.  Since we have a whole new
>>>>language, if you're going to write a GUI style wrapper it may as well be
>>>>able to run on more than just Windows.
>>>>I would suggest that either wxWindows or Gtk+ would make good backends
>>>>for a D UI wrapper.
>>>>
>>>>Brad
>>>
>>>I have to take issue with this one. Cause if you do make a GUI wrapper,
>>>how
>>>native the wrapper looks makes a big deal, which than of course limits
>>>the
>>>wrapper to the lowest denominator of the platforms it supports. So if
>>>there is
>>>no DatePicker on OSX, than you have to either fake one, or not use it on
>>>ANY
>>>platform.
>>>
>>>I also see it from the Gtk+ side, where native style is not such a big
>>>deal, and
>>>you can theme your own app to be the same everywhere, but for that to be
>>>THE gui
>>>library of D seems limited too. Why?
>>>
>>>In graphical user interface design, a HUGE part of making something
>>>USABLE is
>>>NOT forcing the user to learn something new unless absolutely nessecary.
>>>Making
>>>the interface different from the native look and feel, even as small of a
>>>change
>>>as changing an icon in a scroll bar, can make the application less usable
>>>on
>>>that platform.
>>>
>>>Than there is the other extreme. The one that I am admitedly taking.
>>>Using
>>>something like OpenGL to make a next generation gui. This way I am
>>>creating a
>>>new experience entirely, which causes a learning curve, but is in no way
>>>limiting from platform to platform... Blender is an application that
>>>proves this
>>>design can be successful. www.blender.org
>>>
>>>The good thing is, you can choose which way you want to go already, and D
>>>is in
>>>it's early stages. Perhaps D doesn't need a gui toolkit that is in anyway
>>>more
>>>associated with D than any other.
>>>
>>>Just my thoughts.
>>>
>>>Thanks,
>>>Trevor Parscal
>>>www.trevorparscal.com
>>>trevorparscal@hotmail.com
>>
>> 

May 28, 2005
Visual Studio .NET - while it has many Office style widgets, it by and large uses the general look and feel of Windows.

VMware.

Firefox, Thunderbird (imho, native-ness on multiple plaforms is their clear strong point, whatever you say.)

Symantec Antivirus (corporate version, uses native UI.)

SmartFTP (not a perfect example.)

Ahead Nero (not a perfect example.)

TUGZip, WinZip, whatever you prefer.

MySQL and its applications.

These all look good, work well, and are easy to use.  They feel right, they respect my Windows preferences.

A good example of a bad one: Cisco's VPN client.  Ugh, the feel of that program.  TortoiseCVS too (which uses native widgets, but badly imho), althought I only use it for the icons in Explorer.

And although you asserted otherwise, Adobe Photoshop (which I also use) uses a lot of native widgets which is a good thing.  It uses a lot of custom ones, but that's a neccessity - I never said that shouldn't be done.

-[Unknown]


> Name applications you are using which you consider as good from your
> point?
> 
> No offence implied, honestly.
> As many people as many opionions. That is true and good.
> 
> Andrew.
May 28, 2005
Unless it's a really useful app, with a very powerful purpose, like 3D Studio Max for instance, than being as close to the native style as possible is usually a good thing.

Little utilities, I feel, are best made native looking. I use Nero, not one of those "themed" cd burners, cause I can't take them seriously.

Media players and instant messaging like www.trillian.cc are themable, and often times people chose themes that aren't native, but there always seems to be a native theme, so at least there is an option for the user.

All in all, usability is not something that most software developers pay any attention to at all. I know, I am a usability consultant. Even big companies with huge teams have a hard time making software usable, so they hire specialists, (outsourcing or in house) to help make things better.

All in all, I think that neither Windows, Linux, or Mac (in order of popularity on the desktop) have a perfect UI look and feel, but if a user accustoms themselves to it, forcing them to learn your "new" way of doing things is like making a Mac user use Windows; they will be out of their element for a while.

Like I said though, a big program, like one you can take a class for... It doesnt matter as long as it's usefull, cause quite frankly you are going to have to learn so much, and there is simply not enough controls in a basic gui kit on any platform to make a REAL program from.

My 2 cents.. plus some.

Thanks,
Trevor Parscal
www.trevorparscal.com
trevorparscal@hotmail.com
May 28, 2005
> Visual Studio .NET - while it has many Office style widgets, it by and large uses the general look and feel of Windows.

Visual Studio.Net uses old set of Office UI widgets (a.k.a flat controls)
All controls in this foundation are custom made and has non Windows
look-n-feel e.g. massive use of mouse-over effects.
If you are in XP then try to switch from XP theme to Classic.
Visual Studio.Net just ignores your preferences.

Seems like I don't understand your "general look and feel of Windows".
Or you mean just color schema? Or window layout (which is pretty
much IBMs CUI )?

>
> VMware.

Ah this beauty of Windows dialogs: http://www.vmware.com/products/desktop/img/ws5_large7.gif :)

>
> Firefox, Thunderbird (imho, native-ness on multiple plaforms is their clear strong point, whatever you say.)

Not point but intention. As point cannot be reached so straightforward.

Small detail: Standard tabs in Windows
http://www.mozilla-firefox.com/images/tab-menu.png
were not designed for use in windows-frames.
They are for dialogs only. It would be way better if
Firefox use different look for them.

>
> Symantec Antivirus (corporate version, uses native UI.)

I'll trust you, never seen it.
This one:
http://www.softpedia.com/screenshots//Norton-AntiVirus-Virus-Definitions_1.png
I know.

>
> SmartFTP (not a perfect example.)
>
> Ahead Nero (not a perfect example.)
>
> TUGZip, WinZip, whatever you prefer.

WinZip is a bad example too.
The best from UI/usability perspective is MS builtin
zip support - it shows ZIP files transparently -
as a Shell Namespace Extension. But not enough
functionality.
Good example in fact - native look and feel but not
enough features and completely "not cute" :)

>
> MySQL and its applications.

??? Command line interface ??? Where is GUI there?

>
> These all look good, work well, and are easy to use.  They feel right, they respect my Windows preferences.

At least Visual Studio .NET does not respect your Windows preferences.
In fact Microsoft is a biggest abuser of their own UI design recomendations.
No one major product suite is not using them. MS Money,
VS, MSN, Office - all of them has their own and distinct GUI style.

>
> A good example of a bad one: Cisco's VPN client.  Ugh, the feel of that program.  TortoiseCVS too (which uses native widgets, but badly imho), althought I only use it for the icons in Explorer.

I lost you here completely.
http://www.tortoisecvs.org/screenshot1.png
Tortoise clients made as Namespace Extensions.
This is 120% native look-n-feel.
What do you mean?

Andrew.