Skip to content

Commit

Permalink
Optional histograms on overview page, related to #20 (Display histogr…
Browse files Browse the repository at this point in the history
…ams on mouse-over on folder view)
  • Loading branch information
tokee committed Jan 9, 2014
1 parent d84b470 commit 1dae42d
Show file tree
Hide file tree
Showing 4 changed files with 41 additions and 6 deletions.
12 changes: 10 additions & 2 deletions quack.sh
Original file line number Diff line number Diff line change
Expand Up @@ -321,6 +321,7 @@ function makeImageParams() {
SOURCE_IMAGE="${SRC_FOLDER}/${IMAGE}"
DEST_IMAGE="${DEST_FOLDER}/${BASE}.${IMAGE_DISP_EXT}"
HIST_IMAGE="${DEST_FOLDER}/${BASE}.histogram.png"
HISTOGRAM_LINK=${HIST_IMAGE##*/}
THUMB_IMAGE="${DEST_FOLDER}/${BASE}.thumb.jpg"
THUMB_LINK=${THUMB_IMAGE##*/}
WHITE_IMAGE="${DEST_FOLDER}/${BASE}.white.png"
Expand Down Expand Up @@ -373,6 +374,7 @@ function makeImages() {
local SOURCE_IMAGE="${SRC_FOLDER}/${IMAGE}"
local DEST_IMAGE="${DEST_FOLDER}/${BASE}.${IMAGE_DISP_EXT}"
local HIST_IMAGE="${DEST_FOLDER}/${BASE}.histogram.png"
local HISTOGRAM_LINK=${HIST_IMAGE##*/}
local THUMB_IMAGE="${DEST_FOLDER}/${BASE}.thumb.jpg"
local THUMB_LINK=${THUMB_IMAGE##*/}
local WHITE_IMAGE="${DEST_FOLDER}/${BASE}.white.png"
Expand Down Expand Up @@ -643,7 +645,7 @@ function resolveAlternatives() {
# Creates only the HTML page itself. The corresponding makeImages must
# be called before calling this function
# up parent srcFolder dstFolder image prev_image next_image
# Output: PAGE_LINK BASE THUMB_LINK THUMB_WIDTH THUMB_HEIGHT
# Output: PAGE_LINK BASE THUMB_LINK THUMB_WIDTH THUMB_HEIGHT HISTOGRAM_LINK HISTOGRAM_WIDTH HISTOGRAM_HEIGHT
function makePreviewPage() {
local UP="$1"
local PARENT="$2"
Expand Down Expand Up @@ -681,6 +683,9 @@ function makePreviewPage() {
local TIDENTIFY=`identify "$THUMB_IMAGE" | grep -o " [0-9]\+x[0-9]\\+ "`
THUMB_WIDTH=`echo $TIDENTIFY | grep -o "[0-9]\+x" | grep -o "[0-9]\+"`
THUMB_HEIGHT=`echo $TIDENTIFY | grep -o "x[0-9]\+" | grep -o "[0-9]\+"`
local HIDENTIFY=`identify "$HIST_IMAGE" | grep -o " [0-9]\+x[0-9]\\+ "`
HISTOGRAM_WIDTH=`echo $HIDENTIFY | grep -o "[0-9]\+x" | grep -o "[0-9]\+"`
HISTOGRAM_HEIGHT=`echo $HIDENTIFY | grep -o "x[0-9]\+" | grep -o "[0-9]\+"`

if [ ".true" == ".$PRESENTATION" ]; then
local PIDENTIFY=`identify "$PRESENTATION_IMAGE" | grep -o " [0-9]\+x[0-9]\\+ "`
Expand Down Expand Up @@ -867,17 +872,20 @@ function makeIndex() {

# Generate pages
local THUMBS_HTML=""
local HISTOGRAMS_HTML=""
local PREV_IMAGE=""
if [ "." == ".$IMAGES" ]; then
IMAGES_HTML="<p>No images</p>"$'\n'
else
IMAGES_HTML="<ul>"$'\n'
HISTOGRAMS_HTML="<ul>"$'\n'
for I in $IMAGES; do
local NEXT_IMAGE=`echo "$IMAGES" | grep -A 1 "$I" | tail -n 1 | grep -v "$I"`
makePreviewPage "$UP" "$PARENT" "$SRC_FOLDER" "$DEST_FOLDER" "$I" "$PREV_IMAGE" "$NEXT_IMAGE"
IMAGES_HTML="${IMAGES_HTML}<li><a href=\"$PAGE_LINK\">$BASE</a></li>"$'\n'

THUMBS_HTML="${THUMBS_HTML}<div class=\"thumb\"><a class=\"thumblink\" href=\"$PAGE_LINK\"><span class=\"thumboverlay\"></span><img class=\"thumbimg\" src=\"${THUMB_LINK}\" alt=\"$BASE\" title=\"$BASE\" width=\"$THUMB_WIDTH\" height=\"$THUMB_HEIGHT\"/></a></div>"$'\n'
HISTOGRAMS_HTML="${HISTOGRAMS_HTML}<div class=\"histograminfolder\"><a href=\"$PAGE_LINK\"><img src=\"${HISTOGRAM_LINK}\" alt=\"Histogram for $BASE\" title=\"Histogram for $BASE\" width=\"$HISTOGRAM_WIDTH\" height=\"$HISTOGRAM_HEIGHT\"/></a></div>"$'\n'
# THUMBS_HTML="${THUMBS_HTML}<a class=\"thumblink\" href=\"$PAGE_LINK\"><img class=\"thumbimg\" src=\"${THUMB_LINK}\" alt=\"$BASE\" title=\"$BASE\" width=\"$THUMB_WIDTH\" height=\"$THUMB_HEIGHT\"/></a>"$'\n'
PREV_IMAGE=$I
done
Expand Down Expand Up @@ -924,7 +932,7 @@ function makeIndex() {
fi
popd > /dev/null

# UP, PARENT, SRC_FOLDER, DEST_FOLDER, IMAGES_HTML, THUMBS_HTML, SUBFOLDERS_HTML, EDITION_HTML, SNIPPET
# UP, PARENT, SRC_FOLDER, DEST_FOLDER, IMAGES_HTML, THUMBS_HTML, HISTOGRAMS_HTML, SUBFOLDERS_HTML, EDITION_HTML, SNIPPET
ctemplate $FOLDER_TEMPLATE > $PP

# Generate pages for sub folders
Expand Down
3 changes: 2 additions & 1 deletion web/folder_template.html
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,9 @@ <h1>Quack <span style="color: #999">${SRC_FOLDER}</span></h1>

<div class="images">
<h2>Pages</h2>
<p><input type="checkbox" id="toggle_blown_thumbs" onClick="toggleBlownThumbs();">Show absolute black and white</input></p>
<p><input type="checkbox" id="toggle_blown_thumbs" onClick="toggleBlownThumbs();">Show absolute black and white</input><br/><input type="checkbox" id="toggle_histograms" onClick="toggleHistograms();">Histogram view</input></p>
<div class="thumbs">${THUMBS_HTML}</div>
<div class="histograms">${HISTOGRAMS_HTML}</div>
<div class="imagelinks">
${IMAGES_HTML}
</div>
Expand Down
14 changes: 11 additions & 3 deletions web/quack.css
Original file line number Diff line number Diff line change
Expand Up @@ -223,10 +223,10 @@ ul.alternatives li + li:before {
div.imagelinks {
clear: both;
}
div.thumb {
div.thumb, div.histograms div {
float: left;
}
div.thumbs a {
div.thumbs a, div.histograms a {
position: relative;
display: block;
}
Expand All @@ -237,8 +237,16 @@ div.thumbs a {
top: 0;
left: 0;
}
.histograms img {
border: 1px dotted grey;
margin: 0.1em 0.2em 0.1em 0.2em;
}
.histograms {
display: none;
}


/* Linked articles */
/* Linked articles on image page */

.g1 { background-color: #FF0000; }
.g2 { background-color: #00FF00; }
Expand Down
18 changes: 18 additions & 0 deletions web/quack_folder.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,24 @@ function toggleBlownThumbs() {
content[i].style.display = state;
}
}
function toggleHistograms() {
if (document.getElementById('toggle_histograms').checked) {
thumb_state = 'none';
hist_state = 'block';
} else {
thumb_state = 'block';
hist_state = 'none';
}

var content = document.getElementsByClassName('thumbs');
for (var i = 0 ; i < content.length ; i++) {
content[i].style.display = thumb_state;
}
var content = document.getElementsByClassName('histograms');
for (var i = 0 ; i < content.length ; i++) {
content[i].style.display = hist_state;
}
}

function setupThumbOverlays() {
var content = document.getElementsByClassName('thumblink');
Expand Down

0 comments on commit 1dae42d

Please sign in to comment.