[settings] add optional target attribute to settings

This commit is contained in:
Felix Ruess
2015-04-02 14:02:58 +02:00
parent 8756d2e839
commit 5c325f1c69
11 changed files with 25 additions and 13 deletions
@@ -1,6 +1,6 @@
<!DOCTYPE settings SYSTEM "../settings.dtd">
<settings>
<settings target="ap|nps">
<dl_settings>
<dl_settings NAME="Vert Loop">
@@ -1,6 +1,6 @@
<!DOCTYPE settings SYSTEM "../settings.dtd">
<settings>
<settings target="ap|nps">
<dl_settings>
<dl_settings NAME="Att Loop">
@@ -1,6 +1,6 @@
<!DOCTYPE settings SYSTEM "../settings.dtd">
<settings>
<settings target="ap|nps">
<dl_settings>
<dl_settings NAME="Att Loop">
@@ -1,6 +1,6 @@
<!DOCTYPE settings SYSTEM "../settings.dtd">
<settings>
<settings target="ap|nps">
<dl_settings>
<dl_settings NAME="Att Loop">
@@ -1,6 +1,6 @@
<!DOCTYPE settings SYSTEM "../settings.dtd">
<settings>
<settings target="ap|nps">
<dl_settings>
<dl_settings NAME="Att Loop">
+1 -1
View File
@@ -1,6 +1,6 @@
<!DOCTYPE settings SYSTEM "../settings.dtd">
<settings>
<settings target="ap|nps">
<dl_settings>
<dl_settings NAME="Rate Loop">
+1 -1
View File
@@ -1,6 +1,6 @@
<!DOCTYPE settings SYSTEM "settings.dtd">
<settings>
<settings target="nps">
<dl_settings>
<dl_settings NAME="Sim">
+1 -1
View File
@@ -1,6 +1,6 @@
<!DOCTYPE settings SYSTEM "settings.dtd">
<settings>
<settings target="ap|nps">
<dl_settings>
<dl_settings NAME="System">
+4
View File
@@ -18,6 +18,10 @@
<!ELEMENT strip_button EMPTY>
<!ELEMENT key_press EMPTY>
<!ATTLIST settings
target CDATA #IMPLIED
>
<!ATTLIST dl_settings
name CDATA #IMPLIED
>
+1 -1
View File
@@ -1,6 +1,6 @@
<!DOCTYPE settings SYSTEM "settings.dtd">
<settings>
<settings target="test_settings">
<dl_settings>
<dl_settings NAME="Group1">
+12 -4
View File
@@ -144,7 +144,7 @@ let print_dl_settings = fun settings ->
lprintf "static inline float settings_get_value(uint8_t i) {\n";
right ();
let idx = ref 0 in
lprintf "switch (i) { \\\n";
lprintf "switch (i) {\n";
right ();
List.iter
(fun s ->
@@ -152,10 +152,10 @@ let print_dl_settings = fun settings ->
lprintf "case %d: return %s;\n" !idx v; incr idx)
settings;
lprintf "default: return 0.;\n";
lprintf "}\n";
left ();
lprintf "}\n";
left()
left ();
lprintf "}\n"
let inttype = function
@@ -309,7 +309,15 @@ let join_xml_files = fun xml_files ->
then List.filter (fun t -> Xml.tag t = "settings") (Xml.children xml)
else []
end
else [xml]
else begin
(* if the top <settings> node has a target attribute,
only add if matches current target *)
let t = ExtXml.attrib_or_default xml "target" "" in
if t = "" || Str.string_match (Str.regexp (".*"^target^".*")) t 0 then
[xml]
else
[]
end
in
(* include settings if name is matching *)
List.fold_left (fun l x ->