Added the missing objective C files for the macosx and fixed the changes you forgot in main.c etc..
Also added a way to handle the right mouse button when the shift key is pressed (for mice with only have 1 button :]). git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@264 416bcca6-2ee7-4201-b75f-2eb2f807beb1
This commit is contained in:
parent
8990c1b27e
commit
99b99322be
@ -42,8 +42,8 @@
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXErrorsWarningsDataSource_LocationID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
300,
|
||||
200,
|
||||
453,
|
||||
122.2085,
|
||||
);
|
||||
PBXFileTableDataSourceColumnsKey = (
|
||||
PBXErrorsWarningsDataSource_TypeID,
|
||||
@ -125,8 +125,8 @@
|
||||
PBXFileDataSource_Warnings_ColumnID,
|
||||
);
|
||||
};
|
||||
PBXPerProjectTemplateStateSaveDate = 245760591;
|
||||
PBXWorkspaceStateSaveDate = 245760591;
|
||||
PBXPerProjectTemplateStateSaveDate = 245795027;
|
||||
PBXWorkspaceStateSaveDate = 245795027;
|
||||
};
|
||||
perUserProjectItems = {
|
||||
F5B19C160EA4D6E8003F4BA4 = F5B19C160EA4D6E8003F4BA4 /* PBXTextBookmark */;
|
||||
@ -141,45 +141,46 @@
|
||||
F5B1D1880EA5FE5100AB8D0F = F5B1D1880EA5FE5100AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D19A0EA600BF00AB8D0F = F5B1D19A0EA600BF00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D19B0EA600BF00AB8D0F = F5B1D19B0EA600BF00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1AF0EA6025D00AB8D0F /* PBXTextBookmark */ = F5B1D1AF0EA6025D00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1B00EA6027D00AB8D0F /* PBXTextBookmark */ = F5B1D1B00EA6027D00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1B20EA6028C00AB8D0F /* PBXTextBookmark */ = F5B1D1B20EA6028C00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1B50EA602BA00AB8D0F /* PBXTextBookmark */ = F5B1D1B50EA602BA00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1B60EA602BA00AB8D0F /* PBXTextBookmark */ = F5B1D1B60EA602BA00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1B70EA602BA00AB8D0F /* PBXTextBookmark */ = F5B1D1B70EA602BA00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1B80EA602BA00AB8D0F /* PBXTextBookmark */ = F5B1D1B80EA602BA00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1B90EA602C300AB8D0F /* PBXTextBookmark */ = F5B1D1B90EA602C300AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1BD0EA602C300AB8D0F /* PBXTextBookmark */ = F5B1D1BD0EA602C300AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1BE0EA602C300AB8D0F /* PBXTextBookmark */ = F5B1D1BE0EA602C300AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1CA0EA602F600AB8D0F /* PBXTextBookmark */ = F5B1D1CA0EA602F600AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1CC0EA6030C00AB8D0F /* PBXTextBookmark */ = F5B1D1CC0EA6030C00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1CD0EA6030C00AB8D0F /* PBXTextBookmark */ = F5B1D1CD0EA6030C00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1CF0EA6035100AB8D0F /* PBXTextBookmark */ = F5B1D1CF0EA6035100AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1D00EA6035100AB8D0F /* PBXTextBookmark */ = F5B1D1D00EA6035100AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1D20EA6037500AB8D0F /* PBXTextBookmark */ = F5B1D1D20EA6037500AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1D30EA6037500AB8D0F /* PBXTextBookmark */ = F5B1D1D30EA6037500AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1D50EA603BB00AB8D0F /* PBXTextBookmark */ = F5B1D1D50EA603BB00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1D60EA603BB00AB8D0F /* PBXTextBookmark */ = F5B1D1D60EA603BB00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1D80EA6045800AB8D0F /* PBXTextBookmark */ = F5B1D1D80EA6045800AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1D90EA6045800AB8D0F /* PBXTextBookmark */ = F5B1D1D90EA6045800AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1DB0EA6047A00AB8D0F /* PBXTextBookmark */ = F5B1D1DB0EA6047A00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1DC0EA6047A00AB8D0F /* PBXTextBookmark */ = F5B1D1DC0EA6047A00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1DE0EA604D800AB8D0F /* PBXTextBookmark */ = F5B1D1DE0EA604D800AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1DF0EA604D800AB8D0F /* PBXTextBookmark */ = F5B1D1DF0EA604D800AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1E10EA605D200AB8D0F /* PBXTextBookmark */ = F5B1D1E10EA605D200AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1E20EA605D200AB8D0F /* PBXTextBookmark */ = F5B1D1E20EA605D200AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1E40EA6061B00AB8D0F /* PBXTextBookmark */ = F5B1D1E40EA6061B00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1E50EA6061B00AB8D0F /* PBXTextBookmark */ = F5B1D1E50EA6061B00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1E70EA6065F00AB8D0F /* PBXTextBookmark */ = F5B1D1E70EA6065F00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1E80EA6065F00AB8D0F /* PBXTextBookmark */ = F5B1D1E80EA6065F00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1EA0EA6070000AB8D0F /* PBXTextBookmark */ = F5B1D1EA0EA6070000AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1EB0EA6070000AB8D0F /* PBXTextBookmark */ = F5B1D1EB0EA6070000AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1EE0EA608C200AB8D0F /* PBXTextBookmark */ = F5B1D1EE0EA608C200AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1EF0EA608C200AB8D0F /* PBXTextBookmark */ = F5B1D1EF0EA608C200AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1F10EA6093700AB8D0F /* PBXTextBookmark */ = F5B1D1F10EA6093700AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1F20EA6093700AB8D0F /* PBXTextBookmark */ = F5B1D1F20EA6093700AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1F40EA60C3700AB8D0F /* PBXTextBookmark */ = F5B1D1F40EA60C3700AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1F50EA60C3700AB8D0F /* PBXTextBookmark */ = F5B1D1F50EA60C3700AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1AF0EA6025D00AB8D0F = F5B1D1AF0EA6025D00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1B00EA6027D00AB8D0F = F5B1D1B00EA6027D00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1B20EA6028C00AB8D0F = F5B1D1B20EA6028C00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1B50EA602BA00AB8D0F = F5B1D1B50EA602BA00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1B60EA602BA00AB8D0F = F5B1D1B60EA602BA00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1B70EA602BA00AB8D0F = F5B1D1B70EA602BA00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1B80EA602BA00AB8D0F = F5B1D1B80EA602BA00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1B90EA602C300AB8D0F = F5B1D1B90EA602C300AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1BD0EA602C300AB8D0F = F5B1D1BD0EA602C300AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1BE0EA602C300AB8D0F = F5B1D1BE0EA602C300AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1CA0EA602F600AB8D0F = F5B1D1CA0EA602F600AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1CC0EA6030C00AB8D0F = F5B1D1CC0EA6030C00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1CD0EA6030C00AB8D0F = F5B1D1CD0EA6030C00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1CF0EA6035100AB8D0F = F5B1D1CF0EA6035100AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1D00EA6035100AB8D0F = F5B1D1D00EA6035100AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1D20EA6037500AB8D0F = F5B1D1D20EA6037500AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1D30EA6037500AB8D0F = F5B1D1D30EA6037500AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1D50EA603BB00AB8D0F = F5B1D1D50EA603BB00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1D60EA603BB00AB8D0F = F5B1D1D60EA603BB00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1D80EA6045800AB8D0F = F5B1D1D80EA6045800AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1D90EA6045800AB8D0F = F5B1D1D90EA6045800AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1DB0EA6047A00AB8D0F = F5B1D1DB0EA6047A00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1DC0EA6047A00AB8D0F = F5B1D1DC0EA6047A00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1DE0EA604D800AB8D0F = F5B1D1DE0EA604D800AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1DF0EA604D800AB8D0F = F5B1D1DF0EA604D800AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1E10EA605D200AB8D0F = F5B1D1E10EA605D200AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1E20EA605D200AB8D0F = F5B1D1E20EA605D200AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1E40EA6061B00AB8D0F = F5B1D1E40EA6061B00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1E50EA6061B00AB8D0F = F5B1D1E50EA6061B00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1E70EA6065F00AB8D0F = F5B1D1E70EA6065F00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1E80EA6065F00AB8D0F = F5B1D1E80EA6065F00AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1EA0EA6070000AB8D0F = F5B1D1EA0EA6070000AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1EB0EA6070000AB8D0F = F5B1D1EB0EA6070000AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1EE0EA608C200AB8D0F = F5B1D1EE0EA608C200AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1EF0EA608C200AB8D0F = F5B1D1EF0EA608C200AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1F10EA6093700AB8D0F = F5B1D1F10EA6093700AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1F20EA6093700AB8D0F = F5B1D1F20EA6093700AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1F40EA60C3700AB8D0F = F5B1D1F40EA60C3700AB8D0F /* PBXTextBookmark */;
|
||||
F5B1D1F50EA60C3700AB8D0F = F5B1D1F50EA60C3700AB8D0F /* PBXTextBookmark */;
|
||||
F5BF1F120EA68C30000E9B3D /* PBXTextBookmark */ = F5BF1F120EA68C30000E9B3D /* PBXTextBookmark */;
|
||||
F5DCE26A0EA50EDC0065B0EF = F5DCE26A0EA50EDC0065B0EF /* PBXTextBookmark */;
|
||||
F5DCE26B0EA50EDC0065B0EF = F5DCE26B0EA50EDC0065B0EF /* PBXTextBookmark */;
|
||||
F5DCE26C0EA50EDC0065B0EF = F5DCE26C0EA50EDC0065B0EF /* PBXTextBookmark */;
|
||||
@ -187,6 +188,7 @@
|
||||
};
|
||||
sourceControlManager = F5B19B690EA4BD79003F4BA4 /* Source Control */;
|
||||
userBuildSettings = {
|
||||
OBJROOT = "$(SYMROOT)";
|
||||
};
|
||||
};
|
||||
8D1107260486CEB800E47090 /* Grafx2 */ = {
|
||||
@ -256,9 +258,9 @@
|
||||
};
|
||||
F5B19B7B0EA4BE3E003F4BA4 /* graph.c */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1732, 115957}}";
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1732, 117705}}";
|
||||
sepNavSelRange = "{204644, 0}";
|
||||
sepNavVisRect = "{{0, 0}, {583, 67}}";
|
||||
sepNavVisRect = "{{0, 9}, {583, 67}}";
|
||||
};
|
||||
};
|
||||
F5B19B7C0EA4BE3E003F4BA4 /* init.c */ = {
|
||||
@ -276,6 +278,14 @@
|
||||
sepNavVisRect = "{{0, 0}, {0, 0}}";
|
||||
};
|
||||
};
|
||||
F5B19B850EA4BE3E003F4BA4 /* palette.c */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1268, 35967}}";
|
||||
sepNavSelRange = "{44692, 0}";
|
||||
sepNavVisRect = "{{0, 21479}, {867, 536}}";
|
||||
sepNavWindowFrame = "{{15, 76}, {906, 665}}";
|
||||
};
|
||||
};
|
||||
F5B19B880EA4BE3E003F4BA4 /* saveini.c */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1156, 12084}}";
|
||||
@ -358,6 +368,14 @@
|
||||
vrLen = 319;
|
||||
vrLoc = 5217;
|
||||
};
|
||||
F5B19C3C0EA4DC91003F4BA4 /* English */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1404, 536}}";
|
||||
sepNavSelRange = "{0, 0}";
|
||||
sepNavVisRect = "{{0, 0}, {867, 536}}";
|
||||
sepNavWindowFrame = "{{15, 76}, {906, 665}}";
|
||||
};
|
||||
};
|
||||
F5B1D1770EA5FE2100AB8D0F /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = F5DCE2700EA50EDC0065B0EF /* SDL_image.h */;
|
||||
@ -802,6 +820,16 @@
|
||||
vrLen = 0;
|
||||
vrLoc = 0;
|
||||
};
|
||||
F5BF1F120EA68C30000E9B3D /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = F5B19B7B0EA4BE3E003F4BA4 /* graph.c */;
|
||||
name = "graph.c: 6162";
|
||||
rLen = 0;
|
||||
rLoc = 204644;
|
||||
rType = 0;
|
||||
vrLen = 170;
|
||||
vrLoc = 0;
|
||||
};
|
||||
F5DCE26A0EA50EDC0065B0EF /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = F5B19B880EA4BE3E003F4BA4 /* saveini.c */;
|
||||
|
||||
@ -222,6 +222,8 @@
|
||||
<key>Layout</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>BecomeActive</key>
|
||||
<true/>
|
||||
<key>ContentConfiguration</key>
|
||||
<dict>
|
||||
<key>PBXBottomSmartGroupGIDs</key>
|
||||
@ -264,15 +266,16 @@
|
||||
<array>
|
||||
<string>29B97314FDCFA39411CA2CEA</string>
|
||||
<string>1C37FBAC04509CD000000102</string>
|
||||
<string>F5BF1F110EA68C30000E9B3D</string>
|
||||
</array>
|
||||
<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
|
||||
<array>
|
||||
<array>
|
||||
<integer>42</integer>
|
||||
<integer>46</integer>
|
||||
</array>
|
||||
</array>
|
||||
<key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
|
||||
<string>{{0, 398}, {339, 502}}</string>
|
||||
<string>{{0, 470}, {339, 502}}</string>
|
||||
</dict>
|
||||
<key>PBXTopSmartGroupGIDs</key>
|
||||
<array/>
|
||||
@ -321,7 +324,7 @@
|
||||
<key>_historyCapacity</key>
|
||||
<integer>0</integer>
|
||||
<key>bookmark</key>
|
||||
<string>F5B1D1F40EA60C3700AB8D0F</string>
|
||||
<string>F5BF1F120EA68C30000E9B3D</string>
|
||||
<key>history</key>
|
||||
<array>
|
||||
<string>F5B19C160EA4D6E8003F4BA4</string>
|
||||
@ -330,7 +333,7 @@
|
||||
<string>F5DCE26C0EA50EDC0065B0EF</string>
|
||||
<string>F5B1D1770EA5FE2100AB8D0F</string>
|
||||
<string>F5B1D1B50EA602BA00AB8D0F</string>
|
||||
<string>F5B1D1B60EA602BA00AB8D0F</string>
|
||||
<string>F5B1D1F40EA60C3700AB8D0F</string>
|
||||
</array>
|
||||
<key>prevStack</key>
|
||||
<array>
|
||||
@ -365,8 +368,6 @@
|
||||
<key>Tabs</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>BecomeActive</key>
|
||||
<true/>
|
||||
<key>ContentConfiguration</key>
|
||||
<dict>
|
||||
<key>PBXProjectModuleGUID</key>
|
||||
@ -438,11 +439,11 @@
|
||||
</array>
|
||||
<key>TableOfContents</key>
|
||||
<array>
|
||||
<string>F5B1D1BA0EA602C300AB8D0F</string>
|
||||
<string>F5BF1F130EA68C30000E9B3D</string>
|
||||
<string>1CA23ED40692098700951B8B</string>
|
||||
<string>F5B1D1BB0EA602C300AB8D0F</string>
|
||||
<string>F5BF1F140EA68C30000E9B3D</string>
|
||||
<string>F5B19BA70EA4BF24003F4BA4</string>
|
||||
<string>F5B1D1BC0EA602C300AB8D0F</string>
|
||||
<string>F5BF1F150EA68C30000E9B3D</string>
|
||||
<string>1CA23EDF0692099D00951B8B</string>
|
||||
<string>1CA23EE00692099D00951B8B</string>
|
||||
<string>1CA23EE10692099D00951B8B</string>
|
||||
@ -490,7 +491,7 @@
|
||||
<dict>
|
||||
<key>PBXSmartGroupTreeModuleColumnWidthsKey</key>
|
||||
<array>
|
||||
<real>404</real>
|
||||
<real>963</real>
|
||||
</array>
|
||||
<key>PBXSmartGroupTreeModuleColumnsKey_v4</key>
|
||||
<array>
|
||||
@ -511,7 +512,7 @@
|
||||
</array>
|
||||
</array>
|
||||
<key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
|
||||
<string>{{0, 18}, {963, 502}}</string>
|
||||
<string>{{0, 0}, {0, 0}}</string>
|
||||
</dict>
|
||||
<key>PBXTopSmartGroupGIDs</key>
|
||||
<array/>
|
||||
@ -525,7 +526,7 @@
|
||||
<key>GroupTreeTableConfiguration</key>
|
||||
<array>
|
||||
<string>MainColumn</string>
|
||||
<real>404</real>
|
||||
<real>963</real>
|
||||
</array>
|
||||
</dict>
|
||||
<key>Module</key>
|
||||
@ -551,10 +552,6 @@
|
||||
<string>F5B19BA80EA4BF24003F4BA4</string>
|
||||
<key>PBXProjectModuleLabel</key>
|
||||
<string>graph.c</string>
|
||||
<key>_historyCapacity</key>
|
||||
<integer>0</integer>
|
||||
<key>bookmark</key>
|
||||
<string>F5B1D1F50EA60C3700AB8D0F</string>
|
||||
<key>history</key>
|
||||
<array>
|
||||
<string>F5B19C160EA4D6E8003F4BA4</string>
|
||||
@ -593,7 +590,7 @@
|
||||
</dict>
|
||||
<dict>
|
||||
<key>Proportion</key>
|
||||
<string>154pt</string>
|
||||
<string>0pt</string>
|
||||
<key>Tabs</key>
|
||||
<array>
|
||||
<dict>
|
||||
@ -611,7 +608,7 @@
|
||||
<key>GeometryConfiguration</key>
|
||||
<dict>
|
||||
<key>Frame</key>
|
||||
<string>{{10, 27}, {0, 127}}</string>
|
||||
<string>{{10, 27}, {0, -27}}</string>
|
||||
</dict>
|
||||
<key>Module</key>
|
||||
<string>PBXBuildResultsModule</string>
|
||||
@ -691,14 +688,14 @@
|
||||
</array>
|
||||
<key>TableOfContents</key>
|
||||
<array>
|
||||
<string>F5B1D1BF0EA602C300AB8D0F</string>
|
||||
<string>F5BF1F160EA68C30000E9B3D</string>
|
||||
<string>1CA23EE50692099D00951B8B</string>
|
||||
<string>F5B1D1C00EA602C300AB8D0F</string>
|
||||
<string>F5BF1F170EA68C30000E9B3D</string>
|
||||
<string>F5B19BA70EA4BF24003F4BA4</string>
|
||||
<string>F5B1D1C10EA602C300AB8D0F</string>
|
||||
<string>F5BF1F180EA68C30000E9B3D</string>
|
||||
<string>XCMainBuildResultsModuleGUID</string>
|
||||
<string>1CA23EE80692099D00951B8B</string>
|
||||
<string>F5B1D1C20EA602C300AB8D0F</string>
|
||||
<string>F5BF1F190EA68C30000E9B3D</string>
|
||||
</array>
|
||||
<key>ToolbarConfiguration</key>
|
||||
<string>xcode.toolbar.config.buildAndRun</string>
|
||||
@ -867,7 +864,6 @@
|
||||
<integer>5</integer>
|
||||
<key>WindowOrderList</key>
|
||||
<array>
|
||||
<string>F5B1D1C80EA602C300AB8D0F</string>
|
||||
<string>/Users/xx/Grafx2/Grafx2.xcodeproj</string>
|
||||
</array>
|
||||
<key>WindowString</key>
|
||||
|
||||
11
SDLMain.h
Normal file
11
SDLMain.h
Normal file
@ -0,0 +1,11 @@
|
||||
/* SDLMain.m - main entry point for our Cocoa-ized SDL app
|
||||
Initial Version: Darrell Walisser <dwaliss1@purdue.edu>
|
||||
Non-NIB-Code & other changes: Max Horn <max@quendi.de>
|
||||
|
||||
Feel free to customize this file to suit your needs
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
|
||||
@interface SDLMain : NSObject
|
||||
@end
|
||||
383
SDLMain.m
Normal file
383
SDLMain.m
Normal file
@ -0,0 +1,383 @@
|
||||
/* SDLMain.m - main entry point for our Cocoa-ized SDL app
|
||||
Initial Version: Darrell Walisser <dwaliss1@purdue.edu>
|
||||
Non-NIB-Code & other changes: Max Horn <max@quendi.de>
|
||||
|
||||
Feel free to customize this file to suit your needs
|
||||
*/
|
||||
|
||||
#import "SDL.h"
|
||||
#import "SDLMain.h"
|
||||
#import <sys/param.h> /* for MAXPATHLEN */
|
||||
#import <unistd.h>
|
||||
|
||||
/* For some reaon, Apple removed setAppleMenu from the headers in 10.4,
|
||||
but the method still is there and works. To avoid warnings, we declare
|
||||
it ourselves here. */
|
||||
@interface NSApplication(SDL_Missing_Methods)
|
||||
- (void)setAppleMenu:(NSMenu *)menu;
|
||||
@end
|
||||
|
||||
/* Use this flag to determine whether we use SDLMain.nib or not */
|
||||
#define SDL_USE_NIB_FILE 0
|
||||
|
||||
/* Use this flag to determine whether we use CPS (docking) or not */
|
||||
#define SDL_USE_CPS 1
|
||||
#ifdef SDL_USE_CPS
|
||||
/* Portions of CPS.h */
|
||||
typedef struct CPSProcessSerNum
|
||||
{
|
||||
UInt32 lo;
|
||||
UInt32 hi;
|
||||
} CPSProcessSerNum;
|
||||
|
||||
extern OSErr CPSGetCurrentProcess( CPSProcessSerNum *psn);
|
||||
extern OSErr CPSEnableForegroundOperation( CPSProcessSerNum *psn, UInt32 _arg2, UInt32 _arg3, UInt32 _arg4, UInt32 _arg5);
|
||||
extern OSErr CPSSetFrontProcess( CPSProcessSerNum *psn);
|
||||
|
||||
#endif /* SDL_USE_CPS */
|
||||
|
||||
static int gArgc;
|
||||
static char **gArgv;
|
||||
static BOOL gFinderLaunch;
|
||||
static BOOL gCalledAppMainline = FALSE;
|
||||
|
||||
static NSString *getApplicationName(void)
|
||||
{
|
||||
NSDictionary *dict;
|
||||
NSString *appName = 0;
|
||||
|
||||
/* Determine the application name */
|
||||
dict = (NSDictionary *)CFBundleGetInfoDictionary(CFBundleGetMainBundle());
|
||||
if (dict)
|
||||
appName = [dict objectForKey: @"CFBundleName"];
|
||||
|
||||
if (![appName length])
|
||||
appName = [[NSProcessInfo processInfo] processName];
|
||||
|
||||
return appName;
|
||||
}
|
||||
|
||||
#if SDL_USE_NIB_FILE
|
||||
/* A helper category for NSString */
|
||||
@interface NSString (ReplaceSubString)
|
||||
- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString;
|
||||
@end
|
||||
#endif
|
||||
|
||||
@interface SDLApplication : NSApplication
|
||||
@end
|
||||
|
||||
@implementation SDLApplication
|
||||
/* Invoked from the Quit menu item */
|
||||
- (void)terminate:(id)sender
|
||||
{
|
||||
/* Post a SDL_QUIT event */
|
||||
SDL_Event event;
|
||||
event.type = SDL_QUIT;
|
||||
SDL_PushEvent(&event);
|
||||
}
|
||||
@end
|
||||
|
||||
/* The main class of the application, the application's delegate */
|
||||
@implementation SDLMain
|
||||
|
||||
/* Set the working directory to the .app's parent directory */
|
||||
- (void) setupWorkingDirectory:(BOOL)shouldChdir
|
||||
{
|
||||
if (shouldChdir)
|
||||
{
|
||||
char parentdir[MAXPATHLEN];
|
||||
CFURLRef url = CFBundleCopyBundleURL(CFBundleGetMainBundle());
|
||||
CFURLRef url2 = CFURLCreateCopyDeletingLastPathComponent(0, url);
|
||||
if (CFURLGetFileSystemRepresentation(url2, true, (UInt8 *)parentdir, MAXPATHLEN)) {
|
||||
assert ( chdir (parentdir) == 0 ); /* chdir to the binary app's parent */
|
||||
}
|
||||
CFRelease(url);
|
||||
CFRelease(url2);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#if SDL_USE_NIB_FILE
|
||||
|
||||
/* Fix menu to contain the real app name instead of "SDL App" */
|
||||
- (void)fixMenu:(NSMenu *)aMenu withAppName:(NSString *)appName
|
||||
{
|
||||
NSRange aRange;
|
||||
NSEnumerator *enumerator;
|
||||
NSMenuItem *menuItem;
|
||||
|
||||
aRange = [[aMenu title] rangeOfString:@"SDL App"];
|
||||
if (aRange.length != 0)
|
||||
[aMenu setTitle: [[aMenu title] stringByReplacingRange:aRange with:appName]];
|
||||
|
||||
enumerator = [[aMenu itemArray] objectEnumerator];
|
||||
while ((menuItem = [enumerator nextObject]))
|
||||
{
|
||||
aRange = [[menuItem title] rangeOfString:@"SDL App"];
|
||||
if (aRange.length != 0)
|
||||
[menuItem setTitle: [[menuItem title] stringByReplacingRange:aRange with:appName]];
|
||||
if ([menuItem hasSubmenu])
|
||||
[self fixMenu:[menuItem submenu] withAppName:appName];
|
||||
}
|
||||
[ aMenu sizeToFit ];
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
static void setApplicationMenu(void)
|
||||
{
|
||||
/* warning: this code is very odd */
|
||||
NSMenu *appleMenu;
|
||||
NSMenuItem *menuItem;
|
||||
NSString *title;
|
||||
NSString *appName;
|
||||
|
||||
appName = getApplicationName();
|
||||
appleMenu = [[NSMenu alloc] initWithTitle:@""];
|
||||
|
||||
/* Add menu items */
|
||||
title = [@"About " stringByAppendingString:appName];
|
||||
[appleMenu addItemWithTitle:title action:@selector(orderFrontStandardAboutPanel:) keyEquivalent:@""];
|
||||
|
||||
[appleMenu addItem:[NSMenuItem separatorItem]];
|
||||
|
||||
title = [@"Hide " stringByAppendingString:appName];
|
||||
[appleMenu addItemWithTitle:title action:@selector(hide:) keyEquivalent:@"h"];
|
||||
|
||||
menuItem = (NSMenuItem *)[appleMenu addItemWithTitle:@"Hide Others" action:@selector(hideOtherApplications:) keyEquivalent:@"h"];
|
||||
[menuItem setKeyEquivalentModifierMask:(NSAlternateKeyMask|NSCommandKeyMask)];
|
||||
|
||||
[appleMenu addItemWithTitle:@"Show All" action:@selector(unhideAllApplications:) keyEquivalent:@""];
|
||||
|
||||
[appleMenu addItem:[NSMenuItem separatorItem]];
|
||||
|
||||
title = [@"Quit " stringByAppendingString:appName];
|
||||
[appleMenu addItemWithTitle:title action:@selector(terminate:) keyEquivalent:@"q"];
|
||||
|
||||
|
||||
/* Put menu into the menubar */
|
||||
menuItem = [[NSMenuItem alloc] initWithTitle:@"" action:nil keyEquivalent:@""];
|
||||
[menuItem setSubmenu:appleMenu];
|
||||
[[NSApp mainMenu] addItem:menuItem];
|
||||
|
||||
/* Tell the application object that this is now the application menu */
|
||||
[NSApp setAppleMenu:appleMenu];
|
||||
|
||||
/* Finally give up our references to the objects */
|
||||
[appleMenu release];
|
||||
[menuItem release];
|
||||
}
|
||||
|
||||
/* Create a window menu */
|
||||
static void setupWindowMenu(void)
|
||||
{
|
||||
NSMenu *windowMenu;
|
||||
NSMenuItem *windowMenuItem;
|
||||
NSMenuItem *menuItem;
|
||||
|
||||
windowMenu = [[NSMenu alloc] initWithTitle:@"Window"];
|
||||
|
||||
/* "Minimize" item */
|
||||
menuItem = [[NSMenuItem alloc] initWithTitle:@"Minimize" action:@selector(performMiniaturize:) keyEquivalent:@"m"];
|
||||
[windowMenu addItem:menuItem];
|
||||
[menuItem release];
|
||||
|
||||
/* Put menu into the menubar */
|
||||
windowMenuItem = [[NSMenuItem alloc] initWithTitle:@"Window" action:nil keyEquivalent:@""];
|
||||
[windowMenuItem setSubmenu:windowMenu];
|
||||
[[NSApp mainMenu] addItem:windowMenuItem];
|
||||
|
||||
/* Tell the application object that this is now the window menu */
|
||||
[NSApp setWindowsMenu:windowMenu];
|
||||
|
||||
/* Finally give up our references to the objects */
|
||||
[windowMenu release];
|
||||
[windowMenuItem release];
|
||||
}
|
||||
|
||||
/* Replacement for NSApplicationMain */
|
||||
static void CustomApplicationMain (int argc, char **argv)
|
||||
{
|
||||
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
|
||||
SDLMain *sdlMain;
|
||||
|
||||
/* Ensure the application object is initialised */
|
||||
[SDLApplication sharedApplication];
|
||||
|
||||
#ifdef SDL_USE_CPS
|
||||
{
|
||||
CPSProcessSerNum PSN;
|
||||
/* Tell the dock about us */
|
||||
if (!CPSGetCurrentProcess(&PSN))
|
||||
if (!CPSEnableForegroundOperation(&PSN,0x03,0x3C,0x2C,0x1103))
|
||||
if (!CPSSetFrontProcess(&PSN))
|
||||
[SDLApplication sharedApplication];
|
||||
}
|
||||
#endif /* SDL_USE_CPS */
|
||||
|
||||
/* Set up the menubar */
|
||||
[NSApp setMainMenu:[[NSMenu alloc] init]];
|
||||
setApplicationMenu();
|
||||
setupWindowMenu();
|
||||
|
||||
/* Create SDLMain and make it the app delegate */
|
||||
sdlMain = [[SDLMain alloc] init];
|
||||
[NSApp setDelegate:sdlMain];
|
||||
|
||||
/* Start the main event loop */
|
||||
[NSApp run];
|
||||
|
||||
[sdlMain release];
|
||||
[pool release];
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
/*
|
||||
* Catch document open requests...this lets us notice files when the app
|
||||
* was launched by double-clicking a document, or when a document was
|
||||
* dragged/dropped on the app's icon. You need to have a
|
||||
* CFBundleDocumentsType section in your Info.plist to get this message,
|
||||
* apparently.
|
||||
*
|
||||
* Files are added to gArgv, so to the app, they'll look like command line
|
||||
* arguments. Previously, apps launched from the finder had nothing but
|
||||
* an argv[0].
|
||||
*
|
||||
* This message may be received multiple times to open several docs on launch.
|
||||
*
|
||||
* This message is ignored once the app's mainline has been called.
|
||||
*/
|
||||
- (BOOL)application:(NSApplication *)theApplication openFile:(NSString *)filename
|
||||
{
|
||||
const char *temparg;
|
||||
size_t arglen;
|
||||
char *arg;
|
||||
char **newargv;
|
||||
|
||||
if (!gFinderLaunch) /* MacOS is passing command line args. */
|
||||
return FALSE;
|
||||
|
||||
if (gCalledAppMainline) /* app has started, ignore this document. */
|
||||
return FALSE;
|
||||
|
||||
temparg = [filename UTF8String];
|
||||
arglen = SDL_strlen(temparg) + 1;
|
||||
arg = (char *) SDL_malloc(arglen);
|
||||
if (arg == NULL)
|
||||
return FALSE;
|
||||
|
||||
newargv = (char **) realloc(gArgv, sizeof (char *) * (gArgc + 2));
|
||||
if (newargv == NULL)
|
||||
{
|
||||
SDL_free(arg);
|
||||
return FALSE;
|
||||
}
|
||||
gArgv = newargv;
|
||||
|
||||
SDL_strlcpy(arg, temparg, arglen);
|
||||
gArgv[gArgc++] = arg;
|
||||
gArgv[gArgc] = NULL;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
/* Called when the internal event loop has just started running */
|
||||
- (void) applicationDidFinishLaunching: (NSNotification *) note
|
||||
{
|
||||
int status;
|
||||
|
||||
/* Set the working directory to the .app's parent directory */
|
||||
[self setupWorkingDirectory:gFinderLaunch];
|
||||
|
||||
#if SDL_USE_NIB_FILE
|
||||
/* Set the main menu to contain the real app name instead of "SDL App" */
|
||||
[self fixMenu:[NSApp mainMenu] withAppName:getApplicationName()];
|
||||
#endif
|
||||
|
||||
/* Hand off to main application code */
|
||||
gCalledAppMainline = TRUE;
|
||||
status = SDL_main (gArgc, gArgv);
|
||||
|
||||
/* We're done, thank you for playing */
|
||||
exit(status);
|
||||
}
|
||||
@end
|
||||
|
||||
|
||||
@implementation NSString (ReplaceSubString)
|
||||
|
||||
- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString
|
||||
{
|
||||
unsigned int bufferSize;
|
||||
unsigned int selfLen = [self length];
|
||||
unsigned int aStringLen = [aString length];
|
||||
unichar *buffer;
|
||||
NSRange localRange;
|
||||
NSString *result;
|
||||
|
||||
bufferSize = selfLen + aStringLen - aRange.length;
|
||||
buffer = NSAllocateMemoryPages(bufferSize*sizeof(unichar));
|
||||
|
||||
/* Get first part into buffer */
|
||||
localRange.location = 0;
|
||||
localRange.length = aRange.location;
|
||||
[self getCharacters:buffer range:localRange];
|
||||
|
||||
/* Get middle part into buffer */
|
||||
localRange.location = 0;
|
||||
localRange.length = aStringLen;
|
||||
[aString getCharacters:(buffer+aRange.location) range:localRange];
|
||||
|
||||
/* Get last part into buffer */
|
||||
localRange.location = aRange.location + aRange.length;
|
||||
localRange.length = selfLen - localRange.location;
|
||||
[self getCharacters:(buffer+aRange.location+aStringLen) range:localRange];
|
||||
|
||||
/* Build output string */
|
||||
result = [NSString stringWithCharacters:buffer length:bufferSize];
|
||||
|
||||
NSDeallocateMemoryPages(buffer, bufferSize);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
|
||||
|
||||
#ifdef main
|
||||
# undef main
|
||||
#endif
|
||||
|
||||
|
||||
/* Main entry point to executable - should *not* be SDL_main! */
|
||||
int main (int argc, char **argv)
|
||||
{
|
||||
/* Copy the arguments into a global variable */
|
||||
/* This is passed if we are launched by double-clicking */
|
||||
if ( argc >= 2 && strncmp (argv[1], "-psn", 4) == 0 ) {
|
||||
gArgv = (char **) SDL_malloc(sizeof (char *) * 2);
|
||||
gArgv[0] = argv[0];
|
||||
gArgv[1] = NULL;
|
||||
gArgc = 1;
|
||||
gFinderLaunch = YES;
|
||||
} else {
|
||||
int i;
|
||||
gArgc = argc;
|
||||
gArgv = (char **) SDL_malloc(sizeof (char *) * (argc+1));
|
||||
for (i = 0; i <= argc; i++)
|
||||
gArgv[i] = argv[i];
|
||||
gFinderLaunch = NO;
|
||||
}
|
||||
|
||||
#if SDL_USE_NIB_FILE
|
||||
[SDLApplication poseAsClass:[NSApplication class]];
|
||||
NSApplicationMain (argc, argv);
|
||||
#else
|
||||
CustomApplicationMain (argc, argv);
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
6
aide.c
6
aide.c
@ -141,7 +141,9 @@ void Afficher_aide(void)
|
||||
Menu_Facteur_Y<<3,
|
||||
CM_Noir);
|
||||
}
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+13*Menu_Facteur_X,Fenetre_Pos_Y+19*Menu_Facteur_Y,44*6*Menu_Facteur_X,16*8*Menu_Facteur_Y);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@ -218,7 +220,9 @@ void Fenetre_aide(int Section, const char *Sous_section)
|
||||
|
||||
Afficher_aide();
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X,Fenetre_Pos_Y,310*Menu_Facteur_X,175*Menu_Facteur_Y);
|
||||
#endif
|
||||
|
||||
Afficher_curseur();
|
||||
|
||||
@ -394,7 +398,9 @@ void Bouton_Stats(void)
|
||||
sprintf(Buffer,"%dx%d",Largeur_ecran,Hauteur_ecran);
|
||||
Print_dans_fenetre(106,99,Buffer,STATS_COULEUR_DONNEES,CM_Noir);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X,Fenetre_Pos_Y,Menu_Facteur_X*310,Menu_Facteur_Y*174);
|
||||
#endif
|
||||
|
||||
Afficher_curseur();
|
||||
|
||||
|
||||
32
boutons.c
32
boutons.c
@ -55,7 +55,11 @@
|
||||
|
||||
#define FILENAMESPACE 13
|
||||
|
||||
#ifdef __macosx__
|
||||
#define Display_Window(X,Y)
|
||||
#else
|
||||
#define Display_Window(X,Y) SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X,Fenetre_Pos_Y,X*Menu_Facteur_X,Y*Menu_Facteur_Y);
|
||||
#endif
|
||||
|
||||
//-- MODELE DE BOUTON DE MENU ------------------------------------------------
|
||||
/*
|
||||
@ -1239,8 +1243,10 @@ void Cocher_bouton_mode(short Pos_X, short Pos_Y, byte Etat)
|
||||
Block(Fenetre_Pos_X+Menu_Facteur_X*Pos_X,Fenetre_Pos_Y+Menu_Facteur_Y*Pos_Y,
|
||||
Menu_Facteur_X*9,Menu_Facteur_Y*3,Couleur);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+Menu_Facteur_X*Pos_X,Fenetre_Pos_Y+Menu_Facteur_Y*Pos_Y,
|
||||
Menu_Facteur_X*9,Menu_Facteur_Y*3);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@ -1748,8 +1754,10 @@ void Degrade_Dessiner_bouton_de_technique(short Pos_X,short Pos_Y,int Technique)
|
||||
}
|
||||
}
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+((Pos_X+2)*Menu_Facteur_X),Fenetre_Pos_Y+((Pos_Y+2)*Menu_Facteur_Y),
|
||||
Menu_Facteur_X*10,Menu_Facteur_Y*10);
|
||||
#endif
|
||||
}
|
||||
|
||||
void Degrade_Charger_infos_du_tableau(int Indice)
|
||||
@ -1797,7 +1805,9 @@ void Degrade_Dessiner_preview(short Debut_X,short Debut_Y,short Largeur,short Ha
|
||||
for (Pos_Y=Debut_Y;Pos_Y<Fin_Y;Pos_Y++)
|
||||
for (Pos_X=Debut_X;Pos_X<Fin_X;Pos_X++)
|
||||
Traiter_degrade(Pos_X-Debut_X,Pos_X,Pos_Y);
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Debut_X,Debut_Y,Largeur*Menu_Facteur_X,Hauteur*Menu_Facteur_Y);
|
||||
#endif
|
||||
}
|
||||
|
||||
void Bouton_Degrades(void)
|
||||
@ -2226,7 +2236,9 @@ void Preparer_et_afficher_liste_fichiers(short Position, short Decalage,
|
||||
// On affiche les nouveaux:
|
||||
Afficher_la_liste_des_fichiers(Position,Decalage);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+(Menu_Facteur_X<<3),Fenetre_Pos_Y+(Menu_Facteur_Y*(89+FILENAMESPACE)),Menu_Facteur_X*98,Menu_Facteur_Y*82);
|
||||
#endif
|
||||
|
||||
// On récupère le nom du schmilblick à "accéder"
|
||||
Determiner_element_de_la_liste(Position,Decalage,Principal_Nom_fichier);
|
||||
@ -2843,7 +2855,9 @@ byte Bouton_Load_ou_Save(byte Load, byte Image)
|
||||
Print_dans_fenetre(46,175+FILENAMESPACE,Principal_Commentaire,CM_Noir,CM_Clair);
|
||||
Afficher_curseur();
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+27*Menu_Facteur_X,Fenetre_Pos_Y+(55+FILENAMESPACE)*Menu_Facteur_Y,Menu_Facteur_X<<9,Menu_Facteur_Y<<4);
|
||||
#endif
|
||||
}
|
||||
|
||||
Nouvelle_preview=0;
|
||||
@ -2863,7 +2877,9 @@ byte Bouton_Load_ou_Save(byte Load, byte Image)
|
||||
|
||||
Effacer_curseur();
|
||||
Charger_image(Image);
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,ToWinX(179),ToWinY(88+FILENAMESPACE),ToWinL(124),ToWinH(84));
|
||||
#endif
|
||||
Afficher_curseur();
|
||||
|
||||
// Après le chargement de la preview, on restaure tout ce qui aurait
|
||||
@ -3664,7 +3680,9 @@ void Bouton_Loupe(void)
|
||||
}
|
||||
}
|
||||
Afficher_curseur();
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,0,0,0,0);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@ -3713,7 +3731,9 @@ void Bouton_Menu_Loupe(void)
|
||||
|
||||
Afficher_curseur();
|
||||
Afficher_ecran();
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Principal_Split,0,Largeur_ecran-Principal_Split,Menu_Ordonnee);
|
||||
#endif
|
||||
|
||||
if ( (Bouton_clicke>1) && (!Loupe_Mode) && (Operation_en_cours!=OPERATION_LOUPE) ) // Passage en mode zoom
|
||||
{
|
||||
@ -4908,7 +4928,9 @@ void Dessiner_trame_zoomee(short Orig_X, short Orig_Y)
|
||||
for (Pos_Y=0; Pos_Y<Taille_Y; Pos_Y++)
|
||||
for (Pos_X=0; Pos_X<Taille_X; Pos_X++)
|
||||
Pixel(Debut_X+Pos_X,Debut_Y+Pos_Y,(Trame[Pos_X%Trame_Largeur][Pos_Y%Trame_Hauteur])?CM_Blanc:CM_Noir);
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Debut_X,Debut_Y,Taille_X,Taille_Y);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@ -4922,7 +4944,9 @@ void Dessiner_trames_predefinies(void)
|
||||
for (i=0; i<16; i++)
|
||||
Pixel_dans_fenetre((Indice*23)+10+i,22+j,
|
||||
((TRAME_PREDEFINIE[Indice][j]>>(15-i))&1)?CM_Blanc:CM_Noir);
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,ToWinX(10),ToWinY(22),ToWinL(12*23+16),ToWinH(16));
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@ -4950,7 +4974,9 @@ void Inverser_trame(void)
|
||||
// Rafraichit toute la zone correspondant à la trame zoomee.
|
||||
void Mettre_a_jour_trame(short X, short Y)
|
||||
{
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,X,Y,80*Menu_Facteur_X,80*Menu_Facteur_Y);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@ -5089,7 +5115,9 @@ void Bouton_Trame_Menu(void)
|
||||
Dessiner_trame_zoomee(Orig_X,Orig_Y);
|
||||
Afficher_curseur();
|
||||
// Maj de la case seule
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Orig_X+(Old_Pos_X*Pos_X), Orig_Y+(Old_Pos_Y*Pos_Y),Menu_Facteur_X*5,Menu_Facteur_Y*5);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
break;
|
||||
@ -5207,11 +5235,13 @@ void Bouton_Trame_Menu(void)
|
||||
Fenetre_Pos_Y+(Menu_Facteur_Y*(Bouton_Octet_insere->Pos_Y+2)),
|
||||
Menu_Facteur_X*7, Menu_Facteur_Y*7, (Octet_insere)?CM_Blanc:CM_Noir);
|
||||
Afficher_curseur();
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,
|
||||
Fenetre_Pos_X+(Menu_Facteur_X*(Bouton_Octet_insere->Pos_X+2)),
|
||||
Fenetre_Pos_Y+(Menu_Facteur_Y*(Bouton_Octet_insere->Pos_Y+2)),
|
||||
Menu_Facteur_X*7,
|
||||
Menu_Facteur_Y*7);
|
||||
#endif
|
||||
|
||||
break;
|
||||
|
||||
@ -5360,7 +5390,9 @@ void Afficher_sprite_effet(short Numero_sprite, short Debut_X, short Debut_Y)
|
||||
for (X=0,Pos_X=Debut_X;X<LARGEUR_SPRITE_MENU;X++,Pos_X++)
|
||||
Pixel_dans_fenetre(Pos_X,Pos_Y,SPRITE_EFFET[Numero_sprite][Y][X]);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,ToWinX(Debut_X),ToWinY(Debut_Y),LARGEUR_SPRITE_MENU*Menu_Facteur_X,HAUTEUR_SPRITE_MENU*Menu_Facteur_Y);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
||||
2
const.h
2
const.h
@ -29,7 +29,7 @@
|
||||
#define M_2PI 6.28318530717958647692528676656
|
||||
|
||||
// Note: La taille du fichier GFX2.DAT est définie au début de INIT.C !
|
||||
#define POURCENTAGE_VERSION "97.0%" // Libellé du pourcentage de la version ß
|
||||
#define POURCENTAGE_VERSION "97.2%" // Libellé du pourcentage de la version ß
|
||||
#define VERSION1 2 // |
|
||||
#define VERSION2 0 // |_ Numéro de version découpé en
|
||||
#define BETA1 97 // | plusieurs parties => 2.0 ß95.5%
|
||||
|
||||
25
divers.c
25
divers.c
@ -160,7 +160,20 @@ void Get_input(void)
|
||||
//Clic sur un des boutons de la souris
|
||||
switch(event.button.button)
|
||||
{
|
||||
#ifdef __macosx__
|
||||
// fc: poor poor mac users with a signle button mouse...
|
||||
// emulated with the shifts keys
|
||||
case SDL_BUTTON_LEFT:
|
||||
INPUT_Nouveau_Mouse_K = 1;
|
||||
if(SDL_GetModState() & KMOD_LSHIFT ||
|
||||
SDL_GetModState() & KMOD_RSHIFT)
|
||||
{
|
||||
INPUT_Nouveau_Mouse_K = 2;
|
||||
}
|
||||
break;
|
||||
#else
|
||||
case SDL_BUTTON_LEFT: INPUT_Nouveau_Mouse_K = 1; break;
|
||||
#endif
|
||||
case SDL_BUTTON_MIDDLE: // Pour SDL, 2 = clic milieu. Pour nous c'est le clic droit
|
||||
case SDL_BUTTON_RIGHT: // Clic droit SDL, clic droit pour nous aussi ( pour le moment en tout cas)
|
||||
INPUT_Nouveau_Mouse_K = 2;
|
||||
@ -331,6 +344,14 @@ void Get_input(void)
|
||||
Calculer_coordonnees_pinceau();
|
||||
Afficher_curseur();
|
||||
}
|
||||
|
||||
#ifdef __macosx__
|
||||
// Flush
|
||||
SDL_UpdateRect(Ecran_SDL,0,0,0,0);
|
||||
//updaterect() waits for vblank on macosx
|
||||
//SDL_Flip(Ecran_SDL);
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -412,7 +433,9 @@ void Remplacer_une_couleur(byte Ancienne_couleur, byte Nouvelle_couleur)
|
||||
for(edi = Principal_Ecran;edi < Principal_Ecran + Principal_Hauteur_image * Principal_Largeur_image;edi++)
|
||||
if (*edi == Ancienne_couleur)
|
||||
*edi = Nouvelle_couleur;
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,0,0,0,0); // On pet TOUT a jour
|
||||
#endif
|
||||
// C'est pas un problème car il n'y a pas de preview
|
||||
}
|
||||
|
||||
@ -837,7 +860,9 @@ void Scroll_picture(short Decalage_X,short Decalage_Y)
|
||||
esi += Principal_Largeur_image;
|
||||
}
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,0,0,0,0);
|
||||
#endif
|
||||
}
|
||||
|
||||
word Get_key(void)
|
||||
|
||||
293
gfx2.ini
Normal file
293
gfx2.ini
Normal file
@ -0,0 +1,293 @@
|
||||
###### GrafX2 initialization file ###### Fichier d'initialisation de GrafX2 ##
|
||||
# # # #
|
||||
# You may modify this file with any # Vous pouvez modifier ce fichier avec #
|
||||
# standard ASCII text editor. # n'importe quel éditeur de texte #
|
||||
# # ASCII standard. #
|
||||
# # #
|
||||
# Comments are preceded by ';' or # Les commentaires sont précédés par #
|
||||
# '#'. # ';' ou '#'. #
|
||||
# # #
|
||||
# Options are not case sensitive and # Les options ne sont pas sensibles à #
|
||||
# spaces are ignored. # la casse et les espaces sont ignorés.#
|
||||
# # #
|
||||
# You must not change the order of # Vous ne devez pas changer l'ordre #
|
||||
# the sections and their options. # des sections et de leurs options. #
|
||||
# You must not delete or put into # Vous ne devez pas effacer ou mettre #
|
||||
# comment any section nor option. # en commentaire une section ou option.#
|
||||
# # #
|
||||
# Each option is preceded by a # Chaque option est précédée par un #
|
||||
# comment which explains its meaning. # commentaire qui explique sa fonction.#
|
||||
# # #
|
||||
##############################################################################
|
||||
|
||||
|
||||
|
||||
[MOUSE] # [SOURIS]
|
||||
|
||||
; The sensitivity of the mouse can | La sensibilité de la souris peut
|
||||
; take values from 1 to 64. The | prendre des valeurs de 1 à 64. Plus
|
||||
; smaller values, the faster. | les valeurs sont petites, plus c'est
|
||||
; | rapide.
|
||||
X_sensitivity = 1 ; (default 3)
|
||||
Y_sensitivity = 1 ; (default 3)
|
||||
|
||||
; Due to the fact that those stupid | A cause du fait que ces imbéciles de
|
||||
; mouse drivers' makers don't care | programmeurs de gestionnaires de
|
||||
; if the mouse moves by steps of 2, | souris se fichent que votre souris se
|
||||
; 4 or even 8 pixels, we have to | deplace par pas de 2, 4 ou même 8
|
||||
; stretch the virtual area of the | pixels, nous devons élargir la zone
|
||||
; mouse and divide coordinates to | virtuelle de la souris et diviser les
|
||||
; get a one-pixel step motion. | coordonnées pour obtenir un pas de 1.
|
||||
; (Warning: the mouse movement can | (Attention: le déplacement de la
|
||||
; be correct in some video modes | souris peut être correct dans certains
|
||||
; but not in others... But all the | modes vidéos mais pas dans d'autres...
|
||||
; "Modes X" should behave the same | Mais tout les Modes X devraient se
|
||||
; way, so you won't have to test | comporter de la même manière, donc
|
||||
; them all). | vous n'aurez pas à tous les tester.
|
||||
; A correction factor of 0 means | Un facteur de correction de 0 signifie
|
||||
; that you are very lucky because | que vous avez de la chace car votre
|
||||
; your driver doesn't need any | driver n'a pas besoin de correction.
|
||||
; correction. If you set the | Si vous définissez le facteur de
|
||||
; correction factor to 1, it means | correction à 1, cela signifie que
|
||||
; that your mouse moves by steps of | votre souris se déplace par pas de 2
|
||||
; 2 pixels; 2 for 4; 3 for 8, etc...| pixels; 2 pour 4; 3 pour 8, etc...
|
||||
; If you want to use GrafX2 in a | Si vous désirez lancer GrafX2 dans une
|
||||
; Win95 window, you should turn | fenêtre Windows95, vous devriez passer
|
||||
; these values to 0 (and increase X | ces valeurs à 0 (et augmenter les sen-
|
||||
; and Y sensitivities above). | sibilités X et Y définies plus haut).
|
||||
X_correction_factor = 0 ; (default 0)
|
||||
Y_correction_factor = 0 ; (default 0)
|
||||
|
||||
; Aspect of the main cursor (cross) | Aspect du curseur principal (croix)
|
||||
; 1: Solid | 1: Solide
|
||||
; 2: Transparent | 2: Transparent
|
||||
; 3: Thin (solid) | 3: Fin (solide)
|
||||
Cursor_aspect = 1 ; (default 1)
|
||||
|
||||
|
||||
|
||||
[MENU] # [MENU]
|
||||
|
||||
; Colors of the menus (the black | Couleurs des menus (la couleur noire
|
||||
; and the white colors cannot be | et la couleur blanche ne peuvent pas
|
||||
; modified). | être modifiées).
|
||||
; Values are in {Red,Green,Blue} | Les valeurs sont dans l'ordre {Rouge,
|
||||
; order and are between 0 and 63. | Vert,Bleu} et vont de 0 à 63.
|
||||
Light_color = 42,42,42 ; (default 42,42,42)
|
||||
Dark_color = 27,27,27 ; (default 27,27,27)
|
||||
;
|
||||
; Light_color = 24,25,30 ; \_ Nightmare
|
||||
; Dark_color = 13,14,19 ; /
|
||||
;
|
||||
; Light_color = 10,45,28 ; \_ Forest
|
||||
; Dark_color = 5,27,12 ; /
|
||||
;
|
||||
; Light_color = 48,41,26 ; \_ Gold
|
||||
; Dark_color = 26,22,15 ; /
|
||||
;
|
||||
; Light_color = 10,40,55 ; \_ Oceanic
|
||||
; Dark_color = 10,20,32 ; /
|
||||
|
||||
; Aspect ratio and size of the | Proportion des menus et de la barre
|
||||
; menus and the tool-bar. | d'outils.
|
||||
; Possible values: | Valeurs possibles:
|
||||
; 0: Do not adapt (pixels are not | 0: Ne pas adapter (les pixels ne sont
|
||||
; stretched) | pas étirés)
|
||||
; 1: Adapt the menus and the tool- | 1: Adapter les menus et la barre
|
||||
; bar according to the resolution| d'outils suivant la résolution
|
||||
; 2: Slightly adapt the ratio of | 2: Adapter légèrement les proportions
|
||||
; the menus and tool-bar | des menus et de la barre d'outils
|
||||
Menu_ratio = 1 ; (default 1)
|
||||
|
||||
; Font: | Police de caractères (fonte):
|
||||
; 1: Classic | 1: Classique
|
||||
; 2: Fun | 2: Fun
|
||||
Font = 1 ; (default 1)
|
||||
|
||||
|
||||
|
||||
[FILE_SELECTOR] # [SELECTEUR_DE_FICHIERS]
|
||||
|
||||
; Show special files and | Afficher les fichiers et répertoires
|
||||
; directories (values are 'yes' or | spéciaux (les valeurs sont 'yes' ou
|
||||
; 'no'). | 'no').
|
||||
Show_hidden_files = no ; (default 'no')
|
||||
Show_hidden_directories = no ; (default 'no')
|
||||
Show_system_directories = no ; (default 'no')
|
||||
|
||||
; Delay before displaying a preview | Délai avant d'afficher une preview
|
||||
; in file-selectors (in 18.2th of | dans les sélecteurs de fichiers (en
|
||||
; second). Possible values range | 18.2èmes de seconde) Les valeurs
|
||||
; from 1 to 256. | possibles vont de 1 à 256.
|
||||
Preview_delay = 8 ; (default 8)
|
||||
|
||||
; Maximize the preview of the | Maximiser la preview des images pour
|
||||
; pictures so that it is as big as | qu'elle soit aussi grande que
|
||||
; possible. If you're not in the | possible.
|
||||
; same resolution as the picture's | Si vous n'êtes pas dans la même réso-
|
||||
; one, it can try to correct the | lution que celle de l'image, cela peut
|
||||
; aspect ratio, but if the picture | essayer de corriger les proportions,
|
||||
; does not fill the whole screen, | mais si l'image ne prend pas tout
|
||||
; it can be worse. | l'écran, cela peut être pire.
|
||||
Maximize_preview = no ; (default 'no')
|
||||
|
||||
; This option is used to place the | Cette option est utilisée pour placer
|
||||
; selection bar on a filename by | la barre de sélection sur un nom de
|
||||
; typing its first letters. | fichier en tapant ses 1ères lettres.
|
||||
; For example, if you want to find | Par exemple, si vous voulez trouver le
|
||||
; the "PICTURE.PKM" in a directory | fichier "PICTURE.PKM" dans un réper-
|
||||
; that also contains "PALETTE.PAL", | toire contenant également le fichier
|
||||
; you'll just have to type P and I. | "PALETTE.PAL", vous n'aurez qu'à taper
|
||||
; The different values of "FFF" | P puis I.
|
||||
; indicate if you want to find the | Les different valeurs de "FFF"
|
||||
; name in both files and directories| indiquent si vous voulez trouvez le nom
|
||||
; or just in only one of these: | dans les fichiers ET les répertoires ou
|
||||
; 0: files and directories | simplement dans l'un OU l'autre.
|
||||
; 1: files only | 0: fichiers et répertoires
|
||||
; 2: directories only | 1: fichiers seulement
|
||||
; | 2: répertoires seulement
|
||||
Find_file_fast = 0 ; (default 0)
|
||||
|
||||
|
||||
[LOADING] # [CHARGEMENT]
|
||||
|
||||
; Automatically set the resolution | Passer automatiquement dans la bonne
|
||||
; when loading a picture. | résolution lors du chargement d'une
|
||||
; You should set this value to | image.
|
||||
; 'yes' after disabling the video | Vous devriez définir cette option à
|
||||
; modes that are not supported by | 'yes' après avoir inhibé les modes
|
||||
; your video card or monitor. | vidéo qui ne sont pas supportés par
|
||||
; | votre matériel.
|
||||
Auto_set_resolution = no ; (default 'no')
|
||||
|
||||
; If the variable above is set to | Si la variable ci-dessus est à 'yes',
|
||||
; 'yes', this one tells if you want | celle-ci indique si vous voulez
|
||||
; to set the resolution according | définir la résolution suivant:
|
||||
; to: | 1: les dimensions de "l'écran
|
||||
; 1: the internal "original screen" | d'origine" internes à l'image
|
||||
; dimensions of the picture | 2: les véritables dimensions de
|
||||
; 2: the actual dimensions of the | l'image
|
||||
; picture |
|
||||
Set_resolution_according_to = 1 ; (default 1)
|
||||
|
||||
; If you load a picture with a | Si vous chargez une image ayant une
|
||||
; palette of less than 256 colors, | palette de moins de 256 couleurs,
|
||||
; this option defines if you want | cette option indique si vous souhaitez
|
||||
; to clear the palette or to keep | effacer la palette ou bien conserver
|
||||
; the colors of the previous | les couleurs de l'image précédente qui
|
||||
; picture that are over the number | se situent au-delà du nombre de la
|
||||
; of colors of the new picture. | nouvelle image.
|
||||
; For example, if you load a | Par exemple, si vous chargez une image
|
||||
; 32-color picture, the colors 32 | de 32 couleurs, les couleurs 32 à 255
|
||||
; to 255 will be set to black if | seront passées en noir si cette option
|
||||
; this option is set to 'yes', or | est à 'yes', ou bien elles resteront
|
||||
; they will be kept unchanged if | inchangées si elle est à 'no'.
|
||||
; this option is set to 'no'. |
|
||||
Clear_palette = yes ; (default 'yes')
|
||||
|
||||
|
||||
[MISCELLANEOUS] # [DIVERS]
|
||||
|
||||
; Draw the limits of the picture. | Afficher les limites de l'image
|
||||
Draw_limits = yes ; (default 'yes')
|
||||
|
||||
; Adjust the brush grabbing in | Ajuster la capture de brosse en mode
|
||||
; "grid" mode. | "grille".
|
||||
Adjust_brush_pick = yes ; (default 'yes')
|
||||
|
||||
; Coordinates: | Coordonnées:
|
||||
; 1: Relative | 1: Relatives
|
||||
; 2: Absolute | 2: Absolues
|
||||
Coordinates = 1 ; (default 1)
|
||||
|
||||
; Create a backup file when saving. | Créer un fichier backup lors des
|
||||
; | sauvegardes.
|
||||
Backup = no ; (default 'no')
|
||||
|
||||
; Number of pages stored in memory | Nombre de pages stockées en mémoire
|
||||
; for "undoing". | destinées à annuler les dernières
|
||||
; Values are between 1 and 99. | modifications. Valeurs entre 1 et 99.
|
||||
Undo_pages = 1 ; (default 4)
|
||||
|
||||
; Speed of the scroll-bars (in VBLs | Vitesse des barre de défilement (en
|
||||
; waited) while clicking with the | VBLs attendus) lorsque l'un des
|
||||
; left or right button of the mouse.| boutons de la souris est enfoncé.
|
||||
; Values can be between 1 and 255. | Les valeurs sont comprises entre 1 et
|
||||
; The bigger values, the slower. | 255. Plus elles sont grandes, plus
|
||||
; | c'est lent.
|
||||
Gauges_scrolling_speed_Left = 10 ; (default 10)
|
||||
Gauges_scrolling_speed_Right = 3 ; (default 3)
|
||||
|
||||
; Automatically save the configu- | Enregistre automatiquement la configu-
|
||||
; ration when exiting the program. | ration lorsqu'on quitte le programme.
|
||||
Auto_save = yes ; (default 'yes')
|
||||
|
||||
; Maximum number of vertices used | Nombre maximum de vertex utilisés dans
|
||||
; in filled polygons and polyforms, | les polygônes et polyformes pleins, et
|
||||
; and lasso. Possible values range | le lasso. Les valeurs possibles vont
|
||||
; from 2 to 16384. | de 2 à 16384.
|
||||
; Each vertex takes 4 bytes. | Chaque vertex prend 4 octets.
|
||||
Vertices_per_polygon = 1024 ; (default 1024)
|
||||
|
||||
; Automatically zoom into the | Zoomer automatiquement la zone pointée
|
||||
; pointed area when you press the | par la souris lorsque vous appuyez sur
|
||||
; short-key of the Magnifier button | la touche de raccourci de la loupe.
|
||||
; while being above the picture. |
|
||||
Fast_zoom = yes ; (default 'yes')
|
||||
|
||||
; Separate the colors in the tool- | Séparer les couleurs dans la barre
|
||||
; bar by a black squaring. | d'outils par un quadrillage noir.
|
||||
Separate_colors = no ; (default 'no')
|
||||
|
||||
; Initial value of the feedback for | Valeur initiale du "feedback" pour les
|
||||
; the drawing modes (cf. docs). | modes de dessin (cf. docs).
|
||||
FX_feedback = yes ; (default 'yes')
|
||||
|
||||
; When you reduce the palette or | Si vous réduisez la palette ou "zappez"
|
||||
; "zap" some colors out of it, it is| quelques couleurs, il est possible
|
||||
; possible that there are not enough| qu'il ne reste pas assez de couleurs
|
||||
; colors left to draw the menus. | pour afficher les menus. Mettre cette
|
||||
; Switching the following variable | variable à 'yes' ramènera automatiquent
|
||||
; on will bring back the colors of | les couleurs du menu s'il reste moins
|
||||
; the menu if there are less than 4 | de 4 couleurs après une "réduction" ou
|
||||
; colors left after "reducing" or | un "zapping".
|
||||
; "zapping". |
|
||||
Safety_colors = yes ; (default 'yes')
|
||||
|
||||
; Display a message at startup | Afficher un message au démarrage
|
||||
; telling the version number of the | indiquant le numéro de version du
|
||||
; program. | programme.
|
||||
Opening_message = yes ; (default 'yes')
|
||||
|
||||
; Take the Stencil into account when| Prendre le Stencil en compte lorsqu'on
|
||||
; clearing the image. | efface l'image.
|
||||
Clear_with_stencil = yes ; (default 'yes')
|
||||
|
||||
; Directly set the discontinuous | Passer automatiquement en mode de
|
||||
; freehand drawing mode after brush | dessin discontinu après la prise d'une
|
||||
; grabbing. | brosse.
|
||||
Auto_discontinuous = no ; (default 'no')
|
||||
|
||||
; Save the screen dimensions in GIF | Sauver les dimensions de l'écran dans
|
||||
; files. If you want to read these | les fichiers GIF. Si vous voulez lire
|
||||
; files with Photoshop or Alchemy, | ces fichiers avec Photoshop ou Alchemy,
|
||||
; and maybe some other programs, you| et peut-être d'autres programmes, vous
|
||||
; must set this option to 'no'. | devez mettre cette option à 'no'.
|
||||
Save_screen_size_in_GIF = no ; (default 'no')
|
||||
|
||||
; Automaticaly count the number of | Compter automatiquement le nombre de
|
||||
; different colors used when opening| couleurs différentes utilisées lors de
|
||||
; the palette editor window. (Set it| d'ouverture de la fenêtre d'édition de
|
||||
; to 'no' if you have a slow PC or | la palette. (Mettez-le à 'no' si vous
|
||||
; if you edit huge pictures) | avez un PC lent ou bien si vous éditez
|
||||
; | d'énormes images).
|
||||
Auto_nb_colors_used = yes ; (default 'yes')
|
||||
|
||||
; Default video mode at startup | Numéro du mode vidéo par défaut au
|
||||
; (see the list by running the | démarrage (voir la liste en lançant
|
||||
; program with argument "/?". | le programme avec l'option "/?".
|
||||
Default_video_mode = window ; (default 'window')
|
||||
|
||||
; Window dimensions. The program | Dimensions de la fenêtre en mode
|
||||
; remembers the last window size. | fenêtré.
|
||||
Default_window_size = 640,480 ; (default '640,480')
|
||||
83
graph.c
83
graph.c
@ -82,7 +82,9 @@ void Mettre_Ecran_A_Jour(short X, short Y, short Largeur, short Hauteur)
|
||||
if(Y_effectif + Hauteur <= Menu_Ordonnee) H_effectif = Hauteur;
|
||||
else H_effectif = Menu_Ordonnee - Y_effectif;
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,X_effectif,Y_effectif,L_effectif,H_effectif);
|
||||
#endif
|
||||
|
||||
// Et ensuite dans la partie zoomée
|
||||
if(Loupe_Mode)
|
||||
@ -108,7 +110,9 @@ void Mettre_Ecran_A_Jour(short X, short Y, short Largeur, short Hauteur)
|
||||
r.h=r.w=3;
|
||||
SDL_FillRect(Ecran_SDL,&r,3);
|
||||
*/
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,X_effectif,Y_effectif,L_effectif,H_effectif);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
@ -325,7 +329,9 @@ void Afficher_palette_du_menu_en_evitant_la_fenetre(byte * Table)
|
||||
}
|
||||
}
|
||||
}
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,(LARGEUR_MENU+1)*Menu_Facteur_X,Menu_Ordonnee*Menu_Facteur_Y,Largeur,Hauteur);
|
||||
#endif
|
||||
// SDL_UpdateRect(Ecran_SDL,LARGEUR_MENU*Menu_Facteur_X,Menu_Ordonnee,Largeur_ecran-(LARGEUR_MENU*Menu_Facteur_X),(HAUTEUR_MENU-9)*Menu_Facteur_Y);
|
||||
}
|
||||
|
||||
@ -907,8 +913,9 @@ void Afficher_limites_de_l_image(void)
|
||||
for (Pos=Debut;Pos<=Fin;Pos++)
|
||||
Pixel_Preview(Principal_Largeur_image,Pos,((Pos+Principal_Hauteur_image)&1)?CM_Blanc:CM_Noir);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Principal_Largeur_image,Debut,1,Fin-Debut + 1);
|
||||
|
||||
#endif
|
||||
// On restaure la bonne valeur des limites
|
||||
Limite_Droite_Zoom=Ancienne_Limite_Zoom;
|
||||
}
|
||||
@ -927,7 +934,9 @@ void Afficher_limites_de_l_image(void)
|
||||
for (Pos=Debut;Pos<=Fin;Pos++)
|
||||
Pixel_Preview(Pos,Principal_Hauteur_image,((Pos+Principal_Hauteur_image)&1)?CM_Blanc:CM_Noir);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Debut,Principal_Hauteur_image,Fin-Debut + 1,1);
|
||||
#endif
|
||||
|
||||
// On restaure la bonne valeur des limites
|
||||
Limite_Bas_Zoom=Ancienne_Limite_Zoom;
|
||||
@ -1216,7 +1225,9 @@ void Afficher_foreback(void)
|
||||
Block((LARGEUR_MENU-17)*Menu_Facteur_X,Menu_Ordonnee+Menu_Facteur_Y,Menu_Facteur_X<<4,Menu_Facteur_Y*7,Back_color);
|
||||
Block((LARGEUR_MENU-13)*Menu_Facteur_X,Menu_Ordonnee+(Menu_Facteur_Y<<1),Menu_Facteur_X<<3,Menu_Facteur_Y*5,Fore_color);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,(LARGEUR_MENU-17)*Menu_Facteur_X,Menu_Ordonnee+Menu_Facteur_Y,Menu_Facteur_X<<4,Menu_Facteur_Y*7);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
@ -1250,7 +1261,9 @@ void Encadrer_couleur_menu(byte Couleur)
|
||||
Block(Debut_X,Debut_Y,Menu_Taille_couleur*Menu_Facteur_X,
|
||||
Menu_Facteur_Y<<2,Fore_color);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Debut_X,Debut_Y,Menu_Taille_couleur*Menu_Facteur_X,Menu_Facteur_Y*4); // TODO On met à jour toute la palette... peut mieux faire
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -1280,7 +1293,9 @@ void Encadrer_couleur_menu(byte Couleur)
|
||||
Menu_Facteur_X,Menu_Facteur_Y,
|
||||
((Indice+Fin_Y)&1)?CM_Blanc:CM_Noir);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Debut_X*Menu_Facteur_X,Debut_Y*Menu_Facteur_X,Menu_Taille_couleur*Menu_Facteur_X,Menu_Ordonnee+Menu_Facteur_Y*4);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1312,7 +1327,9 @@ void Afficher_palette_du_menu(void)
|
||||
Couleur_debut_palette+Couleur);
|
||||
|
||||
Encadrer_couleur_menu(CM_Blanc);
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,LARGEUR_MENU*Menu_Facteur_X,Menu_Ordonnee,Largeur_ecran-(LARGEUR_MENU*Menu_Facteur_X),(HAUTEUR_MENU-9)*Menu_Facteur_Y);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
@ -1377,7 +1394,9 @@ void Afficher_barre_de_split(void)
|
||||
Block(Principal_X_Zoom-(Menu_Facteur_X<<1),0,
|
||||
Menu_Facteur_X,Menu_Facteur_Y,CM_Clair);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Principal_Split,0,LARGEUR_BARRE_SPLIT*Menu_Facteur_X,Menu_Ordonnee); // On réaffiche toute la partie à gauche du split, ce qui permet d'effacer son ancienne position
|
||||
#endif
|
||||
}
|
||||
|
||||
// -- Afficher tout le menu --
|
||||
@ -1423,7 +1442,9 @@ void Afficher_menu(void)
|
||||
}
|
||||
Print_nom_fichier();
|
||||
}
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,0,Menu_Ordonnee,Largeur_ecran,HAUTEUR_MENU*Menu_Facteur_Y); // on met toute la largur à jour, ça inclut la palette et la zone d'étant avec le nom du fichier
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
@ -1477,7 +1498,9 @@ void Print_general(short X,short Y,char * Chaine,byte Couleur_texte,byte Couleur
|
||||
for (Repeat_Menu_Facteur_Y=0;Repeat_Menu_Facteur_Y<Menu_Facteur_Y;Repeat_Menu_Facteur_Y++)
|
||||
Afficher_ligne(X,Reel_Y++,Largeur,Buffer_de_ligne_horizontale);
|
||||
}
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,X,Y,Largeur,8*Menu_Facteur_Y); // TODO: pas utile dans Print_Dans_Fenetre, donc voir ou on en a vraiment besoin...
|
||||
#endif
|
||||
}
|
||||
|
||||
// -- Afficher un caractère dans une fenêtre --
|
||||
@ -2084,9 +2107,11 @@ void Afficher_pinceau(short X,short Y,byte Couleur,byte Preview)
|
||||
Smear_Brosse[Position]=Couleur_temporaire;
|
||||
}
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Max(Debut_X,0),Max(Debut_Y,0),
|
||||
Fin_Compteur_X,Fin_Compteur_Y
|
||||
);
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
@ -2191,9 +2216,11 @@ void Afficher_pinceau(short X,short Y,byte Couleur,byte Preview)
|
||||
}
|
||||
}
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Debut_X,Debut_Y,
|
||||
Fin_Compteur_X,Fin_Compteur_Y
|
||||
);
|
||||
#endif
|
||||
|
||||
Smear_Min_X=Debut_Compteur_X;
|
||||
Smear_Min_Y=Debut_Compteur_Y;
|
||||
@ -2365,7 +2392,9 @@ void Ligne_horizontale_XOR_Zoom(short Pos_X, short Pos_Y, short Largeur)
|
||||
for (Indice=Pos_Y_reelle; Indice<Pos_Y_Fin; Indice++)
|
||||
Ligne_horizontale_XOR(Pos_X_reelle,Indice,Largeur_reelle);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Pos_X_reelle,Pos_Y_reelle,Largeur_reelle,Pos_Y_Fin-Pos_Y_reelle);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@ -2381,7 +2410,9 @@ void Ligne_verticale_XOR_Zoom(short Pos_X, short Pos_Y, short Hauteur)
|
||||
for (Indice=Pos_Y_reelle; Indice<Pos_Y_Fin; Indice++)
|
||||
Ligne_horizontale_XOR(Pos_X_reelle,Indice,Loupe_Facteur);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Pos_X_reelle,Pos_Y_reelle,Loupe_Facteur,Pos_Y_Fin-Pos_Y_reelle);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@ -2437,7 +2468,9 @@ void Afficher_curseur(void)
|
||||
if (Fin_Y<4)
|
||||
Ligne_verticale_XOR (Mouse_X,Mouse_Y+3,4-Fin_Y);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Mouse_X+Debut_X-6,Mouse_Y+Debut_Y-6,12-Fin_X,12-Fin_Y);
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -2460,7 +2493,9 @@ void Afficher_curseur(void)
|
||||
if (Pos_X >= Largeur_ecran) break;
|
||||
}
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Max(Debut_X,0),Max(Debut_Y,0),Compteur_X,Compteur_Y);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
break;
|
||||
@ -2526,7 +2561,9 @@ void Afficher_curseur(void)
|
||||
Pixel(Pos_X,Pos_Y,Couleur);
|
||||
}
|
||||
}
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Debut_X,Debut_Y,16,16);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
break;
|
||||
@ -2551,7 +2588,9 @@ void Afficher_curseur(void)
|
||||
Pixel(Pos_X,Pos_Y,Couleur);
|
||||
}
|
||||
}
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Max(Debut_X,0),Max(Debut_Y,0),16,16);
|
||||
#endif
|
||||
break;
|
||||
case FORME_CURSEUR_CIBLE_XOR :
|
||||
Pos_X=Pinceau_X-Principal_Decalage_X;
|
||||
@ -2561,13 +2600,17 @@ void Afficher_curseur(void)
|
||||
if ((Pos_Y<Menu_Ordonnee) && (Pinceau_Y>=Limite_Haut))
|
||||
{
|
||||
Ligne_horizontale_XOR(0,Pinceau_Y-Principal_Decalage_Y,Compteur_X);
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,0,Pinceau_Y-Principal_Decalage_Y,Compteur_X,1);
|
||||
#endif
|
||||
}
|
||||
|
||||
if ((Pos_X<Compteur_X) && (Pinceau_X>=Limite_Gauche))
|
||||
{
|
||||
Ligne_verticale_XOR(Pinceau_X-Principal_Decalage_X,0,Menu_Ordonnee);
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Pinceau_X-Principal_Decalage_X,0,1,Menu_Ordonnee);
|
||||
#endif
|
||||
}
|
||||
|
||||
if (Loupe_Mode)
|
||||
@ -2618,7 +2661,9 @@ void Afficher_curseur(void)
|
||||
Ligne_verticale_XOR( Fin_X,Debut_Y+1,Loupe_Hauteur-2);
|
||||
Ligne_horizontale_XOR(Debut_X, Fin_Y,Loupe_Largeur);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Debut_X,Debut_Y,Fin_X+1-Debut_X,Fin_Y+1-Debut_Y);
|
||||
#endif
|
||||
|
||||
break;
|
||||
default: //case FORME_CURSEUR_ROTATE_XOR :
|
||||
@ -2735,7 +2780,9 @@ void Effacer_curseur(void)
|
||||
if (Fin_Y<4)
|
||||
Ligne_verticale_XOR (Mouse_X,Mouse_Y+3,4-Fin_Y);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Mouse_X+Debut_X-6,Mouse_Y+Debut_Y-6,12-Fin_X,12-Fin_Y);
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -2754,7 +2801,9 @@ void Effacer_curseur(void)
|
||||
}
|
||||
}
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Max(Debut_X,0),Max(Debut_Y,0),Pos_X-Debut_X,Pos_Y-Debut_Y);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
if (!Cacher_pinceau)
|
||||
@ -2802,7 +2851,9 @@ void Effacer_curseur(void)
|
||||
if (Mouse_Y<Menu_Ordonnee-6)
|
||||
Ligne_horizontale_XOR(Debut_X+Mouse_X-1,Mouse_Y+6,3-(Debut_X+Fin_X));
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Debut_X,Debut_Y,Fin_X-Debut_X,Fin_Y-Debut_Y);
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -2815,7 +2866,9 @@ void Effacer_curseur(void)
|
||||
if ( (Pos_X>=0) && (Pos_X<Largeur_ecran) && (Pos_Y>=0) && (Pos_Y<Hauteur_ecran) )
|
||||
Pixel(Pos_X,Pos_Y,FOND_CURSEUR[Compteur_Y][Compteur_X]);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Max(Debut_X,0),Max(Debut_Y,0),16,16);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
if (!Cacher_pinceau)
|
||||
@ -2835,7 +2888,9 @@ void Effacer_curseur(void)
|
||||
if ( (Pos_X<Largeur_ecran) && (Pos_Y<Hauteur_ecran)
|
||||
&& (Pos_X>=0) && (Pos_Y>=0) )
|
||||
Pixel(Pos_X,Pos_Y,FOND_CURSEUR[Compteur_Y][Compteur_X]);
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Max(Debut_X,0),Max(Debut_Y,0),16,16);
|
||||
#endif
|
||||
break;
|
||||
|
||||
case FORME_CURSEUR_CIBLE_XOR :
|
||||
@ -2846,13 +2901,17 @@ void Effacer_curseur(void)
|
||||
if ((Pos_Y<Menu_Ordonnee) && (Pinceau_Y>=Limite_Haut))
|
||||
{
|
||||
Ligne_horizontale_XOR(0,Pinceau_Y-Principal_Decalage_Y,Compteur_X);
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,0,Pinceau_Y-Principal_Decalage_Y,Compteur_X,1);
|
||||
#endif
|
||||
}
|
||||
|
||||
if ((Pos_X<Compteur_X) && (Pinceau_X>=Limite_Gauche))
|
||||
{
|
||||
Ligne_verticale_XOR(Pinceau_X-Principal_Decalage_X,0,Menu_Ordonnee);
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Pinceau_X-Principal_Decalage_X,0,1,Menu_Ordonnee);
|
||||
#endif
|
||||
}
|
||||
|
||||
if (Loupe_Mode)
|
||||
@ -2906,7 +2965,9 @@ void Effacer_curseur(void)
|
||||
Ligne_verticale_XOR( Fin_X,Debut_Y+1,Loupe_Hauteur-2);
|
||||
Ligne_horizontale_XOR(Debut_X, Fin_Y,Loupe_Largeur);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Debut_X,Debut_Y,Fin_X+1-Debut_X,Fin_Y+1-Debut_Y);
|
||||
#endif
|
||||
|
||||
break;
|
||||
default: //case FORME_CURSEUR_ROTATE_XOR :
|
||||
@ -2992,7 +3053,9 @@ byte Demande_de_confirmation(char * Message)
|
||||
Fenetre_Definir_bouton_normal((Largeur_de_la_fenetre/3)-20 ,37,40,14,"Yes",1,1,SDLK_y); // 1
|
||||
Fenetre_Definir_bouton_normal(((Largeur_de_la_fenetre<<1)/3)-20,37,40,14,"No" ,1,1,SDLK_n); // 2
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X,Fenetre_Pos_Y,Menu_Facteur_X*Largeur_de_la_fenetre,Menu_Facteur_Y*60);
|
||||
#endif
|
||||
|
||||
Afficher_curseur();
|
||||
|
||||
@ -3026,7 +3089,9 @@ void Warning_message(char * Message)
|
||||
|
||||
Print_dans_fenetre((Largeur_de_la_fenetre>>1)-(strlen(Message)<<2),20,Message,CM_Noir,CM_Clair);
|
||||
Fenetre_Definir_bouton_normal((Largeur_de_la_fenetre>>1)-20 ,37,40,14,"OK",1,1,SDLK_RETURN); // 1
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X,Fenetre_Pos_Y,Menu_Facteur_X*Largeur_de_la_fenetre,Menu_Facteur_Y*60);
|
||||
#endif
|
||||
Afficher_curseur();
|
||||
|
||||
do
|
||||
@ -3115,7 +3180,9 @@ void Afficher_ecran(void)
|
||||
// ---/\/\/\ Affichage des limites /\/\/\---
|
||||
if (Config.Afficher_limites_image)
|
||||
Afficher_limites_de_l_image();
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,0,0,Largeur_ecran,Menu_Ordonnee); // TODO On peut faire plus fin, en évitant de mettre à jour la partie à droite du split quand on est en mode loupe. Mais c'est pas vraiment intéressant ?
|
||||
#endif
|
||||
}
|
||||
|
||||
// -- Redessiner le sprite d'un bouton dans le menu --
|
||||
@ -3135,9 +3202,11 @@ void Afficher_sprite_dans_menu(int Numero_bouton,int Numero_sprite)
|
||||
Pixel_dans_menu(Pos_menu_X,Pos_menu_Y,Couleur);
|
||||
BLOCK_MENU[Pos_menu_Y][Pos_menu_X]=Couleur;
|
||||
}
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Menu_Facteur_X*(Bouton[Numero_bouton].Decalage_X+1),
|
||||
(Bouton[Numero_bouton].Decalage_Y+1)*Menu_Facteur_Y+Menu_Ordonnee,
|
||||
LARGEUR_SPRITE_MENU*Menu_Facteur_X,HAUTEUR_SPRITE_MENU*Menu_Facteur_Y);
|
||||
#endif
|
||||
}
|
||||
|
||||
// -- Redessiner la forme du pinceau dans le menu --
|
||||
@ -3197,7 +3266,9 @@ void Afficher_pinceau_dans_menu(void)
|
||||
BLOCK_MENU[Pos_menu_Y][Pos_menu_X]=Couleur;
|
||||
}
|
||||
}
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,0,Menu_Ordonnee,LARGEUR_SPRITE_MENU*Menu_Facteur_X+3,HAUTEUR_SPRITE_MENU*Menu_Facteur_Y+3);
|
||||
#endif
|
||||
}
|
||||
|
||||
// -- Dessiner un pinceau prédéfini dans la fenêtre --
|
||||
@ -3217,10 +3288,12 @@ void Afficher_pinceau_dans_fenetre(word X,word Y,int Numero)
|
||||
for (Pos_fenetre_X=Orig_X,Pos_X=0; Pos_X<Pinceau_predefini_Largeur[Numero]; Pos_fenetre_X++,Pos_X++)
|
||||
Pixel_dans_fenetre(Pos_fenetre_X,Pos_fenetre_Y,(SPRITE_PINCEAU[Numero][Pos_Y][Pos_X])?CM_Noir:CM_Clair);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL, ToWinX(Orig_X), ToWinY(Orig_Y),
|
||||
ToWinL(Pinceau_predefini_Largeur[Numero]),
|
||||
ToWinH(Pinceau_predefini_Hauteur[Numero])
|
||||
);
|
||||
#endif
|
||||
}
|
||||
|
||||
// -- Dessiner des zigouigouis --
|
||||
@ -3263,7 +3336,9 @@ void Bloc_degrade_dans_fenetre(word Pos_X,word Pos_Y,word Debut_block,word Fin_b
|
||||
for (Indice=Debut_Y;Indice<Fin_Y;Indice++,Ligne_en_cours++)
|
||||
Block(Debut_X,Indice,Largeur_ligne,1,Debut_block+(Nb_couleurs*Ligne_en_cours)/Total_lignes);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,ToWinX(Pos_X),ToWinY(Pos_Y),ToWinL(16),ToWinH(64));
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@ -3310,7 +3385,9 @@ void Fenetre_Afficher_sprite_drive(word Pos_X,word Pos_Y,byte Type)
|
||||
for (j=0; j<HAUTEUR_SPRITE_DRIVE; j++)
|
||||
for (i=0; i<LARGEUR_SPRITE_DRIVE; i++)
|
||||
Pixel_dans_fenetre(Pos_X+i,Pos_Y+j,SPRITE_DRIVE[Type][j][i]);
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,ToWinX(Pos_X),ToWinY(Pos_Y),ToWinL(LARGEUR_SPRITE_DRIVE),ToWinH(HAUTEUR_SPRITE_DRIVE));
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@ -4110,7 +4187,9 @@ void Remplir(byte Couleur_de_remplissage)
|
||||
// par l'utilisation de "Afficher_pixel()", et que les autres... eh bein
|
||||
// on n'y a jamais touché à l'écran les autres: ils sont donc corrects.
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,0,0,0,0);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
@ -5681,7 +5760,9 @@ void Etirer_brosse_preview(short X1, short Y1, short X2, short Y2)
|
||||
Pos_Y_src+=Delta_Y;
|
||||
}
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Pos_X_dest_Initiale,Pos_Y_dest_Initiale,Largeur_dest,Hauteur_dest);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -331,10 +331,12 @@ void Dessiner_preview_palette(void)
|
||||
Preview_Pos_Y+(((Indice&15)*5)*Menu_Facteur_Y),
|
||||
5*Menu_Facteur_X,5*Menu_Facteur_Y,Indice);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,
|
||||
Preview_Pos_X*Menu_Facteur_X,
|
||||
Preview_Pos_Y*Menu_Facteur_Y,
|
||||
5*Menu_Facteur_X*256,5*Menu_Facteur_Y*256);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
||||
14
main.c
14
main.c
@ -55,6 +55,10 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef __macosx__
|
||||
#import <corefoundation/corefoundation.h>
|
||||
#import <sys/param.h>
|
||||
#endif
|
||||
|
||||
byte Ancien_nb_lignes; // Ancien nombre de lignes de l'écran
|
||||
|
||||
@ -262,7 +266,15 @@ void Initialisation_du_programme(int argc,char * argv[])
|
||||
Initialiser_la_table_precalculee_des_distances_de_couleur();
|
||||
|
||||
// On détermine dès le départ où se trouve le fichier:
|
||||
// On détermine dès le départ où se trouve le fichier:
|
||||
#ifdef __macosx__
|
||||
CFURLRef url = CFBundleCopyBundleURL(CFBundleGetMainBundle());
|
||||
CFURLGetFileSystemRepresentation(url, true, (UInt8 *) Repertoire_du_programme, MAXPATHLEN);
|
||||
CFRelease(url);
|
||||
strcat(Repertoire_du_programme, "/Contents/Resources/");
|
||||
#else
|
||||
Chercher_repertoire_du_programme(argv[0]);
|
||||
#endif
|
||||
|
||||
// On détecte les lecteurs qui sont accessibles:
|
||||
Rechercher_drives();
|
||||
@ -335,7 +347,7 @@ void Initialisation_du_programme(int argc,char * argv[])
|
||||
SDL_Init(SDL_INIT_TIMER|SDL_INIT_VIDEO);
|
||||
SDL_EnableKeyRepeat(250, 32);
|
||||
SDL_EnableUNICODE(SDL_ENABLE);
|
||||
SDL_WM_SetCaption("GrafX2 beta 97.0% - USE AT YOUR OWN RISK","grafx2.gif");
|
||||
SDL_WM_SetCaption("GrafX2 beta "POURCENTAGE_VERSION" - USE AT YOUR OWN RISK","grafx2.gif");
|
||||
|
||||
// On initialise tous les modes vidéo
|
||||
Definition_des_modes_video();
|
||||
|
||||
23
moteur.c
23
moteur.c
@ -303,11 +303,13 @@ void Tracer_cadre_de_bouton_du_menu(byte Numero,byte Enfonce)
|
||||
BLOCK_MENU[Fin_Y-Pos_X][Fin_X]=Couleur_Bas_droite;
|
||||
}
|
||||
}
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,
|
||||
Debut_X*Menu_Facteur_X,
|
||||
Debut_Y*Menu_Facteur_Y + Menu_Ordonnee,
|
||||
(Fin_X+1-Debut_X)*Menu_Facteur_X,
|
||||
(Fin_Y+1-Debut_Y)*Menu_Facteur_Y);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@ -427,7 +429,9 @@ void Deplacer_Split(void)
|
||||
Ligne_verticale_XOR(Ancien_Split,0,Menu_Ordonnee);
|
||||
Ligne_verticale_XOR(Ancien_X_Zoom-1,0,Menu_Ordonnee);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Ancien_Split,0,abs(Ancien_Split-Ancien_X_Zoom)+1,Menu_Ordonnee);
|
||||
#endif
|
||||
|
||||
Ancien_Split=Principal_Split;
|
||||
Ancien_X_Zoom=Principal_X_Zoom;
|
||||
@ -436,7 +440,9 @@ void Deplacer_Split(void)
|
||||
Ligne_verticale_XOR(Principal_Split,0,Menu_Ordonnee);
|
||||
Ligne_verticale_XOR(Principal_X_Zoom-1,0,Menu_Ordonnee);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Principal_Split,0,abs(Principal_Split-Principal_X_Zoom)+1,Menu_Ordonnee);
|
||||
#endif
|
||||
|
||||
Afficher_curseur();
|
||||
}
|
||||
@ -1104,7 +1110,9 @@ void Fermer_fenetre(void)
|
||||
|
||||
// Restore de ce que la fenêtre cachait
|
||||
Restaure_fond(Fond_fenetre[Fenetre-1], Fenetre_Pos_X, Fenetre_Pos_Y, Fenetre_Largeur, Fenetre_Hauteur);
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X,Fenetre_Pos_Y,Fenetre_Largeur*Menu_Facteur_X,Fenetre_Hauteur*Menu_Facteur_Y);
|
||||
#endif
|
||||
|
||||
//Afficher_ecran();
|
||||
//Afficher_menu();
|
||||
@ -1153,14 +1161,18 @@ void Fenetre_Dessiner_bouton_normal(word Pos_X,word Pos_Y,word Largeur,word Haut
|
||||
void Fenetre_Enfoncer_bouton_normal(word Pos_X,word Pos_Y,word Largeur,word Hauteur)
|
||||
{
|
||||
Fenetre_Afficher_cadre_general(Pos_X,Pos_Y,Largeur,Hauteur,CM_Fonce,CM_Noir,CM_Fonce,CM_Fonce,CM_Noir);
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Pos_X, Pos_Y, Largeur, Hauteur);
|
||||
#endif
|
||||
}
|
||||
|
||||
// -- Bouton normal désenfoncé dans la fenêtre --
|
||||
void Fenetre_Desenfoncer_bouton_normal(word Pos_X,word Pos_Y,word Largeur,word Hauteur)
|
||||
{
|
||||
Fenetre_Afficher_cadre_bombe(Pos_X,Pos_Y,Largeur,Hauteur);
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+Pos_X*Menu_Facteur_X, Fenetre_Pos_Y+Pos_Y*Menu_Facteur_X, Largeur*Menu_Facteur_X, Hauteur*Menu_Facteur_Y);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@ -1190,7 +1202,9 @@ void Fenetre_Effacer_tags(void)
|
||||
Origine_Y=Fenetre_Pos_Y+(Fenetre_Liste_boutons_palette->Pos_Y+3)*Menu_Facteur_Y;
|
||||
for (Pos_X=0,Pos_fenetre_X=Origine_X;Pos_X<16;Pos_X++,Pos_fenetre_X+=(Menu_Facteur_X*10))
|
||||
Block(Pos_fenetre_X,Origine_Y,Menu_Facteur_X*3,Menu_Facteur_Y*80,CM_Clair);
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Origine_X,Origine_Y,ToWinL(160),ToWinH(80));
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@ -1254,7 +1268,9 @@ void Tagger_intervalle_palette(byte Debut,byte Fin)
|
||||
|
||||
}
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,ToWinX(Fenetre_Liste_boutons_palette->Pos_X+3),ToWinY(Fenetre_Liste_boutons_palette->Pos_Y+3),ToWinL(12*16),ToWinH(5*16));
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
@ -1292,9 +1308,11 @@ void Fenetre_Dessiner_jauge(struct Fenetre_Bouton_scroller * Enreg)
|
||||
Fenetre_Pos_Y+(Position_curseur_jauge*Menu_Facteur_Y),
|
||||
11*Menu_Facteur_X,Enreg->Hauteur_curseur*Menu_Facteur_Y,CM_Clair/*CM_Blanc*/);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+(Enreg->Pos_X*Menu_Facteur_X),
|
||||
Fenetre_Pos_Y+Enreg->Pos_Y*Menu_Facteur_Y,
|
||||
11*Menu_Facteur_X,(Enreg->Hauteur)*Menu_Facteur_Y);
|
||||
#endif
|
||||
}
|
||||
|
||||
void Fenetre_Dessiner_bouton_scroller(struct Fenetre_Bouton_scroller * Enreg)
|
||||
@ -1673,8 +1691,10 @@ void Deplacer_fenetre(short Dx, short Dy)
|
||||
Ligne_horizontale_XOR(Nouveau_X,Nouveau_Y+Hauteur-1,Largeur);
|
||||
Afficher_curseur();
|
||||
}
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Ancien_X,Ancien_Y,Largeur,Hauteur);
|
||||
SDL_UpdateRect(Ecran_SDL,Nouveau_X,Nouveau_Y,Largeur,Hauteur);
|
||||
#endif
|
||||
}
|
||||
|
||||
Effacer_curseur();
|
||||
@ -1708,12 +1728,13 @@ void Deplacer_fenetre(short Dx, short Dy)
|
||||
Restaure_fond(Buffer, Nouveau_X, Nouveau_Y, Fenetre_Largeur, Fenetre_Hauteur);
|
||||
|
||||
// Mise à jour du rectangle englobant
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,
|
||||
(Nouveau_X>Fenetre_Pos_X)?Fenetre_Pos_X:Nouveau_X,
|
||||
(Nouveau_Y>Fenetre_Pos_Y)?Fenetre_Pos_Y:Nouveau_Y,
|
||||
((Nouveau_X>Fenetre_Pos_X)?(Nouveau_X-Fenetre_Pos_X):(Fenetre_Pos_X-Nouveau_X)) + Fenetre_Largeur*Menu_Facteur_X,
|
||||
((Nouveau_Y>Fenetre_Pos_Y)?(Nouveau_Y-Fenetre_Pos_Y):(Fenetre_Pos_Y-Nouveau_Y)) + Fenetre_Hauteur*Menu_Facteur_Y);
|
||||
|
||||
#endif
|
||||
Fenetre_Pos_X=Nouveau_X;
|
||||
Fenetre_Pos_Y=Nouveau_Y;
|
||||
|
||||
|
||||
10
palette.c
10
palette.c
@ -800,7 +800,9 @@ void Bouton_Palette(void)
|
||||
Dessiner_zigouigoui(263,165,CM_Fonce,-1);
|
||||
Dessiner_zigouigoui(280,165,CM_Fonce,+1);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X,Fenetre_Pos_Y,299*Menu_Facteur_X,188*Menu_Facteur_Y);
|
||||
#endif
|
||||
|
||||
Afficher_curseur();
|
||||
|
||||
@ -865,7 +867,9 @@ void Bouton_Palette(void)
|
||||
|
||||
// Affichage dans le block de visu de la couleur en cours
|
||||
Block(Fenetre_Pos_X+(Menu_Facteur_X*264),Fenetre_Pos_Y+(Menu_Facteur_Y*93),Menu_Facteur_X<<4,Menu_Facteur_Y*64,Fore_color);
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+(Menu_Facteur_X*264),Fenetre_Pos_Y+(Menu_Facteur_Y*93),Menu_Facteur_X<<4,Menu_Facteur_Y*64);
|
||||
#endif
|
||||
|
||||
memcpy(Palette_backup ,Palette_de_travail,sizeof(T_Palette));
|
||||
memcpy(Palette_temporaire,Palette_de_travail,sizeof(T_Palette));
|
||||
@ -1136,8 +1140,10 @@ void Bouton_Palette(void)
|
||||
Palette_Reafficher_jauges(Jauge_rouge,Jauge_verte,Jauge_bleue,Palette_de_travail,Debut_block,Fin_block);
|
||||
|
||||
// En cas de X-Swap, tout l'ecran a pu changer de couleur.
|
||||
#ifndef __macosx__
|
||||
if (Bouton_clicke==8)
|
||||
SDL_UpdateRect(Ecran_SDL,0, 0, Largeur_ecran, Menu_Ordonnee_avant_fenetre);
|
||||
#endif
|
||||
|
||||
}
|
||||
break;
|
||||
@ -1784,7 +1790,9 @@ void Bouton_Palette(void)
|
||||
Block(Fenetre_Pos_X+(Menu_Facteur_X*260),Fenetre_Pos_Y+(Menu_Facteur_Y*89),Menu_Facteur_X*24,Menu_Facteur_Y*72,Back_color);
|
||||
Bloc_degrade_dans_fenetre(264,93,Debut_block,Fin_block);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+8*Menu_Facteur_X,Fenetre_Pos_Y+82*Menu_Facteur_Y,Menu_Facteur_X*16*10,Menu_Facteur_Y*5*16);
|
||||
#endif
|
||||
|
||||
Afficher_curseur();
|
||||
Il_faut_remapper=0;
|
||||
@ -1850,7 +1858,9 @@ void Bouton_Palette_secondaire(void)
|
||||
Fenetre_Definir_bouton_normal(10,37,180,14,"User's color series" ,14,0,SDLK_s); // 2
|
||||
Fenetre_Definir_bouton_normal(60,60, 80,14,"Cancel" , 0,1,SDLK_ESCAPE); // 3
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X,Fenetre_Pos_Y,Menu_Facteur_X*200,Menu_Facteur_Y*80);
|
||||
#endif
|
||||
|
||||
Afficher_curseur();
|
||||
|
||||
|
||||
10
readline.c
10
readline.c
@ -128,8 +128,10 @@ byte Readline(word Pos_X,word Pos_Y,char * Chaine,byte Taille_affichee,byte Type
|
||||
// Effacement de la chaîne
|
||||
Block(Fenetre_Pos_X+(Pos_X*Menu_Facteur_X),Fenetre_Pos_Y+(Pos_Y*Menu_Facteur_Y),
|
||||
Taille_affichee*(Menu_Facteur_X<<3),(Menu_Facteur_Y<<3),COULEUR_FOND);
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+(Pos_X*Menu_Facteur_X),Fenetre_Pos_Y+(Pos_Y*Menu_Facteur_Y),
|
||||
Taille_affichee*(Menu_Facteur_X<<3),(Menu_Facteur_Y<<3));
|
||||
#endif
|
||||
|
||||
// Mise à jour des variables se rapportant à la chaîne en fonction de la chaîne initiale
|
||||
strcpy(Chaine_initiale,Chaine);
|
||||
@ -152,9 +154,10 @@ byte Readline(word Pos_X,word Pos_Y,char * Chaine,byte Taille_affichee,byte Type
|
||||
Chaine_affichee[Taille_affichee-1]=CARACTERE_TRIANGLE_DROIT;
|
||||
|
||||
Rafficher_toute_la_chaine(Pos_X,Pos_Y,Chaine_affichee,Position - Offset);
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+(Pos_X*Menu_Facteur_X),Fenetre_Pos_Y+(Pos_Y*Menu_Facteur_Y),
|
||||
Taille_affichee*(Menu_Facteur_X<<3),(Menu_Facteur_Y<<3));
|
||||
|
||||
#endif
|
||||
|
||||
while ((Touche_lue!=SDLK_RETURN) && (Touche_lue!=SDLK_ESCAPE))
|
||||
{
|
||||
@ -292,9 +295,10 @@ byte Readline(word Pos_X,word Pos_Y,char * Chaine,byte Taille_affichee,byte Type
|
||||
Chaine_affichee[Taille_affichee-1]=CARACTERE_TRIANGLE_DROIT;
|
||||
|
||||
Rafficher_toute_la_chaine(Pos_X,Pos_Y,Chaine_affichee,Position - Offset);
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+(Pos_X*Menu_Facteur_X),Fenetre_Pos_Y+(Pos_Y*Menu_Facteur_Y),
|
||||
Taille_affichee*(Menu_Facteur_X<<3),(Menu_Facteur_Y<<3));
|
||||
|
||||
#endif
|
||||
} // Fin du "switch(Touche_lue)"
|
||||
} // Fin du "while"
|
||||
|
||||
@ -315,8 +319,10 @@ byte Readline(word Pos_X,word Pos_Y,char * Chaine,byte Taille_affichee,byte Type
|
||||
{
|
||||
Print_dans_fenetre_limite(Pos_X,Pos_Y,Chaine,Taille_affichee,COULEUR_TEXTE,COULEUR_FOND);
|
||||
}
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+(Pos_X*Menu_Facteur_X),Fenetre_Pos_Y+(Pos_Y*Menu_Facteur_Y),
|
||||
Taille_affichee*(Menu_Facteur_X<<3),(Menu_Facteur_Y<<3));
|
||||
#endif
|
||||
|
||||
return (Touche_lue==SDLK_RETURN);
|
||||
}
|
||||
|
||||
16
sdlscreen.c
16
sdlscreen.c
@ -60,7 +60,9 @@ void Afficher_partie_de_l_ecran_SDL (word Largeur,word Hauteur,word Largeu
|
||||
Src+=Largeur_image;
|
||||
Dest+=Largeur_ecran;
|
||||
}
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,0,0,Largeur,Hauteur);
|
||||
#endif
|
||||
}
|
||||
|
||||
void Block_SDL (word Debut_X,word Debut_Y,word Largeur,word Hauteur,byte Couleur)
|
||||
@ -164,7 +166,9 @@ void Display_brush_Color_SDL (word Pos_X,word Pos_Y,word Decalage_X,word Decala
|
||||
EDI = EDI + Largeur_ecran - Largeur;
|
||||
ESI = ESI + Largeur_brosse - Largeur;
|
||||
}
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Pos_X,Pos_Y,Largeur,Hauteur);
|
||||
#endif
|
||||
}
|
||||
|
||||
void Display_brush_Mono_SDL (word Pos_X, word Pos_Y,
|
||||
@ -196,7 +200,9 @@ void Display_brush_Mono_SDL (word Pos_X, word Pos_Y,
|
||||
Src+=Largeur_brosse-Largeur;
|
||||
Dest+=Largeur_ecran-Largeur;
|
||||
}
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Pos_X,Pos_Y,Largeur,Hauteur);
|
||||
#endif
|
||||
}
|
||||
|
||||
void Clear_brush_SDL (word Pos_X,word Pos_Y,word Decalage_X,word Decalage_Y,word Largeur,word Hauteur,byte Couleur_de_transparence,word Largeur_image)
|
||||
@ -215,7 +221,9 @@ void Clear_brush_SDL (word Pos_X,word Pos_Y,word Decalage_X,word Decalage_Y,word
|
||||
Src+=Largeur_image;
|
||||
Dest+=Largeur_ecran;
|
||||
}
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Pos_X,Pos_Y,Largeur,Hauteur);
|
||||
#endif
|
||||
}
|
||||
|
||||
void Remap_screen_SDL (word Pos_X,word Pos_Y,word Largeur,word Hauteur,byte * Table_de_conversion)
|
||||
@ -237,7 +245,9 @@ void Remap_screen_SDL (word Pos_X,word Pos_Y,word Largeur,word Hauteur,byte * Ta
|
||||
EDI = EDI + Largeur_ecran - Largeur;
|
||||
}
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Pos_X,Pos_Y,Largeur,Hauteur);
|
||||
#endif
|
||||
}
|
||||
|
||||
void Afficher_une_ligne_ecran_SDL (word Pos_X,word Pos_Y,word Largeur,byte * Ligne)
|
||||
@ -299,8 +309,10 @@ void Afficher_partie_de_l_ecran_zoomee_SDL(
|
||||
EDX++;
|
||||
if(EDX==Hauteur)
|
||||
{
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Principal_X_Zoom,0,
|
||||
Largeur*Loupe_Facteur,Hauteur);
|
||||
#endif
|
||||
return;
|
||||
}
|
||||
CX--;
|
||||
@ -397,8 +409,10 @@ void Display_brush_Mono_zoom_SDL (word Pos_X, word Pos_Y,
|
||||
// On vérifie qu'on est pas à la ligne finale
|
||||
if(DX == Pos_Y_Fin)
|
||||
{
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL, Pos_X, Pos_Y,
|
||||
Largeur * Loupe_Facteur, Pos_Y_Fin - Pos_Y );
|
||||
#endif
|
||||
return;
|
||||
}
|
||||
BX --;
|
||||
@ -432,8 +446,10 @@ void Clear_brush_zoom_SDL (word Pos_X,word Pos_Y,word Decalage_X,word Dec
|
||||
DX++;
|
||||
if(DX==Pos_Y_Fin)
|
||||
{
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Pos_X,Pos_Y,
|
||||
Largeur*Loupe_Facteur,Pos_Y_Fin-Pos_Y);
|
||||
#endif
|
||||
return;
|
||||
}
|
||||
bx--;
|
||||
|
||||
10
shade.c
10
shade.c
@ -131,7 +131,9 @@ void Shade_Blocs_degrades(void)
|
||||
Block(Fenetre_Pos_X+(Menu_Facteur_X*225),Fenetre_Pos_Y+(Menu_Facteur_Y*36),
|
||||
Menu_Facteur_X*62,Menu_Facteur_Y*46,CM_Clair);
|
||||
}
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+(Menu_Facteur_X*224),Fenetre_Pos_Y+(Menu_Facteur_Y*35),Menu_Facteur_X*64,Menu_Facteur_Y*48);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@ -175,7 +177,9 @@ void Tagger_shades(word Select_Debut,word Select_Fin)
|
||||
Block(Pos_X,Pos_Y,Menu_Facteur_X<<2,Menu_Facteur_Y<<1,CM_Clair);
|
||||
}
|
||||
}
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+8*Menu_Facteur_X,Fenetre_Pos_Y+131*Menu_Facteur_Y,Menu_Facteur_X*64<<2,Menu_Facteur_Y*8<<3);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@ -249,7 +253,9 @@ void Afficher_tout_le_shade(word Select_Debut1,word Select_Fin1,
|
||||
Menu_Facteur_X<<2,Menu_Facteur_Y<<2,
|
||||
Shade_Liste[Shade_Actuel].Liste[Position]&0xFF);
|
||||
}
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+7*Menu_Facteur_X,Fenetre_Pos_Y+126*Menu_Facteur_Y,Menu_Facteur_X*((64<<2)+2),Menu_Facteur_Y*((8<<2)+2));
|
||||
#endif
|
||||
Tagger_shades(Select_Debut2,Select_Fin2);
|
||||
Shade_Blocs_degrades();
|
||||
Afficher_couleur_case_selectionnee(Select_Debut2,Select_Fin2);
|
||||
@ -522,7 +528,9 @@ int Menu_Shade(void)
|
||||
memcpy(Buffer ,Shade_Liste[Shade_Actuel].Liste,512*sizeof(word));
|
||||
memcpy(Buffer_Undo,Shade_Liste[Shade_Actuel].Liste,512*sizeof(word));
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X,Fenetre_Pos_Y,Menu_Facteur_X*310,Menu_Facteur_Y*190);
|
||||
#endif
|
||||
|
||||
Afficher_curseur();
|
||||
|
||||
@ -1051,7 +1059,9 @@ void Bouton_Quick_shade_Menu(void)
|
||||
Num2str(Quick_shade_Step,Chaine,3);
|
||||
Fenetre_Contenu_bouton_saisie(Fenetre_Liste_boutons_special,Chaine);
|
||||
|
||||
#ifndef __macosx__
|
||||
SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X,Fenetre_Pos_Y,Menu_Facteur_X*142,Menu_Facteur_Y*56);
|
||||
#endif
|
||||
|
||||
Afficher_curseur();
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user