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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? defaultpropertiesviewer.java

?? AStar算法
?? JAVA
字號:
/******************************************************************************* * Copyright ? 2008 Sandro Badame. All Rights Reserved. *  * This software and the accompanying materials is available under the  * Eclipse Public License 1.0 (EPL), which accompanies this distribution, and is * available at http://visualjpf.sourceforge.net/epl-v10.html ******************************************************************************/package com.javapathfinder.vjp.config.editors.defaultproperties;import org.eclipse.jface.resource.ImageDescriptor;import org.eclipse.jface.resource.ImageRegistry;import org.eclipse.jface.viewers.CellEditor;import org.eclipse.jface.viewers.CheckboxCellEditor;import org.eclipse.jface.viewers.ICellModifier;import org.eclipse.jface.viewers.ILabelProviderListener;import org.eclipse.jface.viewers.IStructuredContentProvider;import org.eclipse.jface.viewers.ITableLabelProvider;import org.eclipse.jface.viewers.TextCellEditor;import org.eclipse.jface.viewers.Viewer;import org.eclipse.swt.SWT;import org.eclipse.swt.graphics.Image;import org.eclipse.swt.widgets.Composite;import org.eclipse.swt.widgets.TableColumn;import org.eclipse.swt.widgets.TableItem;import com.javapathfinder.vjp.VJP;import com.javapathfinder.vjp.config.editors.ModePropertyConfiguration;import com.javapathfinder.vjp.config.editors.Property;import com.javapathfinder.vjp.config.editors.PropertyViewer;/** * A PropertyViewer that displays and edits all of the default properties * stored in jpf.properties and default.properties * @author Sandro Badame */public class DefaultPropertiesViewer extends PropertyViewer {  public static final String[] TABLE_HEADERS = new String[3];  public static final String DEFAULT_HEADER = "Default";  public static final int DEFAULT_INDEX = 0;  public static final String NAME_HEADER = "Name";  public static final int NAME_INDEX = 1;  public static final String VALUE_HEADER = "Value";  public static final int VALUE_INDEX = 2;  // Names of images used to represent checkboxes  public static final String CHECKED_IMAGE_PATH = "images/checked.gif";  public static final String UNCHECKED_IMAGE_PATH = "images/unchecked.gif";  public static final String CHECKED_IMAGE = "checked";  public static final String UNCHECKED_IMAGE = "unchecked";  // For the checkbox images  private static ImageRegistry imageRegistry = new ImageRegistry();  static {    TABLE_HEADERS[DEFAULT_INDEX] = DEFAULT_HEADER;    TABLE_HEADERS[NAME_INDEX] = NAME_HEADER;    TABLE_HEADERS[VALUE_INDEX] = VALUE_HEADER;    imageRegistry.put(CHECKED_IMAGE,                      ImageDescriptor.createFromURL(VJP.getResourceURL(CHECKED_IMAGE_PATH)));    imageRegistry.put(UNCHECKED_IMAGE,                      ImageDescriptor.createFromURL(VJP.getResourceURL(UNCHECKED_IMAGE_PATH)));  }  /**   * Construct a DefaultPropertiesViewer   * @param parent the parent composite   * @param properties the properties associated with this viewer   */  public DefaultPropertiesViewer(Composite parent,                                 ModePropertyConfiguration properties) {    super(parent, properties);    CellEditor[] editors = new CellEditor[]{new CheckboxCellEditor(getTable()),                                            new TextCellEditor(getTable()),                                            new TextCellEditor(getTable()) };    setCellEditors(editors);    setColumnProperties(TABLE_HEADERS);    ICellModifier modifier = new PropertyCellModifier();    setCellModifier(modifier);    setContentProvider(new PropertyContentProvider());    setLabelProvider(new PropertyTableLabelProvider());    setSorter(new PropertySorter());    TableColumn defaultColumn = new TableColumn(getTable(), SWT.NULL);    TableColumn nameColumn = new TableColumn(getTable(), SWT.NULL);    TableColumn valueColumn = new TableColumn(getTable(), SWT.NULL);    defaultColumn.setText("Use Default");    defaultColumn.pack();    nameColumn.setText("Property");    nameColumn.pack();    nameColumn.setWidth(200);        valueColumn.setText("Value");    valueColumn.pack();    valueColumn.setWidth(500);    setInput(properties);  }  /**   * This class returns a duplicate hash of the properties contained by this   * viewer. Modifying the hash returned will have no effect on the properties   * held by this viewer public HashMap<String, String> getProperties() {   * return new HashMap<String, String>(properties); }   */  class PropertyCellModifier implements ICellModifier {    /**     * @return true if this element can be modified. false if otherwise.     * (non-Javadoc)     *      * @see org.eclipse.jface.viewers.ICellModifier#canModify(java.lang.Object,     *      java.lang.String)     */    public boolean canModify(Object element, String property) {      int index = getColumnIndex(property);      if (index == DEFAULT_INDEX)        return true;      if (index == NAME_INDEX)        return false;      String propertyName = ((Property) element).getName();      return !properties.isUsingDefaultValue(propertyName);    }    /**     * Returns the value to be displayed in a table cell     * (non-Javadoc)     *      * @see org.eclipse.jface.viewers.ICellModifier#getValue(java.lang.Object,     *      java.lang.String)     */    public Object getValue(Object element, String property) {      int index = getColumnIndex(property);      Property prop = (Property) element;      if (index == DEFAULT_INDEX) {        return new Boolean(properties.isUsingDefaultValue(prop.getName()));      } else if (index == NAME_INDEX)        return prop.getName();      else        return prop.getValue();    }    /**     * Actually modifies the DefaultPropertiesConfiguration     * This method is responsible for actually changing the values in the model     * (non-Javadoc)     *      * @see org.eclipse.jface.viewers.ICellModifier#modify(java.lang.Object,     *      java.lang.String, java.lang.Object)     */    public void modify(Object element, String property, Object value) {      int columnIndex = getColumnIndex(property);      Property prop = (Property) ((TableItem) element).getData();      if (columnIndex == DEFAULT_INDEX) {        if (((Boolean) value).booleanValue())          properties.setToDefaultValue(prop);        else          properties.setProperty(prop);              } else if (columnIndex == VALUE_INDEX) {        properties.setProperty(prop, (String) value);      } else {        VJP.logWarning("Unexpected Else reached in if statement: columnIndex="                       + columnIndex);      }      refresh();    }    /**     * Returns the index of the column passed. @param columnName the column whos     * index is needed. @return Returns the index of the column specified, -1 if     * the column does not exist.     */    public int getColumnIndex(String columnName) {      int i = TABLE_HEADERS.length - 1;      while (!TABLE_HEADERS[i].equals(columnName) && i >= 0) {        i--;      }      return i;    }  }  /**   * Used to provide labels for the PropertyTable. <p>This class requires the   * mapping of all non default properties. This is so that the class knows   * whether or not a particular property is a default property.   */  private class PropertyTableLabelProvider implements ITableLabelProvider {    /**     * Only returns checkbox images for the first column of the table     */    public Image getColumnImage(Object element, int columnIndex) {      if (columnIndex == DefaultPropertiesViewer.DEFAULT_INDEX) {        String propName = ((Property) element).getName();        String image = properties.isUsingDefaultValue(propName) ? CHECKED_IMAGE          : UNCHECKED_IMAGE;        return imageRegistry.get(image);      }      return null;    }    /**     * Gives the text to be displayed.     */    public String getColumnText(Object element, int columnIndex) {      Property prop = (Property) element;      if (columnIndex == DefaultPropertiesViewer.DEFAULT_INDEX)        return null;      else if (columnIndex == DefaultPropertiesViewer.NAME_INDEX)        return prop.getName();      else        return prop.getValue();    }    public void addListener(ILabelProviderListener listener) {    }    public void dispose() {    }    public boolean isLabelProperty(Object element, String property) {      return false;    }    public void removeListener(ILabelProviderListener listener) {    }  }  /**   * Provides the array filled with table items for the tableviewer   */  private class PropertyContentProvider implements IStructuredContentProvider {    public Object[] getElements(Object inputElement) {      return properties.getDefaultPropertiesAsArray();    }    public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {           if (newInput instanceof ModePropertyConfiguration)        properties = (ModePropertyConfiguration) newInput;      else if (newInput != null)        VJP.logError("Input changed to: " + newInput);      repackColumns();    }    public void dispose() {    }  }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久亚洲精华国产精华液| jizzjizzjizz欧美| 亚洲免费在线观看| 国产精品丝袜91| 中文字幕欧美日韩一区| 精品久久一区二区三区| 在线视频观看一区| 欧美四级电影网| 欧美性欧美巨大黑白大战| av在线综合网| 欧美在线999| 欧美系列亚洲系列| 成人视屏免费看| 从欧美一区二区三区| 国产一区二区毛片| av网站一区二区三区| 91视频.com| av不卡在线观看| 欧美在线视频你懂得| 在线中文字幕不卡| 欧美色爱综合网| 欧美一级国产精品| 精品伦理精品一区| 精品视频1区2区3区| 日韩一区二区中文字幕| 欧美一级在线观看| 久久一留热品黄| 国产欧美一区二区三区网站 | 91在线视频播放地址| 色激情天天射综合网| 欧美日韩一区二区三区四区 | 亚洲欧美aⅴ...| 一区二区三区精品视频在线| 五月天久久比比资源色| 婷婷中文字幕一区三区| 免费观看久久久4p| 成人av网址在线| 欧美中文一区二区三区| 日韩一区二区高清| 久久久噜噜噜久久中文字幕色伊伊| 国产亚洲制服色| 一个色妞综合视频在线观看| 婷婷夜色潮精品综合在线| 亚洲国产成人91porn| 国产一区二区在线影院| 成人美女视频在线观看| 色诱视频网站一区| 欧美一区二区三区视频在线观看| 欧美成人一区二区| 综合中文字幕亚洲| 首页综合国产亚洲丝袜| 精品中文字幕一区二区| 91福利视频网站| 日韩视频国产视频| 一区二区三区免费| 国产又黄又大久久| 色综合久久天天综合网| 久久综合国产精品| 亚洲精品乱码久久久久久| 亚洲18女电影在线观看| 国产一区在线观看视频| 一本久久a久久精品亚洲| 久久久三级国产网站| 国产精品剧情在线亚洲| 亚洲成人免费视频| 99精品视频一区二区三区| 91精品国产欧美一区二区| 亚洲色图欧洲色图婷婷| 麻豆成人免费电影| 国产欧美日韩视频一区二区| 欧美色图天堂网| 国产亲近乱来精品视频| 亚洲不卡一区二区三区| 日韩精品电影在线| 91丨porny丨中文| 日韩限制级电影在线观看| 综合色中文字幕| 成人小视频免费观看| 欧美一区二区三区四区五区 | 日韩一区二区在线免费观看| 中文字幕欧美激情| 五月天网站亚洲| 在线观看www91| 国产精品国产自产拍高清av| 国产一区二区看久久| 91精品国产欧美日韩| 国产欧美一区二区三区在线看蜜臀 | 国产精品99久久久久| 欧美一级淫片007| 亚洲一区二区三区四区五区中文| 日日夜夜精品视频天天综合网| 91国在线观看| 国产精品久久久久久久第一福利| 国产一区二区不卡| 日韩精品一区二区三区在线| 亚洲一区二区精品3399| 欧美亚洲图片小说| 最新国产成人在线观看| 成人免费精品视频| 国产日韩精品一区| 韩日av一区二区| 国产午夜精品久久| 久久99国产精品麻豆| 欧美视频中文字幕| 综合在线观看色| 波多野结衣在线aⅴ中文字幕不卡| 久久久高清一区二区三区| 免费观看91视频大全| 欧美在线观看禁18| 日韩一区精品视频| 欧美理论电影在线| 日韩精品一二区| 91精品久久久久久久久99蜜臂| 天堂在线亚洲视频| 91国在线观看| 日本午夜精品视频在线观看| 在线不卡免费欧美| 精品一区二区三区香蕉蜜桃| 在线不卡一区二区| 亚洲国产欧美日韩另类综合| 欧美午夜精品久久久| 亚洲最新视频在线播放| 这里是久久伊人| 麻豆国产精品视频| 91精品国产入口在线| 久久99久久99精品免视看婷婷| 福利一区福利二区| 色国产精品一区在线观看| 国产精品理论片在线观看| 成人91在线观看| 亚洲综合丝袜美腿| 欧美精品在线观看播放| 日产欧产美韩系列久久99| 欧美成人三级电影在线| 国产一区不卡视频| 亚洲精品欧美在线| 欧美丰满一区二区免费视频 | 91色.com| 香蕉成人伊视频在线观看| 欧美不卡激情三级在线观看| 国产综合色视频| 中文字幕欧美国产| 在线观看免费亚洲| 蜜臀av在线播放一区二区三区| 国产亚洲精品bt天堂精选| 99精品国产一区二区三区不卡| 天堂va蜜桃一区二区三区| 精品动漫一区二区三区在线观看| 日本午夜一本久久久综合| 欧美国产乱子伦 | 日韩码欧中文字| 欧美日韩国产电影| 国产一二精品视频| 亚洲第一会所有码转帖| 日韩欧美中文一区| 日本韩国欧美一区二区三区| 日韩高清不卡在线| 国产精品丝袜久久久久久app| 在线观看网站黄不卡| 日本欧美一区二区三区| 亚洲免费视频中文字幕| 91精品国产色综合久久ai换脸| 成人一级片在线观看| 午夜av一区二区三区| 国产欧美精品一区二区色综合| 欧美日韩你懂得| 高清beeg欧美| 美国毛片一区二区三区| 国产精品成人午夜| 欧美性色欧美a在线播放| 成人精品视频一区二区三区| 亚洲国产精品久久久男人的天堂 | 欧美性一二三区| 国产露脸91国语对白| 一个色综合网站| 久久影音资源网| 在线看一区二区| 国产精品夜夜爽| 精品一区二区三区影院在线午夜| 亚洲人成网站精品片在线观看 | 亚洲一区二区高清| 国产日韩三级在线| 欧美裸体一区二区三区| k8久久久一区二区三区| 久久99这里只有精品| 日韩av网站免费在线| 一区二区三区日韩在线观看| 中文字幕在线观看不卡| 日韩情涩欧美日韩视频| 日本国产一区二区| 成人黄色免费短视频| 久久精品国产99| 久久精品国产在热久久| 亚洲bt欧美bt精品| 亚洲国产成人av网| 亚洲视频小说图片| 亚洲日本丝袜连裤袜办公室| 久久久久久久久久久久久夜| 日韩一区二区免费电影| 欧美电影免费观看高清完整版|