diff options
Diffstat (limited to 'lib/lvgl/docs/example_list.py')
| m--------- | lib/lvgl | 0 | ||||
| -rwxr-xr-x | lib/lvgl/docs/example_list.py | 125 |
2 files changed, 125 insertions, 0 deletions
diff --git a/lib/lvgl b/lib/lvgl deleted file mode 160000 -Subproject 0732400e7b564dd0e7dc4a924619d8e19c5b23a diff --git a/lib/lvgl/docs/example_list.py b/lib/lvgl/docs/example_list.py new file mode 100755 index 00000000..c65554e3 --- /dev/null +++ b/lib/lvgl/docs/example_list.py @@ -0,0 +1,125 @@ +#!/usr/bin/env python3 +import os + + +def process_index_rst(path): +# print(path) + with open(path) as fp: + last_line="" + line="" + title_tmp="" + line = fp.readline() + d = {} + while line: + if line[0:3] == '"""': + title_tmp = last_line + elif line[0:15] ==".. lv_example::": + name = line[16:].strip() + title_tmp = title_tmp.strip() + d[name] = title_tmp + last_line = line + line = fp.readline() + + return(d) + +h1= { + "get_started":"Get started", + "styles":"Styles", + "anim":"Animations", + "event":"Events", + "layouts":"Layouts", + "scroll":"Scrolling", + "widgets":"Widgets" +} + +widgets = { +"obj":"Base object", +"arc":"Arc", +"bar":"Bar", +"btn":"Button", +"btnmatrix":"Button matrix", +"calendar":"Calendar", +"canvas":"Canvas", +"chart":"Chart", +"checkbox":"Checkbox", +"colorwheel":"Colorwheel", +"dropdown":"Dropdown", +"img":"Image", +"imgbtn":"Image button", +"keyboard":"Keyboard", +"label":"Label", +"led":"LED", +"line":"Line", +"list":"List", +"menu":"Menu", +"meter":"Meter", +"msgbox":"Message box", +"roller":"Roller", +"slider":"Slider", +"span":"Span", +"spinbox":"Spinbox", +"spinner":"Spinner", +"switch":"Switch", +"table":"Table", +"tabview":"Tabview", +"textarea":"Textarea", +"tileview":"Tabview", +"win":"Window", +} + +layouts = { +"flex":"Flex", +"grid":"Grid", +} + + +def print_item(path, lvl, d, fout): + for k in d: + v = d[k] + if k.startswith(path + "/lv_example_"): + fout.write("#"*lvl + " " + v + "\n") + fout.write('```eval_rst\n') + fout.write(f".. lv_example:: {k}\n") + fout.write('```\n') + fout.write("\n") + +def exec(): + paths = [ "../examples/", "../demos/"] + fout = open("examples.md", "w") + filelist = [] + + for path in paths: + for root, dirs, files in os.walk(path): + for f in files: + #append the file name to the list + filelist.append(os.path.join(root,f)) + + filelist = [ fi for fi in filelist if fi.endswith("index.rst") ] + + d_all = {} + #print all the file names + for fn in filelist: + d_act = process_index_rst(fn) + d_all.update(d_act) + + fout.write("```eval_rst\n") + fout.write(":github_url: |github_link_base|/examples.md\n") + fout.write("```\n") + fout.write("\n") + fout.write("# Examples\n") + + for h in h1: + fout.write("## " + h1[h] + "\n") + + if h == "widgets": + for w in widgets: + fout.write("### " + widgets[w] + "\n") + print_item(h + "/" + w, 4, d_all, fout) + elif h == "layouts": + for l in layouts: + fout.write("### " + layouts[l] + "\n") + print_item(h + "/" + l, 4, d_all, fout) + else: + print_item(h, 3, d_all, fout) + + fout.write("") |
