Dashcode
(1 korsinik/a gleda/ju temu) (1) Gost

Dashcode


12.09.2008 | 15:27
Zna li itko kako da napravim widget da samo kliknem na riječ pa da napravi copy, tako da samo u safariu napravim past?!

Nadam se da razumijete pitanje,nešto tipa serialbox klik-copy?!
13.09.2008 | 02:06
Zna li itko kako da napravim widget da samo kliknem na riječ pa da napravi copy, tako da samo u safariu napravim past?!


Pretpostavimo da imaš nekakav textarea u svom widgetu, u kojem je tekst. I pretpostavimo da kopiranje ne trigga klik (onclick event) nego dupli klik (ondblclick event), kao u Serial Boxu.

Zapravo, da ne pretpostavljamo uzalud možeš kreirati novi Custom widget (prazan), u njemu jedan textarea i upiši u textarea nekoliko riječi, tako da je svaka od sljedeće odvojena newline (return) karakterom. To će "glumiti" tabelarne retke iz Serial Boxa, da ne petljamo s konstrukcijom prave tablice.

Sad dodaj handler za ondblclick event (textarea). Nazovi ga kakogod i u njega možeš kopirati ovo:

function kakogod(event)
{
var dataForPasteboard = event.target.defaultValue.substring(event.target.selectionStart,event.target.selectionEnd);
widget.system("/bin/echo -n '"+dataForPasteboard+"' | /usr/bin/pbcopy", null);
}

U Widget Attributes OBAVEZNO uključi Allow Command Line Access. Pokreni widget, dblklikni na neku od riječi u textarea i upravo si je kopirao u clipboard.

Što gornji event napravi? Prvo parsa selekciju i kopira označeni dio u varijablu dataForPasteboard. Blagodat dblklika (i razlog zašto je ovo zakačeno za ondblclick) je što će automatski selektirati cijelu riječ na koju klikneš. Možeš koristiti i onselect ako ti više odgovara preciznija selekcija.

Da bi druga linija (widget.system...) radila, widgetu mora biti dozvoljen pristup komandnoj liniji (od tuda onaj Allow Command Line Access). Sintaksa u nastavku poziva sistemsku pbcopy naredbu (hint: postoji i pbpaste) i to tako da joj proslijedi sadržaj varijable dataForPasteboard (u kojoj je selekcija) printajući njen sadržaj s naredbom echo i koristeći switch "-n" da echo NE doda newline karakter prilikom prosljeđivanja selekcije u clipboard - u protivnom bi Paste (u Safariju ili bilo gdje drugdje) osim selekcije, automatski imao i jedan "enter" na kraju.

Umjesto onog "null" iza zareza bi trebao biti endHandler - ako je "null", funkcija se izvodi sinhrono, što znači da je ostatak widgeta "smrznut" dok funkcija ne obavi svoje. No, nije kritična (brzo se izvršava i mala je vjerojatnoća da će nešto poći po zlu) pa za "kućnu upotrebu" spomenuti endHandler nije nužan. Detalji su opisanu u ADC Home > Reference Library > Reference > Apple Applications > Dashboard > Dashboard Reference > Widget Object.

Inače, pozivanje komandne linije i pbcopy naredbe nije nešto što normalnom čovjeku prvo padne na pamet. Logičniji put bi bio korištenje oncopy handlera, ali problem je u tome što dotični postoji samo za body widgeta i trigga se na CMD+C (tipke!). Nije mi poznato kako triggati event u widgetu programski (s obzirom da fireEvent() ne postoji) pa to očito nije rješenje tvog problema. No, ako ti zatreba takvo rješenje, Dashcode ga ima u svom Code Libraryu, pod Events i zove se Copy Support. Ali ima i bug pa, ako ga odlučiš koristiti, imaj na umu da tamo gdje piše "display" zapravo treba pisati "dataForPasteboard".
13.09.2008 | 13:02
Ma ovo radi super! Nešto sam slično pokušavao ali ovaj kod koji si mi dao nisam nigdje pronašao,samo copy support koji mi nije pomogao.
Hvala puno a posebno na detaljnom objašnjenju!

P.S. Dal mogu zaključat text jer sad ga mogu u dashdordu slučajno promjenit?
13.09.2008 | 15:09
Dal mogu zaključat text jer sad ga mogu u dashdordu slučajno promjenit?


Zaključati dok editiraš, u Dashcodeu (ukratko: ne; možeš eventualno isključiti Visible flag, ali onda ne vidiš kompletan textarea) ili dok se izvršava?

Ako je ovo drugo u pitanju (a pretpostavljam da je), textarea je po defaultu editabilan i nema neki "switch" koji bi ga pretvorio u "view only". No, zato je tu workaround: dodaj handler na onkeypress (ili neki sličan, ovisi što ti najviše odgovara) event i u njemu "presretni" editiranje. Ako event nazoveš "presretac", ovo će biti dovoljno:

function presretac()
{
event.preventDefault();
event.stopPropagation;
}

Textarea će biti prikazan uredno, onselect će se ponašati normalno (i triggati kopiranje u clipboard), ali će svaki pritisak na tipku biti prosljeđen u crnu rupu. Imaj na umu da to znači da, dok je dotični textarea odabrana kontrola, ni CMD+Q ne radi! Tek kad user klikne izvan textarea, prestaje presretanje i može quitati widget preko tipkovnice - može biti feature, ali može biti i bug.
13.09.2008 | 16:30
Mislim da če ovako biti sasvim dobro.

thx Dj
Moderatori: Bertone
  • Stranica:
  • 1

Vikalica™

Zadnja poruka: pred 1 dan, 5 sati
  • mbp2009: Reduce transparency zapravo ukloni veliku vecinu tog. Jos ima taj stakleni dio na npr semaforu, ali ukloni se transparentnost opcenito
  • mbp2009: lijepo to sve izgleda, ali generalno mi se cini da trosi bateriju ipak vise
  • mbp2009: instalirao sam ja, iskreno, malo je dosadno pa sam skratio i stavio ono reduce transparency
  • Yonkis: Mislim da stakleni efekt ostaje do sljedećeg desetljeća. Onda možda pređu na kromi ili polirani čelik look. :)
  • smayoo: Što se mene tiče, za taj "fićr" imam zero tolerance. "Podnošljivo" nije dovoljno dobro. :/
  • dpasaric: Ublažili su ga dosta, pa je navodno podnošljivo.
  • smayoo: Ako jesu, možda bih se za odvažio instalirati ga pa testirati
  • smayoo: Jesu li odustali od onog horror liquid shit UI-ja?
  • dpasaric: Za Golden Gate je potreban Appleov M hardver, a ja sam još na Intelu, tako da nemam načina to osobno testirati.
  • dpasaric: Nismo imali recenziju nekog MacOS-a jako jako dugo, valjda je zadnji koji je to zaista zaslužio bio 10.6 Snow Leopard! :)
  • IkoIko: Hoćemo li dobiti osvrt na macos golden gate?
  • dpasaric: Eto osvrt na naslovnici, pa komentirajte, baš me zanima tko će ga prvi kupiti na Jabučnjaku! :)
  • dpasaric: Ma ok, to nije ništa novo, i prije su imali to tako, ali da, slažem se da je to pretjerano i jako "američki"... :)
  • m@xym: Ovaj keynote, k'ooo da ga je pisao Trump... svaka druga riječ im je: "amazing".
  • drlovric: I ja isto. Bas se radujem :)
  • IkoIko: Gledat ću, a i popratiti obvezni članak ovdje ;)
  • dpasaric: Ali ovaj bi konačno mogao biti zanimljiv! :) Mene zanima HomePad kao novi hardver za domomatiku!
  • smayoo: Jedva čekam da ga propustim, kao i sve prethodne. :)
  • dpasaric: Večeras u 19h Apple Keynote! :)
  • smayoo: Heto. Mikrofon ocvikan. Precizno. Elektroničarskim cvikama... :)
  • smayoo: Hvala ti, istražit ću.
  • Yonkis: Hocu reći zvuk dopire do mikrofona i preko vibracija drugih površina, plastika, ne samo preko rupice od mikrofona. Vidi na 52 minuti [link]
  • Yonkis: Mislim da ti to neće biti dovoljno. To kao kad začepiš uho prstom, ti svejedno možeš prepoznati riječi a taj mikrofon je jaaaako osjetljiv, prepozna govor iz druge sobe.
  • smayoo: Imam ja, hvala ti na infomaciji. Korištenje mikrofona sam isključio u postavkama odmah out of the box, a za svaki slučaj mikrofon pokrio UHU patafixom. :)
  • Yonkis: Ima li netko doma LG-ev smart TV? [link]
  • IkoIko: Za powermacove, idem ih danas pogledati pa vam javim!
  • Borisone: Na hrvatskom jeziku: [link]
  • Borisone: About Spotlight indexing and search results on Apple devices [link]
  • Miki9890: Poz! ima li smisla skinuti 26.6.1 na iPhoneu 13 mini radi spotlight indexinga? Da li je to samo za siri Ai kojeg ionako neću imati i hoće li indexirati opet kad prijeđem na 27? trenutno sam na 18-ici
  • Piko: ja bi drugi .... da li rade ?
  • Riba: Pogotovo ako je zracno hladjen.
  • Riba: Mene zanima jedan!
  • IkoIko: Pozdrav zanima li ikog dva powermaca g5?
  • Yonkis: Nisam ovo znao, Apple koristi Google za svoj iCloud [link]
  • marioart: ko zeli iz njemacke uzimati, preporucujem alternate.de - pocetni model je 976€
  • ZoPaj: iducan.hr ima sve konfiguracije, mini i studio, nije preogromna razlika u odnosu na nedavno poskupljeno
  • jura22: Točno, ispravak 1.049eur. Onda i nije neka velika razlika.
  • Yonkis: Nema đabe ni u starog Applea
  • Pongy75: Evo, osnovni model Minija u iStyle je 1.159€ - skoro pa duplo nego nekada osnovni model minija. Tu se gubi svaki smisao povoljnog Mac računala.
  • Pongy75: i u švabiji, koliko je kod nas?!!
  • marioart: @jura to je sa edu popustom, cijena bez popusta je 1049€
  • jura22: Osnovni Mini M6 je 929€. [link]‑core-cpu-12‑core-gpu-16-gb-arbeitsspeicher-256gb-speicher
  • matijazx: - nadživio je svog oca za 10 godina.
  • dpasaric: Jazz legenda!
  • smayoo: RIP Stjepan Jimmy Stanić
  • Pongy75: Ma nek si znaš kaj…
  • matijazx: -- u ovlaštenom Apple storeu, vidio cijene za preoreder.....M6 mini 16GB-cca 1200 eura, 24GB-cca 1700 eura
  • Pongy75: Obično bude koliko dolara toliko u eurima nekih 10%
  • dpasaric: Javim kada dobijemo cijene za Hrvatsku...
  • dpasaric: Sitgli novi M5 Mac mini i M5 Ultra Mac Studio!

Za vikanje moraš biti prijavljen.

Prijava

Novo na Jabučnjaku

Teme

Poruke

Oglasi

Komentari

Anketa

Koji Mac koristite?

Page Speed 0.46 Seconds

Provided by iJoomla SEO