Třída: cItem

Předek: java.awt.Panel

Třída cItem implementuje jádro všech vizuálních objektů Freelance. Instance této třídy se nikdy explicitně nevytvářejí, neboť se vždy pracuje s jejími potomky. Tato třída implementuje například metody pro změnu velikosti, vzhledu, fokusu, virtuální metody volané při uživatelských akcích a mnohé další. Vytváří tak konzistentní programátorský i uživatelský interface používaný v následnících.

 

Členské proměnné třídy ( publikovaná část )

 

protected static cApplet applet;

Odkaz na unikátní cApplet objekt aplikace

private int drawFlags;

Vlastnosti vykreslování objektu, následují možné hodnoty:

public final static int DF_BORDER = 16;

public final static int DF_ROUNDRECT = 1;

public final static int DF_3DRECT = 2 | DF_BORDER;

public final static int DF_3DRECTDOWN = 4;

public final static int DF_BACKGROUND = 8;

public final static int DF_DARKBORDER = 32;

 

protected int itemFlags;

Typ objektu, následují možné hodnoty:

public final static int IF_CONTROL = 1;

Ovládací prvek

public final static int IF_FORM = 2;

Formulář

public final static int IF_CUSTOM = 4;

Lightweight ovládací prvek, např. cBrowse, cImage

 

Konstruktory

public cItem( Panel parent, int x, int y, int w, int h )

Konstruktor vytvoří nový objekt s danými atributy a vloží ho do seznamu dětí zadaného rodiče. Poté inicializuje veškerá rozhraní pro zpracovávání uživatelských vstupů.

 

Členské metody třídy ( publikovaná část )

public void setPosTo( int x, int y )

metoda přesune objekt na zadanou pozici v rámci svého rodiče.

public void setSizeTo( int x, int y )

metoda změní velikost objektu.

public cSql sql()

metoda vrací odkaz na společný cSql objekt.

public boolean haveFocus()

metoda vrací true, má-li objekt fokus.

public boolean setFocus()

metoda nastaví fokus na tento objekt. Pokud již fokus měl, vrací false.

public int getIndex()

metoda vrací aktuální index objektu v seznamu dětí jeho rodiče.

public boolean allChildren( cAction action )

metoda provádí iteraci přes všechny děti a další potomky objektu, dokud je neprojde všechny anebo některé volání action.onAction( cItem item ) nevrátí false. Vrací true, pokud prošla všechny potomky s pozitivním výsledkem akce.

public boolean myChildren( cAction action )

metoda provádí iteraci přes všechny děti objektu, dokud je neprojde všechny anebo některé volání action.onAction( cItem item ) nevrátí false. Vrací true, pokud prošla všechny děti s pozitivním výsledkem akce.

public void setDrawFlags( int flags, boolean bOn )

metoda nastaví/vypne zadané příznaky vykreslování

public void changeDrawFlags( int flagsOn, int flagsOff )

metoda nastaví/vypne zadané příznaky vykreslování

public int getDrawFlags ()

metoda vrací aktuální příznaky vykreslování.

public void waitCursor()

metoda nastaví kurzor typu hodiny

public void defCursor()

metoda nastaví standardní kurzor

 

Virtuální metody

public int onDestroy ()

metoda je frameworkem volána při rušení objektu.

public void onPaint( Graphics g )

metoda je frameworkem volána při kreslení objektu.

public void onFocus()

metoda je frameworkem volána při nastavení fokusu na tento objekt.

public void onKillFocus()

metoda je frameworkem volána při odebírání fokusu tomuto objektu.

public void onResizeForm( int deltaw, int deltah )

metoda je frameworkem volána při změně velikosti formuláře ( je-li objekt cControl ), do něhož patří.

public void onSetFont( Font f )

metoda je frameworkem volána při změně fontu pracovní plochy. Toto volání obdrží všechny objekty, které souvisejí s touto pracovní plochou.

 

Virtuální metody - obsluha myši

public boolean onMouseClicked( MouseEvent e )

metoda je frameworkem volána po klepnutí tlačítka myši na tomto objektu. Metoda musí vrátit true, pokud zprávu obsluhuje.

public boolean onMouseDblClicked( MouseEvent e )

metoda je frameworkem volána po dvojitém klepnutí tlačítka myši na tomto objektu. Metoda musí vrátit true, pokud zprávu obsluhuje.

public boolean onMousePressed( MouseEvent e )

metoda je frameworkem volána po stisku tlačítka myši na tomto objektu. Metoda musí vrátit true, pokud zprávu obsluhuje.

public boolean onMouseReleased( MouseEvent e )

metoda je frameworkem volána po uvolnění tlačítka myši na tomto objektu. Metoda musí vrátit true, pokud zprávu obsluhuje.

public boolean onMouseEntered( MouseEvent e )

metoda je frameworkem volána po vstupu kurzoru myši do hranic objektu. Metoda musí vrátit true, pokud zprávu obsluhuje.

public boolean onMouseExited( MouseEvent e )

metoda je frameworkem volána po výstupu kurzoru myši mimo hranice objektu. Metoda musí vrátit true, pokud zprávu obsluhuje.

 

public boolean onMouseDragged( MouseEvent e )

metoda je frameworkem volána při tažení myší nad objektem se současným stiskem levého tlačítka. Metoda musí vrátit true, pokud zprávu obsluhuje.

public boolean onMouseDragged( MouseEvent e )

metoda je frameworkem volána při pohybu myši nad objektem. Metoda musí vrátit true, pokud zprávu obsluhuje.

 

Virtuální metody - obsluha klávesnice

public boolean onKeyPressed( KeyEvent e )

metoda je frameworkem volána po stisku klávesy. Metoda musí vrátit true, pokud zprávu obsluhuje.

public boolean onKeyPressed( KeyEvent e )

metoda je frameworkem volána po uvolnění klávesy. Metoda musí vrátit true, pokud zprávu obsluhuje.

public boolean onKeyTyped( KeyEvent e )

metoda je frameworkem volána po stisku a opětovném uvolnění klávesy. Metoda musí vrátit true, pokud zprávu obsluhuje.