selectAndClearAll method

void selectAndClearAll()

Implementation

void selectAndClearAll() {
  if(widget.updateTotalAmount != null){
   widget.updateTotalAmount!(isSelectAll: getSelectedItemCount() == 0);
  }
  if (isViewSubList && subList.where((element) => element.isSelect).isNotEmpty) {
    tempListselectAndClearAll();
  } else {
    List <UFUMultiSelectModel>list = userListOnActiveStatus;
    List <UFUMultiSelectModel>selectedItems = selectedUserListOnActiveStatus;

    if (getSelectedItemCount() != 0) {
      for (var i = 0; i < list.length; i++) {
        list[i].isSelect = false;
        if (widget.type == UFUMultiSelectType.network) {
          selectedItems.removeWhere((element) => element.id == list[i].id);
        } else {
          selectedItems[i].isSelect = false;
          tempSelectedItems.clear();
          for (int i = 0; i < listfilter.length; i++) {
            listfilter[i].isSelect = false;
          }
        }
      }
      if (widget.type == UFUMultiSelectType.network) selectedItems.clear();
    } else {
      for (var i = 0; i < list.length; i++) {
        list[i].isSelect = true;
        if (widget.type == UFUMultiSelectType.network) {
          selectedItems.add(list[i]);
        } else {
          selectedItems[i].isSelect = true;
          for (int i = 0; i < listfilter.length; i++) {
            tempSelectedItems.add(listfilter[i]);
            listfilter[i].isSelect = true;
          }
        }
      }
    }
  }
  listCount();
  setState(() {});

}