ToxWindow *init_windows(Tox *m) { int n_prompt = add_window(m, new_prompt()); if (n_prompt == -1 || add_window(m, new_friendlist()) == -1) exit_toxic_err("failed in init_windows", FATALERR_WININIT); prompt = &windows[n_prompt]; active_window = prompt; return prompt; }
static void init_windows() { w_num = 0; w_active = 0; if(add_window(new_prompt()) == -1 || add_window(new_friendlist()) == -1) { fprintf(stderr, "add_window() failed.\n"); endwin(); exit(1); } prompt = &windows[0]; }
static void init_windows() { w_num = 0; int n_prompt = 0; int n_friendslist = 1; if (add_window(new_prompt(), n_prompt) == -1 || add_window(new_friendlist(), n_friendslist) == -1) { fprintf(stderr, "add_window() failed.\n"); endwin(); exit(1); } prompt = &windows[n_prompt]; }
ToxWindow * init_windows() { w_num = 0; int n_prompt = 0; int n_friendslist = 1; if (add_window(m, new_prompt(on_friendadded), n_prompt) == -1 || add_window(m, new_friendlist(WINDOW_STATUS), n_friendslist) == -1) { fprintf(stderr, "add_window() failed.\n"); endwin(); exit(1); } prompt = &windows[n_prompt]; return prompt; }
void Ganash::Application::on_activate() { g_print("on_activate\n"); m_bootstrap = new Ganash::Bootstrap(loc_argc, loc_argv); /* gimp_init_malloc (); gimp_env_init (FALSE); gimp_log_init (); gimp_init_i18n (); */ //m_bootstrap->load_theme(); add_window(*m_bootstrap->m_splash); m_bootstrap->signal_progress().connect(sigc::mem_fun(*this, &Ganash::Application::bootstrap_progress)); //m_bootstrap->signal_complete().connect(sigc::mem_fun(*this, &Ganash::Application::bootstrap_complete)); m_bootstrap->load_plugin(); Ganash::ApplicationWindow *window = new Ganash::ApplicationWindow(); add_window(*window); window->set_default_size(900, 600); window->set_position(Gtk::WIN_POS_CENTER); window->show_all(); bootstrap_progress("", "", 0.0); m_bootstrap->init_plugin(); remove_window(*m_bootstrap->m_splash); m_bootstrap->m_splash->shutdown(); Ganash::Ui::ActionManager *actionManager = Ganash::Ui::ActionManager::instance(); //actionManager->setAction("/menubar/menu", "Edit"); //actionManager->setAction("/menubar/menu/menu", "Insert"); //actionManager->setAction("/menubar/menu/menu/menuitem", "Path"); //actionManager->setAction("/menubar/menu/menu/menuitem", "Shape"); //actionManager->setAction("/menubar/menu/menu/menuitem[@action=rectangle]", "Rect"); // Control/Launch/Player char * xmlbuff = actionManager->toString(); printf("%s\n", xmlbuff); xmlFree(xmlbuff); }
ToxWindow *init_windows(Tox *m) { int n_prompt = add_window(m, new_prompt()); if (n_prompt == -1 || add_window(m, new_friendlist()) == -1) { endwin(); fprintf(stderr, "add_window() failed. Aborting...\n"); exit(EXIT_FAILURE); } prompt = &windows[n_prompt]; active_window = prompt; return prompt; }
/*********************************************************************** * * Procedure: * Process message - examines packet types, and takes appropriate action * ***********************************************************************/ void process_message(unsigned long type,unsigned long *body) { switch(type) { case M_CONFIGURE_WINDOW: if(!find_window(body[0])) add_window(body[0],body); break; case M_WINDOW_NAME: { struct list *l; if ((l = find_window(body[0])) != 0) { l->name = (char *)safemalloc(strlen((char *)&body[3])+1); strcpy(l->name,(char *)&body[3]); } } break; case M_NEW_PAGE: list_new_page(body); break; case M_NEW_DESK: CurDesk = (long)body[0]; break; case M_END_WINDOWLIST: do_save(); break; default: break; } }
static void friendlist_onAV(ToxWindow *self, ToxAV *av, uint32_t friend_number, int state) { assert(0); if( friend_number >= Friends.max_idx) return; assert(0); Tox *m = toxav_get_tox(av); if (Friends.list[friend_number].chatwin == -1) { if (get_num_active_windows() < MAX_WINDOWS_NUM) { if(state != TOXAV_FRIEND_CALL_STATE_FINISHED) { Friends.list[friend_number].chatwin = add_window(m, new_chat(m, Friends.list[friend_number].num)); set_active_window(Friends.list[friend_number].chatwin); } } else { char nick[TOX_MAX_NAME_LENGTH]; get_nick_truncate(m, nick, Friends.list[friend_number].num); line_info_add(prompt, NULL, NULL, NULL, SYS_MSG, 0, 0, "Audio action from: %s!", nick); const char *errmsg = "* Warning: Too many windows are open."; line_info_add(prompt, NULL, NULL, NULL, SYS_MSG, 0, RED, errmsg); sound_notify(prompt, notif_error, NT_WNDALERT_1, NULL); } } }
void Tooltip::add_control(int control_id, const char *text) { HWND control = GetDlgItem(hwnd, control_id); if (control) add_window(control, text); /* { RECT dlg_rect; RECT control_rect; GetWindowRect(hwnd, &dlg_rect); GetWindowRect(control, &control_rect); TOOLINFO ti; memset(&ti, 0, sizeof(ti)); ti.cbSize = sizeof(ti); ti.uFlags = 0; ti.hwnd = hwnd; ti.hinst = hinstance; ti.uId = (UINT)control; ti.lpszText = (LPTSTR)text; ti.rect.left = control_rect.left - dlg_rect.left; ti.rect.right = control_rect.right - dlg_rect.left; ti.rect.top = control_rect.top - dlg_rect.top; ti.rect.bottom = control_rect.bottom - dlg_rect.top; SendMessage(tooltip, TTM_ADDTOOL, 0, (LPARAM)&ti); } */ }
static void friendlist_onFileSendRequest(ToxWindow *self, Tox *m, int num, uint8_t filenum, uint64_t filesize, uint8_t *filename, uint16_t filename_len) { if (num >= max_friends_index) return; if (friends[num].chatwin == -1) { if (get_num_active_windows() < MAX_WINDOWS_NUM) { friends[num].chatwin = add_window(m, new_chat(m, friends[num].num)); } else { tox_file_send_control(m, num, 1, filenum, TOX_FILECONTROL_KILL, 0, 0); uint8_t nick[TOX_MAX_NAME_LENGTH] = {'\0'}; tox_get_name(m, num, nick); nick[TOXIC_MAX_NAME_LENGTH] = '\0'; prep_prompt_win(); wattron(prompt->window, COLOR_PAIR(RED)); wprintw(prompt->window, "* File transfer from %s failed: too many windows are open.\n", nick); wattron(prompt->window, COLOR_PAIR(RED)); alert_window(prompt, WINDOW_ALERT_1, true); } } }
static void friendlist_onAv(ToxWindow *self, ToxAv *av) { int id = toxav_get_peer_id(av, 0); id++; if ( id >= max_friends_index) return; Tox* m = toxav_get_tox(av); if (friends[id].chatwin == -1) { if (get_num_active_windows() < MAX_WINDOWS_NUM) { friends[id].chatwin = add_window(m, new_chat(m, friends[id].num)); } else { uint8_t nick[TOX_MAX_NAME_LENGTH] = {'\0'}; tox_get_name(m, id, nick); nick[TOXIC_MAX_NAME_LENGTH] = '\0'; wprintw(prompt->window, "Audio action from: %s!\n", nick); prep_prompt_win(); wattron(prompt->window, COLOR_PAIR(RED)); wprintw(prompt->window, "* Warning: Too many windows are open.\n"); wattron(prompt->window, COLOR_PAIR(RED)); alert_window(prompt, WINDOW_ALERT_0, true); } } }
static void friendlist_onKey(ToxWindow *self, Tox *m, wint_t key) { if (num_friends == 0) return; int f = friendlist_index[num_selected]; if (key == '\n') { /* Jump to chat window if already open */ if (friends[f].chatwin != -1) { set_active_window(friends[f].chatwin); } else if (num_active_windows() < MAX_WINDOWS_NUM) { friends[f].chatwin = add_window(m, new_chat(m, friends[f].num)); set_active_window(friends[f].chatwin); } else { prep_prompt_win(); wattron(prompt->window, COLOR_PAIR(RED)); wprintw(prompt->window, "* Warning: Too many windows are open.\n"); wattron(prompt->window, COLOR_PAIR(RED)); alert_window(prompt, WINDOW_ALERT_1, true); } } else if (key == KEY_DC) { delete_friend(m, self, f, key); } else { select_friend(self, m, key); } }
static void friendlist_onMessage(ToxWindow *self, Tox *m, int32_t num, uint8_t *str, uint16_t len) { if (num >= max_friends_index) return; if (friends[num].chatwin == -1) { if (get_num_active_windows() < MAX_WINDOWS_NUM) { friends[num].chatwin = add_window(m, new_chat(m, friends[num].num)); } else { str[len] = '\0'; uint8_t nick[TOX_MAX_NAME_LENGTH] = {'\0'}; int n_len = tox_get_name(m, num, nick); n_len = MIN(n_len, TOXIC_MAX_NAME_LENGTH - 1); nick[n_len] = '\0'; uint8_t timefrmt[TIME_STR_SIZE]; get_time_str(timefrmt); line_info_add(prompt, timefrmt, nick, NULL, str, IN_MSG, 0, 0); uint8_t *msg = "* Warning: Too many windows are open."; line_info_add(prompt, NULL, NULL, NULL, msg, SYS_MSG, 0, RED); alert_window(prompt, WINDOW_ALERT_1, true); } } }
static void friendlist_onAv(ToxWindow *self, ToxAv *av, int call_index) { int id = toxav_get_peer_id(av, call_index, 0); /*id++;*/ if ( id != ErrorInternal && id >= max_friends_index) return; Tox *m = toxav_get_tox(av); if (friends[id].chatwin == -1) { if (get_num_active_windows() < MAX_WINDOWS_NUM) { friends[id].chatwin = add_window(m, new_chat(m, friends[id].num)); } else { uint8_t nick[TOX_MAX_NAME_LENGTH] = {'\0'}; int n_len = tox_get_name(m, id, nick); n_len = MIN(n_len, TOXIC_MAX_NAME_LENGTH - 1); nick[n_len] = '\0'; uint8_t msg[MAX_STR_SIZE]; snprintf(msg, sizeof(msg), "Audio action from: %s!", nick); line_info_add(prompt, NULL, NULL, NULL, msg, SYS_MSG, 0, 0); uint8_t *errmsg = "* Warning: Too many windows are open."; line_info_add(prompt, NULL, NULL, NULL, errmsg, SYS_MSG, 0, RED); alert_window(prompt, WINDOW_ALERT_0, true); } } }
static void friendlist_onFileSendRequest(ToxWindow *self, Tox *m, int32_t num, uint8_t filenum, uint64_t filesize, uint8_t *filename, uint16_t filename_len) { if (num >= max_friends_index) return; if (friends[num].chatwin == -1) { if (get_num_active_windows() < MAX_WINDOWS_NUM) { friends[num].chatwin = add_window(m, new_chat(m, friends[num].num)); } else { tox_file_send_control(m, num, 1, filenum, TOX_FILECONTROL_KILL, 0, 0); uint8_t nick[TOX_MAX_NAME_LENGTH]; int n_len = tox_get_name(m, num, nick); n_len = MIN(n_len, TOXIC_MAX_NAME_LENGTH - 1); nick[n_len] = '\0'; uint8_t msg[MAX_STR_SIZE]; snprintf(msg, sizeof(msg), "* File transfer from %s failed: too many windows are open.", nick); line_info_add(prompt, NULL, NULL, NULL, msg, SYS_MSG, 0, RED); alert_window(prompt, WINDOW_ALERT_1, true); } } }
static void friendlist_onFileRecv(ToxWindow *self, Tox *m, uint32_t num, uint32_t filenum, uint64_t file_size, const char *filename, size_t name_length) { if (num >= Friends.max_idx) { return; } if (Friends.list[num].chatwin != -1) { return; } if (get_num_active_windows() < MAX_WINDOWS_NUM) { Friends.list[num].chatwin = add_window(m, new_chat(m, Friends.list[num].num)); return; } tox_file_control(m, num, filenum, TOX_FILE_CONTROL_CANCEL, NULL); char nick[TOX_MAX_NAME_LENGTH]; get_nick_truncate(m, nick, num); line_info_add(prompt, NULL, NULL, NULL, SYS_MSG, 0, RED, "* File transfer from %s failed: too many windows are open.", nick); sound_notify(prompt, notif_error, NT_WNDALERT_1, NULL); }
static void friendlist_onMessage(ToxWindow *self, Tox *m, uint32_t num, Tox_Message_Type type, const char *str, size_t length) { if (num >= Friends.max_idx) { return; } if (Friends.list[num].chatwin != -1) { return; } if (get_num_active_windows() < MAX_WINDOWS_NUM) { Friends.list[num].chatwin = add_window(m, new_chat(m, Friends.list[num].num)); return; } char nick[TOX_MAX_NAME_LENGTH]; get_nick_truncate(m, nick, num); char timefrmt[TIME_STR_SIZE]; get_time_str(timefrmt, sizeof(timefrmt)); line_info_add(prompt, timefrmt, nick, NULL, IN_MSG, 0, 0, "%s", str); line_info_add(prompt, NULL, NULL, NULL, SYS_MSG, 0, RED, "* Warning: Too many windows are open."); sound_notify(prompt, notif_error, NT_WNDALERT_1, NULL); }
static void friendlist_onAv(ToxWindow *self, ToxAv *av, int call_index) { int id = toxav_get_peer_id(av, call_index, 0); if ( id != av_ErrorUnknown && id >= Friends.max_idx) return; Tox *m = toxav_get_tox(av); if (Friends.list[id].chatwin == -1) { if (get_num_active_windows() < MAX_WINDOWS_NUM) { if (toxav_get_call_state(av, call_index) == av_CallStarting) { /* Only open windows when call is incoming */ Friends.list[id].chatwin = add_window(m, new_chat(m, Friends.list[id].num)); } } else { char nick[TOX_MAX_NAME_LENGTH]; get_nick_truncate(m, nick, Friends.list[id].num); line_info_add(prompt, NULL, NULL, NULL, SYS_MSG, 0, 0, "Audio action from: %s!", nick); const char *errmsg = "* Warning: Too many windows are open."; line_info_add(prompt, NULL, NULL, NULL, SYS_MSG, 0, RED, errmsg); sound_notify(prompt, error, NT_WNDALERT_1, NULL); } } }
static void scan_windows(riftwm_t *wm) { Window root, parent, *children; XWindowAttributes attr; unsigned count, i; riftwin_t * win; XGrabServer(wm->dpy); if (XQueryTree(wm->dpy, wm->root, &root, &parent, &children, &count)) { for (i = 0; i < count; ++i) { win = add_window(wm, children[i]); if (!XGetWindowAttributes(wm->dpy, win->window, &attr)) { riftwm_error(wm, "Cannot retrieve window attributes"); } win->mapped = attr.map_state == IsViewable; } if (children) { XFree(children); } } XUngrabServer(wm->dpy); }
void friendlist_onMessage(ToxWindow *self, Tox *m, int num, uint8_t *str, uint16_t len) { if (num < 0 || num >= num_friends) return; if (friends[num].chatwin == -1) friends[num].chatwin = add_window(m, new_chat(m, prompt, friends[num].num)); }
void add_empty_window(struct terminal *term, void (*fn)(void *), void *data) { struct ewd *ewd; ewd = mem_alloc(sizeof(struct ewd)); ewd->fn = fn; ewd->data = data; ewd->b = 0; add_window(term, empty_window_handler, ewd); }
st Button::init() { if(!BaseButton::init()) return FALSE; self = cl_new(_Button); if(self == NULL) return FALSE; self->title = cl_new(Label); if(self->title == NULL) return FALSE; if(!self->title->init()) return FALSE; add_window(self->title); self->title->show(); return TRUE; }
void ExampleApplication::create_window() { auto win = new ExampleWindow(); //Make sure that the application runs for as long this window is still open: add_window(*win); //Delete the window when it is hidden. //That's enough for this simple example. win->signal_hide().connect(sigc::bind<Gtk::Window*>( sigc::mem_fun(*this, &ExampleApplication::on_window_hide), win)); win->show_all(); }
void window_request(int pid, unsigned char *req) { /* window request */ if (req[1] == WMREQ_REGWIN) add_window(pid, (wm_reg_t *) req); else if (req[1] == WMREQ_REDRAW) redraw_window(pid, (wm_redraw_t *) req); else if (req[1] == WMREQ_CLOSEWIN) close_window(pid, (wm_closewin_t *) req); else if (req[1] == WMREQ_SET_WP) { set_wallpaper(((wm_set_wallpaper_t *) req)->index); update_screen(); } }
static void friendlist_onKey(ToxWindow *self, Tox *m, wint_t key) { if (key == KEY_UP || key == KEY_DOWN) { select_friend(m, key); } else if (key == '\n') { /* Jump to chat window if already open */ if (friends[num_selected].chatwin != -1) { set_active_window(friends[num_selected].chatwin); } else { friends[num_selected].chatwin = add_window(m, new_chat(m, prompt, friends[num_selected].num)); set_active_window(friends[num_selected].chatwin); } } else if (key == 0x107 || key == 0x8 || key == 0x7f) delete_friend(m, self, num_selected, key); }
int init_groupchat_win(ToxWindow *prompt, Tox *m, int groupnum, uint8_t type) { if (groupnum > MAX_GROUPCHAT_NUM) return -1; ToxWindow self = new_group_chat(m, groupnum); int i; for (i = 0; i <= max_groupchat_index; ++i) { if (!groupchats[i].active) { groupchats[i].chatwin = add_window(m, self); groupchats[i].active = true; groupchats[i].num_peers = 0; groupchats[i].type = type; groupchats[i].start_time = get_unix_time(); groupchats[i].peer_names = malloc(sizeof(uint8_t) * TOX_MAX_NAME_LENGTH); groupchats[i].oldpeer_names = malloc(sizeof(uint8_t) * TOX_MAX_NAME_LENGTH); groupchats[i].peer_name_lengths = malloc(sizeof(uint16_t)); groupchats[i].oldpeer_name_lengths = malloc(sizeof(uint16_t)); if (groupchats[i].peer_names == NULL || groupchats[i].oldpeer_names == NULL || groupchats[i].peer_name_lengths == NULL || groupchats[i].oldpeer_name_lengths == NULL) exit_toxic_err("failed in init_groupchat_win", FATALERR_MEMORY); memcpy(&groupchats[i].oldpeer_names[0], UNKNOWN_NAME, sizeof(UNKNOWN_NAME)); groupchats[i].oldpeer_name_lengths[0] = (uint16_t) strlen(UNKNOWN_NAME); #ifdef AUDIO if (type == TOX_GROUPCHAT_TYPE_AV) { if (group_audio_open_out_device(i) != 0) fprintf(stderr, "audio failed\n"); } #endif /* AUDIO */ set_active_window(groupchats[i].chatwin); if (i == max_groupchat_index) ++max_groupchat_index; return 0; } } return -1; }
static WINDOW * create_my_derwin(WINDOW *parent) { PAIR ul, lr; WINDOW *result = 0; if (getwindow(parent, &ul, &lr)) { result = derwin(parent, lines_of(ul, lr), cols_of(ul, lr), pair_of(ul)); if (result != 0) { fill_window(result, 'd'); add_window(parent, result); } } if (result == 0) result = parent; return result; }
void open_main_window() { int xtmp, ytmp; WindowParams bwin; WinUnion wun; init_main_menu(); /* the main menu must be created *before* the SIMM window */ glueSetWindowPlacement(GLUT_NORMAL_WINDOW, GLUE_CENTER, root.gldesc.max_screen_x, root.gldesc.max_screen_y, 0, 0, NULL); bwin.id = glueOpenWindow("simm",no,GLUE_NO_WINDOW_FLAGS); glueSetWindowMinSize(950,700); #if SIMM_DEMO_VERSION sprintf(buffer,"%s - Tryout Version (%s)", program_name, program_version); #elif SIMM_VIEWER sprintf(buffer,"%s (%s)", program_name, program_version); #elif defined WIN32 strcpy(buffer, program_with_version); if (is_in_demo_mode()) strcat(buffer, " - Demo Mode"); #else sprintf(buffer,"%s: %s, %s %s", program_name, program_full_name, program_version, copyright_notice); #endif mstrcpy(&bwin.name,buffer); glutSetIconTitle(program_name); glutSetWindowTitle(bwin.name); wun.tool = NULL; root.basewindow = add_window(&bwin,&wun,NOTYPE,-1,no,display_background, update_background,background); if (root.basewindow == -1) error(exit_program,tool_message); glutSetWindowData(bwin.id, root.basewindow); glueGetWindowOrigin(&root.surgwin.x1,&root.surgwin.y1); glueGetWindowSize(&xtmp,&ytmp); root.surgwin.x2 = root.surgwin.x1 + xtmp; root.surgwin.y2 = root.surgwin.y1 + ytmp; }
static WINDOW * create_my_window(WINDOW *current) { PAIR ul, lr; WINDOW *result = 0; if (getwindow(stdscr, &ul, &lr)) { result = newwin(lines_of(ul, lr), cols_of(ul, lr), pair_of(ul)); if (result != 0) { fill_window(result, 'c'); add_window(stdscr, result); } } if (result == 0) result = current; return result; }
/*********************************************************************** * * Procedure: * Process message - examines packet types, and takes appropriate action * ***********************************************************************/ void process_message(unsigned long type,unsigned long *body) { switch(type) { case M_CONFIGURE_WINDOW: if(!find_window(body[0])) add_window(body[0],body); break; case M_NEW_PAGE: list_new_page(body); break; case M_END_WINDOWLIST: do_save(); break; default: break; } }