For some reason, every time I log off, Chronometer seems to reset itself. I log back in and the bar locations were not where I left them. Is there a way to fix this? I am using the latest build. Thanks.
It's not resetting it's poisition, it's actually "just not working". I cleared the SV files and logged WoW and it worked.. everything. Until I relogged and it all acted up again and wouldn't let the anchor appear nor the timers themselves.
I've been seeing this since WoW 2.2 as well. I can move chron to where I want it, but the next time I log in it'll be almost fully off-screen in the upper-left corner. Fortunately it's not so far off that I can't fix it, but it's getting annoying to do on each login. I have my overall UI scale set to 0.9--I wonder if that's a factor? (Though it was fine prior to the patch...)
Edit: other settings seem to be restored fine though, just the anchor position gets reset.
I have been messing with this for some time. I am using vista, so I dont know if my experience will be the same as yours
First the config file for Chronometer is in \<Wow Directory>\WTF\<Account Name>
The File name is Chronometer.lua
What I found odd (and this may be a vista thing) is that I cannot see the file. I have nothing hidden, I am showing all system files, and yet every single configuration lua file in this directory is invisible. I can even create another file with the same file name here, and I dont get a conflict. If I do a search for Chronometer.lua, I can see it, and it is in that directory, but i have no other means of changing this file.
I think I figured it out. I don't know LUA much, but I am a programmer by trade...
It appears to be a problem with the fact that when the initial f:SetPoint is called, it is explicitly called with a fixed reference point - "LEFTTOP" I think...
...but when GetPoint is called, the reference point might be something else, like "CENTER", "RIGHTBOTTOM", etc.
Sooo....I changed some code in Chronometer:CreateAnchor to:
if self.db.profile.barposition.x and self.db.profile.barposition.y and self.db.profile.barposition.anchor then
f:SetPoint(self.db.profile.barposition.anchor, UIParent, self.db.profile.barposition.anchor, self.db.profile.barposition.x,
f:SetPoint("CENTER", UIParent, "CENTER", 0, 50)
f:SetScript("OnDragStart", function() this:StartMoving() end )
local p, t, v, x, y = this:GetPoint()
this.owner.db.profile.barposition.x = math.floor(x)
this.owner.db.profile.barposition.y = math.floor(y)
this.owner.db.profile.barposition.anchor = v
Basically saving and reusing the anchor point.
Being new to LUA, there might be a better way - but this seems to work for me.
Good catch. The reference point for all frames used to be the top left corner but now has changed to be "relative to the nearest corner" so adjusting UI scale will not affect it.
I found this on the UI technical change Blue posts: "Frame positions are saved relative to the nearest corner rather than the upper left corner, so that they don't move when changing resolution and screen aspect ratio."
Andryk's fix works perfectly!