sphere widget implementation