Compare commits
28 Commits
Author | SHA1 | Date | |
---|---|---|---|
6a8ff0eb50 | |||
011c24b94b | |||
6fbe668284 | |||
5fc69e9992 | |||
f2b01d4a27 | |||
5164060ffc | |||
68bce8e14e | |||
6fb5a1f773 | |||
2a940c8933 | |||
0aeec8bd19 | |||
d24143d1a6 | |||
03ef799381 | |||
647e5f5601 | |||
|
c5e440ee44 | ||
|
34bec25b3d | ||
|
b1acbdd98f | ||
|
6d5f90aaac | ||
72ad6e5be0 | |||
9d1ca65f34 | |||
|
dd3f4f4b4b | ||
|
8889b846dc | ||
|
fe0e1dabfd | ||
|
e0786bdb07 | ||
4fa818f35e | |||
11b268a350 | |||
703e8d91ef | |||
de8aa295da | |||
|
232b543a35 |
@@ -3,4 +3,12 @@
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
|
||||
</startup>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
12
McBitFont/Export.Designer.cs
generated
@@ -23,6 +23,7 @@
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent() {
|
||||
this.components = new System.ComponentModel.Container();
|
||||
this.txtOutput = new System.Windows.Forms.RichTextBox();
|
||||
this.gbScan = new System.Windows.Forms.GroupBox();
|
||||
this.cbVDir = new System.Windows.Forms.ComboBox();
|
||||
@@ -43,6 +44,7 @@
|
||||
this.cbFormat = new System.Windows.Forms.ComboBox();
|
||||
this.btnGenerate = new System.Windows.Forms.Button();
|
||||
this.btnClose = new System.Windows.Forms.Button();
|
||||
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
|
||||
this.gbScan.SuspendLayout();
|
||||
this.gbOptions.SuspendLayout();
|
||||
this.gbNumbers.SuspendLayout();
|
||||
@@ -138,6 +140,7 @@
|
||||
this.cbZeroes.Size = new System.Drawing.Size(98, 17);
|
||||
this.cbZeroes.TabIndex = 2;
|
||||
this.cbZeroes.Text = "Leading zeroes";
|
||||
this.toolTip1.SetToolTip(this.cbZeroes, "Add leading zeroes: 0x01 / 0x1");
|
||||
this.cbZeroes.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// cbHeader
|
||||
@@ -150,6 +153,7 @@
|
||||
this.cbHeader.Size = new System.Drawing.Size(86, 17);
|
||||
this.cbHeader.TabIndex = 1;
|
||||
this.cbHeader.Text = "Meta header";
|
||||
this.toolTip1.SetToolTip(this.cbHeader, "Add meta header with meta data");
|
||||
this.cbHeader.UseVisualStyleBackColor = true;
|
||||
this.cbHeader.CheckedChanged += new System.EventHandler(this.cbFormat_SelectedIndexChanged);
|
||||
//
|
||||
@@ -163,6 +167,7 @@
|
||||
this.cbComments.Size = new System.Drawing.Size(75, 17);
|
||||
this.cbComments.TabIndex = 0;
|
||||
this.cbComments.Text = "Comments";
|
||||
this.toolTip1.SetToolTip(this.cbComments, "Add descriptive comments");
|
||||
this.cbComments.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// gbNumbers
|
||||
@@ -309,6 +314,12 @@
|
||||
this.btnClose.Text = "Close";
|
||||
this.btnClose.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// toolTip1
|
||||
//
|
||||
this.toolTip1.AutoPopDelay = 10000;
|
||||
this.toolTip1.InitialDelay = 500;
|
||||
this.toolTip1.ReshowDelay = 100;
|
||||
//
|
||||
// Export
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
@@ -362,5 +373,6 @@
|
||||
private System.Windows.Forms.Button btnGenerate;
|
||||
private System.Windows.Forms.Button btnClose;
|
||||
private System.Windows.Forms.CheckBox cbZeroes;
|
||||
private System.Windows.Forms.ToolTip toolTip1;
|
||||
}
|
||||
}
|
@@ -342,7 +342,7 @@ namespace McBitFont {
|
||||
}
|
||||
if (lines == 1) {
|
||||
// "1 symbol per line" - closing line
|
||||
if (!f.Equals(flast)) output += ",";
|
||||
if (!f.Equals(flast) && f.width > 0) output += ",";
|
||||
if (com && fcount > 1) {
|
||||
//...with a comment
|
||||
output += " // " + f.code.ToString() + " --> " + mainForm.decodeSymbol(f.code);
|
||||
|
@@ -117,4 +117,10 @@
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
</root>
|
348
McBitFont/Form1.Designer.cs
generated
@@ -34,6 +34,7 @@
|
||||
this.cbZoom = new System.Windows.Forms.ComboBox();
|
||||
this.label4 = new System.Windows.Forms.Label();
|
||||
this.panel1 = new System.Windows.Forms.Panel();
|
||||
this.btnClear = new System.Windows.Forms.Button();
|
||||
this.btnMirrorY = new System.Windows.Forms.Button();
|
||||
this.btnMirrorX = new System.Windows.Forms.Button();
|
||||
this.btnInvert = new System.Windows.Forms.Button();
|
||||
@@ -50,22 +51,21 @@
|
||||
this.label5 = new System.Windows.Forms.Label();
|
||||
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
|
||||
this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.editToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.exportToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.aboutToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.dlgSave = new System.Windows.Forms.SaveFileDialog();
|
||||
this.dlgOpen = new System.Windows.Forms.OpenFileDialog();
|
||||
this.newToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.openToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.saveDEVToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.saveToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.saveAsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.editToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.copyToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.pasteToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.prependSymbolToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.appendSymbolToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.removeSymbolToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.applyToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.ClearToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.shiftUpToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.shiftDownToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.shiftLeftToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
@@ -73,6 +73,15 @@
|
||||
this.invertToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.mirrorXToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.mirrorYToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.exportToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.aboutToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.dlgSave = new System.Windows.Forms.SaveFileDialog();
|
||||
this.dlgOpen = new System.Windows.Forms.OpenFileDialog();
|
||||
this.btnBaseline = new System.Windows.Forms.Button();
|
||||
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
|
||||
this.chkLeftSide = new System.Windows.Forms.CheckBox();
|
||||
this.chkTopSide = new System.Windows.Forms.CheckBox();
|
||||
this.openDEVToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
((System.ComponentModel.ISupportInitialize)(this.nudX)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.nudY)).BeginInit();
|
||||
this.panel1.SuspendLayout();
|
||||
@@ -98,20 +107,16 @@
|
||||
// nudX
|
||||
//
|
||||
this.nudX.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.nudX.Location = new System.Drawing.Point(717, 27);
|
||||
this.nudX.Location = new System.Drawing.Point(666, 27);
|
||||
this.nudX.Maximum = new decimal(new int[] {
|
||||
255,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.nudX.Minimum = new decimal(new int[] {
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.nudX.Name = "nudX";
|
||||
this.nudX.Size = new System.Drawing.Size(55, 20);
|
||||
this.nudX.Size = new System.Drawing.Size(40, 20);
|
||||
this.nudX.TabIndex = 1;
|
||||
this.toolTip1.SetToolTip(this.nudX, "Symbol width");
|
||||
this.nudX.Value = new decimal(new int[] {
|
||||
32,
|
||||
0,
|
||||
@@ -122,7 +127,7 @@
|
||||
// nudY
|
||||
//
|
||||
this.nudY.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.nudY.Location = new System.Drawing.Point(717, 53);
|
||||
this.nudY.Location = new System.Drawing.Point(666, 49);
|
||||
this.nudY.Maximum = new decimal(new int[] {
|
||||
255,
|
||||
0,
|
||||
@@ -134,8 +139,9 @@
|
||||
0,
|
||||
0});
|
||||
this.nudY.Name = "nudY";
|
||||
this.nudY.Size = new System.Drawing.Size(55, 20);
|
||||
this.nudY.Size = new System.Drawing.Size(40, 20);
|
||||
this.nudY.TabIndex = 2;
|
||||
this.toolTip1.SetToolTip(this.nudY, "Symbol height");
|
||||
this.nudY.Value = new decimal(new int[] {
|
||||
32,
|
||||
0,
|
||||
@@ -147,7 +153,7 @@
|
||||
//
|
||||
this.label1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Location = new System.Drawing.Point(673, 29);
|
||||
this.label1.Location = new System.Drawing.Point(622, 29);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(38, 13);
|
||||
this.label1.TabIndex = 3;
|
||||
@@ -157,7 +163,7 @@
|
||||
//
|
||||
this.label2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Location = new System.Drawing.Point(670, 55);
|
||||
this.label2.Location = new System.Drawing.Point(619, 51);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(41, 13);
|
||||
this.label2.TabIndex = 4;
|
||||
@@ -191,18 +197,19 @@
|
||||
"40",
|
||||
"45",
|
||||
"50"});
|
||||
this.cbZoom.Location = new System.Drawing.Point(605, 45);
|
||||
this.cbZoom.Location = new System.Drawing.Point(554, 45);
|
||||
this.cbZoom.Name = "cbZoom";
|
||||
this.cbZoom.Size = new System.Drawing.Size(59, 21);
|
||||
this.cbZoom.TabIndex = 6;
|
||||
this.cbZoom.TabStop = false;
|
||||
this.toolTip1.SetToolTip(this.cbZoom, "Canvas zoom level");
|
||||
this.cbZoom.SelectedIndexChanged += new System.EventHandler(this.cbZoom_SelectedIndexChanged);
|
||||
//
|
||||
// label4
|
||||
//
|
||||
this.label4.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.label4.AutoSize = true;
|
||||
this.label4.Location = new System.Drawing.Point(602, 29);
|
||||
this.label4.Location = new System.Drawing.Point(553, 29);
|
||||
this.label4.Name = "label4";
|
||||
this.label4.Size = new System.Drawing.Size(62, 13);
|
||||
this.label4.TabIndex = 7;
|
||||
@@ -212,6 +219,7 @@
|
||||
//
|
||||
this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.panel1.Controls.Add(this.btnClear);
|
||||
this.panel1.Controls.Add(this.btnMirrorY);
|
||||
this.panel1.Controls.Add(this.btnMirrorX);
|
||||
this.panel1.Controls.Add(this.btnInvert);
|
||||
@@ -224,6 +232,18 @@
|
||||
this.panel1.Size = new System.Drawing.Size(120, 121);
|
||||
this.panel1.TabIndex = 9;
|
||||
//
|
||||
// btnClear
|
||||
//
|
||||
this.btnClear.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
|
||||
this.btnClear.Location = new System.Drawing.Point(7, 8);
|
||||
this.btnClear.Name = "btnClear";
|
||||
this.btnClear.Size = new System.Drawing.Size(30, 30);
|
||||
this.btnClear.TabIndex = 7;
|
||||
this.btnClear.Text = "○";
|
||||
this.toolTip1.SetToolTip(this.btnClear, "Clear canvas");
|
||||
this.btnClear.UseVisualStyleBackColor = true;
|
||||
this.btnClear.Click += new System.EventHandler(this.btnClear_Click);
|
||||
//
|
||||
// btnMirrorY
|
||||
//
|
||||
this.btnMirrorY.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
|
||||
@@ -232,6 +252,7 @@
|
||||
this.btnMirrorY.Size = new System.Drawing.Size(30, 30);
|
||||
this.btnMirrorY.TabIndex = 6;
|
||||
this.btnMirrorY.Text = "⩥";
|
||||
this.toolTip1.SetToolTip(this.btnMirrorY, "Mirror by Y axis (vertical)");
|
||||
this.btnMirrorY.UseVisualStyleBackColor = true;
|
||||
this.btnMirrorY.Click += new System.EventHandler(this.btnMirrorY_Click);
|
||||
//
|
||||
@@ -243,6 +264,7 @@
|
||||
this.btnMirrorX.Size = new System.Drawing.Size(30, 30);
|
||||
this.btnMirrorX.TabIndex = 5;
|
||||
this.btnMirrorX.Text = "◮";
|
||||
this.toolTip1.SetToolTip(this.btnMirrorX, "Mirror by X axis (horizontal)");
|
||||
this.btnMirrorX.UseVisualStyleBackColor = true;
|
||||
this.btnMirrorX.Click += new System.EventHandler(this.btnMirrorX_Click);
|
||||
//
|
||||
@@ -254,6 +276,7 @@
|
||||
this.btnInvert.Size = new System.Drawing.Size(30, 30);
|
||||
this.btnInvert.TabIndex = 4;
|
||||
this.btnInvert.Text = "◪";
|
||||
this.toolTip1.SetToolTip(this.btnInvert, "Invert pixel colors");
|
||||
this.btnInvert.UseVisualStyleBackColor = true;
|
||||
this.btnInvert.Click += new System.EventHandler(this.btnInvert_Click);
|
||||
//
|
||||
@@ -265,6 +288,7 @@
|
||||
this.btnShiftDown.Size = new System.Drawing.Size(30, 30);
|
||||
this.btnShiftDown.TabIndex = 3;
|
||||
this.btnShiftDown.Text = "▼";
|
||||
this.toolTip1.SetToolTip(this.btnShiftDown, "Shift pixels down");
|
||||
this.btnShiftDown.UseVisualStyleBackColor = true;
|
||||
this.btnShiftDown.Click += new System.EventHandler(this.btnShiftDown_Click);
|
||||
//
|
||||
@@ -276,6 +300,7 @@
|
||||
this.btnShiftUp.Size = new System.Drawing.Size(30, 30);
|
||||
this.btnShiftUp.TabIndex = 2;
|
||||
this.btnShiftUp.Text = "▲";
|
||||
this.toolTip1.SetToolTip(this.btnShiftUp, "Shift pixels up");
|
||||
this.btnShiftUp.UseVisualStyleBackColor = true;
|
||||
this.btnShiftUp.Click += new System.EventHandler(this.btnShiftUp_Click);
|
||||
//
|
||||
@@ -287,6 +312,7 @@
|
||||
this.btnShiftRight.Size = new System.Drawing.Size(30, 30);
|
||||
this.btnShiftRight.TabIndex = 1;
|
||||
this.btnShiftRight.Text = "▶";
|
||||
this.toolTip1.SetToolTip(this.btnShiftRight, "Shift pixels right");
|
||||
this.btnShiftRight.UseVisualStyleBackColor = true;
|
||||
this.btnShiftRight.Click += new System.EventHandler(this.btnShiftRight_Click);
|
||||
//
|
||||
@@ -298,17 +324,19 @@
|
||||
this.btnShiftLeft.Size = new System.Drawing.Size(30, 30);
|
||||
this.btnShiftLeft.TabIndex = 0;
|
||||
this.btnShiftLeft.Text = "◀";
|
||||
this.toolTip1.SetToolTip(this.btnShiftLeft, "Shift pixels left");
|
||||
this.btnShiftLeft.UseVisualStyleBackColor = true;
|
||||
this.btnShiftLeft.Click += new System.EventHandler(this.btnShiftLeft_Click);
|
||||
//
|
||||
// btnExport
|
||||
//
|
||||
this.btnExport.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.btnExport.Location = new System.Drawing.Point(696, 99);
|
||||
this.btnExport.Location = new System.Drawing.Point(696, 109);
|
||||
this.btnExport.Name = "btnExport";
|
||||
this.btnExport.Size = new System.Drawing.Size(75, 23);
|
||||
this.btnExport.TabIndex = 10;
|
||||
this.btnExport.Text = "Export";
|
||||
this.toolTip1.SetToolTip(this.btnExport, "Configure and export data");
|
||||
this.btnExport.UseVisualStyleBackColor = true;
|
||||
this.btnExport.Click += new System.EventHandler(this.button1_Click);
|
||||
//
|
||||
@@ -343,11 +371,12 @@
|
||||
// btnApply
|
||||
//
|
||||
this.btnApply.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.btnApply.Location = new System.Drawing.Point(589, 99);
|
||||
this.btnApply.Location = new System.Drawing.Point(615, 109);
|
||||
this.btnApply.Name = "btnApply";
|
||||
this.btnApply.Size = new System.Drawing.Size(75, 23);
|
||||
this.btnApply.TabIndex = 13;
|
||||
this.btnApply.Text = "Apply";
|
||||
this.toolTip1.SetToolTip(this.btnApply, "Apply changes made to the symbol");
|
||||
this.btnApply.UseVisualStyleBackColor = true;
|
||||
this.btnApply.Click += new System.EventHandler(this.button2_Click);
|
||||
//
|
||||
@@ -376,7 +405,7 @@
|
||||
//
|
||||
this.label5.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.label5.AutoSize = true;
|
||||
this.label5.Location = new System.Drawing.Point(640, 71);
|
||||
this.label5.Location = new System.Drawing.Point(554, 114);
|
||||
this.label5.Name = "label5";
|
||||
this.label5.Size = new System.Drawing.Size(24, 13);
|
||||
this.label5.TabIndex = 16;
|
||||
@@ -401,12 +430,73 @@
|
||||
this.fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.newToolStripMenuItem,
|
||||
this.openToolStripMenuItem,
|
||||
this.openDEVToolStripMenuItem,
|
||||
this.saveDEVToolStripMenuItem,
|
||||
this.saveToolStripMenuItem,
|
||||
this.saveAsToolStripMenuItem,
|
||||
this.exitToolStripMenuItem});
|
||||
this.fileToolStripMenuItem.Name = "fileToolStripMenuItem";
|
||||
this.fileToolStripMenuItem.Size = new System.Drawing.Size(37, 20);
|
||||
this.fileToolStripMenuItem.Text = "File";
|
||||
//
|
||||
// newToolStripMenuItem
|
||||
//
|
||||
this.newToolStripMenuItem.Image = global::McBitFont.Properties.Resources.file;
|
||||
this.newToolStripMenuItem.Name = "newToolStripMenuItem";
|
||||
this.newToolStripMenuItem.ShortcutKeyDisplayString = "Ctrl+N";
|
||||
this.newToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.N)));
|
||||
this.newToolStripMenuItem.Size = new System.Drawing.Size(184, 22);
|
||||
this.newToolStripMenuItem.Text = "New";
|
||||
this.newToolStripMenuItem.Click += new System.EventHandler(this.newToolStripMenuItem_Click);
|
||||
//
|
||||
// openToolStripMenuItem
|
||||
//
|
||||
this.openToolStripMenuItem.Image = global::McBitFont.Properties.Resources.folder_open;
|
||||
this.openToolStripMenuItem.Name = "openToolStripMenuItem";
|
||||
this.openToolStripMenuItem.ShortcutKeyDisplayString = "Ctrl+O";
|
||||
this.openToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.O)));
|
||||
this.openToolStripMenuItem.Size = new System.Drawing.Size(184, 22);
|
||||
this.openToolStripMenuItem.Text = "Open";
|
||||
this.openToolStripMenuItem.Click += new System.EventHandler(this.openToolStripMenuItem_Click);
|
||||
//
|
||||
// saveDEVToolStripMenuItem
|
||||
//
|
||||
this.saveDEVToolStripMenuItem.Name = "saveDEVToolStripMenuItem";
|
||||
this.saveDEVToolStripMenuItem.Size = new System.Drawing.Size(184, 22);
|
||||
this.saveDEVToolStripMenuItem.Text = "Save as (new format)";
|
||||
this.saveDEVToolStripMenuItem.Click += new System.EventHandler(this.saveJSONToolStripMenuItem_Click);
|
||||
//
|
||||
// saveToolStripMenuItem
|
||||
//
|
||||
this.saveToolStripMenuItem.Image = global::McBitFont.Properties.Resources.Famfamfam_Silk_Disk_16;
|
||||
this.saveToolStripMenuItem.Name = "saveToolStripMenuItem";
|
||||
this.saveToolStripMenuItem.ShortcutKeyDisplayString = "Ctrl+S";
|
||||
this.saveToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.S)));
|
||||
this.saveToolStripMenuItem.Size = new System.Drawing.Size(184, 22);
|
||||
this.saveToolStripMenuItem.Text = "Save";
|
||||
this.saveToolStripMenuItem.Click += new System.EventHandler(this.saveToolStripMenuItem_Click_1);
|
||||
//
|
||||
// saveAsToolStripMenuItem
|
||||
//
|
||||
this.saveAsToolStripMenuItem.Image = global::McBitFont.Properties.Resources.Famfamfam_Silk_Disk_16;
|
||||
this.saveAsToolStripMenuItem.Name = "saveAsToolStripMenuItem";
|
||||
this.saveAsToolStripMenuItem.ShortcutKeyDisplayString = "Ctrl+Shift+S";
|
||||
this.saveAsToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)(((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.Shift)
|
||||
| System.Windows.Forms.Keys.S)));
|
||||
this.saveAsToolStripMenuItem.Size = new System.Drawing.Size(184, 22);
|
||||
this.saveAsToolStripMenuItem.Text = "Save as";
|
||||
this.saveAsToolStripMenuItem.Click += new System.EventHandler(this.saveToolStripMenuItem_Click);
|
||||
//
|
||||
// exitToolStripMenuItem
|
||||
//
|
||||
this.exitToolStripMenuItem.Image = global::McBitFont.Properties.Resources.Famfamfam_Silk_Door_out_16;
|
||||
this.exitToolStripMenuItem.Name = "exitToolStripMenuItem";
|
||||
this.exitToolStripMenuItem.ShortcutKeyDisplayString = "Alt+X";
|
||||
this.exitToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Alt | System.Windows.Forms.Keys.X)));
|
||||
this.exitToolStripMenuItem.Size = new System.Drawing.Size(184, 22);
|
||||
this.exitToolStripMenuItem.Text = "Exit";
|
||||
this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click);
|
||||
//
|
||||
// editToolStripMenuItem
|
||||
//
|
||||
this.editToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
@@ -420,87 +510,6 @@
|
||||
this.editToolStripMenuItem.Size = new System.Drawing.Size(39, 20);
|
||||
this.editToolStripMenuItem.Text = "Edit";
|
||||
//
|
||||
// toolsToolStripMenuItem
|
||||
//
|
||||
this.toolsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.shiftUpToolStripMenuItem,
|
||||
this.shiftDownToolStripMenuItem,
|
||||
this.shiftLeftToolStripMenuItem,
|
||||
this.shiftRightToolStripMenuItem,
|
||||
this.invertToolStripMenuItem,
|
||||
this.mirrorXToolStripMenuItem,
|
||||
this.mirrorYToolStripMenuItem,
|
||||
this.exportToolStripMenuItem});
|
||||
this.toolsToolStripMenuItem.Name = "toolsToolStripMenuItem";
|
||||
this.toolsToolStripMenuItem.Size = new System.Drawing.Size(46, 20);
|
||||
this.toolsToolStripMenuItem.Text = "Tools";
|
||||
//
|
||||
// exportToolStripMenuItem
|
||||
//
|
||||
this.exportToolStripMenuItem.Name = "exportToolStripMenuItem";
|
||||
this.exportToolStripMenuItem.ShortcutKeyDisplayString = "Ctrl+E";
|
||||
this.exportToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.E)));
|
||||
this.exportToolStripMenuItem.Size = new System.Drawing.Size(197, 22);
|
||||
this.exportToolStripMenuItem.Text = "Export";
|
||||
this.exportToolStripMenuItem.Click += new System.EventHandler(this.button1_Click);
|
||||
//
|
||||
// aboutToolStripMenuItem
|
||||
//
|
||||
this.aboutToolStripMenuItem.Name = "aboutToolStripMenuItem";
|
||||
this.aboutToolStripMenuItem.Size = new System.Drawing.Size(52, 20);
|
||||
this.aboutToolStripMenuItem.Text = "About";
|
||||
this.aboutToolStripMenuItem.Click += new System.EventHandler(this.aboutToolStripMenuItem_Click);
|
||||
//
|
||||
// dlgSave
|
||||
//
|
||||
this.dlgSave.DefaultExt = "mbf";
|
||||
this.dlgSave.Filter = "McBitFont files|*.mbf|All files|*.*";
|
||||
//
|
||||
// dlgOpen
|
||||
//
|
||||
this.dlgOpen.DefaultExt = "mbf";
|
||||
this.dlgOpen.Filter = "McBitFont files|*.mbf|All files|*.*";
|
||||
//
|
||||
// newToolStripMenuItem
|
||||
//
|
||||
this.newToolStripMenuItem.Image = global::McBitFont.Properties.Resources.file;
|
||||
this.newToolStripMenuItem.Name = "newToolStripMenuItem";
|
||||
this.newToolStripMenuItem.ShortcutKeyDisplayString = "Ctrl+N";
|
||||
this.newToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.N)));
|
||||
this.newToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
|
||||
this.newToolStripMenuItem.Text = "New";
|
||||
this.newToolStripMenuItem.Click += new System.EventHandler(this.newToolStripMenuItem_Click);
|
||||
//
|
||||
// openToolStripMenuItem
|
||||
//
|
||||
this.openToolStripMenuItem.Image = global::McBitFont.Properties.Resources.folder_open;
|
||||
this.openToolStripMenuItem.Name = "openToolStripMenuItem";
|
||||
this.openToolStripMenuItem.ShortcutKeyDisplayString = "Ctrl+O";
|
||||
this.openToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.O)));
|
||||
this.openToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
|
||||
this.openToolStripMenuItem.Text = "Open";
|
||||
this.openToolStripMenuItem.Click += new System.EventHandler(this.openToolStripMenuItem_Click);
|
||||
//
|
||||
// saveToolStripMenuItem
|
||||
//
|
||||
this.saveToolStripMenuItem.Image = global::McBitFont.Properties.Resources.Famfamfam_Silk_Disk_16;
|
||||
this.saveToolStripMenuItem.Name = "saveToolStripMenuItem";
|
||||
this.saveToolStripMenuItem.ShortcutKeyDisplayString = "Ctrl+S";
|
||||
this.saveToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.S)));
|
||||
this.saveToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
|
||||
this.saveToolStripMenuItem.Text = "Save as";
|
||||
this.saveToolStripMenuItem.Click += new System.EventHandler(this.saveToolStripMenuItem_Click);
|
||||
//
|
||||
// exitToolStripMenuItem
|
||||
//
|
||||
this.exitToolStripMenuItem.Image = global::McBitFont.Properties.Resources.Famfamfam_Silk_Door_out_16;
|
||||
this.exitToolStripMenuItem.Name = "exitToolStripMenuItem";
|
||||
this.exitToolStripMenuItem.ShortcutKeyDisplayString = "Alt+X";
|
||||
this.exitToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Alt | System.Windows.Forms.Keys.X)));
|
||||
this.exitToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
|
||||
this.exitToolStripMenuItem.Text = "Exit";
|
||||
this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click);
|
||||
//
|
||||
// copyToolStripMenuItem
|
||||
//
|
||||
this.copyToolStripMenuItem.Enabled = false;
|
||||
@@ -508,7 +517,7 @@
|
||||
this.copyToolStripMenuItem.Name = "copyToolStripMenuItem";
|
||||
this.copyToolStripMenuItem.ShortcutKeyDisplayString = "Ctrl+C";
|
||||
this.copyToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.C)));
|
||||
this.copyToolStripMenuItem.Size = new System.Drawing.Size(160, 22);
|
||||
this.copyToolStripMenuItem.Size = new System.Drawing.Size(212, 22);
|
||||
this.copyToolStripMenuItem.Text = "Copy";
|
||||
this.copyToolStripMenuItem.Click += new System.EventHandler(this.copyToolStripMenuItem_Click);
|
||||
//
|
||||
@@ -519,7 +528,7 @@
|
||||
this.pasteToolStripMenuItem.Name = "pasteToolStripMenuItem";
|
||||
this.pasteToolStripMenuItem.ShortcutKeyDisplayString = "Ctrl+V";
|
||||
this.pasteToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.V)));
|
||||
this.pasteToolStripMenuItem.Size = new System.Drawing.Size(160, 22);
|
||||
this.pasteToolStripMenuItem.Size = new System.Drawing.Size(212, 22);
|
||||
this.pasteToolStripMenuItem.Text = "Paste";
|
||||
this.pasteToolStripMenuItem.Click += new System.EventHandler(this.pasteToolStripMenuItem_Click);
|
||||
//
|
||||
@@ -528,7 +537,9 @@
|
||||
this.prependSymbolToolStripMenuItem.Enabled = false;
|
||||
this.prependSymbolToolStripMenuItem.Image = global::McBitFont.Properties.Resources.action_add;
|
||||
this.prependSymbolToolStripMenuItem.Name = "prependSymbolToolStripMenuItem";
|
||||
this.prependSymbolToolStripMenuItem.Size = new System.Drawing.Size(160, 22);
|
||||
this.prependSymbolToolStripMenuItem.ShortcutKeyDisplayString = "Ctrl+Ins";
|
||||
this.prependSymbolToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.Insert)));
|
||||
this.prependSymbolToolStripMenuItem.Size = new System.Drawing.Size(212, 22);
|
||||
this.prependSymbolToolStripMenuItem.Text = "Prepend symbol";
|
||||
this.prependSymbolToolStripMenuItem.Click += new System.EventHandler(this.prependSymbolToolStripMenuItem_Click);
|
||||
//
|
||||
@@ -537,7 +548,9 @@
|
||||
this.appendSymbolToolStripMenuItem.Enabled = false;
|
||||
this.appendSymbolToolStripMenuItem.Image = global::McBitFont.Properties.Resources.action_add;
|
||||
this.appendSymbolToolStripMenuItem.Name = "appendSymbolToolStripMenuItem";
|
||||
this.appendSymbolToolStripMenuItem.Size = new System.Drawing.Size(160, 22);
|
||||
this.appendSymbolToolStripMenuItem.ShortcutKeyDisplayString = "Ctrl+End";
|
||||
this.appendSymbolToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.End)));
|
||||
this.appendSymbolToolStripMenuItem.Size = new System.Drawing.Size(212, 22);
|
||||
this.appendSymbolToolStripMenuItem.Text = "Append symbol";
|
||||
this.appendSymbolToolStripMenuItem.Click += new System.EventHandler(this.prependSymbolToolStripMenuItem_Click);
|
||||
//
|
||||
@@ -546,7 +559,9 @@
|
||||
this.removeSymbolToolStripMenuItem.Enabled = false;
|
||||
this.removeSymbolToolStripMenuItem.Image = global::McBitFont.Properties.Resources.action_remove;
|
||||
this.removeSymbolToolStripMenuItem.Name = "removeSymbolToolStripMenuItem";
|
||||
this.removeSymbolToolStripMenuItem.Size = new System.Drawing.Size(160, 22);
|
||||
this.removeSymbolToolStripMenuItem.ShortcutKeyDisplayString = "Ctrl+Del";
|
||||
this.removeSymbolToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.Delete)));
|
||||
this.removeSymbolToolStripMenuItem.Size = new System.Drawing.Size(212, 22);
|
||||
this.removeSymbolToolStripMenuItem.Text = "Remove symbol";
|
||||
this.removeSymbolToolStripMenuItem.Click += new System.EventHandler(this.removeSymbolToolStripMenuItem_Click);
|
||||
//
|
||||
@@ -554,10 +569,37 @@
|
||||
//
|
||||
this.applyToolStripMenuItem.Image = global::McBitFont.Properties.Resources.action_check;
|
||||
this.applyToolStripMenuItem.Name = "applyToolStripMenuItem";
|
||||
this.applyToolStripMenuItem.Size = new System.Drawing.Size(160, 22);
|
||||
this.applyToolStripMenuItem.ShortcutKeyDisplayString = "Ctrl+Space";
|
||||
this.applyToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.Space)));
|
||||
this.applyToolStripMenuItem.Size = new System.Drawing.Size(212, 22);
|
||||
this.applyToolStripMenuItem.Text = "Apply";
|
||||
this.applyToolStripMenuItem.Click += new System.EventHandler(this.button2_Click);
|
||||
//
|
||||
// toolsToolStripMenuItem
|
||||
//
|
||||
this.toolsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.ClearToolStripMenuItem,
|
||||
this.shiftUpToolStripMenuItem,
|
||||
this.shiftDownToolStripMenuItem,
|
||||
this.shiftLeftToolStripMenuItem,
|
||||
this.shiftRightToolStripMenuItem,
|
||||
this.invertToolStripMenuItem,
|
||||
this.mirrorXToolStripMenuItem,
|
||||
this.mirrorYToolStripMenuItem,
|
||||
this.exportToolStripMenuItem});
|
||||
this.toolsToolStripMenuItem.Name = "toolsToolStripMenuItem";
|
||||
this.toolsToolStripMenuItem.Size = new System.Drawing.Size(47, 20);
|
||||
this.toolsToolStripMenuItem.Text = "Tools";
|
||||
//
|
||||
// ClearToolStripMenuItem
|
||||
//
|
||||
this.ClearToolStripMenuItem.Name = "ClearToolStripMenuItem";
|
||||
this.ClearToolStripMenuItem.ShortcutKeyDisplayString = "Ctrl+W";
|
||||
this.ClearToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.W)));
|
||||
this.ClearToolStripMenuItem.Size = new System.Drawing.Size(197, 22);
|
||||
this.ClearToolStripMenuItem.Text = "Clear canvas";
|
||||
this.ClearToolStripMenuItem.Click += new System.EventHandler(this.btnClear_Click);
|
||||
//
|
||||
// shiftUpToolStripMenuItem
|
||||
//
|
||||
this.shiftUpToolStripMenuItem.Image = global::McBitFont.Properties.Resources.arrow_top;
|
||||
@@ -628,11 +670,88 @@
|
||||
this.mirrorYToolStripMenuItem.Text = "Mirror Y";
|
||||
this.mirrorYToolStripMenuItem.Click += new System.EventHandler(this.btnMirrorY_Click);
|
||||
//
|
||||
// exportToolStripMenuItem
|
||||
//
|
||||
this.exportToolStripMenuItem.Name = "exportToolStripMenuItem";
|
||||
this.exportToolStripMenuItem.ShortcutKeyDisplayString = "Ctrl+E";
|
||||
this.exportToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.E)));
|
||||
this.exportToolStripMenuItem.Size = new System.Drawing.Size(197, 22);
|
||||
this.exportToolStripMenuItem.Text = "Export";
|
||||
this.exportToolStripMenuItem.Click += new System.EventHandler(this.button1_Click);
|
||||
//
|
||||
// aboutToolStripMenuItem
|
||||
//
|
||||
this.aboutToolStripMenuItem.Name = "aboutToolStripMenuItem";
|
||||
this.aboutToolStripMenuItem.Size = new System.Drawing.Size(52, 20);
|
||||
this.aboutToolStripMenuItem.Text = "About";
|
||||
this.aboutToolStripMenuItem.Click += new System.EventHandler(this.aboutToolStripMenuItem_Click);
|
||||
//
|
||||
// dlgSave
|
||||
//
|
||||
this.dlgSave.DefaultExt = "mbf";
|
||||
this.dlgSave.Filter = "McBitFont files|*.mbf|McBitFont new format|*.mbfont|All files|*.*";
|
||||
//
|
||||
// dlgOpen
|
||||
//
|
||||
this.dlgOpen.DefaultExt = "mbf";
|
||||
this.dlgOpen.Filter = "McBitFont files|*.mbf|All files|*.*";
|
||||
//
|
||||
// btnBaseline
|
||||
//
|
||||
this.btnBaseline.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.btnBaseline.Location = new System.Drawing.Point(615, 80);
|
||||
this.btnBaseline.Name = "btnBaseline";
|
||||
this.btnBaseline.Size = new System.Drawing.Size(75, 23);
|
||||
this.btnBaseline.TabIndex = 18;
|
||||
this.btnBaseline.Text = "Baseline";
|
||||
this.toolTip1.SetToolTip(this.btnBaseline, "Set irtual base line for the font");
|
||||
this.btnBaseline.UseVisualStyleBackColor = true;
|
||||
this.btnBaseline.Click += new System.EventHandler(this.btnBaseline_Click);
|
||||
//
|
||||
// toolTip1
|
||||
//
|
||||
this.toolTip1.AutoPopDelay = 10000;
|
||||
this.toolTip1.InitialDelay = 500;
|
||||
this.toolTip1.ReshowDelay = 100;
|
||||
//
|
||||
// chkLeftSide
|
||||
//
|
||||
this.chkLeftSide.AutoSize = true;
|
||||
this.chkLeftSide.Location = new System.Drawing.Point(712, 29);
|
||||
this.chkLeftSide.Name = "chkLeftSide";
|
||||
this.chkLeftSide.Size = new System.Drawing.Size(66, 17);
|
||||
this.chkLeftSide.TabIndex = 19;
|
||||
this.chkLeftSide.Text = "Left side";
|
||||
this.toolTip1.SetToolTip(this.chkLeftSide, "Width changes will be made on Left/Right side");
|
||||
this.chkLeftSide.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// chkTopSide
|
||||
//
|
||||
this.chkTopSide.AutoSize = true;
|
||||
this.chkTopSide.Location = new System.Drawing.Point(712, 50);
|
||||
this.chkTopSide.Name = "chkTopSide";
|
||||
this.chkTopSide.Size = new System.Drawing.Size(67, 17);
|
||||
this.chkTopSide.TabIndex = 20;
|
||||
this.chkTopSide.Text = "Top side";
|
||||
this.toolTip1.SetToolTip(this.chkTopSide, "Height changes will be made on Top/Bottom side");
|
||||
this.chkTopSide.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// openDEVToolStripMenuItem
|
||||
//
|
||||
this.openDEVToolStripMenuItem.Name = "openDEVToolStripMenuItem";
|
||||
this.openDEVToolStripMenuItem.Size = new System.Drawing.Size(184, 22);
|
||||
this.openDEVToolStripMenuItem.Text = "Open DEV";
|
||||
this.openDEVToolStripMenuItem.Visible = false;
|
||||
this.openDEVToolStripMenuItem.Click += new System.EventHandler(this.openDEVToolStripMenuItem_Click);
|
||||
//
|
||||
// MainForm
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(784, 561);
|
||||
this.Controls.Add(this.chkTopSide);
|
||||
this.Controls.Add(this.chkLeftSide);
|
||||
this.Controls.Add(this.btnBaseline);
|
||||
this.Controls.Add(this.btnApply);
|
||||
this.Controls.Add(this.btnExport);
|
||||
this.Controls.Add(this.label5);
|
||||
@@ -695,7 +814,7 @@
|
||||
private System.Windows.Forms.MenuStrip menuStrip1;
|
||||
private System.Windows.Forms.ToolStripMenuItem fileToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem newToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem saveToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem saveAsToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem openToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem exitToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem editToolStripMenuItem;
|
||||
@@ -717,6 +836,15 @@
|
||||
private System.Windows.Forms.ToolStripMenuItem appendSymbolToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem copyToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem pasteToolStripMenuItem;
|
||||
private System.Windows.Forms.Button btnBaseline;
|
||||
private System.Windows.Forms.ToolStripMenuItem saveToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolTip toolTip1;
|
||||
private System.Windows.Forms.Button btnClear;
|
||||
private System.Windows.Forms.ToolStripMenuItem ClearToolStripMenuItem;
|
||||
private System.Windows.Forms.CheckBox chkLeftSide;
|
||||
private System.Windows.Forms.CheckBox chkTopSide;
|
||||
private System.Windows.Forms.ToolStripMenuItem saveDEVToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem openDEVToolStripMenuItem;
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -1,25 +1,29 @@
|
||||
using System;
|
||||
using MessagePack;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Diagnostics;
|
||||
using System.Drawing;
|
||||
using System.Drawing.Drawing2D;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Runtime.InteropServices.ComTypes;
|
||||
using System.Runtime.Serialization.Formatters.Binary;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using System.Windows.Forms.VisualStyles;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.IO;
|
||||
using System.Runtime.Serialization.Formatters.Binary;
|
||||
using System.Runtime.InteropServices.ComTypes;
|
||||
using System.Diagnostics;
|
||||
using System.Drawing.Drawing2D;
|
||||
|
||||
|
||||
namespace McBitFont {
|
||||
public partial class MainForm : Form {
|
||||
|
||||
|
||||
[Serializable]
|
||||
[MessagePackObject]
|
||||
public struct FrameMiniature {
|
||||
public FrameMiniature(int cc, int ww, int hh) {
|
||||
code = cc;
|
||||
@@ -27,16 +31,26 @@ namespace McBitFont {
|
||||
height = hh;
|
||||
data = new bool[ww, hh];
|
||||
}
|
||||
[Key(0)]
|
||||
public int code;
|
||||
[Key(1)]
|
||||
public int width;
|
||||
[Key(2)]
|
||||
public int height;
|
||||
[Key(3)]
|
||||
public bool[,] data;
|
||||
};
|
||||
|
||||
[Serializable]
|
||||
[MessagePackObject]
|
||||
public struct SaveBlock {
|
||||
[Key(4)]
|
||||
public bool monospaced;
|
||||
[Key(5)]
|
||||
public int codepage;
|
||||
[Key(6)]
|
||||
public int baseline;
|
||||
[Key(7)]
|
||||
public List<FrameMiniature> frames;
|
||||
}
|
||||
|
||||
@@ -50,11 +64,14 @@ namespace McBitFont {
|
||||
public bool monospaced = false;
|
||||
bool modified = false;
|
||||
bool prjModified = false;
|
||||
public const string version = "1.1";
|
||||
public const string version = "1.7";
|
||||
public string prjName = "Untitled";
|
||||
public string prjFileName = "";
|
||||
public int codepage = 1251;
|
||||
private FrameMiniature fbuf;
|
||||
private bool fbuffer = false;
|
||||
public int baseline = 0;
|
||||
public bool set_base = false;
|
||||
|
||||
public MainForm() {
|
||||
InitializeComponent();
|
||||
@@ -86,6 +103,11 @@ namespace McBitFont {
|
||||
this.Text = "McBitFont " + version + " - " + prjName;
|
||||
|
||||
fbuf = new FrameMiniature(0, dotWidth, dotHeight);
|
||||
|
||||
// Chek for arguments
|
||||
if (Environment.GetCommandLineArgs().Length > 1) {
|
||||
loadProject(Environment.GetCommandLineArgs()[1]);
|
||||
}
|
||||
}
|
||||
|
||||
[DllImport("user32.dll")]
|
||||
@@ -110,12 +132,12 @@ namespace McBitFont {
|
||||
private void dotPanel_MouseWheel(object sender, MouseEventArgs e) {
|
||||
int t = e.Delta / 120;
|
||||
if (e.Delta == 0) return;
|
||||
if (ModifierKeys.HasFlag(Keys.Shift)) {
|
||||
if (ModifierKeys.HasFlag(Keys.Control)) {
|
||||
t += cbZoom.SelectedIndex;
|
||||
if (t > cbZoom.Items.Count - 1) return;
|
||||
if (t < 0) return;
|
||||
cbZoom.SelectedIndex = t;
|
||||
} else if (ModifierKeys.HasFlag(Keys.Control)) {
|
||||
} else if (ModifierKeys.HasFlag(Keys.Shift)) {
|
||||
if (hScroll.Enabled) {
|
||||
t = t * -1 * (cellSize + gap) + hScroll.Value;
|
||||
if (t < hScroll.Minimum) t = hScroll.Minimum;
|
||||
@@ -138,7 +160,7 @@ namespace McBitFont {
|
||||
for (int i = 0; i < frames.Count; i++) {
|
||||
frames[i] = frameResize(frames[i], (int)nudX.Value, dotHeight);
|
||||
bmp = getMiniPictue(frames[i]);
|
||||
string s = frames[i].code.ToString();
|
||||
string s = frames[i].code.ToString().PadLeft(3, '0');
|
||||
ilMiniatures.Images.RemoveByKey(s);
|
||||
ilMiniatures.Images.Add(s, (Image)bmp);
|
||||
miniList.Items[s].ImageKey = s;
|
||||
@@ -153,13 +175,14 @@ namespace McBitFont {
|
||||
private void nudY_ValueChanged(object sender, EventArgs e) {
|
||||
Bitmap bmp;
|
||||
for (int i = 0; i < frames.Count; i++) {
|
||||
frames[i] = frameResize(frames[i], dotWidth, (int)nudY.Value);
|
||||
frames[i] = frameResize(frames[i], frames[i].width, (int)nudY.Value);
|
||||
bmp = getMiniPictue(frames[i]);
|
||||
string s = frames[i].code.ToString();
|
||||
string s = frames[i].code.ToString().PadLeft(3, '0');
|
||||
ilMiniatures.Images.RemoveByKey(s);
|
||||
ilMiniatures.Images.Add(s, (Image)bmp);
|
||||
miniList.Items[s].ImageKey = s;
|
||||
}
|
||||
if (nudY.Focused) modified = true;
|
||||
prjModified = true;
|
||||
dotResize(dotWidth, (int)nudY.Value);
|
||||
}
|
||||
@@ -167,20 +190,24 @@ namespace McBitFont {
|
||||
private FrameMiniature frameResize(FrameMiniature ff, int neww, int newh) {
|
||||
int oldw = ff.width;
|
||||
int oldh = ff.height;
|
||||
int di = 0, dj = 0;
|
||||
int imax, jmax;
|
||||
bool[,] t;
|
||||
|
||||
if (neww < oldw) imax = neww;
|
||||
else imax = oldw;
|
||||
if (newh < oldh) jmax = newh;
|
||||
else jmax = oldh;
|
||||
if (chkLeftSide.Checked) di = oldw - neww;
|
||||
if (chkTopSide.Checked) dj = oldh - newh;
|
||||
|
||||
imax = (neww < oldw) ? neww : oldw;
|
||||
jmax = (newh < oldh) ? newh : oldh;
|
||||
if (neww > oldw) imax -= di;
|
||||
if (newh > oldh) jmax -= dj;
|
||||
|
||||
ff.width = neww;
|
||||
ff.height = newh;
|
||||
t = new bool[neww, newh];
|
||||
for (int i=0; i<imax; i++) {
|
||||
for (int j=0;j<jmax; j++) {
|
||||
t[i, j] = ff.data[i, j];
|
||||
if (i+di >= 0 && j+dj >= 0) t[i, j] = ff.data[i + di, j + dj];
|
||||
}
|
||||
}
|
||||
ff.data = t;
|
||||
@@ -189,30 +216,12 @@ namespace McBitFont {
|
||||
}
|
||||
|
||||
private void dotResize(int ww, int hh) {
|
||||
int imax, jmax;
|
||||
bool[,] t;
|
||||
|
||||
if (ww < dotWidth) imax = ww;
|
||||
else imax = dotWidth;
|
||||
if (hh < dotHeight) jmax = hh;
|
||||
else jmax = dotHeight;
|
||||
|
||||
f.width = ww;
|
||||
f.height = hh;
|
||||
t = new bool[ww, hh];
|
||||
for (int i=0; i<imax; i++) {
|
||||
for (int j=0; j<jmax; j++) {
|
||||
t[i, j] = f.data[i, j];
|
||||
}
|
||||
}
|
||||
f.data = t;
|
||||
f = frameResize(f, ww, hh);
|
||||
dotWidth = ww;
|
||||
dotHeight = hh;
|
||||
w = pixelOffset + dotWidth * (cellSize + gap);
|
||||
h = pixelOffset + dotHeight * (cellSize + gap);
|
||||
cbZoom_SelectedIndexChanged(cbZoom, null);
|
||||
|
||||
fbuffer = false;
|
||||
}
|
||||
|
||||
private void cbZoom_SelectedIndexChanged(object sender, EventArgs e) {
|
||||
@@ -275,6 +284,27 @@ namespace McBitFont {
|
||||
}
|
||||
|
||||
private void dotPanel_MouseMove(object sender, MouseEventArgs e) {
|
||||
Rectangle rect1, rect2;
|
||||
if (set_base) {
|
||||
|
||||
int yy = pixelOffset + baseline * (cellSize + gap) - vScroll.Value - 1;
|
||||
rect1 = new Rectangle(pixelOffset, yy, w, 2);
|
||||
baseline = (e.Y - pixelOffset + vScroll.Value) / (cellSize + gap);
|
||||
|
||||
if (baseline >= dotHeight) baseline = dotHeight - 1;
|
||||
if (baseline < 0) baseline = 0;
|
||||
|
||||
yy = pixelOffset + baseline * (cellSize + gap) - vScroll.Value - 1;
|
||||
rect2 = new Rectangle(pixelOffset, yy, w, 2);
|
||||
|
||||
dotPanel.Invalidate(rect1);
|
||||
dotPanel.Invalidate(rect2);
|
||||
|
||||
if (e.Button == MouseButtons.Left) {
|
||||
set_base = false;
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (e.X >= w || e.X <= pixelOffset || e.Y >= h || e.Y <= pixelOffset) return;
|
||||
int i = (e.X - pixelOffset + hScroll.Value) / (cellSize + gap);
|
||||
int j = (e.Y - pixelOffset + vScroll.Value) / (cellSize + gap);
|
||||
@@ -286,8 +316,9 @@ namespace McBitFont {
|
||||
f.data[i, j] = true;
|
||||
int x = pixelOffset + i * (cellSize + gap) - hScroll.Value;
|
||||
int y = pixelOffset + j * (cellSize + gap) - vScroll.Value;
|
||||
g.FillRectangle(sbb, x, y, cellSize, cellSize);
|
||||
modified = true;
|
||||
rect1 = new Rectangle(x, y, cellSize, cellSize);
|
||||
dotPanel.Invalidate(rect1);
|
||||
}
|
||||
if (e.Button == MouseButtons.Right && f.data[i, j]) {
|
||||
Graphics g = dotPanel.CreateGraphics();
|
||||
@@ -295,8 +326,9 @@ namespace McBitFont {
|
||||
f.data[i, j] = false;
|
||||
int x = pixelOffset + i * (cellSize + gap) - hScroll.Value;
|
||||
int y = pixelOffset + j * (cellSize + gap) - vScroll.Value;
|
||||
g.FillRectangle(sbw, x, y, cellSize, cellSize);
|
||||
modified = true;
|
||||
rect1 = new Rectangle(x, y, cellSize, cellSize);
|
||||
dotPanel.Invalidate(rect1);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -450,9 +482,19 @@ namespace McBitFont {
|
||||
}
|
||||
if (f.data[i, j]) sb = sbb;
|
||||
else sb = sbw;
|
||||
g.FillRectangle(sb, x, y, cellSize, cellSize);
|
||||
g.FillRectangle(sb, x, (baseline == j ? y+1 : y), cellSize, (baseline == j ? cellSize-1 : cellSize));
|
||||
}
|
||||
}
|
||||
|
||||
if (baseline > 0 && gap > 0) {
|
||||
x = pixelOffset - hScroll.Value;
|
||||
y = pixelOffset + baseline * (cellSize + gap) - vScroll.Value;
|
||||
g.DrawLine(
|
||||
new Pen(Color.Blue, 2),
|
||||
x, y,
|
||||
w, y
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
private void exitToolStripMenuItem_Click(object sender, EventArgs e) {
|
||||
@@ -489,6 +531,7 @@ namespace McBitFont {
|
||||
}
|
||||
|
||||
private void newToolStripMenuItem_Click(object sender, EventArgs e) {
|
||||
checkModifiedFrame();
|
||||
if (prjModified) {
|
||||
if (MessageBox.Show("The project is modified.\nDo you want to save it first?", "Project was modified!", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) {
|
||||
saveToolStripMenuItem.PerformClick();
|
||||
@@ -513,35 +556,34 @@ namespace McBitFont {
|
||||
append = "Single";
|
||||
monospaced = false;
|
||||
} else {
|
||||
int i;
|
||||
if (form.cbNotPrintable.Checked) {
|
||||
for (i = 0; i < 32; i++) {
|
||||
int i, imin, imax;
|
||||
if (form.cbDigits.Checked) {
|
||||
imin = 48;
|
||||
imax = 57;
|
||||
} else {
|
||||
if (form.cbNotPrintable.Checked) imin = 0;
|
||||
else if (form.cbLatin.Checked) imin = 32;
|
||||
else imin = 128;
|
||||
|
||||
if (form.cbExtended.Checked) imax = 255;
|
||||
else if (form.cbLatin.Checked) imax = 127;
|
||||
else imax = 31;
|
||||
}
|
||||
|
||||
|
||||
for (i = imin; i <= imax; i++) {
|
||||
newf = new FrameMiniature(i, neww, newh);
|
||||
if (form.cbFontBased.Checked) newf = fillFrame(newf, form.dlgFont.Font, (int)form.nudShiftX.Value, (int)form.nudShiftY.Value);
|
||||
frames.Add(newf);
|
||||
}
|
||||
}
|
||||
if (form.cbLatin.Checked) {
|
||||
for (i = 32; i < 128; i++) {
|
||||
newf = new FrameMiniature(i, neww, newh);
|
||||
if (form.cbFontBased.Checked) newf = fillFrame(newf, form.dlgFont.Font, (int)form.nudShiftX.Value, (int)form.nudShiftY.Value);
|
||||
frames.Add(newf);
|
||||
}
|
||||
}
|
||||
if (form.cbExtended.Checked) {
|
||||
for (i = 128; i < 256; i++) {
|
||||
newf = new FrameMiniature(i, neww, newh);
|
||||
if (form.cbFontBased.Checked) newf = fillFrame(newf, form.dlgFont.Font, (int)form.nudShiftX.Value, (int)form.nudShiftY.Value);
|
||||
frames.Add(newf);
|
||||
}
|
||||
}
|
||||
|
||||
monospaced = form.rbMono.Checked;
|
||||
}
|
||||
lblType.Text = monospaced ? "Monospaced" : "Variable width / Single";
|
||||
codepage = (form.cbEncoding.SelectedItem as New.EncodingItem).Code;
|
||||
foreach (FrameMiniature ff in frames) {
|
||||
var s = ff.code.ToString().PadLeft(3, '0');
|
||||
ilMiniatures.Images.Add(s, (Image)getMiniPictue(ff));
|
||||
codepage =(form.cbEncoding.SelectedItem as New.EncodingItem).Code;
|
||||
var sss = decodeSymbol(ff.code);
|
||||
miniList.Items.Add(s, s+' '+append+sss, s);
|
||||
}
|
||||
@@ -550,22 +592,21 @@ namespace McBitFont {
|
||||
miniList.Refresh();
|
||||
form.Dispose();
|
||||
|
||||
baseline = 0;
|
||||
|
||||
prjName = "Untitled";
|
||||
prjFileName = "";
|
||||
this.Text = "McBitFont " + version + " - " + prjName;
|
||||
modified = false;
|
||||
checkForAdd();
|
||||
fbuffer = false;
|
||||
dotPanel.Refresh();
|
||||
}
|
||||
}
|
||||
|
||||
private void miniList_SelectedIndexChanged(object sender, EventArgs e) {
|
||||
if (miniList.FocusedItem == null) return;
|
||||
if (modified) {
|
||||
if (MessageBox.Show("Current symbol is modified.\nDo you want to save the changes?", "Symbol was modified!", MessageBoxButtons.YesNo) == DialogResult.Yes) {
|
||||
saveFrame();
|
||||
}
|
||||
modified = false;
|
||||
}
|
||||
checkModifiedFrame();
|
||||
if (miniList.SelectedItems.Count == 0) {
|
||||
removeSymbolToolStripMenuItem.Enabled = false;
|
||||
copyToolStripMenuItem.Enabled = false;
|
||||
@@ -592,11 +633,13 @@ namespace McBitFont {
|
||||
}
|
||||
|
||||
private void saveToolStripMenuItem_Click(object sender, EventArgs e) {
|
||||
checkModifiedFrame();
|
||||
if (dlgSave.ShowDialog() == DialogResult.OK) {
|
||||
SaveBlock sav;
|
||||
sav.monospaced = monospaced;
|
||||
sav.frames = frames;
|
||||
sav.codepage = codepage;
|
||||
sav.baseline = baseline;
|
||||
BinaryFormatter formatter = new BinaryFormatter();
|
||||
using (Stream ms = File.OpenWrite(dlgSave.FileName)) {
|
||||
formatter.Serialize(ms, sav);
|
||||
@@ -604,35 +647,31 @@ namespace McBitFont {
|
||||
}
|
||||
prjModified = false;
|
||||
prjName = Path.GetFileNameWithoutExtension(dlgSave.FileName);
|
||||
prjFileName = dlgSave.FileName;
|
||||
this.Text = "McBitFont " + version + " - " + prjName;
|
||||
}
|
||||
}
|
||||
|
||||
private void openToolStripMenuItem_Click(object sender, EventArgs e) {
|
||||
if (prjModified) {
|
||||
if (MessageBox.Show("The project is modified.\nDo you want to save it first?", "Project was modified!", MessageBoxButtons.YesNo) == DialogResult.Yes) {
|
||||
saveToolStripMenuItem.PerformClick();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (dlgOpen.ShowDialog() == DialogResult.OK) {
|
||||
private void loadProject(string filename) {
|
||||
SaveBlock sav;
|
||||
BinaryFormatter formatter = new BinaryFormatter();
|
||||
|
||||
using (FileStream fs = File.Open(dlgOpen.FileName, FileMode.Open)) {
|
||||
using (FileStream fs = File.Open(filename, FileMode.Open)) {
|
||||
sav = (SaveBlock)formatter.Deserialize(fs);
|
||||
fs.Close();
|
||||
}
|
||||
monospaced = sav.monospaced;
|
||||
codepage = sav.codepage;
|
||||
baseline = sav.baseline;
|
||||
lblType.Text = monospaced ? "Monospaced" : "Variable width / Single";
|
||||
frames = sav.frames;
|
||||
miniList.Items.Clear();
|
||||
ilMiniatures.Images.Clear();
|
||||
foreach (FrameMiniature ff in frames) {
|
||||
var s = ff.code.ToString();
|
||||
var s = ff.code.ToString().PadLeft(3, '0');
|
||||
var sss = decodeSymbol(ff.code);
|
||||
ilMiniatures.Images.Add(s, (Image)getMiniPictue(ff));
|
||||
miniList.Items.Add(s, s + ' ' + (char)ff.code, s);
|
||||
miniList.Items.Add(s, s + ' ' + sss, s);
|
||||
}
|
||||
nudX.ValueChanged -= nudX_ValueChanged;
|
||||
nudY.ValueChanged -= nudY_ValueChanged;
|
||||
@@ -647,11 +686,40 @@ namespace McBitFont {
|
||||
modified = false;
|
||||
prjModified = false;
|
||||
|
||||
prjName = Path.GetFileNameWithoutExtension(dlgOpen.FileName);
|
||||
prjFileName = filename;
|
||||
prjName = Path.GetFileNameWithoutExtension(filename);
|
||||
this.Text = "McBitFont " + version + " - " + prjName;
|
||||
checkForAdd();
|
||||
fbuffer = false;
|
||||
}
|
||||
|
||||
private void saveProject(string filename) {
|
||||
SaveBlock sav;
|
||||
sav.monospaced = monospaced;
|
||||
sav.frames = frames;
|
||||
sav.codepage = codepage;
|
||||
sav.baseline = baseline;
|
||||
BinaryFormatter formatter = new BinaryFormatter();
|
||||
using (Stream ms = File.OpenWrite(filename)) {
|
||||
formatter.Serialize(ms, sav);
|
||||
ms.Close();
|
||||
}
|
||||
prjModified = false;
|
||||
prjName = Path.GetFileNameWithoutExtension(filename);
|
||||
prjFileName = filename;
|
||||
this.Text = "McBitFont " + version + " - " + prjName;
|
||||
}
|
||||
|
||||
private void openToolStripMenuItem_Click(object sender, EventArgs e) {
|
||||
if (prjModified) {
|
||||
if (MessageBox.Show("The project is modified.\nDo you want to save it first?", "Project was modified!", MessageBoxButtons.YesNo) == DialogResult.Yes) {
|
||||
saveAsToolStripMenuItem.PerformClick();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (dlgOpen.ShowDialog() == DialogResult.OK) {
|
||||
loadProject(dlgOpen.FileName);
|
||||
}
|
||||
}
|
||||
|
||||
private void removeSymbolToolStripMenuItem_Click(object sender, EventArgs e) {
|
||||
@@ -703,7 +771,19 @@ namespace McBitFont {
|
||||
}
|
||||
|
||||
private void pasteToolStripMenuItem_Click(object sender, EventArgs e) {
|
||||
if (fbuf.width == f.width && fbuf.height == f.height) {
|
||||
Array.Copy(fbuf.data, f.data, fbuf.data.Length);
|
||||
} else {
|
||||
var wmax = (fbuf.width > f.width) ? f.width : fbuf.width;
|
||||
var hmax = (fbuf.height > f.height) ? f.height : fbuf.height;
|
||||
|
||||
for (int i = 0; i < wmax; i++) {
|
||||
for (int j = 0; j < hmax; j++) {
|
||||
f.data[i,j] = fbuf.data[i,j];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
dotPanel.Refresh();
|
||||
modified = true;
|
||||
}
|
||||
@@ -713,6 +793,105 @@ namespace McBitFont {
|
||||
form.ShowDialog();
|
||||
}
|
||||
|
||||
private void btnBaseline_Click(object sender, EventArgs e) {
|
||||
set_base = !set_base;
|
||||
}
|
||||
|
||||
// Check modified / Save frame
|
||||
private void checkModifiedFrame() {
|
||||
if (modified) {
|
||||
if (MessageBox.Show("Current symbol is modified.\nDo you want to save the changes?", "Symbol was modified!", MessageBoxButtons.YesNo) == DialogResult.Yes) {
|
||||
saveFrame();
|
||||
}
|
||||
modified = false;
|
||||
}
|
||||
}
|
||||
|
||||
private void saveToolStripMenuItem_Click_1(object sender, EventArgs e) {
|
||||
if (prjFileName == "") {
|
||||
saveAsToolStripMenuItem.PerformClick();
|
||||
} else {
|
||||
checkModifiedFrame();
|
||||
saveProject(prjFileName);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void btnClear_Click(object sender, EventArgs e) {
|
||||
Array.Clear(f.data, 0, f.data.Length);
|
||||
modified = true;
|
||||
dotPanel.Refresh();
|
||||
}
|
||||
|
||||
private void saveJSONToolStripMenuItem_Click(object sender, EventArgs e) {
|
||||
checkModifiedFrame();
|
||||
if (dlgSave.ShowDialog() == DialogResult.OK) {
|
||||
SaveBlock sav;
|
||||
sav.monospaced = monospaced;
|
||||
sav.frames = frames;
|
||||
sav.codepage = codepage;
|
||||
sav.baseline = baseline;
|
||||
using (Stream ms = File.OpenWrite(dlgSave.FileName)) {
|
||||
// TODO: Serializer here
|
||||
MessagePackSerializer.Serialize(ms, sav);
|
||||
ms.Close();
|
||||
}
|
||||
prjModified = false;
|
||||
prjName = Path.GetFileNameWithoutExtension(dlgSave.FileName);
|
||||
prjFileName = dlgSave.FileName;
|
||||
this.Text = "McBitFont " + version + " - " + prjName;
|
||||
}
|
||||
}
|
||||
|
||||
private void openDEVToolStripMenuItem_Click(object sender, EventArgs e) {
|
||||
if (prjModified) {
|
||||
if (MessageBox.Show("The project is modified.\nDo you want to save it first?", "Project was modified!", MessageBoxButtons.YesNo) == DialogResult.Yes) {
|
||||
saveAsToolStripMenuItem.PerformClick();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (dlgOpen.ShowDialog() == DialogResult.OK) {
|
||||
SaveBlock sav;
|
||||
|
||||
var filename = dlgOpen.FileName;
|
||||
using (FileStream fs = File.Open(filename, FileMode.Open)) {
|
||||
sav = MessagePackSerializer.Deserialize<SaveBlock>(fs);
|
||||
fs.Close();
|
||||
}
|
||||
monospaced = sav.monospaced;
|
||||
codepage = sav.codepage;
|
||||
baseline = sav.baseline;
|
||||
lblType.Text = monospaced ? "Monospaced" : "Variable width / Single";
|
||||
frames = sav.frames;
|
||||
miniList.Items.Clear();
|
||||
ilMiniatures.Images.Clear();
|
||||
foreach (FrameMiniature ff in frames) {
|
||||
var s = ff.code.ToString().PadLeft(3, '0');
|
||||
var sss = decodeSymbol(ff.code);
|
||||
ilMiniatures.Images.Add(s, (Image)getMiniPictue(ff));
|
||||
miniList.Items.Add(s, s + ' ' + sss, s);
|
||||
}
|
||||
nudX.ValueChanged -= nudX_ValueChanged;
|
||||
nudY.ValueChanged -= nudY_ValueChanged;
|
||||
nudX.Value = frames.First().width;
|
||||
nudY.Value = frames.First().height;
|
||||
dotResize((int)nudX.Value, (int)nudY.Value);
|
||||
nudX.ValueChanged += nudX_ValueChanged;
|
||||
nudY.ValueChanged += nudY_ValueChanged;
|
||||
f = copyFrame(frames.First());
|
||||
dotPanel.Refresh();
|
||||
miniList.Refresh();
|
||||
modified = false;
|
||||
prjModified = false;
|
||||
|
||||
prjFileName = filename;
|
||||
prjName = Path.GetFileNameWithoutExtension(filename);
|
||||
this.Text = "McBitFont " + version + " - " + prjName;
|
||||
checkForAdd();
|
||||
fbuffer = false;
|
||||
}
|
||||
}
|
||||
|
||||
private void MainForm_FormClosing(object sender, FormClosingEventArgs e) {
|
||||
if (prjModified) {
|
||||
if (MessageBox.Show("The project is modified.\nAre you sure you want to quit?", "Are you sure?", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No) {
|
||||
|
@@ -117,6 +117,9 @@
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>436, 17</value>
|
||||
</metadata>
|
||||
<metadata name="ilMiniatures.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
@@ -129,6 +132,9 @@
|
||||
<metadata name="dlgOpen.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>336, 17</value>
|
||||
</metadata>
|
||||
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>436, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
|
@@ -12,6 +12,23 @@
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||
<Deterministic>true</Deterministic>
|
||||
<PublishUrl>publish\</PublishUrl>
|
||||
<Install>true</Install>
|
||||
<InstallFrom>Disk</InstallFrom>
|
||||
<UpdateEnabled>false</UpdateEnabled>
|
||||
<UpdateMode>Foreground</UpdateMode>
|
||||
<UpdateInterval>7</UpdateInterval>
|
||||
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
|
||||
<UpdatePeriodically>false</UpdatePeriodically>
|
||||
<UpdateRequired>false</UpdateRequired>
|
||||
<MapFileExtensions>true</MapFileExtensions>
|
||||
<ApplicationRevision>0</ApplicationRevision>
|
||||
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
|
||||
<IsWebBootstrapper>false</IsWebBootstrapper>
|
||||
<UseApplicationTrust>false</UseApplicationTrust>
|
||||
<BootstrapperEnabled>true</BootstrapperEnabled>
|
||||
<NuGetPackageImportStamp>
|
||||
</NuGetPackageImportStamp>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
@@ -36,8 +53,39 @@
|
||||
<ApplicationIcon>icon_64.ico</ApplicationIcon>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="MessagePack, Version=3.1.3.0, Culture=neutral, PublicKeyToken=b4a0369545f0a1be, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MessagePack.3.1.3\lib\net472\MessagePack.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="MessagePack.Annotations, Version=3.1.3.0, Culture=neutral, PublicKeyToken=b4a0369545f0a1be, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MessagePack.Annotations.3.1.3\lib\netstandard2.0\MessagePack.Annotations.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.Bcl.AsyncInterfaces.8.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.NET.StringTools, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.NET.StringTools.17.11.4\lib\net472\Microsoft.NET.StringTools.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Collections.Immutable, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Collections.Immutable.8.0.0\lib\net462\System.Collections.Immutable.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Memory, Version=4.0.1.2, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Numerics" />
|
||||
<Reference Include="System.Numerics.Vectors, Version=4.1.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
@@ -97,6 +145,7 @@
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
<DesignTime>True</DesignTime>
|
||||
</Compile>
|
||||
<None Include="packages.config" />
|
||||
<None Include="Properties\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||
@@ -177,5 +226,24 @@
|
||||
<None Include="Resources\icon_32.png" />
|
||||
<None Include="Resources\icon.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<BootstrapperPackage Include=".NETFramework,Version=v4.7.2">
|
||||
<Visible>False</Visible>
|
||||
<ProductName>Microsoft .NET Framework 4.7.2 %28x86 и x64%29</ProductName>
|
||||
<Install>true</Install>
|
||||
</BootstrapperPackage>
|
||||
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
|
||||
<Visible>False</Visible>
|
||||
<ProductName>.NET Framework 3.5 SP1</ProductName>
|
||||
<Install>false</Install>
|
||||
</BootstrapperPackage>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="..\packages\MessagePackAnalyzer.3.1.3\build\MessagePackAnalyzer.targets" Condition="Exists('..\packages\MessagePackAnalyzer.3.1.3\build\MessagePackAnalyzer.targets')" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\MessagePackAnalyzer.3.1.3\build\MessagePackAnalyzer.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\MessagePackAnalyzer.3.1.3\build\MessagePackAnalyzer.targets'))" />
|
||||
</Target>
|
||||
</Project>
|
70
McBitFont/New.Designer.cs
generated
@@ -50,10 +50,11 @@
|
||||
this.lblShiftX = new System.Windows.Forms.Label();
|
||||
this.lblShiftY = new System.Windows.Forms.Label();
|
||||
this.pnlFont = new System.Windows.Forms.Panel();
|
||||
this.label4 = new System.Windows.Forms.Label();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.nudChar2 = new System.Windows.Forms.NumericUpDown();
|
||||
this.nudChar1 = new System.Windows.Forms.NumericUpDown();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.label4 = new System.Windows.Forms.Label();
|
||||
this.cbDigits = new System.Windows.Forms.CheckBox();
|
||||
((System.ComponentModel.ISupportInitialize)(this.nudNewX)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.nudNewY)).BeginInit();
|
||||
this.panel1.SuspendLayout();
|
||||
@@ -159,35 +160,37 @@
|
||||
// cbNotPrintable
|
||||
//
|
||||
this.cbNotPrintable.AutoSize = true;
|
||||
this.cbNotPrintable.Location = new System.Drawing.Point(140, 54);
|
||||
this.cbNotPrintable.Location = new System.Drawing.Point(140, 77);
|
||||
this.cbNotPrintable.Name = "cbNotPrintable";
|
||||
this.cbNotPrintable.Size = new System.Drawing.Size(116, 17);
|
||||
this.cbNotPrintable.TabIndex = 7;
|
||||
this.cbNotPrintable.Text = "0-31 (Not printable)";
|
||||
this.cbNotPrintable.UseVisualStyleBackColor = true;
|
||||
this.cbNotPrintable.CheckedChanged += new System.EventHandler(this.checkboxChanged);
|
||||
//
|
||||
// cbLatin
|
||||
//
|
||||
this.cbLatin.AutoSize = true;
|
||||
this.cbLatin.Checked = true;
|
||||
this.cbLatin.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||
this.cbLatin.Location = new System.Drawing.Point(140, 77);
|
||||
this.cbLatin.Location = new System.Drawing.Point(140, 100);
|
||||
this.cbLatin.Name = "cbLatin";
|
||||
this.cbLatin.Size = new System.Drawing.Size(91, 17);
|
||||
this.cbLatin.TabIndex = 8;
|
||||
this.cbLatin.Text = "32-127 (Latin)";
|
||||
this.cbLatin.UseVisualStyleBackColor = true;
|
||||
this.cbLatin.CheckedChanged += new System.EventHandler(this.checkboxChanged);
|
||||
//
|
||||
// cbExtended
|
||||
//
|
||||
this.cbExtended.AutoSize = true;
|
||||
this.cbExtended.Location = new System.Drawing.Point(140, 100);
|
||||
this.cbExtended.Location = new System.Drawing.Point(140, 123);
|
||||
this.cbExtended.Name = "cbExtended";
|
||||
this.cbExtended.Size = new System.Drawing.Size(119, 17);
|
||||
this.cbExtended.TabIndex = 9;
|
||||
this.cbExtended.Text = "128-255 (Extended)";
|
||||
this.cbExtended.UseVisualStyleBackColor = true;
|
||||
this.cbExtended.CheckedChanged += new System.EventHandler(this.cbExtended_CheckedChanged);
|
||||
this.cbExtended.CheckedChanged += new System.EventHandler(this.checkboxChanged);
|
||||
//
|
||||
// btnOK
|
||||
//
|
||||
@@ -221,7 +224,7 @@
|
||||
this.cbSingle.TabIndex = 12;
|
||||
this.cbSingle.Text = "Single frame";
|
||||
this.cbSingle.UseVisualStyleBackColor = true;
|
||||
this.cbSingle.CheckedChanged += new System.EventHandler(this.cbSingle_CheckedChanged);
|
||||
this.cbSingle.CheckedChanged += new System.EventHandler(this.checkboxChanged);
|
||||
//
|
||||
// toolTip1
|
||||
//
|
||||
@@ -235,7 +238,7 @@
|
||||
this.cbEncoding.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.cbEncoding.Enabled = false;
|
||||
this.cbEncoding.FormattingEnabled = true;
|
||||
this.cbEncoding.Location = new System.Drawing.Point(140, 123);
|
||||
this.cbEncoding.Location = new System.Drawing.Point(140, 146);
|
||||
this.cbEncoding.Name = "cbEncoding";
|
||||
this.cbEncoding.Size = new System.Drawing.Size(121, 21);
|
||||
this.cbEncoding.TabIndex = 13;
|
||||
@@ -294,7 +297,7 @@
|
||||
this.cbFontBased.TabIndex = 16;
|
||||
this.cbFontBased.Text = "Based on a font";
|
||||
this.cbFontBased.UseVisualStyleBackColor = true;
|
||||
this.cbFontBased.CheckedChanged += new System.EventHandler(this.cbFontBased_CheckedChanged);
|
||||
this.cbFontBased.CheckedChanged += new System.EventHandler(this.checkboxChanged);
|
||||
//
|
||||
// lblFont
|
||||
//
|
||||
@@ -371,6 +374,26 @@
|
||||
this.pnlFont.TabIndex = 22;
|
||||
this.pnlFont.Visible = false;
|
||||
//
|
||||
// label4
|
||||
//
|
||||
this.label4.AutoSize = true;
|
||||
this.label4.Location = new System.Drawing.Point(112, 152);
|
||||
this.label4.Name = "label4";
|
||||
this.label4.Size = new System.Drawing.Size(45, 13);
|
||||
this.label4.TabIndex = 25;
|
||||
this.label4.Text = "Sample:";
|
||||
this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.Location = new System.Drawing.Point(14, 152);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(45, 13);
|
||||
this.label3.TabIndex = 24;
|
||||
this.label3.Text = "Sample:";
|
||||
this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// nudChar2
|
||||
//
|
||||
this.nudChar2.Location = new System.Drawing.Point(161, 149);
|
||||
@@ -407,25 +430,16 @@
|
||||
0});
|
||||
this.nudChar1.ValueChanged += new System.EventHandler(this.nudNewX_ValueChanged);
|
||||
//
|
||||
// label3
|
||||
// cbDigits
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.Location = new System.Drawing.Point(14, 152);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(45, 13);
|
||||
this.label3.TabIndex = 24;
|
||||
this.label3.Text = "Sample:";
|
||||
this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// label4
|
||||
//
|
||||
this.label4.AutoSize = true;
|
||||
this.label4.Location = new System.Drawing.Point(112, 152);
|
||||
this.label4.Name = "label4";
|
||||
this.label4.Size = new System.Drawing.Size(45, 13);
|
||||
this.label4.TabIndex = 25;
|
||||
this.label4.Text = "Sample:";
|
||||
this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
this.cbDigits.AutoSize = true;
|
||||
this.cbDigits.Location = new System.Drawing.Point(140, 54);
|
||||
this.cbDigits.Name = "cbDigits";
|
||||
this.cbDigits.Size = new System.Drawing.Size(74, 17);
|
||||
this.cbDigits.TabIndex = 23;
|
||||
this.cbDigits.Text = "Digits only";
|
||||
this.cbDigits.UseVisualStyleBackColor = true;
|
||||
this.cbDigits.CheckedChanged += new System.EventHandler(this.checkboxChanged);
|
||||
//
|
||||
// New
|
||||
//
|
||||
@@ -433,6 +447,7 @@
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
|
||||
this.CancelButton = this.btnCancel;
|
||||
this.ClientSize = new System.Drawing.Size(484, 211);
|
||||
this.Controls.Add(this.cbDigits);
|
||||
this.Controls.Add(this.pnlFont);
|
||||
this.Controls.Add(this.cbFontBased);
|
||||
this.Controls.Add(this.cbEncoding);
|
||||
@@ -506,5 +521,6 @@
|
||||
private System.Windows.Forms.Label label3;
|
||||
public System.Windows.Forms.NumericUpDown nudChar2;
|
||||
public System.Windows.Forms.NumericUpDown nudChar1;
|
||||
public System.Windows.Forms.CheckBox cbDigits;
|
||||
}
|
||||
}
|
@@ -36,25 +36,13 @@ namespace McBitFont {
|
||||
this.Width = 300; this.Height = 250;
|
||||
}
|
||||
|
||||
private void cbSingle_CheckedChanged(object sender, EventArgs e) {
|
||||
bool c = !cbSingle.Checked;
|
||||
bool f = cbFontBased.Checked;
|
||||
cbNotPrintable.Enabled = c;
|
||||
cbLatin.Enabled = c;
|
||||
cbExtended.Enabled = c;
|
||||
cbFontBased.Enabled = c;
|
||||
rbMono.Enabled = c;
|
||||
rbVar.Enabled = c;
|
||||
pnlFont.Visible = c && f;
|
||||
this.Width = c && f ? 500 : 300;
|
||||
}
|
||||
|
||||
private void New_Load(object sender, EventArgs e) {
|
||||
toolTip1.SetToolTip(nudNewX, "Frame Width;\nCharacter width;\nDefault character width for Variable width fonts");
|
||||
toolTip1.SetToolTip(nudNewY, "Frame Height;\nCharacter height");
|
||||
toolTip1.SetToolTip(rbMono, "Monospaced font");
|
||||
toolTip1.SetToolTip(rbVar, "Variable width font");
|
||||
toolTip1.SetToolTip(cbSingle, "Create one single frame");
|
||||
toolTip1.SetToolTip(cbDigits, "Only digits characters with codes 48 - 57");
|
||||
toolTip1.SetToolTip(cbNotPrintable, "Add not printable characters with codes 0 - 31");
|
||||
toolTip1.SetToolTip(cbLatin, "Add Latin characters with codes 32 - 127");
|
||||
toolTip1.SetToolTip(cbExtended, "Add Extended characters with codes 128 - 255");
|
||||
@@ -157,17 +145,6 @@ namespace McBitFont {
|
||||
nud.Select(0, nud.Text.Length);
|
||||
}
|
||||
|
||||
private void cbExtended_CheckedChanged(object sender, EventArgs e) {
|
||||
cbEncoding.Enabled = cbExtended.Checked;
|
||||
}
|
||||
|
||||
private void cbFontBased_CheckedChanged(object sender, EventArgs e) {
|
||||
bool c = !cbSingle.Checked;
|
||||
bool f = cbFontBased.Checked;
|
||||
pnlFont.Visible = c && f;
|
||||
this.Width = c && f ? 500 : 300;
|
||||
}
|
||||
|
||||
private void btnFont_Click(object sender, EventArgs e) {
|
||||
if (dlgFont.ShowDialog() == DialogResult.OK) {
|
||||
lblFont.Text = dlgFont.Font.Name + " " + dlgFont.Font.Size.ToString();
|
||||
@@ -178,5 +155,28 @@ namespace McBitFont {
|
||||
private void nudNewX_ValueChanged(object sender, EventArgs e) {
|
||||
updateChars();
|
||||
}
|
||||
|
||||
private void checkboxChanged(object sender, EventArgs e) {
|
||||
if (!(sender as CheckBox).Focused) return;
|
||||
|
||||
bool c = !cbSingle.Checked;
|
||||
bool d = !cbDigits.Checked;
|
||||
bool p = cbNotPrintable.Checked;
|
||||
bool x = cbExtended.Checked;
|
||||
bool f = cbFontBased.Checked;
|
||||
|
||||
cbDigits.Enabled = c;
|
||||
cbNotPrintable.Enabled = c && d;
|
||||
cbLatin.Enabled = c && d;
|
||||
cbExtended.Enabled = c && d;
|
||||
cbFontBased.Enabled = c;
|
||||
cbEncoding.Enabled = c && d && x;
|
||||
rbMono.Enabled = c;
|
||||
rbVar.Enabled = c;
|
||||
pnlFont.Visible = c && f;
|
||||
if (p && x) cbLatin.Checked = true;
|
||||
this.Width = c && f ? 500 : 300;
|
||||
btnOK.Enabled = !c || !d || x || p || cbLatin.Checked;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -10,7 +10,7 @@ using System.Runtime.InteropServices;
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("McBitFont")]
|
||||
[assembly: AssemblyCopyright("Anton Mukhin © 2023")]
|
||||
[assembly: AssemblyCopyright("© Anton Mukhin, 2023")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
@@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
|
||||
// Можно задать все значения или принять номера сборки и редакции по умолчанию
|
||||
// используя "*", как показано ниже:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.1.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||
[assembly: AssemblyVersion("1.7.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.7.0.0")]
|
||||
|
14
McBitFont/packages.config
Normal file
@@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="MessagePack" version="3.1.3" targetFramework="net472" />
|
||||
<package id="MessagePack.Annotations" version="3.1.3" targetFramework="net472" />
|
||||
<package id="MessagePackAnalyzer" version="3.1.3" targetFramework="net472" developmentDependency="true" />
|
||||
<package id="Microsoft.Bcl.AsyncInterfaces" version="8.0.0" targetFramework="net472" />
|
||||
<package id="Microsoft.NET.StringTools" version="17.11.4" targetFramework="net472" />
|
||||
<package id="System.Buffers" version="4.5.1" targetFramework="net472" />
|
||||
<package id="System.Collections.Immutable" version="8.0.0" targetFramework="net472" />
|
||||
<package id="System.Memory" version="4.5.5" targetFramework="net472" />
|
||||
<package id="System.Numerics.Vectors" version="4.5.0" targetFramework="net472" />
|
||||
<package id="System.Runtime.CompilerServices.Unsafe" version="6.0.0" targetFramework="net472" />
|
||||
<package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net472" />
|
||||
</packages>
|
36
README.md
@@ -1,3 +1,37 @@
|
||||
# McBitFont
|
||||
|
||||
pixel based Font to C arrays converter
|
||||
McFLY's Bit Font and Image Editor
|
||||
|
||||
Features:
|
||||
- Generate a project based on a font installed in the system
|
||||
- Basic pixel manipulations: shift, flip, invert, etc...
|
||||
- Save / Load your project for later edits
|
||||
- Export as a C array in different formats
|
||||
|
||||
Requires .Net Framework 4.7+
|
||||
|
||||
Some basic hints on the interface:
|
||||
- Mouse 1 to mark a puxel black
|
||||
- Mouse 2 to mark a puxel white
|
||||
- Drag the mouse holding a button to draw pixels
|
||||
- Mouse Scroll to scroll up and down
|
||||
- Crtl + scroll to scroll left and right
|
||||
- Shift + scroll to zoom
|
||||
|
||||
|
||||
Download in the Releases section!
|
||||
|
||||
|
||||
### Screenshots:
|
||||
|
||||
Main window
|
||||
|
||||

|
||||
|
||||
New project dialog
|
||||
|
||||

|
||||
|
||||
Export dialog
|
||||
|
||||

|
||||
|
15
TODO.txt
Normal file
@@ -0,0 +1,15 @@
|
||||
Application:
|
||||
|
||||
Functionality:
|
||||
- Context menu in symbol navigator
|
||||
- Delete symbols before/after selected
|
||||
- Shift all symbols on code line (change symbol codes)
|
||||
- Specify starting code (extends the shift)
|
||||
- Ability to make monospaced font a variable width one
|
||||
- Undo/Redo
|
||||
- Image import from a file
|
||||
- Import from a text array
|
||||
- Rectangle selection to mass-paint, shift and mirror pixels
|
||||
- "Packed" fonts export
|
||||
|
||||
Bugs:
|
BIN
examples/CP437_Cyr_8x16.mbf
Normal file
BIN
examples/Font_5x7.mbf
Normal file
BIN
examples/Numbers_11x16.mbf
Normal file
BIN
examples/Numbers_13x20.mbf
Normal file
BIN
examples/gyver_icons_7x7.mbf
Normal file
BIN
examples/gyver_icons_8x8.mbf
Normal file
BIN
examples/haxrcorp_4089_cyrillic_altgr.mbf
Normal file
BIN
examples/helvB08_PREFAB.mbf
Normal file
BIN
examples/helvB08_t_cyrillic.mbf
Normal file
Before Width: | Height: | Size: 894 B After Width: | Height: | Size: 894 B |
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.5 KiB |
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 3.2 KiB |
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
BIN
images/Screenshot_01.png
Normal file
After Width: | Height: | Size: 32 KiB |
BIN
images/Screenshot_02.png
Normal file
After Width: | Height: | Size: 17 KiB |
BIN
images/Screenshot_03.png
Normal file
After Width: | Height: | Size: 43 KiB |