Comments (11)
What is instead of requiring the user to enter a name, we apply more icons (icon picker) that has visuals for the meat type and does the 1/2/3 thing?
I like the idea of custom naming but there's two things that I think make it problematic:
- it takes a million clicks to enter a name, and I think this is a barrier to entry. I think it should take as few clicks as possible to get something up and running
- we'll be able to save space on the timer screen by using small icons instead of text which gives us room to do more with the steak list
- following that, I think that the icons are easier to understand at a glance than reading the names
I poked around where you got the original steak icon and there's lots of outline imagery we could get for use in the app.
from barbecueboss.
We can write an bitmap picker that works like the other pickers, but instead of a NumberFactory or WordFactory it uses a BitmapFactory (that we write).
The picker uses the factories to get the items it is supposed to draw as Drawables. It does some other stuff (drawing triangles and stuff) but really it's just drawing something on the screen and telling which value(s) were picked. This can be supported on pretty much all devices.
Take a look at how the StringPicker is written. You could put together an bitmap factory that loads and returns some images (for the meats) and change the drawText calls to drawBitmap instead.
The newer menus are nice for what we would like to do for the settings menu (because all of the functionality we need is built in to it) but there's nothing preventing us from writing our own controls. What Garmin has provided is decent but I would say there's no doubt in my mind that 95% of the apps in the store have custom UI controls they had to write because what's there is so basic.
The harder part is going to be getting bitmaps/icons that look decent. I downloaded those you sent me and tried making some up from them but they look terrible on device. It's going to take a lot of experimenting to get them looking good on these small displays.
from barbecueboss.
I enabled the stringPicker prior to the durationPicker. There is a weird behavior on the pop/push of the views. I'm burned out for today so I don't see it clearly how to implement correctly.
from barbecueboss.
My next step is to connect the selected string to the steak names in the list. For efficiency we can probably support up to 2 custom characters. So if I'm grilling corn I customize as CO. If a duplicate entry is found we can add a number to the steak. That is CO, CO1, CO2.
from barbecueboss.
The icons could be really nice. I agree that an icon is faster to pick than a custom name. Although your implementation does a good job at remembering at least the last character entered, the icons would save clicks.
from barbecueboss.
I was looking into the options and the basic Menu only accepts text. Menu2 takes icons (https://developer.garmin.com/downloads/connect-iq/monkey-c/doc/Toybox/WatchUi/IconMenuItem.html).
Having an ancient watch sucks.
from barbecueboss.
Looking at #37 and the watch-specific build process. It probably makes more sense to simply provide the basic functionality for old watches (e.g., v.1.0.0) and move on with a different app for premium devices CIQ>=3.0.
from barbecueboss.
@nilsbenson thanks, that sounds promising! I'll take a deeper look at the factories implementations.
from barbecueboss.
I pushed the proof of concept. I'm working on the improvement to prompt the flip timer directly if the steak is already running. Only show foodtype selection when the steak is in Controller.INIT status. To change a type of food you first need to stop it. Otherwise is simply a flip change.
from barbecueboss.
User feedback.
June 12, 2020 | Version 1.0.0. I'll never ruin another $20 steak. Great app, easy to install and use. Will make a great Tea timer, and a million other things that require a simple timer.
The tea timer can be covered by the 046-cofeee-cup icon.
from barbecueboss.
Closing this one. Fully addressed in the dynamic-entries branch.
from barbecueboss.
Related Issues (20)
- darth vader / rey / capt marvel watches need some UI work HOT 9
- [Memory] D2 Bravo runs out of memory on switch to SteakMenu HOT 7
- [GUI] Progressbar - adjust for all watches
- [Bug] Approach S60 crashes on SteakMenuDelegate.mc:45 HOT 8
- [CIQ1] TotalTimeMenu Duration Custom Picker HOT 1
- [Memory] fenix3 and fenix3_hr HOT 2
- [Refactoring] isSmoking param for SmokeLayout is not needed HOT 1
- FR630 button layout is different HOT 2
- [low-n-slow] Temperature probe layouts
- Steak rest timer
- Venu's layout is different
- refactor resources to include the bare minimum required for devices HOT 1
- Tenergy submodule build
- [Tenergy] ProfileRegistrationException: Too Many Profiles HOT 6
- [Tenergy/Simulator] Device Scan - takes long to acquire the sensor in the simulator HOT 4
- [Tenergy/Simulator] Device Scan Crash HOT 3
- [Tenergy] Custom timer should allow hh:mm:ss format HOT 4
- [Menu2] How to dynamically update a MenuItem HOT 2
- [Low-n-slow] Thermometer data reliability metric/icon HOT 1
- implement jungle file annotation excludes for all devices HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from barbecueboss.