This repository was archived by the owner on Sep 25, 2024. It is now read-only.
File tree Expand file tree Collapse file tree 2 files changed +25
-5
lines changed Expand file tree Collapse file tree 2 files changed +25
-5
lines changed Original file line number Diff line number Diff line change @@ -111,6 +111,15 @@ public IReadOnlyCollection<string> AutoExpandGroups
111111 set ;
112112 }
113113
114+ /// <summary>
115+ /// Gets or sets a list of the allowed arrange modes.
116+ /// </summary>
117+ public IReadOnlyList < PropertyArrangeMode > ArrangeModes
118+ {
119+ get ;
120+ set ;
121+ } = new [ ] { PropertyArrangeMode . Name , PropertyArrangeMode . Category } ;
122+
114123 /// <summary>
115124 /// Gets or sets a callback for errors that should be edge cases and/or don't have a defined way of displaying in the UI.
116125 /// </summary>
@@ -139,11 +148,14 @@ internal TargetPlatform WithProvider (IEditorProvider provider)
139148 return new TargetPlatform ( provider ) {
140149 ResourceProvider = ResourceProvider ,
141150 BindingProvider = BindingProvider ,
151+ IconProvider = IconProvider ,
142152 SupportsMaterialDesign = SupportsMaterialDesign ,
143153 SupportsCustomExpressions = SupportsCustomExpressions ,
144154 SupportsBrushOpacity = SupportsBrushOpacity ,
145155 GroupedTypes = GroupedTypes ,
146- AutoExpandGroups = AutoExpandGroups
156+ AutoExpandGroups = AutoExpandGroups ,
157+ ArrangeModes = ArrangeModes ,
158+ ErrorHandler = ErrorHandler
147159 } ;
148160 }
149161 }
Original file line number Diff line number Diff line change @@ -115,10 +115,18 @@ internal class PanelViewModel
115115 public PanelViewModel ( TargetPlatform targetPlatform )
116116 : base ( targetPlatform )
117117 {
118- ArrangeModes = new List < ArrangeModeViewModel > {
119- new ArrangeModeViewModel ( PropertyArrangeMode . Name , this ) ,
120- new ArrangeModeViewModel ( PropertyArrangeMode . Category , this )
121- } ;
118+ if ( targetPlatform == null )
119+ throw new ArgumentNullException ( nameof ( targetPlatform ) ) ;
120+
121+ var modes = new List < ArrangeModeViewModel > ( ) ;
122+ if ( targetPlatform . ArrangeModes == null || targetPlatform . ArrangeModes . Count == 0 )
123+ modes . Add ( new ArrangeModeViewModel ( PropertyArrangeMode . Name , this ) ) ;
124+ else {
125+ for ( int i = 0 ; i < targetPlatform . ArrangeModes . Count ; i ++ )
126+ modes . Add ( new ArrangeModeViewModel ( targetPlatform . ArrangeModes [ i ] , this ) ) ;
127+ }
128+
129+ ArrangeModes = modes ;
122130 }
123131
124132 public event EventHandler ArrangedPropertiesChanged ;
You can’t perform that action at this time.
0 commit comments