Can we control MessageDialog width in any manner?

I’m trying to neaten up some user messages that we display in MessageDialogs. Unfortunately, there is no consistency in the width of the dialogs displayed from one platform to the next, and sometimes not even on the same platform in the same app instance. This results in odd line breaks in the Explanation code.

I’ve tried forcing the length of the Message text as well as the first line of the Explanation with no stable results.

Must I return to custom dialogs like back in the REALbasic days?

Please don’t make a custom replacement for MessageDialog. The width on macOS is supposed to be flexible. This is considered a feature, and they are supposed to behave this way. This reduces wasted on screen space, which from a design aspect looks like the developer just doesn’t care.

I’m not sure what your verbiage looks like, but it should be relatively succinct. I wouldn’t consider line breaks an issue with a message that utilizes the dialog in it’s most effective manner. However, that leans more on what you’re utilizing the dialog for.

If, for one instance, you find you’ve outgrown MessageDialog then by all means create a better user interface for that use case. However, replacing MessageDialog with a custom window at every instance within your app is not recommended. This detracts from your app, giving it an unprofessional, unpolished experience.

My issue isn’t just macOS, but the issue of using a “one-size-fits-all” approach to providing user information, warnings, and prompts on all three platforms.

I’d rather have a consistent set of dialogs that are well designed but non-OS-alike than the current mess that’s occurring.

I would think that for MessageDialog type messages, this shouldn’t be necessary. I’m imagining dialogs like “Process Failed”, “This error occurred, please do this thing to fix it.” Something like “This feature has three options, please choose one.” might work out better with it’s own dialog, offering the options as radio buttons and small explanations.

How to best implement it depends on what the dialog is. But I very strongly stand by “Process Failed”, “This error occurred, please do this thing to fix it.” should be a system provided MessageDialog.

Edit: Removed irrelevant to the problem first bit.

After digging further and lots of MessageDialog tests, the answer to my original question is:

No, it is not possible to control the layout of the MessageDialog outside of the text and buttons displayed.