1001 } |
1001 } |
1002 |
1002 |
1003 /* Extra ViewPort Window Stuff */ |
1003 /* Extra ViewPort Window Stuff */ |
1004 static Widget _extra_view_port_widgets[] = { |
1004 static Widget _extra_view_port_widgets[] = { |
1005 { WWT_CLOSEBOX, 14, 0, 10, 0, 13, STR_00C5, STR_018B_CLOSE_WINDOW}, |
1005 { WWT_CLOSEBOX, 14, 0, 10, 0, 13, STR_00C5, STR_018B_CLOSE_WINDOW}, |
1006 { WWT_CAPTION, 14, 11, 299, 0, 13, STR_EXTRA_VIEW_PORT_TITLE, STR_018C_WINDOW_TITLE_DRAG_THIS}, |
1006 { WWT_CAPTION, 14, 11, 287, 0, 13, STR_EXTRA_VIEW_PORT_TITLE, STR_018C_WINDOW_TITLE_DRAG_THIS}, |
|
1007 { WWT_STICKYBOX, 14, 288, 299, 0, 13, 0x0, STR_STICKY_BUTTON}, |
1007 { WWT_PANEL, 14, 0, 299, 14, 233, 0x0, STR_NULL}, |
1008 { WWT_PANEL, 14, 0, 299, 14, 233, 0x0, STR_NULL}, |
1008 { WWT_6, 14, 2, 297, 16, 231, 0x0, STR_NULL}, |
1009 { WWT_6, 14, 2, 297, 16, 231, 0x0, STR_NULL}, |
1009 { WWT_PANEL, 14, 0, 21, 234, 255, 0x2DF, STR_017F_ZOOM_THE_VIEW_IN}, |
1010 { WWT_PANEL, 14, 0, 21, 234, 255, 0x2DF, STR_017F_ZOOM_THE_VIEW_IN}, |
1010 { WWT_PANEL, 14, 22, 43, 234, 255, 0x2E0, STR_0180_ZOOM_THE_VIEW_OUT}, |
1011 { WWT_PANEL, 14, 22, 43, 234, 255, 0x2E0, STR_0180_ZOOM_THE_VIEW_OUT}, |
1011 { WWT_PUSHTXTBTN, 14, 44, 171, 234, 255, STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW,STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW_TT}, |
1012 { WWT_PUSHTXTBTN, 14, 44, 171, 234, 255, STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW,STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW_TT}, |
1025 DrawWindowWidgets(w); |
1026 DrawWindowWidgets(w); |
1026 DrawWindowViewport(w); |
1027 DrawWindowViewport(w); |
1027 } break; |
1028 } break; |
1028 case WE_CLICK: { |
1029 case WE_CLICK: { |
1029 switch(e->click.widget) { |
1030 switch(e->click.widget) { |
1030 case 4: { /* zoom in */ |
1031 case 5: { /* zoom in */ |
1031 DoZoomInOutWindow(ZOOM_IN,w); |
1032 DoZoomInOutWindow(ZOOM_IN,w); |
1032 } break; |
1033 } break; |
1033 |
1034 |
1034 case 5: { /* zoom out */ |
1035 case 6: { /* zoom out */ |
1035 DoZoomInOutWindow(ZOOM_OUT,w); |
1036 DoZoomInOutWindow(ZOOM_OUT,w); |
1036 } break; |
1037 } break; |
1037 |
1038 |
1038 case 6: { /* location button (move main view to same spot as this view) */ |
1039 case 7: { /* location button (move main view to same spot as this view) */ |
1039 Window * w2 = FindWindowById(WC_MAIN_WINDOW, 0); |
1040 Window * w2 = FindWindowById(WC_MAIN_WINDOW, 0); |
1040 int x = WP(w,vp_d).scrollpos_x; // Where is the main looking at |
1041 int x = WP(w,vp_d).scrollpos_x; // Where is the main looking at |
1041 int y = WP(w,vp_d).scrollpos_y; |
1042 int y = WP(w,vp_d).scrollpos_y; |
1042 |
1043 |
1043 // set this view to same location. Based on the center, adjusting for zoom |
1044 // set this view to same location. Based on the center, adjusting for zoom |
1044 WP(w2,vp_d).scrollpos_x = x - (w2->viewport->virtual_width - (294 <<vp->zoom) )/2; |
1045 WP(w2,vp_d).scrollpos_x = x - (w2->viewport->virtual_width - (294 <<vp->zoom) )/2; |
1045 WP(w2,vp_d).scrollpos_y = y - (w2->viewport->virtual_height - (214 << vp->zoom) )/2; |
1046 WP(w2,vp_d).scrollpos_y = y - (w2->viewport->virtual_height - (214 << vp->zoom) )/2; |
1046 } break; |
1047 } break; |
1047 case 7: { /* inverse location button (move this view to same spot as main view) */ |
1048 case 8: { /* inverse location button (move this view to same spot as main view) */ |
1048 Window * w2 = FindWindowById(WC_MAIN_WINDOW, 0); |
1049 Window * w2 = FindWindowById(WC_MAIN_WINDOW, 0); |
1049 int x = WP(w2,vp_d).scrollpos_x; |
1050 int x = WP(w2,vp_d).scrollpos_x; |
1050 int y = WP(w2,vp_d).scrollpos_y; |
1051 int y = WP(w2,vp_d).scrollpos_y; |
1051 |
1052 |
1052 WP(w,vp_d).scrollpos_x = x + (w2->viewport->virtual_width - (294 <<vp->zoom) )/2; |
1053 WP(w,vp_d).scrollpos_x = x + (w2->viewport->virtual_width - (294 <<vp->zoom) )/2; |