Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add MessageWindow to Common #192

Open
5 tasks
lookeypl opened this issue Feb 6, 2017 · 1 comment
Open
5 tasks

Add MessageWindow to Common #192

lookeypl opened this issue Feb 6, 2017 · 1 comment

Comments

@lookeypl
Copy link
Member

lookeypl commented Feb 6, 2017

As an example in Assertion.cpp shows, sometimes we might want to create a popup window through Window Manager on OS. While on Windows it is as easy as calling a single WinAPI call (MessageBox), on Linux you need to do everything manually. Moreover, Windows' MessageBox might be too simple for our needs, so even using it won't be enough.

  • Implement a NFE::Common::MessageWindow object, which will display a simple popup message in platform-independent way
  • The MessageWindow features:
    • Internal OS implementation only (WinAPI/X)
    • Ability to add custom action buttons outside of code
    • Main text message should be inside a read-only EditBox/ScrollBox or similar component to enable copying the message

MessageWindow's interface does not have to be very user friendly or prone to errors, we will use it as an internal mechanism in Engine to ex. notify about failed assertions, crashes and other unexpected behavior. In other words, we assume that end user won't need to access it.

@mkulagowski
Copy link
Contributor

Some tutorial about using X11 to create buttons:
http://xopendisplay.hilltopia.ca/2009/Mar/Xlib-tutorial-part-9----Buttons.html

@lookeypl lookeypl changed the title Add simple MessageBox function to Common Add MessageBox function to Common Feb 7, 2017
@lookeypl lookeypl changed the title Add MessageBox function to Common Add MessageWindow to Common Feb 7, 2017
@lookeypl lookeypl removed the proposal label Feb 7, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants