Coder Social home page Coder Social logo

calculation's Introduction

Theme Customization

There are two ways to modify TermCalc's appearance. The first is through the basic theme menu, which simply allows the user to select a light or dark theme, then an accent color. The second is using the custom theme editor. When using the latter, any item on the home screen of the application can be customized. Both the background and text colors of each element can be modified, either using a color picker, or entering a specific hex code. Entire zones (like the number keypad, for example) can also be modified at once to speed-up theme creation. Custom themes can also intelligently modify the application's nav drawer (adaptively determining which colors in the theme would clash the least with the background color of the nav drawer), and other sections of the application (i.e. Unit Converter). Users can also switch between round, or square/borderless buttons when using either theme editor (round buttons are currently a WIP, but should be an option in the next update). Finally, custom themes can also be saved, restored, and shared with others at any time.

Mathematical and Technical Features

The app uses BigDecimal precision (or rather, it will once I finish the next update, sigh) for most calculations (mainly those that would specifically benefit from such precision), and has advanced functionality including:

  • Inverse hyperbolic trigonometry
  • Custom user-created functions (i.e. Compound Interest or Permutation)
  • A list of common constants (i.e. Avogadro's Number), and the ability to add more
  • Date Calculator
  • Unit and Currency Converter
  • N-th root
  • Log base n
  • Modulus
  • Various geometric formulas (i.e. Volume, Surface Area) that can be evaluated after variable values are entered.
  • User-defined maximum precision
  • An option to ignore PEMDAS and prioritize coefficients instead

The application also has a somewhat hidden terminal-esque interface (hence the terrible name "Term Calc") accessed via an icon in the toolbar of the Settings section that allows the user to perform a few specific niche actions, like changing the text of the modulus button to "%" as opposed to "mod," or printing a stack trace after a crash. This used to be a more integral part of the application, which is why the application is named the way it is, but as I've grown as a developer, I've created GUIs for most of the more useful functionality that the terminal provides.

Terminal Commands

The list below outlines all currently-supported terminal commands that are intended for use by end-users:

  • help: displays basic commands (essentially just this list up until the "themes" command)
  • help [command]: prints information about a specific command
  • set [button code] [color hex]: sets a color in the current theme (for a list of button codes, run "help set")
  • get [button code]: prints a color in the current theme
  • sym -mod [any text]: sets the text of the mod button
  • reset [button code]: resets a color in the current theme to its default value
  • copy [button code]: copies a color in the current theme to the device's clipboard
  • share [theme name]: export a theme
  • mode [theme number]: changes the current base theme (light, dark, etc. based on the order of these themes in the Basic theme editor)
  • delete [theme name]: deletes the selected custom theme
  • recreate: restarts the home layout
  • themes: lists all backed-up themes
  • debug stack: prints the stack trace of the last recorded crash
  • debug reason: only prints the reason for the last recorded crash

calculation's People

Contributors

01278913406 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.