summaryrefslogtreecommitdiff
path: root/plugins/Boltun/src/stdafx.h
blob: 8af454330c8ed3d662015f8f22fd811505fbead7 (plain)
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
//***********************************************************
//	Copyright © 2003-2008 Alexander S. Kiselev, Valentin Pavlyuchenko
//
//	This file is part of Boltun.
//
//    Boltun 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.
//
//    Boltun is distributed in the hope that it will be useful,
//    but WITHOUT ANY WARRANTY; without even the implied warranty of
//    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//    GNU General Public License for more details.
//
//    You should have received a copy of the GNU General Public License
//	  along with Boltun. If not, see <http://www.gnu.org/licenses/>.
//
//***********************************************************

#ifndef _BOLTUN_H
#define _BOLTUN_H

#include <windows.h>
#include <time.h>
#include <fstream>
#include <assert.h>

#include <algorithm>
#include <string>
#include <list>

#include <newpluginapi.h>
#include <m_clist.h>
#include <m_protosvc.h>
#include <m_database.h>
#include <m_genmenu.h>
#include <m_options.h>
#include <m_langpack.h>
#include <m_skin.h>

#include "resource.h"
#include "version.h"
#include "config.h"
#include "actionQueue.h"
#include "Engine/TalkEngine.h"
#include "Engine/WordsList.h"
#include "Engine/UnrecentChooser.h"
#include "Engine/MyCodeCvt.h"
#include "Engine/Mind.h"

#define BOLTUN_KEY "Boltun"

struct CMPlugin : public PLUGIN<CMPlugin>
{
	CMPlugin();

	int Load() override;
	int Unload() override;
};

//Service names
#define SERV_CONTACT_AUTO_CHAT "Boltun/ContactAutoChat"
#define SERV_CONTACT_NOT_TO_CHAT "Boltun/ContactNotToChat"
#define SERV_CONTACT_START_CHATTING "Boltun/ContactStartChatting"

//Database keys
#define DB_CONTACT_BOLTUN_NOT_TO_CHAT "BoltunNotToChat"
#define DB_CONTACT_BOLTUN_AUTO_CHAT "BoltunAutoChat"
#define DB_CONTACT_WARNED "Warned"

//Plugin group in settings
#define BOLTUN_GROUP LPGEN("Message sessions")

//Filename depends on UNICODE
#define DEFAULT_MIND_FILE L"boltun.mindw"

//===============================================
// These are strings for translation:
//===============================================

//Plugin name
#define BOLTUN_NAME  "Boltun"

#define MIND_FILE_DESC LPGENW("Mind Files")
#define ALL_FILES_DESC LPGENW("All Files")

//UI strings
#define BOLTUN_AUTO_CHAT   LPGEN("Boltun/Auto Chat")
#define BOLTUN_NOT_TO_CHAT LPGEN("Boltun/Not to Chat")
#define BOLTUN_START_CHATTING LPGEN("Boltun/Start Chatting")

#define DEFAULT_WARN_TEXT LPGENW("Hello. I'm Boltun! I'll talk to you, while my owner is away. Please write without mistakes!")

// Error messages
#define BOLTUN_ERROR         LPGENW("Boltun Error")
#define FAILED_TO_LOAD_BASE  LPGENW("Failed to load base of remarks. Error at line %d of %s. (Or few lines before).")
#define FAILED_TO_SAVE_BASE  LPGENW("Failed to save base of remarks to %s")

//Settings tab names
#define TAB_GENERAL LPGEN("General Settings")
#define TAB_ENGINE LPGEN("Engine Settings")

#endif /*_BOLTUN_H*/