public new void Draw(ref Graphics graph) { GHPadding padding = GHManager.GetStyle(windowType).ItemPadding; GHPadding text_pad = GHManager.Settings.Style.ItemList.TextPadding; Rectangle iconrc = new Rectangle { X = control.Left + (control.Width - GHManager.Settings.Style.ItemList.IconSize) / 2, Y = control.Top + padding.Top, Width = GHManager.Settings.Style.ItemList.IconSize, Height = GHManager.Settings.Style.ItemList.IconSize }; rect_text = new Rectangle { X = control.Left + text_pad.Left, Y = iconrc.Bottom + padding.Bottom + text_pad.Top, Width = control.Width - text_pad.WSize, Height = control.Height - iconrc.Height - padding.Top - text_pad.HSize - GHManager.Settings.Style.ItemList.WindowPadding.Top }; SolidBrush solidBrush = new SolidBrush(GHManager.GetColor()); graph.DrawImage(image, iconrc); StringFormat format = new StringFormat { Alignment = StringAlignment.Center, LineAlignment = StringAlignment.Center, Trimming = StringTrimming.EllipsisCharacter, FormatFlags = StringFormatFlags.NoWrap }; graph.DrawString(item_name.ToString(), GHManager.GetFont(), solidBrush, rect_text, format); solidBrush.Dispose(); format.Dispose(); }
public GHPadding(GHPadding padding) { Left = padding.Left; Top = padding.Top; Right = padding.Right; Bottom = padding.Bottom; }
public GHBaseStyle(GHBaseStyle baseStyle) { ItemSizeHeight = baseStyle.ItemSizeHeight; ItemSizeWidth = baseStyle.ItemSizeWidth; ItemSpace = baseStyle.ItemSpace; WindowPadding = new GHPadding(baseStyle.WindowPadding); ItemPadding = new GHPadding(baseStyle.ItemPadding); }
/// <summary> /// コンストラクタ /// </summary> public GHBaseStyle() { ItemSizeHeight = 60; ItemSizeWidth = 60; ItemSpace = 5; WindowPadding = new GHPadding(5, 5, 5, 5); ItemPadding = new GHPadding(5, 5, 5, 5); }
/// <summary> /// アイコンの描画 /// </summary> /// <param name="graph">描画先</param> public void Draw(ref Graphics graph) { GHPadding padding = GHManager.GetStyle(windowType).ItemPadding; Rectangle rect = new Rectangle { X = control.Location.X + padding.Left, Y = control.Location.Y + padding.Top, Width = control.Width - padding.WSize, Height = control.Height - padding.HSize }; if (image != null) { graph.DrawImage(image, rect); } }
/// <summary> /// アイコンの描画 /// </summary> /// <param name="graph">描画先</param> public void Draw(ref Graphics graph, bool open) { GHPadding padding = GHManager.GetStyle(windowType).ItemPadding; Rectangle rect = new Rectangle { X = control.Location.X + padding.Left, Y = control.Location.Y + padding.Top, Width = control.Width - padding.WSize, Height = control.Height - padding.HSize }; if (open) { SkinImage skin = opened ? OpendImage : ClosedImage; Skin.GetSkinImage(skin, out Bitmap bmp); graph.DrawImage(bmp, rect); bmp.Dispose(); bmp = null; } else { Draw(ref graph); } }
public Config_Sub(ref GHPadding srcPadding) { InitializeComponent(); RefPadding = srcPadding; }
// 余白・位置調整のボタン private void Button_Click(object sender, EventArgs e) { string buttonName = Regex.Replace(Regex.Replace( ((Button)sender).Name, "^Button", string.Empty), "Padding", string.Empty).ToLower(); int flag = 0; if (buttonName.IndexOf("launcher") != -1) { flag += 1; } else if (buttonName.IndexOf("myset") != -1) { flag += 2; } else if (buttonName.IndexOf("itemlist") != -1) { flag += 4; } if (buttonName.IndexOf("icon") != -1) { flag += 8; } else if (buttonName.IndexOf("text") != -1) { flag += 16; } else { flag += 32; } GHBaseStyle style = (flag & 1) == 1 ? GHManager.TempSettings.Style.Launcher : (flag & 2) == 2 ? GHManager.TempSettings.Style.MysetList : (flag & 4) == 4 ? GHManager.TempSettings.Style.ItemList : null; GHPadding padding = (flag & 8) == 8 ? style?.ItemPadding : (flag & 16) == 16 ? GHManager.TempSettings.Style.ItemList.TextPadding : style?.WindowPadding; if (padding == null) { return; } GHPadding temp = new GHPadding { Left = padding.Left, Top = padding.Top, Right = padding.Right, Bottom = padding.Bottom }; using (Config_Sub f = new Config_Sub(ref padding)) { f.Text = Regex.Replace(((Button)sender).Text, "\\(&[A-Z]?\\)", string.Empty); if (f.ShowDialog() != DialogResult.OK) { padding.Left = temp.Left; padding.Top = temp.Top; padding.Right = temp.Right; padding.Bottom = temp.Bottom; } } }