Commit Graph

203 Commits

Author SHA1 Message Date
Danila Fedorin 0be67410ec Add a binary number type based on the naive number. 2017-08-01 15:00:52 -07:00
Danila Fedorin 6f99f07150 Add comment to PreciseNumber. 2017-08-01 10:49:50 -07:00
Danila Fedorin 2cf41c1029 Add comments to the JavaFX codebase 2017-08-01 10:49:00 -07:00
Danila Fedorin 0cd40b028a Merge branch 'javafx' 2017-08-01 09:53:47 -07:00
Danila Fedorin 7cb04a1222 Switch to the new UI. 2017-08-01 09:53:38 -07:00
Danila Fedorin 0a97eeb442 Resize table columns. 2017-08-01 09:25:13 -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
Danila Fedorin 05d0755526 Implement a cell that copies input when clicked, and add it to table. 2017-07-31 22:53:42 -07:00
Danila Fedorin 0b97a935bf Enable cell selection to later allow for data copying. 2017-07-31 22:34:49 -07:00
Danila Fedorin 211e963db0 Populate the history table. 2017-07-31 22:29:44 -07:00
Danila Fedorin d8145acc8f Implement the history data model. 2017-07-31 17:49:57 -07:00
Danila Fedorin 63b8162a9b Format the fxml. 2017-07-31 17:18:08 -07:00
Danila Fedorin c655c63233 Link up the evaluation and the UI buttons. 2017-07-31 17:17:56 -07:00
Danila Fedorin 27ff1a47b5 Add the inputs to the calculator tab. 2017-07-31 17:16:26 -07:00
Danila Fedorin 2941252f7d Add a tabbed pane as the main focus of the window. 2017-07-31 16:56:38 -07:00
Danila Fedorin 44ed0199d4 Add initialization code to AbacusController 2017-07-31 16:52:34 -07:00
Danila Fedorin 5b582a7dbe Add FXML loading application. 2017-07-31 16:50:39 -07:00
Danila Fedorin a02086e791 Create new fxml file and controller for it. 2017-07-31 16:48:04 -07:00
Arthur Drobot 8666e96420 Remove unused code and functions in StandardPlugin. 2017-07-31 14:53:41 -07:00
Arthur Drobot fd40e6b297 Rewrite exp. (Now works faster.) Add private factorial function to StandardPlugin as well. 2017-07-31 14:49:25 -07:00
Arthur Drobot 79ccd61af3 Add ceiling to NumberInterface and the two numbers that implement it. 2017-07-31 13:25:23 -07:00
Arthur Drobot 699ba9e193 Merge branch 'master' of https://github.com/DanilaFe/abacus 2017-07-31 12:40:19 -07:00
Arthur Drobot e43f223086 Optimize log. 2017-07-31 12:39:56 -07:00
Danila Fedorin 2dbc91f79e Merge branch 'master' of github.com:DanilaFe/abacus 2017-07-31 11:54:25 -07:00
Arthur Drobot 782636a982 Fix comment. 2017-07-31 10:28:39 -07:00
Danila Fedorin 97d63489cc Focus on the text field on startup. 2017-07-30 21:25:21 -07:00
Danila Fedorin a0a4f1fbfe Add comments to the newly defined static functions. 2017-07-30 21:15:01 -07:00
Danila Fedorin 763683b6b4 Move OP_CARET back into place. 2017-07-30 21:12:50 -07:00
Danila Fedorin 3ce74303ed Format code. 2017-07-30 21:11:32 -07:00
Danila Fedorin 122874b97a Move all functions to a static context, stopping unnecessary lookups. 2017-07-30 21:10:11 -07:00
Danila Fedorin 0125980c5a Write tests involving plugin loading, and generalize token testing code. 2017-07-30 19:21:26 -07:00
Danila Fedorin cb7d0f309b Remove the window as a part of the Abacus class. 2017-07-30 15:00:08 -07:00
Danila Fedorin cb98601ae5 Add some comments. 2017-07-30 14:59:20 -07:00
Danila Fedorin 67b95edd44 Write basic tokenizer tests. 2017-07-30 14:52:10 -07:00
Danila Fedorin 960f891393 Remove abacus dependency from PluginManager. 2017-07-30 14:42:06 -07:00
Danila Fedorin b599bef775 Write more tests for the Lexer. 2017-07-30 14:12:17 -07:00
Danila Fedorin 28004ed98d Write tests for special cases. 2017-07-30 00:46:42 -07:00
Danila Fedorin 317cc552e6 Write basic tests for string matching. 2017-07-29 23:48:01 -07:00
Danila Fedorin 43c11f8454 Move the source files into a new default directory. 2017-07-29 23:44:21 -07:00
Danila Fedorin 3131d96d07 Merge branch 'new-parser-prep' into unit-tests 2017-07-29 23:42:23 -07:00
Danila Fedorin 542f4b26ab Fix README formatting.
[ci skip]
2017-07-29 23:35:56 -07:00
Danila Fedorin d449e58888 Add the build badge to the README page.
[ci skip]
2017-07-29 23:35:15 -07:00
Danila Fedorin 085569900b Add a .travis.yml to run TravisCI tests. 2017-07-29 23:29:10 -07:00
Danila Fedorin 7b2ee1c87a Create empty class, getting ready to write tests. 2017-07-29 21:49:36 -07:00
Danila Fedorin 274826cc09 Replace the old TreeBuilder with the new TreeBuilder. 2017-07-29 21:37:55 -07:00
Danila Fedorin bfee4ec322 Implement a LexerTokenizer and a ShuntingYard parser.
These are basically two pieces of the old TreeBuilder, but decoupled
and reimplemented conventionally.
2017-07-29 21:37:32 -07:00
Danila Fedorin bd1f7b8786 Add comments to the two parsing interfaces. 2017-07-29 21:36:39 -07:00
Danila Fedorin 90c6625108 Change matches to store the string they matched. 2017-07-29 21:20:11 -07:00