Example #1
0
  private String genSmallImageHtml(
      String folderId,
      ClientImage image,
      boolean last,
      boolean navigateLeft,
      boolean navigateRight) {
    String dq =
        new DataQueryJsonBuilder()
            .add("imageId", image.getId())
            .add("folderId", folderId)
            .toDataQuery();
    String uidAndDq = GWTUtils.genUid(UID_SMALL_IMAGE_CLICK) + " " + dq;

    String navigateCustomCss = navigateLeft ? "arrow-left" : "arrow-right";
    String navigateUid = navigateLeft ? UID_SMALL_LEFT : UID_SMALL_RIGHT;
    String navigateId = navigateLeft ? ID_PREV_SMALL : ID_NEXT_SMALL;

    String id = genSmallImageWrapperId(image.getId());
    String itemCustomCss = last ? "sf-item-last" : "";

    String html = "";
    html += "<li class='sf-item " + itemCustomCss + "' " + uidAndDq + ">";
    html += "<div id='" + id + "' class='sf-img-w'>";
    if (navigateLeft || navigateRight) {
      html +=
          "<div id='"
              + navigateId
              + "' class='arrow "
              + navigateCustomCss
              + "' "
              + GWTUtils.genUid(navigateUid)
              + ">";
      html += "<div class='arrow-point arrow-point-1'></div>";
      html += "<div class='arrow-point arrow-point-2'></div>";
      html += "<div class='arrow-point arrow-point-3'></div>";
      html += "<div class='arrow-point arrow-point-4'></div>";
      html += "<div class='arrow-point arrow-point-5'></div>";
      html += "<div class='arrow-point arrow-point-6'></div>";
      html += "<div class='arrow-point arrow-point-7'></div>";
      html += "<div class='arrow-point arrow-point-8'></div>";
      html += "<div class='arrow-point arrow-point-9'></div>";
      html += "</div>";
    }
    html +=
        "<img id='"
            + "small-"
            + image.getId()
            + "' src='"
            + GalleryClientUtils.genSmallImageSrc(folderId, image.getId())
            + "'></img>";
    html += "</div>";
    html += "</li>";
    return html;
  }
Example #2
0
 private String genFolderImage(String imageId, String folderId, int position, int zindex) {
   String className = "fld-i fld-i__" + position;
   String src = GalleryClientUtils.genSmallImageSrc(folderId, imageId);
   return "<div class='"
       + className
       + "' style='z-index:"
       + zindex
       + ";'><img src='"
       + src
       + "'></img></div>";
 }
Example #3
0
  protected void showImages(
      ClientFolder folder,
      final String selectedImageId,
      List<ClientImage> images,
      boolean repaintImagesList) {

    if (GWTUtils.isEmpty(selectedImageId)) {
      Window.alert("Navigation error");
      return;
    }

    String folderId = folder.getId();

    // set folder name
    if (repaintImagesList) {
      elFolder.setInnerHTML(GWTUtils.safeString(folder.getCaption()));
      elCount.setInnerHTML(Integer.toString(totalImagesCount));
      String s = startIndex + " - " + (startIndex + loadedImages.size() - 1);
      elCountDetails.setInnerHTML(s);
    }

    // set big photo
    clearBigPhotoWrapper();
    StringBuilder sb = new StringBuilder();
    sb.append("<div class='bf-iw'>");
    sb.append("<div uid='" + UID_ROTATE_LEFT + "' class='bf-act bf-act-rl'></div>");
    sb.append("<div uid='" + UID_ROTATE_RIGHT + "' class='bf-act bf-act-rr'></div>");
    sb.append(
        "<img id='big-"
            + selectedImageId
            + "' src='"
            + GalleryClientUtils.genMediumImageSrc(folderId, selectedImageId)
            + "'></img>");
    sb.append("</div>");
    sb.append("<div class='bf-down-w'>");
    sb.append(
        "<a class='bf-down' href='"
            + GalleryClientUtils.genLargeImageSrc(folderId, selectedImageId)
            + "'>скачать в полном размере</a>");
    sb.append("</div>");
    final String bigPhotoHtml = sb.toString();
    new Timer() {
      @Override
      public void run() {
        showBigPhotoWrapper(bigPhotoHtml);
        GalleryPanel.this.selectedImageId = selectedImageId;
      }
    }.schedule(100);

    // show small images list
    if (repaintImagesList) {
      String smallImagesHtml = "";
      for (int i = 0; i < images.size(); i++) {
        ClientImage image = images.get(i);
        boolean navigateLeft = i == 0;
        boolean navigateRight = i == images.size() - 1;
        boolean last = navigateRight;
        smallImagesHtml += genSmallImageHtml(folderId, image, last, navigateLeft, navigateRight);
      }
      setSmallPhotosHtml("", true);
      elBigPhotoW.removeClassName(CSS_SMALL_PHOTOS_ANIME);
      final String resHtml = smallImagesHtml;
      new Timer() {
        @Override
        public void run() {
          setSmallPhotosHtml(resHtml, true);
          elSmallPhotosW.addClassName(CSS_SMALL_PHOTOS_ANIME);
          updateSelectedImageAndNavigation(selectedImageId);
        }
      }.schedule(100);
    } else {
      updateSelectedImageAndNavigation(selectedImageId);
    }
  }