- if (!g_ascii_strcasecmp(name, "opaque_move")) {
- if (value->type != TOKEN_BOOL)
- yyerror("invalid value");
- else {
- config_opaque_move = value->data.integer;
- }
- } else if (!g_ascii_strcasecmp(name, "opaque_resize")) {
- if (value->type != TOKEN_BOOL)
- yyerror("invalid value");
- else {
- config_opaque_resize = value->data.integer;
- }
- } else
- yyerror("invalid option");
- parse_free_token(value);
+ xmlNodePtr n;
+
+ if ((n = parse_find_node("position", node))) {
+ if (parse_contains("TopLeft", doc, n))
+ config_dock_pos = DockPos_TopLeft;
+ else if (parse_contains("Top", doc, n))
+ config_dock_pos = DockPos_Top;
+ else if (parse_contains("TopRight", doc, n))
+ config_dock_pos = DockPos_TopRight;
+ else if (parse_contains("Right", doc, n))
+ config_dock_pos = DockPos_Right;
+ else if (parse_contains("BottomRight", doc, n))
+ config_dock_pos = DockPos_BottomRight;
+ else if (parse_contains("Bottom", doc, n))
+ config_dock_pos = DockPos_Bottom;
+ else if (parse_contains("BottomLeft", doc, n))
+ config_dock_pos = DockPos_BottomLeft;
+ else if (parse_contains("Left", doc, n))
+ config_dock_pos = DockPos_Left;
+ else if (parse_contains("Floating", doc, n))
+ config_dock_pos = DockPos_Floating;
+ }
+ if (config_dock_pos == DockPos_Floating) {
+ if ((n = parse_find_node("floatingX", node)))
+ config_dock_x = parse_int(doc, n);
+ if ((n = parse_find_node("floatingY", node)))
+ config_dock_y = parse_int(doc, n);
+ }
+ if ((n = parse_find_node("stacking", node))) {
+ if (parse_contains("top", doc, n))
+ config_dock_layer = Layer_Top;
+ else if (parse_contains("normal", doc, n))
+ config_dock_layer = Layer_Normal;
+ else if (parse_contains("bottom", doc, n))
+ config_dock_layer = Layer_Below;
+ }
+ if ((n = parse_find_node("direction", node))) {
+ if (parse_contains("horizontal", doc, n))
+ config_dock_horz = TRUE;
+ else if (parse_contains("vertical", doc, n))
+ config_dock_horz = FALSE;
+ }
+ if ((n = parse_find_node("autoHide", node)))
+ config_dock_hide = parse_bool(doc, n);
+ if ((n = parse_find_node("hideTimeout", node)))
+ config_dock_hide_timeout = parse_int(doc, n);