;; Variables
(defpoll clock_time :interval "5m" "date +\%I")
(defpoll clock_minute :interval "5s" "date +\%M")
(defpoll clock_date :interval "10h" "date '+%d/%m'")
(defpoll volume_percent :interval "3s" "amixer -D pulse sget Master | grep 'Left:' | awk -F'[][]' '{ print $2 }' | tr -d '%'")
(defpoll mic_percent :interval "3s" "amixer -D pulse sget Capture | grep 'Left:' | awk -F'[][]' '{ print $2 }' | tr -d '%'")
(defpoll brightness_percent :interval "5s" "brightnessctl -m -d intel_backlight | awk -F, '{print substr($4, 0, length($4)-1)}' | tr -d '%'")
(defpoll battery :interval "15s" "./scripts/battery --bat")
(defpoll battery_status :interval "1m" "./scripts/battery --bat-st")
(defpoll memory :interval "15s" "scripts/memory")
(defpoll memory_used_mb :interval "2m" "scripts/mem-ad used")
(defpoll memory_total_mb :interval "2m" "scripts/mem-ad total")
(defpoll memory_free_mb :interval "2m" "scripts/mem-ad free")
(defvar vol_reveal false)
(defvar br_reveal false)
(defvar music_reveal false)
(defvar wifi_rev false)
(defvar time_rev false)
(deflisten workspace "scripts/workspace")

(defvar eww "$HOME/.local/bin/eww/eww -c $HOME/.config/eww/bar")


(defpoll COL_WLAN :interval "1m" "~/.config/eww/bar/scripts/wifi --COL")
(defpoll ESSID_WLAN :interval "1m" "~/.config/eww/bar/scripts/wifi --ESSID")
(defpoll WLAN_ICON :interval "1m" "~/.config/eww/bar/scripts/wifi --ICON")


(defpoll song :interval "2s"  "~/.config/eww/bar/scripts/music_info --song")
(defpoll song_artist :interval "2s"  "~/.config/eww/bar/scripts/music_info --artist")
(defpoll current_status :interval "1s"  "~/.config/eww/bar/scripts/music_info --time")
(defpoll song_status :interval "2s"  "~/.config/eww/bar/scripts/music_info --status")
(defpoll cover_art :interval "2s"  "~/.config/eww/bar/scripts/music_info --cover")

(defpoll calendar_day :interval "20h" "date '+%d'")
(defpoll calendar_year :interval "20h" "date '+%Y'")

;; widgets

(defwidget wifi [] 
  (eventbox :onhover "${eww} update wifi_rev=true"
			  :onhoverlost "${eww} update wifi_rev=false"
		(box :vexpand "false" :hexpand "false" :space-evenly "false"
				(button :class "module-wif" :onclick "networkmanager_dmenu" :wrap "false" :limit-width 12 :style "color: ${COL_WLAN};" WLAN_ICON)
	(revealer :transition "slideright"
			  :reveal wifi_rev
			  :duration "350ms"
	(label    :class "module_essid"
			  :text ESSID_WLAN
			  :orientation "h"
			  )))))


(defwidget workspaces []
  (literal :content workspace))


(defwidget bat []
		(box :class "bat_module" :vexpand "false" :hexpand "false" 
            (circular-progress :value battery
                :class "batbar"
                :thickness 4
            (button 
                :class "iconbat"
                :limit-width 2
                :tooltip "battery on ${battery}%"
                :show_truncated false
                :onclick "$HOME/.config/eww/bar/scripts/pop system"
                :wrap false
                ""))))


(defwidget mem []
		(box :class "mem_module" :vexpand "false" :hexpand "false" 
            (circular-progress :value memory
                :class "membar"
                :thickness 4
            (button 
                :class "iconmem"
                :limit-width 2
                :tooltip "using ${memory}% ram"
                :onclick "$HOME/.config/eww/bar/scripts/pop system"
                :show_truncated false
                :wrap false
                ""))))



(defwidget sep []
  (box :class "module-2" :vexpand "false" :hexpand "false"
    (label :class "separ" :text "|")))

(defwidget clock_module []
  (eventbox :onhover "${eww} update time_rev=true"
			  :onhoverlost "${eww} update time_rev=false"
    (box :class "module" :space-evenly "false" :orientation "h" :spacing "3" 
      (label :text clock_time :class "clock_time_class" )
      (label :text "" :class "clock_time_sep" )
      (label :text clock_minute :class "clock_minute_class")
	  (revealer :transition "slideleft"
			  :reveal time_rev
			  :duration "350ms"
      (button :class "clock_date_class"
             :onclick "$HOME/.config/eww/bar/scripts/pop calendar" clock_date
        )
  ))))
  
(defwidget volume []
  (eventbox :onhover "${eww} update vol_reveal=true"
			  :onhoverlost "${eww} update vol_reveal=false"
  (box :class "module-2" :space-evenly "false" :orientation "h" :spacing "3" 
	(button   :onclick "scripts/pop audio"   :class "volume_icon" "")
	(revealer :transition "slideleft"
			  :reveal vol_reveal
			  :duration "350ms"
	(scale    :class "volbar"
			  :value volume_percent
			  :orientation "h"
			  :tooltip "${volume_percent}%"
			  :max 100
			  :min 0
			  :onchange "amixer -D pulse sset Master {}%" )))))

(defwidget bright []
  (eventbox :onhover "${eww} update br_reveal=true" :onhoverlost "${eww} update br_reveal=false"
  (box :class "module-2" :space-evenly "false" :orientation "h" :spacing "3" 
    (label :text "" :class "bright_icon" :tooltip "brightness")
	(revealer :transition "slideleft"
			  :reveal br_reveal
			  :duration "350ms"
	(scale    :class "brightbar"
			  :value brightness_percent
			  :orientation "h"
			  :tooltip "${brightness_percent}%"
			  :max 100
			  :min 0
			  :onchange "brightnessctl set {}%" )))))



	;;  Music 
(defwidget music [] 
  (eventbox :onhover "${eww} update music_reveal=true"
			  :onhoverlost "${eww} update music_reveal=false"
		(box :class "module-2" :orientation "h" :space-evenly "false" :vexpand "false" :hexpand "false" 
			(box :class "song_cover_art" :vexpand "false" :hexpand "false" :style "background-image: url('${cover_art}');")
			(button :class "song" :wrap "true" :onclick "~/.config/eww/bar/scripts/pop music" song)
	    (revealer :transition "slideright"
			      :reveal music_reveal
			      :duration "350ms"
          (box :vexpand "false" :hexpand "false" :oreintation "h" 
                    (button :class "song_btn_prev" :onclick "~/.config/eww/bar/scripts/music_info --prev" "")
					(button :class "song_btn_play" :onclick "~/.config/eww/bar/scripts/music_info --toggle" song_status)
					(button :class "song_btn_next" :onclick "~/.config/eww/bar/scripts/music_info --next" ""))))))



(defwidget left []
	(box :orientation "h" 
		 :space-evenly false  
         :halign "end"
		 :class "left_modules"
(bright)
(volume)
(wifi)
(sep)
(bat)
(mem)
(sep)
(clock_module)))


(defwidget right []
	(box :orientation "h" 
		 :space-evenly false  
         :halign "start"
		 :class "right_modules"
(workspaces)))


(defwidget center []
	(box :orientation "h" 
		 :space-evenly false  
         :halign "center"
		 :class "center_modules"
(music)))

(defwidget bar_1 []
  (box :class "bar_class"
       :orientation "h"
  (right)
  (center)
  (left)
    ))

(defwindow bar
          :geometry (geometry :x "0%"
                       :y "9px"
                       :width "98%"
                       :height "30px"
                       :anchor "top center")
          :stacking "fg"
          :windowtype "dock"
  (bar_1))
  
(defwidget system []
  (box :class "sys_win" :orientation "v" :space-evenly "false" :hexpand "false" :vexpand "false" :spacing 0
  (box :class "sys_bat_box" :orientation "h" :space-evenly "false"
      (circular-progress :value battery
                :class "sys_bat"
                :thickness 9
            (label :text ""
                :class "sys_icon_bat"
                :limit-width 2
                :show_truncated false
                :wrap false))
            (box :orientation "v" :space-evenly "false" :spacing 0 :hexpand "false" :vexpand "false"
            (label :text "battery"
                :halign "start"
                :class "sys_text_bat"
                :limit-width 9
                :show_truncated false
                :wrap false)
            (label :text "${battery}%"
                :halign "start"
                :class "sys_text_bat_sub"
                :limit-width 22
                :show_truncated false
                :wrap false)
            (label :text "${battery_status}"
                :halign "start"
                :class "sys_text_bat_sub"
                :limit-width 22
                :show_truncated false
                :wrap false)))
            (label :text "" :class "sys_sep" :halign "center")
  (box :class "sys_mem_box" :orientation "h" :space-evenly "false" :halign "start"
      (circular-progress :value memory
                :class "sys_mem"
                :thickness 9
            (label :text ""
                :class "sys_icon_mem"
                :limit-width 2
                :show_truncated false
                :wrap false
                :angle 0.0))
            (box :orientation "v" :space-evenly "false" :spacing 0 :hexpand "false" :vexpand "false"
            (label :text "memory"
                :halign "start"
                :class "sys_text_mem"
                :limit-width 9
                :show_truncated false
                :wrap false)
            (label :text "${memory_used_mb} | ${memory_total_mb}mb "
                :halign "start"
                :class "sys_text_mem_sub"
                :limit-width 22
                :show_truncated false
                :wrap false)
            (label :text "${memory_free_mb}mb free"
                :halign "start"
                :class "sys_text_mem_sub"
                :limit-width 22
                :show_truncated false
                :wrap false)))))

(defwidget cal []
	(box :class "cal" :orientation "v"
	(box :class "cal-in"
	(calendar :class "cal" 
			  :day calendar_day 
			  :year calendar_year))))

(defwindow calendar
	:geometry (geometry :x "-20px" 
						:y "7%" 
                        :anchor "top right"
						:width "270px" 
						:height "60px")
(cal))



(defwidget audio []
	(box :class "audio-box" :orientation "v" :space-evenly "false" :vexpand "false" :hexpand "false"
	(box :halign "v" :space-evenly "false" :hexpand "false" :vexpand "false"
	(box :class "speaker_icon" :orientation "v")
	(box :orientation "v" :halign "center" :vexpand "false" :hexpand "false"
    (label :class "speaker_text" :text "speaker" :valign "center" :halign "left" )
	(box :class "speaker_bar" :halign "center" :vexpand "false" :hexpand "false"
	(scale    :value volume_percent
              :space-evenly "false"
			  :orientation "h"
			  :onchange "amixer -D pulse sset Master {}%" 
              :tooltip "volume on ${volume_percent}%"
			  :max 100
			  :min 0))))
            (label :text "" :class "audio_sep" :halign "center")
	(box :halign "v" :space-evenly "false" :hexpand "false" :vexpand "false"
	(box :class "mic_icon" :orientation "v")
	(box :orientation "v" :halign "center" :vexpand "false" :hexpand "false"
    (label :class "mic_text" :text "mic" :valign "center" :halign "left" )
	(box :class "mic_bar" :halign "center" :vexpand "false" :hexpand "false"
	(scale    :value mic_percent
              :space-evenly "false"
			  :orientation "h"
              :tooltip "mic on ${mic_percent}%"
			  :onchange "amixer -D pulse sset Capture {}%" 
			  :max 100
			  :min 0))))))

(defwindow audio_ctl
	:geometry (geometry :x "-20px" 
						:y "7%" 
                        :anchor "top right"
						:width "280px" 
						:height "60px")
(audio))


(defwindow system
	:geometry (geometry :x "-20px" 
						:y "7%" 
                        :anchor "top right"
						:width "290px" 
						:height "120px")
(system))



;;  Music
(defwidget music_pop []
		(box :class "music_pop" :orientation "h" :space-evenly "false" :vexpand "false" :hexpand "false"
			(box :class "music_cover_art" :vexpand "false" :hexpand "false" :style "background-image: url('${cover_art}');")
			(box :orientation "v" :spacing 20 :space-evenly "false" :vexpand "false" :hexpand "false"
				(label :halign "center" :class "music" :wrap "true" :limit-width 13 :text song)
				(label :halign "center" :class "music_artist" :wrap "true" :limit-width 15 :text song_artist)
				(box :orientation "h" :spacing 15 :halign "center" :space-evenly "false" :vexpand "false" :hexpand "false"
					(button :class "music_btn_prev" :onclick "~/.config/eww/bar/scripts/music_info --prev" "")
					(button :class "music_btn_play" :onclick "~/.config/eww/bar/scripts/music_info --toggle" song_status)
					(button :class "music_btn_next" :onclick "~/.config/eww/bar/scripts/music_info --next" ""))
				(box :class "music_bar" :halign "center" :vexpand "false" :hexpand "false" :space-evenly "false"
					(scale :onscroll "mpc -q seek {}" :min 0 :active "true" :max 100 :value current_status)))))


;;  music
		(defwindow music_win :stacking "fg" :focusable "false" :screen 1
			    :geometry (geometry :x "0" :y "7%" :width 428 :height 104 :anchor "top center")
			     				(music_pop))

