scroll.c 855 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. /*
  2. * This file is part of the UCB release of Plan 9. It is subject to the license
  3. * terms in the LICENSE file found in the top-level directory of this
  4. * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
  5. * part of the UCB release of Plan 9, including this file, may be copied,
  6. * modified, propagated, or distributed except according to the terms contained
  7. * in the LICENSE file.
  8. */
  9. #include <u.h>
  10. #include <libc.h>
  11. #include <draw.h>
  12. int
  13. mousescrollsize(int maxlines)
  14. {
  15. static int lines, pcnt;
  16. char *mss;
  17. if(lines == 0 && pcnt == 0){
  18. mss = getenv("mousescrollsize");
  19. if(mss){
  20. if(strchr(mss, '%') != nil)
  21. pcnt = atof(mss);
  22. else
  23. lines = atoi(mss);
  24. free(mss);
  25. }
  26. if(lines == 0 && pcnt == 0)
  27. lines = 1;
  28. if(pcnt>=100)
  29. pcnt = 100;
  30. }
  31. if(lines)
  32. return lines;
  33. return pcnt * maxlines/100.0;
  34. }