Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Changeset 7607


Ignore:
Timestamp:
Nov 2, 2010, 11:30:44 PM (13 years ago)
Author:
dafrick
Message:

Some improvement on keypressed behaviour. Lua is acting up a little, though, don't yet know why exactly…

Location:
code/branches/menu/data/gui
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • code/branches/menu/data/gui/layouts/MainMenu.layout

    r7588 r7607  
    88        <Property Name="UnifiedAreaRect" Value="{{0,0},{0,0},{1.0,0},{1.0,0}}" />
    99        <Property Name="BackgroundEnabled" Value="False" />
     10        <Event Name="KeyDown" Function="MainMenu.Key_clicked"/>
    1011        <Window Type="MenuWidgets/Button" Name="orxonox/QuickGameTestButton" >
    1112            <Property Name="Text" Value="Quickstart" />
     
    4344            <Event Name="Clicked" Function="MainMenu.ExitButton_clicked"/>
    4445        </Window>
    45         <Event Name="KeyDown" Function="MainMenu.Key_clicked"/>
    4646    </Window>
    4747</GUILayout>
  • code/branches/menu/data/gui/scripts/GUISheet.lua

    r7403 r7607  
    6464end
    6565
     66function P:onKeyPressed(e)
     67end
     68
    6669return P
  • code/branches/menu/data/gui/scripts/MainMenu.lua

    r7594 r7607  
    1010    hideAllMenuSheets()
    1111    orxonox.execute("startGame")
     12end
     13
     14function P.onShow()
     15
    1216end
    1317
     
    3236end
    3337
    34 function P.Key_clicked(e)
     38function P.onKeyPressed()
     39    --local we = tolua.cast(e, "CEGUI::KeyEventArgs")
     40    cout(0, code)
     41    if code == "15" then
     42        P.index = P.index + 1
     43        local window = winMgr:getWindow("orxonox/MainMenuBackground")
     44        if P.index == window:getChildCount() then
     45            P.index = 1
     46        end
     47        local child = window:getChildAtIdx(P.index-1)
     48        child:setProperty("NormalImageRightEdge", string.sub(child:getProperty("NormalImageRightEdge"),1,-7) .. "Highlight")
     49        child:setProperty("NormalImageLeftEdge", string.sub(child:getProperty("NormalImageLeftEdge"),1,-7) .. "Highlight")
     50        child:setProperty("NormalImageBackground", string.sub(child:getProperty("NormalImageBackground"),1,-7) .. "Highlight")
     51    elseif code == "28" and P.index ~= 0 then
     52        if P.index == 1 then
     53            P.QuickGameTestButton_clicked()
     54        elseif P.index == 2 then
     55            P.SingleplayerButton_clicked()
     56        elseif P.index == 3 then
     57            P.MultiplayerButton_clicked()
     58        elseif P.index == 4 then
     59            P.SettingsButton_clicked()
     60        elseif P.index == 5 then
     61            P.CreditsButton_clicked()
     62        elseif P.index == 6 then
     63            P.ExitButton_clicked()
     64        end
     65    end
     66end
     67
     68--[[function P.Key_clicked(e)
    3569    local we = tolua.cast(e, "CEGUI::KeyEventArgs")
    3670    cout(0, tostring(we.scancode))
     
    6094        end
    6195    end
    62 end
     96end]]--
    6397
    6498return P
    65 
  • code/branches/menu/data/gui/scripts/SheetManager.lua

    r7403 r7607  
    55local activeMenuSheets = {size = 0, topSheetTuple = nil}
    66local menuSheetsRoot = guiMgr:getMenuRootWindow()
     7orxonox.GUIManager:subscribeEventHelper(menuSheetsRoot, "KeyDown", "keyPressed")
    78
    89-----------------------
     
    120121
    121122    menuSheet:show()
     123    menuSheetsRoot:activate()
    122124
    123125    return menuSheet
     
    213215end
    214216
     217function keyPressed(e)
     218    local we = tolua.cast(e, "CEGUI::KeyEventArgs")
     219    local sheet = activeMenuSheets[activeMenuSheets.size]
     220    code = tostring(we.scancode)
     221    sheet.sheet:onKeyPressed()
     222end
     223
    215224function setBackgroundImage(imageSet, imageName)
    216225    guiMgr:setBackgroundImage(imageSet, imageName)
Note: See TracChangeset for help on using the changeset viewer.