summaryrefslogtreecommitdiff
path: root/lib/lvgl/docs/example_list.py
diff options
context:
space:
mode:
authorjacqueline <me@jacqueline.id.au>2023-06-01 15:41:47 +1000
committerjacqueline <me@jacqueline.id.au>2023-06-01 15:41:47 +1000
commitdd27c3530432ea0b09f01e604bf577f31d8ef841 (patch)
treebbf86cf81a78f0ff0b07f31f1c390db473f26fd3 /lib/lvgl/docs/example_list.py
parent6fd588e970470b15936187980829916d0dbe77bb (diff)
downloadtangara-fw-dd27c3530432ea0b09f01e604bf577f31d8ef841.tar.gz
convert lvgl from submodule to a plain old directory
Diffstat (limited to 'lib/lvgl/docs/example_list.py')
m---------lib/lvgl0
-rwxr-xr-xlib/lvgl/docs/example_list.py125
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("")