Rev 41 | Rev 52 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 41 | Rev 49 | ||
---|---|---|---|
Line 698... | Line 698... | ||
698 | call palette320x200 |
698 | call palette320x200 |
699 | no_pal_ega: |
699 | no_pal_ega: |
Line 700... | Line 700... | ||
700 | 700 | ||
Line -... | Line 701... | ||
- | 701 | ; LOAD DEFAULT SKIN |
|
701 | ; LOAD DEFAULT SKIN |
702 | |
- | 703 | mov esi,_skin_file_default |
|
- | 704 | mov edi,_skin_file |
|
- | 705 | movsd |
|
702 | 706 | movsd |
|
Line 703... | Line 707... | ||
703 | call load_default_skin |
707 | movsd |
Line 704... | Line 708... | ||
704 | call load_default_skin_1 |
708 | call load_skin |
Line 812... | Line 816... | ||
812 | 816 | ||
813 | call [draw_pointer] |
817 | call [draw_pointer] |
814 | call checkbuttons |
818 | call checkbuttons |
815 | call main_loop_sys_getkey |
819 | call main_loop_sys_getkey |
816 | call checkwindows |
820 | call checkwindows |
817 | call check_window_move_request |
821 | ; call check_window_move_request |
818 | call checkmisc |
822 | call checkmisc |
819 | call checkEgaCga |
823 | call checkEgaCga |
820 | call stack_handler |
824 | call stack_handler |
821 | call checkidle |
825 | call checkidle |
Line 2919... | Line 2923... | ||
2919 | ret |
2923 | ret |
Line 2920... | Line 2924... | ||
2920 | 2924 | ||
Line 2921... | Line 2925... | ||
2921 | 2925 | ||
2922 | sys_window_move: |
2926 | sys_window_move: |
- | 2927 | ||
Line -... | Line 2928... | ||
- | 2928 | mov edi,[0x00003000] |
|
2923 | 2929 | shl edi,5 |
|
Line -... | Line 2930... | ||
- | 2930 | add edi,window_data |
|
- | 2931 | ||
- | 2932 | test [edi+WDATA.fl_wstate],WSTATE_MAXIMIZED |
|
- | 2933 | jnz .window_move_return |
|
- | 2934 | ||
- | 2935 | push dword [edi+0] ; save old coordinates |
|
- | 2936 | push dword [edi+4] |
|
- | 2937 | push dword [edi+8] |
|
- | 2938 | push dword [edi+12] |
|
- | 2939 | ||
- | 2940 | cmp eax,-1 ; set new position and size |
|
- | 2941 | je .no_x_reposition |
|
- | 2942 | mov [edi+0],eax |
|
- | 2943 | .no_x_reposition: |
|
- | 2944 | cmp ebx,-1 |
|
- | 2945 | je .no_y_reposition |
|
- | 2946 | mov [edi+4],ebx |
|
- | 2947 | .no_y_reposition: |
|
- | 2948 | ||
- | 2949 | test [edi+WDATA.fl_wstate],WSTATE_ROLLEDUP |
|
- | 2950 | jnz .no_y_resizing |
|
- | 2951 | ||
- | 2952 | cmp ecx,-1 |
|
- | 2953 | je .no_x_resizing |
|
- | 2954 | mov [edi+8],ecx |
|
- | 2955 | .no_x_resizing: |
|
- | 2956 | cmp edx,-1 |
|
- | 2957 | je .no_y_resizing |
|
- | 2958 | mov [edi+12],edx |
|
- | 2959 | .no_y_resizing: |
|
- | 2960 | ||
- | 2961 | call check_window_position |
|
- | 2962 | ||
- | 2963 | pushad ; save for window fullscreen/resize |
|
- | 2964 | mov esi,edi |
|
2924 | cmp [window_move_pr],0 |
2965 | sub edi,window_data |
- | 2966 | shr edi,5 |
|
- | 2967 | shl edi,8 |
|
Line -... | Line 2968... | ||
- | 2968 | add edi,0x80000+0x90 |
|
- | 2969 | mov ecx,4 |
|
- | 2970 | cld |
|
- | 2971 | rep movsd |
|
- | 2972 | popad |
|
- | 2973 | ||
- | 2974 | pushad ; calculcate screen at new position |
|
- | 2975 | mov eax,[edi+00] |
|
2925 | je mwrl1 |
2976 | mov ebx,[edi+04] |
Line -... | Line 2977... | ||
- | 2977 | mov ecx,[edi+8] |
|
- | 2978 | mov edx,[edi+12] |
|
- | 2979 | add ecx,eax |
|
- | 2980 | add edx,ebx |
|
- | 2981 | call calculatescreen |
|
- | 2982 | popad |
|
2926 | 2983 | ||
- | 2984 | pop edx ; calculcate screen at old position |
|
- | 2985 | pop ecx |
|
2927 | mov [esp+36],dword 1 ; return queue error |
2986 | pop ebx |
- | 2987 | pop eax |
|
- | 2988 | add ecx,eax |
|
- | 2989 | add edx,ebx |
|
- | 2990 | mov [dlx],eax ; save for drawlimits |
|
- | 2991 | mov [dly],ebx |
|
- | 2992 | mov [dlxe],ecx |
|
- | 2993 | mov [dlye],edx |
|
- | 2994 | call calculatescreen |
|
- | 2995 | ||
- | 2996 | mov [edi+31],byte 1 ; flag the process as redraw |
|
- | 2997 | ||
- | 2998 | mov eax,edi ; redraw screen at old position |
|
- | 2999 | xor esi,esi |
|
- | 3000 | call redrawscreen |
|
- | 3001 | ||
- | 3002 | mov [0xfff5],byte 0 ; mouse pointer |
|
- | 3003 | mov [0xfff4],byte 0 ; no mouse under |
|
- | 3004 | mov [0xfb44],byte 0 ; react to mouse up/down |
|
Line 2928... | Line -... | ||
2928 | - | ||
2929 | ret |
- | |
2930 | 3005 | ||
2931 | mwrl1: |
- | |
Line 2932... | Line 3006... | ||
2932 | 3006 | mov ecx,10 ; wait 1/10 second |
|
Line 2933... | Line 3007... | ||
2933 | mov edi,[0x3000] ; requestor process base |
3007 | .wmrl3: |
Line 2934... | Line 3008... | ||
2934 | mov [window_move_pr],edi |
3008 | call [draw_pointer] |
2935 | 3009 | mov eax,1 |