mac os x için widget'lar. OS X Yosemite için mavi widget'lara bir bakış. Teslimat durumu: kolilerin teslimatı için

Merhaba habravchane-makovodi!

Bugün Mac OS X için bir Dashboard widget'ı oluşturmanın temellerini bulmaya çalışacağız. Kendisi için tanınan Dashcode programına ihtiyacımız var.

Arkada biraz teori. Pano Widget'ı - çok sayıda kaynak içeren bir pakette paketlenmiş özel olarak tasarlanmış bir web sayfası. Peki, ek için trohi servis bilgileri. Açıkça, JavaScript programlama dili saldırıya uğradı. Bunu ve ayrıca HTML / CSS hakkında zaten bilginiz varsa (ihtiyaç duymak istemiyorsanız), o zaman çoktan basit bir widget yazın. Öyle olmasa bile utanmazsın, annem zaten basit ve sezgisel olarak anlaşılır, onunla çabucak konuşabilirsin. JS okuyucusunun gitgide daha az bildiğini söyleyeyim. Makalenin kendisi yeni gelenler için ayrılmıştır, bu yüzden sizden "basit bir konuşma ve temel konuşmaların ayrıntılı bir açıklaması" için havlamamanızı rica ediyorum. Ek olarak, tasarım için sizden shturhat yapmamanızı rica ediyorum - peki, ben tasarımcı değilim, tasarımcı değilim! Sağ elinle ne yardım etmek istersen - hoşgeldin =)

Anlaşılır olması için, tüm çıktılar (ve ayrıca hazır widget'lar) github'da yayınlandı, makale istatistiklerinde yayınlandı. Ale, acele etme, sadece onları zavantazhuvat! Her şeyi kendin yaratmış gibi büyümek, bir saat boyunca trokaları boşa harcamak daha iyidir.

Otzhe, hadi yapalım. Deneyler için bir meta olarak, en sevdiğimiz habr'ı seçtiğimi anladım. Seçilen habrauser'in derecelendirmesindeki karma, derecelendirme ve konumu gösteren bir bit-iş widget'ı olacağız.


Böyle bir widget (peki, benzer) neoromantic habratocomrade tarafından zaten 2007'de yaratılmıştı, ancak indirmeye gönderilen robotlar değildi, ayrıca bu makale bu tür widget'lar yaratmanın pratik merakının intikamını almadı.

Doğruyu görebiliriz Nedolіki'yi görebiliriz.

Boş bir proje oluşturalım. Kimin için Dashcode'u çalıştırın ve gerekli ayı tıklayın. Süreç önemsiz.

Biz ne yapıyoruz? Temel widget, ana ve ek stant olabilir (öncelikle, sol panelde ön ve arka). Birincisi, normal çalışma modunda kullanılır, diğeri ise widget'ın parametrelerini ayarlamak içindir. Sol elin bileşenleri listesinde en üstteki noktaları seçerek bunlar arasında geçiş yapmak mümkündür. Ana ve ek ülkeler arasında geçiş yapmaya hizmet ettikleri için "bilgi" ve "Bitti" düğmeleri dışındaki tüm adları cesurca görebiliriz. Dali, basitlik için, widget'ın bel tarafının tüm yüzü olarak adlandırılır.

Şimdi, widget'ımızın ön tarafına (bir kod satırı olmadan!) gerekli bileşenleri atıyoruz: bir yazı kopyası. Hangi bileşen kitaplığının açıldığı için - sağ üstte bulunan Kitaplık düğmesi - "Metin" türündeki bileşen widget'ına sürüklenebilir. Şimdi Müfettiş'i görebilirsiniz (böylece düğme dağlarda sağ elini kullanıyor) ve bunun için genişlememize yardımcı olabilirsiniz, renkler tam bizim widget'ımız için. Bu nedenle, koda kolay erişim için yazımızın adlarına anlayışımızı koymaya yardımcı olacağız.

Giriş alanı sinemanın başlık sayfasına yazılır. Peki, ve başka bir resim - güzellik için. Ve sonuç olarak, yaklaşık olarak aşağıdakileri alıyoruz:

Fena değil, GUI'miz zaten hazır! Cmd+R'ye basıp (i) ve Bitti butonlarına tıklayarak widget'ı çevirmenin etkisine bayılabiliriz.

Ancak bir GUI bizim için yeterli değil, o yüzden mantığa geçelim. Solak okuyucu için, Görüntüle düğmesine tıklayın ve görebileceğiniz Kaynak Kodu listesinden seçin. І otomatik olarak oluşturulan JavaScript kodumuzu zaten kullanabiliriz. Cesurca yönetmek için yogaya başlıyorum!

Alt satır, widget'ımızın "mimarisi" için önemlidir. Koristuvach hakkında veri istemek, onu ayrıştırmak ve widget'ın ön tarafında karma ve derecelendirmeyi görüntülemek için zamanlayıcıyı kullanacağız. Bu nedenle global olarak updateTimer'ı cob üzerindeki main.js dosyasına değiştiriyorum, startTimer(msec) ve stopTimer() fonksiyonlarını bu timer ile çalışacakmış gibi oluşturuyoruz. Ayrıca, timer tarafından çağrılacakmış gibi updateStats() işlevini de oluşturuyoruz.

function startTimer(msec) ( updateTimer = setTimeout("updateStats()", msec); ) function stopTimer() ( clearTimeout(updateTimer); ) function updateStats() ( alert("Çalışıyor!"); startTimer(upda )
Widget gösterildiğinde zamanlayıcıyı başlatmak için show() işlevine bir startTimer(5000) çağrısı ekleyin ve görünüşe göre hide() işlevinde, widget görünmüyorsa (Gösterge Tablosu görünmüyorsa) kaynakları kaydetmek için stopTimer() öğesini ekleyin. aktif). Artık widget'ımızı çalıştırabilir ve konsolda (Cmd+Alt+1) “Çalışıyor!” bölümünde çalıştırabiliriz. cilt 5 saniye.

Ale, bize böyle bir saçmalık deme, zamanlayıcıda karma ve puan almak istiyoruz! Bu nedenle, updateStatus() işlevinde, uyarıyı değiştirin ve execStatsRequest() işlevini geri çağırın (Habr'ın API'si, hatalarla ilgili verileri daha sık, en az bir kez, yani aynı zamanda aralık daha büyüktür) .

Şimdi Habrahabr API'sine yapılan HTTP istekleri için sağda. Yeni işlevler oluşturuyoruz - bu istek işlemeyi başlatmaya hizmet edecek execStatsRequest() ve processStatsRequest(). Eksen yak kokuyor bana bak:
function execStatsRequest() ( if (userName().length > 0) ( var Url = "http://habrahabr.ru/api/profile/" + userName() + "/"; alert("Kullanıcı: " + kullanıcıAdı () + "\nURL: " + Url); xmlHttp = new XMLHttpRequest(); xmlHttp.onreadystatechange = processStatsRequest; .send(); ) else ( resetStats(); ) ) function processStatsRequest() ( if (xmlHttp.readyState = if (xmlHttp.readyState =) = 4 && xmlHttp.status == 200) ( alert("xml is " + xmlHttp.responseXML); if ( xmlHttp.responseXML == null) ( resetStats(); ) else ( alert(xmlHttp.responseText); var error = xmlHttp.responseXML.getElementsByTagName("error"); if (error != null) ( alert("Bazı hatalar oluştu!"); resetStats(); setLogin("<" + userName() + " not found>"); dönüş; ) var login = xmlHttp.responseXML.getElementsByTagName("login").firstChild.nodeValue; var karma = xmlHttp.responseXML.getElementsByTagName("karma").firstChild.node ("derecelendirme").firstV.Child. ;var konum = xmlHttp.responseXML.getElementsByTagName("ratingPosition").firstChild.nodeValue; )
Burada bir URL için istek oluşturuyoruz, XMLHttpRequest türünde bir nesne oluşturuyoruz ve ayrıca GET yöntemini kullanarak verilerimizi istiyoruz. Dikkat çekici olan, getirmek zorla koymak MIME-türü wіdpovіdі "metin/xml", daha fazla habra-apі chomus "text / html" çevirin. Ve processStatsRequest() işlevi için, XML vodpovid'de otrimana'yı parimo ediyoruz. Aynı zamanda, onu bir affın varlığına çeviriyoruz - ve size tse koristuvach'ı hatırlatıyoruz.

Burada varto vіdvolіktisya vіd koda nalashtuvati vіdzhet'in kendisi - ağ ile pratik yapmanıza izin verir. Bunun için sol bölmede, öğe listesini aşağı kaydırın ve Widget Nitelikleri öğesini seçin. Burada sadece "Ağ Erişimine İzin Ver" seçeneğini işaretliyoruz. Widget kimliğini ve sürümünü de güncelleyebilirsiniz. Şimdi koda dönelim.

setLogin() , setKarma() işlevleri ve bunlarla ne olduğu ön taraftaki gerekli alanlarda kendilerine iletilen satırı görüntüler. Kokular netlik için yaratıldı ve bir sebepten dolayı aynı görünüyor:

fonksiyon setLogin(login) ( document.getElementById("userName").innerText = login; )
resetStats() işlevi, tüm alanlar için varsayılan değerleri sıfırlar. Ve setUserName() ve userName() işlevleri, widget'ın arka tarafında habrauser adını girmek için alan üzerinde bir sarmalayıcı görevi görür:

userName() işlevi ( document.getElementById("nameEdit").value; ) işlevi setUserName(name) döndür ( document.getElementById("nameEdit").value = name; )
Widget hazır olabilir. Neden mayze? Böylece im'ya koristuvach'ın uygulanmasına dikkat etmemiz gerekiyor. Bunun için loadPrefs() ve savePrefs() fonksiyonlarını yazıyoruz.

Var tercihKey = "habraKullanıcıAdı"; function loadPrefs() ( var name = widget.preferenceForKey(widget.identifier + "-" + tercihKey); alert(widget.identifier + "-" + tercihKey); alert("tercihlerden isim: " + isim); if ( name != null) setUserName(name); ) function savePrefs() ( widget.setPreferenceForKey(userName(), widget.identifier + "-" + tercihKey); )
Bu işlevlerin, show() ve hide() işlevlerine kadar tıklanabilir olması gerekmez. Özelleştirme, istediğiniz kadar çok bilgi içeren Gösterge Tablosuna widget eklemenize olanak tanıyan dış görünüm widget'ı için benzersiz olacaktır.

Eh, şimdi kesinlikle kazanmaya hazır bir widget. Ale, mükemmeller arası yoktur! Artık widget'ımız ana Rusça ve İngilizce sürümleri için yerelleştirildi. Fransızca ve Japonca dillerinde yerelleştirme (ev ödevi gibi) de yapabilirsiniz.

Ön tarafa geçelim, diye bağırıyor müfettiş. Şimdi vizyonumuza göre inspector'ın Localization bölümüne yazacağız, Value alanında İngilizce dil değeri ile ayarlanacak. Von, ymovіrno, zbіgatimutsya z vstanovlennymi alan Anahtarı. Bu değerler, en.lproj/localizedStrings.js dosyasında bulunabileceği gibi varsayılan (İngilizce) yerelleştirmeye eklenecektir.

Şimdi dodamo Rus yerelleştirme. Widget Nitelikleri'ne giderek ve Yerelleştirme bölümünde, Rusça dilini (soldaki listeye) ekleyebilirsiniz. Onu seçin ve şimdi sağdaki listeye yerelleştirilmiş satırlar girebilirsiniz.


Değerler açıkçası ru.lproj/localizedStrings.js dosyasına kaydedilecektir.

Vlasne, eksen ve her şey widget'ımızı başlatabilir ve sizin (veya bir başkasının) karmasına merhamet edebilir! Widget'ı Panoya yüklemek için, sol panelde Çalıştır ve Paylaş'ı seçmeniz ve ihtiyaçlarımıza bağlı olarak Diske Kaydet veya Panoya Dağıt'ı seçmeniz gerekir.

Hazır bir widget indirmek istiyorsanız, bekliyoruz.

Pek çok Mac bilgisayar ustasının daha saygılı adımlar için saygılı olması gerekir - ayrıca, yalnızca dıştan değil, aynı zamanda "içten" de. Bunun için standart "Sistem İzleme" yeterli değildir: 3-4 üçüncü taraf programı kurarlar ve yardımları için daha fazla parametre izlerler. Ne yazık ki, ya her şey aynı zamanda harika bir görsel uygulamadan gelen Mac'in hatırasının tam ortasında görünse?

І böyle bir widget. Vin geçen ay Mac'te göründü ve adı MONIT. İsim, ne demeli, sorun ne? Vіn kişisel olmayan göstergeler hakkında bilgi çizer - miktar, işlemcinin veya operasyonel belleğin kullanılabilirliği, boş pozisyonlar ve indirmeler arasındaki bağlantı hakkında verileri gösteren ve çok daha fazlası.


Gerekli parametreye bastıktan sonra yenisi ile ilgili bilgileri rapor etmeniz istenecektir.


Program gerçekten akıllı ve bayat - bilmek istediler, işlemciyi bilmek istediler, destek merkezini açtılar - ve her şeyi görebilirsiniz! Ancak en büyük її artı fiyattır. MONIT rozpovsyudzhuetsya tamamen ücretsizdir, zavantazhity daha düşük bir maliyetle yapılabilir.

İsim:İZLE
Görüntüleyici/perakendeci: Tildeslash Norge Ltd.
Fiyat: Masrafsız
Beklenen satın almalar: Selam
Bilgelik: OS X 10.11 ve daha fazlası
İstek:

Bence, daha fazla vіdzhetіv marnі. Ama yine de, iyi bir widget daha da eğlenceli ve komik olabilir. :)

Harika Mac için en iyi widget'ları seçmeye çalıştım. Dijital Widget'lar, Mac bilgisayarınızdan maksimum çıktı almanıza yardımcı olur. Açıkçası, tüm favoriler burada yer almıyor, bu yüzden, ne olduğunu önemsiyorsanız, bu listeye ne eklenebilir, lütfen yorumlarda bana bundan bahsedin!

Widget'ın amacı, aynı anda Mac'inize bağlı olanlar hakkındaki tüm bilgilere göz atmaktır. Bu yardım ile CPU ve RAM'inizin varyasyonunu, sabit diskteki boş alanı, sistemin durumunu ve sistemin hızını, dahili sıcaklığı, fan sargısının hızını, pil şarjını kontrol edebilirsiniz. sürecin akışı ve diğer birçok şey. Ayrıca, büyük bir zevkle, widget'ın arayüzü bölündü.

iTunes, mevcut bir iTunes kaydınız olduğu sürece, şarkılarınızın cover'larını otomatik olarak alacaktır. Bu widget, böyle resmi bir kaydı olmayan bayat tim olacak. iTunes'daki seçili şarkılar için harika Amazon veritabanından şarkı kapaklarını hızla seçeceğiz.

Bu widget'ın yardımıyla en sevdiğiniz şarkıların metinlerini almak çok kolay. Tek yapmanız gereken iTunes'da bir şarkı oluşturmak ve Dashboard'u başlatmak. Parçanın metinleri, widget'ta otomatik olarak görüntülenir ve doğrudan iTunes'a kopyalanır. En önemli popüler şarkılar için metinler.

Mac OS X'te tüm klavye kısayollarını hatırlamak imkansızdır. :lol: Yani, hızlı erişim için bir kısayol tuşuna ihtiyacınız varsa, xCuts widget'ı ihtiyacınız olan şeydir. Widget zruchny tim, scho, kategoriler için klavye kısayollarına göz atabilir ve veritabanında shukati їх.

Time Machine mucizevi bir işlev, Mac OS X 10.5 Leopard'da tanıtıldığı gibi, program doğru görünenler hakkında rapor edilebilir bilgiler vermiyor. İyi anne, Time Machine robotu hakkında üç bilgi daha. :) Bu widget, bir dış görünüm yedeklemesinden sonra değişen, yedekleme işleminin devam edip etmediğini veya zaten tamamlanmış olup olmadığını gösteren sistem günlüklerini görüntüler.

Yeni widget'lar aramaya devam ederseniz, widget sizin için idealdir. Apple web sitesinde kalan 20 widget'ı gösterir.

Sessizlik için, kimin b'ye ihtiyacı var hakkında sadece güvenlik, basit kelimelere dayalı şifreleri tahmin etme - "teknolojik günah" :). Koku kolayca saldırıya uğrayabilir, bunun ardından örneğin hesabınıza bilgisayar korsanları erişebilir. iPassword, harf ve rakamların alfabetik olarak oluşturulması yoluyla bu şifreyi değiştirmenize yardımcı olur, böylece örneğin İnternet'teki bulut kayıtlarınız için bir şifre gibi tahmin edebilirsiniz.

Bazı insanlar Apple Mağazalarının düzenli olarak ücretsiz check-in'ler sunduğunu, nasıl kötü koktuklarını, Mac'te nasıl şarkı söyleneceğini: iMovie veya GarageBand şarkılarında evde video oluşturma vb. Bu widget, size en yakın Apple Store'a olası girişlerin bir listesini yerleştirecek, böylece bir mağaza görüp görmediğinizi bileceksiniz ve sizi tıklayanları teşvik edeceksiniz.

Noel halılarından bir seçki bu yıl istisnasız yayınlandı. Birincisi, bu yıl Katolik Rіzdva'nın önünde: Rus Katolikleri (ya da sessiz, Rusya'da bilge olmak isteyen herkes) tek tek şarkı söylüyor. Ve farklı bir şekilde, Cuma günü geldiğinde, neredeyse herkesin duvar halılarına ayıracak vakti olmayacak. 🙂 Üçüncüsü, yeni ruh haline önceden uyum sağlamak gerekiyor, böylece kelihiv'in başında şampanya ile ilk çalmasıyla, radyo düşüncelerinden ve daha iyi umutlardan daha azı vardı.

Çeşitli referans listeleri oluşturmanıza izin veren panodan bağımsız widget. Zavdyaki, Apple Mail zbiraє ile entegre zbiraє koristuvacha іnformatsiyu için tüm nebhіdnu tek bir yerde. DoBeDo basit bir tasarımı kabul edebilir ve temayı değiştirebilir.

Widget'ı bilmiyorum, ancak program doğrudan Gösterge Tablosundan bağlantılı. Sağda, Dasher'ın her şeyi tek bir basit işleve ataması ve kendisinin, tek bir süre sonra Gösterge Tablosunu otomatik olarak göstermesidir. Widget'lardan gelen bilgiler bayat olsa bile daha uygundur, ancak kendi başınıza Gösterge Tablosunu unutursunuz.

Apple'ın masaüstü işletim sistemleri serisindeki en önemli sürüm oldu. Mevcut OS X Mavericks'in piyasaya sürülmesiyle belirlenen platform, iOS'tan ilham alan daha net tasarımı ve daha da fazla özelliği savunan dümdüz devam ediyor.

Güncelleme olma geleneğini sürdüren bir yıl, takvim, fal, hava durumu, promosyonlar ve sosyal etkinlikler için “Bugüne Bakma” moduyla genişletilen OS X Yosemite Bilgi Merkezi. Bu işlevle arka panel, Mac App Store'dan erişilebilen widget'larla kolayca genişletilebilir. Bu noktaya kadar, perakendeciler OS X için düzinelerce mavi pencere öğesi yaydı. MacDigger, yeni Apple işletim sisteminin kök işlevinden yararlanmak için en iyi çözümleri yaydı.

harikalar listesi

Teslimatlar

Teslimatların yardımı için posta siparişini manuel olarak kontrol edebilirsiniz. Birisi için gereken tek şey programı çalıştırmak ve takip numarasını (tavsiye numarası) girmek. Aynı zamanda, herhangi bir aşırı güçlenme yolu için pratik olarak mümkün olduğunca izleme atanır. Widget, tüm büyük kurye hizmetlerinin paketlerini işleyebilir.

uçak postası

Airmail, Gmail, Google Apps, iCloud, Yahoo!, AOL ve IMAP hizmetlerini destekleyen yenilikçi bir posta istemcisidir. Deneme Saati beta testindedir ve yakın zamanda Mac App Store'dan indirilebilir. Airmail tasarımı oluşturulmadan hemen önce, perakendeciler resmi Mac twitter istemcisi ile dolduruldu.

PCalc

PCalc, Uyarı Merkezine bir widget eklemenize izin veren, Mac için akıllı bir hesap makinesidir. Poednuє sobі vyvagi zvichaynogo'da (sledovnі kolіdovnі, shvidke vykonannya z klavіatura) vvazhaє virazi olan bu hesap makinesi. Program özgün, modern bir görünüme, yeniden yapılandırılabilen bir arayüze ve farklı tasarım türlerine sahiptir. iOS sürümü mevcut.

iStat Mini

iStat Mini, Bilgi Merkezi için basit ve kullanışlı bir pencere öğesidir. Küçük bir mini ek, işlemcinin doluluğunu, operasyonel belleği ve binanın bant genişliği birikimini gerçek zamanlı olarak kontrol etmenizi sağlar. Tüm veriler, pasta grafiklerin önündeki OS panelinin önünde elle görülebilir.

para

Monity - iStat Mini sürümü iletilir. İşlemciyi, belleği, pili, disk depolama aygıtını, bilgisayarın kesintisiz çalışma saatini ve diğer sistem parametrelerini kontrol etmenizi sağlar. Widget, sistem istatistiklerini beyaz panelde görüntüler, bu da masaüstünde yerden tasarruf sağlar ve kısa ve öz ve estetik olarak hoş görünür.

fotoğraf masası

Instagram için PhotoDesk size inceleme yapma, haberleri ve güncellemeleri not alma, resim ve video çekme ve sosyal medyadan fotoğraf ve video ekleme ve çekme fırsatı verir. Ek sürükleme için içerik alabilirsiniz. Birden fazla fotoğrafı albümlere kaydetmeyi veya seçilen klasörde otomatik görüntü senkronizasyonu kurmayı seçebilirsiniz. Widget, beğeni sayısı ve yayınlanma tarihi ile birlikte fotoğraf satırına bakmanıza olanak tanır.

kronik

Chronicle'ın yardımı için vitratların ortaya çıkmasına öncülük etmek gerekir. Program harika bir yardımcı olabilir. Rahunkami için ödeme yapmayı ve ne kadar ve ne kadar ödediğinizi öğrenmeyi unutmayın. İPhone ve iPad için programın sürümüyle senkronizasyon.

yazıcılar