El Dimarts 02 Agost 2005 14:15, Pere Pie va escriure: > Tot i no trobar a faltar alguna cosa del KDE, cada cop m'agrada més GNOME.
Per exemple, els dcop del KDE --que no se com ho fan a Gnome, potser existeix una altre forma. Qualsevol programa KDE pot enviar i rebre missatges a través d'un servidor que està en marxa i que nom dcop. Amb ell puc interrogar qualsevol programa KDE. O donar-li ordres perquè faci coses. Dóna tot el control a l'usuari. Encara que els noms semblin un poc críptics, no és gens complicat d'usar. Una demo: Tenc en marxa el KWeather, per saber la cosa meteorològica. En configurar-lo se li poden dir noms d'estacions meteorològiques i et va pintant el temps que fa ( http://kweather.sourceforge.net ). La de Palma nom LEPA i la de Girona LEGE ( http://www.nws.noaa.gov/tg/siteloc.shtml ). Li pregunto: [EMAIL PROTECTED]:~> dcop KWeatherService WeatherService temperature LEPA 27°C [EMAIL PROTECTED]:~> dcop KWeatherService WeatherService relativeHumidity LEPA 51% [EMAIL PROTECTED]:~> dcop KWeatherService WeatherService sunSetTime LEPA 21:01 A veure Girona? [EMAIL PROTECTED]:~> dcop KWeatherService WeatherService sunSetTime LEGE 21:06 5 minuts més de Sol :)) Pel fet de tenir el KWeather en marxa, podria integrar-lo en qualsevol cosa. Per exemple, des d'un PHP enviar les dades a la meva plana web i que els visitants vegin la temperatura. Puc muntar una estació a casa (com ha fet en Josep Sort) i fer que el KWeather pinti les dades de la meva estació, no només dels codis internacionals. Dins KDE s'usen dcop constantment d'una aplicació a una altre, per això està tant integrat. Per exemple, al Kontact (agenda + correu + rss + PDA) també veig la temperatura, però ells no ho rasquen, sinó que la saben amb dcop cap al KWeather. Per això hi ha tanta temptació de posar tantes coses a qualsevol programa KDE, és molt fàcil. Qualsevol programa KDE té ordres dcop. P.e. per fer que es desplegui el menu K (el que a un Windows és el menu inicio) cal usar el dcop del programa del panell, que nom kicker. [EMAIL PROTECTED]:~> dcop kicker kicker showKMenu Ara parlo del DCOP, perquè hi ha més coses espectaculars: - Els KIO. Qui tengui un KDE, que posi un CD de música i escrigui audiocd:/ a la barra d'adreces del Konqueror, ja ens ho contarà ;)) - El XMLRPC. Si a l'empresa instal·len l'aplicació web http://www.egroupware.org i no vols usar-la al navegador per què t'agrada més el KMail i el KOrganizer (el Kontact, en definitiva) el Kontact parla amb eGroupWare usant XMLRPC i t'el presenta a la seva interfície com si fos el correu i agenda que tens al teu disc, però des del servidor. No nomes ho fa amb eGroupWare, han preparat XMLRPC per altres coses: http://www.kontact.org/groupwareservers.php És com el dcop, però amb programes que no són KDE. Un grapat de professionals de la informàtica escèpics (i contraris) amb el programari lliure m'han fet aquest comentari, al llarg dels anys: "ja podreu fer coses tant potents com el programari de grans corporacions al que li dieu privatiu"? Sempre he dit que amb el model lliure, amb tants programes treballant juts, cada dia més i que fan més coses, aviat no ens podrien seguir. Per això el primer sempre han estat les 4 llibertats de la GPL i així la cosa tècnica superior arriba de natural, diguéssim :) --------------------------------------------------------------- Com saber quins arguments usar als comandaments dcop de dalt: Amb el comandament dcop (el que uso dalt) o amb el programa gràfic kdecop (que no uso dalt perquè és més còmode la copipastada de text) Escric dcop i dóna llista de programes que usen el servidor dcop: [EMAIL PROTECTED]:~> dcop KWeatherService konqueror-7955 kwin kicker kaddressbook kded korganizer konsole-15128 kmix kradio-15133 klauncher quanta-15202 knotes khotkeys kopete kmail (...) Miro quins objectes té el KWeatherService [EMAIL PROTECTED]:~> dcop KWeatherService qt KIO::Scheduler KWeatherService MainApplication-Interface WeatherService ksycoca Miro quins procediments té un objecte, p.e. el WeatherService [EMAIL PROTECTED]:~> dcop KWeatherService WeatherService QCStringList interfaces() QCStringList functions() QString temperature(QString stationID) QString dewPoint(QString stationID) QString relativeHumidity(QString stationID) QString heatIndex(QString stationID) QString windChill(QString stationID) QString wind(QString stationID) QString pressure(QString stationID) QPixmap currentIcon(QString stationID) QPixmap icon(QString stationID) QString currentIconString(QString stationID) QString iconFileName(QString stationID) QString date(QString stationID) QString visibility(QString stationID) QStringList cover(QString stationID) QStringList weather(QString stationID) bool stationNeedsMaintenance(QString stationID) QString stationName(QString stationID) QString stationCountry(QString stationID) QString longitude(QString stationID) QString latitude(QString stationID) QStringList findStations(float lon,float lat) QString sunRiseTime(QString stationID) QString sunSetTime(QString stationID) QString civilTwilightStart(QString stationID) QString civilTwilightEnd(QString stationID) void update(QString stationID) void updateAll() void forceUpdate(QString stationID) void removeStation(QString stationID) void addStation(QString stationID) QStringList listStations() QString stationCode(QString stationName) void exit() -- Benjamí http://weblog.bitassa.net . _______________________________________________ llista de correu de l'Internauta Internauta@internauta.net http://zeus.internauta.net/mailman/listinfo/internauta