public DataGridViewModel( ICustomerService service, IBrowserManager manager) { Customers = new ObservableCollection <Customer>(); Customers.AddRange(service.GetAllCustomers().OrderBy(c => c.FirstName)); }
public ChromiumViewModel( ICustomerService service, IBrowserManager manager) { manager.CefInitialize(); //TODO get the enabled module's default home page to set the address. Address = "local://Resource/Modules/Example/Default.html"; Title = "This is a module for Super Rocket"; ShowDevToolsCommand = new DelegateCommand(this.ShowDevTools); }
private void SaveUI_Loaded(object sender, RoutedEventArgs e) { try { var provider = CoreImpl.applicationServiceProvider; var _UO = provider.GetService(CoreImpl.tyIBrowserManager); if (_UO == null) { return; } var browserManager = new IBrowserManager(_UO); var contentBrowser = browserManager.ActiveBrowser; if (contentBrowser == null) { return; } /*var obj = contentBrowser.DocumentUrl; * MessageBox.Show($"DocumentUrl: {obj}", contentBrowser.DocumentTitle); * * obj = contentBrowser.DocumentPageUrl; * MessageBox.Show($"DocumentPageUrl: {obj}", contentBrowser.DocumentTitle); * * contentBrowser.PrintPreview();*/ helpBrowse = new IHelpViewerBrowser(contentBrowser._UO); var meta = helpBrowse.TopicMetadata; this.Title = meta.HelpId; var ie = helpBrowse.WebBrowser; location.Text = LoaderImpl.SaveLocation; if (string.IsNullOrEmpty(location.Text)) { location.Text = Environment.CurrentDirectory; } var id = meta.HelpId; var fname = EncodeAsFileName(id); location.Text = System.IO.Path.Combine(location.Text, fname + ".html"); var doc = (HTMLDocument)ie.Document; dynamic item = doc.getElementsByTagName("html"); var html = (string)item[0].outerHTML; browser.NavigateToString(html); //MessageBox.Show($"DocumentPageUrl: {item[0].outerHTML}", contentBrowser.DocumentTitle); int a = 0; } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
public async Task <List <Screenshot> > GenerateScreenshots( IBrowserManager browserManager, SchemePublishedEvent @event) { using (browserManager) { var results = new List <Screenshot>(); var config = this.screenshotsConfig.Value; await browserManager.LaunchAsync(this.browserConfig.Value, this.extensionConfig.Value); var colorSchemeNameEncoded = WebUtility.UrlEncode(@event.ColorScheme.colorSchemeName); foreach (var(url, title) in from url in config.SCREENSHOT_URLS.Split(',', '~', StringSplitOptions.RemoveEmptyEntries) .Select((url, i) => (url, i)) join title in config.SCREENSHOT_URL_TITLES.Split(',', '~', StringSplitOptions.RemoveEmptyEntries) .Select((title, i) => (title, i)) on url.i equals title.i select(url.url, title.title)) { var urlWithName = url.Replace($"{{{nameof(ColorScheme.colorSchemeName)}}}", colorSchemeNameEncoded); foreach (var size in config.SCREENSHOT_SIZES.Split(',', '~', StringSplitOptions.RemoveEmptyEntries) .Select(sizeStr => new ScreenshotSize(sizeStr))) { // var urlWithName = url.Replace($"{{{nameof(ColorScheme.colorSchemeName)}}}", colorSchemeNameEncoded + "+" + size.Width.ToString()); var baseOutFilePath = Path.Combine(config.SCREENSHOT_OUT_DIR, Guid.NewGuid().ToString()); var pngOutFilePath = baseOutFilePath + ".png"; var jpegOutFilePath = baseOutFilePath + ".jpg"; await browserManager.ScreenshotAsync(urlWithName, size, pngOutFilePath); this.progressiveImageConverter.ConvertPngToProgressiveJpeg(pngOutFilePath, jpegOutFilePath, new ProgressiveImageConverterOptions { Resize = true, Width = size.Width, Height = size.Height }); results.Add(new Screenshot { AggregateId = @event.AggregateId, Url = urlWithName, Title = title, Size = size, FilePath = jpegOutFilePath }); } } return(results); } }
public bool SaveDirect() { try { var provider = CoreImpl.applicationServiceProvider; var _UO = provider.GetService(CoreImpl.tyIBrowserManager); if (_UO == null) { return(false); } var browserManager = new IBrowserManager(_UO); var contentBrowser = browserManager.ActiveBrowser; if (contentBrowser == null) { return(false); } helpBrowse = new IHelpViewerBrowser(contentBrowser._UO); var meta = helpBrowse.TopicMetadata; this.Title = meta.HelpId; var ie = helpBrowse.WebBrowser; var location_Text = LoaderImpl.SaveLocation; if (string.IsNullOrEmpty(location_Text)) { location_Text = Environment.CurrentDirectory; } var id = meta.HelpId; var fname = EncodeAsFileName(id); location_Text = System.IO.Path.Combine(location_Text, fname + ".html"); var doc = (HTMLDocument)ie.Document; dynamic item = doc.getElementsByTagName("html"); var html = (string)item[0].outerHTML; System.IO.File.WriteAllText(location_Text, html, Encoding.UTF8); return(true); } catch (Exception ex) { LoaderImpl.ShowException(ex); return(false); } }
public async Task WarmUpAsync(IBrowserManager browserManager) { using (browserManager) { var results = new List <Screenshot>(); var config = this.screenshotsConfig.Value; await browserManager.LaunchAsync(this.browserConfig.Value, this.extensionConfig.Value); foreach (var url in config.SCREENSHOT_URLS.Split(',', '~', StringSplitOptions.RemoveEmptyEntries)) { foreach (var size in config.SCREENSHOT_SIZES.Split(',', '~', StringSplitOptions.RemoveEmptyEntries) .Select(sizeStr => new ScreenshotSize(sizeStr))) { await browserManager.WarmUpAsync(url, size); } } } }
/// <summary> /// Констуктор класса Presenter, инициализирует интерфейсные поля, получает информацию о поставщиках и запускает создание кнопок на форме /// </summary> /// <param name="browserManager">Менеджер управления браузером</param> /// <param name="mainForm">Главная форма, взаимодействующая с пользователем</param> /// <param name="managersAndSups">Класс, формирующий информацию о менеджерах и поставщиках</param> /// <param name="messageManager">Менеджер вывода сообщений пользователю</param> public Presenter(IBrowserManager browserManager, IMainForm mainForm, IManagerAndSups managersAndSups, IMessageManager messageManager) { this.browserManager = browserManager ?? throw new ArgumentNullException(nameof(browserManager)); this.mainForm = mainForm ?? throw new ArgumentNullException(nameof(mainForm)); this.managersAndSups = managersAndSups ?? throw new ArgumentNullException(nameof(managersAndSups)); this.messageManager = messageManager ?? throw new ArgumentNullException(nameof(messageManager)); mainForm.BeforeClosingProgram += MainForm_BeforeClosingProgram; mainForm.IsMinimizeNeed = true; mainForm.RunButtonClick += MainForm_RunButtonClick; try { CreateControls(); } catch (Exception ex) { messageManager.ErrorShow(ex.Message); } }
public void Navigate(string source) { try { var provider = CoreImpl.applicationServiceProvider; var _UO = provider.GetService(CoreImpl.tyIBrowserManager); if (_UO == null) { return; } var browserManager = new IBrowserManager(_UO); var contentBrowser = browserManager.ActiveBrowser; if (contentBrowser == null) { return; } var pi = contentBrowser._TY.GetField("webBrowserKeyDownHandler", BindingFlags.Instance | BindingFlags.NonPublic); if (pi != null) { var webBrowserKeyDownHandler = pi.GetValue(contentBrowser._UO); if (webBrowserKeyDownHandler != null) { ((IDisposable)webBrowserKeyDownHandler).Dispose(); } } var helpBrowser = new IHelpViewerBrowser(contentBrowser._UO); var brower = helpBrowser.WebBrowser; if (brower != null) { } contentBrowser.Navigate(source); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
public DeepLinkCollectionViewModel( IConfigurationCollection configurationCollection, IClipboardManager clipboardManager, IDeepLinkManager deepLinkManager, IMapper mapper, IEventAggregator eventAggregator, IBrowserManager browserManager) { this.clipboardManager = clipboardManager; this.configurationCollection = configurationCollection; this.deepLinkManager = deepLinkManager; this.mapper = mapper; this.eventAggregator = eventAggregator; this.browserManager = browserManager; this.clipboardManager.ClipboardTextUpdateReceived += this.OnClipboardTextUpdateReceived; this.eventAggregator.Subscribe(this); // this.currentMatchName = "-"; this.HierarchicalLinks = new BindingList <HierarchyLevelOne>(); }
private void ManageUI_Loaded(object sender, RoutedEventArgs e) { try { var loc = LoaderImpl.SaveLocation; if (string.IsNullOrEmpty(loc) || !System.IO.Directory.Exists(loc)) { Button_Click(dir, e); } else { location.Text = loc; } loc = location.Text; if (!string.IsNullOrEmpty(loc) && System.IO.Directory.Exists(loc)) { LoadRootDirectory(); } return; var provider = CoreImpl.applicationServiceProvider; var _UO = provider.GetService(CoreImpl.tyIBrowserManager); if (_UO == null) { return; } var browserManager = new IBrowserManager(_UO); var contentBrowser = browserManager.ActiveBrowser; if (contentBrowser == null) { return; } /*var obj = contentBrowser.DocumentUrl; * MessageBox.Show($"DocumentUrl: {obj}", contentBrowser.DocumentTitle); * * obj = contentBrowser.DocumentPageUrl; * MessageBox.Show($"DocumentPageUrl: {obj}", contentBrowser.DocumentTitle); * * contentBrowser.PrintPreview();*/ var helpBrowse = new IHelpViewerBrowser(contentBrowser._UO); var meta = helpBrowse.TopicMetadata; this.Title = meta.HelpId; var ie = helpBrowse.WebBrowser; var doc = (HTMLDocument)ie.Document; dynamic item = doc.getElementsByTagName("html"); var html = (string)item[0].outerHTML; //MessageBox.Show($"DocumentPageUrl: {item[0].outerHTML}", contentBrowser.DocumentTitle); int a = 0; } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }