Skip to content

Category: Tips

sort code tips and tricks

Fractional Scale Factors

With all the Retina/HiDPI work done in the past few years, we’ve had to add some new features along with it. One of these newer features is the Graphics ScaleX and ScaleY properties.  For the purposes of Retina/HiDPI, the scale factor is used when converting user space coordinates to backing store coordinates.  While mostly integral on MacOS (unless originating from some code that’s probably not ours), it can vary on Windows, and perhaps arguably mostly fractional.  This is because Windows allows you to set DPI scales at 125%, 150%, etc. So when dealing with fractional scales there are a few things to watch out for:

  1. Rounding issues
  2. Anti-alias effect

While the framework takes care of rounding issues, for the most part, the secondary issue of anti-aliasing is up to you.

Comments closed

TextField: Getting the User Input

Xojo is a modern, powerful programming language with an IDE that simplifies all kind of tasks related your project creation and deployment. One such helpful feature is the UI layout design; you can find it under the Library Panel, it’s a meaningful collection of graphic classes (Controls) ready to use in our apps. Probably one of the first and most used controls in apps design is the TextField, TextField simplifies the way an app can get the input from the user. Let’s see its main properties and how this control behaves when used in Desktop, Web (WebTextField) and iOS (iOSTextField) apps!

You can watch the video (in Spanish, with English subtitles) as you read and work through this post.

Comments closed

What is Xojo?

2017’s first “What is Xojo?” webinar was well received and there were lots of questions. Rather than include the questions in the video, I’ve included a…

Comments closed

Localizing Web Apps: Dates & Numbers

In desktop apps, you can use Xojo.Core.Locale to get the user’s locale for formatting dates and numbers. However, in a web app this value returns the locale used by the web server rather than the locale of the current user session.

To display dates formatted in the locale of the user session, you need to get the LanguageCode from WebSession and use that to create a locale that you can then use to display the date.

Comments closed