summaryrefslogtreecommitdiffabout
authorMichael Krelin <hacker@klever.net>2006-11-16 22:33:43 (UTC)
committer Michael Krelin <hacker@klever.net>2006-11-16 22:33:43 (UTC)
commit77bede81381ed1adbda91a119128712a3688b4bd (patch) (unidiff)
treeb4021f71605bf4cee254684377759873c7967375
parentd98dfeb112f9db06c5e642e14ee9bbda4d90d0cb (diff)
downloadfireflix-77bede81381ed1adbda91a119128712a3688b4bd.zip
fireflix-77bede81381ed1adbda91a119128712a3688b4bd.tar.gz
fireflix-77bede81381ed1adbda91a119128712a3688b4bd.tar.bz2
hiding photo properties completely in photoset browser when no photo selected
git-svn-id: http://svn.klever.net/kin/fireflix/trunk@230 fe716a7a-6dde-0310-88d9-d003556173a8
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--NEWS.xml2
-rw-r--r--content/fireflix-panel.xul4
-rw-r--r--content/fireflix.js6
3 files changed, 7 insertions, 5 deletions
diff --git a/NEWS.xml b/NEWS.xml
index b8f1cf4..6d17c53 100644
--- a/NEWS.xml
+++ b/NEWS.xml
@@ -1,30 +1,32 @@
1<?xml version="1.0" encoding="us-ascii"?> 1<?xml version="1.0" encoding="us-ascii"?>
2<news> 2<news>
3 <version version="0.0.5"> 3 <version version="0.0.5">
4 <ni>Added toolbar button</ni> 4 <ni>Added toolbar button</ni>
5 <ni>Enter or double click on photo in set now opens photo in flickr</ni> 5 <ni>Enter or double click on photo in set now opens photo in flickr</ni>
6 <ni>Double click on photoset opens photoset in flickr</ni> 6 <ni>Double click on photoset opens photoset in flickr</ni>
7 <ni>Hiding completely photo properties in sets browser when no photo
8 selected</ni>
7 </version> 9 </version>
8 <version version="0.0.4" date="November 13th, 2006"> 10 <version version="0.0.4" date="November 13th, 2006">
9 <ni>Added button to remove linebreaks from generated HTML</ni> 11 <ni>Added button to remove linebreaks from generated HTML</ni>
10 <ni>Added the word 'sidebar' to the extension name so that you don't have to look hard for it</ni> 12 <ni>Added the word 'sidebar' to the extension name so that you don't have to look hard for it</ni>
11 <ni>UI polishing, including making it more boring</ni> 13 <ni>UI polishing, including making it more boring</ni>
12 <ni>code cosmetics</ni> 14 <ni>code cosmetics</ni>
13 </version> 15 </version>
14 <version version="0.0.3" date="November 6th, 2006"> 16 <version version="0.0.3" date="November 6th, 2006">
15 <ni>Firefox 2.0 compatibility</ni> 17 <ni>Firefox 2.0 compatibility</ni>
16 </version> 18 </version>
17 <version version="0.0.2" date="October 17th, 2006"> 19 <version version="0.0.2" date="October 17th, 2006">
18 <ni>Added brief help file</ni> 20 <ni>Added brief help file</ni>
19 <ni>Fixed HTML generation code</ni> 21 <ni>Fixed HTML generation code</ni>
20 <ni>Fixed a mistyped flickr url so that the 'Flickr' button works now</ni> 22 <ni>Fixed a mistyped flickr url so that the 'Flickr' button works now</ni>
21 </version> 23 </version>
22 <version version="0.0.1" date="October 3rd, 2006"> 24 <version version="0.0.1" date="October 3rd, 2006">
23 <ni>Added ability to paginate through search results</ni> 25 <ni>Added ability to paginate through search results</ni>
24 <ni>Fixed packaging bug that omitted packaging license dialog</ni> 26 <ni>Fixed packaging bug that omitted packaging license dialog</ni>
25 <ni>A lot of code cleanup and UI polishing</ni> 27 <ni>A lot of code cleanup and UI polishing</ni>
26 </version> 28 </version>
27 <version version="0.0" date="September 26th, 2006"> 29 <version version="0.0" date="September 26th, 2006">
28 <ni>Initial release</ni> 30 <ni>Initial release</ni>
29 </version> 31 </version>
30</news> 32</news>
diff --git a/content/fireflix-panel.xul b/content/fireflix-panel.xul
index af92d22..62862a9 100644
--- a/content/fireflix-panel.xul
+++ b/content/fireflix-panel.xul
@@ -187,52 +187,52 @@
187 ondblclick="fireflix.photosets.on_cmd_open_in_flickr(event)" 187 ondblclick="fireflix.photosets.on_cmd_open_in_flickr(event)"
188 > 188 >
189 <treecols> 189 <treecols>
190 <treecol id="sl_name" label="&panel.sets.name.label;" flex="4" crop="end" align="start" tooltiptext="&panel.sets.name.tip;"/> 190 <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" /> 191 <splitter class="tree-splitter" />
192 <treecol id="sl_photos" label="&panel.sets.photos.label;" flex="1" align="end" tooltiptext="&panel.sets.photos.tip;" /> 192 <treecol id="sl_photos" label="&panel.sets.photos.label;" flex="1" align="end" tooltiptext="&panel.sets.photos.tip;" />
193 </treecols> 193 </treecols>
194 <treechildren/> 194 <treechildren/>
195 </tree> 195 </tree>
196 <hbox> 196 <hbox>
197 <button command="cmd_refresh_sets" /> 197 <button command="cmd_refresh_sets" />
198 <button command="cmd_set_props" /> 198 <button command="cmd_set_props" />
199 </hbox> 199 </hbox>
200 <tree id="setphotos" rows="2" onselect="fireflix.photoset.on_select()" 200 <tree id="setphotos" rows="2" onselect="fireflix.photoset.on_select()"
201 flex="1" ondblclick="fireflix.photoset.on_cmd_open(event)" 201 flex="1" ondblclick="fireflix.photoset.on_cmd_open(event)"
202 onkeypress="if(event.keyCode==event.DOM_VK_RETURN) fireflix.photoset.on_cmd_open(event)"> 202 onkeypress="if(event.keyCode==event.DOM_VK_RETURN) fireflix.photoset.on_cmd_open(event)">
203 <treecols> 203 <treecols>
204 <treecol id="sp_title" label="&panel.setphotos.title.label;" flex="1" crop="end" align="start" tooltiptext="&panel.setphotos.title.tip;" /> 204 <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" /> 205 <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" /> 206 <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" /> 207 <treecol id="sp_upload" label="&panel.setphotos.upload.label;" crop="end" align="start" tooltiptext="&panel.setphotos.upload.tip;" hidden="true" />
208 </treecols> 208 </treecols>
209 <treechildren/> 209 <treechildren/>
210 </tree> 210 </tree>
211 <groupbox id="set_photo_props" orient="horizontal"> 211 <groupbox id="set_photo_props" orient="horizontal" hidden="true">
212 <vbox width="100" pack="center"> 212 <vbox width="100" pack="center">
213 <hbox pack="center"> 213 <hbox pack="center">
214 <image id="set_photo" hidden="true" 214 <image id="set_photo"
215 ondblclick="fireflix.photoset.on_cmd_open(event)" /> 215 ondblclick="fireflix.photoset.on_cmd_open(event)" />
216 </hbox> 216 </hbox>
217 </vbox> 217 </vbox>
218 <spacer flex="1"/> 218 <spacer flex="1"/>
219 </groupbox> 219 </groupbox>
220 </vbox> 220 </vbox>
221 </tabpanel> 221 </tabpanel>
222 222
223 <tabpanel id="tabpanel_tags"> 223 <tabpanel id="tabpanel_tags">
224 <listbox id="tagslist" rows="8" flex="1"> 224 <listbox id="tagslist" rows="8" flex="1">
225 <listhead> 225 <listhead>
226 <listheader label="&panel.tagslist.tag.label;"/> 226 <listheader label="&panel.tagslist.tag.label;"/>
227 </listhead> 227 </listhead>
228 <listcols> 228 <listcols>
229 <listcol flex="1"/> 229 <listcol flex="1"/>
230 </listcols> 230 </listcols>
231 </listbox> 231 </listbox>
232 </tabpanel> 232 </tabpanel>
233 233
234 <tabpanel id="tabpanel_upload"> 234 <tabpanel id="tabpanel_upload">
235 <vbox flex="1"> 235 <vbox flex="1">
236 <tree id="uploadlist" rows="2" flex="1" 236 <tree id="uploadlist" rows="2" flex="1"
237 onselect="fireflix.uploads.selectionChanged()" 237 onselect="fireflix.uploads.selectionChanged()"
238 context="uploads_menu"> 238 context="uploads_menu">
diff --git a/content/fireflix.js b/content/fireflix.js
index 48053c5..328e9e2 100644
--- a/content/fireflix.js
+++ b/content/fireflix.js
@@ -72,49 +72,49 @@ var fireflix = {
72 _this.flickr.user.fullname+' ['+_this.flickr.user.username+']'; 72 _this.flickr.user.fullname+' ['+_this.flickr.user.username+']';
73 }, function(x,s,c,m) { 73 }, function(x,s,c,m) {
74 _this.set_auth_state(_this.flickr.token,false); /* XXX: no reset token? */ 74 _this.set_auth_state(_this.flickr.token,false); /* XXX: no reset token? */
75 _this.flickr_failure(x,s,c,m); 75 _this.flickr_failure(x,s,c,m);
76 } 76 }
77 ); 77 );
78 }, 78 },
79 on_cmd_auth_unauth: function() { 79 on_cmd_auth_unauth: function() {
80 this.flickr.reset_token(); 80 this.flickr.reset_token();
81 this.set_auth_state(false,false); 81 this.set_auth_state(false,false);
82 }, 82 },
83 83
84 refresh_sets: function() { this.photosets.refresh_sets(); }, 84 refresh_sets: function() { this.photosets.refresh_sets(); },
85 refresh_stuff: function() { 85 refresh_stuff: function() {
86 this.refresh_sets(); 86 this.refresh_sets();
87 this.refresh_user_tags(); 87 this.refresh_user_tags();
88 }, 88 },
89 89
90 /* photoset treeview */ 90 /* photoset treeview */
91 photoset: { 91 photoset: {
92 photos: new Array(), 92 photos: new Array(),
93 fireflix: null, 93 fireflix: null,
94 init: function(f) { 94 init: function(f) {
95 this.fireflix = f; 95 this.fireflix = f;
96 pull_elements(this,document,[ 'set_photo' ]); 96 pull_elements(this,document,[ 'set_photo', 'set_photo_props' ]);
97 document.getElementById('setphotos').view = this; 97 document.getElementById('setphotos').view = this;
98 }, 98 },
99 rowCount: 0, 99 rowCount: 0,
100 getCellText: function(r,c) { 100 getCellText: function(r,c) {
101 var p = this.photos[r]; 101 var p = this.photos[r];
102 if(c.id=='sp_title') return p.title; 102 if(c.id=='sp_title') return p.title;
103 if(c.id=='sp_taken') return p.datetaken; 103 if(c.id=='sp_taken') return p.datetaken;
104 if(c.id=='sp_upload') { 104 if(c.id=='sp_upload') {
105 var du = new Date(p.dateupload*1000); 105 var du = new Date(p.dateupload*1000);
106 var rv = du.getFullYear()+'-'+(du.getMonth()+1)+'-'+du.getDate() 106 var rv = du.getFullYear()+'-'+(du.getMonth()+1)+'-'+du.getDate()
107 +' '+ 107 +' '+
108 du.getHours()+':'+du.getMinutes()+':'+du.getSeconds(); 108 du.getHours()+':'+du.getMinutes()+':'+du.getSeconds();
109 return rv.replace(/(\D)(\d)(\D)/,'$10$2$3'); 109 return rv.replace(/(\D)(\d)(\D)/,'$10$2$3');
110 } 110 }
111 return c.id; 111 return c.id;
112 }, 112 },
113 setTree: function(t) { this.tree = t }, 113 setTree: function(t) { this.tree = t },
114 isContainer: function(r) { return false; }, 114 isContainer: function(r) { return false; },
115 isSeparator: function(r) { return false; }, 115 isSeparator: function(r) { return false; },
116 isSorted: function(r) { return false; }, 116 isSorted: function(r) { return false; },
117 getLevel: function(r) { return 0; }, 117 getLevel: function(r) { return 0; },
118 getImageSrc: function(r,c) { return null }, 118 getImageSrc: function(r,c) { return null },
119 getRowProperties: function(r,p) {}, 119 getRowProperties: function(r,p) {},
120 getCellProperties: function(cid,cel,p) {}, 120 getCellProperties: function(cid,cel,p) {},
@@ -137,51 +137,51 @@ var fireflix = {
137 load_photos: function(psid) { 137 load_photos: function(psid) {
138 var _this = this; 138 var _this = this;
139 this.fireflix.flickr.api_call( 139 this.fireflix.flickr.api_call(
140 { 140 {
141 method: 'flickr.photosets.getPhotos', 141 method: 'flickr.photosets.getPhotos',
142 auth_token: 'default', 142 auth_token: 'default',
143 photoset_id: psid, 143 photoset_id: psid,
144 extras: 'license,date_upload,date_taken,owner_name,icon_server,original_format,last_update' 144 extras: 'license,date_upload,date_taken,owner_name,icon_server,original_format,last_update'
145 }, function(xr) { 145 }, function(xr) {
146 var x = xr.responseXML; 146 var x = xr.responseXML;
147 var xp = x.evaluate( 147 var xp = x.evaluate(
148 '/rsp/photoset/photo', x, null, 148 '/rsp/photoset/photo', x, null,
149 XPathResult.ORDERED_NODE_ITERATOR_TYPE, null ); 149 XPathResult.ORDERED_NODE_ITERATOR_TYPE, null );
150 _this.importXPR(xp); 150 _this.importXPR(xp);
151 }, function(x,s,c,m) { 151 }, function(x,s,c,m) {
152 _this.fireflix.flickr_failure(x,s,c,m); 152 _this.fireflix.flickr_failure(x,s,c,m);
153 } 153 }
154 ); 154 );
155 }, 155 },
156 on_select: function() { 156 on_select: function() {
157 if(this.selection.count==1) { 157 if(this.selection.count==1) {
158 var p = this.photos[this.selection.currentIndex]; 158 var p = this.photos[this.selection.currentIndex];
159 this.set_photo.src = 159 this.set_photo.src =
160 this.fireflix.flickr.get_photo_url(p.server,p.id,p.secret,'t'); 160 this.fireflix.flickr.get_photo_url(p.server,p.id,p.secret,'t');
161 this.set_photo.hidden = false; 161 this.set_photo_props.hidden = false;
162 }else{ 162 }else{
163 this.set_photo.hidden = true; 163 this.set_photo_props.hidden = true;
164 } 164 }
165 }, 165 },
166 on_cmd_open: function(ev) { 166 on_cmd_open: function(ev) {
167 if(this.selection.currentIndex<0) return; 167 if(this.selection.currentIndex<0) return;
168 var p = this.photos[this.selection.currentIndex]; 168 var p = this.photos[this.selection.currentIndex];
169 if(!p.id) return; 169 if(!p.id) return;
170 this.fireflix.openTab(this.fireflix.flickr.make_photo_url(p,'p')); 170 this.fireflix.openTab(this.fireflix.flickr.make_photo_url(p,'p'));
171 } 171 }
172 }, 172 },
173 173
174 /* photosets treeview */ 174 /* photosets treeview */
175 photosets: { 175 photosets: {
176 sets: new Array(), 176 sets: new Array(),
177 fireflix: null, 177 fireflix: null,
178 init: function(f) { 178 init: function(f) {
179 this.fireflix = f; 179 this.fireflix = f;
180 document.getElementById('setslist').view = this; 180 document.getElementById('setslist').view = this;
181 }, 181 },
182 rowCount: 0, 182 rowCount: 0,
183 getCellText: function(r,c) { 183 getCellText: function(r,c) {
184 var s = this.sets[r]; 184 var s = this.sets[r];
185 if(c.id=='sl_name') return s.title; 185 if(c.id=='sl_name') return s.title;
186 if(c.id=='sl_photos') return s.photos; 186 if(c.id=='sl_photos') return s.photos;
187 return c.id; 187 return c.id;