Rev 4156 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 4156 | Rev 4336 | ||
---|---|---|---|
Line 1... | Line -... | ||
1 | ;¨®£¤ ¥¢¥à® ®¯à¥¤¥«ï¥âáï è¨à¨ ¬¥î誨 |
- | |
2 | - | ||
3 | ICONS_DAT equ '/rd/1/icons.dat' |
- | |
4 | ICON_STRIP equ '/rd/1/iconstrp.png' |
1 | ICON_STRIP equ '/rd/1/iconstrp.png' |
5 | ICON_SIZE equ 68 |
2 | ICON_INI equ '/rd/1/settings/icon.ini' |
- | 3 | ICON_SIZE equ 68 ;à §¬¥à ®¡« á⨠¤«ï ¨ª®ª¨ á ¤¯¨áìî |
|
6 | IMG_SIZE equ 32 |
4 | IMG_SIZE equ 32 ;à §¬¥à ¨ª®®ª |
7 | TEXT_BOTTOM_Y equ 14 |
5 | TEXT_BOTTOM_Y equ 14 ;®âáâ㯠¯® Y ⥪á⠮⠨§ ¨ª®ª¨ |
8 | IMAGE_TOP_Y equ 10 ;>=1 |
6 | IMAGE_TOP_Y equ 10 ;>=1 ®®à¤¨ â Y ¨ª®ª¨ ¢ ®¡« á⨠¤«ï ¤ ®© ¨ª®ª¨ |
9 | ALIGN_SIZE equ 68 |
7 | ALIGN_SIZE equ 68 ;à §¬¥à á¥âª¨ ¢ëà ¢¨¢ ¨ï |
10 | NAME_LENGTH equ 11 |
8 | NAME_LENGTH equ 11 ;¤«¨ ¨¬¥¨ ¨ª®ª¨ |
11 | MIN_NO_MOVING equ 8 |
9 | MIN_NO_MOVING equ 8 ;ç¥à¥§ á⮫쪮 ¯¨ªá¥«¥© ᤢ¨£ ¬ëè¨ ç¨ ¥âáï â ᪠¨¥ ¨ª®ª¨ |
- | 10 | ||
12 | ;¤«ï ¤¨ «®£ ᮧ¤ ¨ï/। ªâ¨à®¢ ¨ï |
11 | ;--------¤«ï ¤¨ «®£ ᮧ¤ ¨ï/। ªâ¨à®¢ ¨ï |
13 | ICONSX equ 20 |
12 | ICONSX equ 20 |
14 | ICONSY equ 80 |
13 | ICONSY equ 80 |
15 | ICONS_DRAW_COUNTW equ 10 ;ª®«¨ç¥á⢮ ¨ª®®ª ¢ è¨à¨ã |
14 | ICONS_DRAW_COUNTW equ 10 ;ª®«¨ç¥á⢮ ¨ª®®ª ¢ è¨à¨ã |
16 | ICONS_DRAW_COUNTH equ 2 ;ª®«¨ç¥á⢮ ¨ª®®ª ¢ ¢ëá®âã |
15 | ICONS_DRAW_COUNTH equ 2 ;ª®«¨ç¥á⢮ ¨ª®®ª ¢ ¢ëá®âã |
17 | SPCW equ 3 ;¯à®¡¥« ¬¥¦¤ã ¨ª®ª ¬¨ ¯® £®à¨§®â «¨ |
16 | SPCW equ 3 ;¯à®¡¥« ¬¥¦¤ã ¨ª®ª ¬¨ ¯® £®à¨§®â «¨ |
Line 39... | Line 38... | ||
39 | include '../../macros.inc' |
38 | include '../../macros.inc' |
40 | include '../../proc32.inc' |
39 | include '../../proc32.inc' |
41 | include '../../develop/libraries/box_lib/trunk/box_lib.mac' |
40 | include '../../develop/libraries/box_lib/trunk/box_lib.mac' |
42 | include '../../dll.inc' |
41 | include '../../dll.inc' |
43 | ;include '../../debug.inc' |
42 | ;include '../../debug.inc' |
44 | - | ||
45 | ;------------------------------------------------------------------------------ |
43 | ;------------------------------------------------------------------------------ |
46 | START: ; start of execution |
44 | START: ; start of execution |
47 | mcall 68,11 |
45 | mcall 68,11 |
48 | stdcall dll.Load,IMPORTS |
46 | stdcall dll.Load,IMPORTS |
49 | test eax,eax |
47 | test eax,eax |
Line 94... | Line 92... | ||
94 | and eax,0x7 |
92 | and eax,0x7 |
95 | mov [cur_band_compensation],eax |
93 | mov [cur_band_compensation],eax |
Line 96... | Line 94... | ||
96 | 94 | ||
Line 97... | Line 95... | ||
97 | ;########## § £à㦠¥¬ ¤ ë¥ ¨ª®®ª ¢ ¯ ¬ïâì ########################## |
95 | ;########## § £à㦠¥¬ ¤ ë¥ ¨ª®®ª ¢ ¯ ¬ïâì ########################## |
98 | 96 | ||
99 | mcall 70,fiIni ;¢ë¤¥«ï¥¬ ¯ ¬ïâì, ¤®áâ â®ç®© ¤«ï åà ¥¨ï ini ä ©« . ñ â®ç® å¢ â¨â ¤«ï åà ¥¨ï ¤ ëå ®¡ ¨ª®ª å |
97 | mcall 70,fiIni ;¢ë¤¥«ï¥¬ ¯ ¬ïâì, ¤®áâ â®ç®© ¤«ï åà ¥¨ï ini ä ©« . |
Line 100... | Line 98... | ||
100 | test eax,eax |
98 | test eax,eax ; ñ â®ç® å¢ â¨â ¤«ï åà ¥¨ï ¤ ëå ®¡ ¨ª®ª å |
101 | jnz ErrorIni |
99 | jnz ErrorIni |
102 | 100 | ||
Line 111... | Line 109... | ||
111 | mcall -1 |
109 | mcall -1 |
Line 112... | Line 110... | ||
112 | 110 | ||
113 | NoErrIni: |
111 | NoErrIni: |
Line -... | Line 112... | ||
- | 112 | m2m [PIcoDB],[BegData] |
|
- | 113 | ||
- | 114 | ||
- | 115 | ||
- | 116 | mov edi,IconsID |
|
- | 117 | xor eax,eax |
|
- | 118 | mov ecx,100h/4 |
|
114 | m2m [PIcoDB],[BegData] |
119 | rep stosd |
115 | 120 | mov [nLoadIcon],0 |
|
116 | stdcall [ini_enum_sections],IconIni,LoadIconsData |
121 | stdcall [ini_enum_sections],IconIni,LoadIconsData |
117 | ;int3 |
122 | ;int3 |
118 | mov eax,dword[PIcoDB] |
123 | mov eax,dword[PIcoDB] |
Line 123... | Line 128... | ||
123 | jne @f |
128 | jne @f |
124 | mov dword[eax],0 |
129 | mov dword[eax],0 |
125 | mov dword[SizeData],0 |
130 | mov dword[SizeData],0 |
126 | @@: |
131 | @@: |
127 | ;###################################################################### |
132 | ;###################################################################### |
128 | - | ||
129 | call FillIconsOffs ;§ ¯®«ï¥â MaxNumIcon,IconsOffs |
133 | call FillIconsOffs ;§ ¯®«ï¥â MaxNumIcon,IconsOffs |
Line 130... | Line 134... | ||
130 | 134 | ||
Line 131... | Line 135... | ||
131 | mcall 40,0100000b ;ã¦ë ⮫쪮 ᮡëâ¨ï ¬ëè¨, ¯¥à¥à¨á®¢ª ¨ª®®ª ¡ã¤¥â ¢ ¤à㣮¬ ¯®â®ª¥ |
135 | mcall 40,0100000b ;ã¦ë ⮫쪮 ᮡëâ¨ï ¬ëè¨, ¯¥à¥à¨á®¢ª ¨ª®®ª ¡ã¤¥â ¢ ¤à㣮¬ ¯®â®ª¥ |
Line 141... | Line 145... | ||
141 | mov [sbIcons.max_area],eax |
145 | mov [sbIcons.max_area],eax |
Line 142... | Line 146... | ||
142 | 146 | ||
143 | mcall 51,1,BGRedrawThread,stack_bredraw ;§ ¯ã᪠¥¬ ¯®â®ª ¯¥à¥à¨á®¢ª¨ ¨ª®®ª |
147 | mcall 51,1,BGRedrawThread,stack_bredraw ;§ ¯ã᪠¥¬ ¯®â®ª ¯¥à¥à¨á®¢ª¨ ¨ª®®ª |
Line -... | Line 148... | ||
- | 148 | stdcall [OpenDialog_Init],OpenDialog_data |
|
- | 149 | ||
144 | stdcall [OpenDialog_Init],OpenDialog_data |
150 | ;dph [MaxNumIcon] |
145 | 151 | ||
146 | messages: |
152 | messages: |
147 | mcall 10 |
153 | mcall 10 |
Line 186... | Line 192... | ||
186 | ;debug_newline |
192 | ;debug_newline |
187 | close: |
193 | close: |
188 | mcall -1 |
194 | mcall -1 |
Line 189... | Line 195... | ||
189 | 195 | ||
- | 196 | LButtonPress: |
|
190 | LButtonPress: |
197 | |
191 | stdcall GetNumIcon,[MouseX],[MouseY],-1 |
198 | stdcall GetNumIcon,[MouseX],[MouseY],-1 |
192 | ;int3 |
199 | ;int3 |
193 | cmp eax,-1 |
200 | cmp eax,-1 |
Line 419... | Line 426... | ||
419 | sub bx,[wsY] |
426 | sub bx,[wsY] |
420 | .mov2: |
427 | .mov2: |
Line 421... | Line 428... | ||
421 | 428 | ||
Line 422... | Line -... | ||
422 | stdcall SetPosition,[SelIcon],eax,ebx |
- | |
423 | 429 | stdcall SetPosition,[SelIcon],eax,ebx |
|
424 | 430 | ||
Line 425... | Line 431... | ||
425 | m2m [PIcoDB],[BegData] |
431 | m2m [PIcoDB],[BegData] |
426 | stdcall [ini_enum_sections],IconIni,Ini_SavePos ;in RButton.inc |
432 | stdcall [ini_enum_sections],IconIni,Ini_SavePos ;in RButton.inc |
Line 433... | Line 439... | ||
433 | jmp messages |
439 | jmp messages |
Line 434... | Line 440... | ||
434 | 440 | ||
Line 435... | Line 441... | ||
435 | ;------------------------------------------------------------------------------- |
441 | ;------------------------------------------------------------------------------- |
436 | - | ||
437 | RButtonPress: |
- | |
438 | cmp [RButtonActiv],1 |
442 | |
Line 439... | Line 443... | ||
439 | je messages |
443 | RButtonPress: |
440 | mov [RButtonActiv],1 |
444 | mov [RButtonActiv],1 |
441 | 445 | ||
Line 655... | Line 659... | ||
655 | ; mov eax,1 |
659 | ; mov eax,1 |
656 | pop esi edi ebx |
660 | pop esi edi ebx |
657 | ret |
661 | ret |
658 | endp |
662 | endp |
Line 659... | Line -... | ||
659 | - | ||
660 | - | ||
661 | 663 | ||
662 | proc RestoreBackgrnd,NumIcon:DWORD |
664 | proc RestoreBackgrnd,NumIcon:DWORD |
663 | push ebx edi |
665 | push ebx edi |
664 | mov eax,[NumIcon] |
666 | mov eax,[NumIcon] |
665 | cmp eax,[MaxNumIcon] |
667 | cmp eax,[MaxNumIcon] |
Line 708... | Line 710... | ||
708 | mcall 15,9 |
710 | mcall 15,9 |
709 | pop edi ebx |
711 | pop edi ebx |
710 | ret |
712 | ret |
711 | endp |
713 | endp |
Line 712... | Line -... | ||
712 | - | ||
713 | ;ret eax=numIcon |
- | |
714 | proc AddIcon stdcall,x,y,lpIcon,lpName,lpExeFile,lpParams |
- | |
715 | push ebx edi esi |
- | |
716 | - | ||
717 | mov eax,[x] |
- | |
718 | mov ebx,[y] |
- | |
719 | - | ||
720 | xor edx,edx |
- | |
721 | test eax,8000h |
- | |
722 | jnz @f |
- | |
723 | mov dx,[wsW] ;¥á«¨ ¤®, â® ¯à¥®¡à §®¢ë¢ ¥¬ ¢ |
- | |
724 | shr edx,1 ;®âà¨æ ⥫ìë¥ ª®®à¤¨ âë |
- | |
725 | add dx,[wsX] |
- | |
726 | cmp eax,edx |
- | |
727 | jbe @f |
- | |
728 | sub ax,[wsW] |
- | |
729 | inc eax |
- | |
730 | @@: |
- | |
731 | - | ||
732 | test ebx,8000h |
- | |
733 | jnz @f |
- | |
734 | mov dx,[wsY] |
- | |
735 | shr edx,1 |
- | |
736 | add dx,[wsH] |
- | |
737 | cmp ebx,edx |
- | |
738 | jbe @f |
- | |
739 | sub bx,[wsH] |
- | |
740 | inc ebx |
- | |
741 | @@: |
- | |
742 | ;¯®¯à ¢ª á«ãç © ¢ë室 § ªà © íªà |
- | |
743 | - | ||
744 | test eax,8000h |
- | |
745 | jnz @f |
- | |
746 | mov dx,[wsXe] |
- | |
747 | sub edx,ICON_SIZE |
- | |
748 | cmp eax,edx |
- | |
749 | jbe @f |
- | |
750 | mov eax,edx |
- | |
751 | @@: |
- | |
752 | - | ||
753 | test ebx,8000h |
- | |
754 | jnz @f |
- | |
755 | mov dx,[wsYe] |
- | |
756 | sub edx,ICON_SIZE |
- | |
757 | cmp ebx,edx |
- | |
758 | jbe @f |
- | |
759 | mov ebx,edx |
- | |
760 | @@: |
- | |
761 | - | ||
762 | mov [x],eax |
- | |
763 | mov [y],ebx |
- | |
764 | - | ||
765 | xor al,al |
- | |
766 | or ecx,-1 |
- | |
767 | mov edi,[lpName] |
- | |
768 | repne scasb |
- | |
769 | sub edi,[lpName] |
- | |
770 | mov ebx,edi |
- | |
771 | mov edi,[lpExeFile] |
- | |
772 | repne scasb |
- | |
773 | sub edi,[lpExeFile] |
- | |
774 | add ebx,edi |
- | |
775 | mov edi,[lpParams] |
- | |
776 | repne scasb |
- | |
777 | sub edi,[lpParams] |
- | |
778 | add ebx,edi |
- | |
779 | mov edi,[lpIcon] |
- | |
780 | repne scasb |
- | |
781 | sub edi,[lpIcon] |
- | |
782 | add ebx,edi |
- | |
783 | add ebx,4 |
- | |
784 | mov ecx,dword[SizeData] |
- | |
785 | add ecx,ebx |
- | |
786 | mov edx,[IconsOffs] |
- | |
787 | mcall 68,20 |
- | |
788 | - | ||
789 | mov edx,dword[SizeData] |
- | |
790 | mov dword[SizeData],ecx |
- | |
791 | mov dword[BegData],eax |
- | |
792 | mov edi,eax |
- | |
793 | add edi,edx |
- | |
794 | mov esi,[lpName] |
- | |
795 | @@: lodsb |
- | |
796 | stosb |
- | |
797 | test al,al |
- | |
798 | jnz @b |
- | |
799 | - | ||
800 | mov esi,[lpExeFile] |
- | |
801 | @@: lodsb |
- | |
802 | stosb |
- | |
803 | test al,al |
- | |
804 | jnz @b |
- | |
805 | - | ||
806 | mov esi,[lpParams] |
- | |
807 | @@: lodsb |
- | |
808 | stosb |
- | |
809 | test al,al |
- | |
810 | jnz @b |
- | |
811 | - | ||
812 | mov esi,[lpIcon] |
- | |
813 | @@: lodsb |
- | |
814 | stosb |
- | |
815 | test al,al |
- | |
816 | jnz @b |
- | |
817 | - | ||
818 | mov eax,[x] |
- | |
819 | mov ebx,[y] |
- | |
820 | shl eax,16 |
- | |
821 | mov ax,bx |
- | |
822 | mov dword[edi],eax |
- | |
823 | - | ||
824 | stdcall FillIconsOffs |
- | |
825 | - | ||
826 | pop esi edi ebx |
- | |
827 | ret |
- | |
828 | endp |
- | |
829 | - | ||
830 | - | ||
831 | proc EditIcon stdcall,NumIcon,lpIcon,lpName,lpExeFile,lpParams |
- | |
832 | push edi |
- | |
833 | mov eax,[NumIcon] |
- | |
834 | mov edi,[IconsOffs+eax*4] |
- | |
835 | xor al,al |
- | |
836 | or ecx,-1 |
- | |
837 | repne scasb |
- | |
838 | repne scasb |
- | |
839 | repne scasb |
- | |
840 | repne scasb |
- | |
841 | push dword[edi] |
- | |
842 | stdcall DelIcon,[NumIcon] |
- | |
843 | pop edx |
- | |
844 | xor eax,eax |
- | |
845 | mov ax,dx |
- | |
846 | shr edx,16 |
- | |
847 | stdcall AddIcon,edx,eax,DAreaIcon,DAreaName,DAreaPath,DAreaParams |
- | |
848 | pop edi |
- | |
849 | ret |
- | |
850 | endp |
- | |
851 | - | ||
852 | proc SetPosition stdcall,NumIcon,x,y |
- | |
853 | push edi |
- | |
854 | mov eax,[NumIcon] |
- | |
855 | mov edi,[IconsOffs+eax*4] |
- | |
856 | xor al,al |
- | |
857 | or ecx,-1 |
- | |
858 | repne scasb |
- | |
859 | repne scasb |
- | |
860 | repne scasb |
- | |
861 | repne scasb |
- | |
862 | mov eax,[x] |
- | |
863 | shl eax,16 |
- | |
864 | mov ax,word[y] |
- | |
865 | mov dword[edi],eax |
- | |
866 | pop edi |
- | |
867 | ret |
- | |
868 | endp |
- | |
869 | - | ||
870 | proc GetNumIcon stdcall,x,y,NumIconI ;®¬¥à ¨ª®ª¨, ª®â®àë© ¯à®¢¥àïâì ¥ ¤® ¨«¨ -1 |
- | |
871 | local posX:WORD,\ |
- | |
872 | posY:WORD |
- | |
873 | push ebx edi |
- | |
874 | mov ecx,[MaxNumIcon] |
- | |
875 | test ecx,ecx |
- | |
876 | jnz @f |
- | |
877 | or eax,-1 |
- | |
878 | pop edi ebx |
- | |
879 | ret |
- | |
880 | @@: |
- | |
881 | - | ||
882 | mov ebx,ecx |
- | |
883 | dec ebx |
- | |
884 | .TestIcon: |
- | |
885 | cmp dword[NumIconI],-1 |
- | |
886 | je @f |
- | |
887 | - | ||
888 | cmp ebx,[NumIconI] |
- | |
889 | jne @f |
- | |
890 | dec ebx |
- | |
891 | dec ecx |
- | |
892 | test ecx,ecx |
- | |
893 | jz .NoIcon |
- | |
894 | @@: |
- | |
895 | - | ||
896 | push ecx |
- | |
897 | - | ||
898 | or ecx,-1 |
- | |
899 | xor al,al |
- | |
900 | mov edi,[IconsOffs+ebx*4] |
- | |
901 | repne scasb |
- | |
902 | repne scasb |
- | |
903 | repne scasb |
- | |
904 | repne scasb |
- | |
905 | - | ||
906 | mov ax,[edi+2] |
- | |
907 | test ax,8000h |
- | |
908 | jz @f |
- | |
909 | add ax,[wsXe] |
- | |
910 | jmp .gni1 |
- | |
911 | @@: |
- | |
912 | add ax,[wsX] |
- | |
913 | .gni1: |
- | |
914 | mov [posX],ax |
- | |
915 | - | ||
916 | mov ax,[edi] |
- | |
917 | test ax,8000h |
- | |
918 | jz @f |
- | |
919 | add ax,[wsYe] |
- | |
920 | jmp .gni2 |
- | |
921 | @@: |
- | |
922 | add ax,[wsY] |
- | |
923 | .gni2: |
- | |
924 | - | ||
925 | mov [posY],ax |
- | |
926 | - | ||
927 | mov eax,[x] |
- | |
928 | mov edx,[y] |
- | |
929 | - | ||
930 | cmp ax,[posX] |
- | |
931 | jb @f |
- | |
932 | add word[posX],ICON_SIZE |
- | |
933 | cmp ax,[posX] |
- | |
934 | ja @f |
- | |
935 | - | ||
936 | cmp dx,[posY] |
- | |
937 | jb @f |
- | |
938 | add word[posY],ICON_SIZE |
- | |
939 | cmp dx,[posY] |
- | |
940 | ja @f |
- | |
941 | - | ||
942 | jmp .OkIcon |
- | |
943 | @@: |
- | |
944 | - | ||
945 | dec ebx |
- | |
946 | pop ecx |
- | |
947 | - | ||
948 | ;loop .TestIcon |
- | |
949 | dec ecx |
- | |
950 | jnz .TestIcon |
- | |
951 | jmp .NoIcon |
- | |
952 | .OkIcon: |
- | |
953 | mov eax,ebx |
- | |
954 | pop edi ebx |
- | |
955 | ret |
- | |
956 | .NoIcon: |
- | |
957 | or eax,-1 |
- | |
958 | pop edi ebx |
- | |
959 | ret |
- | |
960 | endp |
- | |
961 | - | ||
962 | proc DelIcon stdcall,NumIcon |
- | |
963 | push ebx edi esi |
- | |
964 | - | ||
965 | cmp [MaxNumIcon],0 |
- | |
966 | je .end |
- | |
967 | - | ||
968 | cmp [MaxNumIcon],1 |
- | |
969 | je .OhneIco |
- | |
970 | - | ||
971 | mov ebx,[NumIcon] |
- | |
972 | - | ||
973 | mov eax,[MaxNumIcon] |
- | |
974 | dec eax |
- | |
975 | mov [MaxNumIcon],eax |
- | |
976 | cmp ebx,eax |
- | |
977 | je @f |
- | |
978 | - | ||
979 | shl ebx,2 |
- | |
980 | - | ||
981 | mov ecx,dword[BegData] |
- | |
982 | add ecx,dword[SizeData] |
- | |
983 | sub ecx,[IconsOffs+4+ebx] |
- | |
984 | - | ||
985 | mov edx,[IconsOffs+4+ebx] |
- | |
986 | sub edx,[IconsOffs+ebx] |
- | |
987 | sub dword[SizeData],edx |
- | |
988 | - | ||
989 | mov esi,[IconsOffs+4+ebx] |
- | |
990 | mov edi,[IconsOffs+ebx] |
- | |
991 | rep movsb |
- | |
992 | jmp .endDel |
- | |
993 | - | ||
994 | @@: |
- | |
995 | mov ecx,dword[BegData] |
- | |
996 | add ecx,dword[SizeData] |
- | |
997 | sub ecx,[IconsOffs+ebx*4] |
- | |
998 | sub dword[SizeData],ecx |
- | |
999 | - | ||
1000 | .endDel: |
- | |
1001 | stdcall FillIconsOffs |
- | |
1002 | jmp .end |
- | |
1003 | - | ||
1004 | .OhneIco: |
- | |
1005 | mov edi,[BegData] |
- | |
1006 | mov [SizeData],0 |
- | |
1007 | mov dword[edi],0 |
- | |
1008 | mov [MaxNumIcon],0 |
- | |
1009 | mov dword[IconsOffs],0 |
- | |
1010 | .end: |
- | |
1011 | mcall 15,3 |
- | |
1012 | pop esi edi ebx |
- | |
1013 | ret |
- | |
1014 | endp |
714 | |
1015 | ;§ ¯®«ï¥â MaxNumIcon,IconsOffs |
715 | ;§ ¯®«ï¥â MaxNumIcon,IconsOffs |
1016 | proc FillIconsOffs |
716 | proc FillIconsOffs |
1017 | push ebx edi |
717 | push ebx edi |
1018 | mov edi,[BegData] |
718 | mov edi,[BegData] |
Line 1029... | Line 729... | ||
1029 | xor edx,edx |
729 | xor edx,edx |
1030 | mov ebx,dword[SizeData] |
730 | mov ebx,dword[SizeData] |
1031 | add ebx,dword[BegData] |
731 | add ebx,dword[BegData] |
1032 | or ecx,-1 |
732 | or ecx,-1 |
1033 | .CalcNumIc: |
733 | .CalcNumIc: |
- | 734 | ||
1034 | repne scasb |
735 | repne scasb |
1035 | repne scasb |
736 | repne scasb |
1036 | repne scasb |
737 | repne scasb |
1037 | repne scasb |
738 | repne scasb |
1038 | add edi,4 |
739 | add edi,4 |
Line 1044... | Line 745... | ||
1044 | jae @f |
745 | jae @f |
1045 | jmp .CalcNumIc |
746 | jmp .CalcNumIc |
1046 | @@: |
747 | @@: |
Line 1047... | Line 748... | ||
1047 | 748 | ||
- | 749 | mov dword[IconsOffs+edx],0 |
|
1048 | mov dword[IconsOffs+edx],0 |
750 | |
1049 | pop edi ebx |
751 | pop edi ebx |
1050 | ret |
752 | ret |
Line 1051... | Line 753... | ||
1051 | endp |
753 | endp |
Line 1064... | Line 766... | ||
1064 | mov eax,1 |
766 | mov eax,1 |
1065 | pop edi esi ebx |
767 | pop edi esi ebx |
1066 | ret |
768 | ret |
1067 | .lid1: |
769 | .lid1: |
Line -... | Line 770... | ||
- | 770 | ||
- | 771 | ||
- | 772 | mov ebx,[sec_name] ;ª®¯¨à㥬 ID |
|
- | 773 | mov ax,[ebx] |
|
- | 774 | mov edi,[nLoadIcon] |
|
- | 775 | mov word[edi*4+IconsID],ax |
|
- | 776 | mov word[edi*4+IconsID+2],0 |
|
1068 | 777 | ||
- | 778 | mov edi,[PIcoDB] |
|
- | 779 | stdcall [ini_get_str],[f_name],[sec_name],keyName,edi,4096,0 |
|
- | 780 | test eax,eax |
|
1069 | mov edi,[PIcoDB] |
781 | jz @f |
1070 | mov esi,[sec_name] |
782 | xor eax,eax |
1071 | @@: lodsb |
783 | pop edi esi ebx |
- | 784 | ret |
|
1072 | stosb |
785 | @@: |
- | 786 | xor al,al |
|
1073 | test al,al |
787 | or ecx,-1 |
- | 788 | repne scasb |
|
- | 789 | ||
Line 1074... | Line 790... | ||
1074 | jnz @b |
790 | |
1075 | 791 | ||
1076 | stdcall [ini_get_str],[f_name],[sec_name],keyPath,edi,4096,0 |
792 | stdcall [ini_get_str],[f_name],[sec_name],keyPath,edi,4096,0 |
1077 | test eax,eax |
793 | test eax,eax |
Line 1124... | Line 840... | ||
1124 | @@: |
840 | @@: |
1125 | mov word[edi],ax |
841 | mov word[edi],ax |
1126 | add edi,4 |
842 | add edi,4 |
1127 | mov [PIcoDB],edi |
843 | mov [PIcoDB],edi |
Line -... | Line 844... | ||
- | 844 | ||
- | 845 | inc [nLoadIcon] |
|
1128 | 846 | ||
1129 | mov eax,1 |
847 | mov eax,1 |
1130 | pop edi esi ebx |
848 | pop edi esi ebx |
1131 | ret |
849 | ret |
Line -... | Line 850... | ||
- | 850 | endp |
|
- | 851 | ||
- | 852 | proc GenerateID ;ax = ID |
|
- | 853 | push ebx edi |
|
- | 854 | mov ebx,[MaxNumIcon] |
|
- | 855 | test ebx,ebx |
|
- | 856 | jnz @f |
|
- | 857 | mov eax,'00' |
|
- | 858 | pop edi ebx |
|
- | 859 | ret |
|
- | 860 | @@: |
|
- | 861 | ||
- | 862 | mov eax,dword[IconsID+ebx*4-4] |
|
- | 863 | .inc: |
|
- | 864 | inc ah |
|
- | 865 | cmp ah,'9'+1 |
|
- | 866 | jne @f |
|
- | 867 | mov ah,'A' |
|
- | 868 | @@: |
|
- | 869 | cmp ah,'F'+1 |
|
- | 870 | jne @f |
|
- | 871 | mov ah,'0' |
|
- | 872 | inc al |
|
- | 873 | @@: |
|
- | 874 | cmp al,'9'+1 |
|
- | 875 | jne @f |
|
- | 876 | mov al,'A' |
|
- | 877 | @@: |
|
- | 878 | cmp al,'F'+1 |
|
- | 879 | jne @f |
|
- | 880 | mov al,'0' |
|
- | 881 | @@: |
|
- | 882 | ||
- | 883 | ||
- | 884 | mov edi,IconsID |
|
- | 885 | ;cmp dword[edi],0 |
|
- | 886 | ;je @f |
|
- | 887 | mov ecx,100h |
|
- | 888 | @@: scasd |
|
- | 889 | je .inc |
|
- | 890 | cmp dword[edi],0 |
|
- | 891 | je @f |
|
- | 892 | loop @b |
|
- | 893 | @@: |
|
- | 894 | ||
- | 895 | pop edi ebx |
|
- | 896 | ret |
|
- | 897 | endp |
|
1132 | endp |
898 | |
1133 | 899 | include 'iconman.inc' |
|
1134 | include 'bgredraw.inc' |
900 | include 'bgredraw.inc' |
1135 | include 'RButton.inc' |
901 | include 'RButton.inc' |
Line 1178... | Line 944... | ||
1178 | fiIni dd 5 ;¤«ï ini ä ©« |
944 | fiIni dd 5 ;¤«ï ini ä ©« |
1179 | dd 0 |
945 | dd 0 |
1180 | dd 0 |
946 | dd 0 |
1181 | dd 0 |
947 | dd 0 |
1182 | dd bufIni |
948 | dd bufIni |
- | 949 | db 0 |
|
1183 | db '/rd/1/settings/icon.ini',0 |
950 | dd IconIni |
Line 1184... | Line 951... | ||
1184 | 951 | ||
1185 | - | ||
- | 952 | ||
1186 | IconsFile db ICON_STRIP,0 |
953 | IconsFile db ICON_STRIP,0 |
1187 | NameIconsDat db ICONS_DAT,0 |
954 | |
1188 | align 4 |
955 | align 4 |
Line 1189... | Line 956... | ||
1189 | MaxNumIcon dd 0 ;ª®«¨ç¥á⢮ ¨ª®®ª |
956 | MaxNumIcon dd 0 ;ª®«¨ç¥á⢮ ¨ª®®ª |
1190 | IconNoDraw dd -1 ;-1 «¨¡® ®¬¥à ¨ª®ª¨, ª®â®àãî ¥ ¤® à¨á®¢ âì( ª®£¤ ¥ñ â ᪠îâ :)) |
957 | IconNoDraw dd -1 ;-1 «¨¡® ®¬¥à ¨ª®ª¨, ª®â®àãî ¥ ¤® à¨á®¢ âì( ª®£¤ ¥ñ â ᪠îâ ) |
Line 1191... | Line 958... | ||
1191 | 958 | ||
1192 | bFixIcons dd 1 |
959 | bFixIcons dd 1 |
1193 | bNotSave dd 0 |
960 | bNotSave dd 0 |
1194 | 961 | ||
Line 1195... | Line 962... | ||
1195 | LButtonActiv dd 0 |
962 | LButtonActiv dd 0 |
Line 1196... | Line 963... | ||
1196 | RButtonActiv dd 0 |
963 | RButtonActiv dd 0 |
Line 1197... | Line 964... | ||
1197 | MovingActiv dd 0 |
964 | MovingActiv dd 0 |
1198 | DlgAddActiv dd 0 |
965 | DlgAddActiv dd 0 |
1199 | 966 | ||
1200 | IconIni db '/rd/1/settings/icon.ini',0 |
967 | IconIni db ICON_INI,0 |
1201 | 968 | ||
1202 | pthNotify db '/rd/1/@notify',0 |
969 | pthNotify db '/rd/1/@notify',0 |
Line 1242... | Line 1009... | ||
1242 | ini_get_str,'ini_get_str',\ |
1009 | ini_get_str ,'ini_get_str',\ |
1243 | ini_set_str,'ini_set_str',\ |
1010 | ini_set_str ,'ini_set_str',\ |
1244 | ini_get_color,'ini_get_color',\ |
1011 | ini_get_color ,'ini_get_color',\ |
1245 | ini_get_int,'ini_get_int',\ |
1012 | ini_get_int ,'ini_get_int',\ |
1246 | ini_set_int,'ini_set_int',\ |
1013 | ini_set_int ,'ini_set_int',\ |
1247 | ini_del_section,'ini_del_section' |
1014 | ini_del_section ,'ini_del_section',\ |
- | 1015 | ini_exist_sect ,'ini_exist_sect' |
|
Line 1248... | Line 1016... | ||
1248 | 1016 | ||
1249 | 1017 | ||
Line 1250... | Line 1018... | ||
1250 | ;ini.get_str (f_name, sec_name, key_name, buffer, buf_len, def_val) |
1018 | ;ini.get_str (f_name, sec_name, key_name, buffer, buf_len, def_val) |
1251 | ;ini.set_str (f_name, sec_name, key_name, buffer, buf_len) |
1019 | ;ini.set_str (f_name, sec_name, key_name, buffer, buf_len) |
1252 | 1020 | ||
- | 1021 | ||
- | 1022 | ;------------------------------------------------------------------------------- |
|
- | 1023 | ;----- RButton.inc ------------------------------------------------------------- |
|
- | 1024 | ;------------------------------------------------------------------------------- |
|
- | 1025 | ||
- | 1026 | if lang eq ru |
|
- | 1027 | MinRMenuW dd 18*6+10 |
|
1253 | 1028 | else |
|
Line 1254... | Line 1029... | ||
1254 | ;------------------------------------------------------------------------------- |
1029 | MinRMenuW dd 15*6+10 |
Line 1255... | Line 1030... | ||
1255 | ;----- RButton.inc ------------------------------------------------------------- |
1030 | end if |
Line 1265... | Line 1040... | ||
1265 | RMenuOnMoving db 'âªà¥¯¨âì ¨ª®ª¨',0 |
1040 | RMenuOnMoving db 'âªà¥¯¨âì ¨ª®ª¨',0 |
1266 | RMenuAdd db '®¡ ¢¨âì',0 |
1041 | RMenuAdd db '®¡ ¢¨âì',0 |
1267 | RMenuDel db '¤ «¨âì',0 |
1042 | RMenuDel db '¤ «¨âì',0 |
1268 | RMenuProp db '¢®©á⢠',0 |
1043 | RMenuProp db '¢®©á⢠',0 |
1269 | else |
1044 | else |
1270 | RMenuRedrawFon db 'Refresh',0 |
1045 | RMenuRedrawFon db 'Redraw',0 |
1271 | RMenuAlign db 'Snap to Grid',0 |
1046 | RMenuAlign db 'Snap to Grid',0 |
1272 | RMenuOffMoving db 'Lock icons',0 |
1047 | RMenuOffMoving db 'Fix the icons',0 |
1273 | RMenuOnMoving db 'Unlock icons',0 |
1048 | RMenuOnMoving db 'Unfix the icons',0 |
1274 | RMenuAdd db 'New icon',0 |
1049 | RMenuAdd db 'Add',0 |
1275 | RMenuDel db 'Delete',0 |
1050 | RMenuDel db 'Delete',0 |
1276 | RMenuProp db 'Properties',0 |
1051 | RMenuProp db 'Properties',0 |
1277 | end if |
1052 | end if |
Line 1278... | Line 1053... | ||
1278 | 1053 | ||
Line 1283... | Line 1058... | ||
1283 | ErrName db '¬ï "rbmenu" § १¥à¢¨à®¢ ®',0 |
1058 | ErrName db '¬ï "rbmenu" § १¥à¢¨à®¢ ®',0 |
1284 | else |
1059 | else |
1285 | ErrRunProg db 'Error runing program',0 |
1060 | ErrRunProg db 'Error runing program',0 |
1286 | WarningSave db 'Do not forget to save the changes, run the RDSave',0 |
1061 | WarningSave db 'Do not forget to save the changes, run the RDSave',0 |
1287 | ErrNotFoundIni db 'icon.ini not found',0 |
1062 | ErrNotFoundIni db 'icon.ini not found',0 |
1288 | ErrName db 'The name "rbmenu" is reserved',0 |
1063 | ErrName db 'The name "rbmenu" reserved',0 |
1289 | end if |
1064 | end if |
Line 1290... | Line 1065... | ||
1290 | 1065 | ||
1291 | ;------------------------------------------------------------------------------- |
1066 | ;------------------------------------------------------------------------------- |
1292 | ;------- AddDlg.inc --------------------------------------------------------------- |
1067 | ;------- AddDlg.inc --------------------------------------------------------------- |
Line 1318... | Line 1093... | ||
1318 | end if |
1093 | end if |
Line 1319... | Line 1094... | ||
1319 | 1094 | ||
1320 | ;/¥ ¬¥ïâì ¯®«®¦¥¨¥ |
1095 | ;/¥ ¬¥ïâì ¯®«®¦¥¨¥ |
1321 | edtName edit_box NAME_LENGTH*6+4,70+20+IMG_SIZE,6,0FFFFFFh,06F9480h,0FFh,0h,0,NAME_LENGTH,\ |
1096 | edtName edit_box NAME_LENGTH*6+4,70+20+IMG_SIZE,6,0FFFFFFh,06F9480h,0FFh,0h,0,NAME_LENGTH,\ |
1322 | DAreaName,mouse_dd,0,0,0 |
1097 | DAreaName,mouse_dd,0,0,0 |
1323 | edtExePath edit_box 281-3-20-IMG_SIZE,70+20+IMG_SIZE,26,0FFFFFFh,06F9480h,0FFh,0h,0,256,\ |
1098 | edtExePath edit_box 281-3-20-IMG_SIZE,70+20+IMG_SIZE,26,0FFFFFFh,06F9480h,0FFh,0h,0,255,\ |
1324 | DAreaPath,mouse_dd,0,0,0 |
1099 | DAreaPath,mouse_dd,0,0,0 |
1325 | edtParams edit_box 295-20-IMG_SIZE,70+20+IMG_SIZE,46,0FFFFFFh,06F9480h,0FFh,0h,0,256,\ |
1100 | edtParams edit_box 295-20-IMG_SIZE,70+20+IMG_SIZE,46,0FFFFFFh,06F9480h,0FFh,0h,0,255,\ |
1326 | DAreaParams,mouse_dd,0,0,0 |
1101 | DAreaParams,mouse_dd,0,0,0 |
1327 | edtIcon edit_box 295-20-IMG_SIZE,70+20+IMG_SIZE,66,0FFFFFFh,06F9480h,0FFh,0h,0,256,\ |
1102 | edtIcon edit_box 295-20-IMG_SIZE,70+20+IMG_SIZE,66,0FFFFFFh,06F9480h,0FFh,0h,0,255,\ |
1328 | DAreaIcon,mouse_dd,0,0,0 |
1103 | DAreaIcon,mouse_dd,0,0,0 |
1329 | endEdits: |
1104 | endEdits: |
Line 1330... | Line 1105... | ||
1330 | ;\ |
1105 | ;\ |
Line 1419... | Line 1194... | ||
1419 | 1194 | ||
1420 | MouseX rd 1 |
1195 | MouseX rd 1 |
Line 1421... | Line 1196... | ||
1421 | MouseY rd 1 |
1196 | MouseY rd 1 |
1422 | - | ||
1423 | RBSlot rd 1 |
1197 | |
1424 | 1198 | RBSlot rd 1 |
|
Line 1425... | Line 1199... | ||
1425 | AddX rd 1 |
1199 | AddX rd 1 |
1426 | AddY rd 1 |
1200 | AddY rd 1 |
1427 | 1201 | ||
1428 | SelIcon rd 1 |
1202 | SelIcon rd 1 |
Line 1429... | Line 1203... | ||
1429 | DlgSelIcon rd 1 |
1203 | DlgSelIcon rd 1 |
1430 | slotDlgAdd rd 1 |
1204 | slotDlgAdd rd 1 |
1431 | DlgBufImg rb IMG_SIZE*IMG_SIZE*3 |
1205 | DlgBufImg rb IMG_SIZE*IMG_SIZE*3 |
1432 | 1206 | ||
- | 1207 | align 4 |
|
- | 1208 | bufStdIco rb 40 |
|
Line -... | Line 1209... | ||
- | 1209 | IconsOffs rd 100 ;â ¡«¨æ á 㪠§ ⥫ﬨ ª®ªà¥âë¥ ¨ª®ª¨(¤«ï ã᪮२ï) |
|
Line 1433... | Line 1210... | ||
1433 | 1210 | PIcoDB rd 1 |
|
1434 | bufStdIco rb 40 |
1211 | nLoadIcon rd 1 ;®¬¥à ç¨â ¥¬®© ¨§ ini ¨ª®ª¨ |
1435 | IconsOffs rd 100 |
1212 | IconsID rd 100 ;ID ¨ª®®ª - 2 ¡ ©âa + ¡ ©â 0 + ¢ëà ¢¨¢ î騩 ¡ ©â - áâப á 2¬ï è¥á ¤æ¥â¨à¨ç묨 æ¨äà ¬¨ |
1436 | PIcoDB rd 1 |
1213 | |
Line 1437... | Line 1214... | ||
1437 | 1214 | nameSection rb 4 |
|
Line 1438... | Line 1215... | ||
1438 | 1215 | ||
1439 | align 4 |
- | |
Line 1440... | Line 1216... | ||
1440 | icon_count rd 1 |
1216 | align 4 |
1441 | strip_file rd 1 |
1217 | icon_count rd 1 |
1442 | strip_file_size rd 1 |
1218 | strip_file rd 1 |
1443 | 1219 | strip_file_size rd 1 |
|
Line 1454... | Line 1230... | ||
1454 | 1230 | ||
1455 | MaxPage rd 1 |
1231 | MaxPage rd 1 |
Line 1456... | Line 1232... | ||
1456 | mouse_dd rd 1 |
1232 | mouse_dd rd 1 |
1457 | 1233 | ||
1458 | DAreaName rb NAME_LENGTH+1 |
1234 | DAreaName rb NAME_LENGTH+1 |
1459 | DAreaPath rb 256+1 |
1235 | DAreaPath rb 255+1 |
Line 1460... | Line 1236... | ||
1460 | DAreaParams rb 256+1 |
1236 | DAreaParams rb 255+1 |
1461 | DAreaIcon rb 256+1 |
1237 | DAreaIcon rb 255+1 |
1462 | 1238 |