/* Copyright (C) 2025 awy stclock is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. stclock is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with stclock. If not, see . */ #include #include #include #include "../lib/util.h" void buttonhandler() { char *term; char *env; int button; button = 0; if ((env = getenv("BLOCK_BUTTON"))) button = getbtnint(env); if (!(term = getenv("TERMINAL"))) term = "footclient"; const char *termcmd[] = { term, "-e", "calcurse", NULL }; switch (button) { case 1: sendnotif("stclock", "This Month", "there should be calendar but you know how we doing"); break; case 2: spawn(termcmd); break; case 3: sendnotif("stclock", " Time/date module", "- Left click to show upcoming \ appointments for the next three days\ via `calcurse -d3` and show the month via `cal`\n\ - Middle click opens calcurse if installed"); break; default: break; } } int main(void) { time_t t; char buf[64]; buttonhandler(); t = time(NULL); if (!strftime(buf, sizeof(buf), "%F %T", localtime(&t))) die("strftime: Result string exceeds buffer size"); printf("%s", buf); return 0; }