]> Dogcows Code - chaz/thecheat/blobdiff - MyDocument.h
The Cheat 1.0b3
[chaz/thecheat] / MyDocument.h
diff --git a/MyDocument.h b/MyDocument.h
new file mode 100644 (file)
index 0000000..1e928e0
--- /dev/null
@@ -0,0 +1,198 @@
+
+// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+// Project:   The Cheat
+//
+// File:      MyDocument.h
+// Created:   Sun Sep 07 2003
+//
+// Copyright: 2003 Chaz McGarvey.  All rights reserved.
+// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+#import <Cocoa/Cocoa.h>
+
+#include <float.h>
+
+#import "ClientDelegate.h"
+
+#import "MenuExtras.h"
+
+#include "cheat_types.h"
+#include "cheat_globals.h"
+#include "cheat_net.h"
+
+
+@interface MyDocument : NSDocument < ClientDelegate >
+{
+       // allows for easy interface updating
+       TCstatus                        status, lastStatus;
+       
+       // dealing with connecting
+       BOOL                            waitingToConnect;
+       NSConnection            *connection;
+       NSData                          *connectionAddress;
+       NSString                        *connectionName;
+       int                                     sockfd;
+       NSNetServiceBrowser     *browser;
+       
+       // for updating the interface
+       NSString                        *targetName;
+       int                                     targetPID;
+       BOOL                            targetPaused;
+
+       // list of broadcast servers
+       NSMutableArray          *serverList;
+       NSMutableArray          *addressList;
+
+       TCaddress                       *searchResults;
+       int                                     searchResultsAmount;
+
+       // to allow for connecting on new document
+       BOOL                            everConnected;
+       
+       // for the status field
+       NSString                        *savedStatusText;
+       NSColor                         *savedStatusColor;
+       NSTimer                         *statusTextTimer;
+       
+       // for updating the interface
+       int                                     undoCount, redoCount;
+       BOOL                            addressSelected;
+       
+       // for changing variables every x seconds
+       NSTimer                         *changeTimer;
+
+       // INTERFACE OUTLETS
+       IBOutlet NSWindow                               *cheatWindow;
+       IBOutlet NSPopUpButton                  *serverPopup;
+       IBOutlet NSButton                               *pauseButton;
+       IBOutlet NSPopUpButton                  *processPopup;
+       IBOutlet NSPopUpButton                  *typePopup;
+       IBOutlet NSPopUpButton                  *sizePopup;
+       IBOutlet NSTextField                    *searchTextField;
+       IBOutlet NSMatrix                               *searchRadioMatrix;
+       IBOutlet NSButton                               *searchButton;
+       IBOutlet NSButton                               *clearSearchButton;
+       IBOutlet NSButton                               *changeButton;
+       IBOutlet NSTableView                    *addressTable;
+       IBOutlet NSTextField                    *statusText;
+       IBOutlet NSProgressIndicator    *statusBar;
+
+       IBOutlet NSMenu                                 *serverMenu;
+       IBOutlet NSMenu                                 *processMenu;
+       IBOutlet NSMenu                                 *typeMenu;
+       IBOutlet NSMenu                                 *stringSizeMenu;
+       IBOutlet NSMenu                                 *integerSizeMenu;
+       IBOutlet NSMenu                                 *decimalSizeMenu;
+       
+       // FOR THE CHANGE SHEET
+       IBOutlet NSWindow                               *changeSheet;
+       IBOutlet NSTextField                    *changeTextField;
+       IBOutlet NSButton                               *recurringChangeButton;
+       IBOutlet NSComboBox                             *changeSecondsCombo;
+       IBOutlet NSButton                               *cancelButton;
+       IBOutlet NSButton                               *okButton;
+}
+
+// UPDATE INTERFACE
+- (void)initialInterfaceSetup;
+
+- (void)updateSearchButton;
+- (void)updatePauseButton;
+- (void)updateSearchBoxes;
+- (void)updateChangeButton;
+
+- (void)setStatusDisconnected;
+- (void)setStatusConnected;
+- (void)setStatusCheating;
+- (void)setStatusSearching;
+- (void)setStatusChanging;
+- (void)setStatusChangingLater;
+- (void)setStatusChangingContinuously;
+- (void)setStatusUndoing;
+- (void)setStatusRedoing;
+- (void)setStatusToLast;
+
+- (void)setStatusText:(NSString *)msg duration:(NSTimeInterval)seconds;
+- (void)setStatusText:(NSString *)msg duration:(NSTimeInterval)seconds color:(NSColor *)color;
+- (void)statusTextTimer:(NSTimer *)timer;
+
+// UPDATE CHANGE SHEET
+
+
+
+// CONNECT/DISCONNECT TO SERVER
+- (void)connectToLocal;
+- (void)connectToServer:(NSData *)addr name:(NSString *)name;
+- (void)disconnect;
+
+// SEND NETWORK MESSAGE
+- (void)sendProcessListRequest;
+- (void)sendClearSearch;
+- (void)sendSearch:(char const *)data size:(int)size;
+- (void)sendChange:(char const *)data size:(int)size;
+- (void)sendPauseTarget;
+- (void)sendVariableValueRequest;
+- (void)sendUndoRequest;
+- (void)sendRedoRequest;
+- (void)sendSetTargetPID:(int)pid;
+
+// RECEIVED NETWORK MESSAGE
+- (void)receivedProcessList:(NSData *)data;
+- (void)receivedSearchFinished;
+- (void)receivedVariableList:(NSData *)data;
+- (void)receivedChangeFinished;
+- (void)receivedError:(NSData *)data;
+- (void)receivedUndoFinished;
+- (void)receivedRedoFinished;
+- (void)receivedUndoRedoStatus:(NSData *)data;
+- (void)receivedAppLaunched:(NSData *)data;
+- (void)receivedAppQuit:(NSData *)data;
+- (void)receivedTargetQuit;
+- (void)receivedPauseFinished:(NSData *)data;
+
+// SEARCHING/CHANGING COMMANDS
+- (void)search;
+- (void)change;
+
+- (void)changeSheet:(NSWindow *)sheet returned:(int)returned context:(void *)context;
+
+- (void)changeTimer:(NSTimer *)timer;
+
+// CHEAT WINDOW INTERFACE
+- (IBAction)typePopup:(id)sender;
+
+- (IBAction)searchButton:(id)sender;
+- (IBAction)clearSearchButton:(id)sender;
+
+- (IBAction)changeButton:(id)sender;
+
+- (IBAction)serverMenuItem:(id)sender;
+- (IBAction)serverMenuDisconnect:(id)sender;
+- (IBAction)serverMenuLocal:(id)sender;
+- (IBAction)processMenuItem:(id)sender;
+
+- (IBAction)pauseButton:(id)sender;
+
+- (IBAction)undoMenu:(id)sender;
+- (IBAction)redoMenu:(id)sender;
+
+// CHANGE SHEET INTERFACE
+- (IBAction)cancelButton:(id)sender;
+- (IBAction)okButton:(id)sender;
+
+- (IBAction)recurringChangeButton:(id)sender;
+
+// CLEAN UP
+- (void)clearSearch;
+- (void)destroyResults;
+
+// NOTIFICATION SELECTORS
+- (void)listenerStarted:(NSNotification *)note;
+- (void)listenerStopped:(NSNotification *)note;
+
+- (void)windowsOnTopChanged:(NSNotification *)note;
+
+// ERROR HANDLING
+- (void)handleErrorMessage:(NSString *)msg fatal:(BOOL)fatal;
+
+@end
\ No newline at end of file
This page took 0.021994 seconds and 4 git commands to generate.