public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { Thickness margin = (Thickness)value; MarginData data = new MarginData(); data.LEFT = margin.Left; data.TOP = margin.Top; data.RIGHT = margin.Right; data.BOTTON = margin.Bottom; return(data); }
public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { MarginData data = (MarginData)value; Thickness margin = new Thickness(); margin.Left = data.LEFT; margin.Top = data.TOP; margin.Right = data.RIGHT; margin.Bottom = data.BOTTON; return(data); }
private MarginData CreateMarginData(Settings.Setting setting, Settings.Account account, Settings.Instrument instrument, DateTime tradeDay) { var tradePolicyDetail = setting.GetTradePolicyDetail(instrument.Id, account.TradePolicyId, tradeDay); MarginData marginData = new MarginData(); marginData.AccountId = account.Id; marginData.InstrumentId = instrument.Id; marginData.CurrencyId = account.IsMultiCurrency ? instrument.CurrencyId : account.CurrencyId; marginData.MarginFormula = (int)instrument.MarginFormula; marginData.TradePolicyId = tradePolicyDetail.TradePolicy.ID; return(marginData); }
public Rectangle FindInnerMargin(Rectangle windowSize, int buffer) { Rectangle retval = Rectangle.Empty; MarginData margins = FindMargins(); retval.X = buffer + (int)margins.left; retval.Y = buffer + (int)margins.top; retval.Width = (int)(windowSize.Width - (margins.right + buffer)); retval.Height = (int)(windowSize.Height - (margins.bottom + buffer)); return(retval); }
private void InitializeItems() { ISession session = DBSessionFactory.Instance.OpenSession(); List <ManagedSecurity> activeUNLList = session.Query <ManagedSecurity>().Where(contract => contract.IsActive && contract.OptionChain).ToList(); MarginDataDic = new Dictionary <string, MarginData>(); foreach (var symbol in UnlSymbolList) { var marginData = new MarginData(symbol); var managedSecurity = activeUNLList.FirstOrDefault(unl => unl.Symbol == symbol); if (managedSecurity != null) { marginData.MarginMaxAllowed = managedSecurity.MarginMaxAllowed; } MarginDataDic[symbol] = marginData; } }
/// <summary> /// Retrieve the margin inside the window that this WindowBorder will draw in. /// </summary> /// <returns>A Vector4 containing margins as follows: X = top/North, Y = right/East, Z = bottom/South, W = left/West</returns> private MarginData FindMargins() { MarginData retval = new MarginData(); if (this.pipingTop != null) { retval.top = pipingTop.Height; } else { retval.top = 0; } if (this.pipingRight != null) { retval.right = pipingRight.Width; } else { retval.right = 0; } if (this.pipingBottom != null) { retval.bottom = pipingBottom.Height; } else { retval.bottom = 0; } if (this.pipingLeft != null) { retval.left = pipingLeft.Width; } else { retval.left = 0; } return(retval); }
internal void InternalDraw(LayoutUserInterface ui) { var bounds = ScreenBounds; MarginData?margins = null; int closeButtonHeight = 0; if (DrawCloseButton) { closeButtonHeight = ui.IMGUI.ApplyScale(ui.DefaultFontSize + 3); margins = new MarginData(10, 10, 10, 20 + closeButtonHeight); } ui.PanelContext(bounds, PanelType, margins); if (!string.IsNullOrWhiteSpace(Title)) { ui.Anchor = Anchor.Centered; ui.FontSize = 56; ui.Label(Title, Color.LightSkyBlue); ui.FontSize = ui.DefaultFontSize; ui.Anchor = Anchor.Vertical; } Draw(ui); if (DrawCloseButton) { var exteriorBounds = ui.GetContextBounds(); // Should be same as Window.ScreenBounds. var mar = ui.GetContextMargins(); if (ui.IMGUI.Button(new Rectangle(exteriorBounds.X + mar.Left, exteriorBounds.Bottom - 10 - closeButtonHeight, exteriorBounds.Width - mar.Left - mar.Right, closeButtonHeight), "Close")) { Close(); } } ui.EndContext(); }
/// <summary> /// Draws the border. Piping is drawn first, with corners drawn afterward. /// </summary> /// <param name="sb">A SpriteBatch that has already had "SpriteBatch.Begin" called.</param> /// <param name="TextureDimensions">The dimensions of the window texture.</param> public virtual void Draw(SpriteBatch sb, Rectangle TextureDimensions) { MarginData margins = FindMargins(); int nextY = (int)margins.top; while (nextY < (TextureDimensions.Height - margins.bottom)) { sb.Draw(this.pipingLeft, new Vector2(0, nextY), Color.White); nextY += this.pipingLeft.Height; } nextY = (int)margins.top; while (nextY < (TextureDimensions.Height - margins.bottom)) { sb.Draw(this.pipingRight, new Vector2((TextureDimensions.Width - margins.right), nextY), Color.White); nextY += this.pipingRight.Height; } int nextX = (int)margins.left; while (nextX < (TextureDimensions.Width - margins.right)) { sb.Draw(this.pipingTop, new Vector2(nextX, 0), Color.White); nextX += this.pipingTop.Width; } nextX = (int)margins.left; while (nextX < (TextureDimensions.Width - margins.right)) { sb.Draw(this.pipingBottom, new Vector2(nextX, (TextureDimensions.Height - margins.bottom)), Color.White); nextX += this.pipingBottom.Width; } sb.Draw(this.cornerUpLf, Vector2.Zero, Color.White); sb.Draw(this.cornerUpRt, new Vector2((TextureDimensions.Width - margins.right), 0), Color.White); sb.Draw(this.cornerLoLf, new Vector2(0, (TextureDimensions.Height - margins.bottom)), Color.White); sb.Draw(this.cornerLoRt, new Vector2((TextureDimensions.Width - margins.right), (TextureDimensions.Height - margins.bottom)), Color.White); }
private void CalculateInstrumentMarginData(Settings.Setting setting, Settings.Account account, Settings.Instrument instrument, DateTime tradeDay, MarginData marginData) { var tradePolicyDetail = setting.GetTradePolicyDetail(instrument.Id, account.TradePolicyId, tradeDay); marginData.Margin += account.RateMarginO * tradePolicyDetail.MarginO; marginData.MarginLocked += account.RateMarginLockO * tradePolicyDetail.MarginLockedO; marginData.MarginNight += account.RateMarginO * tradePolicyDetail.MarginO; marginData.MarginNightLocked += account.RateMarginLockO * tradePolicyDetail.MarginLockedO; }