summaryrefslogtreecommitdiffabout
path: root/content
Side-by-side diff
Diffstat (limited to 'content') (more/less context) (ignore whitespace changes)
-rw-r--r--content/Makefile.am3
-rw-r--r--content/fireflix-panel.xul3
-rw-r--r--content/fireflix.css23
-rw-r--r--content/help.xml53
4 files changed, 81 insertions, 1 deletions
diff --git a/content/Makefile.am b/content/Makefile.am
index abe3d6d..7d11964 100644
--- a/content/Makefile.am
+++ b/content/Makefile.am
@@ -1,22 +1,23 @@
xpichromecontent_DATA = \
autoconf.dtd \
browser.xul about.xul fireflix-panel.xul photoset-props.xul \
generated-content.xul copying.xul \
photoset-props.js fireflix.js flickr.js util.js md5.js \
generated-content.js \
fireflix.css \
- background.jpeg
+ background.jpeg \
+ help.xml
sized_icons = \
$(addsuffix .png, \
fireflix \
)
nobase_xpichromecontent_DATA = \
$(addprefix icons/, \
$(addprefix 16x16/,${sized_icons}) \
$(addprefix 32x32/,${sized_icons}) \
)
EXTRA_DIST = \
${xpichromecontent_DATA} ${nobase_xpichromecontent_DATA}
diff --git a/content/fireflix-panel.xul b/content/fireflix-panel.xul
index 1278621..b961edb 100644
--- a/content/fireflix-panel.xul
+++ b/content/fireflix-panel.xul
@@ -1,288 +1,291 @@
<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<?xml-stylesheet href="fireflix.css" type="text/css"?>
<!DOCTYPE page SYSTEM "chrome://fireflix/locale/fireflix.dtd">
<page
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
id="fireflixwindow" title="Fireflix"
onload="fireflix.init()"
orient="vertical"
ondragover="nsDragAndDrop.dragOver(event,fireflix.uploadObserver)"
ondragdrop="nsDragAndDrop.drop(event,fireflix.uploadObserver)"
>
<script src="chrome://global/content/nsDragAndDrop.js"/>
<script src="chrome://global/content/nsTransferable.js"/>
<script type="application/x-javascript" src="md5.js" />
<script type="application/x-javascript" src="util.js" />
<script type="application/x-javascript" src="flickr.js" />
<script type="application/x-javascript" src="fireflix.js" />
<stringbundleset>
<stringbundle id="loc_strings" src="chrome://fireflix/locale/fireflix.properties" />
</stringbundleset>
<commandset>
<command id="cmd_auth_auth" label="&panel.auth.auth.label;"
oncommand="fireflix.on_cmd_auth()"/>
<command id="cmd_auth_done" label="&panel.auth.done.label;"
oncommand="fireflix.on_cmd_auth_done()" disabled="true"/>
<command id="cmd_auth_open_flickr" label="&panel.auth.flickr.label;"
oncommand="fireflix.openTab('http://www.flickr.com/')" />
<command id="cmd_auth_unauth" label="&panel.auth.unauth.label;"
oncommand="fireflix.on_cmd_auth_unauth()" />
+ <command id="cmd_help" label="?"
+ oncommand="fireflix.openTab('chrome://fireflix/content/help.xml')" />
</commandset>
<popupset>
<popup id="auth_menu">
<menuitem command="cmd_auth_auth"/>
<menuitem command="cmd_auth_done" hidden="true" id="menu_auth_done"/>
<menuitem command="cmd_auth_unauth" />
<menuseparator/>
<menuitem command="cmd_auth_open_flickr"/>
</popup>
</popupset>
<commandset id="cmdset_search">
<command id="cmd_search" label="&panel.search.cmd_search.label;"
oncommand="fireflix.foundphotos.search_photos()"/>
<command id="cmd_search_open" label="&panel.search.cmd_search_open.label;"
oncommand="fireflix.foundphotos.on_cmd_open(event)" />
<command id="cmd_search_prev_page"
label="&panel.search.cmd_search_prev_page.label;"
oncommand="fireflix.foundphotos.on_cmd_prev(event)" disabled="true"/>
<command id="cmd_search_next_page"
label="&panel.search.cmd_search_next_page.label;"
oncommand="fireflix.foundphotos.on_cmd_next(event)" disabled="true"/>
</commandset>
<commandset id="cmdset_sets">
<command id="cmd_refresh_sets" label="&panel.sets.cmd_refresh_sets;"
oncommand="fireflix.on_refresh_sets()" />
<command id="cmd_set_props" label="&panel.sets.cmd_properties;"
oncommand="fireflix.on_set_props()" disabled="true" />
</commandset>
<popupset>
<popup id="sets_menu">
<menuitem command="cmd_set_props"/>
<menuitem command="cmd_refresh_sets"/>
<menuseparator/>
<menu label="&panel.sets.generate_html;" id="sets_html_menu"/>
</popup>
</popupset>
<commandset id="cmdset_uploads">
<command id="cmd_uploads_clear" label="&panel.uploads.clear.label;"
oncommand="fireflix.uploads.on_clear()" />
<command id="cmd_uploads_upload" label="&panel.uploads.upload.label;"
oncommand="fireflix.uploads.on_upload()" />
<command id="cmd_uploads_remove" label="&panel.uploads.remove.label;"
oncommand="fireflix.uploads.on_remove()" />
<command id="cmd_uploads_add" label="&panel.uploads.add.label;"
oncommand="fireflix.uploads.on_add()" />
</commandset>
<popupset>
<popup id="uploads_menu">
<menuitem command="cmd_uploads_add"/>
<menuitem command="cmd_uploads_clear"/>
<menuitem command="cmd_uploads_remove"/>
<menuseparator/>
<menuitem command="cmd_uploads_upload"/>
<menuseparator/>
<menu label="&panel.uploads.generate_html;" id="uploads_html_menu"/>
</popup>
</popupset>
<vbox class="wholething" flex="1">
<groupbox context="auth_menu">
<caption label="&panel.auth_info;"/>
<hbox>
<label id="auth_info" value="&panel.no_auth_info;" flex="1" disabled="true" crop="end"/>
<button id="b_auth" command="cmd_auth_auth"/>
<button id="b_auth_done" command="cmd_auth_done" hidden="true"/>
<button command="cmd_auth_open_flickr"
tooltiptext="&panel.auth.flickr.tip;"/>
+ <button command="cmd_help"/>
</hbox>
</groupbox>
<tabbox flex="1" id="fireflix_tabs">
<tabs>
<tab label="&panel.tabs.search;"/>
<tab label="&panel.tabs.sets;"/>
<tab label="&panel.tabs.tags;" hidden="true"/> <!-- TODO: -->
<tab id="tab_upload" label="&panel.tabs.upload;"/>
</tabs>
<tabpanels flex="1">
<tabpanel id="tabpanel_search" flex="1">
<vbox flex="1">
<groupbox class="search_params" orient="vertical" onkeypress="if(event.keyCode==event.DOM_VK_RETURN) fireflix.foundphotos.search_photos()">
<hbox>
<label control="search_for" value="&panel.search.search_for.label;"
accesskey="s"/>
<textbox id="search_for" flex="1"/>
</hbox>
<hbox>
<checkbox id="search_tags" label="&panel.search.mode.tagsonly.label;"
tooltiptext="&panel.search.mode.tagsonly.tip;" checked="false"
accesskey="t" />
<checkbox id="search_mine" label="&panel.search.mode.mine.label;" checked="true" accesskey="m"/>
<spacer flex="1"/>
<button command="cmd_search"/>
</hbox>
</groupbox>
<hbox>
<button command="cmd_search_prev_page"/>
<spacer flex="1"/>
<label id="search_page" hidden="true"/>
<spacer flex="1"/>
<button command="cmd_search_next_page"/>
</hbox>
<tree id="searchresults" rows="2" flex="1"
onselect="fireflix.foundphotos.on_select()"
ondblclick="fireflix.foundphotos.on_cmd_open(event)"
onkeypress="if(event.keyCode==event.DOM_VK_RETURN)
fireflix.foundphotos.on_cmd_open(event)">
<treecols>
<treecol id="sr_title" label="&panel.search.col.title.label;" flex="2" crop="end" align="start" />
</treecols>
<treechildren/>
</tree>
<groupbox id="searchresult_props" orient="horizontal" hidden="true">
<vbox width="100" pack="center">
<hbox pack="center">
<image id="search_photo"
ondblclick="fireflix.foundphotos.on_cmd_open(event)"/>
</hbox>
</vbox>
<vbox flex="1">
<label id="searchresult_title" crop="end"/>
<hbox flex="1" pack="center">
<div flex="1" id="searchresult_description" xmlns="http://www.w3.org/1999/xhtml"/>
</hbox>
<hbox pack="end">
<button command="cmd_search_open"/>
</hbox>
</vbox>
</groupbox>
</vbox>
</tabpanel>
<tabpanel id="tabpanel_sets" flex="1"
onkeypress="if(event.keyCode==event.DOM_VK_RETURN)
document.getElementById('setphotos').focus()">
<vbox flex="1">
<tree id="setslist" rows="2" onselect="fireflix.photosets.on_select()"
flex="1" context="sets_menu"
>
<treecols>
<treecol id="sl_name" label="&panel.sets.name.label;" flex="4" crop="end" align="start" tooltiptext="&panel.sets.name.tip;"/>
<splitter class="tree-splitter" />
<treecol id="sl_photos" label="&panel.sets.photos.label;" flex="1" align="end" tooltiptext="&panel.sets.photos.tip;" />
</treecols>
<treechildren/>
</tree>
<hbox>
<button command="cmd_refresh_sets" />
<button command="cmd_set_props" />
</hbox>
<tree id="setphotos" rows="2" onselect="fireflix.photoset.on_select()"
flex="1">
<treecols>
<treecol id="sp_title" label="&panel.setphotos.title.label;" flex="1" crop="end" align="start" tooltiptext="&panel.setphotos.title.tip;" />
<splitter class="tree-splitter" />
<treecol id="sp_taken" label="&panel.setphotos.taken.label;" crop="end" align="start" tooltiptext="&panel.setphotos.taken.tip;" hidden="true" />
<treecol id="sp_upload" label="&panel.setphotos.upload.label;" crop="end" align="start" tooltiptext="&panel.setphotos.upload.tip;" hidden="true" />
</treecols>
<treechildren/>
</tree>
<groupbox id="set_photo_props" orient="horizontal">
<vbox width="100" pack="center">
<hbox pack="center">
<image id="set_photo" hidden="true"/>
</hbox>
</vbox>
<spacer flex="1"/>
</groupbox>
</vbox>
</tabpanel>
<tabpanel id="tabpanel_tags">
<listbox id="tagslist" rows="8" flex="1">
<listhead>
<listheader label="&panel.tagslist.tag.label;"/>
</listhead>
<listcols>
<listcol flex="1"/>
</listcols>
</listbox>
</tabpanel>
<tabpanel id="tabpanel_upload">
<vbox flex="1">
<tree id="uploadlist" rows="2" flex="1"
onselect="fireflix.uploads.selectionChanged()"
context="uploads_menu">
<treecols>
<treecol id="up_file" label="&panel.uploadlist.file.label;" flex="4" crop="start" align="start"/>
<splitter class="tree-splitter" />
<treecol id="up_title" label="&panel.uploadlist.title.label;" flex="5" crop="end" align="start" />
<splitter class="tree-splitter" />
<treecol id="up_status" label="&panel.uploadlist.status.label;" flex="1" crop="end" align="start" />
</treecols>
<treechildren/>
</tree>
<progressmeter id="upload_progress" mode="undetermined" hidden="true" />
<groupbox id="upload_file_props" orient="horizontal" hidden="true">
<image id="upload_file_preview" width="100" height="100" />
<grid flex="1">
<columns>
<column/>
<column flex="1"/>
</columns>
<rows>
<row>
<label control="upload_filename"
value="&panel.upload_props.filename.label;" />
<textbox id="upload_filename"
oninput="fireflix.uploads.propsToSel('filename')"/>
</row>
<row>
<label control="upload_title" value="&panel.upload_props.title.label;" />
<textbox id="upload_title"
oninput="fireflix.uploads.propsToSel('title')"/>
</row>
<row>
<label control="uplod_tags" value="&panel.upload_props.tags.label;" />
<textbox id="upload_tags"
oninput="fireflix.uploads.propsToSel('tags')"/>
</row>
<!-- TODO: description, public, friend, family -->
</rows>
</grid>
</groupbox>
<hbox>
<button command="cmd_uploads_add" />
<spacer flex="1"/>
<button command="cmd_uploads_remove" />
<spacer flex="1"/>
<button command="cmd_uploads_clear" />
</hbox>
<hbox pack="center">
<button command="cmd_uploads_upload" flex="1"/>
</hbox>
</vbox>
</tabpanel>
</tabpanels>
</tabbox>
</vbox>
</page>
diff --git a/content/fireflix.css b/content/fireflix.css
index 9e7bf6b..47455f6 100644
--- a/content/fireflix.css
+++ b/content/fireflix.css
@@ -1,99 +1,122 @@
.generated.wholething,
.about.wholething,
tabbox, tabpanels, tabpanel {
background: url("background.jpeg");
}
tabpanels {
padding: 0px;
}
tree {
margin-top: 2px;
background: rgb(12,167,0);
color: rgb(255,255,0);
font-size: 90%;
}
tree treechildren { /* for windows */
background: rgb(12,167,0);
}
tree#uploadlist treechildren::-moz-tree-cell-text(pending) {
}
tree#uploadlist treechildren::-moz-tree-cell-text(completed) {
color: white;
}
tree#uploadlist treechildren::-moz-tree-row(failed) {
background: yellow;
}
tree#uploadlist treechildren::-moz-tree-cell-text(failed) {
color: red;
}
tree#uploadlist treechildren::-moz-tree-cell-text(uploading) {
font-weight: bold;
}
groupbox#searchresult_props,
groupbox.search_params,
groupbox#upload_file_props,
groupbox#set_props,
groupbox#set_photo_props {
background: white;
}
groupbox#upload_file_props label {
text-align: right;
}
image#search_photo, image#set_photo, image#set_primary {
border: black 1px solid;
}
.about .insides {
margin: 1ex;
}
.about .text {
border: yellow solid 1px;
background: green;
}
.about .title {
font-size: 300%;
font-weight: bold;
color: yellow;
}
.about .link {
text-decoration: underline;
color: white;
cursor: pointer;
}
menuitem.menuhead {
background: gray;
color: black;
font-weight: bold;
}
div#searchresult_description {
min-height: 5em; max-height: 8em;
overflow: auto;
font-size: 90%;
margin: 0.1ex 0.5ex;
}
#copying div {
margin: 1ex 1em;
font-family: courier, monospace;
font-size: 9pt;
padding: 2px;
border: dotted 1px gray;
background: white;
}
label#search_page {
font-weight: bold;
background: white; color: #404040;
border-color: #c0c0c0 #404040 #404040 #c0c0c0;
border-style: solid;
border-width: 1px;
-moz-border-radius: 1em;
padding: 0.5ex 1ex;
}
+
+html body {
+ font-family: arial, sans-serif;
+ font-size: 11pt;
+ margin: 1em 4em;
+ padding: 1em 4em;
+ border: double 3px gray;
+ background: #ffffc0;
+}
+html h1 {
+ font-size: 130%; color: maroon;
+}
+html p {
+ text-align: justify;
+}
+
+html div.copyright {
+ font-size: 60%;
+ text-align: right;
+}
+html div.copyright a {
+ text-decoration: none;
+}
diff --git a/content/help.xml b/content/help.xml
new file mode 100644
index 0000000..e71cd99
--- a/dev/null
+++ b/content/help.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="utf-8"?>
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
+ <head>
+ <title>Fireflix</title>
+ <link rel="stylesheet" href="fireflix.css" type="text/css"/>
+ </head>
+ <body>
+
+ <p>This is a brief overview of things you can do with <a href="http://kin.klever.net/fireflix/">fireflix</a>.</p>
+
+ <p>First, you should proceed with authorization. If you haven't done it yet,
+ it should happen automatically once you open fireflix sidebar. To clear
+ authorization token off of the preferences, right-click on the 'Authorization
+ info' part of the sidebar and select 'Sign off' from the pop up menu.</p>
+
+ <h1>In the 'Search' tab</h1>
+
+ <p>Basically, you can search flickr photos here. Either all or yours (keep
+ 'mine' checked to search your own photos).</p>
+
+ <p>Once you have acquired search results you can browse through them. To open
+ any particular picture in a new tab either doubleclick it or hit ENTER.</p>
+
+ <p>While moving through the list of pictures found you should have a little
+ preview at the bottom of the window.</p>
+
+ <h1>In the 'Sets' tab</h1>
+
+ <p>This is where you can browse your sets. You can edit some sets properties
+ here and, most importantly, you can generate HTML of linked thumbnails for
+ sets contents. Use your right mouse button on the photoset.</p>
+
+ <h1>In The 'Uploads' tab</h1>
+
+ <p>To upload pictures you don't even have to select this tab. Drag'n'drop into
+ fireflix sidebar should do. There is nothing wrong with going into the tab and
+ using 'Add' button either.</p>
+
+ <p>You can add photos to the list, edit their titles and/or tags and once
+ you're done with it, trigger upload procedure. Once your images have been
+ uploaded, you will be prompted to create a photoset for newly uploaded photos.
+ You don't have to, though.</p>
+
+ <h1>Feedback</h1>
+
+ <p>As the extension is at the very early stage of development, feel free to
+ provide feedback at <a href="http://kin.klever.net/fireflix/feedback" title="click here to proceed to feedback form">http://kin.klever.net/fireflix/feedback/</a>.</p>
+
+ <div class="copyright">
+ <a href="http://www.klever.net/">© Klever Group</a>
+ </div>
+ </body>
+</html>