I agree. Unfortunately, WoW doesn't allow us to do any kind of texture masking. :(
WoW does allow one kind of masking, but I believe it works only with textures, and not with model frames. It applies a circular secondary alpha blend to a texture frame, masking any pixels of the original texture that were outside the circle.
I'm not sure there are any examples of this old, old function left in any of Blizzard's current code, but I'm pretty sure it was formerly used to make round icons out of square ones. (I believe it exposes the same internal function that creates the circular 2d character portraits used in unit frames.)
So I found the source of my issue with SexyMap, in which the North indicator is shown fixed at the top of the map on every login and UI reload even though I have minimap rotation enabled:
When the minimap is set to a rotating minimap in the interface options (GetCVar("rotateMinimap") == "1"), the Buttons module should apply its show/hide settings for "show compass labels" to MiniMapCompassRing rather than to MinimapNorthTag. Instead, it blindly forces MinimapNorthTag in all cases, which causes the North indicator to show even when the minimap is set to rotate.
It doesn't have to be a minimap-related addon to move a button. For example, a clock addon (that has its own display) could have an option to show/hide the default minimap clock, and its show/hiding interferes with SexyMap's one.
Could we have an option to make the minimap cluster behave as if it hadn't been moved by an addon? Of course, this would (should) put the minimap back to its original position. I'm mainly thinking of Titan Panel's feature to adjust the minimap position, which doesn't do anything to the minimap. And ideally, move the minimap up a bit to compensate if you're hiding the location text.
Also! I'd like to be able to have _some_ minimap buttons' behavior controlled by SexyMap. That is, I'd like to for hide some of Blizzard's buttons, but other addons' buttons visibility should be controlled in respective addon.
i am running Sexyminimap 2008/11/08. I have set the "tracking button" to be shown always. The problem is that the outer border of the tracking button is shown, but not it's content (the icon showing what it is tracking).
The Calendar button has an alert status for when you receive new invites. I usually have the Calendar button hidden except on mouse-over. Would it be possible to add a setting so that I can keep it hidden like this, except when it has an alert for me?