|
|
1.1 root 1:
2: #import <objc/Object.h>
3: @class Window, Expression, LineGraph, Form, Matrix, Slider, SliderCell, TextFieldCell, Button, NXDataLinkManager;
4:
5: @interface GraphDoc : Object {
6: Window *window;
7: Expression *expr; /* Expression object for evaluation */
8: LineGraph *graph; /* custom view for drawing graph */
9: Form *equation; /* form holding equation text */
10: Matrix *variableSliders; /* outlets to other controls */
11: Matrix *variableTexts;
12: Matrix *variableLabels;
13: SliderCell *resolutionSlider;
14: TextFieldCell *resolutionText;
15: SliderCell *minXSlider;
16: TextFieldCell *minXText;
17: SliderCell *maxXSlider;
18: TextFieldCell *maxXText;
19: Button *autoScale;
20: char *name; /* the name of the document */
21: char *realName; /* unambiguous name of the document */
22: NXDataLinkManager *linkMgr; /* LinkManager */
23: List *linksTracked; /* active links to this document */
24: }
25:
26: - init;
27: - initFromFile:(const char *)file;
28: - free;
29: - (const char *)filename;
30: /* unambiguous path to this file (no symlinks) */
31: - (const char *)realFilename;
32:
33: /* target action messages sent from various graph controls */
34: - equationChanged:sender;
35: - xRangeSliderChanged:sender;
36: - xRangeTextChanged:sender;
37: - resolutionChanged:sender;
38: - variableSliderChanged:sender;
39: - variableTextChanged:sender;
40: - zoomIn:sender;
41: - zoomOut:sender;
42: - autoScale:sender;
43: - invertColors:sender;
44:
45: /* target action messages sent menu items */
46: - copyGraph:sender;
47: - save:sender;
48: - saveAs:sender;
49: - saveTo:sender;
50: - revertToSaved:sender;
51:
52: @end
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.