From 2748a88bbd292061b2df34fd636bdaf88330af24 Mon Sep 17 00:00:00 2001 From: Allan Rae Date: Tue, 28 Nov 2000 06:46:06 +0000 Subject: [PATCH] Angus's 23rd November patch git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@1242 a592a061-630c-0410-9148-cb99ea01b6c8 --- ChangeLog | 66 ++- forms/bibforms.fd | 2 +- forms/lyx_sendfax.fd | 442 ------------------- forms/makefile | 14 +- forms/ref.fd | 196 -------- po/POTFILES.in | 29 +- src/LaTeXLog.C | 4 +- src/LyXAction.C | 2 +- src/LyXView.C | 3 +- src/bufferparams.C | 5 +- src/credits.C | 3 +- src/filedlg.C | 16 + src/filedlg.h | 15 +- src/frontends/xforms/FormBase.h | 4 +- src/frontends/xforms/FormCitation.C | 11 +- src/frontends/xforms/FormCopyright.C | 20 + src/frontends/xforms/FormDocument.C | 2 +- src/frontends/xforms/FormError.C | 6 +- src/frontends/xforms/FormGraphics.C | 21 +- src/frontends/xforms/FormIndex.C | 34 +- src/frontends/xforms/FormParagraph.C | 2 +- src/frontends/xforms/FormPreferences.C | 26 +- src/frontends/xforms/FormPrint.C | 2 +- src/frontends/xforms/FormRef.C | 4 +- src/frontends/xforms/FormTabularCreate.C | 9 +- src/frontends/xforms/FormTabularCreate.h | 2 + src/frontends/xforms/FormToc.C | 37 +- src/frontends/xforms/FormToc.h | 4 +- src/frontends/xforms/FormUrl.C | 35 +- src/frontends/xforms/form_citation.C | 8 +- src/frontends/xforms/form_citation.h | 4 +- src/frontends/xforms/form_copyright.C | 15 +- src/frontends/xforms/form_copyright.h | 5 +- src/frontends/xforms/form_error.C | 2 +- src/frontends/xforms/form_error.h | 1 + src/frontends/xforms/form_graphics.C | 20 +- src/frontends/xforms/form_graphics.h | 8 +- src/frontends/xforms/form_index.C | 19 +- src/frontends/xforms/form_index.h | 11 +- src/frontends/xforms/form_toc.C | 22 +- src/frontends/xforms/form_toc.h | 8 +- src/frontends/xforms/form_url.C | 28 +- src/frontends/xforms/form_url.h | 5 + src/frontends/xforms/forms/form_citation.fd | 36 +- src/frontends/xforms/forms/form_copyright.fd | 48 +- src/frontends/xforms/forms/form_error.fd | 2 +- src/frontends/xforms/forms/form_graphics.fd | 128 +++--- src/frontends/xforms/forms/form_index.fd | 60 ++- src/frontends/xforms/forms/form_toc.fd | 48 +- src/frontends/xforms/forms/form_url.fd | 66 ++- src/insets/Makefile.am | 2 - src/insets/figinset.C | 14 + src/insets/figinset.h | 13 +- src/insets/form_graphics.C | 111 ----- src/insets/form_graphics.h | 32 -- src/insets/insetexternal.C | 14 + src/insets/insetexternal.h | 15 +- src/intl.C | 14 + src/intl.h | 12 +- src/lyx_gui_misc.C | 60 ++- src/lyx_gui_misc.h | 4 + src/lyxfr0.C | 16 +- src/lyxfr0.h | 13 +- src/spellchecker.C | 3 +- 64 files changed, 775 insertions(+), 1108 deletions(-) delete mode 100644 forms/lyx_sendfax.fd delete mode 100644 forms/ref.fd delete mode 100644 src/insets/form_graphics.C delete mode 100644 src/insets/form_graphics.h diff --git a/ChangeLog b/ChangeLog index 9c9e6976b7..58e28e48a2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,63 @@ +2000-11-23 Angus Leeming + + * forms/bibforms.fd: tiny fix to get it to run with fdesign. + + * forms/makefile: added bibforms.fd, include_form.fd. + Removed lyx_sendfax.fd. + + * src/LaTeXLog.C (ShowLatexLog): + * src/LyXAction.C (init): + * src/bufferparams.C (readLanguage): altered messages as suggested by + John Levon. + + * src/LyXView.C (c-tor): connected RedrawAllBufferRelatedDialogs() to + Dialogs::redrawGUI. + + * src/credits.C: made fd_form_credits non-static, so that it can be + redrawn should the xforms colors be re-mapped. + * src/spellchecker.C ditto fd_form_spell_options. + + * src/filedlg.[Ch] (redraw): + * src/intl.[Ch] (redraw): + * src/lyxfr0.[Ch] (redraw): + * src/insets/figinset.[Ch] (redraw): + * src/insets/insetexternal.[Ch] (redraw): + new methods, connected to Dialogs::redrawGUI. + + * src/lyx_gui_misc.[Ch] (RedrawAllBufferRelatedDialogs): new function + to be connected to Dialogs::redrawGUI. + + * src/frontends/xforms/FormCitation.C (build): + * src/frontends/xforms/FormCopyright.C (build): + * src/frontends/xforms/FormError.C (build): + * src/frontends/xforms/FormGraphics.C (build): + * src/frontends/xforms/FormIndex.C (build): + * src/frontends/xforms/FormTabularCreate.[Ch] (update): + * src/frontends/xforms/FormToc.C (build): + * src/frontends/xforms/FormUrl.C (build): + use the ButtonController correctly. + + * src/frontends/xforms/FormCopyright.C (build): + * src/frontends/xforms/forms/form_copyright.fd: moved the text out of + the .fd file and into build(). + + * src/frontends/xforms/FormPreferences.C: tiny clean-up. + + * src/frontends/xforms/FormToc.[Ch]: Don't use apply(). Use input(). + + * src/frontends/xforms/forms/form_citation.fd: + * src/frontends/xforms/forms/form_copyright.fd: + * src/frontends/xforms/forms/form_error.fd: + * src/frontends/xforms/forms/form_graphics.fd: + * src/frontends/xforms/forms/form_index.fd: + * src/frontends/xforms/forms/form_toc.fd: + * src/frontends/xforms/forms/form_url.fd: + renamed some of the objects. Named others explicitly for the first time. + Added Restore and Apply buttons where appropriate. + + * src/insets/Makefile.am: removed form_graphics.[Ch] as they are not + used. + 2000-11-22 Lars Gullik Bjønnes * src/version.h: try the pre2 again @@ -38,14 +98,14 @@ * src/LColor.C (init): * src/lyxrc.C (getDescription): changed some comments as suggested by - Rob Lahaye. + John Levon. * src/frontends/xforms/FormBase.[Ch]: modified to connect and disconnect the redrawGUI signal in best-practice fashion. * src/frontends/xforms/FormPreferences.[Ch]: renamed usage_tab_ as long_opts_tab to reflect the change in name of this tabfolder, as - suggested by Rob Lahaye. + suggested by John Levon. (connect, disconnect): new methods. Don't do much at present other than ensuring that we can't resize the dialog. This just makes xforms go crazy. @@ -59,7 +119,7 @@ * src/frontends/xforms/forms/fdfix.sh: a little speed up fix. * src/frontends/xforms/forms/form_preferences.fd: used normal counters - rather than simple counters, following suggestion by Rob Lahaye. + rather than simple counters, following suggestion by John Levon. * src/frontends/xforms/forms/form_print.fd: used labelframe rather than engraved frame + text. diff --git a/forms/bibforms.fd b/forms/bibforms.fd index 289c592d3e..81e0a9931b 100644 --- a/forms/bibforms.fd +++ b/forms/bibforms.fd @@ -3,7 +3,7 @@ Magic: 13000 Internal Form Definition File (do not change) -Number of forms: 2 +Number of forms: 1 Unit of measure: FL_COORD_PIXEL =============== FORM =============== diff --git a/forms/lyx_sendfax.fd b/forms/lyx_sendfax.fd deleted file mode 100644 index 81797f9bfc..0000000000 --- a/forms/lyx_sendfax.fd +++ /dev/null @@ -1,442 +0,0 @@ -Magic: 13000 - -Internal Form Definition File - (do not change) - -Number of forms: 3 -Unit of measure: FL_COORD_PIXEL - -=============== FORM =============== -Name: xsendfax -Width: 600 -Height: 330 -Number of Objects: 18 - --------------------- -class: FL_BOX -type: UP_BOX -box: 0 0 600 330 -boxtype: FL_UP_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_DEFAULT_SIZE -lcol: FL_BLACK -label: -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: -callback: -argument: - --------------------- -class: FL_FRAME -type: ENGRAVED_FRAME -box: 10 15 465 125 -boxtype: FL_NO_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_DEFAULT_SIZE -lcol: FL_BLACK -label: -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: -callback: -argument: - --------------------- -class: FL_INPUT -type: NORMAL_INPUT -box: 90 30 377 30 -boxtype: FL_DOWN_BOX -colors: FL_COL1 FL_MCOL -alignment: FL_ALIGN_LEFT -style: FL_NORMAL_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: Fax no.:|#F -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: Input_Phone -callback: -argument: - --------------------- -class: FL_INPUT -type: NORMAL_INPUT -box: 90 65 377 29 -boxtype: FL_DOWN_BOX -colors: FL_COL1 FL_MCOL -alignment: FL_ALIGN_LEFT -style: FL_NORMAL_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: Dest. Name:|#N -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: Input_Name -callback: -argument: - --------------------- -class: FL_INPUT -type: NORMAL_INPUT -box: 90 100 377 29 -boxtype: FL_DOWN_BOX -colors: FL_COL1 FL_MCOL -alignment: FL_ALIGN_LEFT -style: FL_NORMAL_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: Enterprise:|#E -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: Input_Enterprise -callback: -argument: - --------------------- -class: FL_INPUT -type: MULTILINE_INPUT -box: 15 165 575 106 -boxtype: FL_DOWN_BOX -colors: FL_COL1 FL_MCOL -alignment: FL_ALIGN_TOP_LEFT -style: FL_NORMAL_STYLE+FL_EMBOSSED_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: Input_Comment -callback: -argument: - --------------------- -class: FL_BUTTON -type: NORMAL_BUTTON -box: 20 290 180 30 -boxtype: FL_UP_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_CENTER -style: FL_BOLD_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: OK|#O -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: Button_Send -callback: FaxSendCB -argument: 0 - --------------------- -class: FL_BUTTON -type: NORMAL_BUTTON -box: 400 290 180 30 -boxtype: FL_UP_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_CENTER -style: FL_BOLD_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: Cancel|^[ -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: Button_Cancel -callback: FaxCancelCB -argument: 0 - --------------------- -class: FL_BUTTON -type: NORMAL_BUTTON -box: 210 290 180 30 -boxtype: FL_UP_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_CENTER -style: FL_BOLD_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: Apply|#A -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: Button_Apply -callback: FaxApplyCB -argument: 0 - --------------------- -class: FL_FRAME -type: ENGRAVED_FRAME -box: 485 30 105 100 -boxtype: FL_NO_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_DEFAULT_SIZE -lcol: FL_BLACK -label: -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: -callback: -argument: - --------------------- -class: FL_TEXT -type: NORMAL_TEXT -box: 490 20 95 20 -boxtype: FL_FLAT_BOX -colors: FL_COL1 FL_MCOL -alignment: FL_ALIGN_LEFT|FL_ALIGN_INSIDE -style: FL_BOLD_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: Phone Book -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: -callback: -argument: - --------------------- -class: FL_BUTTON -type: NORMAL_BUTTON -box: 490 45 15 15 -boxtype: FL_UP_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_RIGHT -style: FL_NORMAL_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: Select from|#S -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: Button_SPhone -callback: FaxOpenPhonebookCB -argument: 0 - --------------------- -class: FL_BUTTON -type: NORMAL_BUTTON -box: 490 65 15 15 -boxtype: FL_UP_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_RIGHT -style: FL_NORMAL_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: Add to|#t -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: -callback: cb_add_phoneno -argument: 0 - --------------------- -class: FL_BUTTON -type: NORMAL_BUTTON -box: 490 85 15 15 -boxtype: FL_UP_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_RIGHT -style: FL_NORMAL_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: Delete from|#D -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: -callback: cb_delete_phoneno -argument: 0 - --------------------- -class: FL_BUTTON -type: NORMAL_BUTTON -box: 490 105 15 15 -boxtype: FL_UP_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_RIGHT -style: FL_NORMAL_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: Save|#V -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: pb_save -callback: cb_save_phoneno -argument: 0 - --------------------- -class: FL_TEXT -type: NORMAL_TEXT -box: 15 5 100 20 -boxtype: FL_FLAT_BOX -colors: FL_COL1 FL_MCOL -alignment: FL_ALIGN_LEFT|FL_ALIGN_INSIDE -style: FL_BOLD_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: Destination: -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: -callback: -argument: - --------------------- -class: FL_FRAME -type: ENGRAVED_FRAME -box: 10 155 585 125 -boxtype: FL_NO_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_DEFAULT_SIZE -lcol: FL_BLACK -label: -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: -callback: -argument: - --------------------- -class: FL_TEXT -type: NORMAL_TEXT -box: 15 145 85 20 -boxtype: FL_FLAT_BOX -colors: FL_COL1 FL_MCOL -alignment: FL_ALIGN_LEFT|FL_ALIGN_INSIDE -style: FL_BOLD_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: Comment: -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: -callback: -argument: - -=============== FORM =============== -Name: phonebook -Width: 600 -Height: 320 -Number of Objects: 2 - --------------------- -class: FL_BOX -type: UP_BOX -box: 0 0 600 320 -boxtype: FL_UP_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_DEFAULT_SIZE -lcol: FL_BLACK -label: -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: -callback: -argument: - --------------------- -class: FL_BROWSER -type: HOLD_BROWSER -box: 2 2 598 318 -boxtype: FL_DOWN_BOX -colors: FL_COL1 FL_YELLOW -alignment: FL_ALIGN_BOTTOM -style: FL_NORMAL_STYLE -size: FL_MEDIUM_SIZE -lcol: FL_BLACK -label: -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: browser -callback: cb_select_phoneno -argument: 0 - -=============== FORM =============== -Name: logfile -Width: 510 -Height: 190 -Number of Objects: 3 - --------------------- -class: FL_BOX -type: UP_BOX -box: 0 0 510 190 -boxtype: FL_UP_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_DEFAULT_SIZE -lcol: FL_BLACK -label: -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: -callback: -argument: - --------------------- -class: FL_BROWSER -type: NORMAL_BROWSER -box: 10 10 490 130 -boxtype: FL_DOWN_BOX -colors: FL_COL1 FL_YELLOW -alignment: FL_ALIGN_BOTTOM -style: FL_NORMAL_STYLE -size: FL_DEFAULT_SIZE -lcol: FL_BLACK -label: -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: browser -callback: -argument: - --------------------- -class: FL_BUTTON -type: RETURN_BUTTON -box: 410 150 90 30 -boxtype: FL_UP_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: Close -shortcut: ^M -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: Button_Close -callback: FaxLogfileCloseCB -argument: 0 - -============================== -create_the_forms diff --git a/forms/makefile b/forms/makefile index 52ba88a9ba..bd183cc5e3 100644 --- a/forms/makefile +++ b/forms/makefile @@ -17,16 +17,16 @@ SHELL = /bin/sh # Various commands FDESIGN = fdesign -SRCS = credits_form.fd form1.fd \ - log_form.fd layout_forms.fd lyx.fd lyx_sendfax.fd math_forms.fd \ +SRCS = bibforms.fd credits_form.fd form1.fd include_form.fd \ + log_form.fd layout_forms.fd lyx.fd math_forms.fd \ print_form.fd sp_form.fd -OBJS = credits_form.c form1.c \ - log_form.c layout_forms.c lyx.c lyx_sendfax.c math_forms.c \ +OBJS = bibforms.c credits_form.c form1.c include_form.c \ + log_form.c layout_forms.c lyx.c math_forms.c \ print_form.c sp_form.c -COBJS = credits_form.C form1.C \ - log_form.C layout_forms.C lyx.C lyx_sendfax.C math_forms.C \ +COBJS = bibforms.C credits_form.C form1.C include_form.C \ + log_form.C layout_forms.C lyx.C math_forms.C \ print_form.C sp_form.C all: @@ -52,7 +52,7 @@ e: c for hfil in *.h ; do \ if [ -f "$$hfil.patch" ] ; then \ (echo "Patching $$hfil with $$hfil.patch" ; \ - patch --verbose $$hfil < $$hfil.patch) \ + patch $$hfil < $$hfil.patch) \ fi; \ sed < $$hfil > $$hfil.tmp \ -e 's/\(extern\) \(void.*FL_OBJECT\)/\1 "C" \2/' \ diff --git a/forms/ref.fd b/forms/ref.fd deleted file mode 100644 index f9d8aee4ec..0000000000 --- a/forms/ref.fd +++ /dev/null @@ -1,196 +0,0 @@ -Magic: 13000 - -Internal Form Definition File - (do not change) - -Number of forms: 1 -Unit of measure: FL_COORD_PIXEL - -=============== FORM =============== -Name: ref -Width: 210 -Height: 170 -Number of Objects: 10 - --------------------- -class: FL_BOX -type: UP_BOX -box: 0 0 210 170 -boxtype: FL_UP_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_DEFAULT_SIZE -lcol: FL_BLACK -label: -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: -callback: -argument: - --------------------- -class: FL_FRAME -type: ENGRAVED_FRAME -box: 10 20 130 60 -boxtype: FL_NO_BOX -colors: FL_BLACK FL_COL1 -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_DEFAULT_SIZE -lcol: FL_BLACK -label: -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: -callback: -argument: - --------------------- -class: FL_BUTTON -type: RETURN_BUTTON -box: 120 130 80 30 -boxtype: FL_UP_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: Close -shortcut: ^M -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: -callback: label_close_cb -argument: 0 - --------------------- -class: FL_TEXT -type: NORMAL_TEXT -box: 20 10 110 20 -boxtype: FL_FLAT_BOX -colors: FL_COL1 FL_MCOL -alignment: FL_ALIGN_LEFT|FL_ALIGN_INSIDE -style: FL_NORMAL_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: Reference Type|#R -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: -callback: -argument: - --------------------- -class: FL_BUTTON -type: NORMAL_BUTTON -box: 10 130 100 30 -boxtype: FL_UP_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: Goto Label|#G -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: -callback: goto_label_cb -argument: 0 - --------------------- -class: FL_BUTTON -type: NORMAL_BUTTON -box: 10 90 100 30 -boxtype: FL_UP_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: Change Label|#C -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: -callback: label_change_cb -argument: 0 - --------------------- -class: FL_BEGIN_GROUP -type: 0 -box: 0 0 0 0 -boxtype: FL_NO_BOX -colors: FL_COL1 FL_MCOL -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_DEFAULT_SIZE -lcol: FL_BLACK -label: -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: pg_grp -callback: -argument: - --------------------- -class: FL_CHECKBUTTON -type: RADIO_BUTTON -box: 20 30 20 20 -boxtype: FL_NO_BOX -colors: FL_COL1 FL_YELLOW -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: Page Number|#P -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: flag1 -callback: -argument: - --------------------- -class: FL_CHECKBUTTON -type: RADIO_BUTTON -box: 20 50 20 20 -boxtype: FL_NO_BOX -colors: FL_COL1 FL_YELLOW -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: Reference|#R -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: flag2 -callback: -argument: - --------------------- -class: FL_END_GROUP -type: 0 -box: 0 0 0 0 -boxtype: FL_NO_BOX -colors: FL_COL1 FL_MCOL -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_DEFAULT_SIZE -lcol: FL_BLACK -label: -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: -callback: -argument: - -============================== -create_the_forms diff --git a/po/POTFILES.in b/po/POTFILES.in index 812e6b7e0a..68c1756219 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -48,41 +48,40 @@ src/frontends/kde/refdlg.C src/frontends/kde/tocdlg.C src/frontends/kde/urldlg.C src/frontends/xforms/FormBase.h -src/frontends/xforms/form_citation.C src/frontends/xforms/FormCitation.C -src/frontends/xforms/form_copyright.C +src/frontends/xforms/form_citation.C src/frontends/xforms/FormCopyright.C -src/frontends/xforms/form_document.C +src/frontends/xforms/form_copyright.C src/frontends/xforms/FormDocument.C -src/frontends/xforms/form_error.C +src/frontends/xforms/form_document.C src/frontends/xforms/FormError.C -src/frontends/xforms/form_graphics.C +src/frontends/xforms/form_error.C src/frontends/xforms/FormGraphics.C -src/frontends/xforms/form_index.C +src/frontends/xforms/form_graphics.C src/frontends/xforms/FormIndex.C +src/frontends/xforms/form_index.C src/frontends/xforms/FormInset.h -src/frontends/xforms/form_paragraph.C src/frontends/xforms/FormParagraph.C -src/frontends/xforms/form_preferences.C +src/frontends/xforms/form_paragraph.C src/frontends/xforms/FormPreferences.C -src/frontends/xforms/form_print.C +src/frontends/xforms/form_preferences.C src/frontends/xforms/FormPrint.C -src/frontends/xforms/form_ref.C +src/frontends/xforms/form_print.C src/frontends/xforms/FormRef.C -src/frontends/xforms/form_tabular.C +src/frontends/xforms/form_ref.C src/frontends/xforms/FormTabular.C -src/frontends/xforms/form_tabular_create.C +src/frontends/xforms/form_tabular.C src/frontends/xforms/FormTabularCreate.C -src/frontends/xforms/form_toc.C +src/frontends/xforms/form_tabular_create.C src/frontends/xforms/FormToc.C -src/frontends/xforms/form_url.C +src/frontends/xforms/form_toc.C src/frontends/xforms/FormUrl.C +src/frontends/xforms/form_url.C src/frontends/xforms/Menubar_pimpl.C src/frontends/xforms/xform_helpers.C src/gettext.h src/importer.C src/insets/figinset.C -src/insets/form_graphics.C src/insets/insetbib.C src/insets/inset.C src/insets/inseterror.C diff --git a/src/LaTeXLog.C b/src/LaTeXLog.C index f53b6719a5..349498dcf2 100644 --- a/src/LaTeXLog.C +++ b/src/LaTeXLog.C @@ -41,10 +41,10 @@ void ShowLatexLog() if (!fl_load_browser(fd_latex_log->browser_latexlog, use_build ? bname.c_str() : fname.c_str())) fl_add_browser_line(fd_latex_log->browser_latexlog, - _("Unable to show log file!")); + _("No LaTeX log file found")); } else { fl_add_browser_line(fd_latex_log->browser_latexlog, - _("NO LATEX LOG FILE!")); + _("No LaTeX log file found")); } if (fd_latex_log->LaTeXLog->visible) { fl_raise_form(fd_latex_log->LaTeXLog); diff --git a/src/LyXAction.C b/src/LyXAction.C index 0223d7b3f1..31e60716b4 100644 --- a/src/LyXAction.C +++ b/src/LyXAction.C @@ -385,7 +385,7 @@ void LyXAction::init() { LFUN_TAB, "tab-forward", "", Noop }, { LFUN_TABINSERT, "tab-insert", "", Noop }, { LFUN_DIALOG_TABULAR_INSERT, "dialog-tabular-insert", - N_("Open Insert Tabular Dialog"), Noop }, + N_("Insert Table"), Noop }, { LFUN_TABULAR_FEATURE, "tabular-feature", N_("Tabular Features"), Noop }, { LFUN_INSET_TABULAR, "tabular-insert", diff --git a/src/LyXView.C b/src/LyXView.C index f99b062e50..b50eedee81 100644 --- a/src/LyXView.C +++ b/src/LyXView.C @@ -37,7 +37,7 @@ #include "frontends/Menubar.h" #include "MenuBackend.h" #include "ToolbarDefaults.h" -#include "lyx_gui_misc.h" // [update,Close]AllBufferRelatedDialogs +#include "lyx_gui_misc.h" // [update,Close,Redraw]AllBufferRelatedDialogs #include "bufferview_funcs.h" // CurrentState() using std::endl; @@ -75,6 +75,7 @@ LyXView::LyXView(int width, int height) dialogs_->hideBufferDependent .connect(slot(&CloseAllBufferRelatedDialogs)); Dialogs::redrawGUI.connect(slot(this, &LyXView::redraw)); + Dialogs::redrawGUI.connect(slot(&RedrawAllBufferRelatedDialogs)); } diff --git a/src/bufferparams.C b/src/bufferparams.C index a1dbd7579a..0206ec3f9c 100644 --- a/src/bufferparams.C +++ b/src/bufferparams.C @@ -205,9 +205,8 @@ void BufferParams::readLanguage(LyXLex & lex) if (!language) { // Language tmptok was not found language = default_language; - lyxerr << "Warning: language `" - << tmptok << "' not recognized!\n" - << " Setting language to `" << language->lang() + lyxerr << "Warning: Setting language `" + << tmptok << "' to `" << language->lang() << "'." << endl; } } diff --git a/src/credits.C b/src/credits.C index 0bbb361a95..ebd1f700ce 100644 --- a/src/credits.C +++ b/src/credits.C @@ -25,7 +25,8 @@ extern string system_lyxdir; /**** Forms and Objects ****/ -static FD_form_credits *fd_form_credits = 0; +// Non-static so that it can be redrawn if the xforms colors are re-mapped +FD_form_credits *fd_form_credits = 0; void CreditsOKCB(FL_OBJECT *, long) { fl_hide_form(fd_form_credits->form_credits); diff --git a/src/filedlg.C b/src/filedlg.C index 2240d9db56..d1b1ea22a7 100644 --- a/src/filedlg.C +++ b/src/filedlg.C @@ -27,6 +27,7 @@ using std::sort; #include "support/FileInfo.h" #include "support/lyxlib.h" #include "gettext.h" +#include "frontends/Dialogs.h" #ifdef HAVE_ERRNO_H #include @@ -409,6 +410,21 @@ LyXFileDlg::LyXFileDlg() } fl_hide_object(pFileDlgForm->User1); fl_hide_object(pFileDlgForm->User2); + + r_ = Dialogs::redrawGUI.connect(SigC::slot(this, &LyXFileDlg::redraw)); +} + + +LyXFileDlg::~LyXFileDlg() +{ + r_.disconnect(); +} + + +void LyXFileDlg::redraw() +{ + if (pFileDlgForm->FileDlg && pFileDlgForm->FileDlg->visible) + fl_redraw_form(pFileDlgForm->FileDlg); } diff --git a/src/filedlg.h b/src/filedlg.h index e51547fb65..289e7cb290 100644 --- a/src/filedlg.h +++ b/src/filedlg.h @@ -17,11 +17,16 @@ #endif #include +#include #include "LString.h" #include FORMS_H_LOCATION #include "form1.h" +#ifdef SIGC_CXX_NAMESPACES +using SigC::Object; +#endif + /// LyXDirEntry internal structure definition class LyXDirEntry { public: @@ -35,11 +40,13 @@ public: /// FileDlg class definition -class LyXFileDlg +class LyXFileDlg : public Object { public: /// LyXFileDlg(); + /// + ~LyXFileDlg(); /// sets file selector user button action void SetButton(int iIndex, string const & pszName = string(), @@ -89,6 +96,10 @@ private: /// bool force_ok; + /** Redraw the form (on receipt of a Signal indicating, for example, + that the xform colors have been re-mapped). + */ + void redraw(); /// updates dialog list to match class directory void Reread(); /// sets dialog current directory @@ -107,6 +118,8 @@ private: bool HandleOK(); /// Simulates a click on OK/Cancel void Force(bool); + /// Redraw connection. + SigC::Connection r_; }; #endif diff --git a/src/frontends/xforms/FormBase.h b/src/frontends/xforms/FormBase.h index 4b46673d07..8308f4bc08 100644 --- a/src/frontends/xforms/FormBase.h +++ b/src/frontends/xforms/FormBase.h @@ -18,7 +18,7 @@ #include FORMS_H_LOCATION #include "ButtonController.h" #include "gettext.h" -#include // temporary +#include class Buffer; class Dialogs; @@ -57,7 +57,7 @@ protected: // methods virtual ~FormBase(); /** Redraw the form (on receipt of a Signal indicating, for example, - that the xform colours have been re-mapped). + that the xform colors have been re-mapped). Must be virtual because dialogs with tabbed folders will need to redraw the form for each tab. */ diff --git a/src/frontends/xforms/FormCitation.C b/src/frontends/xforms/FormCitation.C index 8cdcfac7e6..be032e8b08 100644 --- a/src/frontends/xforms/FormCitation.C +++ b/src/frontends/xforms/FormCitation.C @@ -82,12 +82,19 @@ void FormCitation::build() minw_ = form()->w; minh_ = form()->h; - // manage the ok, apply and cancel/close buttons + // Manage the ok, apply, restore and cancel/close buttons bc_.setOK(dialog_->button_ok); bc_.setApply(dialog_->button_apply); bc_.setCancel(dialog_->button_cancel); bc_.setUndoAll(dialog_->button_restore); bc_.refresh(); + + bc_.addReadOnly(dialog_->addBtn); + bc_.addReadOnly(dialog_->delBtn); + bc_.addReadOnly(dialog_->upBtn); + bc_.addReadOnly(dialog_->downBtn); + bc_.addReadOnly(dialog_->textBefore); + bc_.addReadOnly(dialog_->textAftr); } @@ -132,6 +139,8 @@ void FormCitation::update() setSize( size, bibPresent ); fl_set_input( dialog_->textAftr, params.getOptions().c_str()); + + bc_.readOnly(lv_->buffer()->isReadonly()); } diff --git a/src/frontends/xforms/FormCopyright.C b/src/frontends/xforms/FormCopyright.C index 78ca9c0252..067ffd170f 100644 --- a/src/frontends/xforms/FormCopyright.C +++ b/src/frontends/xforms/FormCopyright.C @@ -14,6 +14,7 @@ #include "LyXView.h" #include "form_copyright.h" #include "FormCopyright.h" +#include "xform_helpers.h" FormCopyright::FormCopyright( LyXView * lv, Dialogs * d ) : FormBaseBI(lv, d, _("Copyright and Warranty"), @@ -47,4 +48,23 @@ void FormCopyright::build() // Workaround dumb xforms sizing bug minw_ = form()->w; minh_ = form()->h; + + string str = N_("LyX is Copyright (C) 1995 by Matthias Ettrich, 1995-2000 LyX Team"); + str = formatted(str, dialog_->text_copyright->w-10, + FL_NORMAL_SIZE, FL_NORMAL_STYLE); + fl_set_object_label(dialog_->text_copyright, str.c_str()); + + str = N_("This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version."); + str = formatted(str, dialog_->text_licence->w-10, + FL_NORMAL_SIZE, FL_NORMAL_STYLE); + fl_set_object_label(dialog_->text_licence, str.c_str()); + + str = N_("LyX is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA."); + str = formatted(str, dialog_->text_disclaimer->w-10, + FL_NORMAL_SIZE, FL_NORMAL_STYLE); + fl_set_object_label(dialog_->text_disclaimer, str.c_str()); + + // Manage the cancel/close button + bc_.setCancel(dialog_->button_cancel); + bc_.refresh(); } diff --git a/src/frontends/xforms/FormDocument.C b/src/frontends/xforms/FormDocument.C index 62591159cb..eab1a51c67 100644 --- a/src/frontends/xforms/FormDocument.C +++ b/src/frontends/xforms/FormDocument.C @@ -100,7 +100,7 @@ void FormDocument::build() // the tabbed folder dialog_ = build_tabbed_document(); - // manage the restore, ok, apply and cancel/close buttons + // Manage the restore, ok, apply, restore and cancel/close buttons bc_.setOK(dialog_->button_ok); bc_.setApply(dialog_->button_apply); bc_.setCancel(dialog_->button_cancel); diff --git a/src/frontends/xforms/FormError.C b/src/frontends/xforms/FormError.C index afd6c0b52b..23be1cf4ca 100644 --- a/src/frontends/xforms/FormError.C +++ b/src/frontends/xforms/FormError.C @@ -23,7 +23,7 @@ FormError::FormError(LyXView * lv, Dialogs * d) - : FormInset( lv, d, _("LaTeX Error"), new IgnorantPolicy), + : FormInset( lv, d, _("LaTeX Error"), new OkApplyCancelPolicy), dialog_(0), inset_(0) { Assert(lv && d); @@ -83,4 +83,8 @@ void FormError::build() // Workaround dumb xforms sizing bug minw_ = form()->w; minh_ = form()->h; + + // Manage the cancel/close button + bc_.setCancel(dialog_->button_cancel); + bc_.refresh(); } diff --git a/src/frontends/xforms/FormGraphics.C b/src/frontends/xforms/FormGraphics.C index dddcaff26d..fb8e4ec841 100644 --- a/src/frontends/xforms/FormGraphics.C +++ b/src/frontends/xforms/FormGraphics.C @@ -40,7 +40,7 @@ using std::endl; FormGraphics::FormGraphics(LyXView * lv, Dialogs * d) - : FormInset(lv, d, _("Graphics"), new NoRepeatedApplyReadOnlyPolicy), + : FormInset(lv, d, _("Graphics"), new OkApplyCancelReadOnlyPolicy), dialog_(0), inset_(0), // The buttons c-tor values are the number of buttons we use // This is only to reduce memory waste. @@ -142,12 +142,24 @@ void FormGraphics::build() displayButtons.registerRadioButton(dialog_->radio_no_display, InsetGraphicsParams::NONE); - // manage the ok, apply and cancel/close buttons + // Manage the ok, apply, restore and cancel/close buttons bc_.setOK(dialog_->button_ok); bc_.setApply(dialog_->button_apply); bc_.setCancel(dialog_->button_cancel); - bc_.setUndoAll(0); + bc_.setUndoAll(dialog_->button_restore); bc_.refresh(); + + bc_.addReadOnly(dialog_->input_filename); + bc_.addReadOnly(dialog_->button_browse); + bc_.addReadOnly(dialog_->input_width); + bc_.addReadOnly(dialog_->input_height); + bc_.addReadOnly(dialog_->radio_button_group_width); + bc_.addReadOnly(dialog_->radio_button_group_height); + bc_.addReadOnly(dialog_->radio_button_group_display); + bc_.addReadOnly(dialog_->input_rotate_angle); + bc_.addReadOnly(dialog_->check_inline); + bc_.addReadOnly(dialog_->input_subcaption); + bc_.addReadOnly(dialog_->check_subcaption); } @@ -260,6 +272,9 @@ void FormGraphics::update() fl_set_button(dialog_->check_inline, igp.inlineFigure); + // update the dialog's read only / read-write status + bc_.readOnly(lv_->buffer()->isReadonly()); + // Now make sure that the buttons are set correctly. input(0, 0); } diff --git a/src/frontends/xforms/FormIndex.C b/src/frontends/xforms/FormIndex.C index 12e6b38482..0e95018740 100644 --- a/src/frontends/xforms/FormIndex.C +++ b/src/frontends/xforms/FormIndex.C @@ -26,7 +26,7 @@ #include "lyxfunc.h" FormIndex::FormIndex(LyXView * lv, Dialogs * d) - : FormCommand(lv, d, _("Index"), new OkCancelReadOnlyPolicy), + : FormCommand(lv, d, _("Index"), new OkApplyCancelReadOnlyPolicy), dialog_(0) { // let the dialog be shown @@ -61,28 +61,30 @@ void FormIndex::build() { dialog_ = build_index(); -#ifdef WITH_WARNINGS -#warning use the buttoncontroller -#endif // Workaround dumb xforms sizing bug minw_ = form()->w; minh_ = form()->h; + + fl_set_input_return(dialog_->input_key, FL_RETURN_CHANGED); + + // Manage the ok, apply, restore and cancel/close buttons + bc_.setOK(dialog_->button_ok); + bc_.setApply(dialog_->button_apply); + bc_.setCancel(dialog_->button_cancel); + bc_.setUndoAll(dialog_->button_restore); + bc_.refresh(); + + bc_.addReadOnly(dialog_->input_key); } void FormIndex::update() { - fl_set_input(dialog_->key, params.getContents().c_str()); - - if (lv_->buffer()->isReadonly()) { - fl_deactivate_object(dialog_->key); - fl_deactivate_object(dialog_->ok); - fl_set_object_lcol(dialog_->ok, FL_INACTIVE); - } else { - fl_activate_object(dialog_->key); - fl_activate_object(dialog_->ok); - fl_set_object_lcol(dialog_->ok, FL_BLACK); - } + fl_set_input(dialog_->input_key, params.getContents().c_str()); + // Surely, this should reset the buttons to their original state? + // It doesn't. Instead "Restore" becomes a "Close" + //bc_.refresh(); + bc_.readOnly(lv_->buffer()->isReadonly()); } @@ -90,7 +92,7 @@ void FormIndex::apply() { if (lv_->buffer()->isReadonly()) return; - params.setContents(fl_get_input(dialog_->key)); + params.setContents(fl_get_input(dialog_->input_key)); if (inset_ != 0) { // Only update if contents have changed diff --git a/src/frontends/xforms/FormParagraph.C b/src/frontends/xforms/FormParagraph.C index 1c32134fd8..66e2b819e7 100644 --- a/src/frontends/xforms/FormParagraph.C +++ b/src/frontends/xforms/FormParagraph.C @@ -78,7 +78,7 @@ void FormParagraph::build() minw_ = form()->w; minh_ = form()->h; - // manage the restore, ok, apply and cancel/close buttons + // Manage the ok, apply, restore and cancel/close buttons bc_.setOK(dialog_->button_ok); bc_.setApply(dialog_->button_apply); bc_.setCancel(dialog_->button_cancel); diff --git a/src/frontends/xforms/FormPreferences.C b/src/frontends/xforms/FormPreferences.C index 4e174dd294..8db20d82d2 100644 --- a/src/frontends/xforms/FormPreferences.C +++ b/src/frontends/xforms/FormPreferences.C @@ -186,7 +186,7 @@ void FormPreferences::build() { dialog_ = build_preferences(); - // manage the restore, save, apply and cancel/close buttons + // Manage the restore, save, apply and cancel/close buttons bc_.setOK(dialog_->button_ok); bc_.setApply(dialog_->button_apply); bc_.setCancel(dialog_->button_cancel); @@ -627,14 +627,14 @@ void FormPreferences::Colors::InputBrowserLyX() const // Is the choice an Xforms color... RGBColor color; - if( selLyX-1 < int(xformColorDB.size()) ) { + if( selLyX-1 < xformColorDB.size() ) { vector::size_type const i = selLyX - 1; color = xformColorDB[i].color(); } // or a LyX Logical color? else { vector::size_type const i = selLyX - 1 - - xformColorDB.size(); + xformColorDB.size(); color = lyxColorDB[i].color(); } @@ -969,29 +969,31 @@ void FormPreferences::Colors::Modify() vector::size_type const selLyX = fl_get_browser(dialog_->browser_lyx_objs); if (selLyX < 1) return; - + vector::size_type const selX11 = fl_get_browser(dialog_->browser_x11); if (selX11 < 1) return; - - // Is the choice an Xforms color... - if (selLyX-1 < int(xformColorDB.size())) { + + // Is the choice an Xforms color... + if( selLyX-1 < xformColorDB.size() ) { vector::size_type const i = selLyX - 1; vector::size_type const j = selX11 - 1; xformColorDB[i].r = colorDB[j].r; xformColorDB[i].g = colorDB[j].g; xformColorDB[i].b = colorDB[j].b; - } else { // or a LyX Logical color? + } + // or a LyX Logical color? + else { vector::size_type const i = selLyX - 1 - xformColorDB.size(); vector::size_type const j = selX11 - 1; lyxColorDB[i].r = colorDB[j].r; lyxColorDB[i].g = colorDB[j].g; lyxColorDB[i].b = colorDB[j].b; - } - - fl_freeze_form(dialog_->form); - + } + + fl_freeze_form(dialog_->form); + fl_deselect_browser(dialog_->browser_x11); fl_deactivate_object(dialog_->button_modify); fl_set_object_lcol(dialog_->button_modify, FL_INACTIVE); diff --git a/src/frontends/xforms/FormPrint.C b/src/frontends/xforms/FormPrint.C index a8aab2b8af..4d9d9cad31 100644 --- a/src/frontends/xforms/FormPrint.C +++ b/src/frontends/xforms/FormPrint.C @@ -58,7 +58,7 @@ void FormPrint::build() minw_ = form()->w; minh_ = form()->h; - // manage the ok, apply and cancel/close buttons + // Manage the ok, apply and cancel/close buttons bc_.setOK(dialog_->button_ok); bc_.setApply(dialog_->button_apply); bc_.setCancel(dialog_->button_cancel); diff --git a/src/frontends/xforms/FormRef.C b/src/frontends/xforms/FormRef.C index f2058edb2c..39a02f6341 100644 --- a/src/frontends/xforms/FormRef.C +++ b/src/frontends/xforms/FormRef.C @@ -93,10 +93,12 @@ void FormRef::build() // Can change reference only through browser fl_deactivate_object(dialog_->ref); + // Manage the ok and cancel/close buttons bc_.setOK(dialog_->button_ok); bc_.setCancel(dialog_->button_cancel); - bc_.addReadOnly(dialog_->type); bc_.refresh(); + + bc_.addReadOnly(dialog_->type); } diff --git a/src/frontends/xforms/FormTabularCreate.C b/src/frontends/xforms/FormTabularCreate.C index 0b2a0a38bd..6fd5d1a705 100644 --- a/src/frontends/xforms/FormTabularCreate.C +++ b/src/frontends/xforms/FormTabularCreate.C @@ -20,6 +20,7 @@ #include "FormTabularCreate.h" #include "form_tabular_create.h" +#include "buffer.h" #include "BufferView.h" #include "Dialogs.h" #include "LyXView.h" @@ -72,7 +73,7 @@ void FormTabularCreate::build() fl_set_slider_precision(dialog_->slider_rows, 0); fl_set_slider_precision(dialog_->slider_columns, 0); - // manage the ok, apply and cancel/close buttons + // Manage the ok, apply and cancel/close buttons bc_.setOK(dialog_->button_ok); bc_.setApply(dialog_->button_apply); bc_.setCancel(dialog_->button_cancel); @@ -90,3 +91,9 @@ void FormTabularCreate::apply() delete in; } } + + +void FormTabularCreate::update() +{ + bc_.readOnly(lv_->buffer()->isReadonly()); +} diff --git a/src/frontends/xforms/FormTabularCreate.h b/src/frontends/xforms/FormTabularCreate.h index cfcb4bb29a..205dc180d1 100644 --- a/src/frontends/xforms/FormTabularCreate.h +++ b/src/frontends/xforms/FormTabularCreate.h @@ -41,6 +41,8 @@ private: /// Apply from dialog virtual void apply(); + /// Update dialog before showing it + virtual void update(); /// Pointer to the actual instantiation of the xform's form virtual FL_FORM * form() const; /// Build the dialog diff --git a/src/frontends/xforms/FormToc.C b/src/frontends/xforms/FormToc.C index d9d22d728a..5e8a118b8f 100644 --- a/src/frontends/xforms/FormToc.C +++ b/src/frontends/xforms/FormToc.C @@ -32,7 +32,7 @@ // confusing to the button controller so I've made an IgnorantPolicy to cover // this situation since the dialog doesn't care about buttons. ARRae 20001013 FormToc::FormToc(LyXView * lv, Dialogs * d) - : FormCommand(lv, d, _("Table of Contents"), new IgnorantPolicy), + : FormCommand(lv, d, _("Table of Contents"), new OkApplyCancelPolicy), dialog_(0) { // let the dialog be shown @@ -67,7 +67,7 @@ void FormToc::build() { dialog_ = build_toc(); - fl_addto_choice(dialog_->type, + fl_addto_choice(dialog_->choice_toc_type, _(" TOC | LOF | LOT | LOA ")); // Don't need to limit size of this dialog @@ -75,6 +75,10 @@ void FormToc::build() // Workaround dumb xforms sizing bug minw_ = form()->w; minh_ = form()->h; + + // Manage the cancel/close button + bc_.setCancel(dialog_->button_cancel); + bc_.refresh(); } @@ -94,7 +98,7 @@ void FormToc::update() else type = Buffer::TOC_LOT; - fl_set_choice( dialog_->type, type+1 ); + fl_set_choice( dialog_->choice_toc_type, type+1 ); updateToc(); } @@ -104,15 +108,15 @@ void FormToc::updateToc() { if (!lv_->view()->available()) { toclist.clear(); - fl_clear_browser( dialog_->browser ); - fl_add_browser_line( dialog_->browser, + fl_clear_browser( dialog_->browser_toc ); + fl_add_browser_line( dialog_->browser_toc, _("*** No Document ***")); return; } vector > tmp = lv_->view()->buffer()->getTocList(); - int type = fl_get_choice( dialog_->type ) - 1; + int type = fl_get_choice( dialog_->choice_toc_type ) - 1; // Check if all elements are the same. if (toclist.size() == tmp[type].size()) { @@ -131,34 +135,33 @@ void FormToc::updateToc() int topline = 0; int line = 0; if (buffer == lv_->view()->buffer()) { - topline = fl_get_browser_topline( dialog_->browser ); - line = fl_get_browser( dialog_->browser ); + topline = fl_get_browser_topline( dialog_->browser_toc ); + line = fl_get_browser( dialog_->browser_toc ); } else buffer = lv_->view()->buffer(); - fl_clear_browser( dialog_->browser ); + fl_clear_browser( dialog_->browser_toc ); for (vector::const_iterator it = toclist.begin(); it != toclist.end(); ++it) - fl_add_browser_line( dialog_->browser, + fl_add_browser_line( dialog_->browser_toc, (string(4 * (*it).depth, ' ') + (*it).str).c_str()); - fl_set_browser_topline( dialog_->browser, topline ); - fl_select_browser_line( dialog_->browser, line ); + fl_set_browser_topline( dialog_->browser_toc, topline ); + fl_select_browser_line( dialog_->browser_toc, line ); } -void FormToc::apply() +bool FormToc::input(FL_OBJECT *, long) { - if (!lv_->view()->available()) - return; - updateToc(); - unsigned int const choice = fl_get_browser( dialog_->browser ); + unsigned int const choice = fl_get_browser( dialog_->browser_toc ); if (0 < choice && choice - 1 < toclist.size()) { string const tmp = tostr(toclist[choice-1].par->id()); lv_->getLyXFunc()->Dispatch(LFUN_GOTO_PARAGRAPH, tmp); } + + return true; } diff --git a/src/frontends/xforms/FormToc.h b/src/frontends/xforms/FormToc.h index c8bf93d8c2..370c25baed 100644 --- a/src/frontends/xforms/FormToc.h +++ b/src/frontends/xforms/FormToc.h @@ -38,8 +38,8 @@ private: virtual void updateSlot(bool) { update(); } /// Update dialog before showing it virtual void update(); - /// Apply from dialog (modify or create inset) - virtual void apply(); + /// Filter the inputs on callback from xforms + virtual bool input( FL_OBJECT *, long); /// Pointer to the actual instantiation of the xform's form virtual FL_FORM * form() const; /// diff --git a/src/frontends/xforms/FormUrl.C b/src/frontends/xforms/FormUrl.C index a610600ff8..fc39ce6a11 100644 --- a/src/frontends/xforms/FormUrl.C +++ b/src/frontends/xforms/FormUrl.C @@ -26,7 +26,7 @@ #include "lyxfunc.h" FormUrl::FormUrl(LyXView * lv, Dialogs * d) - : FormCommand(lv, d, _("Url"), new OkCancelReadOnlyPolicy), + : FormCommand(lv, d, _("Url"), new OkApplyCancelReadOnlyPolicy), dialog_(0) { // let the dialog be shown @@ -45,7 +45,7 @@ FormUrl::~FormUrl() FL_FORM * FormUrl::form() const { - if (dialog_ ) return dialog_->form; + if (dialog_) return dialog_->form; return 0; } @@ -61,12 +61,23 @@ void FormUrl::build() { dialog_ = build_url(); -#ifdef WITH_WARNINGS -#warning use the buttoncontroller -#endif // Workaround dumb xforms sizing bug minw_ = form()->w; minh_ = form()->h; + + fl_set_input_return(dialog_->name, FL_RETURN_CHANGED); + fl_set_input_return(dialog_->url, FL_RETURN_CHANGED); + + // Manage the ok, apply, restore and cancel/close buttons + bc_.setOK(dialog_->button_ok); + bc_.setApply(dialog_->button_apply); + bc_.setCancel(dialog_->button_cancel); + bc_.setUndoAll(dialog_->button_restore); + bc_.refresh(); + + bc_.addReadOnly(dialog_->name); + bc_.addReadOnly(dialog_->url); + bc_.addReadOnly(dialog_->radio_html); } @@ -80,19 +91,7 @@ void FormUrl::update() else fl_set_button(dialog_->radio_html, 1); - if (lv_->buffer()->isReadonly()) { - fl_deactivate_object(dialog_->url); - fl_deactivate_object(dialog_->name); - fl_deactivate_object(dialog_->radio_html); - fl_deactivate_object(dialog_->button_ok); - fl_set_object_lcol(dialog_->button_ok, FL_INACTIVE); - } else { - fl_activate_object(dialog_->url); - fl_activate_object(dialog_->name); - fl_activate_object(dialog_->radio_html); - fl_activate_object(dialog_->button_ok); - fl_set_object_lcol(dialog_->button_ok, FL_BLACK); - } + bc_.readOnly(lv_->buffer()->isReadonly()); } diff --git a/src/frontends/xforms/form_citation.C b/src/frontends/xforms/form_citation.C index f8ac4933db..c5f69e335c 100644 --- a/src/frontends/xforms/form_citation.C +++ b/src/frontends/xforms/form_citation.C @@ -65,6 +65,10 @@ FD_form_citation * FormCitation::build_citation() fdui->textAftr = obj = fl_add_input(FL_NORMAL_INPUT, 100, 570, 250, 30, idex(_("Text after|#e"))); fl_set_button_shortcut(obj, scex(_("Text after|#e")), 1); fl_set_object_resize(obj, FL_RESIZE_X); + fdui->button_restore = obj = fl_add_button(FL_NORMAL_BUTTON, 10, 630, 90, 30, idex(_("Restore|#R"))); + fl_set_button_shortcut(obj, scex(_("Restore|#R")), 1); + fl_set_object_gravity(obj, FL_SouthWest, FL_SouthWest); + fl_set_object_callback(obj, C_FormBaseRestoreCB, 0); fdui->button_ok = obj = fl_add_button(FL_RETURN_BUTTON, 130, 630, 90, 30, _("OK")); fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast); fl_set_object_callback(obj, C_FormBaseOKCB, 0); @@ -76,10 +80,6 @@ FD_form_citation * FormCitation::build_citation() fl_set_button_shortcut(obj, scex(_("Cancel|#C^[")), 1); fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast); fl_set_object_callback(obj, C_FormBaseCancelCB, 0); - fdui->button_restore = obj = fl_add_button(FL_NORMAL_BUTTON, 10, 630, 90, 30, idex(_("Restore|#R"))); - fl_set_button_shortcut(obj, scex(_("Restore|#R")), 1); - fl_set_object_gravity(obj, FL_SouthWest, FL_SouthWest); - fl_set_object_callback(obj, C_FormBaseRestoreCB, 0); fl_end_form(); fdui->form->fdui = fdui; diff --git a/src/frontends/xforms/form_citation.h b/src/frontends/xforms/form_citation.h index 376a252203..2ed52ae311 100644 --- a/src/frontends/xforms/form_citation.h +++ b/src/frontends/xforms/form_citation.h @@ -6,10 +6,10 @@ /** Callbacks, globals and object handlers **/ extern "C" void C_FormBaseInputCB(FL_OBJECT *, long); +extern "C" void C_FormBaseRestoreCB(FL_OBJECT *, long); extern "C" void C_FormBaseOKCB(FL_OBJECT *, long); extern "C" void C_FormBaseApplyCB(FL_OBJECT *, long); extern "C" void C_FormBaseCancelCB(FL_OBJECT *, long); -extern "C" void C_FormBaseRestoreCB(FL_OBJECT *, long); /**** Forms and Objects ****/ @@ -28,10 +28,10 @@ struct FD_form_citation { FL_OBJECT *style; FL_OBJECT *textBefore; FL_OBJECT *textAftr; + FL_OBJECT *button_restore; FL_OBJECT *button_ok; FL_OBJECT *button_apply; FL_OBJECT *button_cancel; - FL_OBJECT *button_restore; }; #endif /* FD_form_citation_h_ */ diff --git a/src/frontends/xforms/form_copyright.C b/src/frontends/xforms/form_copyright.C index 23259c6a9d..4d2fff85b7 100644 --- a/src/frontends/xforms/form_copyright.C +++ b/src/frontends/xforms/form_copyright.C @@ -25,25 +25,24 @@ FD_form_copyright * FormCopyright::build_copyright() fdui->form = fl_bgn_form(FL_NO_BOX, 450, 430); fdui->form->u_vdata = this; obj = fl_add_box(FL_UP_BOX, 0, 0, 450, 430, ""); - obj = fl_add_text(FL_NORMAL_TEXT, 10, 10, 430, 50, _("LyX is Copyright (C) 1995 by Matthias Ettrich, \n1995-2000 LyX Team")); + fdui->text_copyright = obj = fl_add_text(FL_NORMAL_TEXT, 10, 10, 430, 50, ""); fl_set_object_boxtype(obj, FL_FRAME_BOX); fl_set_object_lsize(obj, FL_NORMAL_SIZE); fl_set_object_lalign(obj, FL_ALIGN_CENTER|FL_ALIGN_INSIDE); - fl_set_object_gravity(obj, FL_NorthWest, FL_NorthEast); - obj = fl_add_text(FL_NORMAL_TEXT, 10, 70, 430, 110, _("This program is free software; you can redistribute it\nand/or modify it under the terms of the GNU General\nPublic License as published by the Free Software\nFoundation; either version 2 of the License, or\n(at your option) any later version.")); + fdui->text_licence = obj = fl_add_text(FL_NORMAL_TEXT, 10, 70, 430, 110, ""); fl_set_object_boxtype(obj, FL_FRAME_BOX); fl_set_object_lsize(obj, FL_NORMAL_SIZE); fl_set_object_lalign(obj, FL_ALIGN_CENTER|FL_ALIGN_INSIDE); - fdui->button_ok = obj = fl_add_button(FL_RETURN_BUTTON, 160, 390, 140, 30, idex(_("Close|#C^[^M"))); + fdui->text_disclaimer = obj = fl_add_text(FL_NORMAL_TEXT, 10, 190, 430, 190, ""); + fl_set_object_boxtype(obj, FL_FRAME_BOX); + fl_set_object_lsize(obj, FL_NORMAL_SIZE); + fl_set_object_lalign(obj, FL_ALIGN_CENTER|FL_ALIGN_INSIDE); + fdui->button_cancel = obj = fl_add_button(FL_RETURN_BUTTON, 160, 390, 140, 30, idex(_("Close|#C^[^M"))); fl_set_button_shortcut(obj, scex(_("Close|#C^[^M")), 1); fl_set_object_lsize(obj, FL_NORMAL_SIZE); fl_set_object_gravity(obj, FL_South, FL_South); fl_set_object_resize(obj, FL_RESIZE_NONE); fl_set_object_callback(obj, C_FormBaseCancelCB, 0); - obj = fl_add_text(FL_NORMAL_TEXT, 10, 190, 430, 190, _("LyX is distributed in the hope that it will\nbe useful, but WITHOUT ANY WARRANTY;\nwithout even the implied warranty of MERCHANTABILITY\nor FITNESS FOR A PARTICULAR PURPOSE.\nSee the GNU General Public License for more details.\nYou should have received a copy of\nthe GNU General Public License\nalong with this program; if not, write to\nthe Free Software Foundation, Inc., \n675 Mass Ave, Cambridge, MA 02139, USA.")); - fl_set_object_boxtype(obj, FL_FRAME_BOX); - fl_set_object_lsize(obj, FL_NORMAL_SIZE); - fl_set_object_lalign(obj, FL_ALIGN_CENTER|FL_ALIGN_INSIDE); fl_end_form(); fdui->form->fdui = fdui; diff --git a/src/frontends/xforms/form_copyright.h b/src/frontends/xforms/form_copyright.h index 984b0c3461..ee94cb3cd6 100644 --- a/src/frontends/xforms/form_copyright.h +++ b/src/frontends/xforms/form_copyright.h @@ -13,7 +13,10 @@ struct FD_form_copyright { ~FD_form_copyright(); FL_FORM *form; - FL_OBJECT *button_ok; + FL_OBJECT *text_copyright; + FL_OBJECT *text_licence; + FL_OBJECT *text_disclaimer; + FL_OBJECT *button_cancel; }; #endif /* FD_form_copyright_h_ */ diff --git a/src/frontends/xforms/form_error.C b/src/frontends/xforms/form_error.C index efcc8e45aa..7f8c30da7c 100644 --- a/src/frontends/xforms/form_error.C +++ b/src/frontends/xforms/form_error.C @@ -27,7 +27,7 @@ FD_form_error * FormError::build_error() obj = fl_add_box(FL_UP_BOX, 0, 0, 400, 240, ""); fdui->message = obj = fl_add_box(FL_FRAME_BOX, 10, 10, 380, 180, ""); fl_set_object_gravity(obj, FL_NorthWest, FL_SouthEast); - obj = fl_add_button(FL_RETURN_BUTTON, 135, 200, 130, 30, idex(_("Close|#C^[^M"))); + fdui->button_cancel = obj = fl_add_button(FL_RETURN_BUTTON, 135, 200, 130, 30, idex(_("Close|#C^[^M"))); fl_set_button_shortcut(obj, scex(_("Close|#C^[^M")), 1); fl_set_object_gravity(obj, FL_South, FL_South); fl_set_object_resize(obj, FL_RESIZE_NONE); diff --git a/src/frontends/xforms/form_error.h b/src/frontends/xforms/form_error.h index 7df3f4e4dc..c87a7e2dd5 100644 --- a/src/frontends/xforms/form_error.h +++ b/src/frontends/xforms/form_error.h @@ -14,6 +14,7 @@ struct FD_form_error { FL_FORM *form; FL_OBJECT *message; + FL_OBJECT *button_cancel; }; #endif /* FD_form_error_h_ */ diff --git a/src/frontends/xforms/form_graphics.C b/src/frontends/xforms/form_graphics.C index e27de4f7f4..f60385700d 100644 --- a/src/frontends/xforms/form_graphics.C +++ b/src/frontends/xforms/form_graphics.C @@ -47,14 +47,6 @@ FD_form_graphics * FormGraphics::build_graphics() fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT); obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 270, 70, 210, 160, _("Display")); fl_set_object_lalign(obj, FL_ALIGN_CENTER); - fdui->button_ok = obj = fl_add_button(FL_RETURN_BUTTON, 190, 350, 90, 30, _("Ok")); - fl_set_object_callback(obj, C_FormBaseOKCB, 0); - fdui->button_apply = obj = fl_add_button(FL_NORMAL_BUTTON, 290, 350, 90, 30, idex(_("Apply|#A"))); - fl_set_button_shortcut(obj, scex(_("Apply|#A")), 1); - fl_set_object_callback(obj, C_FormBaseApplyCB, 0); - fdui->button_cancel = obj = fl_add_button(FL_NORMAL_BUTTON, 390, 350, 90, 30, idex(_("Cancel|^["))); - fl_set_button_shortcut(obj, scex(_("Cancel|^[")), 1); - fl_set_object_callback(obj, C_FormBaseCancelCB, 0); fdui->radio_button_group_width = fl_bgn_group(); fdui->radio_width_percent_page = obj = fl_add_checkbutton(FL_RADIO_BUTTON, 20, 140, 80, 30, _("% of Page")); @@ -109,6 +101,18 @@ FD_form_graphics * FormGraphics::build_graphics() fl_set_button_shortcut(obj, scex(_("Subcaption|#S")), 1); fl_set_object_lalign(obj, FL_ALIGN_LEFT); fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT); + fdui->button_restore = obj = fl_add_button(FL_NORMAL_BUTTON, 20, 350, 90, 30, idex(_("Update|#U"))); + fl_set_button_shortcut(obj, scex(_("Update|#U")), 1); + fl_set_object_gravity(obj, FL_SouthWest, FL_SouthWest); + fl_set_object_callback(obj, C_FormBaseRestoreCB, 0); + fdui->button_ok = obj = fl_add_button(FL_RETURN_BUTTON, 190, 350, 90, 30, _("Ok")); + fl_set_object_callback(obj, C_FormBaseOKCB, 0); + fdui->button_apply = obj = fl_add_button(FL_NORMAL_BUTTON, 290, 350, 90, 30, idex(_("Apply|#A"))); + fl_set_button_shortcut(obj, scex(_("Apply|#A")), 1); + fl_set_object_callback(obj, C_FormBaseApplyCB, 0); + fdui->button_cancel = obj = fl_add_button(FL_NORMAL_BUTTON, 390, 350, 90, 30, idex(_("Cancel|^["))); + fl_set_button_shortcut(obj, scex(_("Cancel|^[")), 1); + fl_set_object_callback(obj, C_FormBaseCancelCB, 0); fl_end_form(); fdui->form->fdui = fdui; diff --git a/src/frontends/xforms/form_graphics.h b/src/frontends/xforms/form_graphics.h index 107be0440c..0b33ef9e0d 100644 --- a/src/frontends/xforms/form_graphics.h +++ b/src/frontends/xforms/form_graphics.h @@ -6,6 +6,7 @@ /** Callbacks, globals and object handlers **/ extern "C" void C_FormBaseInputCB(FL_OBJECT *, long); +extern "C" void C_FormBaseRestoreCB(FL_OBJECT *, long); extern "C" void C_FormBaseOKCB(FL_OBJECT *, long); extern "C" void C_FormBaseApplyCB(FL_OBJECT *, long); extern "C" void C_FormBaseCancelCB(FL_OBJECT *, long); @@ -20,9 +21,6 @@ struct FD_form_graphics { FL_OBJECT *button_browse; FL_OBJECT *input_width; FL_OBJECT *input_height; - FL_OBJECT *button_ok; - FL_OBJECT *button_apply; - FL_OBJECT *button_cancel; FL_OBJECT *radio_button_group_width; FL_OBJECT *radio_width_percent_page; FL_OBJECT *radio_width_default; @@ -43,6 +41,10 @@ struct FD_form_graphics { FL_OBJECT *check_inline; FL_OBJECT *input_subcaption; FL_OBJECT *check_subcaption; + FL_OBJECT *button_restore; + FL_OBJECT *button_ok; + FL_OBJECT *button_apply; + FL_OBJECT *button_cancel; }; #endif /* FD_form_graphics_h_ */ diff --git a/src/frontends/xforms/form_index.C b/src/frontends/xforms/form_index.C index 575fed74b8..65a456157b 100644 --- a/src/frontends/xforms/form_index.C +++ b/src/frontends/xforms/form_index.C @@ -25,18 +25,29 @@ FD_form_index * FormIndex::build_index() fdui->form = fl_bgn_form(FL_NO_BOX, 520, 100); fdui->form->u_vdata = this; obj = fl_add_box(FL_UP_BOX, 0, 0, 520, 100, ""); - fdui->key = obj = fl_add_input(FL_NORMAL_INPUT, 90, 10, 420, 30, _("Keyword")); + fdui->input_key = obj = fl_add_input(FL_NORMAL_INPUT, 90, 10, 420, 30, _("Keyword")); fl_set_input_shortcut(obj, scex(_("Keyword|#K")), 1); fl_set_object_lsize(obj, FL_NORMAL_SIZE); fl_set_object_resize(obj, FL_RESIZE_X); + fl_set_object_callback(obj, C_FormBaseInputCB, 0); + fdui->button_restore = obj = fl_add_button(FL_NORMAL_BUTTON, 10, 60, 100, 30, idex(_("Restore|#R"))); + fl_set_button_shortcut(obj, scex(_("Restore|#R")), 1); + fl_set_object_lsize(obj, FL_NORMAL_SIZE); + fl_set_object_gravity(obj, FL_SouthWest, FL_SouthWest); + fl_set_object_callback(obj, C_FormBaseRestoreCB, 0); + fdui->button_ok = obj = fl_add_button(FL_RETURN_BUTTON, 190, 60, 100, 30, _("OK")); + fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast); + fl_set_object_callback(obj, C_FormBaseOKCB, 0); + fdui->button_apply = obj = fl_add_button(FL_NORMAL_BUTTON, 300, 60, 100, 30, idex(_("Apply|#A"))); + fl_set_button_shortcut(obj, scex(_("Apply|#A")), 1); + fl_set_object_lsize(obj, FL_NORMAL_SIZE); + fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast); + fl_set_object_callback(obj, C_FormBaseApplyCB, 0); fdui->button_cancel = obj = fl_add_button(FL_NORMAL_BUTTON, 410, 60, 100, 30, idex(_("Cancel|#C^["))); fl_set_button_shortcut(obj, scex(_("Cancel|#C^[")), 1); fl_set_object_lsize(obj, FL_NORMAL_SIZE); fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast); fl_set_object_callback(obj, C_FormBaseCancelCB, 0); - fdui->ok = obj = fl_add_button(FL_RETURN_BUTTON, 300, 60, 100, 30, _("OK")); - fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast); - fl_set_object_callback(obj, C_FormBaseOKCB, 0); fl_end_form(); fdui->form->fdui = fdui; diff --git a/src/frontends/xforms/form_index.h b/src/frontends/xforms/form_index.h index 0c35882ae8..ef097e092f 100644 --- a/src/frontends/xforms/form_index.h +++ b/src/frontends/xforms/form_index.h @@ -5,8 +5,11 @@ #define FD_form_index_h_ /** Callbacks, globals and object handlers **/ -extern "C" void C_FormBaseCancelCB(FL_OBJECT *, long); +extern "C" void C_FormBaseInputCB(FL_OBJECT *, long); +extern "C" void C_FormBaseRestoreCB(FL_OBJECT *, long); extern "C" void C_FormBaseOKCB(FL_OBJECT *, long); +extern "C" void C_FormBaseApplyCB(FL_OBJECT *, long); +extern "C" void C_FormBaseCancelCB(FL_OBJECT *, long); /**** Forms and Objects ****/ @@ -14,9 +17,11 @@ struct FD_form_index { ~FD_form_index(); FL_FORM *form; - FL_OBJECT *key; + FL_OBJECT *input_key; + FL_OBJECT *button_restore; + FL_OBJECT *button_ok; + FL_OBJECT *button_apply; FL_OBJECT *button_cancel; - FL_OBJECT *ok; }; #endif /* FD_form_index_h_ */ diff --git a/src/frontends/xforms/form_toc.C b/src/frontends/xforms/form_toc.C index 1c4928f6fb..18a111b841 100644 --- a/src/frontends/xforms/form_toc.C +++ b/src/frontends/xforms/form_toc.C @@ -25,24 +25,24 @@ FD_form_toc * FormToc::build_toc() fdui->form = fl_bgn_form(FL_NO_BOX, 420, 340); fdui->form->u_vdata = this; obj = fl_add_box(FL_UP_BOX, 0, 0, 420, 340, ""); - fdui->browser = obj = fl_add_browser(FL_HOLD_BROWSER, 10, 10, 400, 280, ""); + fdui->browser_toc = obj = fl_add_browser(FL_HOLD_BROWSER, 10, 10, 400, 280, ""); fl_set_object_gravity(obj, FL_NorthWest, FL_SouthEast); - fl_set_object_callback(obj, C_FormBaseApplyCB, 0); - obj = fl_add_button(FL_RETURN_BUTTON, 310, 300, 100, 30, idex(_("Close|#C^[^M"))); - fl_set_button_shortcut(obj, scex(_("Close|#C^[^M")), 1); - fl_set_object_lsize(obj, FL_NORMAL_SIZE); - fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast); - fl_set_object_callback(obj, C_FormBaseCancelCB, 0); - obj = fl_add_button(FL_NORMAL_BUTTON, 200, 300, 100, 30, idex(_("Update|#U"))); + fl_set_object_callback(obj, C_FormBaseInputCB, 0); + fdui->button_update = obj = fl_add_button(FL_NORMAL_BUTTON, 200, 300, 100, 30, idex(_("Update|#U"))); fl_set_button_shortcut(obj, scex(_("Update|#U")), 1); fl_set_object_lsize(obj, FL_NORMAL_SIZE); fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast); - fl_set_object_callback(obj, C_FormBaseApplyCB, 0); - fdui->type = obj = fl_add_choice(FL_NORMAL_CHOICE, 60, 300, 130, 30, idex(_("Type|#T"))); + fl_set_object_callback(obj, C_FormBaseInputCB, 0); + fdui->choice_toc_type = obj = fl_add_choice(FL_NORMAL_CHOICE, 60, 300, 130, 30, idex(_("Type|#T"))); fl_set_button_shortcut(obj, scex(_("Type|#T")), 1); fl_set_object_boxtype(obj, FL_FRAME_BOX); fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast); - fl_set_object_callback(obj, C_FormBaseApplyCB, 0); + fl_set_object_callback(obj, C_FormBaseInputCB, 0); + fdui->button_cancel = obj = fl_add_button(FL_RETURN_BUTTON, 310, 300, 100, 30, idex(_("Close|#C^[^M"))); + fl_set_button_shortcut(obj, scex(_("Close|#C^[^M")), 1); + fl_set_object_lsize(obj, FL_NORMAL_SIZE); + fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast); + fl_set_object_callback(obj, C_FormBaseCancelCB, 0); fl_end_form(); fdui->form->fdui = fdui; diff --git a/src/frontends/xforms/form_toc.h b/src/frontends/xforms/form_toc.h index ca758df4c8..38556cf0b2 100644 --- a/src/frontends/xforms/form_toc.h +++ b/src/frontends/xforms/form_toc.h @@ -5,7 +5,7 @@ #define FD_form_toc_h_ /** Callbacks, globals and object handlers **/ -extern "C" void C_FormBaseApplyCB(FL_OBJECT *, long); +extern "C" void C_FormBaseInputCB(FL_OBJECT *, long); extern "C" void C_FormBaseCancelCB(FL_OBJECT *, long); @@ -14,8 +14,10 @@ struct FD_form_toc { ~FD_form_toc(); FL_FORM *form; - FL_OBJECT *browser; - FL_OBJECT *type; + FL_OBJECT *browser_toc; + FL_OBJECT *button_update; + FL_OBJECT *choice_toc_type; + FL_OBJECT *button_cancel; }; #endif /* FD_form_toc_h_ */ diff --git a/src/frontends/xforms/form_url.C b/src/frontends/xforms/form_url.C index 7a2f908cf7..06787b3ce9 100644 --- a/src/frontends/xforms/form_url.C +++ b/src/frontends/xforms/form_url.C @@ -22,32 +22,46 @@ FD_form_url * FormUrl::build_url() FL_OBJECT *obj; FD_form_url *fdui = new FD_form_url; - fdui->form = fl_bgn_form(FL_NO_BOX, 520, 140); + fdui->form = fl_bgn_form(FL_NO_BOX, 520, 170); fdui->form->u_vdata = this; - obj = fl_add_box(FL_UP_BOX, 0, 0, 520, 140, ""); - fdui->url = obj = fl_add_input(FL_NORMAL_INPUT, 70, 20, 440, 30, idex(_("URL|#U"))); + obj = fl_add_box(FL_UP_BOX, 0, 0, 520, 170, ""); + fdui->url = obj = fl_add_input(FL_NORMAL_INPUT, 70, 50, 440, 30, idex(_("URL|#U"))); fl_set_button_shortcut(obj, scex(_("URL|#U")), 1); fl_set_object_lsize(obj, FL_NORMAL_SIZE); fl_set_object_gravity(obj, FL_NorthWest, FL_NorthEast); fl_set_object_resize(obj, FL_RESIZE_X); - fdui->name = obj = fl_add_input(FL_NORMAL_INPUT, 70, 60, 440, 30, idex(_("Name|#N"))); + fl_set_object_callback(obj, C_FormBaseInputCB, 0); + fdui->name = obj = fl_add_input(FL_NORMAL_INPUT, 70, 90, 440, 30, idex(_("Name|#N"))); fl_set_button_shortcut(obj, scex(_("Name|#N")), 1); fl_set_object_lsize(obj, FL_NORMAL_SIZE); fl_set_object_gravity(obj, FL_NorthWest, FL_NorthEast); fl_set_object_resize(obj, FL_RESIZE_X); - fdui->radio_html = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 70, 100, 230, 30, idex(_("HTML type|#H"))); + fl_set_object_callback(obj, C_FormBaseInputCB, 0); + fdui->radio_html = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 480, 10, 30, 30, idex(_("HTML type|#H"))); fl_set_button_shortcut(obj, scex(_("HTML type|#H")), 1); fl_set_object_lsize(obj, FL_NORMAL_SIZE); + fl_set_object_lalign(obj, FL_ALIGN_LEFT); fl_set_object_gravity(obj, FL_NorthWest, FL_NorthEast); fl_set_object_resize(obj, FL_RESIZE_X); - fdui->button_cancel = obj = fl_add_button(FL_NORMAL_BUTTON, 410, 100, 100, 30, idex(_("Cancel|#C^["))); + fl_set_object_callback(obj, C_FormBaseInputCB, 0); + fdui->button_cancel = obj = fl_add_button(FL_NORMAL_BUTTON, 410, 130, 100, 30, idex(_("Cancel|#C^["))); fl_set_button_shortcut(obj, scex(_("Cancel|#C^[")), 1); fl_set_object_lsize(obj, FL_NORMAL_SIZE); fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast); fl_set_object_callback(obj, C_FormBaseCancelCB, 0); - fdui->button_ok = obj = fl_add_button(FL_RETURN_BUTTON, 300, 100, 100, 30, _("OK")); + fdui->button_ok = obj = fl_add_button(FL_RETURN_BUTTON, 190, 130, 100, 30, _("OK")); fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast); fl_set_object_callback(obj, C_FormBaseOKCB, 0); + fdui->button_apply = obj = fl_add_button(FL_NORMAL_BUTTON, 300, 130, 100, 30, idex(_("Apply|#A"))); + fl_set_button_shortcut(obj, scex(_("Apply|#A")), 1); + fl_set_object_lsize(obj, FL_NORMAL_SIZE); + fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast); + fl_set_object_callback(obj, C_FormBaseApplyCB, 0); + fdui->button_restore = obj = fl_add_button(FL_NORMAL_BUTTON, 10, 130, 100, 30, idex(_("Restore|#R"))); + fl_set_button_shortcut(obj, scex(_("Restore|#R")), 1); + fl_set_object_lsize(obj, FL_NORMAL_SIZE); + fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast); + fl_set_object_callback(obj, C_FormBaseRestoreCB, 0); fl_end_form(); fdui->form->fdui = fdui; diff --git a/src/frontends/xforms/form_url.h b/src/frontends/xforms/form_url.h index 2aa9f4a644..79bb426856 100644 --- a/src/frontends/xforms/form_url.h +++ b/src/frontends/xforms/form_url.h @@ -5,8 +5,11 @@ #define FD_form_url_h_ /** Callbacks, globals and object handlers **/ +extern "C" void C_FormBaseInputCB(FL_OBJECT *, long); extern "C" void C_FormBaseCancelCB(FL_OBJECT *, long); extern "C" void C_FormBaseOKCB(FL_OBJECT *, long); +extern "C" void C_FormBaseApplyCB(FL_OBJECT *, long); +extern "C" void C_FormBaseRestoreCB(FL_OBJECT *, long); /**** Forms and Objects ****/ @@ -19,6 +22,8 @@ struct FD_form_url { FL_OBJECT *radio_html; FL_OBJECT *button_cancel; FL_OBJECT *button_ok; + FL_OBJECT *button_apply; + FL_OBJECT *button_restore; }; #endif /* FD_form_url_h_ */ diff --git a/src/frontends/xforms/forms/form_citation.fd b/src/frontends/xforms/forms/form_citation.fd index 4d0d776001..7cae476100 100644 --- a/src/frontends/xforms/forms/form_citation.fd +++ b/src/frontends/xforms/forms/form_citation.fd @@ -210,6 +210,24 @@ name: textAftr callback: argument: +-------------------- +class: FL_BUTTON +type: NORMAL_BUTTON +box: 10 630 90 30 +boxtype: FL_UP_BOX +colors: FL_COL1 FL_COL1 +alignment: FL_ALIGN_CENTER +style: FL_NORMAL_STYLE +size: FL_DEFAULT_SIZE +lcol: FL_BLACK +label: Restore|#R +shortcut: +resize: FL_RESIZE_ALL +gravity: FL_SouthWest FL_SouthWest +name: button_restore +callback: C_FormBaseRestoreCB +argument: 0 + -------------------- class: FL_BUTTON type: RETURN_BUTTON @@ -264,23 +282,5 @@ name: button_cancel callback: C_FormBaseCancelCB argument: 0 --------------------- -class: FL_BUTTON -type: NORMAL_BUTTON -box: 10 630 90 30 -boxtype: FL_UP_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_DEFAULT_SIZE -lcol: FL_BLACK -label: Restore|#R -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_SouthWest FL_SouthWest -name: button_restore -callback: C_FormBaseRestoreCB -argument: 0 - ============================== create_the_forms diff --git a/src/frontends/xforms/forms/form_copyright.fd b/src/frontends/xforms/forms/form_copyright.fd index 1524ced452..305fc93cd3 100644 --- a/src/frontends/xforms/forms/form_copyright.fd +++ b/src/frontends/xforms/forms/form_copyright.fd @@ -40,11 +40,11 @@ alignment: FL_ALIGN_CENTER|FL_ALIGN_INSIDE style: FL_NORMAL_STYLE size: FL_NORMAL_SIZE lcol: FL_BLACK -label: LyX is Copyright (C) 1995 by Matthias Ettrich,\n1995-2000 LyX Team +label: shortcut: resize: FL_RESIZE_ALL -gravity: FL_NorthWest FL_NorthEast -name: +gravity: FL_NoGravity FL_NoGravity +name: text_copyright callback: argument: @@ -58,11 +58,29 @@ alignment: FL_ALIGN_CENTER|FL_ALIGN_INSIDE style: FL_NORMAL_STYLE size: FL_NORMAL_SIZE lcol: FL_BLACK -label: This program is free software; you can redistribute it\nand/or modify it under the terms of the GNU General\nPublic License as published by the Free Software\nFoundation; either version 2 of the License, or\n(at your option) any later version. +label: shortcut: resize: FL_RESIZE_ALL gravity: FL_NoGravity FL_NoGravity -name: +name: text_licence +callback: +argument: + +-------------------- +class: FL_TEXT +type: NORMAL_TEXT +box: 10 190 430 190 +boxtype: FL_FRAME_BOX +colors: FL_COL1 FL_MCOL +alignment: FL_ALIGN_CENTER|FL_ALIGN_INSIDE +style: FL_NORMAL_STYLE +size: FL_NORMAL_SIZE +lcol: FL_BLACK +label: +shortcut: +resize: FL_RESIZE_ALL +gravity: FL_NoGravity FL_NoGravity +name: text_disclaimer callback: argument: @@ -80,27 +98,9 @@ label: Close|#C^[^M shortcut: resize: FL_RESIZE_NONE gravity: FL_South FL_South -name: button_ok +name: button_cancel callback: C_FormBaseCancelCB argument: 0 --------------------- -class: FL_TEXT -type: NORMAL_TEXT -box: 10 190 430 190 -boxtype: FL_FRAME_BOX -colors: FL_COL1 FL_MCOL -alignment: FL_ALIGN_CENTER|FL_ALIGN_INSIDE -style: FL_NORMAL_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: LyX is distributed in the hope that it will\nbe useful, but WITHOUT ANY WARRANTY;\nwithout even the implied warranty of MERCHANTABILITY\nor FITNESS FOR A PARTICULAR PURPOSE.\nSee the GNU General Public License for more details.\nYou should have received a copy of\nthe GNU General Public License\nalong with this program; if not, write to\nthe Free Software Foundation, Inc.,\n675 Mass Ave, Cambridge, MA 02139, USA. -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: -callback: -argument: - ============================== create_the_forms diff --git a/src/frontends/xforms/forms/form_error.fd b/src/frontends/xforms/forms/form_error.fd index bf34c868eb..65f81813cf 100644 --- a/src/frontends/xforms/forms/form_error.fd +++ b/src/frontends/xforms/forms/form_error.fd @@ -62,7 +62,7 @@ label: Close|#C^[^M shortcut: resize: FL_RESIZE_NONE gravity: FL_South FL_South -name: +name: button_cancel callback: C_FormBaseCancelCB argument: 0 diff --git a/src/frontends/xforms/forms/form_graphics.fd b/src/frontends/xforms/forms/form_graphics.fd index a291f2f248..aa6609a3be 100644 --- a/src/frontends/xforms/forms/form_graphics.fd +++ b/src/frontends/xforms/forms/form_graphics.fd @@ -10,7 +10,7 @@ Unit of measure: FL_COORD_PIXEL Name: form_graphics Width: 490 Height: 390 -Number of Objects: 37 +Number of Objects: 38 -------------------- class: FL_BOX @@ -192,60 +192,6 @@ name: callback: argument: --------------------- -class: FL_BUTTON -type: RETURN_BUTTON -box: 190 350 90 30 -boxtype: FL_UP_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_DEFAULT_SIZE -lcol: FL_BLACK -label: Ok -shortcut: ^M -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: button_ok -callback: C_FormBaseOKCB -argument: 0 - --------------------- -class: FL_BUTTON -type: NORMAL_BUTTON -box: 290 350 90 30 -boxtype: FL_UP_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_DEFAULT_SIZE -lcol: FL_BLACK -label: Apply|#A -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: button_apply -callback: C_FormBaseApplyCB -argument: 0 - --------------------- -class: FL_BUTTON -type: NORMAL_BUTTON -box: 390 350 90 30 -boxtype: FL_UP_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_DEFAULT_SIZE -lcol: FL_BLACK -label: Cancel|^[ -shortcut: -resize: FL_RESIZE_ALL -gravity: FL_NoGravity FL_NoGravity -name: button_cancel -callback: C_FormBaseCancelCB -argument: 0 - -------------------- class: FL_BEGIN_GROUP type: 0 @@ -681,5 +627,77 @@ name: check_subcaption callback: C_FormBaseInputCB argument: CHECKINPUT +-------------------- +class: FL_BUTTON +type: NORMAL_BUTTON +box: 20 350 90 30 +boxtype: FL_UP_BOX +colors: FL_COL1 FL_COL1 +alignment: FL_ALIGN_CENTER +style: FL_NORMAL_STYLE +size: FL_DEFAULT_SIZE +lcol: FL_BLACK +label: Update|#U +shortcut: +resize: FL_RESIZE_NONE +gravity: FL_SouthWest FL_SouthWest +name: button_restore +callback: C_FormBaseRestoreCB +argument: 0 + +-------------------- +class: FL_BUTTON +type: RETURN_BUTTON +box: 190 350 90 30 +boxtype: FL_UP_BOX +colors: FL_COL1 FL_COL1 +alignment: FL_ALIGN_CENTER +style: FL_NORMAL_STYLE +size: FL_DEFAULT_SIZE +lcol: FL_BLACK +label: Ok +shortcut: ^M +resize: FL_RESIZE_ALL +gravity: FL_NoGravity FL_NoGravity +name: button_ok +callback: C_FormBaseOKCB +argument: 0 + +-------------------- +class: FL_BUTTON +type: NORMAL_BUTTON +box: 290 350 90 30 +boxtype: FL_UP_BOX +colors: FL_COL1 FL_COL1 +alignment: FL_ALIGN_CENTER +style: FL_NORMAL_STYLE +size: FL_DEFAULT_SIZE +lcol: FL_BLACK +label: Apply|#A +shortcut: +resize: FL_RESIZE_ALL +gravity: FL_NoGravity FL_NoGravity +name: button_apply +callback: C_FormBaseApplyCB +argument: 0 + +-------------------- +class: FL_BUTTON +type: NORMAL_BUTTON +box: 390 350 90 30 +boxtype: FL_UP_BOX +colors: FL_COL1 FL_COL1 +alignment: FL_ALIGN_CENTER +style: FL_NORMAL_STYLE +size: FL_DEFAULT_SIZE +lcol: FL_BLACK +label: Cancel|^[ +shortcut: +resize: FL_RESIZE_ALL +gravity: FL_NoGravity FL_NoGravity +name: button_cancel +callback: C_FormBaseCancelCB +argument: 0 + ============================== create_the_forms diff --git a/src/frontends/xforms/forms/form_index.fd b/src/frontends/xforms/forms/form_index.fd index 3a2ba9b1ac..f13056e3aa 100644 --- a/src/frontends/xforms/forms/form_index.fd +++ b/src/frontends/xforms/forms/form_index.fd @@ -10,7 +10,7 @@ Unit of measure: FL_COORD_PIXEL Name: form_index Width: 520 Height: 100 -Number of Objects: 4 +Number of Objects: 6 -------------------- class: FL_BOX @@ -44,32 +44,32 @@ label: Keyword shortcut: Keyword|#K resize: FL_RESIZE_X gravity: FL_NoGravity FL_NoGravity -name: key -callback: -argument: +name: input_key +callback: C_FormBaseInputCB +argument: 0 -------------------- class: FL_BUTTON type: NORMAL_BUTTON -box: 410 60 100 30 +box: 10 60 100 30 boxtype: FL_UP_BOX colors: FL_COL1 FL_COL1 alignment: FL_ALIGN_CENTER style: FL_NORMAL_STYLE size: FL_NORMAL_SIZE lcol: FL_BLACK -label: Cancel|#C^[ +label: Restore|#R shortcut: resize: FL_RESIZE_NONE -gravity: FL_SouthEast FL_SouthEast -name: button_cancel -callback: C_FormBaseCancelCB +gravity: FL_SouthWest FL_SouthWest +name: button_restore +callback: C_FormBaseRestoreCB argument: 0 -------------------- class: FL_BUTTON type: RETURN_BUTTON -box: 300 60 100 30 +box: 190 60 100 30 boxtype: FL_UP_BOX colors: FL_COL1 FL_COL1 alignment: FL_ALIGN_CENTER @@ -78,11 +78,47 @@ size: FL_DEFAULT_SIZE lcol: FL_BLACK label: OK shortcut: ^M -resize: FL_RESIZE_ALL +resize: FL_RESIZE_NONE gravity: FL_SouthEast FL_SouthEast -name: ok +name: button_ok callback: C_FormBaseOKCB argument: 0 +-------------------- +class: FL_BUTTON +type: NORMAL_BUTTON +box: 300 60 100 30 +boxtype: FL_UP_BOX +colors: FL_COL1 FL_COL1 +alignment: FL_ALIGN_CENTER +style: FL_NORMAL_STYLE +size: FL_NORMAL_SIZE +lcol: FL_BLACK +label: Apply|#A +shortcut: +resize: FL_RESIZE_NONE +gravity: FL_SouthEast FL_SouthEast +name: button_apply +callback: C_FormBaseApplyCB +argument: 0 + +-------------------- +class: FL_BUTTON +type: NORMAL_BUTTON +box: 410 60 100 30 +boxtype: FL_UP_BOX +colors: FL_COL1 FL_COL1 +alignment: FL_ALIGN_CENTER +style: FL_NORMAL_STYLE +size: FL_NORMAL_SIZE +lcol: FL_BLACK +label: Cancel|#C^[ +shortcut: +resize: FL_RESIZE_NONE +gravity: FL_SouthEast FL_SouthEast +name: button_cancel +callback: C_FormBaseCancelCB +argument: 0 + ============================== create_the_forms diff --git a/src/frontends/xforms/forms/form_toc.fd b/src/frontends/xforms/forms/form_toc.fd index 1dac62c828..4b801b6f61 100644 --- a/src/frontends/xforms/forms/form_toc.fd +++ b/src/frontends/xforms/forms/form_toc.fd @@ -44,26 +44,8 @@ label: shortcut: resize: FL_RESIZE_ALL gravity: FL_NorthWest FL_SouthEast -name: browser -callback: C_FormBaseApplyCB -argument: 0 - --------------------- -class: FL_BUTTON -type: RETURN_BUTTON -box: 310 300 100 30 -boxtype: FL_UP_BOX -colors: FL_COL1 FL_COL1 -alignment: FL_ALIGN_CENTER -style: FL_NORMAL_STYLE -size: FL_NORMAL_SIZE -lcol: FL_BLACK -label: Close|#C^[^M -shortcut: -resize: FL_RESIZE_NONE -gravity: FL_SouthEast FL_SouthEast -name: -callback: C_FormBaseCancelCB +name: browser_toc +callback: C_FormBaseInputCB argument: 0 -------------------- @@ -80,8 +62,8 @@ label: Update|#U shortcut: resize: FL_RESIZE_NONE gravity: FL_SouthEast FL_SouthEast -name: -callback: C_FormBaseApplyCB +name: button_update +callback: C_FormBaseInputCB argument: 0 -------------------- @@ -98,8 +80,26 @@ label: Type|#T shortcut: resize: FL_RESIZE_NONE gravity: FL_SouthEast FL_SouthEast -name: type -callback: C_FormBaseApplyCB +name: choice_toc_type +callback: C_FormBaseInputCB +argument: 0 + +-------------------- +class: FL_BUTTON +type: RETURN_BUTTON +box: 310 300 100 30 +boxtype: FL_UP_BOX +colors: FL_COL1 FL_COL1 +alignment: FL_ALIGN_CENTER +style: FL_NORMAL_STYLE +size: FL_NORMAL_SIZE +lcol: FL_BLACK +label: Close|#C^[^M +shortcut: ^M +resize: FL_RESIZE_NONE +gravity: FL_SouthEast FL_SouthEast +name: button_cancel +callback: C_FormBaseCancelCB argument: 0 ============================== diff --git a/src/frontends/xforms/forms/form_url.fd b/src/frontends/xforms/forms/form_url.fd index d068619c56..5b4374bda1 100644 --- a/src/frontends/xforms/forms/form_url.fd +++ b/src/frontends/xforms/forms/form_url.fd @@ -9,13 +9,13 @@ Unit of measure: FL_COORD_PIXEL =============== FORM =============== Name: form_url Width: 520 -Height: 140 -Number of Objects: 6 +Height: 170 +Number of Objects: 8 -------------------- class: FL_BOX type: UP_BOX -box: 0 0 520 140 +box: 0 0 520 170 boxtype: FL_UP_BOX colors: FL_COL1 FL_COL1 alignment: FL_ALIGN_CENTER @@ -33,7 +33,7 @@ argument: -------------------- class: FL_INPUT type: NORMAL_INPUT -box: 70 20 440 30 +box: 70 50 440 30 boxtype: FL_DOWN_BOX colors: FL_COL1 FL_MCOL alignment: FL_ALIGN_LEFT @@ -45,13 +45,13 @@ shortcut: resize: FL_RESIZE_X gravity: FL_NorthWest FL_NorthEast name: url -callback: -argument: +callback: C_FormBaseInputCB +argument: 0 -------------------- class: FL_INPUT type: NORMAL_INPUT -box: 70 60 440 30 +box: 70 90 440 30 boxtype: FL_DOWN_BOX colors: FL_COL1 FL_MCOL alignment: FL_ALIGN_LEFT @@ -63,16 +63,16 @@ shortcut: resize: FL_RESIZE_X gravity: FL_NorthWest FL_NorthEast name: name -callback: -argument: +callback: C_FormBaseInputCB +argument: 0 -------------------- class: FL_CHECKBUTTON type: PUSH_BUTTON -box: 70 100 230 30 +box: 480 10 30 30 boxtype: FL_NO_BOX colors: FL_COL1 FL_YELLOW -alignment: FL_ALIGN_CENTER +alignment: FL_ALIGN_LEFT style: FL_NORMAL_STYLE size: FL_NORMAL_SIZE lcol: FL_BLACK @@ -81,13 +81,13 @@ shortcut: resize: FL_RESIZE_X gravity: FL_NorthWest FL_NorthEast name: radio_html -callback: -argument: +callback: C_FormBaseInputCB +argument: 0 -------------------- class: FL_BUTTON type: NORMAL_BUTTON -box: 410 100 100 30 +box: 410 130 100 30 boxtype: FL_UP_BOX colors: FL_COL1 FL_COL1 alignment: FL_ALIGN_CENTER @@ -105,7 +105,7 @@ argument: 0 -------------------- class: FL_BUTTON type: RETURN_BUTTON -box: 300 100 100 30 +box: 190 130 100 30 boxtype: FL_UP_BOX colors: FL_COL1 FL_COL1 alignment: FL_ALIGN_CENTER @@ -120,5 +120,41 @@ name: button_ok callback: C_FormBaseOKCB argument: 0 +-------------------- +class: FL_BUTTON +type: NORMAL_BUTTON +box: 300 130 100 30 +boxtype: FL_UP_BOX +colors: FL_COL1 FL_COL1 +alignment: FL_ALIGN_CENTER +style: FL_NORMAL_STYLE +size: FL_NORMAL_SIZE +lcol: FL_BLACK +label: Apply|#A +shortcut: +resize: FL_RESIZE_NONE +gravity: FL_SouthEast FL_SouthEast +name: button_apply +callback: C_FormBaseApplyCB +argument: 0 + +-------------------- +class: FL_BUTTON +type: NORMAL_BUTTON +box: 10 130 100 30 +boxtype: FL_UP_BOX +colors: FL_COL1 FL_COL1 +alignment: FL_ALIGN_CENTER +style: FL_NORMAL_STYLE +size: FL_NORMAL_SIZE +lcol: FL_BLACK +label: Restore|#R +shortcut: +resize: FL_RESIZE_NONE +gravity: FL_SouthEast FL_SouthEast +name: button_restore +callback: C_FormBaseRestoreCB +argument: 0 + ============================== create_the_forms diff --git a/src/insets/Makefile.am b/src/insets/Makefile.am index 89a70b885d..6be17f0fcc 100644 --- a/src/insets/Makefile.am +++ b/src/insets/Makefile.am @@ -13,8 +13,6 @@ libinsets_la_SOURCES = \ ExternalTemplate.h \ figinset.C \ figinset.h \ - form_graphics.C \ - form_graphics.h \ inset.C \ insetbib.C \ insetbib.h \ diff --git a/src/insets/figinset.C b/src/insets/figinset.C index 1edd6043e1..f30aba6218 100644 --- a/src/insets/figinset.C +++ b/src/insets/figinset.C @@ -62,6 +62,11 @@ #include "bufferview_funcs.h" #include "ColorHandler.h" #include "converter.h" +#include "frontends/Dialogs.h" // redrawGUI + +#ifdef SIGC_CXX_NAMESPACES +using SigC::slot; +#endif using std::ostream; using std::istream; @@ -941,6 +946,7 @@ InsetFig::InsetFig(int tmpx, int tmpy, Buffer const & o) raw_wid = raw_hgh = 0; changedfname = false; RegisterFigure(this); + r_ = Dialogs::redrawGUI.connect(slot(this, &InsetFig::redraw)); } @@ -950,6 +956,14 @@ InsetFig::~InsetFig() lyxerr << "Figure destructor called" << endl; } UnregisterFigure(this); + r_.disconnect(); +} + + +void InsetFig::redraw() +{ + if (form && form->Figure->visible) + fl_redraw_form(form->Figure); } diff --git a/src/insets/figinset.h b/src/insets/figinset.h index 421a0da786..866cce2882 100644 --- a/src/insets/figinset.h +++ b/src/insets/figinset.h @@ -12,12 +12,17 @@ #include "buffer.h" #include "LaTeXFeatures.h" #include "insets/lyxinset.h" +#include /* the rest is figure stuff */ struct Figref; +#ifdef SIGC_CXX_NAMESPACES +using SigC::Object; +#endif + /// -class InsetFig: public Inset { +class InsetFig: public Inset, public Object { public: /// InsetFig(int tmpx, int tmpy, Buffer const &); @@ -132,6 +137,10 @@ public: /// bool psubfigure; private: + /** Redraw the form (on receipt of a Signal indicating, for example, + that the xform colors have been re-mapped). + */ + void redraw(); /// Buffer const * owner; @@ -145,6 +154,8 @@ private: void TempRegenerate(); /// get sizes from .eps file void GetPSSizes(); + /// Redraw connection. + SigC::Connection r_; }; diff --git a/src/insets/form_graphics.C b/src/insets/form_graphics.C deleted file mode 100644 index 5970962b8c..0000000000 --- a/src/insets/form_graphics.C +++ /dev/null @@ -1,111 +0,0 @@ -#include -#include "lyx_gui_misc.h" -#include "gettext.h" - -#include FORMS_H_LOCATION -#include -#include "form_graphics.h" - -extern "C" void GraphicxCB(FL_OBJECT*,long); - -FD_Graphics * create_form_Graphics(void) -{ - FL_OBJECT * obj; - FD_Graphics * fdui = (FD_Graphics *) fl_calloc(1, sizeof(FD_Graphics)); - - fdui->Graphics = fl_bgn_form(FL_NO_BOX, 420, 390); - - obj = fl_add_box(FL_UP_BOX, 0, 0, 420, 390, ""); - - obj = fl_add_frame(FL_ENGRAVED_FRAME, 230, 220, 180, 80, ""); - fl_set_object_color(obj, FL_COL1, FL_COL1); - - obj = fl_add_frame(FL_ENGRAVED_FRAME, 230, 60, 180, 140, ""); - fl_set_object_color(obj, FL_COL1, FL_COL1); - - obj = fl_add_frame(FL_ENGRAVED_FRAME, 10, 244, 200, 56, ""); - fl_set_object_color(obj, FL_COL1, FL_COL1); - - obj = fl_add_frame(FL_ENGRAVED_FRAME, 10, 60, 200, 160, ""); - fl_set_object_color(obj, FL_COL1, FL_COL1); - - fdui->graphicsFile = obj = fl_add_input(FL_NORMAL_INPUT, - 80, 10, 230, 30, - idex(_("Graphics file|#G"))); - fl_set_button_shortcut(obj, scex(_("Graphics file|#G")), 1); - fl_set_object_lsize(obj, FL_NORMAL_SIZE); - //fl_set_object_callback(obj, GraphicxCB, 0); - - fdui->Browse = obj = fl_add_button(FL_NORMAL_BUTTON, 320, 10, 90, 30, - idex(_("Browse...|#B"))); - fl_set_button_shortcut(obj, scex(_("Browse...|#B")), 1); - fl_set_object_lsize(obj, FL_NORMAL_SIZE); - fl_set_object_callback(obj, GraphicxCB, 1); - - fdui->Width = obj = fl_add_input(FL_FLOAT_INPUT, 20, 180, 80, 30, ""); - fl_set_object_lsize(obj, FL_NORMAL_SIZE); - fl_set_object_callback(obj, GraphicxCB, 99); - - fdui->Height = obj = fl_add_input(FL_FLOAT_INPUT, - 120, 180, 80, 30, ""); - fl_set_object_lsize(obj, FL_NORMAL_SIZE); - fl_set_object_callback(obj, GraphicxCB, 99); - - fdui->ApplyBtn = obj = fl_add_button(FL_NORMAL_BUTTON, - 100, 350, 60, 30, - idex(_("Apply|#A"))); - fl_set_button_shortcut(obj, scex(_("Apply|#A")), 1); - fl_set_object_lsize(obj, FL_NORMAL_SIZE); - fl_set_object_callback(obj, GraphicxCB, 2); - - fdui->OkBtn = obj = fl_add_button(FL_RETURN_BUTTON, - 10, 350, 70, 30, _("OK")); - fl_set_object_lsize(obj, FL_NORMAL_SIZE); - fl_set_object_callback(obj, GraphicxCB, 3); - - fdui->CancelBtn = obj = fl_add_button(FL_NORMAL_BUTTON, - 180, 350, 70, 30, - idex(_("Cancel|^["))); - fl_set_button_shortcut(obj, scex(_("Cancel|^[")), 1); - fl_set_object_lsize(obj, FL_NORMAL_SIZE); - fl_set_object_callback(obj, GraphicxCB, 4); - - obj = fl_add_text(FL_NORMAL_TEXT, 240, 210, 70, 20, _("Options")); - fl_set_object_lsize(obj, FL_NORMAL_SIZE); - fl_set_object_lalign(obj, FL_ALIGN_LEFT|FL_ALIGN_INSIDE); - fl_set_object_lstyle(obj, FL_BOLD_STYLE); - - fdui->Angle = obj = fl_add_input(FL_FLOAT_INPUT, 100, 260, 80, 30, - idex(_("Angle:|#L"))); - fl_set_button_shortcut(obj, scex(_("Angle:|#L")), 1); - fl_set_object_lsize(obj, FL_NORMAL_SIZE); - fl_set_object_callback(obj, GraphicxCB, 99); - - obj = fl_add_text(FL_NORMAL_TEXT, 237, 50, 53, 20, _("Display")); - fl_set_object_lsize(obj, FL_NORMAL_SIZE); - fl_set_object_lalign(obj, FL_ALIGN_LEFT|FL_ALIGN_INSIDE); - fl_set_object_lstyle(obj, FL_BOLD_STYLE); - - fdui->HeightLabel = obj = fl_add_text(FL_NORMAL_TEXT, - 120, 50, 60, 20, _("Height")); - fl_set_object_lsize(obj, FL_NORMAL_SIZE); - fl_set_object_lalign(obj, FL_ALIGN_LEFT|FL_ALIGN_INSIDE); - fl_set_object_lstyle(obj, FL_BOLD_STYLE); - - fdui->WidthLabel = obj = fl_add_text(FL_NORMAL_TEXT, - 20, 50, 60, 20, _("Width")); - fl_set_object_lsize(obj, FL_NORMAL_SIZE); - fl_set_object_lalign(obj, FL_ALIGN_LEFT|FL_ALIGN_INSIDE); - fl_set_object_lstyle(obj, FL_BOLD_STYLE); - - obj = fl_add_text(FL_NORMAL_TEXT, 20, 230, 90, 30, _("Rotation")); - fl_set_object_lsize(obj, FL_NORMAL_SIZE); - fl_set_object_lalign(obj, FL_ALIGN_LEFT|FL_ALIGN_INSIDE); - fl_set_object_lstyle(obj, FL_BOLD_STYLE); - - fl_end_form(); - - //fdui->Figure->fdui = fdui; - - return fdui; -} diff --git a/src/insets/form_graphics.h b/src/insets/form_graphics.h deleted file mode 100644 index 41438f7de9..0000000000 --- a/src/insets/form_graphics.h +++ /dev/null @@ -1,32 +0,0 @@ -/** Header file generated with fdesign on Fri Apr 30 16:14:04 1999.**/ - -#ifndef FORM_GRAPHICS_H -#define FORM_GRAPHICS_H - -#include FORMS_H_LOCATION - -/** Callbacks, globals and object handlers **/ - -extern "C" void GraphicsCB(FL_OBJECT *, long); - -struct FD_Graphics { - FL_FORM * Graphics; - void * vdata; - char * cdata; - long ldata; - FL_OBJECT * graphicsFile; - FL_OBJECT * Browse; - FL_OBJECT * Width; - FL_OBJECT * Height; - FL_OBJECT * ApplyBtn; - FL_OBJECT * OkBtn; - FL_OBJECT * CancelBtn; - FL_OBJECT * Angle; - FL_OBJECT * HeightLabel; - FL_OBJECT * WidthLabel; -}; - -extern FD_Graphics * create_form_Graphics(); - - -#endif diff --git a/src/insets/insetexternal.C b/src/insets/insetexternal.C index 77435740d2..d1f7fd49be 100644 --- a/src/insets/insetexternal.C +++ b/src/insets/insetexternal.C @@ -29,6 +29,11 @@ #include "support/lstrings.h" #include "support/path.h" #include "support/syscall.h" +#include "frontends/Dialogs.h" // redrawGUI + +#ifdef SIGC_CXX_NAMESPACES +using SigC::slot; +#endif using std::endl; @@ -37,12 +42,21 @@ InsetExternal::InsetExternal() : form_external(0) { tempname = lyx::tempName(); //TmpFileName(); + r_ = Dialogs::redrawGUI.connect(slot(this, &InsetExternal::redraw)); } InsetExternal::~InsetExternal() { lyx::unlink(tempname); + r_.disconnect(); +} + + +void InsetExternal::redraw() +{ + if (form_external && form_external->form_external->visible) + fl_redraw_form(form_external->form_external); } diff --git a/src/insets/insetexternal.h b/src/insets/insetexternal.h index ae5568b88e..3eb06c7b98 100644 --- a/src/insets/insetexternal.h +++ b/src/insets/insetexternal.h @@ -19,11 +19,16 @@ #include "insetbutton.h" #include "LString.h" #include "../lyx.h" +#include struct ExternalTemplate; +#ifdef SIGC_CXX_NAMESPACES +using SigC::Object; +#endif + /// -class InsetExternal : public InsetButton { +class InsetExternal : public InsetButton, public Object { public: InsetExternal(); /// @@ -85,6 +90,11 @@ public: /// Callback function for the cancel button static void cancelCB(FL_OBJECT *, long); private: + /** Redraw the form (on receipt of a Signal indicating, for example, + that the xform colors have been re-mapped). + */ + void redraw(); + /// Write the output for a specific file format int write(string const & format, Buffer const *, std::ostream &) const; @@ -150,6 +160,9 @@ private: /// A temp filename string tempname; + + /// Redraw connection. + SigC::Connection r_; }; #endif diff --git a/src/intl.C b/src/intl.C index 2eb88498aa..371d44da9b 100644 --- a/src/intl.C +++ b/src/intl.C @@ -29,6 +29,11 @@ #include "trans_mgr.h" #include "support/lstrings.h" #include "language.h" +#include "frontends/Dialogs.h" // redrawGUI + +#ifdef SIGC_CXX_NAMESPACES +using SigC::slot; +#endif using std::endl; @@ -46,14 +51,23 @@ Intl::Intl() primarykeymap = false; curkeymap = 0; otherkeymap = 0; + r_ = Dialogs::redrawGUI.connect(slot(this, &Intl::redraw)); } Intl::~Intl() { + r_.disconnect(); delete trans; } +void Intl::redraw() +{ + if (fd_form_keymap && fd_form_keymap->KeyMap->visible) + fl_redraw_form(fd_form_keymap->KeyMap); +} + + int Intl::SetPrimary(string const & lang) { if (lyxerr.debugging(Debug::KBMAP)) diff --git a/src/intl.h b/src/intl.h index b30d41de83..2d5fcb78c3 100644 --- a/src/intl.h +++ b/src/intl.h @@ -14,11 +14,15 @@ #include "LString.h" #include "form1.h" +#include class LyXText; class Combox; class TransManager; +#ifdef SIGC_CXX_NAMESPACES +using SigC::Object; +#endif /// default character set #define DEFCHSET "iso8859-1" @@ -28,7 +32,7 @@ class TransManager; classes. Probably should the gui class just have a pointer to the non gui class. */ -class Intl { +class Intl : public Object { public: /// Intl(); @@ -67,6 +71,10 @@ public: /// static void DispatchCallback(FL_OBJECT *, long); private: + /** Redraw the form (on receipt of a Signal indicating, for example, + that the xform colors have been re-mapped). + */ + void redraw(); /// void update(); /// @@ -90,6 +98,8 @@ private: string & sec_lang; /// TransManager * trans; + /// Redraw connection. + SigC::Connection r_; }; diff --git a/src/lyx_gui_misc.C b/src/lyx_gui_misc.C index 6606b7ae86..bb067c0e02 100644 --- a/src/lyx_gui_misc.C +++ b/src/lyx_gui_misc.C @@ -20,6 +20,7 @@ #include "BufferView.h" #include "bibforms.h" #include "buffer.h" +#include "credits_form.h" #include "form1.h" #include "gettext.h" #include "include_form.h" @@ -44,11 +45,13 @@ using std::endl; extern BufferView * current_view; extern FD_form_character * fd_form_character; +extern FD_form_credits * fd_form_credits; +extern FD_form_figure * fd_form_figure; extern FD_form_preamble * fd_form_preamble; extern FD_form_sendto * fd_form_sendto; -extern FD_form_figure * fd_form_figure; -extern FD_LaTeXLog * fd_latex_log; extern FD_form_spell_check * fd_form_spell_check; +extern FD_form_spell_options * fd_form_spell_options; +extern FD_LaTeXLog * fd_latex_log; extern FD_panel * fd_panel; extern FD_delim * fd_delim; extern FD_deco * fd_deco; @@ -64,7 +67,58 @@ extern "C" int CancelCloseBoxCB(FL_FORM *, void *) { return FL_CANCEL; } - +// Redraw the form (on receipt of a Signal indicating, for example, +// that the xform colors have been re-mapped). +void RedrawAllBufferRelatedDialogs() +{ + if (bibitem_form && bibitem_form->bibitem_form->visible) { + fl_redraw_form(bibitem_form->bibitem_form); + } + if (fd_deco && fd_deco->deco->visible) { + fl_redraw_form(fd_deco->deco); + } + if (fd_delim && fd_delim->delim->visible) { + fl_redraw_form(fd_delim->delim); + } + if (fd_form_character->form_character->visible) { + fl_redraw_form(fd_form_character->form_character); + } + if (fd_form_credits && fd_form_credits->form_credits->visible) { + fl_redraw_form(fd_form_credits->form_credits); + } + if (fd_form_figure->form_figure->visible) { + fl_redraw_form(fd_form_figure->form_figure); + } + if (fd_form_preamble->form_preamble->visible) { + fl_redraw_form(fd_form_preamble->form_preamble); + } + if (fd_form_sendto->form_sendto->visible) { + fl_redraw_form(fd_form_sendto->form_sendto); + } + if (fd_form_spell_check && + fd_form_spell_check->form_spell_check->visible) { + fl_redraw_form(fd_form_spell_check->form_spell_check); + } + if (fd_form_spell_options && + fd_form_spell_options->form_spell_options->visible) { + fl_redraw_form(fd_form_spell_options->form_spell_options); + } + if (fd_latex_log->LaTeXLog->visible) { + fl_redraw_form(fd_latex_log->LaTeXLog); + } + if (fd_matrix && fd_matrix->matrix->visible) { + fl_redraw_form(fd_matrix->matrix); + } + if (fd_panel && fd_panel->panel->visible) { + fl_redraw_form(fd_panel->panel); + } + if (fd_space && fd_space->space->visible) { + fl_redraw_form(fd_space->space); + } + if (form && form->include->visible) { + fl_redraw_form(form->include); + } +} // Prevents LyX from crashing when no buffers available // This is also one of the functions that we _really_ dont want diff --git a/src/lyx_gui_misc.h b/src/lyx_gui_misc.h index f94836fc05..f1e7e03fdf 100644 --- a/src/lyx_gui_misc.h +++ b/src/lyx_gui_misc.h @@ -27,6 +27,10 @@ class MiniBuffer; /// Prevents LyX from being killed when the close box is pressed in a popup. extern "C" int CancelCloseBoxCB(FL_FORM *, void *); +/** Redraw the form (on receipt of a Signal indicating, for example, + that the xform colors have been re-mapped). */ +void RedrawAllBufferRelatedDialogs(); + /// Prevents LyX from crashing when no buffers available void CloseAllBufferRelatedDialogs(); diff --git a/src/lyxfr0.C b/src/lyxfr0.C index 083e0c6a3a..21bd2a2e4a 100644 --- a/src/lyxfr0.C +++ b/src/lyxfr0.C @@ -17,7 +17,11 @@ #include "lyxfr0.h" #include "lyxfr1.h" #include "lyx_gui_misc.h" +#include "frontends/Dialogs.h" // redrawGUI +#ifdef SIGC_CXX_NAMESPACES +using SigC::slot; +#endif // callbacks for form form_search void SearchCancelCB(FL_OBJECT * ob, long) @@ -57,13 +61,23 @@ void SearchReplaceCB(FL_OBJECT * ob, long) SearchForm::SearchForm() : search_form(0) -{} +{ + r_ = Dialogs::redrawGUI.connect(slot(this, &SearchForm::redraw)); +} SearchForm::~SearchForm() { // The search_form should be closed and freed when SearchForm // is destructed. + r_.disconnect(); +} + + +void SearchForm::redraw() +{ + if (search_form && search_form->form_search->visible) + fl_redraw_form(search_form->form_search); } diff --git a/src/lyxfr0.h b/src/lyxfr0.h index 09949f2ed1..e9ca3a5507 100644 --- a/src/lyxfr0.h +++ b/src/lyxfr0.h @@ -9,9 +9,14 @@ #include "LString.h" #include FORMS_H_LOCATION #include "form1.h" +#include class LyXFindReplace; +#ifdef SIGC_CXX_NAMESPACES +using SigC::Object; +#endif + /** The comments below are most likely not valied anymore since the rewrite of LyXFindReplace0 and LyXFindReplace1. (Lgb) @@ -33,7 +38,7 @@ class LyXFindReplace; - regex searches (I'm working on that -- dnaber, 1999-02-24) */ -class SearchForm { +class SearchForm : public Object { public: /// SearchForm(); @@ -76,10 +81,16 @@ public: /// bool ValidSearchData() const { return !(SearchString().empty()); } private: + /** Redraw the form (on receipt of a Signal indicating, for example, + that the xform colors have been re-mapped). + */ + void redraw(); /// FD_form_search * search_form; /// replace buttons enabled? bool fReplaceEnabled; + /// Redraw connection. + SigC::Connection r_; }; #endif diff --git a/src/spellchecker.C b/src/spellchecker.C index 908bdfd1e8..1a71468b06 100644 --- a/src/spellchecker.C +++ b/src/spellchecker.C @@ -106,7 +106,8 @@ PspellManager * sc; #endif -static FD_form_spell_options *fd_form_spell_options = 0; +// Non-static so that it can be redrawn if the xforms colors are re-mapped +FD_form_spell_options *fd_form_spell_options = 0; FD_form_spell_check *fd_form_spell_check = 0; //void sigchldhandler(int sig); -- 2.39.2