]> code.citadel.org Git - citadel.git/commitdiff
better stuff
authorArt Cancro <ajc@citadel.org>
Sun, 4 Apr 1999 23:38:43 +0000 (23:38 +0000)
committerArt Cancro <ajc@citadel.org>
Sun, 4 Apr 1999 23:38:43 +0000 (23:38 +0000)
daphne/includes.hpp
daphne/message.cpp
daphne/roomview.cpp

index 9d56d4f9363e6c550bac1e5d426a87e188fb7d09..809d0f364ba6b93151d277204ee11c13e4b78042 100644 (file)
@@ -237,6 +237,9 @@ public:
        long timestamp;
        wxString room;
        wxString msgtext;
+       wxString nodename;
+private:
+       int format_type;
 };
 
 
index 529a18714cb30eed6333736202cb83bca23fc9a6..f2c9126bc0a01bfa0670d25d454cb3c173a16899 100644 (file)
@@ -12,6 +12,8 @@ CitMessage::CitMessage(CitClient *sock, wxString getmsg_cmd, wxString inRoom) {
        author.Empty();
        msgtext.Empty();
        timestamp = time(NULL);         // nb. this is Unix-specific
+       format_type = 0;
+       nodename = sock->NodeName;
 
        // Fetch the message from the server
        if (sock->serv_trans(getmsg_cmd, recvcmd, xferbuf, inRoom) != 1) {
@@ -33,12 +35,28 @@ CitMessage::CitMessage(CitClient *sock, wxString getmsg_cmd, wxString inRoom) {
                                timestamp = atol(buf.Mid(5));
                        else if (!key.CmpNoCase("room"))
                                room = buf.Mid(5);
+                       else if (!key.CmpNoCase("type")) {
+                               format_type = atoi(buf.Mid(5));
+                               if (format_type == 1) {
+                                       msgtext.Append("<PRE>\n");
+                               }
+                       }
+                       else if (!key.CmpNoCase("node"))
+                               nodename = buf.Mid(5);
 
                // Otherwise, process message text
                } else {
-                       if ( (buf.Left(1) == " ") && (msgtext.Len() > 0) )
-                               msgtext.Append("<BR>");
-                       msgtext.Append(buf);
+                       if (format_type == 1) {
+                               msgtext.Append(buf);
+                               msgtext.Append("\n");
+                       } else {
+                               if ( (buf.Left(1) == " ")
+                                  && (msgtext.Len() > 0) )
+                                       msgtext.Append("<BR>");
+                               msgtext.Append(buf);
+                       }
                }
        }
+       if (format_type == 1) 
+               msgtext.Append("</PRE>\n");
 }
index e69085ff5255e2e95f034cebd43d56fea1f70f17..e340caabe7bbd2fd4bb3b3db0fb59329dfdf8e03 100644 (file)
@@ -160,10 +160,14 @@ void RoomView::do_readloop(wxString readcmd) {
                sendcmd = "MSG0 " + buf;
                message = new CitMessage(citsock, sendcmd, ThisRoom);
 
-               allmsgs += "<i>";
+               allmsgs += "&nbsp;&nbsp;&nbsp;<em><font size=+1>";
                allmsgs += asctime(localtime(&message->timestamp));
                allmsgs += " from " + message->author;
-               allmsgs += "</i><br>";
+               if (message->room.CmpNoCase(ThisRoom))
+                       allmsgs += " @ " + message->room;
+               if (message->nodename.CmpNoCase(citsock->NodeName))
+                       allmsgs += " @ " + message->nodename;
+               allmsgs += "</font></em><br>";
                allmsgs += message->msgtext;
 
                delete message;