亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? 新建 文本文檔.txt

?? 關(guān)于swt的布局
?? TXT
字號(hào):
*
SWT/JFace in Action
GUI Design with Eclipse 3.0
Matthew Scarpino, Stephen Holder, Stanford Ng, and Laurent Mihalkovic

ISBN: 1932394273

Publisher: Manning
*/


import org.eclipse.swt.SWT;
import org.eclipse.swt.graphics.Point;
import org.eclipse.swt.graphics.Rectangle;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Layout;

public class RadialLayout extends Layout {
  public RadialLayout() {
    super();
  }

  protected Point computeSize(Composite composite, int wHint, int hHint,
      boolean flushCache) {
    Point maxDimensions = calculateMaxDimensions(composite.getChildren());
    int stepsPerHemisphere = stepsPerHemisphere(composite.getChildren().length);

    int maxWidth = maxDimensions.x;
    int maxHeight = maxDimensions.y;

    int dimensionMultiplier = (stepsPerHemisphere + 1);
    int controlWidth = maxWidth * dimensionMultiplier;
    int controlHeight = maxHeight * dimensionMultiplier;
    int diameter = Math.max(controlWidth, controlHeight);
    Point preferredSize = new Point(diameter, diameter);

    if (wHint != SWT.DEFAULT) {
      if (preferredSize.x > wHint) {
        preferredSize.x = wHint;
      }
    }

    if (hHint != SWT.DEFAULT) {
      if (preferredSize.y > hHint) {
        preferredSize.y = hHint;
      }
    }

    return preferredSize;
  }

  protected void layout(Composite composite, boolean flushCache) {
    Point[] positions = calculateControlPositions(composite);
    Control[] controls = composite.getChildren();
    for (int i = 0; i < controls.length; i++) {
      Point preferredSize = controls[i].computeSize(SWT.DEFAULT,
          SWT.DEFAULT);
      controls[i].setBounds(positions[i].x, positions[i].y,
          preferredSize.x, preferredSize.y);
    }
  }

  private Point[] calculateControlPositions(Composite composite) {
    int controlCount = composite.getChildren().length;
    int stepsPerHemisphere = stepsPerHemisphere(controlCount);
    Point[] positions = new Point[controlCount];

    Point maxControlDimensions = calculateMaxDimensions(composite
        .getChildren());
    int maxControlWidth = maxControlDimensions.x;

    Rectangle clientArea = composite.getClientArea();
    int smallestDimension = Math.min(clientArea.width, clientArea.height);
    int radius = (smallestDimension / 2) - maxControlWidth;
    Point center = new Point(clientArea.width / 2, clientArea.height / 2);
    long radiusSquared = radius * radius;

    int stepXDistance = calculateStepDistance(radius * 2,
        stepsPerHemisphere);

    int signMultiplier = 1;
    int x = -radius;
    int y;
    Control[] controls = composite.getChildren();
    for (int i = 0; i < controlCount; i++) {
      Point currSize = controls[i].getSize();
      long xSquared = x * x;

      int sqrRoot = (int) Math.sqrt(radiusSquared - xSquared);
      y = signMultiplier * sqrRoot;
      int translatedX = x + center.x;
      int translatedY = y + center.y;
      positions[i] = new Point(translatedX - (currSize.x / 2),
          translatedY - (currSize.y / 2));

      x = x + (signMultiplier * stepXDistance);
      //we've finished the upper hemisphere, now do the lower
      if (x >= radius) {
        x = radius - (x - radius);
        signMultiplier = -1;
      }
    }

    return positions;
  }

  private Point calculateMaxDimensions(Control[] controls) {
    Point maxes = new Point(0, 0);

    for (int i = 0; i < controls.length; i++) {
      Point controlSize = controls[i].computeSize(SWT.DEFAULT,
          SWT.DEFAULT);
      maxes.x = Math.max(maxes.x, controlSize.x);
      maxes.y = Math.max(maxes.y, controlSize.y);
    }

    return maxes;
  }

  private int stepsPerHemisphere(int totalObjects) {
    return (totalObjects / 2) - 1;
  }

  private int calculateStepDistance(int clientAreaDimensionSize, int stepCount) {
    return clientAreaDimensionSize / (stepCount + 1);
  }

}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本一区二区在线不卡| 日韩一区二区三区免费看 | 亚洲成人你懂的| 欧洲精品中文字幕| 性感美女极品91精品| 日韩一级片网址| 国产一区二区看久久| 国产精品国产三级国产普通话蜜臀| 岛国av在线一区| 亚洲免费观看视频| 5566中文字幕一区二区电影| 蜜臀久久99精品久久久久宅男| 欧美精品一区二区三区很污很色的 | 国产一区二区三区免费观看| 国产欧美va欧美不卡在线| 91原创在线视频| 亚洲成av人片一区二区三区| 日韩欧美中文一区| 成人亚洲精品久久久久软件| 一区二区三区国产精品| 日韩欧美国产不卡| 成人免费av网站| 午夜天堂影视香蕉久久| 欧美激情在线看| 在线视频欧美区| 国产东北露脸精品视频| 一区二区三区影院| 欧美一二三四区在线| 成人午夜av影视| 视频一区二区三区入口| 国产欧美视频在线观看| 欧美丰满一区二区免费视频| 成人一级片网址| 免费看日韩a级影片| 中文字幕亚洲欧美在线不卡| 91精品国产丝袜白色高跟鞋| 91色在线porny| 韩国精品久久久| 亚洲一区二区三区四区中文字幕| 26uuuu精品一区二区| 色吊一区二区三区| 国产激情视频一区二区在线观看| 亚洲成人在线观看视频| 国产精品成人免费| 久久无码av三级| 在线综合视频播放| 在线一区二区三区做爰视频网站| 国产精品资源在线看| 日本成人中文字幕| 亚洲午夜激情av| 综合网在线视频| 久久亚洲欧美国产精品乐播| 777午夜精品视频在线播放| 日本精品视频一区二区| 高清成人在线观看| 国产精品一区二区在线看| 麻豆精品新av中文字幕| 亚洲成a人v欧美综合天堂| 一区二区三区日韩| 成人欧美一区二区三区1314| 国产精品你懂的在线欣赏| 久久影院午夜片一区| 日韩女同互慰一区二区| 91精品国产综合久久久久久| 欧美视频中文一区二区三区在线观看| youjizz国产精品| 成人av电影免费在线播放| 国产一区二区三区观看| 国产一区二区剧情av在线| 韩日欧美一区二区三区| 国产一区二区调教| 国产一区二区毛片| 国产成人免费在线观看| 国产成人免费在线| 成人精品免费视频| 成人av免费在线| 91美女片黄在线观看| 色噜噜狠狠成人网p站| 色哟哟在线观看一区二区三区| av电影在线观看完整版一区二区| 国产99久久久国产精品潘金网站| 国产二区国产一区在线观看| 成人免费毛片app| 成人美女在线观看| 一本到不卡免费一区二区| 色av综合在线| 欧美欧美欧美欧美首页| 欧美一区二区三区四区在线观看| 日韩欧美一区电影| 久久亚洲影视婷婷| 中文字幕亚洲视频| 亚洲一区二区在线观看视频| 亚洲第四色夜色| 蜜臀av一级做a爰片久久| 国产精品亚洲午夜一区二区三区| 国产99一区视频免费| 91麻豆免费观看| 欧美色男人天堂| 精品国产一区二区三区忘忧草| 久久精品无码一区二区三区| 亚洲国产精品国自产拍av| 一区二区三区日韩欧美精品| 日韩avvvv在线播放| 岛国精品在线播放| 欧美色爱综合网| 久久女同精品一区二区| 亚洲另类在线一区| 久久精品国产色蜜蜜麻豆| 国产成人综合自拍| 在线亚洲高清视频| 欧美va亚洲va国产综合| 国产精品久久久久国产精品日日| 亚洲一区二区在线免费观看视频| 麻豆国产欧美日韩综合精品二区 | 日韩一区二区电影在线| 久久久精品免费观看| 亚洲精品中文字幕乱码三区 | 一区二区三区不卡视频在线观看 | 欧美日韩国产片| 国产三级欧美三级日产三级99| 亚洲丝袜美腿综合| 精品一区二区三区的国产在线播放 | 亚洲免费观看高清完整版在线 | 不卡的电视剧免费网站有什么| 欧美日韩中文国产| 国产亚洲1区2区3区| 亚洲高清免费在线| 成人午夜免费电影| 91精品国产综合久久精品性色| 国产精品动漫网站| 蜜桃91丨九色丨蝌蚪91桃色| 色综合久久综合网97色综合| 精品久久久久久综合日本欧美| 亚洲精品美腿丝袜| 国产高清一区日本| 精品少妇一区二区三区免费观看| 亚洲黄色在线视频| 成人午夜免费av| 精品国产电影一区二区| 亚洲成人av一区| 91麻豆123| 国产精品久久久久国产精品日日| 国产一区二区主播在线| 欧美一区二区女人| 午夜伊人狠狠久久| 欧洲生活片亚洲生活在线观看| 国产精品久久久久三级| 国产成人一级电影| 精品国产乱码久久久久久久久 | 亚洲视频在线一区观看| 国产剧情一区在线| 26uuu国产电影一区二区| 日韩高清在线观看| 欧美精品vⅰdeose4hd| 亚洲精品日韩一| 99v久久综合狠狠综合久久| 国产精品视频一二三区| 国产精品自在在线| 久久伊人蜜桃av一区二区| 六月丁香婷婷久久| 日韩美女主播在线视频一区二区三区| 亚洲图片有声小说| 欧美视频中文字幕| 亚洲一区免费观看| 欧美日韩国产在线观看| 香蕉成人啪国产精品视频综合网| 欧美丝袜丝nylons| 免费在线观看精品| 精品欧美乱码久久久久久1区2区| 日本成人在线看| 欧美成人vps| 国产精品亚洲视频| 亚洲欧洲精品一区二区三区| 成人精品视频.| 亚洲乱码一区二区三区在线观看| 色综合久久九月婷婷色综合| 亚洲免费视频中文字幕| 欧美羞羞免费网站| 日韩影院在线观看| 久久伊99综合婷婷久久伊| 国产iv一区二区三区| 亚洲天堂精品视频| 7777精品伊人久久久大香线蕉完整版| 日韩一区欧美二区| 精品美女一区二区三区| 成人黄色免费短视频| 亚洲精品中文在线| 欧美一区二区视频观看视频| 精品综合久久久久久8888| 国产色一区二区| 欧美中文字幕一区二区三区亚洲| 一区二区三区在线免费视频| 欧美一区二区三级| 国产91对白在线观看九色| 一区二区三区四区高清精品免费观看| 欧美日韩国产乱码电影| 国产一区二三区好的| 亚洲免费观看高清完整| 日韩欧美一级特黄在线播放| 国产91丝袜在线观看|