Example #1
0
 @Override
 public void onClick(Node node, int position) {
   if (!node.isLeaf()) {
     return;
   }
   if (node.isDownloadAll()) {
     EntityResType2 type2 = GlobalResTypes.ALL_TYPE2S_MAP.get(node.getParent().getId());
     List<EntityResType4> entitys = type2.getType4s();
     if (null != entitys) {
       if (node.isClickedDownloadAll()) {
         node.setClickedDownloadAll(false);
         refreshDownloadName(node);
         for (EntityResType4 entity : entitys) {
           node = mAdapter.getAllNodeMap().get(entity.getId());
           if (node.getStatus() == INode.STATUS_START
               || node.getStatus() == INode.STATUS_WAIT
               || node.getStatus() == INode.STATUS_CONNECTING) {
             node.setStatus(INode.STATUS_STOP);
             entity.setStatus(INode.STATUS_STOP);
             setViewData(node);
           }
         }
         GlobalResTypes.getInstance().stopAllQueueDownload();
         return;
       }
       node.setClickedDownloadAll(true);
       refreshDownloadName(node);
       for (EntityResType4 entity : entitys) {
         node = mAdapter.getAllNodeMap().get(entity.getId());
         if (node.getStatus() == INode.STATUS_NORMAL || node.getStatus() == INode.STATUS_STOP) {
           entity.setStatus(INode.STATUS_CONNECTING);
           node.setStatus(INode.STATUS_CONNECTING);
           setViewData(node);
           GlobalResTypes.getInstance().startDownload(node.getId());
         }
       }
     }
     return;
   }
   switch (node.getStatus()) {
     case INode.STATUS_NORMAL:
     case INode.STATUS_STOP:
       node.setStatus(INode.STATUS_CONNECTING);
       setViewData(node);
       GlobalResTypes.getInstance().startDownload(node.getId());
       break;
     case INode.STATUS_START:
       node.setStatus(INode.STATUS_STOP);
       setViewData(node);
       GlobalResTypes.getInstance().stopDownload(node.getId());
       break;
   }
 }