- if(extl_table_gets_t(tab, "max_size", &tab2)){
- if(extl_table_gets_i(tab2, "w", &i1) &&
- extl_table_gets_i(tab2, "h", &i2)){
- cwin->size_hints.max_width=i1;
- cwin->size_hints.max_height=i2;
- cwin->size_hints.flags|=PMaxSize;
- cwin->flags|=CLIENTWIN_PROP_MAXSIZE;
- }
- extl_unref_table(tab2);
- }
-
- if(extl_table_gets_t(tab, "min_size", &tab2)){
- if(extl_table_gets_i(tab2, "w", &i1) &&
- extl_table_gets_i(tab2, "h", &i2)){
- cwin->size_hints.min_width=i1;
- cwin->size_hints.min_height=i2;
- cwin->size_hints.flags|=PMinSize;
- cwin->flags|=CLIENTWIN_PROP_MINSIZE;
- }
- extl_unref_table(tab2);
- }
-
- if(extl_table_gets_t(tab, "aspect", &tab2)){
- if(extl_table_gets_i(tab2, "w", &i1) &&
- extl_table_gets_i(tab2, "h", &i2)){
- cwin->size_hints.min_aspect.x=i1;
- cwin->size_hints.max_aspect.x=i1;
- cwin->size_hints.min_aspect.y=i2;
- cwin->size_hints.max_aspect.y=i2;
- cwin->size_hints.flags|=PAspect;
- cwin->flags|=CLIENTWIN_PROP_ASPECT;
- }
- extl_unref_table(tab2);
- }
-
- if(extl_table_is_bool_set(tab, "ignore_resizeinc"))
- cwin->flags|=CLIENTWIN_PROP_IGNORE_RSZINC;
-
+ DO_SZH("max_size", CLIENTWIN_PROP_MAXSIZE, CLIENTWIN_PROP_I_MAXSIZE,
+ PMaxSize, max_width, max_height, );
+
+ DO_SZH("min_size", CLIENTWIN_PROP_MINSIZE, CLIENTWIN_PROP_I_MINSIZE,
+ PMinSize, min_width, min_height, );
+
+ DO_SZH("resizeinc", CLIENTWIN_PROP_RSZINC, CLIENTWIN_PROP_I_RSZINC,
+ PResizeInc, width_inc, height_inc, );
+
+ DO_SZH("aspect", CLIENTWIN_PROP_ASPECT, CLIENTWIN_PROP_I_ASPECT,
+ PAspect, min_aspect.x, min_aspect.y,
+ { cwin->size_hints.max_aspect.x=i1;
+ cwin->size_hints.max_aspect.y=i2;
+ });
+