data : [
['auto'],
['50%'],
+ ['80%'],
['100%']
],
fields : [ 'val'],
pressed : false,
enableToggle : true,
setValue : function(v) {
- this.toggle(v == 'block' ? false : true);
+ // this trigger toggle.
+
+ this.setText(v ? "Hide Caption" : "Show Caption");
+ this.setPressed(v);
},
listeners : {
toggle: function (btn, state)
var d = document.createElement('div');
d.innerHTML = this.caption;
- var m = this.width == '50%' && this.align == 'center' ? '0 auto' : 0;
+ var m = this.width != '100%' && this.align == 'center' ? '0 auto' : 0;
var iw = this.align == 'center' ? this.width : '100%';
var img = {
style: {
width : iw,
maxWidth : iw + ' !important', // this is not getting rendered?
- margin : m
-
+ margin : m
}
};
// we remove caption totally if its hidden... - will delete data.. but otherwise we end up with fake caption
var captionhtml = this.caption_display == 'none' ? '' : (this.caption.length ? this.caption : "Caption");
- return {
+
+ var ret = {
tag: 'figure',
'data-block' : 'Figure',
maxWidth : this.align == 'center' ? '100% !important' : (this.width + ' !important'),
width : this.align == 'center' ? '100%' : this.width,
margin: '0px',
- padding: '10px'
+ padding: this.align == 'center' ? '0' : '0 10px' ,
+ textAlign : this.align // seems to work for email..
},
{
tag: 'div',
style : {
- 'margin-top' : '16px'
+ marginTop : '16px',
+ textAlign : 'left'
},
align: 'left',
cn : [
}
]
};
+ return ret;
},