From: Laurent Bobelin Date: Tue, 6 Sep 2011 14:27:23 +0000 (+0200) Subject: Simgrid website documentation should be OK now. It's now separated totally from the... X-Git-Tag: v3_6_2~145 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/d2bf78ef3304878995a537b02d90c8f598a5817f Simgrid website documentation should be OK now. It's now separated totally from the doc generation --- diff --git a/buildtools/Cmake/GenerateDoc.cmake b/buildtools/Cmake/GenerateDoc.cmake index bbcd09790e..ef9d8b9f0d 100644 --- a/buildtools/Cmake/GenerateDoc.cmake +++ b/buildtools/Cmake/GenerateDoc.cmake @@ -262,16 +262,24 @@ file(REMOVE ${CMAKE_HOME_DIRECTORY}/doc/tmp.curtoc) #Website configure_file(${CMAKE_HOME_DIRECTORY}/website/Doxyfile_website.in ${CMAKE_HOME_DIRECTORY}/website/Doxyfile_website @ONLY) +configure_file(${CMAKE_HOME_DIRECTORY}/website/index.php.in ${CMAKE_HOME_DIRECTORY}/website/html/index.php @ONLY) +configure_file(${CMAKE_HOME_DIRECTORY}/website/documentation.php.in ${CMAKE_HOME_DIRECTORY}/website/html/documentation.php @ONLY) +configure_file(${CMAKE_HOME_DIRECTORY}/website/download.php.in ${CMAKE_HOME_DIRECTORY}/website/html/download.php @ONLY) ADD_CUSTOM_TARGET(simgrid_website COMMENT "Generating the SimGrid Website..." DEPENDS ${WEBSITE_SOURCES} ${CMAKE_HOME_DIRECTORY}/website/all.bib - COMMAND ${CMAKE_HOME_DIRECTORY}/tools/doxygen/toc_create.pl FAQ.doc contrib.doc history.doc - COMMAND ${CMAKE_COMMAND} -E echo "XX Doxygen website pass" + COMMAND ${CMAKE_HOME_DIRECTORY}/tools/doxygen/toc_create.pl FAQ.doc contrib.doc history.doc + COMMAND ${CMAKE_COMMAND} -E echo "XX Doxygen website pass" COMMAND ${DOXYGEN_PATH}/doxygen Doxyfile_website COMMAND ${CMAKE_COMMAND} -E echo "XX Post-processing Doxygen website result" - #COMMAND ${CMAKE_HOME_DIRECTORY}/tools/doxygen/doxygen_postprocesser_website.pl + COMMAND ${CMAKE_HOME_DIRECTORY}/tools/doxygen/doxygen_postprocesser_website.pl + + COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_HOME_DIRECTORY}/website/stylesheets/ ${CMAKE_HOME_DIRECTORY}/website/html/ + COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_HOME_DIRECTORY}/website/logos/ ${CMAKE_HOME_DIRECTORY}/website/html/ + COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_HOME_DIRECTORY}/website/img/ ${CMAKE_HOME_DIRECTORY}/website/html/ + WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}/website/ ) @@ -289,7 +297,6 @@ ADD_CUSTOM_TARGET(bib_files COMMAND ${CMAKE_HOME_DIRECTORY}/tools/doxygen/bibtex2html_wrapper.pl publis_core COMMAND ${CMAKE_HOME_DIRECTORY}/tools/doxygen/bibtex2html_wrapper.pl publis_extern COMMAND ${CMAKE_HOME_DIRECTORY}/tools/doxygen/bibtex2html_wrapper.pl publis_intra - WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}/website/ ) diff --git a/tools/doxygen/doxygen_postprocesser_website.pl b/tools/doxygen/doxygen_postprocesser_website.pl new file mode 100755 index 0000000000..1c47f1d779 --- /dev/null +++ b/tools/doxygen/doxygen_postprocesser_website.pl @@ -0,0 +1,465 @@ +#! /usr/bin/perl + +use strict; + +# Add here the pages of the documentation generated by a @page doxygen macro +my @extra_files = qw(html/faq.html html/history.html html/contrib.html html/people.html + html/publis.html html/publis_core.html html/publis_extern.html html/publis_intra.html); + + +my %debug; +$debug{'parse'} = 0; # show how we parse the module tree +$debug{'input'} = 0; # display the resulting tree +$debug{'handle'}= 0; # Be verbose on the post-processing +$debug{'rename'}= 0; # do not overwrite the files (allows several debuging runs without rerunning doxygen) + +my @allfiles; +### +### Get the module definitions +### + +open IN, "html/modules.html" || die "Cannot parse html/modules.html. Did you really run doxygen?\n"; + +# pass headers +while () { + last if /group__SimGrid__API.html/; +} + +# Parse the tree +my $top; +my $current; +my $entry; + +# $current->{'label'}="ROOT"; +# push @{$top->{'down'}},$current; +# print "Push $current '".($current->{'label'})."' as child of $top '".($top->{'label'})."'\n" if $debug{'parse'}; +# $current=$top; +$top->{'label'}="ROOT"; +print "Create ROOT $top\n" if $debug{'parse'}; +$current=$top; + + +# Read the whole data to postprocess it a bit +my $in; +while () { + $in .= $_; +} +$in =~ s/
    /\n
      \n/sg; +foreach $_ (split(/\n/,$in)) { + next unless length($_); + next if ($_ =~ m|^$|); + print " Seen '$_'\n" if $debug{'parse'}; + if (/
        /) { + print "DOWN: $current '$current->{'label'}' -> " if $debug{'parse'}; + $current = $current->{'down'}[scalar @{$current->{'down'}} - 1]; + print "$current '$current->{'label'}'\n" if $debug{'parse'}; + next; + } + if (/<\/ul>/) { + $current = $current->{'up'}; + print "UP to $current '$current->{'label'}'\n" if $debug{'parse'}; + next; + } + if (/

        /) { + last; + } + + m|href="([^"]*)">([^<]*)|; #" + + $entry = {}; + $entry->{'file'} = $1; + $entry->{'label'} = $2; + $entry->{'up'} = $current; + push @{$current->{'down'}},$entry; + print "Push file:$1 label:'$2' as child of $current '$current->{'label'}'\n" if $debug{'parse'}; + push @allfiles,"html/$1"; +} +close IN; + +# Check each file for extra information (short name, extra childs) +sub extra_info { + my $current=shift; + + if (defined($current->{'file'})) { + open IN, "html/$current->{'file'}"; + while () { + if (/DOXYGEN_NAVBAR_LABEL/) { + if (/DOXYGEN_NAVBAR_LABEL="([^"]*)"/) {#" + print "Extra info from $current->{'file'}: label=$1, not $current->{'label'}\n" if $debug{'parse'}; + $current->{'label'}=$1; + } else { + die "Malformated DOXYGEN_NAVBAR_LABEL line in $current->{'file'}"; + } + } + if (/DOXYGEN_NAVBAR_CHILD/) { + if (/DOXYGEN_NAVBAR_CHILD *"([^"]*)"=([^ ]*)/) {#" + $entry = {}; + $entry->{'label'} = $1; + $entry->{'file'} = $2; + chomp($entry->{'file'}); + $entry->{'up'} = $current; + push @{$current->{'down'}},$entry; + print "Extra info from $current->{'file'}: New child $entry->{'label'}=$entry->{'file'}\n" if $debug{'parse'}; + } else { + die "Malformated DOXYGEN_NAVBAR_CHILD line in $current->{'file'}"; + } + } + } + } + + foreach my $entry (@{$current->{'down'}}) { + extra_info($entry); + } +} +extra_info($top); + +## debug function +sub display { + my $current=shift; + my $level=shift; + print " " x $level; + print "$current: ".$current->{'label'}." ($current->{'file'})\n"; + foreach my $entry (@{$current->{'down'}}) { + display($entry,$level+1); + } +} + +display($top,0) if $debug{'input'}; + +### +### Generate the navbar +### + +# the root deserves some special handling +open IN,"html/modules.html" || die; +open OUT,">html/modules.new.html" || die; +my $line; +while ($line = ) { + last if $line =~ /

        SimGrid Modules\n \n"; +print OUT $line; +while () { + print OUT $_; +} + +close OUT; +close IN; +rename("html/modules.new.html","html/modules.html") unless $debug{'rename'}; + +# the publication pages deserves some special handling too +my %pub_tabs = ("publis.html" =>"Reference publications", + "publis_core.html" =>"Other publication about SimGrid", + "publis_extern.html"=>"External papers using SimGrid", + "publis_intra.html"=>"Internal papers using SimGrid"); +# force ordering +my @pub_titles = ("publis.html", "publis_core.html", "publis_extern.html", "publis_intra.html"); +sub handle_pub{ + my $oldname = shift; + my $newname = $oldname; + $newname =~ s/\.html$/.new.html/; + +# print "Handle_pub($oldname -> $newname)\n"; + + open IN,"html/$oldname" || die "Cannot open $oldname"; + open OUT,">html/$newname" || die "Cannot open $newname"; + my $line; +# BIG FAT WARNING : THIS HACK IS DEPENDANT OF THE DOXYGEN VERSION AND OUR TEXT (because of the string we are looking for, that is changing with doxygen version, either h1 or div class="title" ... So we're forced to use titles defined in doc files... + while ($line = ) { + last if (($line =~ /Reference publications about SimGrid/) or ($line =~ /Publications about the SimGrid framework/) or ($line =~ /Papers that use SimGrid-generated results/) or ($line =~ /Our own papers that use SimGrid-generated results/)); + print OUT $line; + } + + print OUT "
        \n
        \n"; + print OUT $line; + while ($line = ) { + print OUT $line; + } + close OUT; + close IN; + rename("html/$newname","html/$oldname") unless $debug{'rename'}; +} +map {handle_pub($_)} @pub_titles; + + +# Operate the recursion +sub handle_page { + my $current=shift; + my $level=shift; + + print "Handle $current->{'file'} at level $level\n" if $debug{'handle'}; + + # we generate the tabs bottom up begining from where we are in the tree + # and display them top down, as it should in a file + my @tabs = (); + my $found_div_tabs=0; + + if (defined ($current->{'label'}) and $current->{'label'} ne 'ROOT') { +# print "handle $current->{'file'}, at level $level\n"; + # generate the tabs + my $iterator = $current; + my $lvl_it=$level; + while ($lvl_it >= 0) { + my $father = $iterator->{'up'}; + $tabs[$lvl_it] = "
        \n
        \n"; + $iterator = $father; + $lvl_it--; + } + if (defined $current->{'down'}) { # there's some kid. Display them too + $tabs[$level+1] = "
        \n
          \n"; + foreach my $kid (@{$current->{'down'}}) { + $tabs[$level+1] .= "
        • {'file'}\">$kid->{'label'}
        • \n"; + } + $tabs[$level+1] .= "
        \n"; + } + + # put them in place + open FROM,"html/$current->{'file'}" || die; + my $newname="html/$current->{'file'}"; + $newname =~ s/.html/.handlepage.html/; + open TO,">$newname" || die; +# print "XXX Deal with html/$current->{'file'} -> $newname\n"; + while () { +# print "--Read $_"; + # add "current" to the module API granfather page + s|
      • [^<]*
      • |
      • Modules API
      • |; +# print "++Write $_"; + $found_div_tabs=1 if m/div.*class="tabs"/; + print TO "$_"; + last if ((m||)&&($found_div_tabs)); + } + + print TO "\n\n"; + foreach (@tabs) { +# print "TAB: $_"; + print TO "$_"; + } + print TO "\n\n"; + + if ($current->{'file'} =~ m/^class/) { + while () { + last if (m||); + } + print TO "$_"; + } + while () { + if (m/POST-PROCESSED TABS/) { + while () { + last if (m/END OF POST-PROCESSED TABS/); + } + next; + } + + if (m/The documentation for/) { + while () { + last if (m/

        /); + } + } + print TO "$_"; + } + close FROM; + close TO; + rename("$newname","html/$current->{'file'}") unless $debug{'rename'}; + } + + # recurse on childs + foreach my $entry (@{$current->{'down'}}) { + handle_page($entry,$level+1); + } +} + +### +### Launch the modules navbar reworking +### +handle_page($top,-1);# skip roots (we have 2 roots) in level counting + +### +### Add the modules navbar reworking to the modules.html file +### +sub add_tabs_to_module_html { + my $found_div_tabs=0; + my $module_tabs = "

        \n
        \n"; + + my $oldname = "html/modules.html"; + open FROM,$oldname || die; + my $newname=$oldname; + $newname =~ s/.html/.handlepage.html/; + open TO,">$newname" || die; + while () { + $found_div_tabs=1 if m/div.*class="tabs"/; + print TO "$_"; + last if ((m||)&&($found_div_tabs)); + } + + print TO "\n\n"; + print TO $module_tabs; + print TO "\n\n"; + + while () { + print TO "$_"; + } + close FROM; + close TO; + rename($newname, $oldname) unless $debug{'rename'}; + + # die; +} + +add_tabs_to_module_html; + +### +### Post-processsing common to all pages +### +map {push @allfiles,$_} @extra_files; +print "All files: ".(join(", ",@allfiles))."\n" if $debug{'parse'}; + +my $tabs; + +foreach my $file (@allfiles) { + $file =~ s/.html/.handlepage.html/ if $debug{'rename'}; # Take right name if debugging + + open FROM,"$file" || die; + my $outfile = "$file"; + $outfile =~ s/.(html|php)$/.new.$1/; + open TO,">$outfile" || die; +# print "POSTPROCESSING $file (tmp=$outfile)\n"; + while () { + + + + if($tabs){ + if($file =~ /^html\/index\..*/){ + $_ =~ s/
      • /
      • /g; + $_ =~ s/
      • /
      • /g; + } + $_ =~ s/
      • /
      • /g; + + if($file =~ /^html\/pages\..*/){ + $_ =~ s/
      • /
      • /g; + } + } + + if($file =~ /^html\/publis.*/){ + $_ =~ s/
        /
        /g; + $_ =~ s/
        /
        /g; + } + + # Add the FAQ PUBLIS PEOPLE HISTORY and CONTRIB to the top navbar. + if( $_ =~ //){ + $tabs = 1; + } + if( $_ =~ /<\/div>/){ + $tabs = 0; + } + if( $_ =~ /<\/ul>/ && $tabs){ + my $tmp_buff=""; + + # LBO : ugly way to separate doc in 2 separate stuff ... + $tmp_buff .= '
      • Download
      • '."\n"; + $tmp_buff .= '
      • Online documentation
      • '."\n"; + $tmp_buff .= '
      • Publications
      • '."\n"; + $tmp_buff .= '
      • People
      • '."\n"; + $tmp_buff .= '
      • History
      • '."\n"; + $tmp_buff .= '
      • Contrib
      • '."\n"; + $tmp_buff .= '
      • FAQ Page
      • '."\n"; + + + $tmp_buff .= '
      • SimGrid Forge
      • '."\n"; + + + $tmp_buff .= $_; + $tabs = 0; + + # Rework the navbar and add menu for use.html + # Fix the current "button" of buggy Doxygen tabs + if($file =~ /^html\/use.*/ + || $file =~ /^html\/installSimgrid.*/ + || $file =~ /^html\/options.*/ + || $file =~ /^html\/bindings.*/ + || $file =~ /^html\/gtnets.*/ + || $file =~ /^html\/ns3.*/ + || $file =~ /^html\/modules.*/ + || $file =~ /^html\/annotated.*/) + { + $tmp_buff .= '
        '."\n"; + $tmp_buff .= '
        '."\n"; + $tmp_buff .= ' '."\n"; + + my $filename = $file; + $filename =~ s/html\///g; + $filename =~ s/\.html//g; + $filename =~ s/publis_.*/publis/g; + $tmp_buff =~ s/
      • /
      • /g; + $tmp_buff =~ s/
      • /
      • /g; + $tmp_buff =~ s/
      • /
      • /g; + + } + + # Rework the navbar + # Fix the current "button" of buggy Doxygen tabs + if($file =~ /^html\/publis.*/ + || $file =~ /^html\/faq.*/ + || $file =~ /^html\/people.*/ + || $file =~ /^html\/history.*/ + || $file =~ /^html\/contrib.*/ + || $file =~ /^html\/pages.*/) + { + my $filename = $file; + $filename =~ s/html\///g; + $filename =~ s/\.html//g; + $filename =~ s/publis_.*/publis/g; + $tmp_buff =~ s/
      • /
      • /g; + $tmp_buff =~ s/
      • /
      • /g; + } + + + print TO $tmp_buff; + next; + } + + s|
      • Main Page|
      • Home|g; + s|Main Page|Home|g; + s|Modules|Modules API|g; + s|Related Pages
      • \n||g; + s|
      • Modules API
      • \n||g; + s|
      • Data Structures
      • \n||g; + s|
      • Modules API
      • \n||g; + s|
      • Data Structures
      • \n||g; + s|Related Pages<|Documentation Index<|g; + s|

      "; + } + } + else { + echo "No version now.\n"; + } +} -echo ''; ?> - - - - - - - + + + - SimGrid - Scalable simulation of distributed systems, ranging from grids to peer-to-peer systems + + + + SimGrid - Online documentation - - - - - - - - - - + +

      +
      +

      +
      SimGrid - ';}?> -
      -
      - gforge INRIA
      + +
      +The documentation for SimGrid is maintained for the latest versions. It contains informations on how to use SimGrid, some tutorial, and its inner component. Here is the list of available documentation version: + +
      -______ONGLETS______ - - - - - - - - - - - - - - - - - - - - - - - - - -
        - - - - -
      - - - - - - - - - - - - - - - - - - - - -
      - - - - - - - -
      - -______BODY______ - - - - - -
      - - - - - - - -
      Project Summary
      - - -
      -
      -
      - - - -
      -

       

      -
      - CC-GNU LGPL -
      -  

      -

      - Help: siteadmin-help@lists.gforge.inria.fr Webmaster: webmaster@gforge.inria.fr -
      - - - -
      - - - -
      - - -
      -
      -Powered By GForge Collaborative Development Environment -
      - - + diff --git a/website/download.php.in b/website/download.php.in index 1763ca7f55..47d5f94fbc 100644 --- a/website/download.php.in +++ b/website/download.php.in @@ -1,214 +1,71 @@ -'; -?> - - - - - - - + + + - SimGrid - Scalable simulation of distributed systems, ranging from grids to peer-to-peer systems + + + + SimGrid - Downloads - - - - - - - - - - -
      SimGrid - ';}?> -
      -
      - gforge INRIA
      -______ONGLETS______ - - - - - - - - - - - - - - - - - -
        - - - - -
      - - - - - - - - - - - - - - - - - - - - -
      - - - - - - - - - - - -
      - +

      +SimGrid - Scalable simulation of distributed systems, ranging from grids to peer-to-peer systems +

      +

      Scalable simulation of distributed systems

      + +

      +
      +

      + + + - - - +
      + + -______BODY______ - - - - -
      - - - - - - - -
      Project Summary
      - - -
      -
      -
      - - - -
      -

       

      -
      - CC-GNU LGPL -
      -  

      -

      - Help: siteadmin-help@lists.gforge.inria.fr Webmaster: webmaster@gforge.inria.fr -
      - - - -
      - - - -
      - - -
      -
      -Powered By GForge Collaborative Development Environment -
      - - + diff --git a/website/footer.html b/website/footer.html index b59f02c7ab..44f2311b49 100644 --- a/website/footer.html +++ b/website/footer.html @@ -1,22 +1,22 @@ + + + diff --git a/website/header.html b/website/header.html new file mode 100644 index 0000000000..cc56b39f70 --- /dev/null +++ b/website/header.html @@ -0,0 +1,23 @@ + + + + + + + + + SimGrid - Scalable simulation of distributed systems, ranging from grids to peer-to-peer systems + + + + + + +

      +
      + diff --git a/website/img/tab_a.png b/website/img/tab_a.png new file mode 100644 index 0000000000..2d99ef23fe Binary files /dev/null and b/website/img/tab_a.png differ diff --git a/website/img/tab_b.png b/website/img/tab_b.png new file mode 100644 index 0000000000..b2c3d2be3c Binary files /dev/null and b/website/img/tab_b.png differ diff --git a/website/img/tab_h.png b/website/img/tab_h.png new file mode 100644 index 0000000000..c11f48f19b Binary files /dev/null and b/website/img/tab_h.png differ diff --git a/website/img/tab_s.png b/website/img/tab_s.png new file mode 100644 index 0000000000..978943ac80 Binary files /dev/null and b/website/img/tab_s.png differ diff --git a/website/index.php.in b/website/index.php.in index 1763ca7f55..25dfe2d20b 100644 --- a/website/index.php.in +++ b/website/index.php.in @@ -1,159 +1,103 @@ '; +$domain="gforge.inria.fr"; +$group_name="simgrid"; ?> - - - - - - - + + + + + + SimGrid - Scalable simulation of distributed systems, ranging from grids to peer-to-peer systems - - - - - - - - - - -
      SimGrid - ';}?> -
      -
      - gforge INRIA
      -______ONGLETS______ - - - - - - - - - - - - - - - - - -
        - - - - -
      - - - - - - - - - - - - - +
      - - - - - - - - - - - +
      - -______BODY______ - + +

      +
      +

      + + + - - - - - - - - - -
      +

      Welcome to the SimGrid project!

      +

      SimGrid in a nutshell:

      +

      SimGrid is a toolkit that provides core functionalities for the simulation of distributed applications in heterogeneous distributed environments. The specific goal of the project is to facilitate research in the area of parallel and distributed large scale systems, such as Grids, P2P systems and clouds. Its use cases encompass heuristic evaluation, application prototyping or even real application development and tuning +

      +

      What SimGrid can do for you ?

      +
        + +
      • +SimGrid as a Grid Simulator: Accurate yet fast simulation models +
      • +
      • +SimGrid as a P2P simulator: Highly scalable simulations (we managed to simulate 2M hosts on a single machine (see here for an example of it) +
      • +
      • +SimGrid as a MPI simulator: SimGrid provides an API to simulate reallisticaly MPI simulation +
      • +
      • And so much more: SimGrid comes with a whole ecosystem of applications, for example tools to visualize and analyse your simulation results and traces, platform generation ..., and with so fancy features to help you to handle your platform dynamicity simulation (quantitative resource sharing or qualitative churn) +
      • +
      +

      Main strengths

      +
        + +
      • Scalable: Fast, low memory footprint
      • +
      • Sound simulation models: theoretically and experimentally assessed
      • +
      • Portable: Unix/ Windows ; Numerous bindings (write your simulators in C, Lua or Java or Ruby)
      • +
      • User interfaces: models and API to simulate many different distributed systems, ranging from grid to peer-to-peer
      • +
      + + +

      Tool dissemination

      +
        + +
      • Grounded experiments of +50 scientific papers
      • +
      • +100 member of the simgrid-user mailing list
      • +
      • +5 associated tools provided by the community
      • +
      +

      Would you like to know more?

      +
        +
      • The documentation contains docs for the latests version of the tool. Each documentation contains examples, description of the different modules of the projects, and many more
      • +
      • In case of trouble, try to ask the mailing list !
      • +
      • A tutorial is also available here
      • +
      • Are you interested on the scientific ground of SimGrid ? Take a look at our publications !
      • +
      • Do you want to know the whole story of SimGrid, since when it all began ? Here is the tale of SimGrid
      • + +
      + +

      - - + - -
      + -
      - - - +
      Project Summary
      + +
      - - -
      -
      -

       

      -
      - CC-GNU LGPL -
      -  

      -

      - Help: siteadmin-help@lists.gforge.inria.fr Webmaster: webmaster@gforge.inria.fr -
      - - - -
      - - - -
      +
      - - -
      -
      -Powered By GForge Collaborative Development Environment -
      - - + diff --git a/website/logos/logo_INRIA.png b/website/logos/logo_INRIA.png new file mode 100644 index 0000000000..06b9cf0228 Binary files /dev/null and b/website/logos/logo_INRIA.png differ diff --git a/website/logos/logo_LGPL.png b/website/logos/logo_LGPL.png new file mode 100644 index 0000000000..faeac30675 Binary files /dev/null and b/website/logos/logo_LGPL.png differ diff --git a/website/logos/simgrid_logo.png b/website/logos/simgrid_logo.png new file mode 100644 index 0000000000..2ff15a6e4f Binary files /dev/null and b/website/logos/simgrid_logo.png differ diff --git a/website/stylesheets/simgrid.css b/website/stylesheets/simgrid.css new file mode 100644 index 0000000000..fbca276569 --- /dev/null +++ b/website/stylesheets/simgrid.css @@ -0,0 +1,19 @@ +/* Table Of Content styles, by Martin Quinson (but not original at all) */ +DIV.toc { + background-color: #e8eef2; + border: 1px solid #84b0c7; + font-size: 120%; + display: block; + float: right; + margin: 10px; + padding: 10px; + padding-top: 0px; + padding-bottom: 0px; + width:40%; +} + +DIV.tocTitle { + text-align: center; + font-weight: bold; + font-size: 130%; +} diff --git a/website/stylesheets/simgridsite.css b/website/stylesheets/simgridsite.css new file mode 100644 index 0000000000..23b68fc3fd --- /dev/null +++ b/website/stylesheets/simgridsite.css @@ -0,0 +1,92 @@ +/**** page main layout ****/ +body { + margin: 0px; + padding: 0px 0px 10px 0px; +} +/** Header layout ***/ +#header {text-align: center; +padding:0; margin:0 auto; +list-style:none; +width:100%; height:150px; +font-size:16px; color:#888; font-weight:normal; margin-top:15px; + } +h1 { +color:#e33729; background:#fff; +} + +/*** Main sections layout ***/ +#main {text-align: left; +padding:0; margin:0 auto; +list-style:none; +width:1000px; +font-size:16px; color:#000; font-weight:normal; margin-top:15px; + } +h1 { +color:#e33729; background:#fff; +} +h2 { +color:#e33729; background:#fff; +} +h3 { +color:#e33729; background:#fff; +} + +.subtitle { +color:#000; +} +/*** hyperrefs ***/ +a { + text-decoration: none; +} +h4 a { +color:#e33729; background:#fff; +} + +/*** Courses special layout ***/ +div.course div.description {display:none} +div.touch:hover + div.description {display:block} +div.touch{font-size:12px; color:#888; font-weight:normal;} + +/** Footer layout ***/ +#footer {text-align: center; +padding:0; margin:0 auto; +list-style:none; +width:1000px; height:200px; +font-size:12px; color:#888; font-weight:normal; margin-top:15px; + } +/*** Footer logos ***/ +ul.footerlogos {padding:0; margin:0 auto; list-style:none; width:600px; height:100px; position:relative;} +ul.footerlogos li {width:200px; height:100px; float:left;} + +ul.footerlogos li a {display:block; width:150px; height:50px; padding:25px; font-family:arial, sans-serif; color:#666; text-decoration:none; font-size:12px; +-webkit-transition: 0.1s; +-moz-transition: 0.1s; +-o-transition: 0.1s; +transition: 0.1s; +} + +ul.footerlogos li:hover > a {text-align:center; height:64px; padding:18px; cursor:pointer;} +/*** avoiding borders ***/ +a img +{ +border: none; +} +/*** For the latest news ***/ +.tablecontent {background:#f6f6f6; +} +.titlebar { +font-size:20px; +} + +/*** For doc generated title div ***/ +div.title { +text-align: center; +color:#e33729; background:#fff; +font-size:25px; +} +/*** For fitting with the 80 rule for blog-styling in doxy-generated pages ***/ +div.contents { + margin-left: auto; + margin-right: auto; +width:70%; +} diff --git a/website/stylesheets/simgridsitetabs.css b/website/stylesheets/simgridsitetabs.css new file mode 100644 index 0000000000..fe92655fea --- /dev/null +++ b/website/stylesheets/simgridsitetabs.css @@ -0,0 +1,60 @@ +.tabs, .tabs2, .tabs3 { + background-image: url('../img/tab_b.png'); + width: 100%; + z-index: 101; + font-size: 13px; + align:center; +} + +.tabs2 { + font-size: 10px; +} +.tabs3 { + font-size: 9px; +} + +.tablist { + margin: 0; + padding: 0; + display: table; +} + +.tablist li { + float: left; + display: table-cell; + background-image: url('../img/tab_b.png'); + line-height: 36px; + list-style: none; +} + +.tablist a { + display: block; + padding: 0 20px; + font-weight: bold; + background-image:url('../img/tab_s.png'); + background-repeat:no-repeat; + background-position:right; + color: #283A5D; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; + outline: none; +} + +.tabs3 .tablist a { + padding: 0 10px; +} + +.tablist a:hover { + background-image: url('../img/tab_h.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); + text-decoration: none; +} + +.tablist li.current a { + background-image: url('../img/tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +}