OSDN Git Service

IEコンポーネント使い始めまで
[nlite/nlite.git] / nlite / nlite.h
1 #pragma once
2
3
4 #include "nlite_string.h"
5 namespace nlite{
6
7         //\83N\83\89\83X\90æ\8ds\90é\8c¾
8         class CApplicationInfo;
9         class CListenerList;
10         struct Property;
11         struct GeneralProperty;
12
13         //\83O\83\8d\81[\83o\83\8b
14         extern const CApplicationInfo * appInfo;
15         extern CListenerList listenerList;
16
17         //\83O\83\8d\81[\83o\83\8b\8aÖ\90\94
18         extern VOID UnexpectedErrorMessageShow(LPCTSTR headMessage,LPCTSTR summary,UINT line,LPCTSTR fileName,LPCTSTR function);
19         
20         extern HINSTANCE OpenURL(HWND hwnd,const GeneralProperty &gp,LPCTSTR url ,INT nShowCommand);
21
22         //\83A\83v\83\8a\83P\81[\83V\83\87\83\93\83v\83\8d\83p\83e\83B
23         extern Property nliteProperty;                                          
24         const static UINT_PTR COMMENTVIEW_HEADERITEMSIZE = 5;
25         enum MESSAGE{
26                 UM_COMMENTVIEW_SETCTRL = WM_USER + 1,
27
28         };
29
30         namespace nliteregex{
31                 typedef std::tr1::basic_regex<TCHAR> tregex;
32                 namespace text{
33                         const static CString URL_TEXT = TEXT("(https?|ftp)(://[-_.!~*\'()a-zA-Z0-9;/?:@&=+$,%#]+)");
34                         const static CString TAG_TEXT = TEXT("<[\"#/a-zA-Z0-9= ]*>");
35                         const static CString VIDEOID_TEXT = TEXT("(sm|nm)([0-9])+");
36                         const static CString LIVEID_TEXT = TEXT("(lv)([0-9])+");
37                         const static CString LINK_TEXT = TEXT("(") + URL_TEXT + TEXT(")|(") + VIDEOID_TEXT + TEXT(")|(") + LIVEID_TEXT + TEXT(")");
38                 }
39                 const static tregex URL(text::URL_TEXT);
40                 const static tregex TAGSTRING(text::TAG_TEXT);
41                 const static tregex VIDEOID(text::VIDEOID_TEXT);
42                 const static tregex LIVEID(text::LIVEID_TEXT);
43                 const static tregex LILNKREGEX(text::LINK_TEXT);
44                 const static tstring NUTHINGSTRING(TEXT(""));
45         }
46
47         ///
48         ///\90Ý\92è\83t\83@\83C\83\8b\82Ìxml\93Ç\82Ý\8eæ\82è\97p\83N\83\89\83X
49         ///
50         class CXmlParser:public CExpatImpl<CXmlParser>{
51
52         public:
53                 ///
54                 ///\83R\83\93\83X\83g\83\89\83N\83^
55                 ///
56                 CXmlParser(){
57                         this->Create();
58                         return;
59                 }
60
61
62                 void OnPostCreate (){
63
64                         EnableStartElementHandler ();
65                         EnableEndElementHandler ();
66                         EnableCharacterDataHandler ();
67                 }
68
69                 virtual void OnStartElement (const XML_Char *pszName, const XML_Char **papszAttrs){}
70
71                 virtual void OnEndElement (const XML_Char *pszName){}
72
73                 virtual void OnCharacterData (const XML_Char *pszData, int nLength){}
74         };
75
76         
77
78 }