void ChatWindow::reloadContact() { IM::Contact c(&fEntry); char status[512]; char name[512]; char nick[512]; int32 num_read; // read name if ( c.GetName(name,sizeof(name)) != B_OK ) strcpy(name,_T("Unknown name")); if ( c.GetNickname(nick,sizeof(nick)) != B_OK ) strcpy(nick,_T("no nick")); fName.SetTo(fOtherText); fName.ReplaceAll("$nickname$",nick); fName.ReplaceAll("$name$",name); BString wintitle(fName); wintitle.RemoveAll("$protocol$"); wintitle.RemoveAll("()"); BNode node(&fEntry); // read status num_read = node.ReadAttr( "IM:status", B_STRING_TYPE, 0, status, sizeof(status)-1 ); if ( num_read <= 0 ) strcpy(status,_T("Unknown status")); else status[num_read] = 0; // rename window sprintf(fTitleCache,"%s - %s", wintitle.String(), _T(status)); if ( !fChangedNotActivated ) { SetTitle(fTitleCache); } else { char str[512]; sprintf(str, "√ %s", fTitleCache); SetTitle(str); } }
void winopen() { HMENU menu; int sizew = gli_wmarginx * 2 + gli_cellw * gli_cols; int sizeh = gli_wmarginy * 2 + gli_cellh * gli_rows; sizew += GetSystemMetrics(SM_CXFRAME) * 2; sizeh += GetSystemMetrics(SM_CYFRAME) * 2; sizeh += GetSystemMetrics(SM_CYCAPTION); hwndframe = CreateWindow("XxFrame", NULL, // window caption WS_CAPTION|WS_THICKFRAME| WS_SYSMENU|WS_MAXIMIZEBOX|WS_MINIMIZEBOX| WS_CLIPCHILDREN, CW_USEDEFAULT, // initial x position CW_USEDEFAULT, // initial y position sizew, // initial x size sizeh, // initial y size NULL, // parent window handle NULL, // window menu handle 0, //hInstance, // program instance handle NULL); // creation parameters hwndview = CreateWindow("XxView", NULL, WS_VISIBLE | WS_CHILD, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, hwndframe, NULL, NULL, 0); hdc = NULL; menu = GetSystemMenu(hwndframe, 0); AppendMenu(menu, MF_SEPARATOR, 0, NULL); AppendMenu(menu, MF_STRING, ID_ABOUT, "About Gargoyle..."); AppendMenu(menu, MF_STRING, ID_CONFIG, "Options..."); // AppendMenu(menu, MF_STRING, ID_TOGSCR, "Toggle scrollbar"); wintitle(); ShowWindow(hwndframe, SW_SHOW); }
void winopen(void) { GdkGeometry geom; int defw; int defh; geom.min_width = gli_wmarginx * 2 + gli_cellw * 0; geom.min_height = gli_wmarginy * 2 + gli_cellh * 0; geom.max_width = gli_wmarginx * 2 + gli_cellw * 255; geom.max_height = gli_wmarginy * 2 + gli_cellh * 250; geom.width_inc = gli_cellw; geom.height_inc = gli_cellh; defw = gli_wmarginx * 2 + gli_cellw * gli_cols; defh = gli_wmarginy * 2 + gli_cellh * gli_rows; frame = gtk_window_new(GTK_WINDOW_TOPLEVEL); GTK_WIDGET_SET_FLAGS(frame, GTK_CAN_FOCUS); gtk_widget_set_events(frame, GDK_BUTTON_PRESS_MASK); gtk_signal_connect(GTK_OBJECT(frame), "button_press_event", onbutton, NULL); gtk_signal_connect(GTK_OBJECT(frame), "key_press_event", onkeypress, NULL); gtk_signal_connect(GTK_OBJECT(frame), "destroy", onquit, "WM destroy"); canvas = gtk_drawing_area_new(); gtk_signal_connect(GTK_OBJECT(canvas), "size_allocate", onresize, NULL); gtk_signal_connect(GTK_OBJECT(canvas), "expose_event", onexpose, NULL); gtk_container_add(GTK_CONTAINER(frame), canvas); wintitle(); gtk_window_set_geometry_hints(GTK_WINDOW(frame), GTK_WIDGET(frame), &geom, GDK_HINT_MIN_SIZE | GDK_HINT_MAX_SIZE /* | GDK_HINT_RESIZE_INC */ ); gtk_window_set_default_size(GTK_WINDOW(frame), defw, defh); gtk_widget_show(canvas); gtk_widget_show(frame); gtk_widget_grab_focus(frame); }
static void pdfapp_showpage(pdfapp_t *app, int loadpage, int drawpage, int repaint) { char buf[256]; fz_device *idev; fz_device *tdev; fz_colorspace *colorspace; fz_matrix ctm; fz_bbox bbox; wincursor(app, WAIT); if (loadpage) { if (app->page_list) fz_free_display_list(app->page_list); if (app->page_text) fz_free_text_span(app->page_text); if (app->page_links) pdf_free_link(app->page_links); if (app->xref) pdfapp_loadpage_pdf(app); if (app->xps) pdfapp_loadpage_xps(app); /* Zero search hit position */ app->hit = -1; app->hitlen = 0; /* Extract text */ app->page_text = fz_new_text_span(); tdev = fz_new_text_device(app->page_text); fz_execute_display_list(app->page_list, tdev, fz_identity, fz_infinite_bbox); fz_free_device(tdev); } if (drawpage) { sprintf(buf, "%s - %d/%d (%d dpi)", app->doctitle, app->pageno, app->pagecount, app->resolution); wintitle(app, buf); ctm = pdfapp_viewctm(app); bbox = fz_round_rect(fz_transform_rect(ctm, app->page_bbox)); /* Draw */ if (app->image) fz_drop_pixmap(app->image); if (app->grayscale) colorspace = fz_device_gray; else #ifdef _WIN32 colorspace = fz_device_bgr; #else colorspace = fz_device_rgb; #endif app->image = fz_new_pixmap_with_rect(colorspace, bbox); fz_clear_pixmap_with_color(app->image, 255); idev = fz_new_draw_device(app->cache, app->image); fz_execute_display_list(app->page_list, idev, ctm, bbox); fz_free_device(idev); } if (repaint) { pdfapp_panview(app, app->panx, app->pany); if (app->shrinkwrap) { int w = app->image->w; int h = app->image->h; if (app->winw == w) app->panx = 0; if (app->winh == h) app->pany = 0; if (w > app->scrw * 90 / 100) w = app->scrw * 90 / 100; if (h > app->scrh * 90 / 100) h = app->scrh * 90 / 100; if (w != app->winw || h != app->winh) winresize(app, w, h); } winrepaint(app); wincursor(app, ARROW); } fz_flush_warnings(); }
void pdfapp_showpage(pdfapp_t *app, int loadpage, int drawpage) { char buf[256]; fz_error *error; fz_matrix ctm; fz_rect bbox; fz_obj *obj; if (loadpage) { wincursor(app, WAIT); if (app->page) pdf_droppage(app->page); app->page = nil; obj = pdf_getpageobject(app->pages, app->pageno - 1); error = pdf_loadpage(&app->page, app->xref, obj); if (error) pdfapp_error(app, error); sprintf(buf, "%s - %d/%d", app->doctitle, app->pageno, pdf_getpagecount(app->pages)); wintitle(app, buf); } if (drawpage) { wincursor(app, WAIT); if (app->image) fz_droppixmap(app->image); app->image = nil; ctm = pdfapp_viewctm(app); bbox = fz_transformaabb(ctm, app->page->mediabox); error = fz_rendertree(&app->image, app->rast, app->page->tree, ctm, fz_roundrect(bbox), 1); if (error) pdfapp_error(app, error); winconvert(app, app->image); } pdfapp_panview(app, app->panx, app->pany); if (app->shrinkwrap) { int w = app->image->w; int h = app->image->h; if (app->winw == w) app->panx = 0; if (app->winh == h) app->pany = 0; if (w > app->scrw * 90 / 100) w = app->scrw * 90 / 100; if (h > app->scrh * 90 / 100) h = app->scrh * 90 / 100; if (w != app->winw || h != app->winh) winresize(app, w, h); } winrepaint(app); wincursor(app, ARROW); }
void winopen() { HMENU menu; int sizew = 0; int sizeh = 0; DWORD dwStyle = 0; if (gli_conf_fullscreen) { sizew = GetSystemMetrics(SM_CXFULLSCREEN); sizeh = GetSystemMetrics(SM_CYFULLSCREEN); dwStyle = WS_POPUP | WS_VISIBLE; } else { sizew = gli_wmarginx * 2 + gli_cellw * gli_cols; sizeh = gli_wmarginy * 2 + gli_cellh * gli_rows; sizew += GetSystemMetrics(SM_CXFRAME) * 2; sizeh += GetSystemMetrics(SM_CYFRAME) * 2; sizeh += GetSystemMetrics(SM_CYCAPTION); dwStyle = WS_CAPTION|WS_THICKFRAME| WS_SYSMENU|WS_MAXIMIZEBOX|WS_MINIMIZEBOX| WS_CLIPCHILDREN; } hwndframe = CreateWindow("XxFrame", NULL, // window caption dwStyle, // window style CW_USEDEFAULT, // initial x position CW_USEDEFAULT, // initial y position sizew, // initial x size sizeh, // initial y size NULL, // parent window handle NULL, // window menu handle 0, //hInstance, // program instance handle NULL); // creation parameters hwndview = CreateWindow("XxView", NULL, WS_VISIBLE | WS_CHILD, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, hwndframe, NULL, NULL, 0); hdc = NULL; menu = GetSystemMenu(hwndframe, 0); AppendMenu(menu, MF_SEPARATOR, 0, NULL); AppendMenu(menu, MF_STRING, ID_ABOUT, "About Gargoyle..."); AppendMenu(menu, MF_STRING, ID_CONFIG, "Options..."); AppendMenu(menu, MF_STRING, ID_FULLSCREEN, "Fullscreen"); // AppendMenu(menu, MF_STRING, ID_TOGSCR, "Toggle scrollbar"); wintitle(); if (gli_conf_fullscreen) { // See https://blogs.msdn.microsoft.com/oldnewthing/20050505-04/?p=35703 HMONITOR hmon = MonitorFromWindow(hwndframe, MONITOR_DEFAULTTONEAREST); MONITORINFO mi = { sizeof(mi) }; GetMonitorInfo(hmon, &mi); SetWindowPos(hwndframe, NULL, mi.rcMonitor.left, mi.rcMonitor.top, mi.rcMonitor.right - mi.rcMonitor.left, mi.rcMonitor.bottom - mi.rcMonitor.top, SWP_NOZORDER | SWP_NOACTIVATE | SWP_FRAMECHANGED); } else ShowWindow(hwndframe, SW_SHOW); }
static void pdfapp_showpage(pdfapp_t *app, int loadpage, int drawpage) { char buf[256]; fz_error error; fz_device *idev, *tdev, *mdev; fz_displaylist *list; fz_matrix ctm; fz_bbox bbox; fz_obj *obj; if (loadpage) { wincursor(app, WAIT); if (app->page) pdf_droppage(app->page); app->page = nil; //code change by kakai kno_clearselect(app); //code change by kakai pdf_flushxref(app->xref, 0); obj = pdf_getpageobject(app->xref, app->pageno); error = pdf_loadpage(&app->page, app->xref, obj); if (error) pdfapp_error(app, error); sprintf(buf, "%s - %d/%d", app->doctitle, app->pageno, app->pagecount); wintitle(app, buf); } if (drawpage) { wincursor(app, WAIT); ctm = pdfapp_viewctm(app); bbox = fz_roundrect(fz_transformrect(ctm, app->page->mediabox)); list = fz_newdisplaylist(); mdev = fz_newlistdevice(list); error = pdf_runcontentstream(mdev, fz_identity(), app->xref, app->page->resources, app->page->contents); if (error) pdfapp_error(app, error); fz_freedevice(mdev); if (app->image) fz_droppixmap(app->image); app->image = fz_newpixmapwithrect(pdf_devicergb, bbox); fz_clearpixmap(app->image, 0xFF); idev = fz_newdrawdevice(app->cache, app->image); fz_executedisplaylist(list, idev, ctm); fz_freedevice(idev); if (app->text) fz_freetextspan(app->text); app->text = fz_newtextspan(); tdev = fz_newtextdevice(app->text); fz_executedisplaylist(list, tdev, ctm); fz_freedevice(tdev); fz_freedisplaylist(list); //code change by kakai kno_allocselection(app); kno_applyselect(app); //code change by kakai winconvert(app, app->image); } pdfapp_panview(app, app->panx, app->pany); if (app->shrinkwrap) { int w = app->image->w; int h = app->image->h; if (app->winw == w) app->panx = 0; if (app->winh == h) app->pany = 0; if (w > app->scrw * 90 / 100) w = app->scrw * 90 / 100; if (h > app->scrh * 90 / 100) h = app->scrh * 90 / 100; if (w != app->winw || h != app->winh) winresize(app, w, h); } winrepaint(app); wincursor(app, ARROW); }