private async void btnControlsConfigure_Click(object sender, RoutedEventArgs e) { // get button name Button button = (Button)sender; string name = button.Name; // remove beginning and end name = name.Replace("btn", "").Replace("Configure", ""); // get the relevant combox //ComboBox cb = (ComboBox)this.FindName("cmb" + name); // get the virtual port number //ComboBoxItem typeItem = (ComboBoxItem)cb.SelectedItem; //string selectedString = cb.SelectionBoxItem.ToString(); //int portNum = Convert.ToInt32(selectedString.Replace("Virtual Port ", "")); // Get device definition for this controller DeviceDefinition dev = Gb.GamePad(0); mw.ControllerDefinition = dev; // launch controller configuration window Grid RootGrid = (Grid)mw.FindName("RootGrid"); await mw.ShowChildWindowAsync(new ConfigureController() { IsModal = true, AllowMove = false, Title = "Controller Configuration", CloseOnOverlay = false, ShowCloseButton = false, CloseByEscape = false }, RootGrid); }
/// <summary> /// put me in ToolsBefore /// </summary> public void UpdateValues() { if (!IsHandleCreated || IsDisposed) { return; } else if (Gb != null) { if (!Visible) { if (cbscanline_emu != -2) { cbscanline_emu = -2; Gb.SetScanlineCallback(null, 0); } } else { if (cbscanline != cbscanline_emu) { cbscanline_emu = cbscanline; if (cbscanline == -2) { Gb.SetScanlineCallback(null, 0); } else { Gb.SetScanlineCallback(ScanlineCallback, cbscanline); } } } } }
public void Restart() { _cgb = Gb.IsCGBMode(); _lcdc = 0; // TODO: can this be a required Emulator Service, and let the tool manage the logic of closing? if (!Gb.GetGPUMemoryAreas(out _vram, out _bgpal, out _sppal, out _oam)) { if (Visible) { Close(); } } tilespal = _bgpal; if (_cgb) { label4.Enabled = true; } else { label4.Enabled = false; } bmpViewBG.Clear(); bmpViewWin.Clear(); bmpViewTiles1.Clear(); bmpViewTiles2.Clear(); bmpViewBGPal.Clear(); bmpViewSPPal.Clear(); bmpViewOAM.Clear(); bmpViewDetails.Clear(); bmpViewMemory.Clear(); cbscanline_emu = -4; // force refresh }
private void buttonRefresh_Click(object sender, EventArgs e) { if (cbscanline == -2 && Gb != null) { Gb.SetScanlineCallback(ScanlineCallback, -2); } }
private void GBGPUView_FormClosed(object sender, FormClosedEventArgs e) { if (Gb != null) { Gb.SetScanlineCallback(null, 0); } }
public void buildGd() { int i = 0; rebuildGd(); if (bestNode == null) { return; } while (!bestNode.haveMeta()) { i++; int bsc = bestNode.score; Gb.Add(bestNode.originalPath, bestNode.meta, -bsc); int bscp = bsc / bestNode.items.Count; foreach (var chld in bestNode.items) { Gb.Add(chld.Value.originalPath, chld.Value.meta, bscp); } rebuildGd(); if (i > bestNodeSearchLimit) { break; } } }
public void Restart() { _cgb = Gb.IsCGBMode(); _lcdc = 0; _memory = Gb.GetGPU(); tilespal = _memory.Bgpal; if (_cgb) { label4.Enabled = true; } else { label4.Enabled = false; } bmpViewBG.Clear(); bmpViewWin.Clear(); bmpViewTiles1.Clear(); bmpViewTiles2.Clear(); bmpViewBGPal.Clear(); bmpViewSPPal.Clear(); bmpViewOAM.Clear(); bmpViewDetails.Clear(); bmpViewMemory.Clear(); cbscanline_emu = -4; // force refresh }
/// <summary> /// Convert this color to an hex string with format #AARRGGBB /// </summary> /// <returns>Hex string.</returns> public string ColorToHex() { return(String.Format("#{0}{1}{2}{3}" , Ab.ToString("X").Length == 1 ? String.Format("0{0}", Ab.ToString("X")) : Ab.ToString("X") , Rb.ToString("X").Length == 1 ? String.Format("0{0}", Rb.ToString("X")) : Rb.ToString("X") , Gb.ToString("X").Length == 1 ? String.Format("0{0}", Gb.ToString("X")) : Gb.ToString("X") , Bb.ToString("X").Length == 1 ? String.Format("0{0}", Bb.ToString("X")) : Bb.ToString("X"))); }
protected override void UpdateAfter() { // Automatically connect once the game is running if (!_connected) { Gb.SetPrinterCallback(OnPrint); _connected = true; } }
public PicChannelMixerWindow(BitmapSource bs) { InitializeComponent(); this.bs = bs; Content.DataContext = picChannelMixerControl; R.AddHandler(Slider.MouseLeftButtonUpEvent, new MouseButtonEventHandler(Slider_MouseLeftButtonUp), true); Rg.AddHandler(Slider.MouseLeftButtonUpEvent, new MouseButtonEventHandler(Slider_MouseLeftButtonUp), true); Rb.AddHandler(Slider.MouseLeftButtonUpEvent, new MouseButtonEventHandler(Slider_MouseLeftButtonUp), true); Gr.AddHandler(Slider.MouseLeftButtonUpEvent, new MouseButtonEventHandler(Slider_MouseLeftButtonUp), true); G.AddHandler(Slider.MouseLeftButtonUpEvent, new MouseButtonEventHandler(Slider_MouseLeftButtonUp), true); Gb.AddHandler(Slider.MouseLeftButtonUpEvent, new MouseButtonEventHandler(Slider_MouseLeftButtonUp), true); Br.AddHandler(Slider.MouseLeftButtonUpEvent, new MouseButtonEventHandler(Slider_MouseLeftButtonUp), true); Bg.AddHandler(Slider.MouseLeftButtonUpEvent, new MouseButtonEventHandler(Slider_MouseLeftButtonUp), true); B.AddHandler(Slider.MouseLeftButtonUpEvent, new MouseButtonEventHandler(Slider_MouseLeftButtonUp), true); }
private void GBPrinterView_FormClosed(object sender, FormClosedEventArgs e) { Gb?.SetPrinterCallback(null); }
//平均梯度 private void button1_Click(object sender, EventArgs e) { double Gr, Gg, Gb; int delt_xr, delt_yr, delt_xg, delt_yg, delt_xb, delt_yb; double map_r, map_g, map_b; map_r = map_g = map_b = 0; for (int i = 0; i < newBitmap.Width - 1; i++) { for (int j = 0; j < newBitmap.Height - 1; j++) { Color pixel = newBitmap.GetPixel(i, j); Color pixel_x = newBitmap.GetPixel(i + 1, j); Color pixel_y = newBitmap.GetPixel(i, j + 1); delt_xr = (pixel_x.R - pixel.R) * (pixel_x.R - pixel.R); delt_yr = (pixel_y.R - pixel.R) * (pixel_y.R - pixel.R); delt_xg = (pixel_x.G - pixel.G) * (pixel_x.G - pixel.G); delt_yg = (pixel_y.G - pixel.G) * (pixel_y.G - pixel.G); delt_xb = (pixel_x.B - pixel.B) * (pixel_x.B - pixel.B); delt_yb = (pixel_y.B - pixel.B) * (pixel_y.B - pixel.B); map_r += Math.Sqrt(delt_xr + delt_yr); map_g += Math.Sqrt(delt_xg + delt_yg); map_b += Math.Sqrt(delt_xb + delt_yb); } } Gr = map_r / ((newBitmap.Width - 1) * (newBitmap.Height - 1)); Gg = map_g / ((newBitmap.Width - 1) * (newBitmap.Height - 1)); Gb = map_b / ((newBitmap.Width - 1) * (newBitmap.Height - 1)); MessageBox.Show("融合图三通道平均梯度" + "\r\n" + "Gr:" + Gr.ToString() + " " + "Gg:" + Gg.ToString() + " " + "Gb:" + Gb.ToString()); }