Commit Graph

728 Commits

Author SHA1 Message Date
Rob Greene
4541f38eb1 Determining version based on manifest file
This allowing Gradle to manage the versions and share them across both
build and runtime environments.
2018-03-02 12:47:06 -06:00
Rob Greene
47dc4038f3 Adding AppleSingle support #20; refactored to support minor unit
testing.
2018-03-02 12:30:58 -06:00
Rob Greene
0f83ba94b6 Noticed compile errors for unit tests, correcting. 2018-03-01 22:02:07 -06:00
Rob Greene
9c4624133b Bumping version to 1.4.0. 2018-01-29 21:16:41 -06:00
A2 Geek
24623b2c20
Merge pull request #19 from Lisias/issues/18
Fixing https://github.com/AppleCommander/AppleCommander/issues/18
2018-01-29 21:00:33 -06:00
Lisias
9e132b15ce Implemeting User Warnings for the disk related errors. 2018-01-08 12:02:59 -02:00
Lisias
86b53fea37 Adding the image fullpathname to all DiskExceptions. This will normalize the User Warnings, as also will make easier to feed error reports to an eventual First Aid tool 2018-01-08 12:02:59 -02:00
Lisias
d20056380e Using a new Exception for handling unknown disk formats. This will make handling errors easier. 2018-01-08 12:02:58 -02:00
Lisias
2872d93acc Implementing a User Warning for the Disk Corruption problem. 1st pass. 2018-01-08 12:02:58 -02:00
Lisias
d2199f0792 Revising the DiskException handling. I was wrongly handling it as a user warning on some places where this is not viable (as a Ant Task!!). 2018-01-08 12:02:58 -02:00
Lisias
144841a296 Somewhat better DiskCorruptException handling. Avoiding redundancy. 2018-01-08 09:20:12 -02:00
Lisias
f3316262c8 Fixing a wrongly placed DiskException handler on the command line tool. 2018-01-08 08:24:39 -02:00
Lisias
ae66b88e0a Adjusting the coding format as suggested in:
https://github.com/AppleCommander/AppleCommander/pull/19#pullrequestreview-82711570
2018-01-07 19:12:46 -02:00
Lisias
5c77c57aa2 Fixing and optimizing the loop detection as suggested in:
https://github.com/AppleCommander/AppleCommander/pull/19#pullrequestreview-82712102
2017-12-14 01:08:23 -02:00
Lisias
7b729b9d0b Detailing the exception for further analysis and rescuing efforts as suggested in:
https://github.com/AppleCommander/AppleCommander/pull/19#discussion_r156263263
2017-12-14 00:36:16 -02:00
Lisias T
50608b9c43 Fixing https://github.com/AppleCommander/AppleCommander/issues/18 2017-12-04 03:15:38 -02:00
Rob Greene
1b0e78bd80 Merge branch 'gradle' 2017-11-20 21:16:15 -06:00
Rob Greene
aa972ee6c8 Merge branch 'master' into gradle 2017-11-20 21:13:51 -06:00
Rob Greene
2d6e7c28d0 Revert "Merging in iKarith's pull request from master so it does not get lost!"
This reverts commit be8d04cce2.

Bad developer, biscuit! :-)
2017-11-20 21:06:08 -06:00
Rob Greene
be8d04cce2 Merging in iKarith's pull request from master so it does not get lost! 2017-11-20 20:59:36 -06:00
A2 Geek
43f599943e
Merge pull request #14 from iKarith/master
Fix SWT file dialog with cherry-pick from javafx branch
2017-11-20 20:42:10 -06:00
T. Joseph Carter
bfaf30bffe Mod FilenameFilter to support JavaFX
(cherry-picked to fix AppleCommander/AppleCommander#13 since I've
discovered that I was wrong and it does fix the problem after all!)

cwa.storage.Disk.FileFilter was written for SWT, returning multiple
extensions as a single string with ; separators.  For JavaFX, we
actually want individual strings separately or in a list.

The only place these are initialized in cwa.storage.Disk anyway, so what
I've done is change the class to instatiate with separate strings and
join them on demand for SWT.  A new getExtensionList() method will
return them as-is for JavaFX.
2017-11-20 04:59:42 -08:00
Rob Greene
3291b515d5 Building for 'ac' as well as Linux/Windows/Mac OS X. 2017-11-19 13:23:59 -06:00
Rob Greene
3ed8f0b974 Fixes #10. 2017-11-16 22:08:46 -06:00
Rob Greene
a108289ca2 Bumping version to distinguish next release. 2017-11-16 22:07:04 -06:00
Rob Greene
438e6ec1f0 First draft of morphing AppleCommander to use Gradle instead of Ant. 2017-11-15 23:00:11 -06:00
T. Joseph Carter
6b4ef151a9 Merge branch 'master' of https://github.com/AppleCommander/AppleCommander into linux 2017-11-15 19:17:13 -08:00
T. Joseph Carter
234f1485f2 Merge branch 'master' into linux 2017-11-15 18:25:23 -08:00
A2 Geek
5d9ac872fd
Merge pull request #9 from iKarith/master
Fix my idiot attempt to fix this warning
2017-11-15 20:19:22 -06:00
A2 Geek
ba85678853
Merge pull request #8 from iKarith/linux
Build on Linux and macOS using reasonably current JDKs
2017-11-15 20:18:53 -06:00
T. Joseph Carter
c74e9ad3bd Fix my idiot attempt to fix this warning
My fix for the unchecked warning in AppleImage.java was completely dumb
and I had no idea what I was doing.  My understanding of how this works
is now greatly improved and the bug I introduced in 292afd2 is fixed.
2017-11-13 09:23:05 -08:00
T. Joseph Carter
a47f152cd9 Cosmetic variable rename 2017-11-11 19:56:33 -08:00
T. Joseph Carter
44fd1cb010 Make GUI request errors clean
If you don't request a specific GUI, we try SWT and then Swing.  Okay.
But if you do, we don't even try to see if it works—we just assume SWT
works.  If the user requested Swing, we just unconditionally spit out an
error message and try to start the GUI anyway.  Let's make the errors
conditional on the GUIs being unavailable.

Note, a Swing GUI is available.  It is just incomplete and doesn't work
very well.  :)
2017-11-11 19:43:11 -08:00
A2 Geek
43796815bf
Merge pull request #7 from iKarith/unchecked
Remove -Xlint:unchecked warnings
2017-11-11 17:26:30 -06:00
T. Joseph Carter
4f2facf541 Ensure macOS bundle starts the SWT GUI
In order to actually start the SWT-based GUI on macOS and have anything
start, you need -XstartOnMainThread.  This is a Cocoa limitation.  If
you have that (and we do now), you can pass the -swt argument and it
runs.  (More than I can say for Linux using the non-integrated SWT
provided by Debian at the moment…)

What doesn't work is the open dialog.  No files are selectable unless
you tell it to allow all files, and then .dsk files which the cmdline
jar file can handle fine are somehow an unsupported format.  Uh huh.

That much at least should not be too hard to fix.  Whether it works
after that is fixed, I cannot say.  What I can say is that the problem
does not exist if you don't pass -swt, however the lack of a proper
Swing GUI means it doesn't really matter because you can't do anything
with the files once you've opened them.
2017-11-11 14:49:32 -08:00
T. Joseph Carter
e923c8ae3f Update TODO re: Mac stuff
The macOS zip file already was automated (though it should really be a
separate target in build.xml), and I have added a note about the
possibility of using Sean Riley's appbundler fork as an alternative to
jarbundler and the universalJavaApplicationStub shell script.

I went with the stub and jarbundler because Oracle has had a bad habit
of regularly changing and deprecating Mac bundling practices, but the
bundling of a JRE should make that a one-click (well, one-doubleclick)
solution for the end user.  If the GUI app *worked* that would be a
strong consideration.  It's not even a waste of diskspace on a system
using APFS if multiple copies of the JRE are on the system, if they're
the same JRE.

Also noted that CF card access as a raw disk is possible on Windows as
well.
2017-11-11 06:36:04 -08:00
T. Joseph Carter
72fb36478b Improve Mac build process a bit
Copy swt.jar to a directory in ${work} rather than ${mac.dir} as there's
no need for droppings all over the build tree.  Also cleaned up building
${maczip} a bit to avoid extra file copying, to put the uncompressed
.app in ${dist}, etc.  Removed some cruft from .gitignore while I was at
it.

The conditional nature of building macBundle kind of bothers me a little
since if you have the correct swt.jar (which we could provide and have
in some versions of the build system), you could build self-contained
packages for macOS and for Windows.  A self-contained package for Linux
is also possible, but doesn't make much sense as Linux software
installation routinely involves installing dependencies, either manually
or automatically.
2017-11-11 06:15:53 -08:00
T. Joseph Carter
7d8be1d249 Merge branch 'mac-unistub' into linux 2017-11-10 09:36:14 -08:00
T. Joseph Carter
c27a91d820 Use the self-contained swt.jar from Eclipse
Rather than trying to use the Eclipse plugin version (which may never
actually work without building using Eclipse), I've changed the default
properties to prefer the all-in-one swt.jar packaged for separate
distribution.  That isn't going to make SWT magically start working (of
course not!), but it's got the best chance of us being able to MAKE it
work in the future.

I've elected to put it in /Users/Shared/Java which seems to be the
correct place to put such a thing, but elected to use an unversioned swt
symlink, set up like so:

/Users/Shared/Java/swt@ -> swt-4.7.1a-cocoa-macosx-x86_64

I'm using the current stable release version, as you see here.
2017-11-10 09:20:00 -08:00
T. Joseph Carter
e9ea726188 Merge branch 'unchecked' into mac-unistub 2017-11-09 13:11:54 -08:00
T. Joseph Carter
f2589b4294 Merge branch 'unchecked' into linux 2017-11-09 13:11:19 -08:00
T. Joseph Carter
4d5d6e4cf5 Merge branch 'master' into linux 2017-11-09 13:10:55 -08:00
T. Joseph Carter
292afd24c9 Remove -Xlint:unchecked warnings
Fixed all instances of warnings OpenJDK finds with -Xlint:unchecked.
Merging this will at least result in a dependency on JDK 1.5 or later
that I'm pretty sure of.  But since the only JDKs that are really safe
to use these days are versions 1.8 and 9, that's probably okay.

No promises that this will make modern SWT work or anything, but it's
probably at least a beginnig toward that as well.
2017-11-09 13:03:03 -08:00
Rob Greene
d7f2631434 Updating web site and rearranging a bit to save space per #6. 2017-11-08 13:27:22 -06:00
A2 Geek
5cdcaa63e0
Merge pull request #5 from iKarith/master
Fix varargs warnings
2017-11-08 12:38:58 -06:00
T. Joseph Carter
1880998892 Fix varargs warnings
Javac cannot tell if the getMethod and launchMethod uses here are
being done with varargs or not, so we need explicit casts to silence the
warning.
2017-11-07 13:47:47 -08:00
T. Joseph Carter
3048cd3dfe Merge branch 'master' of https://github.com/AppleCommander/AppleCommander into mac-unistub 2017-11-05 00:51:44 -07:00
A2 Geek
7ed762b89b
Merge pull request #1 from iKarith/master
Created .gitignore to replace the .cvsignore files
2017-11-03 22:50:36 -05:00
T. Joseph Carter
30914c8efe Change GUI option to noGui (still not default)
The Mac build didn't much like the previous setup, so I inverted the
condition and made sure the Mac bundle is disabled with noGui.
2017-11-03 09:54:10 -07:00
T. Joseph Carter
c1caa1bc91 Make build of GUI components optional (default)
These presently don't work if you are using reasonably current versions
of JDK and SWT.  Made this optional if you just run ant, but left it
enabled by default since it ought to be fixed.  Linux build scripts may
just provide an ACBuild.properties that turns it off so that e.g., the
ant build helper doesn't need any custom configuration.
2017-11-03 09:28:42 -07:00