IUtilityPanel.h

Go to the documentation of this file.
00001 /**********************************************************************
00002  *<
00003     FILE: IUtilityPanel.h
00004 
00005     DESCRIPTION: Function-published interface to access the utility panel
00006 
00007     CREATED BY: David Cunningham
00008 
00009     HISTORY: August 31, 2001 file created
00010 
00011  *> Copyright (c) 2001, All Rights Reserved.
00012  **********************************************************************/
00013 
00014 #pragma once
00015 
00016 #include "iFnPub.h"
00017 #define IUTIL_FO_INTERFACE Interface_ID(0x7476dc, 0x4364dc)
00018 
00019 
00020 //==============================================================================
00021 // class IUtilityPanel
00022 //  
00023 // The interface to the utility panel manager.
00024 //
00025 // This class defines an interface for opening and closing utility plugins, and
00026 // provides maxscript access to the same.
00027 //
00028 // An instance of this interface can be retrieved using the following line of
00029 // code:
00030 //
00031 //   static_cast<IUtilityPanel*>(GetCOREInterface(IUTIL_FO_INTERFACE));
00032 //
00033 // Or, from maxscript (examples):
00034 //
00035 //   UtilityPanel.OpenUtility Resource_Collector
00036 //   UtilityPanel.OpenUtility Bitmap_Photometric_Path_Editor
00037 //   UtilityPanel.CloseUtility
00038 //
00039 // The last example closes the currently open utility, if any.
00040 //
00041 //==============================================================================
00042 
00043 // maxscript method enum
00044 enum { util_open, util_close };
00045 
00056 class IUtilityPanel : public FPStaticInterface  {
00057 public:
00058 
00068     virtual BOOL OpenUtility(ClassDesc*) = 0;
00070     virtual void CloseUtility() = 0;
00071 
00072 };
00073 
00074