
Jx-Jigsaws
Source (link to git-repo or to original if based on someone elses unmodified work):
Caveats: Xjig has a few problems not addressed in here:
1. Moving pieces is quite awkward. Use right/drag to move, left/drag to rotate. There is little reason for rotating pieces in finer increments than 90 degress!
2. There is no way to save and reload your puzzle.
You need to have xjig and a recent (Sun 1.4 or better) Java runtime. (Note: Some Javas 1.4 or older may require "compile" from sources to run correctly.)
3.0 Recent xjig from Debian Sid, elsewere now support jpgs and mmps directly so no need to convert these to gifs.
This version will work with JMagick native interface to ImageMagick if this is installed (should fork out to ImageMagick as child process if not). Using the JNI yields noticeably but not great speed improvements on the file chooser pane. Postscript and PDF files handled better as well.
Issue: Postscript and PDFs remain slow because a child ghostscript is used. A directory with several of these will run Java out of heap space. This needs be addressed!
2.3 Incorporated the idea of the "preview enhancer"--focus the update of the thumbnails to the displayed pane. (This was tricky because the swing JFileChooser class's internals are closed/protected.) Looks and may really be substantially quicker because of better thread synchronization.
Note: Many but not all WMF (Windows meta-files) seem to come in inverted. so may need an option to flip them.
2.2 Improved refresh of thumbnails, response time to get preview image from directory with files requiring ImageMagick child processes. (This issue does need more work.)
2.1
Explicit calls "garbage collection" to force more immediate recovery of heapspace.
Quicker filechooser and image preview switchovers.
2.0
Librarian! Personalized, flat access to pictures. Scans home directory on first run. New trees can be scanned, directories added, entries renamed or deleted. Simple functions--double click or return to select. Click for menu.
Now supports most all graphics and other formats supported by ImageMagick.
Numerous other fixes and improvements.
(Todo:
1.This is very multithreaded in attempt to keep the UI responsive. Some formats take a bit to load. Inter-thread cooridination?
2. Roll my own file chooser box for nicer KDE-like format?
3. ImageMagick functionallity is available with JMagick package using the JNI-native interface, shared libraries, rather than the Java virtual machine. Have not touched this but should be quicker.
4. This is now a dandy graphics-browser it its own right. Ideas?)
1.2 Added support for various bmp images--the mechanism is open for support of additional types in the future as well
Added a button to suppress directories display in filechooser.
1.1 Filechooser box now shows thumbnails. These are updated in a background thread because a larger image collection will take time to load. Program is fully functional meanwhile.
1.0 OK. Dialog is resizable. Note that the filechooser box has a minimum size and will be clipped if the dialog is made too small. Still works.
0.99.3 Desktop clip now works thanks to Imagemagick mogrify. Now, any image shown on your screen can be worked as a jigsaw. A few more small fixes.
0.99.1 Removed invalid dropdown menu icons. Could spawn orphan thread.
0.99 pre-release. Check for problems, request features, corrections, etc.
New functionality:
1. Make puzzle from desktop--try this without the frame. Cool :-). Puzzles launched from click on icon (regular image) or from dropdown while holding mouse clicked on puzzle icon.
2. Cancel stops conversion or Xjig if active. Otherwise, closes program.
3. Program is controllable from the preview--no need to move it around to get the GUI. Arrow keys navigate the current image directory, +- steps image size, double-click starts/cancels conversion or Xjig. These functions are also available from a dropdown when clicking on preview.
Desktop puzzle works with ImageMagick's import. A window/region puzzle can be enabled when the import-image sizing problems can be solved.
3. Cutsie wait-icons.
0.9.0
Added a "frame" checkbox, default true. Unclick to work the puzzle right on your "desktop" (without the xjig frame). You may or may not like this :-)
Hitting ESC always terminates xjig. Without the frame, a piece must have the focus. If in doubt, doubleclick on the preview image to exit xjig.
0.8.0 Command line for initial directory.
0.7.1 Removed largely unexecuted code. Image preview resizing performance likely best it can be with these calls.
0.7.0 Much improved preview image resizing--(more?) correct thread usage.
0.6.2 Error really was: xjig will rescale landscape pictures to portrait unless you tell it not to!
0.6.1 Corrected error in sizes sent to xjig.
0.6.0 Image conversion implemented. Assuming the ImageMagick utility convert is properly licensed to produce GIFs.
0.5.0 Initial beta
Ratings & Comments
16 Comments
I've just downloaded this for my girlfriend and it works fine but I can't work out how to get it to run from a desktop icon. I've tried a shell script and I've tried entering the directory followed by the command in the properties but it won't run unless I actually cd to the directory in the terminal and type the command. My girlfriend won't use terminals, she needs an icon to click on.
java -jar /path/to/JigsawJava.jar [/path/to/image/folder] [optional]--don't type the [] You may need to enclose each of the paths in ''.
I am trying to get it to start, but apparently I am doing something wrong. I extract it into a folder and then in the terminal navigate to that folder and type this: java -jar JigsawJava.jar With the following result: Exception in thread "main" java.lang.UnsupportedClassVersionError: jigsawjava/Main (Unsupported major.minor version 49.0) at java.lang.ClassLoader.defineClass0(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:539) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123) at java.net.URLClassLoader.defineClass(URLClassLoader.java:251) at java.net.URLClassLoader.access$100(URLClassLoader.java:55) at java.net.URLClassLoader$1.run(URLClassLoader.java:194) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:187) at java.lang.ClassLoader.loadClass(ClassLoader.java:289) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274) at java.lang.ClassLoader.loadClass(ClassLoader.java:235) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302) I have the most recent Java installed and also xjig is up to date.
xjig has nothing to do with java. I have Sun's 1.5 but I am not using any new features that I am aware of--1.4 should work. I am now expert, however. Note that Debian sports a bunch of Java-vm's, sable-vm, kaffe, free-sdk, etc. You may one or more of them. It is very easy for one of these to be your java-alternative without having decided on this one. It can be tricky to get Sun's Java to be the one and one may need to play with "alternatives". java -version may give you information. I can only vouch for Sun as I made this with Netbeans.
Thing is that the software that I downloaded is .jar. That makes it Java, no? I don't know how else to start the program. When I extract it I get a .jar file in the main folder and then also a number of subfolders in that one. How should I start it then? This is what Javaversion says for me: java version "1.4.2-01" Java(TM) 2 Runtime Environment, Standard Edition (build Blackdown-1.4.2-01) Java HotSpot(TM) Client VM (build Blackdown-1.4.2-01, mixed mode)
I posted your errors on the netbeans list. See if anyone has any ideas. Blackdown is NOT Sun. As I said, Debian has any number of alternatives and you get one without ever making a choice, it seems. I tried to install Eclipse and ended up with Kaffe replacing Sun as the Java "alternative". Took a lot of bother to get things back.
I was under the impression that the software I downloaded here from KDE-apps WAS java, since the first file I encounter in the extracted file IS a .jar Are you saying that THAT .jar should be started using a different java program, and that my java can't run it? It is seriously puzzling me that there seems to be more than one kind of java. All I learned was .jar=java, start with java software.
So was I :-). Nothing to do with kde-apps or any other source but I too assumed the pure Java was just that. Has anybody had the thing run successfully on Blackdown's build? Also, my java -version displays: java version "1.5.0_01" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_01-b08) Java HotSpot(TM) Client VM (build 1.5.0_01-b08, mixed mode, sharing). Note the added mode "sharing". Relevant--who knows. I await some advice from other Netbeans users. Meanwhile, since the thing uses threads and your errors cite "privileged" and such, try running as root. IF that works, we've found the culprit. However, I do not run as root. I suppose the next time I play with this, I will try catching security/privilege exceptions and see what happens (Netbeans will normally DEMAND treatment of exceptions and did not demand it for these!)
OK. Google is full of this and for expensive commercial apps at that. The major/minor business means that the program was "compiled" for a newer Java than that on your machine and at some point, they no longer mesh. Best would be to use the sources and "compile" on your Java.
Ok, but how to compile the project ? Thanks Killyn
There is a conversion utility on my system that is used by konqueror. It will produce GIFs just fine. Assuming that the licensing is in order for this, Jx-Jigsaws can certain run it. This makes this more of a KDE application? Next version, easy as ...
What does a Java app do on a KDE-related site? And what is this? There is no screenshot and from the description I cannot imagine what it does and where the KDE-relation is...
This is not a KDE specific applications. If it does not belong here, then, webmaster, please remove it (also, their is a duplicate listing because of uploading problems). There are other non-KDE specific applications here. My first intent was to use C++ with QT3 but could not find widgets I needed. Java/swing worked out. So what if it may also work in Gnome? I use KDE.
Yes, there are Java Bindings for KDE. http://developer.kde.org/language-bindings/java/
Worth looking at. I do not know what they would add to the thing except to call it dependent on KDE?
I installed the KDE java bindings. The QT3 stuff is huge--a whole other java library. The KDE dcop an "koala" are smaller. Actually, the way I would want to implement a KDE java binding would be: 1. Real KDE specific stuff like the dcop, user preferences in styles, etc., needs be it own package additional to the java-vm. Swing is skinnable (is comes with its own "metal", Windows and Motif looks--remember Motif--when Unix was young and older programmers could still find employment!) The KDE UI manager would be added here! No need for most of the QT3 classes. 2. On app startup, check if KDE is running. If not, then if the app needs KDE, gracefully exit. Otherwise, use the default or other UI handler. 3. Now call on the KDE UI handler and voile, KDE (or KDE-like) look and feel.