381 case 4: |
381 case 4: |
382 case 5: |
382 case 5: |
383 case 6: { |
383 case 6: { |
384 LiveryScheme scheme; |
384 LiveryScheme scheme; |
385 |
385 |
386 RaiseWindowWidget(w, WP(w, livery_d).livery_class + 2); |
386 w->RaiseWidget(WP(w, livery_d).livery_class + 2); |
387 WP(w, livery_d).livery_class = (LiveryClass)(e->we.click.widget - 2); |
387 WP(w, livery_d).livery_class = (LiveryClass)(e->we.click.widget - 2); |
388 WP(w, livery_d).sel = 0; |
388 WP(w, livery_d).sel = 0; |
389 LowerWindowWidget(w, WP(w, livery_d).livery_class + 2); |
389 w->LowerWidget(WP(w, livery_d).livery_class + 2); |
390 |
390 |
391 /* Select the first item in the list */ |
391 /* Select the first item in the list */ |
392 for (scheme = LS_DEFAULT; scheme < LS_END; scheme++) { |
392 for (scheme = LS_DEFAULT; scheme < LS_END; scheme++) { |
393 if (livery_class[scheme] == WP(w, livery_d).livery_class) { |
393 if (livery_class[scheme] == WP(w, livery_d).livery_class) { |
394 WP(w, livery_d).sel = 1 << scheme; |
394 WP(w, livery_d).sel = 1 << scheme; |
508 static void SelectPlayerFaceWndProc(Window *w, WindowEvent *e) |
508 static void SelectPlayerFaceWndProc(Window *w, WindowEvent *e) |
509 { |
509 { |
510 switch (e->event) { |
510 switch (e->event) { |
511 case WE_PAINT: { |
511 case WE_PAINT: { |
512 Player *p; |
512 Player *p; |
513 LowerWindowWidget(w, WP(w, facesel_d).gender + 5); |
513 w->LowerWidget(WP(w, facesel_d).gender + 5); |
514 w->DrawWidgets(); |
514 w->DrawWidgets(); |
515 p = GetPlayer((PlayerID)w->window_number); |
515 p = GetPlayer((PlayerID)w->window_number); |
516 DrawPlayerFace(WP(w,facesel_d).face, p->player_color, 2, 16); |
516 DrawPlayerFace(WP(w,facesel_d).face, p->player_color, 2, 16); |
517 } break; |
517 } break; |
518 |
518 |
523 DoCommandP(0, 0, WP(w,facesel_d).face, NULL, CMD_SET_PLAYER_FACE); |
523 DoCommandP(0, 0, WP(w,facesel_d).face, NULL, CMD_SET_PLAYER_FACE); |
524 w->Close(); |
524 w->Close(); |
525 break; |
525 break; |
526 case 5: /* male click */ |
526 case 5: /* male click */ |
527 case 6: /* female click */ |
527 case 6: /* female click */ |
528 RaiseWindowWidget(w, WP(w, facesel_d).gender + 5); |
528 w->RaiseWidget(WP(w, facesel_d).gender + 5); |
529 WP(w, facesel_d).gender = e->we.click.widget - 5; |
529 WP(w, facesel_d).gender = e->we.click.widget - 5; |
530 LowerWindowWidget(w, WP(w, facesel_d).gender + 5); |
530 w->LowerWidget(WP(w, facesel_d).gender + 5); |
531 w->SetDirty(); |
531 w->SetDirty(); |
532 break; |
532 break; |
533 case 7: |
533 case 7: |
534 WP(w,facesel_d).face = (WP(w,facesel_d).gender << 31) + GB(InteractiveRandom(), 0, 31); |
534 WP(w,facesel_d).face = (WP(w,facesel_d).gender << 31) + GB(InteractiveRandom(), 0, 31); |
535 w->SetDirty(); |
535 w->SetDirty(); |
755 Window *wf = AllocateWindowDescFront(_have_2cc ? &_select_player_livery_2cc_desc : &_select_player_livery_desc, w->window_number); |
755 Window *wf = AllocateWindowDescFront(_have_2cc ? &_select_player_livery_2cc_desc : &_select_player_livery_desc, w->window_number); |
756 if (wf != NULL) { |
756 if (wf != NULL) { |
757 wf->caption_color = wf->window_number; |
757 wf->caption_color = wf->window_number; |
758 WP(wf,livery_d).livery_class = LC_OTHER; |
758 WP(wf,livery_d).livery_class = LC_OTHER; |
759 WP(wf,livery_d).sel = 1; |
759 WP(wf,livery_d).sel = 1; |
760 LowerWindowWidget(wf, 2); |
760 wf->LowerWidget(2); |
761 } |
761 } |
762 break; |
762 break; |
763 } |
763 } |
764 |
764 |
765 case PCW_WIDGET_PRESIDENT_NAME: { |
765 case PCW_WIDGET_PRESIDENT_NAME: { |
783 if (tile == 0) { |
783 if (tile == 0) { |
784 if ((byte)w->window_number != _local_player) |
784 if ((byte)w->window_number != _local_player) |
785 return; |
785 return; |
786 SetObjectToPlaceWnd(SPR_CURSOR_HQ, PAL_NONE, 1, w); |
786 SetObjectToPlaceWnd(SPR_CURSOR_HQ, PAL_NONE, 1, w); |
787 SetTileSelectSize(2, 2); |
787 SetTileSelectSize(2, 2); |
788 LowerWindowWidget(w, PCW_WIDGET_BUILD_VIEW_HQ); |
788 w->LowerWidget(PCW_WIDGET_BUILD_VIEW_HQ); |
789 w->InvalidateWidget(PCW_WIDGET_BUILD_VIEW_HQ); |
789 w->InvalidateWidget(PCW_WIDGET_BUILD_VIEW_HQ); |
790 } else { |
790 } else { |
791 ScrollMainWindowToTile(tile); |
791 ScrollMainWindowToTile(tile); |
792 } |
792 } |
793 break; |
793 break; |
794 } |
794 } |
795 |
795 |
796 case PCW_WIDGET_RELOCATE_HQ: |
796 case PCW_WIDGET_RELOCATE_HQ: |
797 SetObjectToPlaceWnd(SPR_CURSOR_HQ, PAL_NONE, 1, w); |
797 SetObjectToPlaceWnd(SPR_CURSOR_HQ, PAL_NONE, 1, w); |
798 SetTileSelectSize(2, 2); |
798 SetTileSelectSize(2, 2); |
799 LowerWindowWidget(w, PCW_WIDGET_RELOCATE_HQ); |
799 w->LowerWidget(PCW_WIDGET_RELOCATE_HQ); |
800 w->InvalidateWidget(PCW_WIDGET_RELOCATE_HQ); |
800 w->InvalidateWidget(PCW_WIDGET_RELOCATE_HQ); |
801 break; |
801 break; |
802 |
802 |
803 case PCW_WIDGET_BUY_SHARE: |
803 case PCW_WIDGET_BUY_SHARE: |
804 DoCommandP(0, w->window_number, 0, NULL, CMD_BUY_SHARE_IN_COMPANY | CMD_MSG(STR_707B_CAN_T_BUY_25_SHARE_IN_THIS)); |
804 DoCommandP(0, w->window_number, 0, NULL, CMD_BUY_SHARE_IN_COMPANY | CMD_MSG(STR_707B_CAN_T_BUY_25_SHARE_IN_THIS)); |