1
0
mirror of https://github.com/DanilaFe/abacus synced 2025-04-22 08:27:12 -07:00
Commit Graph

165 Commits

Author SHA1 Message Date
5a1a05ddad Remove the correct unused intPow function. 2017-08-05 18:23:24 -07:00
4146e1a439 Revert "Remove the NumberInterface::intPow method."
0c16bb4e9b
2017-08-05 18:22:43 -07:00
0c16bb4e9b Remove the NumberInterface::intPow method. 2017-08-05 18:11:16 -07:00
e8f82f9eff Merge branch 'stoppable-alternate' 2017-08-05 17:58:26 -07:00
202eb3ebe1 Add missing javadoc. 2017-08-05 17:29:35 -07:00
b6e045b152 Merge branch 'documentation' 2017-08-05 17:28:08 -07:00
467d5d4145 Get rid of unnecessary supplier. 2017-08-05 17:09:12 -07:00
9efe9be5b4 Remove the default load-from-file behavior from the Abacus core. 2017-08-05 17:04:07 -07:00
edba2eca2e Make loading plugins a non-core part of Abacus, avoiding desktop APIs. 2017-08-05 16:21:02 -07:00
9b37794d04 Add numerous documentation fixes. 2017-08-05 16:15:30 -07:00
b1b8af014d Prevent leaving unparsed tokens ignored, throwing error instead. 2017-08-05 16:01:08 -07:00
48e6e658d0 Fix mismatched parentheses causing exceptions. 2017-08-05 15:59:49 -07:00
55257f7274 Fix exception handling. 2017-08-05 15:58:43 -07:00
2381c93fb5 Add new comments. 2017-08-05 15:19:39 -07:00
90a0fa2dc7 Set output string correctly. 2017-08-05 14:43:24 -07:00
a5a1f3a96a Fix clearing input field. 2017-08-05 14:36:42 -07:00
a7ed7b48cf Re-introduce arthur326's fix for ln speed. 2017-08-05 14:34:57 -07:00
4bd52e514c Run calculations via thread, and stop thread if necessary. 2017-08-05 14:34:31 -07:00
4f7fe053de Add a stop button. 2017-08-05 13:57:27 -07:00
37a759288a Convert NumberInterface into abstract class, and check for interruption. 2017-08-05 13:54:06 -07:00
8465a2d918 Remove old stopping code. 2017-08-05 13:26:29 -07:00
6a29851618 Fix caret just multiplying. 2017-08-04 14:54:01 -07:00
208b40c96d Remove leftover merge conflict marker. 2017-08-04 14:48:08 -07:00
d1a084363e Format code. 2017-08-04 14:29:24 -07:00
a7e84bc946 Merge branch 'stoppable-new'
# Conflicts:
#	src/main/java/org/nwapw/abacus/fx/AbacusController.java
#	src/main/java/org/nwapw/abacus/plugin/StandardPlugin.java
2017-08-04 14:28:22 -07:00
Riley Jones
50b0c86edd Fix exp function 2017-08-04 13:52:41 -07:00
Riley Jones
f3758c83a9 Allow all standard functions to end early 2017-08-04 13:45:29 -07:00
8b9892636d Merge the new edge cases. 2017-08-04 13:32:06 -07:00
Arthur Drobot
80366dbfcd Merge branch 'master' of https://github.com/DanilaFe/abacus 2017-08-04 13:30:05 -07:00
Arthur Drobot
9bf1aee92d Add handling of edge cases to pow. 2017-08-04 13:29:53 -07:00
5019782393 Add missing comment. 2017-08-04 13:21:28 -07:00
b78707a0f4 Format code. 2017-08-04 13:20:57 -07:00
ce484cfd43 Add comments and clean some code. 2017-08-04 12:52:02 -07:00
4c8dff6623 Merge branch 'sin'
# Conflicts:
#	src/main/java/org/nwapw/abacus/Abacus.java
#	src/main/java/org/nwapw/abacus/plugin/PluginManager.java
2017-08-04 12:04:37 -07:00
bf3aa2becd Merge branch 'master' of github.com:DanilaFe/abacus 2017-08-04 11:55:06 -07:00
68f5163deb Merge branch 'provider-rewrite' into sin
# Conflicts:
#	src/main/java/org/nwapw/abacus/plugin/StandardPlugin.java
2017-08-04 11:54:12 -07:00
8891b04598 Add comments to all the pi-related stuff. 2017-08-04 11:24:07 -07:00
Arthur Drobot
48839a3b5d Check arguments in factorial function. 2017-08-04 10:33:55 -07:00
Arthur Drobot
8215f3e98c Add argument checks in division and natural log. 2017-08-04 10:05:18 -07:00
276b6719fd Implement a getPi function for the plugin, and use the new pi value. 2017-08-04 09:55:24 -07:00
Riley Jones
6c02d3833d StandardPlugin uses null 2017-08-03 23:59:23 -07:00
b06e9fcbee Add attempt to find the number implementation from the class. 2017-08-03 22:16:08 -07:00
4fd30030f9 Make the promotion map protected and use classes. 2017-08-03 21:27:53 -07:00
8a79d0c2df Add the number implementation to the plugin manager, and use it. 2017-08-03 21:05:25 -07:00
3f2c4ae249 Add a class that keeps track of the implementation information. 2017-08-03 20:50:53 -07:00
542f062b5e Remove old reference to the promotion system and the number class map. 2017-08-03 20:50:39 -07:00
baeb857560 Add a save and reload button. 2017-08-03 19:00:13 -07:00
5ff494605e Add the apply warnings when switching tabs. 2017-08-03 18:16:48 -07:00
963871d7b6 Add warnings that trigger if configuration has been changed. 2017-08-03 18:12:40 -07:00
Riley Jones
c680168d18 Plugin fixes 2017-08-03 15:16:26 -07:00
7dda1f2fcf Add the list of number interface providers to Plugins. 2017-08-03 14:10:04 -07:00
Riley Jones
0108c7bcc1 Add stop button 2017-08-03 14:04:09 -07:00
6cce975bcf Make sure disk writes are only on save, and add an alert dialog. 2017-08-03 13:55:39 -07:00
e2f66386b2 Fix order of operations bug. 2017-08-03 13:14:09 -07:00
7c0f0046f8 Add a number provider cache. 2017-08-03 10:54:09 -07:00
Arthur Drobot
c6afcfeb4f Add tan, sec, csc, cot in terms of what we currently have. 2017-08-03 10:30:42 -07:00
22f1b7543a Change the cache search function to be more generic. 2017-08-03 10:03:13 -07:00
Arthur Drobot
5857e3f0a5 Add cos. 2017-08-03 09:52:56 -07:00
af1797f101 Merge branch 'plugin-list' 2017-08-03 09:34:14 -07:00
91f238f7e2 Add defaults that actually work. 2017-08-02 21:57:53 -07:00
39c84b2c3f Stop autosaving, switch to save + reload buttons. 2017-08-02 19:40:22 -07:00
f194eb891c Change the default implementation string to "<default>" 2017-08-02 19:26:14 -07:00
3650d1eec7 Refresh all settings on plugin load. 2017-08-02 19:18:33 -07:00
df94f698c3 Clear caches on unload and call onUnload before plugins are removed. 2017-08-02 19:14:50 -07:00
21150fa7a2 Actually disable loading the plugin functions in the PluginManager. 2017-08-02 19:06:16 -07:00
8ae9b2fcbd Write disabled / enabled plugins to the configuration. 2017-08-02 19:01:01 -07:00
27ffa4c78f Add a check box list cell generator. 2017-08-02 18:48:42 -07:00
482c3c2dd1 Add a data model for the plugins displayed in the enabled plugins list. 2017-08-02 18:39:00 -07:00
d05850edfa Add the disabled plugins configuration option. 2017-08-02 18:38:37 -07:00
f181fdd8dc Add the new UI components required for the plugin loading. 2017-08-02 18:24:20 -07:00
Arthur Drobot
f5fa890c4f Fix scaling for optimization in FUNCTION_LN, in the positive direction towards unity (i.e., when the argument passed to ln is small). 2017-08-02 15:33:34 -07:00
Arthur Drobot
921c176317 Add comments for FUNCTION_SIN and intFactorial in StandardPlugin. 2017-08-02 15:13:04 -07:00
Arthur Drobot
7fa28c4ebf Fix getPi function. 2017-08-02 14:13:30 -07:00
Arthur Drobot
955bd4c04d Remember to use floor in the angle reduction function. Comment debugging output. 2017-08-02 13:27:39 -07:00
Arthur Drobot
44ad5b3a6c Change ceiling and floor to return NumberInterface. Add fractional part function. Add intValue function. Change StandardPlugin correspondingly. 2017-08-02 12:00:56 -07:00
ecc5f6d2bd Merge branch 'negatives' 2017-08-02 11:33:21 -07:00
2b4da2a1ff Fix division to not multiply numbers. 2017-08-02 11:28:49 -07:00
046764eeca Implement the negation operator. 2017-08-02 11:26:59 -07:00
Arthur Drobot
c027a23dcb Change getPi to calculate pi using a series. 2017-08-02 11:03:17 -07:00
31a4234d9b Rename nodes to more general names. 2017-08-02 10:41:52 -07:00
9eaeb079b7 Merge branch 'config-rewrite' 2017-08-01 16:42:58 -07:00
Arthur Drobot
661bc170fc Implement sin function and helper functions such as getSmallAngle and floor. 2017-08-01 15:36:54 -07:00
1344090a58 Add a number implementation selector box. 2017-08-01 11:52:48 -07:00
0db9e39e63 Add comment to PreciseNumber. 2017-08-01 10:49:50 -07:00
4be4ffd57a Add comments to the JavaFX codebase 2017-08-01 10:49:00 -07:00
33deb34925 Merge the two configuration classes into one. 2017-08-01 10:24:32 -07:00
189e51c05d Merge branch 'javafx' 2017-08-01 09:53:47 -07:00
d339385cf2 Switch to the new UI. 2017-08-01 09:53:38 -07:00
Arthur Drobot
c7136f903a Keep 15 additional decimal places. 2017-07-31 23:16:37 -07:00
Arthur Drobot
f873b4ecad Comment out debugging output. 2017-07-31 23:09:11 -07:00
Arthur Drobot
f68f184945 Separate power and factorial calculations to fix large precision loss in exp. 2017-07-31 22:56:55 -07:00
942326f6f7 Implement a cell that copies input when clicked, and add it to table. 2017-07-31 22:53:42 -07:00
4b57c7f67b Enable cell selection to later allow for data copying. 2017-07-31 22:34:49 -07:00
02b87bfae4 Populate the history table. 2017-07-31 22:29:44 -07:00
61ead67535 Implement the history data model. 2017-07-31 17:49:57 -07:00
8c935983b2 Link up the evaluation and the UI buttons. 2017-07-31 17:17:56 -07:00
d42172ce03 Add initialization code to AbacusController 2017-07-31 16:52:34 -07:00
0b173a68dd Add FXML loading application. 2017-07-31 16:50:39 -07:00
5c886cee60 Create new fxml file and controller for it. 2017-07-31 16:48:04 -07:00
Arthur Drobot
87f98228d0 Remove unused code and functions in StandardPlugin. 2017-07-31 14:53:41 -07:00