Changeset 174

Show
Ignore:
Timestamp:
03/09/07 01:23:50 (2 years ago)
Author:
ssamara2
Message:

Method_Builder.xaml is now fully functional. Ties in with the backend, and passes context (whatever that means). GenerateCode works too.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • TeachingSoftware/Backend/MethodComposite.cs

    r152 r174  
    105105                        foreach (String element in parameterList) 
    106106                        { 
    107                                 if (!element.Equals(parameterList[parameterList.Count - 1])) 
     107                                if (element.Equals(parameterList[parameterList.Count - 1])) 
    108108                                        returnString += element; 
    109109                                else  
    110                                         returnString += ", " + element
     110                                        returnString += element + ", "
    111111                        } 
    112112 
  • TeachingSoftware/GUI/Method_Builder.xaml

    r144 r174  
    1616                        <Label HorizontalAlignment="Left" Margin="250,150,0,0" x:Name="Label_AddParamaters" VerticalAlignment="Top" Height="26.936" Content="Add parameters:&#xd;&#xa;" FontFamily="Tahoma" FontSize="13"/> 
    1717                        <TextBox HorizontalAlignment="Left" Margin="150,50,0,0" x:Name="Text_Name" VerticalAlignment="Top" Width="200" Text="" TextWrapping="Wrap"/> 
    18                         <TextBox HorizontalAlignment="Left" Margin="150,75,0,0" x:Name="Text_ReturnType" VerticalAlignment="Top" Width="200" Text="" TextWrapping="Wrap"/> 
    1918                        <TextBox HorizontalAlignment="Left" Margin="325,200,50,0" x:Name="Text_ParameterName" VerticalAlignment="Top" Width="150" Text="" TextWrapping="Wrap"/> 
    2019                        <ListBox HorizontalAlignment="Left" Margin="25,175,0,100" x:Name="List_Parameters" VerticalAlignment="Top" Width="200" Height="112.222" IsSynchronizedWithCurrentItem="True"/> 
     
    2322                        <Button HorizontalAlignment="Left" Margin="175,300,0,0" x:Name="Button_Cancel" VerticalAlignment="Top" Content="Cancel" Click="Cancel_Clicked"/> 
    2423                        <Button RenderTransformOrigin="10.083,10.87" d:LayoutOverrides="Width, Height" HorizontalAlignment="Left" Margin="275,225,275,125" x:Name="Button_Add" VerticalAlignment="Top" Content="Add" Click="Add_Parameter"/> 
    25                         <Label HorizontalAlignment="Left" Margin="25,100,0,0" x:Name="Label_Scope" VerticalAlignment="Top" Content="Scope:"/> 
     24                        <Label HorizontalAlignment="Left" Margin="25,100,0,0" x:Name="Label_Scope" VerticalAlignment="Top" Content="Permission:"/> 
    2625                        <ComboBox HorizontalAlignment="Left" Margin="150,100,0,0" x:Name="Combo_Scope" VerticalAlignment="Top" Width="100" IsSynchronizedWithCurrentItem="True"> 
    2726                                <ListBoxItem Content="Private"/> 
     
    3332                        <Label HorizontalAlignment="Left" Margin="275,200,0,0" x:Name="Label_ParamName" VerticalAlignment="Top" Content="Name:"/> 
    3433                        <Label HorizontalAlignment="Left" Margin="275,175,0,0" x:Name="Label_ParamType" VerticalAlignment="Top" Content="Type:"/> 
     34                        <ComboBox HorizontalAlignment="Left" Margin="150,75,0,0" x:Name="Combo_Type" VerticalAlignment="Top" Width="100" ItemsSource = "{Binding}" IsSynchronizedWithCurrentItem="True"/> 
    3535                </Grid> 
    3636        </Grid> 
  • TeachingSoftware/GUI/Method_Builder.xaml.cs

    r144 r174  
    88using System.Windows.Media.Animation; 
    99using System.Windows.Navigation; 
     10using System.Collections; 
     11using System.Collections.Generic; 
    1012 
    1113namespace TeachingSoftware 
     
    1315    public partial class Method_Builder 
    1416    { 
    15  
    1617        private BodyOfCode myContext; 
    1718 
     
    2122 
    2223            this.Combo_ParameterTypes.DataContext = Project.getProgramClasses(); 
     24            this.Combo_Type.DataContext = Project.getProgramClasses(); 
    2325        } 
    2426 
     
    3032            this.myContext = theContext; 
    3133            this.Combo_ParameterTypes.DataContext = Project.getProgramClasses(); 
     34            this.Combo_Type.DataContext = Project.getProgramClasses(); 
    3235        } 
    3336 
     
    4447        private void Submit_Clicked(object sender, RoutedEventArgs e) 
    4548        { 
    46             if ( (Text_Name.Text == "") || (Text_ParameterName.Text == "") || (Text_ReturnType.Text == "") ) 
     49            if ( (Text_Name.Text == "") || (Combo_Type.SelectedIndex == -1) || (Combo_Scope.SelectedIndex == -1) ) 
    4750            { 
    4851                MessageBox.Show("Please enter all information"); 
     
    5053            else 
    5154            { 
     55                List<String> theList = new List<string>(); 
     56                string test = Combo_Scope.SelectedItem.ToString(); 
     57                for (int i = 0; i < List_Parameters.Items.Count; i++) 
     58                { 
     59                    //MessageBox.Show(Combo_ParameterTypes.Items.GetItemAt(i).ToString()); 
     60                    theList.Add(List_Parameters.Items.GetItemAt(i).ToString()); 
     61                    //test += Combo_ParameterTypes.Items.GetItemAt(i).ToString(); 
     62                } 
     63 
     64                String[] array = Combo_Scope.SelectedItem.ToString().Split(' '); 
     65                String permission = (string)array.GetValue(1); 
     66 
     67                String type = Combo_Type.SelectedItem.ToString(); 
     68                //String[] array2 = Combo_Type.SelectedItem.ToString().Split(' '); 
     69                //String type = (string)array2.GetValue(1); 
     70 
     71                MethodComposite theNewMethodComposite 
     72                    = new MethodComposite(permission, type, Text_Name.Text, theList); 
     73 
     74                //MessageBox.Show(test); 
     75                MessageBox.Show(theNewMethodComposite.generateCode(0)); 
     76 
     77                Project.MainClass.addMethodDeclarations(theNewMethodComposite); 
     78 
    5279                this.Close(); 
    5380            } 
  • TeachingSoftware/JavaInitializer.cs

    r165 r174  
    4949 
    5050                        ClassComposite defaultClass = new ClassComposite("Default", "public static", true); 
    51                          
     51            Project.MainClass = defaultClass; 
     52 
    5253                        return defaultClass; 
    5354