File: cannedmessages.cpp

package info (click to toggle)
asc 2.4.0.0-1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 75,080 kB
  • ctags: 24,943
  • sloc: cpp: 155,023; sh: 8,829; ansic: 6,890; makefile: 650; perl: 138
file content (63 lines) | stat: -rw-r--r-- 1,653 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63

/***************************************************************************
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
 ***************************************************************************/

#include <map> 
 
#include "global.h"
#include "cannedmessages.h"
#include "basestrm.h"

map<int,ASCString> messageStrings;


void   loadsinglemessagefile ( const char* name )
{
   try {
      tnfilestream stream ( name, tnstream::reading );

      ASCString s1, s2;
      s1 = stream.readString();
      s2 = stream.readString();

      while ( !s1.empty() && !s2.empty() ) {
         int w = atoi ( s1.c_str() );

         messageStrings[w] = s2;

         s1 = stream.readString();
         s2 = stream.readString();
      }
   }
   catch ( treadafterend ) {
   }
}


void         loadmessages(void)
{
   tfindfile ff ( "message?.txt" );
   ASCString filename = ff.getnextname();

   while( !filename.empty() ) {
      loadsinglemessagefile ( filename.c_str() );
      filename = ff.getnextname();
   }
}


const char*        getmessage( int id)
{
   if ( messageStrings.find ( id ) != messageStrings.end() )
         return messageStrings[id].c_str();

   static const char* notfound = "message not found";
   return notfound;
}