hmml_to_html.c: Organise CSS [#22]
This commit is contained in:
parent
9c47ca398f
commit
d1e580868a
|
@ -0,0 +1,31 @@
|
||||||
|
.title {
|
||||||
|
background-color: #444;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container > .marker {
|
||||||
|
border-bottom: 1px solid rgba(255, 255, 255, 0.05);
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container > .marker:hover > .content {
|
||||||
|
background-color: #222;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container > .marker:hover .faded .content {
|
||||||
|
background-color: rgba(139, 61, 35, 0.7);
|
||||||
|
color: black;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container > .marker > .content {
|
||||||
|
background-color: #161616;
|
||||||
|
color: #8A877D;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container > .marker.current > .content {
|
||||||
|
color: #B57714;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container > .marker .progress .content {
|
||||||
|
background-color: #8B3D23;
|
||||||
|
color: black;
|
||||||
|
}
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
#if 0
|
#if 0
|
||||||
ctime -begin ${0%.*}.ctm
|
ctime -begin ${0%.*}.ctm
|
||||||
#gcc -g -Wall -Wno-unused-variable -fsanitize=address -std=c99 $0 -o ${0%.*} hmml.a
|
|
||||||
gcc -g -Wall -fsanitize=address -std=c99 $0 -o ${0%.*} hmml.a
|
gcc -g -Wall -fsanitize=address -std=c99 $0 -o ${0%.*} hmml.a
|
||||||
ctime -end ${0%.*}.ctm
|
ctime -end ${0%.*}.ctm
|
||||||
exit
|
exit
|
||||||
|
@ -11,10 +10,10 @@ typedef unsigned int bool;
|
||||||
#define TRUE 1
|
#define TRUE 1
|
||||||
#define FALSE 0
|
#define FALSE 0
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h> // NOTE(matt): varargs
|
||||||
#include <stdio.h>
|
#include <stdio.h> // NOTE(matt): printf, sprintf, vsprintf, fprintf, perror
|
||||||
#include <stdlib.h>
|
#include <stdlib.h> // NOTE(matt): calloc, malloc, free
|
||||||
#include <string.h>
|
#include <string.h> // NOTE(matt): strncmp, memset
|
||||||
#include "hmmlib.h"
|
#include "hmmlib.h"
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
|
@ -32,10 +31,10 @@ typedef struct
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
char ID[1024];
|
char RefTitle[620];
|
||||||
char RefTitle[512];
|
char ID[512];
|
||||||
char URL[372];
|
char URL[512];
|
||||||
char Source[128];
|
char Source[256];
|
||||||
identifier Identifier[12];
|
identifier Identifier[12];
|
||||||
int IdentifierCount;
|
int IdentifierCount;
|
||||||
} ref_info;
|
} ref_info;
|
||||||
|
@ -87,12 +86,12 @@ TimecodeToSeconds(char *Timecode)
|
||||||
int Colons = 0;
|
int Colons = 0;
|
||||||
while(*Timecode)
|
while(*Timecode)
|
||||||
{
|
{
|
||||||
if((*Timecode < '0' || *Timecode > '9') && *Timecode != ':') { return FALSE; }
|
//if((*Timecode < '0' || *Timecode > '9') && *Timecode != ':') { return FALSE; }
|
||||||
|
|
||||||
if(*Timecode == ':')
|
if(*Timecode == ':')
|
||||||
{
|
{
|
||||||
++Colons;
|
++Colons;
|
||||||
if(Colons > 2) { return FALSE; }
|
//if(Colons > 2) { return FALSE; }
|
||||||
for(int i = 0; i < Colons; ++i)
|
for(int i = 0; i < Colons; ++i)
|
||||||
{
|
{
|
||||||
HMS[Colons - i] = HMS[Colons - (i + 1)];
|
HMS[Colons - i] = HMS[Colons - (i + 1)];
|
||||||
|
@ -107,7 +106,7 @@ TimecodeToSeconds(char *Timecode)
|
||||||
++Timecode;
|
++Timecode;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(HMS[0] > 59 || HMS[1] > 59 || Timecode[-1] == ':') { return FALSE; }
|
//if(HMS[0] > 59 || HMS[1] > 59 || Timecode[-1] == ':') { return FALSE; }
|
||||||
|
|
||||||
return HMS[2] * 60 * 60 + HMS[1] * 60 + HMS[0];
|
return HMS[2] * 60 * 60 + HMS[1] * 60 + HMS[0];
|
||||||
}
|
}
|
||||||
|
@ -271,24 +270,21 @@ GenerateTopicColours(char *Topic)
|
||||||
|
|
||||||
FILE *TopicsFile;
|
FILE *TopicsFile;
|
||||||
char *TopicsBuffer;
|
char *TopicsBuffer;
|
||||||
char *TopicsPtr;
|
if((TopicsFile = fopen("topics.css", "a+")))
|
||||||
int PersistentLength = 89;
|
|
||||||
if((TopicsFile = fopen("topics.css", "r")))
|
|
||||||
{
|
{
|
||||||
fseek(TopicsFile, 0, SEEK_END);
|
fseek(TopicsFile, 0, SEEK_END);
|
||||||
int TopicsLength = ftell(TopicsFile);
|
int TopicsLength = ftell(TopicsFile);
|
||||||
fseek(TopicsFile, 0, SEEK_SET);
|
fseek(TopicsFile, 0, SEEK_SET);
|
||||||
|
|
||||||
if(!(TopicsBuffer = malloc(TopicsLength + StringLength(Topic) + PersistentLength)))
|
if(!(TopicsBuffer = malloc(TopicsLength)))
|
||||||
{
|
{
|
||||||
perror("hmml_to_html");
|
perror("hmml_to_html");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
fread(TopicsBuffer, TopicsLength, 1, TopicsFile);
|
fread(TopicsBuffer, TopicsLength, 1, TopicsFile);
|
||||||
fclose(TopicsFile);
|
|
||||||
|
|
||||||
TopicsPtr = TopicsBuffer;
|
char *TopicsPtr = TopicsBuffer;
|
||||||
|
|
||||||
while(TopicsPtr - TopicsBuffer < TopicsLength)
|
while(TopicsPtr - TopicsBuffer < TopicsLength)
|
||||||
{
|
{
|
||||||
|
@ -304,25 +300,18 @@ GenerateTopicColours(char *Topic)
|
||||||
}
|
}
|
||||||
++TopicsPtr;
|
++TopicsPtr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fprintf(TopicsFile, ".marker .content .categories .category.%s { border-color: #%X; background: #%X; }\n",
|
||||||
|
SanitisePunctuation(Topic), StringToColourHash(Topic), StringToColourHash(Topic));
|
||||||
|
|
||||||
|
fclose(TopicsFile);
|
||||||
|
free(TopicsBuffer);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
|
||||||
if(!(TopicsBuffer = malloc(StringLength(Topic) + PersistentLength)))
|
|
||||||
{
|
{
|
||||||
perror("hmml_to_html");
|
perror("hmml_to_html");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
TopicsPtr = TopicsBuffer;
|
|
||||||
}
|
|
||||||
|
|
||||||
int PrintLength = sprintf(TopicsPtr, ".marker .content .categories .category.%s { border-color: #%X; background: #%X; }\n",
|
|
||||||
SanitisePunctuation(Topic), StringToColourHash(Topic), StringToColourHash(Topic));
|
|
||||||
TopicsPtr += PrintLength;
|
|
||||||
|
|
||||||
TopicsFile = fopen("topics.css", "w");
|
|
||||||
fwrite(TopicsBuffer, TopicsPtr - TopicsBuffer, 1, TopicsFile);
|
|
||||||
fclose(TopicsFile);
|
|
||||||
free(TopicsBuffer);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
|
@ -389,13 +378,13 @@ main(int ArgC, char **Args)
|
||||||
int UniqueRefs = 0;
|
int UniqueRefs = 0;
|
||||||
|
|
||||||
CopyStringToBuffer(&Title,
|
CopyStringToBuffer(&Title,
|
||||||
" <div class=\"title\">\n"
|
" <div class=\"title %s\">\n"
|
||||||
" <span class=\"episode_name\">%s</span>\n", HMML.metadata.title);
|
" <span class=\"episode_name\">%s</span>\n", HMML.metadata.project, HMML.metadata.title);
|
||||||
|
|
||||||
CopyStringToBuffer(&Player,
|
CopyStringToBuffer(&Player,
|
||||||
" <div class=\"player_container\">\n"
|
" <div class=\"player_container\">\n"
|
||||||
" <div class=\"video_container\" data-videoId=\"%s\"></div>\n"
|
" <div class=\"video_container\" data-videoId=\"%s\"></div>\n"
|
||||||
" <div class=\"markers_container\">\n", HMML.metadata.id);
|
" <div class=\"markers_container %s\">\n", HMML.metadata.id, HMML.metadata.project);
|
||||||
|
|
||||||
for(int AnnotationIndex = 0; AnnotationIndex < HMML.annotation_count; ++AnnotationIndex)
|
for(int AnnotationIndex = 0; AnnotationIndex < HMML.annotation_count; ++AnnotationIndex)
|
||||||
{
|
{
|
||||||
|
@ -683,8 +672,9 @@ ReferencesArray[i].Identifier[j].Identifier,
|
||||||
ReferencesArray[i].Identifier[j].Timecode);
|
ReferencesArray[i].Identifier[j].Timecode);
|
||||||
}
|
}
|
||||||
|
|
||||||
CopyStringToBuffer(&ReferenceMenu,
|
CopyStringToBuffer(&ReferenceMenu, "\n"
|
||||||
"\n </div>\n"
|
" </div>\n"
|
||||||
|
|
||||||
" </a>\n");
|
" </a>\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -713,9 +703,10 @@ ReferencesArray[i].Identifier[j].Timecode);
|
||||||
" <!-- Load the player -->\n"
|
" <!-- Load the player -->\n"
|
||||||
" <script type=\"text/javascript\" src=\"player.js\"></script>\n"
|
" <script type=\"text/javascript\" src=\"player.js\"></script>\n"
|
||||||
" <link rel=\"stylesheet\" type=\"text/css\" href=\"style.css\">\n"
|
" <link rel=\"stylesheet\" type=\"text/css\" href=\"style.css\">\n"
|
||||||
|
" <link rel=\"stylesheet\" type=\"text/css\" href=\"%s.css\">\n"
|
||||||
" <link rel=\"stylesheet\" type=\"text/css\" href=\"topics.css\">\n"
|
" <link rel=\"stylesheet\" type=\"text/css\" href=\"topics.css\">\n"
|
||||||
" </head>\n"
|
" </head>\n"
|
||||||
" <body>\n");
|
" <body>\n", HMML.metadata.project);
|
||||||
|
|
||||||
//NOTE(matt): Here is where we do all our CopyBuffer() calls
|
//NOTE(matt): Here is where we do all our CopyBuffer() calls
|
||||||
CopyBuffer(&Master, &Title);
|
CopyBuffer(&Master, &Title);
|
||||||
|
|
|
@ -0,0 +1,172 @@
|
||||||
|
/*
|
||||||
|
* Colours:
|
||||||
|
* Main Purple: #372F46 or rgba(55, 47, 70, 1);
|
||||||
|
* Highlight Green: #3A4A3F or rbga(58, 74, 63, 1);
|
||||||
|
*/
|
||||||
|
.title.obbg {
|
||||||
|
background-color: #FFFFFF;
|
||||||
|
color: #000000;
|
||||||
|
border-bottom: 1px solid #372F46;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title.obbg .refs_container {
|
||||||
|
transition: box-shadow 800ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
|
||||||
|
box-shadow: inset 0 0 0 #372F46;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title.obbg .refs_container:hover {
|
||||||
|
background-color: #FFF8E7;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title.obbg > .refs_container.current {
|
||||||
|
box-shadow: inset 0px 0px 30px #372F46;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title.obbg .refs_container .refs {
|
||||||
|
background-color: #FFFFFF;
|
||||||
|
border: 2px solid #372F46;
|
||||||
|
border-top: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title.obbg .refs_container > .refs .ref {
|
||||||
|
border-bottom: 1px solid #372F46;
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title.obbg .refs_container > .refs .ref.current {
|
||||||
|
background-color: #372F46;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title.obbg .refs_container > .refs .ref:hover {
|
||||||
|
background-color: #FFF8E7;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title.obbg .refs_container > .refs .ref.current:hover {
|
||||||
|
background-color: rgba(55, 46, 65, 0.7);
|
||||||
|
}
|
||||||
|
|
||||||
|
.title.obbg .refs_container > .refs .ref .source {
|
||||||
|
color: #888;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title.obbg .refs_container > .refs .ref.current .source {
|
||||||
|
color: #FFF8E7;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Regular */
|
||||||
|
.markers_container.obbg {
|
||||||
|
background-color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.obbg > .marker {
|
||||||
|
border-bottom: 1px solid #2A3172;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.obbg > .marker:hover > .content {
|
||||||
|
background-color: #FFF8E7;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.obbg > .marker:hover > .faded .content {
|
||||||
|
background-color: rgba(42, 49, 114, 0.7);
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.obbg > .marker > .content {
|
||||||
|
background-color: #FFFFFF;
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.obbg > .marker.current > .content {
|
||||||
|
color: #2A3172;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.obbg > .marker > .progress .content {
|
||||||
|
background-color: #2A3172;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Blackboard */
|
||||||
|
.markers_container.obbg > .marker:hover.blackboard > .content {
|
||||||
|
background-color: #FFF8E7;
|
||||||
|
background-size: 12px 12px;
|
||||||
|
background-image: linear-gradient(to right , rgba(51, 153, 255, .16) 1px, transparent 1px),
|
||||||
|
linear-gradient(to bottom, rgba(51, 153, 255, .16) 1px, transparent 1px);
|
||||||
|
background-position: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.obbg > .marker:hover.blackboard > .faded .content {
|
||||||
|
background-color: rgba(42, 49, 114, 0.7);
|
||||||
|
background-size: 12px 12px;
|
||||||
|
background-image: linear-gradient(to right , rgba(0, 0, 0, .16) 1px, transparent 1px),
|
||||||
|
linear-gradient(to bottom, rgba(0, 0, 0, .16) 1px, transparent 1px);
|
||||||
|
background-position: center;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.obbg > .marker.blackboard > .content {
|
||||||
|
background-color: #FFFFFF;
|
||||||
|
background-size: 12px 12px;
|
||||||
|
background-image: linear-gradient(to right , rgba(51, 153, 255, .16) 1px, transparent 1px),
|
||||||
|
linear-gradient(to bottom, rgba(51, 153, 255, .16) 1px, transparent 1px);
|
||||||
|
background-position: center;
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.obbg > .marker.blackboard.current > .content {
|
||||||
|
color: #2A3172;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.obbg > .marker.blackboard > .progress .content {
|
||||||
|
background-color: #2A3172;
|
||||||
|
background-size: 12px 12px;
|
||||||
|
background-image: linear-gradient(to right , rgba(255, 255, 255, .16) 1px, transparent 1px),
|
||||||
|
linear-gradient(to bottom, rgba(255, 255, 255, .16) 1px, transparent 1px);
|
||||||
|
background-position: center;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* TODO(matt):
|
||||||
|
*
|
||||||
|
* .markers_container.obbg > marker.run
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Run */
|
||||||
|
.markers_container.obbg > .marker.run > .content {
|
||||||
|
background: rgb(114,171,206); /* Old browsers */
|
||||||
|
background: -moz-linear-gradient(top, rgba(114,171,206,.5) 0%, rgba(82,178,82,.5) 18%, rgba(82,178,82,.5) 22%, rgba(198,194,110,.5) 38%, rgba(198,194,110,.5) 100%); /* FF3.6-15 */
|
||||||
|
background: -webkit-linear-gradient(top, rgba(114,171,206,.5) 0%,rgba(82,178,82,.5) 18%,rgba(82,178,82,.5) 22%,rgba(198,194,110,.5) 38%,rgba(198,194,110,.5) 100%); /* Chrome10-25,Safari5.1-6 */
|
||||||
|
background: linear-gradient(to bottom, rgba(114,171,206,.5) 0%,rgba(82,178,82,.5) 18%,rgba(82,178,82,.5) 22%,rgba(198,194,110,.5) 38%,rgba(198,194,110,.5) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#72abce', endColorstr='#c6c26e',GradientType=0 ); /* IE6-9 */
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.obbg > .marker:hover.run > .content {
|
||||||
|
background: rgb(114,171,206); /* Old browsers */
|
||||||
|
background: -moz-linear-gradient(top, rgba(114,171,206,.5) 0%, rgba(82,178,82,.5) 18%, rgba(82,178,82,.5) 22%, rgba(198,194,110,.5) 38%, rgba(198,194,110,.5) 100%); /* FF3.6-15 */
|
||||||
|
background: -webkit-linear-gradient(top, rgba(114,171,206,.5) 0%,rgba(82,178,82,.5) 18%,rgba(82,178,82,.5) 22%,rgba(198,194,110,.5) 38%,rgba(198,194,110,.5) 100%); /* Chrome10-25,Safari5.1-6 */
|
||||||
|
background: linear-gradient(to bottom, rgba(114,171,206,.6) 0%,rgba(82,178,82,.6) 18%,rgba(82,178,82,.6) 22%,rgba(198,194,110,.6) 38%,rgba(198,194,110,.6) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#72abce', endColorstr='#c6c26e',GradientType=0 ); /* IE6-9 */
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.obbg > .marker:hover.run > .faded .content {
|
||||||
|
background-color: rgba(42, 49, 114, 0.7);
|
||||||
|
background-size: 12px 12px;
|
||||||
|
background-image: linear-gradient(to right , rgba(0, 0, 0, .16) 1px, transparent 1px),
|
||||||
|
linear-gradient(to bottom, rgba(0, 0, 0, .16) 1px, transparent 1px);
|
||||||
|
background-position: center;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.obbg > .marker.run.current > .content {
|
||||||
|
color: #2A3172;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.obbg > .marker.run > .progress .content {
|
||||||
|
background-color: #2A3172;
|
||||||
|
background-size: 12px 12px;
|
||||||
|
background-image: linear-gradient(to right , rgba(255, 255, 255, .16) 1px, transparent 1px),
|
||||||
|
linear-gradient(to bottom, rgba(255, 255, 255, .16) 1px, transparent 1px);
|
||||||
|
background-position: center;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
|
@ -0,0 +1,127 @@
|
||||||
|
.title.riscy {
|
||||||
|
background-color: #FFFFFF;
|
||||||
|
color: #000000;
|
||||||
|
border-bottom: 1px solid rgba(246, 178, 26, 0.8);
|
||||||
|
}
|
||||||
|
|
||||||
|
.title.riscy .refs_container {
|
||||||
|
transition: box-shadow 800ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
|
||||||
|
box-shadow: inset 0 0 0 #2A3172;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title.riscy .refs_container:hover {
|
||||||
|
background-color: #FFF8E7;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title.riscy > .refs_container.current {
|
||||||
|
box-shadow: inset 0px 0px 30px #2A3172;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title.riscy .refs_container .refs {
|
||||||
|
background-color: #FFFFFF;
|
||||||
|
border: 2px solid rgba(246, 178, 26, 0.8);
|
||||||
|
border-top: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title.riscy .refs_container > .refs .ref {
|
||||||
|
border-bottom: 1px solid rgba(246, 178, 26, 0.8);
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title.riscy .refs_container > .refs .ref.current {
|
||||||
|
background-color: #2A3172;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title.riscy .refs_container > .refs .ref:hover {
|
||||||
|
background-color: #FFF8E7;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title.riscy .refs_container > .refs .ref.current:hover {
|
||||||
|
background-color: rgba(42, 49, 114, 0.7);
|
||||||
|
}
|
||||||
|
|
||||||
|
.title.riscy .refs_container > .refs .ref .source {
|
||||||
|
color: #888;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title.riscy .refs_container > .refs .ref.current .source {
|
||||||
|
color: #FFF8E7;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Regular */
|
||||||
|
.markers_container.riscy {
|
||||||
|
background-color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.riscy > .marker {
|
||||||
|
border-bottom: 1px solid rgba(246, 178, 26, 0.8);
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.riscy > .marker:hover > .content {
|
||||||
|
background-color: #FFF8E7;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.riscy > .marker:hover > .faded .content {
|
||||||
|
background-color: rgba(42, 49, 114, 0.7);
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.riscy > .marker > .content {
|
||||||
|
background-color: #FFFFFF;
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.riscy > .marker.current > .content {
|
||||||
|
color: #2A3172;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.riscy > .marker > .progress .content {
|
||||||
|
background-color: #2A3172;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Blackboard */
|
||||||
|
.markers_container.riscy > .marker:hover.blackboard > .content {
|
||||||
|
background-color: #FFF8E7;
|
||||||
|
background-size: 12px 12px;
|
||||||
|
background-image: linear-gradient(to right , rgba(51, 153, 255, .16) 1px, transparent 1px),
|
||||||
|
linear-gradient(to bottom, rgba(51, 153, 255, .16) 1px, transparent 1px);
|
||||||
|
background-position: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.riscy > .marker:hover.blackboard > .faded .content {
|
||||||
|
background-color: rgba(42, 49, 114, 0.7);
|
||||||
|
background-size: 12px 12px;
|
||||||
|
background-image: linear-gradient(to right , rgba(0, 0, 0, .16) 1px, transparent 1px),
|
||||||
|
linear-gradient(to bottom, rgba(0, 0, 0, .16) 1px, transparent 1px);
|
||||||
|
background-position: center;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.riscy > .marker.blackboard > .content {
|
||||||
|
background-color: #FFFFFF;
|
||||||
|
background-size: 12px 12px;
|
||||||
|
background-image: linear-gradient(to right , rgba(51, 153, 255, .16) 1px, transparent 1px),
|
||||||
|
linear-gradient(to bottom, rgba(51, 153, 255, .16) 1px, transparent 1px);
|
||||||
|
background-position: center;
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.riscy > .marker.blackboard.current > .content {
|
||||||
|
color: #2A3172;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container.riscy > .marker.blackboard > .progress .content {
|
||||||
|
background-color: #2A3172;
|
||||||
|
background-size: 12px 12px;
|
||||||
|
background-image: linear-gradient(to right , rgba(255, 255, 255, .16) 1px, transparent 1px),
|
||||||
|
linear-gradient(to bottom, rgba(255, 255, 255, .16) 1px, transparent 1px);
|
||||||
|
background-position: center;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* TODO(matt):
|
||||||
|
*
|
||||||
|
* .markers_container.riscy > marker.run
|
||||||
|
*/
|
|
@ -1,105 +1,100 @@
|
||||||
/* USER-DEFINED */
|
/* Structure */
|
||||||
|
|
||||||
.marker .content {
|
.title {
|
||||||
width: 320px;
|
display: flex;
|
||||||
padding: 5px;
|
flex-direction: row;
|
||||||
font-size: 14px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.timecode {
|
.title > * {
|
||||||
font-size: 9px;
|
padding: 10px;
|
||||||
font-style: normal;
|
}
|
||||||
padding-right: 8px;
|
|
||||||
|
.title .episode_name {
|
||||||
|
flex: 1 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title .refs_container {
|
||||||
position: relative;
|
position: relative;
|
||||||
top: -2px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.marker {
|
.title .refs_container .mouse_catcher {
|
||||||
border-bottom: 1px solid rgba(255, 255, 255, 0.05);
|
position: absolute;
|
||||||
|
height: 100%;
|
||||||
|
width: 100%;
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.marker:hover > .content {
|
.title .refs_container .refs {
|
||||||
background-color: #222;
|
position: absolute;
|
||||||
|
top: 100%;
|
||||||
|
right: 0;
|
||||||
|
width: 350px;
|
||||||
|
z-index: 1;
|
||||||
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
.marker:hover .faded .content {
|
.title .refs_container:hover .refs {
|
||||||
background-color: rgba(139, 61, 35, 0.7);
|
display: block;
|
||||||
color: black;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.marker > .content {
|
.title .refs_container > .refs .ref {
|
||||||
background-color: #161616;
|
padding: 10px;
|
||||||
color: #8A877D;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
.marker.current > .content {
|
.title .refs_container > .refs .ref:last-child {
|
||||||
color: #B57714;
|
border: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
.marker .progress .content {
|
.title .refs_container > .refs .ref .timecode {
|
||||||
background-color: #8B3D23;
|
display: inline-block;
|
||||||
color: black;
|
font-size: 12px;
|
||||||
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Blackboard */
|
.title .refs_container > .refs .ref .ref_indices {
|
||||||
.marker:hover.blackboard > .content {
|
text-align: center;
|
||||||
background-color: #FFF8E7;
|
|
||||||
background-size: 12px 12px;
|
|
||||||
background-image: linear-gradient(to right , rgba(51, 153, 255, .16) 1px, transparent 1px),
|
|
||||||
linear-gradient(to bottom, rgba(51, 153, 255, .16) 1px, transparent 1px);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.marker:hover.blackboard .faded .content {
|
.title .refs_container > .refs .ref .ref_indices .timecode {
|
||||||
background-color: rgba(42, 49, 114, 0.7);
|
display: inline-block;
|
||||||
background-size: 12px 12px;
|
font-size: 12px;
|
||||||
background-image: linear-gradient(to right , rgba(0, 0, 0, .16) 1px, transparent 1px),
|
|
||||||
linear-gradient(to bottom, rgba(0, 0, 0, .16) 1px, transparent 1px)
|
|
||||||
color: #FFFFFF;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.marker.blackboard > .content {
|
.title .refs_container > .refs .ref .ref_indices .timecode:first-child::before {
|
||||||
background-color: #FFFFFF;
|
content: "";
|
||||||
background-size: 12px 12px;
|
|
||||||
background-image: linear-gradient(to right , rgba(51, 153, 255, .16) 1px, transparent 1px),
|
|
||||||
linear-gradient(to bottom, rgba(51, 153, 255, .16) 1px, transparent 1px);
|
|
||||||
color: black;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.marker.blackboard.current > .content {
|
.title .refs_container > .refs .ref .ref_indices .timecode::before {
|
||||||
color: #2A3172;
|
content: "•";
|
||||||
|
margin: 0 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.marker.blackboard .progress .content {
|
.title .refs_container > .refs .ref .timecode:hover .time {
|
||||||
background-color: #2A3172;
|
text-decoration: underline;
|
||||||
background-size: 12px 12px;
|
|
||||||
background-image: linear-gradient(to right , rgba(255, 255, 255, .16) 1px, transparent 1px),
|
|
||||||
linear-gradient(to bottom, rgba(255, 255, 255, .16) 1px, transparent 1px);
|
|
||||||
color: #FFFFFF;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.marker.authored .content .author {
|
.title .refs_container > .refs .ref .ref_content {
|
||||||
font-style: normal;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.marker.authored {
|
.title .refs_container > .refs .ref .source {
|
||||||
|
font-size: 10px;
|
||||||
|
line-height: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title .refs_container > .refs .ref .ref_title {
|
||||||
font-style: oblique;
|
font-style: oblique;
|
||||||
}
|
}
|
||||||
|
|
||||||
.marker .content .categories {
|
.title .refs_container > .refs .ref .timecode .ref_index {
|
||||||
display: inline-flex;
|
margin-right: 4px;
|
||||||
margin: 4px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.marker .content .categories .category {
|
|
||||||
border: 1px solid;
|
|
||||||
border-radius: 50%;
|
|
||||||
height: 8px;
|
|
||||||
margin-left: 2px;
|
|
||||||
width: 8px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* MANDATORY */
|
|
||||||
|
|
||||||
.player_container {
|
.player_container {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
|
@ -115,18 +110,38 @@
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
.marker {
|
.markers_container > .marker {
|
||||||
position: relative;
|
position: relative;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
|
|
||||||
.marker .content {
|
.markers_container > .marker .content {
|
||||||
display: block;
|
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
|
display: block;
|
||||||
|
font-size: 14px;
|
||||||
|
padding: 5px;
|
||||||
|
width: 320px;
|
||||||
word-wrap: break-word;
|
word-wrap: break-word;
|
||||||
}
|
}
|
||||||
|
|
||||||
.marker .progress {
|
.markers_container > .marker.authored .content .author {
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container > .marker.authored {
|
||||||
|
font-style: oblique;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container > .marker .content sup {
|
||||||
|
font-style: normal;
|
||||||
|
font-variant: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container > .marker.rant .content {
|
||||||
|
font-variant: small-caps;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container > .marker .progress {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
|
@ -135,150 +150,33 @@
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.markers_container > .marker .timecode {
|
||||||
|
font-size: 9px;
|
||||||
|
font-style: normal;
|
||||||
|
padding-right: 8px;
|
||||||
|
position: relative;
|
||||||
|
top: -2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container > .marker .content .categories {
|
||||||
|
display: inline-flex;
|
||||||
|
margin: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markers_container > .marker .content .categories .category {
|
||||||
|
border: 1px solid;
|
||||||
|
border-radius: 50%;
|
||||||
|
height: 5px;
|
||||||
|
margin-left: 2px;
|
||||||
|
width: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
/* CUSTOM PAGE STYLE */
|
/* CUSTOM PAGE STYLE */
|
||||||
|
|
||||||
body {
|
body {
|
||||||
background-color: #222;
|
background-color: #000;
|
||||||
font-family: sans-serif;
|
font-family: sans-serif;
|
||||||
color: white;
|
color: white;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.title {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: row;
|
|
||||||
background-color: #444;
|
|
||||||
}
|
|
||||||
|
|
||||||
.title > * {
|
|
||||||
padding: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.title .episode_name {
|
|
||||||
flex: 1 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
.title > a {
|
|
||||||
color: rgba(38, 139, 210, 1);
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.title > a:visited {
|
|
||||||
color: rgba(38, 139, 210, 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
.title > a:hover {
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
|
|
||||||
.title .refs_container {
|
|
||||||
position: relative;
|
|
||||||
transition: box-shadow 800ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
|
|
||||||
box-shadow: inset 0 0 0 #B57714;
|
|
||||||
}
|
|
||||||
|
|
||||||
.title .refs_container:hover {
|
|
||||||
background-color: #666;
|
|
||||||
}
|
|
||||||
|
|
||||||
.title .refs_container.current {
|
|
||||||
box-shadow: inset 0px 0px 30px #B57714;
|
|
||||||
}
|
|
||||||
|
|
||||||
.title .refs_container .mouse_catcher {
|
|
||||||
position: absolute;
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
top: 0;
|
|
||||||
right: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.title .refs_container .refs {
|
|
||||||
position: absolute;
|
|
||||||
top: 100%;
|
|
||||||
right: 0;
|
|
||||||
width: 350px;
|
|
||||||
background-color: black;
|
|
||||||
border: 3px solid #444;
|
|
||||||
border-top: none;
|
|
||||||
z-index: 1;
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.title .refs_container:hover .refs {
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
.refs .ref {
|
|
||||||
padding: 10px;
|
|
||||||
border-bottom: 1px solid rgb(51, 51, 51);
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
align-items: center;
|
|
||||||
text-decoration: none;
|
|
||||||
color: white;
|
|
||||||
}
|
|
||||||
|
|
||||||
.refs .ref.current {
|
|
||||||
background-color: #8B3D23;
|
|
||||||
color: black;
|
|
||||||
}
|
|
||||||
|
|
||||||
.refs .ref:hover {
|
|
||||||
background-color: #222;
|
|
||||||
}
|
|
||||||
|
|
||||||
.refs .ref.current:hover {
|
|
||||||
background-color: rgba(139, 61, 35, 0.7);
|
|
||||||
}
|
|
||||||
|
|
||||||
.refs .ref:last-child {
|
|
||||||
border: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.refs .ref .timecode {
|
|
||||||
display: inline-block;
|
|
||||||
font-size: 12px;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.refs .ref .ref_indices {
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.refs .ref .ref_indices .timecode {
|
|
||||||
display: inline-block;
|
|
||||||
font-size: 12px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.refs .ref .ref_indices .timecode:first-child::before {
|
|
||||||
content: "";
|
|
||||||
}
|
|
||||||
|
|
||||||
.refs .ref .ref_indices .timecode::before {
|
|
||||||
content: "•";
|
|
||||||
margin: 0 4px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.refs .ref .timecode:hover .time {
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
|
|
||||||
.refs .ref .ref_content {
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.refs .ref .source {
|
|
||||||
font-size: 10px;
|
|
||||||
color: #888;
|
|
||||||
line-height: 8px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.refs .ref .ref_title {
|
|
||||||
font-style: oblique;
|
|
||||||
}
|
|
||||||
|
|
||||||
.refs .ref .timecode .ref_index {
|
|
||||||
margin-right: 4px;
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,15 +1,17 @@
|
||||||
.marker .content .categories .category.rendering { border-color: #60B60A; background: #60B60A; }
|
.marker .content .categories .category.rendering { border-color: #60B60A; background: #60B60A; }
|
||||||
.marker .content .categories .category.mesh-building { border-color: #609FA2; background: #609FA2; }
|
|
||||||
.marker .content .categories .category.physics { border-color: #869535; background: #869535; }
|
|
||||||
.marker .content .categories .category.threading { border-color: #579BDF; background: #579BDF; }
|
|
||||||
.marker .content .categories .category.procedural-generation { border-color: #67B347; background: #67B347; }
|
|
||||||
.marker .content .categories .category.optimisation { border-color: #7E4B17; background: #7E4B17; }
|
|
||||||
.marker .content .categories .category.experience { border-color: #604188; background: #604188; }
|
|
||||||
.marker .content .categories .category.language { border-color: #4CCCCC; background: #4CCCCC; }
|
|
||||||
.marker .content .categories .category.memory { border-color: #8DA740; background: #8DA740; }
|
|
||||||
.marker .content .categories .category.demo { border-color: #547AE0; background: #547AE0; }
|
|
||||||
.marker .content .categories .category.networking { border-color: #810623; background: #810623; }
|
|
||||||
.marker .content .categories .category.simulation { border-color: #7DF3B5; background: #7DF3B5; }
|
|
||||||
.marker .content .categories .category.profiling { border-color: #6E5D4B; background: #6E5D4B; }
|
|
||||||
.marker .content .categories .category.trivia { border-color: #7C962E; background: #7C962E; }
|
|
||||||
.marker .content .categories .category.mathematics { border-color: #5E0595; background: #5E0595; }
|
.marker .content .categories .category.mathematics { border-color: #5E0595; background: #5E0595; }
|
||||||
|
.marker .content .categories .category.simulation { border-color: #7DF3B5; background: #7DF3B5; }
|
||||||
|
.marker .content .categories .category.animation { border-color: #62FC95; background: #62FC95; }
|
||||||
|
.marker .content .categories .category.sorting { border-color: #8AF8AE; background: #8AF8AE; }
|
||||||
|
.marker .content .categories .category.parsing { border-color: #70A3D6; background: #70A3D6; }
|
||||||
|
.marker .content .categories .category.language { border-color: #4CCCCC; background: #4CCCCC; }
|
||||||
|
.marker .content .categories .category.ai { border-color: #28F5C2; background: #28F5C2; }
|
||||||
|
.marker .content .categories .category.demo { border-color: #547AE0; background: #547AE0; }
|
||||||
|
.marker .content .categories .category.debug-visualisation { border-color: #6DC3FE; background: #6DC3FE; }
|
||||||
|
.marker .content .categories .category.physics { border-color: #869535; background: #869535; }
|
||||||
|
.marker .content .categories .category.experience { border-color: #604188; background: #604188; }
|
||||||
|
.marker .content .categories .category.trivia { border-color: #7C962E; background: #7C962E; }
|
||||||
|
.marker .content .categories .category.pathfinding { border-color: #5A4C54; background: #5A4C54; }
|
||||||
|
.marker .content .categories .category.optimisation { border-color: #7E4B17; background: #7E4B17; }
|
||||||
|
.marker .content .categories .category.memory { border-color: #8DA740; background: #8DA740; }
|
||||||
|
.marker .content .categories .category.maths { border-color: #72B020; background: #72B020; }
|
||||||
|
|
Loading…
Reference in New Issue