Package codedraw
Class BorderlessWindow
java.lang.Object
codedraw.Image
codedraw.BorderlessWindow
- All Implemented Interfaces:
AutoCloseable
The BorderlessWindow class lets you create a borderless instance of a CodeDraw window and draw on it.
It works very similarly to the
CodeDraw
class.
The borderless window can be closed by pressing Alt + F4;-
Constructor Summary
ConstructorDescriptionCreates a borderless window of size 600x600.BorderlessWindow
(int width, int height) Creates a borderless window of the specified size. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
This method is called each time right after a shape is drawn.void
close()
Closes the window and disposes all resources associated with this instance.void
close
(boolean terminateProcess) Closes the window and disposes all resources associated with this instance.Defines the style of the cursor while hovering over the CodeDraw canvas.Gets the EventScanner of this CodeDraw window.getTitle()
The title is the description displayed in many places on your operating system.int
Gets the distance in pixel from the top left corner of the default screen to the top left corner of the borderless window.int
Gets the distance in pixel from the top left corner of the default screen to the top left corner of the borderless window.boolean
Always on top defines whether this window is placed on top of all other windows.boolean
isClosed()
Checks whether this CodeDraw window is already closed.boolean
When InstantDraw is enabled CodeDraw will immediately draw all shapes to the canvas without callingshow()
.static void
Runs theAnimation
interface using a borderless window.static void
Runs theAnimation
interface using a borderless window.static void
Runs theAnimation
interface using a borderless window.static void
Runs theAnimation
interface using a borderless window.void
setCursorStyle
(CursorStyle cursorStyle) Defines the style of the cursor while hovering over the CodeDraw canvas.void
setInstantDraw
(boolean isInstantDraw) When InstantDraw is enabled CodeDraw will immediately draw all shapes to the canvas without callingshow()
.void
setIsAlwaysOnTop
(boolean isAlwaysOnTop) When set to true this CodeDraw window will always be displayed on top of other windows.void
The title is the description displayed in many places on your operating system.void
setWindowPositionX
(int x) Sets the distance in pixel from the top left corner of the default screen to the top left corner of the borderless window.void
setWindowPositionY
(int y) Sets the distance in pixel from the top left corner of the default screen to the top left corner of the borderless window.void
show()
Displays all the shapes and images that were drawn onto the canvas.void
show
(long waitMilliseconds) Displays all the shapes and images that were drawn onto the canvas and waits for the given amount of milliseconds.static BorderlessWindow
Shows the specified image in a borderless window fitting the size of the image.toString()
Methods inherited from class codedraw.Image
beforeDrawing, clear, clear, copyTo, crop, drawArc, drawArc, drawBezier, drawCircle, drawCurve, drawEllipse, drawImage, drawImage, drawImage, drawLine, drawOver, drawPathStartingAt, drawPie, drawPie, drawPoint, drawPolygon, drawRectangle, drawSquare, drawText, drawTriangle, fillCircle, fillEllipse, fillPathStartingAt, fillPie, fillPie, fillPolygon, fillRectangle, fillSquare, fillTriangle, fromBase64String, fromDPIAwareSize, fromFile, fromResource, fromUrl, getColor, getCorner, getCornerRadius, getHeight, getLineWidth, getPixel, getTextFormat, getTransformation, getWidth, isAntiAliased, mirrorHorizontally, mirrorVertically, resetProperties, rotateClockwise, rotateCounterClockwise, save, scale, scale, setAntiAliased, setColor, setCorner, setCornerRadius, setDrawOver, setLineWidth, setPixel, setTextFormat, setTransformation, setTransformationToIdentity, toBufferedImage, toBufferedImage
-
Constructor Details
-
BorderlessWindow
public BorderlessWindow()Creates a borderless window of size 600x600. The borderless window can be closed by pressing Alt + F4; -
BorderlessWindow
public BorderlessWindow(int width, int height) Creates a borderless window of the specified size. The borderless window can be closed by pressing Alt + F4;- Parameters:
width
- must be at least 1 pixelheight
- must be at least 1 pixel
-
-
Method Details
-
show
Shows the specified image in a borderless window fitting the size of the image.- Parameters:
image
- any image that should be displayed.- Returns:
- the BorderlessWindow object that displays the image.
-
run
Runs theAnimation
interface using a borderless window. This function returns when the borderless window is closed by the user. The borderless animation will appear with a size of 600 by 600 pixel running at 60 frames per second and 60 simulation per second.- Parameters:
animation
- any class implementing the animation interface.
-
run
Runs theAnimation
interface using a borderless window. This function returns when the borderless window is closed by the user. The borderless animation will run at 60 frames per second and 60 simulation per second.- Parameters:
animation
- any class implementing the animation interface.width
- the width of the borderless window.height
- the height of the borderless window.
-
run
Runs theAnimation
interface using a borderless window. This function returns when the borderless window is closed by the user. The borderless animation will run at 60 simulation per second.- Parameters:
animation
- any class implementing the animation interface.width
- the width of the borderless window.height
- the height of the borderless window.framesPerSecond
- the rate at which theAnimation.draw(Image)
method should be called.
-
run
public static void run(Animation animation, int width, int height, int framesPerSecond, int simulationsPerSecond) Runs theAnimation
interface using a borderless window. This function returns when the borderless window is closed by the user.- Parameters:
animation
- any class implementing the animation interface.width
- the width of the borderless window.height
- the height of the borderless window.framesPerSecond
- the rate at which theAnimation.draw(Image)
method should be called.simulationsPerSecond
- the rate at which theAnimation.simulate()
method should be called.
-
getEventScanner
Gets the EventScanner of this CodeDraw window. See theEventScanner
for more details on how to use it.- Returns:
- an EventScanner.
-
isInstantDraw
public boolean isInstantDraw()When InstantDraw is enabled CodeDraw will immediately draw all shapes to the canvas without callingshow()
. When InstantDraw is disabled CodeDraw will only draw shapes to the window onceshow()
is called. InstantDraw is disabled per default.- Returns:
- whether InstantDraw is enabled.
-
setInstantDraw
public void setInstantDraw(boolean isInstantDraw) When InstantDraw is enabled CodeDraw will immediately draw all shapes to the canvas without callingshow()
. When InstantDraw is disabled CodeDraw will only draw shapes to the window onceshow()
is called. InstantDraw is disabled per default.- Parameters:
isInstantDraw
- defines whether InstantDraw is enabled.
-
isAlwaysOnTop
public boolean isAlwaysOnTop()Always on top defines whether this window is placed on top of all other windows.- Returns:
- whether the CodeDraw window is always displayed on top of other windows.
-
setIsAlwaysOnTop
public void setIsAlwaysOnTop(boolean isAlwaysOnTop) When set to true this CodeDraw window will always be displayed on top of other windows. When set to false this CodeDraw window will disappear behind other windows when CodeDraw loses focus.- Parameters:
isAlwaysOnTop
- defines whether this CodeDraw window is displayed on top of other windows.
-
getWindowPositionX
public int getWindowPositionX()Gets the distance in pixel from the top left corner of the default screen to the top left corner of the borderless window. The window position is the same as the canvas position on a borderless window.- Returns:
- The distance in pixel from the left side of the default screen to the left of the CodeDraw window.
-
getWindowPositionY
public int getWindowPositionY()Gets the distance in pixel from the top left corner of the default screen to the top left corner of the borderless window. The window position is the same as the canvas position on a borderless window.- Returns:
- The distance in pixel from the top side of the default screen to the top of the CodeDraw window.
-
setWindowPositionX
public void setWindowPositionX(int x) Sets the distance in pixel from the top left corner of the default screen to the top left corner of the borderless window. The window position is the same as the canvas position on a borderless window.- Parameters:
x
- The distance in pixel from the left side of the default screen to the left of the CodeDraw window.
-
setWindowPositionY
public void setWindowPositionY(int y) Sets the distance in pixel from the top left corner of the default screen to the top left corner of the borderless window. The window position is the same as the canvas position on a borderless window.- Parameters:
y
- The distance in pixel from the top side of the default screen to the top of the CodeDraw window.
-
getTitle
The title is the description displayed in many places on your operating system.- Returns:
- the text of the title.
-
setTitle
The title is the description displayed in many places on your operating system.- Parameters:
title
- Sets the text of the title.
-
getCursorStyle
Defines the style of the cursor while hovering over the CodeDraw canvas. See alsoCursorStyle
.- Returns:
- the cursor style of this CodeDraw canvas.
-
setCursorStyle
Defines the style of the cursor while hovering over the CodeDraw canvas. See alsoCursorStyle
.- Parameters:
cursorStyle
- Sets the cursor style of this CodeDraw canvas.
-
show
public void show()Displays all the shapes and images that were drawn onto the canvas. Since showing the drawn elements in the CodeDraw window is slow, calling this method frequently will slow down your program. -
show
public void show(long waitMilliseconds) Displays all the shapes and images that were drawn onto the canvas and waits for the given amount of milliseconds. Since showing the drawn elements in the CodeDraw window is slow, calling this method frequently will slow down your program. This method might take longer to return from show if you specify only a small amount of milliseconds. The amount of milliseconds this method must be called with to display a certain amount of frames per second:
30 fps ~ 33ms
60 fps ~ 16ms
120 fps ~ 8ms- Parameters:
waitMilliseconds
- Minimum time it takes this function to return.
-
isClosed
public boolean isClosed()Checks whether this CodeDraw window is already closed. The window can close if the user closes the window or when theclose()
method is called.- Returns:
- whether this CodeDraw window is closed.
-
close
public void close()Closes the window and disposes all resources associated with this instance. Any methods associated with the graphical user interface can no longer be accessed afterwards.- Specified by:
close
in interfaceAutoCloseable
-
close
public void close(boolean terminateProcess) Closes the window and disposes all resources associated with this instance. Any methods associated with the graphical user interface can no longer be accessed afterwards.- Parameters:
terminateProcess
- When true terminates the process when all CodeDraw instances are closed. When false lets the process continue even though all CodeDraw instances have been closed.
-
toString
-
afterDrawing
protected void afterDrawing()Description copied from class:Image
This method is called each time right after a shape is drawn. You can override this method to implement custom behavior when drawing in the inheriting class.- Overrides:
afterDrawing
in classImage
-