示例#1
0
文件: Test.cs 项目: mtswiss/UniWork
 public Test(Controller _core, IGEPlugin _ge, TextFileEditor txt)
 {
     core = _core;
     t_pool = core.getTrips();
     record = core.getRecord();
     ge = _ge;
     txtedit = txt;
 }
示例#2
0
文件: Form1.cs 项目: mtswiss/UniWork
        /********************************************** Form Button Operations *********************************************/
        /******************
         * Load Data
         * *****************/
        private void btLoad_Click(object sender, EventArgs e)
        {
            data ParsedData = new data();
            data ParsedDataForDay = new data();
            if (ge != null)
            {
                if (kmlex == ".kml" && txtex == ".txt" /*&& ( poiex == ".xlsx" || poiex == ".xls" )*/ )
                {
                    try
                    {
                        statusText = "Reading KML Data";
                        ge.getFeatures().appendChild(ge.parseKml((System.IO.File.ReadAllText(kmlfpath))));
                        statusText = "Parsing KML Data";
                        D_parser();
                        statusText = "Creating Trip Selector";
                        foreach (String trip in t_pool.getNames())
                        {
                            cblTrips.Items.Add(trip);
                        }
                        core = new Controller(ge, t_pool, record);
                        panel2.Visible = true;
                        panel4.Visible = true;
                        panel5.Visible = true;
                        panel1.Visible = true;

                        //Now we'll show the textDataGrid to the user
                        btUnhidePanelFunction();
                        statusText = "Parsing Text File Data";
                        Module.writeToTestingFile("Parsing Text File Data at " + DateTime.Now.ToString());
                        //If the file input is correct we will parse the text file into memory wehere it can be easily edited by the user
                        textParser.parseFileToDataSet(txtfpath, ParsedData, ParsedDataForDay, d_name);
                        txtEditor.setViewerTotal(ParsedData);
                        txtEditor.setViewer(ParsedDataForDay);
                        statusText = "Setting up Interface";
                        Module.writeToTestingFile("Setting up interface at " + DateTime.Now.ToString());
                        //Now we'll add the data to the viewer in the Form
                        textDataGrid.DataSource = txtEditor.getViewer();
                        KMLTripView.DataSource = t_pool.getTripDetails();
                        textDataGrid.Columns["Day"].Visible = false;
                        textDataGrid.Columns["HouseHold"].Visible = false;
                        textDataGrid.Columns["Person"].Visible = false;
                        textDataGrid.Columns["Date"].Visible = false;
                        textDataGrid.Columns["Weekday"].Visible = false;
                        KMLTripView.Columns["HouseHoldID"].Visible = false;
                        KMLTripView.Columns["Trip"].Visible = false;
                        KMLTripView.Columns["Person"].Visible = false;
                        KMLTripView.Columns["Day"].Visible = false;
                        KMLTripView.Columns["Date"].Visible = false;
                        KMLTripView.Columns["Weekday"].Visible = false;
                        KMLTripView.Columns["Remain"].Visible = false;
                        houseHoldText.Text = txtEditor.getViewer().Rows[0]["HouseHold"].ToString();
                        personText.Text = txtEditor.getViewer().Rows[0]["Person"].ToString();
                        dateText.Text = txtEditor.getViewer().Rows[0]["Date"].ToString();
                        dayText.Text = txtEditor.getViewer().Rows[0]["Weekday"].ToString();
                        if (t_pool.getSize() > txtEditor.getViewer().Rows.Count)
                        {
                            tripConflictText.ForeColor = System.Drawing.Color.Red;
                            tripConflictText.Text = "KML and Text File trips don't match.";
                        }
                        if (poifpath != null)
                        {
                            statusText = "Parsing POI Data";
                            Module.writeToTestingFile("Parsing POI File Data at " + DateTime.Now.ToString());
                            POIData.getDataFromExcelFile(poifpath, txtEditor.getViewer());
                        }
                        statusText = "Creating POI on map";
                        setPOIsOnMap(POIData.getHomes(), POIData.getSchools(), POIData.getWorks(), POIData.getShoppings());
                        ge.getView().setAbstractView(core.allocate());
                        statusText = "Matching KML and Text Data";
                        Module.writeToTestingFile("Match KML and Text Data at " + DateTime.Now.ToString());
                        matchKMLTripstoTextDataTrips();
                        DataGridViewComboBoxColumn temp = generateDropDownListForTrips();
                        KMLTripView.Columns.Add(temp); ;
                        match_check();
                        //Enable the Rest Tilt button
                        btResetTilt.Visible = true;
                        //btResetTilt.SetBounds((int)ge.getNavigationControl().getScreenXY().getX(), (int)ge.getNavigationControl().getScreenXY().getY() + 20, btResetTilt.Size.Width, btResetTilt.Size.Height);

                        // Disable load button until one of the file browse button is click onto
                        btLoad.Enabled = false;
                        Module.writeToTestingFile("Finish at " + DateTime.Now.ToString());
                        Module.writeTestingFile();

                    }
                    catch (Exception)
                    {
                        MessageBox.Show("Unable to load '" + kmln + "'.", "ERROR");
                    }
                }
                else if (kmlfpath == null && txtfpath == null)
                {
                    MessageBox.Show("Please choose the input KML and output TXT files.", "Caution");
                }
                else
                {
                    MessageBox.Show("Wrong file format.", "Caution");
                }
            }
        }