git.fiddlerwoaroof.com
Raw Blame History
(defpackage :fwoar.default-layout
  (:use :cl )
  (:export
   #:default-layout
   #:border-color
   #:background-color
   #:text-color
   #:link-color))
(in-package :fwoar.default-layout)

(defgeneric border-color (layout)
  )
(defgeneric text-color (layout)
  )
(defgeneric link-color (layout)
  (:method (layout)
    (text-color layout)))
(defgeneric background-color (layout)
  )

(defclass default-layout ()
  ((%text-color :reader text-color :initform "#eee")
   (%border-color :reader border-color :initform "#eee")
   (%background-color :reader background-color :initform "#eee")))

(defmethod araneus:styles append ((layout default-layout))
  `((body
     :background ,(background-color layout)
     :color ,(text-color layout)
     :display flex
     :flex-direction column
     :min-height 100vh)
    (a
     :color ,(link-color layout))
    (h1
     :height 3em
     :border-bottom 4px double ,(border-color layout)
     :text-align center
     :line-height 3em)
    (div.main
     :display flex
     :width 100%
     :flex-grow 1
     :flex-shrink 1
     )
    (nav
     :width 20rem
     :display flex
     :flex-grow 0
     :flex-shrink 0
     :flex-direction column)
    ((:or (nav a) (:and a "[data-ic-get-from]"))
     :cursor pointer
     :font-weight bold
     :text-align right
     :text-decoration underline)
    ((nav a)
     :padding 1.5rem)
    ((nav (:and a :hover))
     :background ,(link-color layout)
     :color ,(background-color layout))
    (("#content" img)
     :max-width "70%"
     :margin 1em)
    (main
     :border-left 4px double ,(border-color layout)
     :flex-grow 1
     :flex-shrink 1
     :padding 1.5rem
     :max-width 50em)
    ("#ic-debug-panel"
     :background ,(background-color layout) !important
     :color ,(text-color layout))
    (("#ic-debug-panel" > *)
     :background ,(background-color layout) !important
     :color ,(text-color layout))))