aboutsummaryrefslogtreecommitdiff
path: root/ShiftOS.WinForms/Applications/TriSheet.cs
diff options
context:
space:
mode:
Diffstat (limited to 'ShiftOS.WinForms/Applications/TriSheet.cs')
-rw-r--r--ShiftOS.WinForms/Applications/TriSheet.cs120
1 files changed, 119 insertions, 1 deletions
diff --git a/ShiftOS.WinForms/Applications/TriSheet.cs b/ShiftOS.WinForms/Applications/TriSheet.cs
index 18b09b3..48c60ed 100644
--- a/ShiftOS.WinForms/Applications/TriSheet.cs
+++ b/ShiftOS.WinForms/Applications/TriSheet.cs
@@ -9,14 +9,132 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
+using ShiftOS.Engine;
+using ShiftOS.Objects.ShiftFS;
namespace ShiftOS.WinForms.Applications
{
- public partial class TriSheet : UserControl
+ [WinOpen("trisheet")]
+ [AppscapeEntry("TriSheet", "Part of the trilogy of office applications for enhancement of your system. TriSheet is easliy the best spreadsheet program out there for ShiftOS.", 1024, 750, "file_skimmer;textpad", "Office")]
+ [DefaultTitle("TriSheet")]
+ [Launcher("TriSheet", false, null, "Office")]
+ public partial class TriSheet : UserControl, IShiftOSWindow
{
public TriSheet()
{
InitializeComponent();
}
+ public void OnLoad()
+ {
+ UpdateUI();
+ }
+
+ public void OnSkinLoad()
+ {
+ ResetFonts();
+ }
+
+ public void ResetFonts()
+ {
+ fonts.Items.Clear();
+ foreach (var font in FontFamily.Families)
+ {
+ fonts.Items.Add(font.Name);
+ }
+ UpdateUI();
+ }
+
+ public bool OnUnload()
+ {
+ return true;
+ }
+
+ public void OnUpgrade()
+ {
+ }
+
+ public void UpdateUI()
+ {
+ try
+ {
+ bold.Checked = dataGridView1.CurrentCell.Style.Font.Bold;
+ italic.Checked = dataGridView1.CurrentCell.Style.Font.Italic;
+ underline.Checked = dataGridView1.CurrentCell.Style.Font.Underline;
+ strikethrough.Checked = dataGridView1.CurrentCell.Style.Font.Strikeout;
+ left.Checked = dataGridView1.CurrentCell.Style.Alignment == DataGridViewContentAlignment.TopLeft;
+ center.Checked = dataGridView1.CurrentCell.Style.Alignment == DataGridViewContentAlignment.TopCenter;
+ right.Checked = dataGridView1.CurrentCell.Style.Alignment == DataGridViewContentAlignment.TopRight;
+ }
+ catch
+ {
+ bold.Checked = false;
+ italic.Checked = false;
+ underline.Checked = false;
+ strikethrough.Checked = false;
+ left.Checked = false;
+ center.Checked = false;
+ right.Checked = false;
+ }
+ }
+
+ public void SetFontStyle(bool bold, bool italic, bool underline, bool strikethrough)
+ {
+ FontStyle fs = FontStyle.Regular;
+ if (bold)
+ fs |= FontStyle.Bold;
+ if (italic)
+ fs |= FontStyle.Italic;
+ if (underline)
+ fs |= FontStyle.Underline;
+ if (strikethrough)
+ fs |= FontStyle.Strikeout;
+ dataGridView1.CurrentCell.Style.Font = new Font(dataGridView1.CurrentCell.Style.Font, fs);
+ UpdateUI();
+ }
+
+ private void left_Click(object sender, EventArgs e)
+ {
+ dataGridView1.CurrentCell.Style.Alignment = DataGridViewContentAlignment.TopLeft;
+ }
+
+ private void center_Click(object sender, EventArgs e)
+ {
+ dataGridView1.CurrentCell.Style.Alignment = DataGridViewContentAlignment.TopCenter;
+ }
+
+ private void right_Click(object sender, EventArgs e)
+ {
+ dataGridView1.CurrentCell.Style.Alignment = DataGridViewContentAlignment.TopRight;
+ }
+
+ private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
+ {
+ UpdateUI();
+ }
+
+ private void dataGridView1_SelectionChanged(object sender, EventArgs e)
+ {
+ UpdateUI();
+ }
+
+ private void bold_Click(object sender, EventArgs e)
+ {
+ SetFontStyle(true, false, false, false);
+ }
+
+ private void italic_Click(object sender, EventArgs e)
+ {
+ SetFontStyle(false, true, false, false);
+ }
+
+ private void strikethrough_Click(object sender, EventArgs e)
+ {
+ SetFontStyle(false, false, false, true);
+ }
+
+ private void underline_Click(object sender, EventArgs e)
+ {
+ SetFontStyle(false, false, true, false);
+ }
}
}