Přehled tříd AppKitu 7: dokončení - MujMAC.cz - Apple, Mac OS X, Apple iPod

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:

Soutěž

Sponzorem soutěže je:

IDIF

 

Odkud pochází fotografka Anne Erhard?

V dnešní soutěži hrajeme o:

Seriály

Více seriálů



Software

Přehled tříd AppKitu 7: dokončení

15. prosince 2005, 00.00 | Zbývá ještě několik tříd, o nichž se ve stručnosti zmíníme dnes: v podstatě jde o třídy pomocné nebo jen zřídkakdy užívané.

Jak jsme si řekli už minule, o všech významných a často používaných třídách objektové knihovny AppKit už jsme si povídali – právě minule jsme se zabývali poslední samostatnou významnou skupinou tříd, totiž třídami, na nichž je založen dokumentový systém Cocoa.

Zbývá ovšem ještě několik tříd, o nichž se ve stručnosti zmíníme dnes: v podstatě jde o třídy pomocné nebo jen zřídkakdy užívané. Podívejme se naposledy na druhou část přehledného obrázku, na němž vidíme třídy všechny:

Jako vždy, i nyní si samozřejmě ti, kdo mají v počítači instalováno vývojové prostředí Xcode a programátorskou dokumentaci, mohou najít obrázek v plném rozlišení v rámci úvodního článku popisu AppKitu.

Tisk

V prostředí Cocoa celkem vzato není zapotřebí se tiskem zvlášť zabývat: jak je v prostředí, podporujícím princip WYSIWYG (What You See Is What You Get [on printer]) samozřejmé, pro zobrazení i pro tisk se užívá týchž kreslicích rutin, nadto většina grafických tříd Cocoa dokáže "sama sebe" vytisknout. Aplikační knihovny navíc zcela automaticky zajistí přístup ke standardním tiskovým panelům.

V nejjednodušších případech tedy dostaneme tisk "zadarmo" a bez jakéhokoli programování. Čím však aplikace nabízí bohatší a složitější generování tiskových sestav, tím spíše se musíme přece jen o některé věci postarat: formátování pro uživatelem zvolenou velikost papíru, stránkování, záhlaví/zápatí... Leckdy také nechceme přísně vzato WYSIWYG: na monitoru často aplikace zobrazují pomocné informace, jež ve vytištěné podobě dokumentů nemají co dělat.

V takových případech využijeme služby následujících tříd:

  • NSPageLayout: representuje panel pro nastavení informací, souvisejících s tiskem ("Page Setup"). Otevření tohoto panelu za normálních podmínek automaticky zajistí standardní generované aplikační menu a služby dokumentového balíku (o nichž jsme se bavili minule);
  • NSPrintPanel: representuje panel pro vlastní tisk ("Print..."). I ten je za normálních okolností otevřen a obsloužen standardním knihovním kódem;
  • NSPrinter: informace o konkrétní tiskárně, převzaté z odpovídajícího souboru PPD. Až na výjimky s touto třídou přímo pracovat nepotřebujeme;
  • NSPrintInfo: nastavení pro tisk – jsou zde údaje jako velikost papíru, velikost okrajů, počet kopií, výběr tištěných stránek a podobně;
  • NSPrintOperation: instance této třídy representuje a řídí jednu konkrétní tiskovou operaci. Obsahuje tedy odkazy na view, jehož obsah je tištěn, na instanci třídy NSPrintInfo, jež specifikuje parametry tisku, a stará se o řízení celého tiskového workflow.

Ostatní třídy

Zbývající třídy již jsou skutečně "každý pes jiná ves":

  • NSHelpManager řídí přístup k nápovědě (a přímé využití jejích služeb je naprostou výjimkou – takřka vždy se o vše stará automaticky knihovní kód);
  • NSPasteboard je naopak třída, jejíž instance využíváme programově kdykoli je třeba implementovat práci se schránkou, ať již prostřednictvím klasických operací cut/copy/paste, nebo v rámci jiných služeb (drag&drop);
  • NSSound nabízí elementární multimediální služby pro práci se zvuky a jejich přehrávání;
  • Dvojice tříd NSSpeech... podporuje syntézu a rozpoznávání řeči – nikoli ovšem v češtině;
  • NSSpellChecker nabízí přístup ke službám korektoru pravopisu;
  • poměrně často užíváme služeb třídy NSWorkspace, jež nabízí systémové služby vyšší úrovně – typicky přístup ke kopírování souborů na úrovni Finderu, vyhledávání a spouštění aplikací, a podobně;
  • Dvojice tříd NSInput... representuje rozhraní pro správu vstupu z klávesnice;
  • Konečně, skupina tříd NSNib... podporuje práci se soubory NIB obsahujícími objektové sítě – a přímo s nimi opět nepracujeme takřka nikdy, až na naprosté výjimky při práci s NIBy vystačíme se službami vyšší úrovně, nabízenými třídou NSBundle.

Obsah seriálu (více o seriálu):

Tématické zařazení:

 » Rubriky  » Informace  

 » Rubriky  » Agregator  

 » Rubriky  » Software  

 

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: