Page 1 of 22 1234567891011 ... LastLast
Results 1 to 10 of 216

Thread: [Release] SKINbedder V3 - Preview

  1. #1
    Banned RPM_VR4's Avatar
    Join Date
    Nov 2004
    Location
    L.A.
    Posts
    1,893

    [Release] SKINbedder V3 - Preview

    EDIT: V3 - Preview #2 is out... get it here: [Release] SKINbedder V3 - Preview #2


    Download: http://www.whipflash.com/vamr/SkinBedder_v3.zip

    Screen-Shots: Below and in other threads (Fist screen-shot of V3 with a Skin).

    Note: This is not ready for in-car use until the iGuidance skin is completed. There are also problems with transparency (both in embedded windows and in PNG graphics). See the "Status" header in the 3rd post for details.

    This release is mainly for people who want to start skinning other apps or want to help complete the iGuidance skin.


    Code:
    SKINbedder V3 - Preview Release
    Readme File
    
    
    Introduction
    ------------
      SKINbedder V3 allows users to easily create a custom touchscreen-friendly
    UI for any application or group of applications.  With it you will be able to 
    auto-size, position, trim, and embed any group of windows to your own 
    custom layout.  Hot-Spot graphics can then be overlaid allowing you to 
    control the windows through your own custom UI.  Embedded windows can 
    be made transparent by "deleting" one color and/or semi-transparent by 
    alpha-blending the window.  Graphics are PNG which supports transparency 
    and alpha-blending.  Hot-Spot controls (as well as responses to open, close, 
    hibernate, and resume) are defined using a simple scripting language.
    
    
    
    Installation:
    ------------
      Extract the entire contents of the .zip distribution file to the 
    folder "c:\program files\SKINbedder".  You can then run SKINbedder.exe or 
    SKINbedder_NOEX.exe from that folder (SKINbedder is distributed for use with
    iGuidance.  iGuidance must be installed in its default location
    "c:\program files\iNAV\iGuidance").
    
    Note: SKINbedder should run from any folder as long as it has the proper
    sub-folders and INI files.
    
    
    
    Configuration:
    -------------
      All configuration is done by editing INI files (and PNG graphics).  These
    INI files (and PNG graphics) are organized in subfolders of SKIN\Window.  
    Here are some examples of the type of settings you will find in the 
    configuration files on each level.
    
      Skinbedder.ini - Sets the default "SKIN" to iGuidance and specifies re-draw refresh-rate.
      iGuidance\iGuidance.ini - Sets SKINbedders size/position/window name/startup-script/etc.
      iGuidance\iGMap\iGMap.ini - Sets the map size/position/nudging/etc.
      iGuidance\iGMap\Bookmark_Left.ini - Sets the actions/positions of the 4 left buttons.
      iGuidance\iGMap\BookmarkLeft_Down.png - The graphic of the 4 left buttons that you see.
      ...
    
    Note: To change the location of iGuidance, you would edit the Run() 
    command in the [Scripts], Startup= section of iGuidance\iGuidance.ini.
    
    
    
    Making a new "SKIN":
    -------------------
      Make a copy of the SKINbedder\iGuidance folder and rename it to the name 
    of your new SKIN.  Edit SKINbedder.ini and change the "DefaultProgram" to 
    the name of your new SKIN.  Go into your new folder and rename its 
    iGuidance.ini to the name of your new SKIN.  Edit its INI file, change the top 
    section name to the name of your new SKIN.  Change the Startup script in 
    the INI file to run your program, embed your main window sub-folder, and 
    load your skin-layer.  Rename the iGMap sub-folder to the name of your main 
    window.  Go into it, rename its iGMap.ini, rename the section at the top of that INI file.  Edit the rest of the INI file to configure 
    sizing/positioning/nudging/transparency/etc.  Rename BookMark_Left.ini to 
    the name of your Skin-Layer.  Rename the section at the top of it and then 
    edit the rest of it to configure graphics/action hot-spots/button commands.
    
      
    
    
    Folder Structure:
    ----------------
    SKINbedder
     \_ SKINbedder.ini     Default SKIN Sub-Folder & Refresh-Rate.
     \_ [SKIN]             Sub-Folders (one per SKINbedder instance).
        \_ SKIN.ini        Startup/Shutdown/Hibernate Scripts & Form Settings.
        \_ LoadingPIC      Displays while SKINbedder is loading.
        \_ [Window]        Sub-Folders (one per window type to embed).
           \_ Window.ini   Window Size/Position/Trim/Transparent Settings.
           \_ Layer.ini    Layer Graphics/Position/Hot-Spots Settings
           \_ Up.png       Image with all Hot-Spot buttons "up".
           \_ Down.png     Image with all Hot-Spot buttons "down".
    
    
    
    
    SKINs:
    -----
      SKINbedder V3 is designed so that you can use multiple instances of it to 
    embed multiple different applications.  Each application layout is defined in 
    a "SKIN" sub-folder.  SKINbedder V3 is distributed with an iGuidance SKIN.  
    To launch SKINbedder with a different SKIN than iGuidance, simply pass the 
    SKIN name as a parameter to SKINbedder.exe.  You can also change the 
    default SKIN by editing SKINbedder.ini (used when double-clicking 
    SKINbedder.exe or launching it without a parameter).  Through a SKINs INI 
    file, you can set a the SKINbedder window name/size/position and the 
    Startup/Shutdown/Hibernate/Resume scripts.
    
    
    
    
    
    Window Containers:
    -----------------
      Anything you want to embed is contained in a TWindowContainer.
    Through a window container INI file, you can set the windows class, 
    name, size, position, nudging, and transparency.  You size/position the 
    window by specifying a Width, Height, TopBorder, BottomBorder, LeftBorder, 
    and/or RightBorder (usually only 2, 3, or 4 of the 6).  Borders are the 
    distance between the edge of the main SKINbedder form, and the edge of 
    your embedded window.  If you do not specify any borders, you must specify 
    width and height and your window will be centered.  If you specify all 4 
    boarders are 0, you do not need to specify width and height and your 
    window will be stretched to fit the entire area of the main SKINbedder form. 
     Borders are respected even when the main SKINbedder form is resized.  
    See the table below for all possible combinations:
    
      Horizontal:  Width only:  Center
                   Width+LeftBorder:  Left edge is LeftBorder pixels from left edge of main form.
                   Width+RightBorder:  Right edge is RightBorder pixels from right edge of form.
                   Width+LeftBorder+RightBorder:  Same as Width+Left except width will shrink if needed to respect right border.
    
      Vertical:    Height only:  Center
                   Height+TopBorder:  Top edge is TopBorder pixels from top edge of main form.
                   Height+BottomBorder:  Bottom edge is BottomBorder pixels from bottom edge of form.
                   Height+TopBorder+BottomBorder:  Same as Width+Top except height will shrink if needed to respect bottom border.
    
      The window title-bar and border are automatically removed when it is 
    embeded.  To remove a button-bar, status-bar or to only view a specific 
    rectangle of the window, use the nudge settings.
    
    
    
    
    
    Skin Layers:
    -----------
      Each set of graphics are contained in a TSkinLayer.  Through a skin layer 
    INI file, you can set the all-buttons-up image, the all-buttons-down image, 
    the position of the skin layer, the coordinates for each button, and a 
    OnButtonDown and/or OnButtonUp Command.  If you specify both commands, 
    the button will function as a toggle button (it will stay down after one press, 
    and run the OnButtonUp command on the second press).  The layer is 
    positioned using Borders just like window containers are (but the width and 
    height are determined by the all-buttons-up image).
    
    
    
    
    
    
    Scripts:
    -------
      SKINbedder works purely by executing its own scripting language.
      In the main ini there is a startup script, shutdown script, hibernate script, 
    and resume script.  Also in each skin ini, each button has a command script.  
    Scripts are a list of commands (see below) separated by commas.  There can 
    be no spaces in the script.
    Current Status

  2. #2
    Banned RPM_VR4's Avatar
    Join Date
    Nov 2004
    Location
    L.A.
    Posts
    1,893
    Code:
    Commands:
    --------
    
      Close([WindowContainer])
      - Closes a window container (should be done after window it was containing is closed).
    
      Embed([WindowContainer]:[ms])
      - Embeds a window.  Will give up window not found within [ms] milliseconds.
    
      Focus([WindowContainer])
      - Sets windows focus to an embedded window (must use before using Send([Key])).
    
      HideSkin([SkinLayer])
      - Hides a skin layer.
    
      Kill([filename])
      - Will end-task any process.
    
      LoadSkin([Folder]:[SkinLayer])
      - Loads or unhides a skin layer. Layers are paired with the windows they control. 
    
      OnTop([True/False])
      - Sets SKINbedder to always on top or not.  WARNING: Changing this kills all embedded windows.
    
      Play([filename])
      - Plays a sound file using MMSystem in the windows API.
    
      Run([filename])
      - Will run the file.  Filename can specify a complete path.
    
      RunWait([filename])
      - Will run the file and pause the SKINbedder until the process terminates.
    
      Send([Key])
      - This will simulate a key press (see below)
    
      Wait([ms]), Delay([ms]), Sleep([ms]), or Pause([ms])
      - This will pause the script for [ms] milliseconds.
    
    
    
    
    Keys:
    ----
    
      A - Z
      0 - 9
      F1 - F12
      BKSP or BACKSPACE
      ENTER or RETURN
      ESC or ESCAPE or EXIT
      SPC or SPACE or SPACEBAR
      PLUS or +
      MINUS or - or DASH
      UP or UPARROW
      DOWN or DNARROW or DOWNARROW
      LEFT or LTARROW or LEFTARROW
      RIGHT or RTARROW or RIGHTARROW
      PGUP or PAGEUP
      PGDN or PAGEDOWN
      INS or INSERT
      DEL or DELETE
      HOME
      END
      TAB
      CTRL-...
      ALT-...
      SHIFT-...

  3. #3
    Banned RPM_VR4's Avatar
    Join Date
    Nov 2004
    Location
    L.A.
    Posts
    1,893
    Code:
    Status:
    ------
      SKINbedder V3 is not complete.  This preview release has the following 
    known bugs/limitations.
    
      -Buttons disappear when map is updated.  The current work-around is 
    repainting them on a timer.  This causes any semi-transparent effect to fade 
    up.  An alternate exe (SKINbedder_NOEX.exe) does not have this problem, 
    but the transparent part will not be updated when the window behind the 
    buttons updates itself.
    
      -Transparent/Alpha-Blended windows will not refresh.  You must close and 
    re-open them to have them update.
    
      -The iGuidance SKIN is not complete.  Many sub-windows will not embed 
    right or not exit right.  The OSK does not work.  This is not a usable release 
    until the skin is complete.  If you have the desire to continue my SKINing 
    effort or make your own skin, you can make it usable.  Please contact me 
    (RPM_VR4 on MP3Car.com) if you have successfully skinned additional iG sub-
    windows.
    
    
    
    
    -----------------------------------------------------------------------
    SKINbedder was written by Ryan McCormick (RPM_VR4) and David Burban (0l33l).
    Delphi source code available upon request.
    Visit the SKINbedder forum on MP3Car:
    http://www.mp3car.com/vbulletin/skinbedder/
    Attached Images Attached Images  

  4. #4
    Raw Wave lostreception's Avatar
    Join Date
    Sep 2004
    Location
    NY
    Posts
    1,806
    wow looks great
    how often does the route list refresh
    .______
    | '_ |__\___
    [(o)|___(o)] XB
    ._________
    | I__I I_I|_\__I
    [(o)______(o)]b VanPimpin'

    LostReceptions Apps D/L Here

    GPSGasoline- Rewriting

    Draw- SkribblePad for Touchscreens

    iGQwerty-iG3.0 Qwerty Keyboard

    CarPCNetwork

  5. #5
    Banned RPM_VR4's Avatar
    Join Date
    Nov 2004
    Location
    L.A.
    Posts
    1,893
    Well if you keep it transparent, it never refreshes unless you close it and re open it using one of the right-side menus.

    If you edit the iGuidance\iGRoute\iGRoute.ini file, you can make it non-transparent and then it will be updated whenever iGuidance updates it.

    Note: The "refresh bug" is just repainting the buttons to keep them visable. Also the SKINbedder_NOEX.exe does not have this problem (but it does not redraw the map in its transparent part). For any API programmers reading this, the _NOEX build does not use ExStyle = ExStyle || WS_EX_TRANSPARENT, where as the main build does.

  6. #6
    Banned RPM_VR4's Avatar
    Join Date
    Nov 2004
    Location
    L.A.
    Posts
    1,893
    Setup hints:

    Open iGuidance\iGuidance.ini
    Find the [Scripts] section
    Find the Startup= variable.
    Edit "Run(c:\progra~1\iNAV\iGuidance\iGuidance.exe)" to your path (no spaces).
    If using it embedded in a front-end, add ",OnTop(True)" after the above.

    Note: If you turn on Always-On-Top (using "OnTop(True)"), all sub-windows will have to be embedded or you will not see them. The iGuidance SKIN is not complete yet, so not all sub-windows are embedded.

    Also Note: Using "OnTop(False)" seems to kill any embedded window for some reason???

  7. #7
    Raw Wave justintime's Avatar
    Join Date
    Apr 2005
    Posts
    2,695
    Apparently you can only use the 8.3 DOS filename in the RUN portion of the script. Why won't this accept long gpath names? I cannot get it to run

    Quote Originally Posted by RPM_VR4
    Setup hints:

    Open iGuidance\iGuidance.ini
    Find the [Scripts] section
    Find the Startup= variable.
    Edit "Run(c:\program files\iNAV\iGuidance\iGuidance.exe)" to your path.
    If using it embedded in a front-end, add ",OnTop(True)" after the above.

    Note: If you turn on Always-On-Top (using "OnTop(True)"), all sub-windows will have to be embedded or you will not see them. The iGuidance SKIN is not complete yet, so not all sub-windows are embedded.

    Also Note: Using "OnTop(False)" seems to kill any embedded window for some reason???
    2002 Honda CR-V
    Carputer progress: 90% [▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ -]
    Spent so far: $1105.90


    Download the NEXUS Skin for Centrafuse
    ...or even Listen to my music

  8. #8
    Raw Wave justintime's Avatar
    Join Date
    Apr 2005
    Posts
    2,695
    Got it to work in my laptop...

    I AM VERY IMPRESSED!!!!!!!
    2002 Honda CR-V
    Carputer progress: 90% [▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ -]
    Spent so far: $1105.90


    Download the NEXUS Skin for Centrafuse
    ...or even Listen to my music

  9. #9
    FLAC PURDooM's Avatar
    Join Date
    Jun 2005
    Location
    Anoka County, MN
    Posts
    1,020
    I was thinking over your blending bug the other day... am I correct to assume that the blending bug blends whatever its drawing over with the new image with some kind of function you write? If so, it may take some altering of the code but you could pull off a trick like igzoom v2:

    -put all of your interface on a new window
    -set the new window to layered transparency (with no borders or caption)
    -use BitBlt to copy the contents of iguidances window into memory somehow so you have a fresh copy of the iguidance display every time you refresh
    -Have the new window follow around the status changes (minimize, zorder changes, ect) of iguidance/skinbedder (with set parent or something) by making it a modal window
    -Have the new window follow around the size/position of iguidance/skinbedder

    And then you have buttons that appear to be in the window, and arent affected by iguidances redraw. Its alot of codeing though
    Current projects: iGmod reloaded (Latest release) (put on hiatus indefinatly)

    Unlimited Internet and gps tracking for $6 a month with boost mobile!

    Carputer 2: www.lmaocar.com

  10. #10
    The Curator
    Auto Apps:loading...
    Blue ZX3's Avatar
    Join Date
    Aug 2004
    Location
    Chicago area,IL
    Posts
    5,078
    Looking at this preveiw...Very very nice, and its not done yet.

    <--- Wants, can't wait...

    Once again thanks guys. Keep it up...
    RideRunner...The #1 FE, PERIOD.

    Current Project: DFXVoice [v1.0 Released]
    Next in line: RRMedia v2.0

    DFX 5.1.1 Skin
    Appstore Link

    My RideRunner Plugins
    RRMedia
    RRExtended
    DFXVoice

    "There are no bugs - only undocumented features."

Page 1 of 22 1234567891011 ... LastLast

Similar Threads

  1. Replies: 27
    Last Post: 10-29-2005, 09:30 PM
  2. [Release] SKINbedder BETA 2.99999
    By 0l33l in forum SkinBedder
    Replies: 450
    Last Post: 09-23-2005, 03:38 AM
  3. [Release] iGLaunch v3
    By 0l33l in forum SkinBedder
    Replies: 145
    Last Post: 07-05-2005, 10:33 AM
  4. [Release] SKINbedder v2
    By 0l33l in forum SkinBedder
    Replies: 242
    Last Post: 07-05-2005, 04:01 AM
  5. [Release] SKINbedder 1.0
    By RPM_VR4 in forum SkinBedder
    Replies: 41
    Last Post: 06-26-2005, 04:03 AM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •