diff -rc xpaint-2.8.19/app-defaults/XPaint.ad.in xpaint-2.8.19.1/app-defaults/XPaint.ad.in *** xpaint-2.8.19/app-defaults/XPaint.ad.in 2010-04-03 09:31:28.000000000 +0200 --- xpaint-2.8.19.1/app-defaults/XPaint.ad.in 2010-04-07 09:09:24.000000000 +0200 *************** *** 242,247 **** --- 242,248 ---- *close.label: Close *apply.label: Apply *hidden.label: Hidden Files + *ongoing.label: Ongoing *alert.title: Alert Canvas*fatbits.title: XPaint / Fat Bits *************** *** 354,360 **** xpaint*toolbox*canvas*open.label: Open Image... xpaint*toolbox*canvas*loaded.label: Loaded files... xpaint*toolbox*canvas*magnifier.label: Magnifier... ! xpaint*toolbox*canvas*snapshot.label: Take Snapshot... xpaint*toolbox*canvas*about.label: About... xpaint*toolbox*canvas*quit.label: Quit XPaint xpaint*toolbox*other.label: Brush --- 355,361 ---- xpaint*toolbox*canvas*open.label: Open Image... xpaint*toolbox*canvas*loaded.label: Loaded files... xpaint*toolbox*canvas*magnifier.label: Magnifier... ! xpaint*toolbox*canvas*screenshot.label: Take Screenshot... xpaint*toolbox*canvas*about.label: About... xpaint*toolbox*canvas*quit.label: Quit XPaint xpaint*toolbox*other.label: Brush *************** *** 593,599 **** Canvas*menu*edit*alphaset.label: Save as alpha channel Canvas*menu*edit*alphadel.label: Delete alpha channel Canvas*menu*edit*alphaedit.label: Edit alpha channel ! Canvas*menu*edit*snapshot.label: Snapshot Canvas*menu*line.label: Line Canvas*menu*line*linestyle.label: Line Style... --- 594,600 ---- Canvas*menu*edit*alphaset.label: Save as alpha channel Canvas*menu*edit*alphadel.label: Delete alpha channel Canvas*menu*edit*alphaedit.label: Edit alpha channel ! Canvas*menu*edit*screenshot.label: Screenshot Canvas*menu*line.label: Line Canvas*menu*line*linestyle.label: Line Style... *************** *** 723,729 **** *paintBox*popup-menu.Edit-right.alphaset.label: Save as alpha channel *paintBox*popup-menu.Edit-right.alphadel.label: Delete alpha channel *paintBox*popup-menu.Edit-right.alphaedit.label: Edit alpha channel ! *paintBox*popup-menu.Edit-right*snapshot.label: Snapshot ! popup Line Menu *paintBox*popup-menu.Line.label: Line --- 724,730 ---- *paintBox*popup-menu.Edit-right.alphaset.label: Save as alpha channel *paintBox*popup-menu.Edit-right.alphadel.label: Delete alpha channel *paintBox*popup-menu.Edit-right.alphaedit.label: Edit alpha channel ! *paintBox*popup-menu.Edit-right*screenshot.label: Screenshot ! popup Line Menu *paintBox*popup-menu.Line.label: Line diff -rc xpaint-2.8.19/app-defaults/XPaint_es.ad.in xpaint-2.8.19.1/app-defaults/XPaint_es.ad.in *** xpaint-2.8.19/app-defaults/XPaint_es.ad.in 2010-04-03 09:35:36.000000000 +0200 --- xpaint-2.8.19.1/app-defaults/XPaint_es.ad.in 2010-04-07 09:10:58.000000000 +0200 *************** *** 243,248 **** --- 243,249 ---- *close.label: Cerrar *apply.label: Aplicar *hidden.label: Archivos Escondidos + *ongoing.label: Continuo *alert.title: Atención Canvas*fatbits.title: XPaint / Editor de Detalles *************** *** 356,362 **** xpaint*toolbox*canvas*open.label: Abrir Imagen... xpaint*toolbox*canvas*loaded.label: Archivos Cargados... xpaint*toolbox*canvas*magnifier.label: Lupa... ! xpaint*toolbox*canvas*snapshot.label: Captura de Pantalla... xpaint*toolbox*canvas*about.label: Respecto a... xpaint*toolbox*canvas*quit.label: Cerrar XPaint xpaint*toolbox*other.label: Pincel --- 357,363 ---- xpaint*toolbox*canvas*open.label: Abrir Imagen... xpaint*toolbox*canvas*loaded.label: Archivos Cargados... xpaint*toolbox*canvas*magnifier.label: Lupa... ! xpaint*toolbox*canvas*screenshot.label: Captura de Pantalla... xpaint*toolbox*canvas*about.label: Respecto a... xpaint*toolbox*canvas*quit.label: Cerrar XPaint xpaint*toolbox*other.label: Pincel *************** *** 592,598 **** Canvas*menu*edit*alphaset.label: Guardar como canal alpha Canvas*menu*edit*alphadel.label: Suprimir canal alpha Canvas*menu*edit*alphaedit.label: Editar canal alpha ! Canvas*menu*edit*snapshot.label: Capturar... Canvas*menu*line.label: Trazo Canvas*menu*line*linestyle.label: Tipos de Líneas... --- 593,599 ---- Canvas*menu*edit*alphaset.label: Guardar como canal alpha Canvas*menu*edit*alphadel.label: Suprimir canal alpha Canvas*menu*edit*alphaedit.label: Editar canal alpha ! Canvas*menu*edit*screenshot.label: Capturar... Canvas*menu*line.label: Trazo Canvas*menu*line*linestyle.label: Tipos de Líneas... *************** *** 718,724 **** *paintBox*popup-menu.Edit-right.alphaset.label: Guardar como canal alpha *paintBox*popup-menu.Edit-right.alphadel.label: Suprimir canal alpha *paintBox*popup-menu.Edit-right.alphaedit.label: Editar canal alpha ! *paintBox*popup-menu.Edit-right.snapshot.label: Capturar... ! popup Line Menu *paintBox*popup-menu.Line.label: Trazo --- 719,725 ---- *paintBox*popup-menu.Edit-right.alphaset.label: Guardar como canal alpha *paintBox*popup-menu.Edit-right.alphadel.label: Suprimir canal alpha *paintBox*popup-menu.Edit-right.alphaedit.label: Editar canal alpha ! *paintBox*popup-menu.Edit-right.screenshot.label: Capturar... ! popup Line Menu *paintBox*popup-menu.Line.label: Trazo diff -rc xpaint-2.8.19/app-defaults/XPaint_fr.ad.in xpaint-2.8.19.1/app-defaults/XPaint_fr.ad.in *** xpaint-2.8.19/app-defaults/XPaint_fr.ad.in 2010-04-03 09:34:22.000000000 +0200 --- xpaint-2.8.19.1/app-defaults/XPaint_fr.ad.in 2010-04-07 09:09:39.000000000 +0200 *************** *** 245,250 **** --- 245,251 ---- *close.label: Fermer *apply.label: Appliquer *hidden.label: Fichiers cachés + *ongoing.label: Continu *alert.title: Attention Canvas*fatbits.title: XPaint / Editeur de Détails *************** *** 354,360 **** xpaint*toolbox*canvas*open.label: Ouvrir Image... xpaint*toolbox*canvas*loaded.label: Fichiers chargés... xpaint*toolbox*canvas*magnifier.label: Loupe... ! xpaint*toolbox*canvas*snapshot.label: Capture d'Ecran... xpaint*toolbox*canvas*about.label: A Propos... xpaint*toolbox*canvas*quit.label: Quitter XPaint xpaint*toolbox*other.label: Pinceau --- 355,361 ---- xpaint*toolbox*canvas*open.label: Ouvrir Image... xpaint*toolbox*canvas*loaded.label: Fichiers chargés... xpaint*toolbox*canvas*magnifier.label: Loupe... ! xpaint*toolbox*canvas*screenshot.label: Capture d'Ecran... xpaint*toolbox*canvas*about.label: A Propos... xpaint*toolbox*canvas*quit.label: Quitter XPaint xpaint*toolbox*other.label: Pinceau *************** *** 589,595 **** Canvas*menu*edit*alphaset.label: Copier vers canal alpha Canvas*menu*edit*alphadel.label: Supprimer canal alpha Canvas*menu*edit*alphaedit.label: Editer canal alpha ! Canvas*menu*edit*snapshot.label: Capturer... Canvas*menu*line.label: Trait Canvas*menu*line*linestyle.label: Style de Ligne... --- 590,596 ---- Canvas*menu*edit*alphaset.label: Copier vers canal alpha Canvas*menu*edit*alphadel.label: Supprimer canal alpha Canvas*menu*edit*alphaedit.label: Editer canal alpha ! Canvas*menu*edit*screenshot.label: Capturer... Canvas*menu*line.label: Trait Canvas*menu*line*linestyle.label: Style de Ligne... *************** *** 715,721 **** *paintBox*popup-menu.Edit-right.alphaset.label: Copier vers canal alpha *paintBox*popup-menu.Edit-right.alphadel.label: Supprimer canal alpha *paintBox*popup-menu.Edit-right.alphaedit.label: Editer canal alpha ! *paintBox*popup-menu.Edit-right.snapshot.label: Capturer... ! popup Line Menu *paintBox*popup-menu.Line.label: Trait *paintBox*popup-menu.Line-right.label: Trait --- 716,722 ---- *paintBox*popup-menu.Edit-right.alphaset.label: Copier vers canal alpha *paintBox*popup-menu.Edit-right.alphadel.label: Supprimer canal alpha *paintBox*popup-menu.Edit-right.alphaedit.label: Editer canal alpha ! *paintBox*popup-menu.Edit-right.screenshot.label: Capturer... ! popup Line Menu *paintBox*popup-menu.Line.label: Trait *paintBox*popup-menu.Line-right.label: Trait diff -rc xpaint-2.8.19/fileBrowser.c xpaint-2.8.19.1/fileBrowser.c *** xpaint-2.8.19/fileBrowser.c 2010-04-05 17:24:35.000000000 +0200 --- xpaint-2.8.19.1/fileBrowser.c 2010-04-07 09:08:18.000000000 +0200 *************** *** 288,294 **** char dirname[MAX_PATH]; Widget shell, list, browser, parent, form, title_w, name, vport, ! home, root, dot, hidden, cwd_w, info, ok, cancel, refresh, delete, edit, create, dpilabel, dpi, zoomlabel, zoom, alphalabel, alphaleft, alpha, alpharight, --- 288,294 ---- char dirname[MAX_PATH]; Widget shell, list, browser, parent, form, title_w, name, vport, ! home, root, dot, hidden, ongoing, cwd_w, info, ok, cancel, refresh, delete, edit, create, dpilabel, dpi, zoomlabel, zoom, alphalabel, alphaleft, alpha, alpharight, *************** *** 394,399 **** --- 394,403 ---- XtMoveWidget(l->root, 30, height-84); XtMoveWidget(l->dot, 55, height-84); XtMoveWidget(l->hidden, 80, height-84); + if (l->ongoing) { + XtVaGetValues(l->hidden, XtNwidth, &width1, NULL); + XtMoveWidget(l->ongoing, 80+width1+3, height-84); + } XtMoveWidget(l->cwd_w, x, height-52); XtMoveWidget(l->info, x, height-30); return; *************** *** 682,690 **** --- 686,699 ---- char *cp; char *nm; int zoom = Global.default_zoom, zoom_prev = Global.default_zoom; + Boolean ongoing; static char buf[20]; static int np = 0; + ongoing = False; + if (arg->ongoing) + XtVaGetValues(arg->ongoing, XtNstate, &ongoing, NULL); + XtVaGetValues(arg->name, XtNstring, &str, NULL); if (str == NULL || *str == '\0') { XawListReturnStruct *lr = XawListShowCurrent(arg->list); *************** *** 708,714 **** } if ((cp = strrchr(file, '/')) != NULL) { *cp = '\0'; ! if (stat(file, &statbuf) >= 0 && (statbuf.st_mode & S_IFDIR) != 0) { if (arg->browserType != LOADED || arg->isToRefresh) setCWD(arg, file); if (arg->browserType != LOADED) --- 717,724 ---- } if ((cp = strrchr(file, '/')) != NULL) { *cp = '\0'; ! if (stat(file, &statbuf) >= 0 && (statbuf.st_mode & S_IFDIR) != 0 && ! !ongoing) { if (arg->browserType != LOADED || arg->isToRefresh) setCWD(arg, file); if (arg->browserType != LOADED) *************** *** 721,727 **** arg->oldwidth = 0; if (arg->browserType == LOADED) { ! char *dpistr, *pagestr, *zoomstr, *alphastr, *bboxstr; Widget paint = GetNonDirtyCanvas(); XtVaGetValues(arg->dpi, XtNstring, &dpistr, NULL); XtVaGetValues(arg->page, XtNstring, &pagestr, NULL); --- 731,737 ---- arg->oldwidth = 0; if (arg->browserType == LOADED) { ! char *dpistr, *pagestr, *zoomstr, *alphastr, *bboxstr; Widget paint = GetNonDirtyCanvas(); XtVaGetValues(arg->dpi, XtNstring, &dpistr, NULL); XtVaGetValues(arg->page, XtNstring, &pagestr, NULL); *************** *** 751,758 **** return; } else XtVaSetValues(arg->zoom, XtNstring, ZoomToStr(zoom), NULL); ! } else ! XtPopdown(GetShell(w)); if (arg->isSimple) { if (arg->okFunc != NULL) --- 761,781 ---- return; } else XtVaSetValues(arg->zoom, XtNstring, ZoomToStr(zoom), NULL); ! } else { ! if (ongoing) { ! Widget paint = GetNonDirtyCanvas(); ! int oldzoom = Global.default_zoom; ! if (paint) { ! XtVaGetValues(paint, XtNzoom, &zoom, NULL); ! Global.default_zoom = zoom; ! loadPrescribedFile(paint, file); ! setZoomButtonLabel(paint, zoom); ! Global.default_zoom = oldzoom; ! return; ! } ! } else ! XtPopdown(GetShell(w)); ! } if (arg->isSimple) { if (arg->okFunc != NULL) *************** *** 1180,1185 **** --- 1203,1219 ---- XtNvertDistance, 0, XtNheight, 20, NULL); + if (arg->browserType) + arg->ongoing = None; + else + arg->ongoing = XtVaCreateManagedWidget("ongoing", + toggleWidgetClass, form, + XtNfromVert, vport, + XtNfromHoriz, arg->hidden, + XtNhorizDistance, 4, + XtNvertDistance, 0, + XtNheight, 20, + NULL); } cwd = XtVaCreateManagedWidget("cwd", diff -rc xpaint-2.8.19/Filelist xpaint-2.8.19.1/Filelist *** xpaint-2.8.19/Filelist 2010-03-12 08:28:13.000000000 +0100 --- xpaint-2.8.19.1/Filelist 2010-04-07 07:41:44.000000000 +0200 *************** *** 36,42 **** ./protocol.c ./readRC.c ./size.c ! ./snapshot.c ./text.c ./texture.c ./typeConvert.c --- 36,42 ---- ./protocol.c ./readRC.c ./size.c ! ./screenshot.c ./text.c ./texture.c ./typeConvert.c diff -rc xpaint-2.8.19/graphic.c xpaint-2.8.19.1/graphic.c *** xpaint-2.8.19/graphic.c 2010-04-05 16:45:18.000000000 +0200 --- xpaint-2.8.19.1/graphic.c 2010-04-07 08:44:36.000000000 +0200 *************** *** 291,297 **** MI_SIMPLE("alphaedit"), MI_SEPARATOR(), /* 23 */ #define EDIT_SNAPSHOT 24 ! MI_SIMPLE("snapshot"), }; static PaintMenuItem lineMenu[] = --- 291,297 ---- MI_SIMPLE("alphaedit"), MI_SEPARATOR(), /* 23 */ #define EDIT_SNAPSHOT 24 ! MI_SIMPLE("screenshot"), }; static PaintMenuItem lineMenu[] = *************** *** 583,589 **** MI_SIMPLE("alphaedit"), MI_SEPARATOR(), /* 24 */ #define P_EDIT_SNAPSHOT 25 ! MI_SIMPLE("snapshot"), }; static PaintMenuItem popupLineMenu[] = --- 583,589 ---- MI_SIMPLE("alphaedit"), MI_SEPARATOR(), /* 24 */ #define P_EDIT_SNAPSHOT 25 ! MI_SIMPLE("screenshot"), }; static PaintMenuItem popupLineMenu[] = *************** *** 5259,5265 **** ADDCALLBACK(editMenu, EDIT_ERASE_ALL, paint, StdEraseAllCallback); ADDCALLBACK(editMenu, EDIT_CLONE_CANVAS, paint, StdCloneCanvasCallback); ADDCALLBACK(editMenu, EDIT_CLONE_CANVAS1, paint, StdCloneCanvasCallback); ! ADDCALLBACK(editMenu, EDIT_SNAPSHOT, info, StdSnapshotCallback); ADDCALLBACK(editMenu, EDIT_ALPHASET, paint, setAlpha); ADDCALLBACK(editMenu, EDIT_ALPHADEL, paint, deleteAlpha); ADDCALLBACK(editMenu, EDIT_ALPHAEDIT, paint, editAlpha); --- 5259,5265 ---- ADDCALLBACK(editMenu, EDIT_ERASE_ALL, paint, StdEraseAllCallback); ADDCALLBACK(editMenu, EDIT_CLONE_CANVAS, paint, StdCloneCanvasCallback); ADDCALLBACK(editMenu, EDIT_CLONE_CANVAS1, paint, StdCloneCanvasCallback); ! ADDCALLBACK(editMenu, EDIT_SNAPSHOT, info, StdScreenshotCallback); ADDCALLBACK(editMenu, EDIT_ALPHASET, paint, setAlpha); ADDCALLBACK(editMenu, EDIT_ALPHADEL, paint, deleteAlpha); ADDCALLBACK(editMenu, EDIT_ALPHAEDIT, paint, editAlpha); *************** *** 5568,5573 **** --- 5568,5574 ---- strcpy(cp, file); paint->paint.filename = cp; EnableRevert((Widget) paint); + XtVaSetValues((Widget)paint, XtNdirty, False, NULL); if (file_isSpecialImage) { GetFileName(Global.toplevel, 4, NULL, NULL, NULL); SetEditable((Widget)paint, *************** *** 6187,6193 **** } void ! StdSnapshotCallback(Widget w, XtPointer paintArg, XtPointer junk) { LocalInfo * info = (LocalInfo *) paintArg; Widget paint; --- 6188,6194 ---- } void ! StdScreenshotCallback(Widget w, XtPointer paintArg, XtPointer junk) { LocalInfo * info = (LocalInfo *) paintArg; Widget paint; *************** *** 6201,6207 **** Pixel pixel; #endif ! /* Disable snapshot from FatBits !! */ if (!info) return; paint = info->paint; --- 6202,6208 ---- Pixel pixel; #endif ! /* Disable screenshot from FatBits !! */ if (!info) return; paint = info->paint; *************** *** 6258,6265 **** selection = selectionOwner; selectionOwner = True; ! /* Now, really start snapshot ! */ ! SnapshotImage(paint, pw, 1); selectionOwner = selection; } --- 6259,6266 ---- selection = selectionOwner; selectionOwner = True; ! /* Now, really start screenshot ! */ ! ScreenshotImage(paint, pw, 1); selectionOwner = selection; } *************** *** 7201,7207 **** ADDCALLBACK(popupEditMenu, P_EDIT_ALPHASET, paint, setAlpha); ADDCALLBACK(popupEditMenu, P_EDIT_ALPHADEL, paint, deleteAlpha); ADDCALLBACK(popupEditMenu, P_EDIT_ALPHAEDIT, paint, editAlpha); ! ADDCALLBACK(popupEditMenu, P_EDIT_SNAPSHOT, info, StdSnapshotCallback); ADDCALLBACK(popupTextMenu, P_FONT_SELECT, info, StdFontSet); ADDCALLBACK(popupTextMenu, P_FONT_WRITE, info, StdWriteText); --- 7202,7208 ---- ADDCALLBACK(popupEditMenu, P_EDIT_ALPHASET, paint, setAlpha); ADDCALLBACK(popupEditMenu, P_EDIT_ALPHADEL, paint, deleteAlpha); ADDCALLBACK(popupEditMenu, P_EDIT_ALPHAEDIT, paint, editAlpha); ! ADDCALLBACK(popupEditMenu, P_EDIT_SNAPSHOT, info, StdScreenshotCallback); ADDCALLBACK(popupTextMenu, P_FONT_SELECT, info, StdFontSet); ADDCALLBACK(popupTextMenu, P_FONT_WRITE, info, StdWriteText); diff -rc xpaint-2.8.19/Imakefile xpaint-2.8.19.1/Imakefile *** xpaint-2.8.19/Imakefile 2010-03-13 08:46:00.000000000 +0100 --- xpaint-2.8.19.1/Imakefile 2010-04-07 07:37:45.000000000 +0200 *************** *** 30,42 **** fileBrowser.c fontSelect.c grab.c graphic.c hash.c help.c \ image.c imageComp.c iprocess.c magnifier.c main.c menu.c misc.c \ operation.c palette.c pattern.c print.c protocol.c readRC.c \ ! snapshot.c text.c texture.c typeConvert.c XPOBJ = chroma.o color.o colorEdit.o dialog.o fatBitsEdit.o \ fileBrowser.o fontSelect.o grab.o graphic.o hash.o help.o \ image.o imageComp.o iprocess.o magnifier.o main.o menu.o misc.o \ operation.o palette.o pattern.o print.o protocol.o readRC.o \ ! snapshot.o text.o texture.o typeConvert.o OPSRC = arcOp.c freehandOp.c boxOp.c brushOp.c circleOp.c fillOp.c \ fontOp.c lineOp.c pencilOp.c polygonOp.c splineOp.c selectOp.c \ --- 30,42 ---- fileBrowser.c fontSelect.c grab.c graphic.c hash.c help.c \ image.c imageComp.c iprocess.c magnifier.c main.c menu.c misc.c \ operation.c palette.c pattern.c print.c protocol.c readRC.c \ ! screenshot.c text.c texture.c typeConvert.c XPOBJ = chroma.o color.o colorEdit.o dialog.o fatBitsEdit.o \ fileBrowser.o fontSelect.o grab.o graphic.o hash.o help.o \ image.o imageComp.o iprocess.o magnifier.o main.o menu.o misc.o \ operation.o palette.o pattern.o print.o protocol.o readRC.o \ ! screenshot.o text.o texture.o typeConvert.o OPSRC = arcOp.c freehandOp.c boxOp.c brushOp.c circleOp.c fillOp.c \ fontOp.c lineOp.c pencilOp.c polygonOp.c splineOp.c selectOp.c \ *************** *** 297,303 **** $(XBMDIR)/wait3.xbm $(XBMDIR)/wait4.xbm readRC.o: image.h rc.h misc.h DefaultRC.txt.h size.o: Paint.h messages.h misc.h text.h ! snapshot.o: Paint.h image.h messages.h text.o: misc.h protocol.h text.h typeConvert.o: palette.h misc.h fontOp.o: xpaint.h Paint.h graphic.h misc.h ops.h --- 297,303 ---- $(XBMDIR)/wait3.xbm $(XBMDIR)/wait4.xbm readRC.o: image.h rc.h misc.h DefaultRC.txt.h size.o: Paint.h messages.h misc.h text.h ! screenshot.o: Paint.h image.h messages.h text.o: misc.h protocol.h text.h typeConvert.o: palette.h misc.h fontOp.o: xpaint.h Paint.h graphic.h misc.h ops.h diff -rc xpaint-2.8.19/main.c xpaint-2.8.19.1/main.c *** xpaint-2.8.19/main.c 2010-04-05 15:39:44.000000000 +0200 --- xpaint-2.8.19.1/main.c 2010-04-07 07:38:41.000000000 +0200 *************** *** 105,111 **** Boolean fullmenu; Boolean menubar; Boolean canvas; ! Boolean snapshot; Boolean magnifier; Boolean horizontal; Boolean nowarn; --- 105,111 ---- Boolean fullmenu; Boolean menubar; Boolean canvas; ! Boolean screenshot; Boolean magnifier; Boolean horizontal; Boolean nowarn; *************** *** 164,171 **** XtOffset(AppInfo *, menubar), XtRImmediate, (XtPointer) True}, {"canvas", "Canvas", XtRBoolean, sizeof(Boolean), XtOffset(AppInfo *, canvas), XtRImmediate, (XtPointer) False}, ! {"snapshot", "Snapshot", XtRBoolean, sizeof(Boolean), ! XtOffset(AppInfo *, snapshot), XtRImmediate, (XtPointer) False}, {"magnifier", "Magnifier", XtRBoolean, sizeof(Boolean), XtOffset(AppInfo *, magnifier), XtRImmediate, (XtPointer) False}, {"horizontal", "Horizontal", XtRBoolean, sizeof(Boolean), --- 164,171 ---- XtOffset(AppInfo *, menubar), XtRImmediate, (XtPointer) True}, {"canvas", "Canvas", XtRBoolean, sizeof(Boolean), XtOffset(AppInfo *, canvas), XtRImmediate, (XtPointer) False}, ! {"screenshot", "Screenshot", XtRBoolean, sizeof(Boolean), ! XtOffset(AppInfo *, screenshot), XtRImmediate, (XtPointer) False}, {"magnifier", "Magnifier", XtRBoolean, sizeof(Boolean), XtOffset(AppInfo *, magnifier), XtRImmediate, (XtPointer) False}, {"horizontal", "Horizontal", XtRBoolean, sizeof(Boolean), *************** *** 203,209 **** {"-menubar", ".menubar", XrmoptionNoArg, (XtPointer) "True"}, {"-nomenubar", ".menubar", XrmoptionNoArg, (XtPointer) "False"}, {"-canvas", ".canvas", XrmoptionNoArg, (XtPointer) "True"}, ! {"-snapshot", ".snapshot", XrmoptionNoArg, (XtPointer) "True"}, {"-magnifier", ".magnifier", XrmoptionNoArg, (XtPointer) "True"}, {"-horizontal", ".horizontal", XrmoptionNoArg, (XtPointer) "True"}, {"-nowarn", ".nowarn", XrmoptionNoArg, (XtPointer) "True"}, --- 203,209 ---- {"-menubar", ".menubar", XrmoptionNoArg, (XtPointer) "True"}, {"-nomenubar", ".menubar", XrmoptionNoArg, (XtPointer) "False"}, {"-canvas", ".canvas", XrmoptionNoArg, (XtPointer) "True"}, ! {"-screenshot", ".screenshot", XrmoptionNoArg, (XtPointer) "True"}, {"-magnifier", ".magnifier", XrmoptionNoArg, (XtPointer) "True"}, {"-horizontal", ".horizontal", XrmoptionNoArg, (XtPointer) "True"}, {"-nowarn", ".nowarn", XrmoptionNoArg, (XtPointer) "True"}, *************** *** 924,930 **** /* ** GRR 960525: check depth and warn user (use AlertBox() instead?) */ ! if (!appInfo.nowarn && !appInfo.snapshot) { int depth = Global.vis.depth; /* XtVaGetValues(toplevel, XtNdepth, &depth, NULL); */ --- 924,930 ---- /* ** GRR 960525: check depth and warn user (use AlertBox() instead?) */ ! if (!appInfo.nowarn && !appInfo.screenshot) { int depth = Global.vis.depth; /* XtVaGetValues(toplevel, XtNdepth, &depth, NULL); */ *************** *** 1004,1011 **** &Global.default_width, &Global.default_height); Global.default_zoom = GetInitZoom(); ! if (appInfo.snapshot) { ! SnapshotImage(toplevel, NULL, 0); } if (appInfo.magnifier) { --- 1004,1011 ---- &Global.default_width, &Global.default_height); Global.default_zoom = GetInitZoom(); ! if (appInfo.screenshot) { ! ScreenshotImage(toplevel, NULL, 0); } if (appInfo.magnifier) { diff -rc xpaint-2.8.19/misc.h xpaint-2.8.19.1/misc.h *** xpaint-2.8.19/misc.h 2010-04-05 16:42:12.000000000 +0200 --- xpaint-2.8.19.1/misc.h 2010-04-07 07:42:56.000000000 +0200 *************** *** 212,224 **** extern void InitTypeConverters(void); /* operation.c */ ! extern void takeSnapshot(Widget w, XtPointer junk, XtPointer junk2); extern void exitPaint(Widget w, XtPointer junk, XtPointer junk2); extern void setToolIconOnWidget(Widget w); extern void OperationSet(String names[], int num); /* snapshot.c */ ! extern void SnapshotImage(Widget w, XtPointer paintArg, int flag); /* brushOp.c */ --- 212,224 ---- extern void InitTypeConverters(void); /* operation.c */ ! extern void takeScreenshot(Widget w, XtPointer junk, XtPointer junk2); extern void exitPaint(Widget w, XtPointer junk, XtPointer junk2); extern void setToolIconOnWidget(Widget w); extern void OperationSet(String names[], int num); /* snapshot.c */ ! extern void ScreenshotImage(Widget w, XtPointer paintArg, int flag); /* brushOp.c */ diff -rc xpaint-2.8.19/operation.c xpaint-2.8.19.1/operation.c *** xpaint-2.8.19/operation.c 2010-03-11 14:31:38.000000000 +0100 --- xpaint-2.8.19.1/operation.c 2010-04-07 07:44:03.000000000 +0200 *************** *** 588,594 **** ** */ void ! takeSnapshot(Widget w, XtPointer junk, XtPointer junk2) { if (XtParent(w)) w = GetToplevel(XtParent(w)); if (w) { --- 588,594 ---- ** */ void ! takeScreenshot(Widget w, XtPointer junk, XtPointer junk2) { if (XtParent(w)) w = GetToplevel(XtParent(w)); if (w) { *************** *** 596,602 **** XUnmapWindow(XtDisplay(Global.toplevel), XtWindow(Global.toplevel)); XFlush(XtDisplay(Global.toplevel)); usleep(200000); ! SnapshotImage(w, junk, 0); XMapWindow(XtDisplay(Global.toplevel), XtWindow(Global.toplevel)); } } --- 596,602 ---- XUnmapWindow(XtDisplay(Global.toplevel), XtWindow(Global.toplevel)); XFlush(XtDisplay(Global.toplevel)); usleep(200000); ! ScreenshotImage(w, junk, 0); XMapWindow(XtDisplay(Global.toplevel), XtWindow(Global.toplevel)); } } *************** *** 1321,1327 **** MI_SIMPLECB("open", GraphicCreate, 2), MI_SIMPLECB("loaded", GraphicCreate, 3), MI_SIMPLECB("magnifier", GraphicCreate, 4), ! MI_SIMPLECB("snapshot", takeSnapshot, NULL), MI_SEPARATOR(), MI_SIMPLECB("quit", exitPaint, NULL), }; --- 1321,1327 ---- MI_SIMPLECB("open", GraphicCreate, 2), MI_SIMPLECB("loaded", GraphicCreate, 3), MI_SIMPLECB("magnifier", GraphicCreate, 4), ! MI_SIMPLECB("screenshot", takeScreenshot, NULL), MI_SEPARATOR(), MI_SIMPLECB("quit", exitPaint, NULL), }; diff -rc xpaint-2.8.19/region.h xpaint-2.8.19.1/region.h *** xpaint-2.8.19/region.h 2010-01-31 11:13:07.000000000 +0100 --- xpaint-2.8.19.1/region.h 2010-04-07 07:43:06.000000000 +0200 *************** *** 3,9 **** /* cutCopyPaste.c */ void StdCopyCallback(Widget w, XtPointer paintArg, String * nm, XEvent * event); void StdPasteCallback(Widget w, XtPointer paintArg, XtPointer junk); ! void StdSnapshotCallback(Widget w, XtPointer paintArg, XtPointer junk); void StdMemorySetCallback(Widget w, XtPointer paintArg, XtPointer junk); void StdMemoryRecallCallback(Widget w, XtPointer paintArg, XtPointer junk); void StdMemoryRemoveCallback(Widget w, XtPointer paintArg, XtPointer junk); --- 3,9 ---- /* cutCopyPaste.c */ void StdCopyCallback(Widget w, XtPointer paintArg, String * nm, XEvent * event); void StdPasteCallback(Widget w, XtPointer paintArg, XtPointer junk); ! void StdScreenshotCallback(Widget w, XtPointer paintArg, XtPointer junk); void StdMemorySetCallback(Widget w, XtPointer paintArg, XtPointer junk); void StdMemoryRecallCallback(Widget w, XtPointer paintArg, XtPointer junk); void StdMemoryRemoveCallback(Widget w, XtPointer paintArg, XtPointer junk); *************** *** 60,66 **** void ccpAddCopy(Widget w, Widget paint); void ccpAddPaste(Widget w, Widget paint); void ccpAddClear(Widget w, Widget paint); ! void ccpAddSnapshot(Widget w, Widget paint); void ccpAddDuplicate(Widget w, Widget paint); void ccpAddSelectAll(Widget w, Widget paint); void ccpAddEraseAll(Widget w, Widget paint); --- 60,66 ---- void ccpAddCopy(Widget w, Widget paint); void ccpAddPaste(Widget w, Widget paint); void ccpAddClear(Widget w, Widget paint); ! void ccpAddScreenshot(Widget w, Widget paint); void ccpAddDuplicate(Widget w, Widget paint); void ccpAddSelectAll(Widget w, Widget paint); void ccpAddEraseAll(Widget w, Widget paint); diff -rc xpaint-2.8.19/screenshot.c xpaint-2.8.19.1/screenshot.c *** xpaint-2.8.19/screenshot.c 2010-04-07 09:51:56.803500287 +0200 --- xpaint-2.8.19.1/screenshot.c 2010-04-07 07:37:15.000000000 +0200 *************** *** 0 **** --- 1,430 ---- + /* + * code taken from xsnap.c by: + * + * Copyright 1989 Clauss Strauch + * cbs@cad.cs.cmu.edu + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose and without fee is hereby granted. + * This software is provided "as is", without express or implied warranty. + * + */ + + #include <stdio.h> + #include <stdlib.h> + #include <unistd.h> + #include <sys/stat.h> + #include <X11/Xlib.h> + #include <X11/Xos.h> + #include <X11/Xutil.h> + #include <X11/cursorfont.h> + #include <X11/Intrinsic.h> + #include "Paint.h" + #include "image.h" + #include "graphic.h" + #include "messages.h" + #include "misc.h" + #include "region.h" + + /* extern procedures */ + extern Image * outputImage; + extern char *routine; + + /* Leave arguments as globals, since there are so many of them. + * They'll only be referenced in process_args and main. + */ + static Colormap private_cmap = 0; + + /* + * createEventWindow returns the ID of a InputOnly window that covers + * the given window. + */ + + Window createEventWindow(Display *dpy, Window win, int init_cursor) + { + XSetWindowAttributes xswa; + unsigned long xswvaluemask; + Window root_win; + Window event_window; + unsigned int win_width, win_height; + unsigned int win_border_width, win_depth; + int win_x, win_y; + + /* get the geometry of the window */ + + XGetGeometry(dpy, win, &root_win, &win_x, &win_y, + &win_width, &win_height, &win_border_width, &win_depth); + + /* make an input only window to get events from */ + + xswa.cursor = init_cursor; + xswa.override_redirect = True; + xswa.event_mask = ButtonPressMask | ButtonReleaseMask | Button1MotionMask; + xswvaluemask = CWCursor | CWOverrideRedirect | CWEventMask; + event_window = XCreateWindow(dpy, win, win_x, win_y, win_width, + win_height, 0, 0, InputOnly, CopyFromParent, + xswvaluemask, &xswa); + return(event_window); + } + + /* + * draw_box draws a box on the given window, with the given GC + * + */ + + void draw_box(Display *dpy, Window win, GC gc, int x1, int y1, int x2, int y2) + { + XSegment segments[4]; + segments[0].x1 = (short)x1; + segments[0].y1 = (short)y1; + segments[0].x2 = (short)x1; + segments[0].y2 = (short)y2; + + segments[1].x1 = (short)x1; + segments[1].y1 = (short)y1; + segments[1].x2 = (short)x2; + segments[1].y2 = (short)y1; + + segments[2].x1 = (short)x2; + segments[2].y1 = (short)y2; + segments[2].x2 = (short)x1; + segments[2].y2 = (short)y2; + + segments[3].x1 = (short)x2; + segments[3].y1 = (short)y2; + segments[3].x2 = (short)x2; + segments[3].y2 = (short)y1; + + XDrawSegments(dpy, win, gc, segments, 4); + } + + /* + * get_region + * takes as input: + * dpy + * win to get region from + * pointers to x1, y1, width, height + * + * returns: the position and width and height of a + * user selected region via the given pointers. + * + */ + + void + find_window(Display *dpy, int flag, int x, int y, + int *u, int *v, int *width, int *height) + { + XWindowAttributes wa; + Window findW = DefaultRootWindow(dpy), stopW = 0, childW, initW; + + XTranslateCoordinates(dpy, findW, findW, x, y, &x, &y, &stopW); + + if (stopW) + initW = stopW; + else + initW = findW; + + while (stopW) { + XTranslateCoordinates(dpy, findW, stopW, x, y, &x, &y, &childW); + findW = stopW; + if (childW && + XGetWindowAttributes(dpy, childW, &wa) && + (wa.class != InputOutput)) + break; + stopW = childW; + } + + if (!flag) + findW = initW; + + XGetWindowAttributes(dpy, findW, &wa); + *width = wa.width; + *height = wa.height; + private_cmap = wa.colormap; + + XTranslateCoordinates(dpy, findW, DefaultRootWindow(dpy), + 0, 0, u, v, &stopW); + } + + void get_region(Display *dpy, Window win, + int *x, int *y, unsigned *width, unsigned *height) + { + Window event_window; + Cursor up_right_curs, up_left_curs; + Cursor low_right_curs, low_left_curs; + Cursor current_cursor = None; + int done; + int init_x=0, init_y=0; + int last_x, last_y; + XEvent event; + GC xor_gc; + XGCValues xor_gc_values; /* for creating xor_gc */ + unsigned long xor_gc_valuemask; /* valuemask for creating xor_gc */ + + /* make the GC and cursors we'll need */ + + up_right_curs = XCreateFontCursor(dpy, XC_ur_angle); + + up_left_curs = XCreateFontCursor(dpy, XC_ul_angle); + + low_right_curs = XCreateFontCursor(dpy, XC_lr_angle); + + low_left_curs = XCreateFontCursor(dpy, XC_ll_angle); + + xor_gc_valuemask = GCFunction | GCSubwindowMode | GCForeground; + xor_gc_values.function = GXxor; + xor_gc_values.foreground = 0xfd; + xor_gc_values.subwindow_mode = IncludeInferiors; + xor_gc = XCreateGC(dpy, win, xor_gc_valuemask, &xor_gc_values); + + event_window = createEventWindow(dpy, win, up_left_curs); + XMapRaised(dpy, event_window); + + if (XGrabPointer(dpy, event_window, True, + ButtonPressMask, + GrabModeAsync, GrabModeAsync, None, up_left_curs, + CurrentTime) != 0) { + fprintf(stderr, "%s", msgText[CANNOT_GRAB_POINTER]); + return; + } + + /* get the initial button press */ + done = 0; + while (done == 0) { + XNextEvent(dpy, &event); + switch(event.type) { + case MappingNotify: + XRefreshKeyboardMapping((XMappingEvent *)&event); + break; + case ButtonPress: + if (event.xbutton.button == 1) { + init_x = event.xbutton.x; + init_y = event.xbutton.y; + done = 1; + break; + } + if (event.xbutton.button == 2) { + init_x = event.xbutton.x; + init_y = event.xbutton.y; + done = 2; + break; + } + if (event.xbutton.button == 3) { + *width = 0; + *height = 0; + done = -1; + break; + } + } + } + + /* now we have the location of one corner of the box. change the cursor, + * and have the user drag out the area. + */ + last_x = init_x; + last_y = init_y; + if (done == 1) { + current_cursor = low_right_curs; + XChangeActivePointerGrab(dpy, ButtonReleaseMask | Button1MotionMask, + current_cursor, CurrentTime); + done = 0; + draw_box(dpy, win, xor_gc, init_x, init_y, last_x, last_y); + } + while (!done) { + XNextEvent(dpy, &event); + switch(event.type) { + case MappingNotify: + XRefreshKeyboardMapping((XMappingEvent *)&event); + break; + case MotionNotify: + draw_box(dpy, win, xor_gc, + init_x, init_y, last_x, last_y); /* erase old */ + last_x = event.xmotion.x; + last_y = event.xmotion.y; + draw_box(dpy, win, xor_gc, + init_x, init_y, last_x, last_y); /* draw new */ + /* Change cursor to correspond to position of pointer */ + if ((init_x < last_x) && (init_y < last_y) + && (current_cursor != low_right_curs)) { + current_cursor = low_right_curs; + XChangeActivePointerGrab(dpy, + ButtonReleaseMask | Button1MotionMask, + low_right_curs, CurrentTime); + } + else if ((last_x < init_x) && (last_y < init_y) + && (current_cursor != up_left_curs)) { + current_cursor = up_left_curs; + XChangeActivePointerGrab(dpy, + ButtonReleaseMask | Button1MotionMask, + up_left_curs, CurrentTime); + } + else if ((init_x < last_x) && (last_y < init_y) + && (current_cursor != up_right_curs)) { + current_cursor = up_right_curs; + XChangeActivePointerGrab(dpy, + ButtonReleaseMask | Button1MotionMask, + up_right_curs, CurrentTime); + } + else if ((last_x < init_x) && (init_y < last_y) + && (current_cursor != low_left_curs)) { + current_cursor = low_left_curs; + XChangeActivePointerGrab(dpy, + ButtonReleaseMask | Button1MotionMask, + low_left_curs, CurrentTime); + } + break; + case ButtonRelease: + if (event.xbutton.button == 1) { + done = True; + draw_box(dpy, win, xor_gc, + init_x, init_y, last_x, last_y); /* erase last box drawn */ + } + break; + } + } + XFlush(dpy); /* gets rid of last box on screen */ + if (init_x < last_x) + *x = init_x; + else + *x = last_x; + if (init_y < last_y) + *y = init_y; + else + *y = last_y; + *width = (unsigned int)abs(last_x - init_x); + *height = (unsigned int)abs(last_y - init_y); + + /* clean up after ourself: */ + + XDestroyWindow(dpy, event_window); + XFreeGC(dpy, xor_gc); + + /* we'll let the caller ungrab the pointer */ + + if (done == 1) { + int u; + if (*width==0 && *height==0) + find_window(dpy, 0, init_x, init_y, x, y, (int*) width, (int*) height); + else + find_window(dpy, 0, init_x, init_y, &u, &u, &u, &u); + } + + if (done == 2) + find_window(dpy, 1, init_x,init_y, x, y, (int*) width, (int*) height); + } + + /* + * get_pixmap_region + * + * input : + * a dpy, a window, x, y, width, height, interactive. + * if interactive, the user is prompted for a region, + * other wise the given region is copied to a pixmap. + * returns : a pixmap containing a copy of a user-specified area + * of the given window; + * + */ + + Pixmap get_pixmap_region(Display *dpy, int screen, Window win, GC gc, + int *x, int *y, + unsigned *width, unsigned *height, unsigned *depth) + { + int reg_x, reg_y; + unsigned int reg_width, reg_height; + Pixmap pixmap_returned; + int junk_left, junk_top, junk_width, junk_height, junk_border_width; + Window junk_root; + + get_region(dpy, win, ®_x, ®_y, ®_width, ®_height); + *x = reg_x; + *y = reg_y; + *width = reg_width; + *height = reg_height; + + if (*width==0 || *height==0) return None; + + /* Use the depth of `win' for the depth of the pixmap */ + + XGetGeometry (dpy, win, &junk_root, &junk_left, &junk_top, + (unsigned int*) &junk_width, (unsigned int*) &junk_height, + (unsigned int*) &junk_border_width, depth); + + pixmap_returned = XCreatePixmap(dpy, + DefaultRootWindow(dpy), + *width, *height, *depth); + + /* now copy the area we specified */ + + XCopyArea(dpy, win, pixmap_returned, gc, *x, *y, + *width, *height, 0, 0); + XUngrabPointer(dpy, CurrentTime); + return pixmap_returned; + } + + void + ScreenshotImage(Widget w, XtPointer paintArg, int flag) + { + Display *dpy; + int screen; + GC copy_gc; + unsigned long copy_gc_valuemask; + XGCValues copy_gc_values; + Widget ww; + Window window_to_snap; + Pixmap snap_pixmap; + int reg_x, reg_y; + unsigned int reg_width, reg_height, reg_depth; + Image *image; + + routine = "snapshot"; + dpy = XtDisplayOfObject(w); + screen = DefaultScreen(dpy); + XSetErrorHandler(privateXErrorHandler); + + /* start with root window for now */ + window_to_snap = XRootWindow(dpy, screen); + + /* make copy GC */ + + copy_gc_valuemask = GCSubwindowMode; + copy_gc_values.subwindow_mode = IncludeInferiors; + copy_gc = XCreateGC(dpy, window_to_snap, copy_gc_valuemask, ©_gc_values); + + XFlush(dpy); + XGrabServer(dpy); + + snap_pixmap = get_pixmap_region(dpy, screen, + window_to_snap, copy_gc, + ®_x, ®_y, + ®_width, ®_height, + ®_depth); + + /* ungrab the server and free GC */ + XUngrabServer(dpy); + XFreeGC(dpy, copy_gc); + + if (!snap_pixmap || reg_width==0 || reg_height==0) + return; + + if (paintArg) ww = (Widget)paintArg; else ww = w; + image = PixmapToImage(ww, snap_pixmap, private_cmap); + if (snap_pixmap) XFreePixmap(dpy, snap_pixmap); + + if (!image) return; + + if (flag) { + ClipboardSetImage(ww, image); + StdPasteCallback(ww, paintArg, (XtPointer) NULL); + XtVaSetValues(ww, XtNdirty, True, NULL); + } + else { + Widget paint; + snap_pixmap = None; + ImageToPixmap(image, w, &snap_pixmap, &private_cmap, 0); + paint = (Widget) graphicCreate(makeGraphicShell(w), + reg_width, reg_height, -1, + snap_pixmap, private_cmap, NULL); + if (snap_pixmap) XFreePixmap(dpy, snap_pixmap); + XtVaSetValues(paint, XtNdirty, True, NULL); + } + } diff -rc xpaint-2.8.19/share/help/Help xpaint-2.8.19.1/share/help/Help *** xpaint-2.8.19/share/help/Help 2010-03-06 23:13:52.000000000 +0100 --- xpaint-2.8.19.1/share/help/Help 2010-04-07 07:40:23.000000000 +0200 *************** *** 48,54 **** image (embedded comments, time stamp, copyright, etc.) will always be lost. #BEGIN command "2. Command Line Options" ! xpaint [-canvas] [-snapshot] [-magnifier] [-nowarn] #NL [-menubar] [-nomenubar] [-fullmenu] [-simplemenu] #NL --- 48,54 ---- image (embedded comments, time stamp, copyright, etc.) will always be lost. #BEGIN command "2. Command Line Options" ! xpaint [-canvas] [-screenshot] [-magnifier] [-nowarn] #NL [-menubar] [-nomenubar] [-fullmenu] [-simplemenu] #NL *************** *** 102,108 **** #NL -canvas pop up an empty canvas on startup #NL ! -snapshot open xpaint without any GUI, and take snapshot #NL -magnifier open xpaint in magnifier glass mode #NL --- 102,108 ---- #NL -canvas pop up an empty canvas on startup #NL ! -screenshot open xpaint without any GUI, and take screenshot #NL -magnifier open xpaint in magnifier glass mode #NL *************** *** 183,189 **** #NL in an error message. ! Take Snapshot... #NL Grab a rectangle from the root window and load #NL --- 183,189 ---- #NL in an error message. ! Take Screenshot... #NL Grab a rectangle from the root window and load #NL diff -rc xpaint-2.8.19/share/help/Help_es xpaint-2.8.19.1/share/help/Help_es *** xpaint-2.8.19/share/help/Help_es 2010-03-06 23:15:31.000000000 +0100 --- xpaint-2.8.19.1/share/help/Help_es 2010-04-07 07:40:55.000000000 +0200 *************** *** 21,27 **** #BEGIN command "2. Opciones de la línea de comandos" ! xpaint [-canvas] [-snapshot] [-magnifier] [-nowarn] #NL [-menubar] [-nomenubar] [-fullmenu] [-simplemenu] #NL --- 21,27 ---- #BEGIN command "2. Opciones de la línea de comandos" ! xpaint [-canvas] [-screenshot] [-magnifier] [-nowarn] #NL [-menubar] [-nomenubar] [-fullmenu] [-simplemenu] #NL *************** *** 77,83 **** #NL -canvas abrir un lienzo blanco al inicio #NL ! -snapshot abrir xpaint sin interfaz, en modo captura de pantalla #NL -magnifier abrir xpaint sin interfaz, en modo lupa #NL --- 77,83 ---- #NL -canvas abrir un lienzo blanco al inicio #NL ! -screenshot abrir xpaint sin interfaz, en modo captura de pantalla #NL -magnifier abrir xpaint sin interfaz, en modo lupa #NL diff -rc xpaint-2.8.19/share/help/Help_fr xpaint-2.8.19.1/share/help/Help_fr *** xpaint-2.8.19/share/help/Help_fr 2010-03-06 23:13:02.000000000 +0100 --- xpaint-2.8.19.1/share/help/Help_fr 2010-04-07 07:40:40.000000000 +0200 *************** *** 68,74 **** etc...) seront ignorés et donc perdus au moment de la sauvegarde. #BEGIN command "2. Options de la ligne de commande" ! xpaint [-canvas] [-snapshot] [-magnifier] [-nowarn] #NL [-menubar] [-nomenubar] [-fullmenu] [-simplemenu] #NL --- 68,74 ---- etc...) seront ignorés et donc perdus au moment de la sauvegarde. #BEGIN command "2. Options de la ligne de commande" ! xpaint [-canvas] [-screenshot] [-magnifier] [-nowarn] #NL [-menubar] [-nomenubar] [-fullmenu] [-simplemenu] #NL *************** *** 124,130 **** #NL -canvas ouvrir un canevas vierge au démarrage #NL ! -snapshot ouvrir xpaint sans interface, en mode capture d'écran #NL -magnifier ouvrir xpaint en mode loupe grossissante #NL --- 124,130 ---- #NL -canvas ouvrir un canevas vierge au démarrage #NL ! -screenshot ouvrir xpaint sans interface, en mode capture d'écran #NL -magnifier ouvrir xpaint en mode loupe grossissante #NL diff -rc xpaint-2.8.19/xpaint.man xpaint-2.8.19.1/xpaint.man *** xpaint-2.8.19/xpaint.man 2010-04-05 18:30:09.000000000 +0200 --- xpaint-2.8.19.1/xpaint.man 2010-04-07 07:43:29.000000000 +0200 *************** *** 18,24 **** .br [\ \-canvas\ ] [\ \-fullpopup\ ] [\ \-simplepopup\ ] [\ \-nomenubar\ ] .br ! [\ \-snapshot\ ] [\ \-nowarn\ ] [\ \-astext\ ] [ .RI \-undosize " VALUE" ] .br --- 18,24 ---- .br [\ \-canvas\ ] [\ \-fullpopup\ ] [\ \-simplepopup\ ] [\ \-nomenubar\ ] .br ! [\ \-screenshot\ ] [\ \-nowarn\ ] [\ \-astext\ ] [ .RI \-undosize " VALUE" ] .br *************** *** 207,214 **** .B \-nomenubar Do not show menu bar on top of canvas windows. .TP 1i ! .B \-snapshot ! Operate xpaint in snapshot mode from start-up. .TP 1i .B \-operation " NUMBER" Start with operation <NUMBER> set in tool panel. --- 207,214 ---- .B \-nomenubar Do not show menu bar on top of canvas windows. .TP 1i ! .B \-screenshot ! Operate xpaint in screenshot mode from start-up. .TP 1i .B \-operation " NUMBER" Start with operation <NUMBER> set in tool panel. diff -rc xpaint-2.8.19/xpaint.man.in xpaint-2.8.19.1/xpaint.man.in *** xpaint-2.8.19/xpaint.man.in 2010-04-05 18:29:09.000000000 +0200 --- xpaint-2.8.19.1/xpaint.man.in 2010-04-07 07:38:06.000000000 +0200 *************** *** 18,24 **** .br [\ \-canvas\ ] [\ \-fullpopup\ ] [\ \-simplepopup\ ] [\ \-nomenubar\ ] .br ! [\ \-snapshot\ ] [\ \-nowarn\ ] [\ \-astext\ ] [ .RI \-undosize " VALUE" ] .br --- 18,24 ---- .br [\ \-canvas\ ] [\ \-fullpopup\ ] [\ \-simplepopup\ ] [\ \-nomenubar\ ] .br ! [\ \-screenshot\ ] [\ \-nowarn\ ] [\ \-astext\ ] [ .RI \-undosize " VALUE" ] .br *************** *** 207,214 **** .B \-nomenubar Do not show menu bar on top of canvas windows. .TP 1i ! .B \-snapshot ! Operate xpaint in snapshot mode from start-up. .TP 1i .B \-operation " NUMBER" Start with operation <NUMBER> set in tool panel. --- 207,214 ---- .B \-nomenubar Do not show menu bar on top of canvas windows. .TP 1i ! .B \-screenshot ! Operate xpaint in screenshot mode from start-up. .TP 1i .B \-operation " NUMBER" Start with operation <NUMBER> set in tool panel.