A Calculator

Update 11-8-2009: So, at least 50 people have downloaded this, and no one’s told me whether it works or not. Someone please tell me whether the program runs correctly, okay? Pretty please?
What is GlassCalc?
It’s a calculator! Since I’m lazy, I’m just going to quote the readme file.
GlassCalc is a calculator with a wholly uninspired name. Really, the only reason I called it GlassCalc is because it has an extra bit of Aero glass. That, and I couldn’t find any other calculator programs called GlassCalc.
GlassCalc is designed to be used with a keyboard, not a mouse. Instead of clicking buttons, just type an expression in the Input box and hit Enter. It’s really much faster that way.
GlassCalc is also something of a replacement for the XP PowerToy Calculator, which only runs on Vista and Windows 7 as an administrator, which is totally annoying.
GlassCalc is programmed in C# and WPF.
GlassCalc is the solution to all of life’s problems!
What does it do?
It calculates stuff. Duh. Here’s a list of some of its more prominent features
- You don’t have to click buttons!
- It can evaluate simple and complex mathematical expressions.
- You can define functions and variables and use them in expressions.
- It remembers said functions and variables when you close and open it again.
- It can solve most equations that have solutions.
- It can convert answers to binary, octal, or hexadecimal.
- It supports degree and radian modes for non hyberbolic trig functions.
- It doesn’t crash, even if you enter nonsense.
- Well, okay, I can’t guarantee it doesn’t crash, but I can’t get it too.
- Of course, on my dev machine, I have all the required libraries. You might not.
- If it does crash, send me the error log so I can figure out what I screwed up.
- It responds to some very imaginative help commands. :)
- It does a whole lot more stuff, just download it already and try stuff.
System Requirements
In theory, all you need is a Windows machine with .NET Framework v3.5. I’ve only tested this on Windows 7 with .NET Framework v4.0, so I can’t say for sure. Please tell me if anything doesn’t work or doesn’t install correctly. If it complains of a missing DLL, you may need to install the vcredist package from Microsoft. If that still doesn’t work, try installing this one too.
If GlassCalc crashes, a message box should come up telling you the location of an error log file. Please post the contents of said error log along with your OS and any other relevant info so I can fix it! kay? Thanks.
Download It!
You can safely install over previous versions. If you really want, you can uninstall the previous version first.Change Log
10-16-2009 Whoops. I accidentally compiled that for .NET Framework v4.0, which I’m sure not too many people have right now. It should be fixed now.
10-21-2009: v0.91 Made a few minor updates to the interface. Added keyboard shortcuts for radian/degrees mode, radian/degrees mode is now saved, and you can select and copy text from the constants/functions/variables boxes.
10-24-2009: v0.92 More minor interface updates. Greatly improved startup performance, and you can also select and copy anything from the history now. Input box now automatically takes focus when you type, so you don’t have to click it all the time. (Hopefully) fixed a bug where GlassCalc would try to load Aero glass on XP. Whoops.
10-29-2009: v0.93 More startup improvements, and functions and variables are now sorted alphabetically.
10-31-2009: Minor bugfix. GlassCalc no longer gives an error when defining a variable or function with capital letters.


November 18th, 2009 at 2:18 pm
Downloaded and installed. Tried to run it. Received some sort of exception error. Tried two more times to run it.
Uninstalled, and repeated above process. Same thing.
In each case I did not consult the error log.
November 18th, 2009 at 3:33 pm
I was afraid of that… Are you running XP, Vista, or Windows 7? I believe my program might be looking for DLL’s that don’t exist on XP, thus the error. I’ll finally be able to test it on a XP machine this weekend though, so I’ll hopefully be able to fix it then.
In any case, if you get an error, please send me the error log. It contains not only what the error was, but also where it happened in my code, which makes things infinitely easier to fix. Thanks!