KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > lobobrowser > html > style > BodyRenderState


1 /*
2     GNU LESSER GENERAL PUBLIC LICENSE
3     Copyright (C) 2006 The Lobo Project
4
5     This library is free software; you can redistribute it and/or
6     modify it under the terms of the GNU Lesser General Public
7     License as published by the Free Software Foundation; either
8     version 2.1 of the License, or (at your option) any later version.
9
10     This library is distributed in the hope that it will be useful,
11     but WITHOUT ANY WARRANTY; without even the implied warranty of
12     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13     Lesser General Public License for more details.
14
15     You should have received a copy of the GNU Lesser General Public
16     License along with this library; if not, write to the Free Software
17     Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
18
19     Contact info: xamjadmin@users.sourceforge.net
20 */

21 package org.lobobrowser.html.style;
22
23 import org.lobobrowser.html.domimpl.HTMLElementImpl;
24 import org.lobobrowser.util.gui.*;
25
26 public class BodyRenderState extends BlockRenderState {
27     public BodyRenderState(RenderState prevRenderState, HTMLElementImpl element) {
28         super(prevRenderState, element);
29     }
30
31     private BackgroundInfo backgroundInfo = INVALID_BACKGROUND_INFO;
32
33     public void invalidate() {
34         super.invalidate();
35         this.backgroundInfo = INVALID_BACKGROUND_INFO;
36     }
37     
38     public BackgroundInfo getBackgroundInfo() {
39         BackgroundInfo binfo = this.backgroundInfo;
40         if(binfo != INVALID_BACKGROUND_INFO) {
41             return binfo;
42         }
43         binfo = super.getBackgroundInfo();
44         if(binfo == null || binfo.backgroundColor == null) {
45             String JavaDoc bgcolor = this.element.getAttribute("bgcolor");
46             if(bgcolor != null && bgcolor.length() != 0) {
47                 if(binfo == null) {
48                     binfo = new BackgroundInfo();
49                 }
50                 binfo.backgroundColor = ColorFactory.getInstance().getColor(bgcolor);
51             }
52         }
53         this.backgroundInfo = binfo;
54         return binfo;
55     }
56 }
57
Popular Tags