GUI SkinCompiler

From DVBViewer
Jump to: navigation, search


!!! DVBViewer Pro GUI Skin Support has been removed !!!














Standard GUI Skin for DVBViewer Pro by A.I.S. s. r. o.

DVBViewer Pro GUI Engine[edit]

Introduction[edit]

DVBViewer compatible skins consists of:

  • Frameimages
  • Buttons (Type=Button)
  • Sliders (type=Sliders)
  • Labels (type=Labels)

Frames[edit]

The first Section "[Frame]" of an Ini file contains the frame informations of the window.

[Frame]
SkinWidth=460
SkinHeight=100
TopLeft=topleft.bmp
Top=top.bmp
TopRight=topright.bmp
Left=left.bmp
Right=right.bmp
BottomLeft=bottomleft.bmp
Bottom=bottom.bmp
BottomRight=bottomright.bmp
BottomRightHighlight=Bottomright.bmp
TransparentColor=$FF00FF

SkinWidth and SkinHeight are necessary to calculate the proper withs and heights of the sliders or labels. Furthermore, they are defining also the minimum constraint with of a skinned formular. TopLeft,Top,Topright are handling the upper part of the window, similar like the BottomLeft,Bottom and BottomRight, wich are responsible for the lower part. Left and Right determine the images for frame. The TransparentColor is by default $FF00FF (clFuchsia), but could be also changed. Each pixel which has this color will be removed.

All following sections are numbered like "[ObjectX]", e.g. [Object0], [Object1] etc. These Objects can either be Buttons, Sliders or Labels.

Buttons[edit]

[Object0]
Type=Button
Action=0
Left=25
Top=-55
Centered=1
Normal=open_normal.bmp
Highlight=open_normal.bmp
Pressed=open_down.bmp
Disabled=

The Type defines the kind of the Object. Action describes its Character - for more see the Valuelist on the end of this text. To override automatic centering of an button the value must be set to "0" (False) - by default its set to "1". Left and Top are responsible for the position on the formular. To align the Object on the right resp. bottom you have to enter negative values, otherwise they are placed on the Left/Top position. Normal, Highlight, Pressed and Disabled presenting the images for the different button states.

Sliders[edit]

[Object0]
Type=Slider
Action=12000
Stretch=1
Centered=1
Left=10
Top=-77
Vertical=0
Width=200
Height=200
Empty=sliderempty.bmp
Full=sliderfull.bmp
Slider=slider.bmp

If the Stretch property is enabled, the sliderbar will be automatically stretched, if the skinned window is resized. Left and Top are the same like at button objects. If Vertical is enabled, the sliders are handled like vertical. Empty contains the image for empty sliders, full if the gauge is at 100% and the slider contains the sliding image.

Labels[edit]

[Object0]
Type=Label
Action=12000
Stretch=1
Left=10
Top=-82
Height=20
Width=445
Backcolor=$DDF5ED
Background=
Active=0
Alignment=2
Offset=
Font=Arial Black|$AF0000|14|238|
Moveable=1
FadeWithEdge=15
Direction=0

Labels are handled similiar like Sliders. To change the background of the text you can either enter a proper color value (Backcolor) or an Image (Background). If Active is "1" the text is scrolling from right to left resp. right to left; this is usefull for long descriptions. Offset moves the Label to a proper position (if nothing is set, it will be calculated by the Height and the text height). The Font Contains the name, color, size and charset. If Moveable is "1" you can move the scrolling text by dragging it with the mouse. FadeWithEdge defines the Pixelwidth of the Fade.

Actionlists[edit]

Menu[edit]

  • acMenuDVBViewer = 11000;
  • acMenuChannel = 11001;
  • acMenuView = 11002;
  • acMenuSettings = 11003;
  • acMenuHelp = 11004;
  • acMenuPlugins = 11005;

Buttons[edit]

  • acPause = 0;
  • acOnTop = 1;
  • acHideMenu = 2;
  • acShowStatusbar = 3;
  • acToolbar = 4;
  • acFullscreen = 5;
  • acExit = 6;
  • acChannellist = 7;
  • acChanMinus = 8;
  • acChanPlus = 9;
  • acChanSave = 10;
  • acFav1 = 11;
  • acFav2 = 12;
  • acFav3 = 13;
  • acFav4 = 14;
  • acFav5 = 15;
  • acFav6 = 16;
  • acFav7 = 17;
  • acFav8 = 18;
  • acFav9 = 19;
  • acStationMinus = 20;
  • acStationPlus = 21;
  • acAspect = 22;
  • acZoom = 23;
  • acOptions = 24;
  • acMute = 25;
  • acVolUp = 26;
  • acVolDown = 27;
  • acDisplay = 28;
  • acZoom50 = 29;
  • acZoom100 = 30;
  • acZoom200 = 31;
  • acDesktop = 32;
  • acRecordSettings = 33;
  • acRecord = 34;
  • acTeletext = 35;
  • acMiniEPG = 36;
  • acEPG = 37;
  • acFav0 = 38;
  • acChannel0 = 40;
  • acChannel1 = 41;
  • acChannel2 = 42;
  • acChannel3 = 43;
  • acChannel4 = 44;
  • acChannel5 = 45;
  • acChannel6 = 46;
  • acChannel7 = 47;
  • acChannel8 = 48;
  • acChannel9 = 49;
  • acTimeShift = 50;
  • acTimeShiftWindow = 51;
  • acTimeshiftStop = 52;
  • acRebuildGraph = 53;
  • acTitlebarHide = 54;
  • acBrightnessUp = 55;
  • acBrightnessDown = 56;
  • acSaturationUp = 57;
  • acSaturationDown = 58;
  • acContrastUp = 59;
  • acContrastDown = 60;
  • acHueUp = 61;
  • acHueDown = 62;
  • acLastChannel = 63;
  • acPlaylist = 64;
  • acPlaylistFirst = 65;
  • acPlaylistNext = 66;
  • acPlaylistPrevious = 67;
  • acPlaylistLast = 68;
  • acPlaylistStop = 69;
  • acPlaylistRandom = 70;
  • acHideAll = 71;
  • acAudioChannel = 72;
  • acEnter = 73;
  • acRed = 74;
  • acGreen = 75;
  • ecYellow = 76;
  • acBlue = 77;

OSD Funcs[edit]

  • acOSDUp = 78;
  • acOSDDown = 79;
  • acOSDFirst = 80;
  • acOSDLast = 81;
  • acOSDPrevious = 82;
  • acOSDNext = 83;
  • acOSDClose = 84;
  • acOSDPositioning = 85;

Preview[edit]

  • acShowPreview = 86;
  • acPreviewPlus = 87;
  • acPreviewMinus = 88;
  • acBestWidth = 89;
  • acEPGNow = 90;
  • acEPGNext = 91;
  • acPlay = 92;
  • acStop = 93;
  • acOpen = 94;
  • acOSDOpenFile = 1000;
  • acOSDChannel = 1001;
  • acOSDPlayList = 1002;
  • acOSDFavourites = 1003;
  • acOSDView = 1004;
  • acOSDRatio = 1005;
  • acOSDAudio = 1006;
  • acOSDWhatsNow = 1007;
  • acOSDLeft = 2000;
  • acOSDRight = 2100;
  • acOSDUndefined1 = 2010;
  • acOSDUndefined2 = 2110;

Sliders[edit]

  • sldVolume = 12000;
  • sldPosition = 12001;

Labels[edit]

  • lblEpgTitleNow = 13000;
  • lblEpgInfoNow = 13001;
  • lblEpgDescrNow = 13002;
  • lblEpgShortNext = 13010;
  • lblEpgTitleNext = 13011;
  • lblEpgDescNext = 13012;
  • lblChannelName = 13020;

Compiling a skin[edit]

To add a skin into the DVBViewer it is necessary to compress and compile it before. For compiling the skin directory all you need is to use the commandline tool "compressor.exe". The command: "compressor dvbexample.skin C:\program files\skinedit\skin\"compiles the skin located in the "c:\program files\skinedit\skin\" directory..

Happy Skinning

DVBViewer Mini GUI Engine[edit]

The versions of DVBViewer done for Technisat, Technotrend, DVBShop, X3M and DigitalEverywhere do feature a limited amount of the elements that a DVBViewer Pro GUI Skin can have.

Actionlists[edit]

Buttons[edit]

  • acPause = 0;
  • acExit = 6;
  • acChannellist = 7;
  • acMute = 25;
  • acRecord = 34;
  • acPlay = 92;
  • acStop = 93;
  • acLastChannel = 63;
  • acChannelDown = 8;
  • acChannelUp = 9;
  • acNextAudioTrack = 10;
  • acPreviousAudioTrack = 11;
  • acNextSubtitle = 12;
  • acPreviousSubtitle = 13;
  • acVolumeUp = 14;
  • acVolumeDown = 15;
  • acPlayPause = 16;
  • acUrl = 111;
  • acFileopen = 11000;
  • acScanner = 11001;
  • acEPG = 11002;
  • acVCR = 11003;
  • acAbout = 11004;
  • acMiniEPG = 11005;
  • acOptions = 11006;
  • acCam = 11007;
  • acTeletext = 11008;
  • acMenus = 12000;
  • acFullscreen = 14000;
  • acMinimize = 14001;

Dialogue[edit]

  • dlgInsufficientInput = 0;
  • dlgNoHardware = 1;
  • dlgDeleteAll = 2;
  • dlgDelete = 3;
  • dlgSameTime = 4;

Text[edit]

  • txtPrograms = 5;
  • txtUpdated = 6;
  • txtNone = 7;
  • txtDirectory = 8;
  • txtChannels = 9;
  • txtRecorder = 10;
  • txtFollow = 11;
  • txtFile = 12;
  • txtTitle = 13;
  • txtArtist = 14;
  • txtAlbum = 15;
  • txtNoFreeDevice = 16;
  • txtPlay = 17;
  • txtPause = 18;
  • txtStop = 19;
  • txtUrl = 20;
  • txtMute = 21;
  • txtRecord = 22;
  • txtExit = 23;
  • txtchannelUp = 24;
  • txtChannelDown = 25;
  • txtVolume = 26;
  • txtPosition = 27;
  • txtFullscreen = 28;
  • txtMinimize = 29;
  • txtFileOpen = 30;
  • txtScanner = 31;
  • txtEPG = 32;
  • txtVCR = 33;
  • txtAbout = 34;
  • txtMiniEPG = 35;
  • txtOptions = 36;
  • txtCam = 37;
  • txtTeletext = 38;
  • txtLastChannel = 39;
  • txtSignalPower = 40;