Skip to content

Commit

Permalink
Add additional info and image to the Addin Manager.
Browse files Browse the repository at this point in the history
  • Loading branch information
RickStrahl committed Jan 21, 2017
1 parent cd2aeca commit 6ac560e
Show file tree
Hide file tree
Showing 3 changed files with 63 additions and 25 deletions.
58 changes: 37 additions & 21 deletions MarkdownMonster/Windows/AddinManagerWindow.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
Icon="..\Assets\MarkdownMonsterAddins_Icon.png"
Title="Markdown Monster Addin Manager (Experimental)"
TitleCharacterCasing="Normal"
Height="800" Width="600">
Height="700" Width="1100">
<Window.Resources>
<markdownMonster:InvertedBoolenConverter x:Key="InvertBooleanConverter"/>
<markdownMonster:BooleanToVisibilityConverter x:Key="BooleanToVisibilityConverter" />
Expand All @@ -21,16 +21,24 @@
<markdownMonster:BooleanToVisibilityConverter/>
</markdownMonster:ValueConverterGroup>
</Window.Resources>

<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="30"/>
</Grid.RowDefinitions>

<ListBox Grid.Row="0" Name="ListViewAddins"
<Grid Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="480"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>

<ListBox Grid.Column="0" Name="ListViewAddins"
ScrollViewer.HorizontalScrollBarVisibility="Disabled"
MouseDoubleClick="ListViewAddins_MouseDoubleClick"
ItemsSource="{Binding AddinList}"
SelectedItem="{Binding ActiveAddin}"
KeyDown="ListViewAddins_KeyDown" HorizontalContentAlignment="Stretch">
<ListBox.ItemTemplate>
<DataTemplate>
Expand Down Expand Up @@ -66,26 +74,14 @@
</Grid.ColumnDefinitions>

<Image Grid.Column="0" Source="{Binding icon}" Height="50" Width="50" VerticalAlignment="Top" />
<StackPanel Grid.Column="1">
<TextBlock
Padding="8,0,0,0"
Text="{Binding summary}"
TextWrapping="WrapWithOverflow"
HorizontalAlignment="Left"
FontSize="12"/>

<StackPanel Orientation="Horizontal">
<TextBlock Padding="15,0,0,0"
Text="{Binding author}"
TextWrapping="WrapWithOverflow"
HorizontalAlignment="Left"
Margin="0,5,0,0" FontStyle="Italic" FontSize="10"/>
<TextBlock Foreground="LightSteelBlue" FontStyle="Italic"
Margin="10,5,0,0" FontSize="10"
Cursor="Arrow" MouseDown="TextBlock_MouseDown">more info</TextBlock>
</StackPanel>
</StackPanel>
</Grid>
<TextBlock Grid.Column="1"
Padding="8,0,0,0"
Text="{Binding summary}"
TextWrapping="WrapWithOverflow"
HorizontalAlignment="Left"
FontSize="12"/>
</Grid>

<Grid Grid.Row="2" Grid.Column="1" Grid.ColumnSpan="2" HorizontalAlignment="Right">
<Grid.ColumnDefinitions>
Expand Down Expand Up @@ -134,6 +130,26 @@
</ListBox.ItemTemplate>
</ListBox>

<StackPanel Grid.Column="1" Margin="20,10,10,10">
<TextBlock Text="{Binding ActiveAddin.name}" FontSize="22"/>

<StackPanel Orientation="Horizontal" Margin="0,3,0,0">
<TextBlock Text="{Binding ActiveAddin.version,StringFormat='v{0}'}"
FontStyle="Italic" FontSize="10" />

<TextBlock Text="{Binding ActiveAddin.author}" Margin="20,0,0,0"
FontStyle="Italic" FontSize="10"/>
</StackPanel>

<TextBlock Text="{Binding ActiveAddin.description}" TextWrapping="Wrap" Margin="0,10,0,0"></TextBlock>

<TextBlock Foreground="LightSteelBlue" FontStyle="Italic"
Margin="0,5,0,0"
Cursor="Arrow" MouseDown="TextBlock_MouseDown">more info</TextBlock>

<Image Source="{Binding ActiveAddin.gitScreenShotUrl}" Margin="0,10,0,0"/>
</StackPanel>
</Grid>
<StatusBar Grid.Row="1">
<StatusBar.ItemsPanel>
<ItemsPanelTemplate>
Expand Down
22 changes: 18 additions & 4 deletions MarkdownMonster/Windows/AddinManagerWindow.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -49,13 +49,29 @@ public AddinManagerWindow()
Loaded += AddinManagerWindow_Loaded;
DataContext = this;
}


public AddinItem ActiveAddin
{
get { return _activeAddin; }
set
{
if (Equals(value, _activeAddin)) return;
_activeAddin = value;
OnPropertyChanged();
}
}
private AddinItem _activeAddin;

private async void AddinManagerWindow_Loaded(object sender, RoutedEventArgs e)
{

// fill and sort as data is filled out
var addinList = await AddinManager.Current.GetAddinListAsync();
AddinList = new ObservableCollection<AddinItem>(addinList);

if (AddinList.Count > 0)
ActiveAddin = AddinList[0];
}

private void ListViewAddins_MouseDoubleClick(object sender, MouseButtonEventArgs e)
Expand Down Expand Up @@ -141,13 +157,11 @@ public void ShowStatus(string message = null, int milliSeconds = 0)

private void TextBlock_MouseDown(object sender, MouseButtonEventArgs e)
{
var tb = sender as TextBlock;
var addin = tb.DataContext as AddinItem;

if (addin == null)
if (ActiveAddin == null)
return;

ShellUtils.GoUrl(addin.gitUrl);
ShellUtils.GoUrl(ActiveAddin.gitUrl);
}
}
}
8 changes: 8 additions & 0 deletions MarkdownMonster/_Classes/AddInInterfaces/AddinItem.cs
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,14 @@ public string gitUrl
.Replace("https://github.com", "https://raw.githubusercontent.com") +
"/master/Build/version.json";

public string gitIconUrl => gitUrl.ToLower()
.Replace("https://github.com", "https://raw.githubusercontent.com") +
"/master/Build/icon.png";

public string gitScreenShotUrl => gitUrl.ToLower()
.Replace("https://github.com", "https://raw.githubusercontent.com") +
"/master/Build/screenshot.png";

public string name
{
get { return _name; }
Expand Down

0 comments on commit 6ac560e

Please sign in to comment.