Class CanvasManager
public final class CanvasManager
extends java.lang.Object
CanvasManager
slouží k jednoduchému kreslení
na virtuální plátno a případné následné animaci nakreslených obrázků.
Třída neposkytuje veřejný konstruktor, protože chce, aby její instance
byla jedináček, tj. aby se všechno kreslilo na jedno a to samé plátno.
Jediným způsobem, jak získat odkaz na instanci třídy
CanvasManager
,
je volaní její statické metody getInstance()
.
Třída CanvasManager
funguje jako manažer, který dohlíží
na to, aby se po změně zobrazení některého z tvarů všechny ostatní tvary
řádně překreslily, aby byly správně zachyceny všechny překryvy
a aby se při pohybu jednotlivé obrazce vzájemně neodmazávaly.
Aby vše správně fungovalo, je možno použít jeden ze dvou přístupů:
- Manažer bude obsah plátna překreslovat
v pravidelných intervalech
bez ohledu na to, jestli se na něm udála nějaká změna či ne.
- Výhodou tohoto přístupu je to, že se zobrazované objekty nemusí starat o to, aby se manažer dozvěděl, že se jejich stav změnil.
- Nevýhodou tohoto přístupu je naopak to,
že na neustálé (a často zbytečné) překreslování
manažer spotřebovává jistou část výkonu procesoru,
což může u pomalejších počítačů působit problémy.
- Manažer překresluje plátno pouze na výslovné požádání.
- Výhodou tohoto přístupu je úspora spotřebovaného výkonu počítače v období, kdy se na plátně nic neděje.
- Nevýhodou tohoto přístupu je naopak to, že kreslené objekty musí na každou změnu svého stavu upozornit manažera, aby věděl, že má plátno překreslit.
Třída CanvasManager
požívá druhou z uvedených strategií,
tj. překresluje plátno pouze na požádání.
Obrazec, který chce být zobrazován na plátně, se musí nejprve přihlásit
u instance třídy CanvasManager
, aby jej tato zařadila
mezi spravované obrazce (sada metod add…
).
Přihlásit se však mohou pouze instance tříd, které implementují
interfejs ICMPaintable
.
Nepřihlášený obrazec nemá šanci býti zobrazen, protože na plátno
se může zobrazit pouze za pomoci kreslítka, jež může získat jedině od
instance třídy CanvasManager
, ale ta je poskytuje pouze
instancím, které se přihlásily do její správy.
Obrazec, který již dále nemá byt kreslen, se muže odhlásit zavoláním
metody remove(ICMPaintable)
.Zavoláním metody
removeAll()
se ze seznamu spravovaných (a tím i z plátna)
odstraní všechny vykreslované obrazce.
Efektivitu vykreslování je možné ovlivnit voláním metody
stopPainting()
, která pozastaví překreslování plátna po nahlášených
změnách. Její volání je výhodné např. v situaci, kdy je třeba vykreslit
obrazec složený z řady menších obrazců a bylo by nevhodné překreslovat
plátno po vykreslení každého z nich.
Do původního stavu převedeme plátno voláním metody returnPainting()
,
která vrátí vykreslování do stavu před posledním voláním metody
stopPainting()
. Nemůže se tedy stát, že by se při zavolání metody
stopPainting()
v situaci, kdy je již vykreslování pozastaveno,
začalo po následném zavolání returnPainting()
hned vykreslovat.
Po dvou voláních returnPainting()
se začne vykreslovat až po
dvou zavoláních returnPainting()
.
Proto plátno pouze žádáme, aby se vrátilo do toho kreslícího stavu,
ve kterém bylo v okamžiku, kdy jsme je naposledy žádali o to,
aby se přestalo překreslovat. Nemůže se tedy stát, že by se při zavolání
metody stopPainting()
v situaci, kdy je již vykreslování
pozastaveno, začalo po následném zavolání returnPainting()
hned
vykreslovat.
Každé zavolání metody stopPainting()
musí být doplněno
odpovídajícím voláním returnPainting()
. Teprve když poslední
returnPainting()
odvolá první stopPainting()
, bude
překreslování opět obnoveno.
-
Method Summary
Modifier and Type Method Description int
add(ICMPaintable... shapes)
Není-li zadaný obrazec v seznamu malovaných, přidá jej na konec (bude se kreslit jako poslední, tj. na vrchu.boolean
addAbove(ICMPaintable presentShape, ICMPaintable addedShape)
Přidá obrazec do seznamu malovaných tak, aby byl kreslen nad zadaným obrazcem.boolean
addBehind(ICMPaintable presentShape, ICMPaintable addedShape)
Přidá obrazec do seznamu malovaných tak, aby byl kreslen pod zadaným obrazcem.void
addKeyboardListener(java.awt.event.KeyListener listener)
Přihlásí posluchače událostí klávesnice.void
addMouseListener(java.awt.event.MouseListener listener)
Přihlásí posluchače událostí myši.boolean
addToBack(ICMPaintable addedShape)
Přidá obrazec do seznamu malovaných tak, aby byl kreslen pod zadaným obrazcem.boolean
addToFront(ICMPaintable addedShape)
Přidá obrazec do seznamu malovaných tak, aby byl kreslen nad všemi obrazci.int
fieldIndexOf(int pixel)
Převede bodovou souřadnici pixelu na souřadnici pole, v němž se nachází.NamedColor
getBackgroundColor()
Vrátí aktuální barvu pozadí.int
getColumns()
Vrátí počet sloupců plátna, tj. jeho políčkovou šířku.int
getDrawLevel()
Pomocná metoda pro účely ladění aby bylo možno zkontrolovat, ze na konci metody má semafor stejnou hodnotu, jako měl na počátku.NamedColor
getGridColor()
Vrátí barvu čar mřížky.int
getHeight()
Vrátí bodovou výšku plátna.int
getIndexOf(ICMPaintable shape)
Vrátí getIndexOf zadaného prvku v seznamu kreslených prvků.static CanvasManager
getInstance()
Metoda umožnující získat odkaz na instanci správce plátna a případně zviditelnit jeho aplikační okno.static CanvasManager
getInstance(boolean visible)
Metoda umožnující získat odkaz na instanci správce plátna a současně nastavit, zda má být jeho aplikační okno viditelné.int
getMaxcColumns()
Vrátí maximální možný počet sloupců plátna vzhledem k aktuálnímu velikosti kroku a obrazovky.int
getMaxRows()
Vrátí maximální možný počet řádků plátna vzhledem k aktuálnímu velikosti kroku a obrazovky.int
getMaxStep()
Vrátí maximální možnou bodovou velikost políčka vzhledem k aktuálnímu počtu sloupců a řádků a velikosti obrazovky.int
getMaxStepFor(int columns, int rows)
Vrátí maximální možnou bodovou velikost políčka vzhledem k požadovanému počtu sloupců a řádků a velikosti obrazovky.java.lang.String
getName()
Vrátí aktuální název v titulkové liště okna plátna.Picture
getPicture(int x, int y, int width, int height)
Vrátí instanci třídyPicture
zobrazující zadaný výřez AktivníhoPlátna.Position
getPosition()
Vrátí vodorovnou souřadnici aplikačního okna plátna.int
getRows()
Vrátí počet řádků plátna, tj. jeho políčkovou výšku.Size
getSize()
Vrátí políčkový rozměr plátna, tj. šířku a výšku v polích.int
getStep()
Vrátí vzdálenost čar mřížky = bodovou velikost políčka.int
getWidth()
Vrátí bodovou šířku plátna.void
changeTogether(java.lang.Runnable action)
Provede zadanou akci a na dobu jejího provádění vypne překreslování.boolean
isGridVisible()
Vrátí informaci o tom, je-li zobrazována mřížka.boolean
isVisible()
Poskytuje informaci o aktuální viditelnosti okna.java.util.List<ICMPaintable>
listOfShapes()
Vrátí nemodifikovatelný seznam všech spravovaných obrázků.int
pixelIndexOf(int field)
Převede políčkovou souřadnici na bodovou souřadnici levého horního rohu daného pole.Position
positionField2Point(Position fieldPosition)
Převede políčkovou pozici na bodovou pozici levého horního rohu daného políčka.Position
positionPoint2Field(Position pointPosition)
Převede bodovou pozici na políčkovou pozici políčka, uvnitř nějž se daný bod nachází.boolean
remove(ICMPaintable shape)
Odstraní zadaný obrazec ze seznamu malovaných.void
removeAll()
Vyčisti plátno, tj. vyprázdní seznam malovaných (odstraní z něj všechny obrazce).void
removeKeyboardListener(java.awt.event.KeyListener listener)
Odhlásí posluchače klávesnice.void
removeMouseListener(java.awt.event.MouseListener listener)
Odhlásí posluchače myši.void
repaint()
Vykreslí všechny elementy.void
returnPainting()
Vrátí překreslování do stavu před posledním voláním metodystopPainting()
.void
saveAsPicture(java.io.File file)
Uloží obraz aktivního plátna do zadaného souboru.void
setBackgroundColor(NamedColor color)
Nastaví pro plátno barvu pozadí.void
setGridColor(NamedColor gridColor)
Nastaví barvu čar mřížky.void
setGridVisible(boolean visible)
V závislosti na hodnotě parametru nastaví nebo potlačí zobrazování čar mřížky.void
setGridVisible(boolean visible, boolean over)
Nastaví má-li se na plátně nastavovat mřížka a pokud ano, tak zda se čáry mřížky budou zobrazovat nad nebo pod zobrazovanými tvary.void
setName(java.lang.String name)
Nastaví název v titulkové liště okna plátna.boolean
setNotifySizeChanges(boolean notify)
Nastaví, zda se mají spravovaným tvarům hlásit změny velikosti kroku a vrátí původní nastavení.void
setPosition(int x, int y)
Nastaví pozici aplikačního okna aktivního plátna na obrazovce.void
setPosition(Position position)
Nastaví pozici aplikačního okna aktivního plátna na obrazovce.void
setSize(int columns, int rows)
Nastaví rozměr plátna zadáním jeho políčkové výsky a šířky.void
setSize(Size rowsAndColumns)
Nastaví rozměr plátna zadáním jeho políčkové výsky a šířky.void
setStep(int size)
Nastaví vzdálenost čar mřížky = bodovou velikost políčka.void
setStepAndSize(int fieldSize, int colCount, int rowCount)
Nastaví rozměr plátna zadáním bodové velikosti políčka a počtu políček ve vodorovném a svislém směru.void
setStepAndSize(int fieldSize, int colCount, int rowCount, java.lang.Object changer)
Nastaví rozměr plátna zadáním bodové velikosti políčka a počtu políček ve vodorovném a svislém směru.void
setStepToMax()
Nastaví maximální možnou velikost kroku, aby se plátno ještě vešlo na obrazovku.void
setVisible(boolean visible)
V závislosti na hodnotě svého parametru nastaví nebo potlačí viditelnost plátna na displeji.Size
sizeField2Point(Size fieldSize)
Převede políčkový rozměr na bodový.Size
sizePoint2Field(Size pointSize)
Převede bodový rozměr na políčkový.void
stopPainting()
Potlačí překreslování plátna, přesněji zvýší hladinu potlačení překreslování o jedničku.java.lang.String
toString()
Převede instanci na řetězec.
-
Method Details
-
getInstance
Metoda umožnující získat odkaz na instanci správce plátna a případně zviditelnit jeho aplikační okno. Vrací vsak pokaždé odkaz na stejnou instanci, protože instance plátna je jedináček.Pokud instance při volaní metody ještě neexistuje, metoda instanci vytvoří.
- Returns:
- Instance třídy
CanvasManager
-
getInstance
Metoda umožnující získat odkaz na instanci správce plátna a současně nastavit, zda má být jeho aplikační okno viditelné. Vrací vsak pokaždé odkaz na stejnou instanci, protože instance plátna je jedináček.Pokud instance při volaní metody ještě neexistuje, metoda instanci vytvoří.
- Parameters:
visible
- Má-li se zajistit viditelnost instance;false
aktuálně nastavenou viditelnost nemění- Returns:
- Instance třídy
CanvasManager
-
getMaxStep
public int getMaxStep()Vrátí maximální možnou bodovou velikost políčka vzhledem k aktuálnímu počtu sloupců a řádků a velikosti obrazovky.- Returns:
- Maximální možná bodová velikost políčka
-
getMaxStepFor
public int getMaxStepFor(int columns, int rows)Vrátí maximální možnou bodovou velikost políčka vzhledem k požadovanému počtu sloupců a řádků a velikosti obrazovky.- Parameters:
columns
- Požadovan počet sloupcůrows
- Požadovan počet řádků- Returns:
- Maximální možná bodová velikost políčka
-
getMaxcColumns
public int getMaxcColumns()Vrátí maximální možný počet sloupců plátna vzhledem k aktuálnímu velikosti kroku a obrazovky.- Returns:
- Maximální možný počet sloupců plátna
-
getMaxRows
public int getMaxRows()Vrátí maximální možný počet řádků plátna vzhledem k aktuálnímu velikosti kroku a obrazovky.- Returns:
- Maximální možný počet řádků plátna
-
setStepAndSize
public void setStepAndSize(int fieldSize, int colCount, int rowCount)Nastaví rozměr plátna zadáním bodové velikosti políčka a počtu políček ve vodorovném a svislém směru. Při velikosti políčka = 1 se vypíná zobrazování mřížky.- Parameters:
fieldSize
- Nová bodová velikost políčkacolCount
- Nový počet políček vodorovněrowCount
- Nový počet políček svisle
-
setStepAndSize
public void setStepAndSize(int fieldSize, int colCount, int rowCount, java.lang.Object changer)Nastaví rozměr plátna zadáním bodové velikosti políčka a počtu políček ve vodorovném a svislém směru. Při velikosti políčka = 1 se vypíná zobrazování mřížky.- Parameters:
fieldSize
- Nová bodová velikost políčkacolCount
- Nový počet políček vodorovněrowCount
- Nový počet políček svislechanger
- Objekt, který žádá o změnu rozměru. Jakmile je jednou tento objekt nastaven, nesmí již rozměr plátna měnit nikdo jiný.
-
getStep
public int getStep()Vrátí vzdálenost čar mřížky = bodovou velikost políčka.- Returns:
- Bodová velikost políčka
-
setStep
public void setStep(int size)Nastaví vzdálenost čar mřížky = bodovou velikost políčka. Při velikosti políčka = 1 se vypíná zobrazování mřížky.- Parameters:
size
- Nová bodová velikost políčka
-
setStepToMax
public void setStepToMax()Nastaví maximální možnou velikost kroku, aby se plátno ještě vešlo na obrazovku. -
getColumns
public int getColumns()Vrátí počet sloupců plátna, tj. jeho políčkovou šířku.- Returns:
- Aktuální políčková šířka plátna (počet políček vodorovně)
-
getWidth
public int getWidth()Vrátí bodovou šířku plátna.- Returns:
- Aktuální bodová šířka plátna (počet bodů vodorovně)
-
getRows
public int getRows()Vrátí počet řádků plátna, tj. jeho políčkovou výšku.- Returns:
- Aktuální políčková výška plátna (počet políček svisle)
-
getHeight
public int getHeight()Vrátí bodovou výšku plátna.- Returns:
- Aktuální bodová výška plátna (počet bodů svisle)
-
getSize
Vrátí políčkový rozměr plátna, tj. šířku a výšku v polích.- Returns:
- Aktuální políčkový rozměr plátna
-
setSize
public void setSize(int columns, int rows)Nastaví rozměr plátna zadáním jeho políčkové výsky a šířky.- Parameters:
columns
- Nový počet políček vodorovněrows
- Nový počet políček svisle
-
setSize
Nastaví rozměr plátna zadáním jeho políčkové výsky a šířky.- Parameters:
rowsAndColumns
- Zadávaný rozměr v počtu políček
-
isGridVisible
public boolean isGridVisible()Vrátí informaci o tom, je-li zobrazována mřížka.- Returns:
- Mřížka je zobrazována = true, není zobrazována = false.
-
setGridVisible
public void setGridVisible(boolean visible)V závislosti na hodnotě parametru nastaví nebo potlačí zobrazování čar mřížky.- Parameters:
visible
- Jestli mřížku zobrazovat.
-
setGridVisible
public void setGridVisible(boolean visible, boolean over)Nastaví má-li se na plátně nastavovat mřížka a pokud ano, tak zda se čáry mřížky budou zobrazovat nad nebo pod zobrazovanými tvary.- Parameters:
visible
- Jestli mřížku zobrazovat.over
-true
má-li se mřížka zobrazovat nad zobrazenými tvary,false
má-li se zobrazovat pod nimi.
-
getGridColor
Vrátí barvu čar mřížky.- Returns:
- Barva čar mřížky
-
setGridColor
Nastaví barvu čar mřížky.- Parameters:
gridColor
- Nově nastavovaná barva čar mřížky
-
isVisible
public boolean isVisible()Poskytuje informaci o aktuální viditelnosti okna.- Returns:
- Je-li okno viditelné, vrací
true
, jinak vracífalse
-
setVisible
public void setVisible(boolean visible)V závislosti na hodnotě svého parametru nastaví nebo potlačí viditelnost plátna na displeji.- Parameters:
visible
- logická hodnota požadované viditelnost (true=viditelné)
-
getBackgroundColor
Vrátí aktuální barvu pozadí.- Returns:
- Nastavená barva pozadí
-
setBackgroundColor
Nastaví pro plátno barvu pozadí.- Parameters:
color
- Nastavovaná barva pozadí
-
getDrawLevel
public int getDrawLevel()Pomocná metoda pro účely ladění aby bylo možno zkontrolovat, ze na konci metody má semafor stejnou hodnotu, jako měl na počátku.- Returns:
- Stav vnitřního semaforu:
>0 - nebude se kreslit,
=0 - kreslí se,
<0 - chyba
-
getName
public java.lang.String getName()Vrátí aktuální název v titulkové liště okna plátna.- Returns:
- Aktuální název okna
-
setName
public void setName(java.lang.String name)Nastaví název v titulkové liště okna plátna.- Parameters:
name
- Nastavovaný název
-
getPosition
Vrátí vodorovnou souřadnici aplikačního okna plátna.- Returns:
- Pozice levého horního rohu aplikačního okna plátna
-
setPosition
public void setPosition(int x, int y)Nastaví pozici aplikačního okna aktivního plátna na obrazovce.- Parameters:
x
- Vodorovná souřadnice aplikačního okna plátnay
- Svislá souřadnice aplikačního okna plátna
-
setPosition
Nastaví pozici aplikačního okna aktivního plátna na obrazovce.- Parameters:
position
- Požadovaná pozice aplikačního okna plátna na obrazovce
-
getPicture
Vrátí instanci třídyPicture
zobrazující zadaný výřez AktivníhoPlátna.- Parameters:
x
- Vodorovná pozice požadovaného výřezuy
- Svislá pozice požadovaného výřezuwidth
- Šířka požadovaného výřezu v bodechheight
- Výška požadovaného výřezu v bodech- Returns:
- Instance třídy
Image
zobrazující zadaný výřez
-
toString
public java.lang.String toString()Převede instanci na řetězec. Používá se především při ladění.- Overrides:
toString
in classjava.lang.Object
- Returns:
- Řetězcová reprezentace dané instance.
-
repaint
public void repaint()Vykreslí všechny elementy. -
stopPainting
public void stopPainting()Potlačí překreslování plátna, přesněji zvýší hladinu potlačení překreslování o jedničku. Návratu do stavu před voláním této metody se dosáhne zavoláním metodyreturnPainting()
.Metody
stopPainting()
areturnPainting()
se tak chovají obdobně jako závorky, mezi nimiž je vykreslování potlačeno. -
returnPainting
public void returnPainting()Vrátí překreslování do stavu před posledním voláním metodystopPainting()
. Předcházelo-li proto více volání metodystopPainting()
, začne se překreslovat až po odpovídajím počtu zavolání metodyreturnPainting()
.- Throws:
java.lang.IllegalStateException
- Je-li metoda volána aniž by předcházelo odpovídající volánístopPainting()
.
-
remove
Odstraní zadaný obrazec ze seznamu malovaných. Byl-li obrazec v seznamu, překreslí plátno.- Parameters:
shape
- Odstraňovaný obrazec- Returns:
- Byl-li obrazec v seznamu, vrátí
true
, nebylo-li do odstraňovat, vrátífalse
-
removeAll
public void removeAll()Vyčisti plátno, tj. vyprázdní seznam malovaných (odstraní z něj všechny obrazce). -
add
Není-li zadaný obrazec v seznamu malovaných, přidá jej na konec (bude se kreslit jako poslední, tj. na vrchu. Byl-li obrazec opravdu přidán, překreslí plátno. Objekty budou vždy kresleny v getIndexOf, v němž byly přidány do správy, tj. v seznamu parametrů zleva doprava a dříve zaregistrované objekty před objekty zaregistrovanými později.- Parameters:
shapes
- Přidávané obrazce- Returns:
- Počet skutečně přidaných obrazců
-
addAbove
Přidá obrazec do seznamu malovaných tak, aby byl kreslen nad zadaným obrazcem. Pokud již v seznamu byl, jenom jej přesune do zadané pozice.- Parameters:
presentShape
- Obrazec, který má byt při kreslení pod přidávaným obrazcemaddedShape
- Přidávaný obrazec- Returns:
true
v případě, když byl obrazec opravdu přidán,false
v případě, když již mezi zobrazovanými byl a pouze se přesunul do jiné urovné
-
addBehind
Přidá obrazec do seznamu malovaných tak, aby byl kreslen pod zadaným obrazcem. Pokud již v seznamu byl, jenom jej přesune do zadané pozice.- Parameters:
presentShape
- Obrazec, který má byt při kreslení nad přidávaným obrazcemaddedShape
- Přidávaný obrazec- Returns:
true
v případě, když byl obrazec opravdu přidán,false
v případě, když již mezi zobrazovanými byl a pouze se přesunul do jiné urovné
-
addToFront
Přidá obrazec do seznamu malovaných tak, aby byl kreslen nad všemi obrazci. Pokud již v seznamu byl, jenom jej přesune do požadované pozice.- Parameters:
addedShape
- Přidávaný obrazec- Returns:
true
v případě, když byl obrazec opravdu přidán,false
v případě, když již mezi zobrazovanými byl a pouze se přesunul do jiné urovné
-
addToBack
Přidá obrazec do seznamu malovaných tak, aby byl kreslen pod zadaným obrazcem. Pokud již v seznamu byl, jenom jej přesune do zadané pozice.- Parameters:
addedShape
- Přidávaný obrazec- Returns:
true
v případě, když byl obrazec opravdu přidán,false
v případě, když již mezi zobrazovanými byl a pouze se přesunul do jiné urovné
-
changeTogether
public void changeTogether(java.lang.Runnable action)Provede zadanou akci a na dobu jejího provádění vypne překreslování. Metoda se používá v situaci, kdy se mění složitější objekt a potřebujeme, aby se zobrazil až v okamžiku, kdy budou všechny měnící se části již změněné.- Parameters:
action
- Akce provádějící požadované změny
-
getIndexOf
Vrátí getIndexOf zadaného prvku v seznamu kreslených prvků. Prvky se přitom kreslí v rostoucím getIndexOf, takže obrazec s větším poradím je kreslen nad obrazcem s menším poradím. Není-li zadaný obrazec mezi kreslenými, vrátí -1.- Parameters:
shape
- Objekt, na jehož kreslicí pořadí se dotazujeme- Returns:
- Pořadí obrazce; prvý kresleny obrazec má pořadí 0. Není-li zadaný obrazec mezi kreslenými, vrátí -1.
-
listOfShapes
Vrátí nemodifikovatelný seznam všech spravovaných obrázků.- Returns:
- Požadovaný seznam
-
fieldIndexOf
public int fieldIndexOf(int pixel)Převede bodovou souřadnici pixelu na souřadnici pole, v němž se nachází. Pracuje i se zápornými souřadnicemi.- Parameters:
pixel
- Převáděná bodová souřadnice- Returns:
- Políčková souřadnice pole s bodem o zadané bodové souřadnici
-
pixelIndexOf
public int pixelIndexOf(int field)Převede políčkovou souřadnici na bodovou souřadnici levého horního rohu daného pole. Pracuje i se zápornými souřadnicemi.- Parameters:
field
- Převáděná políčková souřadnice- Returns:
- Bodová souřadnice levého horního rohu daného pole
-
positionField2Point
Převede políčkovou pozici na bodovou pozici levého horního rohu daného políčka.- Parameters:
fieldPosition
- Políčková pozice- Returns:
- Odpovídající bodová pozice
-
positionPoint2Field
Převede bodovou pozici na políčkovou pozici políčka, uvnitř nějž se daný bod nachází.- Parameters:
pointPosition
- Bodová pozice- Returns:
- Odpovídající políčková pozice
-
sizeField2Point
Převede políčkový rozměr na bodový.- Parameters:
fieldSize
- Políčková pozice- Returns:
- Odpovídající bodová pozice
-
sizePoint2Field
Převede bodový rozměr na políčkový. Políčkový rozměr je přitom definován jako největší rozměr, při němž se výsledná políčkově definovaná oblast vejde do oblasti zadaného bodového rozměru.- Parameters:
pointSize
- Bodový rozměr- Returns:
- Odpovídající políčkový rozměr
-
setNotifySizeChanges
public boolean setNotifySizeChanges(boolean notify)Nastaví, zda se mají spravovaným tvarům hlásit změny velikosti kroku a vrátí původní nastavení.- Parameters:
notify
- Požadované nastavení (true=hlásit, false=nehlasit).- Returns:
- Původní nastavení
-
addKeyboardListener
public void addKeyboardListener(java.awt.event.KeyListener listener)Přihlásí posluchače událostí klávesnice.- Parameters:
listener
- Přihlašovaný posluchač
-
removeKeyboardListener
public void removeKeyboardListener(java.awt.event.KeyListener listener)Odhlásí posluchače klávesnice.- Parameters:
listener
- Odhlašovaný posluchač
-
addMouseListener
public void addMouseListener(java.awt.event.MouseListener listener)Přihlásí posluchače událostí myši.- Parameters:
listener
- Přihlašovaný posluchač
-
removeMouseListener
public void removeMouseListener(java.awt.event.MouseListener listener)Odhlásí posluchače myši.- Parameters:
listener
- Odhlašovaný posluchač
-
saveAsPicture
public void saveAsPicture(java.io.File file)Uloží obraz aktivního plátna do zadaného souboru.- Parameters:
file
- Soubor, do nějž se má obraz plátna uložit
-