bugfix
This commit is contained in:
parent
28bb691eef
commit
29e3fab227
@ -563,7 +563,10 @@ bricks.App = class extends bricks.Layout {
|
||||
this.wins_panel = null;
|
||||
}
|
||||
|
||||
show_windows_panel(){
|
||||
show_windows_panel(event){
|
||||
console.log('event=', event);
|
||||
event.preventDefault();
|
||||
event.stopPropagation()
|
||||
this.wins_panel = new bricks.WindowsPanel({})
|
||||
}
|
||||
get_color(){
|
||||
|
@ -47,6 +47,7 @@ bricks.Cols = class extends bricks.VBox {
|
||||
this.toolbar_w.bind('command', this.command_handle.bind(this));
|
||||
}
|
||||
this.add_widget(this.container);
|
||||
this.create_main_widget();
|
||||
schedule_once(this.load_first_page.bind(this), 0.5);
|
||||
}
|
||||
command_handle(event){
|
||||
@ -68,6 +69,7 @@ bricks.Cols = class extends bricks.VBox {
|
||||
console.log('record data=', rw.user_data);
|
||||
this.dispatch('record_click', rw.user_data);
|
||||
}
|
||||
|
||||
async dataHandle(d){
|
||||
var data = d.rows;
|
||||
var page = d.add_page;
|
||||
@ -101,40 +103,58 @@ bricks.Cols = class extends bricks.VBox {
|
||||
this.main.remove_widget(w);
|
||||
}
|
||||
}
|
||||
create_main_widget(){
|
||||
this.container.clear_widgets();
|
||||
this.main = new bricks.DynamicColumn({
|
||||
width:"100%",
|
||||
col_cwidth:this.col_cwidth,
|
||||
mobile_cols:this.mobile_cols || 2
|
||||
});
|
||||
this.container.add_widget(this.main);
|
||||
}
|
||||
async show_with_data(data){
|
||||
this.data = data;
|
||||
this.data_url = null;
|
||||
await load_first_page(params);
|
||||
}
|
||||
async load_first_page(params){
|
||||
var p = bricks.extend({}, this.data_params);
|
||||
if (params){
|
||||
p = bricks.extend(p, params);
|
||||
}
|
||||
if (this.loading){
|
||||
bricks.debug('this.loading is set, do not thing');
|
||||
return;
|
||||
}
|
||||
var running = new bricks.Running({target:this});
|
||||
this.loading = true;
|
||||
var running = null;
|
||||
try {
|
||||
this.container.clear_widgets();
|
||||
this.main = new bricks.DynamicColumn({
|
||||
width:"100%",
|
||||
col_cwidth:this.col_cwidth,
|
||||
mobile_cols:this.mobile_cols || 2
|
||||
});
|
||||
this.container.add_widget(this.main);
|
||||
var d = await this.loader.loadData(p);
|
||||
var d;
|
||||
running = new bricks.Running({target:this});
|
||||
if (this.data_url){
|
||||
if (this.loading){
|
||||
bricks.debug('this.loading is set, do not thing');
|
||||
throw 't';
|
||||
}
|
||||
this.loading = true;
|
||||
var p = bricks.extend({}, this.data_params);
|
||||
if (params){
|
||||
p = bricks.extend(p, params);
|
||||
}
|
||||
var d = await this.loader.loadData(p);
|
||||
} else {
|
||||
if (this.data) {
|
||||
d = this.data;
|
||||
}
|
||||
}
|
||||
if (d){
|
||||
this.main.clear_widgets();
|
||||
this.dataHandle(d);
|
||||
var total = this.container.dom_element.scrollHeight - this.container.dom_element.clientHeight;
|
||||
// this.container.dom_element.scrollTop = d.pos_rate * total;
|
||||
} else {
|
||||
bricks.debug(this.loader, 'load previous page error');
|
||||
bricks.debug(this.loader, 'data is null');
|
||||
}
|
||||
} catch (e) {
|
||||
bricks.debug('e=', e);
|
||||
}
|
||||
this.loading = false;
|
||||
running.dismiss();
|
||||
if (running) running.dismiss();
|
||||
}
|
||||
|
||||
async load_previous_page(){
|
||||
if(! this.data_url) return;
|
||||
if (this.loading){
|
||||
bricks.debug('this.loading is set, do not thing');
|
||||
return;
|
||||
@ -157,6 +177,7 @@ bricks.Cols = class extends bricks.VBox {
|
||||
running.dismiss();
|
||||
}
|
||||
async load_next_page(){
|
||||
if(! this.data_url) return;
|
||||
if (this.loading){
|
||||
bricks.debug('this.loading is set, do not thing');
|
||||
return;
|
||||
|
@ -419,13 +419,10 @@ bricks.WindowsPanel = class extends bricks.Popup {
|
||||
this.content.dataHandle(data);
|
||||
this.add_widget(this.content);
|
||||
}
|
||||
add_window(win){
|
||||
bricks.app.mwins.push(win);
|
||||
}
|
||||
|
||||
del_window(event){
|
||||
var pos = event.params.pos;
|
||||
var w = this.mwins[pos];
|
||||
var w = bricks.app.mwins[pos];
|
||||
w.open();
|
||||
bricks.app.mwins.splice(pos, 1);
|
||||
this.dismiss();
|
||||
@ -458,7 +455,7 @@ bricks.PopupWindow = class extends bricks.Popup {
|
||||
this.content_w.set_css('flexbox');
|
||||
filler.add_widget(this.content_w);
|
||||
if (this.auto_open){
|
||||
this.open();
|
||||
schedule_once(this.open.bind(this), 0.2);
|
||||
}
|
||||
}
|
||||
build_title_bar(){
|
||||
|
Loading…
Reference in New Issue
Block a user