protected void handleControlPropertyChanged(final String PROPERTY) {
        if ("RESIZE".equals(PROPERTY)) {
            resize();
        } else if ("DESIGN".equals(PROPERTY)) {
            updateDesign();
        } else if ("SECOND_POINTER_VISIBLE".equals(PROPERTY)) {
            secondPointerGroup.setOpacity(getSkinnable().isSecondPointerVisible() ? 1 : 0);
        } else if ("DATE_TIME".equals(PROPERTY)) {
            if (getSkinnable().isRunning()) updateTime(getSkinnable().getDateTime().plus(getSkinnable().getOffset()));    
        } else if ("RUNNING".equals(PROPERTY)) {
            if (getSkinnable().isRunning()) {
                timer.start();
            } else {
                timer.stop();                
            }
        }
    }