Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×
Java Programming IT

New Desktop Features Of Next Java 283

bonch writes "Sun has posted the new desktop features of the next Java, codename Mustang. Improvements to Swing look and feel, OpenGL 2D renderer performance, AWT features such as the ability to add a tray/panel icon, and improved deployment capabilities."
This discussion has been archived. No new comments can be posted.

New Desktop Features Of Next Java

Comments Filter:
  • It's worth noting... (Score:5, Interesting)

    by AKAImBatman ( 238306 ) * <akaimbatman AT gmail DOT com> on Friday April 22, 2005 @03:16PM (#12316208) Homepage Journal
    ...that mustang is also the first Java version to be developed under an Open Source type model. The CVS is open to guests over on http://www.java.net, thus allowing for immediate feedback and bugfixes. It has been a real boon for the gaming community, as they've been able to direct several key performance features.
  • by chkorn ( 799133 ) on Friday April 22, 2005 @03:16PM (#12316210) Homepage
    Yeah! This is really something that should be made better.
    Always when I use some Swing based applications I'm remembered that the times of ugly GUI's aren't over yet.
    • by TiMac ( 621390 ) on Friday April 22, 2005 @03:32PM (#12316419)
      They are improving the Windows and GTK Look and Feel...but I'm hoping also that either Sun or Apple tackle the Mac OS X look and feel of Java apps.

      Sure, you can code Cocoa apps in Java and use Java in those ways...but pure Java executables programmed in Swing still lack the complete purity of Mac OS X. Apple ships tools in the Developer Tools to improve Java (like Jar Bundler) but the UI still isn't perfect.

      • by MassacrE ( 763 ) on Friday April 22, 2005 @03:41PM (#12316533)
        Personally, I'd be happier if they completely dropped swing support on the Mac ,or at least removed aqua L&F.

        There is a proliferation of really horrid java applications on the Mac because people don't understand that you cannot WORA and have GUI make sense. Users of different operating systems have different needs and expectations, even when they are equivalent 'types' of users with relatively equal computer experience.
        • you cannot WORA and have GUI make sense

          Care to elucidate? Why does Write Once Run Anywhere mean a GUI doesn't make sense? Are you referring to the major UI differences between MacOS and most others, like having the menus in the bar at the top of the screen? If you write your java apps properly, they completely conform with the MacOS UI conventions when run on a mac. If you don't write them properly or don't care, then they'll be awful on a mac even if they have jellybean buttons.

          Have a look at a larg
          • Well mostly because of user expectations based on the OS's gui conventions.

            For example Windows uses a File menu that always appears first and contains saive, load, and exit. Settings appear usually in the second menu called "Edit"

            Now on MyImaginaryOS I have the convention that the first menu is called "System". It contains program settings and exit the program. The second menu is called "Data". It contains the save, load, export to different format (which is not part of the save dialogue on my imaginary

            • Using the native LnF is not a problem, provided you let the layout manager do its job. The worst thing you can do is hardcode layout values. As for menu items and such, you can specify platform in your resources, and there's a way to make Swing apps put Swing menu items into the real Mac menu - somewhere on Apple there's a tech note that goes into more details on all these things.

              You can use the MacMetrics [oreilly.com] Metal theme I wrote to get an approximation of how things will be laid out under the MacL&F

  • alright.... (Score:3, Funny)

    by HTL2001 ( 836298 ) on Friday April 22, 2005 @03:17PM (#12316225)
    Who spilled the java in my Mustang??!
  • SubPixel Rendering (Score:5, Interesting)

    by aCapitalist ( 552761 ) on Friday April 22, 2005 @03:21PM (#12316286)
    It looks like they've finally addressed this issue, but I think Sun is a little late.

    Personally, I can deal with non-native look-n-feel, but when the fonts look like something circa 1988 on an Amiga, how can anyone take Swing seriously.

    I never understood why they couldn't use platform specific code for fonts, and if not possible then go into fallback mode and paint everything themselves.

    Swing has been a disaster. I believe it was the OTI guys (who now work on Eclipse and SWT) that told Sun not to go the route of "give me a handle to a brush and we'll paint everything ourselves", but some other group won that debate.

    And thank god for .NET/Mono being around to give Sun a little kick in the rear to get moving on things.
    • On the current version of Swing:

      label.setFont(new Font("dialog",Font.PLAIN,12));

      Obviously doesn't look as pretty as a regular anti-aliased font, but infinitely better than that disgusting bold font that is used by default.
    • by bnenning ( 58349 ) on Friday April 22, 2005 @08:40PM (#12319441)
      Swing has been a disaster. I believe it was the OTI guys (who now work on Eclipse and SWT) that told Sun not to go the route of "give me a handle to a brush and we'll paint everything ourselves", but some other group won that debate.

      Indeed. The implementation of AWT sucked, but it at least had the right idea: the host OS has facilities for drawing interface elements, so use them rather than reinventing the wheel. Apple's Swing L&F is halfway decent because they use native APIs to draw widgets, and according to the article Sun is now doing the same thing for Windows and Linux. Desktop Java would be in a much better state if they hadn't gotten sidetracked for years trying to make apps on every OS look identically bad.
    • I believe it was the OTI guys (who now work on Eclipse and SWT) that told Sun not to go the route of "give me a handle to a brush and we'll paint everything ourselves", but some other group won that debate.
      Strictly speaking, this approach can work very well. That's exactly how Qt handles things - and it's damn hard to tell a Qt app on Windows from a native one (not sure how things are on Mac, but judging by the screenshots, it's fine there as well).
  • by Assmasher ( 456699 ) on Friday April 22, 2005 @03:21PM (#12316289) Journal
    ...the next version.

    Not quite the same thing as "this is in the next version."
  • by kjeldor ( 146944 ) on Friday April 22, 2005 @03:41PM (#12316534)
    Where possible, we will add pointers

    Wow, the beginning of that sentence sure scared the hell out of me. In my opinion, asterisks should be for multiplication only.
  • Java & Longhorn (Score:2, Insightful)

    by slasho81 ( 455509 )
    I'm very excited with all the improvments Java is going through, but I'd hate to see it all being completely missed by the general public and web application developers if Microsoft won't include the JRE and Java Plug-in in Longhorn.

    Anyone knows what going on with this issue?
    • I doesn't matter. Most Java these day is at the middleware level running in application servers. Most desktop Java software will install the JRE you need for it in the installer program. Even internet Java applets can install the JRE you need. The JRE installed with Windows would be outdated in two months.
    • MS doesn't package it in XP now, does it? From the machines I've seen, I _think_ Dell/IBM/HP choose to install a JRE for their customers. Smaller whitebox shops are on their own I guess.
  • I would like to see three things:

    First, it seems like KDE/Qt has more momentum than GTK on the desktop. Qt apps look better and are more integrated with eachother. Suse is the dominant desktop Linux distro and Suse is KDE-oriented. I'm glad that Java is going to be using native GTK for rendering, but what I would really like to see is native Qt. Maybe they could create some kind of interface to make it easier to plug in different rendering systems? Maybe they could open source Java and let the community take care of it? Maybe they don't care because desktop Linux is only about 5% of the market anyway? But still, it's something I would like to see.

    The second thing they need is a "SwingLite", or some easier way to do common things. For example, it is very common to need a text field that allows the user to enter a number, but not text. Should be easy, right? This is the code I have to use to do it:

    formattedTextField.setFormatterFactory(new DefaultFormatterFactory(new NumberFormatter(NumberFormat.getIntegerInstance()) ));
    That's just wrong. I should be able to say:
    formattedTextField.setFormat("d+");
    or maybe:
    formattedTextField.setFormat(FormattedTextField.IN TEGER_ONLY);
    The above example, involving two different factory classes to just get the field to accept integers only, puts a high burden of knowledge on the programmer, and Swing is full of stuff like that. It's great that the power is there because I can write my own hierarchy of text formatting factories and objects that enforces correctly-entered Sandhi rules [wikipedia.org], but that doesn't come up very often, and what does come up very often is having to enter a plain old number, date, currency value, that kind of thing. And I'm just using this one example, but this kind of over-design is all over the place in Swing.

    The final problem that they have is putting emphasis on plugable look and feel. Application developers shouldn't get to decide the look and feel of their apps. That should be determined by the desktop environment. Pluggable look and feel is not a feature; it is a bug. It should be deprecated and removed.

    ----------
    Educational software [chiralsoftware.net]

    • "Suse is the dominant desktop Linux distro and Suse is KDE-oriented."

      No, it's not. Have you heard of "Novell Linux Desktop", the product that is intended to replace SuSE on the desktop? It's GNOME based, which is understandable because Novell also purchased Ximian.

      RHEL and Fedora are also GNOME-focused, as is Ubuntu.

      "Qt apps look better and are more integrated with eachother."

      According to whom? I personally love the look and feel of GTK+, and I don't think that there's any problem with integration.

      "The
    • by aCapitalist ( 552761 ) on Friday April 22, 2005 @04:33PM (#12317263)
      Despite the technical superiorty of Qt Sun will not use it to draw widgets because (A) Sun uses Gnome for its desktop and (B) the dual-licensing scheme of Qt.

      And I don't know where you get this information about KDE/Qt having more momentum. If anything, it's the other way around. Sun, RedHat, and Novell (the 3 biggest Linux shops) are all going with Gnome. Yeah, I know about Suse and KDE, but if you look at the resources being invested it's all Gnome/Mono.

      Until Trolltech gets bought out, the license issues surrounding Qt are unlikely to go away.
    • by Hulfs ( 588819 ) on Friday April 22, 2005 @05:03PM (#12317640)
      What's wrong with doing:
      new JFormattedTextField(NumberFormat.getIntegerInstanc e());
      Seems to work fine for me. Uses the default locale's integer formatter. See Sun's Tutorial [sun.com]
  • by FedeTXF ( 456407 ) on Friday April 22, 2005 @03:58PM (#12316805)

    I use many java desktop apps in my day to day tasks on my linux desktop. There is no better way to connect to multiple databases than Squirrel [sourceforge.net], No better way to code in Java than NetBeans [netbeans.org] and no better editor than JEdit [sf.net]

    I think Java 5 already has great desktop features like shared class data, and 2D acceleration for 2D acelerated hardware (which I don't have yet!).

    • and suggest Eclipse or IntelliJ as a better java IDE.

      • Eclipse on Linux is slow and bare bones Eclipse has way less features. I work with Eclipse on Windows at work since 2002 and it is great for teamwork (cvs support and all) but for my personal projects on Linux, NB gives a way better deal. I tested NB 4.1 and it is way better than 4.0. I drool for the profiler working on J2SE 5.0 soon. Besides at home I use java 5.0's new features which Eclipse only supports partially in the 3.1 milestones.
    • Really? Wow. Try using something like CiscoWorks. I used to use their native X application which worked great, was really fast, and I don't remember it ever crashing. Now I have to live with this complete turd of an application that runs like a dog on hardware 5x as fast as what the old X stuff ran better on, worry about which version of the JVM I've got loading the app because half the apps want a specific version, and have to restart the app because it crashes constantly. Maybe its not Java's fault, but t
  • What I want (Score:3, Interesting)

    by ToasterofDOOM ( 878240 ) <d.murphy.davis@gmail.com> on Friday April 22, 2005 @04:35PM (#12317297)
    Is stability, security, and more speed. OOo 2 beta is SLOW and most issues i have with it are Java related in some way.
  • Viva Java! (Score:2, Insightful)

    About time they started thinking about the desktop. Java rules the server, why not the client?

The Tao is like a glob pattern: used but never used up. It is like the extern void: filled with infinite possibilities.

Working...