Added a Horizontal Fade-In/ Fade-Out Navigation Menus Style Sheet for use with WebKit Browsers.
svn: r18738
This commit is contained in:
@@ -1591,65 +1591,80 @@ class BasePage(object):
|
|||||||
|
|
||||||
# Remove menu sections if they are not being created?
|
# Remove menu sections if they are not being created?
|
||||||
navs = ((u, n) for u, n, c in navs if c)
|
navs = ((u, n) for u, n, c in navs if c)
|
||||||
|
menu_items = [[url, text] for url, text in navs]
|
||||||
|
|
||||||
|
number_items = len(menu_items)
|
||||||
|
|
||||||
|
num_cols = 16
|
||||||
|
num_rows = (number_items // num_cols) + 1
|
||||||
|
|
||||||
# begin navigation menu division...
|
# begin navigation menu division...
|
||||||
with Html("div", id ="nav", role = "Navigation") as navigation:
|
with Html("div", class_ = "wrapper", id = "nav", role = "navigation") as navigation:
|
||||||
|
|
||||||
unordered = Html("ul")
|
|
||||||
navigation += unordered
|
|
||||||
|
|
||||||
for (url_fname, nav_text) in navs:
|
with Html("div", class_ = "container") as container:
|
||||||
|
|
||||||
if not _has_webpage_extension(url_fname):
|
index = 0
|
||||||
url_fname += self.ext
|
for rows in range(num_rows):
|
||||||
|
unordered = Html("ul", class_ = "menu")
|
||||||
|
|
||||||
url = self.report.build_url_fname(url_fname, None, self.up)
|
cols = 0
|
||||||
hyper = Html("a", nav_text, href = url, title = nav_text)
|
while (cols <= num_cols and index < number_items):
|
||||||
|
url_fname, nav_text = menu_items[index]
|
||||||
|
|
||||||
# Define 'currentsection' to correctly set navlink item CSS id
|
if not _has_webpage_extension(url_fname):
|
||||||
# 'CurrentSection' for Navigation styling.
|
url_fname += self.ext
|
||||||
# Use 'self.report.cur_fname' to determine 'CurrentSection' for individual
|
|
||||||
# elements for Navigation styling.
|
|
||||||
|
|
||||||
# Figure out if we need <li class="CurrentSection"> of just <li>
|
url = self.report.build_url_fname(url_fname, None, self.up)
|
||||||
check_cs = False
|
hyper = Html("a", nav_text, href = url, title = nav_text)
|
||||||
if nav_text == currentsection:
|
|
||||||
check_cs = True
|
# Define 'currentsection' to correctly set navlink item CSS id
|
||||||
elif nav_text == _("Surnames"):
|
# 'CurrentSection' for Navigation styling.
|
||||||
if "srn" in self.report.cur_fname:
|
# Use 'self.report.cur_fname' to determine 'CurrentSection' for individual
|
||||||
check_cs = True
|
# elements for Navigation styling.
|
||||||
elif _("Surnames") in currentsection:
|
|
||||||
check_cs = True
|
# Figure out if we need <li class="CurrentSection"> of just <li>
|
||||||
elif nav_text == _("Individuals"):
|
check_cs = False
|
||||||
if "ppl" in self.report.cur_fname:
|
if nav_text == currentsection:
|
||||||
check_cs = True
|
check_cs = True
|
||||||
elif nav_text == _("Families"):
|
elif nav_text == _("Surnames"):
|
||||||
if "fam" in self.report.cur_fname:
|
if "srn" in self.report.cur_fname:
|
||||||
check_cs = True
|
check_cs = True
|
||||||
elif nav_text == _("Sources"):
|
elif _("Surnames") in currentsection:
|
||||||
if "src" in self.report.cur_fname:
|
check_cs = True
|
||||||
check_cs = True
|
elif nav_text == _("Individuals"):
|
||||||
elif nav_text == _("Places"):
|
if "ppl" in self.report.cur_fname:
|
||||||
if "plc" in self.report.cur_fname:
|
check_cs = True
|
||||||
check_cs = True
|
elif nav_text == _("Families"):
|
||||||
elif nav_text == _("Events"):
|
if "fam" in self.report.cur_fname:
|
||||||
if "evt" in self.report.cur_fname:
|
check_cs = True
|
||||||
check_cs = True
|
elif nav_text == _("Sources"):
|
||||||
elif nav_text == _("Media"):
|
if "src" in self.report.cur_fname:
|
||||||
if "img" in self.report.cur_fname:
|
check_cs = True
|
||||||
check_cs = True
|
elif nav_text == _("Places"):
|
||||||
elif nav_text == _("Address Book"):
|
if "plc" in self.report.cur_fname:
|
||||||
if "addr" in self.report.cur_fname:
|
check_cs = True
|
||||||
check_cs = True
|
elif nav_text == _("Events"):
|
||||||
check_cs = 'class = "CurrentSection"' if check_cs else False
|
if "evt" in self.report.cur_fname:
|
||||||
if check_cs:
|
check_cs = True
|
||||||
unordered.extend(
|
elif nav_text == _("Media"):
|
||||||
Html("li", hyper, attr = check_cs, inline = True)
|
if "img" in self.report.cur_fname:
|
||||||
)
|
check_cs = True
|
||||||
else:
|
elif nav_text == _("Address Book"):
|
||||||
unordered.extend(
|
if "addr" in self.report.cur_fname:
|
||||||
Html("li", hyper, inline = True)
|
check_cs = True
|
||||||
)
|
check_cs = 'class = "CurrentSection"' if check_cs else False
|
||||||
|
if check_cs:
|
||||||
|
unordered.extend(
|
||||||
|
Html("li", hyper, attr = check_cs)
|
||||||
|
)
|
||||||
|
else:
|
||||||
|
unordered.extend(
|
||||||
|
Html("li", hyper)
|
||||||
|
)
|
||||||
|
index += 1
|
||||||
|
cols += 1
|
||||||
|
container += unordered
|
||||||
|
navigation += container
|
||||||
return navigation
|
return navigation
|
||||||
|
|
||||||
def add_image(self, option_name, height = 0):
|
def add_image(self, option_name, height = 0):
|
||||||
@@ -6865,9 +6880,12 @@ class NavWebReport(Report):
|
|||||||
# copy Menu Layout stylesheet if Blue or Visually is being used?
|
# copy Menu Layout stylesheet if Blue or Visually is being used?
|
||||||
if CSS[self.css]["navigation"]:
|
if CSS[self.css]["navigation"]:
|
||||||
if self.navigation == "Horizontal":
|
if self.navigation == "Horizontal":
|
||||||
fname = CSS["Horizontal-Menus"]["filename"]
|
fname = CSS["Horizontal-Menus"]["filename"]
|
||||||
|
|
||||||
|
elif self.navigation == "Vertical":
|
||||||
|
fname = CSS["Vertical-Menus"]["filename"]
|
||||||
else:
|
else:
|
||||||
fname = CSS["Vertical-Menus"]["filename"]
|
fname = CSS["Fade-Menus"]["filename"]
|
||||||
self.copy_file(fname, "narrative-menus.css", "styles")
|
self.copy_file(fname, "narrative-menus.css", "styles")
|
||||||
|
|
||||||
# copy narrative-maps if Place or Family Map pages?
|
# copy narrative-maps if Place or Family Map pages?
|
||||||
@@ -7512,8 +7530,9 @@ class NavWebOptions(MenuReportOptions):
|
|||||||
self.__css.connect("value-changed", self.__stylesheet_changed)
|
self.__css.connect("value-changed", self.__stylesheet_changed)
|
||||||
|
|
||||||
_nav_opts = [
|
_nav_opts = [
|
||||||
[_("Horizontal -- No Change"), "Horizontal"],
|
(_("Horizontal - Default"), "Horizontal"),
|
||||||
[_("Vertical"), "Vertical"]
|
(_("Vertical"), "Vertical"),
|
||||||
|
(_("Fade - WebKit browsers"), "Fade")
|
||||||
]
|
]
|
||||||
self.__navigation = EnumeratedListOption(_("Navigation Menu Layout"), _nav_opts[0][1])
|
self.__navigation = EnumeratedListOption(_("Navigation Menu Layout"), _nav_opts[0][1])
|
||||||
for layout in _nav_opts:
|
for layout in _nav_opts:
|
||||||
|
@@ -15,6 +15,7 @@ DATAFILES = \
|
|||||||
Web_Basic-Lilac.css \
|
Web_Basic-Lilac.css \
|
||||||
Web_Basic-Peach.css \
|
Web_Basic-Peach.css \
|
||||||
Web_Basic-Spruce.css \
|
Web_Basic-Spruce.css \
|
||||||
|
Web_Fade-Menus.css \
|
||||||
Web_Horizontal-Menus.css \
|
Web_Horizontal-Menus.css \
|
||||||
Web_Mainz.css \
|
Web_Mainz.css \
|
||||||
Web_Nebraska.css \
|
Web_Nebraska.css \
|
||||||
|
131
src/plugins/webstuff/css/Web_Fade-Menus.css
Normal file
131
src/plugins/webstuff/css/Web_Fade-Menus.css
Normal file
@@ -0,0 +1,131 @@
|
|||||||
|
/*
|
||||||
|
#
|
||||||
|
# Gramps - a GTK+/GNOME based genealogy program
|
||||||
|
#
|
||||||
|
# Copyright (C) 2012 Rob G. Healey <robhealey1@gmail.com>
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
#
|
||||||
|
# $Id$
|
||||||
|
#
|
||||||
|
*************************************************
|
||||||
|
GRAMPS Cascading Style Sheet
|
||||||
|
Style Name: Fade-Menus Style Sheet
|
||||||
|
*************************************************
|
||||||
|
|
||||||
|
Body Element
|
||||||
|
------------------------------------------------------ */
|
||||||
|
body {
|
||||||
|
background-color: #00029D;
|
||||||
|
color: #00029D;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Header
|
||||||
|
------------------------------------------------------ */
|
||||||
|
div#header {
|
||||||
|
border-bottom: solid 8px #13A926;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Fade Horizontal Navigation Menu
|
||||||
|
------------------------------------------------------ */
|
||||||
|
div.wrapper {
|
||||||
|
width: 100%;
|
||||||
|
height: 50px;
|
||||||
|
background : #464646;
|
||||||
|
background : -webkit-gradient(linear, left top, left bottombottom, from(rgb(168,168,168)), to(rgb(69,69,69)));
|
||||||
|
background : -moz-linear-gradient(top, rgb(168,168,168), rgb(69,69,69));
|
||||||
|
border-top: 2px solid #939393;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
ul {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
ul.menu {
|
||||||
|
height: 80px;
|
||||||
|
border-left: 1px solid rgba(0,0,0,0.3);
|
||||||
|
border-right: 1px solid rgba(255,255,255,0.3);
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
ul.menu li {
|
||||||
|
list-style-type: none;
|
||||||
|
float: left;
|
||||||
|
height: 45px;
|
||||||
|
text-align: center;
|
||||||
|
background: -webkit-gradient(radial, 50% 100%, 10, 50% 50%, 90, from(rgba(31,169,244,1)), to(rgba(0,28,78, 1)) );
|
||||||
|
background: -moz-radial-gradient(center 80px 45deg, circle cover, rgba(31,169,244,1) 0%, rgba(0,28,78, 1) 100%);
|
||||||
|
}
|
||||||
|
ul li a {
|
||||||
|
font: bold .9em "Helvetica, Courier, Arial, sans-serif, sans";
|
||||||
|
display: block;
|
||||||
|
padding: 0 6px;
|
||||||
|
border-left: 1px solid rgba(255,255,255,0.1);
|
||||||
|
border-right: 1px solid rgba(0,0,0,0.1);
|
||||||
|
text-align: center;
|
||||||
|
line-height: 45px;
|
||||||
|
background : -webkit-gradient(linear, left top, left bottombottom, from(rgb(168,168,168)), to(rgb(69,69,69)));
|
||||||
|
background : -moz-linear-gradient(top, rgb(168,168,168), rgb(69,69,69));
|
||||||
|
-webkit-transition-property: background;
|
||||||
|
-webkit-transition-duration: 700ms;
|
||||||
|
-moz-transition-property: background;
|
||||||
|
-moz-transition-duration: 700ms;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
ul li a:hover {
|
||||||
|
background: transparent none;
|
||||||
|
color: #FFF;
|
||||||
|
}
|
||||||
|
ul li.CurrentSection a {
|
||||||
|
background: -webkit-gradient(radial, 50% 100%, 10, 50% 50%, 90, from(rgba(31,169,244,1)), to(rgba(0,28,78, 1)) );
|
||||||
|
background: -moz-radial-gradient(center 80px 45deg, circle cover, rgba(31,169,244,1) 0%, rgba(0,28,78, 1) 100%);
|
||||||
|
Color: #FFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Alphabet Navigation Menu
|
||||||
|
------------------------------------------------------ */
|
||||||
|
div#alphanav {
|
||||||
|
clear: both;
|
||||||
|
padding-top: 1px;
|
||||||
|
font: bold 1.2em/1.4 "sans, sans-serif";
|
||||||
|
}
|
||||||
|
div#alphanav ul {
|
||||||
|
float: left;
|
||||||
|
width: 100%;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
list-style-type: none;
|
||||||
|
background: #00029D;
|
||||||
|
border-top: 2px solid #13A926;
|
||||||
|
border-bottom: 2px solid #13A926;
|
||||||
|
}
|
||||||
|
div#alphanav li {
|
||||||
|
display: inline;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
div#alphanav a {
|
||||||
|
display: block;
|
||||||
|
float: left;
|
||||||
|
padding: 6px 12px;
|
||||||
|
border-right: 1px solid #13A926;
|
||||||
|
border-left: 1px solid #13A926;
|
||||||
|
color: #FFF;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
div#alphanav a:hover, div#alphanav a:focus {
|
||||||
|
background: #FFF;
|
||||||
|
color: #000;
|
||||||
|
}
|
@@ -118,14 +118,18 @@ def load_on_reg(dbstate, uistate, plugin):
|
|||||||
["Print-Default", 0, "Print-Default",
|
["Print-Default", 0, "Print-Default",
|
||||||
path_css('Web_Print-Default.css'), None, [], [] ],
|
path_css('Web_Print-Default.css'), None, [], [] ],
|
||||||
|
|
||||||
# vertical navigation style sheet
|
# Horizontal Navigation Menus Style Sheet
|
||||||
["Vertical-Menus", 0, "",
|
|
||||||
path_css('Web_Vertical-Menus.css'), None, [], [] ],
|
|
||||||
|
|
||||||
# horizontal navigation style sheet
|
|
||||||
["Horizontal-Menus", 0, "",
|
["Horizontal-Menus", 0, "",
|
||||||
path_css('Web_Horizontal-Menus.css'), None, [], [] ],
|
path_css('Web_Horizontal-Menus.css'), None, [], [] ],
|
||||||
|
|
||||||
|
# Horizontal Fade Navigation Style Sheet
|
||||||
|
["Fade-Menus", 0, "",
|
||||||
|
path_css('Web_Fade-Menus.css'), None, [], [] ],
|
||||||
|
|
||||||
|
# Vertical Navigation Menus Style Sheet
|
||||||
|
["Vertical-Menus", 0, "",
|
||||||
|
path_css('Web_Vertical-Menus.css'), None, [], [] ],
|
||||||
|
|
||||||
# GeoView style sheet with its image
|
# GeoView style sheet with its image
|
||||||
["GeoView", 0, "GeoView",
|
["GeoView", 0, "GeoView",
|
||||||
path_css("GeoView.css"), None,
|
path_css("GeoView.css"), None,
|
||||||
|
Reference in New Issue
Block a user