Sliding panel / Dockable window

I am looking for sample code for implementing a sliding panel or dockable window. IntelliJ IDE has label on left "Project" which when clicked slides-in a panel (or something) which has project elements in a tree. I am looking for a similar effect for a swing based application.
I tried using scrollpane and try setting its "setDividerLocation" property incrementally but it does not give the same effect. It "jumps" the last position, no matter how much I try repainting/updateUI etc.
If you have any sample / hint for code please let me know.
Thanks
Prakash

Perhaps using a jsplitpane with continuouslayout as true might solve your problem when you are incrementing the divider location. With continuousLayout you shouldn't get the jumping effect.
JSplitPane sp = new JSplitPane();
sp.setContinuousLayout(true);

Similar Messages

  • Spry Sliding PAnels

    HI,
    I am trying to incoperate the "Spry Sliding" feature in my
    website.But problem is coming that I have to define the height of
    the container of each sliding panel(So,its not giving the
    flexibilty) If I am removing the height than the all panels are
    showing (So,the effect of sliding panel is lost).
    So help me how to define the same feature without the
    "HEIGHT".I am using the examples/demos given on the spry offical
    website.
    Thanks,

    Yes that sounds about right. As usual I am trying to figure
    out ways to have a nice navigation and be able to have a good
    amount of copy live on the page and keep the web pages footer
    within the viewers browser window. The search continues.

  • Sliding panels widget button

    I have an issue with the buttons in the Sliding Panels Widget
    after I implemented it in my page. The first time, I have to click
    a button twice in order to have it working. Has someone seen this
    problem before?

    Hi Natasa,
    If you go to http://labs.adobe.com/technologies/spry/samples/slidingpanels/SlidingPanelsSampl e.html and right click on the page, a popup menu will appear. There you will see an item name 'view source'. By clicking on that item it will open a new window with the source code. Select all and copy the source code to your HTML editor on your own computer. There you can experiment with the code at hearts content.
    I hope this helps.
    Ben
    PS. My apologies, I did not realize that this topic had already been answered.
    Message was edited by: vw2ureg

  • SPRY SLIDING PANELS & DW V.9 BUILD 3481

    Hi Folks,
    Does anyone know of a way to get rid of the DW error message
    that pops up when you use
    the sliding panels widget? If not, I'll submit an SR with the
    DW folks...
    Error message upon opening any document in the code window
    that contains the standard
    sliding panels widget code:
    "This document contains JavaScript code for a widget that no
    longer exists. If you don't remove
    the code, the browser might display JavaScript errors when
    loading the page.......
    mentions: var sp1 = new Spry.Widget.SlidingPanels(......
    - GR

    This document contains JavaScript code for a widget that no
    longer exists. If you don't remove
    the code, the browser might display JavaScript errors when
    loading the page. Would you like
    Dreamweaver to find all instances of this code for you?
    var sp1 = new Spry.Widget.SlidingPanels("PANELS",{
    duration:850, fps: 60, defaultPanel:0 });
    Yes No
    Just above the end-body tag I have the script:
    var Accordion1 = new Spry.Widget.Accordion("Accordion1",{
    duration: 350, useFixedPanelHeights: false, defaultPanel: 0 });
    The only ID I have is " <DIV id="Accordion1"
    class="accordian_div Accordion">" as a container for the panels.
    Should I
    change an ID name or a var name ? The SlidingPanels work
    fine. It's just that I'm using the "open recent files automatically
    on startup" sort of option and each page displays the above
    error and stops, until I reply to it, then continues to load the
    next file.
    - GR

  • Sliding Panels widget

    Hi,
    I do not know if this is the right place. If not, please tell me where to ask.
    I do not know nothing of programing and my use of a program is to "click" on shortuct. I am familiar with using Tabbed panels, Accordion and Collapsible panel.
    But I would like to know how to use sliding panels. I have read a lot on this links:
    http://livedocs.adobe.com/en_US/Spry/SDG/help.html?content=WS5F39D2B9-A298-472a-8E50-AC4B1 0984EFC.html
    but I do not know how to start. I do not understand English very much and do not have computer knowledge.
    So, is there a way for me to "click" on a widget or icon of a SPry to make  sliding panels?
    On this link are samples, but I realy have no idea, how to make this.
    http://labs.adobe.com/technologies/spry/samples/slidingpanels/SlidingPanelsSample.html
    Thank you

    Hi Natasa,
    If you go to http://labs.adobe.com/technologies/spry/samples/slidingpanels/SlidingPanelsSampl e.html and right click on the page, a popup menu will appear. There you will see an item name 'view source'. By clicking on that item it will open a new window with the source code. Select all and copy the source code to your HTML editor on your own computer. There you can experiment with the code at hearts content.
    I hope this helps.
    Ben
    PS. My apologies, I did not realize that this topic had already been answered.
    Message was edited by: vw2ureg

  • Having trouble with flash and linking to Sliding panels - PLEASE help

    Having trouble with Sliding panels and flash. Otherwise everything works fine but when I'm trying to implement the link
    <a href="#" onclick="sp1.showPanel('panel1'); return false;">Panel1</a>
    to a flash button I get confused. I have tried following
    on (press) {
    getURL("javascript:sp1.showPanel('panel1');");
    and it did not work. What would you suggest? I am desperate. Please help me! Any suggestions are highly appreciated!!!!

    Thanks for your answer!
    I have tried both sp1.ShowPanel('panel1'); and window.sp1.ShowPanel('panel1'); they both give blank window with [object]
    I have found a solution that works in other browsers, but not in IE. Well basicly it works, but after a few clicks IE freezes.
    on (press) {
    getURL("javascript:sp1.showPanel('panel1'); void(0);");
    Would you happen to have a solution other than that? I believe that the void(0); causes the IE to freeze.

  • Horizontal Sliding Panels flicker IE

    Hello
    I'm using the horizontal Sliding Panel to slide some Images
    and text. It works fine with Safari on Mac, but with IE and Firefox
    on Windows the animation isn't very smooth (the problem concerns
    only the image, the text-sliding works fine). With the vertical
    Sliding Panels I don't have this problem...
    Can anyone help me? Thanks

    solaris23 wrote:
    > Hello Danilo
    >
    > Horizontal:
    http://www.miomedia.ch/test/SprySlidingPanels.html
    > Vertical:
    http://www.miomedia.ch/test/SprySlidingPanels2.html
    >
    > Look on the image in the horizontal slide, the animation
    flickers on the left
    > and right image-borders.
    > In the vertical slide the animation is much smoother.
    This probably has to do with the rendering of the moved
    elements on the page and IE redrawing portions of the images at a
    time during the slide. I'd suspect that the issue actually exists
    in the vertical slide as well, but is minimized due to the angled
    top and bottom of the images, but that's just a suspicion, not a
    known fact. It seems that if I look closely enough at the animation
    in Firefox it seems to be doing something similar, but it is indeed
    a good bit smoother than IE.
    > I'm using transparent png images, I've also tried with
    jpg, with different
    > duration time, different fps... but still the same
    problem....
    That would have been my suggestion too. A quick local copy of
    your page and it seems that making the duration 1000 milliseconds
    seems to help with moving left to right, but moving right to left
    still has a little bit of flicker.
    I tried making the images smaller and it seemed to be
    lessened, so perhaps it's IE and the larger images rendering. You
    might also try making the vertical lines of the screenshot to be a
    bit less vertical, or perhaps add a shadow or glow to the image to
    soften the hard vertical edge.
    Danilo Celic
    |
    http://blog.extensioneering.com/
    | WebAssist Extensioneer
    | Adobe Community Expert

  • Sliding panels IE6/IE7 inconsistency

    Hello,
    I am using a customized version of the Spry "Products" demo
    for our website. I have difficulties keeping the Spry sliding
    panels next to the product list. In IE6 it will move below the list
    when certain content is selected in the sliding panels.
    http://www.isis-papyrus.com/e/pages/1/2/products.html
    It happens in IE6 (Windows XP) when for example "Papyrus
    Designer" is selected and the "Features" panel is displayed.
    It works as advertised in IE7, Firefox, Safari and on all Mac
    browsers.
    Would anyone have an idea how I can prevent this from
    happening?
    Thank you for your help,
    Oliver
    PS: I enjoy working with Spry very much and appreciate all
    the effort that goes into this on Adobe's side.

    Hi,
    I have tried the page in IE7 and IE8 without any problem. I am assuming that the problem lies within the section called Otros tratamientos.
    Ben

  • Sliding panels from data - single panel

    I would like to use the spry sliding panels from data widget
    with only 1 panel at a time. The sample has two at a time.
    Most of the code makes sense, but every modification I try
    breaks the next/previous navigation.

    I modified the code from the example for you, so now it works
    with just one panel visible.
    Changes are:
    set the width of the wigdet en
    slidingpanel class to 250 instead of 500.
    var numberOfPanelsPerView = 1
    remove all the
    spry:if="{ds_RowNumber} % 2 == 0" attributes
    change
    onclick="sp1.showPanel('p{prevStartIndex}') to
    onclick="sp1.showPreviousPanel()
    change
    onclick="sp1.showPanel('p{nextStartIndex}') to
    onclick="sp1.showNextPanel()
    This all leads to the following code
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
    Transitional//EN" "
    http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="
    http://www.w3.org/1999/xhtml"
    xmlns:spry="
    http://ns.adobe.com/spry">
    <head>
    <meta http-equiv="Content-Type" content="text/html;
    charset=utf-8" />
    <title>Sliding Panels Sample</title>
    <script type="text/javascript"
    src="../../widgets/slidingpanels/SprySlidingPanels.js"></script>
    <script src="../../includes/xpath.js"
    type="text/javascript"></script>
    <script src="../../includes/SpryData.js"
    type="text/javascript"></script>
    <style type="text/css">
    <!--
    .widget {
    /* width: 500px;*/
    width: 250px;
    height: 230px;
    border: solid 1px black;
    background-color: #CCCCCC;
    .SlidingPanels {
    /* width: 500px; */
    width: 250px;
    height: 230px;
    overflow: visible;
    position: relative;
    float: left;
    padding: 0px;
    .SlidingPanelsContainer {
    width:8000em;
    height:230px;
    position: absolute;
    float:left;
    margin: 0px;
    padding: 0px;
    .SlidingPanelsContent {
    width: 250px;
    height: 230px;
    float: left;
    .content {
    width: 241px;
    height: 200px;
    float: left;
    overflow: hidden;
    padding: 4px;
    border-right: solid 1px #999999;
    .panelnav {
    clear: both;
    height: 42px;
    .left {
    text-align: left;
    margin-left: 4px;
    .right {
    text-align: right;
    margin-right: 4px;
    -->
    </style>
    <link href="../../css/samples.css" rel="stylesheet"
    type="text/css" />
    <script type="text/javascript">
    <!--
    var ds1 = new
    Spry.Data.XMLDataSet("../../demos/products/products.xml",
    "/products/product");
    function TruncateStrIfNeeded(str, maxChars)
    // Decode our string so when we count characters, we aren't
    counting
    // the chars in an entity name.
    str = Spry.Utils.decodeEntities(str);
    if (str.length > maxChars)
    str = str.substr(0, maxChars - 4) + " ...";
    return Spry.Utils.encodeEntities(str);
    ds1.addObserver({ onPostLoad: function() {
    var numberOfPanelsPerView = 1; //was 2
    var rows = ds1.getData();
    var numRows = rows.length;
    // Add some custom columns to our data set.
    for (var i = 0; i < numRows; i++)
    var row = rows
    // Add a 'teaser' column which is basically the description,
    // but truncated so it can fit within our panel.
    row.teaser = TruncateStrIfNeeded(row.desc, 400);
    // Add a 'viewStartIndex' column that indicates what view
    this row
    // belongs to.
    row.viewNumber = Math.floor(i / numberOfPanelsPerView) + 1;
    row.viewStartIndex = i - (i % numberOfPanelsPerView);
    row.prevStartIndex = row.viewStartIndex -
    numberOfPanelsPerView;
    row.nextStartIndex = row.viewStartIndex +
    numberOfPanelsPerView;
    //-->
    </script>
    </head>
    <body>
    <h3>Building a Sliding Panels widget with Spry
    Data</h3>
    <p>This sample creates a Sliding Panels widget by using
    Spry Data to build the repeating markup. In this sample the content
    panels are generated dynamically and the photo in each panel comes
    from Spry Data. The text is static, which is just there for
    example.</p>
    <p>The content panel is generated in a Spry:repeat
    region. An important thing in the panel widget is that each panel
    should have a unique ID. This ID is generated with a Spry data
    reference. Using the same method, the Panel links are generated the
    same way, using the same data values. This ensures that the panel
    links and IDs match up correctly. In this sample, the visible
    window is twice as wide as the content panel. This allows for 2
    panels to show at once. The links, therefore, need to show only
    every other panel number. This will allow the panel to move by 2
    content panels each time. To do this, a spry:if is used to only
    display the even number panel numbers.</p>
    <p>Note: Since this sample depends on Spry Data for the
    content and markup, it will not degrade when JavaScript is turned
    off. This sample shows how to construct this widget with Data.
    Determine if this method fits your needs with degredation and
    accessibility in mind. Also, this sample is more complicated only
    because we are showing 2 panels at once and there are differing
    lengths of text in the panels.</p>
    <p>Page: <span spry:region="ds1"
    spry:repeatchildren="ds1"> <a href="#"
    onclick="sp1.showPanel('p{viewStartIndex}'); return
    false;">{viewNumber}</a> </span></p>
    <div class="widget">
    <div id="apDiv1" class="SlidingPanels"
    spry:region="ds1">
    <div class="SlidingPanelsContainer">
    <div id="p{ds_RowNumber}" class="SlidingPanelsContent"
    spry:repeat="ds1">
    <div class="content"> <img
    src="../../demos/products/{boximage}" width="75" height="56"
    hspace="5" vspace="5" align="left" alt="Sample Images from Spry
    Data." />
    <p>{desc}</p>
    </div>
    <div class="panelnav left"><a href="#"
    onclick="sp1.showPreviousPanel(); return
    false;">&lt;&lt;
    Previous</a>          <a
    href="#" onclick="sp1.showNextPanel(); return false;">Next
    &gt;&gt;</a></div>
    </div>
    </div>
    <script type="text/javascript">
    var sp1 = new Spry.Widget.SlidingPanels("apDiv1");
    </script>
    </div>
    </div>
    </body>
    </html>

  • Sliding Panels Auto Advance w/ Timer

    Hi everyone. I'm looking to make my sliding panels advance
    with a simple timer. I know this can be done (right?) but can't
    find any way to do this. I have text content in my panels (no
    images) so the posted example of a gallery doesn't help me much.
    I have no problem setting up the panels as I want, I just
    want to make them advance every few seconds.
    Anyone please help!!
    Thanks so much,
    Varen Swaab

    Instead of creating a custom script, I decided to extend the widget it self. So everything can be controlled from the widget constructor.
    Before we get started a small side note:
    I would advice to put the changes in a seperate script, and not to modify the current SlidingPanels.js. This way, if you happen to update to Spry 1.7 it will not overwrite the change you made. But if you do not wish to update just paste it in the SprySlidingPanels.js (This saves a HTTP request, resulting in a slightly faster page load, maintainablity vs performance)
    The changes allow you specify the following new options in the constructor:
    - automatic: true / false [boolean]
    turns automatic sliding panels on or off, off by default
    - direction: 0 / 1 [number or Spry.forward , Spry.backward if you have SpryEffects included]
    direction that panels should automaticly slide to, 1 is forward, 2 is backward
    - each: 1000 [number]
    time in miliseconds, note I had to name this "each" instead of duration, because duration handles the sliding panel animation duration.
    Example constructor:
    var sp1 = new Spry.Widget.SlidingPanels("SlidingPanels1", { automatic: false, direction: 0, each: 5000 });
    It also adds 3 new methods to the sliding panel:
    - .start  [ sp1.start(); ]
    This allows you to start the automatic sliding of the panels, this will also work, if you did not specify automatic in your constructor
    - .stop  [ sp1.stop(); ]
    Stops automatic sliding of the panels
    - .setDirection [ sp1.setDirection(1); ]
    Sets a new direction for the sliding panels, requires the same values as you can specify in the sliding panels constructor
    The new code:
    // line 121 of SprySlidingPanels.js
    Spry.Widget.SlidingPanels.prototype.attachBehaviors = function()
         var ele = this.element;
         if (!ele)
              return;
         if (this.enableKeyboardNavigation)
              var focusEle = null;
              var tabIndexAttr = ele.attributes.getNamedItem("tabindex");
              if (tabIndexAttr || ele.nodeName.toLowerCase() == "a")
                   focusEle = ele;
              if (focusEle)
                   var self = this;
                   Spry.Widget.SlidingPanels.addEventListener(focusEle, "focus", function(e) { return self.onFocus(e || window.event); }, false);
                   Spry.Widget.SlidingPanels.addEventListener(focusEle, "blur", function(e) { return self.onBlur(e || window.event); }, false);
                   Spry.Widget.SlidingPanels.addEventListener(focusEle, "keydown", function(e) { return self.onKeyDown(e || window.event); }, false);
         if (this.currentPanel)
              // Temporarily turn off animation when showing the
              // initial panel.
              var ea = this.enableAnimation;
              this.enableAnimation = false;
              this.showPanel(this.currentPanel);
              this.enableAnimation = ea;
         if (this.automatic){
              this.start();
    // These are all new methods
    Spry.Widget.SlidingPanels.prototype.start = function(){
         var self = this; // reference to this, so we can use it inside our function
         this.automaticStarted = setInterval(function(){
                   var panels = self.getContentPanels(),
                        panelcount = panels.length,
                        current = self.getCurrentPanel(),
                        newpanel;
                   // locate the current panel index, and check if we need to increase or decrease the panel
                   for(var i = 0; i < panelcount; i++){
                        if(panels[i] == current){
                             self.direction == 1 ? (i++) : (i--);
                             self.showPanel( self.direction == 1 ? (i >= panels.length ? 0 : i) : (i < 0 ? panels.length -1 : i));    
                             break; // stop looping, we already found and are displaying our new panel
         }, this.each || 3000);
    Spry.Widget.SlidingPanels.prototype.stop = function(){
         if(this.automaticStarted && typeof this.automaticStarted == 'number'){
              clearInterval(this.automaticStarted);
              this.automaticStarted = null;
    Spry.Widget.SlidingPanels.prototype.setDirection = function(direction){
         this.direction = direction;
    Hopes this helps

  • Sliding panel horizontal scrollbar problem

    Issue: This is about horizontal sliding panels.
    I want to restrict the height on the sliding panel to say,
    200px. Some of the panel content is longer than that. So I want a
    scrollbar to appear vertically (overflow:auto). It does this.
    However, when the panel with the scrollbar slides off to the left,
    its scrollbar remains present at the leftmost part of the window...
    where the new content panel is.
    Is there any way to prevent this from happening, and allow
    the content that needs the scrollbars to have it?
    thank you

    Hi jratlantic,
    So it appears that you changed the default setting for
    overflow on the .SlidingPanelsContent rule:
    .SlidingPanelsContent {
    width: 547px;
    height: 100px;
    overflow:auto;
    Instead of putting it on the .SlidingPanelsContent, try
    putting it on:
    .SlidingPanelsCurrentPanel {
    overflow:auto;
    And see if that makes a difference. That will ensure that
    only the panel that is currently showing, and not animating, has
    scrollbars.
    --== Kin ==--

  • Spry Sliding Panels - current panel height problem

    Hi guys,
    Ive been trying for a while to make the sliding panels widget
    show each panel in its own height instead of the longest panel's height in the container.
    I tried reading all the js file to play with it and find a solution but the truth is i dont know how to do what i want.
    I do, however, have a list of things that i believe if implemented should work,
    could you guys help me do these fixes on the js? ( the one you think will work )
    1. edit so that:  Panels dont have any height ( or panel content display none ) if it isnt current panel. If current panel is "id:1" the assume class 1 style properties. As soon as it looses focus/"currentpanel" class it looses its class 1 properties. And the new current panel ("id:2") assumes its own class 2 properties. And so on.
    2. edit so that:  PanelContainer ( the one that holds all the panels ) displays none BUT the current panel. So all panels could be display none unless they assume the "currentpanel" class and so they change to display. Maybe this way the container assumes only the height of the displayed panel and looses it once its no longer displayed assuming the next displayed one.
    3. edit so that:  Panel container checks for current panel's height and assumes that height instantly ( there is still a panel inside the container that would be longer than the current panel, maybe with overflow hidden this isnt a problem )
    Please, if you can make the change in the js, i would appreciate greatly appreciate it. There is nothing in the entire web in to fixing this.
    This is the SprySlidingPanels.js:
    // SprySlidingPanels.js - version 0.5 - Spry Pre-Release 1.6
    // Copyright (c) 2006. Adobe Systems Incorporated.
    // All rights reserved.
    // Redistribution and use in source and binary forms, with or without
    // modification, are permitted provided that the following conditions are met:
    //   * Redistributions of source code must retain the above copyright notice,
    //     this list of conditions and the following disclaimer.
    //   * Redistributions in binary form must reproduce the above copyright notice,
    //     this list of conditions and the following disclaimer in the documentation
    //     and/or other materials provided with the distribution.
    //   * Neither the name of Adobe Systems Incorporated nor the names of its
    //     contributors may be used to endorse or promote products derived from this
    //     software without specific prior written permission.
    // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
    // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    // ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
    // LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    // POSSIBILITY OF SUCH DAMAGE.
    var Spry;
    if (!Spry) Spry = {};
    if (!Spry.Widget) Spry.Widget = {};
    Spry.Widget.SlidingPanels = function(element, opts)
        this.element = this.getElement(element);
        this.enableAnimation = true;
        this.currentPanel = null;
        this.enableKeyboardNavigation = true;
        this.hasFocus = false;
        this.previousPanelKeyCode = Spry.Widget.SlidingPanels.KEY_LEFT;
        this.nextPanelKeyCode = Spry.Widget.SlidingPanels.KEY_RIGHT;
        this.currentPanelClass = "SlidingPanelsCurrentPanel";
        this.focusedClass = "SlidingPanelsFocused";
        this.animatingClass = "SlidingPanelsAnimating";
        Spry.Widget.SlidingPanels.setOptions(this, opts);
        if (this.element)
            this.element.style.overflow = "hidden";
        // Developers can specify the default panel as an index,
        // id or an actual element node. Make sure to normalize
        // it into an element node because that is what we expect
        // internally.
        if (this.defaultPanel)
            if (typeof this.defaultPanel == "number")
                this.currentPanel = this.getContentPanels()[this.defaultPanel];
            else
                this.currentPanel = this.getElement(this.defaultPanel);
        // If we still don't have a current panel, use the first one!
        if (!this.currentPanel)
            this.currentPanel = this.getContentPanels()[0];
        // Since we rely on the positioning information of the
        // panels, we need to wait for the onload event to fire before
        // we can attempt to show the initial panel. Once the onload
        // fires, we know that all CSS files have loaded. This is
        // especially important for Safari.
        if (Spry.Widget.SlidingPanels.onloadDidFire)
            this.attachBehaviors();
        else
            Spry.Widget.SlidingPanels.loadQueue.push(this);
    Spry.Widget.SlidingPanels.prototype.onFocus = function(e)
        this.hasFocus = true;
        this.addClassName(this.element, this.focusedClass);
        return false;
    Spry.Widget.SlidingPanels.prototype.onBlur = function(e)
        this.hasFocus = false;
        this.removeClassName(this.element, this.focusedClass);
        return false;
    Spry.Widget.SlidingPanels.KEY_LEFT = 37;
    Spry.Widget.SlidingPanels.KEY_UP = 38;
    Spry.Widget.SlidingPanels.KEY_RIGHT = 39;
    Spry.Widget.SlidingPanels.KEY_DOWN = 40;
    Spry.Widget.SlidingPanels.prototype.onKeyDown = function(e)
        var key = e.keyCode;
        if (!this.hasFocus || (key != this.previousPanelKeyCode && key != this.nextPanelKeyCode))
            return true;
        if (key == this.nextPanelKeyCode)
            this.showNextPanel();
        else /* if (key == this.previousPanelKeyCode) */
            this.showPreviousPanel();
        if (e.preventDefault) e.preventDefault();
        else e.returnValue = false;
        if (e.stopPropagation) e.stopPropagation();
        else e.cancelBubble = true;
        return false;
    Spry.Widget.SlidingPanels.prototype.attachBehaviors = function()
        var ele = this.element;
        if (!ele)
            return;
        if (this.enableKeyboardNavigation)
            var focusEle = null;
            var tabIndexAttr = ele.attributes.getNamedItem("tabindex");
            if (tabIndexAttr || ele.nodeName.toLowerCase() == "a")
                focusEle = ele;
            if (focusEle)
                var self = this;
                Spry.Widget.SlidingPanels.addEventListener(focusEle, "focus", function(e) { return self.onFocus(e || window.event); }, false);
                Spry.Widget.SlidingPanels.addEventListener(focusEle, "blur", function(e) { return self.onBlur(e || window.event); }, false);
                Spry.Widget.SlidingPanels.addEventListener(focusEle, "keydown", function(e) { return self.onKeyDown(e || window.event); }, false);
        if (this.currentPanel)
            // Temporarily turn off animation when showing the
            // initial panel.
            var ea = this.enableAnimation;
            this.enableAnimation = false;
            this.showPanel(this.currentPanel);
            this.enableAnimation = ea;
    Spry.Widget.SlidingPanels.prototype.getElement = function(ele)
        if (ele && typeof ele == "string")
            return document.getElementById(ele);
        return ele;
    Spry.Widget.SlidingPanels.prototype.addClassName = function(ele, className)
        if (!ele || !className || (ele.className && ele.className.search(new RegExp("\\b" + className + "\\b")) != -1))
            return;
        ele.className += (ele.className ? " " : "") + className;
    Spry.Widget.SlidingPanels.prototype.removeClassName = function(ele, className)
        if (!ele || !className || (ele.className && ele.className.search(new RegExp("\\b" + className + "\\b")) == -1))
            return;
        ele.className = ele.className.replace(new RegExp("\\s*\\b" + className + "\\b", "g"), "");
    Spry.Widget.SlidingPanels.setOptions = function(obj, optionsObj, ignoreUndefinedProps)
        if (!optionsObj)
            return;
        for (var optionName in optionsObj)
            if (ignoreUndefinedProps && optionsObj[optionName] == undefined)
                continue;
            obj[optionName] = optionsObj[optionName];
    Spry.Widget.SlidingPanels.prototype.getElementChildren = function(element)
        var children = [];
        var child = element.firstChild;
        while (child)
            if (child.nodeType == 1 /* Node.ELEMENT_NODE */)
                children.push(child);
            child = child.nextSibling;
        return children;
    Spry.Widget.SlidingPanels.prototype.getCurrentPanel = function()
        return this.currentPanel;
    Spry.Widget.SlidingPanels.prototype.getContentGroup = function()
        return this.getElementChildren(this.element)[0];
    Spry.Widget.SlidingPanels.prototype.getContentPanels = function()
        return this.getElementChildren(this.getContentGroup());
    Spry.Widget.SlidingPanels.prototype.getContentPanelsCount = function()
        return this.getContentPanels().length;
    Spry.Widget.SlidingPanels.onloadDidFire = false;
    Spry.Widget.SlidingPanels.loadQueue = [];
    Spry.Widget.SlidingPanels.addLoadListener = function(handler)
        if (typeof window.addEventListener != 'undefined')
            window.addEventListener('load', handler, false);
        else if (typeof document.addEventListener != 'undefined')
            document.addEventListener('load', handler, false);
        else if (typeof window.attachEvent != 'undefined')
            window.attachEvent('onload', handler);
    Spry.Widget.SlidingPanels.processLoadQueue = function(handler)
        Spry.Widget.SlidingPanels.onloadDidFire = true;
        var q = Spry.Widget.SlidingPanels.loadQueue;
        var qlen = q.length;
        for (var i = 0; i < qlen; i++)
            q[i].attachBehaviors();
    Spry.Widget.SlidingPanels.addLoadListener(Spry.Widget.SlidingPanels.pr ocessLoadQueue);
    Spry.Widget.SlidingPanels.addEventListener = function(element, eventType, handler, capture)
        try
            if (element.addEventListener)
                element.addEventListener(eventType, handler, capture);
            else if (element.attachEvent)
                element.attachEvent("on" + eventType, handler);
        catch (e) {}
    Spry.Widget.SlidingPanels.prototype.getContentPanelIndex = function(ele)
        if (ele)
            ele = this.getElement(ele);
            var panels = this.getContentPanels();
            var numPanels = panels.length;
            for (var i = 0; i < numPanels; i++)
                if (panels[i] == ele)
                    return i;
        return -1;
    Spry.Widget.SlidingPanels.prototype.showPanel = function(elementOrIndex)
        var pIndex = -1;
        if (typeof elementOrIndex == "number")
            pIndex = elementOrIndex;
        else // Must be the element for the content panel.
            pIndex = this.getContentPanelIndex(elementOrIndex);
        var numPanels = this.getContentPanelsCount();
        if (numPanels > 0)
            pIndex = (pIndex >= numPanels) ? numPanels - 1 : pIndex;
        else
            pIndex = 0;
        var panel = this.getContentPanels()[pIndex];
        var contentGroup = this.getContentGroup();
        if (panel && contentGroup)
            if (this.currentPanel)
                this.removeClassName(this.currentPanel, this.currentPanelClass);
            this.currentPanel = panel;
            var nx = -panel.offsetLeft;
            var ny = -panel.offsetTop;
            if (this.enableAnimation)
                if (this.animator)
                    this.animator.stop();
                var cx = contentGroup.offsetLeft;
                var cy = contentGroup.offsetTop;
                if (cx != nx || cy != ny)
                    var self = this;
                    this.addClassName(this.element, this.animatingClass);
                    this.animator = new Spry.Widget.SlidingPanels.PanelAnimator(contentGroup, cx, cy, nx, ny, { duration: this.duration, fps: this.fps, transition: this.transition, finish: function()
                        self.removeClassName(self.element, self.animatingClass);
                        self.addClassName(panel, self.currentPanelClass);
                    this.animator.start();
            else
                contentGroup.style.left = nx + "px";
                contentGroup.style.top = ny + "px";
                this.addClassName(panel, this.currentPanelClass);
        return panel;
    Spry.Widget.SlidingPanels.prototype.showFirstPanel = function()
        return this.showPanel(0);
    Spry.Widget.SlidingPanels.prototype.showLastPanel = function()
        return this.showPanel(this.getContentPanels().length - 1);
    Spry.Widget.SlidingPanels.prototype.showPreviousPanel = function()
        return this.showPanel(this.getContentPanelIndex(this.currentPanel) - 1);
    Spry.Widget.SlidingPanels.prototype.showNextPanel = function()
        return this.showPanel(this.getContentPanelIndex(this.currentPanel) + 1);
    Spry.Widget.SlidingPanels.PanelAnimator = function(ele, curX, curY, dstX, dstY, opts)
        this.element = ele;
        this.curX = curX;
        this.curY = curY;
        this.dstX = dstX;
        this.dstY = dstY;
        this.fps = 60;
        this.duration = 500;
        this.transition = Spry.Widget.SlidingPanels.PanelAnimator.defaultTransition;
        this.startTime = 0;
        this.timerID = 0;
        this.finish = null;
        var self = this;
        this.intervalFunc = function() { self.step(); };
        Spry.Widget.SlidingPanels.setOptions(this, opts, true);
        this.interval = 1000/this.fps;
    Spry.Widget.SlidingPanels.PanelAnimator.defaultTransition = function(time, begin, finish, duration) { time /= duration; return begin + ((2 - time) * time * finish); };
    Spry.Widget.SlidingPanels.PanelAnimator.prototype.start = function()
        this.stop();
        this.startTime = (new Date()).getTime();
        this.timerID = setTimeout(this.intervalFunc, this.interval);
    Spry.Widget.SlidingPanels.PanelAnimator.prototype.stop = function()
        if (this.timerID)
            clearTimeout(this.timerID);
        this.timerID = 0;
    Spry.Widget.SlidingPanels.PanelAnimator.prototype.step = function()
        var elapsedTime = (new Date()).getTime() - this.startTime;
        var done = elapsedTime >= this.duration;
        var x, y;
        if (done)
            x = this.curX = this.dstX;
            y = this.curY = this.dstY;
        else
            x = this.transition(elapsedTime, this.curX, this.dstX - this.curX, this.duration);
            y = this.transition(elapsedTime, this.curY, this.dstY - this.curY, this.duration);
        this.element.style.left = x + "px";
        this.element.style.top = y + "px";
        if (!done)
            this.timerID = setTimeout(this.intervalFunc, this.interval);
        else if (this.finish)
            this.finish();

    Add a valid Document Type Declaration on your page. (DTD) and it should work smoothly.. You could have found this out if you would just validate your page. validator.w3.org.

  • Spry Sliding Panels - Panel Height Problem

    Hi guys,
    Ive been trying for a while to make the sliding panels widget
    show each panel in its own height instead of the longest panel's height in the container.
    I tried reading all the js file to play with it and find a solution but the truth is i dont know how to do what i want.
    I do, however, have a list of things that i believe if implemented should work,
    could you guys help me do these fixes on the js? ( the one you think will work )
    1. edit so that:  Panels dont have any height ( or panel content display none ) if it isnt current panel. If current panel is "id:1" the assume class 1 style properties. As soon as it looses focus/"currentpanel" class it looses its class 1 properties. And the new current panel ("id:2") assumes its own class 2 properties. And so on.
    2. edit so that:  PanelContainer ( the one that holds all the panels ) displays none BUT the current panel. So all panels could be display none unless they assume the "currentpanel" class and so they change to display. Maybe this way the container assumes only the height of the displayed panel and looses it once its no longer displayed assuming the next displayed one.
    3. edit so that:  Panel container checks for current panel's height and assumes that height instantly ( there is still a panel inside the container that would be longer than the current panel, maybe with overflow hidden this isnt a problem )
    Please, if you can make the change in the js, i would appreciate greatly appreciate it. There is nothing in the entire web in to fixing this.
    This is the SprySlidingPanels.js:
    // SprySlidingPanels.js - version 0.5 - Spry Pre-Release 1.6
    // Copyright (c) 2006. Adobe Systems Incorporated.
    // All rights reserved.
    // Redistribution and use in source and binary forms, with or without
    // modification, are permitted provided that the following conditions are met:
    //   * Redistributions of source code must retain the above copyright notice,
    //     this list of conditions and the following disclaimer.
    //   * Redistributions in binary form must reproduce the above copyright notice,
    //     this list of conditions and the following disclaimer in the documentation
    //     and/or other materials provided with the distribution.
    //   * Neither the name of Adobe Systems Incorporated nor the names of its
    //     contributors may be used to endorse or promote products derived from this
    //     software without specific prior written permission.
    // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
    // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    // ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
    // LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    // POSSIBILITY OF SUCH DAMAGE.
    var Spry;
    if (!Spry) Spry = {};
    if (!Spry.Widget) Spry.Widget = {};
    Spry.Widget.SlidingPanels = function(element, opts)
        this.element = this.getElement(element);
        this.enableAnimation = true;
        this.currentPanel = null;
        this.enableKeyboardNavigation = true;
        this.hasFocus = false;
        this.previousPanelKeyCode = Spry.Widget.SlidingPanels.KEY_LEFT;
        this.nextPanelKeyCode = Spry.Widget.SlidingPanels.KEY_RIGHT;
        this.currentPanelClass = "SlidingPanelsCurrentPanel";
        this.focusedClass = "SlidingPanelsFocused";
        this.animatingClass = "SlidingPanelsAnimating";
        Spry.Widget.SlidingPanels.setOptions(this, opts);
        if (this.element)
            this.element.style.overflow = "hidden";
        // Developers can specify the default panel as an index,
        // id or an actual element node. Make sure to normalize
        // it into an element node because that is what we expect
        // internally.
        if (this.defaultPanel)
            if (typeof this.defaultPanel == "number")
                this.currentPanel = this.getContentPanels()[this.defaultPanel];
            else
                this.currentPanel = this.getElement(this.defaultPanel);
        // If we still don't have a current panel, use the first one!
        if (!this.currentPanel)
            this.currentPanel = this.getContentPanels()[0];
        // Since we rely on the positioning information of the
        // panels, we need to wait for the onload event to fire before
        // we can attempt to show the initial panel. Once the onload
        // fires, we know that all CSS files have loaded. This is
        // especially important for Safari.
        if (Spry.Widget.SlidingPanels.onloadDidFire)
            this.attachBehaviors();
        else
            Spry.Widget.SlidingPanels.loadQueue.push(this);
    Spry.Widget.SlidingPanels.prototype.onFocus = function(e)
        this.hasFocus = true;
        this.addClassName(this.element, this.focusedClass);
        return false;
    Spry.Widget.SlidingPanels.prototype.onBlur = function(e)
        this.hasFocus = false;
        this.removeClassName(this.element, this.focusedClass);
        return false;
    Spry.Widget.SlidingPanels.KEY_LEFT = 37;
    Spry.Widget.SlidingPanels.KEY_UP = 38;
    Spry.Widget.SlidingPanels.KEY_RIGHT = 39;
    Spry.Widget.SlidingPanels.KEY_DOWN = 40;
    Spry.Widget.SlidingPanels.prototype.onKeyDown = function(e)
        var key = e.keyCode;
        if (!this.hasFocus || (key != this.previousPanelKeyCode && key != this.nextPanelKeyCode))
            return true;
        if (key == this.nextPanelKeyCode)
            this.showNextPanel();
        else /* if (key == this.previousPanelKeyCode) */
            this.showPreviousPanel();
        if (e.preventDefault) e.preventDefault();
        else e.returnValue = false;
        if (e.stopPropagation) e.stopPropagation();
        else e.cancelBubble = true;
        return false;
    Spry.Widget.SlidingPanels.prototype.attachBehaviors = function()
        var ele = this.element;
        if (!ele)
            return;
        if (this.enableKeyboardNavigation)
            var focusEle = null;
            var tabIndexAttr = ele.attributes.getNamedItem("tabindex");
            if (tabIndexAttr || ele.nodeName.toLowerCase() == "a")
                focusEle = ele;
            if (focusEle)
                var self = this;
                Spry.Widget.SlidingPanels.addEventListener(focusEle, "focus", function(e) { return self.onFocus(e || window.event); }, false);
                Spry.Widget.SlidingPanels.addEventListener(focusEle, "blur", function(e) { return self.onBlur(e || window.event); }, false);
                Spry.Widget.SlidingPanels.addEventListener(focusEle, "keydown", function(e) { return self.onKeyDown(e || window.event); }, false);
        if (this.currentPanel)
            // Temporarily turn off animation when showing the
            // initial panel.
            var ea = this.enableAnimation;
            this.enableAnimation = false;
            this.showPanel(this.currentPanel);
            this.enableAnimation = ea;
    Spry.Widget.SlidingPanels.prototype.getElement = function(ele)
        if (ele && typeof ele == "string")
            return document.getElementById(ele);
        return ele;
    Spry.Widget.SlidingPanels.prototype.addClassName = function(ele, className)
        if (!ele || !className || (ele.className && ele.className.search(new RegExp("\\b" + className + "\\b")) != -1))
            return;
        ele.className += (ele.className ? " " : "") + className;
    Spry.Widget.SlidingPanels.prototype.removeClassName = function(ele, className)
        if (!ele || !className || (ele.className && ele.className.search(new RegExp("\\b" + className + "\\b")) == -1))
            return;
        ele.className = ele.className.replace(new RegExp("\\s*\\b" + className + "\\b", "g"), "");
    Spry.Widget.SlidingPanels.setOptions = function(obj, optionsObj, ignoreUndefinedProps)
        if (!optionsObj)
            return;
        for (var optionName in optionsObj)
            if (ignoreUndefinedProps && optionsObj[optionName] == undefined)
                continue;
            obj[optionName] = optionsObj[optionName];
    Spry.Widget.SlidingPanels.prototype.getElementChildren = function(element)
        var children = [];
        var child = element.firstChild;
        while (child)
            if (child.nodeType == 1 /* Node.ELEMENT_NODE */)
                children.push(child);
            child = child.nextSibling;
        return children;
    Spry.Widget.SlidingPanels.prototype.getCurrentPanel = function()
        return this.currentPanel;
    Spry.Widget.SlidingPanels.prototype.getContentGroup = function()
        return this.getElementChildren(this.element)[0];
    Spry.Widget.SlidingPanels.prototype.getContentPanels = function()
        return this.getElementChildren(this.getContentGroup());
    Spry.Widget.SlidingPanels.prototype.getContentPanelsCount = function()
        return this.getContentPanels().length;
    Spry.Widget.SlidingPanels.onloadDidFire = false;
    Spry.Widget.SlidingPanels.loadQueue = [];
    Spry.Widget.SlidingPanels.addLoadListener = function(handler)
        if (typeof window.addEventListener != 'undefined')
            window.addEventListener('load', handler, false);
        else if (typeof document.addEventListener != 'undefined')
            document.addEventListener('load', handler, false);
        else if (typeof window.attachEvent != 'undefined')
            window.attachEvent('onload', handler);
    Spry.Widget.SlidingPanels.processLoadQueue = function(handler)
        Spry.Widget.SlidingPanels.onloadDidFire = true;
        var q = Spry.Widget.SlidingPanels.loadQueue;
        var qlen = q.length;
        for (var i = 0; i < qlen; i++)
            q[i].attachBehaviors();
    Spry.Widget.SlidingPanels.addLoadListener(Spry.Widget.SlidingPanels.pr ocessLoadQueue);
    Spry.Widget.SlidingPanels.addEventListener = function(element, eventType, handler, capture)
        try
            if (element.addEventListener)
                element.addEventListener(eventType, handler, capture);
            else if (element.attachEvent)
                element.attachEvent("on" + eventType, handler);
        catch (e) {}
    Spry.Widget.SlidingPanels.prototype.getContentPanelIndex = function(ele)
        if (ele)
            ele = this.getElement(ele);
            var panels = this.getContentPanels();
            var numPanels = panels.length;
            for (var i = 0; i < numPanels; i++)
                if (panels[i] == ele)
                    return i;
        return -1;
    Spry.Widget.SlidingPanels.prototype.showPanel = function(elementOrIndex)
        var pIndex = -1;
        if (typeof elementOrIndex == "number")
            pIndex = elementOrIndex;
        else // Must be the element for the content panel.
            pIndex = this.getContentPanelIndex(elementOrIndex);
        var numPanels = this.getContentPanelsCount();
        if (numPanels > 0)
            pIndex = (pIndex >= numPanels) ? numPanels - 1 : pIndex;
        else
            pIndex = 0;
        var panel = this.getContentPanels()[pIndex];
        var contentGroup = this.getContentGroup();
        if (panel && contentGroup)
            if (this.currentPanel)
                this.removeClassName(this.currentPanel, this.currentPanelClass);
            this.currentPanel = panel;
            var nx = -panel.offsetLeft;
            var ny = -panel.offsetTop;
            if (this.enableAnimation)
                if (this.animator)
                    this.animator.stop();
                var cx = contentGroup.offsetLeft;
                var cy = contentGroup.offsetTop;
                if (cx != nx || cy != ny)
                    var self = this;
                    this.addClassName(this.element, this.animatingClass);
                    this.animator = new Spry.Widget.SlidingPanels.PanelAnimator(contentGroup, cx, cy, nx, ny, { duration: this.duration, fps: this.fps, transition: this.transition, finish: function()
                        self.removeClassName(self.element, self.animatingClass);
                        self.addClassName(panel, self.currentPanelClass);
                    this.animator.start();
            else
                contentGroup.style.left = nx + "px";
                contentGroup.style.top = ny + "px";
                this.addClassName(panel, this.currentPanelClass);
        return panel;
    Spry.Widget.SlidingPanels.prototype.showFirstPanel = function()
        return this.showPanel(0);
    Spry.Widget.SlidingPanels.prototype.showLastPanel = function()
        return this.showPanel(this.getContentPanels().length - 1);
    Spry.Widget.SlidingPanels.prototype.showPreviousPanel = function()
        return this.showPanel(this.getContentPanelIndex(this.currentPanel) - 1);
    Spry.Widget.SlidingPanels.prototype.showNextPanel = function()
        return this.showPanel(this.getContentPanelIndex(this.currentPanel) + 1);
    Spry.Widget.SlidingPanels.PanelAnimator = function(ele, curX, curY, dstX, dstY, opts)
        this.element = ele;
        this.curX = curX;
        this.curY = curY;
        this.dstX = dstX;
        this.dstY = dstY;
        this.fps = 60;
        this.duration = 500;
        this.transition = Spry.Widget.SlidingPanels.PanelAnimator.defaultTransition;
        this.startTime = 0;
        this.timerID = 0;
        this.finish = null;
        var self = this;
        this.intervalFunc = function() { self.step(); };
        Spry.Widget.SlidingPanels.setOptions(this, opts, true);
        this.interval = 1000/this.fps;
    Spry.Widget.SlidingPanels.PanelAnimator.defaultTransition = function(time, begin, finish, duration) { time /= duration; return begin + ((2 - time) * time * finish); };
    Spry.Widget.SlidingPanels.PanelAnimator.prototype.start = function()
        this.stop();
        this.startTime = (new Date()).getTime();
        this.timerID = setTimeout(this.intervalFunc, this.interval);
    Spry.Widget.SlidingPanels.PanelAnimator.prototype.stop = function()
        if (this.timerID)
            clearTimeout(this.timerID);
        this.timerID = 0;
    Spry.Widget.SlidingPanels.PanelAnimator.prototype.step = function()
        var elapsedTime = (new Date()).getTime() - this.startTime;
        var done = elapsedTime >= this.duration;
        var x, y;
        if (done)
            x = this.curX = this.dstX;
            y = this.curY = this.dstY;
        else
            x = this.transition(elapsedTime, this.curX, this.dstX - this.curX, this.duration);
            y = this.transition(elapsedTime, this.curY, this.dstY - this.curY, this.duration);
        this.element.style.left = x + "px";
        this.element.style.top = y + "px";
        if (!done)
            this.timerID = setTimeout(this.intervalFunc, this.interval);
        else if (this.finish)
            this.finish();

    And on a side note, if it's just IE6 where the problem arises, should I care???
    Have a look here http://www.w3counter.com/globalstats.php
    Gramps

  • No Control Panel? Windows 8.1

    Hey,
    I just upgraded to windows 8.1 pro 64bit but i don't get the option to install the control panel.
    Sound card: PCI Express X-Fi Titanium Fatal1ty Pro Series
    I installed these drivers:
    Creative Sound Blaster X-Fi Titanium stuurprogramma (for windows 8.1)
    Creative ALchemy 1.45.01
    On windows 7 64bit i didn't have this problem.
    I just had to install this driver:
    Creative Sound Blaster X-Fi Titanium stuurprogramma 2.17.0008
    And during the installation i got the option to install like 8 different programs to install for my soundcard including the Control Panel wich i pretty much only care about
    For the windows 8.1 driver i got the option to only install 3 programs in installed them all but no control panel.
    driver.jpg
    I dont understand this, did they not make a control panel for windows 8.1?
    Thanks allot!

    Originally Posted by dylan1990
    Hey,
    I just upgraded to windows 8.1 pro 64bit but i don't get the option to install the control panel.
    Sound card: PCI Express X-Fi Titanium Fatal1ty Pro Series
    I installed these drivers:
    Creative Sound Blaster X-Fi Titanium stuurprogramma (for windows 8.1)
    Creative ALchemy 1.45.01
    On windows 7 64bit i didn't have this problem.
    I just had to install this driver:
    Creative Sound Blaster X-Fi Titanium stuurprogramma 2.17.0008
    And during the installation i got the option to install like 8 different programs to install for my soundcard including the Control Panel wich i pretty much only care about
    For the windows 8.1 driver i got the option to only install 3 programs in installed them all but no control panel.
    driver.jpg
    I dont understand this, did they not make a control panel for windows 8.1?
    Thanks allot!
    Hi dylan1990,
    You may want to reinstall the drivers again. From the details section, it did mention that the driver includes Creative Audio Control Panel in Win 8.1.
    Hope the suggestion works for you.

  • Is it possible to get one sliding panel to automatically display a web site?

    I have a slinding panel widget with 6 content panes.  One of the tabs is named "Online Help'.  I would like the content pane for that tab to automattically display a form that is on a website.
    The 'onclick' that is associated with the "Online Help" tab is calling the sliding panel number.  If I repace it with an http address, the other panels continue to display but, that panel displays blank.
    I have tried a CSS style tag for the panel that includes the http url in a background attribute.  That is not working either.
    I made a stab at spry:detailregion, but I don't know if a url can be a prameter in that element.
    Does anyone have ideas on what I can try?
    Thanks,
    meileendougherty

    Well, a url can be the contents of a data cell, but it will only give you a link, not the other website.
    Although iframes are often considered tricky, I have not had bad luck with them. Put an iframe in your content cell, and use your other website as the source. You will have to give the iframe dimensions, or it will default to 'pretty small'.
    Beth

Maybe you are looking for

  • Problem with output invoice SD

    Hi developers, I have a problem when I must print an invoice because appairs the message' Not message available for the output'. In VV32 the condition is OK and also the customizing is OK. If open the invoice and in the header save the message of out

  • Why is a 'globe' contact available in Global Address List (which belongs to AD), but I cannot find it on AD server?

    I have a topic at link: http://social.msdn.microsoft.com/Forums/en-US/7b74fd63-1d0d-449e-9f31-83b707683053/finding-microsoft-document-about-globe-contact-in-outlook-address-book?forum=outlookdev&prof=required Please see the post first. I dot not make

  • How can a star based slideshow be split into two using metadata?

    I created a slideshow based on a five star sort. It is too long so I want to split it into two, one for Australia and the other for Polynesia.. Images are  are titled under Australia and Polynesia in the metadata. how can I use the metadata headings

  • Cs4: 3D-Mode gone

    My '3D-mode' as  well as some 'workspaces' like 'Analysis' dissapeared since I opened Photoshop the last time. Now I can not work with 3D-layers for example. Does anybody know, how I could switch it on again?

  • Quicktime 7 Won't Install

    A couple of weeks ago I uninstalled Quicktime from my laptop, by simply dragging it from my Applications folder to the Trash. I didn't delete any other files, and I left Appcleaner out of it b/c I knew I would be downloading it again. I went to Apple