mirror of
https://github.com/crskycode/GARbro.git
synced 2024-11-23 05:35:34 +08:00
(GUI): added dropdown list to settings widgets.
This commit is contained in:
parent
c3dee20cba
commit
49ca8f9952
@ -58,6 +58,12 @@ IN THE SOFTWARE.
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
</ControlTemplate>
|
||||
<ControlTemplate x:Key="BoundDropDownList" TargetType="ComboBox">
|
||||
<StackPanel Orientation="Vertical" Margin="2" DataContext="{TemplateBinding DataContext}">
|
||||
<TextBlock Text="{Binding Text}" ToolTip="{Binding Description}" Foreground="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>
|
||||
<ComboBox ItemsSource="{Binding Path=Source.ValuesSet}" SelectedItem="{Binding Value, Mode=TwoWay}" Margin="0,4,0,0"/>
|
||||
</StackPanel>
|
||||
</ControlTemplate>
|
||||
|
||||
<Style x:Key="ExpandCollapseToggleStyle" TargetType="ToggleButton">
|
||||
<Setter Property="Focusable" Value="False"/>
|
||||
|
@ -191,10 +191,20 @@ namespace GARbro.GUI
|
||||
};
|
||||
}
|
||||
|
||||
UIElement CreateDropDownWidget (FixedSetSetting setting)
|
||||
{
|
||||
return new ComboBox {
|
||||
Template = (ControlTemplate)this.Resources["BoundDropDownList"],
|
||||
DataContext = CreateSettingView<object> (setting),
|
||||
};
|
||||
}
|
||||
|
||||
UIElement CreateSettingWidget<TUnknown> (IResourceSetting setting, TUnknown value)
|
||||
{
|
||||
if (setting is FixedGaugeSetting)
|
||||
return CreateGaugeWidget (setting as FixedGaugeSetting);
|
||||
if (setting is FixedSetSetting)
|
||||
return CreateDropDownWidget (setting as FixedSetSetting);
|
||||
if (value is bool)
|
||||
return CreateCheckBoxWidget (setting);
|
||||
if (value is Encoding)
|
||||
|
Loading…
Reference in New Issue
Block a user