Desktop UI formating

I’m trying to create an app for Linux Desktop. I would love to hear some recommendations regarding the use of Fonts, Sizes ,and especially the reasons for using pixels or points, etc.

See this thread https://forum.xojo.com/48126-gtk3-theming-modgtk3-resolves-layout-corruption-under-all-linux/44#p445728 for modGtk3 for Xojo. It modifies CSS and adjusts control sizes in Xojo apps deployed to Linux platforms to create a more native interface.

We use it in all of our Linux projects.

Thank you. But I only build for Linux and just wondered when to use Points and when to use Pixels for Fonts in the GUI.

A Pixel is an Atom.
A Point is a serie of Pixels (the number of available pixels in a Point depends of the HiDPI/Retina value).

Make a search @ WikipediA for more details.

In 20 years of using Xojo I’ve never used anything other than the default.

Hi Martin,

Always use Pixels unless you are printing. Points are primarily something used in typesetting, not display.

For the Linux GTK3 helper module that Bob mentioned above - you REALLY do want to use it regardless of the fact that you’re ONLY creating for Linux.

It so happens that precisely PC screens use 75 points per an inch, which happens to be extremely close to the typographical point (72 points per an inch).

On Mac, the screen uses 72 points per an inch, exactly the value of the typographical point.

Retina screens actually keep the notion of point or 1/72", even if each point is composed of 4 pixels on a modern Mac.

Xojo provides a virtual System font which is means to ensure adherence to the system default fonts. At point size zero (default), it provides the optimum rendition. Another one is called SmallSystem, which provides best rendition for smaller size.

Straying from System and SmallSystem is calling for unnecessary pain and reinventing the wheel, as Xojo went to great length to get the best display under most conditions.

Trying to address fonts in pixels instead of points can lead to really ugly UI, in my humble opinion.

Nonetheless you want to use it.

He’s discussing Linux and only a small selection of Linux desktop managers stray from the X11 96DPI as the default display value…

[quote=469850:@Michel Bujardet]Straying from System and SmallSystem is calling for unnecessary pain and reinventing the wheel, as Xojo went to great length to get the best display under most conditions.
[/quote]
Well, then they did a terrible job on major Linux and Windows platforms because you can EITHER have a good looking Windows app OR a good looking Linux App if you use the System and SmallSystem fonts without adjusting the control sizes text/label sizes.

Your opinion, Tim.

[quote=469857:@Tim Jones]He’s discussing Linux and only a small selection of Linux desktop managers stray from the X11 96DPI as the default display value…

Well, then they did a terrible job on major Linux and Windows platforms because you can EITHER have a good looking Windows app OR a good looking Linux App if you use the System and SmallSystem fonts without adjusting the control sizes text/label sizes.[/quote]

Yeap, thats is actually a tangible FACT. The need for hacking the css on linux, the default font on windows being to small and/or needing to adjust the control sizes acording to the platform… But, that is what it is, so yu have to take the extra mile to make a good looking and functional app.

No, you don’t - you just need to use the modGTK3 Module that’s posted in the Linux group in Bob’s response above and it takes care of things for you. Thats the whole purpose for that Module.

(even if there is a module ready to use, it is doing something extra :wink: ) Xojo does not do a great job out of the box.

It’s not opinion when the evidence is in any app that has not been properly configured for both platforms.

No - if you design and build for Linux, a Xojo App is attractive - ON LINUX. It then just doesn’t look right on Windows or macOS. The same is true for all three. If you design specifically for Windows, things aren’t right on Linux or macOS. As a designer, you must find a style that provides a happy medium for all three, or you end up basically designing three different apps. In the examples below, you can see that Windows is pretty close, but default Linux is way off. However, if I manually design for Linux, the results in Windows is “okay”, but on macOS, things look really off. On the other hand, the simple addition of the modGTK3 module and a single call to modGTK3.InitGlobalGTK3Style in App.Open makes things much more acceptable.

Designed and Run on macOS (Project File)

Run on Windows - pretty close.

Run on Linux - without modGTK3 - yech!

Run on Linux - WITH modGTK3 - not perfect, but acceptable.

Vent away.

Xojo’s base implementation of Linux UI is crap and requires a third party module to draw the UI correctly. This is not what we pay Xojo $299 for.

Who’s venting? I’m providing fact and proof, not opinion or baseless conjecture.

… or are you just being a troll? It’s hard to tell with you sometimes.