×
Namespaces

Variants
Actions

Usando as Teclas das Plataformas S60 e Maemo

From Nokia Developer Wiki
Jump to: navigation, search

Archived.pngAquivado: Este artigo foi arquivado, pois o conteúdo não é mais considerado relevante para se criar soluções comerciais atuais. Se você achar que este artigo ainda é importante, inclua o template {{ForArchiveReview|escreva a sua justificativa}}.

Acredita-se que este artigo ainda seja válido no contexto original (quando ele foi escrito)


Article Metadata

Compatibilidade
Plataforma(s):
Symbian

Artigo
Tradução:
Por leandrodds
Última alteração feita por hamishwillee em 08 May 2013

Comparação

Os dispositivos de ambas as plataformas S60 e Maemo têm um número de teclas que os desenvolvedores podem usar. O número de teclas disponíveis varia entre diferentes dispositivos. Ambas as plataformas têm dispositivos com teclado QWERTY total. Por exemplo, o E90 Communicator e o Nokia N810 Internet Tablet.

Nokia E90.png Nokia E90 Communicator

Nokia N810.png Nokia N810 Internet Tablet

Comparando as Plataformas S60 e Maemo

Plataforma S60

S60HWKeys.png

\epoc32\include\e32keys.h

enum TStdScanCode
{
...
EStdKeyLeftArrow=0x0e, /**< Scan code for Left arrow key.*/
EStdKeyRightArrow=0x0f, /**< Scan code for Right arrow key.*/
EStdKeyUpArrow=0x10, /**< Scan code for Up arrow key.*/
EStdKeyDownArrow=0x11, /**< Scan code for Down arrow key.*/
...
};
// ----------------------------------------------------
// CAknExEditorAppUi::HandleKeyEventL
// Handles key events.
//
// ----------------------------------------------------
//
TKeyResponse CUTFViewerAppUi::HandleKeyEventL(
const TKeyEvent& aKeyEvent,TEventCode aType )
{
if ( aType == EEventKey)
{
switch ( aKeyEvent.iScanCode )
{
case EStdKeyUpArrow:
...
}
return EKeyWasNotConsumed;
}

Plataforma Maemo

MaemoHWKeys3.png

typedef struct _AppData AppData;
 
struct _AppData
{
HildonProgram *program; /* handle to application */
HildonWindow *window; /* handle to app's window */
osso_context_t *osso; /* handle to osso */
};
/* Creates and initialises a main_view */
MainView* interface_main_view_new( AppData *data )
{
/* Zero memory with g_new0 */
MainView* result = g_new0( MainView, 1 );
...
/* Add hardware button listener to application */
g_signal_connect(G_OBJECT(result->data->window),
"key_press_event", G_CALLBACK(callback_key_press), result);
...
}
/* Callback for hardware keys */
gboolean callback_key_press(GtkWidget * widget, GdkEventKey * event, gpointer data)
{
switch (event->keyval) {
 
case HILDON_HARDKEY_UP:
callback_up( NULL, data );
return TRUE;
 
case HILDON_HARDKEY_DOWN:
callback_down( NULL, data );
return TRUE;
 
case HILDON_HARDKEY_LEFT:
callback_left( NULL, data );
return TRUE;
 
case HILDON_HARDKEY_RIGHT:
callback_right( NULL, data );
return TRUE;
 
case HILDON_HARDKEY_SELECT:
callback_reset( NULL, data );
return TRUE;
 
case HILDON_HARDKEY_FULLSCREEN:
callback_fullscreen( NULL, data );
return TRUE;
 
case HILDON_HARDKEY_INCREASE:
return FALSE;
 
case HILDON_HARDKEY_DECREASE :
return FALSE;
 
case HILDON_HARDKEY_ESC :
return FALSE;
 
}
return FALSE;
}
This page was last modified on 8 May 2013, at 03:00.
58 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×