/// <summary> /// Integer vector field. /// </summary> static public IntVector IntPair(string prefix, string leftCaption, string rightCaption, int x, int y) { GUILayout.BeginHorizontal(); if (string.IsNullOrEmpty(prefix)) { GUILayout.Space(82f); } else { GUILayout.Label(prefix, GUILayout.Width(74f)); } GUILayoutHelper.SetLabelWidth(48f); IntVector retVal; retVal.x = EditorGUILayout.IntField(leftCaption, x, GUILayout.MinWidth(30f)); retVal.y = EditorGUILayout.IntField(rightCaption, y, GUILayout.MinWidth(30f)); GUILayoutHelper.SetLabelWidth(80f); GUILayout.EndHorizontal(); return(retVal); }
private void drawSetting(ParticleEffectSettingBean modelSetting) { GUILayout.BeginVertical(); { bool isFoldOut = true; GUILayout.BeginHorizontal(); if (isFolderOut.ContainsKey(modelSetting)) { isFoldOut = isFolderOut[modelSetting]; } isFolderOut[modelSetting] = EditorGUILayout.Foldout(isFoldOut, modelSetting.AssetDesc); GUILayout.FlexibleSpace(); if (GUILayout.Button("X", GUILayout.Width(30))) { removeSettings.Add(modelSetting); } GUILayout.EndHorizontal(); if (isFoldOut) { GUILayout.BeginHorizontal(); GUILayout.Space(30); GUILayout.Label("文件类型描述", GUILayout.Width(100F)); modelSetting.AssetDesc = GUILayout.TextField(modelSetting.AssetDesc); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); { GUILayout.Space(30); if (GUILayout.Button("文件目录", GUILayout.Width(100F))) { modelSetting.Folder.Add(string.Empty); } GUILayout.BeginVertical(); for (int i = modelSetting.Folder.Count - 1; i >= 0; i--) { GUILayout.BeginHorizontal(); GUILayout.TextField(modelSetting.Folder[i]); if (GUILayout.Button("...", GUILayout.Width(30f))) { string path = EditorUtility.OpenFolderPanel("选择文件夹", Application.dataPath, ""); modelSetting.Folder[i] = path.Replace(Application.dataPath, "Assets"); } if (GUILayout.Button("X", GUILayout.Width(30f))) { modelSetting.Folder.RemoveAt(i); } GUILayout.EndHorizontal(); } GUILayout.EndVertical(); } GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Space(30); GUILayoutHelper.SetLabelWidth(120F); modelSetting.MaxMatrials = EditorGUILayout.IntSlider(new GUIContent("最大材质数"), modelSetting.MaxMatrials, 0, MaxMatrials); GUILayout.FlexibleSpace(); modelSetting.MaxParticels = EditorGUILayout.IntSlider(new GUIContent("最大粒子数"), modelSetting.MaxParticels, 0, MaxParticles); GUILayout.EndHorizontal(); } } GUILayout.EndVertical(); }