16#if __DCL_HAVE_THIS_FILE__
58 PointerList::Iterator itList =
__children.begin();
66 strMenu.split(L
'\n', lines);
69 StringArray::Iterator itLines = lines.begin();
70 for( ; itLines != lines.end(); itLines++) {
73 (*itLines).split(L
',', items);
74 StringArray::Iterator itItems = items.begin();
78 if ((*itItems).compareNoCase(L
"BEGIN") == 0)
80 else if ((*itItems).compareNoCase(L
"END") == 0)
84 if ((*itItems).compareNoCase(L
"SEPARATOR") == 0) {
88 if (itItems != items.end()) {
91 if (itItems != items.end()) {
94 if (itItems != items.end()) {
95 if (!(*itItems).isEmpty())
98 if (itItems != items.end()) {
100 if ((*itItems).split(L
' ', pages) > 0) {
101 StringArray::Iterator itPages = pages.begin();
102 for( ; itPages != pages.end(); itPages++) {
145 PointerList::Iterator itList =
__children.begin();
146 for( ; itList !=
__children.end(); itList++) {
152 LINK, ACTIVE, CAPTION, SEPARATOR
166 PointerList::Iterator itList =
__children.begin();
187 pDest->append(L
"MENUITEM", *ACTIVE);
191 pDest->append(L
"MENUITEM", *SEPARATOR);
195 pDest->append(L
"MENUITEM", *CAPTION);
200 pDest->append(L
"MENUITEM", *LINK);
204 PointerList::Iterator itList =
__children.begin();
207 pDest->append(L
"MENUITEM", *ABEGIN);
209 pDest->append(L
"MENUITEM", *BEGIN);
212 ((
HtmlMenuItem*)(*itList))->assign(pDest, session, ABEGIN, AEND, BEGIN, END, LINK, ACTIVE, CAPTION, SEPARATOR);
215 pDest->append(L
"MENUITEM", *AEND);
217 pDest->append(L
"MENUITEM", *END);
243 if (__mapParams.lookup(L
"MENU", rValue))
244 __strMenuFile = __pPage->site()->strSkinDir + rValue;
246 SQLField& SKIN_FILE = fields.byName(L
"SKIN_FILE");
247 if (!SKIN_FILE.isNull()) {
248 rValue = SKIN_FILE.asString();
249 __strMenuFile = __pPage->site()->strSkinDir + rValue + L
".menu";
254void MenuView::onPrint(
Session& session)
257 __onPrint(__strMenuFile,
this, session);
261void MenuView::__onPrint(
262 const String& strMenuFile,
267 const HtmlPage* pPage = pView->page();
268 ListedStringToStringArrayMap& mapQuery = session.__ctx.__queryMap;
275 if (!strMenuID.isEmpty())
303 menu.
assign(pMENU, pMENU, session);
304 pView->assign(L
"MENU", *pMENU);
310HeadSignMenuForm::HeadSignMenuForm(
HtmlPage* pPage)
320 if (__mapParams.lookup(L
"MENU", rValue))
321 __strMenuFile = __pPage->site()->strSkinDir + rValue;
323 SQLField& SKIN_FILE = fields.byName(L
"SKIN_FILE");
324 if (!SKIN_FILE.isNull()) {
325 rValue = SKIN_FILE.asString();
326 __strMenuFile = __pPage->site()->strSkinDir + rValue + L
".menu";
331void HeadSignMenuForm::onPrint(
Session& session)
334 HeadView::__onPrint(
this);
335 SignForm::__onPrint(
this, session);
336 MenuView::__onPrint(__strMenuFile,
this, session);
338 FormView::onPrint(session);
341void HeadSignMenuForm::onGet(
Session& session)
344 SignForm::__onGet(
this, session);
347void HeadSignMenuForm::onPost(
Session& session)
350 SignForm::__onPost(
this, session);
351 FormView::onPost(session);
#define IMPLEMENT_CLASSINFO_EX(class_name, base_class_name)
#define __DCL_TRACE1(fmt, arg1)
#define __DCL_ASSERT(expr)
static String readText(const String &_filename) __DCL_THROWS1(IOException *)
virtual void onPrint(Session &session) __DCL_THROWS1(Exception *)
static String getDefault(ListedStringToStringArrayMap &map, const String &strKey)
virtual void init(SQLFields &fields) __DCL_THROWS1(Exception *)
static int parse(const wchar_t *_number, unsigned _base=10) __DCL_THROWS1(NumericConvertException *)