00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef _MPCL_TEXT_HTML_ANCHOR__
00027 #define _MPCL_TEXT_HTML_ANCHOR__
00028
00029 #include "../../net/url_encoder.hh"
00030 #include "container.hh"
00031
00032
00034 namespace mpcl
00035 {
00036
00038 namespace text
00039 {
00040
00042 namespace html
00043 {
00044
00046 class TAnchor;
00047
00049 typedef
00050 TSmartPointer<TAnchor>
00051 QTAnchor;
00052
00054 typedef
00055 TSmartPointer<const TAnchor>
00056 QKTAnchor;
00057
00067 class TAnchor : public TContainer
00068 {
00069
00070 public:
00071
00072
00073
00074
00075
00083 TAnchor ( const char* pkcHREF ,
00084 const char* pkcNAME ,
00085 const char* pkcTITLE ,
00086 const char* pkcTARGET = "" ) :
00087 TContainer (pkcNAME)
00088 {
00089 tAttributeMap ["class-identifier"] = "anchor";
00090 tAttributeMap.bind ("name", pkcNAME);
00091 tAttributeMap.bind ("href", pkcHREF);
00092 tAttributeMap.bind ("title", pkcTITLE);
00093 tAttributeMap.bind ("target", pkcTARGET);
00094 gIsQualified = true;
00095 }
00096
00105 TAnchor ( const char* pkcHREF ,
00106 const char* pkcNAME ,
00107 const char* pkcTITLE ,
00108 const QTTag& rkqtTAG ,
00109 const char* pkcTARGET = "" ) :
00110 TContainer (pkcNAME)
00111 {
00112 tAttributeMap ["class-identifier"] = "anchor";
00113 tAttributeMap.bind ("name", pkcNAME);
00114 tAttributeMap.bind ("href", pkcHREF);
00115 tAttributeMap.bind ("title", pkcTITLE);
00116 tAttributeMap.bind ("target", pkcTARGET);
00117 insert (rkqtTAG);
00118 gIsQualified = true;
00119 }
00120
00130 TAnchor ( const char* pkcHREF ,
00131 const char* pkcNAME ,
00132 const char* pkcTITLE ,
00133 const QTTag& rkqtTAG ,
00134 const TStringToStringMap& rktSTRING_TO_STRING_MAP ,
00135 const char* pkcTARGET = "" ) :
00136 TContainer (pkcNAME)
00137 {
00138 tAttributeMap ["class-identifier"] = "anchor";
00139 tAttributeMap.bind ("name", pkcNAME);
00140 tAttributeMap.bind ("href", pkcHREF);
00141 tAttributeMap.bind ("title", pkcTITLE);
00142 tAttributeMap.bind ("target", pkcTARGET);
00143 insert (rkqtTAG);
00144 gIsQualified = true;
00145 tAttributeMap ["href"] += "?";
00146 tAttributeMap ["href"] += net::TUrlEncoder::_encode (rktSTRING_TO_STRING_MAP, false);
00147 }
00148
00149 };
00150
00151 }
00152
00153 }
00154
00155 }
00156
00157
00158 #endif // not _MPCL_TEXT_HTML_ANCHOR__