The standard cpoints element does not support pre and post update routines.
You would need to override the standard update routine to add them in.
Code:
local comboUpdate = function(self, event, unit)
-- copied from standard update routine
if(unit == 'pet') then return end
local cp
if(UnitExists'vehicle') then
cp = GetComboPoints('vehicle', 'target')
else
cp = GetComboPoints('player', 'target')
end
local cpoints = self.CPoints
for i=1, MAX_COMBO_POINTS do
if(i <= cp) then
cpoints[i]:Show()
else
cpoints[i]:Hide()
end
end
-- add postupdate support
if cpoints.PostUpdate then cpoints.PostUpdate(self) end
end
local comboPostUpdate = function(self)
-- add code to check if combo elements are shown and move aura buttons
end
local style = function(self, unit)
-- define your combo points element
local cpoints = ...
...
cpoints.Update = comboUpdate
cpoints.PostUpdate = comboPostUpdate
self.CPoints = cpoints
end
disclaimer: this is all dry coded and guaranteed to contain bugs