refactored MGProgressBar