Talk About Network

Google


Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > Java GUI > Re: Cross platf...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 2 of 3 Topic 9651 of 10019
Post > Topic >>

Re: Cross platform Java GUI design

by tar@[EMAIL PROTECTED] (Thomas A. Russ) Apr 21, 2008 at 10:33 AM

"matthewoconnor1982@[EMAIL PROTECTED]
" <matthewoconnor1982@[EMAIL PROTECTED]
>
writes:

> Hi
> 
> We have been working on a Mac version of a java based desktop video
> tagging product, and are coming slightly unstuck on UI design. We've
> changed the UI and I'd be really interested/grateful to get your
> feedback, comments and suggestions for improvement.
> 
> I'll elaborate a bit here to explain where we are at. This was
> originally written as a Windows product,  but was picked up by Apple.
> As I'm sure you'll recognise, its written in Java and as such will
> naturally suffer in comparison to other native Mac products in the
> video arena. The plan is to rewrite in Cocoa, but commercially
> speaking, we need a bit more traction with what we've got to justify
> the cost, and obviously to ensure the improved user logic and ease of
> use are correct before we green light the rewriting.
> 
> The thinking is that if the design is right for the Mac, we can
> replicate if for the PC.
> 
> So I'm effectively asking you how to cosmetically enhance YourView-
> written in Java- to appeal to a Mac audience with a view to ****ting
> that to Windows.

Well, the most challenging thing, as far a Java applications ****ted to
Windows is concerned, is to get the menu setup correct.  There are a
number of differences, which range from the trivial ("Preferences..." on
the Mac, "Preferences" on Windows), to more fundamental:  A single,
application-wide menu.

There is information about ****ting available on the Mac developers site,
as well as other Java-related web site.  Apple, in particular, has some
sample code and Adapter cl***** to make this a bit easier:


<http://developer.apple.com/samplecode/OSXAdapter/index.html>

<http://developer.apple.com/do***entation/Java/Conceptual/Java14Development/04-JavaUIToolkits/JavaUIToolkits.html#//apple_ref/doc/uid/TP40001901-SW1>

<http://developer.apple.com/do***entation/Java/Conceptual/Java14Development/07-NativePlatformIntegration/NativePlatformIntegration.html#//apple_ref/doc/uid/TP40001909>



The open-source VassalEngine (http://www.vassalengine.org/)
project has
been working on getting Mac-style menus to work, but it has proven
rather trickier than Apple's do***entation would suggest.  The hard part
is that if you use multiple JFrames in your application, you have to
make sure they all have a JMenuBar that has the same content -- but it
has to be a different object, since menu bars can't be shared.  There
were also some issues related to dialogs as well that were problematic.
It has pretty much required a re-write of the entire menu-handling
system for that particular application in order for it to work properly.

There are also other behavioral aspects, such as Mac applications
remaining active and running, even if their last window has been
closed.  You need to quit the application to get it to go away, not just
close all the windows.

> There are aspects that are work in progress- the star ratings you see
> will appear as just 1 star with a dropdown to represent the 5, and the
> media controls are not the finished article to name a couple- again,
> hit me with suggestions on this one, either on list or PM
> 
> The screenshots can be found here- this is the YourView classifier
> (where the tagging takes place) :
> 
> http://yourview.tv/images/YourViewplayer.tiff

Well, there isn't anything that seems out of the ordinary here.  Except
that we don't see where the menu is.

The hard part is that the Mac experience is not only a particular visual
look, but a method of operation that is in many ways different from
windows.  Some of these differences are rather subtle, so you might not
even think of them at first.  For example, on a Mac, you can open
do***ents in a program (running or not) by dragging them to an icon on
the dock.  In windows, you can't drop do***ents on task bar tabs, you
have to actually drag them onto an open window of the application.

On Macs many things are moved by dragging and (except for text), not by
cut-and-paste.  This is particularly true of moving or copying files.
The copy-and-paste method from Windows seems really foreign to me as a
Mac user.

Mac users tend to work with more open windows at once.  On windows, the
use of full-screen windows is more common.

Finally, you should avoid, as much as possible, the use of modal
dialogs.  This is not really a Mac-specific thing, but non-modal dialogs
are much friendlier from a user perspective than modal dialogs.  They
are harder to implement, but users like them better.

I would also make sure to look at the Human Interface Guidelines from
Apple:

<http://developer.apple.com/do***entation/UserExperience/Conceptual/OSXHIGuidelines/OSXHIGuidelines.pdf>

and I would also recommend reading some of Bruce Tognazzini's columns:

<http://www.asktog.com/>







-- 
Thomas A. Russ,  USC/Information Sciences Institute
 




 3 Posts in Topic:
Cross platform Java GUI design
"matthewoconnor1982@  2008-04-21 08:54:20 
Re: Cross platform Java GUI design
tar@[EMAIL PROTECTED] (T  2008-04-21 10:33:11 
Re: Cross platform Java GUI design
"matthewoconnor1982@  2008-04-22 03:39:27 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Wed Dec 3 21:17:10 CST 2008.