001/* ---------------------------------------------------------------------------- 002 The Kiwi Toolkit - A Java Class Library 003 Copyright (C) 1998-2004 Mark A. Lindner 004 005 This library is free software; you can redistribute it and/or 006 modify it under the terms of the GNU General Public License as 007 published by the Free Software Foundation; either version 2 of the 008 License, or (at your option) any later version. 009 010 This library is distributed in the hope that it will be useful, 011 but WITHOUT ANY WARRANTY; without even the implied warranty of 012 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 013 General Public License for more details. 014 015 You should have received a copy of the GNU General Public License 016 along with this library; if not, write to the Free Software 017 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 018 02111-1307, USA. 019 020 The author may be contacted at: mark_a_lindner@yahoo.com 021 ---------------------------------------------------------------------------- 022 $Log: KDesktopPane.java,v $ 023 Revision 1.5 2004/05/12 19:16:14 markl 024 comment block updates 025 026 Revision 1.4 2003/01/19 09:50:53 markl 027 Javadoc & comment header updates. 028 029 Revision 1.3 2001/03/12 09:27:56 markl 030 Source code and Javadoc cleanup. 031 032 Revision 1.2 1999/01/10 02:25:57 markl 033 added GPL header & RCS tag 034 ---------------------------------------------------------------------------- 035*/ 036 037package kiwi.ui; 038 039import java.awt.*; 040import javax.swing.*; 041 042/** A trivial extension of <code>JDesktopPane</code> that supports an opacity 043 * setting. 044 * 045 * @author Mark Lindner 046 */ 047 048public class KDesktopPane extends JDesktopPane 049 { 050 private boolean opaque = true; 051 052 /** Construct a new <code>KDesktopPane</code>. */ 053 054 public KDesktopPane() 055 { 056 super(); 057 } 058 059 /** Paint the component. Delegates to superclass if the component is 060 * opaque. 061 */ 062 063 protected void paintComponent(Graphics gc) 064 { 065 if(opaque) 066 super.paintComponent(gc); 067 } 068 069 /** Get the opacity state of this component. 070 * 071 * @return <code>true</code> if this component is opaque, and 072 * <code>false</code> otherwise. 073 */ 074 075 public boolean isOpaque() 076 { 077 return(opaque); 078 } 079 080 /** Set the opacity state of this component. 081 * 082 * @param opaque A flag specifying whether this component will be opaque. 083 */ 084 085 public void setOpaque(boolean opaque) 086 { 087 this.opaque = opaque; 088 repaint(); 089 } 090 091 } 092 093/* end of source file */