view SDL.qpg.in @ 2268:4baee598306d

Date: Thu, 05 Jul 2007 14:02:33 -0700 From: Sam Lantinga Subject: SDL 1.3 keyboard plan After lots of discussion with Christian, this is what we came up with: > So, to sum up... > SDLK_* become the physical keys, starting at > (1<<21) > We create a macro SDLK_INDEX(X) > We have two functions SDL_GetLayoutKey(SDLKey) and SDL_GetKeyName() > SDL_GetLayoutKey maps to UCS4 for printable characters, and SDLK* for non-printable characters > and does so based on the OS's current keyboard layout > SDL_GetKeyName() handles both SDLK_* and UCS4, converting UCS4 to UTF-8 and converting SDLK_* into our names, which are UTF-8 for printable characters. > WASD folks use SDLK_*, and 'I' folks use SDL_GetLayoutKey(SDLK_*) Here is the patch he came up with, and his e-mail about it: Date: Fri, 17 Aug 2007 19:50:28 +0200 From: Christian Walther Subject: Re: SDL 1.3 keyboard plan > Sounds great, go ahead and send me a patch. Here goes! Thanks for having a look. Don't hesitate to comment if anything does not conform to your ideas. One caveat: Committing this now may break compilability of some video drivers - specifically, if they use any of the SDLK_* codes that were obsoleted and moved into SDL_compat.h. I only tried Cocoa (which did break, but is already fixed) and X11 (which didn't, but then its key handling is #iffed out). If that's a problem, it may need to go into a branch. -Christian
author Sam Lantinga <slouken@libsdl.org>
date Sun, 19 Aug 2007 14:52:52 +0000
parents c07c6ef7c93e
children
line wrap: on
line source

<QPG:Generation>
   <QPG:Options>
      <QPG:User unattended="yes" verbosity="0" listfiles="yes"/>
      <QPG:Defaults type="qnx_package"/>
      <QPG:Source></QPG:Source>
      <QPG:Release date="today" number="+"/>
      <QPG:Build></QPG:Build>
      <QPG:FileSorting strip="yes"/>
      <QPG:Package targets="standart"/>
      <QPG:Repository generate="yes"/>
      <QPG:FinalDir></QPG:FinalDir>
      <QPG:Cleanup></QPG:Cleanup>
   </QPG:Options>

   <QPG:Responsible>
      <QPG:Company>QNX.ORG.RU Community</QPG:Company>
      <QPG:Department></QPG:Department>
      <QPG:Group></QPG:Group>
      <QPG:Team>QNX.ORG.RU Team</QPG:Team>
      <QPG:Employee>Mike Gorchak</QPG:Employee>
      <QPG:EmailAddress>mike@malva.ua</QPG:EmailAddress>
   </QPG:Responsible>

   <QPG:Values>
      <QPG:Files>
         <QPG:Add file="./COPYING" install="LicenseUrl/" handling="repdata"/>
         <QPG:Add permissions="0755" file="./src/.libs/libSDL-@SDL_MAJOR_VERSION@.@SDL_MINOR_VERSION@.so.@LT_AGE@" install="/usr/lib/"/>
         <QPG:Add filetype="symlink" file="libSDL.so" install="/usr/lib/" linkto="libSDL-@SDL_MAJOR_VERSION@.@SDL_MINOR_VERSION@.so.@LT_AGE@"/>
         <QPG:Add permissions="0644" file="./src/.libs/libSDL.a" install="/usr/lib/"/>
         <QPG:Add permissions="0644" file="./src/.libs/libSDL.lai" install="/usr/lib/libSDL.la"/>
         <QPG:Add permissions="0644" file="./src/main/libSDLmain.a" install="/usr/lib/"/>
         <QPG:Add permissions="0644" file="./include/*.h" install="/usr/include/SDL/"/>
         <QPG:Add permissions="0755" file="./sdl-config" install="/usr/bin/"/>
         <QPG:Add permissions="0644" file="./BUGS" install="/usr/share/doc/SDL12/"/>
         <QPG:Add permissions="0644" file="./COPYING" install="/usr/share/doc/SDL12/"/>
         <QPG:Add permissions="0644" file="./CREDITS" install="/usr/share/doc/SDL12/"/>
         <QPG:Add permissions="0644" file="./INSTALL" install="/usr/share/doc/SDL12/"/>
         <QPG:Add permissions="0644" file="./README" install="/usr/share/doc/SDL12/"/>
         <QPG:Add permissions="0644" file="./README-SDL.txt" install="/usr/share/doc/SDL12/"/>
         <QPG:Add permissions="0644" file="./README.CVS" install="/usr/share/doc/SDL12/"/>
         <QPG:Add permissions="0644" file="./README.QNX" install="/usr/share/doc/SDL12/"/>
         <QPG:Add permissions="0644" file="./TODO" install="/usr/share/doc/SDL12/"/>
         <QPG:Add permissions="0644" file="./WhatsNew" install="/usr/share/doc/SDL12/"/>
         <QPG:Add permissions="0644" file="./docs.html" install="/usr/share/doc/SDL12/Changes.html"/>
         <QPG:Add permissions="0644" file="./docs/index.html" install="/usr/share/doc/SDL12/docs/"/>
         <QPG:Add permissions="0644" file="./docs/html/*.html" install="/usr/share/doc/SDL12/docs/html/"/>
         <QPG:Add permissions="0644" file="./docs/man3/*.3" install="/usr/share/man/man3/"/>
         <QPG:Add permissions="0644" file="./sdl.m4" install="/usr/share/aclocal/"/>
      </QPG:Files>
      <QPG:PackageFilter>
         <QPM:PackageManifest>

            <QPM:PackageDescription>
               <QPM:PackageType>Library</QPM:PackageType>
               <QPM:PackageName>SDL</QPM:PackageName>
               <QPM:PackageReleaseNumber>1</QPM:PackageReleaseNumber>
               <QPM:PackageRepository>http://qnx.org.ru/repository</QPM:PackageRepository>
               <QPM:FileVersion>2.6</QPM:FileVersion>
            </QPM:PackageDescription>

            <QPM:ProductDescription>
               <QPM:ProductName>Simple DirectMedia Layer (SDL)</QPM:ProductName>
               <QPM:ProductIdentifier>SDL</QPM:ProductIdentifier>
               <QPM:ProductEmail>slouken@libsdl.org</QPM:ProductEmail>
               <QPM:VendorName>Public</QPM:VendorName>
               <QPM:VendorInstallName>public</QPM:VendorInstallName>
               <QPM:VendorURL>http://www.libsdl.org</QPM:VendorURL>
               <QPM:VendorEmbedURL/>
               <QPM:VendorEmail>slouken@libsdl.org</QPM:VendorEmail>
               <QPM:AuthorName>Sam Lantinga</QPM:AuthorName>
               <QPM:AuthorURL>http://www.libsdl.org</QPM:AuthorURL>
               <QPM:AuthorEmbedURL/>
               <QPM:AuthorEmail>slouken@libsdl.org</QPM:AuthorEmail>
               <QPM:ProductIconSmall/>
               <QPM:ProductIconLarge/>
               <QPM:ProductDescriptionShort>This is the Simple DirectMedia Layer (SDL), a generic API that provides low level access to audio, keyboard, mouse, and display framebuffer across multiple platforms.</QPM:ProductDescriptionShort>
               <QPM:ProductDescriptionLong>This is the Simple DirectMedia Layer (SDL), a generic API that provides low level access to audio, keyboard, mouse, and display framebuffer across multiple platforms. This is the libraries, include files and other resources you can use to develop and run SDL applications.</QPM:ProductDescriptionLong>
               <QPM:ProductDescriptionURL>http://www.libsdl.org</QPM:ProductDescriptionURL>
               <QPM:ProductDescriptionEmbedURL/>
            </QPM:ProductDescription>

            <QPM:ReleaseDescription>
               <QPM:ReleaseVersion>@VERSION@</QPM:ReleaseVersion>
               <QPM:ReleaseUrgency>Medium</QPM:ReleaseUrgency>
               <QPM:ReleaseStability>Stable</QPM:ReleaseStability>
               <QPM:ReleaseNoteMinor/>
               <QPM:ReleaseNoteMajor/>
               <QPM:ReleaseBuild>1</QPM:ReleaseBuild>
               <QPM:CountryExclude/>
               <QPM:ReleaseCopyright>GNU Lesser General Public License</QPM:ReleaseCopyright>
            </QPM:ReleaseDescription>

            <QPM:ContentDescription>
               <QPM:ContentTopic xmlmultiple="true">Software Development/Libraries and Extensions/C Libraries</QPM:ContentTopic>
               <QPM:ContentKeyword>SDL,audio,graphics,demos,games,emulators,direct,media,layer</QPM:ContentKeyword>
               <QPM:TargetOS>qnx6</QPM:TargetOS>
               <QPM:HostOS>none</QPM:HostOS>
               <QPM:DisplayEnvironment xmlmultiple="true">Photon</QPM:DisplayEnvironment>
               <QPM:DisplayEnvironment xmlmultiple="true">Console</QPM:DisplayEnvironment>
               <QPM:TargetAudience xmlmultiple="true">Developer</QPM:TargetAudience>
               <QPM:TargetAudience xmlmultiple="true">User</QPM:TargetAudience>
            </QPM:ContentDescription>
            <QPM:LicenseUrl>repdata://LicenseUrl/COPYING</QPM:LicenseUrl>
         </QPM:PackageManifest>
      </QPG:PackageFilter>

      <QPG:PackageFilter proc="none" target="none">
         <QPM:PackageManifest>
            <QPM:ProductInstallationDependencies>
               <QPM:ProductRequirements></QPM:ProductRequirements>
            </QPM:ProductInstallationDependencies>
         </QPM:PackageManifest>
      </QPG:PackageFilter>

      <QPG:PackageFilter proc="x86" target="none">
         <QPM:PackageManifest>
            <QPM:ProductInstallationDependencies>
               <QPM:ProductRequirements></QPM:ProductRequirements>
            </QPM:ProductInstallationDependencies>
         </QPM:PackageManifest>
      </QPG:PackageFilter>

      <QPG:PackageFilter proc="none" target="x86">
         <QPM:PackageManifest>
            <QPM:ProductInstallationDependencies>
               <QPM:ProductRequirements></QPM:ProductRequirements>
            </QPM:ProductInstallationDependencies>
         </QPM:PackageManifest>
      </QPG:PackageFilter>

      <QPG:PackageFilter proc="x86" target="x86">
         <QPM:PackageManifest>
            <QPM:ProductInstallationDependencies>
               <QPM:ProductRequirements></QPM:ProductRequirements>
            </QPM:ProductInstallationDependencies>
         </QPM:PackageManifest>
      </QPG:PackageFilter>

   </QPG:Values>
</QPG:Generation>