author | Michael Krelin <hacker@klever.net> | 2006-11-16 23:04:06 (UTC) |
---|---|---|
committer | Michael Krelin <hacker@klever.net> | 2006-11-16 23:04:06 (UTC) |
commit | a5df65b1ec3c86cba0e2f12d5f51e3cb29c99353 (patch) (unidiff) | |
tree | cd0f7c5f5506fc599c083d6632a7e74506baf6da /content | |
parent | 77bede81381ed1adbda91a119128712a3688b4bd (diff) | |
download | fireflix-a5df65b1ec3c86cba0e2f12d5f51e3cb29c99353.zip fireflix-a5df65b1ec3c86cba0e2f12d5f51e3cb29c99353.tar.gz fireflix-a5df65b1ec3c86cba0e2f12d5f51e3cb29c99353.tar.bz2 |
Building HTML for photos selection in sets browser
git-svn-id: http://svn.klever.net/kin/fireflix/trunk@231 fe716a7a-6dde-0310-88d9-d003556173a8
-rw-r--r-- | content/fireflix-panel.xul | 11 | ||||
-rw-r--r-- | content/fireflix.js | 13 |
2 files changed, 23 insertions, 1 deletions
diff --git a/content/fireflix-panel.xul b/content/fireflix-panel.xul index 62862a9..0e511c5 100644 --- a/content/fireflix-panel.xul +++ b/content/fireflix-panel.xul | |||
@@ -53,48 +53,57 @@ | |||
53 | <command id="cmd_search_prev_page" | 53 | <command id="cmd_search_prev_page" |
54 | label="&panel.search.cmd_search_prev_page.label;" | 54 | label="&panel.search.cmd_search_prev_page.label;" |
55 | oncommand="fireflix.foundphotos.on_cmd_prev(event)" disabled="true"/> | 55 | oncommand="fireflix.foundphotos.on_cmd_prev(event)" disabled="true"/> |
56 | <command id="cmd_search_next_page" | 56 | <command id="cmd_search_next_page" |
57 | label="&panel.search.cmd_search_next_page.label;" | 57 | label="&panel.search.cmd_search_next_page.label;" |
58 | oncommand="fireflix.foundphotos.on_cmd_next(event)" disabled="true"/> | 58 | oncommand="fireflix.foundphotos.on_cmd_next(event)" disabled="true"/> |
59 | </commandset> | 59 | </commandset> |
60 | 60 | ||
61 | <commandset id="cmdset_sets"> | 61 | <commandset id="cmdset_sets"> |
62 | <command id="cmd_refresh_sets" label="&panel.sets.cmd_refresh_sets;" | 62 | <command id="cmd_refresh_sets" label="&panel.sets.cmd_refresh_sets;" |
63 | oncommand="fireflix.on_refresh_sets()" /> | 63 | oncommand="fireflix.on_refresh_sets()" /> |
64 | <command id="cmd_set_props" label="&panel.sets.cmd_properties;" | 64 | <command id="cmd_set_props" label="&panel.sets.cmd_properties;" |
65 | oncommand="fireflix.on_set_props()" disabled="true" /> | 65 | oncommand="fireflix.on_set_props()" disabled="true" /> |
66 | </commandset> | 66 | </commandset> |
67 | 67 | ||
68 | <popupset> | 68 | <popupset> |
69 | <popup id="sets_menu"> | 69 | <popup id="sets_menu"> |
70 | <menuitem command="cmd_set_props"/> | 70 | <menuitem command="cmd_set_props"/> |
71 | <menuitem command="cmd_refresh_sets"/> | 71 | <menuitem command="cmd_refresh_sets"/> |
72 | <menuseparator/> | 72 | <menuseparator/> |
73 | <menu label="&panel.sets.generate_html;" id="sets_html_menu"/> | 73 | <menu label="&panel.sets.generate_html;" id="sets_html_menu"/> |
74 | </popup> | 74 | </popup> |
75 | </popupset> | 75 | </popupset> |
76 | 76 | ||
77 | <commandset id="cmdset_setphotos"> | ||
78 | </commandset> | ||
79 | |||
80 | <popupset> | ||
81 | <popup id="setphotos_menu"> | ||
82 | <menu label="&panel.setphotos.generate_html;" id="setphotos_html_menu"/> | ||
83 | </popup> | ||
84 | </popupset> | ||
85 | |||
77 | <commandset id="cmdset_uploads"> | 86 | <commandset id="cmdset_uploads"> |
78 | <command id="cmd_uploads_clear" label="&panel.uploads.clear.label;" | 87 | <command id="cmd_uploads_clear" label="&panel.uploads.clear.label;" |
79 | oncommand="fireflix.uploads.on_clear()" /> | 88 | oncommand="fireflix.uploads.on_clear()" /> |
80 | <command id="cmd_uploads_upload" label="&panel.uploads.upload.label;" | 89 | <command id="cmd_uploads_upload" label="&panel.uploads.upload.label;" |
81 | oncommand="fireflix.uploads.on_upload()" /> | 90 | oncommand="fireflix.uploads.on_upload()" /> |
82 | <command id="cmd_uploads_remove" label="&panel.uploads.remove.label;" | 91 | <command id="cmd_uploads_remove" label="&panel.uploads.remove.label;" |
83 | oncommand="fireflix.uploads.on_remove()" /> | 92 | oncommand="fireflix.uploads.on_remove()" /> |
84 | <command id="cmd_uploads_add" label="&panel.uploads.add.label;" | 93 | <command id="cmd_uploads_add" label="&panel.uploads.add.label;" |
85 | oncommand="fireflix.uploads.on_add()" /> | 94 | oncommand="fireflix.uploads.on_add()" /> |
86 | </commandset> | 95 | </commandset> |
87 | 96 | ||
88 | <popupset> | 97 | <popupset> |
89 | <popup id="uploads_menu"> | 98 | <popup id="uploads_menu"> |
90 | <menuitem command="cmd_uploads_add"/> | 99 | <menuitem command="cmd_uploads_add"/> |
91 | <menuitem command="cmd_uploads_clear"/> | 100 | <menuitem command="cmd_uploads_clear"/> |
92 | <menuitem command="cmd_uploads_remove"/> | 101 | <menuitem command="cmd_uploads_remove"/> |
93 | <menuseparator/> | 102 | <menuseparator/> |
94 | <menuitem command="cmd_uploads_upload"/> | 103 | <menuitem command="cmd_uploads_upload"/> |
95 | <menuseparator/> | 104 | <menuseparator/> |
96 | <menu label="&panel.uploads.generate_html;" id="uploads_html_menu"/> | 105 | <menu label="&panel.uploads.generate_html;" id="uploads_html_menu"/> |
97 | </popup> | 106 | </popup> |
98 | </popupset> | 107 | </popupset> |
99 | 108 | ||
100 | <vbox class="wholething" flex="1"> | 109 | <vbox class="wholething" flex="1"> |
@@ -178,49 +187,49 @@ | |||
178 | </vbox> | 187 | </vbox> |
179 | </tabpanel> | 188 | </tabpanel> |
180 | 189 | ||
181 | <tabpanel id="tabpanel_sets" flex="1" | 190 | <tabpanel id="tabpanel_sets" flex="1" |
182 | onkeypress="if(event.keyCode==event.DOM_VK_RETURN) | 191 | onkeypress="if(event.keyCode==event.DOM_VK_RETURN) |
183 | document.getElementById('setphotos').focus()"> | 192 | document.getElementById('setphotos').focus()"> |
184 | <vbox flex="1"> | 193 | <vbox flex="1"> |
185 | <tree id="setslist" rows="2" onselect="fireflix.photosets.on_select()" | 194 | <tree id="setslist" rows="2" onselect="fireflix.photosets.on_select()" |
186 | flex="1" context="sets_menu" | 195 | flex="1" context="sets_menu" |
187 | ondblclick="fireflix.photosets.on_cmd_open_in_flickr(event)" | 196 | ondblclick="fireflix.photosets.on_cmd_open_in_flickr(event)" |
188 | > | 197 | > |
189 | <treecols> | 198 | <treecols> |
190 | <treecol id="sl_name" label="&panel.sets.name.label;" flex="4" crop="end" align="start" tooltiptext="&panel.sets.name.tip;"/> | 199 | <treecol id="sl_name" label="&panel.sets.name.label;" flex="4" crop="end" align="start" tooltiptext="&panel.sets.name.tip;"/> |
191 | <splitter class="tree-splitter" /> | 200 | <splitter class="tree-splitter" /> |
192 | <treecol id="sl_photos" label="&panel.sets.photos.label;" flex="1" align="end" tooltiptext="&panel.sets.photos.tip;" /> | 201 | <treecol id="sl_photos" label="&panel.sets.photos.label;" flex="1" align="end" tooltiptext="&panel.sets.photos.tip;" /> |
193 | </treecols> | 202 | </treecols> |
194 | <treechildren/> | 203 | <treechildren/> |
195 | </tree> | 204 | </tree> |
196 | <hbox> | 205 | <hbox> |
197 | <button command="cmd_refresh_sets" /> | 206 | <button command="cmd_refresh_sets" /> |
198 | <button command="cmd_set_props" /> | 207 | <button command="cmd_set_props" /> |
199 | </hbox> | 208 | </hbox> |
200 | <tree id="setphotos" rows="2" onselect="fireflix.photoset.on_select()" | 209 | <tree id="setphotos" rows="2" onselect="fireflix.photoset.on_select()" |
201 | flex="1" ondblclick="fireflix.photoset.on_cmd_open(event)" | 210 | flex="1" ondblclick="fireflix.photoset.on_cmd_open(event)" |
202 | onkeypress="if(event.keyCode==event.DOM_VK_RETURN) fireflix.photoset.on_cmd_open(event)"> | 211 | onkeypress="if(event.keyCode==event.DOM_VK_RETURN) fireflix.photoset.on_cmd_open(event)" context="setphotos_menu"> |
203 | <treecols> | 212 | <treecols> |
204 | <treecol id="sp_title" label="&panel.setphotos.title.label;" flex="1" crop="end" align="start" tooltiptext="&panel.setphotos.title.tip;" /> | 213 | <treecol id="sp_title" label="&panel.setphotos.title.label;" flex="1" crop="end" align="start" tooltiptext="&panel.setphotos.title.tip;" /> |
205 | <splitter class="tree-splitter" /> | 214 | <splitter class="tree-splitter" /> |
206 | <treecol id="sp_taken" label="&panel.setphotos.taken.label;" crop="end" align="start" tooltiptext="&panel.setphotos.taken.tip;" hidden="true" /> | 215 | <treecol id="sp_taken" label="&panel.setphotos.taken.label;" crop="end" align="start" tooltiptext="&panel.setphotos.taken.tip;" hidden="true" /> |
207 | <treecol id="sp_upload" label="&panel.setphotos.upload.label;" crop="end" align="start" tooltiptext="&panel.setphotos.upload.tip;" hidden="true" /> | 216 | <treecol id="sp_upload" label="&panel.setphotos.upload.label;" crop="end" align="start" tooltiptext="&panel.setphotos.upload.tip;" hidden="true" /> |
208 | </treecols> | 217 | </treecols> |
209 | <treechildren/> | 218 | <treechildren/> |
210 | </tree> | 219 | </tree> |
211 | <groupbox id="set_photo_props" orient="horizontal" hidden="true"> | 220 | <groupbox id="set_photo_props" orient="horizontal" hidden="true"> |
212 | <vbox width="100" pack="center"> | 221 | <vbox width="100" pack="center"> |
213 | <hbox pack="center"> | 222 | <hbox pack="center"> |
214 | <image id="set_photo" | 223 | <image id="set_photo" |
215 | ondblclick="fireflix.photoset.on_cmd_open(event)" /> | 224 | ondblclick="fireflix.photoset.on_cmd_open(event)" /> |
216 | </hbox> | 225 | </hbox> |
217 | </vbox> | 226 | </vbox> |
218 | <spacer flex="1"/> | 227 | <spacer flex="1"/> |
219 | </groupbox> | 228 | </groupbox> |
220 | </vbox> | 229 | </vbox> |
221 | </tabpanel> | 230 | </tabpanel> |
222 | 231 | ||
223 | <tabpanel id="tabpanel_tags"> | 232 | <tabpanel id="tabpanel_tags"> |
224 | <listbox id="tagslist" rows="8" flex="1"> | 233 | <listbox id="tagslist" rows="8" flex="1"> |
225 | <listhead> | 234 | <listhead> |
226 | <listheader label="&panel.tagslist.tag.label;"/> | 235 | <listheader label="&panel.tagslist.tag.label;"/> |
diff --git a/content/fireflix.js b/content/fireflix.js index 328e9e2..995ec5c 100644 --- a/content/fireflix.js +++ b/content/fireflix.js | |||
@@ -644,48 +644,57 @@ var fireflix = { | |||
644 | photo_ids: phids.join(',') | 644 | photo_ids: phids.join(',') |
645 | }, function() { }, function(x,s,c,m) { /* flickr.photosets.editPhotos */ | 645 | }, function() { }, function(x,s,c,m) { /* flickr.photosets.editPhotos */ |
646 | _this.flickr_failure(x,s,c,m); | 646 | _this.flickr_failure(x,s,c,m); |
647 | } | 647 | } |
648 | ); | 648 | ); |
649 | } | 649 | } |
650 | }, function(x,s,c,m) { /* flickr.photosets.getPhotos */ | 650 | }, function(x,s,c,m) { /* flickr.photosets.getPhotos */ |
651 | _this.flickr_failure(x,s,c,m); | 651 | _this.flickr_failure(x,s,c,m); |
652 | } | 652 | } |
653 | ); | 653 | ); |
654 | }, function(x,s,c,m) { /* flickr.photosets.editMeta */ | 654 | }, function(x,s,c,m) { /* flickr.photosets.editMeta */ |
655 | _this.flickr_failure(x,s,c,m); | 655 | _this.flickr_failure(x,s,c,m); |
656 | } | 656 | } |
657 | ); | 657 | ); |
658 | } | 658 | } |
659 | }, | 659 | }, |
660 | on_refresh_sets: function() { | 660 | on_refresh_sets: function() { |
661 | this.refresh_sets(); | 661 | this.refresh_sets(); |
662 | }, | 662 | }, |
663 | on_cmd_sets_html: function(csfx,ev) { | 663 | on_cmd_sets_html: function(csfx,ev) { |
664 | var uti = csfx.charAt(0); var utl = csfx.charAt(1); | 664 | var uti = csfx.charAt(0); var utl = csfx.charAt(1); |
665 | var rv = this.build_html(this.photoset.photos,uti,utl); | 665 | var rv = this.build_html(this.photoset.photos,uti,utl); |
666 | this.popup_content(rv); | 666 | this.popup_content(rv); |
667 | }, | 667 | }, |
668 | on_cmd_setphotos_html: function(csfx,ev) { | ||
669 | var uti = csfx.charAt(0); var utl = csfx.charAt(1); | ||
670 | var rv = ''; | ||
671 | for(var p in this.photoset.photos) { | ||
672 | if(this.photoset.selection.isSelected(p)) | ||
673 | rv += this.photo_html(this.photoset.photos[p],uti,utl)+'\n'; | ||
674 | } | ||
675 | this.popup_content(rv); | ||
676 | }, | ||
668 | 677 | ||
669 | on_cmd_uploads_html: function(csfx,ev) { | 678 | on_cmd_uploads_html: function(csfx,ev) { |
670 | var uti = csfx.charAt(0); var utl = csfx.charAt(1); | 679 | var uti = csfx.charAt(0); var utl = csfx.charAt(1); |
671 | var pids = new Array(); | 680 | var pids = new Array(); |
672 | for(var f in this.uploads.files) { | 681 | for(var f in this.uploads.files) { |
673 | if(this.uploads.selection.isSelected(f)) | 682 | if(this.uploads.selection.isSelected(f)) |
674 | if(this.uploads.files[f].photoid) | 683 | if(this.uploads.files[f].photoid) |
675 | pids.push(this.uploads.files[f].photoid); | 684 | pids.push(this.uploads.files[f].photoid); |
676 | } | 685 | } |
677 | var pp = this.uploads.rowCount*2; if(pp>500) pp = 500; | 686 | var pp = this.uploads.rowCount*2; if(pp>500) pp = 500; |
678 | var _this = this; | 687 | var _this = this; |
679 | this.flickr.api_call( | 688 | this.flickr.api_call( |
680 | { | 689 | { |
681 | method: 'flickr.photos.search', | 690 | method: 'flickr.photos.search', |
682 | auth_token: 'default', | 691 | auth_token: 'default', |
683 | extras: 'original_format', | 692 | extras: 'original_format', |
684 | user_id: 'me', | 693 | user_id: 'me', |
685 | per_page: pp | 694 | per_page: pp |
686 | }, | 695 | }, |
687 | function(xr) { | 696 | function(xr) { |
688 | var x = xr.responseXML; | 697 | var x = xr.responseXML; |
689 | var rv = ''; | 698 | var rv = ''; |
690 | for(var pn in pids) { | 699 | for(var pn in pids) { |
691 | var p = pids[pn]; | 700 | var p = pids[pn]; |
@@ -902,48 +911,52 @@ var fireflix = { | |||
902 | window.openDialog( | 911 | window.openDialog( |
903 | "chrome://fireflix/content/generated-content.xul", | 912 | "chrome://fireflix/content/generated-content.xul", |
904 | null, "dialog,chrome", this, s ); | 913 | null, "dialog,chrome", this, s ); |
905 | }, | 914 | }, |
906 | copy_to_clipboard: function(s) { | 915 | copy_to_clipboard: function(s) { |
907 | var ch = Components.classes["@mozilla.org/widget/clipboardhelper;1"] | 916 | var ch = Components.classes["@mozilla.org/widget/clipboardhelper;1"] |
908 | .getService(Components.interfaces.nsIClipboardHelper); | 917 | .getService(Components.interfaces.nsIClipboardHelper); |
909 | ch.copyString(s); | 918 | ch.copyString(s); |
910 | }, | 919 | }, |
911 | openTab: function(l) { | 920 | openTab: function(l) { |
912 | var wm = Components.classes['@mozilla.org/appshell/window-mediator;1'].getService( | 921 | var wm = Components.classes['@mozilla.org/appshell/window-mediator;1'].getService( |
913 | Components.interfaces.nsIWindowMediator ); | 922 | Components.interfaces.nsIWindowMediator ); |
914 | var bw = wm.getMostRecentWindow('navigator:browser'); | 923 | var bw = wm.getMostRecentWindow('navigator:browser'); |
915 | var b = bw.getBrowser(); | 924 | var b = bw.getBrowser(); |
916 | var t = b.addTab(l); | 925 | var t = b.addTab(l); |
917 | b.selectedTab = t; | 926 | b.selectedTab = t; |
918 | }, | 927 | }, |
919 | 928 | ||
920 | build_menus: function() { | 929 | build_menus: function() { |
921 | this.append_html_menu( | 930 | this.append_html_menu( |
922 | document.getElementById('sets_html_menu'), | 931 | document.getElementById('sets_html_menu'), |
923 | 'stm_','m_bop','cmdset_sets','cmd_sets_html' | 932 | 'stm_','m_bop','cmdset_sets','cmd_sets_html' |
924 | ); | 933 | ); |
925 | this.append_html_menu( | 934 | this.append_html_menu( |
935 | document.getElementById('setphotos_html_menu'), | ||
936 | 'stm_','m_bop','cmdset_setphotos','cmd_setphotos_html' | ||
937 | ); | ||
938 | this.append_html_menu( | ||
926 | document.getElementById('uploads_html_menu'), | 939 | document.getElementById('uploads_html_menu'), |
927 | 'stm_','m_bop','cmdset_uploads','cmd_uploads_html' | 940 | 'stm_','m_bop','cmdset_uploads','cmd_uploads_html' |
928 | ); | 941 | ); |
929 | return; | 942 | return; |
930 | }, | 943 | }, |
931 | append_html_menu: function(m,imgt,lnkt,csid,cpfx) { | 944 | append_html_menu: function(m,imgt,lnkt,csid,cpfx) { |
932 | var mp = m.appendChild(document.createElement('menupopup')); | 945 | var mp = m.appendChild(document.createElement('menupopup')); |
933 | var t; | 946 | var t; |
934 | t=mp.appendChild(document.createElement('menuitem')); | 947 | t=mp.appendChild(document.createElement('menuitem')); |
935 | t.setAttribute('label',this.loc_strings.getString('menutitle_Images')); | 948 | t.setAttribute('label',this.loc_strings.getString('menutitle_Images')); |
936 | t.setAttribute('class','menuhead');t.setAttribute('disabled','true'); | 949 | t.setAttribute('class','menuhead');t.setAttribute('disabled','true'); |
937 | mp.appendChild(document.createElement('menuseparator')); | 950 | mp.appendChild(document.createElement('menuseparator')); |
938 | var cs = document.getElementById(csid); | 951 | var cs = document.getElementById(csid); |
939 | for(var iti=0;iti<imgt.length;++iti) { | 952 | for(var iti=0;iti<imgt.length;++iti) { |
940 | t = mp.appendChild(document.createElement('menu')); | 953 | t = mp.appendChild(document.createElement('menu')); |
941 | t.setAttribute('label',this.loc_strings.getString('urltype_'+imgt.charAt(iti))); | 954 | t.setAttribute('label',this.loc_strings.getString('urltype_'+imgt.charAt(iti))); |
942 | var smp = t.appendChild(document.createElement('menupopup')); | 955 | var smp = t.appendChild(document.createElement('menupopup')); |
943 | t=smp.appendChild(document.createElement('menuitem')); | 956 | t=smp.appendChild(document.createElement('menuitem')); |
944 | t.setAttribute('label',this.loc_strings.getString('menutitle_Links')); | 957 | t.setAttribute('label',this.loc_strings.getString('menutitle_Links')); |
945 | t.setAttribute('class','menuhead');t.setAttribute('disabled','true'); | 958 | t.setAttribute('class','menuhead');t.setAttribute('disabled','true'); |
946 | smp.appendChild(document.createElement('menuseparator')); | 959 | smp.appendChild(document.createElement('menuseparator')); |
947 | for(var lti=0;lti<lnkt.length;++lti) { | 960 | for(var lti=0;lti<lnkt.length;++lti) { |
948 | var csfx = imgt.charAt(iti)+lnkt.charAt(lti); | 961 | var csfx = imgt.charAt(iti)+lnkt.charAt(lti); |
949 | t=smp.appendChild(document.createElement('menuitem')); | 962 | t=smp.appendChild(document.createElement('menuitem')); |