Ignore:
Timestamp:
05/21/17 07:42:48 (7 years ago)
Author:
István Váradi <ivaradi@…>
Branch:
default
hg-Phase:
(<MercurialRepository 1 'hg:/home/ivaradi/mlx/hg' '/'>, 'public')
Message:

PIREP modifications can be saved (re #307)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/mlx/gui/pirep.py

    r849 r853  
    720720        self.add_button(xstr("button_cancel"), RESPONSETYPE_CANCEL)
    721721
    722         self._okButton = self.add_button(xstr("button_save"), RESPONSETYPE_OK)
     722        self._okButton = self.add_button(xstr("button_save"), RESPONSETYPE_NONE)
     723        self._okButton.connect("clicked", self._okClicked)
    723724        self._okButton.set_can_default(True)
    724725        self._modified = False
     726        self._toSave = False
    725727
    726728    def setPIREP(self, pirep):
     
    846848        self._updateButtons()
    847849        self._modified = True
     850        self._toSave = False
    848851
    849852    def delayCodesChanged(self):
     
    13631366                                     self._approachType.get_text()!="")
    13641367
     1368    def _okClicked(self, button):
     1369        """Called when the OK button has been clicked.
     1370
     1371        The PIREP is updated from the data in the window."""
     1372        if not askYesNo(xstr("pirepEdit_save_question"), parent = self):
     1373            self.response(RESPONSETYPE_CANCEL)
     1374
     1375        pirep = self._pirep
     1376
     1377        pirep.filedCruiseAltitude = \
     1378          self._filedCruiseLevel.get_value_as_int() * 100
     1379        pirep.cruiseAltitude = \
     1380          self._modifiedCruiseLevel.get_value_as_int() * 100
     1381
     1382        pirep.route = getTextViewText(self._userRoute)
     1383
     1384        pirep.departureMETAR = getTextViewText(self._departureMETAR)
     1385        pirep.departureRunway = self._departureRunway.get_text()
     1386        pirep.sid = self._sid.get_child().get_text()
     1387
     1388        pirep.arrivalMETAR = getTextViewText(self._arrivalMETAR)
     1389        pirep.star = None if self._star.get_active()==0 \
     1390          else self._star.get_child().get_text()
     1391        pirep.transition = None if self._transition.get_active()==0 \
     1392          else self._transition.get_child().get_text()
     1393        pirep.approachType = self._approachType.get_text()
     1394        pirep.arrivalRunway = self._arrivalRunway.get_text()
     1395
     1396        pirep.blockTimeStart = \
     1397          self._blockTimeStart.getTimestampFrom(pirep.blockTimeStart)
     1398        pirep.blockTimeEnd = \
     1399          self._blockTimeEnd.getTimestampFrom(pirep.blockTimeEnd)
     1400        pirep.flightTimeStart = \
     1401          self._flightTimeStart.getTimestampFrom(pirep.flightTimeStart)
     1402        pirep.flightTimeEnd = \
     1403          self._flightTimeEnd.getTimestampFrom(pirep.flightTimeEnd)
     1404
     1405        pirep.fuelUsed = self._fuelUsed.get_value()
     1406
     1407        pirep.numCrew = self._flownNumCrew.get_value()
     1408        pirep.numPassengers = self._flownNumPassengers.get_value()
     1409        pirep.bagWeight = self._flownBagWeight.get_value()
     1410        pirep.cargoWeight = self._flownCargoWeight.get_value()
     1411        pirep.mailWeight = self._flownMailWeight.get_value()
     1412
     1413        pirep.flightType = flightTypes[self._flightType.get_active()]
     1414        pirep.online = self._online.get_active()
     1415
     1416        pirep.delayCodes = self._flightInfo.delayCodes
     1417        pirep.comments = self._flightInfo.comments
     1418        pirep.flightDefects = self._flightInfo.faultsAndExplanations
     1419
     1420        self.response(RESPONSETYPE_OK)
     1421
     1422
    13651423#------------------------------------------------------------------------------
Note: See TracChangeset for help on using the changeset viewer.