AeBankWindow.h 2.85 KB

//////////////////////////////////////////////////////////////
//
// Header file for AeBankWindow
//
//    This class is a ViewKit VkWindow subclass
//
// Normally, very little in this file should need to be changed.
// Create/add/modify menus using the builder.
//
// Restrict changes to those sections between
// the "//--- Start/End editable code block" markers
// Doing so will allow you to make chnages using the builder
// without losing any changes you may have made manually
//
//////////////////////////////////////////////////////////////

#ifndef AEBANKWINDOW_H
#define AEBANKWINDOW_H
#include <Vk/VkWindow.h>

class VkMenuItem;
class VkMenuToggle;
class VkMenuConfirmFirstAction;
class VkSubMenu;
class VkRadioSubMenu;

class AeBinView;
class AeBankEditor;


class AeBankWindow: public VkWindow { 

  public:
                        AeBankWindow (const char * name, 
				      AeBankEditor * editor,
				      ArgList args = NULL,
				      Cardinal argCount = 0);
                        ~AeBankWindow();
    const char *	className();
    virtual Boolean 	okToQuit();

    AeBinView *  	GetView (void) { return fView; }
    AeBankEditor *	GetEditor (void) { return fEditor; }

  protected:

    // Classes created by this class

    AeBinView *		fView;
    AeBankEditor *	fEditor;

    // Menu items created by this class
    VkSubMenu  *	_editPane;
    VkMenuItem *	_undoButton;
    VkMenuItem *	_cutButton;
    VkMenuItem *	_copyButton;
    VkMenuItem *	_pasteButton;
    VkMenuItem *	_deleteButton;
    VkSubMenu  *	_assetPane;
    VkMenuItem *	_addButton;
    VkMenuItem *	_importButton;
    VkSubMenu  *	_selectPane;
    VkMenuItem *	_editorButton;
    VkMenuItem *	_ownersButton;

    // Menu Operations

    virtual void copy ( Widget, XtPointer );
    virtual void cut ( Widget, XtPointer );
    virtual void paste ( Widget, XtPointer );
    virtual void del ( Widget, XtPointer );
    virtual void addAsset ( Widget, XtPointer );
    virtual void importAsset ( Widget, XtPointer );
    virtual void listOwners ( Widget, XtPointer );
    virtual void openEditor ( Widget, XtPointer );

    virtual void handleWmDeleteMessage (void);


  private:


    // Callbacks to interface with Motif

    static void copyCallback ( Widget, XtPointer, XtPointer );
    static void cutCallback ( Widget, XtPointer, XtPointer );
    static void pasteCallback ( Widget, XtPointer, XtPointer );
    static void deleteCallback ( Widget, XtPointer, XtPointer );
    static void addAssetCallback ( Widget, XtPointer, XtPointer );
    static void importAssetCallback ( Widget, XtPointer, XtPointer );
    static void listOwnersCallback ( Widget, XtPointer, XtPointer );
    static void openEditorCallback ( Widget, XtPointer, XtPointer );

    static String      _defaultResources[];

    //---- Start editable code block: AeBankWindow private


    //---- End editable code block: AeBankWindow private


};
#endif