/* * Copyright 2003-2011 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package jetbrains.mps.ide.devkit.cellExplorer; import jetbrains.mps.nodeEditor.cells.EditorCell_Label; import jetbrains.mps.openapi.editor.cells.EditorCell; import jetbrains.mps.util.IterableUtil; import jetbrains.mps.util.NameUtil; import org.jetbrains.mps.openapi.model.SNode; public class CellProperties { private SNode mySNode; private String myCellSNode; private String myCellNumber; private String myCellID; private String myCellRole; private String myRootCell; private String myCellEffectiveWidth; private String myCellHeight; private String myCellWidth; private String myCellKind; private String myCellText; public CellProperties(EditorCell cell) { myCellText = null; if (cell instanceof EditorCell_Label) { myCellText = ((EditorCell_Label) cell).getRenderedText(); } myCellKind = NameUtil.shortNameFromLongName(cell.getClass().getName()); myCellWidth = cell.getWidth() + ""; myCellHeight = cell.getHeight() + ""; myCellEffectiveWidth = cell.getEffectiveWidth() + ""; myRootCell = (cell.getEditorComponent().getRootCell() == cell) ? "Yes" : "No"; myCellID = cell.getCellId(); myCellRole = "" + (cell.getRole()); mySNode = cell.getSNode(); String name = mySNode.getName(); name = name != null ? name : "<no name>"; myCellSNode = mySNode == null ? "no node" : name + " (" + NameUtil.shortNameFromLongName(mySNode.getConcept().getQualifiedName()) + ") [" + mySNode.getNodeId().toString() + "]"; if (cell.getParent() != null) { myCellNumber = String.valueOf(IterableUtil.indexOf(cell.getParent(), cell)); } } public SNode getSNode() { return mySNode; } public String getCellSNode() { return myCellSNode; } public String getCellNumber() { return myCellNumber; } public String getCellID() { return myCellID; } public String getCellRole() { return myCellRole; } public String getRootCell() { return myRootCell; } public String getCellEffectiveWidth() { return myCellEffectiveWidth; } public String getCellHeight() { return myCellHeight; } public String getCellWidth() { return myCellWidth; } public String getCellKind() { return myCellKind; } public String getCellText() { return myCellText; } }