00001
00002
00003 #ifndef NELDERMEADPANEL_H
00004 #define NELDERMEADPANEL_H
00005
00006
00007
00008
00009 #include "../methods/NelderMead.h"
00010
00011 #include "MethodPanelInfo.h"
00012 #include "PointControl.h"
00013 #include "StopConditionControl.h"
00014 #include "StopConditionValidator.h"
00015
00016 class NelderMeadPanel: public wxPanel {
00017 public:
00018
00019
00020
00023 NelderMeadPanel(wxWindow* parent,
00024 int id,
00025 NelderMead* pMethod,
00026 const ProblemBase& problem,
00027 const wxPoint& pos=wxDefaultPosition,
00028 const wxSize& size=wxDefaultSize,
00029 long style=0);
00030
00035 static wxPanel* CreatePanel(MethodPanelInfo panelInfo);
00036
00037
00038 private:
00039
00040 void set_properties();
00041 void do_layout();
00042
00043
00044 static const void* mpRegistrationDummy;
00045
00046 protected:
00047
00048 wxStaticBox* mpStartingSimplexSizer_staticbox;
00049 wxStaticText* mpReflectionLabel;
00050 wxTextCtrl* mpReflectionTextCtrl;
00051 wxStaticText* mpExpansionLabel;
00052 wxTextCtrl* mpExpansionTextCtrl;
00053 wxStaticText* mpContractionLabel;
00054 wxTextCtrl* mpContractionTextCtrl;
00055 wxStaticText* mpShrinkageLabel;
00056 wxTextCtrl* mpShrinkageTextCtrl;
00057 StopConditionControl* mpStopCondition;
00058 wxStaticText* mpSideLengthLabel;
00059 wxTextCtrl* mpSideLengthTextCtrl;
00060 PointControl* mpStartingCenter;
00061
00062 };
00063
00064
00065 #endif // NELDERMEADPANEL_H