diff options
| author | Michael VanOverbeek <[email protected]> | 2017-06-19 22:45:53 +0000 |
|---|---|---|
| committer | GitHub <[email protected]> | 2017-06-19 22:45:53 +0000 |
| commit | f667cfbc9e57d8fe203679369d622a9678e7699e (patch) | |
| tree | 0563623264f3b9e4da0698ea0ae0759b32133d9e /ShiftOS.WinForms/Applications/TriSheet.cs | |
| parent | df37f3c366fe5884b17fa0b66d154536f8df93d2 (diff) | |
| parent | b4b19e7a4d203b58537f5b98214296ab52c49b2d (diff) | |
| download | shiftos_thereturn-f667cfbc9e57d8fe203679369d622a9678e7699e.tar.gz shiftos_thereturn-f667cfbc9e57d8fe203679369d622a9678e7699e.tar.bz2 shiftos_thereturn-f667cfbc9e57d8fe203679369d622a9678e7699e.zip | |
Merge pull request #133 from ComputeLinux/master
Add TriSheet basics
Diffstat (limited to 'ShiftOS.WinForms/Applications/TriSheet.cs')
| -rw-r--r-- | ShiftOS.WinForms/Applications/TriSheet.cs | 120 |
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); + } } } |
