/** * @brief Callback when a frequencyDown button is pressed * * @param widget * @param data */ void frequencyDownCallback(GtkWidget* widget,gpointer data) { vfoIncrementFrequency(-frequencyIncrement); vfoTimerId=gtk_timeout_add(500,frequencyDownTimer,NULL); }
/** * @brief interface to allow calling from iphone using g_idle_add * * @param increment */ int vfoStepFrequency(gpointer data) { long step=*(long*)data; vfoIncrementFrequency(step*50); free(data); return 0; }
/** * @brief Frequency down timer * * @param data * * @return */ gint frequencyDownTimer(gpointer data) { gtk_timeout_remove(vfoTimerId); vfoIncrementFrequency(-frequencyIncrement); vfoTimerId=gtk_timeout_add(50,frequencyDownTimer,NULL); return TRUE; }
/* ----------------------------------------------------------------------------*/ gint keyboardSnooper(GtkWidget* widget,GdkEventKey* event) { if(event->type==GDK_KEY_PRESS) { switch(event->keyval) { case GDK_q: vfoIncrementFrequency(1000000L); break; case GDK_a: vfoIncrementFrequency(-1000000L); break; case GDK_w: vfoIncrementFrequency(100000L); break; case GDK_s: vfoIncrementFrequency(-100000L); break; case GDK_e: vfoIncrementFrequency(10000L); break; case GDK_d: vfoIncrementFrequency(-10000L); break; case GDK_r: vfoIncrementFrequency(1000L); break; case GDK_f: vfoIncrementFrequency(-1000L); break; case GDK_t: vfoIncrementFrequency(100L); break; case GDK_g: vfoIncrementFrequency(-100L); break; case GDK_y: vfoIncrementFrequency(10L); break; case GDK_h: vfoIncrementFrequency(-10L); break; case GDK_u: vfoIncrementFrequency(1L); break; case GDK_j: vfoIncrementFrequency(-1L); break; } } return TRUE; }