root/trunk/logging.h

Revision 5, 3.4 kB (checked in by qbert, 6 years ago)

Initial ( and last :( ) commit

Line 
1 #ifndef LOGGING_H
2 #define LOGGING_H
3
4 #include <vector>
5 #include <string>
6
7 using std::vector;
8 using std::string;
9
10
11 enum ActionCode
12 {
13     OPEN_FILE,
14         OPEN_PROJECT,
15         CLOSE_FILE,
16     CLOSE_PROJECT,
17     COMPILE_PROJECT,
18     COMPILE_AND_RUN_PROJECT,
19         RECORD_MACRO,
20         EXECUTE_MACRO,
21         OPEN_TOOLS_DIALOG,
22         NEW_PROJECT,
23         NEW_FILE,
24         NEW_PROJECT_TYPE,
25         SAVE_FILE,
26         SAVE_FILE_AS,
27         SAVE_PROJECT,
28         OPEN_SETTINGS_DLG,
29         ELEPHANT_START,
30         ELEPHANT_STOP,
31         PARSING_FILES,
32         UPDATE_PROJECT_PARSER,
33     UPDATE_FILE_PARSER,
34         HIDE_SHOW_WINDOW,
35         OPEN_RECENT_PROJECT,
36         ACTIVATE_ADDON,
37         INSERT_ADDON,
38         REMOVE_ADDON,
39         SIMPLE_FIND,
40         ADVANCED_FIND,
41         COMMENT_SELECTION,
42         UNCOMMENT_SELECTION,
43         GOTO_LINE,
44         EVALUATE_BUFFER,
45         CHANGE_FONT,
46     FIND_BAR_FIND,
47     FIND_BAR_REPLACE,
48     NAVIGATE_BACK,
49     NAVIGATE_FORWARD,
50     NEXT_ERROR,
51     PREV_ERROR,
52     GOTO_SYM,
53     CODE_COMPLETE,
54     COMPILE_FILE,
55     CLEAN_PROJECT,
56     RUN_TOOL,
57         UNNAMED
58        
59        
60 };
61
62 class LogItem
63 {
64 public:
65    
66     ActionCode code;
67     string data;
68     string secondaryData;
69 };
70
71 class Logger
72 {
73 public:
74     vector<LogItem> items;
75    
76
77     Logger() {}
78
79     void Log(ActionCode c , string d, string s )
80     {
81        
82         LogItem item;
83         item.code = c;
84         item.data = d;
85         item.secondaryData = s;
86        
87         items.push_back(item);
88     }
89    
90    
91    
92     string GetActionCodeName(ActionCode code)
93     {
94         switch ( code )
95         {
96            
97         case OPEN_FILE : return "Open File";
98         case OPEN_PROJECT : return "Open Project";
99         case CLOSE_FILE : return "Close File";
100         case CLOSE_PROJECT : return "Close Project";
101         case COMPILE_PROJECT : return "Compile Project";
102         case COMPILE_FILE : return "Compile File";
103         case CLEAN_PROJECT : return "Clean Project";
104         case RUN_TOOL : return "Run Tool";
105         case COMPILE_AND_RUN_PROJECT : return "Run Project";
106         case RECORD_MACRO : return "Record Macro";
107         case EXECUTE_MACRO : return "Execute Macro";
108         case OPEN_TOOLS_DIALOG : return "Open Tools Dialog";
109         case NEW_PROJECT : return "New Project";
110         case NEW_FILE : return "New File";
111         case NEW_PROJECT_TYPE : return "New Add Project Wizard";
112         case SAVE_FILE : return "Save File";
113         case SAVE_FILE_AS : return "Save File As";
114         case SAVE_PROJECT : return "Save Project";
115         case ADVANCED_FIND : return "Open Advanced Find Dialog";
116         case OPEN_SETTINGS_DLG : return "Open Settings Dialog";
117         case ELEPHANT_START : return "Elephant Start-up";
118         case ELEPHANT_STOP : return "Elephant Stop";
119         case PARSING_FILES : return "Parsing Files";
120         case UPDATE_PROJECT_PARSER : return "Update Project Parser";
121         case HIDE_SHOW_WINDOW : return "Hide Show Window";
122         case OPEN_RECENT_PROJECT : return "Open Recent Project";
123         case ACTIVATE_ADDON : return "Activate Project Node";
124         case SIMPLE_FIND : return "Simple Find";
125         case COMMENT_SELECTION : return "Comment Selection";
126         case UNCOMMENT_SELECTION : return "Uncomment Selection";
127         case GOTO_LINE : return "Goto Line";
128         case EVALUATE_BUFFER : return "Evaluate Buffer";
129         case CHANGE_FONT : return "Change Font";
130         case UPDATE_FILE_PARSER          : return "Updating File Parser";
131         case FIND_BAR_FIND: return "Finding";
132         case FIND_BAR_REPLACE: return "Replacing";
133         case NAVIGATE_BACK: return "Navigate Back";
134         case NAVIGATE_FORWARD: return "Navigate Forward";
135         case NEXT_ERROR: return "Next Error";
136         case PREV_ERROR: return "Previous Error";
137         case GOTO_SYM: return "Goto Symbol";
138         case CODE_COMPLETE: return "Completing Code";
139         default : return "Unnamed";
140            
141            
142         }
143        
144     }
145    
146    
147    
148 };
149
150
151 #endif
Note: See TracBrowser for help on using the browser.