ScoreGeneratorVstFltk.hpp

Go to the documentation of this file.
00001 
00022 #ifndef CSOUNDVSTFLTK_H
00023 #define CSOUNDVSTFLTK_H
00024 
00025 class ScoreGeneratorVst;
00026 
00027 #include "public.sdk/source/vst2.x/aeffeditor.h"
00028 #include <FL/Fl_Help_View.H>
00029 #include <FL/Fl_Pack.H>
00030 #include <FL/Fl_Tabs.H>
00031 #include <FL/Fl_Input.H>
00032 #include <FL/Fl_Preferences.H>
00033 #include <FL/Fl_Browser.H>
00034 #include <FL/Fl_Text_Editor.H>
00035 #include <FL/Fl_Text_Display.H>
00036 #include <FL/Fl_Text_Buffer.H>
00037 #include <FL/Fl_Button.H>
00038 #include <FL/Fl_Check_Button.H>
00039 #include <FL/Fl_Group.H>
00040 #include <list>
00041 #undef KeyPress
00042 #include "ScoreGeneratorVst.hpp"
00043 #include "ScoreGeneratorVstUi.h"
00044 
00045 #if defined(WIN32)
00046 
00047 extern HINSTANCE hInstance;
00048 
00049 #endif
00050 
00051 class WaitCursor
00052 {
00053   void *cursor;
00054 public:
00055   WaitCursor();
00056   virtual ~WaitCursor();
00057 };
00058 
00059 class ScoreGeneratorVstFltk :
00060   public AEffEditor
00061 {
00062 public:
00063   void *windowHandle;
00064   Fl_Window *scoreGeneratorVstUi;
00065   ScoreGeneratorVst *scoreGeneratorVst;
00066   int useCount;
00067   static std::string aboutText;
00068   typedef enum {
00069     kEditorWidth = 610,
00070     kEditorHeight = 430,
00071     xPad = 4,
00072     yPad = 4
00073   } AEffEditorSize;
00074   bool updateFlag;
00075   Fl_Pack *mainPack;
00076   Fl_Tabs *mainTabs;
00077   Fl_Group *runtimeMessagesGroup;
00078   Fl_Browser *runtimeMessagesBrowser;
00079   Fl_Text_Editor *scriptTextEdit;
00080   Fl_Text_Buffer *scriptTextBuffer;
00081   Fl_Text_Buffer *aboutTextBuffer;
00082   Fl_Text_Display *aboutTextDisplay;
00083   Fl_Group *scriptGroup;
00084   std::list<std::string> messages;
00085   std::string helpFilename;
00086   std::string messagebuffer;
00087   ScoreGeneratorVstFltk(AudioEffect *audioEffect);
00088   virtual ~ScoreGeneratorVstFltk(void);
00089   virtual void updateCaption();
00090   virtual void updateModel();
00091   virtual void log(char *message);
00092   virtual void logv(char *message,...);
00093   //    AEffEditor overrides.
00094   virtual bool getRect(ERect **rect);
00095   virtual bool open(void *windowHandle);
00096   virtual void close();
00097   virtual void idle();
00098   virtual void update();
00099   virtual void postUpdate();
00100   // FLTK event handlers.
00101   void onNew(Fl_Button*, ScoreGeneratorVstFltk* ScoreGeneratorVstFltk);
00102   void onNewVersion(Fl_Button*, ScoreGeneratorVstFltk* ScoreGeneratorVstFltk);
00103   void onOpen(Fl_Button*, ScoreGeneratorVstFltk* ScoreGeneratorVstFltk);
00104   void onSave(Fl_Button*, ScoreGeneratorVstFltk* ScoreGeneratorVstFltk);
00105   void onSaveAs(Fl_Button*, ScoreGeneratorVstFltk* ScoreGeneratorVstFltk);
00106   void onGenerate(Fl_Button*, ScoreGeneratorVstFltk* ScoreGeneratorVstFltk);
00107 };
00108 
00109 #endif
00110 

Generated on Tue Apr 14 11:00:49 2009 for Csound and CsoundAC by  doxygen 1.5.8