001 // ---------- Attention: Generated code, please do not modify! ----------- 002 003 /* 004 * Licensed to the Apache Software Foundation (ASF) under one or more 005 * contributor license agreements. See the NOTICE file distributed with 006 * this work for additional information regarding copyright ownership. 007 * The ASF licenses this file to You under the Apache License, Version 2.0 008 * (the "License"); you may not use this file except in compliance with 009 * the License. You may obtain a copy of the License at 010 * 011 * http://www.apache.org/licenses/LICENSE-2.0 012 * 013 * Unless required by applicable law or agreed to in writing, software 014 * distributed under the License is distributed on an "AS IS" BASIS, 015 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 016 * See the License for the specific language governing permissions and 017 * limitations under the License. 018 */ 019 020 package org.apache.myfaces.tobago.component; 021 022 import javax.faces.context.FacesContext; 023 import org.apache.myfaces.tobago.context.Markup; 024 import org.apache.myfaces.tobago.internal.component.AbstractUITree; 025 import org.apache.myfaces.tobago.layout.Display; 026 import org.apache.myfaces.tobago.layout.Measure; 027 import org.apache.commons.lang.ArrayUtils; 028 import org.apache.commons.lang.StringUtils; 029 import org.apache.myfaces.tobago.component.MethodBindingToMethodExpression; 030 import org.apache.myfaces.tobago.component.MethodExpressionToMethodBinding; 031 import org.apache.myfaces.tobago.internal.util.Deprecation; 032 import org.apache.myfaces.tobago.renderkit.MarginValues; 033 import org.apache.myfaces.tobago.renderkit.SpacingValues; 034 import org.apache.myfaces.tobago.renderkit.LayoutComponentRenderer; 035 import javax.el.ELException; 036 import javax.faces.FacesException; 037 import java.util.ArrayList; 038 import java.util.List; 039 import javax.el.MethodExpression; 040 import javax.el.ValueExpression; 041 042 /** 043 A tree with classical look. 044 Usually used with icons and junction lines to open folder, etc. 045 * UIComponent class, generated from template {@code component1.2.stg} with class 046 * {@link org.apache.myfaces.tobago.internal.taglib.component.TreeTagDeclaration}. 047 */ 048 public class UITree 049 extends AbstractUITree implements SupportsMarkup { 050 051 public static final String COMPONENT_TYPE = "org.apache.myfaces.tobago.Tree"; 052 053 private org.apache.myfaces.tobago.context.Markup markup; 054 private org.apache.myfaces.tobago.layout.Measure marginLeft; 055 private java.lang.Object state; 056 private org.apache.myfaces.tobago.layout.Measure minimumHeight; 057 private org.apache.myfaces.tobago.layout.Measure height; 058 private java.lang.Boolean showRoot; 059 private org.apache.myfaces.tobago.layout.Measure minimumWidth; 060 private java.lang.Integer rowSpan; 061 private org.apache.myfaces.tobago.layout.Measure left; 062 private java.lang.Integer columnSpan; 063 private java.lang.Boolean required; 064 private org.apache.myfaces.tobago.layout.Measure maximumHeight; 065 private org.apache.myfaces.tobago.layout.Measure top; 066 private org.apache.myfaces.tobago.layout.Measure currentWidth; 067 private org.apache.myfaces.tobago.layout.Measure marginTop; 068 private org.apache.myfaces.tobago.layout.Measure marginRight; 069 private org.apache.myfaces.tobago.layout.Measure width; 070 private org.apache.myfaces.tobago.layout.Measure currentHeight; 071 private org.apache.myfaces.tobago.layout.Measure preferredHeight; 072 private java.lang.Boolean showRootJunction; 073 private org.apache.myfaces.tobago.layout.Display display; 074 private org.apache.myfaces.tobago.layout.Measure maximumWidth; 075 private org.apache.myfaces.tobago.layout.Measure preferredWidth; 076 private org.apache.myfaces.tobago.layout.Measure marginBottom; 077 private java.lang.Integer verticalIndex; 078 private java.lang.String selectable; 079 private org.apache.myfaces.tobago.context.Markup currentMarkup; 080 private java.lang.Integer horizontalIndex; 081 082 083 public org.apache.myfaces.tobago.context.Markup getMarkup() { 084 if (markup != null) { 085 return markup; 086 } 087 ValueExpression ve = getValueExpression("markup"); 088 if (ve != null) { 089 try { 090 Object object = ve.getValue(getFacesContext().getELContext()); 091 return Markup.valueOf(object); 092 } catch (ELException e) { 093 throw new FacesException(e); 094 } 095 } 096 return null; 097 } 098 099 public void setMarkup(org.apache.myfaces.tobago.context.Markup markup) { 100 this.markup = markup; 101 } 102 103 public org.apache.myfaces.tobago.layout.Measure getMarginLeft() { 104 if (marginLeft != null) { 105 return marginLeft; 106 } 107 ValueExpression ve = getValueExpression("marginLeft"); 108 if (ve != null) { 109 try { 110 Object object = ve.getValue(getFacesContext().getELContext()); 111 return Measure.valueOf(object); 112 } catch (ELException e) { 113 throw new FacesException(e); 114 } 115 } 116 return ((LayoutComponentRenderer) getRenderer(getFacesContext())).getMarginLeft(getFacesContext(), this); 117 } 118 119 public void setMarginLeft(org.apache.myfaces.tobago.layout.Measure marginLeft) { 120 this.marginLeft = marginLeft; 121 } 122 123 /** 124 <strong>ValueBindingExpression</strong> pointing to a object to save the 125 component's state. 126 127 */ 128 public java.lang.Object getState() { 129 if (state != null) { 130 return state; 131 } 132 ValueExpression ve = getValueExpression("state"); 133 if (ve != null) { 134 try { 135 return (java.lang.Object) ve.getValue(getFacesContext().getELContext()); 136 } catch (ELException e) { 137 throw new FacesException(e); 138 } 139 } 140 return null; 141 } 142 143 public void setState(java.lang.Object state) { 144 this.state = state; 145 } 146 147 public org.apache.myfaces.tobago.layout.Measure getMinimumHeight() { 148 if (minimumHeight != null) { 149 return minimumHeight; 150 } 151 ValueExpression ve = getValueExpression("minimumHeight"); 152 if (ve != null) { 153 try { 154 Object object = ve.getValue(getFacesContext().getELContext()); 155 return Measure.valueOf(object); 156 } catch (ELException e) { 157 throw new FacesException(e); 158 } 159 } 160 return ((LayoutComponentRenderer) getRenderer(getFacesContext())).getMinimumHeight(getFacesContext(), this); 161 } 162 163 public void setMinimumHeight(org.apache.myfaces.tobago.layout.Measure minimumHeight) { 164 this.minimumHeight = minimumHeight; 165 } 166 167 /** 168 This value will usually be set by the layout manager. 169 170 */ 171 public org.apache.myfaces.tobago.layout.Measure getHeight() { 172 if (height != null) { 173 return height; 174 } 175 ValueExpression ve = getValueExpression("height"); 176 if (ve != null) { 177 try { 178 Object object = ve.getValue(getFacesContext().getELContext()); 179 return Measure.valueOf(object); 180 } catch (ELException e) { 181 throw new FacesException(e); 182 } 183 } 184 return ((LayoutComponentRenderer) getRenderer(getFacesContext())).getHeight(getFacesContext(), this); 185 } 186 187 public void setHeight(org.apache.myfaces.tobago.layout.Measure height) { 188 this.height = height; 189 } 190 191 public boolean isShowRoot() { 192 if (showRoot != null) { 193 return showRoot; 194 } 195 ValueExpression ve = getValueExpression("showRoot"); 196 if (ve != null) { 197 try { 198 Boolean bool = (Boolean) ve.getValue(getFacesContext().getELContext()); 199 if (bool != null) { 200 return bool; 201 } 202 } catch (ELException e) { 203 throw new FacesException(e); 204 } 205 } 206 return false; 207 } 208 209 public void setShowRoot(boolean showRoot) { 210 this.showRoot = showRoot; 211 } 212 213 public org.apache.myfaces.tobago.layout.Measure getMinimumWidth() { 214 if (minimumWidth != null) { 215 return minimumWidth; 216 } 217 ValueExpression ve = getValueExpression("minimumWidth"); 218 if (ve != null) { 219 try { 220 Object object = ve.getValue(getFacesContext().getELContext()); 221 return Measure.valueOf(object); 222 } catch (ELException e) { 223 throw new FacesException(e); 224 } 225 } 226 return ((LayoutComponentRenderer)getRenderer(getFacesContext())).getMinimumWidth(getFacesContext(), this); 227 } 228 229 public void setMinimumWidth(org.apache.myfaces.tobago.layout.Measure minimumWidth) { 230 this.minimumWidth = minimumWidth; 231 } 232 233 public java.lang.Integer getRowSpan() { 234 if (rowSpan != null) { 235 return rowSpan; 236 } 237 ValueExpression ve = getValueExpression("rowSpan"); 238 if (ve != null) { 239 try { 240 Number number = (Number) ve.getValue(getFacesContext().getELContext()); 241 if (number != null) { 242 return number.intValue(); 243 } 244 } catch (ELException e) { 245 throw new FacesException(e); 246 } 247 } 248 return 1; 249 } 250 251 public void setRowSpan(java.lang.Integer rowSpan) { 252 this.rowSpan = rowSpan; 253 } 254 255 /** 256 This value will usually be set by the layout manager. 257 258 */ 259 public org.apache.myfaces.tobago.layout.Measure getLeft() { 260 if (left != null) { 261 return left; 262 } 263 ValueExpression ve = getValueExpression("left"); 264 if (ve != null) { 265 try { 266 Object object = ve.getValue(getFacesContext().getELContext()); 267 return Measure.valueOf(object); 268 } catch (ELException e) { 269 throw new FacesException(e); 270 } 271 } 272 return null; 273 } 274 275 public void setLeft(org.apache.myfaces.tobago.layout.Measure left) { 276 this.left = left; 277 } 278 279 public java.lang.Integer getColumnSpan() { 280 if (columnSpan != null) { 281 return columnSpan; 282 } 283 ValueExpression ve = getValueExpression("columnSpan"); 284 if (ve != null) { 285 try { 286 Number number = (Number) ve.getValue(getFacesContext().getELContext()); 287 if (number != null) { 288 return number.intValue(); 289 } 290 } catch (ELException e) { 291 throw new FacesException(e); 292 } 293 } 294 return 1; 295 } 296 297 public void setColumnSpan(java.lang.Integer columnSpan) { 298 this.columnSpan = columnSpan; 299 } 300 301 /** 302 Flag indicating that a value is required. 303 If the value is an empty string a 304 ValidationError occurs and a Error Message is rendered. 305 <br />Default: <code>false</code> 306 */ 307 public boolean isRequired() { 308 if (required != null) { 309 return required; 310 } 311 ValueExpression ve = getValueExpression("required"); 312 if (ve != null) { 313 try { 314 Boolean bool = (Boolean) ve.getValue(getFacesContext().getELContext()); 315 if (bool != null) { 316 return bool; 317 } 318 } catch (ELException e) { 319 throw new FacesException(e); 320 } 321 } 322 return false; 323 } 324 325 public void setRequired(boolean required) { 326 this.required = required; 327 } 328 329 public org.apache.myfaces.tobago.layout.Measure getMaximumHeight() { 330 if (maximumHeight != null) { 331 return maximumHeight; 332 } 333 ValueExpression ve = getValueExpression("maximumHeight"); 334 if (ve != null) { 335 try { 336 Object object = ve.getValue(getFacesContext().getELContext()); 337 return Measure.valueOf(object); 338 } catch (ELException e) { 339 throw new FacesException(e); 340 } 341 } 342 return ((LayoutComponentRenderer) getRenderer(getFacesContext())).getMaximumHeight(getFacesContext(), this); 343 } 344 345 public void setMaximumHeight(org.apache.myfaces.tobago.layout.Measure maximumHeight) { 346 this.maximumHeight = maximumHeight; 347 } 348 349 /** 350 This value will usually be set by the layout manager. 351 352 */ 353 public org.apache.myfaces.tobago.layout.Measure getTop() { 354 if (top != null) { 355 return top; 356 } 357 ValueExpression ve = getValueExpression("top"); 358 if (ve != null) { 359 try { 360 Object object = ve.getValue(getFacesContext().getELContext()); 361 return Measure.valueOf(object); 362 } catch (ELException e) { 363 throw new FacesException(e); 364 } 365 } 366 return null; 367 } 368 369 public void setTop(org.apache.myfaces.tobago.layout.Measure top) { 370 this.top = top; 371 } 372 373 /** 374 This value will usually be set by the layout manager. It holds the current width computed by the layout manager. 375 376 */ 377 public org.apache.myfaces.tobago.layout.Measure getCurrentWidth() { 378 if (currentWidth != null) { 379 return currentWidth; 380 } 381 ValueExpression ve = getValueExpression("currentWidth"); 382 if (ve != null) { 383 try { 384 Object object = ve.getValue(getFacesContext().getELContext()); 385 return Measure.valueOf(object); 386 } catch (ELException e) { 387 throw new FacesException(e); 388 } 389 } 390 return getWidth(); 391 } 392 393 public void setCurrentWidth(org.apache.myfaces.tobago.layout.Measure currentWidth) { 394 this.currentWidth = currentWidth; 395 } 396 397 public org.apache.myfaces.tobago.layout.Measure getMarginTop() { 398 if (marginTop != null) { 399 return marginTop; 400 } 401 ValueExpression ve = getValueExpression("marginTop"); 402 if (ve != null) { 403 try { 404 Object object = ve.getValue(getFacesContext().getELContext()); 405 return Measure.valueOf(object); 406 } catch (ELException e) { 407 throw new FacesException(e); 408 } 409 } 410 return ((LayoutComponentRenderer) getRenderer(getFacesContext())).getMarginTop(getFacesContext(), this); 411 } 412 413 public void setMarginTop(org.apache.myfaces.tobago.layout.Measure marginTop) { 414 this.marginTop = marginTop; 415 } 416 417 public org.apache.myfaces.tobago.layout.Measure getMarginRight() { 418 if (marginRight != null) { 419 return marginRight; 420 } 421 ValueExpression ve = getValueExpression("marginRight"); 422 if (ve != null) { 423 try { 424 Object object = ve.getValue(getFacesContext().getELContext()); 425 return Measure.valueOf(object); 426 } catch (ELException e) { 427 throw new FacesException(e); 428 } 429 } 430 return ((LayoutComponentRenderer) getRenderer(getFacesContext())).getMarginRight(getFacesContext(), this); 431 } 432 433 public void setMarginRight(org.apache.myfaces.tobago.layout.Measure marginRight) { 434 this.marginRight = marginRight; 435 } 436 437 /** 438 This value will usually be set by the layout manager. 439 440 */ 441 public org.apache.myfaces.tobago.layout.Measure getWidth() { 442 if (width != null) { 443 return width; 444 } 445 ValueExpression ve = getValueExpression("width"); 446 if (ve != null) { 447 try { 448 Object object = ve.getValue(getFacesContext().getELContext()); 449 return Measure.valueOf(object); 450 } catch (ELException e) { 451 throw new FacesException(e); 452 } 453 } 454 return ((LayoutComponentRenderer) getRenderer(getFacesContext())).getWidth(getFacesContext(), this); 455 } 456 457 public void setWidth(org.apache.myfaces.tobago.layout.Measure width) { 458 this.width = width; 459 } 460 461 /** 462 This value will usually be set by the layout manager. It holds the current height computed by the layout manager. 463 464 */ 465 public org.apache.myfaces.tobago.layout.Measure getCurrentHeight() { 466 if (currentHeight != null) { 467 return currentHeight; 468 } 469 ValueExpression ve = getValueExpression("currentHeight"); 470 if (ve != null) { 471 try { 472 Object object = ve.getValue(getFacesContext().getELContext()); 473 return Measure.valueOf(object); 474 } catch (ELException e) { 475 throw new FacesException(e); 476 } 477 } 478 return getHeight(); 479 } 480 481 public void setCurrentHeight(org.apache.myfaces.tobago.layout.Measure currentHeight) { 482 this.currentHeight = currentHeight; 483 } 484 485 public org.apache.myfaces.tobago.layout.Measure getPreferredHeight() { 486 if (preferredHeight != null) { 487 return preferredHeight; 488 } 489 ValueExpression ve = getValueExpression("preferredHeight"); 490 if (ve != null) { 491 try { 492 Object object = ve.getValue(getFacesContext().getELContext()); 493 return Measure.valueOf(object); 494 } catch (ELException e) { 495 throw new FacesException(e); 496 } 497 } 498 return ((LayoutComponentRenderer) getRenderer(getFacesContext())).getPreferredHeight(getFacesContext(), this); 499 } 500 501 public void setPreferredHeight(org.apache.myfaces.tobago.layout.Measure preferredHeight) { 502 this.preferredHeight = preferredHeight; 503 } 504 505 public boolean isShowRootJunction() { 506 if (showRootJunction != null) { 507 return showRootJunction; 508 } 509 ValueExpression ve = getValueExpression("showRootJunction"); 510 if (ve != null) { 511 try { 512 Boolean bool = (Boolean) ve.getValue(getFacesContext().getELContext()); 513 if (bool != null) { 514 return bool; 515 } 516 } catch (ELException e) { 517 throw new FacesException(e); 518 } 519 } 520 return false; 521 } 522 523 public void setShowRootJunction(boolean showRootJunction) { 524 this.showRootJunction = showRootJunction; 525 } 526 527 /** 528 This attribute is for internal use only. 529 530 */ 531 public org.apache.myfaces.tobago.layout.Display getDisplay() { 532 if (display != null) { 533 return display; 534 } 535 ValueExpression ve = getValueExpression("display"); 536 if (ve != null) { 537 try { 538 return (org.apache.myfaces.tobago.layout.Display) ve.getValue(getFacesContext().getELContext()); 539 } catch (ELException e) { 540 throw new FacesException(e); 541 } 542 } 543 return null; 544 } 545 546 public void setDisplay(org.apache.myfaces.tobago.layout.Display display) { 547 this.display = display; 548 } 549 550 public org.apache.myfaces.tobago.layout.Measure getMaximumWidth() { 551 if (maximumWidth != null) { 552 return maximumWidth; 553 } 554 ValueExpression ve = getValueExpression("maximumWidth"); 555 if (ve != null) { 556 try { 557 Object object = ve.getValue(getFacesContext().getELContext()); 558 return Measure.valueOf(object); 559 } catch (ELException e) { 560 throw new FacesException(e); 561 } 562 } 563 return ((LayoutComponentRenderer) getRenderer(getFacesContext())).getMaximumWidth(getFacesContext(), this); 564 } 565 566 public void setMaximumWidth(org.apache.myfaces.tobago.layout.Measure maximumWidth) { 567 this.maximumWidth = maximumWidth; 568 } 569 570 public org.apache.myfaces.tobago.layout.Measure getPreferredWidth() { 571 if (preferredWidth != null) { 572 return preferredWidth; 573 } 574 ValueExpression ve = getValueExpression("preferredWidth"); 575 if (ve != null) { 576 try { 577 Object object = ve.getValue(getFacesContext().getELContext()); 578 return Measure.valueOf(object); 579 } catch (ELException e) { 580 throw new FacesException(e); 581 } 582 } 583 return ((LayoutComponentRenderer) getRenderer(getFacesContext())).getPreferredWidth(getFacesContext(), this); 584 } 585 586 public void setPreferredWidth(org.apache.myfaces.tobago.layout.Measure preferredWidth) { 587 this.preferredWidth = preferredWidth; 588 } 589 590 public org.apache.myfaces.tobago.layout.Measure getMarginBottom() { 591 if (marginBottom != null) { 592 return marginBottom; 593 } 594 ValueExpression ve = getValueExpression("marginBottom"); 595 if (ve != null) { 596 try { 597 Object object = ve.getValue(getFacesContext().getELContext()); 598 return Measure.valueOf(object); 599 } catch (ELException e) { 600 throw new FacesException(e); 601 } 602 } 603 return ((LayoutComponentRenderer) getRenderer(getFacesContext())).getMarginBottom(getFacesContext(), this); 604 } 605 606 public void setMarginBottom(org.apache.myfaces.tobago.layout.Measure marginBottom) { 607 this.marginBottom = marginBottom; 608 } 609 610 /** 611 This attribute is for internal use only. 612 613 */ 614 public java.lang.Integer getVerticalIndex() { 615 if (verticalIndex != null) { 616 return verticalIndex; 617 } 618 ValueExpression ve = getValueExpression("verticalIndex"); 619 if (ve != null) { 620 try { 621 Number number = (Number) ve.getValue(getFacesContext().getELContext()); 622 if (number != null) { 623 return number.intValue(); 624 } 625 } catch (ELException e) { 626 throw new FacesException(e); 627 } 628 } 629 return null; 630 } 631 632 public void setVerticalIndex(java.lang.Integer verticalIndex) { 633 this.verticalIndex = verticalIndex; 634 } 635 636 /** 637 Flag indicating whether or not this component should be render selectable items. 638 Possible values are: 639 <ul> 640 <li><strong>multi</strong> : a multi section tree is rendered</li> 641 <li><strong>single</strong> : a single section tree is rendered</li> 642 <li><strong>multiLeafOnly</strong> : a multi section tree is rendered, 643 only Leaf's are selectable</li> 644 <li><strong>singleLeafOnly</strong> : a single section tree is rendered, 645 only Leaf's are selectable</li> 646 </ul> 647 For any other value or if this attribute is omitted the items are not selectable. 648 <br />Default: <code>off</code><br />Allowed Values: <code>multi,single,multiLeafOnly,singleLeafOnly,off</code> 649 */ 650 public java.lang.String getSelectable() { 651 if (selectable != null) { 652 return selectable; 653 } 654 ValueExpression ve = getValueExpression("selectable"); 655 if (ve != null) { 656 try { 657 java.lang.String selectable = (java.lang.String) ve.getValue(getFacesContext().getELContext()); 658 if (selectable != null) { 659 return selectable; 660 } 661 } catch (ELException e) { 662 throw new FacesException(e); 663 } 664 } 665 return "off"; 666 } 667 668 public void setSelectable(java.lang.String selectable) { 669 this.selectable = selectable; 670 } 671 672 public org.apache.myfaces.tobago.context.Markup getCurrentMarkup() { 673 if (currentMarkup != null) { 674 return currentMarkup; 675 } 676 ValueExpression ve = getValueExpression("currentMarkup"); 677 if (ve != null) { 678 try { 679 Object object = ve.getValue(getFacesContext().getELContext()); 680 return Markup.valueOf(object); 681 } catch (ELException e) { 682 throw new FacesException(e); 683 } 684 } 685 return null; 686 } 687 688 public void setCurrentMarkup(org.apache.myfaces.tobago.context.Markup currentMarkup) { 689 this.currentMarkup = currentMarkup; 690 } 691 692 /** 693 This attribute is for internal use only. 694 695 */ 696 public java.lang.Integer getHorizontalIndex() { 697 if (horizontalIndex != null) { 698 return horizontalIndex; 699 } 700 ValueExpression ve = getValueExpression("horizontalIndex"); 701 if (ve != null) { 702 try { 703 Number number = (Number) ve.getValue(getFacesContext().getELContext()); 704 if (number != null) { 705 return number.intValue(); 706 } 707 } catch (ELException e) { 708 throw new FacesException(e); 709 } 710 } 711 return null; 712 } 713 714 public void setHorizontalIndex(java.lang.Integer horizontalIndex) { 715 this.horizontalIndex = horizontalIndex; 716 } 717 718 public void restoreState(FacesContext context, Object componentState) { 719 Object[] values = (Object[]) componentState; 720 super.restoreState(context, values[0]); 721 markup = (org.apache.myfaces.tobago.context.Markup) values[1]; 722 marginLeft = (org.apache.myfaces.tobago.layout.Measure) values[2]; 723 state = (java.lang.Object) values[3]; 724 minimumHeight = (org.apache.myfaces.tobago.layout.Measure) values[4]; 725 height = (org.apache.myfaces.tobago.layout.Measure) values[5]; 726 showRoot = (java.lang.Boolean) values[6]; 727 minimumWidth = (org.apache.myfaces.tobago.layout.Measure) values[7]; 728 rowSpan = (java.lang.Integer) values[8]; 729 left = (org.apache.myfaces.tobago.layout.Measure) values[9]; 730 columnSpan = (java.lang.Integer) values[10]; 731 required = (java.lang.Boolean) values[11]; 732 maximumHeight = (org.apache.myfaces.tobago.layout.Measure) values[12]; 733 top = (org.apache.myfaces.tobago.layout.Measure) values[13]; 734 currentWidth = (org.apache.myfaces.tobago.layout.Measure) values[14]; 735 marginTop = (org.apache.myfaces.tobago.layout.Measure) values[15]; 736 marginRight = (org.apache.myfaces.tobago.layout.Measure) values[16]; 737 width = (org.apache.myfaces.tobago.layout.Measure) values[17]; 738 currentHeight = (org.apache.myfaces.tobago.layout.Measure) values[18]; 739 preferredHeight = (org.apache.myfaces.tobago.layout.Measure) values[19]; 740 showRootJunction = (java.lang.Boolean) values[20]; 741 display = (org.apache.myfaces.tobago.layout.Display) values[21]; 742 maximumWidth = (org.apache.myfaces.tobago.layout.Measure) values[22]; 743 preferredWidth = (org.apache.myfaces.tobago.layout.Measure) values[23]; 744 marginBottom = (org.apache.myfaces.tobago.layout.Measure) values[24]; 745 verticalIndex = (java.lang.Integer) values[25]; 746 selectable = (java.lang.String) values[26]; 747 currentMarkup = (org.apache.myfaces.tobago.context.Markup) values[27]; 748 horizontalIndex = (java.lang.Integer) values[28]; 749 } 750 751 public Object saveState(FacesContext context) { 752 Object[] values = new Object[29]; 753 values[0] = super.saveState(context); 754 values[1] = markup; 755 values[2] = marginLeft; 756 values[3] = state; 757 values[4] = minimumHeight; 758 values[5] = height; 759 values[6] = showRoot; 760 values[7] = minimumWidth; 761 values[8] = rowSpan; 762 values[9] = left; 763 values[10] = columnSpan; 764 values[11] = required; 765 values[12] = maximumHeight; 766 values[13] = top; 767 values[14] = currentWidth; 768 values[15] = marginTop; 769 values[16] = marginRight; 770 values[17] = width; 771 values[18] = currentHeight; 772 values[19] = preferredHeight; 773 values[20] = showRootJunction; 774 values[21] = display; 775 values[22] = maximumWidth; 776 values[23] = preferredWidth; 777 values[24] = marginBottom; 778 values[25] = verticalIndex; 779 values[26] = selectable; 780 values[27] = currentMarkup; 781 values[28] = horizontalIndex; 782 return values; 783 } 784 785 786 }