Well, probably yes, although I'm not a fan of having to write a long chain of members and sub members (like color.data.components.r). Getters might be more interesting then, but at the same time it isn't something that requires immediate changes or attention, considering there are far more interesting things to fix/change first (like OpenGL ES).
Something different:
While working on custom sprite/animated sprite classes (to make access to frames/animations easier) I noticed, that I could save quite some code by subclassing sf::Sprite, which I know isn't intended and making some things impossible to do. So, just out of curiousity, anything speaking against making sf::Drawable::Draw() protected instead of private? In this case my plan was to let AnimatedSprite::Draw() update the frame to be shown (based on an internal state and the last frame's time) and then call sf::Sprite::Draw() to draw the sprite. Now I did it making the sprite a member instead of the base class, but I think subclassing would be the better way.