Anchor(ctrl, a, draw = false) { ; v3.4.2 - Titan static d GuiControlGet, p, Pos, %ctrl% If !A_Gui or ErrorLevel Return s = `n%A_Gui%:%ctrl%= c = x.w.y.h./.7.%A_GuiWidth%.%A_GuiHeight% StringSplit, c, c, . Loop, 4 b%A_Index% += !RegExMatch(a, c%A_Index% . "(?P<" . A_Index . ">[\d.]+)", b) If !InStr(d, s) d := d . s . px - c7 * b1 . c5 . pw - c7 * b2 . c5 . py - c8 * b3 . c5 . ph - c8 * b4 . c5 Loop, 4 If InStr(a, c%A_Index%) { i = %A_Index% c6 += !cx and (cx := i > 2) RegExMatch(d, s . "(?:(-?[\d.]+)/){" . i . "}", p) m := m . c%i% . p1 + c%c6% * b%i% } If draw t = Draw GuiControl, Move%t%, %ctrl%, %m% }