mirror of
https://git.lyx.org/repos/lyx.git
synced 2025-01-09 10:47:57 +00:00
Patch fdfix from Angus, using only the new tabular-layout, some fixes!
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@881 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
b4500f209d
commit
0f1623f064
@ -1,5 +1,7 @@
|
|||||||
2000-07-13 Juergen Vigna <jug@sad.it>
|
2000-07-13 Juergen Vigna <jug@sad.it>
|
||||||
|
|
||||||
|
* src/text.C (GetVisibleRow): fixed clearing of rows with insets!
|
||||||
|
|
||||||
* lib/examples/Literate.lyx: small patch!
|
* lib/examples/Literate.lyx: small patch!
|
||||||
|
|
||||||
* src/insets/insetbib.C (Read): added this function because of wrong
|
* src/insets/insetbib.C (Read): added this function because of wrong
|
||||||
|
@ -33,6 +33,13 @@ src/frontends/xforms/FormPreferences.C
|
|||||||
src/frontends/xforms/form_preferences.C
|
src/frontends/xforms/form_preferences.C
|
||||||
src/frontends/xforms/FormPrint.C
|
src/frontends/xforms/FormPrint.C
|
||||||
src/frontends/xforms/form_print.C
|
src/frontends/xforms/form_print.C
|
||||||
|
src/frontends/xforms/forms/form_citation.C
|
||||||
|
src/frontends/xforms/forms/form_copyright.C
|
||||||
|
src/frontends/xforms/forms/form_preferences.C
|
||||||
|
src/frontends/xforms/forms/form_print.C
|
||||||
|
src/frontends/xforms/forms/form_tabular.C
|
||||||
|
src/frontends/xforms/FormTabular.C
|
||||||
|
src/frontends/xforms/form_tabular.C
|
||||||
src/gettext.h
|
src/gettext.h
|
||||||
src/insets/figinset.C
|
src/insets/figinset.C
|
||||||
src/insets/form_graphics.C
|
src/insets/form_graphics.C
|
||||||
@ -106,6 +113,5 @@ src/support/path.h
|
|||||||
src/table.C
|
src/table.C
|
||||||
src/TableLayout.C
|
src/TableLayout.C
|
||||||
src/tabular.C
|
src/tabular.C
|
||||||
src/TabularLayout.C
|
|
||||||
src/text2.C
|
src/text2.C
|
||||||
src/text.C
|
src/text.C
|
||||||
|
@ -66,7 +66,6 @@ lyx_SOURCES = \
|
|||||||
Spacing.C \
|
Spacing.C \
|
||||||
Spacing.h \
|
Spacing.h \
|
||||||
TableLayout.C \
|
TableLayout.C \
|
||||||
TabularLayout.C \
|
|
||||||
TextCache.C \
|
TextCache.C \
|
||||||
TextCache.h \
|
TextCache.h \
|
||||||
Timeout.C \
|
Timeout.C \
|
||||||
|
@ -23,11 +23,6 @@ extern FD_form_table_options * fd_form_table_options;
|
|||||||
extern FD_form_table_extra * fd_form_table_extra;
|
extern FD_form_table_extra * fd_form_table_extra;
|
||||||
extern BufferView * current_view;
|
extern BufferView * current_view;
|
||||||
|
|
||||||
extern bool UpdateLayoutTabular(int);
|
|
||||||
extern void TabularOptionsCB(FL_OBJECT * ob, long l);
|
|
||||||
extern void SetPWidthTabularCB(FL_OBJECT * ob, long l);
|
|
||||||
|
|
||||||
|
|
||||||
static int Confirmed = false;
|
static int Confirmed = false;
|
||||||
static int ActCell;
|
static int ActCell;
|
||||||
|
|
||||||
@ -41,8 +36,6 @@ static int extra_col_cursor_x; // need no y's, one-line input fields
|
|||||||
static int extra_multicol_cursor_x;
|
static int extra_multicol_cursor_x;
|
||||||
// Joacim
|
// Joacim
|
||||||
|
|
||||||
#define IS_TABULAR (current_view->the_locking_inset && \
|
|
||||||
current_view->the_locking_inset->GetFirstLockingInsetOfType(Inset::TABULAR_CODE))
|
|
||||||
|
|
||||||
bool UpdateLayoutTable(int flag)
|
bool UpdateLayoutTable(int flag)
|
||||||
{
|
{
|
||||||
@ -262,13 +255,8 @@ void MenuLayoutTable(int flag)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void TableOptionsCB(FL_OBJECT * ob, long l)
|
void TableOptionsCB(FL_OBJECT * ob, long)
|
||||||
{
|
{
|
||||||
if (IS_TABULAR) {
|
|
||||||
TabularOptionsCB(ob, l);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
LyXTable * table = 0;
|
LyXTable * table = 0;
|
||||||
int s, num = 0;
|
int s, num = 0;
|
||||||
string special, str;
|
string special, str;
|
||||||
@ -469,13 +457,8 @@ void TableSpeCloseCB(FL_OBJECT *, long)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
void SetPWidthCB(FL_OBJECT * ob, long l)
|
void SetPWidthCB(FL_OBJECT * ob, long)
|
||||||
{
|
{
|
||||||
if (IS_TABULAR) {
|
|
||||||
SetPWidthTabularCB(ob, l);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
fl_set_object_label(fd_form_table_options->text_warning, "");
|
fl_set_object_label(fd_form_table_options->text_warning, "");
|
||||||
Confirmed = false;
|
Confirmed = false;
|
||||||
if (ob == fd_form_table_options->input_column_width) {
|
if (ob == fd_form_table_options->input_column_width) {
|
||||||
|
@ -1,449 +0,0 @@
|
|||||||
#include <config.h>
|
|
||||||
|
|
||||||
#include <cstdlib>
|
|
||||||
#include FORMS_H_LOCATION
|
|
||||||
|
|
||||||
#include "layout_forms.h"
|
|
||||||
#include "lyx_main.h"
|
|
||||||
#include "lyxrc.h"
|
|
||||||
#include "LString.h"
|
|
||||||
#include "support/filetools.h"
|
|
||||||
#include "buffer.h"
|
|
||||||
#include "vspace.h"
|
|
||||||
#include "lyx_gui_misc.h"
|
|
||||||
#include "BufferView.h"
|
|
||||||
#include "gettext.h"
|
|
||||||
#include "layout.h"
|
|
||||||
#include "tabular.h"
|
|
||||||
#include "insets/insettabular.h"
|
|
||||||
|
|
||||||
|
|
||||||
// Prototypes
|
|
||||||
extern FD_form_table_options * fd_form_table_options;
|
|
||||||
extern FD_form_table_extra * fd_form_table_extra;
|
|
||||||
extern BufferView * current_view;
|
|
||||||
|
|
||||||
extern void OpenLayoutTableExtra();
|
|
||||||
extern bool UpdateLayoutTabular(bool, InsetTabular *);
|
|
||||||
|
|
||||||
static int Confirmed = false;
|
|
||||||
static int ActCell;
|
|
||||||
|
|
||||||
// hack to keep the cursor from jumping to the end of the text in the Extra
|
|
||||||
// form input fields during editing. The values in LyXTabular itself is
|
|
||||||
// changed in real-time, but we have no callbacks for the input fields,
|
|
||||||
// so I simply store and restore the cursor position for now.
|
|
||||||
// (too much of a hazzle to do it proper; we'll trash all this code
|
|
||||||
// in 1.1 anyway)
|
|
||||||
static int extra_col_cursor_x; // need no y's, one-line input fields
|
|
||||||
static int extra_multicol_cursor_x;
|
|
||||||
// Joacim
|
|
||||||
|
|
||||||
static InsetTabular * inset = 0;
|
|
||||||
|
|
||||||
void MenuLayoutTabular(bool flag, InsetTabular * ins)
|
|
||||||
{
|
|
||||||
inset = ins;
|
|
||||||
if (!inset)
|
|
||||||
return;
|
|
||||||
if (UpdateLayoutTabular(flag, ins)) {
|
|
||||||
if (fd_form_table_options->form_table_options->visible) {
|
|
||||||
fl_raise_form(fd_form_table_options->form_table_options);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
fl_show_form(fd_form_table_options->form_table_options,
|
|
||||||
FL_PLACE_MOUSE, FL_FULLBORDER,
|
|
||||||
_("Tabular Layout"));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool UpdateLayoutTabular(bool flag, InsetTabular *ins)
|
|
||||||
{
|
|
||||||
if (!ins)
|
|
||||||
return false;
|
|
||||||
|
|
||||||
inset = ins;
|
|
||||||
|
|
||||||
bool update = true;
|
|
||||||
if (!current_view->available())
|
|
||||||
update = false;
|
|
||||||
|
|
||||||
if (update) {
|
|
||||||
char buf[12];
|
|
||||||
string pwidth, special;
|
|
||||||
|
|
||||||
LyXTabular * table = inset->tabular;
|
|
||||||
|
|
||||||
int cell = inset->GetActCell();
|
|
||||||
ActCell = cell;
|
|
||||||
int column = table->column_of_cell(cell)+1;
|
|
||||||
fl_set_object_label(fd_form_table_options->text_warning, "");
|
|
||||||
Confirmed = false;
|
|
||||||
fl_activate_object(fd_form_table_extra->input_special_alignment);
|
|
||||||
fl_activate_object(fd_form_table_extra->input_special_multialign);
|
|
||||||
fl_activate_object(fd_form_table_options->input_column_width);
|
|
||||||
sprintf(buf, "%d", column);
|
|
||||||
fl_set_input(fd_form_table_options->input_table_column, buf);
|
|
||||||
fl_deactivate_object(fd_form_table_options->input_table_column);
|
|
||||||
int row = table->row_of_cell(cell)+1;
|
|
||||||
sprintf(buf, "%d", row);
|
|
||||||
fl_set_input(fd_form_table_options->input_table_row, buf);
|
|
||||||
fl_deactivate_object(fd_form_table_options->input_table_row);
|
|
||||||
if (table->IsMultiColumn(cell))
|
|
||||||
fl_set_button(fd_form_table_options->radio_multicolumn, 1);
|
|
||||||
else
|
|
||||||
fl_set_button(fd_form_table_options->radio_multicolumn, 0);
|
|
||||||
if (table->GetRotateCell(cell))
|
|
||||||
fl_set_button(fd_form_table_options->radio_rotate_cell, 1);
|
|
||||||
else
|
|
||||||
fl_set_button(fd_form_table_options->radio_rotate_cell, 0);
|
|
||||||
if (table->TopLine(cell))
|
|
||||||
fl_set_button(fd_form_table_options->radio_border_top, 1);
|
|
||||||
else
|
|
||||||
fl_set_button(fd_form_table_options->radio_border_top, 0);
|
|
||||||
if (table->BottomLine(cell))
|
|
||||||
fl_set_button(fd_form_table_options->radio_border_bottom, 1);
|
|
||||||
else
|
|
||||||
fl_set_button(fd_form_table_options->radio_border_bottom, 0);
|
|
||||||
if (table->LeftLine(cell))
|
|
||||||
fl_set_button(fd_form_table_options->radio_border_left, 1);
|
|
||||||
else
|
|
||||||
fl_set_button(fd_form_table_options->radio_border_left, 0);
|
|
||||||
if (table->RightLine(cell))
|
|
||||||
fl_set_button(fd_form_table_options->radio_border_right, 1);
|
|
||||||
else
|
|
||||||
fl_set_button(fd_form_table_options->radio_border_right, 0);
|
|
||||||
int align = table->GetAlignment(cell);
|
|
||||||
fl_set_button(fd_form_table_options->radio_align_left, 0);
|
|
||||||
fl_set_button(fd_form_table_options->radio_align_right, 0);
|
|
||||||
fl_set_button(fd_form_table_options->radio_align_center, 0);
|
|
||||||
special = table->GetAlignSpecial(cell, LyXTabular::SET_SPECIAL_COLUMN);
|
|
||||||
if (flag)
|
|
||||||
{
|
|
||||||
fl_set_input(fd_form_table_extra->input_special_alignment,
|
|
||||||
special.c_str());
|
|
||||||
fl_set_input_cursorpos(fd_form_table_extra->input_special_alignment,
|
|
||||||
extra_col_cursor_x, 0); // restore the cursor
|
|
||||||
}
|
|
||||||
if (current_view->buffer()->isReadonly())
|
|
||||||
fl_deactivate_object(fd_form_table_extra->input_special_alignment);
|
|
||||||
special = table->GetAlignSpecial(cell, LyXTabular::SET_SPECIAL_MULTI);
|
|
||||||
if (flag)
|
|
||||||
{
|
|
||||||
fl_set_input(fd_form_table_extra->input_special_multialign,
|
|
||||||
special.c_str());
|
|
||||||
fl_set_input_cursorpos(fd_form_table_extra->input_special_multialign,
|
|
||||||
extra_multicol_cursor_x, 0); // restore the cursor
|
|
||||||
}
|
|
||||||
if (current_view->buffer()->isReadonly())
|
|
||||||
fl_deactivate_object(fd_form_table_extra->input_special_multialign);
|
|
||||||
pwidth = table->GetPWidth(cell);
|
|
||||||
if (flag)
|
|
||||||
fl_set_input(fd_form_table_options->input_column_width, pwidth.c_str());
|
|
||||||
if (current_view->buffer()->isReadonly())
|
|
||||||
fl_deactivate_object(fd_form_table_options->input_column_width);
|
|
||||||
if (!pwidth.empty()) {
|
|
||||||
fl_activate_object(fd_form_table_options->radio_linebreak_cell);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_linebreak_cell,
|
|
||||||
FL_BLACK);
|
|
||||||
fl_set_button(fd_form_table_options->radio_linebreak_cell,
|
|
||||||
table->GetLinebreaks(cell));
|
|
||||||
} else {
|
|
||||||
fl_deactivate_object(fd_form_table_options->radio_linebreak_cell);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_linebreak_cell,
|
|
||||||
FL_INACTIVE);
|
|
||||||
fl_set_button(fd_form_table_options->radio_linebreak_cell, 0);
|
|
||||||
}
|
|
||||||
if ((!pwidth.empty() && !table->IsMultiColumn(cell)) ||
|
|
||||||
(align == LYX_ALIGN_LEFT))
|
|
||||||
fl_set_button(fd_form_table_options->radio_align_left, 1);
|
|
||||||
else if (align == LYX_ALIGN_RIGHT)
|
|
||||||
fl_set_button(fd_form_table_options->radio_align_right, 1);
|
|
||||||
else
|
|
||||||
fl_set_button(fd_form_table_options->radio_align_center, 1);
|
|
||||||
if (!pwidth.empty() && !table->IsMultiColumn(cell)) {
|
|
||||||
fl_deactivate_object(fd_form_table_options->radio_align_left);
|
|
||||||
fl_deactivate_object(fd_form_table_options->radio_align_right);
|
|
||||||
fl_deactivate_object(fd_form_table_options->radio_align_center);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_align_left,
|
|
||||||
FL_INACTIVE);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_align_right,
|
|
||||||
FL_INACTIVE);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_align_center,
|
|
||||||
FL_INACTIVE);
|
|
||||||
} else {
|
|
||||||
fl_activate_object(fd_form_table_options->radio_align_left);
|
|
||||||
fl_activate_object(fd_form_table_options->radio_align_right);
|
|
||||||
fl_activate_object(fd_form_table_options->radio_align_center);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_align_left,
|
|
||||||
FL_BLACK);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_align_right,
|
|
||||||
FL_BLACK);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_align_center,
|
|
||||||
FL_BLACK);
|
|
||||||
}
|
|
||||||
fl_set_button(fd_form_table_options->radio_longtable, table->IsLongTabular());
|
|
||||||
if (table->IsLongTabular()) {
|
|
||||||
fl_activate_object(fd_form_table_options->radio_lt_firsthead);
|
|
||||||
fl_activate_object(fd_form_table_options->radio_lt_head);
|
|
||||||
fl_activate_object(fd_form_table_options->radio_lt_foot);
|
|
||||||
fl_activate_object(fd_form_table_options->radio_lt_lastfoot);
|
|
||||||
fl_activate_object(fd_form_table_options->radio_lt_newpage);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_lt_firsthead,
|
|
||||||
FL_BLACK);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_lt_head,
|
|
||||||
FL_BLACK);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_lt_foot,
|
|
||||||
FL_BLACK);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_lt_lastfoot,
|
|
||||||
FL_BLACK);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_lt_newpage,
|
|
||||||
FL_BLACK);
|
|
||||||
fl_set_button(fd_form_table_options->radio_lt_firsthead,
|
|
||||||
table->GetRowOfLTFirstHead(cell));
|
|
||||||
fl_set_button(fd_form_table_options->radio_lt_head,
|
|
||||||
table->GetRowOfLTHead(cell));
|
|
||||||
fl_set_button(fd_form_table_options->radio_lt_foot,
|
|
||||||
table->GetRowOfLTFoot(cell));
|
|
||||||
fl_set_button(fd_form_table_options->radio_lt_lastfoot,
|
|
||||||
table->GetRowOfLTLastFoot(cell));
|
|
||||||
fl_set_button(fd_form_table_options->radio_lt_newpage,
|
|
||||||
table->GetLTNewPage(cell));
|
|
||||||
} else {
|
|
||||||
fl_deactivate_object(fd_form_table_options->radio_lt_firsthead);
|
|
||||||
fl_deactivate_object(fd_form_table_options->radio_lt_head);
|
|
||||||
fl_deactivate_object(fd_form_table_options->radio_lt_foot);
|
|
||||||
fl_deactivate_object(fd_form_table_options->radio_lt_lastfoot);
|
|
||||||
fl_deactivate_object(fd_form_table_options->radio_lt_newpage);
|
|
||||||
fl_set_button(fd_form_table_options->radio_lt_firsthead, 0);
|
|
||||||
fl_set_button(fd_form_table_options->radio_lt_head, 0);
|
|
||||||
fl_set_button(fd_form_table_options->radio_lt_foot, 0);
|
|
||||||
fl_set_button(fd_form_table_options->radio_lt_lastfoot, 0);
|
|
||||||
fl_set_button(fd_form_table_options->radio_lt_newpage, 0);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_lt_firsthead,
|
|
||||||
FL_INACTIVE);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_lt_head,
|
|
||||||
FL_INACTIVE);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_lt_foot,
|
|
||||||
FL_INACTIVE);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_lt_lastfoot,
|
|
||||||
FL_INACTIVE);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_lt_newpage,
|
|
||||||
FL_INACTIVE);
|
|
||||||
}
|
|
||||||
fl_set_button(fd_form_table_options->radio_rotate_table,
|
|
||||||
table->GetRotateTabular());
|
|
||||||
fl_hide_object(fd_form_table_options->button_table_delete);
|
|
||||||
fl_set_focus_object(fd_form_table_options->form_table_options,
|
|
||||||
fd_form_table_options->button_table_delete);
|
|
||||||
} else if (fd_form_table_options->form_table_options->visible) {
|
|
||||||
fl_set_focus_object(fd_form_table_options->form_table_options,
|
|
||||||
fd_form_table_options->button_table_delete);
|
|
||||||
fl_hide_form(fd_form_table_options->form_table_options);
|
|
||||||
}
|
|
||||||
return update;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void TabularOptionsCB(FL_OBJECT * ob, long)
|
|
||||||
{
|
|
||||||
if (!inset)
|
|
||||||
return;
|
|
||||||
|
|
||||||
int s, num = 0;
|
|
||||||
string special, str;
|
|
||||||
|
|
||||||
LyXTabular * table = inset->tabular;
|
|
||||||
|
|
||||||
int cell = inset->GetActCell();
|
|
||||||
if (ActCell != cell) {
|
|
||||||
MenuLayoutTabular(false, inset);
|
|
||||||
fl_set_object_label(fd_form_table_options->text_warning,
|
|
||||||
_("Warning: Wrong Cursor position, updated window"));
|
|
||||||
fl_show_object(fd_form_table_options->text_warning);
|
|
||||||
extra_col_cursor_x = 0; // would rather place it at the end, but...
|
|
||||||
extra_multicol_cursor_x = 0;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// No point in processing directives that you can't do anything with
|
|
||||||
// anyhow, so exit now if the buffer is read-only.
|
|
||||||
if (current_view->buffer()->isReadonly()) {
|
|
||||||
MenuLayoutTabular(false, inset);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (ob != fd_form_table_options->button_table_delete) {
|
|
||||||
fl_set_object_label(fd_form_table_options->text_warning, "");
|
|
||||||
Confirmed = false;
|
|
||||||
}
|
|
||||||
str = fl_get_input(fd_form_table_options->input_column_width);
|
|
||||||
if (!str.empty() && !isValidLength(str)) {
|
|
||||||
fl_set_object_label(fd_form_table_options->text_warning,
|
|
||||||
_("Warning: Invalid Length (valid example: 10mm)"));
|
|
||||||
fl_show_object(fd_form_table_options->text_warning);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (((ob==fd_form_table_options->button_delete_row)&&(table->rows()<=1)) ||
|
|
||||||
((ob==fd_form_table_options->button_delete_column)&&(table->columns()<=1)))
|
|
||||||
ob = fd_form_table_options->button_table_delete;
|
|
||||||
if (ob == fd_form_table_options->button_append_row)
|
|
||||||
num = LyXTabular::APPEND_ROW;
|
|
||||||
else if (ob == fd_form_table_options->button_append_column)
|
|
||||||
num = LyXTabular::APPEND_COLUMN;
|
|
||||||
else if (ob == fd_form_table_options->button_delete_row)
|
|
||||||
num = LyXTabular::DELETE_ROW;
|
|
||||||
else if (ob == fd_form_table_options->button_delete_column)
|
|
||||||
num = LyXTabular::DELETE_COLUMN;
|
|
||||||
else if (ob == fd_form_table_options->button_set_borders)
|
|
||||||
num = LyXTabular::SET_ALL_LINES;
|
|
||||||
else if (ob == fd_form_table_options->button_unset_borders)
|
|
||||||
num = LyXTabular::UNSET_ALL_LINES;
|
|
||||||
else if (ob == fd_form_table_options->radio_border_top)
|
|
||||||
num = LyXTabular::TOGGLE_LINE_TOP;
|
|
||||||
else if (ob == fd_form_table_options->radio_border_bottom)
|
|
||||||
num = LyXTabular::TOGGLE_LINE_BOTTOM;
|
|
||||||
else if (ob == fd_form_table_options->radio_border_left)
|
|
||||||
num = LyXTabular::TOGGLE_LINE_LEFT;
|
|
||||||
else if (ob == fd_form_table_options->radio_border_right)
|
|
||||||
num = LyXTabular::TOGGLE_LINE_RIGHT;
|
|
||||||
else if (ob == fd_form_table_options->radio_align_left)
|
|
||||||
num = LyXTabular::ALIGN_LEFT;
|
|
||||||
else if (ob == fd_form_table_options->radio_align_right)
|
|
||||||
num = LyXTabular::ALIGN_RIGHT;
|
|
||||||
else if (ob == fd_form_table_options->radio_align_center)
|
|
||||||
num = LyXTabular::ALIGN_CENTER;
|
|
||||||
#if 0
|
|
||||||
// not needed in tabulars as you can delete them with a single delete!
|
|
||||||
else if ((ob == fd_form_table_options->button_table_delete) && !Confirmed) {
|
|
||||||
fl_set_object_label(fd_form_table_options->text_warning,
|
|
||||||
_("Confirm: press Delete-Button again"));
|
|
||||||
Confirmed = true;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
else if ((ob == fd_form_table_options->button_table_delete)
|
|
||||||
&& Confirmed) {
|
|
||||||
num = LyXTabular::DELETE_TABULAR;
|
|
||||||
Confirmed = false;
|
|
||||||
} else if (ob == fd_form_table_options->radio_multicolumn)
|
|
||||||
num = LyXTabular::MULTICOLUMN;
|
|
||||||
else if (ob == fd_form_table_options->radio_longtable) {
|
|
||||||
s = fl_get_button(fd_form_table_options->radio_longtable);
|
|
||||||
if (s) {
|
|
||||||
num = LyXTabular::SET_LONGTABULAR;
|
|
||||||
fl_activate_object(fd_form_table_options->radio_lt_firsthead);
|
|
||||||
fl_activate_object(fd_form_table_options->radio_lt_head);
|
|
||||||
fl_activate_object(fd_form_table_options->radio_lt_foot);
|
|
||||||
fl_activate_object(fd_form_table_options->radio_lt_lastfoot);
|
|
||||||
fl_activate_object(fd_form_table_options->radio_lt_newpage);
|
|
||||||
fl_set_button(fd_form_table_options->radio_lt_firsthead,
|
|
||||||
table->GetRowOfLTFirstHead(cell));
|
|
||||||
fl_set_button(fd_form_table_options->radio_lt_head,
|
|
||||||
table->GetRowOfLTHead(cell));
|
|
||||||
fl_set_button(fd_form_table_options->radio_lt_foot,
|
|
||||||
table->GetRowOfLTFoot(cell));
|
|
||||||
fl_set_button(fd_form_table_options->radio_lt_lastfoot,
|
|
||||||
table->GetRowOfLTLastFoot(cell));
|
|
||||||
fl_set_button(fd_form_table_options->radio_lt_firsthead,
|
|
||||||
table->GetLTNewPage(cell));
|
|
||||||
} else {
|
|
||||||
num = LyXTabular::UNSET_LONGTABULAR;
|
|
||||||
fl_deactivate_object(fd_form_table_options->radio_lt_firsthead);
|
|
||||||
fl_deactivate_object(fd_form_table_options->radio_lt_head);
|
|
||||||
fl_deactivate_object(fd_form_table_options->radio_lt_foot);
|
|
||||||
fl_deactivate_object(fd_form_table_options->radio_lt_lastfoot);
|
|
||||||
fl_deactivate_object(fd_form_table_options->radio_lt_newpage);
|
|
||||||
fl_set_button(fd_form_table_options->radio_lt_firsthead, 0);
|
|
||||||
fl_set_button(fd_form_table_options->radio_lt_firsthead, 0);
|
|
||||||
fl_set_button(fd_form_table_options->radio_lt_firsthead, 0);
|
|
||||||
fl_set_button(fd_form_table_options->radio_lt_firsthead, 0);
|
|
||||||
fl_set_button(fd_form_table_options->radio_lt_firsthead, 0);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_lt_firsthead,
|
|
||||||
FL_INACTIVE);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_lt_head,
|
|
||||||
FL_INACTIVE);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_lt_foot,
|
|
||||||
FL_INACTIVE);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_lt_lastfoot,
|
|
||||||
FL_INACTIVE);
|
|
||||||
fl_set_object_lcol(fd_form_table_options->radio_lt_newpage,
|
|
||||||
FL_INACTIVE);
|
|
||||||
}
|
|
||||||
} else if (ob == fd_form_table_options->radio_rotate_table) {
|
|
||||||
s = fl_get_button(fd_form_table_options->radio_rotate_table);
|
|
||||||
if (s)
|
|
||||||
num = LyXTabular::SET_ROTATE_TABULAR;
|
|
||||||
else
|
|
||||||
num = LyXTabular::UNSET_ROTATE_TABULAR;
|
|
||||||
} else if (ob == fd_form_table_options->radio_rotate_cell) {
|
|
||||||
s = fl_get_button(fd_form_table_options->radio_rotate_cell);
|
|
||||||
if (s)
|
|
||||||
num = LyXTabular::SET_ROTATE_CELL;
|
|
||||||
else
|
|
||||||
num = LyXTabular::UNSET_ROTATE_CELL;
|
|
||||||
} else if (ob == fd_form_table_options->radio_linebreak_cell) {
|
|
||||||
num = LyXTabular::SET_LINEBREAKS;
|
|
||||||
} else if (ob == fd_form_table_options->radio_lt_firsthead) {
|
|
||||||
num = LyXTabular::SET_LTFIRSTHEAD;
|
|
||||||
} else if (ob == fd_form_table_options->radio_lt_head) {
|
|
||||||
num = LyXTabular::SET_LTHEAD;
|
|
||||||
} else if (ob == fd_form_table_options->radio_lt_foot) {
|
|
||||||
num = LyXTabular::SET_LTFOOT;
|
|
||||||
} else if (ob == fd_form_table_options->radio_lt_lastfoot) {
|
|
||||||
num = LyXTabular::SET_LTLASTFOOT;
|
|
||||||
} else if (ob == fd_form_table_options->radio_lt_newpage) {
|
|
||||||
num = LyXTabular::SET_LTNEWPAGE;
|
|
||||||
} else if (ob == fd_form_table_options->button_table_extra) {
|
|
||||||
OpenLayoutTableExtra();
|
|
||||||
return;
|
|
||||||
} else if (ob == fd_form_table_extra->input_special_alignment) {
|
|
||||||
special = fl_get_input(fd_form_table_extra->input_special_alignment);
|
|
||||||
int dummy;
|
|
||||||
fl_get_input_cursorpos(ob, &extra_col_cursor_x, &dummy);
|
|
||||||
num = LyXTabular::SET_SPECIAL_COLUMN;
|
|
||||||
} else if (ob == fd_form_table_extra->input_special_multialign) {
|
|
||||||
special = fl_get_input(fd_form_table_extra->input_special_multialign);
|
|
||||||
int dummy;
|
|
||||||
fl_get_input_cursorpos(ob, &extra_multicol_cursor_x, &dummy);
|
|
||||||
num = LyXTabular::SET_SPECIAL_MULTI;
|
|
||||||
} else
|
|
||||||
return;
|
|
||||||
if (current_view->available()) {
|
|
||||||
current_view->hideCursor();
|
|
||||||
inset->TabularFeatures(current_view, num, special);
|
|
||||||
}
|
|
||||||
UpdateLayoutTabular(true, inset);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
void SetPWidthTabularCB(FL_OBJECT * ob, long)
|
|
||||||
{
|
|
||||||
if (!inset) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
fl_set_object_label(fd_form_table_options->text_warning, "");
|
|
||||||
Confirmed = false;
|
|
||||||
if (ob == fd_form_table_options->input_column_width) {
|
|
||||||
string str = fl_get_input(ob);
|
|
||||||
if (!str.empty() && !isValidLength(str)) {
|
|
||||||
fl_set_object_label(fd_form_table_options->text_warning,
|
|
||||||
_("Warning: Invalid Length (valid example: 10mm)"));
|
|
||||||
fl_show_object(fd_form_table_options->text_warning);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (current_view->available()){
|
|
||||||
current_view->hideCursor();
|
|
||||||
inset->TabularFeatures(current_view, LyXTabular::SET_PWIDTH, str);
|
|
||||||
}
|
|
||||||
MenuLayoutTabular(false, inset); // update for alignment
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void TabularOptClose()
|
|
||||||
{
|
|
||||||
inset = 0;
|
|
||||||
}
|
|
||||||
|
|
@ -62,7 +62,7 @@ void FormTabular::build()
|
|||||||
create_tabular_ = build_create_tabular();
|
create_tabular_ = build_create_tabular();
|
||||||
|
|
||||||
fl_set_input_return(column_options_->input_column_width,
|
fl_set_input_return(column_options_->input_column_width,
|
||||||
FL_RETURN_CHANGED);
|
FL_RETURN_END);
|
||||||
fl_set_input_return(column_options_->input_special_alignment,
|
fl_set_input_return(column_options_->input_special_alignment,
|
||||||
FL_RETURN_CHANGED);
|
FL_RETURN_CHANGED);
|
||||||
fl_set_input_return(cell_options_->input_mcolumn_width,
|
fl_set_input_return(cell_options_->input_mcolumn_width,
|
||||||
@ -142,11 +142,6 @@ void FormTabular::hideInset(InsetTabular * ti)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void FormTabular::apply()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void FormTabular::update()
|
void FormTabular::update()
|
||||||
{
|
{
|
||||||
if (dialog_) {
|
if (dialog_) {
|
||||||
@ -162,17 +157,6 @@ void FormTabular::updateInset(InsetTabular * ti)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void FormTabular::input()
|
|
||||||
{
|
|
||||||
bool activate = true;
|
|
||||||
//
|
|
||||||
// whatever checks you need
|
|
||||||
//
|
|
||||||
if (activate) {
|
|
||||||
} else {
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void FormTabular::free()
|
void FormTabular::free()
|
||||||
{
|
{
|
||||||
@ -186,6 +170,27 @@ void FormTabular::free()
|
|||||||
fl_free_form(dialog_->form_tabular);
|
fl_free_form(dialog_->form_tabular);
|
||||||
delete dialog_;
|
delete dialog_;
|
||||||
dialog_ = 0;
|
dialog_ = 0;
|
||||||
|
|
||||||
|
fl_free_form(tabular_options_->form_tabular_options);
|
||||||
|
delete tabular_options_;
|
||||||
|
tabular_options_ = 0;
|
||||||
|
|
||||||
|
fl_free_form(column_options_->form_column_options);
|
||||||
|
delete column_options_;
|
||||||
|
column_options_ = 0;
|
||||||
|
|
||||||
|
fl_free_form(cell_options_->form_cell_options);
|
||||||
|
delete cell_options_;
|
||||||
|
cell_options_ = 0;
|
||||||
|
|
||||||
|
fl_free_form(longtable_options_->form_longtable_options);
|
||||||
|
delete longtable_options_;
|
||||||
|
longtable_options_ = 0;
|
||||||
|
|
||||||
|
hide_create();
|
||||||
|
fl_free_form(create_tabular_->form_create_tabular);
|
||||||
|
delete create_tabular_;
|
||||||
|
create_tabular_ = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -207,10 +212,10 @@ void FormTabular::CloseCB(FL_OBJECT * ob, long)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void FormTabular::InputCB(FL_OBJECT * ob, long)
|
void FormTabular::InputCB(FL_OBJECT * ob, long l)
|
||||||
{
|
{
|
||||||
FormTabular * pre = static_cast<FormTabular*>(ob->form->u_vdata);
|
FormTabular * pre = static_cast<FormTabular*>(ob->form->u_vdata);
|
||||||
pre->input();
|
pre->SetTabularOptions(ob, l);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -233,7 +238,6 @@ bool FormTabular::local_update(bool flag)
|
|||||||
actCell_ = cell = inset_->GetActCell();
|
actCell_ = cell = inset_->GetActCell();
|
||||||
column = tabular->column_of_cell(cell)+1;
|
column = tabular->column_of_cell(cell)+1;
|
||||||
fl_set_object_label(dialog_->text_warning,"");
|
fl_set_object_label(dialog_->text_warning,"");
|
||||||
confirmed_ = false;
|
|
||||||
fl_activate_object(column_options_->input_special_alignment);
|
fl_activate_object(column_options_->input_special_alignment);
|
||||||
fl_activate_object(cell_options_->input_special_multialign);
|
fl_activate_object(cell_options_->input_special_multialign);
|
||||||
fl_activate_object(column_options_->input_column_width);
|
fl_activate_object(column_options_->input_column_width);
|
||||||
@ -368,6 +372,162 @@ bool FormTabular::local_update(bool flag)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void FormTabular::SetTabularOptions(FL_OBJECT * ob, long)
|
||||||
|
{
|
||||||
|
if (!inset_)
|
||||||
|
return;
|
||||||
|
|
||||||
|
LyXTabular
|
||||||
|
* tabular = inset_->tabular;
|
||||||
|
int
|
||||||
|
cell,
|
||||||
|
s,
|
||||||
|
num = 0;
|
||||||
|
string
|
||||||
|
special,
|
||||||
|
str;
|
||||||
|
|
||||||
|
cell = inset_->GetActCell();
|
||||||
|
if (actCell_ != cell) {
|
||||||
|
local_update(false);
|
||||||
|
fl_set_object_label(dialog_->text_warning,
|
||||||
|
_("Warning: Wrong Cursor position, updated window"));
|
||||||
|
fl_show_object(dialog_->text_warning);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// No point in processing directives that you can't do anything with
|
||||||
|
// anyhow, so exit now if the buffer is read-only.
|
||||||
|
if (lv_->buffer()->isReadonly()) {
|
||||||
|
local_update(false);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (ob == column_options_->input_column_width) {
|
||||||
|
string
|
||||||
|
str;
|
||||||
|
str = fl_get_input(ob);
|
||||||
|
if (!str.empty() && !isValidLength(str)) {
|
||||||
|
fl_set_object_label(dialog_->text_warning,
|
||||||
|
_("Warning: Invalid Length (valid example: 10mm)"));
|
||||||
|
fl_show_object(dialog_->text_warning);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
inset_->TabularFeatures(lv_->view(), LyXTabular::SET_PWIDTH,str);
|
||||||
|
local_update(false); // update for alignment
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
str = fl_get_input(column_options_->input_column_width);
|
||||||
|
if (!str.empty() && !isValidLength(str)) {
|
||||||
|
fl_set_object_label(
|
||||||
|
dialog_->text_warning,
|
||||||
|
_("Warning: Invalid Length (valid example: 10mm)"));
|
||||||
|
fl_show_object(dialog_->text_warning);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (ob == tabular_options_->button_append_row)
|
||||||
|
num = LyXTabular::APPEND_ROW;
|
||||||
|
else if (ob == tabular_options_->button_append_column)
|
||||||
|
num = LyXTabular::APPEND_COLUMN;
|
||||||
|
else if (ob == tabular_options_->button_delete_row)
|
||||||
|
num = LyXTabular::DELETE_ROW;
|
||||||
|
else if (ob == tabular_options_->button_delete_column)
|
||||||
|
num = LyXTabular::DELETE_COLUMN;
|
||||||
|
else if (ob == tabular_options_->button_set_borders)
|
||||||
|
num = LyXTabular::SET_ALL_LINES;
|
||||||
|
else if (ob == tabular_options_->button_unset_borders)
|
||||||
|
num = LyXTabular::UNSET_ALL_LINES;
|
||||||
|
else if (ob == column_options_->radio_border_top)
|
||||||
|
num = LyXTabular::TOGGLE_LINE_TOP;
|
||||||
|
else if (ob == column_options_->radio_border_bottom)
|
||||||
|
num = LyXTabular::TOGGLE_LINE_BOTTOM;
|
||||||
|
else if (ob == column_options_->radio_border_left)
|
||||||
|
num = LyXTabular::TOGGLE_LINE_LEFT;
|
||||||
|
else if (ob == column_options_->radio_border_right)
|
||||||
|
num = LyXTabular::TOGGLE_LINE_RIGHT;
|
||||||
|
else if (ob == column_options_->radio_align_left)
|
||||||
|
num = LyXTabular::ALIGN_LEFT;
|
||||||
|
else if (ob == column_options_->radio_align_right)
|
||||||
|
num = LyXTabular::ALIGN_RIGHT;
|
||||||
|
else if (ob == column_options_->radio_align_center)
|
||||||
|
num = LyXTabular::ALIGN_CENTER;
|
||||||
|
else if (ob == cell_options_->radio_multicolumn)
|
||||||
|
num = LyXTabular::MULTICOLUMN;
|
||||||
|
else if (ob == tabular_options_->radio_longtable) {
|
||||||
|
s=fl_get_button(tabular_options_->radio_longtable);
|
||||||
|
if (s) {
|
||||||
|
num = LyXTabular::SET_LONGTABULAR;
|
||||||
|
fl_activate_object(longtable_options_->radio_lt_firsthead);
|
||||||
|
fl_activate_object(longtable_options_->radio_lt_head);
|
||||||
|
fl_activate_object(longtable_options_->radio_lt_foot);
|
||||||
|
fl_activate_object(longtable_options_->radio_lt_lastfoot);
|
||||||
|
fl_activate_object(longtable_options_->radio_lt_newpage);
|
||||||
|
fl_set_button(longtable_options_->radio_lt_firsthead,
|
||||||
|
tabular->GetRowOfLTFirstHead(cell));
|
||||||
|
fl_set_button(longtable_options_->radio_lt_head,
|
||||||
|
tabular->GetRowOfLTHead(cell));
|
||||||
|
fl_set_button(longtable_options_->radio_lt_foot,
|
||||||
|
tabular->GetRowOfLTFoot(cell));
|
||||||
|
fl_set_button(longtable_options_->radio_lt_lastfoot,
|
||||||
|
tabular->GetRowOfLTLastFoot(cell));
|
||||||
|
fl_set_button(longtable_options_->radio_lt_firsthead,
|
||||||
|
tabular->GetLTNewPage(cell));
|
||||||
|
} else {
|
||||||
|
num = LyXTabular::UNSET_LONGTABULAR;
|
||||||
|
fl_deactivate_object(longtable_options_->radio_lt_firsthead);
|
||||||
|
fl_deactivate_object(longtable_options_->radio_lt_head);
|
||||||
|
fl_deactivate_object(longtable_options_->radio_lt_foot);
|
||||||
|
fl_deactivate_object(longtable_options_->radio_lt_lastfoot);
|
||||||
|
fl_deactivate_object(longtable_options_->radio_lt_newpage);
|
||||||
|
fl_set_button(longtable_options_->radio_lt_firsthead,0);
|
||||||
|
fl_set_button(longtable_options_->radio_lt_head,0);
|
||||||
|
fl_set_button(longtable_options_->radio_lt_foot,0);
|
||||||
|
fl_set_button(longtable_options_->radio_lt_lastfoot,0);
|
||||||
|
fl_set_button(longtable_options_->radio_lt_newpage,0);
|
||||||
|
fl_set_object_lcol(longtable_options_->radio_lt_firsthead,
|
||||||
|
FL_INACTIVE);
|
||||||
|
fl_set_object_lcol(longtable_options_->radio_lt_head, FL_INACTIVE);
|
||||||
|
fl_set_object_lcol(longtable_options_->radio_lt_foot, FL_INACTIVE);
|
||||||
|
fl_set_object_lcol(longtable_options_->radio_lt_lastfoot,
|
||||||
|
FL_INACTIVE);
|
||||||
|
fl_set_object_lcol(longtable_options_->radio_lt_newpage,
|
||||||
|
FL_INACTIVE);
|
||||||
|
}
|
||||||
|
} else if (ob == tabular_options_->radio_rotate_tabular) {
|
||||||
|
s=fl_get_button(tabular_options_->radio_rotate_tabular);
|
||||||
|
if (s)
|
||||||
|
num = LyXTabular::SET_ROTATE_TABULAR;
|
||||||
|
else
|
||||||
|
num = LyXTabular::UNSET_ROTATE_TABULAR;
|
||||||
|
} else if (ob == cell_options_->radio_rotate_cell) {
|
||||||
|
s=fl_get_button(cell_options_->radio_rotate_cell);
|
||||||
|
if (s)
|
||||||
|
num = LyXTabular::SET_ROTATE_CELL;
|
||||||
|
else
|
||||||
|
num = LyXTabular::UNSET_ROTATE_CELL;
|
||||||
|
} else if (ob == cell_options_->radio_linebreak_cell) {
|
||||||
|
num = LyXTabular::SET_LINEBREAKS;
|
||||||
|
} else if (ob == longtable_options_->radio_lt_firsthead) {
|
||||||
|
num = LyXTabular::SET_LTFIRSTHEAD;
|
||||||
|
} else if (ob == longtable_options_->radio_lt_head) {
|
||||||
|
num = LyXTabular::SET_LTHEAD;
|
||||||
|
} else if (ob == longtable_options_->radio_lt_foot) {
|
||||||
|
num = LyXTabular::SET_LTFOOT;
|
||||||
|
} else if (ob == longtable_options_->radio_lt_lastfoot) {
|
||||||
|
num = LyXTabular::SET_LTLASTFOOT;
|
||||||
|
} else if (ob == longtable_options_->radio_lt_newpage) {
|
||||||
|
num = LyXTabular::SET_LTNEWPAGE;
|
||||||
|
} else if (ob == column_options_->input_special_alignment) {
|
||||||
|
special = fl_get_input(column_options_->input_special_alignment);
|
||||||
|
num = LyXTabular::SET_SPECIAL_COLUMN;
|
||||||
|
} else if (ob == cell_options_->input_special_multialign) {
|
||||||
|
special = fl_get_input(cell_options_->input_special_multialign);
|
||||||
|
num = LyXTabular::SET_SPECIAL_MULTI;
|
||||||
|
} else
|
||||||
|
return;
|
||||||
|
|
||||||
|
inset_->TabularFeatures(lv_->view(), num, special);
|
||||||
|
local_update(false);
|
||||||
|
}
|
||||||
|
|
||||||
// +-----------------------------------------------------------------------+
|
// +-----------------------------------------------------------------------+
|
||||||
// | Functions/Dialogs for creating tabular insets |
|
// | Functions/Dialogs for creating tabular insets |
|
||||||
// +-----------------------------------------------------------------------+
|
// +-----------------------------------------------------------------------+
|
||||||
@ -389,7 +549,8 @@ void FormTabular::show_create()
|
|||||||
|
|
||||||
void FormTabular::hide_create()
|
void FormTabular::hide_create()
|
||||||
{
|
{
|
||||||
if (create_tabular_->form_create_tabular)
|
if (create_tabular_->form_create_tabular &&
|
||||||
|
create_tabular_->form_create_tabular->visible)
|
||||||
fl_hide_form(create_tabular_->form_create_tabular);
|
fl_hide_form(create_tabular_->form_create_tabular);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -73,13 +73,12 @@ private:
|
|||||||
/**@name Dialog internal methods */
|
/**@name Dialog internal methods */
|
||||||
//@{
|
//@{
|
||||||
/// Apply from dialog
|
/// Apply from dialog
|
||||||
void apply();
|
|
||||||
void apply_create();
|
void apply_create();
|
||||||
/// Filter the inputs
|
|
||||||
void input();
|
|
||||||
/// Build the dialog
|
/// Build the dialog
|
||||||
void build();
|
void build();
|
||||||
///
|
///
|
||||||
|
void SetTabularOptions(FL_OBJECT *, long);
|
||||||
|
///
|
||||||
FD_form_tabular * build_tabular();
|
FD_form_tabular * build_tabular();
|
||||||
///
|
///
|
||||||
FD_form_tabular_options * build_tabular_options();
|
FD_form_tabular_options * build_tabular_options();
|
||||||
@ -121,7 +120,6 @@ private:
|
|||||||
//@}
|
//@}
|
||||||
InsetTabular * inset_;
|
InsetTabular * inset_;
|
||||||
int actCell_;
|
int actCell_;
|
||||||
bool confirmed_;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -7,7 +7,8 @@
|
|||||||
|
|
||||||
#include FORMS_H_LOCATION
|
#include FORMS_H_LOCATION
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include "FormCitation.h"
|
#include "form_citation.h"
|
||||||
|
#include "FormCitation.h"
|
||||||
|
|
||||||
FD_form_citation * FormCitation::build_citation()
|
FD_form_citation * FormCitation::build_citation()
|
||||||
{
|
{
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/** Header file generated with fdesign on Tue Jul 11 11:01:26 2000.**/
|
/** Header file generated with fdesign on Thu Jul 13 16:53:24 2000.**/
|
||||||
|
|
||||||
#ifndef FD_form_citation_h_
|
#ifndef FD_form_citation_h_
|
||||||
#define FD_form_citation_h_
|
#define FD_form_citation_h_
|
||||||
@ -10,11 +10,9 @@ extern "C" void C_FormCitationCancelCB(FL_OBJECT *, long);
|
|||||||
|
|
||||||
|
|
||||||
/**** Forms and Objects ****/
|
/**** Forms and Objects ****/
|
||||||
typedef struct {
|
struct FD_form_citation {
|
||||||
|
|
||||||
FL_FORM *form_citation;
|
FL_FORM *form_citation;
|
||||||
void *vdata;
|
|
||||||
char *cdata;
|
|
||||||
long ldata;
|
|
||||||
FL_OBJECT *box;
|
FL_OBJECT *box;
|
||||||
FL_OBJECT *citeBrsr;
|
FL_OBJECT *citeBrsr;
|
||||||
FL_OBJECT *bibBrsr;
|
FL_OBJECT *bibBrsr;
|
||||||
@ -28,7 +26,6 @@ typedef struct {
|
|||||||
FL_OBJECT *textAftr;
|
FL_OBJECT *textAftr;
|
||||||
FL_OBJECT *ok;
|
FL_OBJECT *ok;
|
||||||
FL_OBJECT *cancel;
|
FL_OBJECT *cancel;
|
||||||
} FD_form_citation;
|
};
|
||||||
|
|
||||||
|
|
||||||
#endif /* FD_form_citation_h_ */
|
#endif /* FD_form_citation_h_ */
|
||||||
|
@ -7,7 +7,8 @@
|
|||||||
|
|
||||||
#include FORMS_H_LOCATION
|
#include FORMS_H_LOCATION
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include "FormCopyright.h"
|
#include "form_copyright.h"
|
||||||
|
#include "FormCopyright.h"
|
||||||
|
|
||||||
FD_form_copyright * FormCopyright::build_copyright()
|
FD_form_copyright * FormCopyright::build_copyright()
|
||||||
{
|
{
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/** Header file generated with fdesign on Tue Jul 11 11:01:26 2000.**/
|
/** Header file generated with fdesign on Thu Jul 13 16:53:24 2000.**/
|
||||||
|
|
||||||
#ifndef FD_form_copyright_h_
|
#ifndef FD_form_copyright_h_
|
||||||
#define FD_form_copyright_h_
|
#define FD_form_copyright_h_
|
||||||
@ -8,13 +8,10 @@ extern "C" void C_FormCopyrightOKCB(FL_OBJECT *, long);
|
|||||||
|
|
||||||
|
|
||||||
/**** Forms and Objects ****/
|
/**** Forms and Objects ****/
|
||||||
typedef struct {
|
struct FD_form_copyright {
|
||||||
FL_FORM *form_copyright;
|
|
||||||
void *vdata;
|
|
||||||
char *cdata;
|
|
||||||
long ldata;
|
|
||||||
FL_OBJECT *button_ok;
|
|
||||||
} FD_form_copyright;
|
|
||||||
|
|
||||||
|
FL_FORM *form_copyright;
|
||||||
|
FL_OBJECT *button_ok;
|
||||||
|
};
|
||||||
|
|
||||||
#endif /* FD_form_copyright_h_ */
|
#endif /* FD_form_copyright_h_ */
|
||||||
|
@ -7,7 +7,8 @@
|
|||||||
|
|
||||||
#include FORMS_H_LOCATION
|
#include FORMS_H_LOCATION
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include "FormPreferences.h"
|
#include "form_preferences.h"
|
||||||
|
#include "FormPreferences.h"
|
||||||
|
|
||||||
FD_form_bind * FormPreferences::build_bind()
|
FD_form_bind * FormPreferences::build_bind()
|
||||||
{
|
{
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/** Header file generated with fdesign on Tue Jul 11 11:01:26 2000.**/
|
/** Header file generated with fdesign on Thu Jul 13 16:53:24 2000.**/
|
||||||
|
|
||||||
#ifndef FD_form_bind_h_
|
#ifndef FD_form_bind_h_
|
||||||
#define FD_form_bind_h_
|
#define FD_form_bind_h_
|
||||||
@ -16,32 +16,24 @@ extern "C" void C_FormPreferencesOKCB(FL_OBJECT *, long);
|
|||||||
|
|
||||||
|
|
||||||
/**** Forms and Objects ****/
|
/**** Forms and Objects ****/
|
||||||
typedef struct {
|
struct FD_form_bind {
|
||||||
FL_FORM *form_bind;
|
|
||||||
void *vdata;
|
FL_FORM *form_bind;
|
||||||
char *cdata;
|
FL_OBJECT *input_bind;
|
||||||
long ldata;
|
};
|
||||||
FL_OBJECT *input_bind;
|
struct FD_form_misc {
|
||||||
} FD_form_bind;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
FL_FORM *form_misc;
|
FL_FORM *form_misc;
|
||||||
void *vdata;
|
|
||||||
char *cdata;
|
|
||||||
long ldata;
|
|
||||||
FL_OBJECT *check_banner;
|
FL_OBJECT *check_banner;
|
||||||
FL_OBJECT *check_auto_region_delete;
|
FL_OBJECT *check_auto_region_delete;
|
||||||
FL_OBJECT *check_exit_confirm;
|
FL_OBJECT *check_exit_confirm;
|
||||||
FL_OBJECT *check_display_shortcuts;
|
FL_OBJECT *check_display_shortcuts;
|
||||||
FL_OBJECT *counter_autosave;
|
FL_OBJECT *counter_autosave;
|
||||||
FL_OBJECT *counter_line_len;
|
FL_OBJECT *counter_line_len;
|
||||||
} FD_form_misc;
|
};
|
||||||
|
struct FD_form_screen_fonts {
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
FL_FORM *form_screen_fonts;
|
FL_FORM *form_screen_fonts;
|
||||||
void *vdata;
|
|
||||||
char *cdata;
|
|
||||||
long ldata;
|
|
||||||
FL_OBJECT *input_roman;
|
FL_OBJECT *input_roman;
|
||||||
FL_OBJECT *input_sans;
|
FL_OBJECT *input_sans;
|
||||||
FL_OBJECT *input_typewriter;
|
FL_OBJECT *input_typewriter;
|
||||||
@ -58,23 +50,17 @@ typedef struct {
|
|||||||
FL_OBJECT *input_normal;
|
FL_OBJECT *input_normal;
|
||||||
FL_OBJECT *input_huge;
|
FL_OBJECT *input_huge;
|
||||||
FL_OBJECT *input_huger;
|
FL_OBJECT *input_huger;
|
||||||
} FD_form_screen_fonts;
|
};
|
||||||
|
struct FD_form_interface_fonts {
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
FL_FORM *form_interface_fonts;
|
FL_FORM *form_interface_fonts;
|
||||||
void *vdata;
|
|
||||||
char *cdata;
|
|
||||||
long ldata;
|
|
||||||
FL_OBJECT *input_popup_font;
|
FL_OBJECT *input_popup_font;
|
||||||
FL_OBJECT *input_menu_font;
|
FL_OBJECT *input_menu_font;
|
||||||
FL_OBJECT *input_encoding;
|
FL_OBJECT *input_encoding;
|
||||||
} FD_form_interface_fonts;
|
};
|
||||||
|
struct FD_form_printer {
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
FL_FORM *form_printer;
|
FL_FORM *form_printer;
|
||||||
void *vdata;
|
|
||||||
char *cdata;
|
|
||||||
long ldata;
|
|
||||||
FL_OBJECT *input_command;
|
FL_OBJECT *input_command;
|
||||||
FL_OBJECT *input_page_range;
|
FL_OBJECT *input_page_range;
|
||||||
FL_OBJECT *input_copies;
|
FL_OBJECT *input_copies;
|
||||||
@ -93,13 +79,10 @@ typedef struct {
|
|||||||
FL_OBJECT *input_paper_size;
|
FL_OBJECT *input_paper_size;
|
||||||
FL_OBJECT *input_name;
|
FL_OBJECT *input_name;
|
||||||
FL_OBJECT *check_adapt_output;
|
FL_OBJECT *check_adapt_output;
|
||||||
} FD_form_printer;
|
};
|
||||||
|
struct FD_form_paths {
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
FL_FORM *form_paths;
|
FL_FORM *form_paths;
|
||||||
void *vdata;
|
|
||||||
char *cdata;
|
|
||||||
long ldata;
|
|
||||||
FL_OBJECT *input_default_path;
|
FL_OBJECT *input_default_path;
|
||||||
FL_OBJECT *button_document_browse;
|
FL_OBJECT *button_document_browse;
|
||||||
FL_OBJECT *counter_lastfiles;
|
FL_OBJECT *counter_lastfiles;
|
||||||
@ -114,18 +97,14 @@ typedef struct {
|
|||||||
FL_OBJECT *check_make_backups;
|
FL_OBJECT *check_make_backups;
|
||||||
FL_OBJECT *input_backup_path;
|
FL_OBJECT *input_backup_path;
|
||||||
FL_OBJECT *button_backup_path_browse;
|
FL_OBJECT *button_backup_path_browse;
|
||||||
} FD_form_paths;
|
};
|
||||||
|
struct FD_form_preferences {
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
FL_FORM *form_preferences;
|
FL_FORM *form_preferences;
|
||||||
void *vdata;
|
|
||||||
char *cdata;
|
|
||||||
long ldata;
|
|
||||||
FL_OBJECT *button_apply;
|
FL_OBJECT *button_apply;
|
||||||
FL_OBJECT *button_cancel;
|
FL_OBJECT *button_cancel;
|
||||||
FL_OBJECT *button_ok;
|
FL_OBJECT *button_ok;
|
||||||
FL_OBJECT *tabfolder_prefs;
|
FL_OBJECT *tabfolder_prefs;
|
||||||
} FD_form_preferences;
|
};
|
||||||
|
|
||||||
|
|
||||||
#endif /* FD_form_bind_h_ */
|
#endif /* FD_form_bind_h_ */
|
||||||
|
@ -7,7 +7,8 @@
|
|||||||
|
|
||||||
#include FORMS_H_LOCATION
|
#include FORMS_H_LOCATION
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include "FormPrint.h"
|
#include "form_print.h"
|
||||||
|
#include "FormPrint.h"
|
||||||
|
|
||||||
FD_form_print * FormPrint::build_print()
|
FD_form_print * FormPrint::build_print()
|
||||||
{
|
{
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/** Header file generated with fdesign on Tue Jul 11 11:01:26 2000.**/
|
/** Header file generated with fdesign on Thu Jul 13 16:53:24 2000.**/
|
||||||
|
|
||||||
#ifndef FD_form_print_h_
|
#ifndef FD_form_print_h_
|
||||||
#define FD_form_print_h_
|
#define FD_form_print_h_
|
||||||
@ -11,11 +11,9 @@ extern "C" void C_FormPrintCancelCB(FL_OBJECT *, long);
|
|||||||
|
|
||||||
|
|
||||||
/**** Forms and Objects ****/
|
/**** Forms and Objects ****/
|
||||||
typedef struct {
|
struct FD_form_print {
|
||||||
|
|
||||||
FL_FORM *form_print;
|
FL_FORM *form_print;
|
||||||
void *vdata;
|
|
||||||
char *cdata;
|
|
||||||
long ldata;
|
|
||||||
FL_OBJECT *input_printer;
|
FL_OBJECT *input_printer;
|
||||||
FL_OBJECT *input_file;
|
FL_OBJECT *input_file;
|
||||||
FL_OBJECT *group_radio_printto;
|
FL_OBJECT *group_radio_printto;
|
||||||
@ -35,7 +33,6 @@ typedef struct {
|
|||||||
FL_OBJECT *input_count;
|
FL_OBJECT *input_count;
|
||||||
FL_OBJECT *radio_unsorted;
|
FL_OBJECT *radio_unsorted;
|
||||||
FL_OBJECT *input_to_page;
|
FL_OBJECT *input_to_page;
|
||||||
} FD_form_print;
|
};
|
||||||
|
|
||||||
|
|
||||||
#endif /* FD_form_print_h_ */
|
#endif /* FD_form_print_h_ */
|
||||||
|
@ -7,7 +7,8 @@
|
|||||||
|
|
||||||
#include FORMS_H_LOCATION
|
#include FORMS_H_LOCATION
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include "FormTabular.h"
|
#include "form_tabular.h"
|
||||||
|
#include "FormTabular.h"
|
||||||
|
|
||||||
FD_form_tabular * FormTabular::build_tabular()
|
FD_form_tabular * FormTabular::build_tabular()
|
||||||
{
|
{
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/** Header file generated with fdesign on Wed Jul 12 15:19:16 2000.**/
|
/** Header file generated with fdesign on Thu Jul 13 16:53:24 2000.**/
|
||||||
|
|
||||||
#ifndef FD_form_tabular_h_
|
#ifndef FD_form_tabular_h_
|
||||||
#define FD_form_tabular_h_
|
#define FD_form_tabular_h_
|
||||||
@ -20,23 +20,18 @@ extern "C" void C_FormTabularCancelCB(FL_OBJECT *, long);
|
|||||||
|
|
||||||
|
|
||||||
/**** Forms and Objects ****/
|
/**** Forms and Objects ****/
|
||||||
typedef struct {
|
struct FD_form_tabular {
|
||||||
|
|
||||||
FL_FORM *form_tabular;
|
FL_FORM *form_tabular;
|
||||||
void *vdata;
|
|
||||||
char *cdata;
|
|
||||||
long ldata;
|
|
||||||
FL_OBJECT *tabFolder;
|
FL_OBJECT *tabFolder;
|
||||||
FL_OBJECT *button_close;
|
FL_OBJECT *button_close;
|
||||||
FL_OBJECT *input_tabular_column;
|
FL_OBJECT *input_tabular_column;
|
||||||
FL_OBJECT *input_tabular_row;
|
FL_OBJECT *input_tabular_row;
|
||||||
FL_OBJECT *text_warning;
|
FL_OBJECT *text_warning;
|
||||||
} FD_form_tabular;
|
};
|
||||||
|
struct FD_form_tabular_options {
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
FL_FORM *form_tabular_options;
|
FL_FORM *form_tabular_options;
|
||||||
void *vdata;
|
|
||||||
char *cdata;
|
|
||||||
long ldata;
|
|
||||||
FL_OBJECT *button_append_column;
|
FL_OBJECT *button_append_column;
|
||||||
FL_OBJECT *button_delete_column;
|
FL_OBJECT *button_delete_column;
|
||||||
FL_OBJECT *button_append_row;
|
FL_OBJECT *button_append_row;
|
||||||
@ -45,13 +40,10 @@ typedef struct {
|
|||||||
FL_OBJECT *button_unset_borders;
|
FL_OBJECT *button_unset_borders;
|
||||||
FL_OBJECT *radio_longtable;
|
FL_OBJECT *radio_longtable;
|
||||||
FL_OBJECT *radio_rotate_tabular;
|
FL_OBJECT *radio_rotate_tabular;
|
||||||
} FD_form_tabular_options;
|
};
|
||||||
|
struct FD_form_column_options {
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
FL_FORM *form_column_options;
|
FL_FORM *form_column_options;
|
||||||
void *vdata;
|
|
||||||
char *cdata;
|
|
||||||
long ldata;
|
|
||||||
FL_OBJECT *radio_border_top;
|
FL_OBJECT *radio_border_top;
|
||||||
FL_OBJECT *radio_border_bottom;
|
FL_OBJECT *radio_border_bottom;
|
||||||
FL_OBJECT *radio_border_left;
|
FL_OBJECT *radio_border_left;
|
||||||
@ -64,13 +56,10 @@ typedef struct {
|
|||||||
FL_OBJECT *radio_valign_center;
|
FL_OBJECT *radio_valign_center;
|
||||||
FL_OBJECT *radio_valign_bottom;
|
FL_OBJECT *radio_valign_bottom;
|
||||||
FL_OBJECT *input_special_alignment;
|
FL_OBJECT *input_special_alignment;
|
||||||
} FD_form_column_options;
|
};
|
||||||
|
struct FD_form_cell_options {
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
FL_FORM *form_cell_options;
|
FL_FORM *form_cell_options;
|
||||||
void *vdata;
|
|
||||||
char *cdata;
|
|
||||||
long ldata;
|
|
||||||
FL_OBJECT *radio_multicolumn;
|
FL_OBJECT *radio_multicolumn;
|
||||||
FL_OBJECT *radio_linebreak_cell;
|
FL_OBJECT *radio_linebreak_cell;
|
||||||
FL_OBJECT *radio_rotate_cell;
|
FL_OBJECT *radio_rotate_cell;
|
||||||
@ -86,31 +75,24 @@ typedef struct {
|
|||||||
FL_OBJECT *radio_valign_top;
|
FL_OBJECT *radio_valign_top;
|
||||||
FL_OBJECT *radio_valign_center;
|
FL_OBJECT *radio_valign_center;
|
||||||
FL_OBJECT *radio_valign_bottom;
|
FL_OBJECT *radio_valign_bottom;
|
||||||
} FD_form_cell_options;
|
};
|
||||||
|
struct FD_form_longtable_options {
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
FL_FORM *form_longtable_options;
|
FL_FORM *form_longtable_options;
|
||||||
void *vdata;
|
|
||||||
char *cdata;
|
|
||||||
long ldata;
|
|
||||||
FL_OBJECT *radio_lt_firsthead;
|
FL_OBJECT *radio_lt_firsthead;
|
||||||
FL_OBJECT *radio_lt_head;
|
FL_OBJECT *radio_lt_head;
|
||||||
FL_OBJECT *radio_lt_foot;
|
FL_OBJECT *radio_lt_foot;
|
||||||
FL_OBJECT *radio_lt_lastfoot;
|
FL_OBJECT *radio_lt_lastfoot;
|
||||||
FL_OBJECT *radio_lt_newpage;
|
FL_OBJECT *radio_lt_newpage;
|
||||||
} FD_form_longtable_options;
|
};
|
||||||
|
struct FD_form_create_tabular {
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
FL_FORM *form_create_tabular;
|
FL_FORM *form_create_tabular;
|
||||||
void *vdata;
|
|
||||||
char *cdata;
|
|
||||||
long ldata;
|
|
||||||
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 *slider_columns;
|
FL_OBJECT *slider_columns;
|
||||||
FL_OBJECT *slider_rows;
|
FL_OBJECT *slider_rows;
|
||||||
} FD_form_create_tabular;
|
};
|
||||||
|
|
||||||
|
|
||||||
#endif /* FD_form_tabular_h_ */
|
#endif /* FD_form_tabular_h_ */
|
||||||
|
@ -46,6 +46,12 @@ echo >> $2
|
|||||||
# For all lines containing "fl_" and a string _not_ containging |,
|
# For all lines containing "fl_" and a string _not_ containging |,
|
||||||
# replace the string with _(string)
|
# replace the string with _(string)
|
||||||
#
|
#
|
||||||
|
# -e "/#include \"form_.*\"/a\\
|
||||||
|
# #include \"$classname.h\" "
|
||||||
|
#
|
||||||
|
# For all lines containing "#include "form_*"", append a line
|
||||||
|
# containing the header file of the parent class
|
||||||
|
#
|
||||||
# -e '/shortcut/ s/".*[|].*"/scex(_(&))/'
|
# -e '/shortcut/ s/".*[|].*"/scex(_(&))/'
|
||||||
#
|
#
|
||||||
# For all lines containing "shortcut" and a string containing |, replace
|
# For all lines containing "shortcut" and a string containing |, replace
|
||||||
@ -90,7 +96,8 @@ export classname
|
|||||||
|
|
||||||
cat $1 | sed \
|
cat $1 | sed \
|
||||||
-e 's/#include \"forms\.h\"/#include FORMS_H_LOCATION/' \
|
-e 's/#include \"forms\.h\"/#include FORMS_H_LOCATION/' \
|
||||||
-e "s/#include \".orm_.*\"/#include \"$classname.h\"/" \
|
-e "/#include \"form_.*\"/a\\
|
||||||
|
#include \"$classname.h\" " \
|
||||||
-e '/fl_/ s/".[^|]*"/_(&)/' \
|
-e '/fl_/ s/".[^|]*"/_(&)/' \
|
||||||
-e '/shortcut/ s/".*[|].*"/scex(_(&))/' \
|
-e '/shortcut/ s/".*[|].*"/scex(_(&))/' \
|
||||||
-e '/fl_add/ s/".*[|].*"/idex(_(&))/' \
|
-e '/fl_add/ s/".*[|].*"/idex(_(&))/' \
|
||||||
@ -100,13 +107,3 @@ cat $1 | sed \
|
|||||||
-e 's/\(fdui->form[^ ]*\)\(.*bgn_form.*\)/\1\2\
|
-e 's/\(fdui->form[^ ]*\)\(.*bgn_form.*\)/\1\2\
|
||||||
\1->u_vdata = this;/' \
|
\1->u_vdata = this;/' \
|
||||||
-e 's/,\([^ ]\)/, \1/g' >> $2
|
-e 's/,\([^ ]\)/, \1/g' >> $2
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -40,19 +40,14 @@ c: $(OBJS)
|
|||||||
d: c $(COBJS)
|
d: c $(COBJS)
|
||||||
|
|
||||||
|
|
||||||
# -e 's/\([^ ]* \*\)\([^ ]*\)/\1 \2/'
|
# Modify the header files using the instructions in fdfixh.sed
|
||||||
#
|
|
||||||
# Make declarations like "void *cdata;" into "void * cdata;"
|
|
||||||
#
|
|
||||||
e: c
|
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 -s $$hfil < $$hfil.patch) \
|
patch -s $$hfil < $$hfil.patch) \
|
||||||
fi; \
|
fi; \
|
||||||
sed < $$hfil > $$hfil.tmp \
|
sed -f fdfixh.sed < $$hfil > $$hfil.tmp; \
|
||||||
-e 's/\(extern \)\(.*\)/\1 "C" \2/' \
|
|
||||||
-e '/create_form_/d' ; \
|
|
||||||
mv $$hfil.tmp $$hfil; \
|
mv $$hfil.tmp $$hfil; \
|
||||||
done
|
done
|
||||||
|
|
||||||
@ -72,6 +67,7 @@ updatesrc: d e
|
|||||||
|
|
||||||
.c.C:
|
.c.C:
|
||||||
./fdfix.sh $< $@
|
./fdfix.sh $< $@
|
||||||
|
rm $<
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.[hcC] *.bak
|
rm -f *.[hcC] *.bak
|
||||||
|
@ -33,10 +33,6 @@
|
|||||||
#include "insets/insettext.h"
|
#include "insets/insettext.h"
|
||||||
#include "frontends/Dialogs.h"
|
#include "frontends/Dialogs.h"
|
||||||
|
|
||||||
extern void MenuLayoutTabular(bool, InsetTabular *);
|
|
||||||
extern bool UpdateLayoutTabular(bool, InsetTabular *);
|
|
||||||
extern void TabularOptClose();
|
|
||||||
|
|
||||||
const int ADD_TO_HEIGHT = 2;
|
const int ADD_TO_HEIGHT = 2;
|
||||||
const int ADD_TO_TABULAR_WIDTH = 2;
|
const int ADD_TO_TABULAR_WIDTH = 2;
|
||||||
|
|
||||||
@ -47,8 +43,6 @@ using std::endl;
|
|||||||
|
|
||||||
#define cellstart(p) ((p % 2) == 0)
|
#define cellstart(p) ((p % 2) == 0)
|
||||||
|
|
||||||
#define USE_NEW_LAYOUT 1
|
|
||||||
|
|
||||||
InsetTabular::InsetTabular(Buffer * buf, int rows, int columns)
|
InsetTabular::InsetTabular(Buffer * buf, int rows, int columns)
|
||||||
{
|
{
|
||||||
if (rows <= 0)
|
if (rows <= 0)
|
||||||
@ -90,12 +84,8 @@ InsetTabular::InsetTabular(InsetTabular const & tab, Buffer * buf)
|
|||||||
InsetTabular::~InsetTabular()
|
InsetTabular::~InsetTabular()
|
||||||
{
|
{
|
||||||
delete tabular;
|
delete tabular;
|
||||||
#ifdef USE_NEW_LAYOUT
|
if (dialogs_)
|
||||||
if (buffer->getUser())
|
|
||||||
buffer->getUser()->owner()->getDialogs()->hideTabular(this);
|
|
||||||
else if (dialogs_)
|
|
||||||
dialogs_->hideTabular(this);
|
dialogs_->hideTabular(this);
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -150,7 +140,7 @@ int InsetTabular::ascent(BufferView *, LyXFont const &) const
|
|||||||
|
|
||||||
int InsetTabular::descent(BufferView *, LyXFont const &) const
|
int InsetTabular::descent(BufferView *, LyXFont const &) const
|
||||||
{
|
{
|
||||||
return tabular->GetHeightOfTabular() - tabular->GetAscentOfRow(0);
|
return tabular->GetHeightOfTabular() - tabular->GetAscentOfRow(0) + 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -171,7 +161,6 @@ void InsetTabular::draw(BufferView * bv, LyXFont const & font, int baseline,
|
|||||||
UpdatableInset::draw(bv,font,baseline,x,cleared);
|
UpdatableInset::draw(bv,font,baseline,x,cleared);
|
||||||
if (!cleared && ((need_update == INIT) || (need_update == FULL) ||
|
if (!cleared && ((need_update == INIT) || (need_update == FULL) ||
|
||||||
(top_x != int(x)) || (top_baseline != baseline))) {
|
(top_x != int(x)) || (top_baseline != baseline))) {
|
||||||
#if 1
|
|
||||||
int h = ascent(bv, font) + descent(bv, font);
|
int h = ascent(bv, font) + descent(bv, font);
|
||||||
int tx = display()? 0:top_x;
|
int tx = display()? 0:top_x;
|
||||||
int w = tx? width(bv, font):pain.paperWidth();
|
int w = tx? width(bv, font):pain.paperWidth();
|
||||||
@ -186,18 +175,6 @@ void InsetTabular::draw(BufferView * bv, LyXFont const & font, int baseline,
|
|||||||
pain.fillRectangle(tx, ty, w, h);
|
pain.fillRectangle(tx, ty, w, h);
|
||||||
need_update = FULL;
|
need_update = FULL;
|
||||||
cleared = true;
|
cleared = true;
|
||||||
#else
|
|
||||||
need_update = FULL;
|
|
||||||
resetPos(pain);
|
|
||||||
if (locked) { // repaint this way as the background was not cleared
|
|
||||||
if (the_locking_inset)
|
|
||||||
the_locking_inset->update(bv, font, true);
|
|
||||||
locked = false;
|
|
||||||
bv->updateInset(const_cast<InsetTabular*>(this), false);
|
|
||||||
locked = true;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
top_x = int(x);
|
top_x = int(x);
|
||||||
top_baseline = baseline;
|
top_baseline = baseline;
|
||||||
@ -361,7 +338,6 @@ void InsetTabular::Edit(BufferView * bv, int x, int y, unsigned int button)
|
|||||||
|
|
||||||
void InsetTabular::InsetUnlock(BufferView * bv)
|
void InsetTabular::InsetUnlock(BufferView * bv)
|
||||||
{
|
{
|
||||||
TabularOptClose();
|
|
||||||
if (the_locking_inset) {
|
if (the_locking_inset) {
|
||||||
the_locking_inset->InsetUnlock(bv);
|
the_locking_inset->InsetUnlock(bv);
|
||||||
the_locking_inset = 0;
|
the_locking_inset = 0;
|
||||||
@ -434,12 +410,8 @@ bool InsetTabular::UnlockInsetInInset(BufferView * bv, UpdatableInset * inset,
|
|||||||
if ((inset->LyxCode() == TABULAR_CODE) &&
|
if ((inset->LyxCode() == TABULAR_CODE) &&
|
||||||
!the_locking_inset->GetFirstLockingInsetOfType(TABULAR_CODE))
|
!the_locking_inset->GetFirstLockingInsetOfType(TABULAR_CODE))
|
||||||
{
|
{
|
||||||
#ifdef USE_NEW_LAYOUT
|
|
||||||
dialogs_ = bv->owner()->getDialogs();
|
dialogs_ = bv->owner()->getDialogs();
|
||||||
dialogs_->updateTabular(const_cast<InsetTabular *>(this));
|
dialogs_->updateTabular(const_cast<InsetTabular *>(this));
|
||||||
#else
|
|
||||||
UpdateLayoutTabular(true, const_cast<InsetTabular *>(this));
|
|
||||||
#endif
|
|
||||||
oldcell = actcell;
|
oldcell = actcell;
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
@ -532,15 +504,11 @@ void InsetTabular::InsetButtonRelease(BufferView * bv,
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#ifdef USE_NEW_LAYOUT
|
|
||||||
dialogs_ = bv->owner()->getDialogs();
|
dialogs_ = bv->owner()->getDialogs();
|
||||||
dialogs_->showTabular(this);
|
dialogs_->showTabular(this);
|
||||||
#if 0
|
#if 0
|
||||||
else if (ocell != actcell)
|
else if (ocell != actcell)
|
||||||
bview->getOwner()->getPopups().updateTabular();
|
bview->getOwner()->getPopups().updateTabular();
|
||||||
#endif
|
|
||||||
#else
|
|
||||||
MenuLayoutTabular(true, this);
|
|
||||||
#endif
|
#endif
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -743,13 +711,8 @@ UpdatableInset::RESULT InsetTabular::LocalDispatch(BufferView * bv, int action,
|
|||||||
break;
|
break;
|
||||||
case LFUN_LAYOUT_TABLE:
|
case LFUN_LAYOUT_TABLE:
|
||||||
{
|
{
|
||||||
#ifdef USE_NEW_LAYOUT
|
|
||||||
dialogs_ = bv->owner()->getDialogs();
|
dialogs_ = bv->owner()->getDialogs();
|
||||||
dialogs_->showTabular(this);
|
dialogs_->showTabular(this);
|
||||||
#else
|
|
||||||
int flag = (arg == "true");
|
|
||||||
MenuLayoutTabular(flag, this);
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
@ -952,12 +915,8 @@ void InsetTabular::resetPos(BufferView * bv) const
|
|||||||
if ((!the_locking_inset ||
|
if ((!the_locking_inset ||
|
||||||
!the_locking_inset->GetFirstLockingInsetOfType(TABULAR_CODE)) &&
|
!the_locking_inset->GetFirstLockingInsetOfType(TABULAR_CODE)) &&
|
||||||
(actcell != oldcell)) {
|
(actcell != oldcell)) {
|
||||||
#ifdef USE_NEW_LAYOUT
|
|
||||||
dialogs_ = bv->owner()->getDialogs();
|
dialogs_ = bv->owner()->getDialogs();
|
||||||
dialogs_->updateTabular(const_cast<InsetTabular *>(this));
|
dialogs_->updateTabular(const_cast<InsetTabular *>(this));
|
||||||
#else
|
|
||||||
UpdateLayoutTabular(true, const_cast<InsetTabular *>(this));
|
|
||||||
#endif
|
|
||||||
oldcell = actcell;
|
oldcell = actcell;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
14
src/text.C
14
src/text.C
@ -3807,6 +3807,20 @@ void LyXText::GetVisibleRow(BufferView * bview, int y_offset, int x_offset,
|
|||||||
w = ww;
|
w = ww;
|
||||||
pain.fillRectangle(x_offset, y_offset, w, h);
|
pain.fillRectangle(x_offset, y_offset, w, h);
|
||||||
}
|
}
|
||||||
|
h += inset->ascent(bview, font) + inset->descent(bview, font);
|
||||||
|
if ((row_ptr->height() - h) > 0) {
|
||||||
|
int w;
|
||||||
|
if (inset_owner)
|
||||||
|
w = inset_owner->width(bview, font);
|
||||||
|
else
|
||||||
|
w = ww;
|
||||||
|
pain.fillRectangle(x_offset,h, w, row_ptr->height()-h);
|
||||||
|
}
|
||||||
|
if (!inset_owner && !inset->display() && !inset->needFullRow())
|
||||||
|
{
|
||||||
|
int w = inset->width(bview, font) + int(x);
|
||||||
|
pain.fillRectangle(w, y_offset, ww - w, row_ptr->height());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (selection) {
|
if (selection) {
|
||||||
|
Loading…
Reference in New Issue
Block a user