Added: support for add tile at coord
This commit is contained in:
parent
c90d846f2e
commit
d4258b39eb
@ -7,7 +7,6 @@ namespace AppLauncher.Models
|
|||||||
public class TileModel
|
public class TileModel
|
||||||
{
|
{
|
||||||
public string Title { get; set; }
|
public string Title { get; set; }
|
||||||
public Image Icon { get; set; }
|
|
||||||
public string ProcessFilename { get; set; }
|
public string ProcessFilename { get; set; }
|
||||||
public string ProcessArgument { get; set; }
|
public string ProcessArgument { get; set; }
|
||||||
public string ProcessWorkingDirectory { get; set; }
|
public string ProcessWorkingDirectory { get; set; }
|
||||||
@ -16,7 +15,22 @@ namespace AppLauncher.Models
|
|||||||
public Point Position { get; set; }
|
public Point Position { get; set; }
|
||||||
|
|
||||||
public bool IsGroup { get; set; } = false;
|
public bool IsGroup { get; set; } = false;
|
||||||
protected List<TileModel> Items { get; set; } = new List<TileModel>();
|
public List<TileModel> Items { get; set; } = new List<TileModel>();
|
||||||
|
|
||||||
|
public override string ToString() => this.Title ?? string.Empty;
|
||||||
|
|
||||||
|
//public void Update(TileModel model)
|
||||||
|
//{
|
||||||
|
// this.Title = model.Title;
|
||||||
|
// this.ProcessFilename = model.ProcessFilename;
|
||||||
|
// this.ProcessArgument = model.ProcessArgument;
|
||||||
|
// this.ProcessWorkingDirectory = model.ProcessWorkingDirectory;
|
||||||
|
// this.ProcessWindowStyle = model.ProcessWindowStyle;
|
||||||
|
// this.ProcessAsAdmin = model.ProcessAsAdmin;
|
||||||
|
// this.Position = model.Position;
|
||||||
|
// this.IsGroup = model.IsGroup;
|
||||||
|
// this.Items = model.Items;
|
||||||
|
//}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -26,9 +26,9 @@
|
|||||||
inkscape:document-rotation="0"
|
inkscape:document-rotation="0"
|
||||||
inkscape:current-layer="layer1"
|
inkscape:current-layer="layer1"
|
||||||
inkscape:document-units="mm"
|
inkscape:document-units="mm"
|
||||||
inkscape:cy="362.07537"
|
inkscape:cy="407.3011"
|
||||||
inkscape:cx="331.14896"
|
inkscape:cx="356.66747"
|
||||||
inkscape:zoom="5.6"
|
inkscape:zoom="11.2"
|
||||||
inkscape:pageshadow="2"
|
inkscape:pageshadow="2"
|
||||||
inkscape:pageopacity="0.0"
|
inkscape:pageopacity="0.0"
|
||||||
borderopacity="1.0"
|
borderopacity="1.0"
|
||||||
@ -523,7 +523,10 @@
|
|||||||
inkscape:export-ydpi="120" />
|
inkscape:export-ydpi="120" />
|
||||||
</g>
|
</g>
|
||||||
<g
|
<g
|
||||||
transform="matrix(0.26458333,0,0,0.26458333,90.279613,100.24874)"
|
inkscape:export-ydpi="96"
|
||||||
|
inkscape:export-xdpi="96"
|
||||||
|
inkscape:export-filename="L:\gitlab-hiimray\linear-app-launcher\Resources\folder_32.png"
|
||||||
|
transform="matrix(0.34189664,0,0,0.34189664,90.202299,100.09411)"
|
||||||
id="g1832"
|
id="g1832"
|
||||||
style="fill:none;stroke:#636977;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1">
|
style="fill:none;stroke:#636977;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1">
|
||||||
<path
|
<path
|
||||||
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 19 KiB |
@ -6,9 +6,10 @@ namespace AppLauncher.Windows.Forms
|
|||||||
{
|
{
|
||||||
public class AddListTileForm : TDialogForm
|
public class AddListTileForm : TDialogForm
|
||||||
{
|
{
|
||||||
public static void ShowDialog(TTilePanelLayout panel)
|
public static void ShowDialog(TTilePanelLayout control)
|
||||||
{
|
{
|
||||||
AddListTileForm form = new AddListTileForm(panel);
|
AddListTileForm form = new AddListTileForm();
|
||||||
|
form.TilePanelLayout = control;
|
||||||
form.ShowDialog();
|
form.ShowDialog();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -16,20 +17,14 @@ namespace AppLauncher.Windows.Forms
|
|||||||
private TButton button1;
|
private TButton button1;
|
||||||
private RyzStudio.Windows.Forms.THorizontalSeparator horizontalSeparator1;
|
private RyzStudio.Windows.Forms.THorizontalSeparator horizontalSeparator1;
|
||||||
private TTextBox textBox1;
|
private TTextBox textBox1;
|
||||||
protected TTilePanelLayout parentPanel = null;
|
|
||||||
|
public TTilePanelLayout TilePanelLayout { get; set; } = null;
|
||||||
|
|
||||||
public AddListTileForm() : base()
|
public AddListTileForm() : base()
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
}
|
}
|
||||||
|
|
||||||
public AddListTileForm(TTilePanelLayout panel) : base()
|
|
||||||
{
|
|
||||||
parentPanel = panel;
|
|
||||||
|
|
||||||
InitializeComponent();
|
|
||||||
}
|
|
||||||
|
|
||||||
private void InitializeComponent()
|
private void InitializeComponent()
|
||||||
{
|
{
|
||||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(AddListTileForm));
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(AddListTileForm));
|
||||||
@ -156,7 +151,7 @@ namespace AppLauncher.Windows.Forms
|
|||||||
IsGroup = true
|
IsGroup = true
|
||||||
};
|
};
|
||||||
|
|
||||||
parentPanel.AddTile(model);
|
this.TilePanelLayout.AddTile(model);
|
||||||
|
|
||||||
this.Close();
|
this.Close();
|
||||||
}
|
}
|
||||||
|
@ -1,19 +1,24 @@
|
|||||||
using AppLauncher.Models;
|
using AppLauncher.Models;
|
||||||
using RyzStudio.Windows.ThemedForms;
|
using RyzStudio.Windows.ThemedForms;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Drawing;
|
||||||
using System.IO;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.Threading.Tasks;
|
|
||||||
|
|
||||||
namespace AppLauncher.Windows.Forms
|
namespace AppLauncher.Windows.Forms
|
||||||
{
|
{
|
||||||
public class AddTileForm : TDialogForm
|
public class AddTileForm : TDialogForm
|
||||||
{
|
{
|
||||||
public static void ShowDialog(TTilePanelLayout panel)
|
public static void ShowDialog(TTilePanelLayout control, Point coord)
|
||||||
{
|
{
|
||||||
AddTileForm form = new AddTileForm(panel);
|
AddTileForm form = new AddTileForm();
|
||||||
|
form.TilePanelLayout = control;
|
||||||
|
form.AimCoord = coord;
|
||||||
|
form.ShowDialog();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void ShowDialog(TListBox control)
|
||||||
|
{
|
||||||
|
AddTileForm form = new AddTileForm();
|
||||||
|
form.ListBox = control;
|
||||||
form.ShowDialog();
|
form.ShowDialog();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -32,20 +37,22 @@ namespace AppLauncher.Windows.Forms
|
|||||||
private RyzStudio.Windows.Forms.THorizontalSeparator horizontalSeparator1;
|
private RyzStudio.Windows.Forms.THorizontalSeparator horizontalSeparator1;
|
||||||
private RyzStudio.Windows.Forms.THorizontalSeparator horizontalSeparator2;
|
private RyzStudio.Windows.Forms.THorizontalSeparator horizontalSeparator2;
|
||||||
private TTextBox textBox1;
|
private TTextBox textBox1;
|
||||||
protected TTilePanelLayout parentPanel = null;
|
|
||||||
|
public TTilePanelLayout TilePanelLayout { get; set; } = null;
|
||||||
|
public Point AimCoord { get; set; } = new Point(-1, -1);
|
||||||
|
public TListBox ListBox { get; set; } = null;
|
||||||
|
|
||||||
public AddTileForm() : base()
|
public AddTileForm() : base()
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
initialiseComponents2();
|
|
||||||
}
|
|
||||||
|
|
||||||
public AddTileForm(TTilePanelLayout panel) : base()
|
pickerBox1.ComboBox.Items.Clear();
|
||||||
{
|
pickerBox1.ComboBox.Items.AddRange(new string[] { "Normal", "Hidden", "Minimized", "Maximized" });
|
||||||
parentPanel = panel;
|
if (pickerBox1.ComboBox.Items.Count > 0) pickerBox1.ComboBox.SelectedIndex = 0;
|
||||||
|
|
||||||
InitializeComponent();
|
pickerBox2.ComboBox.Items.Clear();
|
||||||
initialiseComponents2();
|
pickerBox2.ComboBox.Items.AddRange(new string[] { "No", "Yes" });
|
||||||
|
if (pickerBox2.ComboBox.Items.Count > 0) pickerBox2.ComboBox.SelectedIndex = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void InitializeComponent()
|
private void InitializeComponent()
|
||||||
@ -343,20 +350,26 @@ namespace AppLauncher.Windows.Forms
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initialiseComponents2()
|
|
||||||
{
|
|
||||||
pickerBox1.ComboBox.Items.Clear();
|
|
||||||
pickerBox1.ComboBox.Items.AddRange(new string[] { "Normal", "Hidden", "Minimized", "Maximized" });
|
|
||||||
if (pickerBox1.ComboBox.Items.Count > 0) pickerBox1.ComboBox.SelectedIndex = 0;
|
|
||||||
|
|
||||||
pickerBox2.ComboBox.Items.Clear();
|
|
||||||
pickerBox2.ComboBox.Items.AddRange(new string[] { "No", "Yes" });
|
|
||||||
if (pickerBox2.ComboBox.Items.Count > 0) pickerBox2.ComboBox.SelectedIndex = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void button1_Click(object sender, EventArgs e)
|
private void button1_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
TileModel model = new TileModel()
|
TileModel model = buildModel();
|
||||||
|
|
||||||
|
if (this.TilePanelLayout != null)
|
||||||
|
{
|
||||||
|
this.TilePanelLayout.AddTile(model);
|
||||||
|
}
|
||||||
|
else if (this.ListBox != null)
|
||||||
|
{
|
||||||
|
int n = this.ListBox.ListBox.Items.Add(model);
|
||||||
|
this.ListBox.ListBox.SelectedIndex = n;
|
||||||
|
}
|
||||||
|
|
||||||
|
this.Close();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected TileModel buildModel()
|
||||||
|
{
|
||||||
|
TileModel rs = new TileModel()
|
||||||
{
|
{
|
||||||
Title = textBox1.Text?.Trim(),
|
Title = textBox1.Text?.Trim(),
|
||||||
ProcessFilename = textBox2.Text?.Trim(),
|
ProcessFilename = textBox2.Text?.Trim(),
|
||||||
@ -366,9 +379,12 @@ namespace AppLauncher.Windows.Forms
|
|||||||
ProcessAsAdmin = (pickerBox2.ComboBox.SelectedIndex == 1)
|
ProcessAsAdmin = (pickerBox2.ComboBox.SelectedIndex == 1)
|
||||||
};
|
};
|
||||||
|
|
||||||
parentPanel.AddTile(model);
|
if (!this.AimCoord.Equals(new Point(-1, -1)))
|
||||||
|
{
|
||||||
|
rs.Position = this.AimCoord;
|
||||||
|
}
|
||||||
|
|
||||||
this.Close();
|
return rs;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -6,25 +6,28 @@ namespace AppLauncher.Windows.Forms
|
|||||||
{
|
{
|
||||||
public class EditGroupForm : TDialogForm
|
public class EditGroupForm : TDialogForm
|
||||||
{
|
{
|
||||||
|
public static void ShowDialog(TTilePanelLayout control)
|
||||||
|
{
|
||||||
|
EditGroupForm form = new EditGroupForm();
|
||||||
|
form.TilePanelLayout = control;
|
||||||
|
form.ShowDialog();
|
||||||
|
}
|
||||||
|
|
||||||
private System.Windows.Forms.Label label2;
|
private System.Windows.Forms.Label label2;
|
||||||
private System.Windows.Forms.Label label1;
|
private System.Windows.Forms.Label label1;
|
||||||
private TButton button1;
|
private TButton button1;
|
||||||
private TPickerBox pickerBox1;
|
private TPickerBox pickerBox1;
|
||||||
private TTextBox textBox1;
|
private TTextBox textBox1;
|
||||||
protected TTilePanelLayout parentContainer = null;
|
|
||||||
|
public TTilePanelLayout TilePanelLayout { get; set; } = null;
|
||||||
|
|
||||||
public EditGroupForm() : base()
|
public EditGroupForm() : base()
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
initialiseComponents2();
|
|
||||||
}
|
|
||||||
|
|
||||||
public EditGroupForm(TTilePanelLayout container) : base()
|
pickerBox1.ComboBox.Items.Clear();
|
||||||
{
|
pickerBox1.ComboBox.Items.AddRange(new string[] { "No", "Yes" });
|
||||||
parentContainer = container;
|
if (pickerBox1.ComboBox.Items.Count > 0) pickerBox1.ComboBox.SelectedIndex = 0;
|
||||||
|
|
||||||
InitializeComponent();
|
|
||||||
initialiseComponents2();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void InitializeComponent()
|
private void InitializeComponent()
|
||||||
@ -148,31 +151,24 @@ namespace AppLauncher.Windows.Forms
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initialiseComponents2()
|
|
||||||
{
|
|
||||||
pickerBox1.ComboBox.Items.Clear();
|
|
||||||
pickerBox1.ComboBox.Items.AddRange(new string[] { "No", "Yes" });
|
|
||||||
if (pickerBox1.ComboBox.Items.Count > 0) pickerBox1.ComboBox.SelectedIndex = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void OnShown(EventArgs e)
|
protected override void OnShown(EventArgs e)
|
||||||
{
|
{
|
||||||
base.OnShown(e);
|
base.OnShown(e);
|
||||||
|
|
||||||
if (parentContainer != null)
|
if (this.TilePanelLayout != null)
|
||||||
{
|
{
|
||||||
textBox1.Text = parentContainer.Model.Title;
|
textBox1.Text = this.TilePanelLayout.Model.Title;
|
||||||
pickerBox1.ComboBox.SelectedIndex = (parentContainer.Model.IsExclusive ? 1 : 0);
|
pickerBox1.ComboBox.SelectedIndex = (this.TilePanelLayout.Model.IsExclusive ? 1 : 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void button1_Click(object sender, EventArgs e)
|
private void button1_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
TileGroupModel model = parentContainer.Model;
|
TileGroupModel model = this.TilePanelLayout.Model;
|
||||||
model.Title = textBox1.Text?.Trim();
|
model.Title = textBox1.Text?.Trim();
|
||||||
model.IsExclusive = (pickerBox1.ComboBox.SelectedIndex == 1);
|
model.IsExclusive = (pickerBox1.ComboBox.SelectedIndex == 1);
|
||||||
|
|
||||||
parentContainer.UpdateModel(model);
|
this.TilePanelLayout.UpdateModel(model);
|
||||||
|
|
||||||
this.Close();
|
this.Close();
|
||||||
}
|
}
|
||||||
|
@ -1,14 +1,16 @@
|
|||||||
using AppLauncher.Models;
|
using AppLauncher.Models;
|
||||||
using RyzStudio.Windows.ThemedForms;
|
using RyzStudio.Windows.ThemedForms;
|
||||||
using System;
|
using System;
|
||||||
|
using System.Linq;
|
||||||
|
|
||||||
namespace AppLauncher.Windows.Forms
|
namespace AppLauncher.Windows.Forms
|
||||||
{
|
{
|
||||||
public class EditListTileForm : TDialogForm
|
public class EditListTileForm : TDialogForm
|
||||||
{
|
{
|
||||||
public static void ShowDialog(TTilePanel panel)
|
public static void ShowDialog(TTilePanel control)
|
||||||
{
|
{
|
||||||
EditListTileForm form = new EditListTileForm(panel);
|
EditListTileForm form = new EditListTileForm();
|
||||||
|
form.TilePanel = control;
|
||||||
form.ShowDialog();
|
form.ShowDialog();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -16,79 +18,53 @@ namespace AppLauncher.Windows.Forms
|
|||||||
private TButton button1;
|
private TButton button1;
|
||||||
private RyzStudio.Windows.Forms.THorizontalSeparator horizontalSeparator2;
|
private RyzStudio.Windows.Forms.THorizontalSeparator horizontalSeparator2;
|
||||||
private TTextBox textBox1;
|
private TTextBox textBox1;
|
||||||
private TListBox tListBox1;
|
private TListBox listBox1;
|
||||||
private System.Windows.Forms.Label label2;
|
private System.Windows.Forms.Label label2;
|
||||||
private TButton tButton1;
|
|
||||||
private TButton tButton2;
|
public TTilePanel TilePanel { get; set; } = null;
|
||||||
private TButton tButton3;
|
|
||||||
private TButton tButton4;
|
|
||||||
protected TTilePanel parentPanel = null;
|
|
||||||
|
|
||||||
public EditListTileForm() : base()
|
public EditListTileForm() : base()
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
}
|
}
|
||||||
|
|
||||||
public EditListTileForm(TTilePanel panel) : base()
|
|
||||||
{
|
|
||||||
parentPanel = panel;
|
|
||||||
|
|
||||||
InitializeComponent();
|
|
||||||
}
|
|
||||||
|
|
||||||
private void InitializeComponent()
|
private void InitializeComponent()
|
||||||
{
|
{
|
||||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(EditListTileForm));
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(EditListTileForm));
|
||||||
RyzStudio.Windows.ThemedForms.TButton.ButtonStyle buttonStyle1 = new RyzStudio.Windows.ThemedForms.TButton.ButtonStyle();
|
RyzStudio.Windows.ThemedForms.TButton.ButtonStyle buttonStyle1 = new RyzStudio.Windows.ThemedForms.TButton.ButtonStyle();
|
||||||
RyzStudio.Windows.ThemedForms.TButton.ButtonStyle buttonStyle2 = new RyzStudio.Windows.ThemedForms.TButton.ButtonStyle();
|
RyzStudio.Windows.ThemedForms.TButton.ButtonStyle buttonStyle2 = new RyzStudio.Windows.ThemedForms.TButton.ButtonStyle();
|
||||||
RyzStudio.Windows.ThemedForms.TButton.ButtonStyle buttonStyle3 = new RyzStudio.Windows.ThemedForms.TButton.ButtonStyle();
|
RyzStudio.Windows.ThemedForms.TButton.ButtonStyle buttonStyle3 = new RyzStudio.Windows.ThemedForms.TButton.ButtonStyle();
|
||||||
RyzStudio.Windows.ThemedForms.TButton.ButtonStyle buttonStyle4 = new RyzStudio.Windows.ThemedForms.TButton.ButtonStyle();
|
|
||||||
RyzStudio.Windows.ThemedForms.TButton.ButtonStyle buttonStyle5 = new RyzStudio.Windows.ThemedForms.TButton.ButtonStyle();
|
|
||||||
RyzStudio.Windows.ThemedForms.TButton.ButtonStyle buttonStyle6 = new RyzStudio.Windows.ThemedForms.TButton.ButtonStyle();
|
|
||||||
RyzStudio.Windows.ThemedForms.TButton.ButtonStyle buttonStyle7 = new RyzStudio.Windows.ThemedForms.TButton.ButtonStyle();
|
|
||||||
RyzStudio.Windows.ThemedForms.TButton.ButtonStyle buttonStyle8 = new RyzStudio.Windows.ThemedForms.TButton.ButtonStyle();
|
|
||||||
RyzStudio.Windows.ThemedForms.TButton.ButtonStyle buttonStyle9 = new RyzStudio.Windows.ThemedForms.TButton.ButtonStyle();
|
|
||||||
RyzStudio.Windows.ThemedForms.TButton.ButtonStyle buttonStyle10 = new RyzStudio.Windows.ThemedForms.TButton.ButtonStyle();
|
|
||||||
RyzStudio.Windows.ThemedForms.TButton.ButtonStyle buttonStyle11 = new RyzStudio.Windows.ThemedForms.TButton.ButtonStyle();
|
|
||||||
RyzStudio.Windows.ThemedForms.TButton.ButtonStyle buttonStyle12 = new RyzStudio.Windows.ThemedForms.TButton.ButtonStyle();
|
|
||||||
RyzStudio.Windows.ThemedForms.TButton.ButtonStyle buttonStyle13 = new RyzStudio.Windows.ThemedForms.TButton.ButtonStyle();
|
|
||||||
RyzStudio.Windows.ThemedForms.TButton.ButtonStyle buttonStyle14 = new RyzStudio.Windows.ThemedForms.TButton.ButtonStyle();
|
|
||||||
RyzStudio.Windows.ThemedForms.TButton.ButtonStyle buttonStyle15 = new RyzStudio.Windows.ThemedForms.TButton.ButtonStyle();
|
|
||||||
this.textBox1 = new RyzStudio.Windows.ThemedForms.TTextBox();
|
this.textBox1 = new RyzStudio.Windows.ThemedForms.TTextBox();
|
||||||
this.label1 = new System.Windows.Forms.Label();
|
this.label1 = new System.Windows.Forms.Label();
|
||||||
this.button1 = new RyzStudio.Windows.ThemedForms.TButton();
|
this.button1 = new RyzStudio.Windows.ThemedForms.TButton();
|
||||||
this.horizontalSeparator2 = new RyzStudio.Windows.Forms.THorizontalSeparator();
|
this.horizontalSeparator2 = new RyzStudio.Windows.Forms.THorizontalSeparator();
|
||||||
this.tListBox1 = new RyzStudio.Windows.ThemedForms.TListBox();
|
this.listBox1 = new RyzStudio.Windows.ThemedForms.TListBox();
|
||||||
this.label2 = new System.Windows.Forms.Label();
|
this.label2 = new System.Windows.Forms.Label();
|
||||||
this.tButton1 = new RyzStudio.Windows.ThemedForms.TButton();
|
|
||||||
this.tButton2 = new RyzStudio.Windows.ThemedForms.TButton();
|
|
||||||
this.tButton3 = new RyzStudio.Windows.ThemedForms.TButton();
|
|
||||||
this.tButton4 = new RyzStudio.Windows.ThemedForms.TButton();
|
|
||||||
((System.ComponentModel.ISupportInitialize)(this.imgbxClose)).BeginInit();
|
((System.ComponentModel.ISupportInitialize)(this.imgbxClose)).BeginInit();
|
||||||
this.SuspendLayout();
|
this.SuspendLayout();
|
||||||
//
|
//
|
||||||
// imgbxClose
|
// imgbxClose
|
||||||
//
|
//
|
||||||
this.imgbxClose.Image = ((System.Drawing.Image)(resources.GetObject("imgbxClose.Image")));
|
this.imgbxClose.Image = ((System.Drawing.Image)(resources.GetObject("imgbxClose.Image")));
|
||||||
this.imgbxClose.Location = new System.Drawing.Point(367, 5);
|
this.imgbxClose.Location = new System.Drawing.Point(367, 5);
|
||||||
//
|
//
|
||||||
// lblDescription
|
// lblDescription
|
||||||
//
|
//
|
||||||
this.lblDescription.Size = new System.Drawing.Size(359, 30);
|
this.lblDescription.Size = new System.Drawing.Size(359, 30);
|
||||||
this.lblDescription.Text = "Edit List Tile";
|
this.lblDescription.Text = "Edit List Tile";
|
||||||
//
|
//
|
||||||
// panel1
|
// panel1
|
||||||
//
|
//
|
||||||
this.panel1.Location = new System.Drawing.Point(394, 474);
|
this.panel1.Location = new System.Drawing.Point(394, 474);
|
||||||
//
|
//
|
||||||
// area1
|
// area1
|
||||||
//
|
//
|
||||||
this.area1.Location = new System.Drawing.Point(1, 474);
|
this.area1.Location = new System.Drawing.Point(1, 474);
|
||||||
this.area1.Size = new System.Drawing.Size(392, 5);
|
this.area1.Size = new System.Drawing.Size(392, 5);
|
||||||
//
|
//
|
||||||
// textBox1
|
// textBox1
|
||||||
//
|
//
|
||||||
this.textBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
this.textBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||||
| System.Windows.Forms.AnchorStyles.Right)));
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
this.textBox1.BackColor = System.Drawing.Color.Transparent;
|
this.textBox1.BackColor = System.Drawing.Color.Transparent;
|
||||||
this.textBox1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F);
|
this.textBox1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F);
|
||||||
@ -100,9 +76,9 @@ namespace AppLauncher.Windows.Forms
|
|||||||
this.textBox1.SubmitButton = null;
|
this.textBox1.SubmitButton = null;
|
||||||
this.textBox1.TabIndex = 152;
|
this.textBox1.TabIndex = 152;
|
||||||
this.textBox1.UseSystemPasswordChar = false;
|
this.textBox1.UseSystemPasswordChar = false;
|
||||||
//
|
//
|
||||||
// label1
|
// label1
|
||||||
//
|
//
|
||||||
this.label1.BackColor = System.Drawing.Color.Transparent;
|
this.label1.BackColor = System.Drawing.Color.Transparent;
|
||||||
this.label1.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(95)))), ((int)(((byte)(99)))), ((int)(((byte)(104)))));
|
this.label1.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(95)))), ((int)(((byte)(99)))), ((int)(((byte)(104)))));
|
||||||
this.label1.Location = new System.Drawing.Point(18, 50);
|
this.label1.Location = new System.Drawing.Point(18, 50);
|
||||||
@ -112,9 +88,9 @@ namespace AppLauncher.Windows.Forms
|
|||||||
this.label1.TabIndex = 153;
|
this.label1.TabIndex = 153;
|
||||||
this.label1.Text = "Title";
|
this.label1.Text = "Title";
|
||||||
this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||||
//
|
//
|
||||||
// button1
|
// button1
|
||||||
//
|
//
|
||||||
this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
this.button1.BackColor = System.Drawing.Color.Transparent;
|
this.button1.BackColor = System.Drawing.Color.Transparent;
|
||||||
this.button1.DefaultImage = null;
|
this.button1.DefaultImage = null;
|
||||||
@ -139,33 +115,36 @@ namespace AppLauncher.Windows.Forms
|
|||||||
this.button1.StyleOver = buttonStyle3;
|
this.button1.StyleOver = buttonStyle3;
|
||||||
this.button1.TabIndex = 173;
|
this.button1.TabIndex = 173;
|
||||||
this.button1.Click += new System.EventHandler(this.button1_Click);
|
this.button1.Click += new System.EventHandler(this.button1_Click);
|
||||||
//
|
//
|
||||||
// horizontalSeparator2
|
// horizontalSeparator2
|
||||||
//
|
//
|
||||||
this.horizontalSeparator2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
this.horizontalSeparator2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||||
| System.Windows.Forms.AnchorStyles.Right)));
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
this.horizontalSeparator2.Location = new System.Drawing.Point(10, 92);
|
this.horizontalSeparator2.Location = new System.Drawing.Point(10, 92);
|
||||||
this.horizontalSeparator2.MaximumSize = new System.Drawing.Size(4920, 2);
|
this.horizontalSeparator2.MaximumSize = new System.Drawing.Size(4920, 2);
|
||||||
this.horizontalSeparator2.Name = "horizontalSeparator2";
|
this.horizontalSeparator2.Name = "horizontalSeparator2";
|
||||||
this.horizontalSeparator2.Size = new System.Drawing.Size(380, 2);
|
this.horizontalSeparator2.Size = new System.Drawing.Size(380, 2);
|
||||||
this.horizontalSeparator2.TabIndex = 177;
|
this.horizontalSeparator2.TabIndex = 177;
|
||||||
//
|
//
|
||||||
// tListBox1
|
// listBox1
|
||||||
//
|
//
|
||||||
this.tListBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
this.listBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Left)
|
||||||
| System.Windows.Forms.AnchorStyles.Right)));
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
this.tListBox1.BackColor = System.Drawing.Color.Transparent;
|
this.listBox1.BackColor = System.Drawing.Color.Transparent;
|
||||||
this.tListBox1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F);
|
this.listBox1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F);
|
||||||
this.tListBox1.Location = new System.Drawing.Point(159, 101);
|
this.listBox1.Location = new System.Drawing.Point(159, 101);
|
||||||
this.tListBox1.Margin = new System.Windows.Forms.Padding(10, 4, 10, 4);
|
this.listBox1.Margin = new System.Windows.Forms.Padding(10, 4, 10, 4);
|
||||||
this.tListBox1.Name = "tListBox1";
|
this.listBox1.Name = "listBox1";
|
||||||
this.tListBox1.Padding = new System.Windows.Forms.Padding(10, 6, 7, 5);
|
this.listBox1.Padding = new System.Windows.Forms.Padding(10, 6, 7, 5);
|
||||||
this.tListBox1.Size = new System.Drawing.Size(220, 180);
|
this.listBox1.Size = new System.Drawing.Size(220, 280);
|
||||||
this.tListBox1.SubmitButton = null;
|
this.listBox1.SubmitButton = null;
|
||||||
this.tListBox1.TabIndex = 180;
|
this.listBox1.TabIndex = 180;
|
||||||
//
|
this.listBox1.OnAdd += new System.EventHandler(this.listBox1_OnAdd);
|
||||||
|
this.listBox1.OnEdit += new System.EventHandler(this.listBox1_OnEdit);
|
||||||
|
//
|
||||||
// label2
|
// label2
|
||||||
//
|
//
|
||||||
this.label2.BackColor = System.Drawing.Color.Transparent;
|
this.label2.BackColor = System.Drawing.Color.Transparent;
|
||||||
this.label2.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(95)))), ((int)(((byte)(99)))), ((int)(((byte)(104)))));
|
this.label2.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(95)))), ((int)(((byte)(99)))), ((int)(((byte)(104)))));
|
||||||
this.label2.Location = new System.Drawing.Point(18, 104);
|
this.label2.Location = new System.Drawing.Point(18, 104);
|
||||||
@ -174,116 +153,12 @@ namespace AppLauncher.Windows.Forms
|
|||||||
this.label2.TabIndex = 181;
|
this.label2.TabIndex = 181;
|
||||||
this.label2.Text = "List";
|
this.label2.Text = "List";
|
||||||
this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||||
//
|
//
|
||||||
// tButton1
|
|
||||||
//
|
|
||||||
this.tButton1.BackColor = System.Drawing.Color.Transparent;
|
|
||||||
this.tButton1.DefaultImage = global::AppLauncher.Resource1.plus;
|
|
||||||
this.tButton1.DownImage = global::AppLauncher.Resource1.plus2;
|
|
||||||
this.tButton1.LabelText = "";
|
|
||||||
this.tButton1.Location = new System.Drawing.Point(159, 288);
|
|
||||||
this.tButton1.Name = "tButton1";
|
|
||||||
this.tButton1.OverImage = global::AppLauncher.Resource1.plus2;
|
|
||||||
this.tButton1.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3);
|
|
||||||
this.tButton1.Size = new System.Drawing.Size(32, 32);
|
|
||||||
buttonStyle4.BackColour = System.Drawing.Color.White;
|
|
||||||
buttonStyle4.ForeImage = null;
|
|
||||||
buttonStyle4.PenColour = System.Drawing.Color.Black;
|
|
||||||
this.tButton1.StyleDefault = buttonStyle4;
|
|
||||||
buttonStyle5.BackColour = System.Drawing.Color.FromArgb(((int)(((byte)(179)))), ((int)(((byte)(179)))), ((int)(((byte)(179)))));
|
|
||||||
buttonStyle5.ForeImage = null;
|
|
||||||
buttonStyle5.PenColour = System.Drawing.Color.Black;
|
|
||||||
this.tButton1.StyleDown = buttonStyle5;
|
|
||||||
buttonStyle6.BackColour = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(51)))), ((int)(((byte)(51)))));
|
|
||||||
buttonStyle6.ForeImage = null;
|
|
||||||
buttonStyle6.PenColour = System.Drawing.Color.White;
|
|
||||||
this.tButton1.StyleOver = buttonStyle6;
|
|
||||||
this.tButton1.TabIndex = 182;
|
|
||||||
//
|
|
||||||
// tButton2
|
|
||||||
//
|
|
||||||
this.tButton2.BackColor = System.Drawing.Color.Transparent;
|
|
||||||
this.tButton2.DefaultImage = null;
|
|
||||||
this.tButton2.DownImage = null;
|
|
||||||
this.tButton2.LabelText = "";
|
|
||||||
this.tButton2.Location = new System.Drawing.Point(197, 288);
|
|
||||||
this.tButton2.Name = "tButton2";
|
|
||||||
this.tButton2.OverImage = null;
|
|
||||||
this.tButton2.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3);
|
|
||||||
this.tButton2.Size = new System.Drawing.Size(32, 32);
|
|
||||||
buttonStyle7.BackColour = System.Drawing.Color.White;
|
|
||||||
buttonStyle7.ForeImage = null;
|
|
||||||
buttonStyle7.PenColour = System.Drawing.Color.Black;
|
|
||||||
this.tButton2.StyleDefault = buttonStyle7;
|
|
||||||
buttonStyle8.BackColour = System.Drawing.Color.FromArgb(((int)(((byte)(179)))), ((int)(((byte)(179)))), ((int)(((byte)(179)))));
|
|
||||||
buttonStyle8.ForeImage = null;
|
|
||||||
buttonStyle8.PenColour = System.Drawing.Color.Black;
|
|
||||||
this.tButton2.StyleDown = buttonStyle8;
|
|
||||||
buttonStyle9.BackColour = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(51)))), ((int)(((byte)(51)))));
|
|
||||||
buttonStyle9.ForeImage = null;
|
|
||||||
buttonStyle9.PenColour = System.Drawing.Color.White;
|
|
||||||
this.tButton2.StyleOver = buttonStyle9;
|
|
||||||
this.tButton2.TabIndex = 183;
|
|
||||||
//
|
|
||||||
// tButton3
|
|
||||||
//
|
|
||||||
this.tButton3.BackColor = System.Drawing.Color.Transparent;
|
|
||||||
this.tButton3.DefaultImage = null;
|
|
||||||
this.tButton3.DownImage = null;
|
|
||||||
this.tButton3.LabelText = "";
|
|
||||||
this.tButton3.Location = new System.Drawing.Point(235, 288);
|
|
||||||
this.tButton3.Name = "tButton3";
|
|
||||||
this.tButton3.OverImage = null;
|
|
||||||
this.tButton3.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3);
|
|
||||||
this.tButton3.Size = new System.Drawing.Size(32, 32);
|
|
||||||
buttonStyle10.BackColour = System.Drawing.Color.White;
|
|
||||||
buttonStyle10.ForeImage = null;
|
|
||||||
buttonStyle10.PenColour = System.Drawing.Color.Black;
|
|
||||||
this.tButton3.StyleDefault = buttonStyle10;
|
|
||||||
buttonStyle11.BackColour = System.Drawing.Color.FromArgb(((int)(((byte)(179)))), ((int)(((byte)(179)))), ((int)(((byte)(179)))));
|
|
||||||
buttonStyle11.ForeImage = null;
|
|
||||||
buttonStyle11.PenColour = System.Drawing.Color.Black;
|
|
||||||
this.tButton3.StyleDown = buttonStyle11;
|
|
||||||
buttonStyle12.BackColour = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(51)))), ((int)(((byte)(51)))));
|
|
||||||
buttonStyle12.ForeImage = null;
|
|
||||||
buttonStyle12.PenColour = System.Drawing.Color.White;
|
|
||||||
this.tButton3.StyleOver = buttonStyle12;
|
|
||||||
this.tButton3.TabIndex = 184;
|
|
||||||
//
|
|
||||||
// tButton4
|
|
||||||
//
|
|
||||||
this.tButton4.BackColor = System.Drawing.Color.Transparent;
|
|
||||||
this.tButton4.DefaultImage = null;
|
|
||||||
this.tButton4.DownImage = null;
|
|
||||||
this.tButton4.LabelText = "";
|
|
||||||
this.tButton4.Location = new System.Drawing.Point(273, 288);
|
|
||||||
this.tButton4.Name = "tButton4";
|
|
||||||
this.tButton4.OverImage = null;
|
|
||||||
this.tButton4.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3);
|
|
||||||
this.tButton4.Size = new System.Drawing.Size(32, 32);
|
|
||||||
buttonStyle13.BackColour = System.Drawing.Color.White;
|
|
||||||
buttonStyle13.ForeImage = null;
|
|
||||||
buttonStyle13.PenColour = System.Drawing.Color.Black;
|
|
||||||
this.tButton4.StyleDefault = buttonStyle13;
|
|
||||||
buttonStyle14.BackColour = System.Drawing.Color.FromArgb(((int)(((byte)(179)))), ((int)(((byte)(179)))), ((int)(((byte)(179)))));
|
|
||||||
buttonStyle14.ForeImage = null;
|
|
||||||
buttonStyle14.PenColour = System.Drawing.Color.Black;
|
|
||||||
this.tButton4.StyleDown = buttonStyle14;
|
|
||||||
buttonStyle15.BackColour = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(51)))), ((int)(((byte)(51)))));
|
|
||||||
buttonStyle15.ForeImage = null;
|
|
||||||
buttonStyle15.PenColour = System.Drawing.Color.White;
|
|
||||||
this.tButton4.StyleOver = buttonStyle15;
|
|
||||||
this.tButton4.TabIndex = 185;
|
|
||||||
//
|
|
||||||
// EditListTileForm
|
// EditListTileForm
|
||||||
//
|
//
|
||||||
this.ClientSize = new System.Drawing.Size(400, 480);
|
this.ClientSize = new System.Drawing.Size(400, 480);
|
||||||
this.Controls.Add(this.tButton4);
|
|
||||||
this.Controls.Add(this.tButton3);
|
|
||||||
this.Controls.Add(this.tButton2);
|
|
||||||
this.Controls.Add(this.tButton1);
|
|
||||||
this.Controls.Add(this.label2);
|
this.Controls.Add(this.label2);
|
||||||
this.Controls.Add(this.tListBox1);
|
this.Controls.Add(this.listBox1);
|
||||||
this.Controls.Add(this.horizontalSeparator2);
|
this.Controls.Add(this.horizontalSeparator2);
|
||||||
this.Controls.Add(this.button1);
|
this.Controls.Add(this.button1);
|
||||||
this.Controls.Add(this.label1);
|
this.Controls.Add(this.label1);
|
||||||
@ -298,12 +173,8 @@ namespace AppLauncher.Windows.Forms
|
|||||||
this.Controls.SetChildIndex(this.label1, 0);
|
this.Controls.SetChildIndex(this.label1, 0);
|
||||||
this.Controls.SetChildIndex(this.button1, 0);
|
this.Controls.SetChildIndex(this.button1, 0);
|
||||||
this.Controls.SetChildIndex(this.horizontalSeparator2, 0);
|
this.Controls.SetChildIndex(this.horizontalSeparator2, 0);
|
||||||
this.Controls.SetChildIndex(this.tListBox1, 0);
|
this.Controls.SetChildIndex(this.listBox1, 0);
|
||||||
this.Controls.SetChildIndex(this.label2, 0);
|
this.Controls.SetChildIndex(this.label2, 0);
|
||||||
this.Controls.SetChildIndex(this.tButton1, 0);
|
|
||||||
this.Controls.SetChildIndex(this.tButton2, 0);
|
|
||||||
this.Controls.SetChildIndex(this.tButton3, 0);
|
|
||||||
this.Controls.SetChildIndex(this.tButton4, 0);
|
|
||||||
((System.ComponentModel.ISupportInitialize)(this.imgbxClose)).EndInit();
|
((System.ComponentModel.ISupportInitialize)(this.imgbxClose)).EndInit();
|
||||||
this.ResumeLayout(false);
|
this.ResumeLayout(false);
|
||||||
|
|
||||||
@ -313,9 +184,24 @@ namespace AppLauncher.Windows.Forms
|
|||||||
{
|
{
|
||||||
base.OnShown(e);
|
base.OnShown(e);
|
||||||
|
|
||||||
if (parentPanel != null)
|
listBox1.ListBox.Items.Clear();
|
||||||
|
|
||||||
|
if (this.TilePanel == null) return;
|
||||||
|
if (this.TilePanel.ModelInfo == null) return;
|
||||||
|
|
||||||
|
textBox1.Text = this.TilePanel.ModelInfo.Title;
|
||||||
|
|
||||||
|
if (this.TilePanel.ModelInfo.Items != null)
|
||||||
{
|
{
|
||||||
textBox1.Text = parentPanel.ModelInfo.Title;
|
foreach (TileModel item in this.TilePanel.ModelInfo.Items)
|
||||||
|
{
|
||||||
|
if (item.IsGroup)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
listBox1.ListBox.Items.Add(item);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -327,10 +213,34 @@ namespace AppLauncher.Windows.Forms
|
|||||||
IsGroup = true
|
IsGroup = true
|
||||||
};
|
};
|
||||||
|
|
||||||
parentPanel.LoadInfo(model);
|
model.Items = new System.Collections.Generic.List<TileModel>();
|
||||||
|
|
||||||
|
foreach (TileModel item in listBox1.ListBox.Items.OfType<TileModel>())
|
||||||
|
{
|
||||||
|
if (item.IsGroup)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
model.Items.Add(item);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.TilePanel.LoadInfo(model);
|
||||||
|
|
||||||
this.Close();
|
this.Close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void listBox1_OnAdd(object sender, EventArgs e) => AddTileForm.ShowDialog(listBox1);
|
||||||
|
|
||||||
|
private void listBox1_OnEdit(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if (listBox1.ListBox.Items.Count <= 0)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
EditTileForm.ShowDialog(listBox1);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,15 +1,22 @@
|
|||||||
using AppLauncher.Models;
|
using AppLauncher.Models;
|
||||||
using RyzStudio.Windows.ThemedForms;
|
using RyzStudio.Windows.ThemedForms;
|
||||||
using System;
|
using System;
|
||||||
using System.IO;
|
|
||||||
|
|
||||||
namespace AppLauncher.Windows.Forms
|
namespace AppLauncher.Windows.Forms
|
||||||
{
|
{
|
||||||
public class EditTileForm : TDialogForm
|
public class EditTileForm : TDialogForm
|
||||||
{
|
{
|
||||||
public static void ShowDialog(TTilePanel panel)
|
public static void ShowDialog(TTilePanel control)
|
||||||
{
|
{
|
||||||
EditTileForm form = new EditTileForm(panel);
|
EditTileForm form = new EditTileForm();
|
||||||
|
form.TilePanel = control;
|
||||||
|
form.ShowDialog();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void ShowDialog(TListBox control)
|
||||||
|
{
|
||||||
|
EditTileForm form = new EditTileForm();
|
||||||
|
form.ListBox = control;
|
||||||
form.ShowDialog();
|
form.ShowDialog();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -28,20 +35,21 @@ namespace AppLauncher.Windows.Forms
|
|||||||
private RyzStudio.Windows.Forms.THorizontalSeparator horizontalSeparator1;
|
private RyzStudio.Windows.Forms.THorizontalSeparator horizontalSeparator1;
|
||||||
private RyzStudio.Windows.Forms.THorizontalSeparator horizontalSeparator2;
|
private RyzStudio.Windows.Forms.THorizontalSeparator horizontalSeparator2;
|
||||||
private TTextBox textBox1;
|
private TTextBox textBox1;
|
||||||
protected TTilePanel parentPanel = null;
|
|
||||||
|
public TTilePanel TilePanel { get; set; } = null;
|
||||||
|
public TListBox ListBox { get; set; } = null;
|
||||||
|
|
||||||
public EditTileForm() : base()
|
public EditTileForm() : base()
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
initialiseComponents2();
|
|
||||||
}
|
|
||||||
|
|
||||||
public EditTileForm(TTilePanel panel) : base()
|
pickerBox1.ComboBox.Items.Clear();
|
||||||
{
|
pickerBox1.ComboBox.Items.AddRange(new string[] { "Normal", "Hidden", "Minimized", "Maximized" });
|
||||||
parentPanel = panel;
|
if (pickerBox1.ComboBox.Items.Count > 0) pickerBox1.ComboBox.SelectedIndex = 0;
|
||||||
|
|
||||||
InitializeComponent();
|
pickerBox2.ComboBox.Items.Clear();
|
||||||
initialiseComponents2();
|
pickerBox2.ComboBox.Items.AddRange(new string[] { "No", "Yes" });
|
||||||
|
if (pickerBox2.ComboBox.Items.Count > 0) pickerBox2.ComboBox.SelectedIndex = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void InitializeComponent()
|
private void InitializeComponent()
|
||||||
@ -339,36 +347,52 @@ namespace AppLauncher.Windows.Forms
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initialiseComponents2()
|
|
||||||
{
|
|
||||||
pickerBox1.ComboBox.Items.Clear();
|
|
||||||
pickerBox1.ComboBox.Items.AddRange(new string[] { "Normal", "Hidden", "Minimized", "Maximized" });
|
|
||||||
if (pickerBox1.ComboBox.Items.Count > 0) pickerBox1.ComboBox.SelectedIndex = 0;
|
|
||||||
|
|
||||||
pickerBox2.ComboBox.Items.Clear();
|
|
||||||
pickerBox2.ComboBox.Items.AddRange(new string[] { "No", "Yes" });
|
|
||||||
if (pickerBox2.ComboBox.Items.Count > 0) pickerBox2.ComboBox.SelectedIndex = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void OnShown(EventArgs e)
|
protected override void OnShown(EventArgs e)
|
||||||
{
|
{
|
||||||
base.OnShown(e);
|
base.OnShown(e);
|
||||||
|
|
||||||
if (parentPanel != null)
|
if (this.TilePanel != null)
|
||||||
{
|
{
|
||||||
textBox1.Text = parentPanel.ModelInfo.Title;
|
updateModel(this.TilePanel.ModelInfo);
|
||||||
textBox2.Text = parentPanel.ModelInfo.ProcessFilename;
|
}
|
||||||
textBox3.Text = parentPanel.ModelInfo.ProcessArgument;
|
else if (this.ListBox != null)
|
||||||
textBox4.Text = parentPanel.ModelInfo.ProcessWorkingDirectory;
|
{
|
||||||
pickerBox1.ComboBox.SelectedIndex = (int)parentPanel.ModelInfo.ProcessWindowStyle;
|
if (this.ListBox.ListBox.SelectedItem != null)
|
||||||
pickerBox2.ComboBox.SelectedIndex = (parentPanel.ModelInfo.ProcessAsAdmin ? 1 : 0);
|
{
|
||||||
|
TileModel model = (this.ListBox.ListBox.SelectedItem as TileModel);
|
||||||
|
if (model != null)
|
||||||
|
{
|
||||||
|
updateModel(model);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void button1_Click(object sender, EventArgs e)
|
private void button1_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
TileModel model = new TileModel()
|
TileModel model = buildModel();
|
||||||
|
|
||||||
|
if (this.TilePanel != null)
|
||||||
|
{
|
||||||
|
this.TilePanel.LoadInfo(model);
|
||||||
|
}
|
||||||
|
else if (this.ListBox != null)
|
||||||
|
{
|
||||||
|
int n = this.ListBox.ListBox.SelectedIndex;
|
||||||
|
if (n >= 0)
|
||||||
|
{
|
||||||
|
this.ListBox.ListBox.Items.RemoveAt(n);
|
||||||
|
this.ListBox.ListBox.Items.Insert(n, model);
|
||||||
|
this.ListBox.ListBox.SelectedIndex = n;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.Close();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected TileModel buildModel()
|
||||||
|
{
|
||||||
|
return new TileModel()
|
||||||
{
|
{
|
||||||
Title = textBox1.Text?.Trim(),
|
Title = textBox1.Text?.Trim(),
|
||||||
ProcessFilename = textBox2.Text?.Trim(),
|
ProcessFilename = textBox2.Text?.Trim(),
|
||||||
@ -377,18 +401,22 @@ namespace AppLauncher.Windows.Forms
|
|||||||
ProcessWindowStyle = (System.Diagnostics.ProcessWindowStyle)pickerBox1.ComboBox.SelectedIndex,
|
ProcessWindowStyle = (System.Diagnostics.ProcessWindowStyle)pickerBox1.ComboBox.SelectedIndex,
|
||||||
ProcessAsAdmin = (pickerBox2.ComboBox.SelectedIndex == 1)
|
ProcessAsAdmin = (pickerBox2.ComboBox.SelectedIndex == 1)
|
||||||
};
|
};
|
||||||
|
}
|
||||||
|
|
||||||
parentPanel.LoadInfo(model);
|
protected void updateModel(TileModel model)
|
||||||
|
{
|
||||||
|
if (model == null)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
//parentPanel.Info.Title = textBox1.Text?.Trim();
|
textBox1.Text = model.Title;
|
||||||
//parentPanel.Info.ProcessFilename = textBox2.Text?.Trim();
|
textBox2.Text = model.ProcessFilename;
|
||||||
//parentPanel.Info.ProcessArgument = textBox3.Text?.Trim();
|
textBox3.Text = model.ProcessArgument;
|
||||||
//parentPanel.Info.ProcessWorkingDirectory = textBox4.Text?.Trim();
|
textBox4.Text = model.ProcessWorkingDirectory;
|
||||||
//parentPanel.Info.ProcessWindowStyle = (System.Diagnostics.ProcessWindowStyle) pickerBox1.ComboBox.SelectedIndex;
|
pickerBox1.ComboBox.SelectedIndex = (int)model.ProcessWindowStyle;
|
||||||
//parentPanel.Info.ProcessAsAdmin = (pickerBox2.ComboBox.SelectedIndex == 1);
|
pickerBox2.ComboBox.SelectedIndex = (model.ProcessAsAdmin ? 1 : 0);
|
||||||
|
|
||||||
this.Close();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -13,6 +13,7 @@ namespace AppLauncher.Windows.Forms
|
|||||||
protected bool isDragging = false;
|
protected bool isDragging = false;
|
||||||
protected Point startPosition = new Point();
|
protected Point startPosition = new Point();
|
||||||
|
|
||||||
|
protected ContextMenuStrip groupContextMenu = null;
|
||||||
protected TileModel modelInfo = new TileModel();
|
protected TileModel modelInfo = new TileModel();
|
||||||
|
|
||||||
public TTilePanel() : base()
|
public TTilePanel() : base()
|
||||||
@ -77,30 +78,18 @@ namespace AppLauncher.Windows.Forms
|
|||||||
{
|
{
|
||||||
this.modelInfo = model;
|
this.modelInfo = model;
|
||||||
|
|
||||||
|
this.Image = null;
|
||||||
this.Title = model.Title;
|
this.Title = model.Title;
|
||||||
|
|
||||||
if (this.modelInfo.IsGroup)
|
if (this.modelInfo.IsGroup)
|
||||||
{
|
{
|
||||||
this.Image = Properties.Resources.folder_32;
|
this.Image = Properties.Resources.folder_32;
|
||||||
|
|
||||||
|
invalidateGroupMenu(this.modelInfo);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
this.Image = model.Icon;
|
this.Image = getIcon(model);
|
||||||
|
|
||||||
if (this.Image == null)
|
|
||||||
{
|
|
||||||
if (File.Exists(model.ProcessFilename))
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
this.Image = Icon.ExtractAssociatedIcon(model.ProcessFilename)?.ToBitmap();
|
|
||||||
}
|
|
||||||
catch
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
toolTip1.SetToolTip(this, this.Title);
|
toolTip1.SetToolTip(this, this.Title);
|
||||||
@ -116,15 +105,13 @@ namespace AppLauncher.Windows.Forms
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (e.Button != MouseButtons.Right)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.BringToFront();
|
this.BringToFront();
|
||||||
|
|
||||||
isDragging = true;
|
if (((e.Button == MouseButtons.Left) && (Control.ModifierKeys == Keys.Control)) || (e.Button == MouseButtons.Right))
|
||||||
startPosition = e.Location;
|
{
|
||||||
|
isDragging = true;
|
||||||
|
startPosition = e.Location;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void panel_MouseUp(object sender, MouseEventArgs e)
|
private void panel_MouseUp(object sender, MouseEventArgs e)
|
||||||
@ -151,67 +138,32 @@ namespace AppLauncher.Windows.Forms
|
|||||||
|
|
||||||
private void panel_MouseClick(object sender, MouseEventArgs e)
|
private void panel_MouseClick(object sender, MouseEventArgs e)
|
||||||
{
|
{
|
||||||
if (e.Button != MouseButtons.Left)
|
if (Control.ModifierKeys == Keys.Control) return;
|
||||||
{
|
if (this.ModelInfo == null) return;
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.ModelInfo == null)
|
if (e.Button == MouseButtons.Left)
|
||||||
{
|
{
|
||||||
return;
|
if (this.ModelInfo.IsGroup)
|
||||||
}
|
{
|
||||||
|
if (groupContextMenu != null)
|
||||||
if (this.ModelInfo.IsGroup)
|
{
|
||||||
{
|
groupContextMenu.Show(this, e.Location);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
panel_MouseDoubleClick(sender, e);
|
panel_MouseDoubleClick(sender, e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void panel_MouseDoubleClick(object sender, MouseEventArgs e)
|
private void panel_MouseDoubleClick(object sender, MouseEventArgs e)
|
||||||
{
|
{
|
||||||
if (e.Button != MouseButtons.Left)
|
if (Control.ModifierKeys == Keys.Control) return;
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.ModelInfo == null)
|
if (e.Button == MouseButtons.Left)
|
||||||
{
|
{
|
||||||
return;
|
execute(this.ModelInfo);
|
||||||
}
|
|
||||||
|
|
||||||
if (this.ModelInfo.IsGroup)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (string.IsNullOrWhiteSpace(this.ModelInfo.ProcessFilename))
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!File.Exists(this.ModelInfo.ProcessFilename))
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
ProcessStartInfo p = new ProcessStartInfo();
|
|
||||||
p.FileName = this.ModelInfo.ProcessFilename;
|
|
||||||
p.WindowStyle = this.ModelInfo.ProcessWindowStyle;
|
|
||||||
if (!string.IsNullOrWhiteSpace(this.ModelInfo.ProcessArgument)) p.Arguments = this.ModelInfo.ProcessArgument;
|
|
||||||
if (!string.IsNullOrWhiteSpace(this.ModelInfo.ProcessWorkingDirectory)) p.WorkingDirectory = this.ModelInfo.ProcessWorkingDirectory;
|
|
||||||
if (this.ModelInfo.ProcessAsAdmin) p.Verb = "runas";
|
|
||||||
|
|
||||||
try
|
|
||||||
{
|
|
||||||
Process.Start(p);
|
|
||||||
}
|
|
||||||
catch (Exception exc)
|
|
||||||
{
|
|
||||||
MessageBox.Show(exc.Message);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -237,5 +189,105 @@ namespace AppLauncher.Windows.Forms
|
|||||||
this.PanelContainer.Remove(this);
|
this.PanelContainer.Remove(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected void execute(TileModel model)
|
||||||
|
{
|
||||||
|
if (model == null)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (model.IsGroup)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (string.IsNullOrWhiteSpace(model.ProcessFilename))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!File.Exists(model.ProcessFilename))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
ProcessStartInfo p = new ProcessStartInfo();
|
||||||
|
p.FileName = model.ProcessFilename;
|
||||||
|
p.WindowStyle = model.ProcessWindowStyle;
|
||||||
|
if (!string.IsNullOrWhiteSpace(model.ProcessArgument)) p.Arguments = model.ProcessArgument;
|
||||||
|
if (!string.IsNullOrWhiteSpace(model.ProcessWorkingDirectory)) p.WorkingDirectory = model.ProcessWorkingDirectory;
|
||||||
|
if (model.ProcessAsAdmin) p.Verb = "runas";
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
Process.Start(p);
|
||||||
|
}
|
||||||
|
catch (Exception exc)
|
||||||
|
{
|
||||||
|
MessageBox.Show(exc.Message);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
protected Image getIcon(TileModel model)
|
||||||
|
{
|
||||||
|
if (!File.Exists(model.ProcessFilename))
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
return Icon.ExtractAssociatedIcon(model.ProcessFilename)?.ToBitmap();
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
{
|
||||||
|
// do nothing
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void invalidateGroupMenu(TileModel model)
|
||||||
|
{
|
||||||
|
if (groupContextMenu == null) groupContextMenu = new ContextMenuStrip();
|
||||||
|
groupContextMenu.Items.Clear();
|
||||||
|
|
||||||
|
if (model.Items == null)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach (TileModel item in model.Items)
|
||||||
|
{
|
||||||
|
ToolStripItem toolItem = groupContextMenu.Items.Add(item.Title);
|
||||||
|
toolItem.Image = getIcon(item);
|
||||||
|
toolItem.Tag = item;
|
||||||
|
toolItem.Click += toolItem_Click;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void toolItem_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if (sender.GetType() != typeof(ToolStripMenuItem))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
ToolStripMenuItem item = (sender as ToolStripMenuItem);
|
||||||
|
if (item.Tag == null)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (item.Tag.GetType() != typeof(TileModel))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
TileModel model = (item.Tag as TileModel);
|
||||||
|
execute(model);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -35,6 +35,7 @@ namespace AppLauncher.Windows.Forms
|
|||||||
|
|
||||||
protected bool isAnimating = false;
|
protected bool isAnimating = false;
|
||||||
protected bool isChecked = true;
|
protected bool isChecked = true;
|
||||||
|
protected Point lastMousePosition = new Point();
|
||||||
|
|
||||||
public TTilePanelLayout(TileGroupModel model) : base()
|
public TTilePanelLayout(TileGroupModel model) : base()
|
||||||
{
|
{
|
||||||
@ -139,6 +140,8 @@ namespace AppLauncher.Windows.Forms
|
|||||||
{
|
{
|
||||||
base.OnMouseClick(e);
|
base.OnMouseClick(e);
|
||||||
|
|
||||||
|
lastMousePosition = e.Location;
|
||||||
|
|
||||||
bool isLabel = ((e.Location.X >= 0) && (e.Location.X <= this.Width) && (e.Location.Y >= 0) && (e.Location.Y <= 20));
|
bool isLabel = ((e.Location.X >= 0) && (e.Location.X <= this.Width) && (e.Location.Y >= 0) && (e.Location.Y <= 20));
|
||||||
|
|
||||||
if (e.Button == MouseButtons.Left)
|
if (e.Button == MouseButtons.Left)
|
||||||
@ -248,7 +251,12 @@ namespace AppLauncher.Windows.Forms
|
|||||||
this.SetGridSize(gridSize.X, (gridSize.Y + 1));
|
this.SetGridSize(gridSize.X, (gridSize.Y + 1));
|
||||||
}
|
}
|
||||||
|
|
||||||
Point? newCoord = findLastFreeCoord();
|
Point? newCoord = tile.Position;
|
||||||
|
if ((newCoord == null) || hasTile(tile.Position))
|
||||||
|
{
|
||||||
|
newCoord = findLastFreeCoord();
|
||||||
|
}
|
||||||
|
|
||||||
if (newCoord == null)
|
if (newCoord == null)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
@ -385,11 +393,7 @@ namespace AppLauncher.Windows.Forms
|
|||||||
this.SetGridSize(groupInfo.GridSize.Width, (groupInfo.GridSize.Height + 1));
|
this.SetGridSize(groupInfo.GridSize.Width, (groupInfo.GridSize.Height + 1));
|
||||||
}
|
}
|
||||||
|
|
||||||
public void EditGroup()
|
public void EditGroup() => EditGroupForm.ShowDialog(this);
|
||||||
{
|
|
||||||
EditGroupForm editForm = new EditGroupForm(this);
|
|
||||||
editForm.ShowDialog();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void LoadModel(TileGroupModel model)
|
public void LoadModel(TileGroupModel model)
|
||||||
{
|
{
|
||||||
@ -457,7 +461,7 @@ namespace AppLauncher.Windows.Forms
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
Point newPosition = convertLocationToCoord(posX, posY);
|
Point newPosition = convertLocationToCoord_Nearest(posX, posY);
|
||||||
if (!isTileInBounds(newPosition))
|
if (!isTileInBounds(newPosition))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
@ -565,6 +569,20 @@ namespace AppLauncher.Windows.Forms
|
|||||||
protected Point convertCoordToLocation(Point position) => new Point((position.X * this.TileSize), ((position.Y * this.TileSize) + labelHeight));
|
protected Point convertCoordToLocation(Point position) => new Point((position.X * this.TileSize), ((position.Y * this.TileSize) + labelHeight));
|
||||||
|
|
||||||
protected Point convertLocationToCoord(int posX, int posY)
|
protected Point convertLocationToCoord(int posX, int posY)
|
||||||
|
{
|
||||||
|
int x = (int)Math.Ceiling(decimal.Divide(posX, this.TileSize));
|
||||||
|
int y = (int)Math.Ceiling(decimal.Divide((posY - labelHeight), this.TileSize));
|
||||||
|
|
||||||
|
x--;
|
||||||
|
y--;
|
||||||
|
|
||||||
|
if (x < 0) x = 0;
|
||||||
|
if (y < 0) y = 0;
|
||||||
|
|
||||||
|
return new Point(x, y);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected Point convertLocationToCoord_Nearest(int posX, int posY)
|
||||||
{
|
{
|
||||||
int x = (int)Math.Round(decimal.Divide(posX, this.TileSize));
|
int x = (int)Math.Round(decimal.Divide(posX, this.TileSize));
|
||||||
int y = (int)Math.Round(decimal.Divide((posY - labelHeight), this.TileSize));
|
int y = (int)Math.Round(decimal.Divide((posY - labelHeight), this.TileSize));
|
||||||
@ -715,7 +733,12 @@ namespace AppLauncher.Windows.Forms
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void addTileMenuItem_Click(object sender, EventArgs e) => AddTileForm.ShowDialog(this);
|
private void addTileMenuItem_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
Point coord = convertLocationToCoord(lastMousePosition.X, lastMousePosition.Y);
|
||||||
|
|
||||||
|
AddTileForm.ShowDialog(this, coord);
|
||||||
|
}
|
||||||
|
|
||||||
private void addListTileMenuItem_Click(object sender, EventArgs e) => AddListTileForm.ShowDialog(this);
|
private void addListTileMenuItem_Click(object sender, EventArgs e) => AddListTileForm.ShowDialog(this);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user