From ef2ba740a784c47f09f9cd5aedd0a096c00b845b Mon Sep 17 00:00:00 2001
From: "Douglas B. Rumbaugh" <doug@douglasrumbaugh.com>
Date: Sun, 11 Jan 2026 12:32:34 -0500
Subject: Added weekends

---
 weekly_schedule.tex | 203 +++++++++++++++-------------------------------------
 1 file changed, 56 insertions(+), 147 deletions(-)

(limited to 'weekly_schedule.tex')

diff --git a/weekly_schedule.tex b/weekly_schedule.tex
index 64c151a..ec5376a 100644
--- a/weekly_schedule.tex
+++ b/weekly_schedule.tex
@@ -1,149 +1,58 @@
-\documentclass[landscape,11pt]{article}
-\usepackage[margin=0.5in]{geometry}
-\usepackage{tikz}
-\usepackage{xcolor}
-\pagestyle{empty}
-
-% Define colors for different event types
-\definecolor{coursecolor}{RGB}{173,216,230}
-\definecolor{meetingcolor}{RGB}{255,218,185}
-\definecolor{officecolor}{RGB}{144,238,144}
-\definecolor{personalcolor}{RGB}{221,160,221}
-
+% Weekly schedule using the weekschedule class
+\documentclass{weekschedule}
+
+% ============================================
+% Schedule Configuration
+% ============================================
+
+% Title and author
+\scheduletitle{Weekly Schedule - Spring 2026}
+\scheduleauthor{Dr. Douglas B. Rumbaugh}
+
+% Time range
+\timefrom{8:00}
+\timeto{18:00}
+
+% Display format
+\twelvehourtime
+% \twentyfourhourtime
+% \weekfullmonday
+
+% ============================================
+% Define Event Classes (name and RGB color)
+% ============================================
+\eventclass{Courses}{173,216,230}        % Light blue
+\eventclass{Meetings}{255,218,185}       % Peach
+\eventclass{OfficeHours}{144,238,144}    % Light green
+\eventclass{Personal}{221,160,221}       % Light purple
+
+% ============================================
+% Define Events
+% Usage: \event{Class}{Name}{Day(s)}{Start}{End}
+% ============================================
+
+% Monday events
+\event{Meetings}{CIE Project Meeting}{Monday}{9:00}{9:30}
+\event{Meetings}{Faculty Meeting}{Monday}{10:00}{10:30}
+\event{Personal}{(Out of Office)}{Monday}{14:30}{17:00}
+
+% Tuesday/Thursday events
+\event{Courses}{MATH 220 01}{Tuesday,Thursday}{9:00}{10:30}
+\event{Courses}{CISC 460 01}{Tuesday,Thursday}{11:15}{12:45}
+\event{OfficeHours}{Office Hours}{Tuesday,Thursday}{13:00}{14:30}
+
+% Wednesday events
+\event{Meetings}{Faculty Meeting}{Wednesday}{10:00}{11:00}
+\event{Meetings}{Research Meeting}{Wednesday}{14:30}{15:30}
+
+% Monday/Wednesday/Friday events
+\event{Courses}{CISC 225 01}{Monday,Wednesday,Friday}{11:00}{12:00}
+\event{Courses}{GEND 112 01}{Monday,Wednesday,Friday}{13:30}{14:30}
+
+\event{Personal}{Out of Office}{Saturday,Monday,Thursday,Sunday}{17:00}{19:00}
+% ============================================
+% Generate the schedule
+% ============================================
 \begin{document}
-
-\begin{center}
-\LARGE\textbf{Weekly Schedule - Spring 2026}\\[0.2cm]
-\Large Dr. Rumbaugh
-\end{center}
-
-\vspace{0.05cm}
-
-\begin{tikzpicture}[x=1cm, y=1cm]
-    % Define parameters
-    \def\daywidth{4.5}
-    \def\hourheight{1.5}
-    \def\starthour{8}
-    \def\endhour{18}
-
-    % Draw grid
-    % Column headers (days)
-    \foreach \day/\dayname in {0/Monday, 1/Tuesday, 2/Wednesday, 3/Thursday, 4/Friday} {
-        \node[anchor=south, font=\large\bfseries] at (\day*\daywidth+2.25, -\starthour*\hourheight+0.2) {\dayname};
-    }
-
-    % Row headers (times)
-    \foreach \hour in {\starthour,...,\endhour} {
-        \pgfmathtruncatemacro{\displayhour}{mod(\hour-1,12)+1}
-        \pgfmathsetmacro{\ampm}{\hour<12?"AM":"PM"}
-        \node[anchor=east, font=\small] at (-0.1, -\hour*\hourheight) {\displayhour:00 \ampm};
-    }
-
-    % Draw vertical lines (day separators)
-    \foreach \day in {0,...,5} {
-        \draw[gray] (\day*\daywidth, -\starthour*\hourheight) -- (\day*\daywidth, -\endhour*\hourheight);
-    }
-
-    % Draw horizontal lines (hour separators)
-    \foreach \hour in {\starthour,...,\endhour} {
-        \draw[gray] (0, -\hour*\hourheight) -- (5*\daywidth, -\hour*\hourheight);
-    }
-
-    % Helper function to calculate y position from time
-    % Time format: hour.fraction (e.g., 9.5 for 9:30)
-
-    % Monday events
-    % CIE Project Meeting Monday 9:00 - 9:30
-    \fill[meetingcolor, rounded corners] (0, -9*\hourheight) rectangle (0+\daywidth, -9.5*\hourheight);
-    \node[font=\small, align=center] at (0+2.25, -9.25*\hourheight) {SCPlus Project Meeting};
-
-    % Faculty Meeting Monday 10:00 - 10:30
-    \fill[meetingcolor, rounded corners] (0, -10*\hourheight) rectangle (0+\daywidth, -10.5*\hourheight);
-    \node[font=\small, align=center] at (0+2.25, -10.25*\hourheight) {Faculty Meeting};
-
-    % CISC 225 01 Monday 11:00 - 12:00
-    \fill[coursecolor, rounded corners] (0, -11*\hourheight) rectangle (0+\daywidth, -12*\hourheight);
-    \node[font=\small, align=center] at (0+2.25, -11.5*\hourheight) {CISC 225 01};
-
-    % GEND 112 01 Monday 13:30 - 14:30 (1:30 PM - 2:30 PM)
-    \fill[coursecolor, rounded corners] (0, -13.5*\hourheight) rectangle (0+\daywidth, -14.5*\hourheight);
-    \node[font=\small, align=center] at (0+2.25, -14*\hourheight) {GEND 112 01};
-
-    % Personal (OO) Monday 14:30 - 17:00 (2:30 PM - 5:00 PM)
-    \fill[personalcolor, rounded corners] (0, -14.5*\hourheight) rectangle (0+\daywidth, -17*\hourheight);
-    \node[font=\small, align=center] at (0+2.25, -15.75*\hourheight) {(Out of Office)};
-
-    % Tuesday events
-    % MATH 220 01 Tuesday 9:00 - 10:30
-    \fill[coursecolor, rounded corners] (1*\daywidth, -9*\hourheight) rectangle (1*\daywidth+\daywidth, -10.5*\hourheight);
-    \node[font=\small, align=center] at (1*\daywidth+2.25, -9.75*\hourheight) {MATH 220 01};
-
-    % CISC 460 01 Tuesday 11:15 - 12:45
-    \fill[coursecolor, rounded corners] (1*\daywidth, -11.25*\hourheight) rectangle (1*\daywidth+\daywidth, -12.75*\hourheight);
-    \node[font=\small, align=center] at (1*\daywidth+2.25, -12*\hourheight) {CISC 460 01};
-
-    % Office Hours Tuesday 13:00 - 14:30 (1:00 PM - 2:30 PM)
-    \fill[officecolor, rounded corners] (1*\daywidth, -13*\hourheight) rectangle (1*\daywidth+\daywidth, -14.5*\hourheight);
-    \node[font=\small, align=center] at (1*\daywidth+2.25, -13.75*\hourheight) {Office Hours};
-
-    % Wednesday events
-    % Faculty Meeting Wednesday 10:00 - 11:00
-    \fill[meetingcolor, rounded corners] (2*\daywidth, -10*\hourheight) rectangle (2*\daywidth+\daywidth, -11*\hourheight);
-    \node[font=\small, align=center] at (2*\daywidth+2.25, -10.5*\hourheight) {Faculty Meeting};
-
-    % CISC 225 01 Wednesday 11:00 - 12:00
-    \fill[coursecolor, rounded corners] (2*\daywidth, -11*\hourheight) rectangle (2*\daywidth+\daywidth, -12*\hourheight);
-    \node[font=\small, align=center] at (2*\daywidth+2.25, -11.5*\hourheight) {CISC 225 01};
-
-    % GEND 112 01 Wednesday 13:30 - 14:30
-    \fill[coursecolor, rounded corners] (2*\daywidth, -13.5*\hourheight) rectangle (2*\daywidth+\daywidth, -14.5*\hourheight);
-    \node[font=\small, align=center] at (2*\daywidth+2.25, -14*\hourheight) {GEND 112 01};
-
-    % Research Meeting Wednesday 14:30 - 15:30
-    \fill[meetingcolor, rounded corners] (2*\daywidth, -14.5*\hourheight) rectangle (2*\daywidth+\daywidth, -15.5*\hourheight);
-    \node[font=\small, align=center] at (2*\daywidth+2.25, -15*\hourheight) {Research Meeting};
-
-    % Thursday events
-    % MATH 220 01 Thursday 9:00 - 10:30
-    \fill[coursecolor, rounded corners] (3*\daywidth, -9*\hourheight) rectangle (3*\daywidth+\daywidth, -10.5*\hourheight);
-    \node[font=\small, align=center] at (3*\daywidth+2.25, -9.75*\hourheight) {MATH 220 01};
-
-    % CISC 460 01 Thursday 11:15 - 12:45
-    \fill[coursecolor, rounded corners] (3*\daywidth, -11.25*\hourheight) rectangle (3*\daywidth+\daywidth, -12.75*\hourheight);
-    \node[font=\small, align=center] at (3*\daywidth+2.25, -12*\hourheight) {CISC 460 01};
-
-    % Office Hours Thursday 13:00 - 14:30
-    \fill[officecolor, rounded corners] (3*\daywidth, -13*\hourheight) rectangle (3*\daywidth+\daywidth, -14.5*\hourheight);
-    \node[font=\small, align=center] at (3*\daywidth+2.25, -13.75*\hourheight) {Office Hours};
-
-    % Friday events
-    % CISC 225 01 Friday 11:00 - 12:00
-    \fill[coursecolor, rounded corners] (4*\daywidth, -11*\hourheight) rectangle (4*\daywidth+\daywidth, -12*\hourheight);
-    \node[font=\small, align=center] at (4*\daywidth+2.25, -11.5*\hourheight) {CISC 225 01};
-
-    % GEND 112 01 Friday 13:30 - 14:30
-    \fill[coursecolor, rounded corners] (4*\daywidth, -13.5*\hourheight) rectangle (4*\daywidth+\daywidth, -14.5*\hourheight);
-    \node[font=\small, align=center] at (4*\daywidth+2.25, -14*\hourheight) {GEND 112 01};
-
-\end{tikzpicture}
-
-\vspace{0.2cm}
-
-% Legend
-\begin{center}
-\begin{tikzpicture}
-    \fill[coursecolor] (0,0) rectangle (0.4,0.3);
-    \node[anchor=west] at (0.5,0.15) {Courses};
-
-    \fill[meetingcolor] (3,0) rectangle (3.4,0.3);
-    \node[anchor=west] at (3.5,0.15) {Meetings};
-
-    \fill[officecolor] (6,0) rectangle (6.4,0.3);
-    \node[anchor=west] at (6.5,0.15) {Office Hours};
-
-    \fill[personalcolor] (9.5,0) rectangle (9.9,0.3);
-    \node[anchor=west] at (10,0.15) {Personal};
-\end{tikzpicture}
-\end{center}
-
+\printschedule
 \end{document}
-- 
cgit v1.2.3

