nurupo / ProjectTox-Qt-GUI

A cross-platform front end for ProjectTox Core library, written in C++11 with use of Qt5
GNU General Public License v3.0
343 stars 117 forks source link

Message styles #36

Closed Schlumpf closed 11 years ago

Schlumpf commented 11 years ago

I added different message styles. Now, is possible to choose between the already existing default style and in IRC like style. The new IRC style is better readable, too.

messagestyles

All Styles are derived from a MessageStyleInterface, so it's easy to add new styles.

aviau commented 11 years ago

Looks great

aviau commented 11 years ago

@nfkd , Oh. Yeah you're right. We should get it to this state first since it's what we advertise.

nurupo commented 11 years ago

The QTextBrowser-based "message display" is a temporary solution I made for just for testing purposes and it should be replaced with some kind of widget-based solution, where we could put custom QWidgets into the "message display" (just like here), so I don't see any point in working on something that we definitely will have to get rid of.

Schlumpf commented 11 years ago

We really should write down somewhere, what to do...

OK, we want a completely widget based solution. Is someone doing it already? If not, I would like to do that.

nurupo commented 11 years ago

That's why I said that if you are going to do something, ask me first, so that your efforts won't go in vain.

No one is working on the "message display" afaik. If you'd like to work on it, I have some notes on what it should be like. The widget based solution should look like the mockup, be able to select and copy text, open URLs in text, visually notify user if message was received (like setting message's background to gray until the message is received by receiver), append and prepend messages. Also, when file transfer support in Core comes in, it should be able to provide updates on status of file downloads. It also should have a simple interface, so that a logmanager object, which is not part of "message display", would be able to load message/file transfer history into "message display" without any hacks, meaning the interface should be as simple as prependMessage(username, message, timestamp, messageId, isReceived).