Skip to content

Commit 74236ee

Browse files
committed
added partial event handling for preset buttons, modified KeyboardKeyMap to insert the boolalpha version of a boolean value into the string instead of 1 or 0.
1 parent c146c27 commit 74236ee

File tree

3 files changed

+22
-7
lines changed

3 files changed

+22
-7
lines changed

XMapLib/KeyboardKeyMap.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ namespace sds
8484
ss << "SendingElementVK:" << obj.SendingElementVK << " ";
8585
ss << "MappedToVK:" << obj.MappedToVK << " ";
8686
ss << "MappedToVK(AKA):" << (isPrintable? printed : ' ') << " ";
87-
ss << "UsesRepeat:" << obj.UsesRepeat << " ";
87+
ss << "UsesRepeat:" << std::boolalpha << obj.UsesRepeat << " ";
8888
ss << "[/KeyboardKeyMap]" << " ";
8989
os += ss.str();
9090
return os;

XMapLibSharp/Form1.cs

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,8 @@ public partial class Form1 : Form
2929
private readonly Color CLR_NORMAL = Color.DarkSeaGreen;
3030
private readonly XMapLibWrapper mapper;
3131
private XMapLibStickMap currentXMapLibStick = XMapLibStickMap.RIGHT;
32-
private Button? currentSelectedPresetButton = null;
32+
//private Button? currentSelectedPresetButton = null;
33+
private List<KeymapPreset> presets = new();
3334
public Form1()
3435
{
3536
InitializeComponent();
@@ -47,11 +48,12 @@ public Form1()
4748
}
4849
private void InitPresetButtons()
4950
{
50-
var but = KeymapPresetOperations.BuildPresetButtons();
51+
presets = KeymapPresetOperations.BuildPresetButtons();
5152
//assumes at least one preset is built
52-
foreach (KeymapPreset pr in but)
53+
foreach (KeymapPreset pr in presets)
5354
{
5455
this.flwPresetButtons.Controls.Add(pr.ButtonForPresetSection);
56+
pr.ButtonForPresetSection.Click += ButtonForPresetSection_Click;
5557
}
5658
if (this.flwPresetButtons.Controls[0] is Button btn)
5759
{
@@ -151,13 +153,20 @@ static void ShowErrorMessage(string msg)
151153
ShowErrorMessage("e.Argument is null!");
152154
}
153155
}
154-
155156
private void trackBar1_ValueChanged(object sender, EventArgs e)
156157
{
157158
int val = trackBar1.Value;
158159
mapper.SetMouseSensitivity(val);
159160
UpdateMouseSensitivityButton();
160161
UpdateIsMouseRunning();
161162
}
163+
private void ButtonForPresetSection_Click(object? sender, EventArgs e)
164+
{
165+
if (sender is Button b)
166+
{
167+
bool unselect = KeymapPresetOperations.IsButtonTextSelected(b);
168+
KeymapPresetOperations.ChangeButtonTextForSelected(b, !unselect);
169+
}
170+
}
162171
}
163172
}

XMapLibSharp/XMapLibWrapper.cs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,8 +97,14 @@ public List<XMapLibKeymap> GetKeyMaps(out string mapsAsString)
9797
mp.VKMappedFrom = Int32.Parse(tokens[i + 1].Split()[1]);
9898
mp.VKMappedTo = Int32.Parse(tokens[i + 2].Split()[1]);
9999
if (akaStrings.Length > 1)
100-
mp.VKMappedToAKA = Char.Parse(akaStrings[1]);
101-
mp.UsesRepeatBehavior = Boolean.Parse(tokens[i + 4].Split()[1]);
100+
{
101+
if(akaStrings[1].Length > 0)
102+
mp.VKMappedToAKA = Char.Parse(akaStrings[1]);
103+
}
104+
string[] repeatStrings = tokens[i+4].Split();
105+
if(repeatStrings.Length >1)
106+
if (repeatStrings[1].Length > 0)
107+
mp.UsesRepeatBehavior = Boolean.Parse(repeatStrings[1]);
102108
outMaps.Add(mp);
103109
}
104110
}

0 commit comments

Comments
 (0)