Angus's 23rd November patch

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@1242 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Allan Rae 2000-11-28 06:46:06 +00:00
parent 62b6dff6f8
commit 2748a88bbd
64 changed files with 787 additions and 1120 deletions

View File

@ -1,3 +1,63 @@
2000-11-23 Angus Leeming <a.leeming@ic.ac.uk>
* 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 <larsbj@lyx.org> 2000-11-22 Lars Gullik Bjønnes <larsbj@lyx.org>
* src/version.h: try the pre2 again * src/version.h: try the pre2 again
@ -38,14 +98,14 @@
* src/LColor.C (init): * src/LColor.C (init):
* src/lyxrc.C (getDescription): changed some comments as suggested by * src/lyxrc.C (getDescription): changed some comments as suggested by
Rob Lahaye. John Levon.
* src/frontends/xforms/FormBase.[Ch]: modified to connect and * src/frontends/xforms/FormBase.[Ch]: modified to connect and
disconnect the redrawGUI signal in best-practice fashion. disconnect the redrawGUI signal in best-practice fashion.
* src/frontends/xforms/FormPreferences.[Ch]: renamed usage_tab_ as * src/frontends/xforms/FormPreferences.[Ch]: renamed usage_tab_ as
long_opts_tab to reflect the change in name of this tabfolder, 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 (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 ensuring that we can't resize the dialog. This just makes xforms go
crazy. crazy.
@ -59,7 +119,7 @@
* src/frontends/xforms/forms/fdfix.sh: a little speed up fix. * src/frontends/xforms/forms/fdfix.sh: a little speed up fix.
* src/frontends/xforms/forms/form_preferences.fd: used normal counters * 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 * src/frontends/xforms/forms/form_print.fd: used labelframe rather
than engraved frame + text. than engraved frame + text.

View File

@ -3,7 +3,7 @@ Magic: 13000
Internal Form Definition File Internal Form Definition File
(do not change) (do not change)
Number of forms: 2 Number of forms: 1
Unit of measure: FL_COORD_PIXEL Unit of measure: FL_COORD_PIXEL
=============== FORM =============== =============== FORM ===============

View File

@ -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

View File

@ -17,16 +17,16 @@ SHELL = /bin/sh
# Various commands # Various commands
FDESIGN = fdesign FDESIGN = fdesign
SRCS = credits_form.fd form1.fd \ SRCS = bibforms.fd credits_form.fd form1.fd include_form.fd \
log_form.fd layout_forms.fd lyx.fd lyx_sendfax.fd math_forms.fd \ log_form.fd layout_forms.fd lyx.fd math_forms.fd \
print_form.fd sp_form.fd print_form.fd sp_form.fd
OBJS = credits_form.c form1.c \ OBJS = bibforms.c credits_form.c form1.c include_form.c \
log_form.c layout_forms.c lyx.c lyx_sendfax.c math_forms.c \ log_form.c layout_forms.c lyx.c math_forms.c \
print_form.c sp_form.c print_form.c sp_form.c
COBJS = credits_form.C form1.C \ COBJS = bibforms.C credits_form.C form1.C include_form.C \
log_form.C layout_forms.C lyx.C lyx_sendfax.C math_forms.C \ log_form.C layout_forms.C lyx.C math_forms.C \
print_form.C sp_form.C print_form.C sp_form.C
all: all:
@ -52,7 +52,7 @@ e: c
for hfil in *.h ; do \ for hfil in *.h ; do \
if [ -f "$$hfil.patch" ] ; then \ if [ -f "$$hfil.patch" ] ; then \
(echo "Patching $$hfil with $$hfil.patch" ; \ (echo "Patching $$hfil with $$hfil.patch" ; \
patch --verbose $$hfil < $$hfil.patch) \ patch $$hfil < $$hfil.patch) \
fi; \ fi; \
sed < $$hfil > $$hfil.tmp \ sed < $$hfil > $$hfil.tmp \
-e 's/\(extern\) \(void.*FL_OBJECT\)/\1 "C" \2/' \ -e 's/\(extern\) \(void.*FL_OBJECT\)/\1 "C" \2/' \

View File

@ -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

View File

@ -48,41 +48,40 @@ src/frontends/kde/refdlg.C
src/frontends/kde/tocdlg.C src/frontends/kde/tocdlg.C
src/frontends/kde/urldlg.C src/frontends/kde/urldlg.C
src/frontends/xforms/FormBase.h src/frontends/xforms/FormBase.h
src/frontends/xforms/form_citation.C
src/frontends/xforms/FormCitation.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/FormCopyright.C
src/frontends/xforms/form_document.C src/frontends/xforms/form_copyright.C
src/frontends/xforms/FormDocument.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/FormError.C
src/frontends/xforms/form_graphics.C src/frontends/xforms/form_error.C
src/frontends/xforms/FormGraphics.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/FormIndex.C
src/frontends/xforms/form_index.C
src/frontends/xforms/FormInset.h src/frontends/xforms/FormInset.h
src/frontends/xforms/form_paragraph.C
src/frontends/xforms/FormParagraph.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/FormPreferences.C
src/frontends/xforms/form_print.C src/frontends/xforms/form_preferences.C
src/frontends/xforms/FormPrint.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/FormRef.C
src/frontends/xforms/form_tabular.C src/frontends/xforms/form_ref.C
src/frontends/xforms/FormTabular.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/FormTabularCreate.C
src/frontends/xforms/form_toc.C src/frontends/xforms/form_tabular_create.C
src/frontends/xforms/FormToc.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/FormUrl.C
src/frontends/xforms/form_url.C
src/frontends/xforms/Menubar_pimpl.C src/frontends/xforms/Menubar_pimpl.C
src/frontends/xforms/xform_helpers.C src/frontends/xforms/xform_helpers.C
src/gettext.h src/gettext.h
src/importer.C src/importer.C
src/insets/figinset.C src/insets/figinset.C
src/insets/form_graphics.C
src/insets/insetbib.C src/insets/insetbib.C
src/insets/inset.C src/insets/inset.C
src/insets/inseterror.C src/insets/inseterror.C

View File

@ -41,10 +41,10 @@ void ShowLatexLog()
if (!fl_load_browser(fd_latex_log->browser_latexlog, if (!fl_load_browser(fd_latex_log->browser_latexlog,
use_build ? bname.c_str() : fname.c_str())) use_build ? bname.c_str() : fname.c_str()))
fl_add_browser_line(fd_latex_log->browser_latexlog, fl_add_browser_line(fd_latex_log->browser_latexlog,
_("Unable to show log file!")); _("No LaTeX log file found"));
} else { } else {
fl_add_browser_line(fd_latex_log->browser_latexlog, fl_add_browser_line(fd_latex_log->browser_latexlog,
_("NO LATEX LOG FILE!")); _("No LaTeX log file found"));
} }
if (fd_latex_log->LaTeXLog->visible) { if (fd_latex_log->LaTeXLog->visible) {
fl_raise_form(fd_latex_log->LaTeXLog); fl_raise_form(fd_latex_log->LaTeXLog);

View File

@ -385,7 +385,7 @@ void LyXAction::init()
{ LFUN_TAB, "tab-forward", "", Noop }, { LFUN_TAB, "tab-forward", "", Noop },
{ LFUN_TABINSERT, "tab-insert", "", Noop }, { LFUN_TABINSERT, "tab-insert", "", Noop },
{ LFUN_DIALOG_TABULAR_INSERT, "dialog-tabular-insert", { LFUN_DIALOG_TABULAR_INSERT, "dialog-tabular-insert",
N_("Open Insert Tabular Dialog"), Noop }, N_("Insert Table"), Noop },
{ LFUN_TABULAR_FEATURE, "tabular-feature", { LFUN_TABULAR_FEATURE, "tabular-feature",
N_("Tabular Features"), Noop }, N_("Tabular Features"), Noop },
{ LFUN_INSET_TABULAR, "tabular-insert", { LFUN_INSET_TABULAR, "tabular-insert",

View File

@ -37,7 +37,7 @@
#include "frontends/Menubar.h" #include "frontends/Menubar.h"
#include "MenuBackend.h" #include "MenuBackend.h"
#include "ToolbarDefaults.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() #include "bufferview_funcs.h" // CurrentState()
using std::endl; using std::endl;
@ -75,6 +75,7 @@ LyXView::LyXView(int width, int height)
dialogs_->hideBufferDependent dialogs_->hideBufferDependent
.connect(slot(&CloseAllBufferRelatedDialogs)); .connect(slot(&CloseAllBufferRelatedDialogs));
Dialogs::redrawGUI.connect(slot(this, &LyXView::redraw)); Dialogs::redrawGUI.connect(slot(this, &LyXView::redraw));
Dialogs::redrawGUI.connect(slot(&RedrawAllBufferRelatedDialogs));
} }

View File

@ -205,9 +205,8 @@ void BufferParams::readLanguage(LyXLex & lex)
if (!language) { if (!language) {
// Language tmptok was not found // Language tmptok was not found
language = default_language; language = default_language;
lyxerr << "Warning: language `" lyxerr << "Warning: Setting language `"
<< tmptok << "' not recognized!\n" << tmptok << "' to `" << language->lang()
<< " Setting language to `" << language->lang()
<< "'." << endl; << "'." << endl;
} }
} }

View File

@ -25,7 +25,8 @@ extern string system_lyxdir;
/**** Forms and Objects ****/ /**** 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) { void CreditsOKCB(FL_OBJECT *, long) {
fl_hide_form(fd_form_credits->form_credits); fl_hide_form(fd_form_credits->form_credits);

View File

@ -27,6 +27,7 @@ using std::sort;
#include "support/FileInfo.h" #include "support/FileInfo.h"
#include "support/lyxlib.h" #include "support/lyxlib.h"
#include "gettext.h" #include "gettext.h"
#include "frontends/Dialogs.h"
#ifdef HAVE_ERRNO_H #ifdef HAVE_ERRNO_H
#include <cerrno> #include <cerrno>
@ -409,6 +410,21 @@ LyXFileDlg::LyXFileDlg()
} }
fl_hide_object(pFileDlgForm->User1); fl_hide_object(pFileDlgForm->User1);
fl_hide_object(pFileDlgForm->User2); 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);
} }

View File

@ -17,11 +17,16 @@
#endif #endif
#include <vector> #include <vector>
#include <sigc++/signal_system.h>
#include "LString.h" #include "LString.h"
#include FORMS_H_LOCATION #include FORMS_H_LOCATION
#include "form1.h" #include "form1.h"
#ifdef SIGC_CXX_NAMESPACES
using SigC::Object;
#endif
/// LyXDirEntry internal structure definition /// LyXDirEntry internal structure definition
class LyXDirEntry { class LyXDirEntry {
public: public:
@ -35,11 +40,13 @@ public:
/// FileDlg class definition /// FileDlg class definition
class LyXFileDlg class LyXFileDlg : public Object
{ {
public: public:
/// ///
LyXFileDlg(); LyXFileDlg();
///
~LyXFileDlg();
/// sets file selector user button action /// sets file selector user button action
void SetButton(int iIndex, string const & pszName = string(), void SetButton(int iIndex, string const & pszName = string(),
@ -89,6 +96,10 @@ private:
/// ///
bool force_ok; 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 /// updates dialog list to match class directory
void Reread(); void Reread();
/// sets dialog current directory /// sets dialog current directory
@ -107,6 +118,8 @@ private:
bool HandleOK(); bool HandleOK();
/// Simulates a click on OK/Cancel /// Simulates a click on OK/Cancel
void Force(bool); void Force(bool);
/// Redraw connection.
SigC::Connection r_;
}; };
#endif #endif

View File

@ -18,7 +18,7 @@
#include FORMS_H_LOCATION #include FORMS_H_LOCATION
#include "ButtonController.h" #include "ButtonController.h"
#include "gettext.h" #include "gettext.h"
#include <sigc++/signal_system.h> // temporary #include <sigc++/signal_system.h>
class Buffer; class Buffer;
class Dialogs; class Dialogs;
@ -57,7 +57,7 @@ protected: // methods
virtual ~FormBase(); virtual ~FormBase();
/** Redraw the form (on receipt of a Signal indicating, for example, /** 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 Must be virtual because dialogs with tabbed folders will need to
redraw the form for each tab. redraw the form for each tab.
*/ */

View File

@ -82,12 +82,19 @@ void FormCitation::build()
minw_ = form()->w; minw_ = form()->w;
minh_ = form()->h; 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_.setOK(dialog_->button_ok);
bc_.setApply(dialog_->button_apply); bc_.setApply(dialog_->button_apply);
bc_.setCancel(dialog_->button_cancel); bc_.setCancel(dialog_->button_cancel);
bc_.setUndoAll(dialog_->button_restore); bc_.setUndoAll(dialog_->button_restore);
bc_.refresh(); 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 ); setSize( size, bibPresent );
fl_set_input( dialog_->textAftr, params.getOptions().c_str()); fl_set_input( dialog_->textAftr, params.getOptions().c_str());
bc_.readOnly(lv_->buffer()->isReadonly());
} }

View File

@ -14,6 +14,7 @@
#include "LyXView.h" #include "LyXView.h"
#include "form_copyright.h" #include "form_copyright.h"
#include "FormCopyright.h" #include "FormCopyright.h"
#include "xform_helpers.h"
FormCopyright::FormCopyright( LyXView * lv, Dialogs * d ) FormCopyright::FormCopyright( LyXView * lv, Dialogs * d )
: FormBaseBI(lv, d, _("Copyright and Warranty"), : FormBaseBI(lv, d, _("Copyright and Warranty"),
@ -47,4 +48,23 @@ void FormCopyright::build()
// Workaround dumb xforms sizing bug // Workaround dumb xforms sizing bug
minw_ = form()->w; minw_ = form()->w;
minh_ = form()->h; 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();
} }

View File

@ -100,7 +100,7 @@ void FormDocument::build()
// the tabbed folder // the tabbed folder
dialog_ = build_tabbed_document(); 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_.setOK(dialog_->button_ok);
bc_.setApply(dialog_->button_apply); bc_.setApply(dialog_->button_apply);
bc_.setCancel(dialog_->button_cancel); bc_.setCancel(dialog_->button_cancel);

View File

@ -23,7 +23,7 @@
FormError::FormError(LyXView * lv, Dialogs * d) FormError::FormError(LyXView * lv, Dialogs * d)
: FormInset( lv, d, _("LaTeX Error"), new IgnorantPolicy), : FormInset( lv, d, _("LaTeX Error"), new OkApplyCancelPolicy),
dialog_(0), inset_(0) dialog_(0), inset_(0)
{ {
Assert(lv && d); Assert(lv && d);
@ -83,4 +83,8 @@ void FormError::build()
// Workaround dumb xforms sizing bug // Workaround dumb xforms sizing bug
minw_ = form()->w; minw_ = form()->w;
minh_ = form()->h; minh_ = form()->h;
// Manage the cancel/close button
bc_.setCancel(dialog_->button_cancel);
bc_.refresh();
} }

View File

@ -40,7 +40,7 @@ using std::endl;
FormGraphics::FormGraphics(LyXView * lv, Dialogs * d) FormGraphics::FormGraphics(LyXView * lv, Dialogs * d)
: FormInset(lv, d, _("Graphics"), new NoRepeatedApplyReadOnlyPolicy), : FormInset(lv, d, _("Graphics"), new OkApplyCancelReadOnlyPolicy),
dialog_(0), inset_(0), dialog_(0), inset_(0),
// The buttons c-tor values are the number of buttons we use // The buttons c-tor values are the number of buttons we use
// This is only to reduce memory waste. // This is only to reduce memory waste.
@ -142,12 +142,24 @@ void FormGraphics::build()
displayButtons.registerRadioButton(dialog_->radio_no_display, displayButtons.registerRadioButton(dialog_->radio_no_display,
InsetGraphicsParams::NONE); 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_.setOK(dialog_->button_ok);
bc_.setApply(dialog_->button_apply); bc_.setApply(dialog_->button_apply);
bc_.setCancel(dialog_->button_cancel); bc_.setCancel(dialog_->button_cancel);
bc_.setUndoAll(0); bc_.setUndoAll(dialog_->button_restore);
bc_.refresh(); 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, fl_set_button(dialog_->check_inline,
igp.inlineFigure); 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. // Now make sure that the buttons are set correctly.
input(0, 0); input(0, 0);
} }

View File

@ -26,7 +26,7 @@
#include "lyxfunc.h" #include "lyxfunc.h"
FormIndex::FormIndex(LyXView * lv, Dialogs * d) FormIndex::FormIndex(LyXView * lv, Dialogs * d)
: FormCommand(lv, d, _("Index"), new OkCancelReadOnlyPolicy), : FormCommand(lv, d, _("Index"), new OkApplyCancelReadOnlyPolicy),
dialog_(0) dialog_(0)
{ {
// let the dialog be shown // let the dialog be shown
@ -61,28 +61,30 @@ void FormIndex::build()
{ {
dialog_ = build_index(); dialog_ = build_index();
#ifdef WITH_WARNINGS
#warning use the buttoncontroller
#endif
// Workaround dumb xforms sizing bug // Workaround dumb xforms sizing bug
minw_ = form()->w; minw_ = form()->w;
minh_ = form()->h; 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() void FormIndex::update()
{ {
fl_set_input(dialog_->key, params.getContents().c_str()); fl_set_input(dialog_->input_key, params.getContents().c_str());
// Surely, this should reset the buttons to their original state?
if (lv_->buffer()->isReadonly()) { // It doesn't. Instead "Restore" becomes a "Close"
fl_deactivate_object(dialog_->key); //bc_.refresh();
fl_deactivate_object(dialog_->ok); bc_.readOnly(lv_->buffer()->isReadonly());
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);
}
} }
@ -90,7 +92,7 @@ void FormIndex::apply()
{ {
if (lv_->buffer()->isReadonly()) return; if (lv_->buffer()->isReadonly()) return;
params.setContents(fl_get_input(dialog_->key)); params.setContents(fl_get_input(dialog_->input_key));
if (inset_ != 0) { if (inset_ != 0) {
// Only update if contents have changed // Only update if contents have changed

View File

@ -78,7 +78,7 @@ void FormParagraph::build()
minw_ = form()->w; minw_ = form()->w;
minh_ = form()->h; 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_.setOK(dialog_->button_ok);
bc_.setApply(dialog_->button_apply); bc_.setApply(dialog_->button_apply);
bc_.setCancel(dialog_->button_cancel); bc_.setCancel(dialog_->button_cancel);

View File

@ -186,7 +186,7 @@ void FormPreferences::build()
{ {
dialog_ = build_preferences(); 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_.setOK(dialog_->button_ok);
bc_.setApply(dialog_->button_apply); bc_.setApply(dialog_->button_apply);
bc_.setCancel(dialog_->button_cancel); bc_.setCancel(dialog_->button_cancel);
@ -627,14 +627,14 @@ void FormPreferences::Colors::InputBrowserLyX() const
// Is the choice an Xforms color... // Is the choice an Xforms color...
RGBColor color; RGBColor color;
if( selLyX-1 < int(xformColorDB.size()) ) { if( selLyX-1 < xformColorDB.size() ) {
vector<XformColor>::size_type const i = selLyX - 1; vector<XformColor>::size_type const i = selLyX - 1;
color = xformColorDB[i].color(); color = xformColorDB[i].color();
} }
// or a LyX Logical color? // or a LyX Logical color?
else { else {
vector<NamedColor>::size_type const i = selLyX - 1 - vector<NamedColor>::size_type const i = selLyX - 1 -
xformColorDB.size(); xformColorDB.size();
color = lyxColorDB[i].color(); color = lyxColorDB[i].color();
} }
@ -969,29 +969,31 @@ void FormPreferences::Colors::Modify()
vector<NamedColor>::size_type const selLyX = vector<NamedColor>::size_type const selLyX =
fl_get_browser(dialog_->browser_lyx_objs); fl_get_browser(dialog_->browser_lyx_objs);
if (selLyX < 1) return; if (selLyX < 1) return;
vector<NamedColor>::size_type const selX11 = vector<NamedColor>::size_type const selX11 =
fl_get_browser(dialog_->browser_x11); fl_get_browser(dialog_->browser_x11);
if (selX11 < 1) return; if (selX11 < 1) return;
// Is the choice an Xforms color... // Is the choice an Xforms color...
if (selLyX-1 < int(xformColorDB.size())) { if( selLyX-1 < xformColorDB.size() ) {
vector<XformColor>::size_type const i = selLyX - 1; vector<XformColor>::size_type const i = selLyX - 1;
vector<NamedColor>::size_type const j = selX11 - 1; vector<NamedColor>::size_type const j = selX11 - 1;
xformColorDB[i].r = colorDB[j].r; xformColorDB[i].r = colorDB[j].r;
xformColorDB[i].g = colorDB[j].g; xformColorDB[i].g = colorDB[j].g;
xformColorDB[i].b = colorDB[j].b; xformColorDB[i].b = colorDB[j].b;
} else { // or a LyX Logical color? }
// or a LyX Logical color?
else {
vector<NamedColor>::size_type const i = selLyX - 1 - vector<NamedColor>::size_type const i = selLyX - 1 -
xformColorDB.size(); xformColorDB.size();
vector<NamedColor>::size_type const j = selX11 - 1; vector<NamedColor>::size_type const j = selX11 - 1;
lyxColorDB[i].r = colorDB[j].r; lyxColorDB[i].r = colorDB[j].r;
lyxColorDB[i].g = colorDB[j].g; lyxColorDB[i].g = colorDB[j].g;
lyxColorDB[i].b = colorDB[j].b; lyxColorDB[i].b = colorDB[j].b;
} }
fl_freeze_form(dialog_->form); fl_freeze_form(dialog_->form);
fl_deselect_browser(dialog_->browser_x11); fl_deselect_browser(dialog_->browser_x11);
fl_deactivate_object(dialog_->button_modify); fl_deactivate_object(dialog_->button_modify);
fl_set_object_lcol(dialog_->button_modify, FL_INACTIVE); fl_set_object_lcol(dialog_->button_modify, FL_INACTIVE);

View File

@ -58,7 +58,7 @@ void FormPrint::build()
minw_ = form()->w; minw_ = form()->w;
minh_ = form()->h; 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_.setOK(dialog_->button_ok);
bc_.setApply(dialog_->button_apply); bc_.setApply(dialog_->button_apply);
bc_.setCancel(dialog_->button_cancel); bc_.setCancel(dialog_->button_cancel);

View File

@ -93,10 +93,12 @@ void FormRef::build()
// Can change reference only through browser // Can change reference only through browser
fl_deactivate_object(dialog_->ref); fl_deactivate_object(dialog_->ref);
// Manage the ok and cancel/close buttons
bc_.setOK(dialog_->button_ok); bc_.setOK(dialog_->button_ok);
bc_.setCancel(dialog_->button_cancel); bc_.setCancel(dialog_->button_cancel);
bc_.addReadOnly(dialog_->type);
bc_.refresh(); bc_.refresh();
bc_.addReadOnly(dialog_->type);
} }

View File

@ -20,6 +20,7 @@
#include "FormTabularCreate.h" #include "FormTabularCreate.h"
#include "form_tabular_create.h" #include "form_tabular_create.h"
#include "buffer.h"
#include "BufferView.h" #include "BufferView.h"
#include "Dialogs.h" #include "Dialogs.h"
#include "LyXView.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_rows, 0);
fl_set_slider_precision(dialog_->slider_columns, 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_.setOK(dialog_->button_ok);
bc_.setApply(dialog_->button_apply); bc_.setApply(dialog_->button_apply);
bc_.setCancel(dialog_->button_cancel); bc_.setCancel(dialog_->button_cancel);
@ -90,3 +91,9 @@ void FormTabularCreate::apply()
delete in; delete in;
} }
} }
void FormTabularCreate::update()
{
bc_.readOnly(lv_->buffer()->isReadonly());
}

View File

@ -41,6 +41,8 @@ private:
/// Apply from dialog /// Apply from dialog
virtual void apply(); virtual void apply();
/// Update dialog before showing it
virtual void update();
/// Pointer to the actual instantiation of the xform's form /// Pointer to the actual instantiation of the xform's form
virtual FL_FORM * form() const; virtual FL_FORM * form() const;
/// Build the dialog /// Build the dialog

View File

@ -32,7 +32,7 @@
// confusing to the button controller so I've made an IgnorantPolicy to cover // 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 // this situation since the dialog doesn't care about buttons. ARRae 20001013
FormToc::FormToc(LyXView * lv, Dialogs * d) FormToc::FormToc(LyXView * lv, Dialogs * d)
: FormCommand(lv, d, _("Table of Contents"), new IgnorantPolicy), : FormCommand(lv, d, _("Table of Contents"), new OkApplyCancelPolicy),
dialog_(0) dialog_(0)
{ {
// let the dialog be shown // let the dialog be shown
@ -67,7 +67,7 @@ void FormToc::build()
{ {
dialog_ = build_toc(); dialog_ = build_toc();
fl_addto_choice(dialog_->type, fl_addto_choice(dialog_->choice_toc_type,
_(" TOC | LOF | LOT | LOA ")); _(" TOC | LOF | LOT | LOA "));
// Don't need to limit size of this dialog // Don't need to limit size of this dialog
@ -75,6 +75,10 @@ void FormToc::build()
// Workaround dumb xforms sizing bug // Workaround dumb xforms sizing bug
minw_ = form()->w; minw_ = form()->w;
minh_ = form()->h; minh_ = form()->h;
// Manage the cancel/close button
bc_.setCancel(dialog_->button_cancel);
bc_.refresh();
} }
@ -94,7 +98,7 @@ void FormToc::update()
else else
type = Buffer::TOC_LOT; type = Buffer::TOC_LOT;
fl_set_choice( dialog_->type, type+1 ); fl_set_choice( dialog_->choice_toc_type, type+1 );
updateToc(); updateToc();
} }
@ -104,15 +108,15 @@ void FormToc::updateToc()
{ {
if (!lv_->view()->available()) { if (!lv_->view()->available()) {
toclist.clear(); toclist.clear();
fl_clear_browser( dialog_->browser ); fl_clear_browser( dialog_->browser_toc );
fl_add_browser_line( dialog_->browser, fl_add_browser_line( dialog_->browser_toc,
_("*** No Document ***")); _("*** No Document ***"));
return; return;
} }
vector<vector<Buffer::TocItem> > tmp = vector<vector<Buffer::TocItem> > tmp =
lv_->view()->buffer()->getTocList(); 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. // Check if all elements are the same.
if (toclist.size() == tmp[type].size()) { if (toclist.size() == tmp[type].size()) {
@ -131,34 +135,33 @@ void FormToc::updateToc()
int topline = 0; int topline = 0;
int line = 0; int line = 0;
if (buffer == lv_->view()->buffer()) { if (buffer == lv_->view()->buffer()) {
topline = fl_get_browser_topline( dialog_->browser ); topline = fl_get_browser_topline( dialog_->browser_toc );
line = fl_get_browser( dialog_->browser ); line = fl_get_browser( dialog_->browser_toc );
} else } else
buffer = lv_->view()->buffer(); buffer = lv_->view()->buffer();
fl_clear_browser( dialog_->browser ); fl_clear_browser( dialog_->browser_toc );
for (vector<Buffer::TocItem>::const_iterator it = toclist.begin(); for (vector<Buffer::TocItem>::const_iterator it = toclist.begin();
it != toclist.end(); ++it) it != toclist.end(); ++it)
fl_add_browser_line( dialog_->browser, fl_add_browser_line( dialog_->browser_toc,
(string(4 * (*it).depth, ' ') (string(4 * (*it).depth, ' ')
+ (*it).str).c_str()); + (*it).str).c_str());
fl_set_browser_topline( dialog_->browser, topline ); fl_set_browser_topline( dialog_->browser_toc, topline );
fl_select_browser_line( dialog_->browser, line ); fl_select_browser_line( dialog_->browser_toc, line );
} }
void FormToc::apply() bool FormToc::input(FL_OBJECT *, long)
{ {
if (!lv_->view()->available())
return;
updateToc(); 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()) { if (0 < choice && choice - 1 < toclist.size()) {
string const tmp = tostr(toclist[choice-1].par->id()); string const tmp = tostr(toclist[choice-1].par->id());
lv_->getLyXFunc()->Dispatch(LFUN_GOTO_PARAGRAPH, tmp); lv_->getLyXFunc()->Dispatch(LFUN_GOTO_PARAGRAPH, tmp);
} }
return true;
} }

View File

@ -38,8 +38,8 @@ private:
virtual void updateSlot(bool) { update(); } virtual void updateSlot(bool) { update(); }
/// Update dialog before showing it /// Update dialog before showing it
virtual void update(); virtual void update();
/// Apply from dialog (modify or create inset) /// Filter the inputs on callback from xforms
virtual void apply(); virtual bool input( FL_OBJECT *, long);
/// Pointer to the actual instantiation of the xform's form /// Pointer to the actual instantiation of the xform's form
virtual FL_FORM * form() const; virtual FL_FORM * form() const;
/// ///

View File

@ -26,7 +26,7 @@
#include "lyxfunc.h" #include "lyxfunc.h"
FormUrl::FormUrl(LyXView * lv, Dialogs * d) FormUrl::FormUrl(LyXView * lv, Dialogs * d)
: FormCommand(lv, d, _("Url"), new OkCancelReadOnlyPolicy), : FormCommand(lv, d, _("Url"), new OkApplyCancelReadOnlyPolicy),
dialog_(0) dialog_(0)
{ {
// let the dialog be shown // let the dialog be shown
@ -45,7 +45,7 @@ FormUrl::~FormUrl()
FL_FORM * FormUrl::form() const FL_FORM * FormUrl::form() const
{ {
if (dialog_ ) return dialog_->form; if (dialog_) return dialog_->form;
return 0; return 0;
} }
@ -61,12 +61,23 @@ void FormUrl::build()
{ {
dialog_ = build_url(); dialog_ = build_url();
#ifdef WITH_WARNINGS
#warning use the buttoncontroller
#endif
// Workaround dumb xforms sizing bug // Workaround dumb xforms sizing bug
minw_ = form()->w; minw_ = form()->w;
minh_ = form()->h; 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 else
fl_set_button(dialog_->radio_html, 1); fl_set_button(dialog_->radio_html, 1);
if (lv_->buffer()->isReadonly()) { bc_.readOnly(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);
}
} }

View File

@ -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"))); 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_button_shortcut(obj, scex(_("Text after|#e")), 1);
fl_set_object_resize(obj, FL_RESIZE_X); 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")); 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_gravity(obj, FL_SouthEast, FL_SouthEast);
fl_set_object_callback(obj, C_FormBaseOKCB, 0); 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_button_shortcut(obj, scex(_("Cancel|#C^[")), 1);
fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast); fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast);
fl_set_object_callback(obj, C_FormBaseCancelCB, 0); 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(); fl_end_form();
fdui->form->fdui = fdui; fdui->form->fdui = fdui;

View File

@ -6,10 +6,10 @@
/** Callbacks, globals and object handlers **/ /** Callbacks, globals and object handlers **/
extern "C" void C_FormBaseInputCB(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_FormBaseOKCB(FL_OBJECT *, long);
extern "C" void C_FormBaseApplyCB(FL_OBJECT *, long); extern "C" void C_FormBaseApplyCB(FL_OBJECT *, long);
extern "C" void C_FormBaseCancelCB(FL_OBJECT *, long); extern "C" void C_FormBaseCancelCB(FL_OBJECT *, long);
extern "C" void C_FormBaseRestoreCB(FL_OBJECT *, long);
/**** Forms and Objects ****/ /**** Forms and Objects ****/
@ -28,10 +28,10 @@ struct FD_form_citation {
FL_OBJECT *style; FL_OBJECT *style;
FL_OBJECT *textBefore; FL_OBJECT *textBefore;
FL_OBJECT *textAftr; FL_OBJECT *textAftr;
FL_OBJECT *button_restore;
FL_OBJECT *button_ok; FL_OBJECT *button_ok;
FL_OBJECT *button_apply; FL_OBJECT *button_apply;
FL_OBJECT *button_cancel; FL_OBJECT *button_cancel;
FL_OBJECT *button_restore;
}; };
#endif /* FD_form_citation_h_ */ #endif /* FD_form_citation_h_ */

View File

@ -25,25 +25,24 @@ FD_form_copyright * FormCopyright::build_copyright()
fdui->form = fl_bgn_form(FL_NO_BOX, 450, 430); fdui->form = fl_bgn_form(FL_NO_BOX, 450, 430);
fdui->form->u_vdata = this; fdui->form->u_vdata = this;
obj = fl_add_box(FL_UP_BOX, 0, 0, 450, 430, ""); 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_boxtype(obj, FL_FRAME_BOX);
fl_set_object_lsize(obj, FL_NORMAL_SIZE); fl_set_object_lsize(obj, FL_NORMAL_SIZE);
fl_set_object_lalign(obj, FL_ALIGN_CENTER|FL_ALIGN_INSIDE); fl_set_object_lalign(obj, FL_ALIGN_CENTER|FL_ALIGN_INSIDE);
fl_set_object_gravity(obj, FL_NorthWest, FL_NorthEast); fdui->text_licence = obj = fl_add_text(FL_NORMAL_TEXT, 10, 70, 430, 110, "");
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."));
fl_set_object_boxtype(obj, FL_FRAME_BOX); fl_set_object_boxtype(obj, FL_FRAME_BOX);
fl_set_object_lsize(obj, FL_NORMAL_SIZE); fl_set_object_lsize(obj, FL_NORMAL_SIZE);
fl_set_object_lalign(obj, FL_ALIGN_CENTER|FL_ALIGN_INSIDE); 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_button_shortcut(obj, scex(_("Close|#C^[^M")), 1);
fl_set_object_lsize(obj, FL_NORMAL_SIZE); fl_set_object_lsize(obj, FL_NORMAL_SIZE);
fl_set_object_gravity(obj, FL_South, FL_South); fl_set_object_gravity(obj, FL_South, FL_South);
fl_set_object_resize(obj, FL_RESIZE_NONE); fl_set_object_resize(obj, FL_RESIZE_NONE);
fl_set_object_callback(obj, C_FormBaseCancelCB, 0); 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(); fl_end_form();
fdui->form->fdui = fdui; fdui->form->fdui = fdui;

View File

@ -13,7 +13,10 @@ struct FD_form_copyright {
~FD_form_copyright(); ~FD_form_copyright();
FL_FORM *form; 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_ */ #endif /* FD_form_copyright_h_ */

View File

@ -27,7 +27,7 @@ FD_form_error * FormError::build_error()
obj = fl_add_box(FL_UP_BOX, 0, 0, 400, 240, ""); obj = fl_add_box(FL_UP_BOX, 0, 0, 400, 240, "");
fdui->message = obj = fl_add_box(FL_FRAME_BOX, 10, 10, 380, 180, ""); fdui->message = obj = fl_add_box(FL_FRAME_BOX, 10, 10, 380, 180, "");
fl_set_object_gravity(obj, FL_NorthWest, FL_SouthEast); 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_button_shortcut(obj, scex(_("Close|#C^[^M")), 1);
fl_set_object_gravity(obj, FL_South, FL_South); fl_set_object_gravity(obj, FL_South, FL_South);
fl_set_object_resize(obj, FL_RESIZE_NONE); fl_set_object_resize(obj, FL_RESIZE_NONE);

View File

@ -14,6 +14,7 @@ struct FD_form_error {
FL_FORM *form; FL_FORM *form;
FL_OBJECT *message; FL_OBJECT *message;
FL_OBJECT *button_cancel;
}; };
#endif /* FD_form_error_h_ */ #endif /* FD_form_error_h_ */

View File

@ -47,14 +47,6 @@ FD_form_graphics * FormGraphics::build_graphics()
fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT); fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 270, 70, 210, 160, _("Display")); obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 270, 70, 210, 160, _("Display"));
fl_set_object_lalign(obj, FL_ALIGN_CENTER); 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_button_group_width = fl_bgn_group();
fdui->radio_width_percent_page = obj = fl_add_checkbutton(FL_RADIO_BUTTON, 20, 140, 80, 30, _("% of Page")); 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_button_shortcut(obj, scex(_("Subcaption|#S")), 1);
fl_set_object_lalign(obj, FL_ALIGN_LEFT); fl_set_object_lalign(obj, FL_ALIGN_LEFT);
fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT); 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(); fl_end_form();
fdui->form->fdui = fdui; fdui->form->fdui = fdui;

View File

@ -6,6 +6,7 @@
/** Callbacks, globals and object handlers **/ /** Callbacks, globals and object handlers **/
extern "C" void C_FormBaseInputCB(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_FormBaseOKCB(FL_OBJECT *, long);
extern "C" void C_FormBaseApplyCB(FL_OBJECT *, long); extern "C" void C_FormBaseApplyCB(FL_OBJECT *, long);
extern "C" void C_FormBaseCancelCB(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 *button_browse;
FL_OBJECT *input_width; FL_OBJECT *input_width;
FL_OBJECT *input_height; 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_button_group_width;
FL_OBJECT *radio_width_percent_page; FL_OBJECT *radio_width_percent_page;
FL_OBJECT *radio_width_default; FL_OBJECT *radio_width_default;
@ -43,6 +41,10 @@ struct FD_form_graphics {
FL_OBJECT *check_inline; FL_OBJECT *check_inline;
FL_OBJECT *input_subcaption; FL_OBJECT *input_subcaption;
FL_OBJECT *check_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_ */ #endif /* FD_form_graphics_h_ */

View File

@ -25,18 +25,29 @@ FD_form_index * FormIndex::build_index()
fdui->form = fl_bgn_form(FL_NO_BOX, 520, 100); fdui->form = fl_bgn_form(FL_NO_BOX, 520, 100);
fdui->form->u_vdata = this; fdui->form->u_vdata = this;
obj = fl_add_box(FL_UP_BOX, 0, 0, 520, 100, ""); 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_input_shortcut(obj, scex(_("Keyword|#K")), 1);
fl_set_object_lsize(obj, FL_NORMAL_SIZE); fl_set_object_lsize(obj, FL_NORMAL_SIZE);
fl_set_object_resize(obj, FL_RESIZE_X); 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^["))); 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_button_shortcut(obj, scex(_("Cancel|#C^[")), 1);
fl_set_object_lsize(obj, FL_NORMAL_SIZE); fl_set_object_lsize(obj, FL_NORMAL_SIZE);
fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast); fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast);
fl_set_object_callback(obj, C_FormBaseCancelCB, 0); 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(); fl_end_form();
fdui->form->fdui = fdui; fdui->form->fdui = fdui;

View File

@ -5,8 +5,11 @@
#define FD_form_index_h_ #define FD_form_index_h_
/** Callbacks, globals and object handlers **/ /** 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_FormBaseOKCB(FL_OBJECT *, long);
extern "C" void C_FormBaseApplyCB(FL_OBJECT *, long);
extern "C" void C_FormBaseCancelCB(FL_OBJECT *, long);
/**** Forms and Objects ****/ /**** Forms and Objects ****/
@ -14,9 +17,11 @@ struct FD_form_index {
~FD_form_index(); ~FD_form_index();
FL_FORM *form; 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 *button_cancel;
FL_OBJECT *ok;
}; };
#endif /* FD_form_index_h_ */ #endif /* FD_form_index_h_ */

View File

@ -25,24 +25,24 @@ FD_form_toc * FormToc::build_toc()
fdui->form = fl_bgn_form(FL_NO_BOX, 420, 340); fdui->form = fl_bgn_form(FL_NO_BOX, 420, 340);
fdui->form->u_vdata = this; fdui->form->u_vdata = this;
obj = fl_add_box(FL_UP_BOX, 0, 0, 420, 340, ""); 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_gravity(obj, FL_NorthWest, FL_SouthEast);
fl_set_object_callback(obj, C_FormBaseApplyCB, 0); fl_set_object_callback(obj, C_FormBaseInputCB, 0);
obj = fl_add_button(FL_RETURN_BUTTON, 310, 300, 100, 30, idex(_("Close|#C^[^M"))); 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_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_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_button_shortcut(obj, scex(_("Close|#C^[^M")), 1);
fl_set_object_lsize(obj, FL_NORMAL_SIZE); fl_set_object_lsize(obj, FL_NORMAL_SIZE);
fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast); fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast);
fl_set_object_callback(obj, C_FormBaseCancelCB, 0); fl_set_object_callback(obj, C_FormBaseCancelCB, 0);
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_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_end_form(); fl_end_form();
fdui->form->fdui = fdui; fdui->form->fdui = fdui;

View File

@ -5,7 +5,7 @@
#define FD_form_toc_h_ #define FD_form_toc_h_
/** Callbacks, globals and object handlers **/ /** 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); extern "C" void C_FormBaseCancelCB(FL_OBJECT *, long);
@ -14,8 +14,10 @@ struct FD_form_toc {
~FD_form_toc(); ~FD_form_toc();
FL_FORM *form; FL_FORM *form;
FL_OBJECT *browser; FL_OBJECT *browser_toc;
FL_OBJECT *type; FL_OBJECT *button_update;
FL_OBJECT *choice_toc_type;
FL_OBJECT *button_cancel;
}; };
#endif /* FD_form_toc_h_ */ #endif /* FD_form_toc_h_ */

View File

@ -22,32 +22,46 @@ FD_form_url * FormUrl::build_url()
FL_OBJECT *obj; FL_OBJECT *obj;
FD_form_url *fdui = new FD_form_url; 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; fdui->form->u_vdata = this;
obj = fl_add_box(FL_UP_BOX, 0, 0, 520, 140, ""); obj = fl_add_box(FL_UP_BOX, 0, 0, 520, 170, "");
fdui->url = obj = fl_add_input(FL_NORMAL_INPUT, 70, 20, 440, 30, idex(_("URL|#U"))); 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_button_shortcut(obj, scex(_("URL|#U")), 1);
fl_set_object_lsize(obj, FL_NORMAL_SIZE); fl_set_object_lsize(obj, FL_NORMAL_SIZE);
fl_set_object_gravity(obj, FL_NorthWest, FL_NorthEast); fl_set_object_gravity(obj, FL_NorthWest, FL_NorthEast);
fl_set_object_resize(obj, FL_RESIZE_X); 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_button_shortcut(obj, scex(_("Name|#N")), 1);
fl_set_object_lsize(obj, FL_NORMAL_SIZE); fl_set_object_lsize(obj, FL_NORMAL_SIZE);
fl_set_object_gravity(obj, FL_NorthWest, FL_NorthEast); fl_set_object_gravity(obj, FL_NorthWest, FL_NorthEast);
fl_set_object_resize(obj, FL_RESIZE_X); 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_button_shortcut(obj, scex(_("HTML type|#H")), 1);
fl_set_object_lsize(obj, FL_NORMAL_SIZE); 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_gravity(obj, FL_NorthWest, FL_NorthEast);
fl_set_object_resize(obj, FL_RESIZE_X); 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_button_shortcut(obj, scex(_("Cancel|#C^[")), 1);
fl_set_object_lsize(obj, FL_NORMAL_SIZE); fl_set_object_lsize(obj, FL_NORMAL_SIZE);
fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast); fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast);
fl_set_object_callback(obj, C_FormBaseCancelCB, 0); 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_gravity(obj, FL_SouthEast, FL_SouthEast);
fl_set_object_callback(obj, C_FormBaseOKCB, 0); 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(); fl_end_form();
fdui->form->fdui = fdui; fdui->form->fdui = fdui;

View File

@ -5,8 +5,11 @@
#define FD_form_url_h_ #define FD_form_url_h_
/** Callbacks, globals and object handlers **/ /** 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_FormBaseCancelCB(FL_OBJECT *, long);
extern "C" void C_FormBaseOKCB(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 ****/ /**** Forms and Objects ****/
@ -19,6 +22,8 @@ struct FD_form_url {
FL_OBJECT *radio_html; FL_OBJECT *radio_html;
FL_OBJECT *button_cancel; FL_OBJECT *button_cancel;
FL_OBJECT *button_ok; FL_OBJECT *button_ok;
FL_OBJECT *button_apply;
FL_OBJECT *button_restore;
}; };
#endif /* FD_form_url_h_ */ #endif /* FD_form_url_h_ */

View File

@ -210,6 +210,24 @@ name: textAftr
callback: callback:
argument: 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 class: FL_BUTTON
type: RETURN_BUTTON type: RETURN_BUTTON
@ -264,23 +282,5 @@ name: button_cancel
callback: C_FormBaseCancelCB callback: C_FormBaseCancelCB
argument: 0 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 create_the_forms

View File

@ -40,11 +40,11 @@ alignment: FL_ALIGN_CENTER|FL_ALIGN_INSIDE
style: FL_NORMAL_STYLE style: FL_NORMAL_STYLE
size: FL_NORMAL_SIZE size: FL_NORMAL_SIZE
lcol: FL_BLACK lcol: FL_BLACK
label: LyX is Copyright (C) 1995 by Matthias Ettrich,\n1995-2000 LyX Team label:
shortcut: shortcut:
resize: FL_RESIZE_ALL resize: FL_RESIZE_ALL
gravity: FL_NorthWest FL_NorthEast gravity: FL_NoGravity FL_NoGravity
name: name: text_copyright
callback: callback:
argument: argument:
@ -58,11 +58,29 @@ alignment: FL_ALIGN_CENTER|FL_ALIGN_INSIDE
style: FL_NORMAL_STYLE style: FL_NORMAL_STYLE
size: FL_NORMAL_SIZE size: FL_NORMAL_SIZE
lcol: FL_BLACK 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: shortcut:
resize: FL_RESIZE_ALL resize: FL_RESIZE_ALL
gravity: FL_NoGravity FL_NoGravity 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: callback:
argument: argument:
@ -80,27 +98,9 @@ label: Close|#C^[^M
shortcut: shortcut:
resize: FL_RESIZE_NONE resize: FL_RESIZE_NONE
gravity: FL_South FL_South gravity: FL_South FL_South
name: button_ok name: button_cancel
callback: C_FormBaseCancelCB callback: C_FormBaseCancelCB
argument: 0 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 create_the_forms

View File

@ -62,7 +62,7 @@ label: Close|#C^[^M
shortcut: shortcut:
resize: FL_RESIZE_NONE resize: FL_RESIZE_NONE
gravity: FL_South FL_South gravity: FL_South FL_South
name: name: button_cancel
callback: C_FormBaseCancelCB callback: C_FormBaseCancelCB
argument: 0 argument: 0

View File

@ -10,7 +10,7 @@ Unit of measure: FL_COORD_PIXEL
Name: form_graphics Name: form_graphics
Width: 490 Width: 490
Height: 390 Height: 390
Number of Objects: 37 Number of Objects: 38
-------------------- --------------------
class: FL_BOX class: FL_BOX
@ -192,60 +192,6 @@ name:
callback: callback:
argument: 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 class: FL_BEGIN_GROUP
type: 0 type: 0
@ -681,5 +627,77 @@ name: check_subcaption
callback: C_FormBaseInputCB callback: C_FormBaseInputCB
argument: CHECKINPUT 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 create_the_forms

View File

@ -10,7 +10,7 @@ Unit of measure: FL_COORD_PIXEL
Name: form_index Name: form_index
Width: 520 Width: 520
Height: 100 Height: 100
Number of Objects: 4 Number of Objects: 6
-------------------- --------------------
class: FL_BOX class: FL_BOX
@ -44,9 +44,63 @@ label: Keyword
shortcut: Keyword|#K shortcut: Keyword|#K
resize: FL_RESIZE_X resize: FL_RESIZE_X
gravity: FL_NoGravity FL_NoGravity gravity: FL_NoGravity FL_NoGravity
name: key name: input_key
callback: callback: C_FormBaseInputCB
argument: argument: 0
--------------------
class: FL_BUTTON
type: NORMAL_BUTTON
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: Restore|#R
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 60 100 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_NONE
gravity: FL_SouthEast FL_SouthEast
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 class: FL_BUTTON
@ -66,23 +120,5 @@ name: button_cancel
callback: C_FormBaseCancelCB callback: C_FormBaseCancelCB
argument: 0 argument: 0
--------------------
class: FL_BUTTON
type: RETURN_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_DEFAULT_SIZE
lcol: FL_BLACK
label: OK
shortcut: ^M
resize: FL_RESIZE_ALL
gravity: FL_SouthEast FL_SouthEast
name: ok
callback: C_FormBaseOKCB
argument: 0
============================== ==============================
create_the_forms create_the_forms

View File

@ -44,26 +44,8 @@ label:
shortcut: shortcut:
resize: FL_RESIZE_ALL resize: FL_RESIZE_ALL
gravity: FL_NorthWest FL_SouthEast gravity: FL_NorthWest FL_SouthEast
name: browser name: browser_toc
callback: C_FormBaseApplyCB 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:
resize: FL_RESIZE_NONE
gravity: FL_SouthEast FL_SouthEast
name:
callback: C_FormBaseCancelCB
argument: 0 argument: 0
-------------------- --------------------
@ -80,8 +62,8 @@ label: Update|#U
shortcut: shortcut:
resize: FL_RESIZE_NONE resize: FL_RESIZE_NONE
gravity: FL_SouthEast FL_SouthEast gravity: FL_SouthEast FL_SouthEast
name: name: button_update
callback: C_FormBaseApplyCB callback: C_FormBaseInputCB
argument: 0 argument: 0
-------------------- --------------------
@ -98,8 +80,26 @@ label: Type|#T
shortcut: shortcut:
resize: FL_RESIZE_NONE resize: FL_RESIZE_NONE
gravity: FL_SouthEast FL_SouthEast gravity: FL_SouthEast FL_SouthEast
name: type name: choice_toc_type
callback: C_FormBaseApplyCB 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 argument: 0
============================== ==============================

View File

@ -9,13 +9,13 @@ Unit of measure: FL_COORD_PIXEL
=============== FORM =============== =============== FORM ===============
Name: form_url Name: form_url
Width: 520 Width: 520
Height: 140 Height: 170
Number of Objects: 6 Number of Objects: 8
-------------------- --------------------
class: FL_BOX class: FL_BOX
type: UP_BOX type: UP_BOX
box: 0 0 520 140 box: 0 0 520 170
boxtype: FL_UP_BOX boxtype: FL_UP_BOX
colors: FL_COL1 FL_COL1 colors: FL_COL1 FL_COL1
alignment: FL_ALIGN_CENTER alignment: FL_ALIGN_CENTER
@ -33,7 +33,7 @@ argument:
-------------------- --------------------
class: FL_INPUT class: FL_INPUT
type: NORMAL_INPUT type: NORMAL_INPUT
box: 70 20 440 30 box: 70 50 440 30
boxtype: FL_DOWN_BOX boxtype: FL_DOWN_BOX
colors: FL_COL1 FL_MCOL colors: FL_COL1 FL_MCOL
alignment: FL_ALIGN_LEFT alignment: FL_ALIGN_LEFT
@ -45,13 +45,13 @@ shortcut:
resize: FL_RESIZE_X resize: FL_RESIZE_X
gravity: FL_NorthWest FL_NorthEast gravity: FL_NorthWest FL_NorthEast
name: url name: url
callback: callback: C_FormBaseInputCB
argument: argument: 0
-------------------- --------------------
class: FL_INPUT class: FL_INPUT
type: NORMAL_INPUT type: NORMAL_INPUT
box: 70 60 440 30 box: 70 90 440 30
boxtype: FL_DOWN_BOX boxtype: FL_DOWN_BOX
colors: FL_COL1 FL_MCOL colors: FL_COL1 FL_MCOL
alignment: FL_ALIGN_LEFT alignment: FL_ALIGN_LEFT
@ -63,16 +63,16 @@ shortcut:
resize: FL_RESIZE_X resize: FL_RESIZE_X
gravity: FL_NorthWest FL_NorthEast gravity: FL_NorthWest FL_NorthEast
name: name name: name
callback: callback: C_FormBaseInputCB
argument: argument: 0
-------------------- --------------------
class: FL_CHECKBUTTON class: FL_CHECKBUTTON
type: PUSH_BUTTON type: PUSH_BUTTON
box: 70 100 230 30 box: 480 10 30 30
boxtype: FL_NO_BOX boxtype: FL_NO_BOX
colors: FL_COL1 FL_YELLOW colors: FL_COL1 FL_YELLOW
alignment: FL_ALIGN_CENTER alignment: FL_ALIGN_LEFT
style: FL_NORMAL_STYLE style: FL_NORMAL_STYLE
size: FL_NORMAL_SIZE size: FL_NORMAL_SIZE
lcol: FL_BLACK lcol: FL_BLACK
@ -81,13 +81,13 @@ shortcut:
resize: FL_RESIZE_X resize: FL_RESIZE_X
gravity: FL_NorthWest FL_NorthEast gravity: FL_NorthWest FL_NorthEast
name: radio_html name: radio_html
callback: callback: C_FormBaseInputCB
argument: argument: 0
-------------------- --------------------
class: FL_BUTTON class: FL_BUTTON
type: NORMAL_BUTTON type: NORMAL_BUTTON
box: 410 100 100 30 box: 410 130 100 30
boxtype: FL_UP_BOX boxtype: FL_UP_BOX
colors: FL_COL1 FL_COL1 colors: FL_COL1 FL_COL1
alignment: FL_ALIGN_CENTER alignment: FL_ALIGN_CENTER
@ -105,7 +105,7 @@ argument: 0
-------------------- --------------------
class: FL_BUTTON class: FL_BUTTON
type: RETURN_BUTTON type: RETURN_BUTTON
box: 300 100 100 30 box: 190 130 100 30
boxtype: FL_UP_BOX boxtype: FL_UP_BOX
colors: FL_COL1 FL_COL1 colors: FL_COL1 FL_COL1
alignment: FL_ALIGN_CENTER alignment: FL_ALIGN_CENTER
@ -120,5 +120,41 @@ name: button_ok
callback: C_FormBaseOKCB callback: C_FormBaseOKCB
argument: 0 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 create_the_forms

View File

@ -13,8 +13,6 @@ libinsets_la_SOURCES = \
ExternalTemplate.h \ ExternalTemplate.h \
figinset.C \ figinset.C \
figinset.h \ figinset.h \
form_graphics.C \
form_graphics.h \
inset.C \ inset.C \
insetbib.C \ insetbib.C \
insetbib.h \ insetbib.h \

View File

@ -62,6 +62,11 @@
#include "bufferview_funcs.h" #include "bufferview_funcs.h"
#include "ColorHandler.h" #include "ColorHandler.h"
#include "converter.h" #include "converter.h"
#include "frontends/Dialogs.h" // redrawGUI
#ifdef SIGC_CXX_NAMESPACES
using SigC::slot;
#endif
using std::ostream; using std::ostream;
using std::istream; using std::istream;
@ -941,6 +946,7 @@ InsetFig::InsetFig(int tmpx, int tmpy, Buffer const & o)
raw_wid = raw_hgh = 0; raw_wid = raw_hgh = 0;
changedfname = false; changedfname = false;
RegisterFigure(this); RegisterFigure(this);
r_ = Dialogs::redrawGUI.connect(slot(this, &InsetFig::redraw));
} }
@ -950,6 +956,14 @@ InsetFig::~InsetFig()
lyxerr << "Figure destructor called" << endl; lyxerr << "Figure destructor called" << endl;
} }
UnregisterFigure(this); UnregisterFigure(this);
r_.disconnect();
}
void InsetFig::redraw()
{
if (form && form->Figure->visible)
fl_redraw_form(form->Figure);
} }

View File

@ -12,12 +12,17 @@
#include "buffer.h" #include "buffer.h"
#include "LaTeXFeatures.h" #include "LaTeXFeatures.h"
#include "insets/lyxinset.h" #include "insets/lyxinset.h"
#include <sigc++/signal_system.h>
/* the rest is figure stuff */ /* the rest is figure stuff */
struct Figref; struct Figref;
#ifdef SIGC_CXX_NAMESPACES
using SigC::Object;
#endif
/// ///
class InsetFig: public Inset { class InsetFig: public Inset, public Object {
public: public:
/// ///
InsetFig(int tmpx, int tmpy, Buffer const &); InsetFig(int tmpx, int tmpy, Buffer const &);
@ -132,6 +137,10 @@ public:
/// ///
bool psubfigure; bool psubfigure;
private: 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; Buffer const * owner;
@ -145,6 +154,8 @@ private:
void TempRegenerate(); void TempRegenerate();
/// get sizes from .eps file /// get sizes from .eps file
void GetPSSizes(); void GetPSSizes();
/// Redraw connection.
SigC::Connection r_;
}; };

View File

@ -1,111 +0,0 @@
#include <config.h>
#include "lyx_gui_misc.h"
#include "gettext.h"
#include FORMS_H_LOCATION
#include <cstdlib>
#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;
}

View File

@ -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

View File

@ -29,6 +29,11 @@
#include "support/lstrings.h" #include "support/lstrings.h"
#include "support/path.h" #include "support/path.h"
#include "support/syscall.h" #include "support/syscall.h"
#include "frontends/Dialogs.h" // redrawGUI
#ifdef SIGC_CXX_NAMESPACES
using SigC::slot;
#endif
using std::endl; using std::endl;
@ -37,12 +42,21 @@ InsetExternal::InsetExternal()
: form_external(0) : form_external(0)
{ {
tempname = lyx::tempName(); //TmpFileName(); tempname = lyx::tempName(); //TmpFileName();
r_ = Dialogs::redrawGUI.connect(slot(this, &InsetExternal::redraw));
} }
InsetExternal::~InsetExternal() InsetExternal::~InsetExternal()
{ {
lyx::unlink(tempname); lyx::unlink(tempname);
r_.disconnect();
}
void InsetExternal::redraw()
{
if (form_external && form_external->form_external->visible)
fl_redraw_form(form_external->form_external);
} }

View File

@ -19,11 +19,16 @@
#include "insetbutton.h" #include "insetbutton.h"
#include "LString.h" #include "LString.h"
#include "../lyx.h" #include "../lyx.h"
#include <sigc++/signal_system.h>
struct ExternalTemplate; struct ExternalTemplate;
#ifdef SIGC_CXX_NAMESPACES
using SigC::Object;
#endif
/// ///
class InsetExternal : public InsetButton { class InsetExternal : public InsetButton, public Object {
public: public:
InsetExternal(); InsetExternal();
/// ///
@ -85,6 +90,11 @@ public:
/// Callback function for the cancel button /// Callback function for the cancel button
static void cancelCB(FL_OBJECT *, long); static void cancelCB(FL_OBJECT *, long);
private: 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 /// Write the output for a specific file format
int write(string const & format, Buffer const *, int write(string const & format, Buffer const *,
std::ostream &) const; std::ostream &) const;
@ -150,6 +160,9 @@ private:
/// A temp filename /// A temp filename
string tempname; string tempname;
/// Redraw connection.
SigC::Connection r_;
}; };
#endif #endif

View File

@ -29,6 +29,11 @@
#include "trans_mgr.h" #include "trans_mgr.h"
#include "support/lstrings.h" #include "support/lstrings.h"
#include "language.h" #include "language.h"
#include "frontends/Dialogs.h" // redrawGUI
#ifdef SIGC_CXX_NAMESPACES
using SigC::slot;
#endif
using std::endl; using std::endl;
@ -46,14 +51,23 @@ Intl::Intl()
primarykeymap = false; primarykeymap = false;
curkeymap = 0; curkeymap = 0;
otherkeymap = 0; otherkeymap = 0;
r_ = Dialogs::redrawGUI.connect(slot(this, &Intl::redraw));
} }
Intl::~Intl() Intl::~Intl()
{ {
r_.disconnect();
delete trans; 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) int Intl::SetPrimary(string const & lang)
{ {
if (lyxerr.debugging(Debug::KBMAP)) if (lyxerr.debugging(Debug::KBMAP))

View File

@ -14,11 +14,15 @@
#include "LString.h" #include "LString.h"
#include "form1.h" #include "form1.h"
#include <sigc++/signal_system.h>
class LyXText; class LyXText;
class Combox; class Combox;
class TransManager; class TransManager;
#ifdef SIGC_CXX_NAMESPACES
using SigC::Object;
#endif
/// default character set /// default character set
#define DEFCHSET "iso8859-1" #define DEFCHSET "iso8859-1"
@ -28,7 +32,7 @@ class TransManager;
classes. Probably should the gui class just have a pointer to the non classes. Probably should the gui class just have a pointer to the non
gui class. gui class.
*/ */
class Intl { class Intl : public Object {
public: public:
/// ///
Intl(); Intl();
@ -67,6 +71,10 @@ public:
/// ///
static void DispatchCallback(FL_OBJECT *, long); static void DispatchCallback(FL_OBJECT *, long);
private: private:
/** Redraw the form (on receipt of a Signal indicating, for example,
that the xform colors have been re-mapped).
*/
void redraw();
/// ///
void update(); void update();
/// ///
@ -90,6 +98,8 @@ private:
string & sec_lang; string & sec_lang;
/// ///
TransManager * trans; TransManager * trans;
/// Redraw connection.
SigC::Connection r_;
}; };

View File

@ -20,6 +20,7 @@
#include "BufferView.h" #include "BufferView.h"
#include "bibforms.h" #include "bibforms.h"
#include "buffer.h" #include "buffer.h"
#include "credits_form.h"
#include "form1.h" #include "form1.h"
#include "gettext.h" #include "gettext.h"
#include "include_form.h" #include "include_form.h"
@ -44,11 +45,13 @@ using std::endl;
extern BufferView * current_view; extern BufferView * current_view;
extern FD_form_character * fd_form_character; 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_preamble * fd_form_preamble;
extern FD_form_sendto * fd_form_sendto; 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_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_panel * fd_panel;
extern FD_delim * fd_delim; extern FD_delim * fd_delim;
extern FD_deco * fd_deco; extern FD_deco * fd_deco;
@ -64,7 +67,58 @@ extern "C" int CancelCloseBoxCB(FL_FORM *, void *)
{ {
return FL_CANCEL; 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 // Prevents LyX from crashing when no buffers available
// This is also one of the functions that we _really_ dont want // This is also one of the functions that we _really_ dont want

View File

@ -27,6 +27,10 @@ class MiniBuffer;
/// Prevents LyX from being killed when the close box is pressed in a popup. /// Prevents LyX from being killed when the close box is pressed in a popup.
extern "C" int CancelCloseBoxCB(FL_FORM *, void *); 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 /// Prevents LyX from crashing when no buffers available
void CloseAllBufferRelatedDialogs(); void CloseAllBufferRelatedDialogs();

View File

@ -17,7 +17,11 @@
#include "lyxfr0.h" #include "lyxfr0.h"
#include "lyxfr1.h" #include "lyxfr1.h"
#include "lyx_gui_misc.h" #include "lyx_gui_misc.h"
#include "frontends/Dialogs.h" // redrawGUI
#ifdef SIGC_CXX_NAMESPACES
using SigC::slot;
#endif
// callbacks for form form_search // callbacks for form form_search
void SearchCancelCB(FL_OBJECT * ob, long) void SearchCancelCB(FL_OBJECT * ob, long)
@ -57,13 +61,23 @@ void SearchReplaceCB(FL_OBJECT * ob, long)
SearchForm::SearchForm() SearchForm::SearchForm()
: search_form(0) : search_form(0)
{} {
r_ = Dialogs::redrawGUI.connect(slot(this, &SearchForm::redraw));
}
SearchForm::~SearchForm() SearchForm::~SearchForm()
{ {
// The search_form should be closed and freed when SearchForm // The search_form should be closed and freed when SearchForm
// is destructed. // is destructed.
r_.disconnect();
}
void SearchForm::redraw()
{
if (search_form && search_form->form_search->visible)
fl_redraw_form(search_form->form_search);
} }

View File

@ -9,9 +9,14 @@
#include "LString.h" #include "LString.h"
#include FORMS_H_LOCATION #include FORMS_H_LOCATION
#include "form1.h" #include "form1.h"
#include <sigc++/signal_system.h>
class LyXFindReplace; class LyXFindReplace;
#ifdef SIGC_CXX_NAMESPACES
using SigC::Object;
#endif
/** /**
The comments below are most likely not valied anymore since The comments below are most likely not valied anymore since
the rewrite of LyXFindReplace0 and LyXFindReplace1. (Lgb) the rewrite of LyXFindReplace0 and LyXFindReplace1. (Lgb)
@ -33,7 +38,7 @@ class LyXFindReplace;
- regex searches (I'm working on that -- dnaber, 1999-02-24) - regex searches (I'm working on that -- dnaber, 1999-02-24)
*/ */
class SearchForm { class SearchForm : public Object {
public: public:
/// ///
SearchForm(); SearchForm();
@ -76,10 +81,16 @@ public:
/// ///
bool ValidSearchData() const { return !(SearchString().empty()); } bool ValidSearchData() const { return !(SearchString().empty()); }
private: 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; FD_form_search * search_form;
/// replace buttons enabled? /// replace buttons enabled?
bool fReplaceEnabled; bool fReplaceEnabled;
/// Redraw connection.
SigC::Connection r_;
}; };
#endif #endif

View File

@ -106,7 +106,8 @@ PspellManager * sc;
#endif #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; FD_form_spell_check *fd_form_spell_check = 0;
//void sigchldhandler(int sig); //void sigchldhandler(int sig);