Example #1
0
 public static void ApplyLook(NestedLayerManager nlm)
 {
     using (CuiUpdater cuiUpdater = CuiUpdater.GetInstance())
     {
         nlm.BackColor = cuiUpdater.GetMaxColor(0);
     }
 }
Example #2
0
 public static Color GetHighlightColor()
 {
     using (CuiUpdater cuiUpdater = CuiUpdater.GetInstance())
     {
         return(cuiUpdater.GetMaxColor(13));
     }
 }
Example #3
0
 public static void ApplyLook(NlmSearchBar searchBar)
 {
     using (CuiUpdater cuiUpdater = CuiUpdater.GetInstance())
     {
         searchBar.BackColor = cuiUpdater.GetMaxColor(7);
         searchBar.ForeColor = cuiUpdater.GetMaxColor(1);
     }
 }
Example #4
0
 public static void ApplyLook(NlmTreeListView listView)
 {
     using (CuiUpdater cuiUpdater = CuiUpdater.GetInstance())
     {
         listView.BackColor                         = cuiUpdater.GetMaxColor(7);
         listView.ForeColor                         = cuiUpdater.GetMaxColor(1);
         listView.AlternateRowBackColor             = Color.FromArgb(listView.BackColor.R + 5, listView.BackColor.G + 5, listView.BackColor.B + 5);
         listView.HighlightBackgroundColor          = cuiUpdater.GetMaxColor(13);
         listView.UnfocusedHighlightBackgroundColor = cuiUpdater.GetMaxColor(13);
         listView.HighlightForegroundColor          = cuiUpdater.GetMaxColor(11);
         listView.UnfocusedHighlightForegroundColor = cuiUpdater.GetMaxColor(11);
     }
 }
Example #5
0
        public MaxPluginForm()
        {
            InitializeComponent();
            this.DoubleBuffered         = true;
            this.StartPosition          = FormStartPosition.Manual;
            this.Location               = new Point(0, 0);
            this.MaximizeBox            = false;
            this.FormBorderStyle        = System.Windows.Forms.FormBorderStyle.FixedDialog;
            openFileDialog.Filter       = "brg files|*.brg|grn files|*.grn";
            saveFileDialog.Filter       = "brg files|*.brg|grn files|*.grn";
            saveFileDialog.AddExtension = false;

            // Update Colors
            uiUp = CuiUpdater.GetInstance();
            mainMenuStrip.Renderer     = new ToolStripMaxPluginRenderer();
            mainStatusStrip.SizingGrip = false;
            mainStatusStrip.BackColor  = uiUp.GetControlColor();
            mainStatusStrip.ForeColor  = uiUp.GetTextColor();

            for (int i = 0; i < mainTabControl.TabPages.Count; i++)
            {
                mainTabControl.TabPages[i].BackColor = uiUp.GetControlColor();
                mainTabControl.TabPages[i].ForeColor = uiUp.GetTextColor();
            }

            // Brg Tab
            brgDataSplitContainer.Panel2MinSize = 350;
            brgObjectsGroupBox.ForeColor        = uiUp.GetTextColor();
            brgImportGroupBox.ForeColor         = uiUp.GetTextColor();
            brgMeshInterpTypeGroupBox.ForeColor = uiUp.GetTextColor();
            attachpointGroupBox.ForeColor       = uiUp.GetTextColor();
            brgMeshFlagsGroupBox.ForeColor      = uiUp.GetTextColor();
            brgMeshFormatGroupBox.ForeColor     = uiUp.GetTextColor();
            brgMeshAnimTypeGroupBox.ForeColor   = uiUp.GetTextColor();
            brgOptionsGroupBox.ForeColor        = uiUp.GetTextColor();
            brgExportGroupBox.ForeColor         = uiUp.GetTextColor();

            brgMeshFlagsCheckedListBox.ItemCheck    += brgMeshFlagsCheckedListBox_ItemCheck;
            brgMeshFlagsCheckedListBox.BackColor     = uiUp.GetEditControlColor();
            brgMeshFlagsCheckedListBox.ForeColor     = uiUp.GetTextColor();
            brgMeshFlagsCheckedListBox.BorderStyle   = BorderStyle.FixedSingle;
            brgMeshFlagsCheckedListBox.MultiColumn   = true;
            brgMeshFlagsCheckedListBox.CheckOnClick  = true;
            brgMeshFlagsCheckedListBox.ColumnWidth   = 150;
            brgMeshFlagsCheckedListBox.DataSource    = Enum.GetValues(typeof(BrgMeshFlag));
            brgMeshFormatCheckedListBox.ItemCheck   += brgMeshFormatCheckedListBox_ItemCheck;
            brgMeshFormatCheckedListBox.BackColor    = uiUp.GetEditControlColor();
            brgMeshFormatCheckedListBox.ForeColor    = uiUp.GetTextColor();
            brgMeshFormatCheckedListBox.BorderStyle  = BorderStyle.FixedSingle;
            brgMeshFormatCheckedListBox.MultiColumn  = true;
            brgMeshFormatCheckedListBox.CheckOnClick = true;
            brgMeshFormatCheckedListBox.ColumnWidth  = 150;
            brgMeshFormatCheckedListBox.DataSource   = Enum.GetValues(typeof(BrgMeshFormat));

            keyframeRadioButton.CheckedChanged          += brgMeshAnimTypeRadioButton_CheckedChanged;
            nonuniRadioButton.CheckedChanged            += brgMeshAnimTypeRadioButton_CheckedChanged;
            skinBoneRadioButton.CheckedChanged          += brgMeshAnimTypeRadioButton_CheckedChanged;
            interpolationTypeCheckBox.CheckStateChanged += brgMeshInterpolationTypeCheckBox_CheckStateChanged;

            // Tree List View Style
            HeaderFormatStyle treelistviewstyle = new HeaderFormatStyle();

            treelistviewstyle.SetBackColor(uiUp.GetControlColor());
            treelistviewstyle.SetForeColor(uiUp.GetTextColor());
            treelistviewstyle.Normal.FrameColor = uiUp.GetButtonLightShadow();
            treelistviewstyle.Normal.FrameWidth = 1;
            treelistviewstyle.Hot.BackColor     = uiUp.GetEditControlColor();
            treelistviewstyle.Hot.FrameColor    = uiUp.GetButtonLightShadow();
            treelistviewstyle.Hot.FrameWidth    = 1;

            // Brg Objects View
            this.brgObjectsTreeListView.MouseEnter             += TreeListView_MouseEnter;
            this.brgObjectsTreeListView.SelectedIndexChanged   += brgObjectsTreeListView_SelectionChanged;
            this.brgObjectsTreeListView.OwnerDraw               = true;
            this.brgObjectsTreeListView.RowHeight               = 10;
            this.brgObjectsTreeListView.BorderStyle             = BorderStyle.FixedSingle;
            this.brgObjectsTreeListView.OverlayText.BorderColor = uiUp.GetButtonDarkShadow();
            this.brgObjectsTreeListView.OverlayText.BorderWidth = 2;
            this.brgObjectsTreeListView.BackColor               = uiUp.GetEditControlColor();
            this.brgObjectsTreeListView.ForeColor               = uiUp.GetTextColor();
            this.brgObjectsTreeListView.HeaderFormatStyle       = treelistviewstyle;
            this.brgObjectsTreeListView.FullRowSelect           = true;
            this.brgObjectsTreeListView.HideSelection           = false;
            this.brgObjectsTreeListView.CanExpandGetter         = delegate(object rowObject)
            {
                if (rowObject is BrgMesh)
                {
                    return(((BrgMesh)rowObject).MeshAnimations.Count > 0);
                }

                return(false);
            };
            this.brgObjectsTreeListView.ChildrenGetter = delegate(object rowObject)
            {
                if (rowObject is BrgMesh)
                {
                    return(((BrgMesh)rowObject).MeshAnimations);
                }

                return(null);
            };
            OLVColumn nameCol = new OLVColumn("Name", "Name");

            nameCol.Width = 675;
            this.brgObjectsTreeListView.Columns.Add(nameCol);


            // Attachpoints
            attachpointListBox.MouseDoubleClick += attachpointListBox_MouseDoubleClick;
            attachpointListBox.BackColor         = uiUp.GetEditControlColor();
            attachpointListBox.ForeColor         = uiUp.GetTextColor();
            string[] atpts = new string[55];
            Array.Copy(BrgAttachpoint.AttachpointNames, atpts, 55);
            Array.Sort(atpts);
            attachpointListBox.DataSource = atpts;

            // Materials
            extractMatButton.FlatStyle               = FlatStyle.Flat;
            extractMatButton.BackColor               = uiUp.GetEditControlColor();
            extractMatButton.ForeColor               = uiUp.GetTextColor();
            extractMatButton2.FlatStyle              = FlatStyle.Flat;
            extractMatButton2.BackColor              = uiUp.GetEditControlColor();
            extractMatButton2.ForeColor              = uiUp.GetTextColor();
            materialGroupBox.BackColor               = uiUp.GetControlColor();
            materialGroupBox.ForeColor               = uiUp.GetTextColor();
            diffuseMaxTextBox.BackColor              = uiUp.GetEditControlColor();
            diffuseMaxTextBox.ForeColor              = uiUp.GetTextColor();
            ambientMaxTextBox.BackColor              = uiUp.GetEditControlColor();
            ambientMaxTextBox.ForeColor              = uiUp.GetTextColor();
            specularMaxTextBox.BackColor             = uiUp.GetEditControlColor();
            specularMaxTextBox.ForeColor             = uiUp.GetTextColor();
            selfIllumMaxTextBox.BackColor            = uiUp.GetEditControlColor();
            selfIllumMaxTextBox.ForeColor            = uiUp.GetTextColor();
            textureMaxTextBox.BackColor              = uiUp.GetEditControlColor();
            textureMaxTextBox.ForeColor              = uiUp.GetTextColor();
            reflectionMaxTextBox.BackColor           = uiUp.GetEditControlColor();
            reflectionMaxTextBox.ForeColor           = uiUp.GetTextColor();
            bumpMapMaxTextBox.BackColor              = uiUp.GetEditControlColor();
            bumpMapMaxTextBox.ForeColor              = uiUp.GetTextColor();
            opacityMaxTextBox.BackColor              = uiUp.GetEditControlColor();
            opacityMaxTextBox.ForeColor              = uiUp.GetTextColor();
            specularLevelMaxTextBox.BackColor        = uiUp.GetEditControlColor();
            specularLevelMaxTextBox.ForeColor        = uiUp.GetTextColor();
            materialFlagsGroupBox.BackColor          = uiUp.GetControlColor();
            materialFlagsGroupBox.ForeColor          = uiUp.GetTextColor();
            materialFlagsCheckedListBox.ItemCheck   += materialFlagsCheckedListBox_ItemCheck;
            materialFlagsCheckedListBox.BackColor    = uiUp.GetEditControlColor();
            materialFlagsCheckedListBox.ForeColor    = uiUp.GetTextColor();
            materialFlagsCheckedListBox.BorderStyle  = BorderStyle.FixedSingle;
            materialFlagsCheckedListBox.MultiColumn  = true;
            materialFlagsCheckedListBox.CheckOnClick = true;
            materialFlagsCheckedListBox.ColumnWidth  = 150;
            materialFlagsCheckedListBox.DataSource   = Enum.GetValues(typeof(BrgMatFlag));

            // Grn Tab
            grnDataSplitContainer.Panel2MinSize = 350;
            grnExportGroupBox.ForeColor         = uiUp.GetTextColor();
            grnObjectsGroupBox.ForeColor        = uiUp.GetTextColor();
            grnPropsGroupBox.ForeColor          = uiUp.GetTextColor();

            grnPropsListBox.BackColor   = uiUp.GetEditControlColor();
            grnPropsListBox.ForeColor   = uiUp.GetTextColor();
            grnPropsListBox.BorderStyle = BorderStyle.None;

            // Grn Tree View
            this.grnObjectsTreeListView.MouseEnter             += TreeListView_MouseEnter;
            this.grnObjectsTreeListView.SelectedIndexChanged   += grnObjectsTreeListView_SelectedIndexChanged;
            this.grnObjectsTreeListView.OwnerDraw               = true;
            this.grnObjectsTreeListView.RowHeight               = 10;
            this.grnObjectsTreeListView.BorderStyle             = BorderStyle.FixedSingle;
            this.grnObjectsTreeListView.OverlayText.BorderColor = uiUp.GetButtonDarkShadow();
            this.grnObjectsTreeListView.OverlayText.BorderWidth = 2;
            this.grnObjectsTreeListView.BackColor               = uiUp.GetEditControlColor();
            this.grnObjectsTreeListView.ForeColor               = uiUp.GetTextColor();
            this.grnObjectsTreeListView.HeaderFormatStyle       = treelistviewstyle;
            this.grnObjectsTreeListView.FullRowSelect           = true;
            this.grnObjectsTreeListView.HideSelection           = false;
            this.grnObjectsTreeListView.CanExpandGetter         = delegate(object rowObject)
            {
                if (rowObject is GrnBone)
                {
                    int rowIndex = grn.File.Bones.IndexOf((GrnBone)rowObject);
                    return(grn.File.Bones.Exists(x => x.ParentIndex == rowIndex));
                }
                else if (rowObject is GrnMaterial)
                {
                    return(((GrnMaterial)rowObject).DiffuseTexture != null);
                }

                return(false);
            };
            this.grnObjectsTreeListView.ChildrenGetter = delegate(object rowObject)
            {
                if (rowObject is GrnBone)
                {
                    int            rowIndex = grn.File.Bones.IndexOf((GrnBone)rowObject);
                    List <GrnBone> bones    = grn.File.Bones.FindAll(x => x.ParentIndex == rowIndex);
                    bones.Remove((GrnBone)rowObject);
                    return(bones);
                }
                else if (rowObject is GrnMaterial)
                {
                    return(new object[] { ((GrnMaterial)rowObject).DiffuseTexture });
                }

                return(null);
            };
            nameCol       = new OLVColumn("Name", "Name");
            nameCol.Width = 675;
            this.grnObjectsTreeListView.Columns.Add(nameCol);
        }
        public MaxPluginForm()
        {
            InitializeComponent();
            this.DoubleBuffered = true;
            this.StartPosition = FormStartPosition.Manual;
            this.Location = new Point(0, 0);
            this.MaximizeBox = false;
            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
            openFileDialog.Filter = "brg files|*.brg|grn files|*.grn";
            saveFileDialog.Filter = "brg files|*.brg|grn files|*.grn";
            saveFileDialog.AddExtension = false;

            // Update Colors
            uiUp = CuiUpdater.GetInstance();
            mainMenuStrip.Renderer = new ToolStripMaxPluginRenderer();
            mainStatusStrip.SizingGrip = false;
            mainStatusStrip.BackColor = uiUp.GetControlColor();
            mainStatusStrip.ForeColor = uiUp.GetTextColor();

            for (int i = 0; i < mainTabControl.TabPages.Count; i++)
            {
                mainTabControl.TabPages[i].BackColor = uiUp.GetControlColor();
                mainTabControl.TabPages[i].ForeColor = uiUp.GetTextColor();
            }

            // Brg Tab
            brgDataSplitContainer.Panel2MinSize = 350;
            brgObjectsGroupBox.ForeColor = uiUp.GetTextColor();
            brgImportGroupBox.ForeColor = uiUp.GetTextColor();
            brgMeshInterpTypeGroupBox.ForeColor = uiUp.GetTextColor();
            attachpointGroupBox.ForeColor = uiUp.GetTextColor();
            brgMeshFlagsGroupBox.ForeColor = uiUp.GetTextColor();
            brgMeshFormatGroupBox.ForeColor = uiUp.GetTextColor();
            brgMeshAnimTypeGroupBox.ForeColor = uiUp.GetTextColor();
            brgOptionsGroupBox.ForeColor = uiUp.GetTextColor();
            brgExportGroupBox.ForeColor = uiUp.GetTextColor();

            brgMeshFlagsCheckedListBox.ItemCheck += brgMeshFlagsCheckedListBox_ItemCheck;
            brgMeshFlagsCheckedListBox.BackColor = uiUp.GetEditControlColor();
            brgMeshFlagsCheckedListBox.ForeColor = uiUp.GetTextColor();
            brgMeshFlagsCheckedListBox.BorderStyle = BorderStyle.FixedSingle;
            brgMeshFlagsCheckedListBox.MultiColumn = true;
            brgMeshFlagsCheckedListBox.CheckOnClick = true;
            brgMeshFlagsCheckedListBox.ColumnWidth = 150;
            brgMeshFlagsCheckedListBox.DataSource = Enum.GetValues(typeof(BrgMeshFlag));
            brgMeshFormatCheckedListBox.ItemCheck += brgMeshFormatCheckedListBox_ItemCheck;
            brgMeshFormatCheckedListBox.BackColor = uiUp.GetEditControlColor();
            brgMeshFormatCheckedListBox.ForeColor = uiUp.GetTextColor();
            brgMeshFormatCheckedListBox.BorderStyle = BorderStyle.FixedSingle;
            brgMeshFormatCheckedListBox.MultiColumn = true;
            brgMeshFormatCheckedListBox.CheckOnClick = true;
            brgMeshFormatCheckedListBox.ColumnWidth = 150;
            brgMeshFormatCheckedListBox.DataSource = Enum.GetValues(typeof(BrgMeshFormat));

            keyframeRadioButton.CheckedChanged += brgMeshAnimTypeRadioButton_CheckedChanged;
            nonuniRadioButton.CheckedChanged += brgMeshAnimTypeRadioButton_CheckedChanged;
            skinBoneRadioButton.CheckedChanged += brgMeshAnimTypeRadioButton_CheckedChanged;
            interpolationTypeCheckBox.CheckStateChanged += brgMeshInterpolationTypeCheckBox_CheckStateChanged;

            // Tree List View Style
            HeaderFormatStyle treelistviewstyle = new HeaderFormatStyle();
            treelistviewstyle.SetBackColor(uiUp.GetControlColor());
            treelistviewstyle.SetForeColor(uiUp.GetTextColor());
            treelistviewstyle.Normal.FrameColor = uiUp.GetButtonLightShadow();
            treelistviewstyle.Normal.FrameWidth = 1;
            treelistviewstyle.Hot.BackColor = uiUp.GetEditControlColor();
            treelistviewstyle.Hot.FrameColor = uiUp.GetButtonLightShadow();
            treelistviewstyle.Hot.FrameWidth = 1;

            // Brg Objects View
            this.brgObjectsTreeListView.MouseEnter += TreeListView_MouseEnter;
            this.brgObjectsTreeListView.SelectedIndexChanged += brgObjectsTreeListView_SelectionChanged;
            this.brgObjectsTreeListView.OwnerDraw = true;
            this.brgObjectsTreeListView.RowHeight = 10;
            this.brgObjectsTreeListView.BorderStyle = BorderStyle.FixedSingle;
            this.brgObjectsTreeListView.OverlayText.BorderColor = uiUp.GetButtonDarkShadow();
            this.brgObjectsTreeListView.OverlayText.BorderWidth = 2;
            this.brgObjectsTreeListView.BackColor = uiUp.GetEditControlColor();
            this.brgObjectsTreeListView.ForeColor = uiUp.GetTextColor();
            this.brgObjectsTreeListView.HeaderFormatStyle = treelistviewstyle;
            this.brgObjectsTreeListView.FullRowSelect = true;
            this.brgObjectsTreeListView.HideSelection = false;
            this.brgObjectsTreeListView.CanExpandGetter = delegate(object rowObject)
            {
                if (rowObject is BrgMesh)
                {
                    return ((BrgMesh)rowObject).MeshAnimations.Count > 0;
                }

                return false;
            };
            this.brgObjectsTreeListView.ChildrenGetter = delegate(object rowObject)
            {
                if (rowObject is BrgMesh)
                {
                    return ((BrgMesh)rowObject).MeshAnimations;
                }

                return null;
            };
            OLVColumn nameCol = new OLVColumn("Name", "Name");
            nameCol.Width = 675;
            this.brgObjectsTreeListView.Columns.Add(nameCol);


            // Attachpoints
            attachpointListBox.MouseDoubleClick += attachpointListBox_MouseDoubleClick;
            attachpointListBox.BackColor = uiUp.GetEditControlColor();
            attachpointListBox.ForeColor = uiUp.GetTextColor();
            string[] atpts = new string[55];
            Array.Copy(BrgAttachpoint.AttachpointNames, atpts, 55);
            Array.Sort(atpts);
            attachpointListBox.DataSource = atpts;

            // Materials
            extractMatButton.FlatStyle = FlatStyle.Flat;
            extractMatButton.BackColor = uiUp.GetEditControlColor();
            extractMatButton.ForeColor = uiUp.GetTextColor();
            extractMatButton2.FlatStyle = FlatStyle.Flat;
            extractMatButton2.BackColor = uiUp.GetEditControlColor();
            extractMatButton2.ForeColor = uiUp.GetTextColor();
            materialGroupBox.BackColor = uiUp.GetControlColor();
            materialGroupBox.ForeColor = uiUp.GetTextColor();
            diffuseMaxTextBox.BackColor = uiUp.GetEditControlColor();
            diffuseMaxTextBox.ForeColor = uiUp.GetTextColor();
            ambientMaxTextBox.BackColor = uiUp.GetEditControlColor();
            ambientMaxTextBox.ForeColor = uiUp.GetTextColor();
            specularMaxTextBox.BackColor = uiUp.GetEditControlColor();
            specularMaxTextBox.ForeColor = uiUp.GetTextColor();
            selfIllumMaxTextBox.BackColor = uiUp.GetEditControlColor();
            selfIllumMaxTextBox.ForeColor = uiUp.GetTextColor();
            textureMaxTextBox.BackColor = uiUp.GetEditControlColor();
            textureMaxTextBox.ForeColor = uiUp.GetTextColor();
            reflectionMaxTextBox.BackColor = uiUp.GetEditControlColor();
            reflectionMaxTextBox.ForeColor = uiUp.GetTextColor();
            bumpMapMaxTextBox.BackColor = uiUp.GetEditControlColor();
            bumpMapMaxTextBox.ForeColor = uiUp.GetTextColor();
            opacityMaxTextBox.BackColor = uiUp.GetEditControlColor();
            opacityMaxTextBox.ForeColor = uiUp.GetTextColor();
            specularLevelMaxTextBox.BackColor = uiUp.GetEditControlColor();
            specularLevelMaxTextBox.ForeColor = uiUp.GetTextColor();
            materialFlagsGroupBox.BackColor = uiUp.GetControlColor();
            materialFlagsGroupBox.ForeColor = uiUp.GetTextColor();
            materialFlagsCheckedListBox.ItemCheck += materialFlagsCheckedListBox_ItemCheck;
            materialFlagsCheckedListBox.BackColor = uiUp.GetEditControlColor();
            materialFlagsCheckedListBox.ForeColor = uiUp.GetTextColor();
            materialFlagsCheckedListBox.BorderStyle = BorderStyle.FixedSingle;
            materialFlagsCheckedListBox.MultiColumn = true;
            materialFlagsCheckedListBox.CheckOnClick = true;
            materialFlagsCheckedListBox.ColumnWidth = 150;
            materialFlagsCheckedListBox.DataSource = Enum.GetValues(typeof(BrgMatFlag));

            // Grn Tab
            grnDataSplitContainer.Panel2MinSize = 350;
            grnExportGroupBox.ForeColor = uiUp.GetTextColor();
            grnObjectsGroupBox.ForeColor = uiUp.GetTextColor();
            grnPropsGroupBox.ForeColor = uiUp.GetTextColor();

            grnPropsListBox.BackColor = uiUp.GetEditControlColor();
            grnPropsListBox.ForeColor = uiUp.GetTextColor();
            grnPropsListBox.BorderStyle = BorderStyle.None;

            // Grn Tree View
            this.grnObjectsTreeListView.MouseEnter += TreeListView_MouseEnter;
            this.grnObjectsTreeListView.SelectedIndexChanged += grnObjectsTreeListView_SelectedIndexChanged;
            this.grnObjectsTreeListView.OwnerDraw = true;
            this.grnObjectsTreeListView.RowHeight = 10;
            this.grnObjectsTreeListView.BorderStyle = BorderStyle.FixedSingle;
            this.grnObjectsTreeListView.OverlayText.BorderColor = uiUp.GetButtonDarkShadow();
            this.grnObjectsTreeListView.OverlayText.BorderWidth = 2;
            this.grnObjectsTreeListView.BackColor = uiUp.GetEditControlColor();
            this.grnObjectsTreeListView.ForeColor = uiUp.GetTextColor();
            this.grnObjectsTreeListView.HeaderFormatStyle = treelistviewstyle;
            this.grnObjectsTreeListView.FullRowSelect = true;
            this.grnObjectsTreeListView.HideSelection = false;
            this.grnObjectsTreeListView.CanExpandGetter = delegate(object rowObject)
            {
                if (rowObject is GrnBone)
                {
                    int rowIndex = grn.File.Bones.IndexOf((GrnBone)rowObject);
                    return grn.File.Bones.Exists(x => x.ParentIndex == rowIndex);
                }
                else if (rowObject is GrnMaterial)
                {
                    return ((GrnMaterial)rowObject).DiffuseTexture != null;
                }

                return false;
            };
            this.grnObjectsTreeListView.ChildrenGetter = delegate(object rowObject)
            {
                if (rowObject is GrnBone)
                {
                    int rowIndex = grn.File.Bones.IndexOf((GrnBone)rowObject);
                    List<GrnBone> bones = grn.File.Bones.FindAll(x => x.ParentIndex == rowIndex);
                    bones.Remove((GrnBone)rowObject);
                    return bones;
                }
                else if (rowObject is GrnMaterial)
                {
                    return new object[] { ((GrnMaterial)rowObject).DiffuseTexture };
                }

                return null;
            };
            nameCol = new OLVColumn("Name", "Name");
            nameCol.Width = 675;
            this.grnObjectsTreeListView.Columns.Add(nameCol);
        }
Example #7
0
 /// <summary>
 /// Traverses the sub-controls of this MaxForm and automatically unbinds
 ///             any that implement the CuiUpdatable interface from the application
 ///             CUI system.
 ///
 /// </summary>
 /// <param name="sender">The object that generated the event this method handles.</param><param name="e">The args for this event.</param>
 private void UnbindFromMaxCui(object sender, FormClosedEventArgs e)
 {
     CuiUpdater.GetInstance().UnregisterForm((Form)this);
     this.GetMaxHookInterfaces().ForEach(new Action <CuiUpdatable>(MaxCuiBinder.GetInstance().UnregisterForNotification));
 }
Example #8
0
 /// <summary>
 /// Updates the form's colors according to the current CUI settings.
 ///
 /// </summary>
 ///
 /// <remarks>
 /// Implementation of CuiUpdatable interface.
 ///
 /// </remarks>
 public virtual void UpdateColors()
 {
     this.BackColor = CuiUpdater.GetInstance().GetControlColor();
     this.ForeColor = CuiUpdater.GetInstance().GetTextColor();
 }
Example #9
0
 /// <summary>
 /// Traverses the sub-controls of this MaxForm and automatically binds
 ///             any that implement the CuiUpdatable interface to the application
 ///             CUI system.
 ///
 /// </summary>
 /// <param name="sender">The object that generated the event this method handles.</param><param name="e">The args for this event.</param>
 private void BindToMaxCui(object sender, EventArgs e)
 {
     CuiUpdater.GetInstance().RegisterForm((Form)this);
     this.GetMaxHookInterfaces().ForEach(new Action <CuiUpdatable>(MaxCuiBinder.GetInstance().RegisterForNotification));
 }
        //public MaxPlugin plugin;

        public MaxPluginForm()
        {
            InitializeComponent();
            this.TopMost                = true;
            this.MaximizeBox            = false;
            this.FormBorderStyle        = System.Windows.Forms.FormBorderStyle.FixedDialog;
            openFileDialog.Filter       = "brg files|*.brg";
            saveFileDialog.Filter       = "brg files|*.brg";
            saveFileDialog.AddExtension = false;

            // Update Colors
            uiUp = CuiUpdater.GetInstance();
            mainMenuStrip.Renderer = new ToolStripMaxPluginRenderer();

            for (int i = 0; i < mainTabControl.TabPages.Count; i++)
            {
                mainTabControl.TabPages[i].BackColor = uiUp.GetControlColor();
                mainTabControl.TabPages[i].ForeColor = uiUp.GetTextColor();
            }

            // General Tab
            generalDataGroupBox.ForeColor   = uiUp.GetTextColor();
            attachpointGroupBox.ForeColor   = uiUp.GetTextColor();
            genMeshFlagsGroupBox.ForeColor  = uiUp.GetTextColor();
            genMeshFormatGroupBox.ForeColor = uiUp.GetTextColor();
            genMeshPropsGroupBox.ForeColor  = uiUp.GetTextColor();

            numVertsMaxTextBox.BackColor   = uiUp.GetEditControlColor();
            numVertsMaxTextBox.ForeColor   = uiUp.GetTextColor();
            numVertsMaxTextBox.BorderStyle = BorderStyle.FixedSingle;
            numFacesMaxTextBox.BackColor   = uiUp.GetEditControlColor();
            numFacesMaxTextBox.ForeColor   = uiUp.GetTextColor();
            numFacesMaxTextBox.BorderStyle = BorderStyle.FixedSingle;
            numMeshMaxTextBox.BackColor    = uiUp.GetEditControlColor();
            numMeshMaxTextBox.ForeColor    = uiUp.GetTextColor();
            numMeshMaxTextBox.BorderStyle  = BorderStyle.FixedSingle;
            numMatMaxTextBox.BackColor     = uiUp.GetEditControlColor();
            numMatMaxTextBox.ForeColor     = uiUp.GetTextColor();
            numMatMaxTextBox.BorderStyle   = BorderStyle.FixedSingle;
            animTimeMaxTextBox.BackColor   = uiUp.GetEditControlColor();
            animTimeMaxTextBox.ForeColor   = uiUp.GetTextColor();
            animTimeMaxTextBox.BorderStyle = BorderStyle.FixedSingle;
            timeMultMaxTextBox.BackColor   = uiUp.GetEditControlColor();
            timeMultMaxTextBox.ForeColor   = uiUp.GetTextColor();
            timeMultMaxTextBox.BorderStyle = BorderStyle.FixedSingle;
            u091MaxTextBox.BackColor       = uiUp.GetEditControlColor();
            u091MaxTextBox.ForeColor       = uiUp.GetTextColor();
            u091MaxTextBox.BorderStyle     = BorderStyle.FixedSingle;
            liuMaxTextBox.BackColor        = uiUp.GetEditControlColor();
            liuMaxTextBox.ForeColor        = uiUp.GetTextColor();
            liuMaxTextBox.BorderStyle      = BorderStyle.FixedSingle;
            liuLabel.Visible               = false;
            liuMaxTextBox.Visible          = false;
            updateSettingsButton.FlatStyle = FlatStyle.Flat;
            updateSettingsButton.BackColor = uiUp.GetEditControlColor();
            updateSettingsButton.ForeColor = uiUp.GetTextColor();

            genMeshFlagsCheckedListBox.BackColor    = uiUp.GetEditControlColor();
            genMeshFlagsCheckedListBox.ForeColor    = uiUp.GetTextColor();
            genMeshFlagsCheckedListBox.BorderStyle  = BorderStyle.None;
            genMeshFlagsCheckedListBox.DataSource   = Enum.GetValues(typeof(BrgMeshFlag));
            genMeshFormatCheckedListBox.BackColor   = uiUp.GetEditControlColor();
            genMeshFormatCheckedListBox.ForeColor   = uiUp.GetTextColor();
            genMeshFormatCheckedListBox.BorderStyle = BorderStyle.None;
            genMeshFormatCheckedListBox.DataSource  = Enum.GetValues(typeof(BrgMeshFormat));
            genMeshPropsCheckedListBox.BackColor    = uiUp.GetEditControlColor();
            genMeshPropsCheckedListBox.ForeColor    = uiUp.GetTextColor();
            genMeshPropsCheckedListBox.BorderStyle  = BorderStyle.None;
            genMeshPropsCheckedListBox.DataSource   = Enum.GetValues(typeof(BrgMeshProperty));

            // Attachpoints
            attachpointComboBox.SelectedIndexChanged += attachpointComboBox_SelectedIndexChanged;
            //attachpointComboBox.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
            //attachpointComboBox.AutoCompleteSource = AutoCompleteSource.ListItems;
            attachpointComboBox.FlatStyle        = FlatStyle.Flat;
            attachpointComboBox.BackColor        = uiUp.GetEditControlColor();
            attachpointComboBox.ForeColor        = uiUp.GetTextColor();
            attachpointListBox.MouseDoubleClick += attachpointListBox_MouseDoubleClick;
            attachpointListBox.BackColor         = uiUp.GetEditControlColor();
            attachpointListBox.ForeColor         = uiUp.GetTextColor();
            attachpointListBox.DataSource        = BrgAttachpoint.AttachpointNames;

            // Materials
            materialGroupBox.BackColor              = uiUp.GetControlColor();
            materialGroupBox.ForeColor              = uiUp.GetTextColor();
            diffuseMaxTextBox.BackColor             = uiUp.GetEditControlColor();
            diffuseMaxTextBox.ForeColor             = uiUp.GetTextColor();
            ambientMaxTextBox.BackColor             = uiUp.GetEditControlColor();
            ambientMaxTextBox.ForeColor             = uiUp.GetTextColor();
            specularMaxTextBox.BackColor            = uiUp.GetEditControlColor();
            specularMaxTextBox.ForeColor            = uiUp.GetTextColor();
            selfIllumMaxTextBox.BackColor           = uiUp.GetEditControlColor();
            selfIllumMaxTextBox.ForeColor           = uiUp.GetTextColor();
            textureMaxTextBox.BackColor             = uiUp.GetEditControlColor();
            textureMaxTextBox.ForeColor             = uiUp.GetTextColor();
            reflectionMaxTextBox.BackColor          = uiUp.GetEditControlColor();
            reflectionMaxTextBox.ForeColor          = uiUp.GetTextColor();
            unknownMaxTextBox.BackColor             = uiUp.GetEditControlColor();
            unknownMaxTextBox.ForeColor             = uiUp.GetTextColor();
            opacityMaxTextBox.BackColor             = uiUp.GetEditControlColor();
            opacityMaxTextBox.ForeColor             = uiUp.GetTextColor();
            specularLevelMaxTextBox.BackColor       = uiUp.GetEditControlColor();
            specularLevelMaxTextBox.ForeColor       = uiUp.GetTextColor();
            updateMatSettingsButton.FlatStyle       = FlatStyle.Flat;
            updateMatSettingsButton.BackColor       = uiUp.GetEditControlColor();
            updateMatSettingsButton.ForeColor       = uiUp.GetTextColor();
            materialFlagsGroupBox.BackColor         = uiUp.GetControlColor();
            materialFlagsGroupBox.ForeColor         = uiUp.GetTextColor();
            materialListBox.SelectedIndexChanged   += materialListBox_SelectedIndexChanged;
            materialListBox.BackColor               = uiUp.GetEditControlColor();
            materialListBox.ForeColor               = uiUp.GetTextColor();
            materialFlagsCheckedListBox.BackColor   = uiUp.GetEditControlColor();
            materialFlagsCheckedListBox.ForeColor   = uiUp.GetTextColor();
            materialFlagsCheckedListBox.BorderStyle = BorderStyle.FixedSingle;
            materialFlagsCheckedListBox.DataSource  = Enum.GetValues(typeof(BrgMatFlag));

            //plugin = new MaxPlugin();
            //this.Controls.Add(plugin);
            //plugin.Dock = DockStyle.Fill;
            Settings.Read();
            newToolStripMenuItem_Click(this, new EventArgs());
        }