Revision 28960 trunk/applications/appgvSIG/src/com/iver/cit/gvsig/gui/styling/SymbolSelector.java

View differences:

SymbolSelector.java
431 431
	protected void updateOptionsPanel() throws IllegalArgumentException {
432 432
		Object mySelectedElement = ((SymbolPreviewer) jPanelPreview).getSymbol();
433 433

  
434
		if (mySelectedElement == null) return;
434
//		if (mySelectedElement == null) return;
435 435
		act = false; // disable events
436 436

  
437 437
		if (mySelectedElement instanceof CartographicSupport) {
......
448 448

  
449 449
		try {
450 450

  
451
			jcc1.setEnabled(true);
452
			jcc2.setEnabled(true);
451
			jcc1.setEnabled(mySelectedElement!=null);
452
			jcc2.setEnabled(mySelectedElement!=null);
453 453

  
454 454
			if(mySelectedElement instanceof IMultiLayerSymbol){
455 455
				jcc1.setColor(Color.WHITE);
......
461 461

  
462 462
			if (shapeType == FShape.POINT) {
463 463
				IMarkerSymbol m = (IMarkerSymbol) mySelectedElement;
464
				jcc1.setColor(m.getColor());
465
				txtSize.setDouble(m.getSize());
466
				txtAngle.setDouble(Math.toDegrees(m.getRotation()));
464
				txtSize.setEnabled(m!=null);
465
				txtAngle.setEnabled(m!=null);
466
				if(m!=null){
467
					jcc1.setColor(m.getColor());
468
					txtSize.setDouble(m.getSize());
469
					txtAngle.setDouble(Math.toDegrees(m.getRotation()));
470
				}
467 471
			}
468 472

  
469 473
			if (shapeType == FShape.LINE) {
470 474
				ILineSymbol l = (ILineSymbol) mySelectedElement;
471
				jcc1.setColor(l.getColor());
472
				jcc1.setAlpha(l.getAlpha());
473
				txtSize.setDouble(l.getLineWidth());
475
				txtSize.setEnabled(l!=null);
476
				if(l!=null){
477
					jcc1.setColor(l.getColor());
478
					jcc1.setAlpha(l.getAlpha());
479
					txtSize.setDouble(l.getLineWidth());
480
				}
474 481
			}
475 482

  
476 483
			if (shapeType == FShape.POLYGON) {
477 484
				IFillSymbol f = (IFillSymbol) mySelectedElement;
478 485

  
479
				txtWidth.setEnabled(true);
480
				cmbReferenceSystem.setEnabled(true);
481
				cmbUnits.setEnabled(true);
486
				txtWidth.setEnabled(f!=null);
487
				cmbReferenceSystem.setEnabled(f!=null);
488
				cmbUnits.setEnabled(f!=null);
482 489

  
483
				jcc1.setUseColorIsSelected(f.hasFill());
484
				jcc1.setColor(f.getFillColor());
485
				jcc1.setAlpha(f.getFillAlpha());
486
				jcc2.setUseColorIsSelected(f.hasOutline());
487
				ILineSymbol outline = f.getOutline();
488
				if (outline != null) {
489
					jcc2.setColor(outline.getColor());
490
					txtWidth.setDouble(outline.getLineWidth());
491
				}
490
				if (f!=null){
491
					jcc1.setUseColorIsSelected(f.hasFill());
492
					jcc1.setColor(f.getFillColor());
493
					jcc1.setAlpha(f.getFillAlpha());
494
					jcc2.setUseColorIsSelected(f.hasOutline());
495
					ILineSymbol outline = f.getOutline();
496
					if (outline != null) {
497
						jcc2.setColor(outline.getColor());
498
						txtWidth.setDouble(outline.getLineWidth());
499
					}
492 500

  
493
				if(f instanceof MultiLayerFillSymbol){
494
					txtWidth.setEnabled(false);
495
					cmbReferenceSystem.setEnabled(false);
496
					cmbUnits.setEnabled(false);
501
					if(f instanceof MultiLayerFillSymbol){
502
						txtWidth.setEnabled(false);
503
						cmbReferenceSystem.setEnabled(false);
504
						cmbUnits.setEnabled(false);
505
					}
497 506
				}
498 507
			}
499 508

  
500 509

  
510

  
501 511
			if (shapeType == FShape.TEXT) {
502 512
				ITextSymbol t = (ITextSymbol) mySelectedElement;
503
				jcc1.setColor(t.getTextColor());
504
				Double s = new Double(t.getFont().getSize());
505
				cmbFontSize.setSelectedItem(s);
506
				int i = cmbFontSize.getSelectedIndex();
507
				if (i == -1) {
508
					cmbFontSize.addItem(s);
513
				cmbFontSize.setEnabled(t!=null);
514
				if(t!=null){
515
					jcc1.setColor(t.getTextColor());
516
					Double s = new Double(t.getFont().getSize());
509 517
					cmbFontSize.setSelectedItem(s);
518
					int i = cmbFontSize.getSelectedIndex();
519
					if (i == -1) {
520
						cmbFontSize.addItem(s);
521
						cmbFontSize.setSelectedItem(s);
522
					}
510 523
				}
511 524
			}
512 525
		} catch (NullPointerException npEx) {

Also available in: Unified diff