Commit Graph

211 Commits

Author SHA1 Message Date
nathan
7818077686 SerializationManager register() methods now support chaining methods 2017-09-24 16:47:55 +02:00
nathan
8ca60fce73 Fix issue with isChromeOS initialization. 2017-09-22 09:02:55 +02:00
nathan
f303b6cca2 Fixed issue with "out of order" event dispatch execution for GTK.
Runnables are now added to a FIFO queue when executed during GTK
execution.
2017-09-17 21:05:14 +02:00
nathan
0d73eb6b1e Fixed image resizing with un-specified dimension 2017-09-17 17:41:15 +02:00
nathan
ebf5a7981f Added clampMaxImageSize so an image will be a max of that size, but
still maintain it's aspect ratio.
2017-09-17 16:28:38 +02:00
nathan
eec96cd5b4 cleanup whitespace 2017-09-17 14:55:10 +02:00
nathan
d6f5ef4e46 Added extra buffer==null checks to active render loop 2017-09-17 14:33:45 +02:00
nathan
9bf78f0f70 doc polish 2017-09-15 14:21:58 +02:00
nathan
514db82c46 Reverted change to use Version (now uses string again). 2017-09-15 00:44:24 +02:00
nathan
3bf8f7cd18 Fix issue where classloader is incorrectly determined in some
configurations.
2017-09-14 22:32:41 +02:00
nathan
475db5d902 Cleaned up image resizing. Added a "proper" image resize method 2017-09-03 15:15:49 +02:00
nathan
9c50514cc1 Added major,minor,micro version info to GtkCheck. Added extra methods.
Moved GTK3 version specific methods to method loader, so GTK will always
 load the gtk3 library, even if the version is not high enough
2017-09-03 14:49:28 +02:00
nathan
0abe6af966 added extra comments for gtk event dispatch 2017-09-03 14:48:07 +02:00
nathan
cdb248adbe Added simplified isUnity() check 2017-09-03 14:47:21 +02:00
nathan
bef027f9bf Added extra checks if running ubuntu + unity. there are problems when
launching nautilus/firefox/etc via GTK, so fallback to xdg-open
2017-09-03 14:47:02 +02:00
nathan
4b0b62dc6b Added simplified checks for ubuntu - isUnity(), checks for Unity and
Unity7. Added check to see if nautilus file manager is installed
2017-09-03 14:45:51 +02:00
nathan
b2e29e38cd Changed ActiveRenderer to only permit Canvas now (instead of JFrame) 2017-08-24 22:00:32 +02:00
nathan
a6300d8ba5 Changed method order to make logical sense 2017-08-20 22:54:47 +02:00
nathan
513169b872 Parallel processor will output a stack trace if there are errors processing (and not just the message) 2017-08-18 12:14:02 +02:00
nathan
c6ada706d6 Check for null message when getting the exception message 2017-08-17 15:25:21 +02:00
nathan
545fef3a7e Added KEY_TEXT_ANTIALIASING for rendering text 2017-08-17 11:17:54 +02:00
nathan
15cdc022b7 Refactored getExceptionMessage 2017-08-14 14:28:16 +02:00
nathan
36c53f2bc9 Added getExceptionMessage() utility method. 2017-08-14 14:27:34 +02:00
nathan
2f9a0da32f Added ability to set the total workload, then get the current progress -- without blocking 2017-08-14 12:19:25 +02:00
nathan
c927093388 Added back the ParallelProcessor, cleaned and simplified, and without any dependencies. 2017-08-13 23:30:05 +02:00
nathan
f0331e8cc8 Fix potential issues with reporting expections 2017-08-05 00:48:35 +02:00
nathan
305b76447c Moved TeeOutputStream from internal utils to public utils. 2017-08-04 23:32:08 +02:00
nathan
fe788c82c1 DiskStorage save delay is now part of the builder. 2017-08-04 17:45:17 +02:00
nathan
9d177a779b Renamed getMonitor methods (so the name makes more sense). Added
wrappers for getting monitor at mouse location.
2017-08-04 17:38:47 +02:00
nathan
99bd330730 Added File.touch 2017-08-04 17:38:07 +02:00
nathan
99b95074ab Converted storage to use the 'single writer principle' for read speed 2017-08-04 17:33:54 +02:00
nathan
85a745dc3a Simplified storage API. Throws RuntimeException if trying to write to a
read-only storage.
2017-08-04 16:26:32 +02:00
nathan
ec84231b1b Removed default storageKey get() methods (they were confusing) 2017-08-04 16:04:30 +02:00
nathan
973d6d99c2 Refactored Storage.make() -> Storage.build(). Removed IOExceptions when
data cannot be read (an error will be emitted via logger or StdErr, and
will return null). Storage now has a default (kryo based) serialization
manager if none is specified.
2017-08-02 21:55:32 +02:00
nathan
a61f3522b0 Updated storage comments and methods. Added storage.close() as a convenience method. 2017-08-01 10:22:50 +02:00
nathan
7c2fc36d57 Added copyright 2017-08-01 00:55:13 +02:00
nathan
d3169e95bc Moved classes that should not have been in the Utilities project. 2017-08-01 00:54:57 +02:00
nathan
efe31d4818 added getSha256WithSalt(byte[], byte[]) 2017-08-01 00:54:17 +02:00
nathan
a615545adc Made it clear that charToBytes returns UTF16. 2017-08-01 00:53:36 +02:00
nathan
6decb2b234 Storage now depends on StorageKey (instead of ByteArrayWrapper), in order
to make it clear that it must be a SHA256 hash, and not just bytes of arbitrary length.
2017-08-01 00:52:53 +02:00
nathan
2a7d8397e7 Removed ability to wrap a String 2017-08-01 00:51:17 +02:00
nathan
5f6ab6ae88 Comment polish 2017-08-01 00:15:41 +02:00
nathan
e7a8fefd60 Reverted change 2017-08-01 00:15:31 +02:00
nathan
0c5d5e2ef8 Fixed storage initialization record count offset 2017-07-31 23:51:10 +02:00
nathan
c3f8ad3a6e Fixed comment typos 2017-07-31 21:58:17 +02:00
nathan
94eadc2add Added showMessageDialog, which will show in the center of the screen where the mouse currently is. 2017-07-31 17:51:46 +02:00
nathan
271ea9eefa Added clamp. 2017-07-30 22:21:11 +02:00
nathan
cbc4d8e14c Moved NativeLoader to Utilities. 2017-07-30 20:17:44 +02:00
nathan
4c77950f36 FileUtil.moveFile now supports all permutations 2017-07-29 23:07:41 +02:00
nathan
a5cf709801 FileUtil.copyFile now supports all permutations 2017-07-29 23:05:57 +02:00
nathan
b1d4fba159 Moved Hash specific methods from Sys -> HashUtil 2017-07-29 22:20:58 +02:00
nathan
47e73efb52 ByteArrayWrapper.wrap(String) no longer uses SHA256 hash of string, it
uses the UTF8 bytes of the string directly.
2017-07-29 22:17:21 +02:00
nathan
b129364ee0 FileNormalization will return absolute file. 2017-07-29 21:42:37 +02:00
nathan
88312df832 ActiveRenderLoop (for Swing) now accepts Window (instead of just JFrame) 2017-07-28 22:08:18 +02:00
nathan
a1d3b672b0 Moved screen util methods out of swingutil 2017-07-27 23:18:20 +02:00
nathan
c41e05be63 Added getFontWidth 2017-07-27 22:09:57 +02:00
nathan
43dab244a6 Formatting/Comment/Code polish 2017-07-27 22:09:36 +02:00
nathan
b73fef825d Added GTK widget tooltip support. 2017-07-24 14:31:40 +02:00
nathan
e191faa3b8 Cleaned up how errors are thrown for GTK libraries. 2017-07-24 14:30:42 +02:00
nathan
ab8e7e5a79 Added ChromeOS detection 2017-07-23 14:16:41 +02:00
nathan
adbd14eaee Refactored OsType -> OSType 2017-07-23 11:30:52 +02:00
nathan
96724bb0e9 Refactored checking for which GTK version is loaded. The logic has been
simplified.
2017-07-23 11:24:09 +02:00
nathan
b2635cfa8c Removed Gtk import 2017-07-22 13:00:52 +02:00
nathan
be6cf84c37 Moved classes Utilities project to internal Utilities, as they
depended on github projects. The public utilities should not
have any dorkbox dependencies.
2017-07-22 12:22:17 +02:00
nathan
78efb022d9 Removed MathUtil dependency from Version, it was unnecessary 2017-07-22 02:25:50 +02:00
nathan
bf59e5a87c Changed fields to protected scope to permit overriding functionality 2017-07-20 23:57:06 +02:00
nathan
9bb3fa0db8 Added getting version/beta/build info from a version. Code polish. 2017-07-19 01:53:18 +02:00
nathan
a3f24a3d35 Added Version copy constructor, added creating a new version via a
double.
2017-07-19 01:42:06 +02:00
nathan
8d7d35182a Added preferGtk3 to GTK loading. Fail loading GTK if GTK2 is forced, and
GTK2 cannot load. Code polish.
2017-07-19 00:50:42 +02:00
nathan
1abe7b60ab Added exception to GTK load ordering for Kali (it has rendering issues
with GTK3. GTK2 looks just fine)
2017-07-18 16:40:15 +02:00
nathan
c84f6e02cb Added GTK detection to SwingUtil (specific for checking if Swing has
already loaded GTK)
2017-07-18 16:36:46 +02:00
nathan
c8f2bef1d9 Added isNumber for characters 2017-07-18 16:34:06 +02:00
nathan
740087f2cf Code polish, added Shell convenience method 2017-07-18 02:25:10 +02:00
nathan
3ab5076d9b Cache getInfo for linux/unix 2017-07-18 02:20:08 +02:00
nathan
a5d7a7293e Now support GTK3 versions less than 3.10 (3.4 was tested, as released on
Ubuntu 12.04). Make sure not to touch Gtk interface while loading Gtk
2017-07-17 01:41:53 +02:00
nathan
bb15ca12a8 Added version utility class to manage comparing versions. X.X
.X-BETA-hash is the max supported
2017-07-17 00:34:36 +02:00
nathan
4f20a7524b Code polish 2017-07-16 10:42:28 +02:00
nathan
b2acabef58 Code polish 2017-07-16 02:17:40 +02:00
nathan
ebf482086d Made public so build can pickup class 2017-07-16 02:15:12 +02:00
nathan
0ecc75aa7d Updated Desktop utility class to use JNA native access for
browseURL/email/browseDirectory methods. This also fixed issues where
xdg-open could cause strange problems with Chrome on Linux (but not as
the default browser).
2017-07-16 02:08:15 +02:00
nathan
dd7892483e Added gtk_show_uri 2017-07-16 01:43:52 +02:00
nathan
2c31963337 Code polish for the shell executors 2017-07-16 01:43:34 +02:00
nathan
ec0772a9b0 Added Async Shell Executor 2017-07-16 01:41:20 +02:00
nathan
79c41e2a95 Fixed issues where the shell executor could hang 2017-07-16 01:40:58 +02:00
nathan
2ca0b14164 Added Desktop Utility functions, similar to java.awt.Desktop with cases
built-in for Linux/Unix when GTK3 is loaded (and thus, java.awt.Desktop
is not supported). Code derivative from QZTray, which was released
exclusively as Apache 2.0 for this purpose.
2017-07-16 00:16:51 +02:00
nathan
e588ed19c1 ShellProcessBuilder -> ShellExecutor. Static method to simplify shell
execution added. Added ability to pass in environment variables to new
process. Added better detection for current shell in linux/unix (could
be improved...). Added flag for executing process as a shell command.
Output now defaults to en-US.UTF_8
2017-07-15 23:55:36 +02:00
nathan
1554077d27 Renamed JavaProcessBuilder -> JvmExecutor 2017-07-15 23:53:51 +02:00
nathan
38a6899049 ShellProcessBuilder -> ShellExecutor. Static method to simplify shell
execution added. Added ability to pass in environment variables to new
process. Added better detection for current shell in linux/unix (could
be improved...). Added flag for executing process as a shell command.
Output now defaults to en-US.UTF_8
2017-07-15 23:53:31 +02:00
nathan
cf0f04d6a7 Code polish. Thread.notify -> notifyAll 2017-07-15 23:49:00 +02:00
nathan
e8c42ae48d Fixed log message logger 2017-07-15 18:37:47 +02:00
nathan
f143dff1fd Added isGtk2, isGtk3, and isGtkLoaded to OSUtil.DesktopEnv, so that one
can query to see GTK status without loading GTK.
2017-07-15 18:37:03 +02:00
nathan
92c0a7f42a Fixed log message logger 2017-07-15 18:36:00 +02:00
nathan
e0e7bb61f5 Moved Classloader utility methods into their own class. 2017-07-15 18:25:10 +02:00
nathan
67cf2745d2 Code polish 2017-07-15 18:24:39 +02:00
nathan
8ed1e0d3b0 Polished JavaFX and SWT dispatch access to remove hard dependency on
JavaFX and SWT. Now uses JNA to create the classes for SWT access + a
mix of reflection. JavaFX uses reflection.
2017-07-15 18:15:19 +02:00
nathan
cdc2bbd2cf (reverted) Changed Util class names 2017-07-15 18:10:14 +02:00
nathan
4ecafbf50c Removed unnecessary SWT specific code 2017-07-14 18:46:19 +02:00
nathan
7c528918f5 Moved framework (javafx/swt/etc) stuff into it's own class 2017-07-14 18:45:46 +02:00
nathan
d79a5c6ad7 Changed Util class names 2017-07-14 18:45:07 +02:00
nathan
186394a3fc Moved browse() into framework 2017-07-14 18:44:37 +02:00