From 8590ddce31f5e11c50a9ddd00afbe8dcfc176c1b Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 27 Jun 2012 19:40:50 +0530 Subject: [PATCH] iTunes glue code --- src/calibre/devices/apple/itunes.py | 280 ++++++++++++++++++++++++++++ 1 file changed, 280 insertions(+) create mode 100644 src/calibre/devices/apple/itunes.py diff --git a/src/calibre/devices/apple/itunes.py b/src/calibre/devices/apple/itunes.py new file mode 100644 index 0000000000..e80bc4c81f --- /dev/null +++ b/src/calibre/devices/apple/itunes.py @@ -0,0 +1,280 @@ +version = 1.1 +path = '/Applications/iTunes.app' + +classes = \ +[('print_settings', 'pset'), + ('application', 'capp'), + ('artwork', 'cArt'), + ('audio_CD_playlist', 'cCDP'), + ('audio_CD_track', 'cCDT'), + ('browser_window', 'cBrW'), + ('device_playlist', 'cDvP'), + ('device_track', 'cDvT'), + ('encoder', 'cEnc'), + ('EQ_preset', 'cEQP'), + ('EQ_window', 'cEQW'), + ('file_track', 'cFlT'), + ('folder_playlist', 'cFoP'), + ('item', 'cobj'), + ('library_playlist', 'cLiP'), + ('playlist', 'cPly'), + ('playlist_window', 'cPlW'), + ('radio_tuner_playlist', 'cRTP'), + ('shared_track', 'cShT'), + ('source', 'cSrc'), + ('track', 'cTrk'), + ('URL_track', 'cURT'), + ('user_playlist', 'cUsP'), + ('visual', 'cVis'), + ('window', 'cwin')] + +enums = \ +[('track_listing', 'kTrk'), + ('album_listing', 'kAlb'), + ('cd_insert', 'kCDi'), + ('standard', 'lwst'), + ('detailed', 'lwdt'), + ('stopped', 'kPSS'), + ('playing', 'kPSP'), + ('paused', 'kPSp'), + ('fast_forwarding', 'kPSF'), + ('rewinding', 'kPSR'), + ('off', 'kRpO'), + ('one', 'kRp1'), + ('all', 'kAll'), + ('small', 'kVSS'), + ('medium', 'kVSM'), + ('large', 'kVSL'), + ('library', 'kLib'), + ('iPod', 'kPod'), + ('audio_CD', 'kACD'), + ('MP3_CD', 'kMCD'), + ('device', 'kDev'), + ('radio_tuner', 'kTun'), + ('shared_library', 'kShd'), + ('unknown', 'kUnk'), + ('albums', 'kSrL'), + ('artists', 'kSrR'), + ('composers', 'kSrC'), + ('displayed', 'kSrV'), + ('songs', 'kSrS'), + ('none', 'kNon'), + ('Books', 'kSpA'), + ('folder', 'kSpF'), + ('Genius', 'kSpG'), + ('iTunes_U', 'kSpU'), + ('Library', 'kSpL'), + ('Movies', 'kSpI'), + ('Music', 'kSpZ'), + ('Party_Shuffle', 'kSpS'), + ('Podcasts', 'kSpP'), + ('Purchased_Music', 'kSpM'), + ('TV_Shows', 'kSpT'), + ('movie', 'kVdM'), + ('music_video', 'kVdV'), + ('TV_show', 'kVdT'), + ('user', 'kRtU'), + ('computed', 'kRtC')] + +properties = \ +[('copies', 'lwcp'), + ('collating', 'lwcl'), + ('starting_page', 'lwfp'), + ('ending_page', 'lwlp'), + ('pages_across', 'lwla'), + ('pages_down', 'lwld'), + ('error_handling', 'lweh'), + ('requested_print_time', 'lwqt'), + ('printer_features', 'lwpf'), + ('fax_number', 'faxn'), + ('target_printer', 'trpr'), + ('current_encoder', 'pEnc'), + ('current_EQ_preset', 'pEQP'), + ('current_playlist', 'pPla'), + ('current_stream_title', 'pStT'), + ('current_stream_URL', 'pStU'), + ('current_track', 'pTrk'), + ('current_visual', 'pVis'), + ('EQ_enabled', 'pEQ '), + ('fixed_indexing', 'pFix'), + ('frontmost', 'pisf'), + ('full_screen', 'pFSc'), + ('name', 'pnam'), + ('mute', 'pMut'), + ('player_position', 'pPos'), + ('player_state', 'pPlS'), + ('selection', 'sele'), + ('sound_volume', 'pVol'), + ('version', 'vers'), + ('visuals_enabled', 'pVsE'), + ('visual_size', 'pVSz'), + ('data', 'pPCT'), + ('description', 'pDes'), + ('downloaded', 'pDlA'), + ('format', 'pFmt'), + ('kind', 'pKnd'), + ('raw_data', 'pRaw'), + ('artist', 'pArt'), + ('compilation', 'pAnt'), + ('composer', 'pCmp'), + ('disc_count', 'pDsC'), + ('disc_number', 'pDsN'), + ('genre', 'pGen'), + ('year', 'pYr '), + ('location', 'pLoc'), + ('minimized', 'pMin'), + ('view', 'pPly'), + ('band_1', 'pEQ1'), + ('band_2', 'pEQ2'), + ('band_3', 'pEQ3'), + ('band_4', 'pEQ4'), + ('band_5', 'pEQ5'), + ('band_6', 'pEQ6'), + ('band_7', 'pEQ7'), + ('band_8', 'pEQ8'), + ('band_9', 'pEQ9'), + ('band_10', 'pEQ0'), + ('modifiable', 'pMod'), + ('preamp', 'pEQA'), + ('update_tracks', 'pUTC'), + ('container', 'ctnr'), + ('id', 'ID '), + ('index', 'pidx'), + ('persistent_ID', 'pPIS'), + ('duration', 'pDur'), + ('parent', 'pPlP'), + ('shuffle', 'pShf'), + ('size', 'pSiz'), + ('song_repeat', 'pRpt'), + ('special_kind', 'pSpK'), + ('time', 'pTim'), + ('visible', 'pvis'), + ('capacity', 'capa'), + ('free_space', 'frsp'), + ('album', 'pAlb'), + ('album_artist', 'pAlA'), + ('album_rating', 'pAlR'), + ('album_rating_kind', 'pARk'), + ('bit_rate', 'pBRt'), + ('bookmark', 'pBkt'), + ('bookmarkable', 'pBkm'), + ('bpm', 'pBPM'), + ('category', 'pCat'), + ('comment', 'pCmt'), + ('database_ID', 'pDID'), + ('date_added', 'pAdd'), + ('enabled', 'enbl'), + ('episode_ID', 'pEpD'), + ('episode_number', 'pEpN'), + ('EQ', 'pEQp'), + ('finish', 'pStp'), + ('gapless', 'pGpl'), + ('grouping', 'pGrp'), + ('long_description', 'pLds'), + ('lyrics', 'pLyr'), + ('modification_date', 'asmo'), + ('played_count', 'pPlC'), + ('played_date', 'pPlD'), + ('podcast', 'pTPc'), + ('rating', 'pRte'), + ('rating_kind', 'pRtk'), + ('release_date', 'pRlD'), + ('sample_rate', 'pSRt'), + ('season_number', 'pSeN'), + ('shufflable', 'pSfa'), + ('skipped_count', 'pSkC'), + ('skipped_date', 'pSkD'), + ('show', 'pShw'), + ('sort_album', 'pSAl'), + ('sort_artist', 'pSAr'), + ('sort_album_artist', 'pSAA'), + ('sort_name', 'pSNm'), + ('sort_composer', 'pSCm'), + ('sort_show', 'pSSN'), + ('start', 'pStr'), + ('track_count', 'pTrC'), + ('track_number', 'pTrN'), + ('unplayed', 'pUnp'), + ('video_kind', 'pVdK'), + ('volume_adjustment', 'pAdj'), + ('address', 'pURL'), + ('shared', 'pShr'), + ('smart', 'pSmt'), + ('bounds', 'pbnd'), + ('closeable', 'hclb'), + ('collapseable', 'pWSh'), + ('collapsed', 'wshd'), + ('position', 'ppos'), + ('resizable', 'prsz'), + ('zoomable', 'iszm'), + ('zoomed', 'pzum')] + +elements = \ +[('artworks', 'cArt'), + ('audio_CD_playlists', 'cCDP'), + ('audio_CD_tracks', 'cCDT'), + ('browser_windows', 'cBrW'), + ('device_playlists', 'cDvP'), + ('device_tracks', 'cDvT'), + ('encoders', 'cEnc'), + ('EQ_presets', 'cEQP'), + ('EQ_windows', 'cEQW'), + ('file_tracks', 'cFlT'), + ('folder_playlists', 'cFoP'), + ('items', 'cobj'), + ('library_playlists', 'cLiP'), + ('playlists', 'cPly'), + ('playlist_windows', 'cPlW'), + ('radio_tuner_playlists', 'cRTP'), + ('shared_tracks', 'cShT'), + ('sources', 'cSrc'), + ('tracks', 'cTrk'), + ('URL_tracks', 'cURT'), + ('user_playlists', 'cUsP'), + ('visuals', 'cVis'), + ('windows', 'cwin'), + ('application', 'capp'), + ('print_settings', 'pset')] + +commands = \ +[('set', 'coresetd', [('to', 'data')]), + ('exists', 'coredoex', []), + ('move', 'coremove', [('to', 'insh')]), + ('subscribe', 'hookpSub', []), + ('playpause', 'hookPlPs', []), + ('download', 'hookDwnl', []), + ('close', 'coreclos', []), + ('open', 'aevtodoc', []), + ('open_location', 'GURLGURL', []), + ('quit', 'aevtquit', []), + ('pause', 'hookPaus', []), + ('make', + 'corecrel', + [('new', 'kocl'), ('at', 'insh'), ('with_properties', 'prdt')]), + ('duplicate', 'coreclon', [('to', 'insh')]), + ('print_', + 'aevtpdoc', + [('print_dialog', 'pdlg'), + ('with_properties', 'prdt'), + ('kind', 'pKnd'), + ('theme', 'pThm')]), + ('add', 'hookAdd ', [('to', 'insh')]), + ('rewind', 'hookRwnd', []), + ('play', 'hookPlay', [('once', 'POne')]), + ('run', 'aevtoapp', []), + ('resume', 'hookResu', []), + ('updatePodcast', 'hookUpd1', []), + ('next_track', 'hookNext', []), + ('stop', 'hookStop', []), + ('search', 'hookSrch', [('for_', 'pTrm'), ('only', 'pAre')]), + ('updateAllPodcasts', 'hookUpdp', []), + ('update', 'hookUpdt', []), + ('previous_track', 'hookPrev', []), + ('fast_forward', 'hookFast', []), + ('count', 'corecnte', [('each', 'kocl')]), + ('reveal', 'hookRevl', []), + ('convert', 'hookConv', []), + ('eject', 'hookEjct', []), + ('back_track', 'hookBack', []), + ('refresh', 'hookRfrs', []), + ('delete', 'coredelo', [])]