Changeset 996:8035d80d5feb for src/mlx/gui/timetable.py
- Timestamp:
- 07/04/19 17:57:45 (5 years ago)
- Branch:
- python3
- hg-Phase:
- (<MercurialRepository 1 'hg:/home/ivaradi/mlx/hg' '/'>, 'public')
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/mlx/gui/timetable.py
r995 r996 14 14 #----------------------------------------------------------------------------- 15 15 16 class Timetable( gtk.Alignment):16 class Timetable(Gtk.Alignment): 17 17 """The widget for the time table.""" 18 18 def _getVIPRenderer(): 19 19 """Get the renderer for the VIP column.""" 20 renderer = gtk.CellRendererToggle()20 renderer = Gtk.CellRendererToggle() 21 21 renderer.set_activatable(True) 22 22 return renderer … … 74 74 columnDescriptor.appendType(types) 75 75 76 self._model = gtk.ListStore(*types)76 self._model = Gtk.ListStore(*types) 77 77 if defaultSortableIndex is not None: 78 78 sortOrder = SORT_DESCENDING \ … … 80 80 else SORT_ASCENDING 81 81 self._model.set_sort_column_id(defaultSortableIndex, sortOrder) 82 self._view = gtk.TreeView(self._model)82 self._view = Gtk.TreeView(self._model) 83 83 84 84 self._view.connect("motion-notify-event", self._updateTooltip) 85 85 86 flightPairIndexColumn = gtk.TreeViewColumn()86 flightPairIndexColumn = Gtk.TreeViewColumn() 87 87 flightPairIndexColumn.set_visible(False) 88 88 self._view.append_column(flightPairIndexColumn) … … 102 102 selection.connect("changed", self._selectionChanged) 103 103 104 scrolledWindow = gtk.ScrolledWindow()104 scrolledWindow = Gtk.ScrolledWindow() 105 105 scrolledWindow.add(self._view) 106 106 scrolledWindow.set_size_request(800, -1) 107 107 108 108 # FIXME: these should be constants in common.py 109 scrolledWindow.set_policy( gtk.PolicyType.AUTOMATIC,110 gtk.PolicyType.AUTOMATIC)111 scrolledWindow.set_shadow_type( gtk.ShadowType.IN)109 scrolledWindow.set_policy(Gtk.PolicyType.AUTOMATIC, 110 Gtk.PolicyType.AUTOMATIC) 111 scrolledWindow.set_shadow_type(Gtk.ShadowType.IN) 112 112 113 113 super(Timetable, self).__init__(xalign = 0.5, yalign = 0.0, … … 252 252 #----------------------------------------------------------------------------- 253 253 254 class CalendarWindow( gtk.Window):254 class CalendarWindow(Gtk.Window): 255 255 """A window for a calendar.""" 256 256 def __init__(self): … … 262 262 self.connect("key-press-event", self._keyPressed) 263 263 264 mainAlignment = gtk.Alignment(xalign = 0.5, yalign = 0.5,264 mainAlignment = Gtk.Alignment(xalign = 0.5, yalign = 0.5, 265 265 xscale = 1.0, yscale = 1.0) 266 266 #mainAlignment.set_padding(padding_top = 0, padding_bottom = 12, 267 267 # padding_left = 8, padding_right = 8) 268 268 269 self._calendar = gtk.Calendar()269 self._calendar = Gtk.Calendar() 270 270 self._calendar.connect("day-selected-double-click", self._daySelectedDoubleClick) 271 271 mainAlignment.add(self._calendar) … … 305 305 #----------------------------------------------------------------------------- 306 306 307 class BookDialog( gtk.Dialog):307 class BookDialog(Gtk.Dialog): 308 308 """The dialog box to select additional data for a booking.""" 309 309 def __init__(self, timetableWindow, flightPair, planes): … … 315 315 contentArea = self.get_content_area() 316 316 317 frame = gtk.Frame(xstr("timetable_book_frame_title"))317 frame = Gtk.Frame(xstr("timetable_book_frame_title")) 318 318 frame.set_size_request(600, -1) 319 319 320 mainAlignment = gtk.Alignment(xalign = 0.5, yalign = 0.5,320 mainAlignment = Gtk.Alignment(xalign = 0.5, yalign = 0.5, 321 321 xscale = 0.0, yscale = 0.0) 322 322 mainAlignment.set_padding(padding_top = 16, padding_bottom = 12, 323 323 padding_left = 8, padding_right = 8) 324 324 325 table = gtk.Table(6, 2)325 table = Gtk.Table(6, 2) 326 326 table.set_row_spacings(8) 327 327 table.set_col_spacings(16) 328 328 329 329 row = 0 330 label = gtk.Label()330 label = Gtk.Label() 331 331 label.set_markup(xstr("timetable_book_callsign")) 332 332 label.set_alignment(0.0, 0.5) … … 336 336 if flightPair.flight1 is not None: 337 337 text += " / " + flightPair.flight1.callsign 338 label = gtk.Label(text)338 label = Gtk.Label(text) 339 339 label.set_alignment(0.0, 0.5) 340 340 table.attach(label, 1, 2, row, row + 1) … … 342 342 row += 1 343 343 344 label = gtk.Label()344 label = Gtk.Label() 345 345 label.set_markup(xstr("timetable_book_from_to")) 346 346 label.set_alignment(0.0, 0.5) … … 351 351 if flightPair.flight1 is not None: 352 352 text += " - " + flightPair.flight1.arrivalICAO 353 label = gtk.Label(text)353 label = Gtk.Label(text) 354 354 label.set_alignment(0.0, 0.5) 355 355 table.attach(label, 1, 2, row, row + 1) … … 359 359 if flightPair.flight0.type==ScheduledFlight.TYPE_VIP and \ 360 360 flightPair.flight0.date!=const.defaultDate: 361 label = gtk.Label()361 label = Gtk.Label() 362 362 label.set_markup(xstr("timetable_book_flightDate")) 363 363 label.set_use_underline(True) … … 365 365 table.attach(label, 0, 1, row, row + 1) 366 366 367 self._flightDate = gtk.Button()367 self._flightDate = Gtk.Button() 368 368 self._flightDate.connect("clicked", self._flightDateClicked) 369 369 self._flightDate.set_tooltip_text(xstr("timetable_book_flightDate_tooltip")) … … 384 384 self._calendarWindow = None 385 385 386 label = gtk.Label()386 label = Gtk.Label() 387 387 label.set_markup(xstr("timetable_book_dep_arr")) 388 388 label.set_alignment(0.0, 0.5) … … 394 394 text += " / " + str(flightPair.flight1.departureTime) + " - " + \ 395 395 str(flightPair.flight1.arrivalTime) 396 label = gtk.Label(text)396 label = Gtk.Label(text) 397 397 label.set_alignment(0.0, 0.5) 398 398 table.attach(label, 1, 2, row, row + 1) … … 400 400 row += 1 401 401 402 label = gtk.Label()402 label = Gtk.Label() 403 403 label.set_markup(xstr("timetable_book_duration")) 404 404 label.set_alignment(0.0, 0.5) … … 411 411 duration = flightPair.flight0.duration 412 412 text += " / %02d:%02d" % (duration/3600, (duration%3600)/60) 413 label = gtk.Label(text)413 label = Gtk.Label(text) 414 414 label.set_alignment(0.0, 0.5) 415 415 table.attach(label, 1, 2, row, row + 1) … … 417 417 row += 2 418 418 419 label = gtk.Label()419 label = Gtk.Label() 420 420 label.set_markup(xstr("timetable_book_tailNumber")) 421 421 label.set_alignment(0.0, 0.5) … … 423 423 424 424 self._planes = planes 425 tailNumbersModel = gtk.ListStore(str)425 tailNumbersModel = Gtk.ListStore(str) 426 426 for plane in planes: 427 427 tailNumbersModel.append((plane.tailNumber,)) 428 428 429 self._tailNumber = gtk.ComboBox(model = tailNumbersModel)430 renderer = gtk.CellRendererText()429 self._tailNumber = Gtk.ComboBox(model = tailNumbersModel) 430 renderer = Gtk.CellRendererText() 431 431 self._tailNumber.pack_start(renderer, True) 432 432 self._tailNumber.add_attribute(renderer, "text", 0) … … 465 465 def _flightDateClicked(self, button): 466 466 """Called when the flight date button is clicked.""" 467 self._calendarWindow.set_position( gtk.WIN_POS_MOUSE)467 self._calendarWindow.set_position(Gtk.WIN_POS_MOUSE) 468 468 self.set_focus(self._calendarWindow) 469 469 self._calendarWindow.show_all() … … 481 481 #----------------------------------------------------------------------------- 482 482 483 class TimetableWindow( gtk.Window):483 class TimetableWindow(Gtk.Window): 484 484 """The window to display the timetable.""" 485 485 typeFamilies = [ … … 506 506 self.connect("key-press-event", self._keyPressed) 507 507 508 mainAlignment = gtk.Alignment(xalign = 0.5, yalign = 0.5,508 mainAlignment = Gtk.Alignment(xalign = 0.5, yalign = 0.5, 509 509 xscale = 1.0, yscale = 1.0) 510 510 mainAlignment.set_padding(padding_top = 0, padding_bottom = 12, 511 511 padding_left = 8, padding_right = 8) 512 512 513 vbox = gtk.VBox()514 515 filterAlignment = gtk.Alignment(xalign = 0.5, yalign = 0.5,513 vbox = Gtk.VBox() 514 515 filterAlignment = Gtk.Alignment(xalign = 0.5, yalign = 0.5, 516 516 xscale = 1.0, yscale = 1.0) 517 517 518 filterFrame = gtk.Frame()518 filterFrame = Gtk.Frame() 519 519 filterFrame.set_label(xstr("timetable_filter")) 520 520 521 filterVBox = gtk.VBox()522 523 topAlignment = gtk.Alignment(xalign = 0.5, yalign = 0.5,521 filterVBox = Gtk.VBox() 522 523 topAlignment = Gtk.Alignment(xalign = 0.5, yalign = 0.5, 524 524 xscale = 0.0, yscale = 0.0) 525 topHBox = gtk.HBox()526 527 label = gtk.Label(xstr("timetable_flightdate"))525 topHBox = Gtk.HBox() 526 527 label = Gtk.Label(xstr("timetable_flightdate")) 528 528 label.set_use_underline(True) 529 529 topHBox.pack_start(label, False, False, 4) 530 530 531 self._flightDate = gtk.Button()531 self._flightDate = Gtk.Button() 532 532 self._flightDate.connect("clicked", self._flightDateClicked) 533 533 self._flightDate.connect("clicked", self._flightDateClicked) … … 536 536 topHBox.pack_start(self._flightDate, False, False, 4) 537 537 538 filler = gtk.Alignment()538 filler = Gtk.Alignment() 539 539 filler.set_size_request(48, 2) 540 540 topHBox.pack_start(filler, False, True, 0) 541 541 542 self._regularFlights = gtk.CheckButton(xstr("timetable_show_regular"))542 self._regularFlights = Gtk.CheckButton(xstr("timetable_show_regular")) 543 543 self._regularFlights.set_use_underline(True) 544 544 self._regularFlights.set_tooltip_text(xstr("timetable_show_regular_tooltip")) … … 547 547 topHBox.pack_start(self._regularFlights, False, False, 8) 548 548 549 self._vipFlights = gtk.CheckButton(xstr("timetable_show_vip"))549 self._vipFlights = Gtk.CheckButton(xstr("timetable_show_vip")) 550 550 self._vipFlights.set_use_underline(True) 551 551 self._vipFlights.set_tooltip_text(xstr("timetable_show_vip_tooltip")) … … 558 558 filterVBox.pack_start(topAlignment, False, False, 4) 559 559 560 separator = gtk.HSeparator()560 separator = Gtk.HSeparator() 561 561 filterVBox.pack_start(separator, False, False, 4) 562 562 563 typeAlignment = gtk.Alignment(xalign = 0.5, yalign = 0.5,563 typeAlignment = Gtk.Alignment(xalign = 0.5, yalign = 0.5, 564 564 xscale = 0.0, yscale = 0.0) 565 565 … … 567 567 numRows = (len(TimetableWindow.typeFamilies)+numColumns-1)/numColumns 568 568 569 typeTable = gtk.Table(numRows, numColumns)569 typeTable = Gtk.Table(numRows, numColumns) 570 570 typeTable.set_col_spacings(8) 571 571 row = 0 … … 573 573 self._typeFamilyButtons = {} 574 574 for typeFamily in TimetableWindow.typeFamilies: 575 checkButton = gtk.CheckButton(aircraftFamilyNames[typeFamily])575 checkButton = Gtk.CheckButton(aircraftFamilyNames[typeFamily]) 576 576 checkButton.set_active(True) 577 577 checkButton.connect("toggled", self._filterChanged) … … 599 599 vbox.pack_start(self._timetable, True, True, 2) 600 600 601 alignment = gtk.Alignment(xalign = 1.0, yalign = 0.5,601 alignment = Gtk.Alignment(xalign = 1.0, yalign = 0.5, 602 602 xscale = 0.0, yscale = 0.0) 603 buttonBox = gtk.HBox()604 605 self._bookButton = gtk.Button(xstr("button_book"))603 buttonBox = Gtk.HBox() 604 605 self._bookButton = Gtk.Button(xstr("button_book")) 606 606 self._bookButton.set_use_underline(True) 607 607 self._bookButton.set_can_default(True) … … 610 610 buttonBox.pack_start(self._bookButton, False, False, 4); 611 611 612 self._closeButton = gtk.Button(xstr("button_close"))612 self._closeButton = Gtk.Button(xstr("button_close")) 613 613 self._closeButton.set_use_underline(True) 614 614 self._closeButton.connect("clicked", self._closeClicked) … … 678 678 def _flightDateClicked(self, button): 679 679 """Called when the flight date button is clicked.""" 680 self._calendarWindow.set_position( gtk.WIN_POS_MOUSE)680 self._calendarWindow.set_position(Gtk.WIN_POS_MOUSE) 681 681 self.set_focus(self._calendarWindow) 682 682 self._calendarWindow.show_all() … … 771 771 """Called when the booking has finished.""" 772 772 if returned: 773 dialog = gtk.MessageDialog(parent = self,773 dialog = Gtk.MessageDialog(parent = self, 774 774 type = MESSAGETYPE_INFO, 775 775 message_format = xstr("bookflights_successful")) 776 776 dialog.format_secondary_markup(xstr("bookflights_successful_secondary")) 777 777 else: 778 dialog = gtk.MessageDialog(parent = self,778 dialog = Gtk.MessageDialog(parent = self, 779 779 type = MESSAGETYPE_ERROR, 780 780 message_format = xstr("bookflights_failed")) … … 789 789 def _createTimetablePopupMenu(self): 790 790 """Get the popuop menu for the timetable.""" 791 menu = gtk.Menu()792 793 menuItem = gtk.MenuItem()791 menu = Gtk.Menu() 792 793 menuItem = Gtk.MenuItem() 794 794 menuItem.set_label(xstr("timetable_popup_book")) 795 795 menuItem.set_use_underline(True)
Note:
See TracChangeset
for help on using the changeset viewer.