Both the constant declarations are identical -- the second should be for BAT1. You're competing with me for multiple postings with bugs, but I've still go you beat. :-)
-- Peter Peter M. Brigham pmb...@gmail.com http://home.comcast.net/~pmbrig On Mar 7, 2015, at 8:46 AM, Michael Doub wrote: > ok, a new day and another attempt. I hope we have it this time. ;-) > > on mouseup > put __getPowerSource() > end mouseup > > function __caseSwitch > /* __caseSwitch Misc > Syntax: > __caseSwitch > (var_to_Match,<matchValue>=<returnValue>,[<matchValue>=<returnValue>]... > Examples: > put caseSwitch(len(tZip),"5=zip","10=zip+4","*=not a zip code") into > zipCodeType > Description: > Does a quick inline switch/case but supports a default for a non-match. > . Also see __Switch > > param 1 is checkValue > params 2+ are in the form matchValue(s)>=<returnValue > . separate multiple matcheValues with commas > . and enclose each matchValue=returnValue pair in quotes > if checkValue matches one or more items in matchValue(s), > . returns returnValue > > Note that checkValue should NOT be enclosed in quotes' > > Use a matchValue of "*" to specify a default value, > . to be returned if no matches found in the list > . if the default is "*=*" then no match returns the original <checkValue> > . if no match and no default value specified, then returns empty > > Source: > Peter M. Brigham from Ken Ray, use-LC list, originally named stsSwitch() > __caseSwitch */ > put param(1) into tCheckValue > set the itemDel to "=" > put "" into tDefault > repeat with x = 2 to the paramCount > put param(x) into tCheck > put item 1 of tCheck into tMatch > put item 2 of tCheck into tRetVal > replace "," with "=" in tMatch > if tCheckValue = empty and tMatch = empty then return tRetVal > if tCheckValue is among the items of tMatch then return tRetVal > if tMatch = "*" then > if tRetVal = "*" then > put tCheckValue into tDefault > else > put tRetVal into tDefault > end if > end if > end repeat > return tDefault > end __caseSwitch > > > function __getPowerSource > /* __getPowerSource Under Test - System > Syntax: > __getPowerSource() > Examples: > __getPowerSource() > Description: > -- returns the current power source for a laptop > -- "AC" or "Battery" > -- or "no battery" if there is no battery (Unix) > Source: > Peter M. Brigham with help from Martin Koob, Bob Sneidar, Richard Gaskin > __getPowerSource */ > /* Include > __caseSwitch > */ > > switch the platform > case "MacOS" > -- thanks to Martin Koob, use-LC list > put shell ("pmset -g batt") into tStatus > -- returns something like: > -- Currently drawing from 'AC Power' > -- -InternalBattery-0 99%; finishing charge; 0:00 remaining > return char 2 to -1 of word -2 of line 1 of tStatus > break > case "Win32" > -- thanks to Bob Sneidar, use-LC list > put shell("WMIC Path Win32_Battery GetAvailability") into tStatus > -- Line 3 will contain 2 if the battery is charging, 3 if running on > battery > put line 3 of tStatus into tStatus > return __caseSwitch(tStatus,"3=Battery","*=AC") > break > default > -- Unix, thanks to Mark Wieder > constant kBatteryStatus0 = "/sys/class/power_supply/BAT0/status" > constant kBatteryStatus1 = "/sys/class/power_supply/BAT0/status" > if there is a file (kBatteryStatus0) then > open file (kBatteryStatus0) for read > read from file (kBatteryStatus0) until eof > put it into tStatus > close file (kBatteryStatus0) > else if there is a file (kBatteryStatus1) then > open file (kBatteryStatus1) for read > read from file (kBatteryStatus1) until eof > put it into tStatus > close file (kBatteryStatus1) > else > return "AC" > -- no battery, must be running off external power > end if > put word 1 of tStatus into tStatus > if tStatus = empty then return empty > return > __caseSwitch(tStatus,"discharging=Battery","charging,unknown,full=AC","*=*") > -- if tStatus = empty, returns empty -- > -- Unix users please test: should this return some value?? > -- if tStatus is not in "discharging,charging,unknown,full" then > -- just returns whatever "/sys/class/power_supply/BATx" reports > end switch > end __getPowerSource > > > > > _______________________________________________ > use-livecode mailing list > use-livecode@lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription > preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode _______________________________________________ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode