-
Notifications
You must be signed in to change notification settings - Fork 13
/
Patchlog.txt
507 lines (416 loc) · 28.3 KB
/
Patchlog.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
TODO: Include Patchnotes before 0.10.2
v0.10.2: Simple Differential Equation Support
+ The Calculator now supports differential equations (only general solution)
++ (Differential Equations will get their own tab for more complex tasks like particular solution)
+ The start-up-message is now displayed before the modules load to give feedback to the user that the program is loading.
+ You can now copy the x and y values for a plot with the context menu in the history if the advanced mode is enabled
+ Added a Patchlog.txt
v0.10.2.1: Better Differential Parser
+ The parser now supports y'(x) with y being any function (including sin etc.), ' being ',''," or ''' and x being any single unicode letter
v0.10.2.2: Bug Fix
+ Fixed a bug where ''' and '' were not correctly parsed
+ Improved handling of ODE's that do not include a "="
v0.11.0: Particular Solution
+ First Support for solving the particular solution of linear differential equations
++ (WIP: Needs Testing) (see InputExamples.txt for examples
+ You can now display the LaTeX version of the Solution of a history item via the context menu
v0.11.1: Always on Top
+ Added a checkbox to the options to try to force the Window to always stay in the foreground
++ Does not work always since this is only a request to the window manager which does not always grant this
+ When calculating an ODE the classifications are displayed in the console
v0.11.1.1: Start of Flag implementation
+ Start of Flag implementation
++ This has the effect that the output is easier to read
v0.11.1.2: Fix for Convert Button
+ Convert Button on Tab 2 works again
v0.11.1.3: Highlighting in LaTeX Input
+ The LaTeX input now highlights pairs
+ Differential equations without conditions now print their classification in the console, too.
+ Bools as the result of a function no longer raise an exception bit instead are displayed
+ "ans" is only replaced with the previous solution if it is not part of a word.
++ This means that you can Laplace transform (since the word transform was previously ripped apart...)
v0.11.1.4: Preparation for MultiDim Parser
+ First preparation for parsing things like matrix multiplication and Transposing matrices
v0.11.2: Better LaTeX Parser, better Derivative Input and new Test-Method
+ The LaTeX input is no longer evaluated but instead displayed as the user intended it
++ Use (expr).doit() to combine Matrices in the expression
++ Use evalf (just type it ANYWHERE) to evaluate everything
+ Added a test method that is executes many testinputs when typing "RUNTEST" in the calculator input
+ Added support for dots as derivatives
+ When a function without a variable is differentiated it is assumed x for ' and t for the dot
v0.11.2.1: Evalf for LaTeX
+ Most inputs now use the Evalf Flag to decide whether to Evaluate when converting to
v0.12.0: Keyboard Remapper Beginning
+ AltGr+1 now types ∫ , AltGr+3 now types √ , AltGr+p now types π
+ AltGr+Shift+Number types the number as subscript
v0.12.0.1: Streamlined Keyboard Remapper
+ Merged the two Remap lists
+ (Remapper is now has unused function to toggle it)
v0.12.0.2: Bug Fix and Top Bar
+ The Remapper is now really Toggable
+ The checkboxes for the Remapper and the Syntaxhighlighter are now in the bar where the Font Size Spinbox is to make them more accessible
+ Added Hotkeys to some options
v0.12.0.3: Remap Table Filled
+ The Remap Table is now filled with my custom layout for my Linux Laptop
v0.12.0.4: Bugfix
+ Fixed 2 Entries in the Remap Table
+ The MICRO SIGN (U+00B5) "µ" is now interpreted as GREEK SMALL LETTER MU (U+03BC) "μ" by the parser
v0.12.0.5: Bugfixes
+ Fixed ans not being replaced by last answer
+ Caused a memory leak to prevent random crashes as the memory leak is small enough to ignore it...
++ This does not make me happy and is a temporary solution but I NEED to stop the crashes... I hate QThreads...
+ Disabled option to not eval when converting to LaTeX for now due to unexpected bugs in sympy library...
v0.12.0.6: Bugfixes: Evaluate LaTeX
+ Reenabled Eval for LaTeX but gave it its own checkbox.
++ When the tick is not set a script is run independently from AMaDiA to convert to LaTeX
+++ This ensures that "with sympy.evaluate(False):" does not mess up everything (since it behaves odd when used in multithreaded Programms)
v0.12.0.7: Bugfix: Combining dot above for Windows
+ Fixed the keyboardremap for the combining dots above for ATextEdit and derived Classes.
++ It is still broken in all other cases since Windows is stupid...
v0.12.0.8: Preparation for Colour Changing
+ Restructured everything about Colours and Fonts in preparation to make these things changeable during runtime
v0.12.0.9: LaTeX Eval Tristate
+ The Eval checkbox on the LaTeX tab is now tristate:
++ Do not evaluate everything
++ Evaluate some things
++ Set Evaluate=True when parsing with SymPy
+ Fixed a bug that caused a crash when plotting fails
+ The Advanced Mode now allows you to try to plot everything from all tabs
v0.12.1: Exception Notification
+ When an Error occurs the user is now notified in the main window
++ A short Description is displayed as a tooltip when hovering over the message
++ Only the most recent Error, Warning or Notification is displayed. For older Errors and warning look in the console.
++ Not all exceptions are displayed in the main window. For all exceptions and more details you still have to look in the console.
v0.12.1.1: More Notifications
+ Added more Notifications
+ Converted the Comments that described the functions and methods into strings to allow VSC to display it in the quick info
+ Fixed a crash wehen AMaS.Exists != True
v0.12.1.2: AMaS notifications
+ AMaS can now return notifications when successful (Previously only when not successful)
v0.13.0: Chat
+ Added my simple chat program
++ You can use it to send text and text files over LAN connections
++ The implementation is not final.
++ The messages are not encrypted! Do not send sensible data
v0.13.1: New Paint
+ Added the option to choose between 2 Colour Palettes: Dark and Bright
+ The Chatwindows take the colour of the main window when they were opened
v0.13.1.1: Bugfix
+ Fixed a bug that would crash everything when trying to send a message from the Chat Server
v0.13.1.2: Bugfix
+ Fixed: Notifications in Bright Mode were resetting the background colour to the Dark Mode. Now the Bright Mode stays bright.
v0.13.1.3: Canvas Paint
+ When changing the colour all Canvas elements automatically refresh their colour
v0.13.1.4: negative power
+ The parser now supports ⁻¹,⁻²,...,⁻⁹,⁻⁰
+ The parser now supports ᵀ to transpose a matrix
+ All trailing zeroes are now removed from all numbers
v0.13.1.5: Inactive Plot Colour
+ Fixed the colour of inactive plots in bright mode
v0.13.1.6: Copy Notifications
+ Double-clicking the notification now copies it to the clipboard.
+ If LaTeX or Control are not installed the user now gets a notification.
v0.13.1.7: UI Preparation
+ Added Tab 5 for System Control
+ Added a tab widget to tab 3 in preparation for 3D-, Complex- and nD- Plotter
v0.13.1.8: Full Screen
+ F11 toggles fullscreen
+ Added the control library to the new External_Libraries folder
+ Added "How to install" to the readme and added 2 batch files to make installation and Running/Updating easy on Windows
v0.14.0: Assuming Direct CONTROL
+ New Tab: Control Tab
++ This tab is all about System Control
++ Input transfer function or state system to plot all associated plots
++ Double-click a plot to make it larger
++ Better Input and more output coming soon
+ (User Request) The LaTeX process is now started at the same time as AMaDiA to make the first display lass annoying
v0.14.0.1: 2nd Control Example
+ Added a 2nd Control Code Input Example to show a syntax for state space input
v0.14.1: Housecleaning
+ Cleaned up AMaDiA Folder by moving most code into a sub folder
++ Adjusted imports accordingly
+ Changed the Threading to use a Threadpool and worker classes
++ This Fixes the memory leak and prohibits that too many threads are active at the same time
++ The Threading mode can be changed back in the options menu
+ The Control Tab can now plot a system response for a specific input function
+ Some text files are now accessible from the UI
+ Temporarily disabled the Sympy Plotter because the control tab has broken it for unknown reasons...
++ Fixing this might take a while...
+ Streamlined folder-detection
v0.14.2: Super Plotter
+ The 2D Plot can now plot much much more reliable
++ x*exp(x) and ∫sin(x)+√(x)dx*sin'(x) are no longer a problem!
+ The SymPy Plotter will (probably) remain dead as it is not worth to fix it.
++ When the sympy plotter plots it also tries to plot all other pyplot plots
+++ This means that it makes it impossible for me to use pyplot anywhere else...
++ The sympy Plotter was never designed to be used in a GUI application anyways and the AMaDiA plotter looks better anyways.
++ Instead of trying to work around the badly implemented sympy plotter I will instead use the time to improve the AMaDiA plotter.
+ Added some comments to let VSCodes error-detection know that my code is correct and does not need to glow red and yellow...
v0.14.2.1: WIP Cleanup
+ Disabled the input tab in the control tab and removed the WIP tab in the Plot tab.
++ They should not be interactable to not confuse the user as they are currently blank
++ These were added to make future development easier as UI reworks can be a lot of work
v0.14.2.2: Welcome
+ When no message needs to be displayed on start the program now welcomes the user by username
v0.14.2.3: List Solve Fix
+ Lists are no longer processed with sympy.solve (as solving a list returns an empty list)
++ This means that "solve(a*x^2+b*x+c*1,x)" (which creates a list) no longer needs "Eval Functions" to be turned off!
v0.14.2.4: Control Input Development 1
+ UI part of the Input Tab in the Control Tab is now done.
++ Tab is still disabled since most of the functionality is not implemented yet.
+++ Changed "Reload Modules" to temporarily enable the Tab instead of reloading Modules
v0.14.2.5: Control Input Development 2
+ Fixed Error Display when System name is invalid
+ When changing the Order the columns for the Transfer Function are now added/removed from left instead of right
v0.14.2.6: Control Input Development 3
+ Renamed "Reload Modules" to "Dev Function"
+ More work on the Control input Tab
++ Added 4th input method that accepts a transfer function in most forms without the need to isolate the coefficients
v0.14.2.7: More Bode Phase Lines
+ The big version of the Bode plot has now more major y-ticks for the phase to increase readability
v0.14.3: Notification History and Better Keyboard Remapper
+ Made the alternate plotting value calculation throw an error in most cases in which it can't guarantee a correct plot
+ The Notification tooltip is now instantaneous and clicking on it opens the Notification History
++ The Notification History is updated for new notifications automatically
+ The Keyboard Remapper handles AltGr better and seems to win the fight against evil Windows most of the time
+ First implementation of superscript (^1 now prints ¹ when you are quick)
+ Improved the layout of the Dark Theme class in AMaDiA_Colour.py
v0.14.3.1: Synchronous Appearance
+ The Colour of all open sub-windows now changes when the colour of the main window is changed
+ The font size of all open sub-windows (except chat server and client) now changes when the font size of the main window is changed
v0.14.3.2: Error Button
+ After questioning some testers it seems that the Error label was not intuitive thus it is now a button
++ To make it even more intuitive the button now as a corresponding icon
v0.14.4: QoL
+ The Control Tab now tries to plot all plots independently and does not give up all if one fails
++ This means Bode/Nichols/Nyquist/pzmap of all systems can be displayed, even if the system response can not.
+ Tables no longer loop to the start/end but instead go to the next widget with tabulator
+ Textfields now use tabulator to select the next widget
+ Fixed multiline syntaxhighlighting for textfields
+ Control/Input/Transfer: return now selects next relevant field
+ Control/Input: The save buttons are now part of the upper splitter (as this makes immensely more sense)
+ Identified two colours (Light and Dark) and fixed the colour of the lines in Plotter/2D/Config
v0.14.4.1: Tab Hotkey
+ ctrl+NUMBER now changes between the main tabs
+ The Chat no longer crashes everything when no Networkconnection can be established
v0.14.4.2: Local Keyboard Remapper
+ The old Keyboard Remapper is working on all applications and is getting more and more stable but has its quirks
++ It is now located in the Options
+ A new local ( = only works in AMaDiA ) Remapper has taken the Top Bar Checkbox
++ This Remapper is much more stable, activated per default and works in all AMaDiA Windows
++ This Remapper does not need to be executed as root on Linux
++ The intention is not to remove the global Remapper but to supplement it
v0.15.0: Custom Window Frame
+ Added all functionality from the standard window frame into the main window
++ The main window makes a requests to the OS to not have a frame but the OS may deny this request
+ All elements from the main window are now more compact
+ Updated the AMaDiA.bat to close the console properly when Anaconda is installed in the User Folder
v0.15.0.1: Smoother Corner Buttons
+ The buttons to minimize/maximize/close are now visually integrated
v0.15.0.2: Deep Red
+ The Close button now shines in a deeper red
+ The Statusbar now displays the Window title on startup
+ The TopBar_Widget is now independent of the Main Window class and can thus be used for all windows
v0.15.0.3: Performance
+ Sped up the checks in the event filters to increase performance
+ Laid implemented new window frame for all subwindows except the chat
++ The new window frame on the subwindows is currently turned off as a differently coloured window border seems necessary
v0.15.0.4: Placeholder Functions
+ Added a placeholder function to zoom into the Single-Plot-view in the Control Tab
+ Prepared the removal of the Menubar and moving all its current function to the TabWidget's TabBar
v0.15.1: Even More Compact
+ The MenuBar is now compressed into one Button and the TopBar is now on the side of the TabBar
++ The old design with easy menu access is still implemented and will be toggleable in the future (current attempts failed)
+ Most context menus are now coloured and use the correct font
+ The MultiDim output now always displays something, even if it can't convert the solution to LaTeX
v0.15.1.1: Nyquist Distinction
+ The Nyquistplot now distinguishes between the primary and the mirror plot
v0.15.1.2: Further steps to toggle Compact Menu
+ Compact Menu will soon be toggleable
v0.15.1.3: Toggleable Compact Menu
+ The Compact Menu is now toggleable with Alt+C or using the Menu
+ The TopBar behaves much more smoothly
+ CloseButton now reaches all the way into the corner as a proper close button should
v0.15.2: Control Single Plot Zoom
+ You can now zoom into the Single Plot View in the Control-Tab
+ Split up the TODOs into 10 subcategories to get more out of the "Todo Tree" extension for VSC
v0.15.3: Palette and Font setting overhaul
+ Redid everything about Font and Palette setting to be based on an application-level (instead of per window)
++ This means more consistent behaviour and less work in the future
+ Changed the handling of notifications from window to Application level for easier handling
+ Added a scrollbar to Control-SingelPlot-ZoomFunction to allow smaller sizes for the window
v0.15.3.1: Fix for Error Notifications
+ Fixed the update of text and tooltip for the TopBarErrorButton when an Error-notification is send.
v0.15.3.2: Bugfix and Center-Hotkey
+ Fixed a crash that was caused when a notification that is only visible in advanced mode was send
+ ctrl+0 now centres all windows and resizes them
++ This is useful if the resize or move fields are outside of the screen which would require a restart of the application
+ Added 2 new entries to BUG-INPUT.txt
v0.15.3.3: Beginning of AMaS Rework and typo correction
+ Started to rework AMaS
+ Corrected all typos in the code
v0.15.3.4: TopBar init change
+ The __init__() from TopBar_Widget now takes 4 bools to call its init()
++ When using TopBar_Widget in QtDesigner one can add a layout and other widgets to the TopBar_Widget
+++ init() must be called after adding a layout thus the __init__() and init() must be separable
v0.15.3.5: Folder Creation improvement
+ Thanks to exist_ok=True creating a folder no longer raises an exception which must be ignored
++ This means that the code can now be simplified
v0.15.4: Multithreading save Notifications
+ Added a new function that can send notifications
++ This new function is multithread save and can be called from anywhere without any concern
+++ This allows me to revolutionize the notifications in future updates as I am no longer limited to sending signals from QThread/QRunnable
+++ The same method can be used to send other data to other windows and widgets and offers great flexibility in the future
v0.15.5: More readable Output and recent Notifications
+ The solution part of the output in the calculator is now inverse parsed to make it easier to read
++ The not-inverse-parsed solution is accessible via the "Copy Solution" option in the context menu
++ To ensure that the inverse parse makes no mistakes it is only used if parsing it again is equal to the original solution
+ The classifications of ODEs are now displayed as a notification
+ Removing trailing new lines and spaces from all notifications
+ When many notifications are send at the same time they are all displayed in the tooltip
++ The icon is set for the highest priority notification in the tooltip
++ The colour of the flash is for the latest notification that managed to start the flash-animation
+++ Note: When the flash-animation is currently running the start of a new flash-animation can fail
v0.15.6: Proper Window Frame
+ This update completes the custom window frame as all standard frame features are now implemented
++ Note: The size of (and effort that went into) this update would normally make it update 0.16.0
+++ As it completes goals of "v0.15.0: Custom Window Frame" I have decided to keep it as part of v0.15
+ Made custom Window-class that is now used by all windows except for the chat (Chat will be reworked in the future)
++ Has a proper frame around everything including MenuBar and StatusBar
+++ This frames makes the end of the window visible and allows me to use it for all windows without confusing the user
+++ Dragging the frame resizes the window
+++ Frame hides if window is maximized or in full-screen-mode
++ All windows (except chat) now have a global font size spin box
+ The MenuBar and the main TabBar now allow to move the window
+ When moving a window that is maximized or in full-screen-mode it first exits this mode
+ When moving a window to a corner/side of the screen it now fills it
+ The 'Copy Solution' context menu action is now at the very top
v0.15.6.1: Degree Support
+ Added support for degree "°"
++ "/°" converts to "*(360/pi/2)" and "°" converts to "/(360/pi/2)" thus ° converts a number to degree and /° to radiants
v0.15.6.2: Tab 5 Input Tab Bug Fix
+ Fixed a bug that caused the Save Button in the Input tab in tab 5 to not detect the current input method (TF,SS,etc.)
v0.15.6.3: Resizing Optimization
+ Reworked the resizing of the window to work reliable and smooth.
v0.15.6.4: More Windows
+ It is now possible to open several instances of AMaDiA_Internal_File_Display_Window as long as their files are different
++ This means that you can open the Examples and the Helpful Useable Commands at the same time!
++ If a window for a specific file name is opened twice the old instance is closed
+ The font size spin box now initializes with the correct font size for new windows
+ Each window now saves its standard size
++ This variable is applied when using "ctrl+0" and currently has no other use
v0.15.6.5: Tiny Fix
+ Control/Input/Transfer: Fixed the removal of leading entries that are 0
+ Fixed some typos in the patchlog
v0.15.7: Window Titles, Menu Fixes and Dev Functions
+ Added a new window to execute code during runtime for debug purposes (Application wide shortcut is ctrl+T)
+ Added a button to close all running threads that are used for calculations
++ This is a dirty implementation and it can only be implemented dirty! Use with caution!
+ Added a display for the currently running calculations
++ This means that the user can now see if a calculation is running without looking into the console
+ Added a new menu for all Dev-Functions that should be used with caution!
+ Fixed size problems with the MenuBar
+ Moved most window-frame related code to the widget definitions to clean up the code
+ The window title now has its own space in the bottom right corner
++ This frees the status bar to show other information like the aforementioned number of currently running calculations
+ Fixed the tool tips for the menu actions
v0.15.7.1: Screenshots
+ F12 now saves a screenshot of the current window
+ The folder path is now handled by the application instead of the main window
+ Finally added current screenshots!!!
v0.15.8: Full Equation as LaTeX
+ Added the option to display entire equations in LaTeX
+ MultiDim-tab: Now displays the equations instead of only the solution
+ MultiDim-tab: When copying the text or equation the matrix names are now replaced by the actual matrices
+ Added highlight colours to the dark theme
v0.15.8.1: Bug Fix for Bad MultiDim Names
+ Fixed a crash in the MultiDim tab when a bad name for a matrix like "(" was used in a calculation
+ Removed AMaS_old to avoid confusion when programming
v0.15.9: Options Window, PlusMinus and Flags
+ Added support for ± and ∓
+ Added a new options window
++ Moved keyboard remap to options window
++ Added a font combo box to the options window (which means that the setFont function is finally used to its full potential!)
++ Implemented the first Flags to control the format of the solutions of the calculator
+ Fixed a bug that caused the window to resize when clicking on the top edge in compact mode to move the window
+ When a new text edit is initialized the highlighter activation status is now read instead of just assumed to be True
v0.15.9.1: ToolTip Colour Fix
+ Finally fixed the ToolTip colour for dark theme
++ It turns out the colours for text and base were simple swapped...
++ I tried to fix this many times but never checked what colours I set. I just assumed they would be dark... They were not...)
++ Thankfully the problem was that I simply set the wrong values and not that qt has a bug
v0.15.9.2: Solve for Specific Variable and ToolTip Colour Fix for Windows
+ You can now set specific variables to solve equations for in the options window!
+ Improved handling of ± and ∓
+ Fixed the ToolTip colour for MS Windows (because MS Windows is "special" and needs the colour in a more explicit way than Linux)
+ Made the ToolTipBase darker
v0.15.10: History Copy QoL
+ You can now select what ctrl+c copies in the history when having a single item selected
+ Selecting multiple items in a History and then pressing ctrl+c now copies all
+ Double-clicking an item in the calculator history now pastes the input of that item into the Input Field
+ Added 'Copy Equation' to History context menu
++ This was already accessible via ctrl+c but the ctrl+c behaviour can now be changed which necessitates this option
+ Added 'Copy LaTeX Equation' to History context menu
+ "Preloading LaTeX" now uses a more complex string to ensure that LaTeX is fully preloaded
++ Previously "§1§" was used to preload but this only preloaded LaTeX partially
v0.15.10.1: Improved LineEdit Multi-Line-Paste
+ When pasting a multiline string into a LineEdit the line breaks are now also removed when the MimeData has more than just Plain Text
++ It was probably the case that the standard paste method preferred to paste HTML or /something else/ rather than the modified plain text
+++ The fix was to skip the standard print method but instead printing the plain text directly
+++ When the MimeData has no plain text the standard print method is still used which could cause line breaks to be pasted
++ Furthermore all lines are now isolated in parentheses to better indicated the former line breaks
v0.15.11: Notification Class
+ Implemented a notification class
++ This class can also handle the entire exception output, making the function ExceptionOutput obsolete
+++ ExceptionOutput now redirects to this new notification class and returns an object.
++++ This object should be compatible with all old code as the important string function (__str__,__add__,__radd__) are implemented
v0.15.12: Notification Class II
+ Notifications:
++ Replaced all old notifications by the new notification class (NC)
+++ The old notification system is completely removed
++ Added more information to existing notifications
+++ For example most notifications now include the function, the window and the user input that is associated with the notification
++ The notification window now displays all information about a selected notification
++ The changes of ExceptionOutput are reverted. Instead NC can now handle Exceptions on its own.
+++ Thanks to this the exception handling has been reduced to one line in most cases while being more readable in the code and giving more information in the notification!
++ Advanced-Mode-Notifications that were send while advanced more was off are now always listed in the notification window.
++ Changed requirement for recent notifications to be included in the tooltip
+ The context menu code now lives in the HistoryWidget to keep the main window code clean
+ NoEvalParse changes:
++ The NoEvalParse option for the LaTeX view must be turned on in the dev tab in the option window
+++ It turns out that the new process still influences the main program which makes the calculator unreliable
++ The half-checked state now checks if the LaTeX version equals the normal version
+++ This ensures that sin(2*2*t*pi) doesn't return the LaTeX sin(2*t*pi) but instead sin(4*t*pi)
+++ The old behaviour (without this check) is now the behaviour of the unchecked state if the box in the dev tab is not checked
++ Improved the NoEvalParse script to work more reliable (That stuff behaves weird, dude!!!)
++ The NoEvalParse should now be compatible with other OS than Windows and Linux
+++ This means that everything (excluding library dependencies) should be OS independent
+ Added ans1, ans2 and ans3 to access the solution of the last three items of the calculator list
++ ans is no longer the last calculated solution but instead a synonyme for ans1
++ All ans are isolated in parentheses to enable multiplication of complex numbers
+ Cleaned up the overhead of the code execution window
v0.15.12.1: Notification Class in AMaS
+ AMaS no uses the notification class instead of Notify in most cases.
+ The notification class cow saves its icon. (Currently unused)
v0.15.12.2: Bugfix
+ Fixed a crash when trying to use the control code input without advanced mode
+ When a notification has no message but an error, the error is used as the message.
+ Fixed a minor bug for the LaTeX converter
++ The bug had a workaround so it was not noticeable for the user but this fix might increase quality in some cases
v0.15.13: Notification Class III
+ Added new NotificationWidget that is used by the notification window and includes all methods
++ Also made changes to the NotificationListWidget and created the NotificationInfoWidget
++ Notifications in the NotificationListWidget now display their icon (if they have one)
+ Cleaned up the NotifyUser method from AMaDiA_Main_App and removed a lot of redundant code and methods
++ The icon attribute of NC from v0.15.12.1 is used here
+ Reworked the notification system of AMaS to use NC everywhere and adjusted the workers and threads accordingly
++ This new system also represents the first use of mutex in AMaDiA (I should really get to make AMaS more thread save...)
+ Reworked the notification system of the LaTeX displays to use NC everywhere
++ The two control widgets are the last things that need to switch to NC
+ Fixed a crash when disabling Threadpool-mode
+ Fixed the MTabWidget and MMenuBar moving when clicking on the top edge without moving the mouse
+ Made some minor modifications on NC
+ Fixed a bug that would cause notifications to apply wrong colours when changing the colour palette
v0.15.13.1: Full Traceback
+ NC now stores (and displays) the full traceback
+ Fixed a crash (introduced in v0.15.13) when pressing return while the calculator input field was empty