Develop and Download Open Source Software

Browse CVS Repository

Contents of /malonnote/mnModel.h

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.15 - (show annotations) (download) (as text)
Tue Sep 20 06:29:53 2005 UTC (18 years, 6 months ago) by maloninc
Branch: MAIN
CVS Tags: rel_1_3, rel_1_4, dev_1_3-0008, dev_1_3-0007, dev_1_5-0002, dev_1_5-0001, dev_1_5-0004, dev_1_4-0001, dev_1_4-0003, dev_1_4-0002, dev_1_4-0005, dev_1_4-0006
Changes since 1.14: +2 -0 lines
File MIME type: text/x-chdr
implement group by TYPE, and MAX_TOKEN=32

1 #ifndef MNMODEL_H
2 #define MNMODEL_H
3
4 #include <wx/wx.h>
5 #include <wx/treebase.h>
6
7 #include "config.h"
8
9 #define MAX_WIKI_TEXT_SIZE 10000
10 #define MAX_TOKEN 32
11 #define MAX_BUF_SIZE 1024
12 #define EXT_TAG ".txt"
13 #define DATE_TAG ":''DATE'':"
14 #define TYPE_TAG ":''TYPE'':"
15 #define NEW_DATA DATE_TAG " %Y/%m/%d %H:%M:%S\n\n" TYPE_TAG " memo\n---------------------------------------------------------\n"
16
17 #define ALLMEMO_TAG "malon-all"
18 #define TYPESEARCH_TAG "malon-type:"
19
20 #define CODE_SET_EUC_JP "euc-jp"
21 #ifdef __WXMAC__
22 #define CODE_SET_SYSTEM "CP932"
23 #endif
24 #ifdef __WXCOCOA__
25 #define CODE_SET_SYSTEM "CP932"
26 #endif
27 #ifdef __WXMSW__
28 #define CODE_SET_SYSTEM "CP932"
29 #endif
30 #ifdef __WXMOTIF__
31 #define CODE_SET_SYSTEM "eucJP"
32 #endif
33 #ifdef __WXGTK__
34 #define CODE_SET_SYSTEM "euc-jp"
35 #endif
36 #ifdef __WXX11__
37 #define CODE_SET_SYSTEM "eucJP"
38 #endif
39
40 #define MAC_BACKSLASH 0x80
41
42
43 class WikiData : wxTreeItemData{
44
45 public:
46 WikiData(wxString* dataDir, wxString* fileName);
47 WikiData(wxString* dataDir);
48 ~WikiData();
49 const wxString* getFileName();
50 const wxString* getSubject();
51 const wxString* getOldSubject();
52 const wxString* getDate();
53 const wxString* getText();
54 void modText(wxString* text);
55 void modSubject(wxString* newName);
56 void save();
57 void removeDataFile();
58 void setOldSubjectFromCurrent();
59
60 private:
61 wxString* subject;
62 wxString* oldSubject;
63 wxString* dataDirName;
64 wxString* fileName;
65 wxString* date;
66 wxString* text;
67 };
68
69 /* Search Result List */
70 WX_DECLARE_LIST(WikiData, WikiList);
71
72 /* Search Result Hash (Key is search string) */
73 WX_DECLARE_STRING_HASH_MAP(WikiList*, WikiHash);
74
75
76 class mnModel {
77
78 public:
79 mnModel(const char* dataDir);
80 ~mnModel();
81 bool makeSearchToken(const char* searchStr, char* tokenList[]);
82 bool matchWithToken(wxString* fileName, char* tokenList[]);
83 WikiList* search(const char* searchStr);
84 void group();
85 bool normalSearch(char* tokenList[], FILE*fp, char* decodeFileNameBuf);
86 bool typeSearch(char* typeStr, FILE*fp);
87 void addWikiData(WikiData* wikiData);
88 bool addSearchStr(wxString* searchStr);
89 void addSearchList(wxString* searchStr, WikiList* list);
90 void removeSearchStr(wxString searchStr);
91 void modSearchStr(wxString* oldStr, wxString* newStr);
92 const wxArrayString* getSearchStrList();
93 const WikiList* getSearchResultList(wxString* searchStr);
94 void addSearchResultList(wxString* searchStr, WikiData* addData);
95 bool delSearchResultList(wxString* searchStr, WikiData* delData);
96 WikiData* newWikiData();
97 const wxString* getWikiDataDir();
98 void clearSearchStrList();
99 void clearSearchResultList();
100 private:
101 wxString* wikiDataDir;
102 wxArrayString* searchStrList;
103 WikiHash wikiHash;
104 };
105
106
107 #endif //MNMODEL_H

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26