What Key Combinations do by default on Windows, esp. Alt and Ctrl

The Control key is in common between the platforms. Do you find that it can be used the same way on both platforms, or is this a case of “this key is used differently on each platform”?

[quote=229522:@Norman Palardy]Alt can be used to trigger accelerators as well (like when you put &Foo in a label)
On the Mac that does nothing but it has meaning on Windows

http://windows.microsoft.com/en-ca/windows/keyboard-shortcuts#keyboard-shortcuts=windows-8 [/quote]

Thank you. Very helpful.

Use the keys differently across platforms
Otherwise you end up with one, or the other, or both platforms not feeling right as far as short cuts go
Ctrl+C is the copy cmd shortcut on Windows
Cmd+C on OS X
And so on

You do know you can use a non-dynamic constant with a Windows, Linux & OS X value
The upside to this is that it behaves like a literal and is compiled right into the app as defined BUT you can get an OS specific version
The IDE picks the right one at compile time rather than like dynamic constants where its done at run time.

You kind of have to play with this to get a feel for it BUT it can be very handy in assigning platform specific short cuts

Just try something short & simple to see it in action

Create a new app
Put a label on the window
Assign the text using a constant (#kLabel)
Create a new constant (kLabel)
Do not make the constant dynamic
Now assign one value for ANY language for OS X (use “This is OS X”)
Then one for Windows (This is Windows)
And one for Linux (I think you get the pattern here)

The compile for Windows
One for OS X
And one for Linux (if you want)

The OS X one will say “this is os x”
The Window & Linux ones you can guess
It behaves as if you used a string constant with ONE default value
But in this case you get the one value per platform at compile time

And since you can assign menu short cuts this way too well … there you go :stuck_out_tongue:

FYI Microsoft has the equivalent of Apple HIG, Design Guidelines, which help conform to “rules of the road” Windows users will expect. You may want to read to avoid “Appleisms” (this include the choice of modifiers). Cross platform also calls for cultural adaptation to each environment.

https://msdn.microsoft.com/en-us/library/windows/desktop/dn688964(v=vs.85).aspx

As far as keyboard goes, this is a good read, besides what I already linked to about shortcuts :
https://msdn.microsoft.com/en-us/library/windows/desktop/dn742465.aspx

In particular, do not forget function keys, and the numeric keypad.

I must admit I’ve not read Apples HIG since the days of OS9. Apple is breaking their own guidelines more and more recently. I wonder how consistent Windows is in that regard. In any case, anyone serious about x-plat should take a look at this, so I need to do it. Thank you.

[quote=229529:@Norman Palardy]You do know you can use a non-dynamic constant with a Windows, Linux & OS X value
The upside to this is that it behaves like a literal and is compiled right into the app as defined BUT you can get an OS specific version
The IDE picks the right one at compile time rather than like dynamic constants where its done at run time.[/quote]

I did know about that, but I’ve never played around with it. I appreciate the explanation very much.

Thank you guys for all your help! I would like to get this right; now I have some homework to do :wink:

A fascinating read from the guys who quite literally wrote Apples HIG back in the day

I have 5 or copies of the HIG over the years and the new ones have really dropped a lot of things out that the old ones included

[quote=229560:@Norman Palardy]A fascinating read from the guys who quite literally wrote Apples HIG back in the day
[/quote]

Oooo, I think I’ll be enjoying this one! :smiley: Thanks for the link

[quote=229554:@Aaron Hunt]
I must admit I’ve not read Apples HIG since the days of OS9. Apple is breaking their own guidelines more and more recently. I wonder how consistent Windows is in that regard. [/quote]

Fact is guidelines evolve with the platform. The arrival of touch screen support on Windows impulsed what they call the Modern UI, for Universal Windows Apps, that can run indifferently on computer or tablets with no keyboard, and even phones.

Although the first implementation under Windows 8 was rather awkward, if you think about it, it is not that simple to write an app that will run indifferently on a PC or a laptop with keyboard and mouse (shortcuts included), and on a tablet where neither right click nor keyboard combinations of key-mousewheel have any relevance.

If you are interested, here are the guidelines for that new interface :
https://msdn.microsoft.com/en-us/library/windows/apps/hh465424.aspx

I have been working for a while on modernising one of my apps for it to run on tablets just as smoothly as it did on desktop. Talking about cross platform, it is a brave new world.

I believe Apple is little by little experiencing the same kind of evolution. Although they have not merged Mac OS X and iOS (yet ?), the influence of the mobile platform design is increasingly visible in the desktop OS.

The article I posted the link to is a great read
It specifically talks about all the learnings that Apple (and everyone) has basically tossed or forgotten especially with the move to touch
And some of it is just tossed because - no real NEED to toss it out
And sadly some of this is leaking back into their desktop apps (Itunes is such a … mess … although a stronger word is really necessary)
It has no consistency
Click ion the album icon when a track is playing in the upper status area and the mini player shows
Do that in the miniplayer & … wtf ? The full album cover shows - it doesn’t go back to the full player.
But close the mini player & the full sized iTunes window comes back
Its pretty - but doesn’t make any damned sense

Good read indeed. I love their reference to Dieter Rams. Design for users, not for engineers :wink:

Mac OS since a few versions and Apple Apps are such a strange combination of interface hiding and eye candy. And Windows isn’t any better.

My word for iTunes is c r a p because it totally confuses me. Mail isn’t much better. It seems to move mails into other mailboxes but it doesn’t. Why?

In former times buttons with gradients showed you what to click and shadows gave a nice extra kick. But what is vibrancy good for? It always makes me feel like my eyes have gotten much worse.

Design should be simple, but I need to be able to use the app. And not ask myself “what did I click to land here and how do I get back”.

That is why I am not finished redesigning my app to touch. It is such a new way of doing things, it is extremely difficult to keep it intuitive. Pass stupid revisitations of Tetris, any more serious touch enabled app in fact demands not 80% time on UI design, but probably 95%. And it gets even worse on 5" screens.

People who have experimented with Xojo iOS can attest to it.