Ok my skin first off has a webparser that acts as a fileparser and regexes the rainmeter.ini and then gets the skins position in x and y. (i set updaterate=1 so it's the most relevant position) And this all works dandy. Why this is done is that when you click the button it takes the measure of it's own position and activates and moves another skin to the same location (so no matter where i move skin a when i click skin a's button skin b shows up just below it) This too works fine.
Except for this.
When you first add the skin and click the button it activates the other skin and moves EVERY SKIN to the top left corner (including skins not my own).
However if you add the skin and refresh all once this never happens.
Now I tried adding in !RainmeterRefresh instead of redraw but that does nothing you have to manually do a refresh all once you add the skin. once it's been added though and refreshed all once this will never occur.
While this does seem like an easy fix to my personal use (just refresh all once) it does make a bit of an issue if i were to release my skin and worse if people were to customize it and release similar working skins. Namely we'd have to have explicit instructions to refresh all after placing a skin. Also i would have to get a lot of people sending me emails/posting forums asking why does it move everything to the top left.
If any of you can figure out why this is happening or have a workaround i can implement that would be great.
Below is a sample of the regex calling for x/y pos and the command i use to move.
Code: Select all
[MeasurePosition]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=file://#SETTINGSPATH#\Rainmeter.ini
RegExp="(?siU)\[Alchymist.*Skins.*Network.*WiFi].*WindowX=(.*)\nWindowY.*=(.*)Alpha"
UpdateRate=1
[MeasureX]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasurePosition]
StringIndex=1
[MeasureY]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasurePosition]
StringIndex=2
Code: Select all
[MeterWiFi]
Meter=Image
MeterStyle=StyleElementBack
LeftMouseDownAction=!execute [!RainmeterHideMeter MeterWiFi][!RainmeterShowMeter MeterWiFiActive][!RainmeterRedraw]
[MeterWiFiActive]
Meter=Image
MeterStyle=StyleElementBack
Hidden=1
LeftMouseUpAction=!execute [!RainmeterToggleConfig "Alchymist\Engine\Transmutation\WiFi" "WiFi.ini"][!RainmeterMove [MeasureX] [MeasureY] "Alchymist\Engine\Transmutation\WiFi"][!RainmeterHideMeter MeterWiFiActive][!RainmeterShowMeter MeterWiFi][!RainmeterRedraw] <- Changing this to Refresh does nothing