/* * This program is free software; you can redistribute it and/or modify it under the * terms of the GNU Lesser General Public License, version 2.1 as published by the Free Software * Foundation. * * You should have received a copy of the GNU Lesser General Public License along with this * program; if not, you can obtain a copy at http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html * or from the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * See the GNU Lesser General Public License for more details. * * Copyright (c) 2001 - 2013 Object Refinery Ltd, Pentaho Corporation and Contributors.. All rights reserved. */ package org.pentaho.reporting.engine.classic.core.layout.model; /** * Bits 0-3 define the general node type. Bits 4-7 define the first sub classification. Bits 8 to 16 define the second * level subtype. Bits 16 to 20 define the third level subtype. * <p/> * If bit0 is set, the node is not a box If bit1 is set, the node is a renderbox. Bit 2 and 3 are reserved. * <p/> * For boxes: If bit 4 is set if the box is a block box. If bit 5 is set if the box is a canvas box. If bit 6 is set if * the box is a inline box. If bit 7 is reserved. * * @author Thomas Morgner */ public final class LayoutNodeTypes { private LayoutNodeTypes() { } // Bit 0: 1 = Not a box // Bit 1: 1 = Definitely a box // Bit 2: <unused> // Bit 3: <unused> // Bit 4: Block // Bit 5: Canvas // Bit 6: Inline // Bit 7: Row // Bit 8-16: Subtype ID // Bit 11: Structural box public static final int MASK_NODE = 0x001; public static final int MASK_BOX = 0x002; public static final int MASK_BOX_BLOCK = 0x12; public static final int MASK_BOX_PAGEAREA = 0x812; public static final int MASK_BOX_CANVAS = 0x22; public static final int MASK_BOX_INLINE = 0x42; public static final int MASK_BOX_ROW = 0x82; public static final int MASK_BOX_TABLE = 0x40002; public static final int MASK_BASIC_BOX_TYPE = 0xFF0FE; public static final int TYPE_BOX_BLOCK = 0x0012; public static final int TYPE_BOX_PARAGRAPH = 0x0112; public static final int TYPE_BOX_BREAKMARK = 0x0212; public static final int TYPE_BOX_LOGICALPAGE = 0x0412; public static final int TYPE_BOX_PROGRESS_MARKER = 0x1000012; public static final int TYPE_BOX_PAGEAREA = 0x10812; public static final int TYPE_BOX_WATERMARK = 0x20812; public static final int TYPE_BOX_SECTION = 0x11012; public static final int TYPE_BOX_CANVAS = 0x0022; public static final int TYPE_BOX_INLINE = 0x0042; public static final int TYPE_BOX_LINEBOX = 0x0142; public static final int TYPE_BOX_ROWBOX = 0x0082; public static final int TYPE_BOX_CONTENT = 0x0102; public static final int TYPE_BOX_TABLE = 0x41002; public static final int TYPE_BOX_TABLE_SECTION = 0x42002; public static final int TYPE_BOX_TABLE_ROW = 0x44002; public static final int TYPE_BOX_TABLE_CELL = 0x48002; public static final int TYPE_BOX_TABLE_COL_GROUP = 0x50002; public static final int TYPE_BOX_TABLE_COL = 0x60002; public static final int TYPE_BOX_INLINE_PROGRESS_MARKER = 0x1000042; public static final int TYPE_NODE_TEXT = 0x11; public static final int TYPE_NODE_COMPLEX_TEXT = 0x111; public static final int TYPE_NODE_SPACER = 0x41; public static final int TYPE_NODE_FINISHEDNODE = 0x81; public static final int TYPE_BOX_AUTOLAYOUT = 0x80002; }