Public Member Functions | Static Public Member Functions | Protected Attributes

XAP_CocoaAppController Class Reference

#import <xap_CocoaAppController.h>

List of all members.

Public Member Functions

(id- init
(void) - dealloc
(void) - setAutoLoadPluginsAfterLaunch:
(BOOL) - application:delegateHandlesKey:
(void) - applicationWillFinishLaunching:
(void) - applicationDidFinishLaunching:
(NSApplicationTerminateReply) - applicationShouldTerminate:
(void) - applicationWillTerminate:
(BOOL) - application:openFile:
(BOOL) - application:openTempFile:
(BOOL) - application:printFile:
(BOOL) - applicationOpenUntitledFile:
(BOOL) - applicationOpenFile:
(id- dockFileNew:
(id- dockFileOpen:
(void) - setAboutTitle:
(void) - setPrefsTitle:
(void) - setCHelpTitle:
(void) - setTitle:forMenu:
(const char *) - keyEquivalentForMenuID:modifierMask:
(NSMenu *) - panelMenu
(NSMenu *) - contextMenu
(void) - appendPanelItem:
(void) - appendContextItem:
(void) - appendItem:toMenu:
(void) - clearContextMenu
(void) - clearMenu:
(void) - clearAllMenus
(void) - reappendPluginMenuItems
(void) - appendPluginMenuItem:
(void) - removePluginMenuItem:
(void) - setCurrentView:inFrame:
(void) - resetCurrentView:inFrame:
(void) - unsetCurrentView:inFrame:
(AV_View *) - currentView
(XAP_Frame *) - currentFrame
(AV_View *) - previousView
(XAP_Frame *) - previousFrame
(void) - notifyFrameViewChange
(XAP_CocoaPlugin *) - loadPlugin:
 Load .Abi bundle plugin at path.
(NSArray *) - plugins
(BOOL) - deactivateAllPlugins
 Checks to see whether the plugins can deactivate, and, if they can, deactivates them.
(BOOL) - deactivatePlugin:overridePlugin:
 Checks to see whether the plugins can deactivate, and, if they can, deactivates them.
(void) - addRef:forMenuID:
 This provides a mechanism for associating XAP_CocoaPlugin_MenuItem objects with a given menu ID.
(AP_CocoaPlugin_MenuIDRef *) - refForMenuID:
 This provides a mechanism for finding XAP_CocoaPlugin_MenuItem objects associated with a given menu ID.
(void) - removeRefForMenuID:
 This provides a mechanism for removing XAP_CocoaPlugin_MenuItem objects associated with a given menu ID.
(NSArray *) - toolProviders
 Get a list of all the tool providers.
(id< NSObject,
XAP_CocoaPlugin_ToolProvider >) 
- toolProvider:
 Find a tool provider by name.

Static Public Member Functions

(XAP_CocoaAppController *) + sharedAppController

Protected Attributes

IBOutlet NSMenu * oMenu_AbiWord
IBOutlet NSMenuItem * oMenuItem_AboutAbiWord
IBOutlet NSMenuItem * oMenuItem_Preferences
IBOutlet NSMenu * oMenu_File
IBOutlet NSMenu * oMenu_Edit
IBOutlet NSMenu * oMenu_View
IBOutlet NSMenu * oMenu_Insert
IBOutlet NSMenu * oMenu_Format
IBOutlet NSMenu * oMenu_Tools
IBOutlet NSMenu * oMenu_Table
IBOutlet NSMenu * oMenu_Window
IBOutlet NSMenu * oMenu_Help
IBOutlet NSMenuItem * oMenuItem_File
IBOutlet NSMenuItem * oMenuItem_Edit
IBOutlet NSMenuItem * oMenuItem_View
IBOutlet NSMenuItem * oMenuItem_Insert
IBOutlet NSMenuItem * oMenuItem_Format
IBOutlet NSMenuItem * oMenuItem_Tools
IBOutlet NSMenuItem * oMenuItem_Table
IBOutlet NSMenuItem * oMenuItem_Window
IBOutlet NSMenuItem * oMenuItem_Help
IBOutlet NSMenuItem * oMenuItem_AbiWordHelp
NSMenu * m_PanelMenu
NSMenu * m_ContextMenu
NSMenu * m_AppMenu [XAP_CocoaAppMenu_count__]
NSMenuItem * m_AppItem [XAP_CocoaAppMenu_count__]
NSMutableDictionary * m_MenuIDRefDictionary
NSMutableArray * m_Plugins
NSMutableArray * m_PluginsTools
NSMenuItem * m_PluginsToolsSeparator
NSMutableArray * m_FilesRequestedDuringLaunch
NSMutableArray * m_ToolProviders
BOOL m_bApplicationLaunching
BOOL m_bAutoLoadPluginsAfterLaunch
AV_Viewm_pViewCurrent
XAP_Framem_pFrameCurrent
AV_Viewm_pViewPrevious
XAP_Framem_pFramePrevious

Member Function Documentation

- (void) addRef: (AP_CocoaPlugin_MenuIDRef *)  ref
forMenuID: (NSNumber *)  menuid 

This provides a mechanism for associating XAP_CocoaPlugin_MenuItem objects with a given menu ID.

References m_MenuIDRefDictionary.

Referenced by AP_CocoaPlugin_ContextMenuItem::initWithLabel:.

- (void) appendContextItem: (NSMenuItem *)  item  

References m_ContextMenu.

Referenced by EV_CocoaMenu::addToAppMenu.

- (void) appendItem: (NSMenuItem *)  item
toMenu: (XAP_CocoaAppMenu_Id appMenu 
- (void) appendPanelItem: (NSMenuItem *)  item  
- (void) appendPluginMenuItem: (NSMenuItem *)  menuItem  
- (BOOL) application: (NSApplication *)  sender
delegateHandlesKey: (NSString *)  key 

References UT_UNUSED.

- (BOOL) application: (NSApplication *)  theApplication
openFile: (NSString *)  filename 
- (BOOL) application: (NSApplication *)  theApplication
openTempFile: (NSString *)  filename 
- (BOOL) application: (NSApplication *)  theApplication
printFile: (NSString *)  filename 
- (void) applicationDidFinishLaunching: (NSNotification *)  aNotification  
- (BOOL) applicationOpenFile: (NSApplication *)  theApplication  
- (BOOL) applicationOpenUntitledFile: (NSApplication *)  theApplication  
- (NSApplicationTerminateReply) applicationShouldTerminate: (NSApplication *)  sender  
- (void) applicationWillFinishLaunching: (NSNotification *)  aNotification  

References UT_UNUSED.

- (void) applicationWillTerminate: (NSNotification *)  aNotification  
- (void) clearAllMenus  

References clearMenu:.

Referenced by EV_CocoaMenu::buildAppMenu.

- (void) clearContextMenu  

References m_ContextMenu.

Referenced by EV_CocoaMenu::buildAppMenu.

- (void) clearMenu: (XAP_CocoaAppMenu_Id appMenu  
- (NSMenu *) contextMenu  
- (XAP_Frame *) currentFrame  
- (AV_View *) currentView  
- (BOOL) deactivateAllPlugins  

Checks to see whether the plugins can deactivate, and, if they can, deactivates them.

Returns:
Returns false if any of the plugins object.

References BOOL(), XAP_CocoaPlugin::delegate, and m_Plugins.

- (BOOL) deactivatePlugin: (XAP_CocoaPlugin *)  plugin
overridePlugin: (BOOL)  override 

Checks to see whether the plugins can deactivate, and, if they can, deactivates them.

Returns:
Returns false if the plugin objects, unless override is YES.

References XAP_CocoaPlugin::delegate.

- (void) dealloc  
- (id) dockFileNew: (id sender  
- (id) dockFileOpen: (id sender  

References applicationOpenFile:, and UT_UNUSED.

- (id) init  
- (const char *) keyEquivalentForMenuID: (int /* XAP_Menu_Id */)  menuid
modifierMask: (unsigned int *)  mask 
- (XAP_CocoaPlugin *) loadPlugin: (NSString *)  path  

Load .Abi bundle plugin at path.

Returns:
Returns nil on failure.

References m_Plugins.

- (void) notifyFrameViewChange  
- (NSMenu *) panelMenu  
- (NSArray *) plugins  
Returns:
Returns list of currently loaded plugins.
- (XAP_Frame *) previousFrame  
- (AV_View *) previousView  
- (void) reappendPluginMenuItems  

References m_AppMenu.

- (AP_CocoaPlugin_MenuIDRef *) refForMenuID: (NSNumber *)  menuid  

This provides a mechanism for finding XAP_CocoaPlugin_MenuItem objects associated with a given menu ID.

References m_MenuIDRefDictionary.

Referenced by s_GetMenuItemComputedLabel_Fn(), and s_GetMenuItemState_Fn().

- (void) removePluginMenuItem: (NSMenuItem *)  menuItem  
- (void) removeRefForMenuID: (NSNumber *)  menuid  

This provides a mechanism for removing XAP_CocoaPlugin_MenuItem objects associated with a given menu ID.

References m_MenuIDRefDictionary.

Referenced by AP_CocoaPlugin_ContextMenuItem::dealloc.

- (void) resetCurrentView: (AV_View *)  view
inFrame: (XAP_Frame *)  frame 

References notifyFrameViewChange.

- (void) setAboutTitle: (NSString *)  title  
- (void) setAutoLoadPluginsAfterLaunch: (BOOL)  autoLoadPluginsAfterLaunch  
- (void) setCHelpTitle: (NSString *)  title  

References oMenuItem_AbiWordHelp.

- (void) setCurrentView: (AV_View *)  view
inFrame: (XAP_Frame *)  frame 
- (void) setPrefsTitle: (NSString *)  title  
- (void) setTitle: (NSString *)  title
forMenu: (XAP_CocoaAppMenu_Id appMenu 
+ (XAP_CocoaAppController *) sharedAppController  

References UT_DEBUGMSG.

- (id< NSObject, XAP_CocoaPlugin_ToolProvider >) toolProvider: (NSString *)  name  

Find a tool provider by name.

(TODO: If plug-ins are registering tool providers, we need to implement a notification system to update toolbar systems.)

Parameters:
name The name of the tool provider to find.
Returns:
The tool provider, or nil if none is registered with the given name.

References m_ToolProviders.

Referenced by XAP_CocoaPlugin::toolProvider:.

- (NSArray *) toolProviders  

Get a list of all the tool providers.

Each tool provider is of type id <NSObject, XAP_CocoaPlugin_ToolProvider>.

Returns:
The tool providers.

Referenced by XAP_CocoaPlugin::toolProviders.

- (void) unsetCurrentView: (AV_View *)  view
inFrame: (XAP_Frame *)  frame 

Member Data Documentation

- (NSMenuItem* m_AppItem[XAP_CocoaAppMenu_count__]) [protected]
- (NSMenu* m_AppMenu[XAP_CocoaAppMenu_count__]) [protected]
- (BOOL) m_bApplicationLaunching [protected]
- (BOOL) m_bAutoLoadPluginsAfterLaunch [protected]
- (NSMenu*) m_ContextMenu [protected]
- (NSMutableArray*) m_FilesRequestedDuringLaunch [protected]
- (NSMutableDictionary*) m_MenuIDRefDictionary [protected]
- (NSMenu*) m_PanelMenu [protected]

Referenced by appendPanelItem:, dealloc, and init.

- (XAP_Frame*) m_pFrameCurrent [protected]
- (XAP_Frame*) m_pFramePrevious [protected]
- (NSMutableArray*) m_Plugins [protected]
- (NSMutableArray*) m_PluginsTools [protected]
- (NSMenuItem*) m_PluginsToolsSeparator [protected]

Referenced by dealloc, and init.

- (AV_View*) m_pViewCurrent [protected]
- (AV_View*) m_pViewPrevious [protected]
- (NSMutableArray*) m_ToolProviders [protected]
- (IBOutlet NSMenu*) oMenu_AbiWord [protected]
- (IBOutlet NSMenu*) oMenu_Edit [protected]
- (IBOutlet NSMenu*) oMenu_File [protected]
- (IBOutlet NSMenu*) oMenu_Format [protected]
- (IBOutlet NSMenu*) oMenu_Help [protected]
- (IBOutlet NSMenu*) oMenu_Insert [protected]
- (IBOutlet NSMenu*) oMenu_Table [protected]
- (IBOutlet NSMenu*) oMenu_Tools [protected]
- (IBOutlet NSMenu*) oMenu_View [protected]
- (IBOutlet NSMenu*) oMenu_Window [protected]
- (IBOutlet NSMenuItem*) oMenuItem_AbiWordHelp [protected]

Referenced by setCHelpTitle:.

- (IBOutlet NSMenuItem*) oMenuItem_AboutAbiWord [protected]

Referenced by setAboutTitle:.

- (IBOutlet NSMenuItem*) oMenuItem_Edit [protected]
- (IBOutlet NSMenuItem*) oMenuItem_File [protected]
- (IBOutlet NSMenuItem*) oMenuItem_Format [protected]
- (IBOutlet NSMenuItem*) oMenuItem_Help [protected]
- (IBOutlet NSMenuItem*) oMenuItem_Insert [protected]
- (IBOutlet NSMenuItem*) oMenuItem_Preferences [protected]

Referenced by setPrefsTitle:.

- (IBOutlet NSMenuItem*) oMenuItem_Table [protected]
- (IBOutlet NSMenuItem*) oMenuItem_Tools [protected]
- (IBOutlet NSMenuItem*) oMenuItem_View [protected]
- (IBOutlet NSMenuItem*) oMenuItem_Window [protected]

The documentation for this class was generated from the following files: