This commit is contained in:
yumoqing 2024-03-01 11:07:42 +08:00
parent cc2e090c96
commit 1dfd882950
2 changed files with 9 additions and 16 deletions

View File

@ -25,15 +25,15 @@ bricks.BPopup = class extends bricks.VBox {
build(){ build(){
var tb = new bricks.HBox({height:'40px'}); var tb = new bricks.HBox({height:'40px'});
tb.set_css('title'); tb.set_css('title');
VBox.prototype.add_widget.bind(this)(tb); bricks.VBox.prototype.add_widget.bind(this)(tb);
var tit = new bricks.Text({otext:this.title, i18n:true}); var tit = new bricks.Text({otext:this.title, i18n:true});
this.content = new bricks.VBox({}); this.content = new bricks.VBox({});
VBox.prototype.add_widget.bind(this)(this.content); bricks.VBox.prototype.add_widget.bind(this)(this.content);
tb.add_widget(tit); tb.add_widget(tit);
this.holder = Body; this.holder = bricks.Body;
if (this.opts.holder){ if (this.opts.holder){
if (type(this.opts.holder) == 'string'){ if (type(this.opts.holder) == 'string'){
this.holder = getWidgetById(this.opts.holder, Body); this.holder = getWidgetById(this.opts.holder, bricks.Body);
} else { } else {
this.holder = this.opts.holder; this.holder = this.opts.holder;
} }

View File

@ -15,21 +15,15 @@ bricks.Toolbar = class extends bricks.Layout {
css: css:
} }
event:
ready: after all the tools built, fire this event
command: after user click one of the tool will fire the event with params of the tools[i] object.
remove: after user delete a removable tool from the toolbar, will fire the event with its tool description object as params. the params can reach with event.params.
*/ */
constructor(options){ constructor(options){
super(options); super(options);
this.toolList = []; this.toolList = [];
if (this.opts.orientation == 'vertical'){ if (this.opts.orientation == 'vertical'){
this.bar = new bricks.VBox(options); this.bar = new bricks.VScrollPanel(options);
this.dom_element.classList.add('vtoolbar') this.dom_element.classList.add('vtoolbar')
} else { } else {
this.bar = new bricks.HBox(options); this.bar = new bricks.HScrollPanel(options);
this.dom_element.classList.add('htoolbar') this.dom_element.classList.add('htoolbar')
} }
this.add_widget(this.bar); this.add_widget(this.bar);
@ -56,7 +50,6 @@ bricks.Toolbar = class extends bricks.Layout {
this.add_interval_box(); this.add_interval_box();
} }
} }
this.dispatch('ready');
} }
createTool = async function(desc){ createTool = async function(desc){
var options = { var options = {
@ -92,15 +85,15 @@ bricks.Toolbar = class extends bricks.Layout {
} }
do_handle(tool, event){ do_handle(tool, event){
// var tool = event.target; // var tool = event.target;
console.log('Toolbar() onclock,target=', event.target, tool); console.log('Toolbar() onclick,target=', event.target, tool);
var e = new Event('command');
var d = {}; var d = {};
bricks.extend(d, tool.tool_opts); bricks.extend(d, tool.tool_opts);
if (this.opts.target){ if (this.opts.target){
d.target = this.opts.target; d.target = this.opts.target;
} }
this.dispatch('command', d); this.dispatch('command', d);
this.dispatch(tool.tool_opts.name, d);
console.log('event ', tool.tool_opts.name, ' fired ...')
if (this.clicked_btn){ if (this.clicked_btn){
this.clicked_btn.set_css(this.preffix_css + '-button-active', true); this.clicked_btn.set_css(this.preffix_css + '-button-active', true);
} }