Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » Developing U++ » Bazaar » MessageCtrl: A passive notifications ctrl and manager. (A a usefule CtrlLib add-on.)
MessageCtrl: A passive notifications ctrl and manager. [message #49494] Sun, 18 February 2018 19:21 Go to previous message
Oblivion is currently offline  Oblivion
Messages: 692
Registered: August 2007
Contributor
Hello all,

KDE (and some other DEs or apps) have a nice, non-intrusive ("passive") notifications widgets. Here is the U++ counterpart.
This is the initial release. Although it is working pretty well, glitches should be expected.

Message package works on whatever U++ works. on.
Package contains API docs and a reference example.

MessageCtrl package for U++
-----------------------------

This class implements a messages manager. 
Messages are simple message boxes similar to prompts in that they can allow the same basic user
actions. However, message boxes are not meant as a replacement for the traditional U++ dialogs.
The main difference between the messages and the prompts is that the message boxes are implemented
as frames instead of dialogs, and are meant to be less intrusive, and non-blocking.

There are several types of messages:

- Information: Should be used to display common information.
- Warning:     Should be used to report non-critical issue, to inform that everything is all right.
- Success:     Should be used to display successful operations. Essentially this is an information notification.
- Question:    Should be used to ask for some interaction.
- Error:       Should be used to display critical application errors
- Custom:      If the predefined notification types don't suit your needs, you can create one.

Message boxes use QTF texts. This allows for embedding hyperlinks in messages. 
It also means that in some cases the text messages should be escaped, using DeQtf() function.

History:
--------------------
2018-04-07: UseCross() method added. It is now possible to use a
            small image button with cross instead of OK button.
            Informative message boxes use crosses by default.

2018-03-03: Name clash on Windows fixed.
            MessageBox::Type::ERROR  -> MessageBox::Type::FAILURE
            Message display order changed. New messages will be inserted
            as the the topmost/bottom-most frame (depending on orientation)
            Selective clearing added.

2018-03-01: Information and custom message boxes can now have timeouts.

2018-02-21: Widget renames as MessageCtrl. (Final)

2018-02-20: It is now possible to add mesasges as both top and bottom frames.
            It is now possible to add single message box without using the manager.
            Message framework further refactored.


2018-02-19: Name change: Notification -> Message.
            Code refactored. (Thanks Klugier!)

2018-02-18: Initial public release


You can find the package below on the bottom of this message, or
You can grab its source code from: https://github.com/ismail-yilmaz/upp-components/tree/master/ CtrlLib/MessageCtrl

Screenshot:
https://image.ibb.co/c9cRT7/Notifications.png

Please feel free to comment on it.

Best regards,
Oblivion






[Updated on: Fri, 06 April 2018 23:07]

Report message to a moderator

 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: WithEnterAction compile error
Next Topic: Bug: SysInfo->ScreenGrab->Window_SaveCapture on X11 does not set the alpha channel
Goto Forum:
  


Current Time: Wed Jul 15 00:37:40 CEST 2020

Total time taken to generate the page: 0.01304 seconds