summaryrefslogtreecommitdiffstats
path: root/public
diff options
context:
space:
mode:
authorJean-Philippe Lang <jp_lang@yahoo.fr>2009-12-14 20:13:29 +0000
committerJean-Philippe Lang <jp_lang@yahoo.fr>2009-12-14 20:13:29 +0000
commit1c11d3403e4ed3518d51ef3d44cefc3cb1f6d548 (patch)
treed57251ae1dd829f2e4f2ee59c0fbc6693ccf9c24 /public
parent09e47a3b6325c109c63a70dc47a9a8e32e762b44 (diff)
downloadredmine-1c11d3403e4ed3518d51ef3d44cefc3cb1f6d548.tar.gz
redmine-1c11d3403e4ed3518d51ef3d44cefc3cb1f6d548.zip
Adds buttons to scroll the tabs when they overflow.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3174 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'public')
-rw-r--r--public/images/bullet_arrow_left.pngbin0 -> 1032 bytes
-rw-r--r--public/images/bullet_arrow_right.pngbin0 -> 1033 bytes
-rw-r--r--public/javascripts/application.js49
-rw-r--r--public/stylesheets/application.css29
4 files changed, 76 insertions, 2 deletions
diff --git a/public/images/bullet_arrow_left.png b/public/images/bullet_arrow_left.png
new file mode 100644
index 000000000..4b0b40f87
--- /dev/null
+++ b/public/images/bullet_arrow_left.png
Binary files differ
diff --git a/public/images/bullet_arrow_right.png b/public/images/bullet_arrow_right.png
new file mode 100644
index 000000000..02fac3b4f
--- /dev/null
+++ b/public/images/bullet_arrow_right.png
Binary files differ
diff --git a/public/javascripts/application.js b/public/javascripts/application.js
index cc75c8180..1a5e0c04f 100644
--- a/public/javascripts/application.js
+++ b/public/javascripts/application.js
@@ -73,6 +73,55 @@ function showTab(name) {
return false;
}
+function moveTabRight(el) {
+ var lis = Element.up(el, 'div.tabs').down('ul').childElements();
+ var tabsWidth = 0;
+ var i;
+ for (i=0; i<lis.length; i++) {
+ if (lis[i].visible()) {
+ tabsWidth += lis[i].getWidth() + 6;
+ }
+ }
+ if (tabsWidth < Element.up(el, 'div.tabs').getWidth() - 60) {
+ return;
+ }
+ i=0;
+ while (i<lis.length && !lis[i].visible()) {
+ i++;
+ }
+ lis[i].hide();
+}
+
+function moveTabLeft(el) {
+ var lis = Element.up(el, 'div.tabs').down('ul').childElements();
+ var i = 0;
+ while (i<lis.length && !lis[i].visible()) {
+ i++;
+ }
+ if (i>0) {
+ lis[i-1].show();
+ }
+}
+
+function displayTabsButtons() {
+ var lis;
+ var tabsWidth = 0;
+ var i;
+ $$('div.tabs').each(function(el) {
+ lis = el.down('ul').childElements();
+ for (i=0; i<lis.length; i++) {
+ if (lis[i].visible()) {
+ tabsWidth += lis[i].getWidth() + 6;
+ }
+ }
+ if (tabsWidth < el.getWidth() - 60) {
+ el.down('div.tabs-buttons').hide();
+ } else {
+ el.down('div.tabs-buttons').show();
+ }
+ });
+}
+
function setPredecessorFieldsVisibility() {
relationType = $('relation_relation_type');
if (relationType && relationType.value == "precedes") {
diff --git a/public/stylesheets/application.css b/public/stylesheets/application.css
index c3e7ca81f..1e1ab61cb 100644
--- a/public/stylesheets/application.css
+++ b/public/stylesheets/application.css
@@ -486,8 +486,8 @@ p.pourcent {font-size: 80%;}
p.progress-info {clear: left; font-style: italic; font-size: 80%;}
/***** Tabs *****/
-#content .tabs {height: 2.6em; border-bottom: 1px solid #bbbbbb; margin-bottom:1.2em; position:relative;}
-#content .tabs ul {margin:0; position:absolute; bottom:-2px; padding-left:1em;}
+#content .tabs {height: 2.6em; border-bottom: 1px solid #bbbbbb; margin-bottom:1.2em; position:relative; overflow:hidden;}
+#content .tabs ul {margin:0; position:absolute; bottom:-2px; padding-left:1em; width: 2000px;}
#content .tabs>ul { bottom:-1px; } /* others */
#content .tabs ul li {
float:left;
@@ -524,6 +524,31 @@ border-bottom: 1px solid #fff;
background-color: #fff;
}
+div.tabs-buttons { position:absolute; right: 0; width: 48px; height: 24px; background: white; bottom: -1px; }
+
+button.tab-left, button.tab-right {
+ font-size: 0.9em;
+ cursor: pointer;
+ height:24px;
+ border: 1px solid #ccc;
+ border-bottom: 1px solid #bbbbbb;
+ position:absolute;
+ padding:4px;
+ width: 20px;
+}
+
+button.tab-left {
+ right: 20px;
+ bottom: 0;
+ background: #eeeeee url(../images/bullet_arrow_left.png) no-repeat 50% 50%;
+}
+
+button.tab-right {
+ right: 0;
+ bottom: 0;
+ background: #eeeeee url(../images/bullet_arrow_right.png) no-repeat 50% 50%;}
+}
+
/***** Auto-complete *****/
div.autocomplete {
position:absolute;