From f63b41e29d784264924e96c5b44b36bb039cd554 Mon Sep 17 00:00:00 2001 From: graemeg Date: Mon, 3 Dec 2007 15:04:17 +0000 Subject: * Updated the doc build scripts. * Added a full text search via the Tipue search engine. * Created a simplistic parser to generate the Tipue data file. --- docs/build_gfx.sh | 4 +- docs/build_gui.sh | 1 + docs/html/_tipue_results.html | 53 ++++++ docs/html/corelib.cnt | 7 +- docs/html/gui.cnt | 54 ++++-- docs/html/search.html | 22 +++ docs/html/tip_form.js | 19 +++ docs/html/tip_search.js | 357 ++++++++++++++++++++++++++++++++++++++++ docs/html/tipue_b1.png | Bin 0 -> 375 bytes docs/new_gfx.sh | 1 + docs/new_gui.sh | 3 +- docs/tipue/tipue_data.lpi | 46 ++++++ docs/tipue/tipue_data.lpr | 203 +++++++++++++++++++++++ docs/xml/corelib/gfx_wuline.xml | 122 ++++++++++++++ 14 files changed, 877 insertions(+), 15 deletions(-) create mode 100644 docs/html/_tipue_results.html create mode 100644 docs/html/search.html create mode 100644 docs/html/tip_form.js create mode 100644 docs/html/tip_search.js create mode 100644 docs/html/tipue_b1.png create mode 100644 docs/tipue/tipue_data.lpi create mode 100644 docs/tipue/tipue_data.lpr create mode 100644 docs/xml/corelib/gfx_wuline.xml (limited to 'docs') diff --git a/docs/build_gfx.sh b/docs/build_gfx.sh index 58ab34a6..03c953eb 100755 --- a/docs/build_gfx.sh +++ b/docs/build_gfx.sh @@ -5,6 +5,7 @@ fpdoc --package=CoreLib \ --format=html \ --output=html/corelib/ \ --content=html/corelib.cnt \ + --html-search=/fpgui/docs/search.html \ --import=html/gui.cnt,../gui/ \ --input='-Fi../src/corelib ../src/corelib/gfxbase.pas' --descr=xml/corelib/gfxbase.xml \ --input='-Fi../src/corelib ../src/corelib/x11/gfx_x11.pas' --descr=xml/corelib/x11/gfx_x11.xml \ @@ -18,7 +19,8 @@ fpdoc --package=CoreLib \ --input='-Fi../src/corelib ../src/corelib/gfx_utf8utils.pas' --descr=xml/corelib/gfx_utf8utils.xml \ --input='-Fi../src/corelib ../src/corelib/gfx_widget.pas' --descr=xml/corelib/gfx_widget.xml \ --input='-Fi../src/corelib ../src/corelib/x11/gfx_utils.pas' --descr=xml/corelib/gfx_utils.xml \ - --input='-Fi../src/corelib ../src/corelib/gfx_popupwindow.pas' --descr=xml/corelib/gfx_popupwindow.xml + --input='-Fi../src/corelib ../src/corelib/gfx_popupwindow.pas' --descr=xml/corelib/gfx_popupwindow.xml \ + --input='-Fi../src/corelib ../src/corelib/gfx_wuline.pas' --descr=xml/corelib/gfx_wuline.xml # --input='-Fi../src/corelib ../src/corelib/x11/gfx_.pas' --descr=xml/corelib/gfx_.xml \ diff --git a/docs/build_gui.sh b/docs/build_gui.sh index 9825db19..f6c0c5ec 100755 --- a/docs/build_gui.sh +++ b/docs/build_gui.sh @@ -4,6 +4,7 @@ fpdoc --package=GUI \ --format=html \ --output=html/gui/ \ --content=html/gui.cnt \ + --html-search=/fpgui/docs/search.html \ --import=html/corelib.cnt,../corelib/ \ --descr=xml/gui/gui_basegrid.xml --input='-Fi../src/gui ../src/gui/gui_basegrid.pas' \ --descr=xml/gui/gui_bevel.xml --input='-Fi../src/gui ../src/gui/gui_bevel.pas' \ diff --git a/docs/html/_tipue_results.html b/docs/html/_tipue_results.html new file mode 100644 index 00000000..0584f1dc --- /dev/null +++ b/docs/html/_tipue_results.html @@ -0,0 +1,53 @@ + + + + +Search Results + + + + + + + + + + + + + + + + +
+ + + + + +
+ + + + + +
+ +

+Return to main index page. +

+Tipue +

+ + + diff --git a/docs/html/corelib.cnt b/docs/html/corelib.cnt index 7a665263..8a50640d 100644 --- a/docs/html/corelib.cnt +++ b/docs/html/corelib.cnt @@ -889,6 +889,7 @@ MenuAccelFont fpgfx/tfpgstyle.menuaccelfont.html MenuDisabledFont fpgfx/tfpgstyle.menudisabledfont.html Create fpgfx/tfpgstyle.create.html + Destroy fpgfx/tfpgstyle.destroy.html DrawButtonFace fpgfx/tfpgstyle.drawbuttonface.html DrawControlFrame fpgfx/tfpgstyle.drawcontrolframe.html DrawDirectionArrow fpgfx/tfpgstyle.drawdirectionarrow.html @@ -1123,6 +1124,9 @@ PopupListFirst gfx_popupwindow/popuplistfirst.html PopupListFind gfx_popupwindow/popuplistfind.html PopupDontCloseWidget gfx_popupwindow/popupdontclosewidget.html + gfx_wuline gfx_wuline/index.html + WuLine gfx_wuline/wuline.html + DrawWuCircle gfx_wuline/drawwucircle.html :classes #CoreLib.gfxbase.TfpgRect 0VTop @@ -1608,6 +1612,7 @@ 3VMenuAccelFont 3VMenuDisabledFont 3MCreate +3MDestroy 3MDrawButtonFace 3MDrawControlFrame 3MDrawDirectionArrow @@ -1647,7 +1652,7 @@ 3PNextAlarm r 3PInterval rw 3POnTimer rw -#CoreLib.fpgfx.TfpgCaret .TObject +#CoreLib.fpgfx.TfpgCaret TObject 1VFEnabled 1VFVisible 1VFInterval diff --git a/docs/html/gui.cnt b/docs/html/gui.cnt index 1d353b03..09e8772f 100644 --- a/docs/html/gui.cnt +++ b/docs/html/gui.cnt @@ -39,7 +39,6 @@ ShowGrid gui_basegrid/tfpgbasegrid.showgrid.html ScrollBarStyle gui_basegrid/tfpgbasegrid.scrollbarstyle.html HeaderHeight gui_basegrid/tfpgbasegrid.headerheight.html - ColResizing gui_basegrid/tfpgbasegrid.colresizing.html ColumnWidth gui_basegrid/tfpgbasegrid.columnwidth.html OnFocusChange gui_basegrid/tfpgbasegrid.onfocuschange.html OnRowChange gui_basegrid/tfpgbasegrid.onrowchange.html @@ -82,6 +81,8 @@ DoPush gui_button/tfpgbutton.dopush.html DoRelease gui_button/tfpgbutton.dorelease.html Click gui_button/tfpgbutton.click.html + GetCommand gui_button/tfpgbutton.getcommand.html + SetCommand gui_button/tfpgbutton.setcommand.html Down gui_button/tfpgbutton.down.html Font gui_button/tfpgbutton.font.html AllowDown gui_button/tfpgbutton.allowdown.html @@ -402,7 +403,6 @@ ShowHeader gui_grid/tfpgstringgrid.showheader.html ShowGrid gui_grid/tfpgstringgrid.showgrid.html HeaderHeight gui_grid/tfpgstringgrid.headerheight.html - ColResizing gui_grid/tfpgstringgrid.colresizing.html ColumnWidth gui_grid/tfpgstringgrid.columnwidth.html OnFocusChange gui_grid/tfpgstringgrid.onfocuschange.html OnRowChange gui_grid/tfpgstringgrid.onrowchange.html @@ -609,6 +609,8 @@ Selectable gui_menu/tfpgmenuitem.selectable.html GetAccelChar gui_menu/tfpgmenuitem.getaccelchar.html DrawText gui_menu/tfpgmenuitem.drawtext.html + GetCommand gui_menu/tfpgmenuitem.getcommand.html + SetCommand gui_menu/tfpgmenuitem.setcommand.html Text gui_menu/tfpgmenuitem.text.html HotKeyDef gui_menu/tfpgmenuitem.hotkeydef.html Separator gui_menu/tfpgmenuitem.separator.html @@ -638,6 +640,7 @@ Destroy gui_menu/tfpgpopupmenu.destroy.html Close gui_menu/tfpgpopupmenu.close.html AddMenuItem gui_menu/tfpgpopupmenu.addmenuitem.html + MenuItemByName gui_menu/tfpgpopupmenu.menuitembyname.html BackgroundColor gui_menu/tfpgpopupmenu.backgroundcolor.html BeforeShow gui_menu/tfpgpopupmenu.beforeshow.html TfpgMenuBar gui_menu/tfpgmenubar.html @@ -762,7 +765,7 @@ DrawPrimitive gui_style/tfpgcommonstyle.drawprimitive.html TfpgWin2000Style gui_style/tfpgwin2000style.html TfpgWinXPStyle gui_style/tfpgwinxpstyle.html - TfpgBluecurveStyle gui_style/tfpgbluecurvestyle.html + TfpgBlueCurveStyle gui_style/tfpgbluecurvestyle.html TfpgClearLookStyle gui_style/tfpgclearlookstyle.html TfpgMotifStyle gui_style/tfpgmotifstyle.html gui_tab gui_tab/index.html @@ -865,6 +868,7 @@ Create gui_gauge/tfpggauge.create.html AddProgress gui_gauge/tfpggauge.addprogress.html Percentage gui_gauge/tfpggauge.percentage.html + Font gui_gauge/tfpggauge.font.html Align gui_gauge/tfpggauge.align.html Anchors gui_gauge/tfpggauge.anchors.html SecondColor gui_gauge/tfpggauge.secondcolor.html @@ -872,7 +876,6 @@ Color gui_gauge/tfpggauge.color.html Enabled gui_gauge/tfpggauge.enabled.html FirstColor gui_gauge/tfpggauge.firstcolor.html - Font gui_gauge/tfpggauge.font.html Kind gui_gauge/tfpggauge.kind.html MinValue gui_gauge/tfpggauge.minvalue.html MaxValue gui_gauge/tfpggauge.maxvalue.html @@ -895,13 +898,20 @@ Month gui_popupcalendar/tfpgpopupcalendar.month.html Year gui_popupcalendar/tfpgpopupcalendar.year.html OnValueSet gui_popupcalendar/tfpgpopupcalendar.onvalueset.html - Value gui_popupcalendar/tfpgpopupcalendar.value.html + DateValue gui_popupcalendar/tfpgpopupcalendar.datevalue.html + MinDate gui_popupcalendar/tfpgpopupcalendar.mindate.html + MaxDate gui_popupcalendar/tfpgpopupcalendar.maxdate.html TfpgCalendarCombo gui_popupcalendar/tfpgcalendarcombo.html HasText gui_popupcalendar/tfpgcalendarcombo.hastext.html DoDropDown gui_popupcalendar/tfpgcalendarcombo.dodropdown.html Create gui_popupcalendar/tfpgcalendarcombo.create.html - Value gui_popupcalendar/tfpgcalendarcombo.value.html + BackgroundColor gui_popupcalendar/tfpgcalendarcombo.backgroundcolor.html DateFormat gui_popupcalendar/tfpgcalendarcombo.dateformat.html + DateValue gui_popupcalendar/tfpgcalendarcombo.datevalue.html + FontDesc gui_popupcalendar/tfpgcalendarcombo.fontdesc.html + MinDate gui_popupcalendar/tfpgcalendarcombo.mindate.html + MaxDate gui_popupcalendar/tfpgcalendarcombo.maxdate.html + OnChange gui_popupcalendar/tfpgcalendarcombo.onchange.html :classes #GUI.gui_basegrid.TfpgBaseGrid #CoreLib.gfx_widget.TfpgWidget @@ -983,7 +993,6 @@ 2PShowGrid rw 2PScrollBarStyle rw 2PHeaderHeight r -2PColResizing rw 2PColumnWidth rw 2POnFocusChange rw 2POnRowChange rw @@ -1005,6 +1014,7 @@ 4PStyle rw 4PBackgroundColor rw #GUI.gui_button.TfpgButton #CoreLib.gfx_widget.TfpgWidget +1VFCommand 1VFImageName 1VFClicked 1VFShowImage @@ -1046,6 +1056,8 @@ 3MDoPush 3MDoRelease 3MClick +3MGetCommand +3MSetCommand 3PDown rw 3PFont r 3PAllowDown rw @@ -1479,7 +1491,6 @@ 4PShowHeader 4PShowGrid 4PHeaderHeight -4PColResizing 4PColumnWidth 4POnFocusChange 4POnRowChange @@ -1828,6 +1839,7 @@ 4PLines r 4PFontDesc rw #GUI.gui_menu.TfpgMenuItem TComponent +1VFCommand 1VFEnabled 1VFHotKeyDef 1VFOnClick @@ -1845,6 +1857,8 @@ 3MSelectable 3MGetAccelChar 3MDrawText +3MGetCommand +3MSetCommand 3PText rw 3PHotKeyDef rw 3PSeparator rw @@ -1887,6 +1901,7 @@ 3MDestroy 3MClose 3MAddMenuItem +3MMenuItemByName 3PBackgroundColor rw 3PBeforeShow rw #GUI.gui_menu.TfpgMenuBar #CoreLib.gfx_widget.TfpgWidget @@ -2039,7 +2054,7 @@ 3MDrawPrimitive #GUI.gui_style.TfpgWin2000Style #GUI.gui_style.TfpgCommonStyle #GUI.gui_style.TfpgWinXPStyle #GUI.gui_style.TfpgCommonStyle -#GUI.gui_style.TfpgBluecurveStyle #GUI.gui_style.TfpgCommonStyle +#GUI.gui_style.TfpgBlueCurveStyle #GUI.gui_style.TfpgCommonStyle #GUI.gui_style.TfpgClearLookStyle #GUI.gui_style.TfpgCommonStyle #GUI.gui_style.TfpgMotifStyle #GUI.gui_style.TfpgCommonStyle #GUI.gui_tab.TfpgTabSheet #CoreLib.gfx_widget.TfpgWidget @@ -2253,6 +2268,7 @@ 3MCreate 3MAddProgress 3PPercentage r +3PFont r 4PAlign 4PAnchors 4PSecondColor rw @@ -2260,7 +2276,6 @@ 4PColor rw 4PEnabled 4PFirstColor rw -4PFont r 4PKind rw 4PMinValue rw 4PMaxValue rw @@ -2270,6 +2285,8 @@ #GUI.gui_popupcalendar.TfpgPopupCalendar #CoreLib.gfx_popupwindow.TfpgPopupWindow 1VFMonthOffset 1VFDate +1VFMaxDate +1VFMinDate 1VFCallerWidget 1VFOnValueSet 1VedtYear @@ -2285,6 +2302,8 @@ 1MCalculateCellDay 1MSetDateElement 1MSetDateValue +1MSetMaxDate +1MSetMinDate 1MUpdateCalendar 1MbtnYearUpClicked 1MbtnYearDownClicked @@ -2305,17 +2324,28 @@ 3PMonth 3PYear 3POnValueSet rw -4PValue rw +4PDateValue rw +4PMinDate rw +4PMaxDate rw #GUI.gui_popupcalendar.TfpgCalendarCombo #GUI.gui_combobox.TfpgAbstractComboBox 1VFDate 1VFDateFormat +1VFMaxDate +1VFMinDate 1MInternalOnValueSet 1MSetDateFormat 1MSetDateValue +1MSetMaxDate +1MSetMinDate 1MSetText 1MGetText 2MHasText 2MDoDropDown 3MCreate -4PValue rw +4PBackgroundColor 4PDateFormat rw +4PDateValue rw +4PFontDesc +4PMinDate rw +4PMaxDate rw +4POnChange diff --git a/docs/html/search.html b/docs/html/search.html new file mode 100644 index 00000000..d5cd8c0e --- /dev/null +++ b/docs/html/search.html @@ -0,0 +1,22 @@ + + + + + +Search the HTML documentation + + + + + +

Search the documentation

+ + + + + + diff --git a/docs/html/tip_form.js b/docs/html/tip_form.js new file mode 100644 index 00000000..567690ce --- /dev/null +++ b/docs/html/tip_form.js @@ -0,0 +1,19 @@ +// Tipue 1.63 (modified for pasdoc) + + +// ---------- script properties ---------- + + +var results_location = "_tipue_results.html"; + + +// ---------- end of script properties ---------- + + +function search_form(tip_Form) { + if (tip_Form.d.value.length > 0) { + document.cookie = 'tid=' + escape(tip_Form.d.value) + '; path=/'; + document.cookie = 'tin=0; path=/'; + parent.content.location.href = results_location; + } +} diff --git a/docs/html/tip_search.js b/docs/html/tip_search.js new file mode 100644 index 00000000..7b6f30f5 --- /dev/null +++ b/docs/html/tip_search.js @@ -0,0 +1,357 @@ +// Tipue 1.63 (modified for pasdoc) + + +// ---------- script properties ---------- + + +var results_location = "_tipue_results.html"; +var return_results = 10; +var include_num = 1; +var bold_query = 0; +var include_url = 0; + + +// ---------- end of script properties ---------- + + +var cookies = document.cookie; +var tp = cookies.indexOf('tid='); +var pn = cookies.indexOf('tin='); + +var lnf = 'Your search did not match any documents.

Make sure all keywords are spelled correctly.
Try different or more general keywords.'; +var lp = 'Previous '; +var ln = 'Next '; + +if (tp != -1) { + var st = tp + 4; + var en = cookies.indexOf(';', st); + if (en == -1) { + en = cookies.length; + } + var dit = cookies.substring(st, en); + dit = unescape(dit); +} +if (pn != -1) { + var st = pn + 4; + var en = cookies.indexOf(';', st); + if (en == -1) { + en = cookies.length; + } + var tn = cookies.substring(st, en); +} + +var od = dit; +var nr = return_results; +tn = parseInt(tn); +var nb = tn + nr; +var nc = 0; +var nd = 0; +var tr = new Array(); +var rt = new Array(); +var co = 0; +var tm = 0; + +if (dit.charAt(0) == '"' && dit.charAt(dit.length - 1) == '"') { + tm = 1; +} +var rn = dit.search(/ or /i); +if (rn >= 0) { + tm = 2; +} +rn = dit.search(/-/i); +if (rn >= 0 && tm != 1) { + rn = dit.search(/ /i); + if (rn != 0) { + dit = dit.replace(/-/gi, ' -'); + } +} +rn = dit.search(/ not /i); +if (rn >= 0 && tm != 1) { + dit = dit.replace(/ not /gi, ' -'); +} +rn = dit.search(/\+/i); +if (rn >= 0) { + rn = dit.search(/ /i); + if (rn != 0) { + dit = dit.replace(/\+/gi, ' +'); + } +} + +if (tm == 0) { + var woin = new Array(); + dit = dit.replace(/ and /gi, ' '); + var wt = dit.split(' '); + for (var a = 0; a < wt.length; a++) { + woin[a] = 0; + if (wt[a].charAt(0) == '-') { + woin[a] = 1; + } + } + for (var a = 0; a < wt.length; a++) { + wt[a] = wt[a].replace(/^\-|^\+/gi, ''); + } + a = 0; + for (var c = 0; c < s.length; c++) { + var es = s[c].split('^'); + var rk = 100; + if (es[5] == null) { + es[5] = '0'; + } + if (parseInt(es[5]) > 10) { + es[5] = '10'; + } + var pa = 0; + var nh = 0; + for (var i = 0; i < woin.length; i++) { + if (woin[i] == 0) { + nh++; + var nt = 0; + var pat = new RegExp(wt[i], 'i'); + rn = es[0].search(pat); + if (rn >= 0) { + rk = rk - 11; + rk = rk - parseInt(es[5]); + nt = 1; + } + rn = es[2].search(pat); + if (rn >= 0) { + rk = rk - 11; + rk = rk - parseInt(es[5]); + nt = 1; + } + rn = es[3].search(pat); + if (rn >= 0) { + rk = rk - 11; + rk = rk - parseInt(es[5]); + nt = 1; + } + if (nt == 1) { + pa++; + } + } + if (woin[i] == 1) { + var pat = new RegExp(wt[i], 'i'); + rn = es[0].search(pat); + if (rn >= 0) { + pa = 0; + } + rn = es[2].search(pat); + if (rn >= 0) { + pa = 0; + } + rn = es[3].search(pat); + if (rn >= 0) { + pa = 0; + } + } + } + if (pa == nh) { + tr[a] = rk + '^' + s[c]; + a++; + } + } + tr.sort(); + co = a; +} + +if (tm == 1) { + dit = dit.replace(/"/gi, ''); + var a = 0; + var pat = new RegExp(dit, 'i'); + for (var c = 0; c < s.length; c++) { + var es = s[c].split('^'); + var rk = 100; + if (es[5] == null) { + es[5] = '0'; + } + if (parseInt(es[5]) > 10) { + es[5] = '10'; + } + rn = es[0].search(pat); + if (rn >= 0) { + rk = rk - 11; + rk = rk - parseInt(es[5]); + } + rn = es[2].search(pat); + if (rn >= 0) { + rk = rk - 11; + rk = rk - parseInt(es[5]); + } + rn = es[3].search(pat); + if (rn >= 0) { + rk = rk - 11; + rk = rk - parseInt(es[5]); + } + if (rk < 100) { + tr[a] = rk + '^' + s[c]; + a++; + } + } + tr.sort(); + co = a; +} + +if (tm == 2) { + dit = dit.replace(/ or /gi, ' '); + var wt = dit.split(' '); + var a = 0; + for (var i = 0; i < wt.length; i++) { + var pat = new RegExp(wt[i], 'i'); + for (var c = 0; c < s.length; c++) { + var es = s[c].split('^'); + var rk = 100; + if (es[5] == null) { + es[5] = '0'; + } + if (parseInt(es[5]) > 10) { + es[5] = '10'; + } + var pa = 0; + var rn = es[0].search(pat); + if (rn >= 0) { + rk = rk - 11; + rk = rk - parseInt(es[5]); + if (rn >= 0) { + for (var e = 0; e < rt.length; e++) { + if (s[c] == rt[e]) { + pa = 1; + } + } + } + } + rn = es[2].search(pat); + if (rn >= 0) { + rk = rk - 11; + rk = rk - parseInt(es[5]); + if (rn >= 0) { + for (var e = 0; e < rt.length; e++) { + if (s[c] == rt[e]) { + pa = 1; + } + } + } + } + var rn = es[3].search(pat); + if (rn >= 0) { + rk = rk - 11; + rk = rk - parseInt(es[5]); + if (rn >= 0) { + for (var e = 0; e < rt.length; e++) { + if (s[c] == rt[e]) { + pa = 1; + } + } + } + } + if (rk < 100 && pa == 0) { + rt[a] = s[c]; + tr[a] = rk + '^' + s[c]; + a++; + co++; + } + } + } + tr.sort(); +} + +function write_cookie(nw) { + document.cookie = 'tid=' + escape(od) + '; path=/'; + document.cookie = 'tin=' + nw + '; path=/'; +} + + +// ---------- External references ---------- + + +var tip_Num = co; + +function tip_query() { + if (od != 'undefined' && od != null) document.tip_Form.d.value = od; +} + +function tip_num() { + document.write(co); +} + +function tip_out() { + if (co == 0) { + document.write(lnf); + return; + } + if (tn + nr > co) { + nd = co; + } else { + nd = tn + nr; + } + for (var a = tn; a < nd; a++) { + var os = tr[a].split('^'); + if (os[5] == null) { + os[5] = '0'; + } + if (bold_query == 1 && tm == 0) { + for (var i = 0; i < wt.length; i++) { + var lw = wt[i].length; + var tw = new RegExp(wt[i], 'i'); + rn = os[3].search(tw); + if (rn >= 0) { + var o1 = os[3].slice(0, rn); + var o2 = os[3].slice(rn, rn + lw); + var o3 = os[3].slice(rn + lw); + os[3] = o1 + '' + o2 + '' + o3; + } + } + } + if (bold_query == 1 && tm == 1) { + var lw = dit.length; + var tw = new RegExp(dit, 'i'); + rn = os[3].search(tw); + if (rn >= 0) { + var o1 = os[3].slice(0, rn); + var o2 = os[3].slice(rn, rn + lw); + var o3 = os[3].slice(rn + lw); + os[3] = o1 + '' + o2 + '' + o3; + } + } + if (include_num == 1) { + document.write(a + 1, '. '); + } + if (os[5] == '0') { + document.write('', os[1], ''); + } + if (os[5] == '1') { + document.write('', os[1], ''); + } + if (os[5] != '0' && os[5] != '1') { + document.write('', os[1], ''); + } + if (os[3].length > 1) { + document.write('
', os[3]); + } + if (include_url == 1) { + if (os[5] == '0') { + document.write('
', os[2], '

'); + } + if (os[5] == '1') { + document.write('
', os[2], '

'); + } + if (os[5] != '0' && os[5] != '1') { + document.write('
', os[2], '

'); + } + } else { + document.write('

'); + } + } + if (co > nr) { + nc = co - nb; + if (nc > nr) { + nc = nr; + } + document.write('

'); + } + if (tn > 1) { + document.write('', lp, nr, '  '); + } + if (nc > 0) { + document.write('', ln, nc, ''); + } +} diff --git a/docs/html/tipue_b1.png b/docs/html/tipue_b1.png new file mode 100644 index 00000000..9d85c433 Binary files /dev/null and b/docs/html/tipue_b1.png differ diff --git a/docs/new_gfx.sh b/docs/new_gfx.sh index 7c718f10..73b9ed3c 100755 --- a/docs/new_gfx.sh +++ b/docs/new_gfx.sh @@ -13,6 +13,7 @@ makeskel --package=CoreLib --output=xml/corelib/gfx_utf8utils.xml --input='-Fi.. makeskel --package=CoreLib --output=xml/corelib/gfx_widget.xml --input='-Fi../src/corelib ../src/corelib/gfx_widget.pas' makeskel --package=CoreLib --output=xml/corelib/gfx_utils.xml --input='-Fi../src/corelib ../src/corelib/x11/gfx_utils.pas' makeskel --package=CoreLib --output=xml/corelib/gfx_popupwindow.xml --input='-Fi../src/corelib ../src/corelib/gfx_popupwindow.pas' +makeskel --package=CoreLib --output=xml/corelib/gfx_wuline.xml --input='-Fi../src/corelib ../src/corelib/gfx_wuline.pas' # makeskel --package=CoreLib --output=xml/corelib/gfx_.xml --input='-Fi../src/corelib ../src/corelib/gfx_.pas' diff --git a/docs/new_gui.sh b/docs/new_gui.sh index df822ea3..d09fa040 100755 --- a/docs/new_gui.sh +++ b/docs/new_gui.sh @@ -1,3 +1,4 @@ +#!/bin/sh ####### GUI makeskel --package=GUI --output=xml/gui/gui_basegrid.xml --input='-Fi../src/gui ../src/gui/gui_basegrid.pas' @@ -6,7 +7,7 @@ makeskel --package=GUI --output=xml/gui/gui_button.xml --input='-Fi../src/gui .. makeskel --package=GUI --output=xml/gui/gui_checkbox.xml --input='-Fi../src/gui ../src/gui/gui_checkbox.pas' makeskel --package=GUI --output=xml/gui/gui_combobox.xml --input='-Fi../src/gui ../src/gui/gui_combobox.pas' makeskel --package=GUI --output=xml/gui/gui_customgrid.xml --input='-Fi../src/gui ../src/gui/gui_customgrid.pas' -makeskel --package=GUI --output=xml/gui/gui_dialogs.xml --input='-Fi../src/gui ../src/gui/gui_dialogs.pas' +#makeskel --package=GUI --output=xml/gui/gui_dialogs.xml --input='-Fi../src/gui ../src/gui/gui_dialogs.pas' makeskel --package=GUI --output=xml/gui/gui_edit.xml --input='-Fi../src/gui ../src/gui/gui_edit.pas' makeskel --package=GUI --output=xml/gui/gui_form.xml --input='-Fi../src/gui ../src/gui/gui_form.pas' makeskel --package=GUI --output=xml/gui/gui_grid.xml --input='-Fi../src/gui ../src/gui/gui_grid.pas' diff --git a/docs/tipue/tipue_data.lpi b/docs/tipue/tipue_data.lpi new file mode 100644 index 00000000..4df7189a --- /dev/null +++ b/docs/tipue/tipue_data.lpi @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/tipue/tipue_data.lpr b/docs/tipue/tipue_data.lpr new file mode 100644 index 00000000..2910f24c --- /dev/null +++ b/docs/tipue/tipue_data.lpr @@ -0,0 +1,203 @@ +program tipue_data; + +{$mode objfpc}{$H+} + +uses + {$IFDEF UNIX}{$IFDEF UseCThreads} + cthreads, + {$ENDIF}{$ENDIF} + Classes, SysUtils; + +type + TContentParser = class(TObject) + private + FList: TStringList; + index: integer; + procedure ParseCntFile(AFilename: string); + procedure WriteDataFile; + function ExtractDescription(AFilename: string): string; + public + constructor Create; + destructor Destroy; override; + procedure Run; + end; + + +function tiNumToken(const AValue, AToken : string): integer; +var + i, iCount : integer; + lsValue : string; +begin + Result := 0; + if AValue = '' then + Exit; //==> + + iCount := 0; + lsValue := AValue; + i := pos(AToken, lsValue); + while i <> 0 do begin + delete(lsValue, i, length(AToken)); + inc(iCount); + i := pos(AToken, lsValue); + end; + Result := iCount + 1; +end; + +function tiToken(const AValue, AToken: string; const APos: integer): string; +var + i, iCount, iNumToken: integer; + lsValue: string; +begin + result := ''; + + iNumToken := tiNumToken(AValue, AToken); + if APos = 1 then begin + if pos(AToken, AValue) = 0 then result := AValue + else result := copy(AValue, 1, pos(AToken, AValue)-1); + end + else if (iNumToken < APos-1) or (APos<1) then begin + result := ''; + end + else begin + + { Remove leading blocks } + iCount := 1; + lsValue := AValue; + i := pos(AToken, lsValue); + while (i<>0) and (iCountAPos) then + result := '' + else + result := copy(lsValue, 1, i-1); + end; +end; + +function tiGetTickCount: Cardinal; +begin + Result := Cardinal(Trunc(Now * 24 * 60 * 60 * 1000)); +end; + + +{ TContentParser } + +procedure TContentParser.ParseCntFile(AFilename: string); +const + cLine = 's[%d] = "%s^%s^%s^%s^0"'; +var + sl: TStringList; + l: integer; + s: string; + prefix: string; + desc: string; +begin + s := '#'; + sl := TStringList.Create; + try + sl.LoadFromFile(AFilename); + l := sl.IndexOf(':link tree'); + while (s <> '') or (s <> ':classes') do + begin +// writeln(' prosessing.... ', s); + if (s = '') or (s =':classes') then + break + else if s[1] = '#' then + begin + delete(s, 1, 1); + prefix := lowercase(tiToken(s, ' ', 1)) + PathDelim; + end + else + begin + desc := ExtractDescription(prefix + tiToken(trim(s), ' ', 2)); + FList.Add(Format(cLine, [ + index, // Array element number + tiToken(trim(s), ' ', 1), // Title + prefix + tiToken(trim(s), ' ', 2), // URL + desc, // Display Description + desc // Searchable Description + ])); + inc(index); + end; + + if l+1 < sl.Count then + begin + inc(l); + s := trim(sl[l]); + end + else + break; + end; { while } + finally + sl.Free; + end; +end; + +procedure TContentParser.WriteDataFile; +begin + FList.Insert(0, 'var s = new Array()'); + FList.Insert(1, ''); + FList.SaveToFile('tip_data.js'); +end; + +function TContentParser.ExtractDescription(AFilename: string): string; +var + sl: TStringList; + idx: integer; + s: string; +begin + sl := TStringList.Create; + try + sl.LoadFromFile('./' + AFilename); + idx := sl.IndexOf('

Declaration

') -1; + if idx >= 0 then + begin + s := Copy(sl[idx], 4, Length(sl[idx]) -8); + Result := s; + end + else + Result := ''; + except + Result := ''; + end; + sl.Free; +end; + +constructor TContentParser.Create; +begin + FList := TStringList.Create; + index := 0; +end; + +destructor TContentParser.Destroy; +begin + FList.Free; + inherited Destroy; +end; + +procedure TContentParser.Run; +begin + ParseCntFile('./corelib.cnt'); + ParseCntFile('./gui.cnt'); + WriteDataFile; +end; + + +var + p: TContentParser; + start: TDateTime; +begin + p := TContentParser.Create; + try + start := Now; + p.Run; + writeln('Data processed in ', FormatDateTime('ss.zzz', Now - start), ' seconds.'); + finally + p.Free; + end; +end. + diff --git a/docs/xml/corelib/gfx_wuline.xml b/docs/xml/corelib/gfx_wuline.xml new file mode 100644 index 00000000..93399659 --- /dev/null +++ b/docs/xml/corelib/gfx_wuline.xml @@ -0,0 +1,122 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -- cgit v1.2.3-70-g09d2