Tidy. Took 10 seconds: -------------------------------------------------------------------------- function TimeDisplay HowMany,DisplayHow if DisplayHow = "Duration" then // if AppStarterStackSettings["default"]["Time Unit"] = "seconds" then
return round(HowMany / 1000,3) & "s" else if AppStarterStackSettings["default"]["Time Unit"] = "milliseconds" then return HowMany & "ms" else if AppStarterStackSettings["default"]["Time Unit"] = "microseconds" then end if else if DisplayHow = "Human Readable" then // local final_output = "<d> days <hh>:<mm>:<ss>" local running_second_count local next_calculation set itemdelimiter to "." -- we are looking at boths sides of the decimal place put round(HowMany / 1000) into HowMany -- convert to seconds // 86,400 seconds in an day // 3600 in an hour // 60 seonds in a minute // replace counts as you go -- days put HowMany / 86400 into next_calculation if next_calculation < 1 then put HowMany into running_second_count replace "<d>" with "0" in final_output else // how many days? replace "<d>" with item 1 of next_calculation in final_output put (HowMany) - (item 1 of next_calculation * 86400) into running_second_count end if -- hours put running_second_count / 3600 into next_calculation if next_calculation < 1 then replace "<hh>" with "00" in final_output else // how many hours? if the number of characters in item 1 of next_calculation = 1 then replace "<hh>" with "0" & item 1 of next_calculation in final_output else replace "<hh>" with item 1 of next_calculation in final_output end if put (running_second_count) - (item 1 of next_calculation * 3600) into running_second_count end if -- minutes put running_second_count / 60 into next_calculation if next_calculation < 1 then replace "<mm>" with "00" in final_output else // how many minutes? if the number of characters in item 1 of next_calculation = 1 then replace "<mm>" with "0" & item 1 of next_calculation in final_output else replace "<mm>" with item 1 of next_calculation in final_output end if put (running_second_count) - (item 1 of next_calculation * 60) into running_second_count end if -- seconds put running_second_count into next_calculation if next_calculation < 1 then replace "<ss>" with "00" in final_output else // how many minutes? if the number of characters in item 1 of next_calculation = 1 then replace "<ss>" with "0" & next_calculation in final_output else replace "<ss>" with next_calculation in final_output end if end if end if // return final_output end TimeDisplay --------------------------------------------------------------- _______________________________________________ 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