Codename one expect feature on DateTime Component - codenameone

Our client expects the feature like DateTime Component editable on double topping the Dates or Time or AM/PM instead of scrolling more.
We see that feature on some apps, Can't we get his feature in Codename one. Which is very helpful and will make codename one powerful tool.
Here is a screenshot of what we expect from DateTime picker.
Is there a way to achieve this on Andriod and IOS platforms.

I'm not sure this will work as I'm not much of an Android guy but I made a change to the Android implementation that should allow the keyboard to open if you do:
myPicker.putClientProperty("showKeyboard", Boolean.TRUE);
This should start working following October 29th 2016 with the next update but since I didn't test it this might not work as expected.

Related

Broken button layout on the showcase

We are evaluating CodenameOne to adopt it as our platform.
In the Showcase App, the menu buttons layout gets broken (button smaller than the image) after changing to some Themes like the "Leather".
Tested on Samsung A5.
Is it an application or platform problem? And can you fix it?
Problem screenshot:
(not enough reputation yet to post images)
The leather theme is a legacy from circa 2014. We don't maintain it because it's gone out of vogue with current flat design styling. We haven't updated the kitchen sink either for 3 years too, since we're more focused on apps such as build.
2014 predated iOS 7 which changed a lot of details about the treatment of the status bar. That means the theme needs to be updated but because it's so full of images it's a bit of a pain. We chose to leave it there with the quirks since it shows off the versatility rather nicely although it's pretty much out of date.

Localize DatePicker / DateTimePicker

I use a DateTime Picker in an editor of my app (within a PickerComponent). I'm using it only in lightweight mode, since DateTime Picker fail on Android if not (not tested since some months, but I suppose it still the case).
I've successfully translated the buttons "Cancel" and "Done" with the L10N API, but I can't translate months (for Date type) or abbreviated day/month (for DateTime).
The keys for each months are putted in the .res file, that worked for the buttons, but it does not work for the months of the picker.
Any hint on how to achieve this localization ? Some of our customer are really bad at english... Thanks in advance !
This is localized via SimpleDateFormat and its class DateFormatSymbols. Unfortunately this has no way to globally customize that value using the standard project resource bundle which seems to be a serious omission of that code. This is something we'll need to fix via the issue tracker, I don't see a short term workaround from a brief glance at the code as it assumes you would have access to the SimpleDateFormat which is highly impractical.

Localize lightweight date picker in Codename One

On Android and on iPhone, the Codename One lightweight picker always is in English, like in the following screenshot. How can I localize it in Italian (or in any other language used by the smartphone user)?
You can localize "Cancel" and "Done" in the resource bundle to replace those two labels. The month values are a bit more problematic as they are taken from SimpleDateFormat which doesn't have an easy path for localization. We should probably use the same localization conventions as used by the com.codename1.ui.Calendar class. I think this is something we can track via the issue tracker.

Codename One - Picker values on IOS should appear center in landscape mode

I would like to display the picker strings appear at the center of the picker for selection on IOS. Please give me an example if any one already tried it.
With every OS update or device change this component breaks because it uses the OS native widgets which are flaky as hell on iOS. We intend to release a completely new API that will render everything in Java and solve these constant regressions, hopefully it will be out for version 5.0 slated for June. We already have a proof of concept but these things take some time always.
You can file an issue on this specific issue but I'm not sure if we'll get a chance to address it. Notice that we need the exact device type and exact OS version as these matter a lot for this specific component.

WinForms.ReportViewer to display customerized item?

I am designing a reporting page using WinForms.ReportViewer and only process the data locally. It means we want to display some information from objects that we designed. For example, we have our own classes for date and time. However, in the report page this date and time information can not be displayed correctly (shows #ERROR). Is there any way to tell it how to show our information? Thanks!
With the newer ReportViewer versions, MS has introduced an error that disables the possibility for navigation within objecs.
They have corrected the error with the last service pack a little and if your objects support serialization, now navigation may work.
For my newer projects built with report viewer 2010, I have started to write a wrapper for each object/entity I have to render. I started with this during the time, no fix was available and now I'm very comfortable with this pattern. In the first moment, it gives a little more of work, but it has given me great flexibility and left my code clean. And if one day I dont have the patience to work further with report viewer anymore, it will make it easy to move my projects to another reporting engine.

Resources