예제 #1
0
        public PassCalculator(SatellitesController satellites, SqLiteDb database)
        {
            _satellites = satellites;
            _db         = database;

            InitializeComponent();
            FormClosing += PassCalcHider;

            var location = _db.GetPosition();

            nbxLocLat.Value = location.lat;
            nbxLocLng.Value = location.lng;


            lviewPasses.View          = View.Details;
            lviewPasses.GridLines     = true;
            lviewPasses.FullRowSelect = true;

            lviewPasses.Columns.Add("Start", 120);
            lviewPasses.Columns.Add("Name", 60);
            lviewPasses.Columns.Add("Duration", 55);
            lviewPasses.Columns.Add("Elevation", 60);

            lviewPasses.Click += PassSelected;
        }
예제 #2
0
 public SatChooser(SatellitesController satellites, SqLiteDb db)
 {
     StartPosition = FormStartPosition.CenterParent;
     InitializeComponent();
     Satellites   = satellites;
     Db           = db;
     FormClosing += SatChooserHider;
     UpdateAllLists();
     lbxStoredSats.DoubleClick += btnAddToShown_Click;
 }
예제 #3
0
        public BufferedScreenController(Panel panel, SatellitesController satellitesController, SqLiteDb db)
        {
            _panel      = panel;
            _satellites = satellitesController;
            _db         = db;

            SetupGraphics();

            // Setup Timer
            _timer          = new Timer();
            _timer.Interval = 1000;
            _timer.Tick    += Redraw;
            _timer.Start();

            _panel.SizeChanged           += PanelResizeEvent;
            _satellites.SelectionChanged += Redraw;
        }
예제 #4
0
        public SimulationScreen()
        {
            InitializeComponent();
            var satController = new SatellitesController();
            var database      = new SqLiteDb();

            foreach (var sat in database.GetAllSatellites())
            {
                var newTles = TLEApi.GetCurrentTleData(sat);
                if (newTles.IsSuccess)
                {
                    database.UpdateTle(newTles.Value);
                }
            }

            Controller     = new BufferedScreenController(pnlSimulation, satController, database);
            SatChooser     = new SatChooser(satController, database);
            TimeTravel     = new TimeTravel();
            PassCalculator = new PassCalculator(satController, database);
        }