document maxgui addon
BlitzMax Forums/MaxGUI Module/document maxgui addon
| ||
Hi ! I have add some functions to maxgui, and i would like them to be documented => building works fine, and functions work too but, a part doesn't want to document : here are my modifs: dir = mod/brl.mod/maxgui.mod/ in Type gadget (gadget.bmx) Field Gadget_Class:Int in maxgui.bmx Rem bbdoc: Retourne le nom de la Classe d un gadget about: [ Classe | Nom$ * GADGET_DESKTOP | Desktop * GADGET_WINDOW | Window * GADGET_BUTTON | Button * GADGET_PANEL | Panel * GADGET_TEXTFIELD | TextField * GADGET_TEXTAREA | TextArea * GADGET_COMBOBOX | ComboBox * GADGET_LISTBOX | ListBox * GADGET_TOOLBAR | ToolBar * GADGET_TABBER | Tabber * GADGET_TREEVIEW | TreeView * GADGET_HTMLVIEW | HtmlView * GADGET_LABEL | Label * GADGET_SLIDER | Slider * GADGET_PROGBAR | ProgBar * GADGET_MENUITEM | MenuItem * GADGET_NODE | Node * GADGET_CANVAS | Canvas * GADGET_TIMER | Timer ] retourne "NOT_GADGET" si la classe ne correspond pas a un gadget de MAXGui retourne "Null" si le gadget n'existe pas/plus See Also: #GadgetClasse, #GadgetIsWindow EndRem Function GadgetGetClasse$(gadget:TGadget) If gadget=Null Return "Null" Select gadget.Gadget_Class Case GADGET_DESKTOP Return "Desktop" Case GADGET_WINDOW Return "Window" Case GADGET_BUTTON Return "Button" Case GADGET_PANEL Return "Panel" Case GADGET_TEXTFIELD Return "TextField" Case GADGET_TEXTAREA Return "TextArea" Case GADGET_COMBOBOX Return "ComboBox" Case GADGET_LISTBOX Return "ListBox" Case GADGET_TOOLBAR Return "ToolBar" Case GADGET_TABBER Return "Tabber" Case GADGET_TREEVIEW Return "TreeView" Case GADGET_HTMLVIEW Return "HtmlView" Case GADGET_LABEL Return "Label" Case GADGET_SLIDER Return "Slider" Case GADGET_PROGBAR Return "ProgBar" Case GADGET_MENUITEM Return "MenuItem" Case GADGET_NODE Return "Node" Case GADGET_CANVAS Return "Canvas" Case GADGET_TIMER Return "Timer" End Select Return "NOT_GADGET" End Function Rem bbdoc: Retourne la classe d un gadget about: [ Classe | Return Integer * GADGET_DESKTOP | 0 * GADGET_WINDOW | 1 * GADGET_BUTTON | 2 * GADGET_PANEL | 3 * GADGET_TEXTFIELD | 4 * GADGET_TEXTAREA | 5 * GADGET_COMBOBOX | 6 * GADGET_LISTBOX | 7 * GADGET_TOOLBAR | 8 * GADGET_TABBER | 9 * GADGET_TREEVIEW | 10 * GADGET_HTMLVIEW | 11 * GADGET_LABEL | 12 * GADGET_SLIDER | 13 * GADGET_PROGBAR | 14 * GADGET_MENUITEM | 15 * GADGET_NODE | 16 * GADGET_CANVAS | 17 * GADGET_TIMER | 18 ] See Also: #GadgetIsWindow, #GadgetGetClasse EndRem Function GadgetClasse:Int(gadget:TGadget) Return gadget.Gadget_Class End Function Rem bbdoc: Retourne true si le gadget est de forme "Window" ( CreateWindow) about: retourne "1" si le gadget est une "window" , sinon retourne "0" See Also: #CreateWindow, #GadgetGetClasse EndRem Function GadgetIsWindow:Int(gadget:TGadget) If GadgetClasse(gadget)=GADGET_WINDOW Return 1 Return False End Function and for each Create"gadget" function, I modified the functions: Function CreateMenu:TGadget( text$,tag,parent:TGadget,hotKey=0,modifier=0 ) Local gadget:TGadget=maxgui_driver.CreateGadget(GADGET_MENUITEM,text,0,0,0,0,parent,tag) gadget.Gadget_Class=GADGET_MENUITEM If gadget And hotKey SetGadgetHotKey gadget,hotKey,modifier Return gadget End Function Function Desktop:TGadget() Local gadget:TGadget=maxgui_driver.CreateGadget(GADGET_DESKTOP,"",0,0,0,0,Null,0) gadget.Gadget_Class=GADGET_DESKTOP Return gadget End Function etc... the functions : GadgetGetClasse(gadget) return the "type" of the gadget with a string "Desktop", "Window" , "ListBox" etc... GadgetClasse(gadget) return the "Id" in Integer, associated with the creation GADGET_DESKTOP =0 , GADGET_WINDOW =1 etc... GadgetIsWindow(gadget) return true if the gadget is a window... problem : building documention does not halt, but does not document the function GadgetGetClasse() Is there a mistake in my code ? |
| ||
here is an example showing the stuffwin1:TGadget = CreateWindow("win1" ,010,010,400,500,Null) win2:TGadget = CreateWindow("win2" ,450,010,250,200,win1) win3:TGadget = CreateWindow("win3" ,450,350,250,200,win1) btn10:TGadget = CreateButton("btn10" ,010,20,100,20,win1) btn11:TGadget = CreateButton("btn11" ,120,20,100,20,win1) btn20:TGadget = CreateButton("btn20" ,010,20,100,20,win2) btn21:TGadget = CreateButton("btn21" ,120,20,100,20,win2) btn30:TGadget = CreateButton("btn30" ,010,20,100,20,win3) btn31:TGadget = CreateButton("btn31" ,120,20,100,20,win3) lbl10:TGadget = CreateLabel ("label 10" ,250,20,100,20,win1) lbl20:TGadget = CreateLabel ("label 20" ,010,50,100,20,win2) lbl30:TGadget = CreateLabel ("label 30" ,010,50,100,20,win3) can:TGadget = CreateCanvas(10,60,380,420,win1) Print "classe btn10 :"+GadgetGetClasse (btn10) Print "classe win1 :"+GadgetGetClasse (win1) Print "classe win2 :"+GadgetGetClasse (win2) Print "classe win3 :"+GadgetGetClasse (win3) Print "classe lbl10 :"+GadgetGetClasse (lbl10) Print "classe lbl20 :"+GadgetGetClasse (lbl20) Print "classe lbl30 :"+GadgetGetClasse (lbl30) While True WaitEvent Select EventID() Case EVENT_WINDOWCLOSE End End Select SetGraphics CanvasGraphics(can) Cls DrawText " =====Gadget on active window =========" ,10,000 DrawText " btn10:"+MaxGUI_GadgetActiveWindow(btn10) ,10,015 DrawText " btn11:"+MaxGUI_GadgetActiveWindow(btn11) ,10,030 DrawText " btn20:"+MaxGUI_GadgetActiveWindow(btn20) ,10,045 DrawText " btn21:"+MaxGUI_GadgetActiveWindow(btn21) ,10,060 DrawText " btn30:"+MaxGUI_GadgetActiveWindow(btn30) ,10,075 DrawText " btn31:"+MaxGUI_GadgetActiveWindow(btn31) ,10,090 DrawText " ========= gadget is Window ===========" ,10,120 DrawText " btn10 :"+GadgetIsWindow(btn10) ,10,135 DrawText " btn11 :"+GadgetIsWindow(btn11) ,10,150 DrawText " btn20 :"+GadgetIsWindow(btn20) ,10,165 DrawText " btn21 :"+GadgetIsWindow(btn21) ,10,180 DrawText " btn30 :"+GadgetIsWindow(btn30) ,10,195 DrawText " btn31 :"+GadgetIsWindow(btn31) ,10,210 DrawText " win1 :"+GadgetIsWindow(win1) ,10,225 DrawText " win2 :"+GadgetIsWindow(win2) ,10,240 DrawText " win3 :"+GadgetIsWindow(win3) ,10,255 DrawText " ========= gadget classe ==============" ,10,280 DrawText " win1 :"+GadgetGetClasse(win1) ,10,295 DrawText " btn10 :"+GadgetGetClasse(btn10) ,10,310 DrawText " lbl10 :"+GadgetGetClasse(lbl10) ,10,325 DrawText " canvas:"+GadgetGetClasse(can) ,10,340 Flip Wend Function MaxGUI_MainWindow:TGadget(gad:TGadget) Local parent:TGadget=GadgetGroup(gad) If parent=Null Return gad Return MaxGUI_MainWindow(parent) End Function Function MaxGUI_GetWindow:TGadget(gad:TGadget) If gad=Null Return Null If GadgetIsWindow(gad) Return gad Return MaxGUI_GetWindow(GadgetGroup(gad)) End Function Function MaxGUI_GadgetActiveWindow:Int(gad:TGadget) Local l_curgad:TGadget=ActiveGadget() Local l_CurWin:TGadget=MaxGUI_GetWindow(l_curgad) Local l_BtnWin:TGadget=MaxGUI_GetWindow(gad) If l_CurWin=l_BtnWin Return True Return False End Function If you made the modifications and rebuild maxGui, you'll see the function GadgetGetClasse not highlighted, but working fine |
| ||
Now it runs. I modified 2 things: -> removed the tab before "doc" and function 'GadgetGetClasse' -> removed the "'" in the comment I don't know which one debugged the doc but now it's ok. |