diff --git a/VsiMetadata/meshselection.xml b/VsiMetadata/meshselection.xml
new file mode 100644
index 0000000000000000000000000000000000000000..fad662a151c090ebea8552fa39eb3459bb002550
--- /dev/null
+++ b/VsiMetadata/meshselection.xml
@@ -0,0 +1,358 @@
+
+
+ Mesh Object Selections
+ Mesh Object Selection Converter
+ Convert selection types on an mesh object
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+ Keep original selection
+ Keep the original selection intact or remove it
+ true
+
+
+ Input selection
+ Which input selection should be used
+ C1
+ Vertex Selection,Edge Selection,Halfedge Selection,Face Selection,Feature Vertices,Feature Edges,Feature Faces,Handle Region,Modeling Region
+ Vertex Selection,Edge Selection,Halfedge Selection,Face Selection,Feature Vertices,Feature Edges,Feature Faces,Handle Region,Modeling Region
+
+
+ Output selection
+ To which selection type should the input be converted
+ C1
+ Vertex Selection,Edge Selection,Halfedge Selection,Face Selection,Feature Vertices,Feature Edges,Feature Faces,Handle Region,Modeling Region
+ Vertex Selection,Edge Selection,Halfedge Selection,Face Selection,Feature Vertices,Feature Edges,Feature Faces,Handle Region,Modeling Region
+
+
+
+ meshobjectselection.convertSelection( [input="obj"], [input="input_selection"], [input="output_selection"], [input="keep"]);
+
+
+
+
+ Mesh Object Selections
+ Vertex Selection: Clear
+ Clear Vertex Selection
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+
+ meshobjectselection.clearVertexSelection( [input="obj"] );
+
+
+
+
+ Mesh Object Selections
+ Vertex Selection: All
+ Select all verticies
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+
+ meshobjectselection.selectAllVertices( [input="obj"] );
+
+
+
+
+ Mesh Object Selections
+ Vertex Selection: Boundary
+ Select all boundary verticies
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+
+ meshobjectselection.selectBoundaryVertices( [input="obj"] );
+
+
+
+
+ Mesh Object Selections
+ Vertex Selection: Invert
+ Invert vertex selection
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+
+ meshobjectselection.invertVertexSelection( [input="obj"] );
+
+
+
+
+ Mesh Object Selections
+ Vertex Selection: Shrink
+ Shrink vertex selection
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+
+ meshobjectselection.shrinkVertexSelection( [input="obj"] );
+
+
+
+
+ Mesh Object Selections
+ Vertex Selection: Grow
+ Grow vertex selection
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+
+ meshobjectselection.growVertexSelection( [input="obj"] );
+
+
+
+
+ Mesh Object Selections
+ Edge Selection: Clear
+ Clear Edge Selection
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+
+ meshobjectselection.clearEdgeSelection( [input="obj"] );
+
+
+
+
+ Mesh Object Selections
+ Edge Selection: All
+ Select all edges
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+
+ meshobjectselection.selectAllEdges( [input="obj"] );
+
+
+
+
+ Mesh Object Selections
+ Edge Selection: Invert
+ Invert edge selection
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+
+ meshobjectselection.invertEdgeSelection( [input="obj"] );
+
+
+
+
+ Mesh Object Selections
+ Edge Selection: Boundary
+ Select all boundary edges
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+
+ meshobjectselection.selectBoundaryEdges( [input="obj"] );
+
+
+
+
+ Mesh Object Selections
+ Halfedge Selection: Clear
+ Clear Halfedge Selection
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+
+ meshobjectselection.clearHalfedgeSelection( [input="obj"] );
+
+
+
+
+ Mesh Object Selections
+ Halfedge Selection: All
+ Select all Halfedges
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+
+ meshobjectselection.selectAllHalfedges( [input="obj"] );
+
+
+
+
+ Mesh Object Selections
+ Halfedge Selection: Invert
+ Invert halfedge selection
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+
+ meshobjectselection.invertHalfedgeSelection( [input="obj"] );
+
+
+
+
+ Mesh Object Selections
+ Halfedge Selection: Boundary
+ Select all boundary Halfedges
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+
+ meshobjectselection.selectBoundaryHalfedges( [input="obj"] );
+
+
+
+
+
+ Mesh Object Selections
+ Face Selection: Clear
+ Clear Face Selection
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+
+ meshobjectselection.clearFaceSelection( [input="obj"] );
+
+
+
+
+ Mesh Object Selections
+ Face Selection: All
+ Select all faces
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+
+ meshobjectselection.selectAllFaces( [input="obj"] );
+
+
+
+
+ Mesh Object Selections
+ Face Selection: Boundary
+ Select all boundary faces
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+
+ meshobjectselection.selectBoundaryFaces( [input="obj"] );
+
+
+
+
+ Mesh Object Selections
+ Face Selection: Invert
+ Invert face selection
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+
+ meshobjectselection.invertFaceSelection( [input="obj"] );
+
+
+
+
+ Mesh Object Selections
+ Face Selection: Shrink
+ Shrink face selection
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+
+ meshobjectselection.shrinkFaceSelection( [input="obj"] );
+
+
+
+
+ Mesh Object Selections
+ Face Selection: Grow
+ Grow face selection
+ true
+
+
+ ID of an Object
+ ID of an Object
+
+
+
+ meshobjectselection.growFaceSelection( [input="obj"] );
+
+
+
+
\ No newline at end of file
diff --git a/VsiMetadata/repair.xml b/VsiMetadata/repair.xml
index 44cedb9bc571afd2f1f6b4ec1e26a28b1d3837e3..6da90f3b9909921da893e98c83c977700ea296a6 100644
--- a/VsiMetadata/repair.xml
+++ b/VsiMetadata/repair.xml
@@ -91,15 +91,13 @@ void detectFlatValence3Vertices(int _objectId, double _angle);
Threshold angle
Threshold angle
+ 0.001
meshrepair.detectFoldover ([input="obj"], [input="angle"]);
-
-
-
Mesh Repair
Remove selected valence 3 vertices
diff --git a/baseWidget.cc b/baseWidget.cc
index 5d9931f1c1ba183379c283b409f4086cf422c5d8..825e0be116a0cb6522fd27964905741c5b7c2b69 100644
--- a/baseWidget.cc
+++ b/baseWidget.cc
@@ -102,7 +102,7 @@ BaseWidget::BaseWidget (Context *_ctx, QWidget *_parent) :
views_ = new QStackedWidget ();
- toolbox_->setMinimumWidth (150);
+ toolbox_->setMinimumWidth (275);
QVBoxLayout *layout = new QVBoxLayout;
@@ -120,7 +120,7 @@ BaseWidget::BaseWidget (Context *_ctx, QWidget *_parent) :
splitter_->addWidget (w);
splitter_->addWidget (views_);
QList sizes;
- sizes << 150 << 10000;
+ sizes << 275 << 10000;
splitter_->setSizes (sizes);
setCentralWidget (splitter_);