|
Nl:NeoOffice en Aqua
From NeoWiki
Veel gestelde vragen over het ontwerp en de ontwikkeling van NeoOffice.
Aquaficatie en Mac OS X integratie
Waarom heeft NeoOffice niet de typische Mac OS X "blauwe knop" Aqua-gebruikersinterface?
Met ingang van NeoOffice 2.0 Aqua Beta, bevat NeoOffice uitgebreide "Aquaficatie". Opmerkzame Mac-gebruikers (is er een andere soort?) kan het opvallen dat sommige dingen niet helemaal kloppen, maar maak u geen zorgen, dit is slechts de eerste uitgave van NeoOffice die veel Aqua widgets heeft, en de ontwikkelaars zijn bezig met het weg polijsten van al deze grijze wratten!
Het doel is langzaam Aqua functies toe te voegen aan NeoOffice, zodat het meer en meer Mac-achtig wordt totdat er geen bewijs meer is dat het ooit allesbehalve een Mac OS X-programma was.
In de afgelopen paar maanden, is NeoOffice beetje bij beetje verbeterd
Wat zijn enkele recente Aquaficatie doorbraken?
Vanaf Februari 2010:
- Ondersteuning voor Mac OS X Voorzieningen die de geselecteerde tekst wijzigen (06/2010)
- "zoek op in woordenboek" contextuele menu(s) onderdeel in Writer (02/2010)
- Ondersteuning van het verplaatsen en herbenoemen van bestanden terwijl ze open zijn (01/2010)
- Syteemeigen(native) Mac OS X markering in Writer, Impress en Draw (12/2009)
- 512x512px toepassing icon (12/2009)
- Vlottere tekst kerning (12/2009)
- Ondersteuning voor het wijzigen van het onderdeel dat opent bij het opstarten (07/2009)
- Ondersteuning voor het lezen van data van NeoOffice door Mac OS X Voorzieningen (11/2008)
- Ondersteuning voor de Apple Remote in Impress (06/2008)
- Ondersteuning van multi-touch trackpad vingerbewegingen vergroten en vegen(05/2008)
- Systeemeigen drijvende paletten (05/2008)
- Media Browser voor het gebruik van gegevens uit iLife-programma's (05/2008)
- Ondersteuning voor horizontaal scrollen (04/2008)
- Ondersteuning voor het afspelen van QuickTime videodocumenten bij gebruik van Mac OS X 10.4 en hoger (03/2008)
- Menu's zijn beschikbaar als er geen documenten open zijn (03/2008)
- Import van afbeeldingen van scanners en camera's met behulp van Fotolader (03/2008)
- Command-klikken op de titelbalk van een venster toont het document pad (03/2008)
- Gebruik van de syteemwijde grammaticacontrole op Mac OS X 10.5 (03/2008)
- Toegang tot de Mac OS X Adresboek als een gegevensbron (07/2007)
- Gebruik van de ingebouwde Mac OS X spellingscontrole voor ondersteunde talen (07/2007)
- Ondersteuning voor de Quick Look-functie van Mac OS X 10.5 (06/2007)
- Ondersteuning voor het veranderen van de cursor knipper snelheid gebruik makend van de standaard Cocoa eigenschap
- Widgets op de achtergrond verschijnen nu uitgeschakeld, en de cursor knippert niet meer op de achtergrond (05/2007)
- Ondersteuning voor de "niet-opgeslagen wijzigingen" indicator in de sluit venster knop (04/2007)
- NeoOffice documenten verschijnen nu in het Mac OS X "Recente onderdelen" menu (03/2007)
- Toolbar knoppen zijn nu Aqua afgeschuinde knoppen(03/2007)
- Nieuwe Aqua icon set (02/2007)
- Systeemeigen Cocoa Open en Bewaar dialogen (07/2006)
- Nieuw document iconen die beter passen bij de Aqua verschijning (07/2006)
- Uitgeschakelde werkbalk iconen hebben het juiste Mac OS X uiterlijk (vroeger waren ze solide grijs) (07/2006)
- Tal van Aqua widgets (schuifbalken, knoppen, vooruitgang bars, enz.) (04/2006-07/2006)
- Verbeterde compatibiliteit met spraakherkenning software (10/2005)
- Mogelijkheid tot het afdrukken van embedded EPS-bestanden (09/2005)
- Verbeterde ondersteuning voor internationale toetsenborden (09/2005)
- Dock-menu met items uit de "Quickstart"-functie (ook gevonden in het NeoOffice menu) (06/2005)
- Geeft niet langer meer het "grijze venster" weer als het laatste document word gesloten, maar blijft open, net als normale Mac proggies (05/2005)
- Integratie met Spotlight in Mac OS X 10.4 "Tiger" via NeoLight (05/2005)
- Maakt gebruik van die kleuren uit het Weergave-paneel van de 'System Preferences (04/2005)
- Ondersteuning voor Indische talen (04/2005)
- Ondersteuning voor Eudora, Entourage, en Mail als externe email toepassingen(03/2005)
- AppleScript voor drag-and-drop installatie van de help-bestanden voor niet-Engels talen (03/2005)
- Drag & drop tussen NeoOffice en andere toepassingen (03/2005)
- Sluit niet langer af bij het klikken op de rode "sluit" widget van het laatste document venster (03/2005)
- Over NeoOffice" en "Voorkeuren" onderdelen in het "NeoOffice" menu (02/2005)
- Gelokaliseerd interfaces voor 40 talen (12/2004)
- Nieuw Aqua programma icoon en openingsscherm (12/2004)
- Verbeterde / kleinere PDF-bestanden (12/2004)
- Tekst drag & drop (12/2004)
- Scroll-wielt ondersteuning (11/2004)
- Systeemeigen menu's verschijnen nu in de witte balk boven in het scherm, net als bij alle andere Mac-programma (vroeger, verschenen ze aan de bovenkant van hetzelfde venster als het document) (11/2004)
- Automatische melding van nieuwe versies en patches (11/2004)
- Patches beschikbaar als standaard Mac OS X Installer-pakketten (09/2004)
- Ondersteuning voor Macintosh aliassen in bestand openen en bewaren dialogen (09/2004)
Blijf het volgen als steeds maar nieuwe functies worden toegevoegd!
Technologieën en Gereedschappen
Welke technologieën worden gebruikt in de Aquaficatie van NeoOffice?
Aqua is het uitzicht dat door Apple is ontwikkeld voor OS X. Apple biedt drie omgevingen voor het ontwikkelen van applicaties met een Aqua-gebruikersinterface:
- Carbon (soort van OS 9 compatibiliteit-modus, ook gebruikt door Mozilla / Firefox)
- Cocoa (nieuwe omgeving dat is aangepast van NeXT voor Mac OS X)
- Java (cross-platform taal, omvat JFC / Swing voor UI-elementen met een systeemeigen uitzicht)
NeoOffice/C (het oorspronkelijke prototype-project) was een poging gebruik te maken van Cocoa en Carbon. Het meer succesvol project, NeoOffice (oorspronkelijk bekend als NeoOffice / J), gebruikt momenteel een mix van Cocoa, Carbon en Java 1.4.2/1.5.
Dus ... is NeoOffice in Java geschreven?
Nee NeoOffice is een volledige Mac OS X versie van OpenOffice.org die gebruik maakt van kleine hoeveelheden Java-code voor de grafische uitwerking en configuratie.
OpenOffice.org is voornamelijk geschreven in platform-agnostisch C + +. Echter, NeoOffice maakt gebruik van Mac OS X's doorgedreven Java-integratie om het Mac OS X uitzicht aan te spreken. Met andere woorden, de kleine stukjes Java in NeoOffice hebben voornamelijk te maken met activiteiten die invloed hebben op hoe de applicatie wordt weergegeven aan de gebruiker. De "ingewanden" van het kantoor pakket zijn geschreven in C + +. (De code waarmee NeoOffice is opgebouwd is 99% OpenOffice.org code gemeenschappelijk aan alle OpenOffice.org platforms en 1% Mac OS X-specifieke code in Java, C + +, C en Objective-C. Volgens Ohloh.net blijkt dat de NeoOffice - specifieke code 93% C / C + + is.)
Dus kan NeoOffice alleen worden werken op Macintosh computers met Mac OS X 10.3.x of 10.4.x-niet op Mac OS 9, Mac OS X 10.2 of lager, Windows, Linux, Darwin, of enige andere vorm van UNIX.
Hoe wordt Java gebruikt in NeoOffice?
Zoals hierboven vermeld, wordt Java voornamelijk gebruikt om het Mac OS X uitzicht aan te spreken. Wat er voor zorgt dat NeoOffice werkt is niet de Java-taal zelf, maar veeleer de bibliotheken die meegeleverd worden met de virtuele machine als Java 2D voor het grafische en AWT voor de menu's. Deze zijn eigenlijk al "systeemeigen" in de Apple-VM in de zin dat Java 2D eigenlijk CoreGraphics / Quartz is en AWT eigenlijk Carbon is.[1]
De hoeveelheid gebruikte Java nam ook af in de loop der tijden. Wanneer NeoOffice werd opgewaardeerd naar de OpenOffice.org 1.1.2 codebase (NeoOffice / J 1.1 Alpha), is tekst-weergave overgestapt van Java naar de Mac OS X systeemeigen ATSUI API's daar ze veel beter geschikt zijn voor complexe tekst lay-out dan Java.[2] Andere kenmerken zijn nooit in Java geïmplementeerd (bijvoorbeeld de Dock-menu, dat Carbon gebruikt in NeoOffice / J 1.1 en Cocoa in nieuwere versies).
Waarom ben je niet bezig met een Cocoa-versie voor een Aqua OpenOffice.org ?
Er zijn verschillende redenen. OpenOffice.org is niet gebouwd als een pure Mac Cocoa applicatie. Vertalen van het volledige gebeurtenissen model, font beheer en de display routines in "zuivere" Cocoa zou een groot werk inhouden . Aan de andere kant, Apple's Java-implementatie biedt een goede toegang tot de Aqua-functies en is makkelijker samen te smelten met de onderliggende OpenOffice.org-code. NeoOffice/C bewees dat een "zuivere" Cocoa-uitvoering is geen haalbare oplossing is op de korte tot middellange termijn, hoewel er fantastisch uitzag na een hele hoop hacks, is het zelfs niet stabiel genoeg voor incidenteel gebruik. .Voor een meer uitvoerige uiteenzetting van de redenen achter deze keuzes , zie dit item van de mede-oprichter en kern-ontwikkelaar van het NeoOffice project Ed Peterlin.
Zoals het er nu voorstaat, is NeoOffice zeer stabiel en vrij ver gevorderd naar het verstrekken van een volledig Aquaficeerde gebruikersinterface, en het nemen van een ander pad zou het in de prullenbak gooien van een hoop goede, stabiele, goed geteste code betekenen. De keerzijde van het gebruik van Java is dat het meer middelen (iets) verbruikt dan een pure Cocoa uitvoering zou gebruiken. (Je hebt meer RAM nodig dan de minimumeisen voor Mac OS X-maar Mac OS X geniet dan van feit dat er meer RAM is dan de minimum vereisten! En RAM-geheugen is goedkoop, het toevoegen van RAM is de meest kosten-efficiënte manier om je Mac sneller te laten werken. ) Apple's verbeteringen in Java 1.4.2 tegenover Java 1.3.1 hebben NeoOffice 1.2 Alpha daadwerkelijk de gelegenheid geboden om het gebruik van hulpbronnen te verminderen en de prestaties te verbeteren.
In plaats van het dogmatisch vasthouden aan een enkele toolkit, maken NeoOffice ontwikkelaars "gebruik van het beste gereedschap om het even welke taak aan te pakken " terwijl ze zich inspannen "om [OpenOffice.org] volledig bij OS X passend te kleden. " [3]
Is Cocoa dan niet beter dan Java?
"Aqua is aqua".
Deze vraag wordt het vaakst gesteld door de ontwikkelaars en gevorderde gebruikers. Eindgebruikers, aan de andere kant, kijken meestal naar de resultaten. Of zoals een tester het omschreef:
"Als het eruitziet als een eend, loopt als een eend, en kwaakt als een eend, dan is het voor de eindgebruiker een eend, en eindgebruikers hebben het vrij duidelijk gemaakt dat ze een eend willen, of die eend nu warme chocolademelk of koffie drinkt doet niets terzake. "
En,John Gruber stelt het zo: na het citeren van een bericht van een Apple ontwikkelaar op Carbon-Dev, "stuur [de tweede paragraaf] naar iedereen die beweert dat enkel "Cocoa-proggies" 'echte systeemeigen' Mac OS X programma's zijn. "
Is Java niet traag?
De meerderheid van NeoOffice is geschreven in C + +. Alleen die de delen die bijdragen aan een Aqua uitzicht in Mac OS X werden aangepast om Java te gebruiken. De reden hiervoor is dat de Mac OS X Java er fantastisch uit ziet en rechtstreeks toegang geeft tot de systeemeigen Aqua "blue button" besturingselementen.
En trouwens —Java is echt niet meer zo traag hoor.
Waarom gebruikt NeoOffice Java 1.5.x niet ?
NeoOffice 2.0 Aqua Beta 3 en hoger, zijn in feite in staat gebruik te maken van Java 1.5 (en Java 1.5 is de vereiste versie van Java op de Intel-Macs met Mac OS X 10.4). Om te begrijpen waarom NeoOffice om historische redenen een andere versie van Java gebruikt dan de nieuwste versie aangeboden door Apple, lees verder.
Er zijn een aantal redenen, zowel menselijke als technische, waarom NeoOffice gebruik maakt van Java 1.4.2 op de meeste Macs. Om bij het begin te beginnen, toen het programma aanvankelijk werd ontwikkeld (als NeoOffice / J), was Java 1.4.x niet beschikbaar op Mac OS X. Als Java 1.4.1 dan eindelijk beschikbaar was op Mac OS X, bleek het last te hebben van nogal wat kinderziektes en ontbraken er veel sleutelfuncties onder Mac OS X 10.2.x. Java 1.5 is enkel beschikbaar onder Mac OS X 10.4 Bovendien, Java 1.4.x en 1.5 gebruiken Cocoa-fundamenten, terwijl Java 1.3.1 Carbon-fundamenten gebruiken. Dus voor een groot deel van zijn jonge leven als NeoOffice / J, gebruikte de toepassing Java 1.3.1 voor Mac OS X 10.2.x, 10.3.x en 10.4.x.
De overstap naar een nieuwere versie van Java betekende niet alleen het laten vallen van de ondersteuning van de gebruikers van oudere versies van Mac OS X, maar vereiste ook honderden, zo niet duizenden uren om veel van de Carbon delen van de applicatie te herschrijven in Cocoa en en oplossingen te vinden voor nieuwe fouten in de nieuwe Java-versies. Dus overschakelen op Java 1.4.x (of 1,5) was geen haalbare optie voor het grootste deel van waaruit NeoOffice / J's uit bestond, gezien het aantal ontwikkelaars en het feit dat Java 1.3.1 goed bleef werken.
Omdat Java 1.3.1 niet de overstap naar de Intel-gebaseerde Macs zal maken, werd de zomer van 2005 (juli-september) gebruikt om voltijds te werken aan de overgang van NeoOffice / J naar Java 1.4.2, en oktober en november werden gebruikt (weer voltijds) om nieuwe bugs die opdoken uit een grotere test aan te pakken. NeoOffice 1.2 Alpha is de eerste versie die Java 1.4.2 en Mac OS X 10.3 of hoger vereist.
De overgang naar Java 1.5.x was niet zo moeilijk omdat het ook een Cocoa-fundament had, en werd uitgevoerd (voor Intel Macs) tijdens de NeoOffice 2.0 Aqua Beta cyclus. Java 1.4.2 is nog steeds de standaard versie van Java gebruikt door NeoOffice op PowerPC Macs die10.3.x en 10.4.x gebruiken ( NeoOffice / J 1.1 of NeoOffice 1.2 Alpha dwingen gebruik te maken van Java 1.5 zal leiden tot crashes en wordt niet ondersteund.)
Waarom geen gebruik maken van gtk of Qt of een andere cross-platform toolkit?
Zie Waarom ben je niet bezig met een Cocoa-versie van een Aqua OpenOffice.org? En Is Cocoa niet beter dan Java? :-) Het korte antwoord is dat het herwerken van de OpenOffice.org codebase om een andere toolkit te gebruiken minstens even veel tijd en werk in beslag zou nemen als er nodig was om NeoOffice te brengen tot het punt waar het nu is (drie jaar van bijna voltijdse werken met 1,5 ontwikkelaars en de voorafgaande bijkomende werkzaamheden), met geen enkele garantie dat het even stabiel zou zijn.
Bovendien, in het geval van gtk, zijn de versies die voor Mac OS X beschikbaar zijn oudere versies van gtk en nogal onvolledig. Zelfs in het geval van Qt, die beschikt over een moderne en complete Mac OS X versie van de toolkit, het bestaande OpenOffice.org werk over "het gebruik van Qt" zou in het geheel niet bruikbaar zijn voor een systeemeigen, niet-X11 Aqua-versie van OpenOffice.org . De Qt / KDE OpenOffice.org (Native Widget Framework inspanning) is niet een "systeemeigen Qt "versie van vlc (de OpenOffice.org besturingssysteem-onafhankelijke window-toolkit en Abstraction Layer). Alles van het onderliggende font beheer, tekening, enz., gebeurt nog steeds met behulp van X11; het is alleen de widget voor het tekenen die gebruik maakt van het Qt equivalent van de Mac OS X Appearance Manager [4][4].
Hoe zit het Intel-gebaseerde Macs? Is er een Universal Binary?
Zie deze FAQ (voorjaar 2006) voor een gedetailleerde uitleg van MacIntel vraagstukken en de laatste ontwikkelingen. (U kunt ook de FAQ van begin 2006 raadplegen voor historische informatie.)
Andere vragen
Heeft NeoOffice NeoOffice/C vervangen?
Wat is er gebeurd met NeoOffice/J?
Rekening houdende met het feit dat de "klassieke" CoreGraphics / Cocoa versie (NeoOffice/C) was vastgelopen en niet langer verder ontwikkeld, evenals het feit dat de "/ J" erg verwarrend was voor veel gebruikers en experts, werd de applicatie bekend als NeoOffice / J omgedoopt tot simpelweg NeoOffice beginnend met de 1.2 Alpha release.
Bestaat er een stappenplan voor de verdere ontwikkeling?
De richting van het NeoOffice project word doorgaans besproken in het NeoOffice Development forum op trinity. . De huidige plannen zijn uiteengezet in de Wat is gepland na NeoOffice 2.2.1? onderwerp en in [onderwerp NeoOffice 3.0.1 development planning] over Mac OS X 10.5.
Historische stappenplannen
De Wat zijn de plannen na NeoOffice 2.2.1? onderwerp en dit onderwerp over Mac OS X 10.5 beschrijft de 2007-2008 NeoOffice ontwikkelingsplannen.
De post-6 juni 2005 plannen van de twee primaire NeoOffice ontwikkelaars voor 2005-2006 zijn uiteengezet in dit onderwerp. Voorlopige plannen voor post-NeoOffice 2.0 Aqua Beta inclusief het verder polijsten van de Aqua widgets en een gemeenschappelijk project voor de ontwikkeling van een set van Aqua "‹werkbalk" iconen, maar geen formele plannen of stappenplannen werden aangekondigd.
Waar kan ik meer informatie vinden over NeoOffice?
Voor tips over het gebruik van NeoOffice, zie de Tips en hints sectie van deze Wiki.
Ik heb nog vragen over het ontwerp of de ontwikkeling van NeoOffice, waar kan ik een antwoord vinden?
- Ga naar de officiële NeoOffice FAQ
- Zoek op deze wiki
- Zoek in de trinity Forums
- Als u nog steeds geen antwoord hebt gevonden, stel je vraag in de juiste rubriek van de trinity Forums