Git Product home page Git Product logo

gcwizard's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gcwizard's Issues

Intelligent Clipboard

Copying and pasting data to inputs can be frustrating, especially at the coordinates section.

  • internal enhanced clipboard with 10 slots or so.
  • enriched with metadata, to know WHAT has been copied. So, maybe you copy a DD°MM.MMM coordinate, but want to paste it into a new coordinate field DD.DDDD. Then it would be great to know, that your clipboard data is a coordinate and how to convert it to fit into your new widget.
  • for pasting external data (e.g. coordinates from c:geo) a simple parser which guesses, what kind of data it could be.
  • adding a copy button to every output text

Enhanced Main Menu

(from Frank via Facebook)

Currently: Two Tabs (Everything and Favorites)

For better orientation a menu structure should be available (e.g. following the code structure). This should be done in a third tab. I would keep "everything" nevertheless for all users who cannot deal with categories (many users get confused when they see categories like "cryptography") and want to see the whole list instead.

So: Add a third tab with a tree structure.

iOS Version

Needs:

  • MacBook for compiling
  • iPhone for testing

Or

  • an iOS developer

Feature Request: Variable digits in waypoint

Da GeoMT leider nicht mehr im Playstore gepflegt wird und aktuell die Variablen Koordinaten auch nicht mehr funktionieren - wäre es schön wenn ihr diese Funktion auch einbauen könntet. :-)
Variable digits in waypoint N 51° 11.4[358]7 E 10° 22.17[456] shows 9 markers
oder wie auf Dennis seinem Tool "</>Add Complex"

Add umlauts to letter values

(from... many many many)

Make it more generalised, such as adding the opportunity to add an own alphabet
e.g. Swedish, Polish or Spanish (with 29 characters or without CH and LL), ...

textToIntList needs reworking.

textToIntList in common_utils.dart lookes somewhat complicated to me. Instead of using a replace approach, I would suggest an extraction approach by the following code:

List<int> textToIntList(String text, {bool allowNegativeValues: false}) {
  if ((text == null) || (allowNegativeValues == null))
    return [];
      
  final regex = allowNegativeValues ? RegExp(r'-?\d+') : RegExp(r'\d+');
  
  return regex.allMatches(text).map((value) => int.tryParse(text.substring(value.start, value.end))).toList();
}

That also eliminates the edge case of a straying '-'.

Unit converter

Currently you can chamge an calculate different length units (m, km, nm, ft) when calculating distances. Furthermore in the periodic table, there is a converter for temperature units.

There should be a whole units section to convert many many units into another.

Store inputs when closing page

[from @AndyPuma]

Avoid removing all input when you close a page.

I really would appreciate this feature. But I want to avoid to add code like this to every single widget:

 @override
  void dispose() {
    saveInput(textField1);
    saveInput(optionSwitch1);
    ...

    super.dispose();
  }

A more centralized function would be great, which does it on its own. Furthermore keep in mind, that storing into a database is an asynchronous operation, which has to be handled properly if chosen this approach!

Polybios: Replace Encrypt/Decrypt Buttons

[from Klumpenkukuk]

The main idea here was:

  • The encrypt/decrypt switch can be used for functions that can calculate a result from any input. A separate submit button is not necessary, because every input results in a calculation. But Polybios cannot calculate anything meaningful without a complete key or alphabet.
  • So the user has to confirm his/her inputs with a specific click. If this would be a single button (like at the coords calculations) a separate switch would be needed. This would be an extra layout line and an extra click action for the user. So I decided for the buttons

BUT: It is the only (?) function with this behaviour so far and so has its own different layout. Maybe one should think about an alternative. Maybe giving out an empty string when no valid input is there as in other functions?

Kenny: Case sensitivity

(from Michael via email)

Mpf -> M will not recognized, because substitution letters are non-capitals.

Idea: If the letter triple starts with a capital letter, the output should be capital as well, otherwise not

Help/Info engine

Maybe adding a (i) symbol next do the input fields or more general to each function, which explains what they do.

The logic for this needs to be centralized maybe in GCWToolWidget.

Crash in Brainfuck interpreter

When I try to open the Brainfuck interpreter, the App crashes with The method 'call' was called on null. in
BrainfkState._calculateOutput (package:gc_wizard/widgets/tools/encodings/brainfk/brainfk.dart:85:23)

My guess is that widget.interpret is never set properly.

Font Size: Tool Lists font size change needs restart

(from Andy)

Font size change changes every tool, but not the list views.

At the lists, the font size is changing on items outside the view port (so, the first items remain, the currently visible ones, are just changed.)

IntegerTextInputFormatter needs reworking/explanation

I tried to understand what's going on in the formatEditUpdate method of the class IntegerTextInputFormatter. The 'normal' mode seems to work properly, but list mode is somewhat broken, or at least I don't quite get it.

The following piece

newValue.text.split(regex).forEach((value) {
  if (!_checkIntegerValue(newValue.text))
    return oldValue;
});

does nothing. I guess the intention here was to return the old value back to the caller of formatEditUpdate which is not the case. Also newValue.text should be replaced by valueI guess.

What is the intent here?

Expert mode

Implementing an expert mode for the functions. Nearly every crypto function could take a lot of parameters for fine-tuning. Beginning with a self-defined alphabet.

The main idea is, to hide complex options for the 90% use cases and show additional settings for the rest.

E.g.

  • self-defined alphabets (e.g. adding ÄÖU == 27,28,29 in German, or take QWERTY instead)
  • adding a rotation ellipsoid option to the coordinate calcs
  • hiding the key part in Kenny; just for experts
  • ...

CCITT2 is Murray, CCITT1 is Baudot

(from Klumpenkukuk)

Currently the app shows CCITT2 == Baudot. But CCITT2 == Murray/Baudot and CCITT1, in fact, is Baudot.

Should add CCITT1 and correct the title.

Maps: Satellite view

Add satellite view.

Problem here is the API key for Google Maps and its storage... Furthermore we should check for possible usage limitations.

Maps: Add labels to points

Tried it at the very beginning, but there was a problem:

Instead just putting some text under the marker and leave the point where it has to be, the framework interpreted the whole (marker, text) complex as new marker. This resulted in not correctly adjusted center of the point... Instead taking the center only of the marker, it took the center of marker and text... Nasty.

Polybios: Add option for alphabet key

[from Klumpenkukuk]

Currently the Polybios key is only the naming for columns and rows.

But one can imagine, that shuffling the alphabet could be great idea. This can be done using a keyword WIKIPEDIA

WIKPE
DA...   // fill with remaining letters
.....

Maybe as part of "own alphabet" or as seperate key option.

Roman Numbers: Problems with too high numbers

(from Daniel via Messenger)

It would print out roughly (n / 1000) times a M character. So if input was 1000000000, one million M would be printed. That is heavy ;)

Restrict number!

TextFields for integer lists need full keyboard

On some iPhones or Android phones the number keyboards do not provide a space character. Currently the integer list text input is the same as the integer text. So, it uses keyboardType.number. This restricts the input of spaces which are needed as delimiter between the numbers.

iOS on iPhone 6
iOS on iPhone 6

Android 10 on Galaxy S10
Screenshot_20200408-003611

Waypoint Projection: Integrate "Backwards" Projection

(from Pamakaru)

Sometimes you get the bearing TO the start and not FROM.

Note, that simply adding +180° is not correct; this works only for small distances. The bearing from A to B is not equal to (B to A) + 180!

Tool Description

Under the tool titles: Adding one line with a short description.

Maybe adding a second line with a sample code.

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.