| 559 | |
| 560 | |
| 561 | class DataTableFacade(object): |
| 562 | @preconditions(_validate_id, _validate_mixin) |
| 563 | def __init__(self, id, mixin): |
| 564 | self.id = id |
| 565 | self.mixin = mixin |
| 566 | |
| 567 | self.paging = DataTablePagingFacade(id, mixin) |
| 568 | self.tooltip = DataTableTooltipFacade(id, mixin) |
| 569 | |
| 570 | @preconditions(_validate_row, _validate_col, _validate_state) |
| 571 | def cell(self, row, col, state=_ANY): |
| 572 | return DataTableCellFacade(self.id, self.mixin, row, col, state) |
| 573 | |
| 574 | @preconditions(_validate_col, _validate_state) |
| 575 | def column(self, col, state=_ANY): |
| 576 | return DataTableColumnFacade(self.id, self.mixin, col, state) |
| 577 | |
| 578 | @preconditions(_validate_row, _validate_state) |
| 579 | def row(self, row, state=_ANY): |
| 580 | return DataTableRowFacade(self.id, self.mixin, row, state) |
| 581 | |
| 582 | @preconditions(_validate_state) |
| 583 | def toggle_columns(self, state=_ANY): |
| 584 | return DataTableToggleColumnsFacade(self.id, self.mixin) |
| 585 | |
| 586 | def is_ready(self): |
| 587 | return self.mixin._wait_for_table(self.id, _READY) |
| 588 | |
| 589 | def is_loading(self): |
| 590 | return self.mixin._wait_for_table(self.id, _LOADING) |
| 591 | |
| 592 | |
| 593 | class DataTableMixin(object): |