Just to quote U2....I still haven't found what I'm looking for...... For
now I just use a custom label with the "loading..." text instead of a
loading indicator. I know it's not the right solution but it's a workaround
that helps waiting for the right solution.
On Tuesday, March 20, 2012 3:20:57 PM UTC+1, develop.acb wrote:
>
>
> Hello,
> we have similar problems with CellTable and DataGrid. I can´t find a solution
> getting the loading indicator to work!
> Is there anybody who could provide somthing like "How to use loading
> indicator"?
>
> Thanks...
>
>
>
> Am Montag, 5. März 2012 17:23:34 UTC+1 schrieb Magallo:
>>
>>
>>
>> On Friday, March 2, 2012 10:10:13 AM UTC+1, Magallo wrote:
>>>
>>> I have a very similar problem. I have a DataGrid and when I load data
>>> from an RPC I want to show the loading indicator on the grid and when the
>>> data are loaded I wanted to show them. I initialize the datagrid with;
>>>
>>> myDataGrid.setLoadingIndicator(new Image(/*my ImageResource object*/);
>>>
>>> then during the program flow, just before making an async RPC, I would like
>>> to set the DataGrid in the state of 'Loading'
>>> so that the loading indicator is shown. Then, after the RPC returns I would
>>> like to set the DataGrid in the state of 'Loaded'
>>> to show the data rows. I tried with this:
>>>
>>> ....
>>> myDataGrid.fireEvent(new LoadingStateChangeEvent(LoadingState.LOADING));
>>> ....
>>> myDataGrid.fireEvent(new LoadingStateChangeEvent(LoadingState.LOADED));
>>> but nothing happens.
>>>
>>> I have also tried to call setVisibleRangeAndClearData but it doesn't
>>> work.
>>>
>>> I read from Thomas Broyer that "the loading indicator is shown only when
>>> the LoadingState is LOADING, and that one is set by the internal
>>> HasDataPresenter only when the known rowData is empty (and the rowCount is
>>> not 0)." What exactly does it mean? What is the 'known' rowData? I use a
>>> ListDataProvider to bind data to the DataGrid. Where am I wrong? What is
>>> the right way to set the 'Loading' state of the DataGrid?
>>>
>>> jgm: does you code did the trick? I think anyway it's just a little too
>>> tricky. I think that considering how the DataGrid (and CellTable also) is
>>> designed, I really think and hope there is a simple way. The support for
>>> this is not really good. I think google should explain better how to use
>>> these controls.
>>>
>>> Cheers.
>>>
>>> On Wednesday, February 1, 2012 3:26:10 PM UTC+1, jgm wrote:
>>>>
>>>> Hi,
>>>>
>>>> Thanks for your quick answer.
>>>>
>>>> We also in the meantime found out that ..
>>>>
>>>> private void clearTable() {
>>>> if (dataProvider.getDataDisplays() != null &&
>>>> dataProvider.getDataDisplays().isEmpty() == false) {
>>>> dataProvider.removeDataDisplay(cellTable);
>>>> }
>>>>
>>>> clearTableColumns();
>>>>
>>>> cellTable.setVisibleRangeAndClearData(cellTable.getVisibleRange(),
>>>>
>>>> true);
>>>> cellTable.setLoadingIndicator(imageProcessing);
>>>> }
>>>>
>>>> did the trick !
>>>>
>>>> On 1 Feb., 14:44, Thomas Broyer <[email protected]> wrote:
>>>> > AFAICT, CellTable shows the loading indicator only when the
>>>> LoadingState is
>>>> > LOADING, and that one is set by the internal HasDataPresenter only
>>>> when the
>>>> > known rowData is empty (and the rowCount is not 0). So I think you
>>>> need to
>>>> > call setVisibleRangeAndClearData().
>>>
>>>
>>> On Wednesday, February 1, 2012 3:26:10 PM UTC+1, jgm wrote:
>>>>
>>>> Hi,
>>>>
>>>> Thanks for your quick answer.
>>>>
>>>> We also in the meantime found out that ..
>>>>
>>>> private void clearTable() {
>>>> if (dataProvider.getDataDisplays() != null &&
>>>> dataProvider.getDataDisplays().isEmpty() == false) {
>>>> dataProvider.removeDataDisplay(cellTable);
>>>> }
>>>>
>>>> clearTableColumns();
>>>>
>>>> cellTable.setVisibleRangeAndClearData(cellTable.getVisibleRange(),
>>>>
>>>> true);
>>>> cellTable.setLoadingIndicator(imageProcessing);
>>>> }
>>>>
>>>> did the trick !
>>>>
>>>> On 1 Feb., 14:44, Thomas Broyer <[email protected]> wrote:
>>>> > AFAICT, CellTable shows the loading indicator only when the
>>>> LoadingState is
>>>> > LOADING, and that one is set by the internal HasDataPresenter only
>>>> when the
>>>> > known rowData is empty (and the rowCount is not 0). So I think you
>>>> need to
>>>> > call setVisibleRangeAndClearData().
>>>
>>>
>>> On Wednesday, February 1, 2012 3:26:10 PM UTC+1, jgm wrote:
>>>>
>>>> Hi,
>>>>
>>>> Thanks for your quick answer.
>>>>
>>>> We also in the meantime found out that ..
>>>>
>>>> private void clearTable() {
>>>> if (dataProvider.getDataDisplays() != null &&
>>>> dataProvider.getDataDisplays().isEmpty() == false) {
>>>> dataProvider.removeDataDisplay(cellTable);
>>>> }
>>>>
>>>> clearTableColumns();
>>>>
>>>> cellTable.setVisibleRangeAndClearData(cellTable.getVisibleRange(),
>>>>
>>>> true);
>>>> cellTable.setLoadingIndicator(imageProcessing);
>>>> }
>>>>
>>>> did the trick !
>>>>
>>>> On 1 Feb., 14:44, Thomas Broyer <[email protected]> wrote:
>>>> > AFAICT, CellTable shows the loading indicator only when the
>>>> LoadingState is
>>>> > LOADING, and that one is set by the internal HasDataPresenter only
>>>> when the
>>>> > known rowData is empty (and the rowCount is not 0). So I think you
>>>> need to
>>>> > call setVisibleRangeAndClearData().
>>>
>>>
>>> On Wednesday, February 1, 2012 3:26:10 PM UTC+1, jgm wrote:
>>>>
>>>> Hi,
>>>>
>>>> Thanks for your quick answer.
>>>>
>>>> We also in the meantime found out that ..
>>>>
>>>> private void clearTable() {
>>>> if (dataProvider.getDataDisplays() != null &&
>>>> dataProvider.getDataDisplays().isEmpty() == false) {
>>>> dataProvider.removeDataDisplay(cellTable);
>>>> }
>>>>
>>>> clearTableColumns();
>>>>
>>>> cellTable.setVisibleRangeAndClearData(cellTable.getVisibleRange(),
>>>>
>>>> true);
>>>> cellTable.setLoadingIndicator(imageProcessing);
>>>> }
>>>>
>>>> did the trick !
>>>>
>>>> On 1 Feb., 14:44, Thomas Broyer <[email protected]> wrote:
>>>> > AFAICT, CellTable shows the loading indicator only when the
>>>> LoadingState is
>>>> > LOADING, and that one is set by the internal HasDataPresenter only
>>>> when the
>>>> > known rowData is empty (and the rowCount is not 0). So I think you
>>>> need to
>>>> > call setVisibleRangeAndClearData().
>>>
>>>
--
You received this message because you are subscribed to the Google Groups
"Google Web Toolkit" group.
To view this discussion on the web visit
https://groups.google.com/d/msg/google-web-toolkit/-/DWuy54IwqHQJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/google-web-toolkit?hl=en.