MCPcopy Create free account
hub / github.com/SimHacker/micropolis / SetInterval

Function SetInterval

micropolis-activity/src/sim/w_inter.c:1509–1548  ·  view source on GitHub ↗
(intervalPtr, min, max, notify)

Source from the content-addressed store, hash-verified

1507 lastmin = min; lastmax = max;
1508 min += delta; max += delta;
1509 if ((max - min) != intervalPtr->trackWidth) { /* squished */
1510 if (lastmin == intervalPtr->fromValue) {
1511 min = max - intervalPtr->trackWidth;
1512 } else if (lastmax == intervalPtr->toValue) {
1513 max = min + intervalPtr->trackWidth;
1514 }
1515 }
1516 break;
1517 }
1518
1519 SetInterval(intervalPtr, min, max, 1);
1520}
1521
1522
1523static void
1524SetInterval(intervalPtr, min, max, notify)
1525 register Interval *intervalPtr; /* Info about widget. */
1526 int min, max, notify;
1527{
1528 if (min > max) {
1529 int temp = min;
1530 min = max;
1531 max = temp;
1532 }
1533
1534 if ((min < intervalPtr->fromValue)
1535 ^ (intervalPtr->toValue < intervalPtr->fromValue)) {
1536 min = intervalPtr->fromValue;
1537 }
1538 if ((min > intervalPtr->toValue)
1539 ^ (intervalPtr->toValue < intervalPtr->fromValue)) {
1540 min = intervalPtr->toValue;
1541 }
1542 if ((max < intervalPtr->fromValue)
1543 ^ (intervalPtr->toValue < intervalPtr->fromValue)) {
1544 max = intervalPtr->fromValue;
1545 }
1546 if ((max > intervalPtr->toValue)
1547 ^ (intervalPtr->toValue < intervalPtr->fromValue)) {
1548 max = intervalPtr->toValue;
1549 }
1550
1551 if ((min == intervalPtr->minValue) &&

Callers 4

IntervalWidgetCmdFunction · 0.85
ConfigureIntervalFunction · 0.85
StartTrackIntervalFunction · 0.85
TrackIntervalFunction · 0.85

Calls 1

EventuallyRedrawIntervalFunction · 0.85

Tested by

no test coverage detected