|
|
1.1 root 1:
2: #define IB_PARSE_HACK 0
3:
4: #import <appkit/Application.h>
5: #import <appkit/View.h>
6: #import <dpsclient/dpsNeXT.h>
7: #include <sys/resource.h>
8: #import <drivers/event_status_driver.h>
9:
10: #define NOWINDOW (0)
11: #define NORMALWINDOW (1)
12: #define BACKWINDOW (2)
13:
14: #define SAVERTIER (50)
15: #define BACKGROUNDTIER (-100)
16:
17: // I'm not at all happy with BackSpace's time handling; it only works
18: // for 49 days after rebooting (according to my calculations... I boot
19: // a lot more often than that!) since it counds milliseconds in a
20: // 32 bit unsigned int. This problem would be solved if I stuffed the
21: // time in a long long, but I think the compiler doesn't correctly do
22: // 64 bit comparisons. Time should probably stay in the unix
23: // timeval struct. Yuck! guess I should write functions for time
24: // addition and comparison...
25:
26: // typedef long long BStimeval; //doesn't work
27: typedef unsigned BStimeval;
28:
29: // a function to BackSpace's Thinker instance
30: id BSThinker();
31:
32: enum BSEvents {BSDOSAVER, BSOPENFILE};
33:
34: BStimeval currentTimeInMs();
35:
36: float frandom();
37: float randBetween(float a, float b);
38:
39: @interface Thinker:Object
40: {
41: id spaceView;
42:
43: id spaceWindow;
44: id normalWindow;
45: id bigUnbufferedWindow;
46: id bigBufferedWindow;
47:
48: BOOL timerValid, keepLooping;
49: BOOL doingSaver;
50: DPSTimedEntry timer;
51:
52: int windowType;
53: int realViewIndex;
54: int virtualViewIndex;
55: NXRect windowRect;
56:
57: NXZone *backZone;
58:
59: int screenCount;
60: id windMatrix;
61:
62: id screenSaver;
63: id screenLocker;
64: BOOL screenSaverVal;
65: id mySlider;
66:
67: id priorityLevel;
68: int priority;
69:
70: NXEventHandle evs; //event driver file descriptor
71: double dimBrightness, normalBrightness;
72:
73: id viewSelectionBrowser;
74: id moduleList;
75: id imageView;
76: NXScreen *screens;
77: id screenList;
78:
79: id image;
80: int globalTier;
81:
82: id password;
83:
84: id invisibleInspectorBox;
85: id commonImageInspector;
86: id nullInspector;
87: id spaceInspector;
88: id boinkInspector;
89: id currentInspector;
90: NXRect inspectorFrame;
91: id oldInspectorOwner;
92: BOOL browserValid;
93:
94:
95: char *fileToOpen;
96: BOOL openAnother;
97: }
98:
99: - appDidInit:sender;
100: - appDidHide:sender;
101: - appDidUnhide:sender;
102: - createTimer;
103: - removeTimer;
104: - doDistributorLoop;
105:
106: - installSpaceViewIntoWindow:w;
107: - useNormalWindow;
108: - (int) backingTypeForView:aView;
109: - useBackWindow:(int)tier;
110: - createBigWindowIfNecessaryForView:aView;
111:
112: - getWindowType;
113: - changeWindowType:sender;
114: - changeWindowTypeAndRemember:(BOOL)rem;
115:
116: - getScreenSaverSetting;
117: - changeScreenSaverSetting:sender;
118: - setScreenSaver:(BOOL)val andRemember:(BOOL)rem;
119: - calcDimTime;
120: - maybeDoScreenSaver:sender;
121: - applicationDefined:(NXEvent *)theEvent;
122: - showFakeScreenSaverAfterPause:sender;
123: - showFakeScreenSaver:sender;
124: - doScreenSaver:sender;
125:
126: - getPrioritySetting;
127: - changeSliderValue:sender;
128: - saveSliderValue;
129:
130: - setImageFromFile: (const char *) filename;
131: - setImageFromName: (const char *) name;
132: - commonImageInit;
133: - getImageFile;
134: - setImageFileFrom: sender;
135:
136: #if !IB_PARSE_HACK
137: @end
138:
139:
140: @interface Thinker(thinkMore)
141: #endif
142:
143: - getViewType;
144: - selectRealViewIndex:sender;
145: - setVirtualViewIndexAndIncrement:(BOOL)flag;
146: - selectScreenSaverViews;
147: - setWindowTitle;
148:
149: - getScreenLockerSetting;
150: - changeScreenLockerSetting:sender;
151: - setScreenLocker:(BOOL)val andRemember:(BOOL)rem;
152:
153: - backView;
154:
155: #if !IB_PARSE_HACK
156: @end
157:
158:
159: @interface Thinker(ioctls)
160: #endif
161:
162: - normalMode;
163: - screenSaverMode;
164:
165: - blackOutAllScreens;
166: - unBlackOutAllScreens;
167:
168: - getDimBrightness:(double *)b;
169: - _setDimBrightness :(double *)b;
170:
171: - getNormalBrightness :(double *)b;
172:
173: - getDimTime :(double *)t;
174:
175: #if !IB_PARSE_HACK
176: @end
177:
178: @interface Thinker(inspector)
179: #endif
180:
181: - commonImageInspector;
182: - nullInspector;
183: - spaceInspector;
184: - boinkInspector;
185: - revertToDefaultImage:sender;
186: - (BOOL)browser:sender columnIsValid:(int)column;
187: - addCellWithString:(const char *)str at:(int)row toMatrix:matrix;
188: - (int)browser:sender fillMatrix:matrix inColumn:(int)column;
189:
190: - loadViewsFrom: (const char *) dirname;
191: - doDelayedOpenFile;
192:
193: - (const char *) appDirectory;
194: - (const char *) moduleDirectory:(const char *)name;
195: - (struct mach_header *) headerForModule:(const char *)name;
196:
197: @end
198:
199: @interface View(someOptionalMethods)
200:
201: - newWindow;
202: - enteredScreenSaverMode;
203: - willExitScreenSaverMode;
204:
205: @end
206:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.