Merge pull request #165 from Houdini111/Home_LED_Toggle

Added the ability to toggle the HOME button ring LED on and off
This commit is contained in:
David Khachaturov 2019-06-13 12:57:14 +01:00 committed by GitHub
commit aea9f02cf4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 88 additions and 61 deletions

View file

@ -49,5 +49,7 @@
<!-- When enabled, can only calibrate one controller at a time. --> <!-- When enabled, can only calibrate one controller at a time. -->
<!-- Default: false --> <!-- Default: false -->
<add key="NonOriginalController" value="false" /> <add key="NonOriginalController" value="false" />
<!-- The program will keep the HOME button LED ring light on at all times-->
<add key="HomeLEDOn" value="false"/>
</appSettings> </appSettings>
</configuration> </configuration>

View file

@ -175,7 +175,6 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<None Include="Properties\app.manifest" /> <None Include="Properties\app.manifest" />
<None Include="FodyWeavers.xml" />
<Content Include="Icons\betterjoyforcemu_icon.ico" /> <Content Include="Icons\betterjoyforcemu_icon.ico" />
<Content Include="hidapi.dll"> <Content Include="hidapi.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>

View file

@ -347,7 +347,7 @@ namespace BetterJoyForCemu {
dump_calibration_data(); dump_calibration_data();
} }
BlinkLED(); BlinkHomeLight();
a[0] = leds_; a[0] = leds_;
Subcommand(0x30, a, 1); Subcommand(0x30, a, 1);
@ -364,16 +364,29 @@ namespace BetterJoyForCemu {
return 0; return 0;
} }
public void SetLED(byte leds_ = 0x0) { public void SetPlayerLED(byte leds_ = 0x0) {
Subcommand(0x30, new byte[] { leds_ }, 1); Subcommand(0x30, new byte[] { leds_ }, 1);
} }
public void BlinkLED() { // do not call after initial setup public void BlinkHomeLight() { // do not call after initial setup
byte[] a = Enumerable.Repeat((byte)0xFF, 25).ToArray(); // LED ring byte[] a = Enumerable.Repeat((byte)0xFF, 25).ToArray();
a[0] = 0x18; a[0] = 0x18;
a[1] = 0x01; a[1] = 0x01;
Subcommand(0x38, a, 25, false); Subcommand(0x38, a, 25, false);
} }
public void SetHomeLight(bool on) {
byte[] a = Enumerable.Repeat((byte)0xFF, 25).ToArray();
if(on) {
a[0] = 0x1F;
a[1] = 0xF0;
}
else {
a[0] = 0x10;
a[1] = 0x01;
}
Subcommand(0x38, a, 25, false);
}
private void BatteryChanged() { // battery changed level private void BatteryChanged() { // battery changed level
foreach (var v in form.con) { foreach (var v in form.con) {

View file

@ -59,19 +59,19 @@
// //
// console // console
// //
this.console.Location = new System.Drawing.Point(12, 122); this.console.Location = new System.Drawing.Point(12, 132);
this.console.Multiline = true; this.console.Multiline = true;
this.console.Name = "console"; this.console.Name = "console";
this.console.ReadOnly = true; this.console.ReadOnly = true;
this.console.Size = new System.Drawing.Size(262, 93); this.console.Size = new System.Drawing.Size(262, 100);
this.console.TabIndex = 2; this.console.TabIndex = 2;
// //
// label1 // label1
// //
this.label1.AutoSize = true; this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(9, 107); this.label1.Location = new System.Drawing.Point(9, 116);
this.label1.Name = "label1"; this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(89, 12); this.label1.Size = new System.Drawing.Size(80, 13);
this.label1.TabIndex = 1; this.label1.TabIndex = 1;
this.label1.Text = "Console Output"; this.label1.Text = "Console Output";
this.label1.TextAlign = System.Drawing.ContentAlignment.TopCenter; this.label1.TextAlign = System.Drawing.ContentAlignment.TopCenter;
@ -92,21 +92,21 @@
this.contextMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.contextMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.exitToolStripMenuItem}); this.exitToolStripMenuItem});
this.contextMenu.Name = "contextMenu"; this.contextMenu.Name = "contextMenu";
this.contextMenu.Size = new System.Drawing.Size(97, 26); this.contextMenu.Size = new System.Drawing.Size(93, 26);
// //
// exitToolStripMenuItem // exitToolStripMenuItem
// //
this.exitToolStripMenuItem.Name = "exitToolStripMenuItem"; this.exitToolStripMenuItem.Name = "exitToolStripMenuItem";
this.exitToolStripMenuItem.Size = new System.Drawing.Size(96, 22); this.exitToolStripMenuItem.Size = new System.Drawing.Size(92, 22);
this.exitToolStripMenuItem.Text = "Exit"; this.exitToolStripMenuItem.Text = "Exit";
this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click); this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click);
// //
// version_lbl // version_lbl
// //
this.version_lbl.AutoSize = true; this.version_lbl.AutoSize = true;
this.version_lbl.Location = new System.Drawing.Point(246, 221); this.version_lbl.Location = new System.Drawing.Point(246, 239);
this.version_lbl.Name = "version_lbl"; this.version_lbl.Name = "version_lbl";
this.version_lbl.Size = new System.Drawing.Size(29, 12); this.version_lbl.Size = new System.Drawing.Size(28, 13);
this.version_lbl.TabIndex = 2; this.version_lbl.TabIndex = 2;
this.version_lbl.Text = "v6.0"; this.version_lbl.Text = "v6.0";
// //
@ -115,10 +115,10 @@
this.passiveScanBox.AutoSize = true; this.passiveScanBox.AutoSize = true;
this.passiveScanBox.Checked = true; this.passiveScanBox.Checked = true;
this.passiveScanBox.CheckState = System.Windows.Forms.CheckState.Checked; this.passiveScanBox.CheckState = System.Windows.Forms.CheckState.Checked;
this.passiveScanBox.Location = new System.Drawing.Point(12, 220); this.passiveScanBox.Location = new System.Drawing.Point(12, 238);
this.passiveScanBox.Name = "passiveScanBox"; this.passiveScanBox.Name = "passiveScanBox";
this.passiveScanBox.RightToLeft = System.Windows.Forms.RightToLeft.Yes; this.passiveScanBox.RightToLeft = System.Windows.Forms.RightToLeft.Yes;
this.passiveScanBox.Size = new System.Drawing.Size(96, 16); this.passiveScanBox.Size = new System.Drawing.Size(91, 17);
this.passiveScanBox.TabIndex = 4; this.passiveScanBox.TabIndex = 4;
this.passiveScanBox.Text = "Passive Scan"; this.passiveScanBox.Text = "Passive Scan";
this.passiveScanBox.UseVisualStyleBackColor = true; this.passiveScanBox.UseVisualStyleBackColor = true;
@ -127,9 +127,9 @@
// linkLabel1 // linkLabel1
// //
this.linkLabel1.AutoSize = true; this.linkLabel1.AutoSize = true;
this.linkLabel1.Location = new System.Drawing.Point(196, 221); this.linkLabel1.Location = new System.Drawing.Point(196, 239);
this.linkLabel1.Name = "linkLabel1"; this.linkLabel1.Name = "linkLabel1";
this.linkLabel1.Size = new System.Drawing.Size(41, 12); this.linkLabel1.Size = new System.Drawing.Size(42, 13);
this.linkLabel1.TabIndex = 5; this.linkLabel1.TabIndex = 5;
this.linkLabel1.TabStop = true; this.linkLabel1.TabStop = true;
this.linkLabel1.Text = "Donate"; this.linkLabel1.Text = "Donate";
@ -145,45 +145,45 @@
this.conCntrls.Controls.Add(this.con3); this.conCntrls.Controls.Add(this.con3);
this.conCntrls.Controls.Add(this.con2); this.conCntrls.Controls.Add(this.con2);
this.conCntrls.Controls.Add(this.con1); this.conCntrls.Controls.Add(this.con1);
this.conCntrls.Location = new System.Drawing.Point(12, 11); this.conCntrls.Location = new System.Drawing.Point(12, 12);
this.conCntrls.Name = "conCntrls"; this.conCntrls.Name = "conCntrls";
this.conCntrls.Size = new System.Drawing.Size(262, 92); this.conCntrls.Size = new System.Drawing.Size(262, 100);
this.conCntrls.TabIndex = 0; this.conCntrls.TabIndex = 0;
this.conCntrls.TabStop = false; this.conCntrls.TabStop = false;
this.conCntrls.Text = "Connected Controllers"; this.conCntrls.Text = "Connected Controllers";
// //
// loc4 // loc4
// //
this.loc4.Location = new System.Drawing.Point(198, 74); this.loc4.Location = new System.Drawing.Point(198, 80);
this.loc4.Name = "loc4"; this.loc4.Name = "loc4";
this.loc4.Size = new System.Drawing.Size(58, 18); this.loc4.Size = new System.Drawing.Size(58, 20);
this.loc4.TabIndex = 7; this.loc4.TabIndex = 7;
this.loc4.Text = "Locate"; this.loc4.Text = "Locate";
this.loc4.UseVisualStyleBackColor = true; this.loc4.UseVisualStyleBackColor = true;
// //
// loc3 // loc3
// //
this.loc3.Location = new System.Drawing.Point(134, 74); this.loc3.Location = new System.Drawing.Point(134, 80);
this.loc3.Name = "loc3"; this.loc3.Name = "loc3";
this.loc3.Size = new System.Drawing.Size(58, 18); this.loc3.Size = new System.Drawing.Size(58, 20);
this.loc3.TabIndex = 6; this.loc3.TabIndex = 6;
this.loc3.Text = "Locate"; this.loc3.Text = "Locate";
this.loc3.UseVisualStyleBackColor = true; this.loc3.UseVisualStyleBackColor = true;
// //
// loc2 // loc2
// //
this.loc2.Location = new System.Drawing.Point(70, 74); this.loc2.Location = new System.Drawing.Point(70, 80);
this.loc2.Name = "loc2"; this.loc2.Name = "loc2";
this.loc2.Size = new System.Drawing.Size(58, 18); this.loc2.Size = new System.Drawing.Size(58, 20);
this.loc2.TabIndex = 5; this.loc2.TabIndex = 5;
this.loc2.Text = "Locate"; this.loc2.Text = "Locate";
this.loc2.UseVisualStyleBackColor = true; this.loc2.UseVisualStyleBackColor = true;
// //
// loc1 // loc1
// //
this.loc1.Location = new System.Drawing.Point(6, 74); this.loc1.Location = new System.Drawing.Point(6, 80);
this.loc1.Name = "loc1"; this.loc1.Name = "loc1";
this.loc1.Size = new System.Drawing.Size(58, 18); this.loc1.Size = new System.Drawing.Size(58, 20);
this.loc1.TabIndex = 4; this.loc1.TabIndex = 4;
this.loc1.Text = "Locate"; this.loc1.Text = "Locate";
this.loc1.UseVisualStyleBackColor = true; this.loc1.UseVisualStyleBackColor = true;
@ -193,9 +193,9 @@
this.con4.BackgroundImage = global::BetterJoyForCemu.Properties.Resources.cross; this.con4.BackgroundImage = global::BetterJoyForCemu.Properties.Resources.cross;
this.con4.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; this.con4.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.con4.Enabled = false; this.con4.Enabled = false;
this.con4.Location = new System.Drawing.Point(198, 18); this.con4.Location = new System.Drawing.Point(198, 20);
this.con4.Name = "con4"; this.con4.Name = "con4";
this.con4.Size = new System.Drawing.Size(58, 54); this.con4.Size = new System.Drawing.Size(58, 59);
this.con4.TabIndex = 3; this.con4.TabIndex = 3;
this.con4.TabStop = false; this.con4.TabStop = false;
this.con4.UseVisualStyleBackColor = true; this.con4.UseVisualStyleBackColor = true;
@ -205,9 +205,9 @@
this.con3.BackgroundImage = global::BetterJoyForCemu.Properties.Resources.cross; this.con3.BackgroundImage = global::BetterJoyForCemu.Properties.Resources.cross;
this.con3.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; this.con3.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.con3.Enabled = false; this.con3.Enabled = false;
this.con3.Location = new System.Drawing.Point(134, 18); this.con3.Location = new System.Drawing.Point(134, 20);
this.con3.Name = "con3"; this.con3.Name = "con3";
this.con3.Size = new System.Drawing.Size(58, 54); this.con3.Size = new System.Drawing.Size(58, 59);
this.con3.TabIndex = 2; this.con3.TabIndex = 2;
this.con3.TabStop = false; this.con3.TabStop = false;
this.con3.UseVisualStyleBackColor = true; this.con3.UseVisualStyleBackColor = true;
@ -217,9 +217,9 @@
this.con2.BackgroundImage = global::BetterJoyForCemu.Properties.Resources.cross; this.con2.BackgroundImage = global::BetterJoyForCemu.Properties.Resources.cross;
this.con2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; this.con2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.con2.Enabled = false; this.con2.Enabled = false;
this.con2.Location = new System.Drawing.Point(70, 18); this.con2.Location = new System.Drawing.Point(70, 20);
this.con2.Name = "con2"; this.con2.Name = "con2";
this.con2.Size = new System.Drawing.Size(58, 54); this.con2.Size = new System.Drawing.Size(58, 59);
this.con2.TabIndex = 1; this.con2.TabIndex = 1;
this.con2.TabStop = false; this.con2.TabStop = false;
this.con2.UseVisualStyleBackColor = true; this.con2.UseVisualStyleBackColor = true;
@ -229,9 +229,9 @@
this.con1.BackgroundImage = global::BetterJoyForCemu.Properties.Resources.cross; this.con1.BackgroundImage = global::BetterJoyForCemu.Properties.Resources.cross;
this.con1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; this.con1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.con1.Enabled = false; this.con1.Enabled = false;
this.con1.Location = new System.Drawing.Point(6, 18); this.con1.Location = new System.Drawing.Point(6, 20);
this.con1.Name = "con1"; this.con1.Name = "con1";
this.con1.Size = new System.Drawing.Size(58, 54); this.con1.Size = new System.Drawing.Size(58, 59);
this.con1.TabIndex = 0; this.con1.TabIndex = 0;
this.con1.TabStop = false; this.con1.TabStop = false;
this.btnTip.SetToolTip(this.con1, "Click on Joycons to join/split them"); this.btnTip.SetToolTip(this.con1, "Click on Joycons to join/split them");
@ -239,10 +239,10 @@
// //
// foldLbl // foldLbl
// //
this.foldLbl.Location = new System.Drawing.Point(274, 18); this.foldLbl.Location = new System.Drawing.Point(274, 20);
this.foldLbl.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); this.foldLbl.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.foldLbl.Name = "foldLbl"; this.foldLbl.Name = "foldLbl";
this.foldLbl.Size = new System.Drawing.Size(13, 213); this.foldLbl.Size = new System.Drawing.Size(13, 231);
this.foldLbl.TabIndex = 12; this.foldLbl.TabIndex = 12;
this.foldLbl.Text = ">"; this.foldLbl.Text = ">";
this.foldLbl.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; this.foldLbl.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
@ -252,10 +252,10 @@
// startInTrayBox // startInTrayBox
// //
this.startInTrayBox.AutoSize = true; this.startInTrayBox.AutoSize = true;
this.startInTrayBox.Location = new System.Drawing.Point(107, 220); this.startInTrayBox.Location = new System.Drawing.Point(107, 238);
this.startInTrayBox.Name = "startInTrayBox"; this.startInTrayBox.Name = "startInTrayBox";
this.startInTrayBox.RightToLeft = System.Windows.Forms.RightToLeft.Yes; this.startInTrayBox.RightToLeft = System.Windows.Forms.RightToLeft.Yes;
this.startInTrayBox.Size = new System.Drawing.Size(102, 16); this.startInTrayBox.Size = new System.Drawing.Size(83, 17);
this.startInTrayBox.TabIndex = 6; this.startInTrayBox.TabIndex = 6;
this.startInTrayBox.Text = "Start in Tray"; this.startInTrayBox.Text = "Start in Tray";
this.startInTrayBox.UseVisualStyleBackColor = true; this.startInTrayBox.UseVisualStyleBackColor = true;
@ -263,9 +263,9 @@
// //
// btn_open3rdP // btn_open3rdP
// //
this.btn_open3rdP.Location = new System.Drawing.Point(188, 103); this.btn_open3rdP.Location = new System.Drawing.Point(188, 112);
this.btn_open3rdP.Name = "btn_open3rdP"; this.btn_open3rdP.Name = "btn_open3rdP";
this.btn_open3rdP.Size = new System.Drawing.Size(86, 18); this.btn_open3rdP.Size = new System.Drawing.Size(86, 20);
this.btn_open3rdP.TabIndex = 7; this.btn_open3rdP.TabIndex = 7;
this.btn_open3rdP.Text = "Add Controllers"; this.btn_open3rdP.Text = "Add Controllers";
this.btn_open3rdP.UseVisualStyleBackColor = true; this.btn_open3rdP.UseVisualStyleBackColor = true;
@ -274,11 +274,11 @@
// groupBox1 // groupBox1
// //
this.groupBox1.Controls.Add(this.tableLayoutPanel1); this.groupBox1.Controls.Add(this.tableLayoutPanel1);
this.groupBox1.Location = new System.Drawing.Point(3, 10); this.groupBox1.Location = new System.Drawing.Point(3, 11);
this.groupBox1.Margin = new System.Windows.Forms.Padding(2); this.groupBox1.Margin = new System.Windows.Forms.Padding(2);
this.groupBox1.Name = "groupBox1"; this.groupBox1.Name = "groupBox1";
this.groupBox1.Padding = new System.Windows.Forms.Padding(2); this.groupBox1.Padding = new System.Windows.Forms.Padding(2);
this.groupBox1.Size = new System.Drawing.Size(227, 223); this.groupBox1.Size = new System.Drawing.Size(227, 242);
this.groupBox1.TabIndex = 9; this.groupBox1.TabIndex = 9;
this.groupBox1.TabStop = false; this.groupBox1.TabStop = false;
this.groupBox1.Text = "Config"; this.groupBox1.Text = "Config";
@ -291,12 +291,12 @@
this.tableLayoutPanel1.ColumnCount = 2; this.tableLayoutPanel1.ColumnCount = 2;
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 58.90411F)); this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 58.90411F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 41.09589F)); this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 41.09589F));
this.tableLayoutPanel1.Location = new System.Drawing.Point(4, 16); this.tableLayoutPanel1.Location = new System.Drawing.Point(4, 17);
this.tableLayoutPanel1.Margin = new System.Windows.Forms.Padding(2); this.tableLayoutPanel1.Margin = new System.Windows.Forms.Padding(2);
this.tableLayoutPanel1.Name = "tableLayoutPanel1"; this.tableLayoutPanel1.Name = "tableLayoutPanel1";
this.tableLayoutPanel1.RowCount = 1; this.tableLayoutPanel1.RowCount = 1;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle()); this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
this.tableLayoutPanel1.Size = new System.Drawing.Size(219, 202); this.tableLayoutPanel1.Size = new System.Drawing.Size(219, 219);
this.tableLayoutPanel1.TabIndex = 1; this.tableLayoutPanel1.TabIndex = 1;
// //
// rightPanel // rightPanel
@ -306,7 +306,7 @@
this.rightPanel.Location = new System.Drawing.Point(289, 1); this.rightPanel.Location = new System.Drawing.Point(289, 1);
this.rightPanel.Margin = new System.Windows.Forms.Padding(2, 2, 12, 2); this.rightPanel.Margin = new System.Windows.Forms.Padding(2, 2, 12, 2);
this.rightPanel.Name = "rightPanel"; this.rightPanel.Name = "rightPanel";
this.rightPanel.Size = new System.Drawing.Size(231, 252); this.rightPanel.Size = new System.Drawing.Size(231, 273);
this.rightPanel.TabIndex = 11; this.rightPanel.TabIndex = 11;
this.rightPanel.Visible = false; this.rightPanel.Visible = false;
// //
@ -314,19 +314,20 @@
// //
this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.button1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.button1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.button1.Location = new System.Drawing.Point(165, 233); this.button1.Location = new System.Drawing.Point(165, 252);
this.button1.Margin = new System.Windows.Forms.Padding(2); this.button1.Margin = new System.Windows.Forms.Padding(2);
this.button1.Name = "button1"; this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(61, 19); this.button1.Size = new System.Drawing.Size(61, 21);
this.button1.TabIndex = 10; this.button1.TabIndex = 10;
this.button1.Text = "Apply"; this.button1.Text = "Apply";
this.button1.UseVisualStyleBackColor = true; this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button1_Click); this.button1.Click += new System.EventHandler(this.button1_Click);
//
// AutoCalibrate // AutoCalibrate
// //
this.AutoCalibrate.Location = new System.Drawing.Point(111, 103); this.AutoCalibrate.Location = new System.Drawing.Point(111, 112);
this.AutoCalibrate.Name = "AutoCalibrate"; this.AutoCalibrate.Name = "AutoCalibrate";
this.AutoCalibrate.Size = new System.Drawing.Size(71, 18); this.AutoCalibrate.Size = new System.Drawing.Size(71, 20);
this.AutoCalibrate.TabIndex = 8; this.AutoCalibrate.TabIndex = 8;
this.AutoCalibrate.Text = "Calibrate"; this.AutoCalibrate.Text = "Calibrate";
this.AutoCalibrate.UseVisualStyleBackColor = true; this.AutoCalibrate.UseVisualStyleBackColor = true;
@ -334,14 +335,13 @@
// //
// MainForm // MainForm
// //
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.AutoSize = true; this.AutoSize = true;
this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
this.ClientSize = new System.Drawing.Size(573, 261); this.ClientSize = new System.Drawing.Size(284, 261);
this.Controls.Add(this.foldLbl); this.Controls.Add(this.foldLbl);
this.Controls.Add(this.rightPanel); this.Controls.Add(this.rightPanel);
this.ClientSize = new System.Drawing.Size(284, 241);
this.Controls.Add(this.AutoCalibrate); this.Controls.Add(this.AutoCalibrate);
this.Controls.Add(this.btn_open3rdP); this.Controls.Add(this.btn_open3rdP);
this.Controls.Add(this.startInTrayBox); this.Controls.Add(this.startInTrayBox);

View file

@ -165,8 +165,8 @@ namespace BetterJoyForCemu {
byte led = jc.LED <= v.LED ? jc.LED : v.LED; byte led = jc.LED <= v.LED ? jc.LED : v.LED;
jc.LED = led; jc.LED = led;
v.LED = led; v.LED = led;
jc.SetLED(led); jc.SetPlayerLED(led);
v.SetLED(led); v.SetPlayerLED(led);
v.xin.Dispose(); v.xin.Dispose();
v.xin = null; v.xin = null;
@ -204,8 +204,8 @@ namespace BetterJoyForCemu {
//Set original Joycon LEDs //Set original Joycon LEDs
v.other.LED = (byte)(0x1 << v.other.PadId); v.other.LED = (byte)(0x1 << v.other.PadId);
v.LED = (byte)(0x1 << v.PadId); v.LED = (byte)(0x1 << v.PadId);
v.other.SetLED(v.other.LED); v.other.SetPlayerLED(v.other.LED);
v.SetLED(v.LED); v.SetPlayerLED(v.LED);
v.other.other = null; v.other.other = null;
v.other = null; v.other = null;
@ -256,6 +256,12 @@ namespace BetterJoyForCemu {
} else if (sender.GetType() == typeof(TextBox) && settings[KeyCtl] != null) { } else if (sender.GetType() == typeof(TextBox) && settings[KeyCtl] != null) {
settings[KeyCtl].Value = ((TextBox)valCtl).Text.ToLower(); settings[KeyCtl].Value = ((TextBox)valCtl).Text.ToLower();
} }
if(KeyCtl == "HomeLEDOn") {
bool on = settings[KeyCtl].Value.ToLower() == "true";
foreach(Joycon j in Program.mgr.j) {
j.SetHomeLight(on);
}
}
configFile.Save(ConfigurationSaveMode.Modified); configFile.Save(ConfigurationSaveMode.Modified);
ConfigurationManager.RefreshSection(configFile.AppSettings.SectionInformation.Name); ConfigurationManager.RefreshSection(configFile.AppSettings.SectionInformation.Name);
} catch (ConfigurationErrorsException) { } catch (ConfigurationErrorsException) {

View file

@ -228,8 +228,8 @@ namespace BetterJoyForCemu {
byte led = temp.LED <= v.LED ? temp.LED : v.LED; byte led = temp.LED <= v.LED ? temp.LED : v.LED;
temp.LED = led; temp.LED = led;
v.LED = led; v.LED = led;
temp.SetLED(led); temp.SetPlayerLED(led);
v.SetLED(led); v.SetPlayerLED(led);
temp.xin.Dispose(); temp.xin.Dispose();
temp.xin = null; temp.xin = null;
@ -254,7 +254,14 @@ namespace BetterJoyForCemu {
jc.xin.Connect(); jc.xin.Connect();
jc.Attach(leds_: jc.LED); jc.Attach(leds_: jc.LED);
jc.Begin();
bool on = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None).AppSettings.Settings["HomeLEDOn"].Value.ToLower() == "true";
foreach (Joycon j in Program.mgr.j)
{
j.SetHomeLight(on);
}
jc.Begin();
if (form.nonOriginal) { if (form.nonOriginal) {
jc.getActiveData(); jc.getActiveData();
} }