vstguieditor.h

Go to the documentation of this file.
00001 //------------------------------------------------------------------------
00002 // Project     : VST SDK
00003 // Version     : 3.0
00004 //
00005 // Category    : Helpers
00006 // Filename    : vstguieditor.h
00007 // Created by  : Steinberg, 04/2005
00008 // Modified    : $Date: 2008/01/09 12:51:07 $
00009 // Description : VSTGUI Editor
00010 //
00011 //-----------------------------------------------------------------------------
00012 // LICENSE
00013 // © 2008, Steinberg Media Technologies GmbH, All Rights Reserved
00014 //-----------------------------------------------------------------------------
00015 // This Software Development Kit may not be distributed in parts or its entirety  
00016 // without prior written agreement by Steinberg Media Technologies GmbH. 
00017 // This SDK must not be used to re-engineer or manipulate any technology used  
00018 // in any Steinberg or Third-party application or software module, 
00019 // unless permitted by law.
00020 // Neither the name of the Steinberg Media Technologies nor the names of its
00021 // contributors may be used to endorse or promote products derived from this 
00022 // software without specific prior written permission.
00023 // 
00024 // THIS SDK IS PROVIDED BY STEINBERG MEDIA TECHNOLOGIES GMBH "AS IS" AND
00025 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
00026 // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
00027 // IN NO EVENT SHALL STEINBERG MEDIA TECHNOLOGIES GMBH BE LIABLE FOR ANY DIRECT, 
00028 // INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
00029 // BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
00030 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 
00031 // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
00032 // OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
00033 // OF THE POSSIBILITY OF SUCH DAMAGE.
00034 //-----------------------------------------------------------------------------
00035 
00036 #ifndef __vstguieditor__
00037 #define __vstguieditor__
00038 
00039 #include "vsteditcontroller.h"
00040 #include "vstgui.sf/vstgui/vstgui.h"
00041 #include "vstgui.sf/vstgui/cvstguitimer.h"
00042 
00043 namespace Steinberg {
00044 namespace Vst {
00045 
00046 //------------------------------------------------------------------------
00047 class VSTGUIEditor : public EditorView, public VSTGUIEditorInterface
00048 {
00049 public:
00051         VSTGUIEditor (void* controller, ViewRect* size = 0);
00052         
00054         ~VSTGUIEditor ();
00055 
00056         //---Internal function-----
00058         virtual bool PLUGIN_API open (void* parent) = 0;
00060         virtual void PLUGIN_API close () = 0;
00061 
00063         void setIdleRate (int millisec);
00064 
00065         //---from CBaseObject---------------
00066         CMessageResult notify (CBaseObject* sender, const char* message);
00067 
00068         //---from IPlugView-------
00069         tresult PLUGIN_API isPlatformTypeSupported (FIDString type);
00070 
00071 private:
00072         //---from IPlugView-------
00073         tresult PLUGIN_API attached (void* parent, FIDString type);
00074         tresult PLUGIN_API removed ();
00075         tresult PLUGIN_API setFrame (IPlugFrame* frame);
00076 
00077         IPlugFrame* plugFrame;
00078         CVSTGUITimer* timer;
00079 };
00080 
00081 } // namespace Vst
00082 } // namespace Steinberg
00083 
00084 #endif  // __vstguieditor__
Empty

Copyright ©2008 Steinberg Media Technologies. All Rights Reserved.