861 wxWindow *parent,
bool call_fit,
bool set_sizer) {
863 wxBoxSizer *item0 =
new wxBoxSizer( wxVERTICAL );
865 wxBoxSizer *item1 =
new wxBoxSizer( wxVERTICAL );
867 wxFlexGridSizer *item2 =
new wxFlexGridSizer( 2, 0, 0 );
869 wxStaticText *item3 =
new wxStaticText( parent,
ID_LABEL_NAME,
870 wxT(
"Name:"), wxDefaultPosition, wxDefaultSize, 0 );
871 item2->Add( item3, 0, wxALIGN_RIGHT|wxALL, 5 );
873 wxTextCtrl *item4 =
new wxTextCtrl( parent,
ID_NAME, wxT(
""),
874 wxDefaultPosition, wxSize(200,-1), 0 );
875 item2->Add( item4, 0, wxALIGN_CENTER|wxALL, 5 );
878 wxT(
"Clock port:"), wxDefaultPosition, wxDefaultSize, 0 );
879 item2->Add( item5, 0, wxALIGN_RIGHT|wxALL, 5 );
881 wxTextCtrl *item6 =
new wxTextCtrl( parent,
ID_CLK_PORT, wxT(
""),
882 wxDefaultPosition, wxSize(80,-1), 0 );
883 item2->Add( item6, 0, wxGROW|wxALL, 5 );
886 wxT(
"Reset port:"), wxDefaultPosition, wxDefaultSize, 0 );
887 item2->Add( item7, 0, wxALIGN_RIGHT|wxALL, 5 );
889 wxTextCtrl *item8 =
new wxTextCtrl( parent,
ID_RESET_PORT, wxT(
""),
890 wxDefaultPosition, wxSize(80,-1), 0 );
891 item2->Add( item8, 0, wxGROW|wxALL, 5 );
894 wxT(
"Global lock port:"), wxDefaultPosition, wxDefaultSize, 0 );
895 item2->Add( item9, 0, wxALIGN_RIGHT|wxALL, 5 );
897 wxTextCtrl *item10 =
new wxTextCtrl( parent,
ID_GLOCK_PORT, wxT(
""),
898 wxDefaultPosition, wxSize(80,-1), 0 );
899 item2->Add( item10, 0, wxGROW|wxALL, 5 );
902 wxT(
"Guard port:"), wxDefaultPosition, wxDefaultSize, 0 );
903 item2->Add( item11, 0, wxALIGN_RIGHT|wxALL, 5 );
905 wxTextCtrl *item12 =
new wxTextCtrl( parent,
ID_GUARD_PORT, wxT(
""),
906 wxDefaultPosition, wxSize(80,-1), 0 );
907 item2->Add( item12, 0, wxGROW|wxALL, 5 );
910 wxT(
"Size parameter:"), wxDefaultPosition, wxDefaultSize, 0 );
911 item2->Add( item13, 0, wxALIGN_RIGHT|wxALL, 5 );
914 wxDefaultPosition, wxSize(80,-1), 0, 0, wxCB_SORT);
915 item2->Add( sizeChoice, 0, wxGROW|wxALL, 5 );
918 wxT(
"Width parameter:"), wxDefaultPosition, wxDefaultSize, 0 );
919 item2->Add( item15, 0, wxALIGN_RIGHT|wxALL, 5 );
922 wxDefaultPosition, wxSize(80,-1), 0, 0, wxCB_SORT);
923 item2->Add(widthChoice, 0, wxGROW|wxALL, 5);
925 wxStaticText *saclabel =
new wxStaticText(parent,
ID_LABEL_SAC,
926 wxT(
"Separate address cycle:"), wxDefaultPosition, wxDefaultSize, 0);
927 item2->Add(saclabel, 0, wxALIGN_RIGHT | wxALIGN_CENTER_VERTICAL | wxALL,
930 wxString choises[2] =
931 { wxT(
"False"), wxT(
"True") };
932 wxRadioBox *sacradiobox =
new wxRadioBox(parent,
ID_SAC, wxT(
""),
933 wxDefaultPosition, wxDefaultSize, 2, choises, 0, wxRA_SPECIFY_COLS);
934 item2->Add(sacradiobox, 0, wxGROW | wxALIGN_CENTER_VERTICAL | wxALL, 5);
936 item1->Add( item2, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5 );
938 wxBoxSizer *item17 =
new wxBoxSizer( wxHORIZONTAL );
940 wxStaticBox *item19 =
new wxStaticBox( parent, -1, wxT(
"Ports:") );
941 wxStaticBoxSizer *item18 =
new wxStaticBoxSizer( item19, wxVERTICAL );
943 wxListCtrl *item20 =
new wxListCtrl( parent,
ID_PORT_LIST,
944 wxDefaultPosition, wxSize(220,160), wxLC_REPORT|wxSUNKEN_BORDER );
945 item18->Add( item20, 0, wxGROW|wxALL, 5 );
947 wxBoxSizer *item21 =
new wxBoxSizer( wxHORIZONTAL );
949 wxButton *item22 =
new wxButton( parent,
ID_ADD_PORT,
950 wxT(
"Add..."), wxDefaultPosition, wxDefaultSize, 0 );
951 item21->Add( item22, 0, wxALIGN_CENTER|wxALL, 5 );
954 wxT(
"Modify..."), wxDefaultPosition, wxDefaultSize, 0 );
955 item21->Add( item23, 0, wxALIGN_CENTER|wxALL, 5 );
958 wxT(
"Delete"), wxDefaultPosition, wxDefaultSize, 0 );
959 item21->Add( item24, 0, wxALIGN_CENTER|wxALL, 5 );
961 item18->Add( item21, 0, wxALIGN_CENTER, 5 );
963 item17->Add( item18, 0, wxGROW|wxALL, 5 );
965 wxStaticBox *item26 =
new wxStaticBox( parent, -1, wxT(
"Source files:") );
966 wxStaticBoxSizer *item25 =
new wxStaticBoxSizer( item26, wxVERTICAL );
968 wxFlexGridSizer *item27_1 =
new wxFlexGridSizer( 2, 0, 0 );
971 wxDefaultPosition, wxSize(300, 150), wxLC_REPORT|wxSUNKEN_BORDER );
972 item27_1->Add( item27, 0, wxGROW|wxALL, 5 );
974 wxBoxSizer *item27_2 =
new wxBoxSizer( wxVERTICAL );
977 wxDefaultPosition, wxSize(20, 20), 0 );
978 item27_2->Add( item60, 0, wxALIGN_CENTER|wxALL, 5 );
981 wxDefaultPosition, wxSize(20, 20), 0 );
982 item27_2->Add( item61, 0, wxALIGN_CENTER|wxALL, 5 );
984 item27_1->Add( item27_2, 0, wxALIGN_CENTER, 5 );
986 item25->Add( item27_1, 0, wxGROW|wxALL, 5 );
988 wxBoxSizer *item28 =
new wxBoxSizer( wxHORIZONTAL );
990 wxButton *item29 =
new wxButton( parent,
ID_ADD_SOURCE, wxT(
"Add..."),
991 wxDefaultPosition, wxDefaultSize, 0 );
992 item28->Add( item29, 0, wxALL, 5 );
995 wxDefaultPosition, wxDefaultSize, 0 );
996 item28->Add( item30, 0, wxALIGN_CENTER|wxALL, 5 );
998 item25->Add( item28, 0, 0, 5 );
1000 item17->Add( item25, 0, wxGROW|wxALL, 5 );
1002 item1->Add( item17, 0, wxALIGN_CENTER|wxALL, 5 );
1005 wxBoxSizer *extPortAndParamSizer =
new wxBoxSizer( wxHORIZONTAL );
1007 wxStaticBox *extPortBox =
new wxStaticBox(parent, -1,
1008 wxT(
"External ports:"));
1009 wxStaticBoxSizer *extPortBoxSizer =
new wxStaticBoxSizer(extPortBox,
1012 wxDefaultPosition, wxSize(200,120), wxLC_REPORT|wxSUNKEN_BORDER );
1013 extPortBoxSizer->Add( item35, 0, wxGROW|wxALL, 5 );
1014 wxBoxSizer *extPortButtons =
new wxBoxSizer( wxHORIZONTAL );
1016 wxT(
"Add..."), wxDefaultPosition, wxDefaultSize, 0);
1017 extPortButtons->Add( addExtPort, 0, wxALL, 5 );
1019 wxT(
"Edit..."), wxDefaultPosition, wxDefaultSize, 0);
1020 extPortButtons->Add(editExtPort, 0, wxALIGN_CENTER|wxALL, 5);
1022 wxT(
"Delete"), wxDefaultPosition, wxDefaultSize, 0);
1023 extPortButtons->Add(deleteExtPort, 0, wxALIGN_CENTER|wxALL, 5);
1024 extPortBoxSizer->Add(extPortButtons, 0, wxALIGN_CENTER, 5);
1025 extPortAndParamSizer->Add(extPortBoxSizer, 0,
1029 wxStaticBox *paramBox =
new wxStaticBox(parent, -1, wxT(
"Parameters:"));
1030 wxStaticBoxSizer *paramBoxSizer =
new wxStaticBoxSizer(paramBox,
1034 wxDefaultPosition, wxSize(300,120), wxLC_REPORT|wxSUNKEN_BORDER );
1035 paramBoxSizer->Add( item42, 0, wxGROW|wxALL, 5 );
1037 wxBoxSizer *item43 =
new wxBoxSizer( wxHORIZONTAL );
1040 wxDefaultPosition, wxDefaultSize, 0 );
1041 item43->Add( item44, 0, wxALIGN_CENTER|wxALL, 5 );
1044 wxDefaultPosition, wxDefaultSize, 0 );
1045 item43->Add( item45, 0, wxALIGN_CENTER|wxALL, 5 );
1048 wxT(
"Delete"), wxDefaultPosition, wxDefaultSize, 0 );
1049 item43->Add( item46, 0, wxALIGN_CENTER|wxALL, 5 );
1051 paramBoxSizer->Add( item43, 0,
1054 extPortAndParamSizer->Add( paramBoxSizer, 0,
1057 item1 ->Add(extPortAndParamSizer, 0,
1060 item0->Add( item1, 0, wxGROW|wxALL, 5 );
1062 wxStaticLine *item31 =
new wxStaticLine( parent,
ID_LINE,
1063 wxDefaultPosition, wxSize(20,-1), wxLI_HORIZONTAL );
1064 item0->Add( item31, 0, wxGROW|wxALL, 5 );
1066 wxBoxSizer *item32 =
new wxBoxSizer( wxHORIZONTAL );
1068 wxButton *item33 =
new wxButton( parent, wxID_OK, wxT(
"&OK"),
1069 wxDefaultPosition, wxDefaultSize, 0 );
1070 item32->Add( item33, 0, wxALIGN_CENTER|wxALL, 5 );
1072 wxButton *item34 =
new wxButton( parent, wxID_CANCEL, wxT(
"&Cancel"),
1073 wxDefaultPosition, wxDefaultSize, 0 );
1074 item32->Add( item34, 0, wxALIGN_CENTER|wxALL, 5 );
1076 item0->Add( item32, 0, wxALL, 5);
1080 parent->SetSizer( item0 );
1082 item0->SetSizeHints(parent);