Changeset 594 for trunk/x42view.net/Gui/ModelWindow.cs
- Timestamp:
- 07/03/08 18:39:10 (5 months ago)
- Files:
-
- trunk/x42view.net/Gui/ModelWindow.cs (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/x42view.net/Gui/ModelWindow.cs
r484 r594 94 94 vi3DShowShaded.Checked = previewMode == PreviewMode.Shaded; 95 95 btnShadedView.Checked = previewMode == PreviewMode.Shaded; 96 97 UpdateCameraModeMenu(); 96 98 } 97 99 … … 110 112 if( model.Model != null ) 111 113 { 112 cam.Reset(); 113 cam.CenterOnSphere( new Vector3( 114 CameraTag = null; 115 116 pn3DCamera.Reset(); 117 pn3DCamera.CenterOnSphere( new Vector3( 114 118 model.Model.BoundingSphere.Center.x, 115 119 model.Model.BoundingSphere.Center.y, … … 118 122 } 119 123 else 120 cam.Reset();124 pn3DCamera.Reset(); 121 125 } 122 126 … … 150 154 { 151 155 Helpers.DisposeAndClear( ref scoreDetails ); 156 157 for( int i = cameraModeMenu.Items.Count - 1; i > 1; i-- ) 158 cameraModeMenu.Items.RemoveAt( i ); 159 160 Libx42.Model mod = model.Model; 161 if( mod != null ) 162 { 163 if( mod.Tags.Count > 0 ) 164 cameraModeMenu.Items.Add( new ToolStripSeparator() ); 165 166 foreach( Libx42.Tag tag in mod.Tags ) 167 { 168 ToolStripMenuItem mi = new ToolStripMenuItem( tag.Name, Properties.Resources.tag, cameraModeMenuItem_Click ); 169 mi.Tag = tag; 170 cameraModeMenu.Items.Add( mi ); 171 } 172 } 152 173 153 174 ResetCamera(); … … 280 301 281 302 pn3D.Enable3D = false; //destroy device 282 Camera.State sv = cam.SaveState(); 303 304 string camTag = null; 305 if( cameraTag != null ) 306 { 307 camTag = cameraTag.Name; 308 cameraTag = null; 309 } 310 311 Camera.State sv = pn3DCamera.SaveState(); 283 312 284 313 using( Libx42.Model oldModel = model.Model ) … … 287 316 GenGroupTopology(); //refresh this data before the reload 288 317 289 cam.RestoreState( sv ); 318 if( camTag != null ) 319 { 320 foreach( Libx42.Tag tag in model.Model.Tags ) 321 if( tag.Name == camTag ) 322 { 323 cameraTag = tag; 324 break; 325 } 326 } 327 328 pn3DCamera.RestoreState( sv ); 329 pn3DCamera.Enabled = cameraTag != null; 330 290 331 pn3D.Enable3D = true; //bring it back 291 332 } … … 322 363 } 323 364 #endregion 365 366 private void UpdateCameraModeMenu() 367 { 368 ToolStripMenuItem mi; 369 370 foreach( ToolStripItem tsi in cameraModeMenu.Items ) 371 { 372 mi = tsi as ToolStripMenuItem; 373 if( mi == null ) 374 continue; 375 376 if( mi.Tag == cameraTag ) 377 { 378 mi.Checked = true; 379 btnCameraMode.Text = mi.Text; 380 btnCameraMode.Image = mi.Image; 381 btnCameraMode.DisplayStyle = mi.Image != null ? ToolStripItemDisplayStyle.ImageAndText : ToolStripItemDisplayStyle.Text; 382 } 383 else 384 { 385 mi.Checked = false; 386 } 387 } 388 } 389 390 private void cameraModeMenuItem_Click( object sender, EventArgs e ) 391 { 392 393 ToolStripMenuItem mi = sender as ToolStripMenuItem; 394 if( mi != null ) 395 { 396 Libx42.Tag tag = mi.Tag as Libx42.Tag; 397 CameraTag = tag; 398 } 399 } 324 400 } 325 401
