forked from bartvdbraak/blender
Merge from 2.5 r20855 through r20966
Build fails: http://www.pasteall.org/6201/text
This commit is contained in:
commit
8bafa19853
@ -3,6 +3,7 @@ Microsoft Visual Studio Solution File, Format Version 10.00
|
|||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "blender", "blender.vcproj", "{F78B7FC9-DE32-465E-9F26-BB0B6B7A2EAF}"
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "blender", "blender.vcproj", "{F78B7FC9-DE32-465E-9F26-BB0B6B7A2EAF}"
|
||||||
ProjectSection(ProjectDependencies) = postProject
|
ProjectSection(ProjectDependencies) = postProject
|
||||||
{E5F2F004-C704-4DCC-A08F-6EB1E38EAB9F} = {E5F2F004-C704-4DCC-A08F-6EB1E38EAB9F}
|
{E5F2F004-C704-4DCC-A08F-6EB1E38EAB9F} = {E5F2F004-C704-4DCC-A08F-6EB1E38EAB9F}
|
||||||
|
{6E24BF09-9653-4166-A871-F65CC9E98A9B} = {6E24BF09-9653-4166-A871-F65CC9E98A9B}
|
||||||
{A90C4918-4B21-4277-93BD-AF65F30951D9} = {A90C4918-4B21-4277-93BD-AF65F30951D9}
|
{A90C4918-4B21-4277-93BD-AF65F30951D9} = {A90C4918-4B21-4277-93BD-AF65F30951D9}
|
||||||
{FB88301F-F725-401B-ACD7-D2ABBF333B71} = {FB88301F-F725-401B-ACD7-D2ABBF333B71}
|
{FB88301F-F725-401B-ACD7-D2ABBF333B71} = {FB88301F-F725-401B-ACD7-D2ABBF333B71}
|
||||||
{98330220-47A6-42E0-9DE4-AD0FF5D204D6} = {98330220-47A6-42E0-9DE4-AD0FF5D204D6}
|
{98330220-47A6-42E0-9DE4-AD0FF5D204D6} = {98330220-47A6-42E0-9DE4-AD0FF5D204D6}
|
||||||
@ -11,6 +12,7 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "blender", "blender.vcproj",
|
|||||||
{9625642D-6F20-4FB6-A089-BE7441B223E3} = {9625642D-6F20-4FB6-A089-BE7441B223E3}
|
{9625642D-6F20-4FB6-A089-BE7441B223E3} = {9625642D-6F20-4FB6-A089-BE7441B223E3}
|
||||||
{D1A9312F-4557-4982-A0F4-4D08508235F4} = {D1A9312F-4557-4982-A0F4-4D08508235F4}
|
{D1A9312F-4557-4982-A0F4-4D08508235F4} = {D1A9312F-4557-4982-A0F4-4D08508235F4}
|
||||||
{884D8731-654C-4C7F-9A75-8F37A305BE1E} = {884D8731-654C-4C7F-9A75-8F37A305BE1E}
|
{884D8731-654C-4C7F-9A75-8F37A305BE1E} = {884D8731-654C-4C7F-9A75-8F37A305BE1E}
|
||||||
|
{E645CC32-4823-463E-82F0-46ADDE664018} = {E645CC32-4823-463E-82F0-46ADDE664018}
|
||||||
{7495FE37-933A-4AC1-BB2A-B3FDB4DE4284} = {7495FE37-933A-4AC1-BB2A-B3FDB4DE4284}
|
{7495FE37-933A-4AC1-BB2A-B3FDB4DE4284} = {7495FE37-933A-4AC1-BB2A-B3FDB4DE4284}
|
||||||
{FAF46346-65CC-4DB2-85C4-B99826F79D0C} = {FAF46346-65CC-4DB2-85C4-B99826F79D0C}
|
{FAF46346-65CC-4DB2-85C4-B99826F79D0C} = {FAF46346-65CC-4DB2-85C4-B99826F79D0C}
|
||||||
{51FB3D48-2467-4BFA-A321-D848252B437E} = {51FB3D48-2467-4BFA-A321-D848252B437E}
|
{51FB3D48-2467-4BFA-A321-D848252B437E} = {51FB3D48-2467-4BFA-A321-D848252B437E}
|
||||||
@ -20,6 +22,7 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "blender", "blender.vcproj",
|
|||||||
{B093415D-C0F6-4E76-8F5A-6BC1917BCE9E} = {B093415D-C0F6-4E76-8F5A-6BC1917BCE9E}
|
{B093415D-C0F6-4E76-8F5A-6BC1917BCE9E} = {B093415D-C0F6-4E76-8F5A-6BC1917BCE9E}
|
||||||
{DB6BE55D-B6D9-494D-856A-8764FF7BA91D} = {DB6BE55D-B6D9-494D-856A-8764FF7BA91D}
|
{DB6BE55D-B6D9-494D-856A-8764FF7BA91D} = {DB6BE55D-B6D9-494D-856A-8764FF7BA91D}
|
||||||
{6461F05D-4698-47AB-A8E8-1CA2ACC9948B} = {6461F05D-4698-47AB-A8E8-1CA2ACC9948B}
|
{6461F05D-4698-47AB-A8E8-1CA2ACC9948B} = {6461F05D-4698-47AB-A8E8-1CA2ACC9948B}
|
||||||
|
{0A73055E-4DED-40CD-9F72-9093ED3EEC7E} = {0A73055E-4DED-40CD-9F72-9093ED3EEC7E}
|
||||||
{09222F5E-1625-4FF3-A89A-384D16875EE5} = {09222F5E-1625-4FF3-A89A-384D16875EE5}
|
{09222F5E-1625-4FF3-A89A-384D16875EE5} = {09222F5E-1625-4FF3-A89A-384D16875EE5}
|
||||||
{D696C86B-0B53-4471-A50D-5B983A6FA4AD} = {D696C86B-0B53-4471-A50D-5B983A6FA4AD}
|
{D696C86B-0B53-4471-A50D-5B983A6FA4AD} = {D696C86B-0B53-4471-A50D-5B983A6FA4AD}
|
||||||
{138DD16C-CC78-4F6C-A898-C8DA68D89067} = {138DD16C-CC78-4F6C-A898-C8DA68D89067}
|
{138DD16C-CC78-4F6C-A898-C8DA68D89067} = {138DD16C-CC78-4F6C-A898-C8DA68D89067}
|
||||||
@ -27,10 +30,13 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "blender", "blender.vcproj",
|
|||||||
{106AE171-0083-41D6-A949-20DB0E8DC251} = {106AE171-0083-41D6-A949-20DB0E8DC251}
|
{106AE171-0083-41D6-A949-20DB0E8DC251} = {106AE171-0083-41D6-A949-20DB0E8DC251}
|
||||||
{670EC17A-0548-4BBF-A27B-636C7C188139} = {670EC17A-0548-4BBF-A27B-636C7C188139}
|
{670EC17A-0548-4BBF-A27B-636C7C188139} = {670EC17A-0548-4BBF-A27B-636C7C188139}
|
||||||
{4C3AB78A-52CA-4276-A041-39776E52D8C8} = {4C3AB78A-52CA-4276-A041-39776E52D8C8}
|
{4C3AB78A-52CA-4276-A041-39776E52D8C8} = {4C3AB78A-52CA-4276-A041-39776E52D8C8}
|
||||||
|
{6B801390-5F95-4F07-81A7-97FBA046AACC} = {6B801390-5F95-4F07-81A7-97FBA046AACC}
|
||||||
{CAE37E91-6570-43AC-A4B4-7A37A4B0FC94} = {CAE37E91-6570-43AC-A4B4-7A37A4B0FC94}
|
{CAE37E91-6570-43AC-A4B4-7A37A4B0FC94} = {CAE37E91-6570-43AC-A4B4-7A37A4B0FC94}
|
||||||
{76D90B92-ECC7-409C-9F98-A8814B90F3C0} = {76D90B92-ECC7-409C-9F98-A8814B90F3C0}
|
{76D90B92-ECC7-409C-9F98-A8814B90F3C0} = {76D90B92-ECC7-409C-9F98-A8814B90F3C0}
|
||||||
{9C71A793-C177-4CAB-8EC5-923D500B39F8} = {9C71A793-C177-4CAB-8EC5-923D500B39F8}
|
{9C71A793-C177-4CAB-8EC5-923D500B39F8} = {9C71A793-C177-4CAB-8EC5-923D500B39F8}
|
||||||
|
{F90BD995-FFA4-4B18-81E8-FA4322C939E8} = {F90BD995-FFA4-4B18-81E8-FA4322C939E8}
|
||||||
{BB6AA598-B336-4F8B-9DF9-8CAE7BE71C23} = {BB6AA598-B336-4F8B-9DF9-8CAE7BE71C23}
|
{BB6AA598-B336-4F8B-9DF9-8CAE7BE71C23} = {BB6AA598-B336-4F8B-9DF9-8CAE7BE71C23}
|
||||||
|
{8154A59A-CAED-403D-AB94-BC4E7C032666} = {8154A59A-CAED-403D-AB94-BC4E7C032666}
|
||||||
{3648FB9A-C36F-43AB-AED0-1F1361E67FC7} = {3648FB9A-C36F-43AB-AED0-1F1361E67FC7}
|
{3648FB9A-C36F-43AB-AED0-1F1361E67FC7} = {3648FB9A-C36F-43AB-AED0-1F1361E67FC7}
|
||||||
{542A9FA1-B7FF-441C-AE15-054DB31D3488} = {542A9FA1-B7FF-441C-AE15-054DB31D3488}
|
{542A9FA1-B7FF-441C-AE15-054DB31D3488} = {542A9FA1-B7FF-441C-AE15-054DB31D3488}
|
||||||
{E109F1A5-FDD3-4F56-A1C4-96867EEA4C5B} = {E109F1A5-FDD3-4F56-A1C4-96867EEA4C5B}
|
{E109F1A5-FDD3-4F56-A1C4-96867EEA4C5B} = {E109F1A5-FDD3-4F56-A1C4-96867EEA4C5B}
|
||||||
@ -132,7 +138,9 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "blenderplayer", "..\gameeng
|
|||||||
{BAAE3F2B-BCF8-4E84-B8BA-CFB2D64945FE} = {BAAE3F2B-BCF8-4E84-B8BA-CFB2D64945FE}
|
{BAAE3F2B-BCF8-4E84-B8BA-CFB2D64945FE} = {BAAE3F2B-BCF8-4E84-B8BA-CFB2D64945FE}
|
||||||
{C66F722C-46BE-40C9-ABAE-2EAC7A697EB8} = {C66F722C-46BE-40C9-ABAE-2EAC7A697EB8}
|
{C66F722C-46BE-40C9-ABAE-2EAC7A697EB8} = {C66F722C-46BE-40C9-ABAE-2EAC7A697EB8}
|
||||||
{9625642D-6F20-4FB6-A089-BE7441B223E3} = {9625642D-6F20-4FB6-A089-BE7441B223E3}
|
{9625642D-6F20-4FB6-A089-BE7441B223E3} = {9625642D-6F20-4FB6-A089-BE7441B223E3}
|
||||||
|
{D1A9312F-4557-4982-A0F4-4D08508235F4} = {D1A9312F-4557-4982-A0F4-4D08508235F4}
|
||||||
{E645CC32-4823-463E-82F0-46ADDE664018} = {E645CC32-4823-463E-82F0-46ADDE664018}
|
{E645CC32-4823-463E-82F0-46ADDE664018} = {E645CC32-4823-463E-82F0-46ADDE664018}
|
||||||
|
{7495FE37-933A-4AC1-BB2A-B3FDB4DE4284} = {7495FE37-933A-4AC1-BB2A-B3FDB4DE4284}
|
||||||
{FAF46346-65CC-4DB2-85C4-B99826F79D0C} = {FAF46346-65CC-4DB2-85C4-B99826F79D0C}
|
{FAF46346-65CC-4DB2-85C4-B99826F79D0C} = {FAF46346-65CC-4DB2-85C4-B99826F79D0C}
|
||||||
{51FB3D48-2467-4BFA-A321-D848252B437E} = {51FB3D48-2467-4BFA-A321-D848252B437E}
|
{51FB3D48-2467-4BFA-A321-D848252B437E} = {51FB3D48-2467-4BFA-A321-D848252B437E}
|
||||||
{FFD3C64A-30E2-4BC7-BC8F-51818C320400} = {FFD3C64A-30E2-4BC7-BC8F-51818C320400}
|
{FFD3C64A-30E2-4BC7-BC8F-51818C320400} = {FFD3C64A-30E2-4BC7-BC8F-51818C320400}
|
||||||
@ -153,6 +161,7 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "blenderplayer", "..\gameeng
|
|||||||
{9C71A793-C177-4CAB-8EC5-923D500B39F8} = {9C71A793-C177-4CAB-8EC5-923D500B39F8}
|
{9C71A793-C177-4CAB-8EC5-923D500B39F8} = {9C71A793-C177-4CAB-8EC5-923D500B39F8}
|
||||||
{F90BD995-FFA4-4B18-81E8-FA4322C939E8} = {F90BD995-FFA4-4B18-81E8-FA4322C939E8}
|
{F90BD995-FFA4-4B18-81E8-FA4322C939E8} = {F90BD995-FFA4-4B18-81E8-FA4322C939E8}
|
||||||
{BB6AA598-B336-4F8B-9DF9-8CAE7BE71C23} = {BB6AA598-B336-4F8B-9DF9-8CAE7BE71C23}
|
{BB6AA598-B336-4F8B-9DF9-8CAE7BE71C23} = {BB6AA598-B336-4F8B-9DF9-8CAE7BE71C23}
|
||||||
|
{8154A59A-CAED-403D-AB94-BC4E7C032666} = {8154A59A-CAED-403D-AB94-BC4E7C032666}
|
||||||
{3648FB9A-C36F-43AB-AED0-1F1361E67FC7} = {3648FB9A-C36F-43AB-AED0-1F1361E67FC7}
|
{3648FB9A-C36F-43AB-AED0-1F1361E67FC7} = {3648FB9A-C36F-43AB-AED0-1F1361E67FC7}
|
||||||
{542A9FA1-B7FF-441C-AE15-054DB31D3488} = {542A9FA1-B7FF-441C-AE15-054DB31D3488}
|
{542A9FA1-B7FF-441C-AE15-054DB31D3488} = {542A9FA1-B7FF-441C-AE15-054DB31D3488}
|
||||||
{D8ABD6A5-1B36-4D62-934E-B5C6801130B0} = {D8ABD6A5-1B36-4D62-934E-B5C6801130B0}
|
{D8ABD6A5-1B36-4D62-934E-B5C6801130B0} = {D8ABD6A5-1B36-4D62-934E-B5C6801130B0}
|
||||||
@ -164,6 +173,7 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "blenderplayer", "..\gameeng
|
|||||||
{8B8D4FC3-3234-4E54-8376-5AB83D00D164} = {8B8D4FC3-3234-4E54-8376-5AB83D00D164}
|
{8B8D4FC3-3234-4E54-8376-5AB83D00D164} = {8B8D4FC3-3234-4E54-8376-5AB83D00D164}
|
||||||
{4B6AFCC5-968C-424A-8F20-76E41B3BEF74} = {4B6AFCC5-968C-424A-8F20-76E41B3BEF74}
|
{4B6AFCC5-968C-424A-8F20-76E41B3BEF74} = {4B6AFCC5-968C-424A-8F20-76E41B3BEF74}
|
||||||
{0112CAD5-3584-412A-A2E5-1315A00437B4} = {0112CAD5-3584-412A-A2E5-1315A00437B4}
|
{0112CAD5-3584-412A-A2E5-1315A00437B4} = {0112CAD5-3584-412A-A2E5-1315A00437B4}
|
||||||
|
{2AE0D2D9-6A7A-44DE-9EFF-99C9E3257B49} = {2AE0D2D9-6A7A-44DE-9EFF-99C9E3257B49}
|
||||||
{5A2EA6DC-1A53-4E87-9166-52870CE3B4EA} = {5A2EA6DC-1A53-4E87-9166-52870CE3B4EA}
|
{5A2EA6DC-1A53-4E87-9166-52870CE3B4EA} = {5A2EA6DC-1A53-4E87-9166-52870CE3B4EA}
|
||||||
{E86B7BDE-C33C-4E55-9433-E74C141D7538} = {E86B7BDE-C33C-4E55-9433-E74C141D7538}
|
{E86B7BDE-C33C-4E55-9433-E74C141D7538} = {E86B7BDE-C33C-4E55-9433-E74C141D7538}
|
||||||
{32CC75E2-EE85-45E6-8E3D-513F58464F43} = {32CC75E2-EE85-45E6-8E3D-513F58464F43}
|
{32CC75E2-EE85-45E6-8E3D-513F58464F43} = {32CC75E2-EE85-45E6-8E3D-513F58464F43}
|
||||||
@ -579,7 +589,9 @@ Global
|
|||||||
{8154A59A-CAED-403D-AB94-BC4E7C032666}.3D Plugin Release|Win32.ActiveCfg = Blender Release|Win32
|
{8154A59A-CAED-403D-AB94-BC4E7C032666}.3D Plugin Release|Win32.ActiveCfg = Blender Release|Win32
|
||||||
{8154A59A-CAED-403D-AB94-BC4E7C032666}.3D Plugin Release|Win32.Build.0 = Blender Release|Win32
|
{8154A59A-CAED-403D-AB94-BC4E7C032666}.3D Plugin Release|Win32.Build.0 = Blender Release|Win32
|
||||||
{8154A59A-CAED-403D-AB94-BC4E7C032666}.Blender Debug|Win32.ActiveCfg = Blender Debug|Win32
|
{8154A59A-CAED-403D-AB94-BC4E7C032666}.Blender Debug|Win32.ActiveCfg = Blender Debug|Win32
|
||||||
|
{8154A59A-CAED-403D-AB94-BC4E7C032666}.Blender Debug|Win32.Build.0 = Blender Debug|Win32
|
||||||
{8154A59A-CAED-403D-AB94-BC4E7C032666}.Blender Release|Win32.ActiveCfg = Blender Release|Win32
|
{8154A59A-CAED-403D-AB94-BC4E7C032666}.Blender Release|Win32.ActiveCfg = Blender Release|Win32
|
||||||
|
{8154A59A-CAED-403D-AB94-BC4E7C032666}.Blender Release|Win32.Build.0 = Blender Release|Win32
|
||||||
{8154A59A-CAED-403D-AB94-BC4E7C032666}.BlenderPlayer Debug|Win32.ActiveCfg = Blender Debug|Win32
|
{8154A59A-CAED-403D-AB94-BC4E7C032666}.BlenderPlayer Debug|Win32.ActiveCfg = Blender Debug|Win32
|
||||||
{8154A59A-CAED-403D-AB94-BC4E7C032666}.BlenderPlayer Release|Win32.ActiveCfg = Blender Release|Win32
|
{8154A59A-CAED-403D-AB94-BC4E7C032666}.BlenderPlayer Release|Win32.ActiveCfg = Blender Release|Win32
|
||||||
{8154A59A-CAED-403D-AB94-BC4E7C032666}.Debug|Win32.ActiveCfg = Blender Debug|Win32
|
{8154A59A-CAED-403D-AB94-BC4E7C032666}.Debug|Win32.ActiveCfg = Blender Debug|Win32
|
||||||
@ -591,7 +603,9 @@ Global
|
|||||||
{F90BD995-FFA4-4B18-81E8-FA4322C939E8}.3D Plugin Release|Win32.ActiveCfg = 3D Plugin Release|Win32
|
{F90BD995-FFA4-4B18-81E8-FA4322C939E8}.3D Plugin Release|Win32.ActiveCfg = 3D Plugin Release|Win32
|
||||||
{F90BD995-FFA4-4B18-81E8-FA4322C939E8}.3D Plugin Release|Win32.Build.0 = 3D Plugin Release|Win32
|
{F90BD995-FFA4-4B18-81E8-FA4322C939E8}.3D Plugin Release|Win32.Build.0 = 3D Plugin Release|Win32
|
||||||
{F90BD995-FFA4-4B18-81E8-FA4322C939E8}.Blender Debug|Win32.ActiveCfg = Blender Debug|Win32
|
{F90BD995-FFA4-4B18-81E8-FA4322C939E8}.Blender Debug|Win32.ActiveCfg = Blender Debug|Win32
|
||||||
|
{F90BD995-FFA4-4B18-81E8-FA4322C939E8}.Blender Debug|Win32.Build.0 = Blender Debug|Win32
|
||||||
{F90BD995-FFA4-4B18-81E8-FA4322C939E8}.Blender Release|Win32.ActiveCfg = Blender Release|Win32
|
{F90BD995-FFA4-4B18-81E8-FA4322C939E8}.Blender Release|Win32.ActiveCfg = Blender Release|Win32
|
||||||
|
{F90BD995-FFA4-4B18-81E8-FA4322C939E8}.Blender Release|Win32.Build.0 = Blender Release|Win32
|
||||||
{F90BD995-FFA4-4B18-81E8-FA4322C939E8}.BlenderPlayer Debug|Win32.ActiveCfg = BlenderPlayer Debug|Win32
|
{F90BD995-FFA4-4B18-81E8-FA4322C939E8}.BlenderPlayer Debug|Win32.ActiveCfg = BlenderPlayer Debug|Win32
|
||||||
{F90BD995-FFA4-4B18-81E8-FA4322C939E8}.BlenderPlayer Debug|Win32.Build.0 = BlenderPlayer Debug|Win32
|
{F90BD995-FFA4-4B18-81E8-FA4322C939E8}.BlenderPlayer Debug|Win32.Build.0 = BlenderPlayer Debug|Win32
|
||||||
{F90BD995-FFA4-4B18-81E8-FA4322C939E8}.BlenderPlayer Release|Win32.ActiveCfg = BlenderPlayer Release|Win32
|
{F90BD995-FFA4-4B18-81E8-FA4322C939E8}.BlenderPlayer Release|Win32.ActiveCfg = BlenderPlayer Release|Win32
|
||||||
@ -605,7 +619,9 @@ Global
|
|||||||
{E645CC32-4823-463E-82F0-46ADDE664018}.3D Plugin Release|Win32.ActiveCfg = 3D Plugin Release|Win32
|
{E645CC32-4823-463E-82F0-46ADDE664018}.3D Plugin Release|Win32.ActiveCfg = 3D Plugin Release|Win32
|
||||||
{E645CC32-4823-463E-82F0-46ADDE664018}.3D Plugin Release|Win32.Build.0 = 3D Plugin Release|Win32
|
{E645CC32-4823-463E-82F0-46ADDE664018}.3D Plugin Release|Win32.Build.0 = 3D Plugin Release|Win32
|
||||||
{E645CC32-4823-463E-82F0-46ADDE664018}.Blender Debug|Win32.ActiveCfg = Blender Debug|Win32
|
{E645CC32-4823-463E-82F0-46ADDE664018}.Blender Debug|Win32.ActiveCfg = Blender Debug|Win32
|
||||||
|
{E645CC32-4823-463E-82F0-46ADDE664018}.Blender Debug|Win32.Build.0 = Blender Debug|Win32
|
||||||
{E645CC32-4823-463E-82F0-46ADDE664018}.Blender Release|Win32.ActiveCfg = Blender Release|Win32
|
{E645CC32-4823-463E-82F0-46ADDE664018}.Blender Release|Win32.ActiveCfg = Blender Release|Win32
|
||||||
|
{E645CC32-4823-463E-82F0-46ADDE664018}.Blender Release|Win32.Build.0 = Blender Release|Win32
|
||||||
{E645CC32-4823-463E-82F0-46ADDE664018}.BlenderPlayer Debug|Win32.ActiveCfg = BlenderPlayer Debug|Win32
|
{E645CC32-4823-463E-82F0-46ADDE664018}.BlenderPlayer Debug|Win32.ActiveCfg = BlenderPlayer Debug|Win32
|
||||||
{E645CC32-4823-463E-82F0-46ADDE664018}.BlenderPlayer Debug|Win32.Build.0 = BlenderPlayer Debug|Win32
|
{E645CC32-4823-463E-82F0-46ADDE664018}.BlenderPlayer Debug|Win32.Build.0 = BlenderPlayer Debug|Win32
|
||||||
{E645CC32-4823-463E-82F0-46ADDE664018}.BlenderPlayer Release|Win32.ActiveCfg = BlenderPlayer Release|Win32
|
{E645CC32-4823-463E-82F0-46ADDE664018}.BlenderPlayer Release|Win32.ActiveCfg = BlenderPlayer Release|Win32
|
||||||
@ -619,7 +635,9 @@ Global
|
|||||||
{6E24BF09-9653-4166-A871-F65CC9E98A9B}.3D Plugin Release|Win32.ActiveCfg = 3D Plugin Release|Win32
|
{6E24BF09-9653-4166-A871-F65CC9E98A9B}.3D Plugin Release|Win32.ActiveCfg = 3D Plugin Release|Win32
|
||||||
{6E24BF09-9653-4166-A871-F65CC9E98A9B}.3D Plugin Release|Win32.Build.0 = 3D Plugin Release|Win32
|
{6E24BF09-9653-4166-A871-F65CC9E98A9B}.3D Plugin Release|Win32.Build.0 = 3D Plugin Release|Win32
|
||||||
{6E24BF09-9653-4166-A871-F65CC9E98A9B}.Blender Debug|Win32.ActiveCfg = Blender Debug|Win32
|
{6E24BF09-9653-4166-A871-F65CC9E98A9B}.Blender Debug|Win32.ActiveCfg = Blender Debug|Win32
|
||||||
|
{6E24BF09-9653-4166-A871-F65CC9E98A9B}.Blender Debug|Win32.Build.0 = Blender Debug|Win32
|
||||||
{6E24BF09-9653-4166-A871-F65CC9E98A9B}.Blender Release|Win32.ActiveCfg = Blender Release|Win32
|
{6E24BF09-9653-4166-A871-F65CC9E98A9B}.Blender Release|Win32.ActiveCfg = Blender Release|Win32
|
||||||
|
{6E24BF09-9653-4166-A871-F65CC9E98A9B}.Blender Release|Win32.Build.0 = Blender Release|Win32
|
||||||
{6E24BF09-9653-4166-A871-F65CC9E98A9B}.BlenderPlayer Debug|Win32.ActiveCfg = BlenderPlayer Debug|Win32
|
{6E24BF09-9653-4166-A871-F65CC9E98A9B}.BlenderPlayer Debug|Win32.ActiveCfg = BlenderPlayer Debug|Win32
|
||||||
{6E24BF09-9653-4166-A871-F65CC9E98A9B}.BlenderPlayer Debug|Win32.Build.0 = BlenderPlayer Debug|Win32
|
{6E24BF09-9653-4166-A871-F65CC9E98A9B}.BlenderPlayer Debug|Win32.Build.0 = BlenderPlayer Debug|Win32
|
||||||
{6E24BF09-9653-4166-A871-F65CC9E98A9B}.BlenderPlayer Release|Win32.ActiveCfg = BlenderPlayer Release|Win32
|
{6E24BF09-9653-4166-A871-F65CC9E98A9B}.BlenderPlayer Release|Win32.ActiveCfg = BlenderPlayer Release|Win32
|
||||||
@ -633,7 +651,9 @@ Global
|
|||||||
{6B801390-5F95-4F07-81A7-97FBA046AACC}.3D Plugin Release|Win32.ActiveCfg = 3D Plugin Release|Win32
|
{6B801390-5F95-4F07-81A7-97FBA046AACC}.3D Plugin Release|Win32.ActiveCfg = 3D Plugin Release|Win32
|
||||||
{6B801390-5F95-4F07-81A7-97FBA046AACC}.3D Plugin Release|Win32.Build.0 = 3D Plugin Release|Win32
|
{6B801390-5F95-4F07-81A7-97FBA046AACC}.3D Plugin Release|Win32.Build.0 = 3D Plugin Release|Win32
|
||||||
{6B801390-5F95-4F07-81A7-97FBA046AACC}.Blender Debug|Win32.ActiveCfg = Blender Debug|Win32
|
{6B801390-5F95-4F07-81A7-97FBA046AACC}.Blender Debug|Win32.ActiveCfg = Blender Debug|Win32
|
||||||
|
{6B801390-5F95-4F07-81A7-97FBA046AACC}.Blender Debug|Win32.Build.0 = Blender Debug|Win32
|
||||||
{6B801390-5F95-4F07-81A7-97FBA046AACC}.Blender Release|Win32.ActiveCfg = Blender Release|Win32
|
{6B801390-5F95-4F07-81A7-97FBA046AACC}.Blender Release|Win32.ActiveCfg = Blender Release|Win32
|
||||||
|
{6B801390-5F95-4F07-81A7-97FBA046AACC}.Blender Release|Win32.Build.0 = Blender Release|Win32
|
||||||
{6B801390-5F95-4F07-81A7-97FBA046AACC}.BlenderPlayer Debug|Win32.ActiveCfg = BlenderPlayer Debug|Win32
|
{6B801390-5F95-4F07-81A7-97FBA046AACC}.BlenderPlayer Debug|Win32.ActiveCfg = BlenderPlayer Debug|Win32
|
||||||
{6B801390-5F95-4F07-81A7-97FBA046AACC}.BlenderPlayer Debug|Win32.Build.0 = BlenderPlayer Debug|Win32
|
{6B801390-5F95-4F07-81A7-97FBA046AACC}.BlenderPlayer Debug|Win32.Build.0 = BlenderPlayer Debug|Win32
|
||||||
{6B801390-5F95-4F07-81A7-97FBA046AACC}.BlenderPlayer Release|Win32.ActiveCfg = BlenderPlayer Release|Win32
|
{6B801390-5F95-4F07-81A7-97FBA046AACC}.BlenderPlayer Release|Win32.ActiveCfg = BlenderPlayer Release|Win32
|
||||||
@ -647,7 +667,9 @@ Global
|
|||||||
{0A73055E-4DED-40CD-9F72-9093ED3EEC7E}.3D Plugin Release|Win32.ActiveCfg = 3D Plugin Release|Win32
|
{0A73055E-4DED-40CD-9F72-9093ED3EEC7E}.3D Plugin Release|Win32.ActiveCfg = 3D Plugin Release|Win32
|
||||||
{0A73055E-4DED-40CD-9F72-9093ED3EEC7E}.3D Plugin Release|Win32.Build.0 = 3D Plugin Release|Win32
|
{0A73055E-4DED-40CD-9F72-9093ED3EEC7E}.3D Plugin Release|Win32.Build.0 = 3D Plugin Release|Win32
|
||||||
{0A73055E-4DED-40CD-9F72-9093ED3EEC7E}.Blender Debug|Win32.ActiveCfg = Blender Debug|Win32
|
{0A73055E-4DED-40CD-9F72-9093ED3EEC7E}.Blender Debug|Win32.ActiveCfg = Blender Debug|Win32
|
||||||
|
{0A73055E-4DED-40CD-9F72-9093ED3EEC7E}.Blender Debug|Win32.Build.0 = Blender Debug|Win32
|
||||||
{0A73055E-4DED-40CD-9F72-9093ED3EEC7E}.Blender Release|Win32.ActiveCfg = Blender Release|Win32
|
{0A73055E-4DED-40CD-9F72-9093ED3EEC7E}.Blender Release|Win32.ActiveCfg = Blender Release|Win32
|
||||||
|
{0A73055E-4DED-40CD-9F72-9093ED3EEC7E}.Blender Release|Win32.Build.0 = Blender Release|Win32
|
||||||
{0A73055E-4DED-40CD-9F72-9093ED3EEC7E}.BlenderPlayer Debug|Win32.ActiveCfg = BlenderPlayer Debug|Win32
|
{0A73055E-4DED-40CD-9F72-9093ED3EEC7E}.BlenderPlayer Debug|Win32.ActiveCfg = BlenderPlayer Debug|Win32
|
||||||
{0A73055E-4DED-40CD-9F72-9093ED3EEC7E}.BlenderPlayer Debug|Win32.Build.0 = BlenderPlayer Debug|Win32
|
{0A73055E-4DED-40CD-9F72-9093ED3EEC7E}.BlenderPlayer Debug|Win32.Build.0 = BlenderPlayer Debug|Win32
|
||||||
{0A73055E-4DED-40CD-9F72-9093ED3EEC7E}.BlenderPlayer Release|Win32.ActiveCfg = BlenderPlayer Release|Win32
|
{0A73055E-4DED-40CD-9F72-9093ED3EEC7E}.BlenderPlayer Release|Win32.ActiveCfg = BlenderPlayer Release|Win32
|
||||||
@ -836,8 +858,8 @@ Global
|
|||||||
{E90C7BC2-CF30-4A60-A8F2-0050D592E358}.Blender Debug|Win32.Build.0 = Blender Debug|Win32
|
{E90C7BC2-CF30-4A60-A8F2-0050D592E358}.Blender Debug|Win32.Build.0 = Blender Debug|Win32
|
||||||
{E90C7BC2-CF30-4A60-A8F2-0050D592E358}.Blender Release|Win32.ActiveCfg = Blender Release|Win32
|
{E90C7BC2-CF30-4A60-A8F2-0050D592E358}.Blender Release|Win32.ActiveCfg = Blender Release|Win32
|
||||||
{E90C7BC2-CF30-4A60-A8F2-0050D592E358}.Blender Release|Win32.Build.0 = Blender Release|Win32
|
{E90C7BC2-CF30-4A60-A8F2-0050D592E358}.Blender Release|Win32.Build.0 = Blender Release|Win32
|
||||||
{E90C7BC2-CF30-4A60-A8F2-0050D592E358}.BlenderPlayer Debug|Win32.ActiveCfg = Blender Debug|Win32
|
{E90C7BC2-CF30-4A60-A8F2-0050D592E358}.BlenderPlayer Debug|Win32.ActiveCfg = BlenderPlayer Debug|Win32
|
||||||
{E90C7BC2-CF30-4A60-A8F2-0050D592E358}.BlenderPlayer Debug|Win32.Build.0 = Blender Debug|Win32
|
{E90C7BC2-CF30-4A60-A8F2-0050D592E358}.BlenderPlayer Debug|Win32.Build.0 = BlenderPlayer Debug|Win32
|
||||||
{E90C7BC2-CF30-4A60-A8F2-0050D592E358}.BlenderPlayer Release|Win32.ActiveCfg = BlenderPlayer Release|Win32
|
{E90C7BC2-CF30-4A60-A8F2-0050D592E358}.BlenderPlayer Release|Win32.ActiveCfg = BlenderPlayer Release|Win32
|
||||||
{E90C7BC2-CF30-4A60-A8F2-0050D592E358}.BlenderPlayer Release|Win32.Build.0 = BlenderPlayer Release|Win32
|
{E90C7BC2-CF30-4A60-A8F2-0050D592E358}.BlenderPlayer Release|Win32.Build.0 = BlenderPlayer Release|Win32
|
||||||
{E90C7BC2-CF30-4A60-A8F2-0050D592E358}.Debug|Win32.ActiveCfg = 3D Plugin Debug|Win32
|
{E90C7BC2-CF30-4A60-A8F2-0050D592E358}.Debug|Win32.ActiveCfg = 3D Plugin Debug|Win32
|
||||||
@ -1318,8 +1340,8 @@ Global
|
|||||||
{DFE7F3E3-E62A-4677-B666-DF0DDF70C359}.Blender Debug|Win32.Build.0 = Blender Debug|Win32
|
{DFE7F3E3-E62A-4677-B666-DF0DDF70C359}.Blender Debug|Win32.Build.0 = Blender Debug|Win32
|
||||||
{DFE7F3E3-E62A-4677-B666-DF0DDF70C359}.Blender Release|Win32.ActiveCfg = Blender Release|Win32
|
{DFE7F3E3-E62A-4677-B666-DF0DDF70C359}.Blender Release|Win32.ActiveCfg = Blender Release|Win32
|
||||||
{DFE7F3E3-E62A-4677-B666-DF0DDF70C359}.Blender Release|Win32.Build.0 = Blender Release|Win32
|
{DFE7F3E3-E62A-4677-B666-DF0DDF70C359}.Blender Release|Win32.Build.0 = Blender Release|Win32
|
||||||
{DFE7F3E3-E62A-4677-B666-DF0DDF70C359}.BlenderPlayer Debug|Win32.ActiveCfg = Blender Release|Win32
|
{DFE7F3E3-E62A-4677-B666-DF0DDF70C359}.BlenderPlayer Debug|Win32.ActiveCfg = Blender Debug|Win32
|
||||||
{DFE7F3E3-E62A-4677-B666-DF0DDF70C359}.BlenderPlayer Debug|Win32.Build.0 = Blender Release|Win32
|
{DFE7F3E3-E62A-4677-B666-DF0DDF70C359}.BlenderPlayer Debug|Win32.Build.0 = Blender Debug|Win32
|
||||||
{DFE7F3E3-E62A-4677-B666-DF0DDF70C359}.BlenderPlayer Release|Win32.ActiveCfg = Blender Release|Win32
|
{DFE7F3E3-E62A-4677-B666-DF0DDF70C359}.BlenderPlayer Release|Win32.ActiveCfg = Blender Release|Win32
|
||||||
{DFE7F3E3-E62A-4677-B666-DF0DDF70C359}.BlenderPlayer Release|Win32.Build.0 = Blender Release|Win32
|
{DFE7F3E3-E62A-4677-B666-DF0DDF70C359}.BlenderPlayer Release|Win32.Build.0 = Blender Release|Win32
|
||||||
{DFE7F3E3-E62A-4677-B666-DF0DDF70C359}.Debug|Win32.ActiveCfg = Blender Debug|Win32
|
{DFE7F3E3-E62A-4677-B666-DF0DDF70C359}.Debug|Win32.ActiveCfg = Blender Debug|Win32
|
||||||
|
@ -119,7 +119,7 @@
|
|||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories="..\..\..\..\lib\windows\QTDevWin\CIncludes;..\..\..\..\lib\windows\sdl\include;..\..\..\..\lib\windows\python\include\python2.5;..\..\..\..\build\msvc_9\intern\bsp\include;..\..\..\..\build\msvc_9\intern\ghost\include;..\..\..\..\build\msvc_9\intern\elbeem\include;..\..\..\..\build\msvc_9\intern\opennl\include;..\..\..\..\build\msvc_9\intern\bmfont\include;..\..\..\..\build\msvc_9\intern\blenkey\include;..\..\..\..\build\msvc_9\intern\decimation\include;..\..\..\..\build\msvc_9\intern\memutil\include;..\..\..\..\build\msvc_9\intern\guardedalloc\include;..\..\..\..\build\msvc_9\intern\soundsystem\include;..\..\..\source\blender;..\..\..\source\blender\img;..\..\..\source\blender\verify;..\..\..\source\blender\ftfont;..\..\..\source\blender\misc;..\..\..\source\blender\imbuf;..\..\..\source\blender\blenlib;..\..\..\source\blender\python;..\..\..\source\blender\editors\include;..\..\..\source\blender\renderui;..\..\..\source\blender\blenloader;..\..\..\source\blender\quicktime;..\..\..\source\blender\blenkernel;..\..\..\source\blender\blenfont;..\..\..\source\blender\makesdna;..\..\..\source\blender\makesrna;..\..\..\source\blender\nodes;..\..\..\source\blender\windowmanager;..\..\..\source\blender\blenpluginapi;..\..\..\source\blender\renderconverter;..\..\..\source\blender\readstreamglue;..\..\..\source\blender\render\extern\include;..\..\..\source\blender\radiosity\extern\include;..\..\..\source\kernel\gen_system;..\..\..\source\gameengine\network;..\..\..\source\gameengine\soundsystem\snd_openal;..\..\..\..\build\msvc_9\extern\verse\include;..\..\..\..\lib\windows\pthreads\include;..\..\..\..\lib\windows\ffmpeg\include;..\..\..\..\build\msvc_9\extern\glew\include;..\..\..\source\blender\gpu"
|
AdditionalIncludeDirectories="..\..\..\..\lib\windows\QTDevWin\CIncludes;..\..\..\..\lib\windows\sdl\include;..\..\..\..\lib\windows\python\include\python2.5;..\..\..\..\build\msvc_9\intern\bsp\include;..\..\..\..\build\msvc_9\intern\ghost\include;..\..\..\..\build\msvc_9\intern\elbeem\include;..\..\..\..\build\msvc_9\intern\opennl\include;..\..\..\..\build\msvc_9\intern\bmfont\include;..\..\..\..\build\msvc_9\intern\blenkey\include;..\..\..\..\build\msvc_9\intern\decimation\include;..\..\..\..\build\msvc_9\intern\memutil\include;..\..\..\..\build\msvc_9\intern\guardedalloc\include;..\..\..\..\build\msvc_9\intern\soundsystem\include;..\..\..\source\blender;..\..\..\source\blender\img;..\..\..\source\blender\verify;..\..\..\source\blender\ftfont;..\..\..\source\blender\misc;..\..\..\source\blender\imbuf;..\..\..\source\blender\blenlib;..\..\..\source\blender\python;..\..\..\source\blender\editors\include;..\..\..\source\blender\renderui;..\..\..\source\blender\blenloader;..\..\..\source\blender\quicktime;..\..\..\source\blender\blenkernel;..\..\..\source\blender\blenfont;..\..\..\source\blender\makesdna;..\..\..\source\blender\makesrna;..\..\..\source\blender\nodes;..\..\..\source\blender\windowmanager;..\..\..\source\blender\blenpluginapi;..\..\..\source\blender\renderconverter;..\..\..\source\blender\readstreamglue;..\..\..\source\blender\render\extern\include;..\..\..\source\blender\radiosity\extern\include;..\..\..\source\kernel\gen_system;..\..\..\source\gameengine\network;..\..\..\source\gameengine\soundsystem\snd_openal;..\..\..\..\build\msvc_9\extern\verse\include;..\..\..\..\lib\windows\pthreads\include;..\..\..\..\lib\windows\ffmpeg\include;..\..\..\..\build\msvc_9\extern\glew\include;..\..\..\source\blender\gpu"
|
||||||
PreprocessorDefinitions="_DEBUG;WIN32;_LIB;_CONSOLE;GAMEBLENDER;WITH_QUICKTIME;INTERNATIONAL;WITH_BF_INTERNATIONAL;WITH_FREETYPE2;WITH_OPENEXR;WITH_DDS;WITH_BULLET = 1;WITH_FFMPEG"
|
PreprocessorDefinitions="_DEBUG;WIN32;_LIB;_CONSOLE;GAMEBLENDER=1;WITH_QUICKTIME;INTERNATIONAL;WITH_BF_INTERNATIONAL;WITH_FREETYPE2;WITH_OPENEXR;WITH_DDS;WITH_BULLET = 1;WITH_FFMPEG"
|
||||||
BasicRuntimeChecks="3"
|
BasicRuntimeChecks="3"
|
||||||
RuntimeLibrary="1"
|
RuntimeLibrary="1"
|
||||||
DefaultCharIsUnsigned="true"
|
DefaultCharIsUnsigned="true"
|
||||||
@ -309,6 +309,10 @@
|
|||||||
RelativePath="..\..\..\source\blender\editors\include\ED_view3d.h"
|
RelativePath="..\..\..\source\blender\editors\include\ED_view3d.h"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\..\source\blender\editors\include\UI_icons.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\source\blender\editors\include\UI_interface.h"
|
RelativePath="..\..\..\source\blender\editors\include\UI_interface.h"
|
||||||
>
|
>
|
||||||
@ -726,6 +730,10 @@
|
|||||||
RelativePath="..\..\..\source\blender\editors\space_buttons\buttons_intern.h"
|
RelativePath="..\..\..\source\blender\editors\space_buttons\buttons_intern.h"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\..\source\blender\editors\space_buttons\buttons_ops.c"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\source\blender\editors\space_buttons\space_buttons.c"
|
RelativePath="..\..\..\source\blender\editors\space_buttons\space_buttons.c"
|
||||||
>
|
>
|
||||||
@ -874,6 +882,10 @@
|
|||||||
RelativePath="..\..\..\source\blender\editors\space_sequencer\sequencer_add.c"
|
RelativePath="..\..\..\source\blender\editors\space_sequencer\sequencer_add.c"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\..\source\blender\editors\space_sequencer\sequencer_buttons.c"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\source\blender\editors\space_sequencer\sequencer_draw.c"
|
RelativePath="..\..\..\source\blender\editors\space_sequencer\sequencer_draw.c"
|
||||||
>
|
>
|
||||||
@ -882,10 +894,6 @@
|
|||||||
RelativePath="..\..\..\source\blender\editors\space_sequencer\sequencer_edit.c"
|
RelativePath="..\..\..\source\blender\editors\space_sequencer\sequencer_edit.c"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\source\blender\editors\space_sequencer\sequencer_header.c"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\source\blender\editors\space_sequencer\sequencer_intern.h"
|
RelativePath="..\..\..\source\blender\editors\space_sequencer\sequencer_intern.h"
|
||||||
>
|
>
|
||||||
|
@ -43,7 +43,7 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories="..\..\..\..\build\msvc_9\intern\guardedalloc\include;..\..\..\source\blender\makesdna;..\..\..\source\blender\makesrna;..\..\..\source\blender\blenlib;..\..\..\source\blender\blenkernel;..\..\..\source\blender\windowmanager;..\..\..\source\blender\editors\include"
|
AdditionalIncludeDirectories="..\..\..\..\build\msvc_9\intern\guardedalloc\include;..\..\..\source\blender\imbuf;..\..\..\source\blender\makesdna;..\..\..\source\blender\makesrna;..\..\..\source\blender\blenlib;..\..\..\source\blender\blenkernel;..\..\..\source\blender\windowmanager;..\..\..\source\blender\editors\include"
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS"
|
PreprocessorDefinitions="WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS"
|
||||||
MinimalRebuild="true"
|
MinimalRebuild="true"
|
||||||
BasicRuntimeChecks="3"
|
BasicRuntimeChecks="3"
|
||||||
|
@ -608,6 +608,10 @@
|
|||||||
<Filter
|
<Filter
|
||||||
Name="TEX_nodes"
|
Name="TEX_nodes"
|
||||||
>
|
>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\..\source\blender\nodes\intern\TEX_nodes\TEX_at.c"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\source\blender\nodes\intern\TEX_nodes\TEX_bricks.c"
|
RelativePath="..\..\..\source\blender\nodes\intern\TEX_nodes\TEX_bricks.c"
|
||||||
>
|
>
|
||||||
|
@ -43,7 +43,7 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories="..\..\..\..\build\msvc_9\intern\moto\include;..\..\..\..\build\msvc_9\intern\string\include;..\..\..\..\build\msvc_9\intern\bmfont\include;..\..\..\..\build\msvc_9\intern\soundsystem\include;..\..\..\..\build\msvc_9\intern\guardedalloc\include;..\..\..\..\build\msvc_9\extern\solid\include;..\..\..\..\build\msvc_9\extern\glew\include;..\..\..\..\lib\windows\python\include\python2.5;..\..\..\source\blender;..\..\..\source\blender\misc;..\..\..\source\blender\imbuf;..\..\..\source\blender\blenlib;..\..\..\source\blender\include;..\..\..\source\blender\makesdna;..\..\..\source\blender\blenloader;..\..\..\source\blender\blenkernel;..\..\..\source\kernel\gen_system;..\..\..\source\gameengine\ketsji;..\..\..\source\gameengine\network;..\..\..\source\gameengine\rasterizer;..\..\..\source\gameengine\Converter;..\..\..\source\gameengine\gamelogic;..\..\..\source\gameengine\scenegraph;..\..\..\source\gameengine\expressions;..\..\..\source\gameengine\Physics\Sumo;..\..\..\source\gameengine\Physics\common;..\..\..\source\gameengine\network\loopbacknetwork;..\..\..\source\gameengine\rasterizer\ras_openglrasterizer;..\..\..\source\gameengine\Physics\Sumo\Fuzzics\include;..\..\..\source\blender\gpu"
|
AdditionalIncludeDirectories="..\..\..\..\build\msvc_9\intern\moto\include;..\..\..\..\build\msvc_9\intern\string\include;..\..\..\..\build\msvc_9\intern\bmfont\include;..\..\..\..\build\msvc_9\intern\soundsystem\include;..\..\..\..\build\msvc_9\intern\guardedalloc\include;..\..\..\..\build\msvc_9\extern\solid\include;..\..\..\..\build\msvc_9\extern\glew\include;..\..\..\..\lib\windows\python\include\python2.5;..\..\..\source\blender;..\..\..\source\blender\misc;..\..\..\source\blender\imbuf;..\..\..\source\blender\blenlib;..\..\..\source\blender\include;..\..\..\source\blender\makesdna;..\..\..\source\blender\blenloader;..\..\..\source\blender\blenkernel;..\..\..\source\kernel\gen_system;..\..\..\source\gameengine\ketsji;..\..\..\source\gameengine\network;..\..\..\source\gameengine\rasterizer;..\..\..\source\gameengine\Converter;..\..\..\source\gameengine\gamelogic;..\..\..\source\gameengine\scenegraph;..\..\..\source\gameengine\expressions;..\..\..\source\gameengine\Physics\Sumo;..\..\..\source\gameengine\Physics\common;..\..\..\source\gameengine\network\loopbacknetwork;..\..\..\source\gameengine\rasterizer\ras_openglrasterizer;..\..\..\source\gameengine\Physics\Sumo\Fuzzics\include;..\..\..\source\blender\gpu;..\..\..\source\blender\windowmanager;..\..\..\source\blender\blenfont"
|
||||||
PreprocessorDefinitions="WIN32;_LIB;_DEBUG;WITH_GLEXT;WITH_FFMPEG"
|
PreprocessorDefinitions="WIN32;_LIB;_DEBUG;WITH_GLEXT;WITH_FFMPEG"
|
||||||
BasicRuntimeChecks="3"
|
BasicRuntimeChecks="3"
|
||||||
RuntimeLibrary="1"
|
RuntimeLibrary="1"
|
||||||
@ -119,7 +119,7 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
InlineFunctionExpansion="1"
|
InlineFunctionExpansion="1"
|
||||||
AdditionalIncludeDirectories="..\..\..\..\build\msvc_9\intern\moto\include;..\..\..\..\build\msvc_9\intern\string\include;..\..\..\..\build\msvc_9\intern\bmfont\include;..\..\..\..\build\msvc_9\intern\soundsystem\include;..\..\..\..\build\msvc_9\intern\guardedalloc\include;..\..\..\..\build\msvc_9\extern\solid\include;..\..\..\..\build\msvc_9\extern\glew\include;..\..\..\..\lib\windows\python\include\python2.5;..\..\..\source\blender;..\..\..\source\blender\misc;..\..\..\source\blender\imbuf;..\..\..\source\blender\blenlib;..\..\..\source\blender\include;..\..\..\source\blender\makesdna;..\..\..\source\blender\blenloader;..\..\..\source\blender\blenkernel;..\..\..\source\kernel\gen_system;..\..\..\source\gameengine\ketsji;..\..\..\source\gameengine\network;..\..\..\source\gameengine\rasterizer;..\..\..\source\gameengine\Converter;..\..\..\source\gameengine\gamelogic;..\..\..\source\gameengine\scenegraph;..\..\..\source\gameengine\expressions;..\..\..\source\gameengine\Physics\Sumo;..\..\..\source\gameengine\Physics\common;..\..\..\source\gameengine\network\loopbacknetwork;..\..\..\source\gameengine\rasterizer\ras_openglrasterizer;..\..\..\source\gameengine\Physics\Sumo\Fuzzics\include;..\..\..\source\blender\gpu"
|
AdditionalIncludeDirectories="..\..\..\..\build\msvc_9\intern\moto\include;..\..\..\..\build\msvc_9\intern\string\include;..\..\..\..\build\msvc_9\intern\bmfont\include;..\..\..\..\build\msvc_9\intern\soundsystem\include;..\..\..\..\build\msvc_9\intern\guardedalloc\include;..\..\..\..\build\msvc_9\extern\solid\include;..\..\..\..\build\msvc_9\extern\glew\include;..\..\..\..\lib\windows\python\include\python2.5;..\..\..\source\blender;..\..\..\source\blender\misc;..\..\..\source\blender\imbuf;..\..\..\source\blender\blenlib;..\..\..\source\blender\include;..\..\..\source\blender\makesdna;..\..\..\source\blender\blenloader;..\..\..\source\blender\blenkernel;..\..\..\source\kernel\gen_system;..\..\..\source\gameengine\ketsji;..\..\..\source\gameengine\network;..\..\..\source\gameengine\rasterizer;..\..\..\source\gameengine\Converter;..\..\..\source\gameengine\gamelogic;..\..\..\source\gameengine\scenegraph;..\..\..\source\gameengine\expressions;..\..\..\source\gameengine\Physics\Sumo;..\..\..\source\gameengine\Physics\common;..\..\..\source\gameengine\network\loopbacknetwork;..\..\..\source\gameengine\rasterizer\ras_openglrasterizer;..\..\..\source\gameengine\Physics\Sumo\Fuzzics\include;..\..\..\source\blender\gpu;..\..\..\source\blender\windowmanager;..\..\..\source\blender\blenfont"
|
||||||
PreprocessorDefinitions="NDEBUG;WIN32;_LIB;USE_SUMO_SOLID;WITH_GLEXT;WITH_FFMPEG"
|
PreprocessorDefinitions="NDEBUG;WIN32;_LIB;USE_SUMO_SOLID;WITH_GLEXT;WITH_FFMPEG"
|
||||||
StringPooling="true"
|
StringPooling="true"
|
||||||
BasicRuntimeChecks="0"
|
BasicRuntimeChecks="0"
|
||||||
|
@ -42,7 +42,7 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories="..\..\..\..\build\msvc_9\intern\moto\include;..\..\..\..\build\msvc_9\intern\string\include;..\..\..\..\build\msvc_9\intern\guardedalloc\include;..\..\..\..\build\msvc_9\intern\soundsystem\include;..\..\..\..\build\msvc_9\extern\bullet\include;..\..\..\..\build\msvc_9\extern\glew\include;..\..\..\..\build\msvc_9\extern\solid\include;..\..\..\..\lib\windows\python\include\python2.5;..\..\..\source\blender;..\..\..\source\blender\imbuf;..\..\..\source\blender\blenlib;..\..\..\source\blender\include;..\..\..\source\blender\blenkernel;..\..\..\source\blender\makesdna;..\..\..\source\kernel\gen_system;..\..\..\source\gameengine\Ketsji;..\..\..\source\gameengine\physics;..\..\..\source\gameengine\rasterizer;..\..\..\source\gameengine\network;..\..\..\source\gameengine\gamelogic;..\..\..\source\gameengine\expressions;..\..\..\source\gameengine\physics\ode;..\..\..\source\gameengine\SceneGraph;..\..\..\source\gameengine\physics\sumo;..\..\..\source\gameengine\physics\BlOde;..\..\..\source\gameengine\physics\dummy;..\..\..\source\gameengine\BlenderRoutines;..\..\..\source\gameengine\ketsji\kxnetwork;..\..\..\source\gameengine\physics\common;..\..\..\source\gameengine\soundsystem\snd_openal;..\..\..\source\gameengine\rasterizer\ras_openglrasterizer;..\..\..\source\gameengine\physics\sumo\fuzzics\include;..\..\..\source\gameengine\soundsystem\snd_blenderwavecache;..\..\..\source\sumo\include;..\..\..\source\sumo\Fuzzics\include;..\..\..\source\gameengine\physics\bullet;..\..\..\source\blender\gpu"
|
AdditionalIncludeDirectories="..\..\..\..\build\msvc_9\intern\moto\include;..\..\..\..\build\msvc_9\intern\string\include;..\..\..\..\build\msvc_9\intern\guardedalloc\include;..\..\..\..\build\msvc_9\intern\soundsystem\include;..\..\..\..\build\msvc_9\extern\bullet\include;..\..\..\..\build\msvc_9\extern\glew\include;..\..\..\..\build\msvc_9\extern\solid\include;..\..\..\..\lib\windows\python\include\python2.5;..\..\..\source\blender;..\..\..\source\blender\imbuf;..\..\..\source\blender\blenlib;..\..\..\source\blender\include;..\..\..\source\blender\blenkernel;..\..\..\source\blender\makesdna;..\..\..\source\kernel\gen_system;..\..\..\source\gameengine\Ketsji;..\..\..\source\gameengine\physics;..\..\..\source\gameengine\rasterizer;..\..\..\source\gameengine\network;..\..\..\source\gameengine\gamelogic;..\..\..\source\gameengine\expressions;..\..\..\source\gameengine\physics\ode;..\..\..\source\gameengine\SceneGraph;..\..\..\source\gameengine\physics\sumo;..\..\..\source\gameengine\physics\BlOde;..\..\..\source\gameengine\physics\dummy;..\..\..\source\gameengine\BlenderRoutines;..\..\..\source\gameengine\ketsji\kxnetwork;..\..\..\source\gameengine\physics\common;..\..\..\source\gameengine\soundsystem\snd_openal;..\..\..\source\gameengine\rasterizer\ras_openglrasterizer;..\..\..\source\gameengine\physics\sumo\fuzzics\include;..\..\..\source\gameengine\soundsystem\snd_blenderwavecache;..\..\..\source\sumo\include;..\..\..\source\sumo\Fuzzics\include;..\..\..\source\gameengine\physics\bullet;..\..\..\source\blender\gpu;..\..\..\source\blender\windowmanager"
|
||||||
PreprocessorDefinitions="WIN32,_LIB,_DEBUG"
|
PreprocessorDefinitions="WIN32,_LIB,_DEBUG"
|
||||||
BasicRuntimeChecks="3"
|
BasicRuntimeChecks="3"
|
||||||
RuntimeLibrary="3"
|
RuntimeLibrary="3"
|
||||||
@ -117,7 +117,7 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
InlineFunctionExpansion="1"
|
InlineFunctionExpansion="1"
|
||||||
AdditionalIncludeDirectories="..\..\..\..\build\msvc_9\intern\moto\include;..\..\..\..\build\msvc_9\intern\string\include;..\..\..\..\build\msvc_9\intern\guardedalloc\include;..\..\..\..\build\msvc_9\intern\soundsystem\include;..\..\..\..\build\msvc_9\extern\bullet\include;..\..\..\..\build\msvc_9\extern\glew\include;..\..\..\..\build\msvc_9\extern\solid\include;..\..\..\..\lib\windows\python\include\python2.5;..\..\..\source\blender;..\..\..\source\blender\imbuf;..\..\..\source\blender\blenlib;..\..\..\source\blender\include;..\..\..\source\blender\blenkernel;..\..\..\source\blender\makesdna;..\..\..\source\kernel\gen_system;..\..\..\source\gameengine\Ketsji;..\..\..\source\gameengine\physics;..\..\..\source\gameengine\rasterizer;..\..\..\source\gameengine\network;..\..\..\source\gameengine\gamelogic;..\..\..\source\gameengine\expressions;..\..\..\source\gameengine\physics\ode;..\..\..\source\gameengine\SceneGraph;..\..\..\source\gameengine\physics\sumo;..\..\..\source\gameengine\physics\BlOde;..\..\..\source\gameengine\physics\dummy;..\..\..\source\gameengine\BlenderRoutines;..\..\..\source\gameengine\ketsji\kxnetwork;..\..\..\source\gameengine\physics\common;..\..\..\source\gameengine\soundsystem\snd_openal;..\..\..\source\gameengine\rasterizer\ras_openglrasterizer;..\..\..\source\gameengine\physics\sumo\fuzzics\include;..\..\..\source\gameengine\soundsystem\snd_blenderwavecache;..\..\..\source\sumo\include;..\..\..\source\sumo\Fuzzics\include;..\..\..\source\gameengine\physics\bullet;..\..\..\source\blender\gpu"
|
AdditionalIncludeDirectories="..\..\..\..\build\msvc_9\intern\moto\include;..\..\..\..\build\msvc_9\intern\string\include;..\..\..\..\build\msvc_9\intern\guardedalloc\include;..\..\..\..\build\msvc_9\intern\soundsystem\include;..\..\..\..\build\msvc_9\extern\bullet\include;..\..\..\..\build\msvc_9\extern\glew\include;..\..\..\..\build\msvc_9\extern\solid\include;..\..\..\..\lib\windows\python\include\python2.5;..\..\..\source\blender;..\..\..\source\blender\imbuf;..\..\..\source\blender\blenlib;..\..\..\source\blender\include;..\..\..\source\blender\blenkernel;..\..\..\source\blender\makesdna;..\..\..\source\kernel\gen_system;..\..\..\source\gameengine\Ketsji;..\..\..\source\gameengine\physics;..\..\..\source\gameengine\rasterizer;..\..\..\source\gameengine\network;..\..\..\source\gameengine\gamelogic;..\..\..\source\gameengine\expressions;..\..\..\source\gameengine\physics\ode;..\..\..\source\gameengine\SceneGraph;..\..\..\source\gameengine\physics\sumo;..\..\..\source\gameengine\physics\BlOde;..\..\..\source\gameengine\physics\dummy;..\..\..\source\gameengine\BlenderRoutines;..\..\..\source\gameengine\ketsji\kxnetwork;..\..\..\source\gameengine\physics\common;..\..\..\source\gameengine\soundsystem\snd_openal;..\..\..\source\gameengine\rasterizer\ras_openglrasterizer;..\..\..\source\gameengine\physics\sumo\fuzzics\include;..\..\..\source\gameengine\soundsystem\snd_blenderwavecache;..\..\..\source\sumo\include;..\..\..\source\sumo\Fuzzics\include;..\..\..\source\gameengine\physics\bullet;..\..\..\source\blender\gpu;..\..\..\source\blender\windowmanager"
|
||||||
PreprocessorDefinitions="NDEBUG,WIN32,_LIB,USE_SUMO_SOLID"
|
PreprocessorDefinitions="NDEBUG,WIN32,_LIB,USE_SUMO_SOLID"
|
||||||
StringPooling="true"
|
StringPooling="true"
|
||||||
RuntimeLibrary="0"
|
RuntimeLibrary="0"
|
||||||
@ -193,7 +193,7 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories="..\..\..\..\build\msvc_9\intern\moto\include;..\..\..\..\build\msvc_9\intern\string\include;..\..\..\..\build\msvc_9\intern\guardedalloc\include;..\..\..\..\build\msvc_9\intern\soundsystem\include;..\..\..\..\build\msvc_9\extern\bullet\include;..\..\..\..\build\msvc_9\extern\glew\include;..\..\..\..\build\msvc_9\extern\solid\include;..\..\..\..\lib\windows\python\include\python2.5;..\..\..\source\blender;..\..\..\source\blender\imbuf;..\..\..\source\blender\blenlib;..\..\..\source\blender\include;..\..\..\source\blender\blenkernel;..\..\..\source\blender\makesdna;..\..\..\source\kernel\gen_system;..\..\..\source\gameengine\Ketsji;..\..\..\source\gameengine\physics;..\..\..\source\gameengine\rasterizer;..\..\..\source\gameengine\network;..\..\..\source\gameengine\gamelogic;..\..\..\source\gameengine\expressions;..\..\..\source\gameengine\physics\ode;..\..\..\source\gameengine\SceneGraph;..\..\..\source\gameengine\physics\sumo;..\..\..\source\gameengine\physics\BlOde;..\..\..\source\gameengine\physics\dummy;..\..\..\source\gameengine\BlenderRoutines;..\..\..\source\gameengine\ketsji\kxnetwork;..\..\..\source\gameengine\physics\common;..\..\..\source\gameengine\soundsystem\snd_openal;..\..\..\source\gameengine\rasterizer\ras_openglrasterizer;..\..\..\source\gameengine\physics\sumo\fuzzics\include;..\..\..\source\gameengine\soundsystem\snd_blenderwavecache;..\..\..\source\sumo\include;..\..\..\source\sumo\Fuzzics\include;..\..\..\source\gameengine\physics\bullet;..\..\..\source\blender\gpu"
|
AdditionalIncludeDirectories="..\..\..\..\build\msvc_9\intern\moto\include;..\..\..\..\build\msvc_9\intern\string\include;..\..\..\..\build\msvc_9\intern\guardedalloc\include;..\..\..\..\build\msvc_9\intern\soundsystem\include;..\..\..\..\build\msvc_9\extern\bullet\include;..\..\..\..\build\msvc_9\extern\glew\include;..\..\..\..\build\msvc_9\extern\solid\include;..\..\..\..\lib\windows\python\include\python2.5;..\..\..\source\blender;..\..\..\source\blender\imbuf;..\..\..\source\blender\blenlib;..\..\..\source\blender\include;..\..\..\source\blender\blenkernel;..\..\..\source\blender\makesdna;..\..\..\source\kernel\gen_system;..\..\..\source\gameengine\Ketsji;..\..\..\source\gameengine\physics;..\..\..\source\gameengine\rasterizer;..\..\..\source\gameengine\network;..\..\..\source\gameengine\gamelogic;..\..\..\source\gameengine\expressions;..\..\..\source\gameengine\physics\ode;..\..\..\source\gameengine\SceneGraph;..\..\..\source\gameengine\physics\sumo;..\..\..\source\gameengine\physics\BlOde;..\..\..\source\gameengine\physics\dummy;..\..\..\source\gameengine\BlenderRoutines;..\..\..\source\gameengine\ketsji\kxnetwork;..\..\..\source\gameengine\physics\common;..\..\..\source\gameengine\soundsystem\snd_openal;..\..\..\source\gameengine\rasterizer\ras_openglrasterizer;..\..\..\source\gameengine\physics\sumo\fuzzics\include;..\..\..\source\gameengine\soundsystem\snd_blenderwavecache;..\..\..\source\sumo\include;..\..\..\source\sumo\Fuzzics\include;..\..\..\source\gameengine\physics\bullet;..\..\..\source\blender\gpu;..\..\..\source\blender\windowmanager"
|
||||||
PreprocessorDefinitions="WIN32,_LIB,_DEBUG"
|
PreprocessorDefinitions="WIN32,_LIB,_DEBUG"
|
||||||
BasicRuntimeChecks="3"
|
BasicRuntimeChecks="3"
|
||||||
RuntimeLibrary="1"
|
RuntimeLibrary="1"
|
||||||
@ -268,7 +268,7 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
InlineFunctionExpansion="1"
|
InlineFunctionExpansion="1"
|
||||||
AdditionalIncludeDirectories="..\..\..\..\build\msvc_9\intern\moto\include;..\..\..\..\build\msvc_9\intern\string\include;..\..\..\..\build\msvc_9\intern\guardedalloc\include;..\..\..\..\build\msvc_9\intern\soundsystem\include;..\..\..\..\build\msvc_9\extern\bullet\include;..\..\..\..\build\msvc_9\extern\glew\include;..\..\..\..\build\msvc_9\extern\solid\include;..\..\..\..\lib\windows\python\include\python2.5;..\..\..\source\blender;..\..\..\source\blender\imbuf;..\..\..\source\blender\blenlib;..\..\..\source\blender\include;..\..\..\source\blender\blenkernel;..\..\..\source\blender\makesdna;..\..\..\source\kernel\gen_system;..\..\..\source\gameengine\Ketsji;..\..\..\source\gameengine\physics;..\..\..\source\gameengine\rasterizer;..\..\..\source\gameengine\network;..\..\..\source\gameengine\gamelogic;..\..\..\source\gameengine\expressions;..\..\..\source\gameengine\physics\ode;..\..\..\source\gameengine\SceneGraph;..\..\..\source\gameengine\physics\sumo;..\..\..\source\gameengine\physics\BlOde;..\..\..\source\gameengine\physics\dummy;..\..\..\source\gameengine\BlenderRoutines;..\..\..\source\gameengine\ketsji\kxnetwork;..\..\..\source\gameengine\physics\common;..\..\..\source\gameengine\soundsystem\snd_openal;..\..\..\source\gameengine\rasterizer\ras_openglrasterizer;..\..\..\source\gameengine\physics\sumo\fuzzics\include;..\..\..\source\gameengine\soundsystem\snd_blenderwavecache;..\..\..\source\sumo\include;..\..\..\source\sumo\Fuzzics\include;..\..\..\source\gameengine\physics\bullet;..\..\..\source\blender\gpu"
|
AdditionalIncludeDirectories="..\..\..\..\build\msvc_9\intern\moto\include;..\..\..\..\build\msvc_9\intern\string\include;..\..\..\..\build\msvc_9\intern\guardedalloc\include;..\..\..\..\build\msvc_9\intern\soundsystem\include;..\..\..\..\build\msvc_9\extern\bullet\include;..\..\..\..\build\msvc_9\extern\glew\include;..\..\..\..\build\msvc_9\extern\solid\include;..\..\..\..\lib\windows\python\include\python2.5;..\..\..\source\blender;..\..\..\source\blender\imbuf;..\..\..\source\blender\blenlib;..\..\..\source\blender\include;..\..\..\source\blender\blenkernel;..\..\..\source\blender\makesdna;..\..\..\source\kernel\gen_system;..\..\..\source\gameengine\Ketsji;..\..\..\source\gameengine\physics;..\..\..\source\gameengine\rasterizer;..\..\..\source\gameengine\network;..\..\..\source\gameengine\gamelogic;..\..\..\source\gameengine\expressions;..\..\..\source\gameengine\physics\ode;..\..\..\source\gameengine\SceneGraph;..\..\..\source\gameengine\physics\sumo;..\..\..\source\gameengine\physics\BlOde;..\..\..\source\gameengine\physics\dummy;..\..\..\source\gameengine\BlenderRoutines;..\..\..\source\gameengine\ketsji\kxnetwork;..\..\..\source\gameengine\physics\common;..\..\..\source\gameengine\soundsystem\snd_openal;..\..\..\source\gameengine\rasterizer\ras_openglrasterizer;..\..\..\source\gameengine\physics\sumo\fuzzics\include;..\..\..\source\gameengine\soundsystem\snd_blenderwavecache;..\..\..\source\sumo\include;..\..\..\source\sumo\Fuzzics\include;..\..\..\source\gameengine\physics\bullet;..\..\..\source\blender\gpu;..\..\..\source\blender\windowmanager"
|
||||||
PreprocessorDefinitions="NDEBUG,WIN32,_LIB,USE_SUMO_SOLID"
|
PreprocessorDefinitions="NDEBUG,WIN32,_LIB,USE_SUMO_SOLID"
|
||||||
StringPooling="true"
|
StringPooling="true"
|
||||||
RuntimeLibrary="2"
|
RuntimeLibrary="2"
|
||||||
@ -344,7 +344,7 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories="..\..\..\..\build\msvc_9\intern\moto\include;..\..\..\..\build\msvc_9\intern\string\include;..\..\..\..\build\msvc_9\intern\guardedalloc\include;..\..\..\..\build\msvc_9\intern\soundsystem\include;..\..\..\..\build\msvc_9\extern\bullet\include;..\..\..\..\build\msvc_9\extern\glew\include;..\..\..\..\build\msvc_9\extern\solid\include;..\..\..\..\lib\windows\python\include\python2.5;..\..\..\source\blender;..\..\..\source\blender\imbuf;..\..\..\source\blender\blenlib;..\..\..\source\blender\include;..\..\..\source\blender\blenkernel;..\..\..\source\blender\makesdna;..\..\..\source\kernel\gen_system;..\..\..\source\gameengine\Ketsji;..\..\..\source\gameengine\physics;..\..\..\source\gameengine\rasterizer;..\..\..\source\gameengine\network;..\..\..\source\gameengine\gamelogic;..\..\..\source\gameengine\expressions;..\..\..\source\gameengine\physics\ode;..\..\..\source\gameengine\SceneGraph;..\..\..\source\gameengine\physics\sumo;..\..\..\source\gameengine\physics\BlOde;..\..\..\source\gameengine\physics\dummy;..\..\..\source\gameengine\BlenderRoutines;..\..\..\source\gameengine\ketsji\kxnetwork;..\..\..\source\gameengine\physics\common;..\..\..\source\gameengine\soundsystem\snd_openal;..\..\..\source\gameengine\rasterizer\ras_openglrasterizer;..\..\..\source\gameengine\physics\sumo\fuzzics\include;..\..\..\source\gameengine\soundsystem\snd_blenderwavecache;..\..\..\source\sumo\include;..\..\..\source\sumo\Fuzzics\include;..\..\..\source\gameengine\physics\bullet;..\..\..\source\blender\gpu"
|
AdditionalIncludeDirectories="..\..\..\..\build\msvc_9\intern\moto\include;..\..\..\..\build\msvc_9\intern\string\include;..\..\..\..\build\msvc_9\intern\guardedalloc\include;..\..\..\..\build\msvc_9\intern\soundsystem\include;..\..\..\..\build\msvc_9\extern\bullet\include;..\..\..\..\build\msvc_9\extern\glew\include;..\..\..\..\build\msvc_9\extern\solid\include;..\..\..\..\lib\windows\python\include\python2.5;..\..\..\source\blender;..\..\..\source\blender\imbuf;..\..\..\source\blender\blenlib;..\..\..\source\blender\include;..\..\..\source\blender\blenkernel;..\..\..\source\blender\makesdna;..\..\..\source\kernel\gen_system;..\..\..\source\gameengine\Ketsji;..\..\..\source\gameengine\physics;..\..\..\source\gameengine\rasterizer;..\..\..\source\gameengine\network;..\..\..\source\gameengine\gamelogic;..\..\..\source\gameengine\expressions;..\..\..\source\gameengine\physics\ode;..\..\..\source\gameengine\SceneGraph;..\..\..\source\gameengine\physics\sumo;..\..\..\source\gameengine\physics\BlOde;..\..\..\source\gameengine\physics\dummy;..\..\..\source\gameengine\BlenderRoutines;..\..\..\source\gameengine\ketsji\kxnetwork;..\..\..\source\gameengine\physics\common;..\..\..\source\gameengine\soundsystem\snd_openal;..\..\..\source\gameengine\rasterizer\ras_openglrasterizer;..\..\..\source\gameengine\physics\sumo\fuzzics\include;..\..\..\source\gameengine\soundsystem\snd_blenderwavecache;..\..\..\source\sumo\include;..\..\..\source\sumo\Fuzzics\include;..\..\..\source\gameengine\physics\bullet;..\..\..\source\blender\gpu;..\..\..\source\blender\windowmanager"
|
||||||
PreprocessorDefinitions="WIN32,_LIB,_DEBUG"
|
PreprocessorDefinitions="WIN32,_LIB,_DEBUG"
|
||||||
BasicRuntimeChecks="3"
|
BasicRuntimeChecks="3"
|
||||||
RuntimeLibrary="1"
|
RuntimeLibrary="1"
|
||||||
@ -419,7 +419,7 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
InlineFunctionExpansion="1"
|
InlineFunctionExpansion="1"
|
||||||
AdditionalIncludeDirectories="..\..\..\..\build\msvc_9\intern\moto\include;..\..\..\..\build\msvc_9\intern\string\include;..\..\..\..\build\msvc_9\intern\guardedalloc\include;..\..\..\..\build\msvc_9\intern\soundsystem\include;..\..\..\..\build\msvc_9\extern\bullet\include;..\..\..\..\build\msvc_9\extern\glew\include;..\..\..\..\build\msvc_9\extern\solid\include;..\..\..\..\lib\windows\python\include\python2.5;..\..\..\source\blender;..\..\..\source\blender\imbuf;..\..\..\source\blender\blenlib;..\..\..\source\blender\include;..\..\..\source\blender\blenkernel;..\..\..\source\blender\makesdna;..\..\..\source\kernel\gen_system;..\..\..\source\gameengine\Ketsji;..\..\..\source\gameengine\physics;..\..\..\source\gameengine\rasterizer;..\..\..\source\gameengine\network;..\..\..\source\gameengine\gamelogic;..\..\..\source\gameengine\expressions;..\..\..\source\gameengine\physics\ode;..\..\..\source\gameengine\SceneGraph;..\..\..\source\gameengine\physics\sumo;..\..\..\source\gameengine\physics\BlOde;..\..\..\source\gameengine\physics\dummy;..\..\..\source\gameengine\BlenderRoutines;..\..\..\source\gameengine\ketsji\kxnetwork;..\..\..\source\gameengine\physics\common;..\..\..\source\gameengine\soundsystem\snd_openal;..\..\..\source\gameengine\rasterizer\ras_openglrasterizer;..\..\..\source\gameengine\physics\sumo\fuzzics\include;..\..\..\source\gameengine\soundsystem\snd_blenderwavecache;..\..\..\source\sumo\include;..\..\..\source\sumo\Fuzzics\include;..\..\..\source\gameengine\physics\bullet;..\..\..\source\blender\gpu"
|
AdditionalIncludeDirectories="..\..\..\..\build\msvc_9\intern\moto\include;..\..\..\..\build\msvc_9\intern\string\include;..\..\..\..\build\msvc_9\intern\guardedalloc\include;..\..\..\..\build\msvc_9\intern\soundsystem\include;..\..\..\..\build\msvc_9\extern\bullet\include;..\..\..\..\build\msvc_9\extern\glew\include;..\..\..\..\build\msvc_9\extern\solid\include;..\..\..\..\lib\windows\python\include\python2.5;..\..\..\source\blender;..\..\..\source\blender\imbuf;..\..\..\source\blender\blenlib;..\..\..\source\blender\include;..\..\..\source\blender\blenkernel;..\..\..\source\blender\makesdna;..\..\..\source\kernel\gen_system;..\..\..\source\gameengine\Ketsji;..\..\..\source\gameengine\physics;..\..\..\source\gameengine\rasterizer;..\..\..\source\gameengine\network;..\..\..\source\gameengine\gamelogic;..\..\..\source\gameengine\expressions;..\..\..\source\gameengine\physics\ode;..\..\..\source\gameengine\SceneGraph;..\..\..\source\gameengine\physics\sumo;..\..\..\source\gameengine\physics\BlOde;..\..\..\source\gameengine\physics\dummy;..\..\..\source\gameengine\BlenderRoutines;..\..\..\source\gameengine\ketsji\kxnetwork;..\..\..\source\gameengine\physics\common;..\..\..\source\gameengine\soundsystem\snd_openal;..\..\..\source\gameengine\rasterizer\ras_openglrasterizer;..\..\..\source\gameengine\physics\sumo\fuzzics\include;..\..\..\source\gameengine\soundsystem\snd_blenderwavecache;..\..\..\source\sumo\include;..\..\..\source\sumo\Fuzzics\include;..\..\..\source\gameengine\physics\bullet;..\..\..\source\blender\gpu;..\..\..\source\blender\windowmanager"
|
||||||
PreprocessorDefinitions="NDEBUG,WIN32,_LIB,USE_SUMO_SOLID"
|
PreprocessorDefinitions="NDEBUG,WIN32,_LIB,USE_SUMO_SOLID"
|
||||||
StringPooling="true"
|
StringPooling="true"
|
||||||
RuntimeLibrary="0"
|
RuntimeLibrary="0"
|
||||||
|
@ -72,7 +72,7 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalOptions="/MACHINE:I386
"
|
AdditionalOptions="/MACHINE:I386
"
|
||||||
AdditionalDependencies="odelib.lib fmodvc.lib ws2_32.lib vfw32.lib odbc32.lib odbccp32.lib opengl32.lib glu32.lib openal_static.lib libjpeg.lib dxguid.lib libeay32.lib libpng.lib libz.lib qtmlClient.lib SDL.lib freetype2ST.lib python25_d.lib pthreadVSE2.lib pthreadVC2.lib Half_d.lib Iex_d.lib IlmImf_d.lib IlmThread_d.lib Imath_d.lib avcodec-52.lib avformat-52.lib avutil-50.lib swscale-0.lib avdevice-52.lib"
|
AdditionalDependencies="ws2_32.lib vfw32.lib odbc32.lib odbccp32.lib opengl32.lib glu32.lib openal_static.lib libjpeg.lib dxguid.lib libeay32.lib libpng.lib libz.lib qtmlClient.lib SDL.lib freetype2ST.lib python25_d.lib pthreadVSE2.lib pthreadVC2.lib Half_d.lib Iex_d.lib IlmImf_d.lib IlmThread_d.lib Imath_d.lib avcodec-52.lib avformat-52.lib avutil-50.lib swscale-0.lib avdevice-52.lib"
|
||||||
ShowProgress="0"
|
ShowProgress="0"
|
||||||
OutputFile="..\..\..\..\bin\debug\blenderplayer.exe"
|
OutputFile="..\..\..\..\bin\debug\blenderplayer.exe"
|
||||||
LinkIncremental="2"
|
LinkIncremental="2"
|
||||||
@ -233,10 +233,6 @@
|
|||||||
RelativePath="..\..\..\..\source\gameengine\GamePlayer\ghost\GPG_System.cpp"
|
RelativePath="..\..\..\..\source\gameengine\GamePlayer\ghost\GPG_System.cpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\..\source\blender\blenkernel\bad_level_call_stubs\stubs.c"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\..\source\icons\winplayer.rc"
|
RelativePath="..\..\..\..\source\icons\winplayer.rc"
|
||||||
>
|
>
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#dxfLibrary.py : provides functions for generating DXF files
|
#dxfLibrary.py : provides functions for generating DXF files
|
||||||
# --------------------------------------------------------------------------
|
# --------------------------------------------------------------------------
|
||||||
__version__ = "v1.32 - 2009.06.06"
|
__version__ = "v1.33 - 2009.06.16"
|
||||||
__author__ = "Stani Michiels(Stani), Remigiusz Fiedler(migius)"
|
__author__ = "Stani Michiels(Stani), Remigiusz Fiedler(migius)"
|
||||||
__license__ = "GPL"
|
__license__ = "GPL"
|
||||||
__url__ = "http://wiki.blender.org/index.php/Scripts/Manual/Export/autodesk_dxf"
|
__url__ = "http://wiki.blender.org/index.php/Scripts/Manual/Export/autodesk_dxf"
|
||||||
@ -20,8 +20,14 @@ IDEAs:
|
|||||||
TODO:
|
TODO:
|
||||||
- add support for DXFr14 (needs extended file header)
|
- add support for DXFr14 (needs extended file header)
|
||||||
- add support for SPLINEs (possible first in DXFr14 version)
|
- add support for SPLINEs (possible first in DXFr14 version)
|
||||||
|
- add user preset for floating point precision (3-16?)
|
||||||
|
|
||||||
History
|
History
|
||||||
|
v1.33 - 2009.06.16 by migius
|
||||||
|
- modif _point(): converts all coords to floats
|
||||||
|
- modif LineType class: implement elements
|
||||||
|
- added VPORT class, incl. defaults
|
||||||
|
- fix Insert class
|
||||||
v1.32 - 2009.06.06 by migius
|
v1.32 - 2009.06.06 by migius
|
||||||
- modif Style class: changed defaults to widthFactor=1.0, obliqueAngle=0.0
|
- modif Style class: changed defaults to widthFactor=1.0, obliqueAngle=0.0
|
||||||
- modif Text class: alignment parameter reactivated
|
- modif Text class: alignment parameter reactivated
|
||||||
@ -88,7 +94,7 @@ _HEADER_POINTS=['insbase','extmin','extmax']
|
|||||||
def _point(x,index=0):
|
def _point(x,index=0):
|
||||||
"""Convert tuple to a dxf point"""
|
"""Convert tuple to a dxf point"""
|
||||||
#print 'deb: _point=', x #-------------
|
#print 'deb: _point=', x #-------------
|
||||||
return '\n'.join([' %s\n%s'%((i+1)*10+index,x[i]) for i in range(len(x))])
|
return '\n'.join([' %s\n%s'%((i+1)*10+index,float(x[i])) for i in range(len(x))])
|
||||||
|
|
||||||
def _points(plist):
|
def _points(plist):
|
||||||
"""Convert a list of tuples to dxf points"""
|
"""Convert a list of tuples to dxf points"""
|
||||||
@ -287,7 +293,7 @@ class Insert(_Entity):
|
|||||||
self.rotation=rotation
|
self.rotation=rotation
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
result=' 0\nINSERT\n 2\n%s\n%s\n%s\n'%\
|
result=' 0\nINSERT\n 2\n%s\n%s%s\n'%\
|
||||||
(self.name,self._common(),_point(self.point))
|
(self.name,self._common(),_point(self.point))
|
||||||
if self.xscale!=None:result+=' 41\n%s\n'%self.xscale
|
if self.xscale!=None:result+=' 41\n%s\n'%self.xscale
|
||||||
if self.yscale!=None:result+=' 42\n%s\n'%self.yscale
|
if self.yscale!=None:result+=' 42\n%s\n'%self.yscale
|
||||||
@ -535,15 +541,22 @@ class Layer(_Call):
|
|||||||
#-----------------------------------------------
|
#-----------------------------------------------
|
||||||
class LineType(_Call):
|
class LineType(_Call):
|
||||||
"""Custom linetype"""
|
"""Custom linetype"""
|
||||||
def __init__(self,name='continuous',description='Solid line',elements=[],flag=64):
|
def __init__(self,name='CONTINUOUS',description='Solid line',elements=[0.0],flag=0):
|
||||||
# TODO: Implement lineType elements
|
|
||||||
self.name=name
|
self.name=name
|
||||||
self.description=description
|
self.description=description
|
||||||
self.elements=copy.copy(elements)
|
self.elements=copy.copy(elements)
|
||||||
self.flag=flag
|
self.flag=flag
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return ' 0\nLTYPE\n 2\n%s\n 70\n%s\n 3\n%s\n 72\n65\n 73\n%s\n 40\n0.0\n'%\
|
result = ' 0\nLTYPE\n 2\n%s\n 70\n%s\n 3\n%s\n 72\n65\n'%\
|
||||||
(self.name.upper(),self.flag,self.description,len(self.elements))
|
(self.name.upper(),self.flag,self.description)
|
||||||
|
if self.elements:
|
||||||
|
elements = ' 73\n%s\n' %(len(self.elements)-1)
|
||||||
|
elements += ' 40\n%s\n' %(self.elements[0])
|
||||||
|
for e in self.elements[1:]:
|
||||||
|
elements += ' 49\n%s\n' %e
|
||||||
|
result += elements
|
||||||
|
return result
|
||||||
|
|
||||||
|
|
||||||
#-----------------------------------------------
|
#-----------------------------------------------
|
||||||
class Style(_Call):
|
class Style(_Call):
|
||||||
@ -566,27 +579,137 @@ class Style(_Call):
|
|||||||
self.font.upper(),self.bigFont.upper())
|
self.font.upper(),self.bigFont.upper())
|
||||||
|
|
||||||
#-----------------------------------------------
|
#-----------------------------------------------
|
||||||
class View(_Call):
|
class VPort(_Call):
|
||||||
def __init__(self,name,flag=0,width=1,height=1,center=(0.5,0.5),
|
def __init__(self,name,flag=0,
|
||||||
direction=(0,0,1),target=(0,0,0),lens=50,
|
leftBottom=(0.0,0.0),
|
||||||
frontClipping=0,backClipping=0,twist=0,mode=0):
|
rightTop=(1.0,1.0),
|
||||||
|
center=(0.5,0.5),
|
||||||
|
snap_base=(0.0,0.0),
|
||||||
|
snap_spacing=(0.1,0.1),
|
||||||
|
grid_spacing=(0.1,0.1),
|
||||||
|
direction=(0.0,0.0,1.0),
|
||||||
|
target=(0.0,0.0,0.0),
|
||||||
|
height=1.0,
|
||||||
|
ratio=1.0,
|
||||||
|
lens=50,
|
||||||
|
frontClipping=0,
|
||||||
|
backClipping=0,
|
||||||
|
snap_rotation=0,
|
||||||
|
twist=0,
|
||||||
|
mode=0,
|
||||||
|
circle_zoom=100,
|
||||||
|
fast_zoom=1,
|
||||||
|
ucsicon=1,
|
||||||
|
snap_on=0,
|
||||||
|
grid_on=0,
|
||||||
|
snap_style=0,
|
||||||
|
snap_isopair=0
|
||||||
|
):
|
||||||
self.name=name
|
self.name=name
|
||||||
self.flag=flag
|
self.flag=flag
|
||||||
self.width=width
|
self.leftBottom=leftBottom
|
||||||
self.height=height
|
self.rightTop=rightTop
|
||||||
|
self.center=center
|
||||||
|
self.snap_base=snap_base
|
||||||
|
self.snap_spacing=snap_spacing
|
||||||
|
self.grid_spacing=grid_spacing
|
||||||
|
self.direction=direction
|
||||||
|
self.target=target
|
||||||
|
self.height=float(height)
|
||||||
|
self.ratio=float(ratio)
|
||||||
|
self.lens=float(lens)
|
||||||
|
self.frontClipping=float(frontClipping)
|
||||||
|
self.backClipping=float(backClipping)
|
||||||
|
self.snap_rotation=float(snap_rotation)
|
||||||
|
self.twist=float(twist)
|
||||||
|
self.mode=mode
|
||||||
|
self.circle_zoom=circle_zoom
|
||||||
|
self.fast_zoom=fast_zoom
|
||||||
|
self.ucsicon=ucsicon
|
||||||
|
self.snap_on=snap_on
|
||||||
|
self.grid_on=grid_on
|
||||||
|
self.snap_style=snap_style
|
||||||
|
self.snap_isopair=snap_isopair
|
||||||
|
def __str__(self):
|
||||||
|
output = [' 0', 'VPORT',
|
||||||
|
' 2', self.name,
|
||||||
|
' 70', self.flag,
|
||||||
|
_point(self.leftBottom),
|
||||||
|
_point(self.rightTop,1),
|
||||||
|
_point(self.center,2), # View center point (in DCS)
|
||||||
|
_point(self.snap_base,3),
|
||||||
|
_point(self.snap_spacing,4),
|
||||||
|
_point(self.grid_spacing,5),
|
||||||
|
_point(self.direction,6), #view direction from target (in WCS)
|
||||||
|
_point(self.target,7),
|
||||||
|
' 40', self.height,
|
||||||
|
' 41', self.ratio,
|
||||||
|
' 42', self.lens,
|
||||||
|
' 43', self.frontClipping,
|
||||||
|
' 44', self.backClipping,
|
||||||
|
' 50', self.snap_rotation,
|
||||||
|
' 51', self.twist,
|
||||||
|
' 71', self.mode,
|
||||||
|
' 72', self.circle_zoom,
|
||||||
|
' 73', self.fast_zoom,
|
||||||
|
' 74', self.ucsicon,
|
||||||
|
' 75', self.snap_on,
|
||||||
|
' 76', self.grid_on,
|
||||||
|
' 77', self.snap_style,
|
||||||
|
' 78', self.snap_isopair
|
||||||
|
]
|
||||||
|
|
||||||
|
output_str = ''
|
||||||
|
for s in output:
|
||||||
|
output_str += '%s\n' %s
|
||||||
|
return output_str
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#-----------------------------------------------
|
||||||
|
class View(_Call):
|
||||||
|
def __init__(self,name,flag=0,
|
||||||
|
width=1,
|
||||||
|
height=1,
|
||||||
|
center=(0.5,0.5),
|
||||||
|
direction=(0,0,1),
|
||||||
|
target=(0,0,0),
|
||||||
|
lens=50,
|
||||||
|
frontClipping=0,
|
||||||
|
backClipping=0,
|
||||||
|
twist=0,mode=0
|
||||||
|
):
|
||||||
|
self.name=name
|
||||||
|
self.flag=flag
|
||||||
|
self.width=float(width)
|
||||||
|
self.height=float(height)
|
||||||
self.center=center
|
self.center=center
|
||||||
self.direction=direction
|
self.direction=direction
|
||||||
self.target=target
|
self.target=target
|
||||||
self.lens=lens
|
self.lens=float(lens)
|
||||||
self.frontClipping=frontClipping
|
self.frontClipping=float(frontClipping)
|
||||||
self.backClipping=backClipping
|
self.backClipping=float(backClipping)
|
||||||
self.twist=twist
|
self.twist=float(twist)
|
||||||
self.mode=mode
|
self.mode=mode
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return ' 0\nVIEW\n 2\n%s\n 70\n%s\n 40\n%s\n%s\n 41\n%s\n%s\n%s\n 42\n%s\n 43\n%s\n 44\n%s\n 50\n%s\n 71\n%s\n'%\
|
output = [' 0', 'VIEW',
|
||||||
(self.name,self.flag,self.height,_point(self.center),self.width,
|
' 2', self.name,
|
||||||
_point(self.direction,1),_point(self.target,2),self.lens,
|
' 70', self.flag,
|
||||||
self.frontClipping,self.backClipping,self.twist,self.mode)
|
' 40', self.height,
|
||||||
|
_point(self.center),
|
||||||
|
' 41', self.width,
|
||||||
|
_point(self.direction,1),
|
||||||
|
_point(self.target,2),
|
||||||
|
' 42', self.lens,
|
||||||
|
' 43', self.frontClipping,
|
||||||
|
' 44', self.backClipping,
|
||||||
|
' 50', self.twist,
|
||||||
|
' 71', self.mode
|
||||||
|
]
|
||||||
|
output_str = ''
|
||||||
|
for s in output:
|
||||||
|
output_str += '%s\n' %s
|
||||||
|
return output_str
|
||||||
|
|
||||||
#-----------------------------------------------
|
#-----------------------------------------------
|
||||||
def ViewByWindow(name,leftBottom=(0,0),rightTop=(1,1),**options):
|
def ViewByWindow(name,leftBottom=(0,0),rightTop=(1,1),**options):
|
||||||
@ -601,7 +724,7 @@ class Drawing(_Collection):
|
|||||||
"""Dxf drawing. Use append or any other list methods to add objects."""
|
"""Dxf drawing. Use append or any other list methods to add objects."""
|
||||||
def __init__(self,insbase=(0.0,0.0,0.0),extmin=(0.0,0.0,0.0),extmax=(0.0,0.0,0.0),
|
def __init__(self,insbase=(0.0,0.0,0.0),extmin=(0.0,0.0,0.0),extmax=(0.0,0.0,0.0),
|
||||||
layers=[Layer()],linetypes=[LineType()],styles=[Style()],blocks=[],
|
layers=[Layer()],linetypes=[LineType()],styles=[Style()],blocks=[],
|
||||||
views=[],entities=None,fileName='test.dxf'):
|
views=[],vports=[],entities=None,fileName='test.dxf'):
|
||||||
# TODO: replace list with None,arial
|
# TODO: replace list with None,arial
|
||||||
if not entities:
|
if not entities:
|
||||||
entities=[]
|
entities=[]
|
||||||
@ -613,6 +736,7 @@ class Drawing(_Collection):
|
|||||||
self.linetypes=copy.copy(linetypes)
|
self.linetypes=copy.copy(linetypes)
|
||||||
self.styles=copy.copy(styles)
|
self.styles=copy.copy(styles)
|
||||||
self.views=copy.copy(views)
|
self.views=copy.copy(views)
|
||||||
|
self.vports=copy.copy(vports)
|
||||||
self.blocks=copy.copy(blocks)
|
self.blocks=copy.copy(blocks)
|
||||||
self.fileName=fileName
|
self.fileName=fileName
|
||||||
#private
|
#private
|
||||||
@ -656,7 +780,8 @@ class Drawing(_Collection):
|
|||||||
header=[self.acadver]+[self._point(attr,getattr(self,attr))+'\n' for attr in _HEADER_POINTS]
|
header=[self.acadver]+[self._point(attr,getattr(self,attr))+'\n' for attr in _HEADER_POINTS]
|
||||||
header=self._section('header',header)
|
header=self._section('header',header)
|
||||||
|
|
||||||
tables=[self._table('ltype',[str(x) for x in self.linetypes]),
|
tables=[self._table('vport',[str(x) for x in self.vports]),
|
||||||
|
self._table('ltype',[str(x) for x in self.linetypes]),
|
||||||
self._table('layer',[str(x) for x in self.layers]),
|
self._table('layer',[str(x) for x in self.layers]),
|
||||||
self._table('style',[str(x) for x in self.styles]),
|
self._table('style',[str(x) for x in self.styles]),
|
||||||
self._table('view',[str(x) for x in self.views]),
|
self._table('view',[str(x) for x in self.views]),
|
||||||
@ -740,17 +865,16 @@ def test():
|
|||||||
d.append(Line(points=[(0,0,0),(1,1,1)]))
|
d.append(Line(points=[(0,0,0),(1,1,1)]))
|
||||||
d.append(Mtext('Click on Ads\nmultiple lines with mtext',point=(1,1,1),color=5,rotation=90))
|
d.append(Mtext('Click on Ads\nmultiple lines with mtext',point=(1,1,1),color=5,rotation=90))
|
||||||
d.append(Text('Please donate!',point=(3,0,1)))
|
d.append(Text('Please donate!',point=(3,0,1)))
|
||||||
d.append(Rectangle(point=(2,2,2),width=4,height=3,color=6,solid=Solid(color=2)))
|
#d.append(Rectangle(point=(2,2,2),width=4,height=3,color=6,solid=Solid(color=2)))
|
||||||
d.append(Solid(points=[(4,4,0),(5,4,0),(7,8,0),(9,9,0)],color=3))
|
d.append(Solid(points=[(4,4,0),(5,4,0),(7,8,0),(9,9,0)],color=3))
|
||||||
d.append(PolyLine(points=[(1,1,1),(2,1,1),(2,2,1),(1,2,1)],closed=1,color=1))
|
#d.append(PolyLine(points=[(1,1,1),(2,1,1),(2,2,1),(1,2,1)],flag=1,color=1))
|
||||||
|
|
||||||
#d.saveas('c:\\test.dxf')
|
#d.saveas('c:\\test.dxf')
|
||||||
d.saveas('test.dxf')
|
d.saveas('test.dxf')
|
||||||
|
|
||||||
|
|
||||||
#-----------------------------------------------------
|
#-----------------------------------------------------
|
||||||
if __name__=='__main__':
|
if __name__=='__main__':
|
||||||
if not copy:
|
if not copy:
|
||||||
Draw.PupMenu('Error%t|This script requires a full python install')
|
Draw.PupMenu('Error%t|This script requires a full python install')
|
||||||
else: main()
|
else: test()
|
||||||
|
|
@ -221,20 +221,25 @@ def write(filename, objects,
|
|||||||
file.write('mtllib %s\n' % ( mtlfilename.split('\\')[-1].split('/')[-1] ))
|
file.write('mtllib %s\n' % ( mtlfilename.split('\\')[-1].split('/')[-1] ))
|
||||||
|
|
||||||
# Get the container mesh. - used for applying modifiers and non mesh objects.
|
# Get the container mesh. - used for applying modifiers and non mesh objects.
|
||||||
containerMesh = meshName = tempMesh = None
|
|
||||||
for meshName in Blender.NMesh.GetNames():
|
# containerMesh = meshName = tempMesh = None
|
||||||
if meshName.startswith(temp_mesh_name):
|
# for meshName in Blender.NMesh.GetNames():
|
||||||
tempMesh = Mesh.Get(meshName)
|
# if meshName.startswith(temp_mesh_name):
|
||||||
if not tempMesh.users:
|
# tempMesh = Mesh.Get(meshName)
|
||||||
containerMesh = tempMesh
|
# if not tempMesh.users:
|
||||||
if not containerMesh:
|
# containerMesh = tempMesh
|
||||||
containerMesh = Mesh.New(temp_mesh_name)
|
# if not containerMesh:
|
||||||
|
# containerMesh = Mesh.New(temp_mesh_name)
|
||||||
|
|
||||||
|
# XXX this mesh is not removed
|
||||||
|
# XXX this mesh should not be in database
|
||||||
|
containerMesh = bpy.data.add_mesh(temp_mesh_name)
|
||||||
|
|
||||||
if EXPORT_ROTX90:
|
if EXPORT_ROTX90:
|
||||||
mat_xrot90= Blender.Mathutils.RotationMatrix(-90, 4, 'x')
|
mat_xrot90= Blender.Mathutils.RotationMatrix(-90, 4, 'x')
|
||||||
|
|
||||||
del meshName
|
# del meshName
|
||||||
del tempMesh
|
# del tempMesh
|
||||||
|
|
||||||
# Initialize totals, these are updated each object
|
# Initialize totals, these are updated each object
|
||||||
totverts = totuvco = totno = 1
|
totverts = totuvco = totno = 1
|
||||||
|
@ -13,11 +13,15 @@ class DATA_PT_skeleton(DataButtonsPanel):
|
|||||||
__idname__ = "DATA_PT_skeleton"
|
__idname__ = "DATA_PT_skeleton"
|
||||||
__label__ = "Skeleton"
|
__label__ = "Skeleton"
|
||||||
|
|
||||||
|
def poll(self, context):
|
||||||
|
return (context.object.type == 'ARMATURE' or context.armature)
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
ob = context.object
|
ob = context.object
|
||||||
arm = context.armature
|
arm = context.armature
|
||||||
space = context.space_data
|
space = context.space_data
|
||||||
layout = self.layout
|
|
||||||
|
|
||||||
split = layout.split(percentage=0.65)
|
split = layout.split(percentage=0.65)
|
||||||
|
|
||||||
@ -54,8 +58,8 @@ class DATA_PT_display(DataButtonsPanel):
|
|||||||
__label__ = "Display"
|
__label__ = "Display"
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
arm = context.armature
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
arm = context.armature
|
||||||
|
|
||||||
split = layout.split()
|
split = layout.split()
|
||||||
|
|
||||||
@ -74,8 +78,8 @@ class DATA_PT_paths(DataButtonsPanel):
|
|||||||
__label__ = "Paths"
|
__label__ = "Paths"
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
arm = context.armature
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
arm = context.armature
|
||||||
|
|
||||||
split = layout.split()
|
split = layout.split()
|
||||||
|
|
||||||
@ -102,8 +106,8 @@ class DATA_PT_ghost(DataButtonsPanel):
|
|||||||
__label__ = "Ghost"
|
__label__ = "Ghost"
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
arm = context.armature
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
arm = context.armature
|
||||||
|
|
||||||
split = layout.split()
|
split = layout.split()
|
||||||
|
|
||||||
|
@ -14,8 +14,8 @@ class BONE_PT_bone(BoneButtonsPanel):
|
|||||||
__label__ = "Bone"
|
__label__ = "Bone"
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
bone = context.bone
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
bone = context.bone
|
||||||
|
|
||||||
split = layout.split()
|
split = layout.split()
|
||||||
|
|
||||||
@ -51,4 +51,3 @@ class BONE_PT_bone(BoneButtonsPanel):
|
|||||||
sub.itemR(bone, "cyclic_offset")
|
sub.itemR(bone, "cyclic_offset")
|
||||||
|
|
||||||
bpy.types.register(BONE_PT_bone)
|
bpy.types.register(BONE_PT_bone)
|
||||||
|
|
||||||
|
@ -13,11 +13,15 @@ class DATA_PT_camera(DataButtonsPanel):
|
|||||||
__idname__ = "DATA_PT_camera"
|
__idname__ = "DATA_PT_camera"
|
||||||
__label__ = "Lens"
|
__label__ = "Lens"
|
||||||
|
|
||||||
|
def poll(self, context):
|
||||||
|
return (context.object.type == 'CAMERA')
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
ob = context.object
|
ob = context.object
|
||||||
cam = context.camera
|
cam = context.camera
|
||||||
space = context.space_data
|
space = context.space_data
|
||||||
layout = self.layout
|
|
||||||
|
|
||||||
split = layout.split(percentage=0.65)
|
split = layout.split(percentage=0.65)
|
||||||
|
|
||||||
|
@ -7,18 +7,21 @@ class DataButtonsPanel(bpy.types.Panel):
|
|||||||
__context__ = "data"
|
__context__ = "data"
|
||||||
|
|
||||||
def poll(self, context):
|
def poll(self, context):
|
||||||
ob = context.object
|
return (context.object.type == 'CURVE' and context.curve)
|
||||||
return (ob and ob.type == 'CURVE' and context.curve)
|
|
||||||
|
|
||||||
class DATA_PT_shape_curve(DataButtonsPanel):
|
class DATA_PT_shape_curve(DataButtonsPanel):
|
||||||
__idname__ = "DATA_PT_shape_curve"
|
__idname__ = "DATA_PT_shape_curve"
|
||||||
__label__ = "Shape"
|
__label__ = "Shape"
|
||||||
|
|
||||||
|
def poll(self, context):
|
||||||
|
return (context.object.type == 'CURVE')
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
ob = context.object
|
ob = context.object
|
||||||
curve = context.curve
|
curve = context.curve
|
||||||
space = context.space_data
|
space = context.space_data
|
||||||
layout = self.layout
|
|
||||||
|
|
||||||
split = layout.split(percentage=0.65)
|
split = layout.split(percentage=0.65)
|
||||||
|
|
||||||
@ -63,8 +66,8 @@ class DATA_PT_geometry(DataButtonsPanel):
|
|||||||
__label__ = "Geometry"
|
__label__ = "Geometry"
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
curve = context.curve
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
curve = context.curve
|
||||||
|
|
||||||
split = layout.split()
|
split = layout.split()
|
||||||
|
|
||||||
@ -85,9 +88,9 @@ class DATA_PT_pathanim(DataButtonsPanel):
|
|||||||
__label__ = "Path Animation"
|
__label__ = "Path Animation"
|
||||||
|
|
||||||
def draw_header(self, context):
|
def draw_header(self, context):
|
||||||
|
layout = self.layout
|
||||||
curve = context.curve
|
curve = context.curve
|
||||||
|
|
||||||
layout = self.layout
|
|
||||||
layout.itemR(curve, "path", text="")
|
layout.itemR(curve, "path", text="")
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
@ -110,8 +113,8 @@ class DATA_PT_current_curve(DataButtonsPanel):
|
|||||||
__label__ = "Current Curve"
|
__label__ = "Current Curve"
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
currentcurve = context.curve.curves[0] # XXX
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
currentcurve = context.curve.curves[0] # XXX
|
||||||
|
|
||||||
split = layout.split()
|
split = layout.split()
|
||||||
|
|
||||||
|
@ -7,16 +7,15 @@ class DataButtonsPanel(bpy.types.Panel):
|
|||||||
__context__ = "data"
|
__context__ = "data"
|
||||||
|
|
||||||
def poll(self, context):
|
def poll(self, context):
|
||||||
ob = context.object
|
return (context.object.type == 'EMPTY')
|
||||||
return (ob and ob.type == 'EMPTY')
|
|
||||||
|
|
||||||
class DATA_PT_empty(DataButtonsPanel):
|
class DATA_PT_empty(DataButtonsPanel):
|
||||||
__idname__ = "DATA_PT_empty"
|
__idname__ = "DATA_PT_empty"
|
||||||
__label__ = "Empty"
|
__label__ = "Empty"
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
ob = context.object
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
ob = context.object
|
||||||
|
|
||||||
layout.itemR(ob, "empty_draw_type")
|
layout.itemR(ob, "empty_draw_type")
|
||||||
layout.itemR(ob, "empty_draw_size")
|
layout.itemR(ob, "empty_draw_size")
|
||||||
|
@ -23,11 +23,15 @@ class DATA_PT_lamp(DataButtonsPanel):
|
|||||||
__idname__ = "DATA_PT_lamp"
|
__idname__ = "DATA_PT_lamp"
|
||||||
__label__ = "Lamp"
|
__label__ = "Lamp"
|
||||||
|
|
||||||
|
def poll(self, context):
|
||||||
|
return (context.object.type == 'LAMP')
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
ob = context.object
|
ob = context.object
|
||||||
lamp = context.lamp
|
lamp = context.lamp
|
||||||
space = context.space_data
|
space = context.space_data
|
||||||
layout = self.layout
|
|
||||||
|
|
||||||
split = layout.split(percentage=0.65)
|
split = layout.split(percentage=0.65)
|
||||||
|
|
||||||
@ -82,8 +86,8 @@ class DATA_PT_sunsky(DataButtonsPanel):
|
|||||||
return (lamp and lamp.type == 'SUN')
|
return (lamp and lamp.type == 'SUN')
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
lamp = context.lamp.sky
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
lamp = context.lamp.sky
|
||||||
|
|
||||||
row = layout.row()
|
row = layout.row()
|
||||||
row.itemR(lamp, "sky")
|
row.itemR(lamp, "sky")
|
||||||
@ -96,7 +100,6 @@ class DATA_PT_sunsky(DataButtonsPanel):
|
|||||||
split = layout.split()
|
split = layout.split()
|
||||||
|
|
||||||
col = split.column()
|
col = split.column()
|
||||||
|
|
||||||
sub = col.column()
|
sub = col.column()
|
||||||
sub.active = lamp.sky
|
sub.active = lamp.sky
|
||||||
sub.itemR(lamp, "sky_blend_type", text="Blend Type")
|
sub.itemR(lamp, "sky_blend_type", text="Blend Type")
|
||||||
@ -125,8 +128,8 @@ class DATA_PT_shadow(DataButtonsPanel):
|
|||||||
return (lamp and lamp.type in ('POINT','SUN', 'SPOT', 'AREA'))
|
return (lamp and lamp.type in ('POINT','SUN', 'SPOT', 'AREA'))
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
lamp = context.lamp
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
lamp = context.lamp
|
||||||
|
|
||||||
layout.itemR(lamp, "shadow_method", expand=True)
|
layout.itemR(lamp, "shadow_method", expand=True)
|
||||||
|
|
||||||
@ -204,8 +207,8 @@ class DATA_PT_spot(DataButtonsPanel):
|
|||||||
return (lamp and lamp.type == 'SPOT')
|
return (lamp and lamp.type == 'SPOT')
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
lamp = context.lamp
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
lamp = context.lamp
|
||||||
|
|
||||||
split = layout.split()
|
split = layout.split()
|
||||||
|
|
||||||
@ -236,8 +239,8 @@ class DATA_PT_falloff_curve(DataButtonsPanel):
|
|||||||
return False
|
return False
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
lamp = context.lamp
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
lamp = context.lamp
|
||||||
|
|
||||||
layout.template_curve_mapping(lamp.falloff_curve)
|
layout.template_curve_mapping(lamp.falloff_curve)
|
||||||
|
|
||||||
|
@ -13,11 +13,15 @@ class DATA_PT_lattice(DataButtonsPanel):
|
|||||||
__idname__ = "DATA_PT_lattice"
|
__idname__ = "DATA_PT_lattice"
|
||||||
__label__ = "Lattice"
|
__label__ = "Lattice"
|
||||||
|
|
||||||
|
def poll(self, context):
|
||||||
|
return (context.object.type == 'LATTICE')
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
ob = context.object
|
ob = context.object
|
||||||
lat = context.lattice
|
lat = context.lattice
|
||||||
space = context.space_data
|
space = context.space_data
|
||||||
layout = self.layout
|
|
||||||
|
|
||||||
split = layout.split(percentage=0.65)
|
split = layout.split(percentage=0.65)
|
||||||
|
|
||||||
|
@ -13,11 +13,15 @@ class DATA_PT_mesh(DataButtonsPanel):
|
|||||||
__idname__ = "DATA_PT_mesh"
|
__idname__ = "DATA_PT_mesh"
|
||||||
__label__ = "Mesh"
|
__label__ = "Mesh"
|
||||||
|
|
||||||
|
def poll(self, context):
|
||||||
|
return (context.object.type == 'MESH')
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
ob = context.object
|
ob = context.object
|
||||||
mesh = context.mesh
|
mesh = context.mesh
|
||||||
space = context.space_data
|
space = context.space_data
|
||||||
layout = self.layout
|
|
||||||
|
|
||||||
split = layout.split(percentage=0.65)
|
split = layout.split(percentage=0.65)
|
||||||
|
|
||||||
|
@ -6,10 +6,6 @@ class DataButtonsPanel(bpy.types.Panel):
|
|||||||
__region_type__ = "WINDOW"
|
__region_type__ = "WINDOW"
|
||||||
__context__ = "modifier"
|
__context__ = "modifier"
|
||||||
|
|
||||||
def poll(self, context):
|
|
||||||
ob = context.object
|
|
||||||
return (ob and ob.type in ('MESH', 'CURVE', 'SURFACE', 'TEXT', 'LATTICE'))
|
|
||||||
|
|
||||||
class DATA_PT_modifiers(DataButtonsPanel):
|
class DATA_PT_modifiers(DataButtonsPanel):
|
||||||
__idname__ = "DATA_PT_modifiers"
|
__idname__ = "DATA_PT_modifiers"
|
||||||
__label__ = "Modifiers"
|
__label__ = "Modifiers"
|
||||||
|
@ -7,18 +7,22 @@ class DataButtonsPanel(bpy.types.Panel):
|
|||||||
__context__ = "data"
|
__context__ = "data"
|
||||||
|
|
||||||
def poll(self, context):
|
def poll(self, context):
|
||||||
ob = context.object
|
return (context.object.type == 'TEXT' and context.curve)
|
||||||
return (ob and ob.type == 'TEXT')
|
|
||||||
|
|
||||||
class DATA_PT_shape_text(DataButtonsPanel):
|
class DATA_PT_shape_text(DataButtonsPanel):
|
||||||
__idname__ = "DATA_PT_shape_text"
|
__idname__ = "DATA_PT_shape_text"
|
||||||
__label__ = "Shape"
|
__label__ = "Shape Text"
|
||||||
|
|
||||||
|
def poll(self, context):
|
||||||
|
ob = context.object
|
||||||
|
return (context.object.type == 'TEXT')
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
ob = context.object
|
ob = context.object
|
||||||
curve = context.curve
|
curve = context.curve
|
||||||
space = context.space_data
|
space = context.space_data
|
||||||
layout = self.layout
|
|
||||||
|
|
||||||
split = layout.split(percentage=0.65)
|
split = layout.split(percentage=0.65)
|
||||||
|
|
||||||
@ -59,8 +63,8 @@ class DATA_PT_font(DataButtonsPanel):
|
|||||||
__label__ = "Font"
|
__label__ = "Font"
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
text = context.curve
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
text = context.curve
|
||||||
|
|
||||||
layout.row()
|
layout.row()
|
||||||
layout.itemR(text, "font")
|
layout.itemR(text, "font")
|
||||||
@ -90,8 +94,8 @@ class DATA_PT_paragraph(DataButtonsPanel):
|
|||||||
__label__ = "Paragraph"
|
__label__ = "Paragraph"
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
text = context.curve
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
text = context.curve
|
||||||
|
|
||||||
layout.itemL(text="Align:")
|
layout.itemL(text="Align:")
|
||||||
layout.itemR(text, "spacemode", expand=True)
|
layout.itemR(text, "spacemode", expand=True)
|
||||||
@ -110,13 +114,15 @@ class DATA_PT_paragraph(DataButtonsPanel):
|
|||||||
sub.itemR(text, "y_offset", text="Y")
|
sub.itemR(text, "y_offset", text="Y")
|
||||||
sub.itemR(text, "wrap")
|
sub.itemR(text, "wrap")
|
||||||
|
|
||||||
|
"""
|
||||||
class DATA_PT_textboxes(DataButtonsPanel):
|
class DATA_PT_textboxes(DataButtonsPanel):
|
||||||
__idname__ = "DATA_PT_textboxes"
|
__idname__ = "DATA_PT_textboxes"
|
||||||
__label__ = "Text Boxes"
|
__label__ = "Text Boxes"
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
text = context.curve
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
text = context.curve
|
||||||
|
"""
|
||||||
|
|
||||||
bpy.types.register(DATA_PT_shape_text)
|
bpy.types.register(DATA_PT_shape_text)
|
||||||
bpy.types.register(DATA_PT_font)
|
bpy.types.register(DATA_PT_font)
|
||||||
|
@ -13,13 +13,10 @@ class MATERIAL_PT_preview(MaterialButtonsPanel):
|
|||||||
__idname__= "MATERIAL_PT_preview"
|
__idname__= "MATERIAL_PT_preview"
|
||||||
__label__ = "Preview"
|
__label__ = "Preview"
|
||||||
|
|
||||||
def poll(self, context):
|
|
||||||
return (context.material or context.object)
|
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
|
||||||
mat = context.material
|
mat = context.material
|
||||||
|
|
||||||
layout.template_preview(mat)
|
layout.template_preview(mat)
|
||||||
|
|
||||||
class MATERIAL_PT_material(MaterialButtonsPanel):
|
class MATERIAL_PT_material(MaterialButtonsPanel):
|
||||||
@ -27,10 +24,11 @@ class MATERIAL_PT_material(MaterialButtonsPanel):
|
|||||||
__label__ = "Material"
|
__label__ = "Material"
|
||||||
|
|
||||||
def poll(self, context):
|
def poll(self, context):
|
||||||
return (context.material or context.object)
|
return (context.object != None)
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
|
||||||
mat = context.material
|
mat = context.material
|
||||||
ob = context.object
|
ob = context.object
|
||||||
slot = context.material_slot
|
slot = context.material_slot
|
||||||
@ -50,77 +48,262 @@ class MATERIAL_PT_material(MaterialButtonsPanel):
|
|||||||
|
|
||||||
layout.itemR(mat, "type", expand=True)
|
layout.itemR(mat, "type", expand=True)
|
||||||
|
|
||||||
row = layout.row()
|
|
||||||
row.column().itemR(mat, "diffuse_color")
|
|
||||||
row.column().itemR(mat, "specular_color")
|
|
||||||
row.column().itemR(mat, "mirror_color")
|
|
||||||
|
|
||||||
layout.itemR(mat, "alpha", slider=True)
|
layout.itemR(mat, "alpha", slider=True)
|
||||||
|
|
||||||
|
row = layout.row()
|
||||||
|
row.active = mat.type in ('SURFACE', 'VOLUME')
|
||||||
|
row.itemR(mat, "shadeless")
|
||||||
|
row.itemR(mat, "wireframe")
|
||||||
|
rowsub = row.row()
|
||||||
|
rowsub.active = mat.shadeless== False
|
||||||
|
rowsub.itemR(mat, "tangent_shading")
|
||||||
|
|
||||||
|
class MATERIAL_PT_strand(MaterialButtonsPanel):
|
||||||
|
__idname__= "MATERIAL_PT_strand"
|
||||||
|
__label__ = "Strand"
|
||||||
|
__default_closed__ = True
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
tan = context.material.strand
|
||||||
|
mat = context.material
|
||||||
|
|
||||||
|
split = layout.split()
|
||||||
|
|
||||||
|
sub = split.column()
|
||||||
|
sub.itemL(text="Size:")
|
||||||
|
sub.itemR(tan, "start_size", text="Root")
|
||||||
|
sub.itemR(tan, "end_size", text="Tip")
|
||||||
|
sub.itemR(tan, "min_size", text="Minimum")
|
||||||
|
sub.itemR(tan, "blender_units")
|
||||||
|
colsub = sub.column()
|
||||||
|
colsub.active = mat.shadeless== False
|
||||||
|
colsub.itemR(tan, "tangent_shading")
|
||||||
|
|
||||||
|
sub = split.column()
|
||||||
|
sub.itemR(tan, "shape")
|
||||||
|
sub.itemR(tan, "width_fade")
|
||||||
|
sub.itemR(tan, "uv_layer")
|
||||||
|
colsub = sub.column()
|
||||||
|
colsub.active = mat.shadeless== False
|
||||||
|
colsub.itemR(tan, "surface_diffuse")
|
||||||
|
colsubsub = colsub.column()
|
||||||
|
colsubsub.active = tan.surface_diffuse
|
||||||
|
colsubsub.itemR(tan, "blend_distance", text="Distance")
|
||||||
|
|
||||||
|
class MATERIAL_PT_options(MaterialButtonsPanel):
|
||||||
|
__idname__= "MATERIAL_PT_options"
|
||||||
|
__label__ = "Options"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
mat = context.material
|
||||||
|
|
||||||
|
split = layout.split()
|
||||||
|
|
||||||
|
sub = split.column()
|
||||||
|
sub.itemR(mat, "traceable")
|
||||||
|
sub.itemR(mat, "full_oversampling")
|
||||||
|
sub.itemR(mat, "sky")
|
||||||
|
sub.itemR(mat, "exclude_mist")
|
||||||
|
sub.itemR(mat, "face_texture")
|
||||||
|
colsub = sub.column()
|
||||||
|
colsub.active = mat.face_texture
|
||||||
|
colsub.itemR(mat, "face_texture_alpha")
|
||||||
|
sub.itemR(mat, "invert_z")
|
||||||
|
sub.itemR(mat, "light_group")
|
||||||
|
sub.itemR(mat, "light_group_exclusive")
|
||||||
|
|
||||||
|
sub = split.column()
|
||||||
|
sub.itemL(text="Shadows:")
|
||||||
|
sub.itemR(mat, "shadows", text="Recieve")
|
||||||
|
sub.itemR(mat, "transparent_shadows", text="Recieve Transparent")
|
||||||
|
sub.itemR(mat, "only_shadow", text="Shadows Only")
|
||||||
|
sub.itemR(mat, "cast_shadows_only", text="Cast Only")
|
||||||
|
sub.itemR(mat, "shadow_casting_alpha", text="Casting Alpha", slider=True)
|
||||||
|
|
||||||
|
sub.itemR(mat, "ray_shadow_bias")
|
||||||
|
colsub = sub.column()
|
||||||
|
colsub.active = mat.ray_shadow_bias
|
||||||
|
colsub.itemR(mat, "shadow_ray_bias", text="Raytracing Bias")
|
||||||
|
sub.itemR(mat, "cast_buffer_shadows")
|
||||||
|
colsub = sub.column()
|
||||||
|
colsub.active = mat.cast_buffer_shadows
|
||||||
|
colsub.itemR(mat, "shadow_buffer_bias", text="Buffer Bias")
|
||||||
|
|
||||||
|
class MATERIAL_PT_diffuse(MaterialButtonsPanel):
|
||||||
|
__idname__= "MATERIAL_PT_diffuse"
|
||||||
|
__label__ = "Diffuse"
|
||||||
|
|
||||||
|
def poll(self, context):
|
||||||
|
mat = context.material
|
||||||
|
return (mat and mat.type != "HALO")
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
mat = context.material
|
||||||
|
|
||||||
|
split = layout.split()
|
||||||
|
|
||||||
|
sub = split.column()
|
||||||
|
sub.itemR(mat, "diffuse_color", text="")
|
||||||
|
sub.itemR(mat, "object_color")
|
||||||
|
colsub = sub.column()
|
||||||
|
colsub.active = mat.shadeless== False
|
||||||
|
colsub.itemR(mat, "ambient", slider=True)
|
||||||
|
colsub.itemR(mat, "emit")
|
||||||
|
sub.itemR(mat, "translucency", slider=True)
|
||||||
|
|
||||||
|
sub = split.column()
|
||||||
|
sub.active = mat.shadeless== False
|
||||||
|
sub.itemR(mat, "diffuse_reflection", text="Intensity", slider=True)
|
||||||
|
sub.itemR(mat, "vertex_color_light")
|
||||||
|
sub.itemR(mat, "vertex_color_paint")
|
||||||
|
sub.itemR(mat, "cubic")
|
||||||
|
|
||||||
|
row = layout.row()
|
||||||
|
row.active = mat.shadeless== False
|
||||||
|
row.itemR(mat, "diffuse_shader", text="Shader")
|
||||||
|
|
||||||
|
split = layout.split()
|
||||||
|
split.active = mat.shadeless== False
|
||||||
|
sub = split.column()
|
||||||
|
if mat.diffuse_shader == 'OREN_NAYAR':
|
||||||
|
sub.itemR(mat, "roughness")
|
||||||
|
sub = split.column()
|
||||||
|
if mat.diffuse_shader == 'MINNAERT':
|
||||||
|
sub.itemR(mat, "darkness")
|
||||||
|
sub = split.column()
|
||||||
|
if mat.diffuse_shader == 'TOON':
|
||||||
|
sub.itemR(mat, "diffuse_toon_size", text="Size")
|
||||||
|
sub = split.column()
|
||||||
|
sub.itemR(mat, "diffuse_toon_smooth", text="Smooth")
|
||||||
|
if mat.diffuse_shader == 'FRESNEL':
|
||||||
|
sub.itemR(mat, "diffuse_fresnel", text="Fresnel")
|
||||||
|
sub = split.column()
|
||||||
|
sub.itemR(mat, "diffuse_fresnel_factor", text="Factor")
|
||||||
|
|
||||||
|
layout.itemR(mat, "diffuse_ramp", text="Ramp")
|
||||||
|
|
||||||
|
class MATERIAL_PT_specular(MaterialButtonsPanel):
|
||||||
|
__idname__= "MATERIAL_PT_specular"
|
||||||
|
__label__ = "Specular"
|
||||||
|
|
||||||
|
def poll(self, context):
|
||||||
|
mat = context.material
|
||||||
|
return (mat and mat.type != "HALO")
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
mat = context.material
|
||||||
|
|
||||||
|
layout.active = mat.shadeless== False
|
||||||
|
|
||||||
|
split = layout.split()
|
||||||
|
|
||||||
|
sub = split.column()
|
||||||
|
sub.itemR(mat, "specular_color", text="")
|
||||||
|
sub = split.column()
|
||||||
|
sub.itemR(mat, "specular_reflection", text="Intensity", slider=True)
|
||||||
|
|
||||||
|
layout.itemR(mat, "spec_shader", text="Shader")
|
||||||
|
|
||||||
|
split = layout.split()
|
||||||
|
|
||||||
|
sub = split.column()
|
||||||
|
if mat.spec_shader in ('COOKTORR', 'PHONG'):
|
||||||
|
sub.itemR(mat, "specular_hardness", text="Hardness")
|
||||||
|
sub = split.column()
|
||||||
|
if mat.spec_shader == 'BLINN':
|
||||||
|
sub.itemR(mat, "specular_hardness", text="Hardness")
|
||||||
|
sub = split.column()
|
||||||
|
sub.itemR(mat, "specular_ior", text="IOR")
|
||||||
|
if mat.spec_shader == 'WARDISO':
|
||||||
|
sub.itemR(mat, "specular_slope", text="Slope")
|
||||||
|
sub.itemR(mat, "specular_hardness", text="Hardness")
|
||||||
|
if mat.spec_shader == 'TOON':
|
||||||
|
sub.itemR(mat, "specular_toon_size", text="Size")
|
||||||
|
sub = split.column()
|
||||||
|
sub.itemR(mat, "specular_toon_smooth", text="Smooth")
|
||||||
|
|
||||||
|
layout.itemR(mat, "specular_ramp", text="Ramp")
|
||||||
|
|
||||||
class MATERIAL_PT_sss(MaterialButtonsPanel):
|
class MATERIAL_PT_sss(MaterialButtonsPanel):
|
||||||
__idname__= "MATERIAL_PT_sss"
|
__idname__= "MATERIAL_PT_sss"
|
||||||
__label__ = "Subsurface Scattering"
|
__label__ = "Subsurface Scattering"
|
||||||
|
__default_closed__ = True
|
||||||
|
|
||||||
def poll(self, context):
|
def poll(self, context):
|
||||||
mat = context.material
|
mat = context.material
|
||||||
return (mat and mat.type == "SURFACE")
|
return (mat and mat.type == "SURFACE")
|
||||||
|
|
||||||
def draw_header(self, context):
|
def draw_header(self, context):
|
||||||
|
layout = self.layout
|
||||||
sss = context.material.subsurface_scattering
|
sss = context.material.subsurface_scattering
|
||||||
|
|
||||||
layout = self.layout
|
|
||||||
layout.itemR(sss, "enabled", text="")
|
layout.itemR(sss, "enabled", text="")
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
sss = context.material.subsurface_scattering
|
sss = context.material.subsurface_scattering
|
||||||
|
mat = context.material
|
||||||
layout.active = sss.enabled
|
layout.active = sss.enabled
|
||||||
|
|
||||||
flow = layout.column_flow()
|
split = layout.split()
|
||||||
flow.itemR(sss, "error_tolerance")
|
split.active = mat.shadeless== False
|
||||||
flow.itemR(sss, "ior")
|
|
||||||
flow.itemR(sss, "scale")
|
|
||||||
|
|
||||||
row = layout.row()
|
sub = split.column()
|
||||||
row.column().itemR(sss, "color")
|
sub.itemR(sss, "color", text="")
|
||||||
row.column().itemR(sss, "radius")
|
sub.itemL(text="Blend:")
|
||||||
|
sub.itemR(sss, "color_factor", slider=True)
|
||||||
|
sub.itemR(sss, "texture_factor", slider=True)
|
||||||
|
sub.itemL(text="Scattering Weight:")
|
||||||
|
sub.itemR(sss, "front")
|
||||||
|
sub.itemR(sss, "back")
|
||||||
|
|
||||||
flow = layout.column_flow()
|
sub = split.column()
|
||||||
flow.itemR(sss, "color_factor", slider=True)
|
sub.itemR(sss, "ior")
|
||||||
flow.itemR(sss, "texture_factor", slider=True)
|
sub.itemR(sss, "scale")
|
||||||
flow.itemR(sss, "front")
|
sub.itemR(sss, "radius", text="RGB Radius")
|
||||||
flow.itemR(sss, "back")
|
sub.itemR(sss, "error_tolerance")
|
||||||
|
|
||||||
class MATERIAL_PT_raymir(MaterialButtonsPanel):
|
class MATERIAL_PT_raymir(MaterialButtonsPanel):
|
||||||
__idname__= "MATERIAL_PT_raymir"
|
__idname__= "MATERIAL_PT_raymir"
|
||||||
__label__ = "Ray Mirror"
|
__label__ = "Ray Mirror"
|
||||||
|
__default_closed__ = True
|
||||||
|
|
||||||
def poll(self, context):
|
def poll(self, context):
|
||||||
mat = context.material
|
mat = context.material
|
||||||
return (mat and mat.type == "SURFACE")
|
return (mat and mat.type == "SURFACE")
|
||||||
|
|
||||||
def draw_header(self, context):
|
def draw_header(self, context):
|
||||||
|
layout = self.layout
|
||||||
raym = context.material.raytrace_mirror
|
raym = context.material.raytrace_mirror
|
||||||
|
|
||||||
layout = self.layout
|
|
||||||
layout.itemR(raym, "enabled", text="")
|
layout.itemR(raym, "enabled", text="")
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
raym = context.material.raytrace_mirror
|
raym = context.material.raytrace_mirror
|
||||||
|
mat = context.material
|
||||||
|
|
||||||
layout.active = raym.enabled
|
layout.active = raym.enabled
|
||||||
|
|
||||||
split = layout.split()
|
split = layout.split()
|
||||||
|
|
||||||
sub = split.column()
|
sub = split.column()
|
||||||
sub.itemR(raym, "reflect", text="RayMir", slider=True)
|
sub.itemR(raym, "reflect", text="Reflectivity", slider=True)
|
||||||
|
sub.itemR(mat, "mirror_color", text="")
|
||||||
sub.itemR(raym, "fresnel")
|
sub.itemR(raym, "fresnel")
|
||||||
sub.itemR(raym, "fresnel_fac", text="Fac", slider=True)
|
sub.itemR(raym, "fresnel_fac", text="Fac", slider=True)
|
||||||
|
|
||||||
sub = split.column()
|
sub = split.column()
|
||||||
sub.itemR(raym, "gloss", slider=True)
|
sub.itemR(raym, "gloss", slider=True)
|
||||||
sub.itemR(raym, "gloss_threshold", slider=True)
|
colsub = sub.column()
|
||||||
sub.itemR(raym, "gloss_samples")
|
colsub.active = raym.gloss < 1
|
||||||
sub.itemR(raym, "gloss_anisotropic", slider=True)
|
colsub.itemR(raym, "gloss_threshold", slider=True, text="Threshold")
|
||||||
|
colsub.itemR(raym, "gloss_samples", text="Samples")
|
||||||
|
colsub.itemR(raym, "gloss_anisotropic", slider=True, text="Anisotropic")
|
||||||
|
|
||||||
row = layout.row()
|
row = layout.row()
|
||||||
row.itemR(raym, "distance", text="Max Dist")
|
row.itemR(raym, "distance", text="Max Dist")
|
||||||
@ -131,23 +314,27 @@ class MATERIAL_PT_raymir(MaterialButtonsPanel):
|
|||||||
class MATERIAL_PT_raytransp(MaterialButtonsPanel):
|
class MATERIAL_PT_raytransp(MaterialButtonsPanel):
|
||||||
__idname__= "MATERIAL_PT_raytransp"
|
__idname__= "MATERIAL_PT_raytransp"
|
||||||
__label__= "Ray Transparency"
|
__label__= "Ray Transparency"
|
||||||
|
__default_closed__ = True
|
||||||
|
|
||||||
def poll(self, context):
|
def poll(self, context):
|
||||||
mat = context.material
|
mat = context.material
|
||||||
return (mat and mat.type == "SURFACE")
|
return (mat and mat.type == "SURFACE")
|
||||||
|
|
||||||
def draw_header(self, context):
|
def draw_header(self, context):
|
||||||
|
layout = self.layout
|
||||||
rayt = context.material.raytrace_transparency
|
rayt = context.material.raytrace_transparency
|
||||||
|
|
||||||
layout = self.layout
|
|
||||||
layout.itemR(rayt, "enabled", text="")
|
layout.itemR(rayt, "enabled", text="")
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
rayt = context.material.raytrace_transparency
|
rayt = context.material.raytrace_transparency
|
||||||
|
mat = context.material
|
||||||
|
|
||||||
layout.active = rayt.enabled
|
layout.active = rayt.enabled
|
||||||
|
|
||||||
split = layout.split()
|
split = layout.split()
|
||||||
|
split.active = mat.shadeless== False
|
||||||
|
|
||||||
sub = split.column()
|
sub = split.column()
|
||||||
sub.itemR(rayt, "ior")
|
sub.itemR(rayt, "ior")
|
||||||
@ -156,14 +343,17 @@ class MATERIAL_PT_raytransp(MaterialButtonsPanel):
|
|||||||
|
|
||||||
sub = split.column()
|
sub = split.column()
|
||||||
sub.itemR(rayt, "gloss", slider=True)
|
sub.itemR(rayt, "gloss", slider=True)
|
||||||
sub.itemR(rayt, "gloss_threshold", slider=True)
|
colsub = sub.column()
|
||||||
sub.itemR(rayt, "gloss_samples")
|
colsub.active = rayt.gloss < 1
|
||||||
|
colsub.itemR(rayt, "gloss_threshold", slider=True, text="Threshold")
|
||||||
|
colsub.itemR(rayt, "gloss_samples", text="Samples")
|
||||||
|
|
||||||
flow = layout.column_flow()
|
flow = layout.column_flow()
|
||||||
|
flow.active = mat.shadeless== False
|
||||||
flow.itemR(rayt, "filter", slider=True)
|
flow.itemR(rayt, "filter", slider=True)
|
||||||
flow.itemR(rayt, "limit")
|
flow.itemR(rayt, "limit")
|
||||||
flow.itemR(rayt, "falloff")
|
flow.itemR(rayt, "falloff")
|
||||||
flow.itemR(rayt, "specular_opacity", slider=True)
|
flow.itemR(rayt, "specular_opacity", slider=True, text="Spec Opacity")
|
||||||
flow.itemR(rayt, "depth")
|
flow.itemR(rayt, "depth")
|
||||||
|
|
||||||
class MATERIAL_PT_halo(MaterialButtonsPanel):
|
class MATERIAL_PT_halo(MaterialButtonsPanel):
|
||||||
@ -176,13 +366,14 @@ class MATERIAL_PT_halo(MaterialButtonsPanel):
|
|||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
|
||||||
mat = context.material
|
mat = context.material
|
||||||
halo = mat.halo
|
halo = mat.halo
|
||||||
|
|
||||||
split = layout.split()
|
split = layout.split()
|
||||||
|
|
||||||
col = split.column(align=True)
|
col = split.column()
|
||||||
col.itemL(text="General Settings:")
|
col.itemR(mat, "diffuse_color", text="")
|
||||||
col.itemR(halo, "size")
|
col.itemR(halo, "size")
|
||||||
col.itemR(halo, "hardness")
|
col.itemR(halo, "hardness")
|
||||||
col.itemR(halo, "add", slider=True)
|
col.itemR(halo, "add", slider=True)
|
||||||
@ -195,15 +386,17 @@ class MATERIAL_PT_halo(MaterialButtonsPanel):
|
|||||||
col.itemR(halo, "soft")
|
col.itemR(halo, "soft")
|
||||||
|
|
||||||
col = split.column()
|
col = split.column()
|
||||||
col = col.column(align=True)
|
col = col.column()
|
||||||
col.itemR(halo, "ring")
|
col.itemR(halo, "ring")
|
||||||
colsub = col.column()
|
colsub = col.column()
|
||||||
colsub.active = halo.ring
|
colsub.active = halo.ring
|
||||||
colsub.itemR(halo, "rings")
|
colsub.itemR(halo, "rings")
|
||||||
|
colsub.itemR(mat, "mirror_color", text="")
|
||||||
col.itemR(halo, "lines")
|
col.itemR(halo, "lines")
|
||||||
colsub = col.column()
|
colsub = col.column()
|
||||||
colsub.active = halo.lines
|
colsub.active = halo.lines
|
||||||
colsub.itemR(halo, "line_number", text="Lines")
|
colsub.itemR(halo, "line_number", text="Lines")
|
||||||
|
colsub.itemR(mat, "specular_color", text="")
|
||||||
col.itemR(halo, "star")
|
col.itemR(halo, "star")
|
||||||
colsub = col.column()
|
colsub = col.column()
|
||||||
colsub.active = halo.star
|
colsub.active = halo.star
|
||||||
@ -219,8 +412,11 @@ class MATERIAL_PT_halo(MaterialButtonsPanel):
|
|||||||
|
|
||||||
bpy.types.register(MATERIAL_PT_preview)
|
bpy.types.register(MATERIAL_PT_preview)
|
||||||
bpy.types.register(MATERIAL_PT_material)
|
bpy.types.register(MATERIAL_PT_material)
|
||||||
|
bpy.types.register(MATERIAL_PT_diffuse)
|
||||||
|
bpy.types.register(MATERIAL_PT_specular)
|
||||||
bpy.types.register(MATERIAL_PT_raymir)
|
bpy.types.register(MATERIAL_PT_raymir)
|
||||||
bpy.types.register(MATERIAL_PT_raytransp)
|
bpy.types.register(MATERIAL_PT_raytransp)
|
||||||
bpy.types.register(MATERIAL_PT_sss)
|
bpy.types.register(MATERIAL_PT_sss)
|
||||||
bpy.types.register(MATERIAL_PT_halo)
|
bpy.types.register(MATERIAL_PT_halo)
|
||||||
|
bpy.types.register(MATERIAL_PT_strand)
|
||||||
|
bpy.types.register(MATERIAL_PT_options)
|
@ -6,16 +6,13 @@ class ObjectButtonsPanel(bpy.types.Panel):
|
|||||||
__region_type__ = "WINDOW"
|
__region_type__ = "WINDOW"
|
||||||
__context__ = "object"
|
__context__ = "object"
|
||||||
|
|
||||||
def poll(self, context):
|
|
||||||
return (context.object != None)
|
|
||||||
|
|
||||||
class OBJECT_PT_transform(ObjectButtonsPanel):
|
class OBJECT_PT_transform(ObjectButtonsPanel):
|
||||||
__idname__ = "OBJECT_PT_transform"
|
__idname__ = "OBJECT_PT_transform"
|
||||||
__label__ = "Transform"
|
__label__ = "Transform"
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
ob = context.object
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
ob = context.object
|
||||||
|
|
||||||
row = layout.row()
|
row = layout.row()
|
||||||
row.column().itemR(ob, "location")
|
row.column().itemR(ob, "location")
|
||||||
@ -27,8 +24,8 @@ class OBJECT_PT_groups(ObjectButtonsPanel):
|
|||||||
__label__ = "Groups"
|
__label__ = "Groups"
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
ob = context.object
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
ob = context.object
|
||||||
|
|
||||||
row = layout.row()
|
row = layout.row()
|
||||||
row.itemR(ob, "pass_index")
|
row.itemR(ob, "pass_index")
|
||||||
@ -54,8 +51,8 @@ class OBJECT_PT_display(ObjectButtonsPanel):
|
|||||||
__label__ = "Display"
|
__label__ = "Display"
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
ob = context.object
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
ob = context.object
|
||||||
|
|
||||||
row = layout.row()
|
row = layout.row()
|
||||||
row.itemR(ob, "max_draw_type", text="Type")
|
row.itemR(ob, "max_draw_type", text="Type")
|
||||||
@ -74,8 +71,8 @@ class OBJECT_PT_duplication(ObjectButtonsPanel):
|
|||||||
__label__ = "Duplication"
|
__label__ = "Duplication"
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
ob = context.object
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
ob = context.object
|
||||||
|
|
||||||
layout.itemR(ob, "dupli_type", expand=True)
|
layout.itemR(ob, "dupli_type", expand=True)
|
||||||
|
|
||||||
@ -108,8 +105,8 @@ class OBJECT_PT_animation(ObjectButtonsPanel):
|
|||||||
__label__ = "Animation"
|
__label__ = "Animation"
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
ob = context.object
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
ob = context.object
|
||||||
|
|
||||||
split = layout.split()
|
split = layout.split()
|
||||||
|
|
||||||
@ -132,4 +129,3 @@ bpy.types.register(OBJECT_PT_groups)
|
|||||||
bpy.types.register(OBJECT_PT_display)
|
bpy.types.register(OBJECT_PT_display)
|
||||||
bpy.types.register(OBJECT_PT_duplication)
|
bpy.types.register(OBJECT_PT_duplication)
|
||||||
bpy.types.register(OBJECT_PT_animation)
|
bpy.types.register(OBJECT_PT_animation)
|
||||||
|
|
||||||
|
@ -15,8 +15,7 @@ class Physic_PT_cloth(PhysicButtonsPanel):
|
|||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
md = context.cloth
|
cloth = context.cloth.settings
|
||||||
cloth = md.settings
|
|
||||||
|
|
||||||
split = layout.split()
|
split = layout.split()
|
||||||
|
|
||||||
@ -51,16 +50,14 @@ class Physic_PT_cloth_collision(PhysicButtonsPanel):
|
|||||||
|
|
||||||
def draw_header(self, context):
|
def draw_header(self, context):
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
md = context.cloth
|
cloth = context.cloth.settings
|
||||||
cloth = md.collision_settings
|
|
||||||
|
|
||||||
layout.itemR(cloth, "enable_collision", text="")
|
layout.itemR(cloth, "enable_collision", text="")
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
cloth = context.cloth.settings
|
||||||
|
|
||||||
md = context.cloth
|
|
||||||
cloth = md.collision_settings
|
|
||||||
layout.active = cloth.enable_collision
|
layout.active = cloth.enable_collision
|
||||||
|
|
||||||
col = layout.column_flow()
|
col = layout.column_flow()
|
||||||
@ -82,16 +79,14 @@ class Physic_PT_cloth_stiffness(PhysicButtonsPanel):
|
|||||||
|
|
||||||
def draw_header(self, context):
|
def draw_header(self, context):
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
md = context.cloth
|
cloth = context.cloth.settings
|
||||||
cloth = md.settings
|
|
||||||
|
|
||||||
layout.itemR(cloth, "stiffness_scaling", text="")
|
layout.itemR(cloth, "stiffness_scaling", text="")
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
cloth = context.cloth.settings
|
||||||
|
|
||||||
md = context.cloth
|
|
||||||
cloth = md.settings
|
|
||||||
layout.active = cloth.stiffness_scaling
|
layout.active = cloth.stiffness_scaling
|
||||||
|
|
||||||
split = layout.split()
|
split = layout.split()
|
||||||
|
@ -10,10 +10,8 @@ class RENDER_PT_shading(RenderButtonsPanel):
|
|||||||
__label__ = "Shading"
|
__label__ = "Shading"
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
scene = context.scene
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
rd = context.scene.render_data
|
||||||
rd = scene.render_data
|
|
||||||
|
|
||||||
split = layout.split()
|
split = layout.split()
|
||||||
|
|
||||||
@ -34,10 +32,8 @@ class RENDER_PT_output(RenderButtonsPanel):
|
|||||||
__label__ = "Output"
|
__label__ = "Output"
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
scene = context.scene
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
rd = context.scene.render_data
|
||||||
rd = scene.render_data
|
|
||||||
|
|
||||||
layout.itemR(rd, "output_path")
|
layout.itemR(rd, "output_path")
|
||||||
|
|
||||||
@ -133,16 +129,15 @@ class RENDER_PT_antialiasing(RenderButtonsPanel):
|
|||||||
__label__ = "Anti-Aliasing"
|
__label__ = "Anti-Aliasing"
|
||||||
|
|
||||||
def draw_header(self, context):
|
def draw_header(self, context):
|
||||||
|
layout = self.layout
|
||||||
rd = context.scene.render_data
|
rd = context.scene.render_data
|
||||||
|
|
||||||
layout = self.layout
|
|
||||||
layout.itemR(rd, "antialiasing", text="")
|
layout.itemR(rd, "antialiasing", text="")
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
scene = context.scene
|
|
||||||
rd = scene.render_data
|
|
||||||
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
rd = context.scene.render_data
|
||||||
|
|
||||||
layout.active = rd.antialiasing
|
layout.active = rd.antialiasing
|
||||||
|
|
||||||
split = layout.split()
|
split = layout.split()
|
||||||
@ -163,14 +158,12 @@ class RENDER_PT_render(RenderButtonsPanel):
|
|||||||
__label__ = "Render"
|
__label__ = "Render"
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
scene = context.scene
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
rd = context.scene.render_data
|
||||||
rd = scene.render_data
|
|
||||||
|
|
||||||
row = layout.row()
|
row = layout.row()
|
||||||
row.itemO("SCREEN_OT_render", text="Render Still", icon=109)
|
row.itemO("SCREEN_OT_render", text="Render Still", icon='ICON_IMAGE_COL')
|
||||||
row.item_booleanO("SCREEN_OT_render", "anim", True, text="Render Animation", icon=111)
|
row.item_booleanO("SCREEN_OT_render", "anim", True, text="Render Animation", icon='ICON_SEQUENCE')
|
||||||
|
|
||||||
row = layout.row()
|
row = layout.row()
|
||||||
row.itemR(rd, "do_composite")
|
row.itemR(rd, "do_composite")
|
||||||
@ -204,9 +197,9 @@ class RENDER_PT_dimensions(RenderButtonsPanel):
|
|||||||
__label__ = "Dimensions"
|
__label__ = "Dimensions"
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
scene = context.scene
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
|
||||||
|
scene = context.scene
|
||||||
rd = scene.render_data
|
rd = scene.render_data
|
||||||
|
|
||||||
split = layout.split()
|
split = layout.split()
|
||||||
@ -248,10 +241,9 @@ class RENDER_PT_stamp(RenderButtonsPanel):
|
|||||||
layout.itemR(rd, "stamp", text="")
|
layout.itemR(rd, "stamp", text="")
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
scene = context.scene
|
|
||||||
rd = scene.render_data
|
|
||||||
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
rd = context.scene.render_data
|
||||||
|
|
||||||
layout.active = rd.stamp
|
layout.active = rd.stamp
|
||||||
|
|
||||||
split = layout.split()
|
split = layout.split()
|
||||||
|
@ -7,19 +7,16 @@ class TextureButtonsPanel(bpy.types.Panel):
|
|||||||
__context__ = "texture"
|
__context__ = "texture"
|
||||||
|
|
||||||
def poll(self, context):
|
def poll(self, context):
|
||||||
return (context.texture != None)
|
return (context.texture != None and context.texture.type != 'NONE')
|
||||||
|
|
||||||
class TEXTURE_PT_preview(TextureButtonsPanel):
|
class TEXTURE_PT_preview(TextureButtonsPanel):
|
||||||
__idname__= "TEXTURE_PT_preview"
|
__idname__= "TEXTURE_PT_preview"
|
||||||
__label__ = "Preview"
|
__label__ = "Preview"
|
||||||
|
|
||||||
def poll(self, context):
|
|
||||||
return (context.texture or context.material)
|
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
|
||||||
tex = context.texture
|
tex = context.texture
|
||||||
|
|
||||||
layout.template_preview(tex)
|
layout.template_preview(tex)
|
||||||
|
|
||||||
class TEXTURE_PT_texture(TextureButtonsPanel):
|
class TEXTURE_PT_texture(TextureButtonsPanel):
|
||||||
@ -27,10 +24,11 @@ class TEXTURE_PT_texture(TextureButtonsPanel):
|
|||||||
__label__ = "Texture"
|
__label__ = "Texture"
|
||||||
|
|
||||||
def poll(self, context):
|
def poll(self, context):
|
||||||
return (context.texture or context.material or context.world or context.lamp)
|
return (context.material or context.world or context.lamp)
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
|
||||||
tex = context.texture
|
tex = context.texture
|
||||||
ma = context.material
|
ma = context.material
|
||||||
la = context.lamp
|
la = context.lamp
|
||||||
@ -71,7 +69,7 @@ class TEXTURE_PT_mapping(TextureButtonsPanel):
|
|||||||
__label__ = "Mapping"
|
__label__ = "Mapping"
|
||||||
|
|
||||||
def poll(self, context):
|
def poll(self, context):
|
||||||
return (context.texture != None and context.texture.type != 'NONE')
|
return (context.texture_slot and context.texture and context.texture.type != 'NONE')
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
@ -118,10 +116,11 @@ class TEXTURE_PT_influence(TextureButtonsPanel):
|
|||||||
__label__ = "Influence"
|
__label__ = "Influence"
|
||||||
|
|
||||||
def poll(self, context):
|
def poll(self, context):
|
||||||
return (context.texture != None and context.texture.type != 'NONE')
|
return (context.texture_slot and context.texture and context.texture.type != 'NONE')
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
|
||||||
textype = context.texture
|
textype = context.texture
|
||||||
tex = context.texture_slot
|
tex = context.texture_slot
|
||||||
|
|
||||||
@ -178,9 +177,7 @@ class TEXTURE_PT_influence(TextureButtonsPanel):
|
|||||||
class TEXTURE_PT_colors(TextureButtonsPanel):
|
class TEXTURE_PT_colors(TextureButtonsPanel):
|
||||||
__idname__= "TEXTURE_PT_colors"
|
__idname__= "TEXTURE_PT_colors"
|
||||||
__label__ = "Colors"
|
__label__ = "Colors"
|
||||||
|
__default_closed__ = True
|
||||||
def poll(self, context):
|
|
||||||
return (context.texture != None and context.texture.type != 'NONE')
|
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
@ -529,3 +526,4 @@ bpy.types.register(TEXTURE_PT_distortednoise)
|
|||||||
bpy.types.register(TEXTURE_PT_colors)
|
bpy.types.register(TEXTURE_PT_colors)
|
||||||
bpy.types.register(TEXTURE_PT_mapping)
|
bpy.types.register(TEXTURE_PT_mapping)
|
||||||
bpy.types.register(TEXTURE_PT_influence)
|
bpy.types.register(TEXTURE_PT_influence)
|
||||||
|
|
||||||
|
@ -12,26 +12,24 @@ class WorldButtonsPanel(bpy.types.Panel):
|
|||||||
class WORLD_PT_preview(WorldButtonsPanel):
|
class WORLD_PT_preview(WorldButtonsPanel):
|
||||||
__label__ = "Preview"
|
__label__ = "Preview"
|
||||||
|
|
||||||
def poll(self, context):
|
|
||||||
return (context.scene or context.world)
|
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
|
||||||
world = context.world
|
world = context.world
|
||||||
|
|
||||||
layout.template_preview(world)
|
layout.template_preview(world)
|
||||||
|
|
||||||
class WORLD_PT_world(WorldButtonsPanel):
|
class WORLD_PT_world(WorldButtonsPanel):
|
||||||
__label__ = "World"
|
__label__ = "World"
|
||||||
|
|
||||||
def poll(self, context):
|
def poll(self, context):
|
||||||
return (context.scene or context.world)
|
return (context.scene != None)
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
scene = context.scene
|
scene = context.scene
|
||||||
world = context.world
|
world = context.world
|
||||||
space = context.space_data
|
space = context.space_data
|
||||||
layout = self.layout
|
|
||||||
|
|
||||||
split = layout.split(percentage=0.65)
|
split = layout.split(percentage=0.65)
|
||||||
|
|
||||||
@ -61,8 +59,8 @@ class WORLD_PT_color_correction(WorldButtonsPanel):
|
|||||||
__label__ = "Color Correction"
|
__label__ = "Color Correction"
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
world = context.world
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
world = context.world
|
||||||
|
|
||||||
row = layout.row()
|
row = layout.row()
|
||||||
row.itemR(world, "exposure")
|
row.itemR(world, "exposure")
|
||||||
@ -72,14 +70,15 @@ class WORLD_PT_mist(WorldButtonsPanel):
|
|||||||
__label__ = "Mist"
|
__label__ = "Mist"
|
||||||
|
|
||||||
def draw_header(self, context):
|
def draw_header(self, context):
|
||||||
|
layout = self.layout
|
||||||
world = context.world
|
world = context.world
|
||||||
|
|
||||||
layout = self.layout
|
|
||||||
layout.itemR(world.mist, "enabled", text="")
|
layout.itemR(world.mist, "enabled", text="")
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
world = context.world
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
world = context.world
|
||||||
|
|
||||||
layout.active = world.mist.enabled
|
layout.active = world.mist.enabled
|
||||||
|
|
||||||
flow = layout.column_flow()
|
flow = layout.column_flow()
|
||||||
@ -95,14 +94,15 @@ class WORLD_PT_stars(WorldButtonsPanel):
|
|||||||
__label__ = "Stars"
|
__label__ = "Stars"
|
||||||
|
|
||||||
def draw_header(self, context):
|
def draw_header(self, context):
|
||||||
|
layout = self.layout
|
||||||
world = context.world
|
world = context.world
|
||||||
|
|
||||||
layout = self.layout
|
|
||||||
layout.itemR(world.stars, "enabled", text="")
|
layout.itemR(world.stars, "enabled", text="")
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
world = context.world
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
world = context.world
|
||||||
|
|
||||||
layout.active = world.stars.enabled
|
layout.active = world.stars.enabled
|
||||||
|
|
||||||
flow = layout.column_flow()
|
flow = layout.column_flow()
|
||||||
@ -115,24 +115,26 @@ class WORLD_PT_ambient_occlusion(WorldButtonsPanel):
|
|||||||
__label__ = "Ambient Occlusion"
|
__label__ = "Ambient Occlusion"
|
||||||
|
|
||||||
def draw_header(self, context):
|
def draw_header(self, context):
|
||||||
|
layout = self.layout
|
||||||
world = context.world
|
world = context.world
|
||||||
|
|
||||||
layout = self.layout
|
|
||||||
layout.itemR(world.ambient_occlusion, "enabled", text="")
|
layout.itemR(world.ambient_occlusion, "enabled", text="")
|
||||||
|
|
||||||
def draw(self, context):
|
def draw(self, context):
|
||||||
world = context.world
|
|
||||||
ao = world.ambient_occlusion
|
|
||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
ao = context.world.ambient_occlusion
|
||||||
|
|
||||||
layout.active = ao.enabled
|
layout.active = ao.enabled
|
||||||
|
|
||||||
layout.itemR(ao, "gather_method", expand=True)
|
layout.itemR(ao, "gather_method", expand=True)
|
||||||
|
|
||||||
if ao.gather_method == 'RAYTRACE':
|
if ao.gather_method == 'RAYTRACE':
|
||||||
split = layout.split()
|
split = layout.split()
|
||||||
|
|
||||||
col = split.column()
|
col = split.column()
|
||||||
col.itemR(ao, "samples")
|
col.itemR(ao, "samples")
|
||||||
col.itemR(ao, "distance")
|
col.itemR(ao, "distance")
|
||||||
|
|
||||||
col = split.column()
|
col = split.column()
|
||||||
col.itemR(ao, "falloff")
|
col.itemR(ao, "falloff")
|
||||||
colsub = col.column()
|
colsub = col.column()
|
||||||
@ -151,10 +153,12 @@ class WORLD_PT_ambient_occlusion(WorldButtonsPanel):
|
|||||||
|
|
||||||
if ao.gather_method == 'APPROXIMATE':
|
if ao.gather_method == 'APPROXIMATE':
|
||||||
split = layout.split()
|
split = layout.split()
|
||||||
|
|
||||||
col = split.column()
|
col = split.column()
|
||||||
col.itemR(ao, "passes")
|
col.itemR(ao, "passes")
|
||||||
col.itemR(ao, "error_tolerance", text="Error")
|
col.itemR(ao, "error_tolerance", text="Error")
|
||||||
col.itemR(ao, "correction")
|
col.itemR(ao, "correction")
|
||||||
|
|
||||||
col = split.column()
|
col = split.column()
|
||||||
col.itemR(ao, "falloff")
|
col.itemR(ao, "falloff")
|
||||||
colsub = col.column()
|
colsub = col.column()
|
||||||
|
836
release/ui/space_image.py
Normal file
836
release/ui/space_image.py
Normal file
@ -0,0 +1,836 @@
|
|||||||
|
|
||||||
|
import bpy
|
||||||
|
|
||||||
|
class IMAGE_MT_view(bpy.types.Menu):
|
||||||
|
__space_type__ = "IMAGE_EDITOR"
|
||||||
|
__label__ = "View"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
sima = context.space_data
|
||||||
|
uv = sima.uv_editor
|
||||||
|
|
||||||
|
show_uvedit = sima.show_uvedit
|
||||||
|
|
||||||
|
layout.itemO("IMAGE_OT_properties") # icon
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemR(sima, "update_automatically")
|
||||||
|
# XXX if show_uvedit:
|
||||||
|
# XXX layout.itemR(uv, "local_view") # "UV Local View", Numpad /
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemO("IMAGE_OT_view_zoom_in")
|
||||||
|
layout.itemO("IMAGE_OT_view_zoom_out")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
ratios = [[1, 8], [1, 4], [1, 2], [1, 1], [2, 1], [4, 1], [8, 1]];
|
||||||
|
|
||||||
|
for a, b in ratios:
|
||||||
|
text = "Zoom %d:%d" % (a, b)
|
||||||
|
layout.item_floatO("IMAGE_OT_view_zoom_ratio", "ratio", a/b, text=text)
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
if show_uvedit:
|
||||||
|
layout.itemO("IMAGE_OT_view_selected")
|
||||||
|
|
||||||
|
layout.itemO("IMAGE_OT_view_all")
|
||||||
|
layout.itemO("SCREEN_OT_screen_full_area")
|
||||||
|
|
||||||
|
class IMAGE_MT_select(bpy.types.Menu):
|
||||||
|
__space_type__ = "IMAGE_EDITOR"
|
||||||
|
__label__ = "Select"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
|
layout.itemO("UV_OT_select_border")
|
||||||
|
layout.item_booleanO("UV_OT_select_border", "pinned", True)
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemO("UV_OT_select_all_toggle")
|
||||||
|
layout.itemO("UV_OT_select_invert")
|
||||||
|
layout.itemO("UV_OT_unlink_selection")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemO("UV_OT_select_pinned")
|
||||||
|
layout.itemO("UV_OT_select_linked")
|
||||||
|
|
||||||
|
class IMAGE_MT_image(bpy.types.Menu):
|
||||||
|
__space_type__ = "IMAGE_EDITOR"
|
||||||
|
__label__ = "Image"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
sima = context.space_data
|
||||||
|
ima = sima.image
|
||||||
|
|
||||||
|
layout.itemO("IMAGE_OT_new")
|
||||||
|
layout.itemO("IMAGE_OT_open")
|
||||||
|
|
||||||
|
show_render = sima.show_render
|
||||||
|
|
||||||
|
if ima:
|
||||||
|
if show_render:
|
||||||
|
layout.itemO("IMAGE_OT_replace")
|
||||||
|
layout.itemO("IMAGE_OT_reload")
|
||||||
|
|
||||||
|
layout.itemO("IMAGE_OT_save")
|
||||||
|
layout.itemO("IMAGE_OT_save_as")
|
||||||
|
|
||||||
|
if ima.source == "SEQUENCE":
|
||||||
|
layout.itemO("IMAGE_OT_save_sequence")
|
||||||
|
|
||||||
|
if not show_render:
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
if ima.packed_file:
|
||||||
|
layout.itemO("IMAGE_OT_unpack")
|
||||||
|
else:
|
||||||
|
layout.itemO("IMAGE_OT_pack")
|
||||||
|
|
||||||
|
# only for dirty && specific image types : XXX poll?
|
||||||
|
#if(ibuf && (ibuf->userflags & IB_BITMAPDIRTY))
|
||||||
|
if False:
|
||||||
|
if ima.source in ("FILE", "GENERATED") and ima.type != "MULTILAYER":
|
||||||
|
layout.item_booleanO("IMAGE_OT_pack", "as_png", True, text="Pack As PNG")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemR(sima, "image_painting")
|
||||||
|
|
||||||
|
class IMAGE_MT_uvs_showhide(bpy.types.Menu):
|
||||||
|
__space_type__ = "IMAGE_EDITOR"
|
||||||
|
__label__ = "Show/Hide Faces"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
|
layout.itemO("UV_OT_reveal")
|
||||||
|
layout.itemO("UV_OT_hide")
|
||||||
|
layout.item_booleanO("UV_OT_hide", "unselected", True)
|
||||||
|
|
||||||
|
class IMAGE_MT_uvs_transform(bpy.types.Menu):
|
||||||
|
__space_type__ = "IMAGE_EDITOR"
|
||||||
|
__label__ = "Transform"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
|
layout.item_enumO("TFM_OT_transform", "mode", "TRANSLATION")
|
||||||
|
layout.item_enumO("TFM_OT_transform", "mode", "ROTATION")
|
||||||
|
layout.item_enumO("TFM_OT_transform", "mode", "RESIZE")
|
||||||
|
|
||||||
|
class IMAGE_MT_uvs_mirror(bpy.types.Menu):
|
||||||
|
__space_type__ = "IMAGE_EDITOR"
|
||||||
|
__label__ = "Mirror"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
|
layout.item_enumO("UV_OT_mirror", "axis", "MIRROR_X") # "X Axis", M,
|
||||||
|
layout.item_enumO("UV_OT_mirror", "axis", "MIRROR_Y") # "Y Axis", M,
|
||||||
|
|
||||||
|
class IMAGE_MT_uvs_weldalign(bpy.types.Menu):
|
||||||
|
__space_type__ = "IMAGE_EDITOR"
|
||||||
|
__label__ = "Weld/Align"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
|
layout.itemO("UV_OT_weld") # W, 1
|
||||||
|
layout.items_enumO("UV_OT_align", "axis") # W, 2/3/4
|
||||||
|
|
||||||
|
|
||||||
|
class IMAGE_MT_uvs(bpy.types.Menu):
|
||||||
|
__space_type__ = "IMAGE_EDITOR"
|
||||||
|
__label__ = "UVs"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
sima = context.space_data
|
||||||
|
uv = sima.uv_editor
|
||||||
|
scene = context.scene
|
||||||
|
|
||||||
|
layout.itemR(uv, "snap_to_pixels")
|
||||||
|
layout.itemR(uv, "constrain_to_image_bounds")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemR(uv, "live_unwrap")
|
||||||
|
layout.itemO("UV_OT_unwrap")
|
||||||
|
layout.item_booleanO("UV_OT_pin", "clear", True, text="Unpin")
|
||||||
|
layout.itemO("UV_OT_pin")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemO("UV_OT_pack_islands")
|
||||||
|
layout.itemO("UV_OT_average_islands_scale")
|
||||||
|
layout.itemO("UV_OT_minimize_stretch")
|
||||||
|
layout.itemO("UV_OT_stitch")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemM(context, "IMAGE_MT_uvs_transform")
|
||||||
|
layout.itemM(context, "IMAGE_MT_uvs_mirror")
|
||||||
|
layout.itemM(context, "IMAGE_MT_uvs_weldalign")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
# XXX layout.itemR(scene, "proportional_editing")
|
||||||
|
layout.item_menu_enumR(scene, "proportional_editing_falloff")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemM(context, "IMAGE_MT_uvs_showhide")
|
||||||
|
|
||||||
|
class IMAGE_HT_header(bpy.types.Header):
|
||||||
|
__space_type__ = "IMAGE_EDITOR"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
sima = context.space_data
|
||||||
|
ima = sima.image
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
|
show_render = sima.show_render
|
||||||
|
show_paint = sima.show_paint
|
||||||
|
show_uvedit = sima.show_uvedit
|
||||||
|
|
||||||
|
layout.template_header(context)
|
||||||
|
|
||||||
|
# menus
|
||||||
|
if context.area.show_menus:
|
||||||
|
row = layout.row()
|
||||||
|
row.itemM(context, "IMAGE_MT_view")
|
||||||
|
|
||||||
|
if show_uvedit:
|
||||||
|
row.itemM(context, "IMAGE_MT_select")
|
||||||
|
|
||||||
|
# XXX menuname= (ibuf && (ibuf->userflags & IB_BITMAPDIRTY))? "Image*": "Image";
|
||||||
|
row.itemM(context, "IMAGE_MT_image")
|
||||||
|
|
||||||
|
if show_uvedit:
|
||||||
|
row.itemM(context, "IMAGE_MT_uvs")
|
||||||
|
|
||||||
|
layout.template_ID(context, sima, "image", new="IMAGE_OT_new", open="IMAGE_OT_open")
|
||||||
|
|
||||||
|
"""
|
||||||
|
/* image select */
|
||||||
|
|
||||||
|
pinflag= (show_render)? 0: UI_ID_PIN;
|
||||||
|
xco= uiDefIDPoinButs(block, CTX_data_main(C), NULL, (ID*)sima->image, ID_IM, &sima->pin, xco, yco,
|
||||||
|
sima_idpoin_handle, UI_ID_BROWSE|UI_ID_BROWSE_RENDER|UI_ID_RENAME|UI_ID_ADD_NEW|UI_ID_OPEN|UI_ID_DELETE|pinflag);
|
||||||
|
xco += 8;
|
||||||
|
"""
|
||||||
|
|
||||||
|
"""
|
||||||
|
if(ima && !ELEM3(ima->source, IMA_SRC_SEQUENCE, IMA_SRC_MOVIE, IMA_SRC_VIEWER) && ima->ok) {
|
||||||
|
/* XXX this should not be a static var */
|
||||||
|
static int headerbuttons_packdummy;
|
||||||
|
|
||||||
|
headerbuttons_packdummy = 0;
|
||||||
|
|
||||||
|
if (ima->packedfile) {
|
||||||
|
headerbuttons_packdummy = 1;
|
||||||
|
}
|
||||||
|
if (ima->packedfile && ibuf && (ibuf->userflags & IB_BITMAPDIRTY))
|
||||||
|
uiDefIconButBitI(block, TOG, 1, 0 /* XXX B_SIMA_REPACK */, ICON_UGLYPACKAGE, xco,yco,XIC,YIC, &headerbuttons_packdummy, 0, 0, 0, 0, "Re-Pack this image as PNG");
|
||||||
|
else
|
||||||
|
uiDefIconButBitI(block, TOG, 1, 0 /* XXX B_SIMAPACKIMA */, ICON_PACKAGE, xco,yco,XIC,YIC, &headerbuttons_packdummy, 0, 0, 0, 0, "Pack/Unpack this image");
|
||||||
|
|
||||||
|
xco+= XIC+8;
|
||||||
|
}
|
||||||
|
"""
|
||||||
|
|
||||||
|
# uv editing
|
||||||
|
if show_uvedit:
|
||||||
|
pass
|
||||||
|
|
||||||
|
"""
|
||||||
|
/* uv editing */
|
||||||
|
if(show_uvedit) {
|
||||||
|
/* pivot */
|
||||||
|
uiDefIconTextButS(block, ICONTEXTROW, B_NOP, ICON_ROTATE,
|
||||||
|
"Pivot: %t|Bounding Box Center %x0|Median Point %x3|2D Cursor %x1",
|
||||||
|
xco,yco,XIC+10,YIC, &ar->v2d.around, 0, 3.0, 0, 0,
|
||||||
|
"Rotation/Scaling Pivot (Hotkeys: Comma, Shift Comma, Period)");
|
||||||
|
xco+= XIC + 18;
|
||||||
|
|
||||||
|
/* selection modes */
|
||||||
|
uiDefIconButBitS(block, TOG, UV_SYNC_SELECTION, B_REDR, ICON_EDIT, xco,yco,XIC,YIC, &scene->toolsettings->uv_flag, 0, 0, 0, 0, "Sync UV and Mesh Selection");
|
||||||
|
xco+= XIC+8;
|
||||||
|
|
||||||
|
if(scene->toolsettings->uv_flag & UV_SYNC_SELECTION) {
|
||||||
|
uiBlockBeginAlign(block);
|
||||||
|
|
||||||
|
uiDefIconButBitS(block, TOG, SCE_SELECT_VERTEX, B_REDR, ICON_VERTEXSEL,
|
||||||
|
xco,yco,XIC,YIC, &scene->selectmode, 1.0, 0.0, 0, 0, "Vertex select mode");
|
||||||
|
uiDefIconButBitS(block, TOG, SCE_SELECT_EDGE, B_REDR, ICON_EDGESEL,
|
||||||
|
xco+=XIC,yco,XIC,YIC, &scene->selectmode, 1.0, 0.0, 0, 0, "Edge select mode");
|
||||||
|
uiDefIconButBitS(block, TOG, SCE_SELECT_FACE, B_REDR, ICON_FACESEL,
|
||||||
|
xco+=XIC,yco,XIC,YIC, &scene->selectmode, 1.0, 0.0, 0, 0, "Face select mode");
|
||||||
|
|
||||||
|
uiBlockEndAlign(block);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
uiBlockBeginAlign(block);
|
||||||
|
|
||||||
|
uiDefIconButS(block, ROW, B_REDR, ICON_VERTEXSEL,
|
||||||
|
xco,yco,XIC,YIC, &scene->toolsettings->uv_selectmode, 1.0, UV_SELECT_VERTEX, 0, 0, "Vertex select mode");
|
||||||
|
uiDefIconButS(block, ROW, B_REDR, ICON_EDGESEL,
|
||||||
|
xco+=XIC,yco,XIC,YIC, &scene->toolsettings->uv_selectmode, 1.0, UV_SELECT_EDGE, 0, 0, "Edge select mode");
|
||||||
|
uiDefIconButS(block, ROW, B_REDR, ICON_FACESEL,
|
||||||
|
xco+=XIC,yco,XIC,YIC, &scene->toolsettings->uv_selectmode, 1.0, UV_SELECT_FACE, 0, 0, "Face select mode");
|
||||||
|
uiDefIconButS(block, ROW, B_REDR, ICON_LINKEDSEL,
|
||||||
|
xco+=XIC,yco,XIC,YIC, &scene->toolsettings->uv_selectmode, 1.0, UV_SELECT_ISLAND, 0, 0, "Island select mode");
|
||||||
|
|
||||||
|
uiBlockEndAlign(block);
|
||||||
|
|
||||||
|
/* would use these if const's could go in strings
|
||||||
|
* SI_STICKY_LOC SI_STICKY_DISABLE SI_STICKY_VERTEX */
|
||||||
|
but = uiDefIconTextButC(block, ICONTEXTROW, B_REDR, ICON_STICKY_UVS_LOC,
|
||||||
|
"Sticky UV Selection: %t|Disable%x1|Shared Location%x0|Shared Vertex%x2",
|
||||||
|
xco+=XIC+10,yco,XIC+10,YIC, &(sima->sticky), 0, 3.0, 0, 0,
|
||||||
|
"Sticky UV Selection (Hotkeys: Shift C, Alt C, Ctrl C)");
|
||||||
|
}
|
||||||
|
|
||||||
|
xco+= XIC + 16;
|
||||||
|
|
||||||
|
/* snap options, identical to options in 3d view header */
|
||||||
|
uiBlockBeginAlign(block);
|
||||||
|
|
||||||
|
if (scene->snap_flag & SCE_SNAP) {
|
||||||
|
uiDefIconButBitS(block, TOG, SCE_SNAP, B_REDR, ICON_SNAP_GEO,xco,yco,XIC,YIC, &scene->snap_flag, 0, 0, 0, 0, "Use Snap or Grid (Shift Tab).");
|
||||||
|
xco+= XIC;
|
||||||
|
uiDefButS(block, MENU, B_NOP, "Mode%t|Closest%x0|Center%x1|Median%x2",xco,yco,70,YIC, &scene->snap_target, 0, 0, 0, 0, "Snap Target Mode.");
|
||||||
|
xco+= 70;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
uiDefIconButBitS(block, TOG, SCE_SNAP, B_REDR, ICON_SNAP_GEAR,xco,yco,XIC,YIC, &scene->snap_flag, 0, 0, 0, 0, "Snap while Ctrl is held during transform (Shift Tab).");
|
||||||
|
xco+= XIC;
|
||||||
|
}
|
||||||
|
|
||||||
|
uiBlockEndAlign(block);
|
||||||
|
xco+= 8;
|
||||||
|
|
||||||
|
/* uv layers */
|
||||||
|
{
|
||||||
|
Object *obedit= CTX_data_edit_object(C);
|
||||||
|
char menustr[34*MAX_MTFACE];
|
||||||
|
static int act;
|
||||||
|
|
||||||
|
image_menu_uvlayers(obedit, menustr, &act);
|
||||||
|
|
||||||
|
but = uiDefButI(block, MENU, B_NOP, menustr ,xco,yco,85,YIC, &act, 0, 0, 0, 0, "Active UV Layer for editing.");
|
||||||
|
// uiButSetFunc(but, do_image_buttons_set_uvlayer_callback, &act, NULL);
|
||||||
|
|
||||||
|
xco+= 85;
|
||||||
|
}
|
||||||
|
|
||||||
|
xco+= 8;
|
||||||
|
}
|
||||||
|
"""
|
||||||
|
|
||||||
|
if ima:
|
||||||
|
"""
|
||||||
|
RenderResult *rr;
|
||||||
|
|
||||||
|
/* render layers and passes */
|
||||||
|
rr= BKE_image_get_renderresult(scene, ima);
|
||||||
|
if(rr) {
|
||||||
|
uiBlockBeginAlign(block);
|
||||||
|
#if 0
|
||||||
|
uiblock_layer_pass_buttons(block, rr, &sima->iuser, B_REDR, xco, 0, 160);
|
||||||
|
#endif
|
||||||
|
uiBlockEndAlign(block);
|
||||||
|
xco+= 166;
|
||||||
|
}
|
||||||
|
"""
|
||||||
|
|
||||||
|
# painting
|
||||||
|
layout.itemR(sima, "image_painting", text="")
|
||||||
|
|
||||||
|
# draw options
|
||||||
|
row = layout.row(align=True)
|
||||||
|
row.itemR(sima, "draw_channels", text="", expand=True)
|
||||||
|
|
||||||
|
row = layout.row(align=True)
|
||||||
|
if ima.type == "COMPOSITE":
|
||||||
|
row.itemO("IMAGE_OT_record_composite", icon="ICON_REC")
|
||||||
|
if ima.type == "COMPOSITE" and ima.source in ("MOVIE", "SEQUENCE"):
|
||||||
|
row.itemO("IMAGE_OT_play_composite", icon="ICON_PLAY")
|
||||||
|
|
||||||
|
layout.itemR(sima, "update_automatically", text="")
|
||||||
|
|
||||||
|
class IMAGE_PT_game_properties(bpy.types.Panel):
|
||||||
|
__space_type__ = "IMAGE_EDITOR"
|
||||||
|
__region_type__ = "UI"
|
||||||
|
__label__ = "Game Properties"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
sima = context.space_data
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
|
ima = sima.image
|
||||||
|
|
||||||
|
if ima:
|
||||||
|
split = layout.split()
|
||||||
|
|
||||||
|
col = split.column(align=True)
|
||||||
|
col.itemR(ima, "animated")
|
||||||
|
|
||||||
|
subcol = col.column()
|
||||||
|
subcol.itemR(ima, "animation_start", text="Start")
|
||||||
|
subcol.itemR(ima, "animation_end", text="End")
|
||||||
|
subcol.itemR(ima, "animation_speed", text="Speed")
|
||||||
|
subcol.active = ima.animated
|
||||||
|
|
||||||
|
col = split.column()
|
||||||
|
col.itemR(ima, "tiles")
|
||||||
|
|
||||||
|
subrow = col.row(align=True)
|
||||||
|
subrow.itemR(ima, "tiles_x", text="X")
|
||||||
|
subrow.itemR(ima, "tiles_y", text="Y")
|
||||||
|
subrow.active = ima.tiles
|
||||||
|
|
||||||
|
col.itemS()
|
||||||
|
col.itemR(ima, "clamp_x")
|
||||||
|
col.itemR(ima, "clamp_y")
|
||||||
|
|
||||||
|
col.itemR(ima, "mapping", expand=True)
|
||||||
|
|
||||||
|
bpy.types.register(IMAGE_MT_view)
|
||||||
|
bpy.types.register(IMAGE_MT_select)
|
||||||
|
bpy.types.register(IMAGE_MT_image)
|
||||||
|
bpy.types.register(IMAGE_MT_uvs_showhide)
|
||||||
|
bpy.types.register(IMAGE_MT_uvs_transform)
|
||||||
|
bpy.types.register(IMAGE_MT_uvs_mirror)
|
||||||
|
bpy.types.register(IMAGE_MT_uvs_weldalign)
|
||||||
|
bpy.types.register(IMAGE_MT_uvs)
|
||||||
|
bpy.types.register(IMAGE_HT_header)
|
||||||
|
bpy.types.register(IMAGE_PT_game_properties)
|
||||||
|
|
||||||
|
|
||||||
|
import bpy
|
||||||
|
|
||||||
|
class IMAGE_MT_view(bpy.types.Menu):
|
||||||
|
__space_type__ = "IMAGE_EDITOR"
|
||||||
|
__label__ = "View"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
sima = context.space_data
|
||||||
|
uv = sima.uv_editor
|
||||||
|
|
||||||
|
show_uvedit = sima.show_uvedit
|
||||||
|
|
||||||
|
layout.itemO("IMAGE_OT_properties") # icon
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemR(sima, "update_automatically")
|
||||||
|
# XXX if show_uvedit:
|
||||||
|
# XXX layout.itemR(uv, "local_view") # "UV Local View", Numpad /
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemO("IMAGE_OT_view_zoom_in")
|
||||||
|
layout.itemO("IMAGE_OT_view_zoom_out")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
ratios = [[1, 8], [1, 4], [1, 2], [1, 1], [2, 1], [4, 1], [8, 1]];
|
||||||
|
|
||||||
|
for a, b in ratios:
|
||||||
|
text = "Zoom %d:%d" % (a, b)
|
||||||
|
layout.item_floatO("IMAGE_OT_view_zoom_ratio", "ratio", a/b, text=text)
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
if show_uvedit:
|
||||||
|
layout.itemO("IMAGE_OT_view_selected")
|
||||||
|
|
||||||
|
layout.itemO("IMAGE_OT_view_all")
|
||||||
|
layout.itemO("SCREEN_OT_screen_full_area")
|
||||||
|
|
||||||
|
class IMAGE_MT_select(bpy.types.Menu):
|
||||||
|
__space_type__ = "IMAGE_EDITOR"
|
||||||
|
__label__ = "Select"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
|
layout.itemO("UV_OT_select_border")
|
||||||
|
layout.item_booleanO("UV_OT_select_border", "pinned", True)
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemO("UV_OT_select_all_toggle")
|
||||||
|
layout.itemO("UV_OT_select_invert")
|
||||||
|
layout.itemO("UV_OT_unlink_selection")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemO("UV_OT_select_pinned")
|
||||||
|
layout.itemO("UV_OT_select_linked")
|
||||||
|
|
||||||
|
class IMAGE_MT_image(bpy.types.Menu):
|
||||||
|
__space_type__ = "IMAGE_EDITOR"
|
||||||
|
__label__ = "Image"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
sima = context.space_data
|
||||||
|
ima = sima.image
|
||||||
|
|
||||||
|
layout.itemO("IMAGE_OT_new")
|
||||||
|
layout.itemO("IMAGE_OT_open")
|
||||||
|
|
||||||
|
show_render = sima.show_render
|
||||||
|
|
||||||
|
if ima:
|
||||||
|
if show_render:
|
||||||
|
layout.itemO("IMAGE_OT_replace")
|
||||||
|
layout.itemO("IMAGE_OT_reload")
|
||||||
|
|
||||||
|
layout.itemO("IMAGE_OT_save")
|
||||||
|
layout.itemO("IMAGE_OT_save_as")
|
||||||
|
|
||||||
|
if ima.source == "SEQUENCE":
|
||||||
|
layout.itemO("IMAGE_OT_save_sequence")
|
||||||
|
|
||||||
|
if not show_render:
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
if ima.packed_file:
|
||||||
|
layout.itemO("IMAGE_OT_unpack")
|
||||||
|
else:
|
||||||
|
layout.itemO("IMAGE_OT_pack")
|
||||||
|
|
||||||
|
# only for dirty && specific image types : XXX poll?
|
||||||
|
#if(ibuf && (ibuf->userflags & IB_BITMAPDIRTY))
|
||||||
|
if False:
|
||||||
|
if ima.source in ("FILE", "GENERATED") and ima.type != "MULTILAYER":
|
||||||
|
layout.item_booleanO("IMAGE_OT_pack", "as_png", True, text="Pack As PNG")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemR(sima, "image_painting")
|
||||||
|
|
||||||
|
class IMAGE_MT_uvs_showhide(bpy.types.Menu):
|
||||||
|
__space_type__ = "IMAGE_EDITOR"
|
||||||
|
__label__ = "Show/Hide Faces"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
|
layout.itemO("UV_OT_reveal")
|
||||||
|
layout.itemO("UV_OT_hide")
|
||||||
|
layout.item_booleanO("UV_OT_hide", "unselected", True)
|
||||||
|
|
||||||
|
class IMAGE_MT_uvs_transform(bpy.types.Menu):
|
||||||
|
__space_type__ = "IMAGE_EDITOR"
|
||||||
|
__label__ = "Transform"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
|
layout.item_enumO("TFM_OT_transform", "mode", "TRANSLATION")
|
||||||
|
layout.item_enumO("TFM_OT_transform", "mode", "ROTATION")
|
||||||
|
layout.item_enumO("TFM_OT_transform", "mode", "RESIZE")
|
||||||
|
|
||||||
|
class IMAGE_MT_uvs_mirror(bpy.types.Menu):
|
||||||
|
__space_type__ = "IMAGE_EDITOR"
|
||||||
|
__label__ = "Mirror"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
|
layout.item_enumO("UV_OT_mirror", "axis", "MIRROR_X") # "X Axis", M,
|
||||||
|
layout.item_enumO("UV_OT_mirror", "axis", "MIRROR_Y") # "Y Axis", M,
|
||||||
|
|
||||||
|
class IMAGE_MT_uvs_weldalign(bpy.types.Menu):
|
||||||
|
__space_type__ = "IMAGE_EDITOR"
|
||||||
|
__label__ = "Weld/Align"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
|
layout.itemO("UV_OT_weld") # W, 1
|
||||||
|
layout.items_enumO("UV_OT_align", "axis") # W, 2/3/4
|
||||||
|
|
||||||
|
|
||||||
|
class IMAGE_MT_uvs(bpy.types.Menu):
|
||||||
|
__space_type__ = "IMAGE_EDITOR"
|
||||||
|
__label__ = "UVs"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
sima = context.space_data
|
||||||
|
uv = sima.uv_editor
|
||||||
|
scene = context.scene
|
||||||
|
|
||||||
|
layout.itemR(uv, "snap_to_pixels")
|
||||||
|
layout.itemR(uv, "constrain_to_image_bounds")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemR(uv, "live_unwrap")
|
||||||
|
layout.itemO("UV_OT_unwrap")
|
||||||
|
layout.item_booleanO("UV_OT_pin", "clear", True, text="Unpin")
|
||||||
|
layout.itemO("UV_OT_pin")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemO("UV_OT_pack_islands")
|
||||||
|
layout.itemO("UV_OT_average_islands_scale")
|
||||||
|
layout.itemO("UV_OT_minimize_stretch")
|
||||||
|
layout.itemO("UV_OT_stitch")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemM(context, "IMAGE_MT_uvs_transform")
|
||||||
|
layout.itemM(context, "IMAGE_MT_uvs_mirror")
|
||||||
|
layout.itemM(context, "IMAGE_MT_uvs_weldalign")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
# XXX layout.itemR(scene, "proportional_editing")
|
||||||
|
layout.item_menu_enumR(scene, "proportional_editing_falloff")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemM(context, "IMAGE_MT_uvs_showhide")
|
||||||
|
|
||||||
|
class IMAGE_HT_header(bpy.types.Header):
|
||||||
|
__space_type__ = "IMAGE_EDITOR"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
sima = context.space_data
|
||||||
|
ima = sima.image
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
|
show_render = sima.show_render
|
||||||
|
show_paint = sima.show_paint
|
||||||
|
show_uvedit = sima.show_uvedit
|
||||||
|
|
||||||
|
layout.template_header(context)
|
||||||
|
|
||||||
|
# menus
|
||||||
|
if context.area.show_menus:
|
||||||
|
row = layout.row()
|
||||||
|
row.itemM(context, "IMAGE_MT_view")
|
||||||
|
|
||||||
|
if show_uvedit:
|
||||||
|
row.itemM(context, "IMAGE_MT_select")
|
||||||
|
|
||||||
|
# XXX menuname= (ibuf && (ibuf->userflags & IB_BITMAPDIRTY))? "Image*": "Image";
|
||||||
|
row.itemM(context, "IMAGE_MT_image")
|
||||||
|
|
||||||
|
if show_uvedit:
|
||||||
|
row.itemM(context, "IMAGE_MT_uvs")
|
||||||
|
|
||||||
|
layout.template_ID(context, sima, "image", new="IMAGE_OT_new", open="IMAGE_OT_open")
|
||||||
|
|
||||||
|
"""
|
||||||
|
/* image select */
|
||||||
|
|
||||||
|
pinflag= (show_render)? 0: UI_ID_PIN;
|
||||||
|
xco= uiDefIDPoinButs(block, CTX_data_main(C), NULL, (ID*)sima->image, ID_IM, &sima->pin, xco, yco,
|
||||||
|
sima_idpoin_handle, UI_ID_BROWSE|UI_ID_BROWSE_RENDER|UI_ID_RENAME|UI_ID_ADD_NEW|UI_ID_OPEN|UI_ID_DELETE|pinflag);
|
||||||
|
xco += 8;
|
||||||
|
"""
|
||||||
|
|
||||||
|
"""
|
||||||
|
if(ima && !ELEM3(ima->source, IMA_SRC_SEQUENCE, IMA_SRC_MOVIE, IMA_SRC_VIEWER) && ima->ok) {
|
||||||
|
/* XXX this should not be a static var */
|
||||||
|
static int headerbuttons_packdummy;
|
||||||
|
|
||||||
|
headerbuttons_packdummy = 0;
|
||||||
|
|
||||||
|
if (ima->packedfile) {
|
||||||
|
headerbuttons_packdummy = 1;
|
||||||
|
}
|
||||||
|
if (ima->packedfile && ibuf && (ibuf->userflags & IB_BITMAPDIRTY))
|
||||||
|
uiDefIconButBitI(block, TOG, 1, 0 /* XXX B_SIMA_REPACK */, ICON_UGLYPACKAGE, xco,yco,XIC,YIC, &headerbuttons_packdummy, 0, 0, 0, 0, "Re-Pack this image as PNG");
|
||||||
|
else
|
||||||
|
uiDefIconButBitI(block, TOG, 1, 0 /* XXX B_SIMAPACKIMA */, ICON_PACKAGE, xco,yco,XIC,YIC, &headerbuttons_packdummy, 0, 0, 0, 0, "Pack/Unpack this image");
|
||||||
|
|
||||||
|
xco+= XIC+8;
|
||||||
|
}
|
||||||
|
"""
|
||||||
|
|
||||||
|
# uv editing
|
||||||
|
if show_uvedit:
|
||||||
|
pass
|
||||||
|
|
||||||
|
"""
|
||||||
|
/* uv editing */
|
||||||
|
if(show_uvedit) {
|
||||||
|
/* pivot */
|
||||||
|
uiDefIconTextButS(block, ICONTEXTROW, B_NOP, ICON_ROTATE,
|
||||||
|
"Pivot: %t|Bounding Box Center %x0|Median Point %x3|2D Cursor %x1",
|
||||||
|
xco,yco,XIC+10,YIC, &ar->v2d.around, 0, 3.0, 0, 0,
|
||||||
|
"Rotation/Scaling Pivot (Hotkeys: Comma, Shift Comma, Period)");
|
||||||
|
xco+= XIC + 18;
|
||||||
|
|
||||||
|
/* selection modes */
|
||||||
|
uiDefIconButBitS(block, TOG, UV_SYNC_SELECTION, B_REDR, ICON_EDIT, xco,yco,XIC,YIC, &scene->toolsettings->uv_flag, 0, 0, 0, 0, "Sync UV and Mesh Selection");
|
||||||
|
xco+= XIC+8;
|
||||||
|
|
||||||
|
if(scene->toolsettings->uv_flag & UV_SYNC_SELECTION) {
|
||||||
|
uiBlockBeginAlign(block);
|
||||||
|
|
||||||
|
uiDefIconButBitS(block, TOG, SCE_SELECT_VERTEX, B_REDR, ICON_VERTEXSEL,
|
||||||
|
xco,yco,XIC,YIC, &scene->selectmode, 1.0, 0.0, 0, 0, "Vertex select mode");
|
||||||
|
uiDefIconButBitS(block, TOG, SCE_SELECT_EDGE, B_REDR, ICON_EDGESEL,
|
||||||
|
xco+=XIC,yco,XIC,YIC, &scene->selectmode, 1.0, 0.0, 0, 0, "Edge select mode");
|
||||||
|
uiDefIconButBitS(block, TOG, SCE_SELECT_FACE, B_REDR, ICON_FACESEL,
|
||||||
|
xco+=XIC,yco,XIC,YIC, &scene->selectmode, 1.0, 0.0, 0, 0, "Face select mode");
|
||||||
|
|
||||||
|
uiBlockEndAlign(block);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
uiBlockBeginAlign(block);
|
||||||
|
|
||||||
|
uiDefIconButS(block, ROW, B_REDR, ICON_VERTEXSEL,
|
||||||
|
xco,yco,XIC,YIC, &scene->toolsettings->uv_selectmode, 1.0, UV_SELECT_VERTEX, 0, 0, "Vertex select mode");
|
||||||
|
uiDefIconButS(block, ROW, B_REDR, ICON_EDGESEL,
|
||||||
|
xco+=XIC,yco,XIC,YIC, &scene->toolsettings->uv_selectmode, 1.0, UV_SELECT_EDGE, 0, 0, "Edge select mode");
|
||||||
|
uiDefIconButS(block, ROW, B_REDR, ICON_FACESEL,
|
||||||
|
xco+=XIC,yco,XIC,YIC, &scene->toolsettings->uv_selectmode, 1.0, UV_SELECT_FACE, 0, 0, "Face select mode");
|
||||||
|
uiDefIconButS(block, ROW, B_REDR, ICON_LINKEDSEL,
|
||||||
|
xco+=XIC,yco,XIC,YIC, &scene->toolsettings->uv_selectmode, 1.0, UV_SELECT_ISLAND, 0, 0, "Island select mode");
|
||||||
|
|
||||||
|
uiBlockEndAlign(block);
|
||||||
|
|
||||||
|
/* would use these if const's could go in strings
|
||||||
|
* SI_STICKY_LOC SI_STICKY_DISABLE SI_STICKY_VERTEX */
|
||||||
|
but = uiDefIconTextButC(block, ICONTEXTROW, B_REDR, ICON_STICKY_UVS_LOC,
|
||||||
|
"Sticky UV Selection: %t|Disable%x1|Shared Location%x0|Shared Vertex%x2",
|
||||||
|
xco+=XIC+10,yco,XIC+10,YIC, &(sima->sticky), 0, 3.0, 0, 0,
|
||||||
|
"Sticky UV Selection (Hotkeys: Shift C, Alt C, Ctrl C)");
|
||||||
|
}
|
||||||
|
|
||||||
|
xco+= XIC + 16;
|
||||||
|
|
||||||
|
/* snap options, identical to options in 3d view header */
|
||||||
|
uiBlockBeginAlign(block);
|
||||||
|
|
||||||
|
if (scene->snap_flag & SCE_SNAP) {
|
||||||
|
uiDefIconButBitS(block, TOG, SCE_SNAP, B_REDR, ICON_SNAP_GEO,xco,yco,XIC,YIC, &scene->snap_flag, 0, 0, 0, 0, "Use Snap or Grid (Shift Tab).");
|
||||||
|
xco+= XIC;
|
||||||
|
uiDefButS(block, MENU, B_NOP, "Mode%t|Closest%x0|Center%x1|Median%x2",xco,yco,70,YIC, &scene->snap_target, 0, 0, 0, 0, "Snap Target Mode.");
|
||||||
|
xco+= 70;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
uiDefIconButBitS(block, TOG, SCE_SNAP, B_REDR, ICON_SNAP_GEAR,xco,yco,XIC,YIC, &scene->snap_flag, 0, 0, 0, 0, "Snap while Ctrl is held during transform (Shift Tab).");
|
||||||
|
xco+= XIC;
|
||||||
|
}
|
||||||
|
|
||||||
|
uiBlockEndAlign(block);
|
||||||
|
xco+= 8;
|
||||||
|
|
||||||
|
/* uv layers */
|
||||||
|
{
|
||||||
|
Object *obedit= CTX_data_edit_object(C);
|
||||||
|
char menustr[34*MAX_MTFACE];
|
||||||
|
static int act;
|
||||||
|
|
||||||
|
image_menu_uvlayers(obedit, menustr, &act);
|
||||||
|
|
||||||
|
but = uiDefButI(block, MENU, B_NOP, menustr ,xco,yco,85,YIC, &act, 0, 0, 0, 0, "Active UV Layer for editing.");
|
||||||
|
// uiButSetFunc(but, do_image_buttons_set_uvlayer_callback, &act, NULL);
|
||||||
|
|
||||||
|
xco+= 85;
|
||||||
|
}
|
||||||
|
|
||||||
|
xco+= 8;
|
||||||
|
}
|
||||||
|
"""
|
||||||
|
|
||||||
|
if ima:
|
||||||
|
"""
|
||||||
|
RenderResult *rr;
|
||||||
|
|
||||||
|
/* render layers and passes */
|
||||||
|
rr= BKE_image_get_renderresult(scene, ima);
|
||||||
|
if(rr) {
|
||||||
|
uiBlockBeginAlign(block);
|
||||||
|
#if 0
|
||||||
|
uiblock_layer_pass_buttons(block, rr, &sima->iuser, B_REDR, xco, 0, 160);
|
||||||
|
#endif
|
||||||
|
uiBlockEndAlign(block);
|
||||||
|
xco+= 166;
|
||||||
|
}
|
||||||
|
"""
|
||||||
|
|
||||||
|
# painting
|
||||||
|
layout.itemR(sima, "image_painting", text="")
|
||||||
|
|
||||||
|
# draw options
|
||||||
|
row = layout.row(align=True)
|
||||||
|
row.itemR(sima, "draw_channels", text="", expand=True)
|
||||||
|
|
||||||
|
row = layout.row(align=True)
|
||||||
|
if ima.type == "COMPOSITE":
|
||||||
|
row.itemO("IMAGE_OT_record_composite", icon="ICON_REC")
|
||||||
|
if ima.type == "COMPOSITE" and ima.source in ("MOVIE", "SEQUENCE"):
|
||||||
|
row.itemO("IMAGE_OT_play_composite", icon="ICON_PLAY")
|
||||||
|
|
||||||
|
layout.itemR(sima, "update_automatically", text="")
|
||||||
|
|
||||||
|
class IMAGE_PT_game_properties(bpy.types.Panel):
|
||||||
|
__space_type__ = "IMAGE_EDITOR"
|
||||||
|
__region_type__ = "UI"
|
||||||
|
__label__ = "Game Properties"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
sima = context.space_data
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
|
ima = sima.image
|
||||||
|
|
||||||
|
if ima:
|
||||||
|
split = layout.split()
|
||||||
|
|
||||||
|
col = split.column(align=True)
|
||||||
|
col.itemR(ima, "animated")
|
||||||
|
|
||||||
|
subcol = col.column()
|
||||||
|
subcol.itemR(ima, "animation_start", text="Start")
|
||||||
|
subcol.itemR(ima, "animation_end", text="End")
|
||||||
|
subcol.itemR(ima, "animation_speed", text="Speed")
|
||||||
|
subcol.active = ima.animated
|
||||||
|
|
||||||
|
col = split.column()
|
||||||
|
col.itemR(ima, "tiles")
|
||||||
|
|
||||||
|
subrow = col.row(align=True)
|
||||||
|
subrow.itemR(ima, "tiles_x", text="X")
|
||||||
|
subrow.itemR(ima, "tiles_y", text="Y")
|
||||||
|
subrow.active = ima.tiles
|
||||||
|
|
||||||
|
col.itemS()
|
||||||
|
col.itemR(ima, "clamp_x")
|
||||||
|
col.itemR(ima, "clamp_y")
|
||||||
|
|
||||||
|
col.itemR(ima, "mapping", expand=True)
|
||||||
|
|
||||||
|
bpy.types.register(IMAGE_MT_view)
|
||||||
|
bpy.types.register(IMAGE_MT_select)
|
||||||
|
bpy.types.register(IMAGE_MT_image)
|
||||||
|
bpy.types.register(IMAGE_MT_uvs_showhide)
|
||||||
|
bpy.types.register(IMAGE_MT_uvs_transform)
|
||||||
|
bpy.types.register(IMAGE_MT_uvs_mirror)
|
||||||
|
bpy.types.register(IMAGE_MT_uvs_weldalign)
|
||||||
|
bpy.types.register(IMAGE_MT_uvs)
|
||||||
|
bpy.types.register(IMAGE_HT_header)
|
||||||
|
bpy.types.register(IMAGE_PT_game_properties)
|
||||||
|
|
@ -18,7 +18,7 @@ class SEQUENCER_HT_header(bpy.types.Header):
|
|||||||
layout.template_header(context)
|
layout.template_header(context)
|
||||||
|
|
||||||
if context.area.show_menus:
|
if context.area.show_menus:
|
||||||
row = layout.row(align=True)
|
row = layout.row()
|
||||||
row.itemM(context, "SEQUENCER_MT_view")
|
row.itemM(context, "SEQUENCER_MT_view")
|
||||||
|
|
||||||
row.itemR(st, "display_mode")
|
row.itemR(st, "display_mode")
|
||||||
|
@ -2,12 +2,8 @@
|
|||||||
import bpy
|
import bpy
|
||||||
|
|
||||||
# temporary
|
# temporary
|
||||||
ICON_LINENUMBERS_OFF = 588
|
|
||||||
ICON_WORDWRAP_OFF = 584
|
|
||||||
ICON_SYNTAX_OFF = 586
|
|
||||||
ICON_TEXT = 120
|
ICON_TEXT = 120
|
||||||
ICON_HELP = 1
|
ICON_HELP = 1
|
||||||
ICON_SCRIPTPLUGINS = 1
|
|
||||||
|
|
||||||
class TEXT_HT_header(bpy.types.Header):
|
class TEXT_HT_header(bpy.types.Header):
|
||||||
__space_type__ = "TEXT_EDITOR"
|
__space_type__ = "TEXT_EDITOR"
|
||||||
@ -21,7 +17,7 @@ class TEXT_HT_header(bpy.types.Header):
|
|||||||
layout.template_header(context)
|
layout.template_header(context)
|
||||||
|
|
||||||
if context.area.show_menus:
|
if context.area.show_menus:
|
||||||
row = layout.row(align=True)
|
row = layout.row()
|
||||||
row.itemM(context, "TEXT_MT_text")
|
row.itemM(context, "TEXT_MT_text")
|
||||||
if text:
|
if text:
|
||||||
row.itemM(context, "TEXT_MT_edit")
|
row.itemM(context, "TEXT_MT_edit")
|
||||||
@ -30,13 +26,12 @@ class TEXT_HT_header(bpy.types.Header):
|
|||||||
if text and text.modified:
|
if text and text.modified:
|
||||||
row = layout.row()
|
row = layout.row()
|
||||||
# row.color(redalert)
|
# row.color(redalert)
|
||||||
row.itemO("TEXT_OT_resolve_conflict", text="", icon=ICON_HELP)
|
row.itemO("TEXT_OT_resolve_conflict", text="", icon='ICON_HELP')
|
||||||
|
|
||||||
row = layout.row(align=True)
|
row = layout.row(align=True)
|
||||||
row.itemR(st, "line_numbers", text="", icon=ICON_LINENUMBERS_OFF)
|
row.itemR(st, "line_numbers", text="")
|
||||||
row.itemR(st, "word_wrap", text="", icon=ICON_WORDWRAP_OFF)
|
row.itemR(st, "word_wrap", text="")
|
||||||
row.itemR(st, "syntax_highlight", text="", icon=ICON_SYNTAX_OFF)
|
row.itemR(st, "syntax_highlight", text="")
|
||||||
# row.itemR(st, "do_python_plugins", text="", icon=ICON_SCRIPTPLUGINS)
|
|
||||||
|
|
||||||
layout.template_ID(context, st, "text", new="TEXT_OT_new", open="TEXT_OT_open", unlink="TEXT_OT_unlink")
|
layout.template_ID(context, st, "text", new="TEXT_OT_new", open="TEXT_OT_open", unlink="TEXT_OT_unlink")
|
||||||
|
|
||||||
@ -63,9 +58,9 @@ class TEXT_PT_properties(bpy.types.Panel):
|
|||||||
layout = self.layout
|
layout = self.layout
|
||||||
|
|
||||||
flow = layout.column_flow()
|
flow = layout.column_flow()
|
||||||
flow.itemR(st, "line_numbers", icon=ICON_LINENUMBERS_OFF)
|
flow.itemR(st, "line_numbers")
|
||||||
flow.itemR(st, "word_wrap", icon=ICON_WORDWRAP_OFF)
|
flow.itemR(st, "word_wrap")
|
||||||
flow.itemR(st, "syntax_highlight", icon=ICON_SYNTAX_OFF)
|
flow.itemR(st, "syntax_highlight")
|
||||||
flow.itemR(st, "live_edit")
|
flow.itemR(st, "live_edit")
|
||||||
|
|
||||||
flow = layout.column_flow()
|
flow = layout.column_flow()
|
||||||
@ -85,14 +80,14 @@ class TEXT_PT_find(bpy.types.Panel):
|
|||||||
col = layout.column(align=True)
|
col = layout.column(align=True)
|
||||||
row = col.row()
|
row = col.row()
|
||||||
row.itemR(st, "find_text", text="")
|
row.itemR(st, "find_text", text="")
|
||||||
row.itemO("TEXT_OT_find_set_selected", text="", icon=ICON_TEXT)
|
row.itemO("TEXT_OT_find_set_selected", text="", icon='ICON_TEXT')
|
||||||
col.itemO("TEXT_OT_find")
|
col.itemO("TEXT_OT_find")
|
||||||
|
|
||||||
# replace
|
# replace
|
||||||
col = layout.column(align=True)
|
col = layout.column(align=True)
|
||||||
row = col.row()
|
row = col.row()
|
||||||
row.itemR(st, "replace_text", text="")
|
row.itemR(st, "replace_text", text="")
|
||||||
row.itemO("TEXT_OT_replace_set_selected", text="", icon=ICON_TEXT)
|
row.itemO("TEXT_OT_replace_set_selected", text="", icon='ICON_TEXT')
|
||||||
col.itemO("TEXT_OT_replace")
|
col.itemO("TEXT_OT_replace")
|
||||||
|
|
||||||
# mark
|
# mark
|
||||||
@ -140,8 +135,109 @@ class TEXT_MT_text(bpy.types.Menu):
|
|||||||
# XXX uiDefIconTextBlockBut(block, text_plugin_scriptsmenu, NULL, ICON_RIGHTARROW_THIN, "Text Plugins", 0, yco-=20, 120, 19, "");
|
# XXX uiDefIconTextBlockBut(block, text_plugin_scriptsmenu, NULL, ICON_RIGHTARROW_THIN, "Text Plugins", 0, yco-=20, 120, 19, "");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
class TEXT_MT_edit_view(bpy.types.Menu):
|
||||||
|
__space_type__ = "TEXT_EDITOR"
|
||||||
|
__label__ = "View"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
|
layout.item_enumO("TEXT_OT_move", "type", "FILE_TOP", text="Top of File")
|
||||||
|
layout.item_enumO("TEXT_OT_move", "type", "FILE_BOTTOM", text="Bottom of File")
|
||||||
|
|
||||||
|
class TEXT_MT_edit_select(bpy.types.Menu):
|
||||||
|
__space_type__ = "TEXT_EDITOR"
|
||||||
|
__label__ = "Select"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
|
layout.itemO("TEXT_OT_select_all")
|
||||||
|
layout.itemO("TEXT_OT_select_line")
|
||||||
|
|
||||||
|
class TEXT_MT_edit_markers(bpy.types.Menu):
|
||||||
|
__space_type__ = "TEXT_EDITOR"
|
||||||
|
__label__ = "Markers"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
|
layout.itemO("TEXT_OT_markers_clear")
|
||||||
|
layout.itemO("TEXT_OT_next_marker")
|
||||||
|
layout.itemO("TEXT_OT_previous_marker")
|
||||||
|
|
||||||
|
class TEXT_MT_format(bpy.types.Menu):
|
||||||
|
__space_type__ = "TEXT_EDITOR"
|
||||||
|
__label__ = "Format"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
|
layout.itemO("TEXT_OT_indent")
|
||||||
|
layout.itemO("TEXT_OT_unindent")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemO("TEXT_OT_comment")
|
||||||
|
layout.itemO("TEXT_OT_uncomment")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.item_menu_enumO("TEXT_OT_convert_whitespace", "type")
|
||||||
|
|
||||||
|
class TEXT_MT_edit_to3d(bpy.types.Menu):
|
||||||
|
__space_type__ = "TEXT_EDITOR"
|
||||||
|
__label__ = "Text To 3D Object"
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
|
layout.item_booleanO("TEXT_OT_to_3d_object", "split_lines", False, text="One Object");
|
||||||
|
layout.item_booleanO("TEXT_OT_to_3d_object", "split_lines", True, text="One Object Per Line");
|
||||||
|
|
||||||
|
class TEXT_MT_edit(bpy.types.Menu):
|
||||||
|
__space_type__ = "TEXT_EDITOR"
|
||||||
|
__label__ = "Edit"
|
||||||
|
|
||||||
|
def poll(self, context):
|
||||||
|
st = context.space_data
|
||||||
|
return st.text != None
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
|
||||||
|
layout.itemO("ED_OT_undo")
|
||||||
|
layout.itemO("ED_OT_redo")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemO("TEXT_OT_cut")
|
||||||
|
layout.itemO("TEXT_OT_copy")
|
||||||
|
layout.itemO("TEXT_OT_paste")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemM(context, "TEXT_MT_edit_view")
|
||||||
|
layout.itemM(context, "TEXT_MT_edit_select")
|
||||||
|
layout.itemM(context, "TEXT_MT_edit_markers")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemO("TEXT_OT_jump")
|
||||||
|
layout.itemO("TEXT_OT_properties")
|
||||||
|
|
||||||
|
layout.itemS()
|
||||||
|
|
||||||
|
layout.itemM(context, "TEXT_MT_edit_to3d")
|
||||||
|
|
||||||
bpy.types.register(TEXT_HT_header)
|
bpy.types.register(TEXT_HT_header)
|
||||||
bpy.types.register(TEXT_PT_properties)
|
bpy.types.register(TEXT_PT_properties)
|
||||||
bpy.types.register(TEXT_PT_find)
|
bpy.types.register(TEXT_PT_find)
|
||||||
bpy.types.register(TEXT_MT_text)
|
bpy.types.register(TEXT_MT_text)
|
||||||
|
bpy.types.register(TEXT_MT_format)
|
||||||
|
bpy.types.register(TEXT_MT_edit)
|
||||||
|
bpy.types.register(TEXT_MT_edit_view)
|
||||||
|
bpy.types.register(TEXT_MT_edit_select)
|
||||||
|
bpy.types.register(TEXT_MT_edit_markers)
|
||||||
|
bpy.types.register(TEXT_MT_edit_to3d)
|
||||||
|
|
||||||
|
@ -226,6 +226,7 @@ PULIB += $(OCGDIR)/blender/ed_action/$(DEBUG_DIR)libed_action.a
|
|||||||
PULIB += $(OCGDIR)/blender/ed_nla/$(DEBUG_DIR)libed_nla.a
|
PULIB += $(OCGDIR)/blender/ed_nla/$(DEBUG_DIR)libed_nla.a
|
||||||
PULIB += $(OCGDIR)/blender/ed_script/$(DEBUG_DIR)libed_script.a
|
PULIB += $(OCGDIR)/blender/ed_script/$(DEBUG_DIR)libed_script.a
|
||||||
PULIB += $(OCGDIR)/blender/ed_text/$(DEBUG_DIR)libed_text.a
|
PULIB += $(OCGDIR)/blender/ed_text/$(DEBUG_DIR)libed_text.a
|
||||||
|
PULIB += $(OCGDIR)/blender/ed_logic/$(DEBUG_DIR)libed_logic.a
|
||||||
PULIB += $(OCGDIR)/blender/ed_sequencer/$(DEBUG_DIR)libed_sequencer.a
|
PULIB += $(OCGDIR)/blender/ed_sequencer/$(DEBUG_DIR)libed_sequencer.a
|
||||||
PULIB += $(OCGDIR)/blender/ed_file/$(DEBUG_DIR)libed_file.a
|
PULIB += $(OCGDIR)/blender/ed_file/$(DEBUG_DIR)libed_file.a
|
||||||
PULIB += $(OCGDIR)/blender/ed_info/$(DEBUG_DIR)libed_info.a
|
PULIB += $(OCGDIR)/blender/ed_info/$(DEBUG_DIR)libed_info.a
|
||||||
|
@ -29,6 +29,7 @@
|
|||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
#include <math.h>
|
||||||
|
|
||||||
#include <ft2build.h>
|
#include <ft2build.h>
|
||||||
|
|
||||||
@ -143,12 +144,13 @@ void blf_font_draw(FontBLF *font, char *str)
|
|||||||
delta.x= 0;
|
delta.x= 0;
|
||||||
delta.y= 0;
|
delta.y= 0;
|
||||||
|
|
||||||
FT_Get_Kerning(font->face, g_prev_index, glyph_index, FT_KERNING_UNFITTED, &delta);
|
if (FT_Get_Kerning(font->face, g_prev_index, glyph_index, FT_KERNING_UNFITTED, &delta) == 0) {
|
||||||
pen_x += delta.x >> 6;
|
pen_x += delta.x >> 6;
|
||||||
|
|
||||||
if (pen_x < old_pen_x)
|
if (pen_x < old_pen_x)
|
||||||
pen_x= old_pen_x;
|
pen_x= old_pen_x;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (font->flags & BLF_USER_KERNING) {
|
if (font->flags & BLF_USER_KERNING) {
|
||||||
old_pen_x= pen_x;
|
old_pen_x= pen_x;
|
||||||
@ -174,7 +176,7 @@ void blf_font_boundbox(FontBLF *font, char *str, rctf *box)
|
|||||||
FT_Vector delta;
|
FT_Vector delta;
|
||||||
FT_UInt glyph_index, g_prev_index;
|
FT_UInt glyph_index, g_prev_index;
|
||||||
rctf gbox;
|
rctf gbox;
|
||||||
int pen_x, pen_y, old_pen_x;
|
float pen_x, pen_y, old_pen_x;
|
||||||
int i, has_kerning;
|
int i, has_kerning;
|
||||||
|
|
||||||
if (!font->glyph_cache)
|
if (!font->glyph_cache)
|
||||||
@ -222,12 +224,13 @@ void blf_font_boundbox(FontBLF *font, char *str, rctf *box)
|
|||||||
delta.x= 0;
|
delta.x= 0;
|
||||||
delta.y= 0;
|
delta.y= 0;
|
||||||
|
|
||||||
FT_Get_Kerning(font->face, g_prev_index, glyph_index, FT_KERNING_UNFITTED, &delta);
|
if (FT_Get_Kerning(font->face, g_prev_index, glyph_index, FT_KERNING_UNFITTED, &delta) == 0) {
|
||||||
pen_x += delta.x >> 6;
|
pen_x += delta.x >> 6;
|
||||||
|
|
||||||
if (pen_x < old_pen_x)
|
if (pen_x < old_pen_x)
|
||||||
old_pen_x= pen_x;
|
old_pen_x= pen_x;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (font->flags & BLF_USER_KERNING) {
|
if (font->flags & BLF_USER_KERNING) {
|
||||||
old_pen_x= pen_x;
|
old_pen_x= pen_x;
|
||||||
@ -318,7 +321,7 @@ void blf_font_fill(FontBLF *font)
|
|||||||
font->clip_rec.xmax= 0.0f;
|
font->clip_rec.xmax= 0.0f;
|
||||||
font->clip_rec.ymin= 0.0f;
|
font->clip_rec.ymin= 0.0f;
|
||||||
font->clip_rec.ymax= 0.0f;
|
font->clip_rec.ymax= 0.0f;
|
||||||
font->flags= BLF_USER_KERNING;
|
font->flags= BLF_USER_KERNING | BLF_FONT_KERNING;
|
||||||
font->dpi= 0;
|
font->dpi= 0;
|
||||||
font->size= 0;
|
font->size= 0;
|
||||||
font->kerning= 0.0f;
|
font->kerning= 0.0f;
|
||||||
|
@ -204,7 +204,7 @@ typedef struct ModifierTypeInfo {
|
|||||||
*
|
*
|
||||||
* This function is optional.
|
* This function is optional.
|
||||||
*/
|
*/
|
||||||
CustomDataMask (*requiredDataMask)(struct ModifierData *md);
|
CustomDataMask (*requiredDataMask)(struct Object *ob, struct ModifierData *md);
|
||||||
|
|
||||||
/* Free internal modifier data variables, this function should
|
/* Free internal modifier data variables, this function should
|
||||||
* not free the md variable itself.
|
* not free the md variable itself.
|
||||||
@ -272,6 +272,7 @@ int modifier_dependsOnTime(struct ModifierData *md);
|
|||||||
int modifier_supportsMapping(struct ModifierData *md);
|
int modifier_supportsMapping(struct ModifierData *md);
|
||||||
int modifier_couldBeCage(struct ModifierData *md);
|
int modifier_couldBeCage(struct ModifierData *md);
|
||||||
int modifier_isDeformer(struct ModifierData *md);
|
int modifier_isDeformer(struct ModifierData *md);
|
||||||
|
int modifier_isEnabled(struct ModifierData *md, int required_mode);
|
||||||
void modifier_setError(struct ModifierData *md, char *format, ...);
|
void modifier_setError(struct ModifierData *md, char *format, ...);
|
||||||
|
|
||||||
void modifiers_foreachObjectLink(struct Object *ob,
|
void modifiers_foreachObjectLink(struct Object *ob,
|
||||||
@ -302,8 +303,10 @@ int modifiers_indexInObject(struct Object *ob, struct ModifierData *md
|
|||||||
* evaluation, assuming the data indicated by dataMask is required at the
|
* evaluation, assuming the data indicated by dataMask is required at the
|
||||||
* end of the stack.
|
* end of the stack.
|
||||||
*/
|
*/
|
||||||
struct LinkNode *modifiers_calcDataMasks(struct ModifierData *md,
|
struct LinkNode *modifiers_calcDataMasks(struct Object *ob,
|
||||||
CustomDataMask dataMask);
|
struct ModifierData *md,
|
||||||
|
CustomDataMask dataMask,
|
||||||
|
int required_mode);
|
||||||
struct ModifierData *modifiers_getVirtualModifierList(struct Object *ob);
|
struct ModifierData *modifiers_getVirtualModifierList(struct Object *ob);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -410,8 +410,9 @@ struct TexResult;
|
|||||||
#define TEX_NODE_DECOMPOSE 420
|
#define TEX_NODE_DECOMPOSE 420
|
||||||
#define TEX_NODE_VALTONOR 421
|
#define TEX_NODE_VALTONOR 421
|
||||||
#define TEX_NODE_SCALE 422
|
#define TEX_NODE_SCALE 422
|
||||||
|
#define TEX_NODE_AT 423
|
||||||
|
|
||||||
/* 201-299 reserved. Use like this: TEX_NODE_PROC + TEX_CLOUDS, etc */
|
/* 501-599 reserved. Use like this: TEX_NODE_PROC + TEX_CLOUDS, etc */
|
||||||
#define TEX_NODE_PROC 500
|
#define TEX_NODE_PROC 500
|
||||||
#define TEX_NODE_PROC_MAX 600
|
#define TEX_NODE_PROC_MAX 600
|
||||||
|
|
||||||
|
@ -157,6 +157,8 @@ typedef struct PanelType {
|
|||||||
int space_type;
|
int space_type;
|
||||||
int region_type;
|
int region_type;
|
||||||
|
|
||||||
|
int flag;
|
||||||
|
|
||||||
/* verify if the panel should draw or not */
|
/* verify if the panel should draw or not */
|
||||||
int (*poll)(const struct bContext *, struct PanelType *);
|
int (*poll)(const struct bContext *, struct PanelType *);
|
||||||
/* draw header (optional) */
|
/* draw header (optional) */
|
||||||
|
@ -191,7 +191,7 @@ static BME_Poly *BME_split_face(BME_Mesh *bm, BME_Poly *f, BME_Vert *v1, BME_Ver
|
|||||||
nf = BME_SFME(bm,f,v1,v2,nl);
|
nf = BME_SFME(bm,f,v1,v2,nl);
|
||||||
nf->flag = f->flag;
|
nf->flag = f->flag;
|
||||||
/* if the edge was selected, select this face, too */
|
/* if the edge was selected, select this face, too */
|
||||||
if (example->flag & SELECT) f->flag |= ME_FACE_SEL;
|
if (example && (example->flag & SELECT)) f->flag |= ME_FACE_SEL;
|
||||||
nf->h = f->h;
|
nf->h = f->h;
|
||||||
nf->mat_nr = f->mat_nr;
|
nf->mat_nr = f->mat_nr;
|
||||||
if (nl && example) {
|
if (nl && example) {
|
||||||
|
@ -1604,18 +1604,18 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos
|
|||||||
|
|
||||||
modifiers_clearErrors(ob);
|
modifiers_clearErrors(ob);
|
||||||
|
|
||||||
|
if(useRenderParams) required_mode = eModifierMode_Render;
|
||||||
|
else required_mode = eModifierMode_Realtime;
|
||||||
|
|
||||||
/* we always want to keep original indices */
|
/* we always want to keep original indices */
|
||||||
dataMask |= CD_MASK_ORIGINDEX;
|
dataMask |= CD_MASK_ORIGINDEX;
|
||||||
|
|
||||||
datamasks = modifiers_calcDataMasks(md, dataMask);
|
datamasks = modifiers_calcDataMasks(ob, md, dataMask, required_mode);
|
||||||
curr = datamasks;
|
curr = datamasks;
|
||||||
|
|
||||||
if(deform_r) *deform_r = NULL;
|
if(deform_r) *deform_r = NULL;
|
||||||
*final_r = NULL;
|
*final_r = NULL;
|
||||||
|
|
||||||
if(useRenderParams) required_mode = eModifierMode_Render;
|
|
||||||
else required_mode = eModifierMode_Realtime;
|
|
||||||
|
|
||||||
if(useDeform) {
|
if(useDeform) {
|
||||||
if(useDeform > 0 && do_ob_key(scene, ob)) /* shape key makes deform verts */
|
if(useDeform > 0 && do_ob_key(scene, ob)) /* shape key makes deform verts */
|
||||||
deformedVerts = mesh_getVertexCos(me, &numVerts);
|
deformedVerts = mesh_getVertexCos(me, &numVerts);
|
||||||
@ -1628,8 +1628,7 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos
|
|||||||
|
|
||||||
md->scene= scene;
|
md->scene= scene;
|
||||||
|
|
||||||
if((md->mode & required_mode) != required_mode) continue;
|
if(!modifier_isEnabled(md, required_mode)) continue;
|
||||||
if(mti->isDisabled && mti->isDisabled(md)) continue;
|
|
||||||
if(useDeform < 0 && mti->dependsOnTime && mti->dependsOnTime(md)) continue;
|
if(useDeform < 0 && mti->dependsOnTime && mti->dependsOnTime(md)) continue;
|
||||||
|
|
||||||
if(mti->type == eModifierTypeType_OnlyDeform) {
|
if(mti->type == eModifierTypeType_OnlyDeform) {
|
||||||
@ -1678,19 +1677,18 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos
|
|||||||
|
|
||||||
md->scene= scene;
|
md->scene= scene;
|
||||||
|
|
||||||
if((md->mode & required_mode) != required_mode) continue;
|
if(!modifier_isEnabled(md, required_mode)) continue;
|
||||||
if(mti->type == eModifierTypeType_OnlyDeform && !useDeform) continue;
|
if(mti->type == eModifierTypeType_OnlyDeform && !useDeform) continue;
|
||||||
if((mti->flags & eModifierTypeFlag_RequiresOriginalData) && dm) {
|
if((mti->flags & eModifierTypeFlag_RequiresOriginalData) && dm) {
|
||||||
modifier_setError(md, "Modifier requires original data, bad stack position.");
|
modifier_setError(md, "Modifier requires original data, bad stack position.");
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if(mti->isDisabled && mti->isDisabled(md)) continue;
|
|
||||||
if(needMapping && !modifier_supportsMapping(md)) continue;
|
if(needMapping && !modifier_supportsMapping(md)) continue;
|
||||||
if(useDeform < 0 && mti->dependsOnTime && mti->dependsOnTime(md)) continue;
|
if(useDeform < 0 && mti->dependsOnTime && mti->dependsOnTime(md)) continue;
|
||||||
|
|
||||||
/* add an orco layer if needed by this modifier */
|
/* add an orco layer if needed by this modifier */
|
||||||
if(dm && mti->requiredDataMask) {
|
if(dm && mti->requiredDataMask) {
|
||||||
mask = mti->requiredDataMask(md);
|
mask = mti->requiredDataMask(ob, md);
|
||||||
if(mask & CD_MASK_ORCO)
|
if(mask & CD_MASK_ORCO)
|
||||||
add_orco_dm(ob, NULL, dm, orcodm);
|
add_orco_dm(ob, NULL, dm, orcodm);
|
||||||
}
|
}
|
||||||
@ -1860,14 +1858,11 @@ static int editmesh_modifier_is_enabled(ModifierData *md, DerivedMesh *dm)
|
|||||||
ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
||||||
int required_mode = eModifierMode_Realtime | eModifierMode_Editmode;
|
int required_mode = eModifierMode_Realtime | eModifierMode_Editmode;
|
||||||
|
|
||||||
if((md->mode & required_mode) != required_mode) return 0;
|
if(!modifier_isEnabled(md, required_mode)) return 0;
|
||||||
if((mti->flags & eModifierTypeFlag_RequiresOriginalData) && dm) {
|
if((mti->flags & eModifierTypeFlag_RequiresOriginalData) && dm) {
|
||||||
modifier_setError(md, "Modifier requires original data, bad stack position.");
|
modifier_setError(md, "Modifier requires original data, bad stack position.");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
if(mti->isDisabled && mti->isDisabled(md)) return 0;
|
|
||||||
if(!(mti->flags & eModifierTypeFlag_SupportsEditmode)) return 0;
|
|
||||||
if(md->mode & eModifierMode_DisableTemporary) return 0;
|
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
@ -1882,6 +1877,7 @@ static void editmesh_calc_modifiers(Scene *scene, Object *ob, EditMesh *em, Deri
|
|||||||
DerivedMesh *dm, *orcodm = NULL;
|
DerivedMesh *dm, *orcodm = NULL;
|
||||||
int i, numVerts = 0, cageIndex = modifiers_getCageIndex(ob, NULL);
|
int i, numVerts = 0, cageIndex = modifiers_getCageIndex(ob, NULL);
|
||||||
LinkNode *datamasks, *curr;
|
LinkNode *datamasks, *curr;
|
||||||
|
int required_mode = eModifierMode_Realtime | eModifierMode_Editmode;
|
||||||
|
|
||||||
modifiers_clearErrors(ob);
|
modifiers_clearErrors(ob);
|
||||||
|
|
||||||
@ -1895,7 +1891,7 @@ static void editmesh_calc_modifiers(Scene *scene, Object *ob, EditMesh *em, Deri
|
|||||||
/* we always want to keep original indices */
|
/* we always want to keep original indices */
|
||||||
dataMask |= CD_MASK_ORIGINDEX;
|
dataMask |= CD_MASK_ORIGINDEX;
|
||||||
|
|
||||||
datamasks = modifiers_calcDataMasks(md, dataMask);
|
datamasks = modifiers_calcDataMasks(ob, md, dataMask, required_mode);
|
||||||
|
|
||||||
curr = datamasks;
|
curr = datamasks;
|
||||||
for(i = 0; md; i++, md = md->next, curr = curr->next) {
|
for(i = 0; md; i++, md = md->next, curr = curr->next) {
|
||||||
@ -1908,7 +1904,7 @@ static void editmesh_calc_modifiers(Scene *scene, Object *ob, EditMesh *em, Deri
|
|||||||
|
|
||||||
/* add an orco layer if needed by this modifier */
|
/* add an orco layer if needed by this modifier */
|
||||||
if(dm && mti->requiredDataMask) {
|
if(dm && mti->requiredDataMask) {
|
||||||
mask = mti->requiredDataMask(md);
|
mask = mti->requiredDataMask(ob, md);
|
||||||
if(mask & CD_MASK_ORCO)
|
if(mask & CD_MASK_ORCO)
|
||||||
add_orco_dm(ob, em, dm, orcodm);
|
add_orco_dm(ob, em, dm, orcodm);
|
||||||
}
|
}
|
||||||
|
@ -800,6 +800,7 @@ void calc_action_range(const bAction *act, float *start, float *end, int incl_hi
|
|||||||
/* Copy the data from the action-pose (src) into the pose */
|
/* Copy the data from the action-pose (src) into the pose */
|
||||||
/* both args are assumed to be valid */
|
/* both args are assumed to be valid */
|
||||||
/* exported to game engine */
|
/* exported to game engine */
|
||||||
|
/* Note! this assumes both poses are aligned, this isnt always true when dealing with user poses */
|
||||||
void extract_pose_from_pose(bPose *pose, const bPose *src)
|
void extract_pose_from_pose(bPose *pose, const bPose *src)
|
||||||
{
|
{
|
||||||
const bPoseChannel *schan;
|
const bPoseChannel *schan;
|
||||||
@ -810,7 +811,7 @@ void extract_pose_from_pose(bPose *pose, const bPose *src)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (schan=src->chanbase.first; schan; schan=schan->next, pchan= pchan->next) {
|
for (schan=src->chanbase.first; (schan && pchan); schan=schan->next, pchan= pchan->next) {
|
||||||
copy_pose_channel_data(pchan, schan);
|
copy_pose_channel_data(pchan, schan);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -155,7 +155,7 @@ Curve *add_curve(char *name, int type)
|
|||||||
cu->str= MEM_mallocN(12, "str");
|
cu->str= MEM_mallocN(12, "str");
|
||||||
strcpy(cu->str, "Text");
|
strcpy(cu->str, "Text");
|
||||||
cu->pos= 4;
|
cu->pos= 4;
|
||||||
cu->strinfo= MEM_callocN(12*sizeof(CharInfo), "strinfo");
|
cu->strinfo= MEM_callocN(12*sizeof(CharInfo), "strinfo new");
|
||||||
cu->totbox= cu->actbox= 1;
|
cu->totbox= cu->actbox= 1;
|
||||||
cu->tb= MEM_callocN(MAXTEXTBOX*sizeof(TextBox), "textbox");
|
cu->tb= MEM_callocN(MAXTEXTBOX*sizeof(TextBox), "textbox");
|
||||||
cu->tb[0].w = cu->tb[0].h = 0.0;
|
cu->tb[0].w = cu->tb[0].h = 0.0;
|
||||||
|
@ -682,7 +682,7 @@ struct chartrans *BKE_text_to_curve(Scene *scene, Object *ob, int mode)
|
|||||||
cu->ulheight = 0.05;
|
cu->ulheight = 0.05;
|
||||||
|
|
||||||
if (cu->strinfo==NULL) /* old file */
|
if (cu->strinfo==NULL) /* old file */
|
||||||
cu->strinfo = MEM_callocN((slen+1) * sizeof(CharInfo), "strinfo compat");
|
cu->strinfo = MEM_callocN((slen+4) * sizeof(CharInfo), "strinfo compat");
|
||||||
|
|
||||||
custrinfo= cu->strinfo;
|
custrinfo= cu->strinfo;
|
||||||
if (cu->editfont)
|
if (cu->editfont)
|
||||||
@ -1145,7 +1145,7 @@ struct chartrans *BKE_text_to_curve(Scene *scene, Object *ob, int mode)
|
|||||||
if (cu->sepchar==0) {
|
if (cu->sepchar==0) {
|
||||||
for (i= 0; i<slen; i++) {
|
for (i= 0; i<slen; i++) {
|
||||||
cha = (uintptr_t) mem[i];
|
cha = (uintptr_t) mem[i];
|
||||||
info = &(cu->strinfo[i]);
|
info = &(custrinfo[i]);
|
||||||
if (info->mat_nr > (ob->totcol)) {
|
if (info->mat_nr > (ob->totcol)) {
|
||||||
/* printf("Error: Illegal material index (%d) in text object, setting to 0\n", info->mat_nr); */
|
/* printf("Error: Illegal material index (%d) in text object, setting to 0\n", info->mat_nr); */
|
||||||
info->mat_nr = 0;
|
info->mat_nr = 0;
|
||||||
|
@ -545,7 +545,7 @@ static char *material_adrcodes_to_paths (int adrcode, int *array_index)
|
|||||||
return "ambient";
|
return "ambient";
|
||||||
|
|
||||||
case MA_SPEC:
|
case MA_SPEC:
|
||||||
return "specularity";
|
return "specular_reflection";
|
||||||
|
|
||||||
case MA_HARD:
|
case MA_HARD:
|
||||||
return "specular_hardness";
|
return "specular_hardness";
|
||||||
|
@ -209,7 +209,7 @@ static void curveModifier_copyData(ModifierData *md, ModifierData *target)
|
|||||||
strncpy(tcmd->name, cmd->name, 32);
|
strncpy(tcmd->name, cmd->name, 32);
|
||||||
}
|
}
|
||||||
|
|
||||||
CustomDataMask curveModifier_requiredDataMask(ModifierData *md)
|
CustomDataMask curveModifier_requiredDataMask(Object *ob, ModifierData *md)
|
||||||
{
|
{
|
||||||
CurveModifierData *cmd = (CurveModifierData *)md;
|
CurveModifierData *cmd = (CurveModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@ -285,7 +285,7 @@ static void latticeModifier_copyData(ModifierData *md, ModifierData *target)
|
|||||||
strncpy(tlmd->name, lmd->name, 32);
|
strncpy(tlmd->name, lmd->name, 32);
|
||||||
}
|
}
|
||||||
|
|
||||||
CustomDataMask latticeModifier_requiredDataMask(ModifierData *md)
|
CustomDataMask latticeModifier_requiredDataMask(Object *ob, ModifierData *md)
|
||||||
{
|
{
|
||||||
LatticeModifierData *lmd = (LatticeModifierData *)md;
|
LatticeModifierData *lmd = (LatticeModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@ -668,7 +668,7 @@ static void maskModifier_copyData(ModifierData *md, ModifierData *target)
|
|||||||
strcpy(tmmd->vgroup, mmd->vgroup);
|
strcpy(tmmd->vgroup, mmd->vgroup);
|
||||||
}
|
}
|
||||||
|
|
||||||
static CustomDataMask maskModifier_requiredDataMask(ModifierData *md)
|
static CustomDataMask maskModifier_requiredDataMask(Object *ob, ModifierData *md)
|
||||||
{
|
{
|
||||||
return (1 << CD_MDEFORMVERT);
|
return (1 << CD_MDEFORMVERT);
|
||||||
}
|
}
|
||||||
@ -3396,7 +3396,7 @@ static void bevelModifier_copyData(ModifierData *md, ModifierData *target)
|
|||||||
strncpy(tbmd->defgrp_name, bmd->defgrp_name, 32);
|
strncpy(tbmd->defgrp_name, bmd->defgrp_name, 32);
|
||||||
}
|
}
|
||||||
|
|
||||||
CustomDataMask bevelModifier_requiredDataMask(ModifierData *md)
|
CustomDataMask bevelModifier_requiredDataMask(Object *ob, ModifierData *md)
|
||||||
{
|
{
|
||||||
BevelModifierData *bmd = (BevelModifierData *)md;
|
BevelModifierData *bmd = (BevelModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@ -3476,7 +3476,7 @@ static void displaceModifier_copyData(ModifierData *md, ModifierData *target)
|
|||||||
strncpy(tdmd->uvlayer_name, dmd->uvlayer_name, 32);
|
strncpy(tdmd->uvlayer_name, dmd->uvlayer_name, 32);
|
||||||
}
|
}
|
||||||
|
|
||||||
CustomDataMask displaceModifier_requiredDataMask(ModifierData *md)
|
CustomDataMask displaceModifier_requiredDataMask(Object *ob, ModifierData *md)
|
||||||
{
|
{
|
||||||
DisplaceModifierData *dmd = (DisplaceModifierData *)md;
|
DisplaceModifierData *dmd = (DisplaceModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@ -3819,7 +3819,7 @@ static void uvprojectModifier_copyData(ModifierData *md, ModifierData *target)
|
|||||||
tumd->aspecty = umd->aspecty;
|
tumd->aspecty = umd->aspecty;
|
||||||
}
|
}
|
||||||
|
|
||||||
CustomDataMask uvprojectModifier_requiredDataMask(ModifierData *md)
|
CustomDataMask uvprojectModifier_requiredDataMask(Object *ob, ModifierData *md)
|
||||||
{
|
{
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
|
|
||||||
@ -4285,7 +4285,7 @@ int smoothModifier_isDisabled(ModifierData *md)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
CustomDataMask smoothModifier_requiredDataMask(ModifierData *md)
|
CustomDataMask smoothModifier_requiredDataMask(Object *ob, ModifierData *md)
|
||||||
{
|
{
|
||||||
SmoothModifierData *smd = (SmoothModifierData *)md;
|
SmoothModifierData *smd = (SmoothModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@ -4514,7 +4514,7 @@ int castModifier_isDisabled(ModifierData *md)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
CustomDataMask castModifier_requiredDataMask(ModifierData *md)
|
CustomDataMask castModifier_requiredDataMask(Object *ob, ModifierData *md)
|
||||||
{
|
{
|
||||||
CastModifierData *cmd = (CastModifierData *)md;
|
CastModifierData *cmd = (CastModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@ -5145,7 +5145,7 @@ static void waveModifier_updateDepgraph(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
CustomDataMask waveModifier_requiredDataMask(ModifierData *md)
|
CustomDataMask waveModifier_requiredDataMask(Object *ob, ModifierData *md)
|
||||||
{
|
{
|
||||||
WaveModifierData *wmd = (WaveModifierData *)md;
|
WaveModifierData *wmd = (WaveModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@ -5482,7 +5482,7 @@ static void armatureModifier_copyData(ModifierData *md, ModifierData *target)
|
|||||||
strncpy(tamd->defgrp_name, amd->defgrp_name, 32);
|
strncpy(tamd->defgrp_name, amd->defgrp_name, 32);
|
||||||
}
|
}
|
||||||
|
|
||||||
CustomDataMask armatureModifier_requiredDataMask(ModifierData *md)
|
CustomDataMask armatureModifier_requiredDataMask(Object *ob, ModifierData *md)
|
||||||
{
|
{
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
|
|
||||||
@ -5596,7 +5596,7 @@ static void hookModifier_copyData(ModifierData *md, ModifierData *target)
|
|||||||
strncpy(thmd->name, hmd->name, 32);
|
strncpy(thmd->name, hmd->name, 32);
|
||||||
}
|
}
|
||||||
|
|
||||||
CustomDataMask hookModifier_requiredDataMask(ModifierData *md)
|
CustomDataMask hookModifier_requiredDataMask(Object *ob, ModifierData *md)
|
||||||
{
|
{
|
||||||
HookModifierData *hmd = (HookModifierData *)md;
|
HookModifierData *hmd = (HookModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@ -5855,7 +5855,7 @@ static void clothModifier_updateDepgraph(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
CustomDataMask clothModifier_requiredDataMask(ModifierData *md)
|
CustomDataMask clothModifier_requiredDataMask(Object *ob, ModifierData *md)
|
||||||
{
|
{
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
|
|
||||||
@ -6239,7 +6239,7 @@ static DerivedMesh *booleanModifier_applyModifier(
|
|||||||
return derivedData;
|
return derivedData;
|
||||||
}
|
}
|
||||||
|
|
||||||
CustomDataMask booleanModifier_requiredDataMask(ModifierData *md)
|
CustomDataMask booleanModifier_requiredDataMask(Object *ob, ModifierData *md)
|
||||||
{
|
{
|
||||||
CustomDataMask dataMask = (1 << CD_MTFACE) + (1 << CD_MEDGE);
|
CustomDataMask dataMask = (1 << CD_MTFACE) + (1 << CD_MEDGE);
|
||||||
|
|
||||||
@ -6287,12 +6287,27 @@ static void particleSystemModifier_copyData(ModifierData *md, ModifierData *targ
|
|||||||
tpsmd->psys = psmd->psys;
|
tpsmd->psys = psmd->psys;
|
||||||
}
|
}
|
||||||
|
|
||||||
CustomDataMask particleSystemModifier_requiredDataMask(ModifierData *md)
|
CustomDataMask particleSystemModifier_requiredDataMask(Object *ob, ModifierData *md)
|
||||||
{
|
{
|
||||||
ParticleSystemModifierData *psmd= (ParticleSystemModifierData*) md;
|
ParticleSystemModifierData *psmd= (ParticleSystemModifierData*) md;
|
||||||
CustomDataMask dataMask = (1 << CD_MTFACE) + (1 << CD_MEDGE);
|
CustomDataMask dataMask = 0;
|
||||||
|
Material *ma;
|
||||||
|
MTex *mtex;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
|
ma= give_current_material(ob, psmd->psys->part->omat);
|
||||||
|
if(ma) {
|
||||||
|
for(i=0; i<MAX_MTEX; i++) {
|
||||||
|
mtex=ma->mtex[i];
|
||||||
|
if(mtex && (ma->septex & (1<<i))==0)
|
||||||
|
if(mtex->pmapto && (mtex->texco & TEXCO_UV))
|
||||||
|
dataMask |= (1 << CD_MTFACE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(psmd->psys->part->tanfac!=0.0)
|
||||||
|
dataMask |= (1 << CD_MTFACE);
|
||||||
|
|
||||||
/* ask for vertexgroups if we need them */
|
/* ask for vertexgroups if we need them */
|
||||||
for(i=0; i<PSYS_TOT_VG; i++){
|
for(i=0; i<PSYS_TOT_VG; i++){
|
||||||
if(psmd->psys->vgroup[i]){
|
if(psmd->psys->vgroup[i]){
|
||||||
@ -6637,7 +6652,7 @@ static int explodeModifier_dependsOnTime(ModifierData *md)
|
|||||||
{
|
{
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
CustomDataMask explodeModifier_requiredDataMask(ModifierData *md)
|
CustomDataMask explodeModifier_requiredDataMask(Object *ob, ModifierData *md)
|
||||||
{
|
{
|
||||||
ExplodeModifierData *emd= (ExplodeModifierData*) md;
|
ExplodeModifierData *emd= (ExplodeModifierData*) md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@ -7551,7 +7566,7 @@ static void meshdeformModifier_copyData(ModifierData *md, ModifierData *target)
|
|||||||
tmmd->object = mmd->object;
|
tmmd->object = mmd->object;
|
||||||
}
|
}
|
||||||
|
|
||||||
CustomDataMask meshdeformModifier_requiredDataMask(ModifierData *md)
|
CustomDataMask meshdeformModifier_requiredDataMask(Object *ob, ModifierData *md)
|
||||||
{
|
{
|
||||||
MeshDeformModifierData *mmd = (MeshDeformModifierData *)md;
|
MeshDeformModifierData *mmd = (MeshDeformModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@ -7815,10 +7830,12 @@ static void meshdeformModifier_deformVerts(
|
|||||||
{
|
{
|
||||||
DerivedMesh *dm;
|
DerivedMesh *dm;
|
||||||
|
|
||||||
if(!derivedData && ob->type==OB_MESH)
|
if (!derivedData) {
|
||||||
dm= CDDM_from_mesh(ob->data, ob);
|
dm= get_original_dm(md->scene, ob, NULL, 0);
|
||||||
else
|
if (dm == NULL) return;
|
||||||
dm= derivedData;
|
}
|
||||||
|
else dm= derivedData;
|
||||||
|
|
||||||
|
|
||||||
modifier_vgroup_cache(md, vertexCos); /* if next modifier needs original vertices */
|
modifier_vgroup_cache(md, vertexCos); /* if next modifier needs original vertices */
|
||||||
|
|
||||||
@ -7930,7 +7947,7 @@ static void shrinkwrapModifier_copyData(ModifierData *md, ModifierData *target)
|
|||||||
tsmd->subsurfLevels = smd->subsurfLevels;
|
tsmd->subsurfLevels = smd->subsurfLevels;
|
||||||
}
|
}
|
||||||
|
|
||||||
CustomDataMask shrinkwrapModifier_requiredDataMask(ModifierData *md)
|
CustomDataMask shrinkwrapModifier_requiredDataMask(Object *ob, ModifierData *md)
|
||||||
{
|
{
|
||||||
ShrinkwrapModifierData *smd = (ShrinkwrapModifierData *)md;
|
ShrinkwrapModifierData *smd = (ShrinkwrapModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@ -7964,7 +7981,7 @@ static void shrinkwrapModifier_foreachObjectLink(ModifierData *md, Object *ob, O
|
|||||||
static void shrinkwrapModifier_deformVerts(ModifierData *md, Object *ob, DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
static void shrinkwrapModifier_deformVerts(ModifierData *md, Object *ob, DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
||||||
{
|
{
|
||||||
DerivedMesh *dm = NULL;
|
DerivedMesh *dm = NULL;
|
||||||
CustomDataMask dataMask = shrinkwrapModifier_requiredDataMask(md);
|
CustomDataMask dataMask = shrinkwrapModifier_requiredDataMask(ob, md);
|
||||||
|
|
||||||
/* We implement requiredDataMask but thats not really usefull since mesh_calc_modifiers pass a NULL derivedData or without the modified vertexs applied */
|
/* We implement requiredDataMask but thats not really usefull since mesh_calc_modifiers pass a NULL derivedData or without the modified vertexs applied */
|
||||||
if(dataMask)
|
if(dataMask)
|
||||||
@ -7990,7 +8007,7 @@ static void shrinkwrapModifier_deformVerts(ModifierData *md, Object *ob, Derived
|
|||||||
static void shrinkwrapModifier_deformVertsEM(ModifierData *md, Object *ob, EditMesh *editData, DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts)
|
static void shrinkwrapModifier_deformVertsEM(ModifierData *md, Object *ob, EditMesh *editData, DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts)
|
||||||
{
|
{
|
||||||
DerivedMesh *dm = NULL;
|
DerivedMesh *dm = NULL;
|
||||||
CustomDataMask dataMask = shrinkwrapModifier_requiredDataMask(md);
|
CustomDataMask dataMask = shrinkwrapModifier_requiredDataMask(ob, md);
|
||||||
|
|
||||||
if(dataMask)
|
if(dataMask)
|
||||||
{
|
{
|
||||||
@ -8049,7 +8066,7 @@ static void simpledeformModifier_copyData(ModifierData *md, ModifierData *target
|
|||||||
memcpy(tsmd->limit, smd->limit, sizeof(tsmd->limit));
|
memcpy(tsmd->limit, smd->limit, sizeof(tsmd->limit));
|
||||||
}
|
}
|
||||||
|
|
||||||
static CustomDataMask simpledeformModifier_requiredDataMask(ModifierData *md)
|
static CustomDataMask simpledeformModifier_requiredDataMask(Object *ob, ModifierData *md)
|
||||||
{
|
{
|
||||||
SimpleDeformModifierData *smd = (SimpleDeformModifierData *)md;
|
SimpleDeformModifierData *smd = (SimpleDeformModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@ -8078,7 +8095,7 @@ static void simpledeformModifier_updateDepgraph(ModifierData *md, DagForest *for
|
|||||||
static void simpledeformModifier_deformVerts(ModifierData *md, Object *ob, DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
static void simpledeformModifier_deformVerts(ModifierData *md, Object *ob, DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
||||||
{
|
{
|
||||||
DerivedMesh *dm = NULL;
|
DerivedMesh *dm = NULL;
|
||||||
CustomDataMask dataMask = simpledeformModifier_requiredDataMask(md);
|
CustomDataMask dataMask = simpledeformModifier_requiredDataMask(ob, md);
|
||||||
|
|
||||||
/* We implement requiredDataMask but thats not really usefull since mesh_calc_modifiers pass a NULL derivedData or without the modified vertexs applied */
|
/* We implement requiredDataMask but thats not really usefull since mesh_calc_modifiers pass a NULL derivedData or without the modified vertexs applied */
|
||||||
if(dataMask)
|
if(dataMask)
|
||||||
@ -8105,7 +8122,7 @@ static void simpledeformModifier_deformVerts(ModifierData *md, Object *ob, Deriv
|
|||||||
static void simpledeformModifier_deformVertsEM(ModifierData *md, Object *ob, EditMesh *editData, DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts)
|
static void simpledeformModifier_deformVertsEM(ModifierData *md, Object *ob, EditMesh *editData, DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts)
|
||||||
{
|
{
|
||||||
DerivedMesh *dm = NULL;
|
DerivedMesh *dm = NULL;
|
||||||
CustomDataMask dataMask = simpledeformModifier_requiredDataMask(md);
|
CustomDataMask dataMask = simpledeformModifier_requiredDataMask(ob, md);
|
||||||
|
|
||||||
/* We implement requiredDataMask but thats not really usefull since mesh_calc_modifiers pass a NULL derivedData or without the modified vertexs applied */
|
/* We implement requiredDataMask but thats not really usefull since mesh_calc_modifiers pass a NULL derivedData or without the modified vertexs applied */
|
||||||
if(dataMask)
|
if(dataMask)
|
||||||
@ -8717,7 +8734,20 @@ int modifiers_isParticleEnabled(Object *ob)
|
|||||||
return (md && md->mode & (eModifierMode_Realtime | eModifierMode_Render));
|
return (md && md->mode & (eModifierMode_Realtime | eModifierMode_Render));
|
||||||
}
|
}
|
||||||
|
|
||||||
LinkNode *modifiers_calcDataMasks(ModifierData *md, CustomDataMask dataMask)
|
int modifier_isEnabled(ModifierData *md, int required_mode)
|
||||||
|
{
|
||||||
|
ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
||||||
|
|
||||||
|
if((md->mode & required_mode) != required_mode) return 0;
|
||||||
|
if(mti->isDisabled && mti->isDisabled(md)) return 0;
|
||||||
|
if(md->mode & eModifierMode_DisableTemporary) return 0;
|
||||||
|
if(required_mode & eModifierMode_Editmode)
|
||||||
|
if(!(mti->flags & eModifierTypeFlag_SupportsEditmode)) return 0;
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
LinkNode *modifiers_calcDataMasks(Object *ob, ModifierData *md, CustomDataMask dataMask, int required_mode)
|
||||||
{
|
{
|
||||||
LinkNode *dataMasks = NULL;
|
LinkNode *dataMasks = NULL;
|
||||||
LinkNode *curr, *prev;
|
LinkNode *curr, *prev;
|
||||||
@ -8727,7 +8757,9 @@ LinkNode *modifiers_calcDataMasks(ModifierData *md, CustomDataMask dataMask)
|
|||||||
ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
||||||
CustomDataMask mask = 0;
|
CustomDataMask mask = 0;
|
||||||
|
|
||||||
if(mti->requiredDataMask) mask = mti->requiredDataMask(md);
|
if(modifier_isEnabled(md, required_mode))
|
||||||
|
if(mti->requiredDataMask)
|
||||||
|
mask = mti->requiredDataMask(ob, md);
|
||||||
|
|
||||||
BLI_linklist_prepend(&dataMasks, SET_INT_IN_POINTER(mask));
|
BLI_linklist_prepend(&dataMasks, SET_INT_IN_POINTER(mask));
|
||||||
}
|
}
|
||||||
|
@ -3050,6 +3050,7 @@ static void registerTextureNodes(ListBase *ntypelist)
|
|||||||
nodeRegisterType(ntypelist, &tex_node_rotate);
|
nodeRegisterType(ntypelist, &tex_node_rotate);
|
||||||
nodeRegisterType(ntypelist, &tex_node_translate);
|
nodeRegisterType(ntypelist, &tex_node_translate);
|
||||||
nodeRegisterType(ntypelist, &tex_node_scale);
|
nodeRegisterType(ntypelist, &tex_node_scale);
|
||||||
|
nodeRegisterType(ntypelist, &tex_node_at);
|
||||||
|
|
||||||
nodeRegisterType(ntypelist, &tex_node_proc_voronoi);
|
nodeRegisterType(ntypelist, &tex_node_proc_voronoi);
|
||||||
nodeRegisterType(ntypelist, &tex_node_proc_blend);
|
nodeRegisterType(ntypelist, &tex_node_proc_blend);
|
||||||
|
@ -3169,7 +3169,7 @@ static void get_cpa_texture(DerivedMesh *dm, Material *ma, int face_index, float
|
|||||||
|
|
||||||
if(ma) for(m=0; m<MAX_MTEX; m++){
|
if(ma) for(m=0; m<MAX_MTEX; m++){
|
||||||
mtex=ma->mtex[m];
|
mtex=ma->mtex[m];
|
||||||
if(mtex && (ma->septex & (1<<m))==0){
|
if(mtex && (ma->septex & (1<<m))==0 && mtex->pmapto){
|
||||||
float def=mtex->def_var;
|
float def=mtex->def_var;
|
||||||
float var=mtex->varfac;
|
float var=mtex->varfac;
|
||||||
short blend=mtex->blendtype;
|
short blend=mtex->blendtype;
|
||||||
@ -3218,7 +3218,7 @@ void psys_get_texture(Object *ob, Material *ma, ParticleSystemModifierData *psmd
|
|||||||
|
|
||||||
if(ma) for(m=0; m<MAX_MTEX; m++){
|
if(ma) for(m=0; m<MAX_MTEX; m++){
|
||||||
mtex=ma->mtex[m];
|
mtex=ma->mtex[m];
|
||||||
if(mtex && (ma->septex & (1<<m))==0){
|
if(mtex && (ma->septex & (1<<m))==0 && mtex->pmapto){
|
||||||
float var=mtex->varfac;
|
float var=mtex->varfac;
|
||||||
float def=mtex->def_var;
|
float def=mtex->def_var;
|
||||||
short blend=mtex->blendtype;
|
short blend=mtex->blendtype;
|
||||||
|
@ -1761,7 +1761,10 @@ void reset_particle(Scene *scene, ParticleData *pa, ParticleSystem *psys, Partic
|
|||||||
where_is_object_time(scene, ob,pa->time);
|
where_is_object_time(scene, ob,pa->time);
|
||||||
|
|
||||||
/* get birth location from object */
|
/* get birth location from object */
|
||||||
|
if(part->tanfac!=0.0)
|
||||||
psys_particle_on_emitter(psmd,part->from,pa->num, pa->num_dmcache, pa->fuv,pa->foffset,loc,nor,utan,vtan,0,0);
|
psys_particle_on_emitter(psmd,part->from,pa->num, pa->num_dmcache, pa->fuv,pa->foffset,loc,nor,utan,vtan,0,0);
|
||||||
|
else
|
||||||
|
psys_particle_on_emitter(psmd,part->from,pa->num, pa->num_dmcache, pa->fuv,pa->foffset,loc,nor,0,0,0,0);
|
||||||
|
|
||||||
/* save local coordinates for later */
|
/* save local coordinates for later */
|
||||||
VECCOPY(tloc,loc);
|
VECCOPY(tloc,loc);
|
||||||
|
@ -1288,7 +1288,7 @@ static void seq_proxy_build_frame(Scene *scene, Sequence * seq, int cfra, int re
|
|||||||
|
|
||||||
depth = 32 is intentionally left in, otherwise ALPHA channels
|
depth = 32 is intentionally left in, otherwise ALPHA channels
|
||||||
won't work... */
|
won't work... */
|
||||||
quality = 90;
|
quality = seq->strip->proxy->quality;
|
||||||
ibuf->ftype= JPG | quality;
|
ibuf->ftype= JPG | quality;
|
||||||
|
|
||||||
BLI_make_existing_file(name);
|
BLI_make_existing_file(name);
|
||||||
@ -1305,6 +1305,7 @@ static void seq_proxy_build_frame(Scene *scene, Sequence * seq, int cfra, int re
|
|||||||
void seq_proxy_rebuild(Scene *scene, Sequence * seq)
|
void seq_proxy_rebuild(Scene *scene, Sequence * seq)
|
||||||
{
|
{
|
||||||
int cfra;
|
int cfra;
|
||||||
|
float rsize = seq->strip->proxy->size;
|
||||||
|
|
||||||
waitcursor(1);
|
waitcursor(1);
|
||||||
|
|
||||||
@ -1322,6 +1323,8 @@ void seq_proxy_rebuild(Scene *scene, Sequence * seq)
|
|||||||
tse->flag &= ~STRIPELEM_PREVIEW_DONE;
|
tse->flag &= ~STRIPELEM_PREVIEW_DONE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* a _lot_ faster for movie files, if we read frames in
|
/* a _lot_ faster for movie files, if we read frames in
|
||||||
sequential order */
|
sequential order */
|
||||||
if (seq->flag & SEQ_REVERSE_FRAMES) {
|
if (seq->flag & SEQ_REVERSE_FRAMES) {
|
||||||
@ -1330,7 +1333,8 @@ void seq_proxy_rebuild(Scene *scene, Sequence * seq)
|
|||||||
TStripElem * tse = give_tstripelem(seq, cfra);
|
TStripElem * tse = give_tstripelem(seq, cfra);
|
||||||
|
|
||||||
if (!(tse->flag & STRIPELEM_PREVIEW_DONE)) {
|
if (!(tse->flag & STRIPELEM_PREVIEW_DONE)) {
|
||||||
seq_proxy_build_frame(scene, seq, cfra, scene->r.size);
|
//XXX set_timecursor(cfra);
|
||||||
|
seq_proxy_build_frame(scene, seq, cfra, rsize);
|
||||||
tse->flag |= STRIPELEM_PREVIEW_DONE;
|
tse->flag |= STRIPELEM_PREVIEW_DONE;
|
||||||
}
|
}
|
||||||
if (blender_test_break()) {
|
if (blender_test_break()) {
|
||||||
@ -1343,7 +1347,8 @@ void seq_proxy_rebuild(Scene *scene, Sequence * seq)
|
|||||||
TStripElem * tse = give_tstripelem(seq, cfra);
|
TStripElem * tse = give_tstripelem(seq, cfra);
|
||||||
|
|
||||||
if (!(tse->flag & STRIPELEM_PREVIEW_DONE)) {
|
if (!(tse->flag & STRIPELEM_PREVIEW_DONE)) {
|
||||||
seq_proxy_build_frame(scene, seq, cfra, scene->r.size);
|
//XXX set_timecursor(cfra);
|
||||||
|
seq_proxy_build_frame(scene, seq, cfra, rsize);
|
||||||
tse->flag |= STRIPELEM_PREVIEW_DONE;
|
tse->flag |= STRIPELEM_PREVIEW_DONE;
|
||||||
}
|
}
|
||||||
if (blender_test_break()) {
|
if (blender_test_break()) {
|
||||||
@ -1552,7 +1557,8 @@ static int input_have_to_preprocess(Scene *scene, Sequence * seq, TStripElem* se
|
|||||||
|
|
||||||
mul = seq->mul;
|
mul = seq->mul;
|
||||||
|
|
||||||
if(seq->blend_mode == SEQ_BLEND_REPLACE) {
|
if(seq->blend_mode == SEQ_BLEND_REPLACE &&
|
||||||
|
!(seq->type & SEQ_EFFECT)) {
|
||||||
#if 0 // XXX old animation system
|
#if 0 // XXX old animation system
|
||||||
if (seq->ipo && seq->ipo->curve.first) {
|
if (seq->ipo && seq->ipo->curve.first) {
|
||||||
do_seq_ipo(scene, seq, cfra);
|
do_seq_ipo(scene, seq, cfra);
|
||||||
@ -1897,10 +1903,14 @@ static void do_build_seq_ibuf(Scene *scene, Sequence * seq, TStripElem *se, int
|
|||||||
input_preprocess(scene, seq, se, cfra);
|
input_preprocess(scene, seq, se, cfra);
|
||||||
}
|
}
|
||||||
} else if(seq->type & SEQ_EFFECT) {
|
} else if(seq->type & SEQ_EFFECT) {
|
||||||
|
int use_preprocess = FALSE;
|
||||||
/* should the effect be recalculated? */
|
/* should the effect be recalculated? */
|
||||||
|
|
||||||
if (!build_proxy_run && se->ibuf == 0) {
|
if (!build_proxy_run && se->ibuf == 0) {
|
||||||
se->ibuf = seq_proxy_fetch(scene, seq, cfra, render_size);
|
se->ibuf = seq_proxy_fetch(scene, seq, cfra, render_size);
|
||||||
|
if (se->ibuf) {
|
||||||
|
use_preprocess = TRUE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(se->ibuf == 0) {
|
if(se->ibuf == 0) {
|
||||||
@ -1913,6 +1923,22 @@ static void do_build_seq_ibuf(Scene *scene, Sequence * seq, TStripElem *se, int
|
|||||||
se->ibuf= IMB_allocImBuf((short)seqrectx, (short)seqrecty, 32, IB_rect, 0);
|
se->ibuf= IMB_allocImBuf((short)seqrectx, (short)seqrecty, 32, IB_rect, 0);
|
||||||
|
|
||||||
do_effect(scene, cfra, seq, se);
|
do_effect(scene, cfra, seq, se);
|
||||||
|
if (input_have_to_preprocess(scene, seq, se, cfra) &&
|
||||||
|
!build_proxy_run) {
|
||||||
|
if ((se->se1 && (se->ibuf == se->se1->ibuf)) ||
|
||||||
|
(se->se2 && (se->ibuf == se->se2->ibuf))) {
|
||||||
|
struct ImBuf * i
|
||||||
|
= IMB_dupImBuf(se->ibuf);
|
||||||
|
|
||||||
|
IMB_freeImBuf(se->ibuf);
|
||||||
|
|
||||||
|
se->ibuf = i;
|
||||||
|
}
|
||||||
|
use_preprocess = TRUE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (use_preprocess) {
|
||||||
|
input_preprocess(scene, seq, se, cfra);
|
||||||
}
|
}
|
||||||
} else if(seq->type == SEQ_IMAGE) {
|
} else if(seq->type == SEQ_IMAGE) {
|
||||||
if(se->ok == STRIPELEM_OK && se->ibuf == 0) {
|
if(se->ok == STRIPELEM_OK && se->ibuf == 0) {
|
||||||
@ -2067,8 +2093,8 @@ static void do_build_seq_ibuf(Scene *scene, Sequence * seq, TStripElem *se, int
|
|||||||
// XXX
|
// XXX
|
||||||
#if 0
|
#if 0
|
||||||
if((G.f & G_PLAYANIM)==0 /* bad, is set on do_render_seq */
|
if((G.f & G_PLAYANIM)==0 /* bad, is set on do_render_seq */
|
||||||
&& !(sce->r.scemode & R_DOSEQ))
|
&& !(sce->r.scemode & R_DOSEQ)
|
||||||
waitcursor(0);
|
&& !build_proxy_run)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
CFRA = oldcfra;
|
CFRA = oldcfra;
|
||||||
@ -3116,6 +3142,17 @@ void update_changed_seq_and_deps(Scene *scene, Sequence *changed_seq, int len_ch
|
|||||||
update_changed_seq_recurs(scene, seq, changed_seq, len_change, ibuf_change);
|
update_changed_seq_recurs(scene, seq, changed_seq, len_change, ibuf_change);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if 0 // XXX from 2.4x, needs updating
|
||||||
|
void free_imbuf_seq()
|
||||||
|
{
|
||||||
|
Scene * sce = G.main->scene.first;
|
||||||
|
while(sce) {
|
||||||
|
free_imbuf_seq_editing(sce->ed);
|
||||||
|
sce= sce->id.next;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
void free_imbuf_seq_with_ipo(Scene *scene, struct Ipo *ipo)
|
void free_imbuf_seq_with_ipo(Scene *scene, struct Ipo *ipo)
|
||||||
{
|
{
|
||||||
/* force update of all sequences with this ipo, on ipo changes */
|
/* force update of all sequences with this ipo, on ipo changes */
|
||||||
@ -3140,9 +3177,14 @@ void free_imbuf_seq_with_ipo(Scene *scene, struct Ipo *ipo)
|
|||||||
/* bad levell call... */
|
/* bad levell call... */
|
||||||
void do_render_seq(RenderResult *rr, int cfra)
|
void do_render_seq(RenderResult *rr, int cfra)
|
||||||
{
|
{
|
||||||
|
static int recurs_depth = 0
|
||||||
ImBuf *ibuf;
|
ImBuf *ibuf;
|
||||||
|
|
||||||
ibuf= give_ibuf_seq(scene, rr->rectx, rr->recty, cfra, 0, scene->r.size);
|
recurs_depth++;
|
||||||
|
|
||||||
|
ibuf= give_ibuf_seq(rr->rectx, rr->recty, cfra, 0, 100.0);
|
||||||
|
|
||||||
|
recurs_depth--;
|
||||||
|
|
||||||
if(ibuf) {
|
if(ibuf) {
|
||||||
if(ibuf->rect_float) {
|
if(ibuf->rect_float) {
|
||||||
@ -3179,7 +3221,7 @@ void do_render_seq(RenderResult *rr, int cfra)
|
|||||||
on freeing _all_ buffers every time on long timelines...)
|
on freeing _all_ buffers every time on long timelines...)
|
||||||
(schlaile)
|
(schlaile)
|
||||||
*/
|
*/
|
||||||
{
|
if (recurs_depth == 0) { /* with nested scenes, only free on toplevel... */
|
||||||
uintptr_t mem_in_use;
|
uintptr_t mem_in_use;
|
||||||
uintptr_t mmap_in_use;
|
uintptr_t mmap_in_use;
|
||||||
uintptr_t max;
|
uintptr_t max;
|
||||||
|
@ -4733,6 +4733,14 @@ static void direct_link_screen(FileData *fd, bScreen *sc)
|
|||||||
}
|
}
|
||||||
snode->nodetree= snode->edittree= NULL;
|
snode->nodetree= snode->edittree= NULL;
|
||||||
}
|
}
|
||||||
|
else if(sl->spacetype==SPACE_LOGIC) {
|
||||||
|
SpaceLogic *slogic= (SpaceLogic *)sl;
|
||||||
|
|
||||||
|
if(slogic->gpd) {
|
||||||
|
slogic->gpd= newdataadr(fd, slogic->gpd);
|
||||||
|
direct_link_gpencil(fd, slogic->gpd);
|
||||||
|
}
|
||||||
|
}
|
||||||
else if(sl->spacetype==SPACE_SEQ) {
|
else if(sl->spacetype==SPACE_SEQ) {
|
||||||
SpaceSeq *sseq= (SpaceSeq *)sl;
|
SpaceSeq *sseq= (SpaceSeq *)sl;
|
||||||
if(sseq->gpd) {
|
if(sseq->gpd) {
|
||||||
@ -9129,6 +9137,34 @@ static void do_versions(FileData *fd, Library *lib, Main *main)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (main->versionfile < 249 && main->subversionfile < 2) {
|
||||||
|
Scene *sce= main->scene.first;
|
||||||
|
Sequence *seq;
|
||||||
|
Editing *ed;
|
||||||
|
|
||||||
|
while(sce) {
|
||||||
|
ed= sce->ed;
|
||||||
|
if(ed) {
|
||||||
|
SEQP_BEGIN(ed, seq) {
|
||||||
|
if (seq->strip && seq->strip->proxy){
|
||||||
|
if (sce->r.size != 100.0) {
|
||||||
|
seq->strip->proxy->size
|
||||||
|
= sce->r.size;
|
||||||
|
} else {
|
||||||
|
seq->strip->proxy->size
|
||||||
|
= 25.0;
|
||||||
|
}
|
||||||
|
seq->strip->proxy->quality =90;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
SEQ_END
|
||||||
|
}
|
||||||
|
|
||||||
|
sce= sce->id.next;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/* WATCH IT!!!: pointers from libdata have not been converted yet here! */
|
/* WATCH IT!!!: pointers from libdata have not been converted yet here! */
|
||||||
/* WATCH IT 2!: Userdef struct init has to be in src/usiblender.c! */
|
/* WATCH IT 2!: Userdef struct init has to be in src/usiblender.c! */
|
||||||
|
@ -1884,6 +1884,9 @@ static void write_screens(WriteData *wd, ListBase *scrbase)
|
|||||||
else if(sl->spacetype==SPACE_NODE){
|
else if(sl->spacetype==SPACE_NODE){
|
||||||
writestruct(wd, DATA, "SpaceNode", 1, sl);
|
writestruct(wd, DATA, "SpaceNode", 1, sl);
|
||||||
}
|
}
|
||||||
|
else if(sl->spacetype==SPACE_LOGIC){
|
||||||
|
writestruct(wd, DATA, "SpaceLogic", 1, sl);
|
||||||
|
}
|
||||||
sl= sl->next;
|
sl= sl->next;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -29,6 +29,6 @@
|
|||||||
# Bounces make to subdirectories.
|
# Bounces make to subdirectories.
|
||||||
|
|
||||||
SOURCEDIR = source/blender/editors
|
SOURCEDIR = source/blender/editors
|
||||||
DIRS = armature mesh animation object sculpt_paint datafiles transform screen curve gpencil physics preview uvedit space_outliner space_time space_view3d interface util space_api space_graph space_image space_node space_buttons space_info space_file space_sound space_action space_nla space_script space_text space_sequencer
|
DIRS = armature mesh animation object sculpt_paint datafiles transform screen curve gpencil physics preview uvedit space_outliner space_time space_view3d interface util space_api space_graph space_image space_node space_buttons space_info space_file space_sound space_action space_nla space_script space_text space_sequencer space_logic
|
||||||
|
|
||||||
include nan_subdirs.mk
|
include nan_subdirs.mk
|
||||||
|
@ -29,6 +29,7 @@ SConscript(['datafiles/SConscript',
|
|||||||
'space_script/SConscript',
|
'space_script/SConscript',
|
||||||
'space_text/SConscript',
|
'space_text/SConscript',
|
||||||
'space_sequencer/SConscript',
|
'space_sequencer/SConscript',
|
||||||
|
'space_logic/SConscript',
|
||||||
'transform/SConscript',
|
'transform/SConscript',
|
||||||
'screen/SConscript',
|
'screen/SConscript',
|
||||||
'sculpt_paint/SConscript',
|
'sculpt_paint/SConscript',
|
||||||
|
@ -721,17 +721,17 @@ enum {
|
|||||||
|
|
||||||
/* defines for setting animation-channel flags */
|
/* defines for setting animation-channel flags */
|
||||||
EnumPropertyItem prop_animchannel_setflag_types[] = {
|
EnumPropertyItem prop_animchannel_setflag_types[] = {
|
||||||
{ACHANNEL_SETFLAG_CLEAR, "DISABLE", "Disable", ""},
|
{ACHANNEL_SETFLAG_CLEAR, "DISABLE", 0, "Disable", ""},
|
||||||
{ACHANNEL_SETFLAG_ADD, "ENABLE", "Enable", ""},
|
{ACHANNEL_SETFLAG_ADD, "ENABLE", 0, "Enable", ""},
|
||||||
{ACHANNEL_SETFLAG_TOGGLE, "TOGGLE", "Toggle", ""},
|
{ACHANNEL_SETFLAG_TOGGLE, "TOGGLE", 0, "Toggle", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* defines for set animation-channel settings */
|
/* defines for set animation-channel settings */
|
||||||
EnumPropertyItem prop_animchannel_settings_types[] = {
|
EnumPropertyItem prop_animchannel_settings_types[] = {
|
||||||
{ACHANNEL_SETTING_PROTECT, "PROTECT", "Protect", ""},
|
{ACHANNEL_SETTING_PROTECT, "PROTECT", 0, "Protect", ""},
|
||||||
{ACHANNEL_SETTING_MUTE, "MUTE", "Mute", ""},
|
{ACHANNEL_SETTING_MUTE, "MUTE", 0, "Mute", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -106,10 +106,10 @@ void ANIM_OT_keyingset_add_destination (wmOperatorType *ot)
|
|||||||
{
|
{
|
||||||
// XXX: this is also defined in rna_animation.c
|
// XXX: this is also defined in rna_animation.c
|
||||||
static EnumPropertyItem prop_mode_grouping_items[] = {
|
static EnumPropertyItem prop_mode_grouping_items[] = {
|
||||||
{KSP_GROUP_NAMED, "NAMED", "Named Group", ""},
|
{KSP_GROUP_NAMED, "NAMED", 0, "Named Group", ""},
|
||||||
{KSP_GROUP_NONE, "NONE", "None", ""},
|
{KSP_GROUP_NONE, "NONE", 0, "None", ""},
|
||||||
{KSP_GROUP_KSNAME, "KEYINGSET", "Keying Set Name", ""},
|
{KSP_GROUP_KSNAME, "KEYINGSET", 0, "Keying Set Name", ""},
|
||||||
{0, NULL, NULL, NULL}};
|
{0, NULL, 0, NULL, NULL}};
|
||||||
|
|
||||||
/* identifiers */
|
/* identifiers */
|
||||||
ot->name= "Add Keying Set Destination";
|
ot->name= "Add Keying Set Destination";
|
||||||
|
@ -1957,9 +1957,9 @@ void auto_align_ebone_tocursor(Scene *scene, View3D *v3d, EditBone *ebone)
|
|||||||
|
|
||||||
|
|
||||||
static EnumPropertyItem prop_calc_roll_types[] = {
|
static EnumPropertyItem prop_calc_roll_types[] = {
|
||||||
{0, "GLOBALUP", "Z-Axis Up", ""},
|
{0, "GLOBALUP", 0, "Z-Axis Up", ""},
|
||||||
{1, "CURSOR", "Z-Axis to Cursor", ""},
|
{1, "CURSOR", 0, "Z-Axis to Cursor", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
static int armature_calc_roll_exec(bContext *C, wmOperator *op)
|
static int armature_calc_roll_exec(bContext *C, wmOperator *op)
|
||||||
@ -3489,9 +3489,9 @@ static int armature_subdivs_exec(bContext *C, wmOperator *op)
|
|||||||
void ARMATURE_OT_subdivs(wmOperatorType *ot)
|
void ARMATURE_OT_subdivs(wmOperatorType *ot)
|
||||||
{
|
{
|
||||||
static EnumPropertyItem type_items[]= {
|
static EnumPropertyItem type_items[]= {
|
||||||
{0, "SIMPLE", "Simple", ""},
|
{0, "SIMPLE", 0, "Simple", ""},
|
||||||
{1, "MULTI", "Multi", ""},
|
{1, "MULTI", 0, "Multi", ""},
|
||||||
{0, NULL, NULL}};
|
{0, NULL, 0, NULL, NULL}};
|
||||||
|
|
||||||
/* identifiers */
|
/* identifiers */
|
||||||
ot->name= "subdivs";
|
ot->name= "subdivs";
|
||||||
@ -3669,9 +3669,9 @@ static void bone_connect_to_new_parent(ListBase *edbo, EditBone *selbone, EditBo
|
|||||||
}
|
}
|
||||||
|
|
||||||
static EnumPropertyItem prop_editarm_make_parent_types[] = {
|
static EnumPropertyItem prop_editarm_make_parent_types[] = {
|
||||||
{ARM_PAR_CONNECT, "CONNECTED", "Connected", ""},
|
{ARM_PAR_CONNECT, "CONNECTED", 0, "Connected", ""},
|
||||||
{ARM_PAR_OFFSET, "OFFSET", "Keep Offset", ""},
|
{ARM_PAR_OFFSET, "OFFSET", 0, "Keep Offset", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
static int armature_parent_set_exec(bContext *C, wmOperator *op)
|
static int armature_parent_set_exec(bContext *C, wmOperator *op)
|
||||||
@ -3785,9 +3785,9 @@ void ARMATURE_OT_parent_set(wmOperatorType *ot)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static EnumPropertyItem prop_editarm_clear_parent_types[] = {
|
static EnumPropertyItem prop_editarm_clear_parent_types[] = {
|
||||||
{1, "CLEAR", "Clear Parent", ""},
|
{1, "CLEAR", 0, "Clear Parent", ""},
|
||||||
{2, "DISCONNECT", "Disconnect Bone", ""},
|
{2, "DISCONNECT", 0, "Disconnect Bone", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
static void editbone_clear_parent(EditBone *ebone, int mode)
|
static void editbone_clear_parent(EditBone *ebone, int mode)
|
||||||
@ -3973,9 +3973,9 @@ static int armature_select_hierarchy_exec(bContext *C, wmOperator *op)
|
|||||||
void ARMATURE_OT_select_hierarchy(wmOperatorType *ot)
|
void ARMATURE_OT_select_hierarchy(wmOperatorType *ot)
|
||||||
{
|
{
|
||||||
static EnumPropertyItem direction_items[]= {
|
static EnumPropertyItem direction_items[]= {
|
||||||
{BONE_SELECT_PARENT, "PARENT", "Select Parent", ""},
|
{BONE_SELECT_PARENT, "PARENT", 0, "Select Parent", ""},
|
||||||
{BONE_SELECT_CHILD, "CHILD", "Select Child", ""},
|
{BONE_SELECT_CHILD, "CHILD", 0, "Select Child", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* identifiers */
|
/* identifiers */
|
||||||
|
@ -500,9 +500,9 @@ static int pose_select_hierarchy_exec(bContext *C, wmOperator *op)
|
|||||||
void POSE_OT_select_hierarchy(wmOperatorType *ot)
|
void POSE_OT_select_hierarchy(wmOperatorType *ot)
|
||||||
{
|
{
|
||||||
static EnumPropertyItem direction_items[]= {
|
static EnumPropertyItem direction_items[]= {
|
||||||
{BONE_SELECT_PARENT, "PARENT", "Select Parent", ""},
|
{BONE_SELECT_PARENT, "PARENT", 0, "Select Parent", ""},
|
||||||
{BONE_SELECT_CHILD, "CHILD", "Select Child", ""},
|
{BONE_SELECT_CHILD, "CHILD", 0, "Select Child", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* identifiers */
|
/* identifiers */
|
||||||
|
@ -2475,12 +2475,12 @@ static int set_spline_type_exec(bContext *C, wmOperator *op)
|
|||||||
void CURVE_OT_spline_type_set(wmOperatorType *ot)
|
void CURVE_OT_spline_type_set(wmOperatorType *ot)
|
||||||
{
|
{
|
||||||
static EnumPropertyItem type_items[]= {
|
static EnumPropertyItem type_items[]= {
|
||||||
{CU_POLY, "POLY", "Poly", ""},
|
{CU_POLY, "POLY", 0, "Poly", ""},
|
||||||
{CU_BEZIER, "BEZIER", "Bezier", ""},
|
{CU_BEZIER, "BEZIER", 0, "Bezier", ""},
|
||||||
{CU_CARDINAL, "CARDINAL", "Cardinal", ""},
|
{CU_CARDINAL, "CARDINAL", 0, "Cardinal", ""},
|
||||||
{CU_BSPLINE, "B_SPLINE", "B-Spline", ""},
|
{CU_BSPLINE, "B_SPLINE", 0, "B-Spline", ""},
|
||||||
{CU_NURBS, "NURBS", "NURBS", ""},
|
{CU_NURBS, "NURBS", 0, "NURBS", ""},
|
||||||
{0, NULL, NULL, NULL}};
|
{0, NULL, 0, NULL, NULL}};
|
||||||
|
|
||||||
/* identifiers */
|
/* identifiers */
|
||||||
ot->name= "Set Spline Type";
|
ot->name= "Set Spline Type";
|
||||||
@ -2516,12 +2516,12 @@ static int set_handle_type_exec(bContext *C, wmOperator *op)
|
|||||||
void CURVE_OT_handle_type_set(wmOperatorType *ot)
|
void CURVE_OT_handle_type_set(wmOperatorType *ot)
|
||||||
{
|
{
|
||||||
static EnumPropertyItem type_items[]= {
|
static EnumPropertyItem type_items[]= {
|
||||||
{1, "AUTOMATIC", "Automatic", ""},
|
{1, "AUTOMATIC", 0, "Automatic", ""},
|
||||||
{2, "VECTOR", "Vector", ""},
|
{2, "VECTOR", 0, "Vector", ""},
|
||||||
{3, "TOGGLE_FREE_ALIGN", "Toggle Free/Align", ""},
|
{3, "TOGGLE_FREE_ALIGN", 0, "Toggle Free/Align", ""},
|
||||||
{5, "ALIGN", "Align", ""},
|
{5, "ALIGN", 0, "Align", ""},
|
||||||
{6, "FREE_ALIGN", "Free Align", ""},
|
{6, "FREE_ALIGN", 0, "Free Align", ""},
|
||||||
{0, NULL, NULL, NULL}};
|
{0, NULL, 0, NULL, NULL}};
|
||||||
|
|
||||||
/* identifiers */
|
/* identifiers */
|
||||||
ot->name= "Set Handle Type";
|
ot->name= "Set Handle Type";
|
||||||
@ -3582,9 +3582,9 @@ static int toggle_cyclic_invoke(bContext *C, wmOperator *op, wmEvent *event)
|
|||||||
void CURVE_OT_cyclic_toggle(wmOperatorType *ot)
|
void CURVE_OT_cyclic_toggle(wmOperatorType *ot)
|
||||||
{
|
{
|
||||||
static EnumPropertyItem direction_items[]= {
|
static EnumPropertyItem direction_items[]= {
|
||||||
{0, "CYCLIC_U", "Cyclic U", ""},
|
{0, "CYCLIC_U", 0, "Cyclic U", ""},
|
||||||
{1, "CYCLIC_V", "Cyclic V", ""},
|
{1, "CYCLIC_V", 0, "Cyclic V", ""},
|
||||||
{0, NULL, NULL, NULL}};
|
{0, NULL, 0, NULL, NULL}};
|
||||||
|
|
||||||
/* identifiers */
|
/* identifiers */
|
||||||
ot->name= "Toggle Cyclic";
|
ot->name= "Toggle Cyclic";
|
||||||
@ -4530,10 +4530,10 @@ static int delete_invoke(bContext *C, wmOperator *op, wmEvent *event)
|
|||||||
void CURVE_OT_delete(wmOperatorType *ot)
|
void CURVE_OT_delete(wmOperatorType *ot)
|
||||||
{
|
{
|
||||||
static EnumPropertyItem type_items[] = {
|
static EnumPropertyItem type_items[] = {
|
||||||
{0, "SELECTED", "Selected", ""},
|
{0, "SELECTED", 0, "Selected", ""},
|
||||||
{1, "SEGMENT", "Segment", ""},
|
{1, "SEGMENT", 0, "Segment", ""},
|
||||||
{2, "ALL", "All", ""},
|
{2, "ALL", 0, "All", ""},
|
||||||
{0, NULL, NULL, NULL}};
|
{0, NULL, 0, NULL, NULL}};
|
||||||
|
|
||||||
/* identifiers */
|
/* identifiers */
|
||||||
ot->name= "Delete";
|
ot->name= "Delete";
|
||||||
|
@ -607,10 +607,10 @@ static int kill_selection(Object *obedit, int ins) /* 1 == new character */
|
|||||||
/******************* set style operator ********************/
|
/******************* set style operator ********************/
|
||||||
|
|
||||||
static EnumPropertyItem style_items[]= {
|
static EnumPropertyItem style_items[]= {
|
||||||
{CU_BOLD, "BOLD", "Bold", ""},
|
{CU_BOLD, "BOLD", 0, "Bold", ""},
|
||||||
{CU_ITALIC, "ITALIC", "Italic", ""},
|
{CU_ITALIC, "ITALIC", 0, "Italic", ""},
|
||||||
{CU_UNDERLINE, "UNDERLINE", "Underline", ""},
|
{CU_UNDERLINE, "UNDERLINE", 0, "Underline", ""},
|
||||||
{0, NULL, NULL, NULL}};
|
{0, NULL, 0, NULL, NULL}};
|
||||||
|
|
||||||
static int set_style(bContext *C, int style, int clear)
|
static int set_style(bContext *C, int style, int clear)
|
||||||
{
|
{
|
||||||
@ -873,17 +873,17 @@ void FONT_OT_text_paste(wmOperatorType *ot)
|
|||||||
/************************ move operator ************************/
|
/************************ move operator ************************/
|
||||||
|
|
||||||
static EnumPropertyItem move_type_items[]= {
|
static EnumPropertyItem move_type_items[]= {
|
||||||
{LINE_BEGIN, "LINE_BEGIN", "Line Begin", ""},
|
{LINE_BEGIN, "LINE_BEGIN", 0, "Line Begin", ""},
|
||||||
{LINE_END, "LINE_END", "Line End", ""},
|
{LINE_END, "LINE_END", 0, "Line End", ""},
|
||||||
{PREV_CHAR, "PREVIOUS_CHARACTER", "Previous Character", ""},
|
{PREV_CHAR, "PREVIOUS_CHARACTER", 0, "Previous Character", ""},
|
||||||
{NEXT_CHAR, "NEXT_CHARACTER", "Next Character", ""},
|
{NEXT_CHAR, "NEXT_CHARACTER", 0, "Next Character", ""},
|
||||||
{PREV_WORD, "PREVIOUS_WORD", "Previous Word", ""},
|
{PREV_WORD, "PREVIOUS_WORD", 0, "Previous Word", ""},
|
||||||
{NEXT_WORD, "NEXT_WORD", "Next Word", ""},
|
{NEXT_WORD, "NEXT_WORD", 0, "Next Word", ""},
|
||||||
{PREV_LINE, "PREVIOUS_LINE", "Previous Line", ""},
|
{PREV_LINE, "PREVIOUS_LINE", 0, "Previous Line", ""},
|
||||||
{NEXT_LINE, "NEXT_LINE", "Next Line", ""},
|
{NEXT_LINE, "NEXT_LINE", 0, "Next Line", ""},
|
||||||
{PREV_PAGE, "PREVIOUS_PAGE", "Previous Page", ""},
|
{PREV_PAGE, "PREVIOUS_PAGE", 0, "Previous Page", ""},
|
||||||
{NEXT_PAGE, "NEXT_PAGE", "Next Page", ""},
|
{NEXT_PAGE, "NEXT_PAGE", 0, "Next Page", ""},
|
||||||
{0, NULL, NULL, NULL}};
|
{0, NULL, 0, NULL, NULL}};
|
||||||
|
|
||||||
static int move_cursor(bContext *C, int type, int select)
|
static int move_cursor(bContext *C, int type, int select)
|
||||||
{
|
{
|
||||||
@ -1164,13 +1164,13 @@ void FONT_OT_line_break(wmOperatorType *ot)
|
|||||||
/******************* delete operator **********************/
|
/******************* delete operator **********************/
|
||||||
|
|
||||||
static EnumPropertyItem delete_type_items[]= {
|
static EnumPropertyItem delete_type_items[]= {
|
||||||
{DEL_ALL, "ALL", "All", ""},
|
{DEL_ALL, "ALL", 0, "All", ""},
|
||||||
{DEL_NEXT_CHAR, "NEXT_CHARACTER", "Next Character", ""},
|
{DEL_NEXT_CHAR, "NEXT_CHARACTER", 0, "Next Character", ""},
|
||||||
{DEL_PREV_CHAR, "PREVIOUS_CHARACTER", "Previous Character", ""},
|
{DEL_PREV_CHAR, "PREVIOUS_CHARACTER", 0, "Previous Character", ""},
|
||||||
{DEL_SELECTION, "SELECTION", "Selection", ""},
|
{DEL_SELECTION, "SELECTION", 0, "Selection", ""},
|
||||||
{DEL_NEXT_SEL, "NEXT_OR_SELECTION", "Next or Selection", ""},
|
{DEL_NEXT_SEL, "NEXT_OR_SELECTION", 0, "Next or Selection", ""},
|
||||||
{DEL_PREV_SEL, "PREVIOUS_OR_SELECTION", "Previous or Selection", ""},
|
{DEL_PREV_SEL, "PREVIOUS_OR_SELECTION", 0, "Previous or Selection", ""},
|
||||||
{0, NULL, NULL, NULL}};
|
{0, NULL, 0, NULL, NULL}};
|
||||||
|
|
||||||
static int delete_exec(bContext *C, wmOperator *op)
|
static int delete_exec(bContext *C, wmOperator *op)
|
||||||
{
|
{
|
||||||
@ -1407,7 +1407,7 @@ void make_editText(Object *obedit)
|
|||||||
ef->copybuf= MEM_callocN((MAXTEXT+4)*sizeof(wchar_t), "texteditcopybuf");
|
ef->copybuf= MEM_callocN((MAXTEXT+4)*sizeof(wchar_t), "texteditcopybuf");
|
||||||
ef->copybufinfo= MEM_callocN((MAXTEXT+4)*sizeof(CharInfo), "texteditcopybufinfo");
|
ef->copybufinfo= MEM_callocN((MAXTEXT+4)*sizeof(CharInfo), "texteditcopybufinfo");
|
||||||
ef->oldstr= MEM_callocN((MAXTEXT+4)*sizeof(wchar_t), "oldstrbuf");
|
ef->oldstr= MEM_callocN((MAXTEXT+4)*sizeof(wchar_t), "oldstrbuf");
|
||||||
ef->oldstrinfo= MEM_callocN((MAXTEXT+4)*sizeof(wchar_t), "oldstrbuf");
|
ef->oldstrinfo= MEM_callocN((MAXTEXT+4)*sizeof(CharInfo), "oldstrbuf");
|
||||||
}
|
}
|
||||||
|
|
||||||
// Convert the original text to wchar_t
|
// Convert the original text to wchar_t
|
||||||
@ -1465,9 +1465,9 @@ void free_editText(Object *obedit)
|
|||||||
/********************** set case operator *********************/
|
/********************** set case operator *********************/
|
||||||
|
|
||||||
static EnumPropertyItem case_items[]= {
|
static EnumPropertyItem case_items[]= {
|
||||||
{CASE_LOWER, "LOWER", "Lower", ""},
|
{CASE_LOWER, "LOWER", 0, "Lower", ""},
|
||||||
{CASE_UPPER, "UPPER", "Upper", ""},
|
{CASE_UPPER, "UPPER", 0, "Upper", ""},
|
||||||
{0, NULL, NULL, NULL}};
|
{0, NULL, 0, NULL, NULL}};
|
||||||
|
|
||||||
static int set_case(bContext *C, int ccase)
|
static int set_case(bContext *C, int ccase)
|
||||||
{
|
{
|
||||||
|
@ -118,6 +118,7 @@ int ED_operator_node_active(struct bContext *C);
|
|||||||
int ED_operator_ipo_active(struct bContext *C);
|
int ED_operator_ipo_active(struct bContext *C);
|
||||||
int ED_operator_sequencer_active(struct bContext *C);
|
int ED_operator_sequencer_active(struct bContext *C);
|
||||||
int ED_operator_image_active(struct bContext *C);
|
int ED_operator_image_active(struct bContext *C);
|
||||||
|
int ED_operator_logic_active(struct bContext *C);
|
||||||
|
|
||||||
int ED_operator_object_active(struct bContext *C);
|
int ED_operator_object_active(struct bContext *C);
|
||||||
int ED_operator_editmesh(struct bContext *C);
|
int ED_operator_editmesh(struct bContext *C);
|
||||||
|
@ -50,6 +50,7 @@ void ED_spacetype_nla(void);
|
|||||||
void ED_spacetype_script(void);
|
void ED_spacetype_script(void);
|
||||||
void ED_spacetype_text(void);
|
void ED_spacetype_text(void);
|
||||||
void ED_spacetype_sequencer(void);
|
void ED_spacetype_sequencer(void);
|
||||||
|
void ED_spacetype_logic(void);
|
||||||
|
|
||||||
/* calls for instancing and freeing spacetype static data
|
/* calls for instancing and freeing spacetype static data
|
||||||
called in WM_init_exit */
|
called in WM_init_exit */
|
||||||
|
882
source/blender/editors/include/UI_icons.h
Normal file
882
source/blender/editors/include/UI_icons.h
Normal file
@ -0,0 +1,882 @@
|
|||||||
|
/**
|
||||||
|
* $Id:
|
||||||
|
*
|
||||||
|
* ***** BEGIN GPL LICENSE BLOCK *****
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU General Public License
|
||||||
|
* as published by the Free Software Foundation; either version 2
|
||||||
|
* of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
|
* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
|
*
|
||||||
|
* The Original Code is Copyright (C) 2009 Blender Foundation.
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* Contributor(s): Blender Foundation
|
||||||
|
*
|
||||||
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Note: this is included twice with different #defines for DEF_ICON
|
||||||
|
once from UI_resources.h for the internal icon enum and once fro interface_api.c for
|
||||||
|
definition of the RNA enum for he icons */
|
||||||
|
|
||||||
|
DEF_ICON(ICON_BLENDER)
|
||||||
|
DEF_ICON(ICON_QUESTION)
|
||||||
|
DEF_ICON(ICON_ERROR)
|
||||||
|
DEF_ICON(ICON_BLANK1) // XXX this is used lots, it's not actually 'blank'
|
||||||
|
DEF_ICON(ICON_TRIA_RIGHT)
|
||||||
|
DEF_ICON(ICON_TRIA_DOWN)
|
||||||
|
DEF_ICON(ICON_TRIA_LEFT)
|
||||||
|
DEF_ICON(ICON_TRIA_UP)
|
||||||
|
DEF_ICON(ICON_ARROW_LEFTRIGHT)
|
||||||
|
DEF_ICON(ICON_PLUS)
|
||||||
|
DEF_ICON(ICON_DISCLOSURE_TRI_DOWN)
|
||||||
|
DEF_ICON(ICON_DISCLOSURE_TRI_RIGHT)
|
||||||
|
DEF_ICON(ICON_RADIOBUT_OFF)
|
||||||
|
DEF_ICON(ICON_RADIOBUT_ON)
|
||||||
|
DEF_ICON(ICON_MENU_PANEL)
|
||||||
|
DEF_ICON(ICON_PYTHON)
|
||||||
|
DEF_ICON(ICON_BLANK003)
|
||||||
|
DEF_ICON(ICON_DOT)
|
||||||
|
DEF_ICON(ICON_BLANK004)
|
||||||
|
DEF_ICON(ICON_X)
|
||||||
|
DEF_ICON(ICON_BLANK005)
|
||||||
|
DEF_ICON(ICON_GO_LEFT)
|
||||||
|
DEF_ICON(ICON_BLANK006)
|
||||||
|
DEF_ICON(ICON_BLANK007)
|
||||||
|
DEF_ICON(ICON_BLANK008)
|
||||||
|
DEF_ICON(ICON_BLANK008b)
|
||||||
|
|
||||||
|
/* ui */
|
||||||
|
DEF_ICON(ICON_FULLSCREEN)
|
||||||
|
DEF_ICON(ICON_SPLITSCREEN)
|
||||||
|
DEF_ICON(ICON_RIGHTARROW_THIN)
|
||||||
|
DEF_ICON(ICON_BORDERMOVE)
|
||||||
|
DEF_ICON(ICON_VIEWZOOM)
|
||||||
|
DEF_ICON(ICON_ZOOMIN)
|
||||||
|
DEF_ICON(ICON_ZOOMOUT)
|
||||||
|
DEF_ICON(ICON_PANEL_CLOSE)
|
||||||
|
DEF_ICON(ICON_BLANK009)
|
||||||
|
DEF_ICON(ICON_EYEDROPPER)
|
||||||
|
DEF_ICON(ICON_BLANK010)
|
||||||
|
DEF_ICON(ICON_AUTO)
|
||||||
|
DEF_ICON(ICON_CHECKBOX_DEHLT)
|
||||||
|
DEF_ICON(ICON_CHECKBOX_HLT)
|
||||||
|
DEF_ICON(ICON_UNLOCKED)
|
||||||
|
DEF_ICON(ICON_LOCKED)
|
||||||
|
DEF_ICON(ICON_PINNED)
|
||||||
|
DEF_ICON(ICON_UNPINNED)
|
||||||
|
DEF_ICON(ICON_BLANK015)
|
||||||
|
DEF_ICON(ICON_RIGHTARROW)
|
||||||
|
DEF_ICON(ICON_DOWNARROW_HLT)
|
||||||
|
DEF_ICON(ICON_DOTSUP)
|
||||||
|
DEF_ICON(ICON_DOTSDOWN)
|
||||||
|
DEF_ICON(ICON_LINK)
|
||||||
|
DEF_ICON(ICON_INLINK)
|
||||||
|
DEF_ICON(ICON_BLANK012b)
|
||||||
|
|
||||||
|
/* various ui */
|
||||||
|
DEF_ICON(ICON_HELP)
|
||||||
|
DEF_ICON(ICON_GHOSTDRAW)
|
||||||
|
DEF_ICON(ICON_COLOR)
|
||||||
|
DEF_ICON(ICON_LINKED)
|
||||||
|
DEF_ICON(ICON_UNLINKED)
|
||||||
|
DEF_ICON(ICON_HAND)
|
||||||
|
DEF_ICON(ICON_ZOOM_ALL)
|
||||||
|
DEF_ICON(ICON_ZOOM_SELECTED)
|
||||||
|
DEF_ICON(ICON_ZOOM_PREVIOUS)
|
||||||
|
DEF_ICON(ICON_ZOOM_IN)
|
||||||
|
DEF_ICON(ICON_ZOOM_OUT)
|
||||||
|
DEF_ICON(ICON_RENDER_REGION)
|
||||||
|
DEF_ICON(ICON_BORDER_RECT)
|
||||||
|
DEF_ICON(ICON_BORDER_LASSO)
|
||||||
|
DEF_ICON(ICON_FREEZE)
|
||||||
|
DEF_ICON(ICON_BLANK031)
|
||||||
|
DEF_ICON(ICON_BLANK032)
|
||||||
|
DEF_ICON(ICON_BLANK033)
|
||||||
|
DEF_ICON(ICON_BLANK034)
|
||||||
|
DEF_ICON(ICON_BLANK035)
|
||||||
|
DEF_ICON(ICON_BLANK036)
|
||||||
|
DEF_ICON(ICON_BLANK037)
|
||||||
|
DEF_ICON(ICON_BLANK038)
|
||||||
|
DEF_ICON(ICON_BLANK039)
|
||||||
|
DEF_ICON(ICON_BLANK040)
|
||||||
|
DEF_ICON(ICON_BLANK040b)
|
||||||
|
|
||||||
|
/* BUTTONS */
|
||||||
|
DEF_ICON(ICON_LAMP)
|
||||||
|
DEF_ICON(ICON_MATERIAL)
|
||||||
|
DEF_ICON(ICON_TEXTURE)
|
||||||
|
DEF_ICON(ICON_ANIM)
|
||||||
|
DEF_ICON(ICON_WORLD)
|
||||||
|
DEF_ICON(ICON_SCENE)
|
||||||
|
DEF_ICON(ICON_EDIT)
|
||||||
|
DEF_ICON(ICON_GAME)
|
||||||
|
DEF_ICON(ICON_RADIO)
|
||||||
|
DEF_ICON(ICON_SCRIPT)
|
||||||
|
DEF_ICON(ICON_PARTICLES)
|
||||||
|
DEF_ICON(ICON_PHYSICS)
|
||||||
|
DEF_ICON(ICON_SPEAKER)
|
||||||
|
DEF_ICON(ICON_BLANK041)
|
||||||
|
DEF_ICON(ICON_BLANK042)
|
||||||
|
DEF_ICON(ICON_BLANK043)
|
||||||
|
DEF_ICON(ICON_BLANK044)
|
||||||
|
DEF_ICON(ICON_BLANK045)
|
||||||
|
DEF_ICON(ICON_BLANK046)
|
||||||
|
DEF_ICON(ICON_BLANK047)
|
||||||
|
DEF_ICON(ICON_BLANK048)
|
||||||
|
DEF_ICON(ICON_BLANK049)
|
||||||
|
DEF_ICON(ICON_BLANK050)
|
||||||
|
DEF_ICON(ICON_BLANK051)
|
||||||
|
DEF_ICON(ICON_BLANK052)
|
||||||
|
DEF_ICON(ICON_BLANK052b)
|
||||||
|
|
||||||
|
/* EDITORS */
|
||||||
|
DEF_ICON(ICON_VIEW3D)
|
||||||
|
DEF_ICON(ICON_IPO)
|
||||||
|
DEF_ICON(ICON_OOPS)
|
||||||
|
DEF_ICON(ICON_BUTS)
|
||||||
|
DEF_ICON(ICON_FILESEL)
|
||||||
|
DEF_ICON(ICON_IMAGE_COL)
|
||||||
|
DEF_ICON(ICON_INFO)
|
||||||
|
DEF_ICON(ICON_SEQUENCE)
|
||||||
|
DEF_ICON(ICON_TEXT)
|
||||||
|
DEF_ICON(ICON_IMASEL)
|
||||||
|
DEF_ICON(ICON_SOUND)
|
||||||
|
DEF_ICON(ICON_ACTION)
|
||||||
|
DEF_ICON(ICON_NLA)
|
||||||
|
DEF_ICON(ICON_SCRIPTWIN)
|
||||||
|
DEF_ICON(ICON_TIME)
|
||||||
|
DEF_ICON(ICON_NODE)
|
||||||
|
DEF_ICON(ICON_BLANK053)
|
||||||
|
DEF_ICON(ICON_BLANK054)
|
||||||
|
DEF_ICON(ICON_BLANK055)
|
||||||
|
DEF_ICON(ICON_BLANK056)
|
||||||
|
DEF_ICON(ICON_BLANK057)
|
||||||
|
DEF_ICON(ICON_BLANK058)
|
||||||
|
DEF_ICON(ICON_BLANK059)
|
||||||
|
DEF_ICON(ICON_BLANK060)
|
||||||
|
DEF_ICON(ICON_BLANK061)
|
||||||
|
DEF_ICON(ICON_BLANK061b)
|
||||||
|
|
||||||
|
/* MODES */
|
||||||
|
DEF_ICON(ICON_OBJECT_DATAMODE) // XXX fix this up
|
||||||
|
DEF_ICON(ICON_EDITMODE_HLT)
|
||||||
|
DEF_ICON(ICON_FACESEL_HLT)
|
||||||
|
DEF_ICON(ICON_VPAINT_HLT)
|
||||||
|
DEF_ICON(ICON_TPAINT_HLT)
|
||||||
|
DEF_ICON(ICON_WPAINT_HLT)
|
||||||
|
DEF_ICON(ICON_SCULPTMODE_HLT)
|
||||||
|
DEF_ICON(ICON_POSE_HLT)
|
||||||
|
DEF_ICON(ICON_PARTICLEMODE)
|
||||||
|
DEF_ICON(ICON_BLANK062)
|
||||||
|
DEF_ICON(ICON_BLANK063)
|
||||||
|
DEF_ICON(ICON_BLANK064)
|
||||||
|
DEF_ICON(ICON_BLANK065)
|
||||||
|
DEF_ICON(ICON_BLANK066)
|
||||||
|
DEF_ICON(ICON_BLANK067)
|
||||||
|
DEF_ICON(ICON_BLANK068)
|
||||||
|
DEF_ICON(ICON_BLANK069)
|
||||||
|
DEF_ICON(ICON_BLANK070)
|
||||||
|
DEF_ICON(ICON_BLANK071)
|
||||||
|
DEF_ICON(ICON_BLANK072)
|
||||||
|
DEF_ICON(ICON_BLANK073)
|
||||||
|
DEF_ICON(ICON_BLANK074)
|
||||||
|
DEF_ICON(ICON_BLANK075)
|
||||||
|
DEF_ICON(ICON_BLANK076)
|
||||||
|
DEF_ICON(ICON_BLANK077)
|
||||||
|
DEF_ICON(ICON_BLANK077b)
|
||||||
|
|
||||||
|
/* DATA */
|
||||||
|
DEF_ICON(ICON_SCENE_DATA)
|
||||||
|
DEF_ICON(ICON_RENDERLAYERS)
|
||||||
|
DEF_ICON(ICON_WORLD_DATA)
|
||||||
|
DEF_ICON(ICON_OBJECT_DATA)
|
||||||
|
DEF_ICON(ICON_MESH_DATA)
|
||||||
|
DEF_ICON(ICON_CURVE_DATA)
|
||||||
|
DEF_ICON(ICON_META_DATA)
|
||||||
|
DEF_ICON(ICON_LATTICE_DATA)
|
||||||
|
DEF_ICON(ICON_LAMP_DATA)
|
||||||
|
DEF_ICON(ICON_MATERIAL_DATA)
|
||||||
|
DEF_ICON(ICON_TEXTURE_DATA)
|
||||||
|
DEF_ICON(ICON_ANIM_DATA)
|
||||||
|
DEF_ICON(ICON_CAMERA_DATA)
|
||||||
|
DEF_ICON(ICON_PARTICLE_DATA)
|
||||||
|
DEF_ICON(ICON_LIBRARY_DATA_DIRECT)
|
||||||
|
DEF_ICON(ICON_GROUP)
|
||||||
|
DEF_ICON(ICON_ARMATURE_DATA)
|
||||||
|
DEF_ICON(ICON_POSE_DATA)
|
||||||
|
DEF_ICON(ICON_BONE_DATA)
|
||||||
|
DEF_ICON(ICON_CONSTRAINT)
|
||||||
|
DEF_ICON(ICON_SHAPEKEY_DATA)
|
||||||
|
DEF_ICON(ICON_BLANK079a)
|
||||||
|
DEF_ICON(ICON_BLANK079)
|
||||||
|
DEF_ICON(ICON_PACKAGE)
|
||||||
|
DEF_ICON(ICON_UGLYPACKAGE)
|
||||||
|
DEF_ICON(ICON_BLANK079b)
|
||||||
|
|
||||||
|
/* DATA */
|
||||||
|
DEF_ICON(ICON_BRUSH_DATA)
|
||||||
|
DEF_ICON(ICON_IMAGE_DATA)
|
||||||
|
DEF_ICON(ICON_FILE)
|
||||||
|
DEF_ICON(ICON_FCURVE)
|
||||||
|
DEF_ICON(ICON_FONT_DATA)
|
||||||
|
DEF_ICON(ICON_RENDER_RESULT)
|
||||||
|
DEF_ICON(ICON_SURFACE_DATA)
|
||||||
|
DEF_ICON(ICON_EMPTY_DATA)
|
||||||
|
DEF_ICON(ICON_SETTINGS)
|
||||||
|
DEF_ICON(ICON_BLANK080D)
|
||||||
|
DEF_ICON(ICON_BLANK080E)
|
||||||
|
DEF_ICON(ICON_BLANK080F)
|
||||||
|
DEF_ICON(ICON_BLANK080)
|
||||||
|
DEF_ICON(ICON_STRANDS)
|
||||||
|
DEF_ICON(ICON_LIBRARY_DATA_INDIRECT)
|
||||||
|
DEF_ICON(ICON_BLANK082)
|
||||||
|
DEF_ICON(ICON_BLANK083)
|
||||||
|
DEF_ICON(ICON_BLANK084)
|
||||||
|
DEF_ICON(ICON_GROUP_BONE)
|
||||||
|
DEF_ICON(ICON_GROUP_VERTEX)
|
||||||
|
DEF_ICON(ICON_GROUP_VCOL)
|
||||||
|
DEF_ICON(ICON_GROUP_UVS)
|
||||||
|
DEF_ICON(ICON_BLANK089)
|
||||||
|
DEF_ICON(ICON_BLANK090)
|
||||||
|
DEF_ICON(ICON_RNA)
|
||||||
|
DEF_ICON(ICON_BLANK090b)
|
||||||
|
|
||||||
|
/* available */
|
||||||
|
DEF_ICON(ICON_BLANK092)
|
||||||
|
DEF_ICON(ICON_BLANK093)
|
||||||
|
DEF_ICON(ICON_BLANK094)
|
||||||
|
DEF_ICON(ICON_BLANK095)
|
||||||
|
DEF_ICON(ICON_BLANK096)
|
||||||
|
DEF_ICON(ICON_BLANK097)
|
||||||
|
DEF_ICON(ICON_BLANK098)
|
||||||
|
DEF_ICON(ICON_BLANK099)
|
||||||
|
DEF_ICON(ICON_BLANK100)
|
||||||
|
DEF_ICON(ICON_BLANK101)
|
||||||
|
DEF_ICON(ICON_BLANK102)
|
||||||
|
DEF_ICON(ICON_BLANK103)
|
||||||
|
DEF_ICON(ICON_BLANK104)
|
||||||
|
DEF_ICON(ICON_BLANK105)
|
||||||
|
DEF_ICON(ICON_BLANK106)
|
||||||
|
DEF_ICON(ICON_BLANK107)
|
||||||
|
DEF_ICON(ICON_BLANK108)
|
||||||
|
DEF_ICON(ICON_BLANK109)
|
||||||
|
DEF_ICON(ICON_BLANK110)
|
||||||
|
DEF_ICON(ICON_BLANK111)
|
||||||
|
DEF_ICON(ICON_BLANK112)
|
||||||
|
DEF_ICON(ICON_BLANK113)
|
||||||
|
DEF_ICON(ICON_BLANK114)
|
||||||
|
DEF_ICON(ICON_BLANK115)
|
||||||
|
DEF_ICON(ICON_BLANK116)
|
||||||
|
DEF_ICON(ICON_BLANK116b)
|
||||||
|
|
||||||
|
/* OUTLINER */
|
||||||
|
DEF_ICON(ICON_OUTLINER_OB_EMPTY)
|
||||||
|
DEF_ICON(ICON_OUTLINER_OB_MESH)
|
||||||
|
DEF_ICON(ICON_OUTLINER_OB_CURVE)
|
||||||
|
DEF_ICON(ICON_OUTLINER_OB_LATTICE)
|
||||||
|
DEF_ICON(ICON_OUTLINER_OB_META)
|
||||||
|
DEF_ICON(ICON_OUTLINER_OB_LAMP)
|
||||||
|
DEF_ICON(ICON_OUTLINER_OB_CAMERA)
|
||||||
|
DEF_ICON(ICON_OUTLINER_OB_ARMATURE)
|
||||||
|
DEF_ICON(ICON_OUTLINER_OB_FONT)
|
||||||
|
DEF_ICON(ICON_OUTLINER_OB_SURFACE)
|
||||||
|
DEF_ICON(ICON_BLANK119)
|
||||||
|
DEF_ICON(ICON_BLANK120)
|
||||||
|
DEF_ICON(ICON_BLANK121)
|
||||||
|
DEF_ICON(ICON_BLANK122)
|
||||||
|
DEF_ICON(ICON_BLANK123)
|
||||||
|
DEF_ICON(ICON_BLANK124)
|
||||||
|
DEF_ICON(ICON_BLANK125)
|
||||||
|
DEF_ICON(ICON_BLANK126)
|
||||||
|
DEF_ICON(ICON_BLANK127)
|
||||||
|
DEF_ICON(ICON_RESTRICT_VIEW_OFF)
|
||||||
|
DEF_ICON(ICON_RESTRICT_VIEW_ON)
|
||||||
|
DEF_ICON(ICON_RESTRICT_SELECT_OFF)
|
||||||
|
DEF_ICON(ICON_RESTRICT_SELECT_ON)
|
||||||
|
DEF_ICON(ICON_RESTRICT_RENDER_OFF)
|
||||||
|
DEF_ICON(ICON_RESTRICT_RENDER_ON)
|
||||||
|
DEF_ICON(ICON_BLANK127b)
|
||||||
|
|
||||||
|
/* OUTLINER */
|
||||||
|
DEF_ICON(ICON_OUTLINER_DATA_EMPTY)
|
||||||
|
DEF_ICON(ICON_OUTLINER_DATA_MESH)
|
||||||
|
DEF_ICON(ICON_OUTLINER_DATA_CURVE)
|
||||||
|
DEF_ICON(ICON_OUTLINER_DATA_LATTICE)
|
||||||
|
DEF_ICON(ICON_OUTLINER_DATA_META)
|
||||||
|
DEF_ICON(ICON_OUTLINER_DATA_LAMP)
|
||||||
|
DEF_ICON(ICON_OUTLINER_DATA_CAMERA)
|
||||||
|
DEF_ICON(ICON_OUTLINER_DATA_ARMATURE)
|
||||||
|
DEF_ICON(ICON_OUTLINER_DATA_FONT)
|
||||||
|
DEF_ICON(ICON_OUTLINER_DATA_SURFACE)
|
||||||
|
DEF_ICON(ICON_OUTLINER_DATA_POSE)
|
||||||
|
DEF_ICON(ICON_BLANK129)
|
||||||
|
DEF_ICON(ICON_BLANK130)
|
||||||
|
DEF_ICON(ICON_BLANK131)
|
||||||
|
DEF_ICON(ICON_BLANK132)
|
||||||
|
DEF_ICON(ICON_BLANK133)
|
||||||
|
DEF_ICON(ICON_BLANK134)
|
||||||
|
DEF_ICON(ICON_BLANK135)
|
||||||
|
DEF_ICON(ICON_BLANK136)
|
||||||
|
DEF_ICON(ICON_BLANK137)
|
||||||
|
DEF_ICON(ICON_BLANK138)
|
||||||
|
DEF_ICON(ICON_BLANK139)
|
||||||
|
DEF_ICON(ICON_BLANK140)
|
||||||
|
DEF_ICON(ICON_BLANK141)
|
||||||
|
DEF_ICON(ICON_BLANK142)
|
||||||
|
DEF_ICON(ICON_BLANK142b)
|
||||||
|
|
||||||
|
/* PRIMITIVES */
|
||||||
|
DEF_ICON(ICON_MESH_PLANE)
|
||||||
|
DEF_ICON(ICON_MESH_CUBE)
|
||||||
|
DEF_ICON(ICON_MESH_CIRCLE)
|
||||||
|
DEF_ICON(ICON_MESH_UVSPHERE)
|
||||||
|
DEF_ICON(ICON_MESH_ICOSPHERE)
|
||||||
|
DEF_ICON(ICON_MESH_GRID)
|
||||||
|
DEF_ICON(ICON_MESH_MONKEY)
|
||||||
|
DEF_ICON(ICON_MESH_TUBE)
|
||||||
|
DEF_ICON(ICON_MESH_DONUT)
|
||||||
|
DEF_ICON(ICON_MESH_CONE)
|
||||||
|
DEF_ICON(ICON_BLANK610)
|
||||||
|
DEF_ICON(ICON_BLANK611)
|
||||||
|
DEF_ICON(ICON_LAMP_POINT)
|
||||||
|
DEF_ICON(ICON_LAMP_SUN)
|
||||||
|
DEF_ICON(ICON_LAMP_SPOT)
|
||||||
|
DEF_ICON(ICON_LAMP_HEMI)
|
||||||
|
DEF_ICON(ICON_LAMP_AREA)
|
||||||
|
DEF_ICON(ICON_BLANK617)
|
||||||
|
DEF_ICON(ICON_BLANK618)
|
||||||
|
DEF_ICON(ICON_BLANK619)
|
||||||
|
DEF_ICON(ICON_META_PLANE)
|
||||||
|
DEF_ICON(ICON_META_CUBE)
|
||||||
|
DEF_ICON(ICON_META_BALL)
|
||||||
|
DEF_ICON(ICON_META_ELLIPSOID)
|
||||||
|
DEF_ICON(ICON_META_TUBE)
|
||||||
|
DEF_ICON(ICON_BLANK625)
|
||||||
|
|
||||||
|
/* PRIMITIVES */
|
||||||
|
DEF_ICON(ICON_SURFACE_NCURVE)
|
||||||
|
DEF_ICON(ICON_SURFACE_NCIRCLE)
|
||||||
|
DEF_ICON(ICON_SURFACE_NSURFACE)
|
||||||
|
DEF_ICON(ICON_SURFACE_NTUBE)
|
||||||
|
DEF_ICON(ICON_SURFACE_NSPHERE)
|
||||||
|
DEF_ICON(ICON_SURFACE_NDONUT)
|
||||||
|
DEF_ICON(ICON_BLANK636)
|
||||||
|
DEF_ICON(ICON_BLANK637)
|
||||||
|
DEF_ICON(ICON_BLANK638)
|
||||||
|
DEF_ICON(ICON_CURVE_BEZCURVE)
|
||||||
|
DEF_ICON(ICON_CURVE_BEZCIRCLE)
|
||||||
|
DEF_ICON(ICON_CURVE_NCURVE)
|
||||||
|
DEF_ICON(ICON_CURVE_NCIRCLE)
|
||||||
|
DEF_ICON(ICON_CURVE_PATH)
|
||||||
|
DEF_ICON(ICON_BLANK644)
|
||||||
|
DEF_ICON(ICON_BLANK645)
|
||||||
|
DEF_ICON(ICON_BLANK646)
|
||||||
|
DEF_ICON(ICON_BLANK647)
|
||||||
|
DEF_ICON(ICON_BLANK648)
|
||||||
|
DEF_ICON(ICON_BLANK649)
|
||||||
|
DEF_ICON(ICON_BLANK650)
|
||||||
|
DEF_ICON(ICON_BLANK651)
|
||||||
|
DEF_ICON(ICON_BLANK652)
|
||||||
|
DEF_ICON(ICON_BLANK653)
|
||||||
|
DEF_ICON(ICON_BLANK654)
|
||||||
|
DEF_ICON(ICON_BLANK655)
|
||||||
|
|
||||||
|
/* EMPTY */
|
||||||
|
DEF_ICON(ICON_BLANK660)
|
||||||
|
DEF_ICON(ICON_BLANK661)
|
||||||
|
DEF_ICON(ICON_BLANK662)
|
||||||
|
DEF_ICON(ICON_BLANK663)
|
||||||
|
DEF_ICON(ICON_BLANK664)
|
||||||
|
DEF_ICON(ICON_BLANK665)
|
||||||
|
DEF_ICON(ICON_BLANK666)
|
||||||
|
DEF_ICON(ICON_BLANK667)
|
||||||
|
DEF_ICON(ICON_BLANK668)
|
||||||
|
DEF_ICON(ICON_BLANK669)
|
||||||
|
DEF_ICON(ICON_BLANK670)
|
||||||
|
DEF_ICON(ICON_BLANK671)
|
||||||
|
DEF_ICON(ICON_BLANK672)
|
||||||
|
DEF_ICON(ICON_BLANK673)
|
||||||
|
DEF_ICON(ICON_BLANK674)
|
||||||
|
DEF_ICON(ICON_BLANK675)
|
||||||
|
DEF_ICON(ICON_BLANK676)
|
||||||
|
DEF_ICON(ICON_BLANK677)
|
||||||
|
DEF_ICON(ICON_BLANK678)
|
||||||
|
DEF_ICON(ICON_BLANK679)
|
||||||
|
DEF_ICON(ICON_BLANK680)
|
||||||
|
DEF_ICON(ICON_BLANK681)
|
||||||
|
DEF_ICON(ICON_BLANK682)
|
||||||
|
DEF_ICON(ICON_BLANK683)
|
||||||
|
DEF_ICON(ICON_BLANK684)
|
||||||
|
DEF_ICON(ICON_BLANK685)
|
||||||
|
|
||||||
|
/* EMPTY */
|
||||||
|
DEF_ICON(ICON_BLANK690)
|
||||||
|
DEF_ICON(ICON_BLANK691)
|
||||||
|
DEF_ICON(ICON_BLANK692)
|
||||||
|
DEF_ICON(ICON_BLANK693)
|
||||||
|
DEF_ICON(ICON_BLANK694)
|
||||||
|
DEF_ICON(ICON_BLANK695)
|
||||||
|
DEF_ICON(ICON_BLANK696)
|
||||||
|
DEF_ICON(ICON_BLANK697)
|
||||||
|
DEF_ICON(ICON_BLANK698)
|
||||||
|
DEF_ICON(ICON_BLANK699)
|
||||||
|
DEF_ICON(ICON_BLANK700)
|
||||||
|
DEF_ICON(ICON_BLANK701)
|
||||||
|
DEF_ICON(ICON_BLANK702)
|
||||||
|
DEF_ICON(ICON_BLANK703)
|
||||||
|
DEF_ICON(ICON_BLANK704)
|
||||||
|
DEF_ICON(ICON_BLANK705)
|
||||||
|
DEF_ICON(ICON_BLANK706)
|
||||||
|
DEF_ICON(ICON_BLANK707)
|
||||||
|
DEF_ICON(ICON_BLANK708)
|
||||||
|
DEF_ICON(ICON_BLANK709)
|
||||||
|
DEF_ICON(ICON_BLANK710)
|
||||||
|
DEF_ICON(ICON_BLANK711)
|
||||||
|
DEF_ICON(ICON_BLANK712)
|
||||||
|
DEF_ICON(ICON_BLANK713)
|
||||||
|
DEF_ICON(ICON_BLANK714)
|
||||||
|
DEF_ICON(ICON_BLANK715)
|
||||||
|
|
||||||
|
/* EMPTY */
|
||||||
|
DEF_ICON(ICON_BLANK720)
|
||||||
|
DEF_ICON(ICON_BLANK721)
|
||||||
|
DEF_ICON(ICON_BLANK722)
|
||||||
|
DEF_ICON(ICON_BLANK733)
|
||||||
|
DEF_ICON(ICON_BLANK734)
|
||||||
|
DEF_ICON(ICON_BLANK735)
|
||||||
|
DEF_ICON(ICON_BLANK736)
|
||||||
|
DEF_ICON(ICON_BLANK737)
|
||||||
|
DEF_ICON(ICON_BLANK738)
|
||||||
|
DEF_ICON(ICON_BLANK739)
|
||||||
|
DEF_ICON(ICON_BLANK740)
|
||||||
|
DEF_ICON(ICON_BLANK741)
|
||||||
|
DEF_ICON(ICON_BLANK742)
|
||||||
|
DEF_ICON(ICON_BLANK743)
|
||||||
|
DEF_ICON(ICON_BLANK744)
|
||||||
|
DEF_ICON(ICON_BLANK745)
|
||||||
|
DEF_ICON(ICON_BLANK746)
|
||||||
|
DEF_ICON(ICON_BLANK747)
|
||||||
|
DEF_ICON(ICON_BLANK748)
|
||||||
|
DEF_ICON(ICON_BLANK749)
|
||||||
|
DEF_ICON(ICON_BLANK750)
|
||||||
|
DEF_ICON(ICON_BLANK751)
|
||||||
|
DEF_ICON(ICON_BLANK752)
|
||||||
|
DEF_ICON(ICON_BLANK753)
|
||||||
|
DEF_ICON(ICON_BLANK754)
|
||||||
|
DEF_ICON(ICON_BLANK755)
|
||||||
|
|
||||||
|
/* EMPTY */
|
||||||
|
DEF_ICON(ICON_BLANK760)
|
||||||
|
DEF_ICON(ICON_BLANK761)
|
||||||
|
DEF_ICON(ICON_BLANK762)
|
||||||
|
DEF_ICON(ICON_BLANK763)
|
||||||
|
DEF_ICON(ICON_BLANK764)
|
||||||
|
DEF_ICON(ICON_BLANK765)
|
||||||
|
DEF_ICON(ICON_BLANK766)
|
||||||
|
DEF_ICON(ICON_BLANK767)
|
||||||
|
DEF_ICON(ICON_BLANK768)
|
||||||
|
DEF_ICON(ICON_BLANK769)
|
||||||
|
DEF_ICON(ICON_BLANK770)
|
||||||
|
DEF_ICON(ICON_BLANK771)
|
||||||
|
DEF_ICON(ICON_BLANK772)
|
||||||
|
DEF_ICON(ICON_BLANK773)
|
||||||
|
DEF_ICON(ICON_BLANK774)
|
||||||
|
DEF_ICON(ICON_BLANK775)
|
||||||
|
DEF_ICON(ICON_BLANK776)
|
||||||
|
DEF_ICON(ICON_BLANK777)
|
||||||
|
DEF_ICON(ICON_BLANK778)
|
||||||
|
DEF_ICON(ICON_BLANK779)
|
||||||
|
DEF_ICON(ICON_BLANK780)
|
||||||
|
DEF_ICON(ICON_BLANK781)
|
||||||
|
DEF_ICON(ICON_BLANK782)
|
||||||
|
DEF_ICON(ICON_BLANK783)
|
||||||
|
DEF_ICON(ICON_BLANK784)
|
||||||
|
DEF_ICON(ICON_BLANK785)
|
||||||
|
|
||||||
|
/* MODIFIERS */
|
||||||
|
DEF_ICON(ICON_MODIFIER)
|
||||||
|
DEF_ICON(ICON_MOD_WAVE)
|
||||||
|
DEF_ICON(ICON_MOD_BUILD)
|
||||||
|
DEF_ICON(ICON_MOD_DECIM)
|
||||||
|
DEF_ICON(ICON_MOD_MIRROR)
|
||||||
|
DEF_ICON(ICON_MOD_SOFT)
|
||||||
|
DEF_ICON(ICON_MOD_SUBSURF)
|
||||||
|
DEF_ICON(ICON_HOOK)
|
||||||
|
DEF_ICON(ICON_MOD_PHYSICS)
|
||||||
|
DEF_ICON(ICON_MOD_PARTICLES)
|
||||||
|
DEF_ICON(ICON_MOD_BOOLEAN)
|
||||||
|
DEF_ICON(ICON_MOD_EDGESPLIT)
|
||||||
|
DEF_ICON(ICON_MOD_ARRAY)
|
||||||
|
DEF_ICON(ICON_MOD_UVPROJECT)
|
||||||
|
DEF_ICON(ICON_MOD_DISPLACE)
|
||||||
|
DEF_ICON(ICON_MOD_CURVE)
|
||||||
|
DEF_ICON(ICON_MOD_LATTICE)
|
||||||
|
DEF_ICON(ICON_BLANK143)
|
||||||
|
DEF_ICON(ICON_MOD_ARMATURE)
|
||||||
|
DEF_ICON(ICON_MOD_SHRINKWRAP)
|
||||||
|
DEF_ICON(ICON_MOD_CAST)
|
||||||
|
DEF_ICON(ICON_MOD_MESHDEFORM)
|
||||||
|
DEF_ICON(ICON_MOD_BEVEL)
|
||||||
|
DEF_ICON(ICON_MOD_SMOOTH)
|
||||||
|
DEF_ICON(ICON_MOD_SIMPLEDEFORM)
|
||||||
|
DEF_ICON(ICON_MOD_MASK)
|
||||||
|
|
||||||
|
/* MODIFIERS */
|
||||||
|
DEF_ICON(ICON_MOD_CLOTH)
|
||||||
|
DEF_ICON(ICON_MOD_EXPLODE)
|
||||||
|
DEF_ICON(ICON_MOD_FLUIDSIM)
|
||||||
|
DEF_ICON(ICON_MOD_MULTIRES)
|
||||||
|
DEF_ICON(ICON_BLANK157)
|
||||||
|
DEF_ICON(ICON_BLANK158)
|
||||||
|
DEF_ICON(ICON_BLANK159)
|
||||||
|
DEF_ICON(ICON_BLANK160)
|
||||||
|
DEF_ICON(ICON_BLANK161)
|
||||||
|
DEF_ICON(ICON_BLANK162)
|
||||||
|
DEF_ICON(ICON_BLANK163)
|
||||||
|
DEF_ICON(ICON_BLANK164)
|
||||||
|
DEF_ICON(ICON_BLANK165)
|
||||||
|
DEF_ICON(ICON_BLANK166)
|
||||||
|
DEF_ICON(ICON_BLANK167)
|
||||||
|
DEF_ICON(ICON_BLANK168)
|
||||||
|
DEF_ICON(ICON_BLANK169)
|
||||||
|
DEF_ICON(ICON_BLANK170)
|
||||||
|
DEF_ICON(ICON_BLANK171)
|
||||||
|
DEF_ICON(ICON_BLANK172)
|
||||||
|
DEF_ICON(ICON_BLANK173)
|
||||||
|
DEF_ICON(ICON_BLANK174)
|
||||||
|
DEF_ICON(ICON_BLANK175)
|
||||||
|
DEF_ICON(ICON_BLANK176)
|
||||||
|
DEF_ICON(ICON_BLANK177)
|
||||||
|
DEF_ICON(ICON_BLANK177b)
|
||||||
|
|
||||||
|
/* ANIMATION */
|
||||||
|
DEF_ICON(ICON_REC)
|
||||||
|
DEF_ICON(ICON_PLAY)
|
||||||
|
DEF_ICON(ICON_FF)
|
||||||
|
DEF_ICON(ICON_REW)
|
||||||
|
DEF_ICON(ICON_PAUSE)
|
||||||
|
DEF_ICON(ICON_PREV_KEYFRAME)
|
||||||
|
DEF_ICON(ICON_NEXT_KEYFRAME)
|
||||||
|
DEF_ICON(ICON_PLAY_AUDIO)
|
||||||
|
DEF_ICON(ICON_BLANK178)
|
||||||
|
DEF_ICON(ICON_BLANK179)
|
||||||
|
DEF_ICON(ICON_BLANK180)
|
||||||
|
DEF_ICON(ICON_PMARKER_ACT)
|
||||||
|
DEF_ICON(ICON_PMARKER_SEL)
|
||||||
|
DEF_ICON(ICON_PMARKER)
|
||||||
|
DEF_ICON(ICON_MARKER_HLT)
|
||||||
|
DEF_ICON(ICON_MARKER)
|
||||||
|
DEF_ICON(ICON_SPACE2) // XXX
|
||||||
|
DEF_ICON(ICON_SPACE3) // XXX
|
||||||
|
DEF_ICON(ICON_BLANK181)
|
||||||
|
DEF_ICON(ICON_KEY_DEHLT)
|
||||||
|
DEF_ICON(ICON_KEY_HLT)
|
||||||
|
DEF_ICON(ICON_MUTE_IPO_OFF)
|
||||||
|
DEF_ICON(ICON_MUTE_IPO_ON)
|
||||||
|
DEF_ICON(ICON_BLANK182)
|
||||||
|
DEF_ICON(ICON_BLANK183)
|
||||||
|
DEF_ICON(ICON_BLANK183b)
|
||||||
|
|
||||||
|
/* available */
|
||||||
|
DEF_ICON(ICON_BLANK184)
|
||||||
|
DEF_ICON(ICON_BLANK185)
|
||||||
|
DEF_ICON(ICON_BLANK186)
|
||||||
|
DEF_ICON(ICON_BLANK187)
|
||||||
|
DEF_ICON(ICON_BLANK188)
|
||||||
|
DEF_ICON(ICON_BLANK189)
|
||||||
|
DEF_ICON(ICON_BLANK190)
|
||||||
|
DEF_ICON(ICON_BLANK191)
|
||||||
|
DEF_ICON(ICON_BLANK192)
|
||||||
|
DEF_ICON(ICON_BLANK193)
|
||||||
|
DEF_ICON(ICON_BLANK194)
|
||||||
|
DEF_ICON(ICON_BLANK195)
|
||||||
|
DEF_ICON(ICON_BLANK196)
|
||||||
|
DEF_ICON(ICON_BLANK197)
|
||||||
|
DEF_ICON(ICON_BLANK198)
|
||||||
|
DEF_ICON(ICON_BLANK199)
|
||||||
|
DEF_ICON(ICON_BLANK200)
|
||||||
|
DEF_ICON(ICON_BLANK201)
|
||||||
|
DEF_ICON(ICON_BLANK202)
|
||||||
|
DEF_ICON(ICON_BLANK203)
|
||||||
|
DEF_ICON(ICON_BLANK204)
|
||||||
|
DEF_ICON(ICON_BLANK205)
|
||||||
|
DEF_ICON(ICON_BLANK206)
|
||||||
|
DEF_ICON(ICON_BLANK207)
|
||||||
|
DEF_ICON(ICON_BLANK208)
|
||||||
|
DEF_ICON(ICON_BLANK208b)
|
||||||
|
|
||||||
|
/* EDITING */
|
||||||
|
DEF_ICON(ICON_VERTEXSEL)
|
||||||
|
DEF_ICON(ICON_EDGESEL)
|
||||||
|
DEF_ICON(ICON_FACESEL)
|
||||||
|
DEF_ICON(ICON_LINKEDSEL)
|
||||||
|
DEF_ICON(ICON_BLANK210)
|
||||||
|
DEF_ICON(ICON_ROTATE)
|
||||||
|
DEF_ICON(ICON_CURSOR)
|
||||||
|
DEF_ICON(ICON_ROTATECOLLECTION)
|
||||||
|
DEF_ICON(ICON_ROTATECENTER)
|
||||||
|
DEF_ICON(ICON_ROTACTIVE)
|
||||||
|
DEF_ICON(ICON_ALIGN)
|
||||||
|
DEF_ICON(ICON_BLANK211)
|
||||||
|
DEF_ICON(ICON_SMOOTHCURVE)
|
||||||
|
DEF_ICON(ICON_SPHERECURVE)
|
||||||
|
DEF_ICON(ICON_ROOTCURVE)
|
||||||
|
DEF_ICON(ICON_SHARPCURVE)
|
||||||
|
DEF_ICON(ICON_LINCURVE)
|
||||||
|
DEF_ICON(ICON_NOCURVE)
|
||||||
|
DEF_ICON(ICON_RNDCURVE)
|
||||||
|
DEF_ICON(ICON_PROP_OFF)
|
||||||
|
DEF_ICON(ICON_PROP_ON)
|
||||||
|
DEF_ICON(ICON_PROP_CON)
|
||||||
|
DEF_ICON(ICON_BLANK212)
|
||||||
|
DEF_ICON(ICON_BLANK213)
|
||||||
|
DEF_ICON(ICON_BLANK214)
|
||||||
|
DEF_ICON(ICON_BLANK214b)
|
||||||
|
|
||||||
|
/* EDITING */
|
||||||
|
DEF_ICON(ICON_MAN_TRANS)
|
||||||
|
DEF_ICON(ICON_MAN_ROT)
|
||||||
|
DEF_ICON(ICON_MAN_SCALE)
|
||||||
|
DEF_ICON(ICON_MANIPUL)
|
||||||
|
DEF_ICON(ICON_BLANK215)
|
||||||
|
DEF_ICON(ICON_SNAP_GEAR)
|
||||||
|
DEF_ICON(ICON_SNAP_GEO)
|
||||||
|
DEF_ICON(ICON_SNAP_NORMAL)
|
||||||
|
DEF_ICON(ICON_SNAP_VERTEX)
|
||||||
|
DEF_ICON(ICON_SNAP_EDGE)
|
||||||
|
DEF_ICON(ICON_SNAP_FACE)
|
||||||
|
DEF_ICON(ICON_SNAP_VOLUME)
|
||||||
|
DEF_ICON(ICON_STICKY_UVS_LOC)
|
||||||
|
DEF_ICON(ICON_STICKY_UVS_DISABLE)
|
||||||
|
DEF_ICON(ICON_STICKY_UVS_VERT)
|
||||||
|
DEF_ICON(ICON_CLIPUV_DEHLT)
|
||||||
|
DEF_ICON(ICON_CLIPUV_HLT)
|
||||||
|
DEF_ICON(ICON_BLANK219)
|
||||||
|
DEF_ICON(ICON_SNAP_PEEL_OBJECT)
|
||||||
|
DEF_ICON(ICON_BLANK221)
|
||||||
|
DEF_ICON(ICON_GRID)
|
||||||
|
DEF_ICON(ICON_GEARS)
|
||||||
|
DEF_ICON(ICON_BLANK224)
|
||||||
|
DEF_ICON(ICON_BLANK225)
|
||||||
|
DEF_ICON(ICON_BLANK226)
|
||||||
|
DEF_ICON(ICON_BLANK226b)
|
||||||
|
|
||||||
|
/* EDITING */
|
||||||
|
DEF_ICON(ICON_PASTEDOWN)
|
||||||
|
DEF_ICON(ICON_COPYDOWN)
|
||||||
|
DEF_ICON(ICON_PASTEFLIPUP)
|
||||||
|
DEF_ICON(ICON_PASTEFLIPDOWN)
|
||||||
|
DEF_ICON(ICON_BLANK227)
|
||||||
|
DEF_ICON(ICON_BLANK228)
|
||||||
|
DEF_ICON(ICON_BLANK229)
|
||||||
|
DEF_ICON(ICON_BLANK230)
|
||||||
|
DEF_ICON(ICON_BLANK231)
|
||||||
|
DEF_ICON(ICON_BLANK232)
|
||||||
|
DEF_ICON(ICON_BLANK233)
|
||||||
|
DEF_ICON(ICON_BLANK234)
|
||||||
|
DEF_ICON(ICON_BLANK235)
|
||||||
|
DEF_ICON(ICON_BLANK236)
|
||||||
|
DEF_ICON(ICON_BLANK237)
|
||||||
|
DEF_ICON(ICON_BLANK238)
|
||||||
|
DEF_ICON(ICON_BLANK239)
|
||||||
|
DEF_ICON(ICON_BLANK240)
|
||||||
|
DEF_ICON(ICON_BLANK241)
|
||||||
|
DEF_ICON(ICON_BLANK242)
|
||||||
|
DEF_ICON(ICON_BLANK243)
|
||||||
|
DEF_ICON(ICON_BLANK244)
|
||||||
|
DEF_ICON(ICON_BLANK245)
|
||||||
|
DEF_ICON(ICON_BLANK246)
|
||||||
|
DEF_ICON(ICON_BLANK247)
|
||||||
|
DEF_ICON(ICON_BLANK247b)
|
||||||
|
|
||||||
|
/* 3D VIEW */
|
||||||
|
DEF_ICON(ICON_BBOX)
|
||||||
|
DEF_ICON(ICON_WIRE)
|
||||||
|
DEF_ICON(ICON_SOLID)
|
||||||
|
DEF_ICON(ICON_SMOOTH)
|
||||||
|
DEF_ICON(ICON_POTATO)
|
||||||
|
DEF_ICON(ICON_BLANK248)
|
||||||
|
DEF_ICON(ICON_ORTHO)
|
||||||
|
DEF_ICON(ICON_BLANK249)
|
||||||
|
DEF_ICON(ICON_CAMERA)
|
||||||
|
DEF_ICON(ICON_LOCKVIEW_OFF)
|
||||||
|
DEF_ICON(ICON_LOCKVIEW_ON)
|
||||||
|
DEF_ICON(ICON_BLANK250)
|
||||||
|
DEF_ICON(ICON_AXIS_SIDE)
|
||||||
|
DEF_ICON(ICON_AXIS_FRONT)
|
||||||
|
DEF_ICON(ICON_AXIS_TOP)
|
||||||
|
DEF_ICON(ICON_NDOF_DOM)
|
||||||
|
DEF_ICON(ICON_NDOF_TURN)
|
||||||
|
DEF_ICON(ICON_NDOF_FLY)
|
||||||
|
DEF_ICON(ICON_NDOF_TRANS)
|
||||||
|
DEF_ICON(ICON_LAYER_USED)
|
||||||
|
DEF_ICON(ICON_LAYER_ACTIVE)
|
||||||
|
DEF_ICON(ICON_BLANK254)
|
||||||
|
DEF_ICON(ICON_BLANK255)
|
||||||
|
DEF_ICON(ICON_BLANK256)
|
||||||
|
DEF_ICON(ICON_BLANK257)
|
||||||
|
DEF_ICON(ICON_BLANK257b)
|
||||||
|
|
||||||
|
/* available */
|
||||||
|
DEF_ICON(ICON_BLANK258)
|
||||||
|
DEF_ICON(ICON_BLANK259)
|
||||||
|
DEF_ICON(ICON_BLANK260)
|
||||||
|
DEF_ICON(ICON_BLANK261)
|
||||||
|
DEF_ICON(ICON_BLANK262)
|
||||||
|
DEF_ICON(ICON_BLANK263)
|
||||||
|
DEF_ICON(ICON_BLANK264)
|
||||||
|
DEF_ICON(ICON_BLANK265)
|
||||||
|
DEF_ICON(ICON_BLANK266)
|
||||||
|
DEF_ICON(ICON_BLANK267)
|
||||||
|
DEF_ICON(ICON_BLANK268)
|
||||||
|
DEF_ICON(ICON_BLANK269)
|
||||||
|
DEF_ICON(ICON_BLANK270)
|
||||||
|
DEF_ICON(ICON_BLANK271)
|
||||||
|
DEF_ICON(ICON_BLANK272)
|
||||||
|
DEF_ICON(ICON_BLANK273)
|
||||||
|
DEF_ICON(ICON_BLANK274)
|
||||||
|
DEF_ICON(ICON_BLANK275)
|
||||||
|
DEF_ICON(ICON_BLANK276)
|
||||||
|
DEF_ICON(ICON_BLANK277)
|
||||||
|
DEF_ICON(ICON_BLANK278)
|
||||||
|
DEF_ICON(ICON_BLANK279)
|
||||||
|
DEF_ICON(ICON_BLANK280)
|
||||||
|
DEF_ICON(ICON_BLANK281)
|
||||||
|
DEF_ICON(ICON_BLANK282)
|
||||||
|
DEF_ICON(ICON_BLANK282b)
|
||||||
|
|
||||||
|
/* FILE SELECT */
|
||||||
|
DEF_ICON(ICON_SORTALPHA)
|
||||||
|
DEF_ICON(ICON_SORTBYEXT)
|
||||||
|
DEF_ICON(ICON_SORTTIME)
|
||||||
|
DEF_ICON(ICON_SORTSIZE)
|
||||||
|
DEF_ICON(ICON_LONGDISPLAY)
|
||||||
|
DEF_ICON(ICON_SHORTDISPLAY)
|
||||||
|
DEF_ICON(ICON_GHOST)
|
||||||
|
DEF_ICON(ICON_IMGDISPLAY)
|
||||||
|
DEF_ICON(ICON_BLANK284)
|
||||||
|
DEF_ICON(ICON_BLANK285)
|
||||||
|
DEF_ICON(ICON_BOOKMARKS)
|
||||||
|
DEF_ICON(ICON_FONTPREVIEW)
|
||||||
|
DEF_ICON(ICON_FILTER)
|
||||||
|
DEF_ICON(ICON_NEWFOLDER)
|
||||||
|
DEF_ICON(ICON_BLANK285F)
|
||||||
|
DEF_ICON(ICON_FILE_PARENT)
|
||||||
|
DEF_ICON(ICON_FILE_REFRESH)
|
||||||
|
DEF_ICON(ICON_FILE_FOLDER)
|
||||||
|
DEF_ICON(ICON_FILE_BLANK)
|
||||||
|
DEF_ICON(ICON_FILE_BLEND)
|
||||||
|
DEF_ICON(ICON_FILE_IMAGE)
|
||||||
|
DEF_ICON(ICON_FILE_MOVIE)
|
||||||
|
DEF_ICON(ICON_FILE_SCRIPT)
|
||||||
|
DEF_ICON(ICON_FILE_SOUND)
|
||||||
|
DEF_ICON(ICON_FILE_FONT)
|
||||||
|
DEF_ICON(ICON_BLANK291b)
|
||||||
|
|
||||||
|
/* available */
|
||||||
|
DEF_ICON(ICON_BLANK292)
|
||||||
|
DEF_ICON(ICON_BLANK293)
|
||||||
|
DEF_ICON(ICON_BLANK294)
|
||||||
|
DEF_ICON(ICON_BLANK295)
|
||||||
|
DEF_ICON(ICON_BLANK296)
|
||||||
|
DEF_ICON(ICON_BLANK297)
|
||||||
|
DEF_ICON(ICON_BLANK298)
|
||||||
|
DEF_ICON(ICON_BLANK299)
|
||||||
|
DEF_ICON(ICON_BLANK300)
|
||||||
|
DEF_ICON(ICON_BLANK301)
|
||||||
|
DEF_ICON(ICON_BLANK302)
|
||||||
|
DEF_ICON(ICON_BLANK303)
|
||||||
|
DEF_ICON(ICON_BLANK304)
|
||||||
|
DEF_ICON(ICON_BLANK305)
|
||||||
|
DEF_ICON(ICON_BLANK306)
|
||||||
|
DEF_ICON(ICON_BLANK307)
|
||||||
|
DEF_ICON(ICON_BLANK308)
|
||||||
|
DEF_ICON(ICON_BLANK309)
|
||||||
|
DEF_ICON(ICON_BLANK310)
|
||||||
|
DEF_ICON(ICON_BLANK311)
|
||||||
|
DEF_ICON(ICON_BLANK312)
|
||||||
|
DEF_ICON(ICON_BLANK313)
|
||||||
|
DEF_ICON(ICON_BLANK314)
|
||||||
|
DEF_ICON(ICON_BLANK315)
|
||||||
|
DEF_ICON(ICON_BLANK316)
|
||||||
|
DEF_ICON(ICON_DISK_DRIVE)
|
||||||
|
|
||||||
|
/* SHADING / TEXT */
|
||||||
|
DEF_ICON(ICON_MATPLANE)
|
||||||
|
DEF_ICON(ICON_MATSPHERE)
|
||||||
|
DEF_ICON(ICON_MATCUBE)
|
||||||
|
DEF_ICON(ICON_MONKEY)
|
||||||
|
DEF_ICON(ICON_HAIR)
|
||||||
|
DEF_ICON(ICON_RING)
|
||||||
|
DEF_ICON(ICON_BLANK317)
|
||||||
|
DEF_ICON(ICON_BLANK318)
|
||||||
|
DEF_ICON(ICON_BLANK319)
|
||||||
|
DEF_ICON(ICON_BLANK320)
|
||||||
|
DEF_ICON(ICON_BLANK321)
|
||||||
|
DEF_ICON(ICON_BLANK322)
|
||||||
|
DEF_ICON(ICON_WORDWRAP_OFF)
|
||||||
|
DEF_ICON(ICON_WORDWRAP_ON)
|
||||||
|
DEF_ICON(ICON_SYNTAX_OFF)
|
||||||
|
DEF_ICON(ICON_SYNTAX_ON)
|
||||||
|
DEF_ICON(ICON_LINENUMBERS_OFF)
|
||||||
|
DEF_ICON(ICON_LINENUMBERS_ON)
|
||||||
|
DEF_ICON(ICON_SCRIPTPLUGINS) // XXX CREATE NEW
|
||||||
|
DEF_ICON(ICON_BLANK323)
|
||||||
|
DEF_ICON(ICON_BLANK324)
|
||||||
|
DEF_ICON(ICON_BLANK325)
|
||||||
|
DEF_ICON(ICON_BLANK326)
|
||||||
|
DEF_ICON(ICON_BLANK327)
|
||||||
|
DEF_ICON(ICON_BLANK328)
|
||||||
|
DEF_ICON(ICON_BLANK328b)
|
||||||
|
|
||||||
|
/* SEQUENCE / IMAGE EDITOR */
|
||||||
|
DEF_ICON(ICON_SEQ_SEQUENCER)
|
||||||
|
DEF_ICON(ICON_SEQ_PREVIEW)
|
||||||
|
DEF_ICON(ICON_SEQ_LUMA_WAVEFORM)
|
||||||
|
DEF_ICON(ICON_SEQ_CHROMA_SCOPE)
|
||||||
|
DEF_ICON(ICON_SEQ_HISTOGRAM)
|
||||||
|
DEF_ICON(ICON_BLANK330)
|
||||||
|
DEF_ICON(ICON_BLANK331)
|
||||||
|
DEF_ICON(ICON_BLANK332)
|
||||||
|
DEF_ICON(ICON_BLANK333)
|
||||||
|
DEF_ICON(ICON_IMAGE_RGB) // XXX CHANGE TO STRAIGHT ALPHA, Z ETC
|
||||||
|
DEF_ICON(ICON_IMAGE_RGB_ALPHA)
|
||||||
|
DEF_ICON(ICON_IMAGE_ALPHA)
|
||||||
|
DEF_ICON(ICON_IMAGE_ZDEPTH)
|
||||||
|
DEF_ICON(ICON_IMAGEFILE)
|
||||||
|
DEF_ICON(ICON_BLANK336)
|
||||||
|
DEF_ICON(ICON_BLANK337)
|
||||||
|
DEF_ICON(ICON_BLANK338)
|
||||||
|
DEF_ICON(ICON_BLANK339)
|
||||||
|
DEF_ICON(ICON_BLANK340)
|
||||||
|
DEF_ICON(ICON_BLANK341)
|
||||||
|
DEF_ICON(ICON_BLANK342)
|
||||||
|
DEF_ICON(ICON_BLANK343)
|
||||||
|
DEF_ICON(ICON_BLANK344)
|
||||||
|
DEF_ICON(ICON_BLANK345)
|
||||||
|
DEF_ICON(ICON_BLANK346)
|
||||||
|
DEF_ICON(ICON_BLANK346b)
|
||||||
|
|
||||||
|
/* vector icons */
|
||||||
|
|
||||||
|
DEF_ICON(VICON_VIEW3D)
|
||||||
|
DEF_ICON(VICON_EDIT)
|
||||||
|
DEF_ICON(VICON_EDITMODE_DEHLT)
|
||||||
|
DEF_ICON(VICON_EDITMODE_HLT)
|
||||||
|
DEF_ICON(VICON_DISCLOSURE_TRI_RIGHT)
|
||||||
|
DEF_ICON(VICON_DISCLOSURE_TRI_DOWN)
|
||||||
|
DEF_ICON(VICON_MOVE_UP)
|
||||||
|
DEF_ICON(VICON_MOVE_DOWN)
|
||||||
|
DEF_ICON(VICON_X)
|
@ -491,7 +491,7 @@ void autocomplete_end(AutoComplete *autocpl, char *autoname);
|
|||||||
void uiBeginPanels(const struct bContext *C, struct ARegion *ar);
|
void uiBeginPanels(const struct bContext *C, struct ARegion *ar);
|
||||||
void uiEndPanels(const struct bContext *C, struct ARegion *ar);
|
void uiEndPanels(const struct bContext *C, struct ARegion *ar);
|
||||||
|
|
||||||
struct Panel *uiBeginPanel(struct ARegion *ar, uiBlock *block, struct PanelType *pt, int *open);
|
struct Panel *uiBeginPanel(struct ScrArea *sa, struct ARegion *ar, uiBlock *block, struct PanelType *pt, int *open);
|
||||||
void uiEndPanel(uiBlock *block, int width, int height);
|
void uiEndPanel(uiBlock *block, int width, int height);
|
||||||
|
|
||||||
/* Handlers
|
/* Handlers
|
||||||
@ -539,8 +539,6 @@ void UI_exit(void);
|
|||||||
|
|
||||||
uiBut *uiDefMenuButO(uiBlock *block, char *opname, char *name);
|
uiBut *uiDefMenuButO(uiBlock *block, char *opname, char *name);
|
||||||
uiBut *uiDefMenuSep(uiBlock *block);
|
uiBut *uiDefMenuSep(uiBlock *block);
|
||||||
uiBut *uiDefMenuSub(uiBlock *block, uiBlockCreateFunc func, char *name);
|
|
||||||
uiBut *uiDefMenuTogR(uiBlock *block, struct PointerRNA *ptr, char *propname, char *propvalue, char *name);
|
|
||||||
|
|
||||||
/* Layout
|
/* Layout
|
||||||
*
|
*
|
||||||
|
@ -35,864 +35,16 @@
|
|||||||
|
|
||||||
/* elubie: TODO: move the typedef for icons to UI_interface_icons.h */
|
/* elubie: TODO: move the typedef for icons to UI_interface_icons.h */
|
||||||
/* and add/replace include of UI_resources.h by UI_interface_icons.h */
|
/* and add/replace include of UI_resources.h by UI_interface_icons.h */
|
||||||
|
#define DEF_ICON(name) name,
|
||||||
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
#define BIFICONID_FIRST (ICON_BLENDER)
|
#define BIFICONID_FIRST (ICON_BLENDER)
|
||||||
/* ui */
|
/* ui */
|
||||||
ICON_BLENDER,
|
#include "UI_icons.h"
|
||||||
ICON_QUESTION,
|
BIFICONID_LAST
|
||||||
ICON_ERROR,
|
|
||||||
ICON_BLANK1, // XXX this is used lots, it's not actually 'blank'
|
|
||||||
ICON_TRIA_RIGHT,
|
|
||||||
ICON_TRIA_DOWN,
|
|
||||||
ICON_TRIA_LEFT,
|
|
||||||
ICON_TRIA_UP,
|
|
||||||
ICON_ARROW_LEFTRIGHT,
|
|
||||||
ICON_PLUS,
|
|
||||||
ICON_DISCLOSURE_TRI_DOWN,
|
|
||||||
ICON_DISCLOSURE_TRI_RIGHT,
|
|
||||||
ICON_RADIOBUT_OFF,
|
|
||||||
ICON_RADIOBUT_ON,
|
|
||||||
ICON_MENU_PANEL,
|
|
||||||
ICON_PYTHON,
|
|
||||||
ICON_BLANK003,
|
|
||||||
ICON_DOT,
|
|
||||||
ICON_BLANK004,
|
|
||||||
ICON_X,
|
|
||||||
ICON_BLANK005,
|
|
||||||
ICON_GO_LEFT,
|
|
||||||
ICON_BLANK006,
|
|
||||||
ICON_BLANK007,
|
|
||||||
ICON_BLANK008,
|
|
||||||
ICON_BLANK008b,
|
|
||||||
|
|
||||||
/* ui */
|
|
||||||
ICON_FULLSCREEN,
|
|
||||||
ICON_SPLITSCREEN,
|
|
||||||
ICON_RIGHTARROW_THIN,
|
|
||||||
ICON_BORDERMOVE,
|
|
||||||
ICON_VIEWZOOM,
|
|
||||||
ICON_ZOOMIN,
|
|
||||||
ICON_ZOOMOUT,
|
|
||||||
ICON_PANEL_CLOSE,
|
|
||||||
ICON_BLANK009,
|
|
||||||
ICON_EYEDROPPER,
|
|
||||||
ICON_BLANK010,
|
|
||||||
ICON_AUTO,
|
|
||||||
ICON_CHECKBOX_DEHLT,
|
|
||||||
ICON_CHECKBOX_HLT,
|
|
||||||
ICON_UNLOCKED,
|
|
||||||
ICON_LOCKED,
|
|
||||||
ICON_PINNED,
|
|
||||||
ICON_UNPINNED,
|
|
||||||
ICON_BLANK015,
|
|
||||||
ICON_RIGHTARROW,
|
|
||||||
ICON_DOWNARROW_HLT,
|
|
||||||
ICON_DOTSUP,
|
|
||||||
ICON_DOTSDOWN,
|
|
||||||
ICON_LINK,
|
|
||||||
ICON_INLINK,
|
|
||||||
ICON_BLANK012b,
|
|
||||||
|
|
||||||
/* various ui */
|
|
||||||
ICON_HELP,
|
|
||||||
ICON_GHOSTDRAW,
|
|
||||||
ICON_COLOR,
|
|
||||||
ICON_LINKED,
|
|
||||||
ICON_UNLINKED,
|
|
||||||
ICON_HAND,
|
|
||||||
ICON_ZOOM_ALL,
|
|
||||||
ICON_ZOOM_SELECTED,
|
|
||||||
ICON_ZOOM_PREVIOUS,
|
|
||||||
ICON_ZOOM_IN,
|
|
||||||
ICON_ZOOM_OUT,
|
|
||||||
ICON_RENDER_REGION,
|
|
||||||
ICON_BORDER_RECT,
|
|
||||||
ICON_BORDER_LASSO,
|
|
||||||
ICON_FREEZE,
|
|
||||||
ICON_BLANK031,
|
|
||||||
ICON_BLANK032,
|
|
||||||
ICON_BLANK033,
|
|
||||||
ICON_BLANK034,
|
|
||||||
ICON_BLANK035,
|
|
||||||
ICON_BLANK036,
|
|
||||||
ICON_BLANK037,
|
|
||||||
ICON_BLANK038,
|
|
||||||
ICON_BLANK039,
|
|
||||||
ICON_BLANK040,
|
|
||||||
ICON_BLANK040b,
|
|
||||||
|
|
||||||
/* BUTTONS */
|
|
||||||
ICON_LAMP,
|
|
||||||
ICON_MATERIAL,
|
|
||||||
ICON_TEXTURE,
|
|
||||||
ICON_ANIM,
|
|
||||||
ICON_WORLD,
|
|
||||||
ICON_SCENE,
|
|
||||||
ICON_EDIT,
|
|
||||||
ICON_GAME,
|
|
||||||
ICON_RADIO,
|
|
||||||
ICON_SCRIPT,
|
|
||||||
ICON_PARTICLES,
|
|
||||||
ICON_PHYSICS,
|
|
||||||
ICON_SPEAKER,
|
|
||||||
ICON_BLANK041,
|
|
||||||
ICON_BLANK042,
|
|
||||||
ICON_BLANK043,
|
|
||||||
ICON_BLANK044,
|
|
||||||
ICON_BLANK045,
|
|
||||||
ICON_BLANK046,
|
|
||||||
ICON_BLANK047,
|
|
||||||
ICON_BLANK048,
|
|
||||||
ICON_BLANK049,
|
|
||||||
ICON_BLANK050,
|
|
||||||
ICON_BLANK051,
|
|
||||||
ICON_BLANK052,
|
|
||||||
ICON_BLANK052b,
|
|
||||||
|
|
||||||
/* EDITORS */
|
|
||||||
ICON_VIEW3D,
|
|
||||||
ICON_IPO,
|
|
||||||
ICON_OOPS,
|
|
||||||
ICON_BUTS,
|
|
||||||
ICON_FILESEL,
|
|
||||||
ICON_IMAGE_COL,
|
|
||||||
ICON_INFO,
|
|
||||||
ICON_SEQUENCE,
|
|
||||||
ICON_TEXT,
|
|
||||||
ICON_IMASEL,
|
|
||||||
ICON_SOUND,
|
|
||||||
ICON_ACTION,
|
|
||||||
ICON_NLA,
|
|
||||||
ICON_SCRIPTWIN,
|
|
||||||
ICON_TIME,
|
|
||||||
ICON_NODE,
|
|
||||||
ICON_BLANK053,
|
|
||||||
ICON_BLANK054,
|
|
||||||
ICON_BLANK055,
|
|
||||||
ICON_BLANK056,
|
|
||||||
ICON_BLANK057,
|
|
||||||
ICON_BLANK058,
|
|
||||||
ICON_BLANK059,
|
|
||||||
ICON_BLANK060,
|
|
||||||
ICON_BLANK061,
|
|
||||||
ICON_BLANK061b,
|
|
||||||
|
|
||||||
/* MODES */
|
|
||||||
ICON_OBJECT_DATAMODE, // XXX fix this up
|
|
||||||
ICON_EDITMODE_HLT,
|
|
||||||
ICON_FACESEL_HLT,
|
|
||||||
ICON_VPAINT_HLT,
|
|
||||||
ICON_TPAINT_HLT,
|
|
||||||
ICON_WPAINT_HLT,
|
|
||||||
ICON_SCULPTMODE_HLT,
|
|
||||||
ICON_POSE_HLT,
|
|
||||||
ICON_PARTICLEMODE,
|
|
||||||
ICON_BLANK062,
|
|
||||||
ICON_BLANK063,
|
|
||||||
ICON_BLANK064,
|
|
||||||
ICON_BLANK065,
|
|
||||||
ICON_BLANK066,
|
|
||||||
ICON_BLANK067,
|
|
||||||
ICON_BLANK068,
|
|
||||||
ICON_BLANK069,
|
|
||||||
ICON_BLANK070,
|
|
||||||
ICON_BLANK071,
|
|
||||||
ICON_BLANK072,
|
|
||||||
ICON_BLANK073,
|
|
||||||
ICON_BLANK074,
|
|
||||||
ICON_BLANK075,
|
|
||||||
ICON_BLANK076,
|
|
||||||
ICON_BLANK077,
|
|
||||||
ICON_BLANK077b,
|
|
||||||
|
|
||||||
/* DATA */
|
|
||||||
ICON_SCENE_DATA,
|
|
||||||
ICON_RENDERLAYERS,
|
|
||||||
ICON_WORLD_DATA,
|
|
||||||
ICON_OBJECT_DATA,
|
|
||||||
ICON_MESH_DATA,
|
|
||||||
ICON_CURVE_DATA,
|
|
||||||
ICON_META_DATA,
|
|
||||||
ICON_LATTICE_DATA,
|
|
||||||
ICON_LAMP_DATA,
|
|
||||||
ICON_MATERIAL_DATA,
|
|
||||||
ICON_TEXTURE_DATA,
|
|
||||||
ICON_ANIM_DATA,
|
|
||||||
ICON_CAMERA_DATA,
|
|
||||||
ICON_PARTICLE_DATA,
|
|
||||||
ICON_LIBRARY_DATA_DIRECT,
|
|
||||||
ICON_GROUP,
|
|
||||||
ICON_ARMATURE_DATA,
|
|
||||||
ICON_POSE_DATA,
|
|
||||||
ICON_BONE_DATA,
|
|
||||||
ICON_CONSTRAINT,
|
|
||||||
ICON_SHAPEKEY_DATA,
|
|
||||||
ICON_BLANK079a,
|
|
||||||
ICON_BLANK079,
|
|
||||||
ICON_PACKAGE,
|
|
||||||
ICON_UGLYPACKAGE,
|
|
||||||
ICON_BLANK079b,
|
|
||||||
|
|
||||||
/* DATA */
|
|
||||||
ICON_BRUSH_DATA,
|
|
||||||
ICON_IMAGE_DATA,
|
|
||||||
ICON_FILE,
|
|
||||||
ICON_FCURVE,
|
|
||||||
ICON_FONT_DATA,
|
|
||||||
ICON_RENDER_RESULT,
|
|
||||||
ICON_SURFACE_DATA,
|
|
||||||
ICON_EMPTY_DATA,
|
|
||||||
ICON_SETTINGS,
|
|
||||||
ICON_BLANK080D,
|
|
||||||
ICON_BLANK080E,
|
|
||||||
ICON_BLANK080F,
|
|
||||||
ICON_BLANK080,
|
|
||||||
ICON_STRANDS,
|
|
||||||
ICON_LIBRARY_DATA_INDIRECT,
|
|
||||||
ICON_BLANK082,
|
|
||||||
ICON_BLANK083,
|
|
||||||
ICON_BLANK084,
|
|
||||||
ICON_GROUP_BONE,
|
|
||||||
ICON_GROUP_VERTEX,
|
|
||||||
ICON_GROUP_VCOL,
|
|
||||||
ICON_GROUP_UVS,
|
|
||||||
ICON_BLANK089,
|
|
||||||
ICON_BLANK090,
|
|
||||||
ICON_RNA,
|
|
||||||
ICON_BLANK090b,
|
|
||||||
|
|
||||||
/* available */
|
|
||||||
ICON_BLANK092,
|
|
||||||
ICON_BLANK093,
|
|
||||||
ICON_BLANK094,
|
|
||||||
ICON_BLANK095,
|
|
||||||
ICON_BLANK096,
|
|
||||||
ICON_BLANK097,
|
|
||||||
ICON_BLANK098,
|
|
||||||
ICON_BLANK099,
|
|
||||||
ICON_BLANK100,
|
|
||||||
ICON_BLANK101,
|
|
||||||
ICON_BLANK102,
|
|
||||||
ICON_BLANK103,
|
|
||||||
ICON_BLANK104,
|
|
||||||
ICON_BLANK105,
|
|
||||||
ICON_BLANK106,
|
|
||||||
ICON_BLANK107,
|
|
||||||
ICON_BLANK108,
|
|
||||||
ICON_BLANK109,
|
|
||||||
ICON_BLANK110,
|
|
||||||
ICON_BLANK111,
|
|
||||||
ICON_BLANK112,
|
|
||||||
ICON_BLANK113,
|
|
||||||
ICON_BLANK114,
|
|
||||||
ICON_BLANK115,
|
|
||||||
ICON_BLANK116,
|
|
||||||
ICON_BLANK116b,
|
|
||||||
|
|
||||||
/* OUTLINER */
|
|
||||||
ICON_OUTLINER_OB_EMPTY,
|
|
||||||
ICON_OUTLINER_OB_MESH,
|
|
||||||
ICON_OUTLINER_OB_CURVE,
|
|
||||||
ICON_OUTLINER_OB_LATTICE,
|
|
||||||
ICON_OUTLINER_OB_META,
|
|
||||||
ICON_OUTLINER_OB_LAMP,
|
|
||||||
ICON_OUTLINER_OB_CAMERA,
|
|
||||||
ICON_OUTLINER_OB_ARMATURE,
|
|
||||||
ICON_OUTLINER_OB_FONT,
|
|
||||||
ICON_OUTLINER_OB_SURFACE,
|
|
||||||
ICON_BLANK119,
|
|
||||||
ICON_BLANK120,
|
|
||||||
ICON_BLANK121,
|
|
||||||
ICON_BLANK122,
|
|
||||||
ICON_BLANK123,
|
|
||||||
ICON_BLANK124,
|
|
||||||
ICON_BLANK125,
|
|
||||||
ICON_BLANK126,
|
|
||||||
ICON_BLANK127,
|
|
||||||
ICON_RESTRICT_VIEW_OFF,
|
|
||||||
ICON_RESTRICT_VIEW_ON,
|
|
||||||
ICON_RESTRICT_SELECT_OFF,
|
|
||||||
ICON_RESTRICT_SELECT_ON,
|
|
||||||
ICON_RESTRICT_RENDER_OFF,
|
|
||||||
ICON_RESTRICT_RENDER_ON,
|
|
||||||
ICON_BLANK127b,
|
|
||||||
|
|
||||||
/* OUTLINER */
|
|
||||||
ICON_OUTLINER_DATA_EMPTY,
|
|
||||||
ICON_OUTLINER_DATA_MESH,
|
|
||||||
ICON_OUTLINER_DATA_CURVE,
|
|
||||||
ICON_OUTLINER_DATA_LATTICE,
|
|
||||||
ICON_OUTLINER_DATA_META,
|
|
||||||
ICON_OUTLINER_DATA_LAMP,
|
|
||||||
ICON_OUTLINER_DATA_CAMERA,
|
|
||||||
ICON_OUTLINER_DATA_ARMATURE,
|
|
||||||
ICON_OUTLINER_DATA_FONT,
|
|
||||||
ICON_OUTLINER_DATA_SURFACE,
|
|
||||||
ICON_OUTLINER_DATA_POSE,
|
|
||||||
ICON_BLANK129,
|
|
||||||
ICON_BLANK130,
|
|
||||||
ICON_BLANK131,
|
|
||||||
ICON_BLANK132,
|
|
||||||
ICON_BLANK133,
|
|
||||||
ICON_BLANK134,
|
|
||||||
ICON_BLANK135,
|
|
||||||
ICON_BLANK136,
|
|
||||||
ICON_BLANK137,
|
|
||||||
ICON_BLANK138,
|
|
||||||
ICON_BLANK139,
|
|
||||||
ICON_BLANK140,
|
|
||||||
ICON_BLANK141,
|
|
||||||
ICON_BLANK142,
|
|
||||||
ICON_BLANK142b,
|
|
||||||
|
|
||||||
/* PRIMITIVES */
|
|
||||||
ICON_MESH_PLANE,
|
|
||||||
ICON_MESH_CUBE,
|
|
||||||
ICON_MESH_CIRCLE,
|
|
||||||
ICON_MESH_UVSPHERE,
|
|
||||||
ICON_MESH_ICOSPHERE,
|
|
||||||
ICON_MESH_GRID,
|
|
||||||
ICON_MESH_MONKEY,
|
|
||||||
ICON_MESH_TUBE,
|
|
||||||
ICON_MESH_DONUT,
|
|
||||||
ICON_MESH_CONE,
|
|
||||||
ICON_BLANK610,
|
|
||||||
ICON_BLANK611,
|
|
||||||
ICON_LAMP_POINT,
|
|
||||||
ICON_LAMP_SUN,
|
|
||||||
ICON_LAMP_SPOT,
|
|
||||||
ICON_LAMP_HEMI,
|
|
||||||
ICON_LAMP_AREA,
|
|
||||||
ICON_BLANK617,
|
|
||||||
ICON_BLANK618,
|
|
||||||
ICON_BLANK619,
|
|
||||||
ICON_META_PLANE,
|
|
||||||
ICON_META_CUBE,
|
|
||||||
ICON_META_BALL,
|
|
||||||
ICON_META_ELLIPSOID,
|
|
||||||
ICON_META_TUBE,
|
|
||||||
ICON_BLANK625,
|
|
||||||
|
|
||||||
/* PRIMITIVES */
|
|
||||||
ICON_SURFACE_NCURVE,
|
|
||||||
ICON_SURFACE_NCIRCLE,
|
|
||||||
ICON_SURFACE_NSURFACE,
|
|
||||||
ICON_SURFACE_NTUBE,
|
|
||||||
ICON_SURFACE_NSPHERE,
|
|
||||||
ICON_SURFACE_NDONUT,
|
|
||||||
ICON_BLANK636,
|
|
||||||
ICON_BLANK637,
|
|
||||||
ICON_BLANK638,
|
|
||||||
ICON_CURVE_BEZCURVE,
|
|
||||||
ICON_CURVE_BEZCIRCLE,
|
|
||||||
ICON_CURVE_NCURVE,
|
|
||||||
ICON_CURVE_NCIRCLE,
|
|
||||||
ICON_CURVE_PATH,
|
|
||||||
ICON_BLANK644,
|
|
||||||
ICON_BLANK645,
|
|
||||||
ICON_BLANK646,
|
|
||||||
ICON_BLANK647,
|
|
||||||
ICON_BLANK648,
|
|
||||||
ICON_BLANK649,
|
|
||||||
ICON_BLANK650,
|
|
||||||
ICON_BLANK651,
|
|
||||||
ICON_BLANK652,
|
|
||||||
ICON_BLANK653,
|
|
||||||
ICON_BLANK654,
|
|
||||||
ICON_BLANK655,
|
|
||||||
|
|
||||||
/* EMPTY */
|
|
||||||
ICON_BLANK660,
|
|
||||||
ICON_BLANK661,
|
|
||||||
ICON_BLANK662,
|
|
||||||
ICON_BLANK663,
|
|
||||||
ICON_BLANK664,
|
|
||||||
ICON_BLANK665,
|
|
||||||
ICON_BLANK666,
|
|
||||||
ICON_BLANK667,
|
|
||||||
ICON_BLANK668,
|
|
||||||
ICON_BLANK669,
|
|
||||||
ICON_BLANK670,
|
|
||||||
ICON_BLANK671,
|
|
||||||
ICON_BLANK672,
|
|
||||||
ICON_BLANK673,
|
|
||||||
ICON_BLANK674,
|
|
||||||
ICON_BLANK675,
|
|
||||||
ICON_BLANK676,
|
|
||||||
ICON_BLANK677,
|
|
||||||
ICON_BLANK678,
|
|
||||||
ICON_BLANK679,
|
|
||||||
ICON_BLANK680,
|
|
||||||
ICON_BLANK681,
|
|
||||||
ICON_BLANK682,
|
|
||||||
ICON_BLANK683,
|
|
||||||
ICON_BLANK684,
|
|
||||||
ICON_BLANK685,
|
|
||||||
|
|
||||||
/* EMPTY */
|
|
||||||
ICON_BLANK690,
|
|
||||||
ICON_BLANK691,
|
|
||||||
ICON_BLANK692,
|
|
||||||
ICON_BLANK693,
|
|
||||||
ICON_BLANK694,
|
|
||||||
ICON_BLANK695,
|
|
||||||
ICON_BLANK696,
|
|
||||||
ICON_BLANK697,
|
|
||||||
ICON_BLANK698,
|
|
||||||
ICON_BLANK699,
|
|
||||||
ICON_BLANK700,
|
|
||||||
ICON_BLANK701,
|
|
||||||
ICON_BLANK702,
|
|
||||||
ICON_BLANK703,
|
|
||||||
ICON_BLANK704,
|
|
||||||
ICON_BLANK705,
|
|
||||||
ICON_BLANK706,
|
|
||||||
ICON_BLANK707,
|
|
||||||
ICON_BLANK708,
|
|
||||||
ICON_BLANK709,
|
|
||||||
ICON_BLANK710,
|
|
||||||
ICON_BLANK711,
|
|
||||||
ICON_BLANK712,
|
|
||||||
ICON_BLANK713,
|
|
||||||
ICON_BLANK714,
|
|
||||||
ICON_BLANK715,
|
|
||||||
|
|
||||||
/* EMPTY */
|
|
||||||
ICON_BLANK720,
|
|
||||||
ICON_BLANK721,
|
|
||||||
ICON_BLANK722,
|
|
||||||
ICON_BLANK733,
|
|
||||||
ICON_BLANK734,
|
|
||||||
ICON_BLANK735,
|
|
||||||
ICON_BLANK736,
|
|
||||||
ICON_BLANK737,
|
|
||||||
ICON_BLANK738,
|
|
||||||
ICON_BLANK739,
|
|
||||||
ICON_BLANK740,
|
|
||||||
ICON_BLANK741,
|
|
||||||
ICON_BLANK742,
|
|
||||||
ICON_BLANK743,
|
|
||||||
ICON_BLANK744,
|
|
||||||
ICON_BLANK745,
|
|
||||||
ICON_BLANK746,
|
|
||||||
ICON_BLANK747,
|
|
||||||
ICON_BLANK748,
|
|
||||||
ICON_BLANK749,
|
|
||||||
ICON_BLANK750,
|
|
||||||
ICON_BLANK751,
|
|
||||||
ICON_BLANK752,
|
|
||||||
ICON_BLANK753,
|
|
||||||
ICON_BLANK754,
|
|
||||||
ICON_BLANK755,
|
|
||||||
|
|
||||||
/* EMPTY */
|
|
||||||
ICON_BLANK760,
|
|
||||||
ICON_BLANK761,
|
|
||||||
ICON_BLANK762,
|
|
||||||
ICON_BLANK763,
|
|
||||||
ICON_BLANK764,
|
|
||||||
ICON_BLANK765,
|
|
||||||
ICON_BLANK766,
|
|
||||||
ICON_BLANK767,
|
|
||||||
ICON_BLANK768,
|
|
||||||
ICON_BLANK769,
|
|
||||||
ICON_BLANK770,
|
|
||||||
ICON_BLANK771,
|
|
||||||
ICON_BLANK772,
|
|
||||||
ICON_BLANK773,
|
|
||||||
ICON_BLANK774,
|
|
||||||
ICON_BLANK775,
|
|
||||||
ICON_BLANK776,
|
|
||||||
ICON_BLANK777,
|
|
||||||
ICON_BLANK778,
|
|
||||||
ICON_BLANK779,
|
|
||||||
ICON_BLANK780,
|
|
||||||
ICON_BLANK781,
|
|
||||||
ICON_BLANK782,
|
|
||||||
ICON_BLANK783,
|
|
||||||
ICON_BLANK784,
|
|
||||||
ICON_BLANK785,
|
|
||||||
|
|
||||||
/* MODIFIERS */
|
|
||||||
ICON_MODIFIER,
|
|
||||||
ICON_MOD_WAVE,
|
|
||||||
ICON_MOD_BUILD,
|
|
||||||
ICON_MOD_DECIM,
|
|
||||||
ICON_MOD_MIRROR,
|
|
||||||
ICON_MOD_SOFT,
|
|
||||||
ICON_MOD_SUBSURF,
|
|
||||||
ICON_HOOK,
|
|
||||||
ICON_MOD_PHYSICS,
|
|
||||||
ICON_MOD_PARTICLES,
|
|
||||||
ICON_MOD_BOOLEAN,
|
|
||||||
ICON_MOD_EDGESPLIT,
|
|
||||||
ICON_MOD_ARRAY,
|
|
||||||
ICON_MOD_UVPROJECT,
|
|
||||||
ICON_MOD_DISPLACE,
|
|
||||||
ICON_MOD_CURVE,
|
|
||||||
ICON_MOD_LATTICE,
|
|
||||||
ICON_BLANK143,
|
|
||||||
ICON_MOD_ARMATURE,
|
|
||||||
ICON_MOD_SHRINKWRAP,
|
|
||||||
ICON_MOD_CAST,
|
|
||||||
ICON_MOD_MESHDEFORM,
|
|
||||||
ICON_MOD_BEVEL,
|
|
||||||
ICON_MOD_SMOOTH,
|
|
||||||
ICON_MOD_SIMPLEDEFORM,
|
|
||||||
ICON_MOD_MASK,
|
|
||||||
|
|
||||||
/* MODIFIERS */
|
|
||||||
ICON_MOD_CLOTH,
|
|
||||||
ICON_MOD_EXPLODE,
|
|
||||||
ICON_MOD_FLUIDSIM,
|
|
||||||
ICON_MOD_MULTIRES,
|
|
||||||
ICON_BLANK157,
|
|
||||||
ICON_BLANK158,
|
|
||||||
ICON_BLANK159,
|
|
||||||
ICON_BLANK160,
|
|
||||||
ICON_BLANK161,
|
|
||||||
ICON_BLANK162,
|
|
||||||
ICON_BLANK163,
|
|
||||||
ICON_BLANK164,
|
|
||||||
ICON_BLANK165,
|
|
||||||
ICON_BLANK166,
|
|
||||||
ICON_BLANK167,
|
|
||||||
ICON_BLANK168,
|
|
||||||
ICON_BLANK169,
|
|
||||||
ICON_BLANK170,
|
|
||||||
ICON_BLANK171,
|
|
||||||
ICON_BLANK172,
|
|
||||||
ICON_BLANK173,
|
|
||||||
ICON_BLANK174,
|
|
||||||
ICON_BLANK175,
|
|
||||||
ICON_BLANK176,
|
|
||||||
ICON_BLANK177,
|
|
||||||
ICON_BLANK177b,
|
|
||||||
|
|
||||||
/* ANIMATION */
|
|
||||||
ICON_REC,
|
|
||||||
ICON_PLAY,
|
|
||||||
ICON_FF,
|
|
||||||
ICON_REW,
|
|
||||||
ICON_PAUSE,
|
|
||||||
ICON_PREV_KEYFRAME,
|
|
||||||
ICON_NEXT_KEYFRAME,
|
|
||||||
ICON_PLAY_AUDIO,
|
|
||||||
ICON_BLANK178,
|
|
||||||
ICON_BLANK179,
|
|
||||||
ICON_BLANK180,
|
|
||||||
ICON_PMARKER_ACT,
|
|
||||||
ICON_PMARKER_SEL,
|
|
||||||
ICON_PMARKER,
|
|
||||||
ICON_MARKER_HLT,
|
|
||||||
ICON_MARKER,
|
|
||||||
ICON_SPACE2, // XXX
|
|
||||||
ICON_SPACE3, // XXX
|
|
||||||
ICON_BLANK181,
|
|
||||||
ICON_KEY_DEHLT,
|
|
||||||
ICON_KEY_HLT,
|
|
||||||
ICON_MUTE_IPO_OFF,
|
|
||||||
ICON_MUTE_IPO_ON,
|
|
||||||
ICON_BLANK182,
|
|
||||||
ICON_BLANK183,
|
|
||||||
ICON_BLANK183b,
|
|
||||||
|
|
||||||
/* available */
|
|
||||||
ICON_BLANK184,
|
|
||||||
ICON_BLANK185,
|
|
||||||
ICON_BLANK186,
|
|
||||||
ICON_BLANK187,
|
|
||||||
ICON_BLANK188,
|
|
||||||
ICON_BLANK189,
|
|
||||||
ICON_BLANK190,
|
|
||||||
ICON_BLANK191,
|
|
||||||
ICON_BLANK192,
|
|
||||||
ICON_BLANK193,
|
|
||||||
ICON_BLANK194,
|
|
||||||
ICON_BLANK195,
|
|
||||||
ICON_BLANK196,
|
|
||||||
ICON_BLANK197,
|
|
||||||
ICON_BLANK198,
|
|
||||||
ICON_BLANK199,
|
|
||||||
ICON_BLANK200,
|
|
||||||
ICON_BLANK201,
|
|
||||||
ICON_BLANK202,
|
|
||||||
ICON_BLANK203,
|
|
||||||
ICON_BLANK204,
|
|
||||||
ICON_BLANK205,
|
|
||||||
ICON_BLANK206,
|
|
||||||
ICON_BLANK207,
|
|
||||||
ICON_BLANK208,
|
|
||||||
ICON_BLANK208b,
|
|
||||||
|
|
||||||
/* EDITING */
|
|
||||||
ICON_VERTEXSEL,
|
|
||||||
ICON_EDGESEL,
|
|
||||||
ICON_FACESEL,
|
|
||||||
ICON_LINKEDSEL,
|
|
||||||
ICON_BLANK210,
|
|
||||||
ICON_ROTATE,
|
|
||||||
ICON_CURSOR,
|
|
||||||
ICON_ROTATECOLLECTION,
|
|
||||||
ICON_ROTATECENTER,
|
|
||||||
ICON_ROTACTIVE,
|
|
||||||
ICON_ALIGN,
|
|
||||||
ICON_BLANK211,
|
|
||||||
ICON_SMOOTHCURVE,
|
|
||||||
ICON_SPHERECURVE,
|
|
||||||
ICON_ROOTCURVE,
|
|
||||||
ICON_SHARPCURVE,
|
|
||||||
ICON_LINCURVE,
|
|
||||||
ICON_NOCURVE,
|
|
||||||
ICON_RNDCURVE,
|
|
||||||
ICON_PROP_OFF,
|
|
||||||
ICON_PROP_ON,
|
|
||||||
ICON_PROP_CON,
|
|
||||||
ICON_BLANK212,
|
|
||||||
ICON_BLANK213,
|
|
||||||
ICON_BLANK214,
|
|
||||||
ICON_BLANK214b,
|
|
||||||
|
|
||||||
/* EDITING */
|
|
||||||
ICON_MAN_TRANS,
|
|
||||||
ICON_MAN_ROT,
|
|
||||||
ICON_MAN_SCALE,
|
|
||||||
ICON_MANIPUL,
|
|
||||||
ICON_BLANK215,
|
|
||||||
ICON_SNAP_GEAR,
|
|
||||||
ICON_SNAP_GEO,
|
|
||||||
ICON_SNAP_NORMAL,
|
|
||||||
ICON_SNAP_VERTEX,
|
|
||||||
ICON_SNAP_EDGE,
|
|
||||||
ICON_SNAP_FACE,
|
|
||||||
ICON_SNAP_VOLUME,
|
|
||||||
ICON_STICKY_UVS_LOC,
|
|
||||||
ICON_STICKY_UVS_DISABLE,
|
|
||||||
ICON_STICKY_UVS_VERT,
|
|
||||||
ICON_CLIPUV_DEHLT,
|
|
||||||
ICON_CLIPUV_HLT,
|
|
||||||
ICON_BLANK219,
|
|
||||||
ICON_SNAP_PEEL_OBJECT,
|
|
||||||
ICON_BLANK221,
|
|
||||||
ICON_GRID,
|
|
||||||
ICON_GEARS,
|
|
||||||
ICON_BLANK224,
|
|
||||||
ICON_BLANK225,
|
|
||||||
ICON_BLANK226,
|
|
||||||
ICON_BLANK226b,
|
|
||||||
|
|
||||||
/* EDITING */
|
|
||||||
ICON_PASTEDOWN,
|
|
||||||
ICON_COPYDOWN,
|
|
||||||
ICON_PASTEFLIPUP,
|
|
||||||
ICON_PASTEFLIPDOWN,
|
|
||||||
ICON_BLANK227,
|
|
||||||
ICON_BLANK228,
|
|
||||||
ICON_BLANK229,
|
|
||||||
ICON_BLANK230,
|
|
||||||
ICON_BLANK231,
|
|
||||||
ICON_BLANK232,
|
|
||||||
ICON_BLANK233,
|
|
||||||
ICON_BLANK234,
|
|
||||||
ICON_BLANK235,
|
|
||||||
ICON_BLANK236,
|
|
||||||
ICON_BLANK237,
|
|
||||||
ICON_BLANK238,
|
|
||||||
ICON_BLANK239,
|
|
||||||
ICON_BLANK240,
|
|
||||||
ICON_BLANK241,
|
|
||||||
ICON_BLANK242,
|
|
||||||
ICON_BLANK243,
|
|
||||||
ICON_BLANK244,
|
|
||||||
ICON_BLANK245,
|
|
||||||
ICON_BLANK246,
|
|
||||||
ICON_BLANK247,
|
|
||||||
ICON_BLANK247b,
|
|
||||||
|
|
||||||
/* 3D VIEW */
|
|
||||||
ICON_BBOX,
|
|
||||||
ICON_WIRE,
|
|
||||||
ICON_SOLID,
|
|
||||||
ICON_SMOOTH,
|
|
||||||
ICON_POTATO,
|
|
||||||
ICON_BLANK248,
|
|
||||||
ICON_ORTHO,
|
|
||||||
ICON_BLANK249,
|
|
||||||
ICON_CAMERA,
|
|
||||||
ICON_LOCKVIEW_OFF,
|
|
||||||
ICON_LOCKVIEW_ON,
|
|
||||||
ICON_BLANK250,
|
|
||||||
ICON_AXIS_SIDE,
|
|
||||||
ICON_AXIS_FRONT,
|
|
||||||
ICON_AXIS_TOP,
|
|
||||||
ICON_NDOF_DOM,
|
|
||||||
ICON_NDOF_TURN,
|
|
||||||
ICON_NDOF_FLY,
|
|
||||||
ICON_NDOF_TRANS,
|
|
||||||
ICON_LAYER_USED,
|
|
||||||
ICON_LAYER_ACTIVE,
|
|
||||||
ICON_BLANK254,
|
|
||||||
ICON_BLANK255,
|
|
||||||
ICON_BLANK256,
|
|
||||||
ICON_BLANK257,
|
|
||||||
ICON_BLANK257b,
|
|
||||||
|
|
||||||
/* available */
|
|
||||||
ICON_BLANK258,
|
|
||||||
ICON_BLANK259,
|
|
||||||
ICON_BLANK260,
|
|
||||||
ICON_BLANK261,
|
|
||||||
ICON_BLANK262,
|
|
||||||
ICON_BLANK263,
|
|
||||||
ICON_BLANK264,
|
|
||||||
ICON_BLANK265,
|
|
||||||
ICON_BLANK266,
|
|
||||||
ICON_BLANK267,
|
|
||||||
ICON_BLANK268,
|
|
||||||
ICON_BLANK269,
|
|
||||||
ICON_BLANK270,
|
|
||||||
ICON_BLANK271,
|
|
||||||
ICON_BLANK272,
|
|
||||||
ICON_BLANK273,
|
|
||||||
ICON_BLANK274,
|
|
||||||
ICON_BLANK275,
|
|
||||||
ICON_BLANK276,
|
|
||||||
ICON_BLANK277,
|
|
||||||
ICON_BLANK278,
|
|
||||||
ICON_BLANK279,
|
|
||||||
ICON_BLANK280,
|
|
||||||
ICON_BLANK281,
|
|
||||||
ICON_BLANK282,
|
|
||||||
ICON_BLANK282b,
|
|
||||||
|
|
||||||
/* FILE SELECT */
|
|
||||||
ICON_SORTALPHA,
|
|
||||||
ICON_SORTBYEXT,
|
|
||||||
ICON_SORTTIME,
|
|
||||||
ICON_SORTSIZE,
|
|
||||||
ICON_LONGDISPLAY,
|
|
||||||
ICON_SHORTDISPLAY,
|
|
||||||
ICON_GHOST,
|
|
||||||
ICON_IMGDISPLAY,
|
|
||||||
ICON_BLANK284,
|
|
||||||
ICON_BLANK285,
|
|
||||||
ICON_BOOKMARKS,
|
|
||||||
ICON_FONTPREVIEW,
|
|
||||||
ICON_FILTER,
|
|
||||||
ICON_NEWFOLDER,
|
|
||||||
ICON_BLANK285F,
|
|
||||||
ICON_FILE_PARENT,
|
|
||||||
ICON_FILE_REFRESH,
|
|
||||||
ICON_FILE_FOLDER,
|
|
||||||
ICON_FILE_BLANK,
|
|
||||||
ICON_FILE_BLEND,
|
|
||||||
ICON_FILE_IMAGE,
|
|
||||||
ICON_FILE_MOVIE,
|
|
||||||
ICON_FILE_SCRIPT,
|
|
||||||
ICON_FILE_SOUND,
|
|
||||||
ICON_FILE_FONT,
|
|
||||||
ICON_BLANK291b,
|
|
||||||
|
|
||||||
/* available */
|
|
||||||
ICON_BLANK292,
|
|
||||||
ICON_BLANK293,
|
|
||||||
ICON_BLANK294,
|
|
||||||
ICON_BLANK295,
|
|
||||||
ICON_BLANK296,
|
|
||||||
ICON_BLANK297,
|
|
||||||
ICON_BLANK298,
|
|
||||||
ICON_BLANK299,
|
|
||||||
ICON_BLANK300,
|
|
||||||
ICON_BLANK301,
|
|
||||||
ICON_BLANK302,
|
|
||||||
ICON_BLANK303,
|
|
||||||
ICON_BLANK304,
|
|
||||||
ICON_BLANK305,
|
|
||||||
ICON_BLANK306,
|
|
||||||
ICON_BLANK307,
|
|
||||||
ICON_BLANK308,
|
|
||||||
ICON_BLANK309,
|
|
||||||
ICON_BLANK310,
|
|
||||||
ICON_BLANK311,
|
|
||||||
ICON_BLANK312,
|
|
||||||
ICON_BLANK313,
|
|
||||||
ICON_BLANK314,
|
|
||||||
ICON_BLANK315,
|
|
||||||
ICON_BLANK316,
|
|
||||||
ICON_DISK_DRIVE,
|
|
||||||
|
|
||||||
/* SHADING / TEXT */
|
|
||||||
ICON_MATPLANE,
|
|
||||||
ICON_MATSPHERE,
|
|
||||||
ICON_MATCUBE,
|
|
||||||
ICON_MONKEY,
|
|
||||||
ICON_HAIR,
|
|
||||||
ICON_RING,
|
|
||||||
ICON_BLANK317,
|
|
||||||
ICON_BLANK318,
|
|
||||||
ICON_BLANK319,
|
|
||||||
ICON_BLANK320,
|
|
||||||
ICON_BLANK321,
|
|
||||||
ICON_BLANK322,
|
|
||||||
ICON_WORDWRAP_OFF,
|
|
||||||
ICON_WORDWRAP_ON,
|
|
||||||
ICON_SYNTAX_OFF,
|
|
||||||
ICON_SYNTAX_ON,
|
|
||||||
ICON_LINENUMBERS_OFF,
|
|
||||||
ICON_LINENUMBERS_ON,
|
|
||||||
ICON_SCRIPTPLUGINS, // XXX CREATE NEW
|
|
||||||
ICON_BLANK323,
|
|
||||||
ICON_BLANK324,
|
|
||||||
ICON_BLANK325,
|
|
||||||
ICON_BLANK326,
|
|
||||||
ICON_BLANK327,
|
|
||||||
ICON_BLANK328,
|
|
||||||
ICON_BLANK328b,
|
|
||||||
|
|
||||||
/* SEQUENCE / IMAGE EDITOR */
|
|
||||||
ICON_SEQ_SEQUENCER,
|
|
||||||
ICON_SEQ_PREVIEW,
|
|
||||||
ICON_SEQ_LUMA_WAVEFORM,
|
|
||||||
ICON_SEQ_CHROMA_SCOPE,
|
|
||||||
ICON_SEQ_HISTOGRAM,
|
|
||||||
ICON_BLANK330,
|
|
||||||
ICON_BLANK331,
|
|
||||||
ICON_BLANK332,
|
|
||||||
ICON_BLANK333,
|
|
||||||
ICON_IMAGE_RGB, // XXX CHANGE TO STRAIGHT ALPHA, Z ETC
|
|
||||||
ICON_IMAGE_RGB_ALPHA,
|
|
||||||
ICON_IMAGE_ALPHA,
|
|
||||||
ICON_IMAGE_ZDEPTH,
|
|
||||||
ICON_IMAGEFILE,
|
|
||||||
ICON_BLANK336,
|
|
||||||
ICON_BLANK337,
|
|
||||||
ICON_BLANK338,
|
|
||||||
ICON_BLANK339,
|
|
||||||
ICON_BLANK340,
|
|
||||||
ICON_BLANK341,
|
|
||||||
ICON_BLANK342,
|
|
||||||
ICON_BLANK343,
|
|
||||||
ICON_BLANK344,
|
|
||||||
ICON_BLANK345,
|
|
||||||
ICON_BLANK346,
|
|
||||||
ICON_BLANK346b,
|
|
||||||
|
|
||||||
/* vector icons */
|
|
||||||
|
|
||||||
VICON_VIEW3D,
|
|
||||||
VICON_EDIT,
|
|
||||||
VICON_EDITMODE_DEHLT,
|
|
||||||
VICON_EDITMODE_HLT,
|
|
||||||
VICON_DISCLOSURE_TRI_RIGHT,
|
|
||||||
VICON_DISCLOSURE_TRI_DOWN,
|
|
||||||
VICON_MOVE_UP,
|
|
||||||
VICON_MOVE_DOWN,
|
|
||||||
VICON_X
|
|
||||||
|
|
||||||
#define BIFICONID_LAST (VICON_X)
|
|
||||||
#define BIFNICONIDS (BIFICONID_LAST-BIFICONID_FIRST + 1)
|
#define BIFNICONIDS (BIFICONID_LAST-BIFICONID_FIRST + 1)
|
||||||
} BIFIconID;
|
} BIFIconID;
|
||||||
|
#undef DEF_ICON
|
||||||
|
|
||||||
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
|
@ -398,18 +398,21 @@ void uiMenuPopupBoundsBlock(uiBlock *block, int addval, int mx, int my)
|
|||||||
|
|
||||||
static void ui_draw_linkline(uiBut *but, uiLinkLine *line)
|
static void ui_draw_linkline(uiBut *but, uiLinkLine *line)
|
||||||
{
|
{
|
||||||
float vec1[2], vec2[2];
|
rcti rect;
|
||||||
|
|
||||||
if(line->from==NULL || line->to==NULL) return;
|
if(line->from==NULL || line->to==NULL) return;
|
||||||
|
|
||||||
vec1[0]= (line->from->x1+line->from->x2)/2.0;
|
rect.xmin= (line->from->x1+line->from->x2)/2.0;
|
||||||
vec1[1]= (line->from->y1+line->from->y2)/2.0;
|
rect.ymin= (line->from->y1+line->from->y2)/2.0;
|
||||||
vec2[0]= (line->to->x1+line->to->x2)/2.0;
|
rect.xmax= (line->to->x1+line->to->x2)/2.0;
|
||||||
vec2[1]= (line->to->y1+line->to->y2)/2.0;
|
rect.ymax= (line->to->y1+line->to->y2)/2.0;
|
||||||
|
|
||||||
if(line->flag & UI_SELECT) glColor3ub(100,100,100);
|
if(line->flag & UI_SELECT)
|
||||||
else glColor3ub(0,0,0);
|
glColor3ub(100,100,100);
|
||||||
fdrawline(vec1[0], vec1[1], vec2[0], vec2[1]);
|
else
|
||||||
|
glColor3ub(0,0,0);
|
||||||
|
|
||||||
|
ui_draw_link_bezier(&rect);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ui_draw_links(uiBlock *block)
|
static void ui_draw_links(uiBlock *block)
|
||||||
@ -475,6 +478,8 @@ static int ui_but_update_from_old_block(const bContext *C, uiBlock *block, uiBut
|
|||||||
but->selend= oldbut->selend;
|
but->selend= oldbut->selend;
|
||||||
but->softmin= oldbut->softmin;
|
but->softmin= oldbut->softmin;
|
||||||
but->softmax= oldbut->softmax;
|
but->softmax= oldbut->softmax;
|
||||||
|
but->linkto[0]= oldbut->linkto[0];
|
||||||
|
but->linkto[1]= oldbut->linkto[1];
|
||||||
found= 1;
|
found= 1;
|
||||||
|
|
||||||
oldbut->active= NULL;
|
oldbut->active= NULL;
|
||||||
@ -733,8 +738,13 @@ static void ui_is_but_sel(uiBut *but)
|
|||||||
|
|
||||||
/* XXX 2.50 no links supported yet */
|
/* XXX 2.50 no links supported yet */
|
||||||
|
|
||||||
#if 0
|
static int uibut_contains_pt(uiBut *but, short *mval)
|
||||||
static uiBut *ui_get_valid_link_button(uiBlock *block, uiBut *but, short *mval)
|
{
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
uiBut *ui_get_valid_link_button(uiBlock *block, uiBut *but, short *mval)
|
||||||
{
|
{
|
||||||
uiBut *bt;
|
uiBut *bt;
|
||||||
|
|
||||||
@ -745,7 +755,7 @@ static uiBut *ui_get_valid_link_button(uiBlock *block, uiBut *but, short *mval)
|
|||||||
|
|
||||||
if (bt) {
|
if (bt) {
|
||||||
if (but->type==LINK && bt->type==INLINK) {
|
if (but->type==LINK && bt->type==INLINK) {
|
||||||
if( but->link->tocode == (int)bt->min ) {
|
if( but->link->tocode == (int)bt->hardmin ) {
|
||||||
return bt;
|
return bt;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -759,21 +769,6 @@ static uiBut *ui_get_valid_link_button(uiBlock *block, uiBut *but, short *mval)
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int ui_is_a_link(uiBut *from, uiBut *to)
|
|
||||||
{
|
|
||||||
uiLinkLine *line;
|
|
||||||
uiLink *link;
|
|
||||||
|
|
||||||
link= from->link;
|
|
||||||
if(link) {
|
|
||||||
line= link->lines.first;
|
|
||||||
while(line) {
|
|
||||||
if(line->from==from && line->to==to) return 1;
|
|
||||||
line= line->next;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
static uiBut *ui_find_inlink(uiBlock *block, void *poin)
|
static uiBut *ui_find_inlink(uiBlock *block, void *poin)
|
||||||
{
|
{
|
||||||
@ -839,98 +834,6 @@ void uiComposeLinks(uiBlock *block)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ui_add_link(uiBut *from, uiBut *to)
|
|
||||||
{
|
|
||||||
/* in 'from' we have to add a link to 'to' */
|
|
||||||
uiLink *link;
|
|
||||||
void **oldppoin;
|
|
||||||
int a;
|
|
||||||
|
|
||||||
if(ui_is_a_link(from, to)) {
|
|
||||||
printf("already exists\n");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
link= from->link;
|
|
||||||
|
|
||||||
/* are there more pointers allowed? */
|
|
||||||
if(link->ppoin) {
|
|
||||||
oldppoin= *(link->ppoin);
|
|
||||||
|
|
||||||
(*(link->totlink))++;
|
|
||||||
*(link->ppoin)= MEM_callocN( *(link->totlink)*sizeof(void *), "new link");
|
|
||||||
|
|
||||||
for(a=0; a< (*(link->totlink))-1; a++) {
|
|
||||||
(*(link->ppoin))[a]= oldppoin[a];
|
|
||||||
}
|
|
||||||
(*(link->ppoin))[a]= to->poin;
|
|
||||||
|
|
||||||
if(oldppoin) MEM_freeN(oldppoin);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
*(link->poin)= to->poin;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
static int ui_do_but_LINK(uiBlock *block, uiBut *but)
|
|
||||||
{
|
|
||||||
/*
|
|
||||||
* This button only visualizes, the dobutton mode
|
|
||||||
* can add a new link, but then the whole system
|
|
||||||
* should be redrawn/initialized.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
uiBut *bt=0, *bto=NULL;
|
|
||||||
short sval[2], mval[2], mvalo[2], first= 1;
|
|
||||||
|
|
||||||
uiGetMouse(curarea->win, sval);
|
|
||||||
mvalo[0]= sval[0];
|
|
||||||
mvalo[1]= sval[1];
|
|
||||||
|
|
||||||
while (get_mbut() & L_MOUSE) {
|
|
||||||
uiGetMouse(curarea->win, mval);
|
|
||||||
|
|
||||||
if(mval[0]!=mvalo[0] || mval[1]!=mvalo[1] || first) {
|
|
||||||
/* clear completely, because of drawbuttons */
|
|
||||||
bt= ui_get_valid_link_button(block, but, mval);
|
|
||||||
if(bt) {
|
|
||||||
bt->flag |= UI_ACTIVE;
|
|
||||||
ui_draw_but(ar, bt);
|
|
||||||
}
|
|
||||||
if(bto && bto!=bt) {
|
|
||||||
bto->flag &= ~UI_ACTIVE;
|
|
||||||
ui_draw_but(ar, bto);
|
|
||||||
}
|
|
||||||
bto= bt;
|
|
||||||
|
|
||||||
if (!first) {
|
|
||||||
glutil_draw_front_xor_line(sval[0], sval[1], mvalo[0], mvalo[1]);
|
|
||||||
}
|
|
||||||
glutil_draw_front_xor_line(sval[0], sval[1], mval[0], mval[1]);
|
|
||||||
|
|
||||||
mvalo[0]= mval[0];
|
|
||||||
mvalo[1]= mval[1];
|
|
||||||
|
|
||||||
first= 0;
|
|
||||||
}
|
|
||||||
else UI_wait_for_statechange();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!first) {
|
|
||||||
glutil_draw_front_xor_line(sval[0], sval[1], mvalo[0], mvalo[1]);
|
|
||||||
}
|
|
||||||
|
|
||||||
if(bt) {
|
|
||||||
if(but->type==LINK) ui_add_link(but, bt);
|
|
||||||
else ui_add_link(bt, but);
|
|
||||||
|
|
||||||
scrarea_queue_winredraw(curarea);
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* ************************************************ */
|
/* ************************************************ */
|
||||||
|
|
||||||
@ -1859,18 +1762,24 @@ void ui_check_but(uiBut *but)
|
|||||||
|
|
||||||
case ICONTOG:
|
case ICONTOG:
|
||||||
case ICONTOGN:
|
case ICONTOGN:
|
||||||
|
if(!but->rnaprop || (RNA_property_flag(but->rnaprop) & PROP_ICONS_CONSECUTIVE)) {
|
||||||
if(but->flag & UI_SELECT) but->iconadd= 1;
|
if(but->flag & UI_SELECT) but->iconadd= 1;
|
||||||
else but->iconadd= 0;
|
else but->iconadd= 0;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case ICONROW:
|
case ICONROW:
|
||||||
|
if(!but->rnaprop || (RNA_property_flag(but->rnaprop) & PROP_ICONS_CONSECUTIVE)) {
|
||||||
value= ui_get_but_val(but);
|
value= ui_get_but_val(but);
|
||||||
but->iconadd= (int)value- (int)(but->hardmin);
|
but->iconadd= (int)value- (int)(but->hardmin);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case ICONTEXTROW:
|
case ICONTEXTROW:
|
||||||
|
if(!but->rnaprop || (RNA_property_flag(but->rnaprop) & PROP_ICONS_CONSECUTIVE)) {
|
||||||
value= ui_get_but_val(but);
|
value= ui_get_but_val(but);
|
||||||
but->iconadd= (int)value- (int)(but->hardmin);
|
but->iconadd= (int)value- (int)(but->hardmin);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2267,7 +2176,7 @@ uiBut *ui_def_but_rna(uiBlock *block, int type, int retval, char *str, short x1,
|
|||||||
uiBut *but;
|
uiBut *but;
|
||||||
PropertyRNA *prop;
|
PropertyRNA *prop;
|
||||||
PropertyType proptype;
|
PropertyType proptype;
|
||||||
int freestr= 0;
|
int freestr= 0, icon= 0;
|
||||||
|
|
||||||
prop= RNA_struct_find_property(ptr, propname);
|
prop= RNA_struct_find_property(ptr, propname);
|
||||||
|
|
||||||
@ -2279,14 +2188,22 @@ uiBut *ui_def_but_rna(uiBlock *block, int type, int retval, char *str, short x1,
|
|||||||
if(type == MENU && proptype == PROP_ENUM) {
|
if(type == MENU && proptype == PROP_ENUM) {
|
||||||
const EnumPropertyItem *item;
|
const EnumPropertyItem *item;
|
||||||
DynStr *dynstr;
|
DynStr *dynstr;
|
||||||
int i, totitem;
|
int i, totitem, value;
|
||||||
|
|
||||||
RNA_property_enum_items(ptr, prop, &item, &totitem);
|
RNA_property_enum_items(ptr, prop, &item, &totitem);
|
||||||
|
value= RNA_property_enum_get(ptr, prop);
|
||||||
|
|
||||||
dynstr= BLI_dynstr_new();
|
dynstr= BLI_dynstr_new();
|
||||||
BLI_dynstr_appendf(dynstr, "%s%%t", RNA_property_ui_name(prop));
|
BLI_dynstr_appendf(dynstr, "%s%%t", RNA_property_ui_name(prop));
|
||||||
for(i=0; i<totitem; i++)
|
for(i=0; i<totitem; i++) {
|
||||||
|
if(item[i].icon)
|
||||||
|
BLI_dynstr_appendf(dynstr, "|%s %%i%d %%x%d", item[i].name, item[i].icon, item[i].value);
|
||||||
|
else
|
||||||
BLI_dynstr_appendf(dynstr, "|%s %%x%d", item[i].name, item[i].value);
|
BLI_dynstr_appendf(dynstr, "|%s %%x%d", item[i].name, item[i].value);
|
||||||
|
|
||||||
|
if(value == item[i].value)
|
||||||
|
icon= item[i].icon;
|
||||||
|
}
|
||||||
str= BLI_dynstr_get_cstring(dynstr);
|
str= BLI_dynstr_get_cstring(dynstr);
|
||||||
BLI_dynstr_free(dynstr);
|
BLI_dynstr_free(dynstr);
|
||||||
|
|
||||||
@ -2297,15 +2214,20 @@ uiBut *ui_def_but_rna(uiBlock *block, int type, int retval, char *str, short x1,
|
|||||||
int i, totitem;
|
int i, totitem;
|
||||||
|
|
||||||
RNA_property_enum_items(ptr, prop, &item, &totitem);
|
RNA_property_enum_items(ptr, prop, &item, &totitem);
|
||||||
for(i=0; i<totitem; i++)
|
for(i=0; i<totitem; i++) {
|
||||||
if(item[i].value == (int)max)
|
if(item[i].value == (int)max) {
|
||||||
str= (char*)item[i].name;
|
str= (char*)item[i].name;
|
||||||
|
icon= item[i].icon;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(!str)
|
if(!str)
|
||||||
str= (char*)RNA_property_ui_name(prop);
|
str= (char*)RNA_property_ui_name(prop);
|
||||||
}
|
}
|
||||||
else
|
else {
|
||||||
str= (char*)RNA_property_ui_name(prop);
|
str= (char*)RNA_property_ui_name(prop);
|
||||||
|
icon= RNA_property_ui_icon(prop);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!tip) {
|
if(!tip) {
|
||||||
@ -2384,6 +2306,13 @@ uiBut *ui_def_but_rna(uiBlock *block, int type, int retval, char *str, short x1,
|
|||||||
|
|
||||||
if(type == IDPOIN)
|
if(type == IDPOIN)
|
||||||
uiButSetCompleteFunc(but, ui_rna_ID_autocomplete, but);
|
uiButSetCompleteFunc(but, ui_rna_ID_autocomplete, but);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if(icon) {
|
||||||
|
but->icon= (BIFIconID)icon;
|
||||||
|
but->flag |= UI_HAS_ICON;
|
||||||
|
but->flag|= UI_ICON_LEFT;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!prop || !RNA_property_editable(&but->rnapoin, prop)) {
|
if (!prop || !RNA_property_editable(&but->rnapoin, prop)) {
|
||||||
@ -2653,8 +2582,10 @@ uiBut *uiDefIconButR(uiBlock *block, int type, int retval, int icon, short x1, s
|
|||||||
|
|
||||||
but= ui_def_but_rna(block, type, retval, "", x1, y1, x2, y2, ptr, propname, index, min, max, a1, a2, tip);
|
but= ui_def_but_rna(block, type, retval, "", x1, y1, x2, y2, ptr, propname, index, min, max, a1, a2, tip);
|
||||||
if(but) {
|
if(but) {
|
||||||
|
if(icon) {
|
||||||
but->icon= (BIFIconID) icon;
|
but->icon= (BIFIconID) icon;
|
||||||
but->flag|= UI_HAS_ICON;
|
but->flag|= UI_HAS_ICON;
|
||||||
|
}
|
||||||
ui_check_but(but);
|
ui_check_but(but);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2736,8 +2667,10 @@ uiBut *uiDefIconTextButR(uiBlock *block, int type, int retval, int icon, char *s
|
|||||||
|
|
||||||
but= ui_def_but_rna(block, type, retval, str, x1, y1, x2, y2, ptr, propname, index, min, max, a1, a2, tip);
|
but= ui_def_but_rna(block, type, retval, str, x1, y1, x2, y2, ptr, propname, index, min, max, a1, a2, tip);
|
||||||
if(but) {
|
if(but) {
|
||||||
|
if(icon) {
|
||||||
but->icon= (BIFIconID) icon;
|
but->icon= (BIFIconID) icon;
|
||||||
but->flag|= UI_HAS_ICON;
|
but->flag|= UI_HAS_ICON;
|
||||||
|
}
|
||||||
but->flag|= UI_ICON_LEFT;
|
but->flag|= UI_ICON_LEFT;
|
||||||
ui_check_but(but);
|
ui_check_but(but);
|
||||||
}
|
}
|
||||||
@ -2779,60 +2712,6 @@ uiBut *uiDefMenuSep(uiBlock *block)
|
|||||||
return uiDefBut(block, SEPR, 0, "", 0, y, MENU_WIDTH, MENU_SEP_HEIGHT, NULL, 0.0, 0.0, 0, 0, "");
|
return uiDefBut(block, SEPR, 0, "", 0, y, MENU_WIDTH, MENU_SEP_HEIGHT, NULL, 0.0, 0.0, 0, 0, "");
|
||||||
}
|
}
|
||||||
|
|
||||||
uiBut *uiDefMenuSub(uiBlock *block, uiBlockCreateFunc func, char *name)
|
|
||||||
{
|
|
||||||
int y= ui_menu_y(block) - MENU_ITEM_HEIGHT;
|
|
||||||
return uiDefIconTextBlockBut(block, func, NULL, ICON_BLANK1, name, 0, y, MENU_WIDTH, MENU_ITEM_HEIGHT-1, "");
|
|
||||||
}
|
|
||||||
|
|
||||||
uiBut *uiDefMenuTogR(uiBlock *block, PointerRNA *ptr, char *propname, char *propvalue, char *name)
|
|
||||||
{
|
|
||||||
uiBut *but;
|
|
||||||
PropertyRNA *prop;
|
|
||||||
PropertyType type;
|
|
||||||
const EnumPropertyItem *item;
|
|
||||||
int a, value, totitem, icon= ICON_CHECKBOX_DEHLT;
|
|
||||||
int y= ui_menu_y(block) - MENU_ITEM_HEIGHT;
|
|
||||||
|
|
||||||
prop= RNA_struct_find_property(ptr, propname);
|
|
||||||
if(prop) {
|
|
||||||
type= RNA_property_type(prop);
|
|
||||||
|
|
||||||
if(type == PROP_BOOLEAN) {
|
|
||||||
if(RNA_property_boolean_get(ptr, prop))
|
|
||||||
icon= ICON_CHECKBOX_HLT;
|
|
||||||
|
|
||||||
return uiDefIconTextButR(block, TOG, 0, icon, name, 0, y, MENU_WIDTH, MENU_ITEM_HEIGHT-1, ptr, propname, 0, 0, 0, 0, 0, NULL);
|
|
||||||
}
|
|
||||||
else if(type == PROP_ENUM) {
|
|
||||||
RNA_property_enum_items(ptr, prop, &item, &totitem);
|
|
||||||
|
|
||||||
value= 0;
|
|
||||||
for(a=0; a<totitem; a++) {
|
|
||||||
if(propvalue && strcmp(propvalue, item[a].identifier) == 0) {
|
|
||||||
value= item[a].value;
|
|
||||||
if(!name)
|
|
||||||
name= (char*)item[a].name;
|
|
||||||
|
|
||||||
if(RNA_property_enum_get(ptr, prop) == value)
|
|
||||||
icon= ICON_CHECKBOX_HLT;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if(a != totitem)
|
|
||||||
return uiDefIconTextButR(block, ROW, 0, icon, name, 0, y, MENU_WIDTH, MENU_ITEM_HEIGHT-1, ptr, propname, 0, 0, value, 0, 0, NULL);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* not found */
|
|
||||||
uiBlockSetButLock(block, 1, "");
|
|
||||||
but= uiDefIconTextBut(block, BUT, 0, ICON_BLANK1, propname, 0, y, MENU_WIDTH, MENU_ITEM_HEIGHT, NULL, 0.0, 0.0, 0, 0, "");
|
|
||||||
uiBlockClearButLock(block);
|
|
||||||
|
|
||||||
return but;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* END Button containing both string label and icon */
|
/* END Button containing both string label and icon */
|
||||||
|
|
||||||
void uiSetButLink(uiBut *but, void **poin, void ***ppoin, short *tot, int from, int to)
|
void uiSetButLink(uiBut *but, void **poin, void ***ppoin, short *tot, int from, int to)
|
||||||
@ -2874,8 +2753,8 @@ void uiBlockFlipOrder(uiBlock *block)
|
|||||||
uiBut *but, *next;
|
uiBut *but, *next;
|
||||||
float centy, miny=10000, maxy= -10000;
|
float centy, miny=10000, maxy= -10000;
|
||||||
|
|
||||||
// if(U.uiflag & USER_PLAINMENUS)
|
if(!(U.uiflag & USER_DIRECTIONALORDER))
|
||||||
// return;
|
return;
|
||||||
|
|
||||||
for(but= block->buttons.first; but; but= but->next) {
|
for(but= block->buttons.first; but; but= but->next) {
|
||||||
if(but->flag & UI_BUT_ALIGN) return;
|
if(but->flag & UI_BUT_ALIGN) return;
|
||||||
|
@ -165,6 +165,7 @@ typedef struct uiAfterFunc {
|
|||||||
bContextStore *context;
|
bContextStore *context;
|
||||||
} uiAfterFunc;
|
} uiAfterFunc;
|
||||||
|
|
||||||
|
static int ui_mouse_inside_button(ARegion *ar, uiBut *but, int x, int y);
|
||||||
static void button_activate_state(bContext *C, uiBut *but, uiHandleButtonState state);
|
static void button_activate_state(bContext *C, uiBut *but, uiHandleButtonState state);
|
||||||
static int ui_handler_region_menu(bContext *C, wmEvent *event, void *userdata);
|
static int ui_handler_region_menu(bContext *C, wmEvent *event, void *userdata);
|
||||||
static int ui_handler_popup(bContext *C, wmEvent *event, void *userdata);
|
static int ui_handler_popup(bContext *C, wmEvent *event, void *userdata);
|
||||||
@ -525,6 +526,149 @@ static void ui_apply_but_CHARTAB(bContext *C, uiBut *but, uiHandleButtonData *da
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
static void ui_delete_active_linkline(uiBlock *block)
|
||||||
|
{
|
||||||
|
uiBut *but;
|
||||||
|
uiLink *link;
|
||||||
|
uiLinkLine *line, *nline;
|
||||||
|
int a, b;
|
||||||
|
|
||||||
|
but= block->buttons.first;
|
||||||
|
while(but) {
|
||||||
|
if(but->type==LINK && but->link) {
|
||||||
|
line= but->link->lines.first;
|
||||||
|
while(line) {
|
||||||
|
|
||||||
|
nline= line->next;
|
||||||
|
|
||||||
|
if(line->flag & UI_SELECT) {
|
||||||
|
BLI_remlink(&but->link->lines, line);
|
||||||
|
|
||||||
|
link= line->from->link;
|
||||||
|
|
||||||
|
/* are there more pointers allowed? */
|
||||||
|
if(link->ppoin) {
|
||||||
|
|
||||||
|
if(*(link->totlink)==1) {
|
||||||
|
*(link->totlink)= 0;
|
||||||
|
MEM_freeN(*(link->ppoin));
|
||||||
|
*(link->ppoin)= NULL;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
b= 0;
|
||||||
|
for(a=0; a< (*(link->totlink)); a++) {
|
||||||
|
|
||||||
|
if( (*(link->ppoin))[a] != line->to->poin ) {
|
||||||
|
(*(link->ppoin))[b]= (*(link->ppoin))[a];
|
||||||
|
b++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
(*(link->totlink))--;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
*(link->poin)= NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
MEM_freeN(line);
|
||||||
|
}
|
||||||
|
line= nline;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
but= but->next;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static uiLinkLine *ui_is_a_link(uiBut *from, uiBut *to)
|
||||||
|
{
|
||||||
|
uiLinkLine *line;
|
||||||
|
uiLink *link;
|
||||||
|
|
||||||
|
link= from->link;
|
||||||
|
if(link) {
|
||||||
|
line= link->lines.first;
|
||||||
|
while(line) {
|
||||||
|
if(line->from==from && line->to==to) return line;
|
||||||
|
line= line->next;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void ui_add_link(uiBut *from, uiBut *to)
|
||||||
|
{
|
||||||
|
/* in 'from' we have to add a link to 'to' */
|
||||||
|
uiLink *link;
|
||||||
|
uiLinkLine *line;
|
||||||
|
void **oldppoin;
|
||||||
|
int a;
|
||||||
|
|
||||||
|
if( (line= ui_is_a_link(from, to)) ) {
|
||||||
|
line->flag |= UI_SELECT;
|
||||||
|
ui_delete_active_linkline(from->block);
|
||||||
|
printf("already exists, means deletion now\n");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (from->type==LINK && to->type==INLINK) {
|
||||||
|
if( from->link->tocode != (int)to->hardmin ) {
|
||||||
|
printf("cannot link\n");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if(from->type==INLINK && to->type==LINK) {
|
||||||
|
if( to->link->tocode == (int)from->hardmin ) {
|
||||||
|
printf("cannot link\n");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
link= from->link;
|
||||||
|
|
||||||
|
/* are there more pointers allowed? */
|
||||||
|
if(link->ppoin) {
|
||||||
|
oldppoin= *(link->ppoin);
|
||||||
|
|
||||||
|
(*(link->totlink))++;
|
||||||
|
*(link->ppoin)= MEM_callocN( *(link->totlink)*sizeof(void *), "new link");
|
||||||
|
|
||||||
|
for(a=0; a< (*(link->totlink))-1; a++) {
|
||||||
|
(*(link->ppoin))[a]= oldppoin[a];
|
||||||
|
}
|
||||||
|
(*(link->ppoin))[a]= to->poin;
|
||||||
|
|
||||||
|
if(oldppoin) MEM_freeN(oldppoin);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
*(link->poin)= to->poin;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void ui_apply_but_LINK(bContext *C, uiBut *but, uiHandleButtonData *data)
|
||||||
|
{
|
||||||
|
ARegion *ar= CTX_wm_region(C);
|
||||||
|
uiBut *bt;
|
||||||
|
|
||||||
|
for(bt= but->block->buttons.first; bt; bt= bt->next) {
|
||||||
|
if( ui_mouse_inside_button(ar, bt, but->linkto[0]+ar->winrct.xmin, but->linkto[1]+ar->winrct.ymin) )
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if(bt && bt!=but) {
|
||||||
|
|
||||||
|
if(but->type==LINK) ui_add_link(but, bt);
|
||||||
|
else ui_add_link(bt, but);
|
||||||
|
|
||||||
|
ui_apply_but_func(C, but);
|
||||||
|
data->retval= but->retval;
|
||||||
|
}
|
||||||
|
data->applied= 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
static void ui_apply_button(bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data, int interactive)
|
static void ui_apply_button(bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data, int interactive)
|
||||||
{
|
{
|
||||||
char *editstr;
|
char *editstr;
|
||||||
@ -640,6 +784,7 @@ static void ui_apply_button(bContext *C, uiBlock *block, uiBut *but, uiHandleBut
|
|||||||
#endif
|
#endif
|
||||||
case LINK:
|
case LINK:
|
||||||
case INLINK:
|
case INLINK:
|
||||||
|
ui_apply_but_LINK(C, but, data);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
@ -1774,7 +1919,7 @@ static int ui_do_but_NUM(bContext *C, uiBlock *block, uiBut *but, uiHandleButton
|
|||||||
click= 1;
|
click= 1;
|
||||||
}
|
}
|
||||||
else if(event->val==KM_PRESS) {
|
else if(event->val==KM_PRESS) {
|
||||||
if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->shift) {
|
if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->ctrl) {
|
||||||
button_activate_state(C, but, BUTTON_STATE_TEXT_EDITING);
|
button_activate_state(C, but, BUTTON_STATE_TEXT_EDITING);
|
||||||
retval= WM_UI_HANDLER_BREAK;
|
retval= WM_UI_HANDLER_BREAK;
|
||||||
}
|
}
|
||||||
@ -1985,7 +2130,7 @@ static int ui_do_but_SLI(bContext *C, uiBlock *block, uiBut *but, uiHandleButton
|
|||||||
click= 2;
|
click= 2;
|
||||||
}
|
}
|
||||||
else if(event->val==KM_PRESS) {
|
else if(event->val==KM_PRESS) {
|
||||||
if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->shift) {
|
if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->ctrl) {
|
||||||
button_activate_state(C, but, BUTTON_STATE_TEXT_EDITING);
|
button_activate_state(C, but, BUTTON_STATE_TEXT_EDITING);
|
||||||
retval= WM_UI_HANDLER_BREAK;
|
retval= WM_UI_HANDLER_BREAK;
|
||||||
}
|
}
|
||||||
@ -2027,7 +2172,7 @@ static int ui_do_but_SLI(bContext *C, uiBlock *block, uiBut *but, uiHandleButton
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(click) {
|
if(click) {
|
||||||
if (event->ctrl || click==2) {
|
if (click==2) {
|
||||||
/* nudge slider to the left or right */
|
/* nudge slider to the left or right */
|
||||||
float f, tempf, softmin, softmax, softrange;
|
float f, tempf, softmin, softmax, softrange;
|
||||||
int temp;
|
int temp;
|
||||||
@ -2806,6 +2951,38 @@ static int ui_do_but_CHARTAB(bContext *C, uiBlock *block, uiBut *but, uiHandleBu
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
static int ui_do_but_LINK(bContext *C, uiBut *but, uiHandleButtonData *data, wmEvent *event)
|
||||||
|
{
|
||||||
|
ARegion *ar= CTX_wm_region(C);
|
||||||
|
|
||||||
|
but->linkto[0]= event->x-ar->winrct.xmin;
|
||||||
|
but->linkto[1]= event->y-ar->winrct.ymin;
|
||||||
|
|
||||||
|
if(data->state == BUTTON_STATE_HIGHLIGHT) {
|
||||||
|
if(event->type == LEFTMOUSE && event->val==KM_PRESS) {
|
||||||
|
button_activate_state(C, but, BUTTON_STATE_WAIT_RELEASE);
|
||||||
|
return WM_UI_HANDLER_BREAK;
|
||||||
|
}
|
||||||
|
else if(event->type == LEFTMOUSE && but->block->handle) {
|
||||||
|
button_activate_state(C, but, BUTTON_STATE_EXIT);
|
||||||
|
return WM_UI_HANDLER_BREAK;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if(data->state == BUTTON_STATE_WAIT_RELEASE) {
|
||||||
|
|
||||||
|
if(event->type == LEFTMOUSE && event->val!=KM_PRESS) {
|
||||||
|
if(!(but->flag & UI_SELECT))
|
||||||
|
data->cancel= 1;
|
||||||
|
button_activate_state(C, but, BUTTON_STATE_EXIT);
|
||||||
|
return WM_UI_HANDLER_BREAK;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return WM_UI_HANDLER_CONTINUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
static int ui_do_button(bContext *C, uiBlock *block, uiBut *but, wmEvent *event)
|
static int ui_do_button(bContext *C, uiBlock *block, uiBut *but, wmEvent *event)
|
||||||
{
|
{
|
||||||
uiHandleButtonData *data;
|
uiHandleButtonData *data;
|
||||||
@ -2951,13 +3128,11 @@ static int ui_do_button(bContext *C, uiBlock *block, uiBut *but, wmEvent *event)
|
|||||||
retval= ui_do_but_CHARTAB(C, block, but, data, event);
|
retval= ui_do_but_CHARTAB(C, block, but, data, event);
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
/* XXX 2.50 links not implemented yet */
|
|
||||||
#if 0
|
|
||||||
case LINK:
|
case LINK:
|
||||||
case INLINK:
|
case INLINK:
|
||||||
retval= retval= ui_do_but_LINK(block, but);
|
retval= ui_do_but_LINK(C, but, data, event);
|
||||||
break;
|
break;
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return retval;
|
return retval;
|
||||||
@ -3421,6 +3596,13 @@ static int ui_handle_button_event(bContext *C, wmEvent *event, uiBut *but)
|
|||||||
else if(data->state == BUTTON_STATE_WAIT_RELEASE) {
|
else if(data->state == BUTTON_STATE_WAIT_RELEASE) {
|
||||||
switch(event->type) {
|
switch(event->type) {
|
||||||
case MOUSEMOVE:
|
case MOUSEMOVE:
|
||||||
|
|
||||||
|
if(ELEM(but->type,LINK, INLINK)) {
|
||||||
|
but->flag |= UI_SELECT;
|
||||||
|
ui_do_button(C, block, but, event);
|
||||||
|
ED_region_tag_redraw(data->region);
|
||||||
|
}
|
||||||
|
else {
|
||||||
/* deselect the button when moving the mouse away */
|
/* deselect the button when moving the mouse away */
|
||||||
if(ui_mouse_inside_button(ar, but, event->x, event->y)) {
|
if(ui_mouse_inside_button(ar, but, event->x, event->y)) {
|
||||||
if(!(but->flag & UI_SELECT)) {
|
if(!(but->flag & UI_SELECT)) {
|
||||||
@ -3436,6 +3618,7 @@ static int ui_handle_button_event(bContext *C, wmEvent *event, uiBut *but)
|
|||||||
ED_region_tag_redraw(data->region);
|
ED_region_tag_redraw(data->region);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
/* otherwise catch mouse release event */
|
/* otherwise catch mouse release event */
|
||||||
|
@ -181,6 +181,7 @@ struct uiBut {
|
|||||||
void *search_arg;
|
void *search_arg;
|
||||||
|
|
||||||
uiLink *link;
|
uiLink *link;
|
||||||
|
short linkto[2];
|
||||||
|
|
||||||
char *tip, *lockstr;
|
char *tip, *lockstr;
|
||||||
|
|
||||||
@ -408,6 +409,7 @@ extern int ui_button_is_active(struct ARegion *ar);
|
|||||||
void ui_draw_anti_tria(float x1, float y1, float x2, float y2, float x3, float y3);
|
void ui_draw_anti_tria(float x1, float y1, float x2, float y2, float x3, float y3);
|
||||||
void ui_draw_menu_back(struct uiStyle *style, uiBlock *block, rcti *rect);
|
void ui_draw_menu_back(struct uiStyle *style, uiBlock *block, rcti *rect);
|
||||||
void ui_draw_search_back(struct uiStyle *style, uiBlock *block, rcti *rect);
|
void ui_draw_search_back(struct uiStyle *style, uiBlock *block, rcti *rect);
|
||||||
|
void ui_draw_link_bezier(rcti *rect);
|
||||||
|
|
||||||
extern void ui_draw_but(const struct bContext *C, ARegion *ar, struct uiStyle *style, uiBut *but, rcti *rect);
|
extern void ui_draw_but(const struct bContext *C, ARegion *ar, struct uiStyle *style, uiBut *but, rcti *rect);
|
||||||
/* theme color init */
|
/* theme color init */
|
||||||
|
@ -427,19 +427,29 @@ static void ui_item_array(uiLayout *layout, uiBlock *block, char *name, int icon
|
|||||||
uiBlockSetCurLayout(block, layout);
|
uiBlockSetCurLayout(block, layout);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ui_item_enum_row(uiLayout *layout, uiBlock *block, PointerRNA *ptr, PropertyRNA *prop, int x, int y, int w, int h)
|
static void ui_item_enum_row(uiLayout *layout, uiBlock *block, PointerRNA *ptr, PropertyRNA *prop, char *uiname, int x, int y, int w, int h)
|
||||||
{
|
{
|
||||||
const EnumPropertyItem *item;
|
const EnumPropertyItem *item;
|
||||||
int a, totitem, itemw;
|
const char *identifier;
|
||||||
const char *propname;
|
char *name;
|
||||||
|
int a, totitem, itemw, icon, value;
|
||||||
|
|
||||||
propname= RNA_property_identifier(prop);
|
identifier= RNA_property_identifier(prop);
|
||||||
RNA_property_enum_items(ptr, prop, &item, &totitem);
|
RNA_property_enum_items(ptr, prop, &item, &totitem);
|
||||||
|
|
||||||
uiBlockSetCurLayout(block, ui_item_local_sublayout(layout, layout, 1));
|
uiBlockSetCurLayout(block, ui_item_local_sublayout(layout, layout, 1));
|
||||||
for(a=0; a<totitem; a++) {
|
for(a=0; a<totitem; a++) {
|
||||||
itemw= ui_text_icon_width(block->curlayout, (char*)item[a].name, 0);
|
name= (!uiname || uiname[0])? (char*)item[a].name: "";
|
||||||
uiDefButR(block, ROW, 0, NULL, 0, 0, itemw, h, ptr, propname, -1, 0, item[a].value, -1, -1, NULL);
|
icon= item[a].icon;
|
||||||
|
value= item[a].value;
|
||||||
|
itemw= ui_text_icon_width(block->curlayout, name, icon);
|
||||||
|
|
||||||
|
if(icon && strcmp(name, "") != 0)
|
||||||
|
uiDefIconTextButR(block, ROW, 0, icon, name, 0, 0, itemw, h, ptr, identifier, -1, 0, value, -1, -1, NULL);
|
||||||
|
else if(icon)
|
||||||
|
uiDefIconButR(block, ROW, 0, icon, 0, 0, itemw, h, ptr, identifier, -1, 0, value, -1, -1, NULL);
|
||||||
|
else
|
||||||
|
uiDefButR(block, ROW, 0, name, 0, 0, itemw, h, ptr, identifier, -1, 0, value, -1, -1, NULL);
|
||||||
}
|
}
|
||||||
uiBlockSetCurLayout(block, layout);
|
uiBlockSetCurLayout(block, layout);
|
||||||
}
|
}
|
||||||
@ -732,6 +742,8 @@ void uiItemFullR(uiLayout *layout, char *name, int icon, PointerRNA *ptr, Proper
|
|||||||
/* set name and icon */
|
/* set name and icon */
|
||||||
if(!name)
|
if(!name)
|
||||||
name= (char*)RNA_property_ui_name(prop);
|
name= (char*)RNA_property_ui_name(prop);
|
||||||
|
if(!icon)
|
||||||
|
icon= RNA_property_ui_icon(prop);
|
||||||
|
|
||||||
if(ELEM5(type, PROP_INT, PROP_FLOAT, PROP_STRING, PROP_ENUM, PROP_POINTER))
|
if(ELEM5(type, PROP_INT, PROP_FLOAT, PROP_STRING, PROP_ENUM, PROP_POINTER))
|
||||||
name= ui_item_name_add_colon(name, namestr);
|
name= ui_item_name_add_colon(name, namestr);
|
||||||
@ -764,7 +776,7 @@ void uiItemFullR(uiLayout *layout, char *name, int icon, PointerRNA *ptr, Proper
|
|||||||
}
|
}
|
||||||
/* expanded enum */
|
/* expanded enum */
|
||||||
else if(type == PROP_ENUM && expand)
|
else if(type == PROP_ENUM && expand)
|
||||||
ui_item_enum_row(layout, block, ptr, prop, 0, 0, w, h);
|
ui_item_enum_row(layout, block, ptr, prop, name, 0, 0, w, h);
|
||||||
/* property with separate label */
|
/* property with separate label */
|
||||||
else if(type == PROP_ENUM || type == PROP_STRING || type == PROP_POINTER)
|
else if(type == PROP_ENUM || type == PROP_STRING || type == PROP_POINTER)
|
||||||
ui_item_with_label(layout, block, name, icon, ptr, prop, index, 0, 0, w, h);
|
ui_item_with_label(layout, block, name, icon, ptr, prop, index, 0, 0, w, h);
|
||||||
@ -858,7 +870,7 @@ static void ui_item_menu(uiLayout *layout, char *name, int icon, uiMenuCreateFun
|
|||||||
uiBlockSetCurLayout(block, layout);
|
uiBlockSetCurLayout(block, layout);
|
||||||
|
|
||||||
if(layout->root->type == UI_LAYOUT_HEADER)
|
if(layout->root->type == UI_LAYOUT_HEADER)
|
||||||
uiBlockSetEmboss(block, UI_EMBOSSP);
|
uiBlockSetEmboss(block, UI_EMBOSS);
|
||||||
|
|
||||||
if(!name)
|
if(!name)
|
||||||
name= "";
|
name= "";
|
||||||
@ -869,7 +881,7 @@ static void ui_item_menu(uiLayout *layout, char *name, int icon, uiMenuCreateFun
|
|||||||
h= UI_UNIT_Y;
|
h= UI_UNIT_Y;
|
||||||
|
|
||||||
if(layout->root->type == UI_LAYOUT_HEADER) /* ugly .. */
|
if(layout->root->type == UI_LAYOUT_HEADER) /* ugly .. */
|
||||||
w -= 3;
|
w -= 10;
|
||||||
|
|
||||||
if(icon)
|
if(icon)
|
||||||
but= uiDefIconTextMenuBut(block, func, arg, icon, (char*)name, 0, 0, w, h, "");
|
but= uiDefIconTextMenuBut(block, func, arg, icon, (char*)name, 0, 0, w, h, "");
|
||||||
@ -1484,6 +1496,7 @@ static void ui_litem_layout_split(uiLayout *litem)
|
|||||||
{
|
{
|
||||||
uiLayoutItemSplt *split= (uiLayoutItemSplt*)litem;
|
uiLayoutItemSplt *split= (uiLayoutItemSplt*)litem;
|
||||||
uiItem *item;
|
uiItem *item;
|
||||||
|
float percentage;
|
||||||
int itemh, x, y, w, tot=0, colw=0;
|
int itemh, x, y, w, tot=0, colw=0;
|
||||||
|
|
||||||
x= litem->x;
|
x= litem->x;
|
||||||
@ -1495,8 +1508,10 @@ static void ui_litem_layout_split(uiLayout *litem)
|
|||||||
if(tot == 0)
|
if(tot == 0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
percentage= (split->percentage == 0.0f)? 1.0f/(float)tot: split->percentage;
|
||||||
|
|
||||||
w= (litem->w - (tot-1)*litem->space);
|
w= (litem->w - (tot-1)*litem->space);
|
||||||
colw= w*split->percentage;
|
colw= w*percentage;
|
||||||
colw= MAX2(colw, 0);
|
colw= MAX2(colw, 0);
|
||||||
|
|
||||||
for(item=litem->items.first; item; item=item->next) {
|
for(item=litem->items.first; item; item=item->next) {
|
||||||
@ -1506,7 +1521,7 @@ static void ui_litem_layout_split(uiLayout *litem)
|
|||||||
x += colw;
|
x += colw;
|
||||||
|
|
||||||
if(item->next) {
|
if(item->next) {
|
||||||
colw= (w - (w*split->percentage))/(tot-1);
|
colw= (w - (int)(w*percentage))/(tot-1);
|
||||||
colw= MAX2(colw, 0);
|
colw= MAX2(colw, 0);
|
||||||
|
|
||||||
x += litem->space;
|
x += litem->space;
|
||||||
@ -1637,7 +1652,7 @@ uiLayout *uiLayoutSplit(uiLayout *layout, float percentage)
|
|||||||
split->litem.enabled= 1;
|
split->litem.enabled= 1;
|
||||||
split->litem.context= layout->context;
|
split->litem.context= layout->context;
|
||||||
split->litem.space= layout->root->style->columnspace;
|
split->litem.space= layout->root->style->columnspace;
|
||||||
split->percentage= (percentage == 0.0f)? 0.5f: percentage;
|
split->percentage= percentage;
|
||||||
BLI_addtail(&layout->items, split);
|
BLI_addtail(&layout->items, split);
|
||||||
|
|
||||||
uiBlockSetCurLayout(layout->root->block, &split->litem);
|
uiBlockSetCurLayout(layout->root->block, &split->litem);
|
||||||
|
@ -69,6 +69,7 @@
|
|||||||
#define PNL_ACTIVE 2
|
#define PNL_ACTIVE 2
|
||||||
#define PNL_WAS_ACTIVE 4
|
#define PNL_WAS_ACTIVE 4
|
||||||
#define PNL_ANIM_ALIGN 8
|
#define PNL_ANIM_ALIGN 8
|
||||||
|
#define PNL_NEW_ADDED 16
|
||||||
|
|
||||||
typedef enum uiHandlePanelState {
|
typedef enum uiHandlePanelState {
|
||||||
PANEL_STATE_DRAG,
|
PANEL_STATE_DRAG,
|
||||||
@ -157,18 +158,20 @@ static void ui_panel_copy_offset(Panel *pa, Panel *papar)
|
|||||||
pa->ofsy= papar->ofsy + papar->sizey-pa->sizey;
|
pa->ofsy= papar->ofsy + papar->sizey-pa->sizey;
|
||||||
}
|
}
|
||||||
|
|
||||||
Panel *uiBeginPanel(ARegion *ar, uiBlock *block, PanelType *pt, int *open)
|
Panel *uiBeginPanel(ScrArea *sa, ARegion *ar, uiBlock *block, PanelType *pt, int *open)
|
||||||
{
|
{
|
||||||
uiStyle *style= U.uistyles.first;
|
uiStyle *style= U.uistyles.first;
|
||||||
Panel *pa, *patab, *palast, *panext;
|
Panel *pa, *patab, *palast, *panext;
|
||||||
char *panelname= pt->label;
|
char *drawname= pt->label;
|
||||||
char *tabname= pt->label;
|
char *idname= pt->idname;
|
||||||
|
char *tabname= pt->idname;
|
||||||
char *hookname= NULL;
|
char *hookname= NULL;
|
||||||
int newpanel;
|
int newpanel;
|
||||||
|
int align= panel_aligned(sa, ar);
|
||||||
|
|
||||||
/* check if Panel exists, then use that one */
|
/* check if Panel exists, then use that one */
|
||||||
for(pa=ar->panels.first; pa; pa=pa->next)
|
for(pa=ar->panels.first; pa; pa=pa->next)
|
||||||
if(strncmp(pa->panelname, panelname, UI_MAX_NAME_STR)==0)
|
if(strncmp(pa->panelname, idname, UI_MAX_NAME_STR)==0)
|
||||||
if(strncmp(pa->tabname, tabname, UI_MAX_NAME_STR)==0)
|
if(strncmp(pa->tabname, tabname, UI_MAX_NAME_STR)==0)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -181,13 +184,21 @@ Panel *uiBeginPanel(ARegion *ar, uiBlock *block, PanelType *pt, int *open)
|
|||||||
/* new panel */
|
/* new panel */
|
||||||
pa= MEM_callocN(sizeof(Panel), "new panel");
|
pa= MEM_callocN(sizeof(Panel), "new panel");
|
||||||
pa->type= pt;
|
pa->type= pt;
|
||||||
BLI_strncpy(pa->panelname, panelname, UI_MAX_NAME_STR);
|
BLI_strncpy(pa->panelname, idname, UI_MAX_NAME_STR);
|
||||||
BLI_strncpy(pa->tabname, tabname, UI_MAX_NAME_STR);
|
BLI_strncpy(pa->tabname, tabname, UI_MAX_NAME_STR);
|
||||||
|
|
||||||
|
if(pt->flag & PNL_DEFAULT_CLOSED) {
|
||||||
|
if(align == BUT_VERTICAL)
|
||||||
|
pa->flag |= PNL_CLOSEDY;
|
||||||
|
else
|
||||||
|
pa->flag |= PNL_CLOSEDX;
|
||||||
|
}
|
||||||
|
|
||||||
pa->ofsx= 0;
|
pa->ofsx= 0;
|
||||||
pa->ofsy= style->panelouter;
|
pa->ofsy= style->panelouter;
|
||||||
pa->sizex= 0;
|
pa->sizex= 0;
|
||||||
pa->sizey= 0;
|
pa->sizey= 0;
|
||||||
|
pa->runtime_flag |= PNL_NEW_ADDED;
|
||||||
|
|
||||||
BLI_addtail(&ar->panels, pa);
|
BLI_addtail(&ar->panels, pa);
|
||||||
|
|
||||||
@ -207,6 +218,8 @@ Panel *uiBeginPanel(ARegion *ar, uiBlock *block, PanelType *pt, int *open)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
BLI_strncpy(pa->drawname, drawname, UI_MAX_NAME_STR);
|
||||||
|
|
||||||
/* if a new panel is added, we insert it right after the panel
|
/* if a new panel is added, we insert it right after the panel
|
||||||
* that was last added. this way new panels are inserted in the
|
* that was last added. this way new panels are inserted in the
|
||||||
* right place between versions */
|
* right place between versions */
|
||||||
@ -235,7 +248,6 @@ Panel *uiBeginPanel(ARegion *ar, uiBlock *block, PanelType *pt, int *open)
|
|||||||
if(pa->flag & PNL_CLOSED) return pa;
|
if(pa->flag & PNL_CLOSED) return pa;
|
||||||
|
|
||||||
*open= 1;
|
*open= 1;
|
||||||
pa->drawname[0]= 0; /* otherwise closes panels show wrong title */
|
|
||||||
|
|
||||||
return pa;
|
return pa;
|
||||||
}
|
}
|
||||||
@ -244,6 +256,12 @@ void uiEndPanel(uiBlock *block, int width, int height)
|
|||||||
{
|
{
|
||||||
Panel *pa= block->panel;
|
Panel *pa= block->panel;
|
||||||
|
|
||||||
|
if(pa->runtime_flag & PNL_NEW_ADDED) {
|
||||||
|
pa->runtime_flag &= ~PNL_NEW_ADDED;
|
||||||
|
pa->sizex= width;
|
||||||
|
pa->sizey= height;
|
||||||
|
}
|
||||||
|
else if(!(width == 0 || height == 0)) {
|
||||||
if(pa->sizex != width || pa->sizey != height) {
|
if(pa->sizex != width || pa->sizey != height) {
|
||||||
pa->runtime_flag |= PNL_ANIM_ALIGN;
|
pa->runtime_flag |= PNL_ANIM_ALIGN;
|
||||||
pa->ofsy += pa->sizey-height;
|
pa->ofsy += pa->sizey-height;
|
||||||
@ -252,6 +270,7 @@ void uiEndPanel(uiBlock *block, int width, int height)
|
|||||||
pa->sizex= width;
|
pa->sizex= width;
|
||||||
pa->sizey= height;
|
pa->sizey= height;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
void uiPanelToMouse(const bContext *C, Panel *pa)
|
void uiPanelToMouse(const bContext *C, Panel *pa)
|
||||||
|
@ -1948,6 +1948,9 @@ uiBlock *ui_block_func_PUPMENU(bContext *C, uiPopupBlockHandle *handle, void *ar
|
|||||||
md= decompose_menu_string(info->instr);
|
md= decompose_menu_string(info->instr);
|
||||||
|
|
||||||
rows= md->nitems;
|
rows= md->nitems;
|
||||||
|
if(rows<1)
|
||||||
|
rows= 1;
|
||||||
|
|
||||||
columns= 1;
|
columns= 1;
|
||||||
|
|
||||||
/* size and location, title slightly bigger for bold */
|
/* size and location, title slightly bigger for bold */
|
||||||
|
@ -91,7 +91,7 @@ static uiStyle *ui_style_new(ListBase *styles, const char *name)
|
|||||||
|
|
||||||
style->paneltitle.uifont_id= UIFONT_DEFAULT;
|
style->paneltitle.uifont_id= UIFONT_DEFAULT;
|
||||||
style->paneltitle.points= 13;
|
style->paneltitle.points= 13;
|
||||||
style->paneltitle.kerning= 0.5;
|
style->paneltitle.kerning= 0.0;
|
||||||
style->paneltitle.shadow= 5;
|
style->paneltitle.shadow= 5;
|
||||||
style->paneltitle.shadx= 2;
|
style->paneltitle.shadx= 2;
|
||||||
style->paneltitle.shady= -2;
|
style->paneltitle.shady= -2;
|
||||||
@ -100,7 +100,7 @@ static uiStyle *ui_style_new(ListBase *styles, const char *name)
|
|||||||
|
|
||||||
style->grouplabel.uifont_id= UIFONT_DEFAULT;
|
style->grouplabel.uifont_id= UIFONT_DEFAULT;
|
||||||
style->grouplabel.points= 12;
|
style->grouplabel.points= 12;
|
||||||
style->grouplabel.kerning= 0.5;
|
style->grouplabel.kerning= 0.0;
|
||||||
style->grouplabel.shadow= 3;
|
style->grouplabel.shadow= 3;
|
||||||
style->grouplabel.shadx= 1;
|
style->grouplabel.shadx= 1;
|
||||||
style->grouplabel.shady= -1;
|
style->grouplabel.shady= -1;
|
||||||
@ -108,7 +108,7 @@ static uiStyle *ui_style_new(ListBase *styles, const char *name)
|
|||||||
|
|
||||||
style->widgetlabel.uifont_id= UIFONT_DEFAULT;
|
style->widgetlabel.uifont_id= UIFONT_DEFAULT;
|
||||||
style->widgetlabel.points= 11;
|
style->widgetlabel.points= 11;
|
||||||
style->widgetlabel.kerning= 0.5;
|
style->widgetlabel.kerning= 0.0;
|
||||||
style->widgetlabel.shadow= 3;
|
style->widgetlabel.shadow= 3;
|
||||||
style->widgetlabel.shadx= 1;
|
style->widgetlabel.shadx= 1;
|
||||||
style->widgetlabel.shady= -1;
|
style->widgetlabel.shady= -1;
|
||||||
@ -117,7 +117,7 @@ static uiStyle *ui_style_new(ListBase *styles, const char *name)
|
|||||||
|
|
||||||
style->widget.uifont_id= UIFONT_DEFAULT;
|
style->widget.uifont_id= UIFONT_DEFAULT;
|
||||||
style->widget.points= 11;
|
style->widget.points= 11;
|
||||||
style->widget.kerning= 0.5;
|
style->widget.kerning= 0.0;
|
||||||
style->widget.shadowalpha= 0.25f;
|
style->widget.shadowalpha= 0.25f;
|
||||||
|
|
||||||
style->columnspace= 5;
|
style->columnspace= 5;
|
||||||
|
@ -1448,10 +1448,8 @@ void uiTemplateCurveMapping(uiLayout *layout, CurveMapping *cumap, int type)
|
|||||||
|
|
||||||
void uiTemplateLayers(uiLayout *layout, PointerRNA *ptr, char *propname)
|
void uiTemplateLayers(uiLayout *layout, PointerRNA *ptr, char *propname)
|
||||||
{
|
{
|
||||||
uiBlock *block;
|
|
||||||
uiLayout *uRow, *uSplit, *uCol;
|
uiLayout *uRow, *uSplit, *uCol;
|
||||||
PropertyRNA *prop;
|
PropertyRNA *prop;
|
||||||
StructRNA *type;
|
|
||||||
int groups, cols, layers;
|
int groups, cols, layers;
|
||||||
int group, col, layer, row;
|
int group, col, layer, row;
|
||||||
|
|
||||||
|
@ -40,6 +40,7 @@
|
|||||||
#include "BLI_rect.h"
|
#include "BLI_rect.h"
|
||||||
|
|
||||||
#include "BKE_context.h"
|
#include "BKE_context.h"
|
||||||
|
#include "BKE_curve.h"
|
||||||
#include "BKE_global.h"
|
#include "BKE_global.h"
|
||||||
#include "BKE_utildefines.h"
|
#include "BKE_utildefines.h"
|
||||||
|
|
||||||
@ -874,9 +875,9 @@ static void widget_draw_text_icon(uiFontStyle *fstyle, uiWidgetColors *wcol, uiB
|
|||||||
and offset the text label to accomodate it */
|
and offset the text label to accomodate it */
|
||||||
|
|
||||||
if (but->flag & UI_HAS_ICON) {
|
if (but->flag & UI_HAS_ICON) {
|
||||||
widget_draw_icon(but, but->icon, 0, rect);
|
widget_draw_icon(but, but->icon+but->iconadd, 0, rect);
|
||||||
|
|
||||||
rect->xmin += UI_icon_get_width(but->icon);
|
rect->xmin += UI_icon_get_width(but->icon+but->iconadd);
|
||||||
|
|
||||||
if(but->editstr || (but->flag & UI_TEXT_LEFT))
|
if(but->editstr || (but->flag & UI_TEXT_LEFT))
|
||||||
rect->xmin += 5;
|
rect->xmin += 5;
|
||||||
@ -1118,8 +1119,6 @@ void ui_widget_color_init(ThemeUI *tui)
|
|||||||
tui->wcol_menu_back= wcol_menu_back;
|
tui->wcol_menu_back= wcol_menu_back;
|
||||||
tui->wcol_menu_item= wcol_menu_item;
|
tui->wcol_menu_item= wcol_menu_item;
|
||||||
tui->wcol_box= wcol_box;
|
tui->wcol_box= wcol_box;
|
||||||
|
|
||||||
tui->iconfile[0]= 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ************ button callbacks, state ***************** */
|
/* ************ button callbacks, state ***************** */
|
||||||
@ -1552,6 +1551,76 @@ static void widget_numbut(uiWidgetColors *wcol, rcti *rect, int state, int round
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static int ui_link_bezier_points(rcti *rect, float coord_array[][2], int resol)
|
||||||
|
{
|
||||||
|
float dist, vec[4][2];
|
||||||
|
|
||||||
|
vec[0][0]= rect->xmin;
|
||||||
|
vec[0][1]= rect->ymin;
|
||||||
|
vec[3][0]= rect->xmax;
|
||||||
|
vec[3][1]= rect->ymax;
|
||||||
|
|
||||||
|
dist= 0.5f*ABS(vec[0][0] - vec[3][0]);
|
||||||
|
|
||||||
|
vec[1][0]= vec[0][0]+dist;
|
||||||
|
vec[1][1]= vec[0][1];
|
||||||
|
|
||||||
|
vec[2][0]= vec[3][0]-dist;
|
||||||
|
vec[2][1]= vec[3][1];
|
||||||
|
|
||||||
|
forward_diff_bezier(vec[0][0], vec[1][0], vec[2][0], vec[3][0], coord_array[0], resol, 2);
|
||||||
|
forward_diff_bezier(vec[0][1], vec[1][1], vec[2][1], vec[3][1], coord_array[0]+1, resol, 2);
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
#define LINK_RESOL 24
|
||||||
|
void ui_draw_link_bezier(rcti *rect)
|
||||||
|
{
|
||||||
|
float coord_array[LINK_RESOL+1][2];
|
||||||
|
|
||||||
|
if(ui_link_bezier_points(rect, coord_array, LINK_RESOL)) {
|
||||||
|
float dist;
|
||||||
|
int i;
|
||||||
|
|
||||||
|
/* we can reuse the dist variable here to increment the GL curve eval amount*/
|
||||||
|
dist = 1.0f/(float)LINK_RESOL;
|
||||||
|
|
||||||
|
glEnable(GL_BLEND);
|
||||||
|
glEnable(GL_LINE_SMOOTH);
|
||||||
|
|
||||||
|
glBegin(GL_LINE_STRIP);
|
||||||
|
for(i=0; i<=LINK_RESOL; i++) {
|
||||||
|
glVertex2fv(coord_array[i]);
|
||||||
|
}
|
||||||
|
glEnd();
|
||||||
|
|
||||||
|
glDisable(GL_BLEND);
|
||||||
|
glDisable(GL_LINE_SMOOTH);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void widget_link(uiBut *but, uiWidgetColors *wcol, rcti *rect, int state, int roundboxalign)
|
||||||
|
{
|
||||||
|
|
||||||
|
if(but->flag & UI_SELECT) {
|
||||||
|
rcti rectlink;
|
||||||
|
|
||||||
|
UI_ThemeColor(TH_TEXT_HI);
|
||||||
|
|
||||||
|
rectlink.xmin= (rect->xmin+rect->xmax)/2;
|
||||||
|
rectlink.ymin= (rect->ymin+rect->ymax)/2;
|
||||||
|
rectlink.xmax= but->linkto[0];
|
||||||
|
rectlink.ymax= but->linkto[1];
|
||||||
|
|
||||||
|
ui_draw_link_bezier(&rectlink);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
static void widget_numslider(uiBut *but, uiWidgetColors *wcol, rcti *rect, int state, int roundboxalign)
|
static void widget_numslider(uiBut *but, uiWidgetColors *wcol, rcti *rect, int state, int roundboxalign)
|
||||||
{
|
{
|
||||||
uiWidgetBase wtb, wtb1;
|
uiWidgetBase wtb, wtb1;
|
||||||
@ -2080,6 +2149,13 @@ void ui_draw_but(const bContext *C, ARegion *ar, uiStyle *style, uiBut *but, rct
|
|||||||
wt= widget_type(UI_WTYPE_BOX);
|
wt= widget_type(UI_WTYPE_BOX);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case LINK:
|
||||||
|
case INLINK:
|
||||||
|
wt= widget_type(UI_WTYPE_ICON);
|
||||||
|
wt->custom= widget_link;
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
case BUT_EXTRA:
|
case BUT_EXTRA:
|
||||||
widget_draw_extra_mask(C, but, widget_type(UI_WTYPE_BOX), rect);
|
widget_draw_extra_mask(C, but, widget_type(UI_WTYPE_BOX), rect);
|
||||||
break;
|
break;
|
||||||
|
@ -75,7 +75,7 @@ static int theme_regionid= RGN_TYPE_WINDOW;
|
|||||||
|
|
||||||
void ui_resources_init(void)
|
void ui_resources_init(void)
|
||||||
{
|
{
|
||||||
UI_icons_init(BIFICONID_LAST+1);
|
UI_icons_init(BIFICONID_LAST);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ui_resources_free(void)
|
void ui_resources_free(void)
|
||||||
@ -156,6 +156,9 @@ char *UI_ThemeGetColorPtr(bTheme *btheme, int spacetype, int colorid)
|
|||||||
case SPACE_NODE:
|
case SPACE_NODE:
|
||||||
ts= &btheme->tnode;
|
ts= &btheme->tnode;
|
||||||
break;
|
break;
|
||||||
|
case SPACE_LOGIC:
|
||||||
|
ts= &btheme->tlogic;
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
ts= &btheme->tv3d;
|
ts= &btheme->tv3d;
|
||||||
break;
|
break;
|
||||||
@ -398,6 +401,7 @@ static void ui_theme_init_new(bTheme *btheme)
|
|||||||
ui_theme_init_new_do(&btheme->toops);
|
ui_theme_init_new_do(&btheme->toops);
|
||||||
ui_theme_init_new_do(&btheme->ttime);
|
ui_theme_init_new_do(&btheme->ttime);
|
||||||
ui_theme_init_new_do(&btheme->tnode);
|
ui_theme_init_new_do(&btheme->tnode);
|
||||||
|
ui_theme_init_new_do(&btheme->tlogic);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -608,6 +612,10 @@ void ui_theme_init_userdef(void)
|
|||||||
SETCOL(btheme->tnode.syntaxv, 142, 138, 145, 255); /* generator */
|
SETCOL(btheme->tnode.syntaxv, 142, 138, 145, 255); /* generator */
|
||||||
SETCOL(btheme->tnode.syntaxc, 120, 145, 120, 255); /* group */
|
SETCOL(btheme->tnode.syntaxc, 120, 145, 120, 255); /* group */
|
||||||
|
|
||||||
|
/* space logic */
|
||||||
|
btheme->tlogic= btheme->tv3d;
|
||||||
|
SETCOL(btheme->tlogic.back, 100, 100, 100, 255);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -1233,6 +1241,13 @@ void init_userdef_do_versions(void)
|
|||||||
|
|
||||||
if(btheme->tui.wcol_num.outline[3]==0)
|
if(btheme->tui.wcol_num.outline[3]==0)
|
||||||
ui_widget_color_init(&btheme->tui);
|
ui_widget_color_init(&btheme->tui);
|
||||||
|
|
||||||
|
/* Logic editor theme, check for alpha==0 is safe, then color was never set */
|
||||||
|
if(btheme->tlogic.syntaxn[3]==0) {
|
||||||
|
/* re-uses syntax color storage */
|
||||||
|
btheme->tlogic= btheme->tv3d;
|
||||||
|
SETCOL(btheme->tlogic.back, 100, 100, 100, 255);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1434,10 +1434,10 @@ void remake_editMesh(Scene *scene, Object *ob)
|
|||||||
/* *************** Operator: separate parts *************/
|
/* *************** Operator: separate parts *************/
|
||||||
|
|
||||||
static EnumPropertyItem prop_separate_types[] = {
|
static EnumPropertyItem prop_separate_types[] = {
|
||||||
{0, "SELECTED", "Selection", ""},
|
{0, "SELECTED", 0, "Selection", ""},
|
||||||
{1, "MATERIAL", "By Material", ""},
|
{1, "MATERIAL", 0, "By Material", ""},
|
||||||
{2, "LOOSE", "By loose parts", ""},
|
{2, "LOOSE", 0, "By loose parts", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* return 1: success */
|
/* return 1: success */
|
||||||
|
@ -51,11 +51,13 @@ editmesh_lib: generic (no UI, no menus) operations/evaluators for editmesh data
|
|||||||
#include "BLI_editVert.h"
|
#include "BLI_editVert.h"
|
||||||
|
|
||||||
#include "BKE_customdata.h"
|
#include "BKE_customdata.h"
|
||||||
|
#include "BKE_context.h"
|
||||||
#include "BKE_global.h"
|
#include "BKE_global.h"
|
||||||
#include "BKE_mesh.h"
|
#include "BKE_mesh.h"
|
||||||
#include "BKE_utildefines.h"
|
#include "BKE_utildefines.h"
|
||||||
|
|
||||||
#include "ED_mesh.h"
|
#include "ED_mesh.h"
|
||||||
|
#include "ED_screen.h"
|
||||||
#include "ED_view3d.h"
|
#include "ED_view3d.h"
|
||||||
|
|
||||||
#include "mesh_intern.h"
|
#include "mesh_intern.h"
|
||||||
@ -2278,3 +2280,10 @@ void EM_free_uv_vert_map(UvVertMap *vmap)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* poll call for mesh operators requiring a view3d context */
|
||||||
|
int EM_view3d_poll(bContext *C)
|
||||||
|
{
|
||||||
|
if(ED_operator_editmesh(C) && ED_operator_view3d_active(C))
|
||||||
|
return 1;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
@ -458,10 +458,10 @@ typedef struct CutCurve {
|
|||||||
#define KNIFE_MULTICUT 3
|
#define KNIFE_MULTICUT 3
|
||||||
|
|
||||||
static EnumPropertyItem knife_items[]= {
|
static EnumPropertyItem knife_items[]= {
|
||||||
{KNIFE_EXACT, "EXACT", "Exact", ""},
|
{KNIFE_EXACT, "EXACT", 0, "Exact", ""},
|
||||||
{KNIFE_MIDPOINT, "MIDPOINTS", "Midpoints", ""},
|
{KNIFE_MIDPOINT, "MIDPOINTS", 0, "Midpoints", ""},
|
||||||
{KNIFE_MULTICUT, "MULTICUT", "Multicut", ""},
|
{KNIFE_MULTICUT, "MULTICUT", 0, "Multicut", ""},
|
||||||
{0, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* seg_intersect() Determines if and where a mouse trail intersects an EditEdge */
|
/* seg_intersect() Determines if and where a mouse trail intersects an EditEdge */
|
||||||
|
@ -655,13 +655,13 @@ FACES GROUP
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
static EnumPropertyItem prop_simface_types[] = {
|
static EnumPropertyItem prop_simface_types[] = {
|
||||||
{1, "MATERIAL", "Material", ""},
|
{1, "MATERIAL", 0, "Material", ""},
|
||||||
{2, "IMAGE", "Image", ""},
|
{2, "IMAGE", 0, "Image", ""},
|
||||||
{3, "AREA", "Area", ""},
|
{3, "AREA", 0, "Area", ""},
|
||||||
{4, "PERIMETER", "Perimeter", ""},
|
{4, "PERIMETER", 0, "Perimeter", ""},
|
||||||
{5, "NORMAL", "Normal", ""},
|
{5, "NORMAL", 0, "Normal", ""},
|
||||||
{6, "COPLANAR", "Co-planar", ""},
|
{6, "COPLANAR", 0, "Co-planar", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -849,14 +849,14 @@ EDGE GROUP
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
static EnumPropertyItem prop_simedge_types[] = {
|
static EnumPropertyItem prop_simedge_types[] = {
|
||||||
{1, "LENGTH", "Length", ""},
|
{1, "LENGTH", 0, "Length", ""},
|
||||||
{2, "DIR", "Direction", ""},
|
{2, "DIR", 0, "Direction", ""},
|
||||||
{3, "FACE", "Amount of Vertices in Face", ""},
|
{3, "FACE", 0, "Amount of Vertices in Face", ""},
|
||||||
{4, "FACE_ANGLE", "Face Angles", ""},
|
{4, "FACE_ANGLE", 0, "Face Angles", ""},
|
||||||
{5, "CREASE", "Crease", ""},
|
{5, "CREASE", 0, "Crease", ""},
|
||||||
{6, "SEAM", "Seam", ""},
|
{6, "SEAM", 0, "Seam", ""},
|
||||||
{7, "SHARP", "Sharpness", ""},
|
{7, "SHARP", 0, "Sharpness", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
static int similar_edge_select__internal(Scene *scene, EditMesh *em, int mode)
|
static int similar_edge_select__internal(Scene *scene, EditMesh *em, int mode)
|
||||||
@ -1105,10 +1105,10 @@ VERT GROUP
|
|||||||
mode 3: same vertex groups
|
mode 3: same vertex groups
|
||||||
*/
|
*/
|
||||||
static EnumPropertyItem prop_simvertex_types[] = {
|
static EnumPropertyItem prop_simvertex_types[] = {
|
||||||
{0, "NORMAL", "Normal", ""},
|
{0, "NORMAL", 0, "Normal", ""},
|
||||||
{1, "FACE", "Amount of Vertices in Face", ""},
|
{1, "FACE", 0, "Amount of Vertices in Face", ""},
|
||||||
{2, "VGROUP", "Vertex Groups", ""},
|
{2, "VGROUP", 0, "Vertex Groups", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -3537,10 +3537,10 @@ static void mesh_selection_type(Scene *scene, EditMesh *em, int val)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static EnumPropertyItem prop_mesh_edit_types[] = {
|
static EnumPropertyItem prop_mesh_edit_types[] = {
|
||||||
{1, "VERT", "Vertices", ""},
|
{1, "VERT", 0, "Vertices", ""},
|
||||||
{2, "EDGE", "Edges", ""},
|
{2, "EDGE", 0, "Edges", ""},
|
||||||
{3, "FACE", "Faces", ""},
|
{3, "FACE", 0, "Faces", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
static int mesh_selection_type_exec(bContext *C, wmOperator *op)
|
static int mesh_selection_type_exec(bContext *C, wmOperator *op)
|
||||||
|
@ -966,7 +966,7 @@ void MESH_OT_spin(wmOperatorType *ot)
|
|||||||
/* api callbacks */
|
/* api callbacks */
|
||||||
ot->invoke= spin_mesh_invoke;
|
ot->invoke= spin_mesh_invoke;
|
||||||
ot->exec= spin_mesh_exec;
|
ot->exec= spin_mesh_exec;
|
||||||
ot->poll= ED_operator_editmesh;
|
ot->poll= EM_view3d_poll;
|
||||||
|
|
||||||
/* flags */
|
/* flags */
|
||||||
ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
|
ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
|
||||||
@ -1073,7 +1073,7 @@ void MESH_OT_screw(wmOperatorType *ot)
|
|||||||
/* api callbacks */
|
/* api callbacks */
|
||||||
ot->invoke= screw_mesh_invoke;
|
ot->invoke= screw_mesh_invoke;
|
||||||
ot->exec= screw_mesh_exec;
|
ot->exec= screw_mesh_exec;
|
||||||
ot->poll= ED_operator_editmesh;
|
ot->poll= EM_view3d_poll;
|
||||||
|
|
||||||
/* flags */
|
/* flags */
|
||||||
ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
|
ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
|
||||||
@ -1273,14 +1273,14 @@ void delete_mesh(Object *obedit, EditMesh *em, wmOperator *op, int event)
|
|||||||
|
|
||||||
/* Note, these values must match delete_mesh() event values */
|
/* Note, these values must match delete_mesh() event values */
|
||||||
static EnumPropertyItem prop_mesh_delete_types[] = {
|
static EnumPropertyItem prop_mesh_delete_types[] = {
|
||||||
{10,"VERT", "Vertices", ""},
|
{10,"VERT", 0, "Vertices", ""},
|
||||||
{1, "EDGE", "Edges", ""},
|
{1, "EDGE", 0, "Edges", ""},
|
||||||
{2, "FACE", "Faces", ""},
|
{2, "FACE", 0, "Faces", ""},
|
||||||
{3, "ALL", "All", ""},
|
{3, "ALL", 0, "All", ""},
|
||||||
{4, "EDGE_FACE","Edges & Faces", ""},
|
{4, "EDGE_FACE",0, "Edges & Faces", ""},
|
||||||
{5, "ONLY_FACE","Only Faces", ""},
|
{5, "ONLY_FACE",0, "Only Faces", ""},
|
||||||
{6, "EDGE_LOOP","Edge Loop", ""},
|
{6, "EDGE_LOOP",0, "Edge Loop", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
static int delete_mesh_exec(bContext *C, wmOperator *op)
|
static int delete_mesh_exec(bContext *C, wmOperator *op)
|
||||||
@ -4656,7 +4656,7 @@ void mesh_set_face_flags(EditMesh *em, short mode)
|
|||||||
{
|
{
|
||||||
EditFace *efa;
|
EditFace *efa;
|
||||||
MTFace *tface;
|
MTFace *tface;
|
||||||
short m_tex=0, m_tiles=0, m_shared=0,
|
short m_tex=0, m_shared=0,
|
||||||
m_light=0, m_invis=0, m_collision=0,
|
m_light=0, m_invis=0, m_collision=0,
|
||||||
m_twoside=0, m_obcolor=0, m_halo=0,
|
m_twoside=0, m_obcolor=0, m_halo=0,
|
||||||
m_billboard=0, m_shadow=0, m_text=0,
|
m_billboard=0, m_shadow=0, m_text=0,
|
||||||
@ -4669,7 +4669,6 @@ void mesh_set_face_flags(EditMesh *em, short mode)
|
|||||||
// }
|
// }
|
||||||
|
|
||||||
add_numbut(0, TOG|SHO, "Texture", 0, 0, &m_tex, NULL);
|
add_numbut(0, TOG|SHO, "Texture", 0, 0, &m_tex, NULL);
|
||||||
add_numbut(1, TOG|SHO, "Tiles", 0, 0, &m_tiles, NULL);
|
|
||||||
add_numbut(2, TOG|SHO, "Light", 0, 0, &m_light, NULL);
|
add_numbut(2, TOG|SHO, "Light", 0, 0, &m_light, NULL);
|
||||||
add_numbut(3, TOG|SHO, "Invisible", 0, 0, &m_invis, NULL);
|
add_numbut(3, TOG|SHO, "Invisible", 0, 0, &m_invis, NULL);
|
||||||
add_numbut(4, TOG|SHO, "Collision", 0, 0, &m_collision, NULL);
|
add_numbut(4, TOG|SHO, "Collision", 0, 0, &m_collision, NULL);
|
||||||
@ -4691,7 +4690,6 @@ void mesh_set_face_flags(EditMesh *em, short mode)
|
|||||||
m_billboard = 0;
|
m_billboard = 0;
|
||||||
|
|
||||||
if (m_tex) flag |= TF_TEX;
|
if (m_tex) flag |= TF_TEX;
|
||||||
if (m_tiles) flag |= TF_TILES;
|
|
||||||
if (m_shared) flag |= TF_SHAREDCOL;
|
if (m_shared) flag |= TF_SHAREDCOL;
|
||||||
if (m_light) flag |= TF_LIGHT;
|
if (m_light) flag |= TF_LIGHT;
|
||||||
if (m_invis) flag |= TF_INVISIBLE;
|
if (m_invis) flag |= TF_INVISIBLE;
|
||||||
@ -4997,7 +4995,7 @@ void MESH_OT_rip(wmOperatorType *ot)
|
|||||||
|
|
||||||
/* api callbacks */
|
/* api callbacks */
|
||||||
ot->invoke= mesh_rip_invoke;
|
ot->invoke= mesh_rip_invoke;
|
||||||
ot->poll= ED_operator_editmesh; // XXX + v3d!
|
ot->poll= EM_view3d_poll;
|
||||||
|
|
||||||
/* flags */
|
/* flags */
|
||||||
ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
|
ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
|
||||||
@ -6646,11 +6644,11 @@ static int subdivs_exec(bContext *C, wmOperator *op)
|
|||||||
void MESH_OT_subdivs(wmOperatorType *ot)
|
void MESH_OT_subdivs(wmOperatorType *ot)
|
||||||
{
|
{
|
||||||
static EnumPropertyItem type_items[]= {
|
static EnumPropertyItem type_items[]= {
|
||||||
{0, "SIMPLE", "Simple", ""},
|
{0, "SIMPLE", 0, "Simple", ""},
|
||||||
{1, "MULTI", "Multi", ""},
|
{1, "MULTI", 0, "Multi", ""},
|
||||||
{2, "FRACTAL", "Fractal", ""},
|
{2, "FRACTAL", 0, "Fractal", ""},
|
||||||
{3, "SMOOTH", "Smooth", ""},
|
{3, "SMOOTH", 0, "Smooth", ""},
|
||||||
{0, NULL, NULL}};
|
{0, NULL, 0, NULL, NULL}};
|
||||||
|
|
||||||
/* identifiers */
|
/* identifiers */
|
||||||
ot->name= "subdivs";
|
ot->name= "subdivs";
|
||||||
|
@ -135,6 +135,7 @@ extern int convex(float *v1, float *v2, float *v3, float *v4);
|
|||||||
extern struct EditFace *EM_face_from_faces(EditMesh *em, struct EditFace *efa1,
|
extern struct EditFace *EM_face_from_faces(EditMesh *em, struct EditFace *efa1,
|
||||||
struct EditFace *efa2, int i1, int i2, int i3, int i4);
|
struct EditFace *efa2, int i1, int i2, int i3, int i4);
|
||||||
|
|
||||||
|
extern int EM_view3d_poll(struct bContext *C);
|
||||||
|
|
||||||
/* ******************* editmesh_loop.c */
|
/* ******************* editmesh_loop.c */
|
||||||
|
|
||||||
|
@ -244,17 +244,17 @@ void ED_object_base_init_from_view(bContext *C, Base *base)
|
|||||||
/* ******************* add object operator ****************** */
|
/* ******************* add object operator ****************** */
|
||||||
|
|
||||||
static EnumPropertyItem prop_object_types[] = {
|
static EnumPropertyItem prop_object_types[] = {
|
||||||
{OB_EMPTY, "EMPTY", "Empty", ""},
|
{OB_EMPTY, "EMPTY", 0, "Empty", ""},
|
||||||
{OB_MESH, "MESH", "Mesh", ""},
|
{OB_MESH, "MESH", 0, "Mesh", ""},
|
||||||
{OB_CURVE, "CURVE", "Curve", ""},
|
{OB_CURVE, "CURVE", 0, "Curve", ""},
|
||||||
{OB_SURF, "SURFACE", "Surface", ""},
|
{OB_SURF, "SURFACE", 0, "Surface", ""},
|
||||||
{OB_FONT, "TEXT", "Text", ""},
|
{OB_FONT, "TEXT", 0, "Text", ""},
|
||||||
{OB_MBALL, "META", "Meta", ""},
|
{OB_MBALL, "META", 0, "Meta", ""},
|
||||||
{OB_LAMP, "LAMP", "Lamp", ""},
|
{OB_LAMP, "LAMP", 0, "Lamp", ""},
|
||||||
{OB_CAMERA, "CAMERA", "Camera", ""},
|
{OB_CAMERA, "CAMERA", 0, "Camera", ""},
|
||||||
{OB_ARMATURE, "ARMATURE", "Armature", ""},
|
{OB_ARMATURE, "ARMATURE", 0, "Armature", ""},
|
||||||
{OB_LATTICE, "LATTICE", "Lattice", ""},
|
{OB_LATTICE, "LATTICE", 0, "Lattice", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -321,16 +321,16 @@ void OBJECT_OT_object_add(wmOperatorType *ot)
|
|||||||
/* ****** work both in and outside editmode ****** */
|
/* ****** work both in and outside editmode ****** */
|
||||||
|
|
||||||
static EnumPropertyItem prop_mesh_types[] = {
|
static EnumPropertyItem prop_mesh_types[] = {
|
||||||
{0, "PLANE", "Plane", ""},
|
{0, "PLANE", 0, "Plane", ""},
|
||||||
{1, "CUBE", "Cube", ""},
|
{1, "CUBE", 0, "Cube", ""},
|
||||||
{2, "CIRCLE", "Circle", ""},
|
{2, "CIRCLE", 0, "Circle", ""},
|
||||||
{3, "UVSPHERE", "UVsphere", ""},
|
{3, "UVSPHERE", 0, "UVsphere", ""},
|
||||||
{4, "ICOSPHERE", "Icosphere", ""},
|
{4, "ICOSPHERE", 0, "Icosphere", ""},
|
||||||
{5, "CYLINDER", "Cylinder", ""},
|
{5, "CYLINDER", 0, "Cylinder", ""},
|
||||||
{6, "CONE", "Cone", ""},
|
{6, "CONE", 0, "Cone", ""},
|
||||||
{7, "GRID", "Grid", ""},
|
{7, "GRID", 0, "Grid", ""},
|
||||||
{8, "MONKEY", "Monkey", ""},
|
{8, "MONKEY", 0, "Monkey", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
static int object_add_mesh_exec(bContext *C, wmOperator *op)
|
static int object_add_mesh_exec(bContext *C, wmOperator *op)
|
||||||
@ -405,12 +405,12 @@ void OBJECT_OT_mesh_add(wmOperatorType *ot)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static EnumPropertyItem prop_curve_types[] = {
|
static EnumPropertyItem prop_curve_types[] = {
|
||||||
{CU_BEZIER|CU_2D|CU_PRIM_CURVE, "BEZIER_CURVE", "Bezier Curve", ""},
|
{CU_BEZIER|CU_2D|CU_PRIM_CURVE, "BEZIER_CURVE", 0, "Bezier Curve", ""},
|
||||||
{CU_BEZIER|CU_2D|CU_PRIM_CIRCLE, "BEZIER_CIRCLE", "Bezier Circle", ""},
|
{CU_BEZIER|CU_2D|CU_PRIM_CIRCLE, "BEZIER_CIRCLE", 0, "Bezier Circle", ""},
|
||||||
{CU_NURBS|CU_2D|CU_PRIM_CURVE, "NURBS_CURVE", "NURBS Curve", ""},
|
{CU_NURBS|CU_2D|CU_PRIM_CURVE, "NURBS_CURVE", 0, "NURBS Curve", ""},
|
||||||
{CU_NURBS|CU_2D|CU_PRIM_CIRCLE, "NURBS_CIRCLE", "NURBS Circle", ""},
|
{CU_NURBS|CU_2D|CU_PRIM_CIRCLE, "NURBS_CIRCLE", 0, "NURBS Circle", ""},
|
||||||
{CU_NURBS|CU_2D|CU_PRIM_PATH, "PATH", "Path", ""},
|
{CU_NURBS|CU_2D|CU_PRIM_PATH, "PATH", 0, "Path", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
static int object_add_curve_exec(bContext *C, wmOperator *op)
|
static int object_add_curve_exec(bContext *C, wmOperator *op)
|
||||||
@ -479,13 +479,13 @@ void OBJECT_OT_curve_add(wmOperatorType *ot)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static EnumPropertyItem prop_surface_types[]= {
|
static EnumPropertyItem prop_surface_types[]= {
|
||||||
{CU_PRIM_CURVE|CU_NURBS, "NURBS_CURVE", "NURBS Curve", ""},
|
{CU_PRIM_CURVE|CU_NURBS, "NURBS_CURVE", 0, "NURBS Curve", ""},
|
||||||
{CU_PRIM_CIRCLE|CU_NURBS, "NURBS_CIRCLE", "NURBS Circle", ""},
|
{CU_PRIM_CIRCLE|CU_NURBS, "NURBS_CIRCLE", 0, "NURBS Circle", ""},
|
||||||
{CU_PRIM_PATCH|CU_NURBS, "NURBS_SURFACE", "NURBS Surface", ""},
|
{CU_PRIM_PATCH|CU_NURBS, "NURBS_SURFACE", 0, "NURBS Surface", ""},
|
||||||
{CU_PRIM_TUBE|CU_NURBS, "NURBS_TUBE", "NURBS Tube", ""},
|
{CU_PRIM_TUBE|CU_NURBS, "NURBS_TUBE", 0, "NURBS Tube", ""},
|
||||||
{CU_PRIM_SPHERE|CU_NURBS, "NURBS_SPHERE", "NURBS Sphere", ""},
|
{CU_PRIM_SPHERE|CU_NURBS, "NURBS_SPHERE", 0, "NURBS Sphere", ""},
|
||||||
{CU_PRIM_DONUT|CU_NURBS, "NURBS_DONUT", "NURBS Donut", ""},
|
{CU_PRIM_DONUT|CU_NURBS, "NURBS_DONUT", 0, "NURBS Donut", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
static int object_add_surface_exec(bContext *C, wmOperator *op)
|
static int object_add_surface_exec(bContext *C, wmOperator *op)
|
||||||
@ -1366,10 +1366,10 @@ void add_hook_menu(Scene *scene, View3D *v3d)
|
|||||||
/* ******************** clear parent operator ******************* */
|
/* ******************** clear parent operator ******************* */
|
||||||
|
|
||||||
static EnumPropertyItem prop_clear_parent_types[] = {
|
static EnumPropertyItem prop_clear_parent_types[] = {
|
||||||
{0, "CLEAR", "Clear Parent", ""},
|
{0, "CLEAR", 0, "Clear Parent", ""},
|
||||||
{1, "CLEAR_KEEP_TRANSFORM", "Clear and Keep Transformation (Clear Track)", ""},
|
{1, "CLEAR_KEEP_TRANSFORM", 0, "Clear and Keep Transformation (Clear Track)", ""},
|
||||||
{2, "CLEAR_INVERSE", "Clear Parent Inverse", ""},
|
{2, "CLEAR_INVERSE", 0, "Clear Parent Inverse", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* note, poll should check for editable scene */
|
/* note, poll should check for editable scene */
|
||||||
@ -1422,9 +1422,9 @@ void OBJECT_OT_parent_clear(wmOperatorType *ot)
|
|||||||
|
|
||||||
|
|
||||||
static EnumPropertyItem prop_clear_track_types[] = {
|
static EnumPropertyItem prop_clear_track_types[] = {
|
||||||
{0, "CLEAR", "Clear Track", ""},
|
{0, "CLEAR", 0, "Clear Track", ""},
|
||||||
{1, "CLEAR_KEEP_TRANSFORM", "Clear and Keep Transformation (Clear Track)", ""},
|
{1, "CLEAR_KEEP_TRANSFORM", 0, "Clear and Keep Transformation (Clear Track)", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* note, poll should check for editable scene */
|
/* note, poll should check for editable scene */
|
||||||
@ -1471,9 +1471,9 @@ void OBJECT_OT_track_clear(wmOperatorType *ot)
|
|||||||
|
|
||||||
/* *****************Selection Operators******************* */
|
/* *****************Selection Operators******************* */
|
||||||
static EnumPropertyItem prop_select_types[] = {
|
static EnumPropertyItem prop_select_types[] = {
|
||||||
{0, "EXCLUSIVE", "Exclusive", ""},
|
{0, "EXCLUSIVE", 0, "Exclusive", ""},
|
||||||
{1, "EXTEND", "Extend", ""},
|
{1, "EXTEND", 0, "Extend", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* ****** Select by Type ****** */
|
/* ****** Select by Type ****** */
|
||||||
@ -1526,13 +1526,13 @@ void OBJECT_OT_select_by_type(wmOperatorType *ot)
|
|||||||
/* ****** selection by links *******/
|
/* ****** selection by links *******/
|
||||||
|
|
||||||
static EnumPropertyItem prop_select_linked_types[] = {
|
static EnumPropertyItem prop_select_linked_types[] = {
|
||||||
{1, "IPO", "Object IPO", ""}, // XXX depreceated animation system stuff...
|
{1, "IPO", 0, "Object IPO", ""}, // XXX depreceated animation system stuff...
|
||||||
{2, "OBDATA", "Ob Data", ""},
|
{2, "OBDATA", 0, "Ob Data", ""},
|
||||||
{3, "MATERIAL", "Material", ""},
|
{3, "MATERIAL", 0, "Material", ""},
|
||||||
{4, "TEXTURE", "Texture", ""},
|
{4, "TEXTURE", 0, "Texture", ""},
|
||||||
{5, "DUPGROUP", "Dupligroup", ""},
|
{5, "DUPGROUP", 0, "Dupligroup", ""},
|
||||||
{6, "PARTICLE", "Particle System", ""},
|
{6, "PARTICLE", 0, "Particle System", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
static int object_select_linked_exec(bContext *C, wmOperator *op)
|
static int object_select_linked_exec(bContext *C, wmOperator *op)
|
||||||
@ -2085,9 +2085,9 @@ void OBJECT_OT_restrictview_clear(wmOperatorType *ot)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static EnumPropertyItem prop_set_restrictview_types[] = {
|
static EnumPropertyItem prop_set_restrictview_types[] = {
|
||||||
{0, "SELECTED", "Selected", ""},
|
{0, "SELECTED", 0, "Selected", ""},
|
||||||
{1, "UNSELECTED", "Unselected ", ""},
|
{1, "UNSELECTED", 0, "Unselected ", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
static int object_restrictview_set_exec(bContext *C, wmOperator *op)
|
static int object_restrictview_set_exec(bContext *C, wmOperator *op)
|
||||||
@ -2462,16 +2462,16 @@ void make_proxy(Scene *scene)
|
|||||||
#define PAR_TRIA 8
|
#define PAR_TRIA 8
|
||||||
|
|
||||||
static EnumPropertyItem prop_make_parent_types[] = {
|
static EnumPropertyItem prop_make_parent_types[] = {
|
||||||
{PAR_OBJECT, "OBJECT", "Object", ""},
|
{PAR_OBJECT, "OBJECT", 0, "Object", ""},
|
||||||
{PAR_ARMATURE, "ARMATURE", "Armature Deform", ""},
|
{PAR_ARMATURE, "ARMATURE", 0, "Armature Deform", ""},
|
||||||
{PAR_BONE, "BONE", "Bone", ""},
|
{PAR_BONE, "BONE", 0, "Bone", ""},
|
||||||
{PAR_CURVE, "CURVE", "Curve Deform", ""},
|
{PAR_CURVE, "CURVE", 0, "Curve Deform", ""},
|
||||||
{PAR_FOLLOW, "FOLLOW", "Follow Path", ""},
|
{PAR_FOLLOW, "FOLLOW", 0, "Follow Path", ""},
|
||||||
{PAR_PATH_CONST, "PATH_CONST", "Path Constraint", ""},
|
{PAR_PATH_CONST, "PATH_CONST", 0, "Path Constraint", ""},
|
||||||
{PAR_LATTICE, "LATTICE", "Lattice Deform", ""},
|
{PAR_LATTICE, "LATTICE", 0, "Lattice Deform", ""},
|
||||||
{PAR_VERTEX, "VERTEX", "Vertex", ""},
|
{PAR_VERTEX, "VERTEX", 0, "Vertex", ""},
|
||||||
{PAR_TRIA, "TRIA", "Triangle", ""},
|
{PAR_TRIA, "TRIA", 0, "Triangle", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
static int test_parent_loop(Object *par, Object *ob)
|
static int test_parent_loop(Object *par, Object *ob)
|
||||||
@ -2655,10 +2655,10 @@ void OBJECT_OT_parent_set(wmOperatorType *ot)
|
|||||||
|
|
||||||
/* *** make track ***** */
|
/* *** make track ***** */
|
||||||
static EnumPropertyItem prop_make_track_types[] = {
|
static EnumPropertyItem prop_make_track_types[] = {
|
||||||
{1, "TRACKTO", "TrackTo Constraint", ""},
|
{1, "TRACKTO", 0, "TrackTo Constraint", ""},
|
||||||
{2, "LOCKTRACK", "LockTrack Constraint", ""},
|
{2, "LOCKTRACK", 0, "LockTrack Constraint", ""},
|
||||||
{3, "OLDTRACK", "Old Track", ""},
|
{3, "OLDTRACK", 0, "Old Track", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
static int track_set_exec(bContext *C, wmOperator *op)
|
static int track_set_exec(bContext *C, wmOperator *op)
|
||||||
@ -2831,10 +2831,10 @@ void OBJECT_OT_dupli_set_real(wmOperatorType *ot)
|
|||||||
/* ******************* Set Object Center ********************** */
|
/* ******************* Set Object Center ********************** */
|
||||||
|
|
||||||
static EnumPropertyItem prop_set_center_types[] = {
|
static EnumPropertyItem prop_set_center_types[] = {
|
||||||
{0, "CENTER", "ObData to Center", "Move object data around Object center"},
|
{0, "CENTER", 0, "ObData to Center", "Move object data around Object center"},
|
||||||
{1, "CENTERNEW", "Center New", "Move Object center to center of object data"},
|
{1, "CENTERNEW", 0, "Center New", "Move Object center to center of object data"},
|
||||||
{2, "CENTERCURSOR", "Center Cursor", "Move Object Center to position of the 3d cursor"},
|
{2, "CENTERCURSOR", 0, "Center Cursor", "Move Object Center to position of the 3d cursor"},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* 0 == do center, 1 == center new, 2 == center cursor */
|
/* 0 == do center, 1 == center new, 2 == center cursor */
|
||||||
|
@ -2347,8 +2347,8 @@ void PARTICLE_OT_brush_radial_control(wmOperatorType *ot)
|
|||||||
enum { DEL_PARTICLE, DEL_KEY };
|
enum { DEL_PARTICLE, DEL_KEY };
|
||||||
|
|
||||||
static EnumPropertyItem delete_type_items[]= {
|
static EnumPropertyItem delete_type_items[]= {
|
||||||
{DEL_PARTICLE, "PARTICLE", "Particle", ""},
|
{DEL_PARTICLE, "PARTICLE", 0, "Particle", ""},
|
||||||
{DEL_KEY, "KEY", "Key", ""},
|
{DEL_KEY, "KEY", 0, "Key", ""},
|
||||||
{0, NULL, NULL}};
|
{0, NULL, NULL}};
|
||||||
|
|
||||||
static void set_delete_particle(PEData *data, int pa_index)
|
static void set_delete_particle(PEData *data, int pa_index)
|
||||||
@ -2563,15 +2563,15 @@ void PARTICLE_OT_mirror(wmOperatorType *ot)
|
|||||||
/*********************** set brush operator **********************/
|
/*********************** set brush operator **********************/
|
||||||
|
|
||||||
static EnumPropertyItem brush_type_items[]= {
|
static EnumPropertyItem brush_type_items[]= {
|
||||||
{PE_BRUSH_NONE, "NONE", "None", ""},
|
{PE_BRUSH_NONE, "NONE", 0, "None", ""},
|
||||||
{PE_BRUSH_COMB, "COMB", "Comb", ""},
|
{PE_BRUSH_COMB, "COMB", 0, "Comb", ""},
|
||||||
{PE_BRUSH_SMOOTH, "SMOOTH", "Smooth", ""},
|
{PE_BRUSH_SMOOTH, "SMOOTH", 0, "Smooth", ""},
|
||||||
{PE_BRUSH_WEIGHT, "WEIGHT", "Weight", ""},
|
{PE_BRUSH_WEIGHT, "WEIGHT", 0, "Weight", ""},
|
||||||
{PE_BRUSH_ADD, "ADD", "Add", ""},
|
{PE_BRUSH_ADD, "ADD", 0, "Add", ""},
|
||||||
{PE_BRUSH_LENGTH, "LENGTH", "Length", ""},
|
{PE_BRUSH_LENGTH, "LENGTH", 0, "Length", ""},
|
||||||
{PE_BRUSH_PUFF, "PUFF", "Puff", ""},
|
{PE_BRUSH_PUFF, "PUFF", 0, "Puff", ""},
|
||||||
{PE_BRUSH_CUT, "CUT", "Cut", ""},
|
{PE_BRUSH_CUT, "CUT", 0, "Cut", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
static int set_brush_exec(bContext *C, wmOperator *op)
|
static int set_brush_exec(bContext *C, wmOperator *op)
|
||||||
|
@ -1048,6 +1048,7 @@ static char *windowtype_pup(void)
|
|||||||
"|Outliner %x3" //232
|
"|Outliner %x3" //232
|
||||||
"|Buttons Window %x4" //251
|
"|Buttons Window %x4" //251
|
||||||
"|Node Editor %x16"
|
"|Node Editor %x16"
|
||||||
|
"|Logic Editor %x17"
|
||||||
"|%l" //254
|
"|%l" //254
|
||||||
|
|
||||||
"|File Browser %x5" //290
|
"|File Browser %x5" //290
|
||||||
@ -1106,6 +1107,7 @@ int ED_area_header_standardbuttons(const bContext *C, uiBlock *block, int yco)
|
|||||||
|
|
||||||
void ED_region_panels(const bContext *C, ARegion *ar, int vertical, char *context)
|
void ED_region_panels(const bContext *C, ARegion *ar, int vertical, char *context)
|
||||||
{
|
{
|
||||||
|
ScrArea *sa= CTX_wm_area(C);
|
||||||
uiStyle *style= U.uistyles.first;
|
uiStyle *style= U.uistyles.first;
|
||||||
uiBlock *block;
|
uiBlock *block;
|
||||||
PanelType *pt;
|
PanelType *pt;
|
||||||
@ -1143,7 +1145,7 @@ void ED_region_panels(const bContext *C, ARegion *ar, int vertical, char *contex
|
|||||||
/* draw panel */
|
/* draw panel */
|
||||||
if(pt->draw && (!pt->poll || pt->poll(C, pt))) {
|
if(pt->draw && (!pt->poll || pt->poll(C, pt))) {
|
||||||
block= uiBeginBlock(C, ar, pt->idname, UI_EMBOSS);
|
block= uiBeginBlock(C, ar, pt->idname, UI_EMBOSS);
|
||||||
panel= uiBeginPanel(ar, block, pt, &open);
|
panel= uiBeginPanel(sa, ar, block, pt, &open);
|
||||||
|
|
||||||
if(vertical)
|
if(vertical)
|
||||||
y -= header;
|
y -= header;
|
||||||
@ -1161,7 +1163,6 @@ void ED_region_panels(const bContext *C, ARegion *ar, int vertical, char *contex
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(open) {
|
if(open) {
|
||||||
panel->type= pt;
|
|
||||||
panel->layout= uiBlockLayout(block, UI_LAYOUT_VERTICAL, UI_LAYOUT_PANEL,
|
panel->layout= uiBlockLayout(block, UI_LAYOUT_VERTICAL, UI_LAYOUT_PANEL,
|
||||||
style->panelspace, 0, w-2*style->panelspace, em, style);
|
style->panelspace, 0, w-2*style->panelspace, em, style);
|
||||||
|
|
||||||
@ -1173,8 +1174,10 @@ void ED_region_panels(const bContext *C, ARegion *ar, int vertical, char *contex
|
|||||||
yco -= 2*style->panelspace;
|
yco -= 2*style->panelspace;
|
||||||
uiEndPanel(block, w, -yco);
|
uiEndPanel(block, w, -yco);
|
||||||
}
|
}
|
||||||
else
|
else {
|
||||||
yco= 0;
|
yco= 0;
|
||||||
|
uiEndPanel(block, w, 0);
|
||||||
|
}
|
||||||
|
|
||||||
uiEndBlock(C, block);
|
uiEndBlock(C, block);
|
||||||
|
|
||||||
|
@ -179,6 +179,11 @@ int ED_operator_image_active(bContext *C)
|
|||||||
return ed_spacetype_test(C, SPACE_IMAGE);
|
return ed_spacetype_test(C, SPACE_IMAGE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int ED_operator_logic_active(bContext *C)
|
||||||
|
{
|
||||||
|
return ed_spacetype_test(C, SPACE_LOGIC);
|
||||||
|
}
|
||||||
|
|
||||||
int ED_operator_object_active(bContext *C)
|
int ED_operator_object_active(bContext *C)
|
||||||
{
|
{
|
||||||
return NULL != CTX_data_active_object(C);
|
return NULL != CTX_data_active_object(C);
|
||||||
@ -1192,9 +1197,9 @@ static int area_split_modal(bContext *C, wmOperator *op, wmEvent *event)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static EnumPropertyItem prop_direction_items[] = {
|
static EnumPropertyItem prop_direction_items[] = {
|
||||||
{'h', "HORIZONTAL", "Horizontal", ""},
|
{'h', "HORIZONTAL", 0, "Horizontal", ""},
|
||||||
{'v', "VERTICAL", "Vertical", ""},
|
{'v', "VERTICAL", 0, "Vertical", ""},
|
||||||
{0, NULL, NULL, NULL}};
|
{0, NULL, 0, NULL, NULL}};
|
||||||
|
|
||||||
void SCREEN_OT_area_split(wmOperatorType *ot)
|
void SCREEN_OT_area_split(wmOperatorType *ot)
|
||||||
{
|
{
|
||||||
|
@ -4517,6 +4517,9 @@ static int paint_init(bContext *C, wmOperator *op)
|
|||||||
pop->ps.ar= CTX_wm_region(C);
|
pop->ps.ar= CTX_wm_region(C);
|
||||||
|
|
||||||
/* intialize brush */
|
/* intialize brush */
|
||||||
|
if(!settings->imapaint.brush)
|
||||||
|
return 0;
|
||||||
|
|
||||||
pop->s.brush = settings->imapaint.brush;
|
pop->s.brush = settings->imapaint.brush;
|
||||||
pop->s.tool = settings->imapaint.tool;
|
pop->s.tool = settings->imapaint.tool;
|
||||||
if(pop->mode == PAINT_MODE_3D && (pop->s.tool == PAINT_TOOL_CLONE))
|
if(pop->mode == PAINT_MODE_3D && (pop->s.tool == PAINT_TOOL_CLONE))
|
||||||
@ -4536,6 +4539,10 @@ static int paint_init(bContext *C, wmOperator *op)
|
|||||||
if (!pop->s.ob || !(pop->s.ob->lay & pop->ps.v3d->lay)) return 0;
|
if (!pop->s.ob || !(pop->s.ob->lay & pop->ps.v3d->lay)) return 0;
|
||||||
pop->s.me = get_mesh(pop->s.ob);
|
pop->s.me = get_mesh(pop->s.ob);
|
||||||
if (!pop->s.me) return 0;
|
if (!pop->s.me) return 0;
|
||||||
|
|
||||||
|
/* Dont allow brush size below 2 */
|
||||||
|
if (pop->ps.brush && pop->ps.brush->size<=1)
|
||||||
|
pop->ps.brush->size = 2;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
pop->s.image = pop->s.sima->image;
|
pop->s.image = pop->s.sima->image;
|
||||||
@ -4548,10 +4555,6 @@ static int paint_init(bContext *C, wmOperator *op)
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Dont allow brush size below 2 */
|
|
||||||
if (pop->ps.brush->size<=1)
|
|
||||||
pop->ps.brush->size = 2;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* note, if we have no UVs on the derived mesh, then we must return here */
|
/* note, if we have no UVs on the derived mesh, then we must return here */
|
||||||
|
@ -1245,10 +1245,10 @@ static int sculpt_brush_curve_preset_exec(bContext *C, wmOperator *op)
|
|||||||
static void SCULPT_OT_brush_curve_preset(wmOperatorType *ot)
|
static void SCULPT_OT_brush_curve_preset(wmOperatorType *ot)
|
||||||
{
|
{
|
||||||
static EnumPropertyItem prop_mode_items[] = {
|
static EnumPropertyItem prop_mode_items[] = {
|
||||||
{BRUSH_PRESET_SHARP, "SHARP", "Sharp Curve", ""},
|
{BRUSH_PRESET_SHARP, "SHARP", 0, "Sharp Curve", ""},
|
||||||
{BRUSH_PRESET_SMOOTH, "SMOOTH", "Smooth Curve", ""},
|
{BRUSH_PRESET_SMOOTH, "SMOOTH", 0, "Smooth Curve", ""},
|
||||||
{BRUSH_PRESET_MAX, "MAX", "Max Curve", ""},
|
{BRUSH_PRESET_MAX, "MAX", 0, "Max Curve", ""},
|
||||||
{0, NULL, NULL, NULL}};
|
{0, NULL, 0, NULL, NULL}};
|
||||||
|
|
||||||
ot->name= "Preset";
|
ot->name= "Preset";
|
||||||
ot->idname= "SCULPT_OT_brush_curve_preset";
|
ot->idname= "SCULPT_OT_brush_curve_preset";
|
||||||
|
@ -369,10 +369,10 @@ void ACT_OT_keyframes_paste (wmOperatorType *ot)
|
|||||||
|
|
||||||
/* defines for insert keyframes tool */
|
/* defines for insert keyframes tool */
|
||||||
EnumPropertyItem prop_actkeys_insertkey_types[] = {
|
EnumPropertyItem prop_actkeys_insertkey_types[] = {
|
||||||
{1, "ALL", "All Channels", ""},
|
{1, "ALL", 0, "All Channels", ""},
|
||||||
{2, "SEL", "Only Selected Channels", ""},
|
{2, "SEL", 0, "Only Selected Channels", ""},
|
||||||
{3, "GROUP", "In Active Group", ""}, // xxx not in all cases
|
{3, "GROUP", 0, "In Active Group", ""}, // xxx not in all cases
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* this function is responsible for snapping keyframes to frame-times */
|
/* this function is responsible for snapping keyframes to frame-times */
|
||||||
@ -799,9 +799,9 @@ void ACT_OT_keyframes_sample (wmOperatorType *ot)
|
|||||||
|
|
||||||
/* defines for set extrapolation-type for selected keyframes tool */
|
/* defines for set extrapolation-type for selected keyframes tool */
|
||||||
EnumPropertyItem prop_actkeys_expo_types[] = {
|
EnumPropertyItem prop_actkeys_expo_types[] = {
|
||||||
{FCURVE_EXTRAPOLATE_CONSTANT, "CONSTANT", "Constant Extrapolation", ""},
|
{FCURVE_EXTRAPOLATE_CONSTANT, "CONSTANT", 0, "Constant Extrapolation", ""},
|
||||||
{FCURVE_EXTRAPOLATE_LINEAR, "LINEAR", "Linear Extrapolation", ""},
|
{FCURVE_EXTRAPOLATE_LINEAR, "LINEAR", 0, "Linear Extrapolation", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* this function is responsible for setting extrapolation mode for keyframes */
|
/* this function is responsible for setting extrapolation mode for keyframes */
|
||||||
@ -1089,11 +1089,11 @@ void ACT_OT_keyframes_cfrasnap (wmOperatorType *ot)
|
|||||||
|
|
||||||
/* defines for snap keyframes tool */
|
/* defines for snap keyframes tool */
|
||||||
EnumPropertyItem prop_actkeys_snap_types[] = {
|
EnumPropertyItem prop_actkeys_snap_types[] = {
|
||||||
{ACTKEYS_SNAP_CFRA, "CFRA", "Current frame", ""},
|
{ACTKEYS_SNAP_CFRA, "CFRA", 0, "Current frame", ""},
|
||||||
{ACTKEYS_SNAP_NEAREST_FRAME, "NEAREST_FRAME", "Nearest Frame", ""}, // XXX as single entry?
|
{ACTKEYS_SNAP_NEAREST_FRAME, "NEAREST_FRAME", 0, "Nearest Frame", ""}, // XXX as single entry?
|
||||||
{ACTKEYS_SNAP_NEAREST_SECOND, "NEAREST_SECOND", "Nearest Second", ""}, // XXX as single entry?
|
{ACTKEYS_SNAP_NEAREST_SECOND, "NEAREST_SECOND", 0, "Nearest Second", ""}, // XXX as single entry?
|
||||||
{ACTKEYS_SNAP_NEAREST_MARKER, "NEAREST_MARKER", "Nearest Marker", ""},
|
{ACTKEYS_SNAP_NEAREST_MARKER, "NEAREST_MARKER", 0, "Nearest Marker", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* this function is responsible for snapping keyframes to frame-times */
|
/* this function is responsible for snapping keyframes to frame-times */
|
||||||
@ -1188,11 +1188,11 @@ void ACT_OT_keyframes_snap (wmOperatorType *ot)
|
|||||||
|
|
||||||
/* defines for mirror keyframes tool */
|
/* defines for mirror keyframes tool */
|
||||||
EnumPropertyItem prop_actkeys_mirror_types[] = {
|
EnumPropertyItem prop_actkeys_mirror_types[] = {
|
||||||
{ACTKEYS_MIRROR_CFRA, "CFRA", "Current frame", ""},
|
{ACTKEYS_MIRROR_CFRA, "CFRA", 0, "Current frame", ""},
|
||||||
{ACTKEYS_MIRROR_YAXIS, "YAXIS", "Vertical Axis", ""},
|
{ACTKEYS_MIRROR_YAXIS, "YAXIS", 0, "Vertical Axis", ""},
|
||||||
{ACTKEYS_MIRROR_XAXIS, "XAXIS", "Horizontal Axis", ""},
|
{ACTKEYS_MIRROR_XAXIS, "XAXIS", 0, "Horizontal Axis", ""},
|
||||||
{ACTKEYS_MIRROR_MARKER, "MARKER", "First Selected Marker", ""},
|
{ACTKEYS_MIRROR_MARKER, "MARKER", 0, "First Selected Marker", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* this function is responsible for mirroring keyframes */
|
/* this function is responsible for mirroring keyframes */
|
||||||
|
@ -374,11 +374,11 @@ void ACT_OT_keyframes_select_border(wmOperatorType *ot)
|
|||||||
|
|
||||||
/* defines for column-select mode */
|
/* defines for column-select mode */
|
||||||
static EnumPropertyItem prop_column_select_types[] = {
|
static EnumPropertyItem prop_column_select_types[] = {
|
||||||
{ACTKEYS_COLUMNSEL_KEYS, "KEYS", "On Selected Keyframes", ""},
|
{ACTKEYS_COLUMNSEL_KEYS, "KEYS", 0, "On Selected Keyframes", ""},
|
||||||
{ACTKEYS_COLUMNSEL_CFRA, "CFRA", "On Current Frame", ""},
|
{ACTKEYS_COLUMNSEL_CFRA, "CFRA", 0, "On Current Frame", ""},
|
||||||
{ACTKEYS_COLUMNSEL_MARKERS_COLUMN, "MARKERS_COLUMN", "On Selected Markers", ""},
|
{ACTKEYS_COLUMNSEL_MARKERS_COLUMN, "MARKERS_COLUMN", 0, "On Selected Markers", ""},
|
||||||
{ACTKEYS_COLUMNSEL_MARKERS_BETWEEN, "MARKERS_BETWEEN", "Between Min/Max Selected Markers", ""},
|
{ACTKEYS_COLUMNSEL_MARKERS_BETWEEN, "MARKERS_BETWEEN", 0, "Between Min/Max Selected Markers", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* ------------------- */
|
/* ------------------- */
|
||||||
@ -584,11 +584,11 @@ void ACT_OT_keyframes_select_column (wmOperatorType *ot)
|
|||||||
|
|
||||||
/* defines for left-right select tool */
|
/* defines for left-right select tool */
|
||||||
static EnumPropertyItem prop_actkeys_leftright_select_types[] = {
|
static EnumPropertyItem prop_actkeys_leftright_select_types[] = {
|
||||||
{ACTKEYS_LRSEL_TEST, "CHECK", "Check if Select Left or Right", ""},
|
{ACTKEYS_LRSEL_TEST, "CHECK", 0, "Check if Select Left or Right", ""},
|
||||||
{ACTKEYS_LRSEL_NONE, "OFF", "Don't select", ""},
|
{ACTKEYS_LRSEL_NONE, "OFF", 0, "Don't select", ""},
|
||||||
{ACTKEYS_LRSEL_LEFT, "LEFT", "Before current frame", ""},
|
{ACTKEYS_LRSEL_LEFT, "LEFT", 0, "Before current frame", ""},
|
||||||
{ACTKEYS_LRSEL_RIGHT, "RIGHT", "After current frame", ""},
|
{ACTKEYS_LRSEL_RIGHT, "RIGHT", 0, "After current frame", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* sensitivity factor for frame-selections */
|
/* sensitivity factor for frame-selections */
|
||||||
|
@ -73,6 +73,7 @@ void ED_spacetypes_init(void)
|
|||||||
ED_spacetype_script();
|
ED_spacetype_script();
|
||||||
ED_spacetype_text();
|
ED_spacetype_text();
|
||||||
ED_spacetype_sequencer();
|
ED_spacetype_sequencer();
|
||||||
|
ED_spacetype_logic();
|
||||||
// ...
|
// ...
|
||||||
|
|
||||||
/* register operator types for screen and all spaces */
|
/* register operator types for screen and all spaces */
|
||||||
|
@ -1001,9 +1001,9 @@ void GRAPHEDIT_OT_keyframes_sample (wmOperatorType *ot)
|
|||||||
|
|
||||||
/* defines for set extrapolation-type for selected keyframes tool */
|
/* defines for set extrapolation-type for selected keyframes tool */
|
||||||
EnumPropertyItem prop_graphkeys_expo_types[] = {
|
EnumPropertyItem prop_graphkeys_expo_types[] = {
|
||||||
{FCURVE_EXTRAPOLATE_CONSTANT, "CONSTANT", "Constant Extrapolation", ""},
|
{FCURVE_EXTRAPOLATE_CONSTANT, "CONSTANT", 0, "Constant Extrapolation", ""},
|
||||||
{FCURVE_EXTRAPOLATE_LINEAR, "LINEAR", "Linear Extrapolation", ""},
|
{FCURVE_EXTRAPOLATE_LINEAR, "LINEAR", 0, "Linear Extrapolation", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* this function is responsible for setting extrapolation mode for keyframes */
|
/* this function is responsible for setting extrapolation mode for keyframes */
|
||||||
@ -1371,12 +1371,12 @@ void GRAPHEDIT_OT_keyframes_cfrasnap (wmOperatorType *ot)
|
|||||||
|
|
||||||
/* defines for snap keyframes tool */
|
/* defines for snap keyframes tool */
|
||||||
EnumPropertyItem prop_graphkeys_snap_types[] = {
|
EnumPropertyItem prop_graphkeys_snap_types[] = {
|
||||||
{GRAPHKEYS_SNAP_CFRA, "CFRA", "Current frame", ""},
|
{GRAPHKEYS_SNAP_CFRA, "CFRA", 0, "Current frame", ""},
|
||||||
{GRAPHKEYS_SNAP_NEAREST_FRAME, "NEAREST_FRAME", "Nearest Frame", ""}, // XXX as single entry?
|
{GRAPHKEYS_SNAP_NEAREST_FRAME, "NEAREST_FRAME", 0, "Nearest Frame", ""}, // XXX as single entry?
|
||||||
{GRAPHKEYS_SNAP_NEAREST_SECOND, "NEAREST_SECOND", "Nearest Second", ""}, // XXX as single entry?
|
{GRAPHKEYS_SNAP_NEAREST_SECOND, "NEAREST_SECOND", 0, "Nearest Second", ""}, // XXX as single entry?
|
||||||
{GRAPHKEYS_SNAP_NEAREST_MARKER, "NEAREST_MARKER", "Nearest Marker", ""},
|
{GRAPHKEYS_SNAP_NEAREST_MARKER, "NEAREST_MARKER", 0, "Nearest Marker", ""},
|
||||||
{GRAPHKEYS_SNAP_HORIZONTAL, "HORIZONTAL", "Flatten Handles", ""},
|
{GRAPHKEYS_SNAP_HORIZONTAL, "HORIZONTAL", 0, "Flatten Handles", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* this function is responsible for snapping keyframes to frame-times */
|
/* this function is responsible for snapping keyframes to frame-times */
|
||||||
@ -1466,11 +1466,11 @@ void GRAPHEDIT_OT_keyframes_snap (wmOperatorType *ot)
|
|||||||
|
|
||||||
/* defines for mirror keyframes tool */
|
/* defines for mirror keyframes tool */
|
||||||
EnumPropertyItem prop_graphkeys_mirror_types[] = {
|
EnumPropertyItem prop_graphkeys_mirror_types[] = {
|
||||||
{GRAPHKEYS_MIRROR_CFRA, "CFRA", "Current frame", ""},
|
{GRAPHKEYS_MIRROR_CFRA, "CFRA", 0, "Current frame", ""},
|
||||||
{GRAPHKEYS_MIRROR_YAXIS, "YAXIS", "Vertical Axis", ""},
|
{GRAPHKEYS_MIRROR_YAXIS, "YAXIS", 0, "Vertical Axis", ""},
|
||||||
{GRAPHKEYS_MIRROR_XAXIS, "XAXIS", "Horizontal Axis", ""},
|
{GRAPHKEYS_MIRROR_XAXIS, "XAXIS", 0, "Horizontal Axis", ""},
|
||||||
{GRAPHKEYS_MIRROR_MARKER, "MARKER", "First Selected Marker", ""},
|
{GRAPHKEYS_MIRROR_MARKER, "MARKER", 0, "First Selected Marker", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* this function is responsible for mirroring keyframes */
|
/* this function is responsible for mirroring keyframes */
|
||||||
|
@ -340,11 +340,11 @@ void GRAPHEDIT_OT_keyframes_select_border(wmOperatorType *ot)
|
|||||||
|
|
||||||
/* defines for column-select mode */
|
/* defines for column-select mode */
|
||||||
static EnumPropertyItem prop_column_select_types[] = {
|
static EnumPropertyItem prop_column_select_types[] = {
|
||||||
{GRAPHKEYS_COLUMNSEL_KEYS, "KEYS", "On Selected Keyframes", ""},
|
{GRAPHKEYS_COLUMNSEL_KEYS, "KEYS", 0, "On Selected Keyframes", ""},
|
||||||
{GRAPHKEYS_COLUMNSEL_CFRA, "CFRA", "On Current Frame", ""},
|
{GRAPHKEYS_COLUMNSEL_CFRA, "CFRA", 0, "On Current Frame", ""},
|
||||||
{GRAPHKEYS_COLUMNSEL_MARKERS_COLUMN, "MARKERS_COLUMN", "On Selected Markers", ""},
|
{GRAPHKEYS_COLUMNSEL_MARKERS_COLUMN, "MARKERS_COLUMN", 0, "On Selected Markers", ""},
|
||||||
{GRAPHKEYS_COLUMNSEL_MARKERS_BETWEEN, "MARKERS_BETWEEN", "Between Min/Max Selected Markers", ""},
|
{GRAPHKEYS_COLUMNSEL_MARKERS_BETWEEN, "MARKERS_BETWEEN", 0, "Between Min/Max Selected Markers", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* ------------------- */
|
/* ------------------- */
|
||||||
@ -526,11 +526,11 @@ void GRAPHEDIT_OT_keyframes_columnselect (wmOperatorType *ot)
|
|||||||
|
|
||||||
/* defines for left-right select tool */
|
/* defines for left-right select tool */
|
||||||
static EnumPropertyItem prop_graphkeys_leftright_select_types[] = {
|
static EnumPropertyItem prop_graphkeys_leftright_select_types[] = {
|
||||||
{GRAPHKEYS_LRSEL_TEST, "CHECK", "Check if Select Left or Right", ""},
|
{GRAPHKEYS_LRSEL_TEST, "CHECK", 0, "Check if Select Left or Right", ""},
|
||||||
{GRAPHKEYS_LRSEL_NONE, "OFF", "Don't select", ""},
|
{GRAPHKEYS_LRSEL_NONE, "OFF", 0, "Don't select", ""},
|
||||||
{GRAPHKEYS_LRSEL_LEFT, "LEFT", "Before current frame", ""},
|
{GRAPHKEYS_LRSEL_LEFT, "LEFT", 0, "Before current frame", ""},
|
||||||
{GRAPHKEYS_LRSEL_RIGHT, "RIGHT", "After current frame", ""},
|
{GRAPHKEYS_LRSEL_RIGHT, "RIGHT", 0, "After current frame", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* ------------------- */
|
/* ------------------- */
|
||||||
|
@ -383,41 +383,6 @@ static void image_editcursor_buts(const bContext *C, View2D *v2d, uiBlock *block
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void image_panel_game_properties(const bContext *C, Panel *pa)
|
|
||||||
{
|
|
||||||
SpaceImage *sima= (SpaceImage*)CTX_wm_space_data(C);
|
|
||||||
ImBuf *ibuf= BKE_image_get_ibuf(sima->image, &sima->iuser);
|
|
||||||
uiBlock *block;
|
|
||||||
|
|
||||||
block= uiLayoutFreeBlock(pa->layout);
|
|
||||||
uiBlockSetHandleFunc(block, do_image_panel_events, NULL);
|
|
||||||
|
|
||||||
if (ibuf) {
|
|
||||||
char str[128];
|
|
||||||
|
|
||||||
image_info(sima->image, ibuf, str);
|
|
||||||
uiDefBut(block, LABEL, B_NOP, str, 10,180,300,19, 0, 0, 0, 0, 0, "");
|
|
||||||
|
|
||||||
uiBlockBeginAlign(block);
|
|
||||||
uiDefButBitS(block, TOG, IMA_TWINANIM, B_TWINANIM, "Anim", 10,150,140,19, &sima->image->tpageflag, 0, 0, 0, 0, "Toggles use of animated texture");
|
|
||||||
uiDefButS(block, NUM, B_TWINANIM, "Start:", 10,130,140,19, &sima->image->twsta, 0.0, 128.0, 0, 0, "Displays the start frame of an animated texture");
|
|
||||||
uiDefButS(block, NUM, B_TWINANIM, "End:", 10,110,140,19, &sima->image->twend, 0.0, 128.0, 0, 0, "Displays the end frame of an animated texture");
|
|
||||||
uiDefButS(block, NUM, B_NOP, "Speed", 10,90,140,19, &sima->image->animspeed, 1.0, 100.0, 0, 0, "Displays Speed of the animation in frames per second");
|
|
||||||
uiBlockEndAlign(block);
|
|
||||||
|
|
||||||
uiBlockBeginAlign(block);
|
|
||||||
uiDefButBitS(block, TOG, IMA_TILES, B_SIMAGETILE, "Tiles", 160,150,140,19, &sima->image->tpageflag, 0, 0, 0, 0, "Toggles use of tilemode for faces (Shift LMB to pick the tile for selected faces)");
|
|
||||||
uiDefButS(block, NUM, B_REDR, "X:", 160,130,70,19, &sima->image->xrep, 1.0, 16.0, 0, 0, "Sets the degree of repetition in the X direction");
|
|
||||||
uiDefButS(block, NUM, B_REDR, "Y:", 230,130,70,19, &sima->image->yrep, 1.0, 16.0, 0, 0, "Sets the degree of repetition in the Y direction");
|
|
||||||
uiBlockBeginAlign(block);
|
|
||||||
|
|
||||||
uiBlockBeginAlign(block);
|
|
||||||
uiDefButBitS(block, TOG, IMA_CLAMP_U, B_REDR, "ClampX", 160,100,70,19, &sima->image->tpageflag, 0, 0, 0, 0, "Disable texture repeating horizontaly");
|
|
||||||
uiDefButBitS(block, TOG, IMA_CLAMP_V, B_REDR, "ClampY", 230,100,70,19, &sima->image->tpageflag, 0, 0, 0, 0, "Disable texture repeating vertically");
|
|
||||||
uiBlockEndAlign(block);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void image_panel_view_properties(const bContext *C, Panel *pa)
|
static void image_panel_view_properties(const bContext *C, Panel *pa)
|
||||||
{
|
{
|
||||||
SpaceImage *sima= (SpaceImage*)CTX_wm_space_data(C);
|
SpaceImage *sima= (SpaceImage*)CTX_wm_space_data(C);
|
||||||
@ -1412,12 +1377,6 @@ void image_buttons_register(ARegionType *art)
|
|||||||
pt->draw= image_panel_properties;
|
pt->draw= image_panel_properties;
|
||||||
BLI_addtail(&art->paneltypes, pt);
|
BLI_addtail(&art->paneltypes, pt);
|
||||||
|
|
||||||
pt= MEM_callocN(sizeof(PanelType), "spacetype image panel game properties");
|
|
||||||
strcpy(pt->idname, "IMAGE_PT_game_properties");
|
|
||||||
strcpy(pt->label, "Game Properties");
|
|
||||||
pt->draw= image_panel_game_properties;
|
|
||||||
BLI_addtail(&art->paneltypes, pt);
|
|
||||||
|
|
||||||
pt= MEM_callocN(sizeof(PanelType), "spacetype image view properties");
|
pt= MEM_callocN(sizeof(PanelType), "spacetype image view properties");
|
||||||
strcpy(pt->idname, "IMAGE_PT_view_properties");
|
strcpy(pt->idname, "IMAGE_PT_view_properties");
|
||||||
strcpy(pt->label, "View Properties");
|
strcpy(pt->label, "View Properties");
|
||||||
|
@ -132,10 +132,10 @@ static int space_image_file_exists_poll(bContext *C)
|
|||||||
int space_image_main_area_poll(bContext *C)
|
int space_image_main_area_poll(bContext *C)
|
||||||
{
|
{
|
||||||
SpaceLink *slink= CTX_wm_space_data(C);
|
SpaceLink *slink= CTX_wm_space_data(C);
|
||||||
ARegion *ar= CTX_wm_region(C);
|
// XXX ARegion *ar= CTX_wm_region(C);
|
||||||
|
|
||||||
if(slink && (slink->spacetype == SPACE_IMAGE))
|
if(slink && (slink->spacetype == SPACE_IMAGE))
|
||||||
return (ar && ar->type->regionid == RGN_TYPE_WINDOW);
|
return 1; // XXX (ar && ar->type->regionid == RGN_TYPE_WINDOW);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -1412,9 +1412,9 @@ void IMAGE_OT_sample(wmOperatorType *ot)
|
|||||||
void IMAGE_OT_curves_point_set(wmOperatorType *ot)
|
void IMAGE_OT_curves_point_set(wmOperatorType *ot)
|
||||||
{
|
{
|
||||||
static EnumPropertyItem point_items[]= {
|
static EnumPropertyItem point_items[]= {
|
||||||
{0, "BLACK_POINT", "Black Point", ""},
|
{0, "BLACK_POINT", 0, "Black Point", ""},
|
||||||
{1, "WHITE_POINT", "White Point", ""},
|
{1, "WHITE_POINT", 0, "White Point", ""},
|
||||||
{0, NULL, NULL, NULL}};
|
{0, NULL, 0, NULL, NULL}};
|
||||||
|
|
||||||
/* identifiers */
|
/* identifiers */
|
||||||
ot->name= "Set Curves Point";
|
ot->name= "Set Curves Point";
|
||||||
|
@ -270,13 +270,6 @@ static void image_refresh(const bContext *C, ScrArea *sa)
|
|||||||
|
|
||||||
if(sima->flag & SI_EDITTILE);
|
if(sima->flag & SI_EDITTILE);
|
||||||
else sima->curtile= tf->tile;
|
else sima->curtile= tf->tile;
|
||||||
|
|
||||||
if(ima) {
|
|
||||||
if(tf->mode & TF_TILES)
|
|
||||||
ima->tpageflag |= IMA_TILES;
|
|
||||||
else
|
|
||||||
ima->tpageflag &= ~IMA_TILES;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -286,8 +279,6 @@ static void image_refresh(const bContext *C, ScrArea *sa)
|
|||||||
|
|
||||||
static void image_listener(ScrArea *sa, wmNotifier *wmn)
|
static void image_listener(ScrArea *sa, wmNotifier *wmn)
|
||||||
{
|
{
|
||||||
SpaceImage *sima= sa->spacedata.first;
|
|
||||||
|
|
||||||
/* context changes */
|
/* context changes */
|
||||||
switch(wmn->category) {
|
switch(wmn->category) {
|
||||||
case NC_SCENE:
|
case NC_SCENE:
|
||||||
@ -301,7 +292,6 @@ static void image_listener(ScrArea *sa, wmNotifier *wmn)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case NC_IMAGE:
|
case NC_IMAGE:
|
||||||
if(!wmn->reference || wmn->reference == sima->image)
|
|
||||||
ED_area_tag_redraw(sa);
|
ED_area_tag_redraw(sa);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -508,11 +498,17 @@ static void image_buttons_area_listener(ARegion *ar, wmNotifier *wmn)
|
|||||||
/* add handlers, stuff you only do once or on area/region changes */
|
/* add handlers, stuff you only do once or on area/region changes */
|
||||||
static void image_header_area_init(wmWindowManager *wm, ARegion *ar)
|
static void image_header_area_init(wmWindowManager *wm, ARegion *ar)
|
||||||
{
|
{
|
||||||
|
#if 0
|
||||||
UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_HEADER, ar->winx, ar->winy);
|
UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_HEADER, ar->winx, ar->winy);
|
||||||
|
#else
|
||||||
|
ED_region_header_init(ar);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
static void image_header_area_draw(const bContext *C, ARegion *ar)
|
static void image_header_area_draw(const bContext *C, ARegion *ar)
|
||||||
{
|
{
|
||||||
|
ED_region_header(C, ar);
|
||||||
|
#if 0
|
||||||
float col[3];
|
float col[3];
|
||||||
|
|
||||||
/* clear */
|
/* clear */
|
||||||
@ -531,6 +527,7 @@ static void image_header_area_draw(const bContext *C, ARegion *ar)
|
|||||||
|
|
||||||
/* restore view matrix? */
|
/* restore view matrix? */
|
||||||
UI_view2d_view_restore(C);
|
UI_view2d_view_restore(C);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
/**************************** spacetype *****************************/
|
/**************************** spacetype *****************************/
|
||||||
@ -616,11 +613,13 @@ void ED_space_image_set(bContext *C, SpaceImage *sima, Scene *scene, Object *obe
|
|||||||
if(sima->image && sima->image->id.us==0)
|
if(sima->image && sima->image->id.us==0)
|
||||||
sima->image->id.us= 1;
|
sima->image->id.us= 1;
|
||||||
|
|
||||||
|
if(C) {
|
||||||
if(obedit)
|
if(obedit)
|
||||||
WM_event_add_notifier(C, NC_OBJECT|ND_GEOM_DATA, obedit);
|
WM_event_add_notifier(C, NC_OBJECT|ND_GEOM_DATA, obedit);
|
||||||
|
|
||||||
ED_area_tag_redraw(CTX_wm_area(C));
|
ED_area_tag_redraw(CTX_wm_area(C));
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
ImBuf *ED_space_image_buffer(SpaceImage *sima)
|
ImBuf *ED_space_image_buffer(SpaceImage *sima)
|
||||||
{
|
{
|
||||||
|
54
source/blender/editors/space_logic/Makefile
Normal file
54
source/blender/editors/space_logic/Makefile
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
#
|
||||||
|
# $Id: Makefile 14 2002-10-13 15:57:19Z hans $
|
||||||
|
#
|
||||||
|
# ***** BEGIN GPL LICENSE BLOCK *****
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or
|
||||||
|
# modify it under the terms of the GNU General Public License
|
||||||
|
# as published by the Free Software Foundation; either version 2
|
||||||
|
# of the License, or (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, write to the Free Software Foundation,
|
||||||
|
# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
|
#
|
||||||
|
# The Original Code is Copyright (C) 2007 Blender Foundation
|
||||||
|
# All rights reserved.
|
||||||
|
#
|
||||||
|
# The Original Code is: all of this file.
|
||||||
|
#
|
||||||
|
# Contributor(s): none yet.
|
||||||
|
#
|
||||||
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
#
|
||||||
|
# Makes module object directory and bounces make to subdirectories.
|
||||||
|
|
||||||
|
LIBNAME = ed_logic
|
||||||
|
DIR = $(OCGDIR)/blender/$(LIBNAME)
|
||||||
|
|
||||||
|
include nan_compile.mk
|
||||||
|
|
||||||
|
CFLAGS += $(LEVEL_1_C_WARNINGS)
|
||||||
|
|
||||||
|
CPPFLAGS += -I$(NAN_GLEW)/include
|
||||||
|
CPPFLAGS += -I$(OPENGL_HEADERS)
|
||||||
|
|
||||||
|
# not very neat....
|
||||||
|
CPPFLAGS += -I../../windowmanager
|
||||||
|
CPPFLAGS += -I../../blenloader
|
||||||
|
CPPFLAGS += -I../../blenkernel
|
||||||
|
CPPFLAGS += -I../../blenlib
|
||||||
|
CPPFLAGS += -I../../makesdna
|
||||||
|
CPPFLAGS += -I../../makesrna
|
||||||
|
CPPFLAGS += -I../../imbuf
|
||||||
|
CPPFLAGS += -I../../python
|
||||||
|
CPPFLAGS += -I$(NAN_GUARDEDALLOC)/include
|
||||||
|
|
||||||
|
# own include
|
||||||
|
|
||||||
|
CPPFLAGS += -I../include
|
18
source/blender/editors/space_logic/SConscript
Normal file
18
source/blender/editors/space_logic/SConscript
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
#!/usr/bin/python
|
||||||
|
Import ('env')
|
||||||
|
|
||||||
|
sources = env.Glob('*.c')
|
||||||
|
|
||||||
|
incs = '../include ../../blenlib ../../blenkernel ../../makesdna ../../imbuf'
|
||||||
|
incs += ' ../../windowmanager #/intern/guardedalloc #/extern/glew/include'
|
||||||
|
incs += ' ../../makesrna'
|
||||||
|
|
||||||
|
defs = []
|
||||||
|
|
||||||
|
if env['WITH_BF_GAMEENGINE']:
|
||||||
|
defs.append('GAMEBLENDER=1')
|
||||||
|
|
||||||
|
if env['WITH_BF_SOLID']:
|
||||||
|
defs.append('USE_SUMO_SOLID')
|
||||||
|
|
||||||
|
env.BlenderLib ( 'bf_editors_space_game', sources, Split(incs), defs, libtype=['core'], priority=[120] )
|
147
source/blender/editors/space_logic/logic_buttons.c
Normal file
147
source/blender/editors/space_logic/logic_buttons.c
Normal file
@ -0,0 +1,147 @@
|
|||||||
|
/**
|
||||||
|
* $Id: image_buttons.c 20913 2009-06-16 01:22:56Z blendix $
|
||||||
|
*
|
||||||
|
* ***** BEGIN GPL LICENSE BLOCK *****
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU General Public License
|
||||||
|
* as published by the Free Software Foundation; either version 2
|
||||||
|
* of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
|
* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
|
*
|
||||||
|
* The Original Code is Copyright (C) 2009 by Blender Foundation
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
#include <string.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
#include "DNA_object_types.h"
|
||||||
|
#include "DNA_node_types.h"
|
||||||
|
#include "DNA_space_types.h"
|
||||||
|
#include "DNA_scene_types.h"
|
||||||
|
#include "DNA_screen_types.h"
|
||||||
|
#include "DNA_userdef_types.h"
|
||||||
|
|
||||||
|
#include "MEM_guardedalloc.h"
|
||||||
|
|
||||||
|
#include "BLI_blenlib.h"
|
||||||
|
#include "BLI_arithb.h"
|
||||||
|
|
||||||
|
#include "BKE_context.h"
|
||||||
|
#include "BKE_global.h"
|
||||||
|
#include "BKE_library.h"
|
||||||
|
#include "BKE_main.h"
|
||||||
|
#include "BKE_mesh.h"
|
||||||
|
#include "BKE_node.h"
|
||||||
|
#include "BKE_screen.h"
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
|
|
||||||
|
#include "ED_space_api.h"
|
||||||
|
#include "ED_screen.h"
|
||||||
|
#include "ED_util.h"
|
||||||
|
|
||||||
|
#include "BIF_gl.h"
|
||||||
|
#include "BIF_glutil.h"
|
||||||
|
|
||||||
|
#include "RNA_access.h"
|
||||||
|
|
||||||
|
#include "WM_api.h"
|
||||||
|
#include "WM_types.h"
|
||||||
|
|
||||||
|
#include "UI_interface.h"
|
||||||
|
#include "UI_resources.h"
|
||||||
|
#include "UI_view2d.h"
|
||||||
|
|
||||||
|
#include "logic_intern.h"
|
||||||
|
|
||||||
|
static void do_logic_panel_events(bContext *C, void *arg, int event)
|
||||||
|
{
|
||||||
|
|
||||||
|
switch(event) {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* *** */
|
||||||
|
|
||||||
|
static void logic_panel_properties(const bContext *C, Panel *pa)
|
||||||
|
{
|
||||||
|
// SpaceLogic *slogic= (SpaceLogic*)CTX_wm_space_data(C);
|
||||||
|
uiBlock *block;
|
||||||
|
|
||||||
|
block= uiLayoutFreeBlock(pa->layout);
|
||||||
|
uiBlockSetHandleFunc(block, do_logic_panel_events, NULL);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
static void logic_panel_view_properties(const bContext *C, Panel *pa)
|
||||||
|
{
|
||||||
|
// SpaceLogic *slogic= (SpaceLogic*)CTX_wm_space_data(C);
|
||||||
|
uiBlock *block;
|
||||||
|
|
||||||
|
block= uiLayoutFreeBlock(pa->layout);
|
||||||
|
uiBlockSetHandleFunc(block, do_logic_panel_events, NULL);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void logic_buttons_register(ARegionType *art)
|
||||||
|
{
|
||||||
|
PanelType *pt;
|
||||||
|
|
||||||
|
pt= MEM_callocN(sizeof(PanelType), "spacetype logic panel properties");
|
||||||
|
strcpy(pt->idname, "LOGIC_PT_properties");
|
||||||
|
strcpy(pt->label, "Logic Properties");
|
||||||
|
pt->draw= logic_panel_properties;
|
||||||
|
BLI_addtail(&art->paneltypes, pt);
|
||||||
|
|
||||||
|
pt= MEM_callocN(sizeof(PanelType), "spacetype logic view properties");
|
||||||
|
strcpy(pt->idname, "LOGIC_PT_view_properties");
|
||||||
|
strcpy(pt->label, "View Properties");
|
||||||
|
pt->draw= logic_panel_view_properties;
|
||||||
|
BLI_addtail(&art->paneltypes, pt);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
static int logic_properties(bContext *C, wmOperator *op)
|
||||||
|
{
|
||||||
|
ScrArea *sa= CTX_wm_area(C);
|
||||||
|
ARegion *ar= logic_has_buttons_region(sa);
|
||||||
|
|
||||||
|
if(ar) {
|
||||||
|
ar->flag ^= RGN_FLAG_HIDDEN;
|
||||||
|
ar->v2d.flag &= ~V2D_IS_INITIALISED; /* XXX should become hide/unhide api? */
|
||||||
|
|
||||||
|
ED_area_initialize(CTX_wm_manager(C), CTX_wm_window(C), sa);
|
||||||
|
ED_area_tag_redraw(sa);
|
||||||
|
}
|
||||||
|
return OPERATOR_FINISHED;
|
||||||
|
}
|
||||||
|
|
||||||
|
void LOGIC_OT_properties(wmOperatorType *ot)
|
||||||
|
{
|
||||||
|
ot->name= "Properties";
|
||||||
|
ot->idname= "LOGIC_OT_properties";
|
||||||
|
|
||||||
|
ot->exec= logic_properties;
|
||||||
|
ot->poll= ED_operator_logic_active;
|
||||||
|
|
||||||
|
/* flags */
|
||||||
|
ot->flag= 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
126
source/blender/editors/space_logic/logic_header.c
Normal file
126
source/blender/editors/space_logic/logic_header.c
Normal file
@ -0,0 +1,126 @@
|
|||||||
|
/**
|
||||||
|
* $Id$
|
||||||
|
*
|
||||||
|
* ***** BEGIN GPL LICENSE BLOCK *****
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU General Public License
|
||||||
|
* as published by the Free Software Foundation; either version 2
|
||||||
|
* of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
|
* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
|
*
|
||||||
|
* The Original Code is Copyright (C) 2009 Blender Foundation.
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* Contributor(s): Blender Foundation
|
||||||
|
*
|
||||||
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <string.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
#include "DNA_space_types.h"
|
||||||
|
#include "DNA_scene_types.h"
|
||||||
|
#include "DNA_screen_types.h"
|
||||||
|
#include "DNA_windowmanager_types.h"
|
||||||
|
|
||||||
|
#include "MEM_guardedalloc.h"
|
||||||
|
|
||||||
|
#include "BLI_blenlib.h"
|
||||||
|
|
||||||
|
#include "BKE_context.h"
|
||||||
|
#include "BKE_screen.h"
|
||||||
|
#include "BKE_main.h"
|
||||||
|
|
||||||
|
#include "ED_screen.h"
|
||||||
|
#include "ED_types.h"
|
||||||
|
#include "ED_util.h"
|
||||||
|
|
||||||
|
#include "WM_api.h"
|
||||||
|
#include "WM_types.h"
|
||||||
|
|
||||||
|
#include "BIF_gl.h"
|
||||||
|
#include "BIF_glutil.h"
|
||||||
|
|
||||||
|
#include "UI_interface.h"
|
||||||
|
#include "UI_resources.h"
|
||||||
|
#include "UI_view2d.h"
|
||||||
|
|
||||||
|
#include "logic_intern.h"
|
||||||
|
|
||||||
|
/* ************************ header area region *********************** */
|
||||||
|
|
||||||
|
|
||||||
|
static void do_logic_buttons(bContext *C, void *arg, int event)
|
||||||
|
{
|
||||||
|
// SpaceLogic *slogic= (SpaceLogic*)CTX_wm_space_data(C);
|
||||||
|
}
|
||||||
|
|
||||||
|
static uiBlock *logic_addmenu(bContext *C, ARegion *ar, void *arg_unused)
|
||||||
|
{
|
||||||
|
// SpaceLogic *slogic= (SpaceLogic*)CTX_wm_space_data(C);
|
||||||
|
uiBlock *block;
|
||||||
|
short yco= 0, menuwidth=120;
|
||||||
|
|
||||||
|
block= uiBeginBlock(C, ar, "logic_addmenu", UI_EMBOSSP);
|
||||||
|
// uiBlockSetButmFunc(block, do_logic_addmenu, NULL);
|
||||||
|
|
||||||
|
uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Nothing yet", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 1, 2, "");
|
||||||
|
|
||||||
|
uiTextBoundsBlock(block, 50);
|
||||||
|
uiBlockSetDirection(block, UI_TOP);
|
||||||
|
uiEndBlock(C, block);
|
||||||
|
|
||||||
|
return block;
|
||||||
|
}
|
||||||
|
|
||||||
|
void logic_header_buttons(const bContext *C, ARegion *ar)
|
||||||
|
{
|
||||||
|
ScrArea *sa= CTX_wm_area(C);
|
||||||
|
// SpaceLogic *slogic= (SpaceLogic*)CTX_wm_space_data(C);
|
||||||
|
uiBlock *block;
|
||||||
|
short xco, yco= 3;
|
||||||
|
|
||||||
|
block= uiBeginBlock(C, ar, "header logic", UI_EMBOSS);
|
||||||
|
uiBlockSetHandleFunc(block, do_logic_buttons, NULL);
|
||||||
|
|
||||||
|
xco= ED_area_header_standardbuttons(C, block, yco);
|
||||||
|
|
||||||
|
if((sa->flag & HEADER_NO_PULLDOWN)==0) {
|
||||||
|
int xmax;
|
||||||
|
|
||||||
|
xmax= GetButStringLength("View");
|
||||||
|
uiDefPulldownBut(block, logic_addmenu, NULL,
|
||||||
|
"View", xco, yco, xmax-3, 20, "");
|
||||||
|
xco+= xmax;
|
||||||
|
|
||||||
|
xmax= GetButStringLength("Select");
|
||||||
|
uiDefPulldownBut(block, logic_addmenu, NULL,
|
||||||
|
"Select", xco, yco, xmax-3, 20, "");
|
||||||
|
xco+= xmax;
|
||||||
|
|
||||||
|
xmax= GetButStringLength("Add");
|
||||||
|
uiDefPulldownBut(block, logic_addmenu, NULL,
|
||||||
|
"Add", xco, yco, xmax-3, 20, "");
|
||||||
|
xco+= xmax;
|
||||||
|
}
|
||||||
|
|
||||||
|
uiBlockSetEmboss(block, UI_EMBOSS);
|
||||||
|
|
||||||
|
UI_view2d_totRect_set(&ar->v2d, xco+XIC+100, (int)(ar->v2d.tot.ymax-ar->v2d.tot.ymin));
|
||||||
|
|
||||||
|
uiEndBlock(C, block);
|
||||||
|
uiDrawBlock(C, block);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
58
source/blender/editors/space_logic/logic_intern.h
Normal file
58
source/blender/editors/space_logic/logic_intern.h
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
/**
|
||||||
|
* $Id:
|
||||||
|
*
|
||||||
|
* ***** BEGIN GPL LICENSE BLOCK *****
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU General Public License
|
||||||
|
* as published by the Free Software Foundation; either version 2
|
||||||
|
* of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
|
* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
|
*
|
||||||
|
* The Original Code is Copyright (C) 2009 Blender Foundation.
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* Contributor(s): Blender Foundation
|
||||||
|
*
|
||||||
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef ED_LOGIC_INTERN_H
|
||||||
|
#define ED_LOGIC_INTERN_H
|
||||||
|
|
||||||
|
/* internal exports only */
|
||||||
|
struct bContext;
|
||||||
|
struct ARegion;
|
||||||
|
struct ARegionType;
|
||||||
|
struct ScrArea;
|
||||||
|
struct SpaceLogic;
|
||||||
|
struct Object;
|
||||||
|
struct wmOperatorType;
|
||||||
|
struct Scene;
|
||||||
|
|
||||||
|
/* space_logic.c */
|
||||||
|
struct ARegion *logic_has_buttons_region(struct ScrArea *sa);
|
||||||
|
|
||||||
|
/* logic_header.c */
|
||||||
|
void logic_header_buttons(const struct bContext *C, struct ARegion *ar);
|
||||||
|
|
||||||
|
/* logic_ops.c */
|
||||||
|
|
||||||
|
/* logic_buttons.c */
|
||||||
|
void logic_buttons_register(struct ARegionType *art);
|
||||||
|
void LOGIC_OT_properties(struct wmOperatorType *ot);
|
||||||
|
|
||||||
|
/* logic_window.c */
|
||||||
|
void logic_buttons(struct bContext *C, struct ARegion *ar);
|
||||||
|
|
||||||
|
#endif /* ED_LOGIC_INTERN_H */
|
||||||
|
|
3351
source/blender/editors/space_logic/logic_window.c
Normal file
3351
source/blender/editors/space_logic/logic_window.c
Normal file
File diff suppressed because it is too large
Load Diff
369
source/blender/editors/space_logic/space_logic.c
Normal file
369
source/blender/editors/space_logic/space_logic.c
Normal file
@ -0,0 +1,369 @@
|
|||||||
|
/**
|
||||||
|
* $Id:
|
||||||
|
*
|
||||||
|
* ***** BEGIN GPL LICENSE BLOCK *****
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU General Public License
|
||||||
|
* as published by the Free Software Foundation; either version 2
|
||||||
|
* of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
|
* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
|
*
|
||||||
|
* The Original Code is Copyright (C) 2009 Blender Foundation.
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* Contributor(s): Blender Foundation
|
||||||
|
*
|
||||||
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <string.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
#include "DNA_image_types.h"
|
||||||
|
#include "DNA_mesh_types.h"
|
||||||
|
#include "DNA_meshdata_types.h"
|
||||||
|
#include "DNA_object_types.h"
|
||||||
|
#include "DNA_space_types.h"
|
||||||
|
#include "DNA_scene_types.h"
|
||||||
|
#include "DNA_screen_types.h"
|
||||||
|
|
||||||
|
#include "MEM_guardedalloc.h"
|
||||||
|
|
||||||
|
#include "BLI_blenlib.h"
|
||||||
|
#include "BLI_arithb.h"
|
||||||
|
|
||||||
|
#include "BKE_context.h"
|
||||||
|
#include "BKE_screen.h"
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
|
|
||||||
|
#include "ED_space_api.h"
|
||||||
|
#include "ED_screen.h"
|
||||||
|
|
||||||
|
#include "BIF_gl.h"
|
||||||
|
#include "BIF_glutil.h"
|
||||||
|
|
||||||
|
#include "RNA_access.h"
|
||||||
|
|
||||||
|
#include "WM_api.h"
|
||||||
|
#include "WM_types.h"
|
||||||
|
|
||||||
|
#include "UI_interface.h"
|
||||||
|
#include "UI_resources.h"
|
||||||
|
#include "UI_view2d.h"
|
||||||
|
|
||||||
|
#include "logic_intern.h"
|
||||||
|
|
||||||
|
/* ******************** manage regions ********************* */
|
||||||
|
|
||||||
|
ARegion *logic_has_buttons_region(ScrArea *sa)
|
||||||
|
{
|
||||||
|
ARegion *ar, *arnew;
|
||||||
|
|
||||||
|
for(ar= sa->regionbase.first; ar; ar= ar->next)
|
||||||
|
if(ar->regiontype==RGN_TYPE_UI)
|
||||||
|
return ar;
|
||||||
|
|
||||||
|
/* add subdiv level; after header */
|
||||||
|
for(ar= sa->regionbase.first; ar; ar= ar->next)
|
||||||
|
if(ar->regiontype==RGN_TYPE_HEADER)
|
||||||
|
break;
|
||||||
|
|
||||||
|
/* is error! */
|
||||||
|
if(ar==NULL) return NULL;
|
||||||
|
|
||||||
|
arnew= MEM_callocN(sizeof(ARegion), "buttons for image");
|
||||||
|
|
||||||
|
BLI_insertlinkafter(&sa->regionbase, ar, arnew);
|
||||||
|
arnew->regiontype= RGN_TYPE_UI;
|
||||||
|
arnew->alignment= RGN_ALIGN_LEFT;
|
||||||
|
|
||||||
|
arnew->flag = RGN_FLAG_HIDDEN;
|
||||||
|
|
||||||
|
return arnew;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ******************** default callbacks for image space ***************** */
|
||||||
|
|
||||||
|
static SpaceLink *logic_new(const bContext *C)
|
||||||
|
{
|
||||||
|
ARegion *ar;
|
||||||
|
SpaceLogic *slogic;
|
||||||
|
|
||||||
|
slogic= MEM_callocN(sizeof(SpaceLogic), "initlogic");
|
||||||
|
slogic->spacetype= SPACE_LOGIC;
|
||||||
|
|
||||||
|
/* header */
|
||||||
|
ar= MEM_callocN(sizeof(ARegion), "header for logic");
|
||||||
|
|
||||||
|
BLI_addtail(&slogic->regionbase, ar);
|
||||||
|
ar->regiontype= RGN_TYPE_HEADER;
|
||||||
|
ar->alignment= RGN_ALIGN_BOTTOM;
|
||||||
|
|
||||||
|
/* buttons/list view */
|
||||||
|
ar= MEM_callocN(sizeof(ARegion), "buttons for logic");
|
||||||
|
|
||||||
|
BLI_addtail(&slogic->regionbase, ar);
|
||||||
|
ar->regiontype= RGN_TYPE_UI;
|
||||||
|
ar->alignment= RGN_ALIGN_LEFT;
|
||||||
|
|
||||||
|
/* main area */
|
||||||
|
ar= MEM_callocN(sizeof(ARegion), "main area for logic");
|
||||||
|
|
||||||
|
BLI_addtail(&slogic->regionbase, ar);
|
||||||
|
ar->regiontype= RGN_TYPE_WINDOW;
|
||||||
|
|
||||||
|
ar->v2d.tot.xmin= 0.0f;
|
||||||
|
ar->v2d.tot.ymin= 0.0f;
|
||||||
|
ar->v2d.tot.xmax= 1280;
|
||||||
|
ar->v2d.tot.ymax= 240.0f;
|
||||||
|
|
||||||
|
ar->v2d.cur.xmin= 0.0f;
|
||||||
|
ar->v2d.cur.ymin= 0.0f;
|
||||||
|
ar->v2d.cur.xmax= 1280.0f;
|
||||||
|
ar->v2d.cur.ymax= 240.0f;
|
||||||
|
|
||||||
|
ar->v2d.min[0]= 1.0f;
|
||||||
|
ar->v2d.min[1]= 1.0f;
|
||||||
|
|
||||||
|
ar->v2d.max[0]= 32000.0f;
|
||||||
|
ar->v2d.max[1]= 32000.0f;
|
||||||
|
|
||||||
|
ar->v2d.minzoom= 0.5f;
|
||||||
|
ar->v2d.maxzoom= 1.21f;
|
||||||
|
|
||||||
|
ar->v2d.scroll= (V2D_SCROLL_RIGHT|V2D_SCROLL_BOTTOM);
|
||||||
|
ar->v2d.keepzoom= V2D_KEEPZOOM|V2D_KEEPASPECT;
|
||||||
|
ar->v2d.keeptot= 0;
|
||||||
|
|
||||||
|
|
||||||
|
return (SpaceLink *)slogic;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* not spacelink itself */
|
||||||
|
static void logic_free(SpaceLink *sl)
|
||||||
|
{
|
||||||
|
// Spacelogic *slogic= (SpaceLogic*) sl;
|
||||||
|
|
||||||
|
// if(slogic->gpd)
|
||||||
|
// XXX free_gpencil_data(slogic->gpd);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* spacetype; init callback */
|
||||||
|
static void logic_init(struct wmWindowManager *wm, ScrArea *sa)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
static SpaceLink *logic_duplicate(SpaceLink *sl)
|
||||||
|
{
|
||||||
|
SpaceLogic *slogicn= MEM_dupallocN(sl);
|
||||||
|
|
||||||
|
return (SpaceLink *)slogicn;
|
||||||
|
}
|
||||||
|
|
||||||
|
void logic_operatortypes(void)
|
||||||
|
{
|
||||||
|
WM_operatortype_append(LOGIC_OT_properties);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void logic_keymap(struct wmWindowManager *wm)
|
||||||
|
{
|
||||||
|
ListBase *keymap= WM_keymap_listbase(wm, "Logic Generic", SPACE_LOGIC, 0);
|
||||||
|
|
||||||
|
WM_keymap_add_item(keymap, "LOGIC_OT_properties", NKEY, KM_PRESS, 0, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void logic_refresh(const bContext *C, ScrArea *sa)
|
||||||
|
{
|
||||||
|
// SpaceLogic *slogic= (SpaceImage*)CTX_wm_space_data(C);
|
||||||
|
// Object *obedit= CTX_data_edit_object(C);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
static void logic_listener(ARegion *ar, wmNotifier *wmn)
|
||||||
|
{
|
||||||
|
/* context changes */
|
||||||
|
switch(wmn->category) {
|
||||||
|
case NC_SCENE:
|
||||||
|
switch(wmn->data) {
|
||||||
|
case ND_FRAME:
|
||||||
|
ED_region_tag_redraw(ar);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case ND_OB_ACTIVE:
|
||||||
|
ED_region_tag_redraw(ar);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case NC_OBJECT:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static int logic_context(const bContext *C, const char *member, bContextDataResult *result)
|
||||||
|
{
|
||||||
|
// SpaceLogic *slogic= (SpaceLogic*)CTX_wm_space_data(C);
|
||||||
|
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/************************** main region ***************************/
|
||||||
|
|
||||||
|
|
||||||
|
/* add handlers, stuff you only do once or on area/region changes */
|
||||||
|
static void logic_main_area_init(wmWindowManager *wm, ARegion *ar)
|
||||||
|
{
|
||||||
|
ListBase *keymap;
|
||||||
|
|
||||||
|
UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_CUSTOM, ar->winx, ar->winy);
|
||||||
|
|
||||||
|
/* own keymaps */
|
||||||
|
keymap= WM_keymap_listbase(wm, "Logic Generic", SPACE_LOGIC, 0);
|
||||||
|
WM_event_add_keymap_handler(&ar->handlers, keymap);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void logic_main_area_draw(const bContext *C, ARegion *ar)
|
||||||
|
{
|
||||||
|
/* draw entirely, view changes should be handled here */
|
||||||
|
// SpaceLogic *slogic= (SpaceLogic*)CTX_wm_space_data(C);
|
||||||
|
View2D *v2d= &ar->v2d;
|
||||||
|
View2DScrollers *scrollers;
|
||||||
|
float col[3];
|
||||||
|
|
||||||
|
/* clear and setup matrix */
|
||||||
|
UI_GetThemeColor3fv(TH_BACK, col);
|
||||||
|
glClearColor(col[0], col[1], col[2], 0.0);
|
||||||
|
glClear(GL_COLOR_BUFFER_BIT);
|
||||||
|
|
||||||
|
UI_view2d_view_ortho(C, v2d);
|
||||||
|
|
||||||
|
logic_buttons((bContext *)C, ar);
|
||||||
|
|
||||||
|
/* reset view matrix */
|
||||||
|
UI_view2d_view_restore(C);
|
||||||
|
|
||||||
|
/* scrollers */
|
||||||
|
scrollers= UI_view2d_scrollers_calc(C, v2d, 10, V2D_GRID_CLAMP, V2D_ARG_DUMMY, V2D_ARG_DUMMY);
|
||||||
|
UI_view2d_scrollers_draw(C, v2d, scrollers);
|
||||||
|
UI_view2d_scrollers_free(scrollers);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* *********************** buttons region ************************ */
|
||||||
|
|
||||||
|
/* add handlers, stuff you only do once or on area/region changes */
|
||||||
|
static void logic_buttons_area_init(wmWindowManager *wm, ARegion *ar)
|
||||||
|
{
|
||||||
|
ListBase *keymap;
|
||||||
|
|
||||||
|
ED_region_panels_init(wm, ar);
|
||||||
|
|
||||||
|
keymap= WM_keymap_listbase(wm, "Logic Generic", SPACE_LOGIC, 0);
|
||||||
|
WM_event_add_keymap_handler(&ar->handlers, keymap);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void logic_buttons_area_draw(const bContext *C, ARegion *ar)
|
||||||
|
{
|
||||||
|
ED_region_panels(C, ar, 1, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
/************************* header region **************************/
|
||||||
|
|
||||||
|
/* add handlers, stuff you only do once or on area/region changes */
|
||||||
|
static void logic_header_area_init(wmWindowManager *wm, ARegion *ar)
|
||||||
|
{
|
||||||
|
ED_region_header_init(ar);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void logic_header_area_draw(const bContext *C, ARegion *ar)
|
||||||
|
{
|
||||||
|
float col[3];
|
||||||
|
|
||||||
|
/* clear */
|
||||||
|
if(ED_screen_area_active(C))
|
||||||
|
UI_GetThemeColor3fv(TH_HEADER, col);
|
||||||
|
else
|
||||||
|
UI_GetThemeColor3fv(TH_HEADERDESEL, col);
|
||||||
|
|
||||||
|
glClearColor(col[0], col[1], col[2], 0.0);
|
||||||
|
glClear(GL_COLOR_BUFFER_BIT);
|
||||||
|
|
||||||
|
/* set view2d view matrix for scrolling (without scrollers) */
|
||||||
|
UI_view2d_view_ortho(C, &ar->v2d);
|
||||||
|
|
||||||
|
logic_header_buttons(C, ar);
|
||||||
|
|
||||||
|
/* restore view matrix? */
|
||||||
|
UI_view2d_view_restore(C);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************** spacetype *****************************/
|
||||||
|
|
||||||
|
/* only called once, from space/spacetypes.c */
|
||||||
|
void ED_spacetype_logic(void)
|
||||||
|
{
|
||||||
|
SpaceType *st= MEM_callocN(sizeof(SpaceType), "spacetype logic");
|
||||||
|
ARegionType *art;
|
||||||
|
|
||||||
|
st->spaceid= SPACE_LOGIC;
|
||||||
|
|
||||||
|
st->new= logic_new;
|
||||||
|
st->free= logic_free;
|
||||||
|
st->init= logic_init;
|
||||||
|
st->duplicate= logic_duplicate;
|
||||||
|
st->operatortypes= logic_operatortypes;
|
||||||
|
st->keymap= logic_keymap;
|
||||||
|
st->refresh= logic_refresh;
|
||||||
|
st->context= logic_context;
|
||||||
|
|
||||||
|
/* regions: main window */
|
||||||
|
art= MEM_callocN(sizeof(ARegionType), "spacetype logic region");
|
||||||
|
art->regionid = RGN_TYPE_WINDOW;
|
||||||
|
art->keymapflag= ED_KEYMAP_UI|ED_KEYMAP_FRAMES|ED_KEYMAP_VIEW2D;
|
||||||
|
art->init= logic_main_area_init;
|
||||||
|
art->draw= logic_main_area_draw;
|
||||||
|
art->listener= logic_listener;
|
||||||
|
|
||||||
|
BLI_addhead(&st->regiontypes, art);
|
||||||
|
|
||||||
|
/* regions: listview/buttons */
|
||||||
|
art= MEM_callocN(sizeof(ARegionType), "spacetype logic region");
|
||||||
|
art->regionid = RGN_TYPE_UI;
|
||||||
|
art->minsizex= 220; // XXX
|
||||||
|
art->keymapflag= ED_KEYMAP_UI|ED_KEYMAP_FRAMES;
|
||||||
|
art->listener= logic_listener;
|
||||||
|
art->init= logic_buttons_area_init;
|
||||||
|
art->draw= logic_buttons_area_draw;
|
||||||
|
BLI_addhead(&st->regiontypes, art);
|
||||||
|
|
||||||
|
logic_buttons_register(art);
|
||||||
|
|
||||||
|
/* regions: header */
|
||||||
|
art= MEM_callocN(sizeof(ARegionType), "spacetype logic region");
|
||||||
|
art->regionid = RGN_TYPE_HEADER;
|
||||||
|
art->minsizey= HEADERY;
|
||||||
|
art->keymapflag= ED_KEYMAP_UI|ED_KEYMAP_VIEW2D|ED_KEYMAP_FRAMES;
|
||||||
|
art->init= logic_header_area_init;
|
||||||
|
art->draw= logic_header_area_draw;
|
||||||
|
|
||||||
|
BLI_addhead(&st->regiontypes, art);
|
||||||
|
|
||||||
|
BKE_spacetype_register(st);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -177,8 +177,8 @@ static int node_extend_select_invoke(bContext *C, wmOperator *op, wmEvent *event
|
|||||||
/* operators */
|
/* operators */
|
||||||
|
|
||||||
static EnumPropertyItem prop_select_items[] = {
|
static EnumPropertyItem prop_select_items[] = {
|
||||||
{NODE_SELECT_MOUSE, "NORMAL", "Normal Select", "Select using the mouse"},
|
{NODE_SELECT_MOUSE, "NORMAL", 0, "Normal Select", "Select using the mouse"},
|
||||||
{0, NULL, NULL, NULL}};
|
{0, NULL, 0, NULL, NULL}};
|
||||||
|
|
||||||
void NODE_OT_select_extend(wmOperatorType *ot)
|
void NODE_OT_select_extend(wmOperatorType *ot)
|
||||||
{
|
{
|
||||||
@ -225,9 +225,9 @@ void NODE_OT_select(wmOperatorType *ot)
|
|||||||
/* ****** Border Select ****** */
|
/* ****** Border Select ****** */
|
||||||
|
|
||||||
static EnumPropertyItem prop_select_types[] = {
|
static EnumPropertyItem prop_select_types[] = {
|
||||||
{NODE_EXCLUSIVE, "EXCLUSIVE", "Exclusive", ""}, /* right mouse */
|
{NODE_EXCLUSIVE, "EXCLUSIVE", 0, "Exclusive", ""}, /* right mouse */
|
||||||
{NODE_EXTEND, "EXTEND", "Extend", ""}, /* left mouse */
|
{NODE_EXTEND, "EXTEND", 0, "Extend", ""}, /* left mouse */
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
static int node_borderselect_exec(bContext *C, wmOperator *op)
|
static int node_borderselect_exec(bContext *C, wmOperator *op)
|
||||||
|
@ -63,15 +63,17 @@ static int run_pyfile_exec(bContext *C, wmOperator *op)
|
|||||||
{
|
{
|
||||||
ARegion *ar= CTX_wm_region(C);
|
ARegion *ar= CTX_wm_region(C);
|
||||||
|
|
||||||
|
|
||||||
char filename[512];
|
char filename[512];
|
||||||
RNA_string_get(op->ptr, "filename", filename);
|
RNA_string_get(op->ptr, "filename", filename);
|
||||||
#ifndef DISABLE_PYTHON
|
#ifndef DISABLE_PYTHON
|
||||||
BPY_run_python_script(C, filename, NULL);
|
if(BPY_run_python_script(C, filename, NULL, op->reports)) {
|
||||||
#endif
|
|
||||||
ED_region_tag_redraw(ar);
|
ED_region_tag_redraw(ar);
|
||||||
|
|
||||||
return OPERATOR_FINISHED;
|
return OPERATOR_FINISHED;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
return OPERATOR_CANCELLED; /* FAIL */
|
||||||
|
}
|
||||||
|
|
||||||
void SCRIPT_OT_python_file_run(wmOperatorType *ot)
|
void SCRIPT_OT_python_file_run(wmOperatorType *ot)
|
||||||
{
|
{
|
||||||
|
@ -741,7 +741,8 @@ static void draw_image_seq(Scene *scene, ARegion *ar, SpaceSeq *sseq)
|
|||||||
static int recursive= 0;
|
static int recursive= 0;
|
||||||
float zoom;
|
float zoom;
|
||||||
float zoomx, zoomy;
|
float zoomx, zoomy;
|
||||||
int render_size = 0;
|
float render_size = 0.0;
|
||||||
|
float proxy_size = 100.0;
|
||||||
|
|
||||||
glClearColor(0.0, 0.0, 0.0, 0.0);
|
glClearColor(0.0, 0.0, 0.0, 0.0);
|
||||||
glClear(GL_COLOR_BUFFER_BIT);
|
glClear(GL_COLOR_BUFFER_BIT);
|
||||||
@ -749,6 +750,8 @@ static void draw_image_seq(Scene *scene, ARegion *ar, SpaceSeq *sseq)
|
|||||||
render_size = sseq->render_size;
|
render_size = sseq->render_size;
|
||||||
if (render_size == 0) {
|
if (render_size == 0) {
|
||||||
render_size = scene->r.size;
|
render_size = scene->r.size;
|
||||||
|
} else {
|
||||||
|
proxy_size = render_size;
|
||||||
}
|
}
|
||||||
if (render_size < 0) {
|
if (render_size < 0) {
|
||||||
return;
|
return;
|
||||||
@ -767,13 +770,13 @@ static void draw_image_seq(Scene *scene, ARegion *ar, SpaceSeq *sseq)
|
|||||||
else {
|
else {
|
||||||
recursive= 1;
|
recursive= 1;
|
||||||
if (special_seq_update) {
|
if (special_seq_update) {
|
||||||
ibuf= give_ibuf_seq_direct(scene, rectx, recty, (scene->r.cfra), render_size, special_seq_update);
|
ibuf= give_ibuf_seq_direct(scene, rectx, recty, (scene->r.cfra), proxy_size, special_seq_update);
|
||||||
}
|
}
|
||||||
else if (!U.prefetchframes) { // XXX || (G.f & G_PLAYANIM) == 0) {
|
else if (!U.prefetchframes) { // XXX || (G.f & G_PLAYANIM) == 0) {
|
||||||
ibuf= (ImBuf *)give_ibuf_seq(scene, rectx, recty, (scene->r.cfra), sseq->chanshown, render_size);
|
ibuf= (ImBuf *)give_ibuf_seq(scene, rectx, recty, (scene->r.cfra), sseq->chanshown, proxy_size);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
ibuf= (ImBuf *)give_ibuf_seq_threaded(scene, rectx, recty, (scene->r.cfra), sseq->chanshown, render_size);
|
ibuf= (ImBuf *)give_ibuf_seq_threaded(scene, rectx, recty, (scene->r.cfra), sseq->chanshown, proxy_size);
|
||||||
}
|
}
|
||||||
recursive= 0;
|
recursive= 0;
|
||||||
|
|
||||||
@ -824,7 +827,7 @@ static void draw_image_seq(Scene *scene, ARegion *ar, SpaceSeq *sseq)
|
|||||||
|
|
||||||
zoom= SEQ_ZOOM_FAC(sseq->zoom);
|
zoom= SEQ_ZOOM_FAC(sseq->zoom);
|
||||||
if (sseq->mainb == SEQ_DRAW_IMG_IMBUF) {
|
if (sseq->mainb == SEQ_DRAW_IMG_IMBUF) {
|
||||||
zoom /= render_size / 100.0;
|
zoom /= proxy_size / 100.0;
|
||||||
zoomx = zoom * ((float)scene->r.xasp / (float)scene->r.yasp);
|
zoomx = zoom * ((float)scene->r.xasp / (float)scene->r.yasp);
|
||||||
zoomy = zoom;
|
zoomy = zoom;
|
||||||
} else {
|
} else {
|
||||||
@ -960,8 +963,11 @@ void drawprefetchseqspace(Scene *scene, ARegion *ar, SpaceSeq *sseq)
|
|||||||
{
|
{
|
||||||
int rectx, recty;
|
int rectx, recty;
|
||||||
int render_size = sseq->render_size;
|
int render_size = sseq->render_size;
|
||||||
|
int proxy_size = 100.0;
|
||||||
if (render_size == 0) {
|
if (render_size == 0) {
|
||||||
render_size = scene->r.size;
|
render_size = scene->r.size;
|
||||||
|
} else {
|
||||||
|
proxy_size = render_size;
|
||||||
}
|
}
|
||||||
if (render_size < 0) {
|
if (render_size < 0) {
|
||||||
return;
|
return;
|
||||||
@ -973,7 +979,7 @@ void drawprefetchseqspace(Scene *scene, ARegion *ar, SpaceSeq *sseq)
|
|||||||
if(sseq->mainb != SEQ_DRAW_SEQUENCE) {
|
if(sseq->mainb != SEQ_DRAW_SEQUENCE) {
|
||||||
give_ibuf_prefetch_request(
|
give_ibuf_prefetch_request(
|
||||||
rectx, recty, (scene->r.cfra), sseq->chanshown,
|
rectx, recty, (scene->r.cfra), sseq->chanshown,
|
||||||
render_size);
|
proxy_size);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -105,35 +105,35 @@ static int okee() {return 0;}
|
|||||||
/* XXX */
|
/* XXX */
|
||||||
/* RNA Enums, used in multiple files */
|
/* RNA Enums, used in multiple files */
|
||||||
EnumPropertyItem sequencer_prop_effect_types[] = {
|
EnumPropertyItem sequencer_prop_effect_types[] = {
|
||||||
{SEQ_CROSS, "CROSS", "Crossfade", "Crossfade effect strip type"},
|
{SEQ_CROSS, "CROSS", 0, "Crossfade", "Crossfade effect strip type"},
|
||||||
{SEQ_ADD, "ADD", "Add", "Add effect strip type"},
|
{SEQ_ADD, "ADD", 0, "Add", "Add effect strip type"},
|
||||||
{SEQ_SUB, "SUBTRACT", "Subtract", "Subtract effect strip type"},
|
{SEQ_SUB, "SUBTRACT", 0, "Subtract", "Subtract effect strip type"},
|
||||||
{SEQ_ALPHAOVER, "ALPHA_OVER", "Alpha Over", "Alpha Over effect strip type"},
|
{SEQ_ALPHAOVER, "ALPHA_OVER", 0, "Alpha Over", "Alpha Over effect strip type"},
|
||||||
{SEQ_ALPHAUNDER, "ALPHA_UNDER", "Alpha Under", "Alpha Under effect strip type"},
|
{SEQ_ALPHAUNDER, "ALPHA_UNDER", 0, "Alpha Under", "Alpha Under effect strip type"},
|
||||||
{SEQ_GAMCROSS, "GAMMA_CROSS", "Gamma Cross", "Gamma Cross effect strip type"},
|
{SEQ_GAMCROSS, "GAMMA_CROSS", 0, "Gamma Cross", "Gamma Cross effect strip type"},
|
||||||
{SEQ_MUL, "MULTIPLY", "Multiply", "Multiply effect strip type"},
|
{SEQ_MUL, "MULTIPLY", 0, "Multiply", "Multiply effect strip type"},
|
||||||
{SEQ_OVERDROP, "OVER_DROP", "Alpha Over Drop", "Alpha Over Drop effect strip type"},
|
{SEQ_OVERDROP, "OVER_DROP", 0, "Alpha Over Drop", "Alpha Over Drop effect strip type"},
|
||||||
{SEQ_PLUGIN, "PLUGIN", "Plugin", "Plugin effect strip type"},
|
{SEQ_PLUGIN, "PLUGIN", 0, "Plugin", "Plugin effect strip type"},
|
||||||
{SEQ_WIPE, "WIPE", "Wipe", "Wipe effect strip type"},
|
{SEQ_WIPE, "WIPE", 0, "Wipe", "Wipe effect strip type"},
|
||||||
{SEQ_GLOW, "GLOW", "Glow", "Glow effect strip type"},
|
{SEQ_GLOW, "GLOW", 0, "Glow", "Glow effect strip type"},
|
||||||
{SEQ_TRANSFORM, "TRANSFORM", "Transform", "Transform effect strip type"},
|
{SEQ_TRANSFORM, "TRANSFORM", 0, "Transform", "Transform effect strip type"},
|
||||||
{SEQ_COLOR, "COLOR", "Color", "Color effect strip type"},
|
{SEQ_COLOR, "COLOR", 0, "Color", "Color effect strip type"},
|
||||||
{SEQ_SPEED, "SPEED", "Speed", "Color effect strip type"},
|
{SEQ_SPEED, "SPEED", 0, "Speed", "Color effect strip type"},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* mute operator */
|
/* mute operator */
|
||||||
EnumPropertyItem sequencer_prop_operate_types[] = { /* better name? */
|
EnumPropertyItem sequencer_prop_operate_types[] = { /* better name? */
|
||||||
{SEQ_SELECTED, "SELECTED", "Selected", ""},
|
{SEQ_SELECTED, "SELECTED", 0, "Selected", ""},
|
||||||
{SEQ_UNSELECTED, "UNSELECTED", "Unselected ", ""},
|
{SEQ_UNSELECTED, "UNSELECTED", 0, "Unselected ", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
EnumPropertyItem prop_side_types[] = {
|
EnumPropertyItem prop_side_types[] = {
|
||||||
{SEQ_SIDE_LEFT, "LEFT", "Left", ""},
|
{SEQ_SIDE_LEFT, "LEFT", 0, "Left", ""},
|
||||||
{SEQ_SIDE_RIGHT, "RIGHT", "Right", ""},
|
{SEQ_SIDE_RIGHT, "RIGHT", 0, "Right", ""},
|
||||||
{SEQ_SIDE_BOTH, "BOTH", "Both", ""},
|
{SEQ_SIDE_BOTH, "BOTH", 0, "Both", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef struct TransSeq {
|
typedef struct TransSeq {
|
||||||
@ -1726,9 +1726,9 @@ void SEQUENCER_OT_refresh_all(struct wmOperatorType *ot)
|
|||||||
|
|
||||||
/* cut operator */
|
/* cut operator */
|
||||||
static EnumPropertyItem prop_cut_types[] = {
|
static EnumPropertyItem prop_cut_types[] = {
|
||||||
{SEQ_CUT_SOFT, "SOFT", "Soft", ""},
|
{SEQ_CUT_SOFT, "SOFT", 0, "Soft", ""},
|
||||||
{SEQ_CUT_HARD, "HARD", "Hard", ""},
|
{SEQ_CUT_HARD, "HARD", 0, "Hard", ""},
|
||||||
{0, NULL, NULL, NULL}
|
{0, NULL, 0, NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
static int sequencer_cut_exec(bContext *C, wmOperator *op)
|
static int sequencer_cut_exec(bContext *C, wmOperator *op)
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user