From 8a08fe2731a08e595530376a1a8856d851fc8f27 Mon Sep 17 00:00:00 2001 From: Dieter Hametner Date: Sat, 6 Jan 2007 17:17:33 +0000 Subject: Collapsable treeview of recordings (almost) --- images/Makefile | 4 ++- images/active.png | Bin 375 -> 550 bytes images/file.png | Bin 0 -> 644 bytes images/folder_closed.png | Bin 0 -> 652 bytes images/folder_open.png | Bin 0 -> 705 bytes images/inactive.png | Bin 437 -> 819 bytes images/minus.png | Bin 0 -> 472 bytes images/plus.png | Bin 0 -> 480 bytes images/transparent.png | Bin 0 -> 70 bytes javascript/Makefile | 3 +- javascript/treeview.js | 46 ++++++++++++++++++++++++++++++ pages/Makefile | 3 +- pages/recordings.ecpp | 69 ++++++++++++++++++++++++++++++++++++++------- pages/recordings_item.ecpp | 4 +-- recordings.cpp | 22 --------------- recordings.h | 5 ---- 16 files changed, 113 insertions(+), 43 deletions(-) create mode 100644 images/file.png create mode 100644 images/folder_closed.png create mode 100644 images/folder_open.png create mode 100644 images/minus.png create mode 100644 images/plus.png create mode 100644 images/transparent.png create mode 100644 javascript/treeview.js diff --git a/images/Makefile b/images/Makefile index 8194e9c..fb4a949 100644 --- a/images/Makefile +++ b/images/Makefile @@ -14,7 +14,9 @@ VDRDIR ?= ../../../.. ### The object files (add further files here): -OBJS = logo.o record.o active.o inactive.o button_blue.o +OBJS = logo.o record.o active.o inactive.o button_blue.o \ + file.o folder_closed.o folder_open.o plus.o minus.o \ + transparent.o ### Default rules: diff --git a/images/active.png b/images/active.png index 1db3c4b..8e163ed 100644 Binary files a/images/active.png and b/images/active.png differ diff --git a/images/file.png b/images/file.png new file mode 100644 index 0000000..340102c Binary files /dev/null and b/images/file.png differ diff --git a/images/folder_closed.png b/images/folder_closed.png new file mode 100644 index 0000000..8b37ac1 Binary files /dev/null and b/images/folder_closed.png differ diff --git a/images/folder_open.png b/images/folder_open.png new file mode 100644 index 0000000..7a0c176 Binary files /dev/null and b/images/folder_open.png differ diff --git a/images/inactive.png b/images/inactive.png index 1f86259..9d53b98 100644 Binary files a/images/inactive.png and b/images/inactive.png differ diff --git a/images/minus.png b/images/minus.png new file mode 100644 index 0000000..05fb45e Binary files /dev/null and b/images/minus.png differ diff --git a/images/plus.png b/images/plus.png new file mode 100644 index 0000000..7613c9c Binary files /dev/null and b/images/plus.png differ diff --git a/images/transparent.png b/images/transparent.png new file mode 100644 index 0000000..37c28e7 Binary files /dev/null and b/images/transparent.png differ diff --git a/javascript/Makefile b/javascript/Makefile index 4e074a5..1e228f1 100644 --- a/javascript/Makefile +++ b/javascript/Makefile @@ -15,7 +15,8 @@ VDRDIR ?= ../../../.. ### The object files (add further files here): -OBJS = alphaAPI.o domLib.o domTT_drag.o domTT.o fadomatic.o +OBJS = alphaAPI.o domLib.o domTT_drag.o domTT.o fadomatic.o \ + treeview.o ### Default rules: diff --git a/javascript/treeview.js b/javascript/treeview.js new file mode 100644 index 0000000..d0041a8 --- /dev/null +++ b/javascript/treeview.js @@ -0,0 +1,46 @@ +// --------------------------------------------- +// --- Name: Easy DHTML Treeview -- +// --- Author: D.D. de Kerf -- +// --- Adapted: Dieter Hametner -- +// --- Version: 0.2 Date: 13-6-2001 -- +// --------------------------------------------- +function Toggle(node) +{ + // Unfold the branch if it isn't visible + if (node.nextSibling.style.display == 'none') + { + // Change the image (if there is an image) + if (node.childNodes.length > 0) + { + if (node.childNodes.item(0).nodeName == "IMG") + { + node.childNodes.item(0).src = "minus.png"; + } + if (node.childNodes.item(1).nodeName == "IMG") + { + node.childNodes.item(1).src = "folder_open.png"; + } + } + + node.nextSibling.style.display = 'block'; + } + // Collapse the branch if it IS visible + else + { + // Change the image (if there is an image) + if (node.childNodes.length > 0) + { + if (node.childNodes.item(0).nodeName == "IMG") + { + node.childNodes.item(0).src = "plus.png"; + } + if (node.childNodes.item(1).nodeName == "IMG") + { + node.childNodes.item(1).src = "folder_closed.png"; + } + } + + node.nextSibling.style.display = 'none'; + } + +} diff --git a/pages/Makefile b/pages/Makefile index 5c96adc..246a6c5 100644 --- a/pages/Makefile +++ b/pages/Makefile @@ -17,8 +17,7 @@ VDRDIR ?= ../../../.. OBJS = menu.o event_widget.o channels.o recordings.o schedule.o \ screenshot.o timers.o whats_on_now.o whats_on_next.o \ - keypress.o remote.o channels_widget.o edit_timer.o \ - recordings_item.o + keypress.o remote.o channels_widget.o edit_timer.o ### Default rules: diff --git a/pages/recordings.ecpp b/pages/recordings.ecpp index 6a3a8cf..97ef983 100644 --- a/pages/recordings.ecpp +++ b/pages/recordings.ecpp @@ -1,4 +1,5 @@ <%pre> +#include #include #include #include @@ -8,6 +9,9 @@ using namespace vdrlive; +<%request scope="page"> +RecordingsTree recordingsTree; + <%args> <{ @@ -16,6 +20,7 @@ using namespace vdrlive; VDR-Live - <$ tr("Recordings") $> +