Revert "Fix for QT problems in SCApp plus force multithreading"
[supercollider.git] / editors / scapp / include / SCVirtualMachine.h
blob3e566d23d46e8c7f9793699e9f159ca2506c2331
1 /*
2 SuperCollider real time audio synthesis system
3 Copyright (c) 2002 James McCartney. All rights reserved.
4 http://www.audiosynth.com
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
21 #import <Cocoa/Cocoa.h>
24 @interface SCVirtualMachine : NSObject {
25 NSMutableArray *deferredOperations;
26 NSMutableArray *guiWindows;
27 NSTimer *deferredTaskTimer;
28 NSTimer *appClockTimer;
29 float deferredTaskInterval;
32 + (id)sharedInstance;
34 - (id)init;
35 - (void)start;
36 - (void)setDeferredTaskInterval: (float) interval;
37 - (void)doPeriodicTask: (NSTimer*) timer;
38 - (void)doClockTask: (NSTimer*) timer;
39 - (void)setCmdLine: (const char*) text length: (int)length;
40 - (void)sendMain: (char*) methodName;
42 - (void)defer: (NSInvocation*) action;
43 - (void)performDeferredOperations;
44 - (void)removeDeferredOperationsFor:(id) object;
45 - (void)doAnimatedViews;
47 - (void)addWindow: (NSWindow*)window;
48 - (void)closeAllGUIWindows;
50 - (IBAction) runMain: (id) sender;
51 - (IBAction) stopMain: (id) sender;
52 - (IBAction) hardStopMain: (id) sender;
53 - (IBAction) preferences: (id) sender;
54 - (IBAction) compileLibrary: (id) sender;
55 - (IBAction) newSCWindow: (id) sender;
56 - (IBAction)clearPostWindow:(id)sender;
57 - (void)postWindowToFront:(id)sender;
59 // deferred primitives
62 - (void)becomeFullScreen: (NSWindow*)window;
63 - (void)endFullScreen: (NSWindow*)window;
64 - (void)loadUserPanel:(NSString*)filename SCObject: (void*)scobj;
65 - (void) windowDidBecomeKey:(NSNotification *)aNotification;
66 - (void) runAsModal:(NSWindow*)window;
67 - (void) runAsModalSheet: (NSWindow*)sheet forWindow:(NSWindow*)window;
68 - (void) sheetDidEnd:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo;
69 // Sleep
70 - (void) receiveSleepNote: (NSNotification*) note;
71 - (void) receiveWakeNote: (NSNotification*) note;
73 -(IBAction)showHelpFor:(id)sender;
74 -(IBAction)showHelpBrowser:(id)sender;
75 -(IBAction)showHelpSearch:(id)sender;
76 -(IBAction)showClassBrowser:(id)sender;
78 - (IBAction) executeSelection: (id)sender;
79 - (IBAction) openCode: (id)sender;
80 - (IBAction) methodTemplates: (id)sender;
81 - (IBAction) methodReferences: (id)sender;
83 @end