private void ButtonPlugin_Click(object sender, EventArgs e) { ButtonPlugin btn = sender as ButtonPlugin; if (btn == null) // wtf oO { return; } ((PluginBase)btn.Tag).OnPluginAddPage(this); }
private void AddPluginButton(PluginBase p) { var offsetX = (pnlPlugins.Controls.Count % 3) * 16; // 3 per row var offsetY = (pnlPlugins.Controls.Count / 3) * 16; var btn = new ButtonPlugin(p); offsetX += (pnlPlugins.Controls.Count % 3) * btn.Width; offsetY += (pnlPlugins.Controls.Count / 3) * btn.Height; btn.Location = new Point(offsetX, offsetY); btn.Click += ButtonPlugin_Click; pnlPlugins.Controls.Add(btn); }