1
0
mirror of https://github.com/DanilaFe/abacus synced 2024-07-01 07:01:52 -07:00
Commit Graph

169 Commits

Author SHA1 Message Date
Arthur Drobot
7d5efa1fe6 Add fromInt function into StandardPlugin and replace existing instantiations and promotions of NaiveNumbers with integer values with fromInt calls. 2017-08-07 10:33:16 -07:00
35254d3e99 Rename getPi to piFor. 2017-08-06 21:56:49 -07:00
44f018060d Remove the useless caching in the plugin manager and the maps in plugins 2017-08-06 21:55:09 -07:00
arthur326
6a15c266c4 Fix typo in cot function. 2017-08-06 18:13:01 -07:00
9f61fc5dbe Remove the correct unused intPow function. 2017-08-05 18:23:24 -07:00
bae6ee5526 Revert "Remove the NumberInterface::intPow method."
0c16bb4e9b
2017-08-05 18:22:43 -07:00
4f94700aef Remove the NumberInterface::intPow method. 2017-08-05 18:11:16 -07:00
b7152da58d Merge branch 'stoppable-alternate' 2017-08-05 17:58:26 -07:00
d17a8a9fa7 Add missing javadoc. 2017-08-05 17:29:35 -07:00
71c9f0d141 Merge branch 'documentation' 2017-08-05 17:28:08 -07:00
62d7053441 Get rid of unnecessary supplier. 2017-08-05 17:09:12 -07:00
f3cbb600ac Remove the default load-from-file behavior from the Abacus core. 2017-08-05 17:04:07 -07:00
0d21898f20 Make loading plugins a non-core part of Abacus, avoiding desktop APIs. 2017-08-05 16:21:02 -07:00
3e39087fde Add numerous documentation fixes. 2017-08-05 16:15:30 -07:00
a984f2960d Prevent leaving unparsed tokens ignored, throwing error instead. 2017-08-05 16:01:08 -07:00
a6832e09f4 Fix mismatched parentheses causing exceptions. 2017-08-05 15:59:49 -07:00
0bcb3b25d9 Fix exception handling. 2017-08-05 15:58:43 -07:00
2f5f967be4 Add new comments. 2017-08-05 15:19:39 -07:00
72a2a8f1c1 Set output string correctly. 2017-08-05 14:43:24 -07:00
58fc94e9d0 Fix clearing input field. 2017-08-05 14:36:42 -07:00
9cedb100ad Re-introduce arthur326's fix for ln speed. 2017-08-05 14:34:57 -07:00
99be2d80f1 Run calculations via thread, and stop thread if necessary. 2017-08-05 14:34:31 -07:00
2523b9b04b Add a stop button. 2017-08-05 13:57:27 -07:00
cd60c9d52f Convert NumberInterface into abstract class, and check for interruption. 2017-08-05 13:54:06 -07:00
23a3eb88f1 Remove old stopping code. 2017-08-05 13:26:29 -07:00
508e98413d Fix caret just multiplying. 2017-08-04 14:54:01 -07:00
d06f611a2e Remove leftover merge conflict marker. 2017-08-04 14:48:08 -07:00
c541eaab97 Format code. 2017-08-04 14:29:24 -07:00
0058ec9c71 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
f8bf60f383 Fix exp function 2017-08-04 13:52:41 -07:00
Riley Jones
4369eba107 Allow all standard functions to end early 2017-08-04 13:45:29 -07:00
385a0c960d Merge the new edge cases. 2017-08-04 13:32:06 -07:00
Arthur Drobot
d7ae1a80f1 Merge branch 'master' of https://github.com/DanilaFe/abacus 2017-08-04 13:30:05 -07:00
Arthur Drobot
e4a45c0ec4 Add handling of edge cases to pow. 2017-08-04 13:29:53 -07:00
22cf99d23d Add missing comment. 2017-08-04 13:21:28 -07:00
39b36f84e0 Format code. 2017-08-04 13:20:57 -07:00
b036b6c242 Add comments and clean some code. 2017-08-04 12:52:02 -07:00
eb3410f854 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
f967053e3d Merge branch 'master' of github.com:DanilaFe/abacus 2017-08-04 11:55:06 -07:00
75824a2a77 Merge branch 'provider-rewrite' into sin
# Conflicts:
#	src/main/java/org/nwapw/abacus/plugin/StandardPlugin.java
2017-08-04 11:54:12 -07:00
da602876e7 Add comments to all the pi-related stuff. 2017-08-04 11:24:07 -07:00
Arthur Drobot
8df468e04a Check arguments in factorial function. 2017-08-04 10:33:55 -07:00
Arthur Drobot
e029ab1fea Add argument checks in division and natural log. 2017-08-04 10:05:18 -07:00
af56d31723 Implement a getPi function for the plugin, and use the new pi value. 2017-08-04 09:55:24 -07:00
Riley Jones
eff7be0204 StandardPlugin uses null 2017-08-03 23:59:23 -07:00
34ae4b42c6 Add attempt to find the number implementation from the class. 2017-08-03 22:16:08 -07:00
b680215f57 Make the promotion map protected and use classes. 2017-08-03 21:27:53 -07:00
e6cc08043e Add the number implementation to the plugin manager, and use it. 2017-08-03 21:05:25 -07:00
3e10ea223f Add a class that keeps track of the implementation information. 2017-08-03 20:50:53 -07:00
44c52b412c Remove old reference to the promotion system and the number class map. 2017-08-03 20:50:39 -07:00
eb51d5d3e4 Add a save and reload button. 2017-08-03 19:00:13 -07:00
8ae28f2dab Add the apply warnings when switching tabs. 2017-08-03 18:16:48 -07:00
0bade4a7df Add warnings that trigger if configuration has been changed. 2017-08-03 18:12:40 -07:00
Riley Jones
9d5f9d901c Plugin fixes 2017-08-03 15:16:26 -07:00
0f02867a4e Add the list of number interface providers to Plugins. 2017-08-03 14:10:04 -07:00
Riley Jones
dad546c5b5 Add stop button 2017-08-03 14:04:09 -07:00
f0e1b85dcf Make sure disk writes are only on save, and add an alert dialog. 2017-08-03 13:55:39 -07:00
37261c2f58 Fix order of operations bug. 2017-08-03 13:14:09 -07:00
691118c206 Add a number provider cache. 2017-08-03 10:54:09 -07:00
Arthur Drobot
95845a1585 Add tan, sec, csc, cot in terms of what we currently have. 2017-08-03 10:30:42 -07:00
819fff6391 Change the cache search function to be more generic. 2017-08-03 10:03:13 -07:00
Arthur Drobot
8cf0c94947 Add cos. 2017-08-03 09:52:56 -07:00
20f6e0b0b2 Merge branch 'plugin-list' 2017-08-03 09:34:14 -07:00
4056013d1f Add defaults that actually work. 2017-08-02 21:57:53 -07:00
be28e26607 Stop autosaving, switch to save + reload buttons. 2017-08-02 19:40:22 -07:00
2f1ed5f0d1 Change the default implementation string to "<default>" 2017-08-02 19:26:14 -07:00
2615273d28 Refresh all settings on plugin load. 2017-08-02 19:18:33 -07:00
6e1d2ce629 Clear caches on unload and call onUnload before plugins are removed. 2017-08-02 19:14:50 -07:00
44b8efd9bc Actually disable loading the plugin functions in the PluginManager. 2017-08-02 19:06:16 -07:00
2502c90837 Write disabled / enabled plugins to the configuration. 2017-08-02 19:01:01 -07:00
e49f28a850 Add a check box list cell generator. 2017-08-02 18:48:42 -07:00
88e4a87d81 Add a data model for the plugins displayed in the enabled plugins list. 2017-08-02 18:39:00 -07:00
cda09518c3 Add the disabled plugins configuration option. 2017-08-02 18:38:37 -07:00
56510d97de Add the new UI components required for the plugin loading. 2017-08-02 18:24:20 -07:00
Arthur Drobot
86533d53c9 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
9b71f9aaf4 Add comments for FUNCTION_SIN and intFactorial in StandardPlugin. 2017-08-02 15:13:04 -07:00
Arthur Drobot
cf953da40a Fix getPi function. 2017-08-02 14:13:30 -07:00
Arthur Drobot
27ad10c0f1 Remember to use floor in the angle reduction function. Comment debugging output. 2017-08-02 13:27:39 -07:00
Arthur Drobot
601c4fea55 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
c2ae0b4138 Merge branch 'negatives' 2017-08-02 11:33:21 -07:00
16938b4e06 Fix division to not multiply numbers. 2017-08-02 11:28:49 -07:00
d964fbfb6f Implement the negation operator. 2017-08-02 11:26:59 -07:00
Arthur Drobot
52fbfd5134 Change getPi to calculate pi using a series. 2017-08-02 11:03:17 -07:00
9713f24ed2 Rename nodes to more general names. 2017-08-02 10:41:52 -07:00
5de9453bec Merge branch 'config-rewrite' 2017-08-01 16:42:58 -07:00
Arthur Drobot
b31151384d Implement sin function and helper functions such as getSmallAngle and floor. 2017-08-01 15:36:54 -07:00
d205651332 Add a number implementation selector box. 2017-08-01 11:52:48 -07:00
6f99f07150 Add comment to PreciseNumber. 2017-08-01 10:49:50 -07:00
2cf41c1029 Add comments to the JavaFX codebase 2017-08-01 10:49:00 -07:00
76677ef494 Merge the two configuration classes into one. 2017-08-01 10:24:32 -07:00
0cd40b028a Merge branch 'javafx' 2017-08-01 09:53:47 -07:00
7cb04a1222 Switch to the new UI. 2017-08-01 09:53:38 -07:00
Arthur Drobot
1ee8c7d231 Keep 15 additional decimal places. 2017-07-31 23:16:37 -07:00
Arthur Drobot
f97d16c640 Comment out debugging output. 2017-07-31 23:09:11 -07:00
Arthur Drobot
a0bba03c2c Separate power and factorial calculations to fix large precision loss in exp. 2017-07-31 22:56:55 -07:00
05d0755526 Implement a cell that copies input when clicked, and add it to table. 2017-07-31 22:53:42 -07:00
0b97a935bf Enable cell selection to later allow for data copying. 2017-07-31 22:34:49 -07:00
211e963db0 Populate the history table. 2017-07-31 22:29:44 -07:00
d8145acc8f Implement the history data model. 2017-07-31 17:49:57 -07:00
c655c63233 Link up the evaluation and the UI buttons. 2017-07-31 17:17:56 -07:00