if ((mAutomaticStyle == null)
|| (mAutomaticStyle.getStyleUserCount() > 1)) {
// we need a new automatic style
OdfOfficeAutomaticStyles automatic_styles = getAutomaticStyles();
if (automatic_styles != null) {
StyleNameRef sParentStyleName = null;
if (mAutomaticStyle == null) {
mAutomaticStyle = automatic_styles.newStyle(getStyleFamily());
sParentStyleName = new StyleNameRef(getStyleName());
} else {
String nameAttr = mAutomaticStyle.getStyleParentStyleNameAttribute();
sParentStyleName = new StyleNameRef(nameAttr == null ? "" : nameAttr);
mAutomaticStyle.removeStyleUser(this);
mAutomaticStyle = automatic_styles.makeStyleUnique(mAutomaticStyle);
}
mAutomaticStyle.addStyleUser(this);
if ((sParentStyleName != null)
&& (sParentStyleName.toString().length() != 0)) {
mAutomaticStyle.setStyleParentStyleNameAttribute(sParentStyleName.toString());
}
setStyleName(mAutomaticStyle.getStyleNameAttribute());
}
}
return mAutomaticStyle;