コード例 #1
0
static void 
return_if_ok ( GtkWidget *widget, EtDialog *self )
{
  Token *token;
  const gchar *text;
  gboolean disp_hex;
  GError *err;
  guint pin_size, digits;

  token = self->token;
  err = NULL;

  /* update the intervals and counter */
  if ( self->counter ){
    text = gtk_entry_get_text ( GTK_ENTRY ( self->counter ) );
    token_set_counter ( token, text, &err );
    WARN_IF_ERROR;
  } else if ( self->interval ){
    text = gtk_entry_get_text ( GTK_ENTRY ( self->interval ) );
    token_set_interval ( token, text, &err );
    WARN_IF_ERROR;
  }
  
  /* Check if key has changed */
  text = gtk_entry_get_text ( GTK_ENTRY ( self->key ) );
  token_set_key ( token, text, &err );
  WARN_IF_ERROR;

  /* Check if digits changed */
  if ( self->digits ){
    digits = hildon_picker_button_get_active ( HILDON_PICKER_BUTTON(self->digits) );
    digits += MIN_DIGITS; // values start at MIN_DIGITS not 0
    token->digits = digits;
  }

  /* Display hex */
  if ( self->disp_hex ){
    disp_hex = hildon_check_button_get_active ( HILDON_CHECK_BUTTON(self->disp_hex) );
    token->disp_hex = disp_hex;
  }

  /* update pin size */
  if ( self->pin_size ){
    pin_size = hildon_picker_button_get_active ( HILDON_PICKER_BUTTON(self->pin_size) );
    pin_size += MIN_PIN_SIZE;
    if ( pin_size != token->pin_size ){ 
      token->pin_size = pin_size;
      token_set_pin ( token, NULL, NULL ); // if modified, clear pin
    }
  }

  token->modified = TRUE;
  
  gtk_dialog_response ( GTK_DIALOG(self), GTK_RESPONSE_OK );
}
コード例 #2
0
void
display_single_page_continuous (HildonCheckButton *button)
{
  gboolean active;

  active = hildon_check_button_get_active (button);
  
  if(active)
    display_mode = 1;
  else
    display_mode = 0;
}