head 1.2; access; symbols pkgsrc-2013Q2:1.2.0.54 pkgsrc-2013Q2-base:1.2 pkgsrc-2012Q4:1.2.0.52 pkgsrc-2012Q4-base:1.2 pkgsrc-2011Q4:1.2.0.50 pkgsrc-2011Q4-base:1.2 pkgsrc-2011Q2:1.2.0.48 pkgsrc-2011Q2-base:1.2 pkgsrc-2009Q4:1.2.0.46 pkgsrc-2009Q4-base:1.2 pkgsrc-2008Q4:1.2.0.44 pkgsrc-2008Q4-base:1.2 pkgsrc-2008Q3:1.2.0.42 pkgsrc-2008Q3-base:1.2 cube-native-xorg:1.2.0.40 cube-native-xorg-base:1.2 pkgsrc-2008Q2:1.2.0.38 pkgsrc-2008Q2-base:1.2 pkgsrc-2008Q1:1.2.0.36 pkgsrc-2008Q1-base:1.2 pkgsrc-2007Q4:1.2.0.34 pkgsrc-2007Q4-base:1.2 pkgsrc-2007Q3:1.2.0.32 pkgsrc-2007Q3-base:1.2 pkgsrc-2007Q2:1.2.0.30 pkgsrc-2007Q2-base:1.2 pkgsrc-2007Q1:1.2.0.28 pkgsrc-2007Q1-base:1.2 pkgsrc-2006Q4:1.2.0.26 pkgsrc-2006Q4-base:1.2 pkgsrc-2006Q3:1.2.0.24 pkgsrc-2006Q3-base:1.2 pkgsrc-2006Q2:1.2.0.22 pkgsrc-2006Q2-base:1.2 pkgsrc-2006Q1:1.2.0.20 pkgsrc-2006Q1-base:1.2 pkgsrc-2005Q4:1.2.0.18 pkgsrc-2005Q4-base:1.2 pkgsrc-2005Q3:1.2.0.16 pkgsrc-2005Q3-base:1.2 pkgsrc-2005Q2:1.2.0.14 pkgsrc-2005Q2-base:1.2 pkgsrc-2005Q1:1.2.0.12 pkgsrc-2005Q1-base:1.2 pkgsrc-2004Q4:1.2.0.10 pkgsrc-2004Q4-base:1.2 pkgsrc-2004Q3:1.2.0.8 pkgsrc-2004Q3-base:1.2 pkgsrc-2004Q2:1.2.0.6 pkgsrc-2004Q2-base:1.2 pkgsrc-2004Q1:1.2.0.4 pkgsrc-2004Q1-base:1.2 pkgsrc-2003Q4:1.2.0.2 pkgsrc-2003Q4-base:1.2 buildlink2-base:1.2 netbsd-1-5-RELEASE:1.1 netbsd-1-4-PATCH003:1.1; locks; strict; comment @# @; 1.2 date 2000.12.12.02.11.14; author wiz; state dead; branches; next 1.1; 1.1 date 2000.03.07.03.35.45; author jlam; state Exp; branches; next ; desc @@ 1.2 log @Added wm category to main Makefile; remove packages that have been moved from x11 to wm; fix paths in packages that depend on the moved ones. @ text @$NetBSD: patch-ab,v 1.1 2000/03/07 03:35:45 jlam Exp $ --- src/aapm.cc.orig Sun Feb 13 10:28:36 2000 +++ src/aapm.cc Mon Mar 6 22:22:36 2000 @@@@ -22,11 +22,18 @@@@ #ifdef CONFIG_APM +#if defined(__NetBSD__) +#include +#include +#include +#endif + YColor *YApm::apmBg = 0; YColor *YApm::apmFg = 0; YFont *YApm::apmFont = 0; void ApmStr(char *s, bool Tool) { +#ifdef __linux__ char buf[45]; int len, i, fd = open("/proc/apm", O_RDONLY); char driver[16]; @@@@ -97,6 +104,44 @@@@ strcat(s," - Charging"); else strcat(s,"M"); +#elif defined(__NetBSD__) + struct apm_power_info aip; + int fd = open(APMDEV, O_RDONLY); + + if (fd == -1) { + return; + } + + if (ioctl(fd, APM_IOC_GETPOWER, &aip) == -1) { + fprintf(stderr, "ioctl failed on APMDEV"); + return; + } + + if (!Tool) { + if (taskBarShowApmTime) { + if (aip.minutes_left == 0) { + sprintf(s, "%02d", aip.battery_life); + } else + sprintf(s, "%d:%02d", aip.minutes_left/60, aip.minutes_left%60); + } else + sprintf(s, "%02d", aip.battery_life); + } else { + sprintf(s, "%d%%", aip.battery_life); + } + + if (aip.ac_state == APM_AC_ON) + if (Tool) + strcat(s," - Power"); + else + strcat(s,"P"); + if (aip.battery_state == APM_BATT_CHARGING) + if (Tool) + strcat(s," - Charging"); + else + strcat(s,"M"); + + close(fd); +#endif } YApm::YApm(YWindow *aParent): YWindow(aParent) { @ 1.1 log @Add NetBSD APM support. TaskBarShowAPMStatus=1 now works. @ text @d1 1 a1 1 $NetBSD$ @