Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
R
riscv-gcc-1
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lvzhengyang
riscv-gcc-1
Commits
8f5c92a0
Commit
8f5c92a0
authored
Aug 09, 2002
by
Bryce McKinlay
Committed by
Bryce McKinlay
Aug 09, 2002
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
More AWT/Swing merge from GNU Classpath.
From-SVN: r56148
parent
7bde45b2
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
1332 additions
and
0 deletions
+1332
-0
libjava/ChangeLog
+12
-0
libjava/java/awt/im/spi/InputMethod.java
+240
-0
libjava/java/awt/im/spi/InputMethodContext.java
+122
-0
libjava/java/awt/im/spi/InputMethodDescriptor.java
+111
-0
libjava/java/awt/image/renderable/ContextualRenderedImageFactory.java
+56
-0
libjava/java/awt/image/renderable/ParameterBlock.java
+308
-0
libjava/java/awt/image/renderable/RenderContext.java
+141
-0
libjava/java/awt/image/renderable/RenderableImage.java
+59
-0
libjava/java/awt/image/renderable/RenderableImageOp.java
+157
-0
libjava/java/awt/image/renderable/RenderableImageProducer.java
+79
-0
libjava/java/awt/image/renderable/RenderedImageFactory.java
+47
-0
No files found.
libjava/ChangeLog
View file @
8f5c92a0
...
...
@@ -393,6 +393,18 @@
java
/
awt
/
Shape
.
java
,
java
/
awt
/
SystemColor
.
java
,
java
/
awt
/
Toolkit
.
java
,
java
/
awt
/
Transparency
.
java
,
java
/
awt
/
Window
.
java
:
Merge
from
classpath
.
*
java
/
awt
/
im
/
spi
/
InputMethod
.
java
,
java
/
awt
/
im
/
spi
/
InputMethodContext
.
java
,
java
/
awt
/
im
/
spi
/
InputMethodDescriptor
.
java
,
java
/
awt
/
image
/
renderable
/
ContextualRenderedImageFactory
.
java
,
java
/
awt
/
image
/
renderable
/
ParameterBlock
.
java
,
java
/
awt
/
image
/
renderable
/
RenderContext
.
java
,
java
/
awt
/
image
/
renderable
/
RenderableImage
.
java
,
java
/
awt
/
image
/
renderable
/
RenderableImageOp
.
java
,
java
/
awt
/
image
/
renderable
/
RenderableImageProducer
.
java
,
java
/
awt
/
image
/
renderable
/
RenderedImageFactory
.
java
:
New
files
from
classpath
.
*
Makefile
.
am
:
Add
new
files
.
*
Makefile
.
in
:
Rebuilt
.
...
...
libjava/java/awt/im/spi/InputMethod.java
0 → 100644
View file @
8f5c92a0
This diff is collapsed.
Click to expand it.
libjava/java/awt/im/spi/InputMethodContext.java
0 → 100644
View file @
8f5c92a0
/* InputMethodContext.java -- communication between an input method and client
Copyright (C) 2002 Free Software Foundation, Inc.
This file is part of GNU Classpath.
GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Classpath 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
General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA.
Linking this library statically or dynamically with other modules is
making a combined work based on this library. Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.
As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent
modules, and to copy and distribute the resulting executable under
terms of your choice, provided that you also meet, for each linked
independent module, the terms and conditions of the license of that
module. An independent module is a module which is not derived from
or based on this library. If you modify this library, you may extend
this exception to your version of the library, but you are not
obligated to do so. If you do not wish to do so, delete this
exception statement from your version. */
package
java
.
awt
.
im
.
spi
;
import
java.awt.HeadlessException
;
import
java.awt.Window
;
import
java.awt.font.TextHitInfo
;
import
java.awt.im.InputMethodRequests
;
import
java.text.AttributedCharacterIterator
;
import
javax.swing.JFrame
;
/**
* Provides methods for the communication context between an input method
* and the client component. This should be passed to
* {@link InputMethod#setInputMethodContext(InputMethodContext)}.
*
* @author Eric Blake <ebb9@email.byu.edu>
* @since 1.3
* @status updated to 1.4
*/
public
interface
InputMethodContext
extends
InputMethodRequests
{
/**
* Create an input method event and dispatch it to the client.
*
* @param id the event type
* @param text an iterator over the text to be committed
* @param count the count of characters to be committed
* @param caret the insertion point of the commit, or null
* @param visiblePosition the best location to make visible, or null
*/
void
dispatchInputMethodEvent
(
int
id
,
AttributedCharacterIterator
text
,
int
count
,
TextHitInfo
caret
,
TextHitInfo
visiblePosition
);
/**
* Creates a top-level window for use by the input method. This window should
* float above all document windows and dialogs, not receive focus, and have
* lightweight decorations (such as no title, reduced drag regions). But
* this behavior may be modified to meet the platform style. The title may
* or may not be displayed, depending on the platform.
*
* <p>If attachToInputContext is true, the new window will share the input
* context of the input method, so that events in the new window are
* dispatched to the input method. Also, this supresses deactivate and
* activate calls to the input method caused by setVisible.
*
* @param title the window title, if one is displayed; null becomes ""
* @param attachToInputContext true for the window to share context with
* the input method
* @return the new window for use by the input method
* @throws HeadlessException if GraphicsEnvironment.isHeadless is true
*/
Window
createInputMethodWindow
(
String
title
,
boolean
attachToInputContext
);
/**
* Creates a top-level Swing JFrame for use by the input method. This frame
* should float above all document windows and dialogs, not receive focus,
* and have lightweight decorations (such as no title, reduced drag
* regions). But this behavior may be modified to meet the platform style.
* The title may or may not be displayed, depending on the platform.
*
* <p>If attachToInputContext is true, the new window will share the input
* context of the input method, so that events in the new window are
* dispatched to the input method. Also, this supresses deactivate and
* activate calls to the input method caused by setVisible.
*
* @param title the window title, if one is displayed; null becomes ""
* @param attachToInputContext true for the window to share context with
* the input method
* @return the new window for use by the input method
* @throws HeadlessException if GraphicsEnvironment.isHeadless is true
* @since 1.4
*/
JFrame
createInputMethodJFrame
(
String
title
,
boolean
attachToInputContext
);
/**
* Sets whether notification of the client window's location and state should
* be enabled for the input method. When enabled, the input method's
* {@link #notifyClientWindowChange(Rectangle)} method is called.
* Notification is automatically disabled when the input method is disposed.
*
* @param inputMethod the method to change status of
* @param enable true to enable notification
*/
void
enableClientWindowNotification
(
InputMethod
inputMethod
,
boolean
enable
);
}
// interface InputMethodContext
libjava/java/awt/im/spi/InputMethodDescriptor.java
0 → 100644
View file @
8f5c92a0
/* InputMethodDescriptor.java -- enables loading and use of an input method
Copyright (C) 2002 Free Software Foundation, Inc.
This file is part of GNU Classpath.
GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Classpath 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
General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA.
Linking this library statically or dynamically with other modules is
making a combined work based on this library. Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.
As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent
modules, and to copy and distribute the resulting executable under
terms of your choice, provided that you also meet, for each linked
independent module, the terms and conditions of the license of that
module. An independent module is a module which is not derived from
or based on this library. If you modify this library, you may extend
this exception to your version of the library, but you are not
obligated to do so. If you do not wish to do so, delete this
exception statement from your version. */
package
java
.
awt
.
im
.
spi
;
import
java.awt.AWTException
;
import
java.awt.Image
;
import
java.util.Locale
;
/**
* This interface provides information about an InputMethod before it is
* loaded.
*
* @author Eric Blake <ebb9@email.byu.edu>
* @since 1.3
* @status updated to 1.4
*/
public
interface
InputMethodDescriptor
{
/**
* Returns the locales supported by the input method this describes. This
* allows the selection of input methods by locale (by language only, or
* also by country and variant), via
* {@link InputContext#selectInputMethod(Locale)}. The returned list should
* ignore pass-through locales, so it is usually a subset of locales for
* which {@link InputMethod#setContext(Locale)} returns true. If
* {@link #hasDynamicLocaleList()} returns true, this is called each time
* information is needed, allowing dynamic addition or removal of supported
* locales.
*
* @return the list of supported locales
* @throws AWTException if the input method is not available
*/
Locale
[]
getAvailableLocales
()
throws
AWTException
;
/**
* Test whether the input method this describes has a static or dynamic
* locale list. For example, this would return true if the list of supported
* locales depends on adapters currently loaded over a network.
*
* @return true if the locale list is dynamic
*/
boolean
hasDynamicLocaleList
();
/**
* Returns a user visible name of the input locale, displayed in the
* specified locale. The inputLocale parameter must be one obtained from
* the list in {@link #getAvailableLocales()}, or null for a
* locale-independent description of the input method. If a translation to
* the desired display language is not available, another language may be
* used.
*
* @param inputLocale the locale of the input method, or null
* @param displayLanguage the language of the result
* @return the name of the input method when using the given inputLocale
*/
public
String
getInputMethodDisplayName
(
Locale
inputLocale
,
Locale
displayLanguage
);
/**
* Returns a 16x16 icon for the input locale. The inputLocale parameter
* must be one obtained from the list in {@link #getAvailableLocales()}, or
* null for a locale-independent icon for the input method.
*
* @param inputLocale the locale of the input method, or null
* @return a 16x16 icon for the input method when using the given inputLocale
*/
public
Image
getInputMethodIcon
(
Locale
inputLocale
);
/**
* Creates a new instance of the input method.
*
* @return the newly created input method
* @throws Exception if anything goes wrong
*/
public
InputMethod
createInputMethod
()
throws
Exception
;
}
// interface InputMethodDescriptor
libjava/java/awt/image/renderable/ContextualRenderedImageFactory.java
0 → 100644
View file @
8f5c92a0
/* ContextualRenderedImageFactory.java --
Copyright (C) 2002 Free Software Foundation, Inc.
This file is part of GNU Classpath.
GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Classpath 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
General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA.
Linking this library statically or dynamically with other modules is
making a combined work based on this library. Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.
As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent
modules, and to copy and distribute the resulting executable under
terms of your choice, provided that you also meet, for each linked
independent module, the terms and conditions of the license of that
module. An independent module is a module which is not derived from
or based on this library. If you modify this library, you may extend
this exception to your version of the library, but you are not
obligated to do so. If you do not wish to do so, delete this
exception statement from your version. */
package
java
.
awt
.
image
.
renderable
;
import
java.awt.geom.Rectangle2D
;
import
java.awt.image.RenderedImage
;
/**
* STUBBED
*/
public
interface
ContextualRenderedImageFactory
extends
RenderedImageFactory
{
RenderContext
mapRenderContext
(
int
i
,
RenderContext
context
,
ParameterBlock
block
,
RenderableImage
image
);
RenderedImage
create
(
RenderContext
context
,
ParameterBlock
block
);
Rectangle2D
getBounds2D
(
ParameterBlock
block
);
Object
getProperty
(
ParameterBlock
block
,
String
name
);
String
[]
getPropertyNames
();
boolean
isDynamic
();
}
// interface ContextualRenderedImageFactory
libjava/java/awt/image/renderable/ParameterBlock.java
0 → 100644
View file @
8f5c92a0
/* ParameterBlock.java --
Copyright (C) 2002 Free Software Foundation, Inc.
This file is part of GNU Classpath.
GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Classpath 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
General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA.
Linking this library statically or dynamically with other modules is
making a combined work based on this library. Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.
As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent
modules, and to copy and distribute the resulting executable under
terms of your choice, provided that you also meet, for each linked
independent module, the terms and conditions of the license of that
module. An independent module is a module which is not derived from
or based on this library. If you modify this library, you may extend
this exception to your version of the library, but you are not
obligated to do so. If you do not wish to do so, delete this
exception statement from your version. */
package
java
.
awt
.
image
.
renderable
;
import
java.awt.image.RenderedImage
;
import
java.io.Serializable
;
import
java.util.Vector
;
public
class
ParameterBlock
implements
Cloneable
,
Serializable
{
private
static
final
long
serialVersionUID
=
-
7577115551785240750L
;
protected
Vector
sources
;
protected
Vector
parameters
;
public
ParameterBlock
()
{
this
(
new
Vector
(),
new
Vector
());
}
public
ParameterBlock
(
Vector
sources
)
{
this
(
sources
,
new
Vector
());
}
public
ParameterBlock
(
Vector
sources
,
Vector
parameters
)
{
this
.
sources
=
sources
;
this
.
parameters
=
parameters
;
}
public
Object
shallowClone
()
{
try
{
return
super
.
clone
();
}
catch
(
CloneNotSupportedException
e
)
{
throw
(
Error
)
new
InternalError
().
initCause
(
e
);
// impossible
}
}
public
Object
clone
()
{
ParameterBlock
pb
=
(
ParameterBlock
)
shallowClone
();
if
(
sources
!=
null
)
pb
.
sources
=
(
Vector
)
sources
.
clone
();
if
(
parameters
!=
null
)
pb
.
parameters
=
(
Vector
)
parameters
.
clone
();
return
pb
;
}
public
ParameterBlock
addSource
(
Object
source
)
{
sources
.
add
(
source
);
return
this
;
}
public
Object
getSource
(
int
index
)
{
return
sources
.
get
(
index
);
}
public
ParameterBlock
setSource
(
Object
source
,
int
index
)
{
sources
.
ensureCapacity
(
index
);
sources
.
set
(
index
,
source
);
return
this
;
}
public
RenderedImage
getRenderedSource
(
int
index
)
{
return
(
RenderedImage
)
sources
.
get
(
index
);
}
public
RenderableImage
getRenderableSource
(
int
index
)
{
return
(
RenderableImage
)
sources
.
get
(
index
);
}
public
int
getNumSources
()
{
return
sources
.
size
();
}
public
Vector
getSources
()
{
return
sources
;
}
public
void
setSources
(
Vector
sources
)
{
this
.
sources
=
sources
;
}
public
void
removeSources
()
{
if
(
sources
!=
null
)
sources
.
clear
();
}
public
int
getNumParameters
()
{
return
parameters
.
size
();
}
public
Vector
getParameters
()
{
return
parameters
;
}
public
void
setParameters
(
Vector
parameters
)
{
this
.
parameters
=
parameters
;
}
public
void
removeParameters
()
{
if
(
parameters
!=
null
)
parameters
.
clear
();
}
public
ParameterBlock
add
(
Object
o
)
{
parameters
.
add
(
o
);
return
this
;
}
public
ParameterBlock
add
(
byte
b
)
{
return
add
(
new
Byte
(
b
));
}
public
ParameterBlock
add
(
char
c
)
{
return
add
(
new
Character
(
c
));
}
public
ParameterBlock
add
(
short
s
)
{
return
add
(
new
Short
(
s
));
}
public
ParameterBlock
add
(
int
i
)
{
return
add
(
new
Integer
(
i
));
}
public
ParameterBlock
add
(
long
l
)
{
return
add
(
new
Long
(
l
));
}
public
ParameterBlock
add
(
float
f
)
{
return
add
(
new
Float
(
f
));
}
public
ParameterBlock
add
(
double
d
)
{
return
add
(
new
Double
(
d
));
}
public
ParameterBlock
set
(
Object
o
,
int
index
)
{
parameters
.
ensureCapacity
(
index
);
parameters
.
set
(
index
,
o
);
return
this
;
}
public
ParameterBlock
set
(
byte
b
,
int
index
)
{
return
set
(
new
Byte
(
b
),
index
);
}
public
ParameterBlock
set
(
char
c
,
int
index
)
{
return
set
(
new
Character
(
c
),
index
);
}
public
ParameterBlock
set
(
short
s
,
int
index
)
{
return
set
(
new
Short
(
s
),
index
);
}
public
ParameterBlock
set
(
int
i
,
int
index
)
{
return
set
(
new
Integer
(
i
),
index
);
}
public
ParameterBlock
set
(
long
l
,
int
index
)
{
return
set
(
new
Long
(
l
),
index
);
}
public
ParameterBlock
set
(
float
f
,
int
index
)
{
return
set
(
new
Float
(
f
),
index
);
}
public
ParameterBlock
set
(
double
d
,
int
index
)
{
return
set
(
new
Double
(
d
),
index
);
}
public
Object
getObjectParameter
(
int
index
)
{
return
parameters
.
get
(
index
);
}
public
byte
getByteParameter
(
int
index
)
{
return
((
Byte
)
parameters
.
get
(
index
)).
byteValue
();
}
public
char
getCharParameter
(
int
index
)
{
return
((
Character
)
parameters
.
get
(
index
)).
charValue
();
}
public
short
getShortParameter
(
int
index
)
{
return
((
Short
)
parameters
.
get
(
index
)).
shortValue
();
}
public
int
getIntParameter
(
int
index
)
{
return
((
Integer
)
parameters
.
get
(
index
)).
intValue
();
}
public
long
getLongParameter
(
int
index
)
{
return
((
Long
)
parameters
.
get
(
index
)).
longValue
();
}
public
float
getFloatParameter
(
int
index
)
{
return
((
Float
)
parameters
.
get
(
index
)).
floatValue
();
}
public
double
getDoubleParameter
(
int
index
)
{
return
((
Double
)
parameters
.
get
(
index
)).
doubleValue
();
}
public
Class
[]
getParamClasses
()
{
int
i
=
parameters
.
size
();
Class
[]
result
=
new
Class
[
i
];
while
(--
i
>=
0
)
{
Class
c
=
parameters
.
get
(
i
).
getClass
();
if
(
c
==
Byte
.
class
)
result
[
i
]
=
byte
.
class
;
else
if
(
c
==
Character
.
class
)
result
[
i
]
=
char
.
class
;
else
if
(
c
==
Short
.
class
)
result
[
i
]
=
short
.
class
;
else
if
(
c
==
Integer
.
class
)
result
[
i
]
=
int
.
class
;
else
if
(
c
==
Long
.
class
)
result
[
i
]
=
long
.
class
;
else
if
(
c
==
Float
.
class
)
result
[
i
]
=
float
.
class
;
else
if
(
c
==
Double
.
class
)
result
[
i
]
=
double
.
class
;
else
result
[
i
]
=
c
;
}
return
result
;
}
}
// class ParameterBlock
libjava/java/awt/image/renderable/RenderContext.java
0 → 100644
View file @
8f5c92a0
/* RenderContext.java --
Copyright (C) 2002 Free Software Foundation, Inc.
This file is part of GNU Classpath.
GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Classpath 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
General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA.
Linking this library statically or dynamically with other modules is
making a combined work based on this library. Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.
As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent
modules, and to copy and distribute the resulting executable under
terms of your choice, provided that you also meet, for each linked
independent module, the terms and conditions of the license of that
module. An independent module is a module which is not derived from
or based on this library. If you modify this library, you may extend
this exception to your version of the library, but you are not
obligated to do so. If you do not wish to do so, delete this
exception statement from your version. */
package
java
.
awt
.
image
.
renderable
;
import
java.awt.RenderingHints
;
import
java.awt.Shape
;
import
java.awt.geom.AffineTransform
;
public
class
RenderContext
implements
Cloneable
{
private
AffineTransform
xform
;
private
Shape
aoi
;
private
RenderingHints
hints
;
public
RenderContext
(
AffineTransform
xform
,
Shape
aoi
,
RenderingHints
hints
)
{
this
.
xform
=
xform
;
this
.
aoi
=
aoi
;
this
.
hints
=
hints
;
}
public
RenderContext
(
AffineTransform
xform
)
{
this
(
xform
,
null
,
null
);
}
public
RenderContext
(
AffineTransform
xform
,
RenderingHints
hints
)
{
this
(
xform
,
null
,
hints
);
}
public
RenderContext
(
AffineTransform
xform
,
Shape
aoi
)
{
this
(
xform
,
aoi
,
null
);
}
public
RenderingHints
getRenderingHints
()
{
return
hints
;
}
public
void
setRenderingHints
(
RenderingHints
hints
)
{
this
.
hints
=
hints
;
}
public
void
setTransform
(
AffineTransform
xform
)
{
this
.
xform
=
xform
;
}
public
void
preConcatenateTransform
(
AffineTransform
pre
)
{
xform
.
preConcatenate
(
pre
);
}
/** @deprecated Sun can't spell concatenate */
public
void
preConcetenateTransform
(
AffineTransform
pre
)
{
preConcetenateTransform
(
pre
);
}
public
void
concatenateTransform
(
AffineTransform
post
)
{
xform
.
concatenate
(
post
);
}
/** @deprecated Sun can't spell concatenate */
public
void
concetenateTransform
(
AffineTransform
post
)
{
concatenateTransform
(
post
);
}
public
AffineTransform
getTransform
()
{
return
xform
;
}
public
void
setAreaOfInterest
(
Shape
aoi
)
{
this
.
aoi
=
aoi
;
}
public
Shape
getAreaOfInterest
()
{
return
aoi
;
}
public
Object
clone
()
{
try
{
RenderContext
copy
=
(
RenderContext
)
super
.
clone
();
if
(
xform
!=
null
)
copy
.
xform
=
(
AffineTransform
)
xform
.
clone
();
if
(
hints
!=
null
)
copy
.
hints
=
(
RenderingHints
)
hints
.
clone
();
return
copy
;
}
catch
(
CloneNotSupportedException
e
)
{
throw
(
Error
)
new
InternalError
().
initCause
(
e
);
// impossible
}
}
}
// class RenderContext
libjava/java/awt/image/renderable/RenderableImage.java
0 → 100644
View file @
8f5c92a0
/* RenderableImage.java --
Copyright (C) 2002 Free Software Foundation, Inc.
This file is part of GNU Classpath.
GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Classpath 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
General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA.
Linking this library statically or dynamically with other modules is
making a combined work based on this library. Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.
As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent
modules, and to copy and distribute the resulting executable under
terms of your choice, provided that you also meet, for each linked
independent module, the terms and conditions of the license of that
module. An independent module is a module which is not derived from
or based on this library. If you modify this library, you may extend
this exception to your version of the library, but you are not
obligated to do so. If you do not wish to do so, delete this
exception statement from your version. */
package
java
.
awt
.
image
.
renderable
;
import
java.awt.RenderingHints
;
import
java.awt.image.RenderedImage
;
import
java.util.Vector
;
public
interface
RenderableImage
{
String
HINTS_OBSERVED
=
"HINTS_OBSERVED"
;
Vector
getSources
();
Object
getProperty
(
String
name
);
String
[]
getPropertyNames
();
boolean
isDynamic
();
float
getWidth
();
float
getHeight
();
float
getMinX
();
float
getMinY
();
RenderedImage
createScaledRendering
(
int
w
,
int
h
,
RenderingHints
hints
);
RenderedImage
createDefaultRendering
();
RenderedImage
createRendering
(
RenderContext
context
);
}
// interface RenderableImage
libjava/java/awt/image/renderable/RenderableImageOp.java
0 → 100644
View file @
8f5c92a0
/* RenderableImageOp.java --
Copyright (C) 2002 Free Software Foundation, Inc.
This file is part of GNU Classpath.
GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Classpath 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
General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA.
Linking this library statically or dynamically with other modules is
making a combined work based on this library. Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.
As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent
modules, and to copy and distribute the resulting executable under
terms of your choice, provided that you also meet, for each linked
independent module, the terms and conditions of the license of that
module. An independent module is a module which is not derived from
or based on this library. If you modify this library, you may extend
this exception to your version of the library, but you are not
obligated to do so. If you do not wish to do so, delete this
exception statement from your version. */
package
java
.
awt
.
image
.
renderable
;
import
java.awt.RenderingHints
;
import
java.awt.geom.AffineTransform
;
import
java.awt.image.RenderedImage
;
import
java.util.Vector
;
public
class
RenderableImageOp
implements
RenderableImage
{
private
final
ContextualRenderedImageFactory
crif
;
private
ParameterBlock
block
;
public
RenderableImageOp
(
ContextualRenderedImageFactory
crif
,
ParameterBlock
block
)
{
this
.
crif
=
crif
;
this
.
block
=
(
ParameterBlock
)
block
.
clone
();
}
public
Vector
getSources
()
{
if
(
block
.
sources
==
null
)
return
null
;
int
size
=
block
.
sources
.
size
();
Vector
v
=
new
Vector
();
for
(
int
i
=
0
;
i
<
size
;
i
++)
{
Object
o
=
block
.
sources
.
get
(
i
);
if
(
o
instanceof
RenderableImage
)
v
.
add
(
o
);
}
return
v
;
}
public
Object
getProperty
(
String
name
)
{
return
crif
.
getProperty
(
block
,
name
);
}
public
String
[]
getPropertyNames
()
{
return
crif
.
getPropertyNames
();
}
public
boolean
isDynamic
()
{
return
crif
.
isDynamic
();
}
public
float
getWidth
()
{
return
(
float
)
crif
.
getBounds2D
(
block
).
getWidth
();
}
public
float
getHeight
()
{
return
(
float
)
crif
.
getBounds2D
(
block
).
getHeight
();
}
public
float
getMinX
()
{
return
(
float
)
crif
.
getBounds2D
(
block
).
getX
();
}
public
float
getMinY
()
{
return
(
float
)
crif
.
getBounds2D
(
block
).
getY
();
}
public
ParameterBlock
setParameterBlock
(
ParameterBlock
block
)
{
ParameterBlock
result
=
this
.
block
;
this
.
block
=
(
ParameterBlock
)
block
.
clone
();
return
result
;
}
public
ParameterBlock
getParameterBlock
()
{
return
block
;
}
public
RenderedImage
createScaledRendering
(
int
w
,
int
h
,
RenderingHints
hints
)
{
if
(
w
==
0
)
if
(
h
==
0
)
throw
new
IllegalArgumentException
();
else
w
=
Math
.
round
(
h
*
getWidth
()
/
getHeight
());
if
(
h
==
0
)
h
=
Math
.
round
(
w
*
getHeight
()
/
getWidth
());
AffineTransform
xform
=
AffineTransform
.
getScaleInstance
(
w
*
getWidth
(),
h
*
getHeight
());
return
createRendering
(
new
RenderContext
(
xform
,
hints
));
}
public
RenderedImage
createDefaultRendering
()
{
return
createRendering
(
new
RenderContext
(
new
AffineTransform
()));
}
public
RenderedImage
createRendering
(
RenderContext
context
)
{
ParameterBlock
copy
=
(
ParameterBlock
)
block
.
clone
();
int
i
=
block
.
sources
.
size
();
while
(--
i
>=
0
)
{
Object
o
=
block
.
sources
.
get
(
i
);
if
(
o
instanceof
RenderableImage
)
{
RenderableImage
ri
=
(
RenderableImage
)
o
;
RenderContext
rc
=
crif
.
mapRenderContext
(
i
,
context
,
block
,
ri
);
copy
.
sources
.
set
(
i
,
ri
.
createRendering
(
rc
));
}
}
// Now copy.sources should be only RenderedImages.
return
crif
.
create
(
context
,
copy
);
}
}
// class RenderableImageOp
libjava/java/awt/image/renderable/RenderableImageProducer.java
0 → 100644
View file @
8f5c92a0
/* RenderableImageProducer.java --
Copyright (C) 2002 Free Software Foundation, Inc.
This file is part of GNU Classpath.
GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Classpath 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
General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA.
Linking this library statically or dynamically with other modules is
making a combined work based on this library. Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.
As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent
modules, and to copy and distribute the resulting executable under
terms of your choice, provided that you also meet, for each linked
independent module, the terms and conditions of the license of that
module. An independent module is a module which is not derived from
or based on this library. If you modify this library, you may extend
this exception to your version of the library, but you are not
obligated to do so. If you do not wish to do so, delete this
exception statement from your version. */
package
java
.
awt
.
image
.
renderable
;
import
java.awt.image.ImageConsumer
;
import
java.awt.image.ImageProducer
;
public
class
RenderableImageProducer
implements
ImageProducer
,
Runnable
{
public
RenderableImageProducer
(
RenderableImage
image
,
RenderContext
context
)
{
throw
new
Error
(
"not implemented"
);
}
public
void
setRenderContext
(
RenderContext
context
)
{
}
public
void
addConsumer
(
ImageConsumer
consumer
)
{
}
public
boolean
isConsumer
(
ImageConsumer
consumer
)
{
return
false
;
}
public
void
removeConsumer
(
ImageConsumer
consumer
)
{
}
public
void
startProduction
(
ImageConsumer
consumer
)
{
}
public
void
requestTopDownLeftRightResend
(
ImageConsumer
consumer
)
{
}
public
void
run
()
{
}
}
// class RenderableImageProducer
libjava/java/awt/image/renderable/RenderedImageFactory.java
0 → 100644
View file @
8f5c92a0
/* RenderedImageFactory.java --
Copyright (C) 2002 Free Software Foundation, Inc.
This file is part of GNU Classpath.
GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Classpath 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
General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA.
Linking this library statically or dynamically with other modules is
making a combined work based on this library. Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.
As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent
modules, and to copy and distribute the resulting executable under
terms of your choice, provided that you also meet, for each linked
independent module, the terms and conditions of the license of that
module. An independent module is a module which is not derived from
or based on this library. If you modify this library, you may extend
this exception to your version of the library, but you are not
obligated to do so. If you do not wish to do so, delete this
exception statement from your version. */
package
java
.
awt
.
image
.
renderable
;
import
java.awt.RenderingHints
;
import
java.awt.image.RenderedImage
;
public
interface
RenderedImageFactory
{
RenderedImage
create
(
ParameterBlock
block
,
RenderingHints
hints
);
}
// interface RenderedImageFactory
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment