public Plugins() { PluginList = new PluginListViewModel(PluginRegistryService.Instance); // commands MagnifyImageCommand = new RelayCommand(Magnify); CloseImagePreviewCommand = new ArglessRelayCommand(ClearMagnify); InitializeComponent(); KeyBindings = CreateKeyBindings(); PluginList.Refresh(); }
public RegistryPluginViewModel(PluginRegistryEntry entry, IPluginListProxy pluginList) { this.entry = entry; this.pluginList = pluginList; DownloadCommand = new ArglessRelayCommand( () => CanInstall && IsVersionOk, DownloadPlugin ); DeleteCommand = new ArglessRelayCommand( () => CanDelete, Delete ); DownloadImage(); }
public SearchableViewModel(object Data) { this.Data = Data; OnEnter = new ArglessRelayCommand(onEnter); OnDownKey = new ArglessRelayCommand(onDownKey); OnUpKey = new ArglessRelayCommand(onUpKey); OnEscape = new ArglessRelayCommand(() => { ShowPopup = false; }); OnClear = new ArglessRelayCommand(() => { IsEnabled = true; ClearSelection(); }); OnListSelected = new ArglessRelayCommand(DisplaySelection); OnLoaded = new ArglessRelayCommand(onLoaded); }
public RegistryPluginViewModel(PluginRegistryEntry entry, IPluginListProxy pluginList, ReadmeService readmeService, HttpClient http) { this.entry = entry; this.pluginList = pluginList; this.readmeService = readmeService; this.http = http; DownloadCommand = new ArglessRelayCommand( () => CanInstall && IsVersionOk, DownloadPlugin ); DeleteCommand = new ArglessRelayCommand( () => CanDelete, Delete ); DownloadImage(); LastUpdateLong = PluginViewModelHelper.FormatLongDate(entry.ReleaseDate); LastUpdateShort = PluginViewModelHelper.FormatShortDate(entry.ReleaseDate); Actions = new ObservableCollection <PluginActionViewModel>(GetActions()); }
public LoadedPluginViewModel(PluginEntry plugin, IPluginListProxy pluginList) { this.plugin = plugin; this.pluginList = pluginList; ToggleCommand = new RelayCommand( _ => CanToggle, val => IsEnabled = (bool)val ); DeleteCommand = new ArglessRelayCommand( () => CanDelete, Delete ); RestoreCommand = new ArglessRelayCommand( () => CanRestore, Restore ); pluginList.RegistryPluginsLoaded += OnRegistryPluginsLoaded; GetImage(); }
public LoadedPluginViewModel(PluginEntry plugin, IPluginListProxy pluginList) { this.plugin = plugin; this.pluginList = pluginList; ToggleCommand = new RelayCommand( _ => CanToggle, val => IsEnabled = (bool)val ); DeleteCommand = new ArglessRelayCommand( () => CanDelete, Delete ); RestoreCommand = new ArglessRelayCommand( () => CanRestore, Restore ); pluginList.RegistryPluginsLoaded += OnRegistryPluginsLoaded; GetImage(); Actions = new ObservableCollection <PluginActionViewModel>(GetActions()); LastUpdateLong = PluginViewModelHelper.FormatLongDate(plugin.PluginInformation.ReleaseDate); LastUpdateShort = PluginViewModelHelper.FormatShortDate(plugin.PluginInformation.ReleaseDate); }
public static PluginActionViewModel ParseLink(string linkString) { var name = ""; var link = ""; ImageSource img = null; var parts = linkString.Split('|'); switch (parts.Length) { // icon|name|link case 3: name = GetLinkName(parts[0]); img = (Application.Current.FindResource(parts[1]) as ImageSource) ?? Application.Current.FindResource("ICON_LINK") as ImageSource; link = parts[2]; break; // name|link case 2: name = parts[0]; link = parts[1]; img = GetImageForAction(link) ?? Application.Current.FindResource("ICON_LINK") as ImageSource; break; // link default: name = GStrings.GetLocalizationByXPath("/Console/String[@ID='MESSAGE_PLUGIN_HOMEPAGE']"); link = parts[0]; img = GetImageForAction(link) ?? Application.Current.FindResource("ICON_LINK") as ImageSource; break; } var command = new ArglessRelayCommand(() => Process.Start(link)); return(new PluginActionViewModel(name, img, command)); }
public FileSelect() { ClearCommand = new ArglessRelayCommand(Clear); InitializeComponent(); }
public PluginCard() { InitializeComponent(); ToggleModeCommand = new ArglessRelayCommand(ToggleMode); }
public SearchBar() { ToggleSearchCommand = new RelayCommand(_ => true, ToggleSearch); CancelCommand = new ArglessRelayCommand(() => true, Cancel); InitializeComponent(); }