|
Replies:
13
-
Last Post:
Oct 21, 2008 7:09 AM
by: mac_systems
|
|
|
|
|
|
|
Finally cleaned incubator area (mattnathan) + Demos
Posted:
Oct 15, 2008 4:52 AM
|
|
|
Well, it took me long enough but I've finally finished cleaning my incubator space (well as much as I'm willing to do anyway) so that it is more modular and I can easily add new projects and demo's to it.
I've provided a dependency graph for both the API and All modules. To read it simply follow the lines, for example in the API modules JXClock, JXInspectionPane, JXSlider and JXTimeline all depend on ScalableIcons and ScalableIcons depends on JXEffectPanel, Core, JXComponent and ScalePolicy, it takes a little getting used to (well it did for me anyway ;)).
I've provided IDEA module and project files for the projects, sorry it's just IDEA but I don't have the time required to keep up to date with Netbeans and Eclipse projects.
I've also taken the time to create runnable demos for (nearly) all modules which can be run independently. Note that some of the demos are extremely simple and don't really show off what can be done. I'm hoping to expand them to be a bit more complete and ready for prime-time.
Anyway here's a list of them all:
Components: JXClock - A simple clock in a graphical way. JXStopwatch - Based on the clock but adds stop watch functionality (requires console open to see the results). JXInspectionPane - Windows Vista style details panel (the bottom bit in the demo), supports multiple selections (see StackPolicy Compound Icon demo) JXTitledSeparator - JXComponent implementation of JXTitledSeparator JXTransitionPanel - Apply effects over time to move between screens
Painters: LensFlarePainter - A painter that acts like the lens-flare of a camera.
Effects - Real-time effects applied to the painting stack, in real time (note: this only affects the painting not the mouse event coordinates): BlurEffect - Apply blur to the component ColorFilterEffect - Apply colour filter to the component MaskEffect - Apply mask to the component RotationEffect - Apply rotation to the component ScaleEffect - Apply scale to the component ShearEffect - Apply shear to the component TranslucentEffect - Apply translucency to the component RippleEffect - Apply ripple to the component ParallelEffect - Apply effects in parallel to the component SerialEffect - Apply effects in serial to the component ShadowEffect - Apply shadow to the component ReflectionEffect - Apply reflection to the component MouseShadowEffect - Apply a shadow to the component as if the mouse was a light (doesn't work quite as expected)
Icons - Scalable icon implementation (sorry lame demos, I did have better ones but I've lost them :() Temp Icon - Simple icon for testing purposes Card Icon - An icon made up of card, like CardLayout. Good for animation Clip Icon - An icon that clips the source. Useful for providing single images which contain multiple icons (i.e. multiple states, or animation) Effect Icon - An icon that has an effect (same effect as in effects demos) applied to it Default Scalable Icon - Scalable icon that supports different icons at different sizes and provides lazy loading if required. OverlayPolicy Compound Icon - Compose icons on top of each other GridPolicy Compound Icon - Compose icons in a grid PilePolicy Compound Icon - Compose icons in a pile StackPolicy Compound Icon - Compose icons in a stack
Misc: RolloverManager - Provide roll-over support to any component
There were a few more demos that I didn't think were ready and I hope to improve on the Icon demos over time as they seem like the weakest to me.
What I'd really like is for people to see these demos and say 'hey I'd like that' and then I can work towards getting the code reviewed and maybe into SwingX core or another project if that's where it ends up.
Anyway, thanks for listening 
Matt
|
|
|
|
|
|
|
Re: Finally cleaned incubator area (mattnathan) + Demos
Posted:
Oct 15, 2008 7:52 AM
in response to: mattnathan
|
|
|
Hello,
just tried one Demo:
com.sun.deploy.net.FailedDownloadException: Ressource konnte nicht geladen werden: https://jdnc-incubator.dev.java.net/demos/mattnathan/modules/Core.jar at com.sun.deploy.net.DownloadEngine.actionDownload(Unknown Source) at com.sun.deploy.net.DownloadEngine.getCacheEntry(Unknown Source) at com.sun.deploy.net.DownloadEngine.getResourceCacheEntry(Unknown Source) at com.sun.deploy.net.DownloadEngine.getResourceCacheEntry(Unknown Source) at com.sun.deploy.net.DownloadEngine.getResource(Unknown Source) at com.sun.javaws.LaunchDownload.downloadJarFiles(Unknown Source) at com.sun.javaws.LaunchDownload.downloadEagerorAll(Unknown Source) at com.sun.javaws.Launcher.downloadResources(Unknown Source) at com.sun.javaws.Launcher.prepareLaunchFile(Unknown Source) at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source) at com.sun.javaws.Launcher.launch(Unknown Source) at com.sun.javaws.Main.launchApp(Unknown Source) at com.sun.javaws.Main.continueInSecureThread(Unknown Source) at com.sun.javaws.Main$1.run(Unknown Source) at java.lang.Thread.run(Unknown Source) ,
--- % ---
java.util.zip.ZipException: ZIP file must have at least one entry at java.util.zip.ZipOutputStream.finish(Unknown Source) at java.util.zip.DeflaterOutputStream.close(Unknown Source) at java.util.zip.ZipOutputStream.close(Unknown Source) at com.sun.deploy.net.HttpDownloadHelper.download(Unknown Source) at com.sun.deploy.cache.Cache.downloadResourceToCache(Unknown Source) at com.sun.deploy.net.DownloadEngine.actionDownload(Unknown Source) at com.sun.deploy.net.DownloadEngine.getCacheEntry(Unknown Source) at com.sun.deploy.net.DownloadEngine.getResourceCacheEntry(Unknown Source) at com.sun.deploy.net.DownloadEngine.getResourceCacheEntry(Unknown Source) at com.sun.deploy.net.DownloadEngine.getResource(Unknown Source) at com.sun.javaws.LaunchDownload.downloadJarFiles(Unknown Source)
HTH, Mac
|
|
|
|
|
|
|
|
Re: Finally cleaned incubator area (mattnathan) + Demos
Posted:
Oct 15, 2008 8:09 AM
in response to: mac_systems
|
|
|
> com.sun.deploy.net.FailedDownloadException: Ressource konnte nicht geladen werden: https://jdnc-incubator.dev.java.net/demos/mattnathan/modules/Core.jar
That's funny, the above link works for me; it even has the right classes and manifest in it. Have you tried downloading the jar file directly?
|
|
|
|
|
|
|
|
Re: Finally cleaned incubator area (mattnathan) + Demos
Posted:
Oct 15, 2008 8:26 AM
in response to: mattnathan
|
|
|
Is this a 1.5 vs. 1.6 issue?
Karl
|
|
|
|
|
|
|
|
Re: Finally cleaned incubator area (mattnathan) + Demos
Posted:
Oct 15, 2008 4:11 PM
in response to: kschaefe
|
|
|
That rollover thinguie looks interesting, considering i spend spent an embarrassingly large amount of time a few months ago doing the same for a label. although for text i prefer to set colors, like this :
private abstract class LabelShader extends MouseAdapter {
private Color componentColor;
@Override
public void mouseEntered(MouseEvent arg) {
Component comp = arg.getComponent();
componentColor = comp.getForeground();
comp.setForeground(SystemColor.textHighlight);
}
@Override
public void mouseExited(MouseEvent arg) {
arg.getComponent().setForeground(componentColor);
}
}
Dangerous? Hell yeah, but i think that the platform that paints text the same color as panels backgrounds is too stupid to live. I needed mouse listeners anyway to get Label "buttons". Vade-Retro accessibility guide-lines.
|
|
|
|
|
|
|
|
Re: Finally cleaned incubator area (mattnathan) + Demos
Posted:
Oct 16, 2008 2:57 AM
in response to: i30817
|
|
|
> i30817 wrote: > I needed mouse listeners > anyway to get Label "buttons".
Please see my original announcement (from December 2006 :/) regarding the roll-over support.
|
|
|
|
|
|
|
|
Re: Finally cleaned incubator area (mattnathan) + Demos
Posted:
Oct 16, 2008 5:14 AM
in response to: mattnathan
|
|
|
May my Connection there at work was broken. Tried again the inspection Demo:
java.lang.IllegalArgumentException: input == null! at javax.imageio.ImageIO.read(Unknown Source) at org.jdesktop.swingx.JXInspectionPaneDemo.createImageItem(JXInspectionPaneDemo.java:92) at org.jdesktop.swingx.JXInspectionPaneDemo.createItems(JXInspectionPaneDemo.java:68) at org.jdesktop.swingx.JXInspectionPaneDemo.main(JXInspectionPaneDemo.java:46) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.sun.javaws.Launcher.executeApplication(Unknown Source) at com.sun.javaws.Launcher.executeMainClass(Unknown Source) at com.sun.javaws.Launcher.doLaunchApp(Unknown Source) at com.sun.javaws.Launcher.run(Unknown Source) at java.lang.Thread.run(Unknown Source)
Using:
java version "1.6.0_07" Java(TM) SE Runtime Environment (build 1.6.0_07-b06) Java HotSpot(TM) Client VM (build 10.0-b23, mixed mode, sharing)
|
|
|
|
|
|
|
|
Re: Finally cleaned incubator area (mattnathan) + Demos
Posted:
Oct 16, 2008 5:51 AM
in response to: mac_systems
|
|
|
Sorry about that, looks like it was a problem on windows only. The resources used in the demo were being referenced via getClass().getResoruce("resources" + File.separatorChar + "file.png"); and it looks like this doesn't work. Have fixed and you should be able to see the demo now.
|
|
|
|
|
|
|
|
Re: Finally cleaned incubator area (mattnathan) + Demos
Posted:
Oct 16, 2008 2:39 AM
in response to: kschaefe
|
|
|
Sorry forgot to mention that I've compiled them for Java 6, if there is significant demand I can look into compiling for Java 5 for most of them.
|
|
|
|
|
|
|
|
Re: Finally cleaned incubator area (mattnathan) + Demos
Posted:
Oct 21, 2008 7:09 AM
in response to: mattnathan
|
|
|
Thx, it works now. Nice Work!!!
|
|
|
|
|
|
|
|
Re: Finally cleaned incubator area (mattnathan) + Demos
Posted:
Oct 15, 2008 7:31 PM
in response to: mattnathan
|
|
|
Hi Matt, Great Demos.!! ..just checked out the sources from cvs.... Just one question ...can i use the effect classes in the swing projects i work on ...which might be both commercial and personal ?.
Keep up the great work !!!
Regards, Pavan
|
|
|
|
|
|
|
|
Re: Finally cleaned incubator area (mattnathan) + Demos
Posted:
Oct 16, 2008 2:41 AM
in response to: psychostud
|
|
|
Your welcome if it's up to me, but I'm not a licence expert. You'll have to look into the licence swinglabs uses for it's stuff.
|
|
|
|
|
|
|
|
Re: Finally cleaned incubator area (mattnathan) + Demos
Posted:
Oct 21, 2008 3:56 AM
in response to: mattnathan
|
|
|
Hi Matt,
I'm attempting to have a look at the source for the RolloverManager but I've only got as far as https://jdnc-incubator.dev.java.net
, and I can't seem to find the correct area.
Thanks
|
|
|
|
|
|
|
|
Re: Finally cleaned incubator area (mattnathan) + Demos
Posted:
Oct 21, 2008 4:21 AM
in response to: cadraig
|
|
|
If you check out the source via CVS it's in the src/mattnathan directory (see here for checkout details). I provide a IntelliJ IDEA project file which should be up to date, if you're using another IDE then the project dependencies for API and All modules are in www/documentation/mattnathan/images/ and are both linked in my first post.
You can browse the source via https://jdnc-incubator.dev.java.net/source/browse/jdnc-incubator/src/mattnathan
Each of the projects are in their own modules with a name similar to the titles above. So for example the Rollover support is in <jdnc-incubator>/src/mattnathan/Rollover and can be browsed here
Hope this helps,
Matt
|
|
|
|
|