void menu_block_settings(t_fox_window *win, t_tekpain *paint) { int i; int block; t_button btns[7]; i = 0; btns[0] = set_btn(BKS_H, setpos(846, 650), setpos(50, 50)); btns[1] = set_btn(BKS_DOWN, setpos(906, 650), setpos(50, 50)); btns[2] = set_btn(BKS_UP, setpos(965, 650), setpos(50, 50)); btns[3] = set_btn(BKS_B, setpos(846, 710), setpos(50, 25)); btns[4] = set_btn(BKS_N, setpos(846, 735), setpos(50, 25)); btns[5] = set_btn(BKS_LEFT, setpos(906, 710), setpos(50, 50)); btns[6] = set_btn(BKS_RIGHT, setpos(965, 710), setpos(50, 50)); block = -1; while (i < 7) { if (in_box_button(setpos(win->mouse.pos->x, win->mouse.pos->y), btns[i])) block = btns[i].type; i++; } if (block > 0) menu_block_settings_act(win, paint, block); }
int main(void) { TRIG_DDR |= 1<<TRIG_BIT; HALF_DDR |= 1<<HALF_BIT; LED_DDR |= 1<<LED_BIT; DDRB |= (1<<PB3 | 1<<PB4); /* configure timer for PWM */ ICR1 = 20000; TCCR1A = (1<<COM1A1)|(1<<COM1B1)|(1<<WGM11); TCCR1B = (1<<WGM13)|(1<<WGM12)|(1<<CS11); cam.enabled = 0; cam.interval = SNAPSHOT_INTERVAL; cam.servo_pos[0] = 127; cam.servo_pos[1] = 127; usiTwiSlaveInit(TWI_ADDRESS); usiTwiSetTransmitWindow( &cam, sizeof(cam) ); sei(); while (1) { OCR1B = SERVO_MIN+((uint16_t)cam.servo_pos[0]*(SERVO_MAX-SERVO_MIN)/255); OCR1A = SERVO_MIN+((uint16_t)cam.servo_pos[1]*(SERVO_MAX-SERVO_MIN)/255); if (cam.enabled) { LED_PORT |= (1<<LED_BIT); waylay(&cam.interval); LED_PORT &= ~(1<<LED_BIT); set_btn(HALF); _delay_ms(SNAPSHOT_FOCUS_MS); set_btn(PRESSED); _delay_ms(BTN_MS); set_btn(RELEASED); LED_PORT |= (1<<LED_BIT); } else { LED_PORT &= ~(1<<LED_BIT); } } }
void menu_block_save(t_fox_window *win, t_tekpain *paint) { int i; int block; t_button btns[3]; i = 0; btns[0] = set_btn(1, setpos(25, 705), setpos(50, 50)); btns[1] = set_btn(2, setpos(128, 717), setpos(30, 30)); btns[2] = set_btn(3, setpos(173, 702), setpos(50, 50)); while (i < 3) { if (in_box_button(setpos(win->mouse.pos->x, win->mouse.pos->y), btns[i])) block = btns[i].type; i++; } if (block == 1) export_format_bmp(win, paint); if (block == 2) color_swich(paint); if (block == 3) paint_save(paint); }
int main(int argc, char* argv[]) { GError* err = NULL; gtk_init(&argc, &argv); gBuilder = gtk_builder_new(); if (!gtk_builder_add_from_file(gBuilder, gTemplatePath, &err)) { printf("Erro ao carregar layout: %s\n", err->message); g_free(err); return 0; } gWindow = GTK_WIDGET(gtk_builder_get_object(gBuilder, "window")); g_signal_connect(gWindow, "destroy", G_CALLBACK(gtk_main_quit), NULL); { // Setting up Spin Buttons set_spin_btn(&gSpinCF, "spinCF"); set_spin_btn(&gSpinPH, "spinPH"); set_spin_btn(&gSpinDBO, "spinDBO"); set_spin_btn(&gSpinNT, "spinNT"); set_spin_btn(&gSpinFT, "spinFT"); set_spin_btn(&gSpinDT, "spinDT"); set_spin_btn(&gSpinTU, "spinTU"); set_spin_btn(&gSpinOD, "spinOD"); set_spin_btn(&gSpinST, "spinST"); set_spin_btn_value(&gSpinCF, IQA_CF_WEIGHT); set_spin_btn_value(&gSpinPH, IQA_PH_WEIGHT); set_spin_btn_value(&gSpinDBO, IQA_DBO_WEIGHT); set_spin_btn_value(&gSpinNT, IQA_NT_WEIGHT); set_spin_btn_value(&gSpinFT, IQA_FT_WEIGHT); set_spin_btn_value(&gSpinDT, IQA_DT_WEIGHT); set_spin_btn_value(&gSpinTU, IQA_TU_WEIGHT); set_spin_btn_value(&gSpinOD, IQA_O2_WEIGHT); set_spin_btn_value(&gSpinST, IQA_ST_WEIGHT); } { // Setting up Entries set_entry(&gEntryCF, "entryCF"); set_entry(&gEntryPH, "entryPH"); set_entry(&gEntryDBO, "entryDBO"); set_entry(&gEntryNT, "entryNT"); set_entry(&gEntryFT, "entryFT"); set_entry(&gEntryDT, "entryDT"); set_entry(&gEntryTU, "entryTU"); set_entry(&gEntryOD, "entryOD"); set_entry(&gEntryST, "entryST"); set_entry(&gEntryIQA, "entryIQA"); set_entry(&gEntryIQAIndex, "entryIQAIndex"); } { // Setting up buttons set_btn(&gBtnCalculate, "btnCalculate"); set_btn(&gBtnClean, "btnClean"); set_btn(&gBtnReport, "btnReport"); set_btn(&gBtnAbout, "btnAbout"); // Button actions g_signal_connect(gBtnCalculate, "clicked", G_CALLBACK(calculate_iqa), NULL); } gtk_widget_show_all(gWindow); gtk_main(); return 0; }
void menu_block_outils(t_fox_window *win, t_tekpain *paint) { int i; t_button btns[12]; i = 0; btns[0] = set_btn(BKS_P, setpos(239, 650), setpos(50, 50)); btns[1] = set_btn(BKS_K, setpos(296, 650), setpos(50, 50)); btns[2] = set_btn(BKS_L, setpos(353, 650), setpos(50, 50)); btns[3] = set_btn(BKS_A, setpos(410, 650), setpos(50, 50)); btns[4] = set_btn(BKS_E, setpos(468, 650), setpos(50, 50)); btns[5] = set_btn(BKS_T, setpos(526, 650), setpos(50, 50)); btns[6] = set_btn(BKS_F, setpos(239, 705), setpos(50, 50)); btns[7] = set_btn(BKS_G, setpos(296, 705), setpos(50, 50)); btns[8] = set_btn(BKS_O, setpos(353, 705), setpos(50, 50)); btns[9] = set_btn(BKS_Z, setpos(410, 705), setpos(50, 50)); btns[10] = set_btn(BKS_R, setpos(468, 705), setpos(50, 50)); btns[11] = set_btn(BKS_M, setpos(526, 705), setpos(50, 50)); while (i < 12) { if (in_box_button(setpos(win->mouse.pos->x, win->mouse.pos->y), btns[i])) (btns[i].type == BKS_M) ? (paint->menu_toggle = 0) : (paint->type = btns[i].type); i++; } }
RightButton::RightButton() { set_status(true); set_btn(this); }