--- files/patch-src_array.erl (revision 0) +++ files/patch-src_array.erl (working copy) @@ -0,0 +1,11 @@ +--- src/array.erl.orig 2015-06-24 22:14:48 UTC ++++ src/array.erl +@@ -155,7 +155,7 @@ + %% structure and the types of its fields. So, please make sure that any + %% changes to its structure are also propagated to erl_types.erl. + %% +-%% -opaque array() :: #array{}. ++-opaque array() :: #array{}. + + %% + %% Types --- files/patch-src_wings.hrl (revision 0) +++ files/patch-src_wings.hrl (working copy) @@ -0,0 +1,62 @@ +--- src/wings.hrl.orig 2015-06-24 22:08:57 UTC ++++ src/wings.hrl +@@ -113,16 +113,16 @@ + %% State and records + %% Main state record containing all objects and other important state. + -record(st, +- {shapes=gb_trees:empty() :: gb_tree(), %All visible objects ++ {shapes=gb_trees:empty() :: gb_trees:tree(), %All visible objects + selmode=face :: sel_mode(), %Selection mode. + sh=false :: boolean(), %Smart highlighting active. + sel=[], %Current sel: [{Id,GbSet}] +- ssels=gb_trees:empty() :: gb_tree(), %Saved selections: ++ ssels=gb_trees:empty() :: gb_trees:tree(), %Saved selections: + + %% Selection only temporary? + temp_sel=none :: 'none' | {sel_mode(),boolean()}, + +- mat=gb_trees:empty() :: gb_tree(), %Defined materials (GbTree). ++ mat=gb_trees:empty() :: gb_trees:tree(), %Defined materials (GbTree). + pal=[], %Palette + file, %Current filename. + saved=false :: 'false' | 'true' | 'auto' | integer(), +@@ -134,7 +134,7 @@ + + edge_loop=none, %Previous edge loop. + views={0,{}}, %{Current,TupleOfViews} +- pst=gb_trees:empty() :: gb_tree(), %Plugin State Info ++ pst=gb_trees:empty() :: gb_trees:tree(), %Plugin State Info + % gb_tree where key is plugin module + + %% Previous commands. +@@ -148,7 +148,7 @@ + + %% Undo information. + last_cmd=empty_scene, %Last command. +- undo=queue:new() :: queue(), %Undo (de)queue. ++ undo=queue:new() :: queue:queue(), %Undo (de)queue. + next_is_undo=true :: boolean(), %State of undo/redo toggle. + undone=[] :: list() %States that were undone. + }). +@@ -165,14 +165,14 @@ + % The GbSet contains the + % object's selection. + name="" :: string() | tuple(), %Name. (AutoUV stores other things here.) +- es=array:new() :: array(), %array containing edges +- lv=none :: 'none' | array(), %Left vertex attributes +- rv=none :: 'none' | array(), %Right vertex attributes, +- fs :: gb_tree(), %Faces +- he=gb_sets:empty() :: gb_set(), %Hard edges +- vc :: array(), %Connection info (=incident edge) ++ es=array:new() :: array:array(), %array containing edges ++ lv=none :: 'none' | array:array(), %Left vertex attributes ++ rv=none :: 'none' | array:array(), %Right vertex attributes, ++ fs :: gb_trees:tree(), %Faces ++ he=gb_sets:empty() :: gb_sets:set(), %Hard edges ++ vc :: array:array(), %Connection info (=incident edge) + % for vertices. +- vp=array:new() :: array(), %Vertex positions. ++ vp=array:new() :: array:array(), %Vertex positions. + pst=gb_trees:empty(), %Plugin State Info, + % gb_tree where key is plugin module + mat=default, %Materials. --- files/patch-src_wings__menu.erl (revision 0) +++ files/patch-src_wings__menu.erl (working copy) @@ -0,0 +1,11 @@ +--- src/wings_menu.erl.orig 2015-06-24 22:22:23 UTC ++++ src/wings_menu.erl +@@ -43,7 +43,7 @@ + sel=none :: 'none'|pos_integer(), %Selected item (1..tuple_size(Menu)) + sel_side=left :: 'left'|'right', %Selection on left or right. + ns=[], %Name stack. +- menu :: tuple(menu_item()), %Normalized menu. ++ menu, %Normalized menu. + timer=make_ref(), %Active submenu timer. + level=?INITIAL_LEVEL, %Menu level. + type :: 'plain'|'popup', %Type of menu. --- files/patch-src_wings__sel.erl (revision 0) +++ files/patch-src_wings__sel.erl (working copy) @@ -0,0 +1,11 @@ +--- src/wings_sel.erl.orig 2015-06-24 22:25:49 UTC ++++ src/wings_sel.erl +@@ -122,7 +122,7 @@ mapfold_1(_F, Acc, [], Shs, _St, ShsAcc) + -type filter_fun() :: fun((visible_face_num() | edge_num() | vertex_num() | 0, + #we{}) -> boolean()). + -spec make(filter_fun(), sel_mode(), #st{}) -> +- #st{sel::[{non_neg_integer(),gb_set()}]}. ++ #st{sel::[{non_neg_integer(),gb_sets:set()}]}. + + make(Filter, Mode, #st{shapes=Shapes}=St) when is_function(Filter, 2) -> + Sel0 = gb_trees:values(Shapes), --- files/patch-src_wings__undo.erl (revision 0) +++ files/patch-src_wings__undo.erl (working copy) @@ -0,0 +1,17 @@ +--- src/wings_undo.erl.orig 2015-06-24 22:27:33 UTC ++++ src/wings_undo.erl +@@ -30,12 +30,12 @@ + + %% The essential part of the state record. + -record(est, +- {shapes=[] :: list(#we{}) | gb_tree(), ++ {shapes=[] :: list(#we{}) | gb_trees:tree(), + selmode=face :: sel_mode(), + sel=[] :: list(), + onext=1 :: elem_num(), + mat=wings_material:default(), +- pst=gb_trees:empty() :: gb_tree(), ++ pst=gb_trees:empty() :: gb_trees:tree(), + + %% For the Develop menu. + cmd,