/*
* Skin Personalizado para la agregacion de watermark
*/
package utilidades.skins;
import org.pushingpixels.substance.api.SubstanceConstants.ImageWatermarkKind;
import org.pushingpixels.substance.api.skin.NebulaBrickWallSkin;
import org.pushingpixels.substance.api.watermark.SubstanceImageWatermark;
/**
*
* @author UNL
*/
public class SkinNebulaBrickWall extends NebulaBrickWallSkin {
private SubstanceImageWatermark imageWatermark;
/**
* Constructor sin parametros
* @return void
*/
public SkinNebulaBrickWall() {
super();
this.watermark = new SubstanceImageWatermark(getClass().getResource("/images/fondoAplicacion1.png").getFile());
}
@Override
/**
* Nombre del Skin
* @return Nombre
*/
public String getDisplayName() {
return "SkinAutumn";
}
/**
* Obtiene la imagen de fondo
* @return watermark
*/
public SubstanceImageWatermark getImageWatermark() {
return imageWatermark;
}
/**
* Sustituye el background de la aplicacion por una imagen dada
* @param s path completo de la nueva imagen
*/
public void setWatermark(String s) {
imageWatermark = new SubstanceImageWatermark(s);
imageWatermark.setOpacity(0.1f);
imageWatermark.setKind(ImageWatermarkKind.APP_ANCHOR);
this.watermark = imageWatermark;
}
/**
* Intensidad de visibilidad de la imagen de background
* @param f float entre 0.0 y 1. Donde 0 es minima visibilidad y 1 es maxima
*/
public void setTransparency(float f) {
this.imageWatermark.setOpacity(f);//rango de 0 a 1
}
/**
* Tipo de visualizacion del background
* 1: Superior Izquierda; 2: Centrado (no escalado); 3:Baldosas (escalado)
* 4: Centrada (escalado) 5: Baldosas (no escalado)
* @param i entero entre 1 y 5
*/
public void setPosGB(int i) {
switch(i) {
case 1: imageWatermark.setKind(ImageWatermarkKind.APP_ANCHOR);break;
case 2: imageWatermark.setKind(ImageWatermarkKind.APP_CENTER);break;
case 3: imageWatermark.setKind(ImageWatermarkKind.APP_TILE);break;
case 4: imageWatermark.setKind(ImageWatermarkKind.SCREEN_CENTER_SCALE);break;
case 5: imageWatermark.setKind(ImageWatermarkKind.SCREEN_TILE);break;
}
}
}