Mercurial > mplayer.hg
annotate gui/util/misc.c @ 37026:b6ff1451035d
Constrain an item's value to be in the range of 0 to 100.
Add function contrain() and replace checking the bounds by it.
Add it for mouse wheeling, too, where it has been missing so far.
author | ib |
---|---|
date | Thu, 03 Apr 2014 11:30:53 +0000 |
parents | 0790f864cea2 |
children | b28b632efeef |
rev | line source |
---|---|
37024 | 1 /* |
2 * This file is part of MPlayer. | |
3 * | |
4 * MPlayer is free software; you can redistribute it and/or modify | |
5 * it under the terms of the GNU General Public License as published by | |
6 * the Free Software Foundation; either version 2 of the License, or | |
7 * (at your option) any later version. | |
8 * | |
9 * MPlayer is distributed in the hope that it will be useful, | |
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
12 * GNU General Public License for more details. | |
13 * | |
14 * You should have received a copy of the GNU General Public License along | |
15 * with MPlayer; if not, write to the Free Software Foundation, Inc., | |
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | |
17 */ | |
18 | |
19 /** | |
20 * @file | |
21 * @brief Miscellaneous utilities | |
22 */ | |
23 | |
24 #include <string.h> | |
25 | |
26 #include "misc.h" | |
27 | |
28 /** | |
29 * @brief Read characters from @a file. | |
30 * | |
31 * @param str pointer to a buffer to receive the read characters | |
32 * @param size number of characters read at the most (including a terminating null-character) | |
33 * @param file file to read from | |
34 * | |
35 * @return str (success) or NULL (error) | |
36 * | |
37 * @note Reading stops with an end-of-line character or at end of file. | |
38 */ | |
39 char *fgetstr(char *str, int size, FILE *file) | |
40 { | |
41 char *s; | |
42 | |
43 s = fgets(str, size, file); | |
44 | |
45 if (s) | |
46 s[strcspn(s, "\n\r")] = 0; | |
47 | |
48 return s; | |
49 } | |
37026
b6ff1451035d
Constrain an item's value to be in the range of 0 to 100.
ib
parents:
37024
diff
changeset
|
50 |
b6ff1451035d
Constrain an item's value to be in the range of 0 to 100.
ib
parents:
37024
diff
changeset
|
51 /** |
b6ff1451035d
Constrain an item's value to be in the range of 0 to 100.
ib
parents:
37024
diff
changeset
|
52 * @brief Constrain a @a value to be in the range of 0 to 100. |
b6ff1451035d
Constrain an item's value to be in the range of 0 to 100.
ib
parents:
37024
diff
changeset
|
53 * |
b6ff1451035d
Constrain an item's value to be in the range of 0 to 100.
ib
parents:
37024
diff
changeset
|
54 * @param value value to be checked |
b6ff1451035d
Constrain an item's value to be in the range of 0 to 100.
ib
parents:
37024
diff
changeset
|
55 * |
b6ff1451035d
Constrain an item's value to be in the range of 0 to 100.
ib
parents:
37024
diff
changeset
|
56 * @return a value in the range of 0 to 100 |
b6ff1451035d
Constrain an item's value to be in the range of 0 to 100.
ib
parents:
37024
diff
changeset
|
57 */ |
b6ff1451035d
Constrain an item's value to be in the range of 0 to 100.
ib
parents:
37024
diff
changeset
|
58 float constrain(float value) |
b6ff1451035d
Constrain an item's value to be in the range of 0 to 100.
ib
parents:
37024
diff
changeset
|
59 { |
b6ff1451035d
Constrain an item's value to be in the range of 0 to 100.
ib
parents:
37024
diff
changeset
|
60 if (value < 0.0f) |
b6ff1451035d
Constrain an item's value to be in the range of 0 to 100.
ib
parents:
37024
diff
changeset
|
61 return 0.0f; |
b6ff1451035d
Constrain an item's value to be in the range of 0 to 100.
ib
parents:
37024
diff
changeset
|
62 if (value > 100.0f) |
b6ff1451035d
Constrain an item's value to be in the range of 0 to 100.
ib
parents:
37024
diff
changeset
|
63 return 100.0f; |
b6ff1451035d
Constrain an item's value to be in the range of 0 to 100.
ib
parents:
37024
diff
changeset
|
64 |
b6ff1451035d
Constrain an item's value to be in the range of 0 to 100.
ib
parents:
37024
diff
changeset
|
65 return value; |
b6ff1451035d
Constrain an item's value to be in the range of 0 to 100.
ib
parents:
37024
diff
changeset
|
66 } |