#include "insets/insetref.h"
#include "insets/insettabular.h"
#include "tabular.h"
+#include "exporter.h"
+
+#include "frontends/Dialogs.h"
using std::vector;
+using std::pair;
using std::endl;
using std::max;
+using std::min;
using std::sort;
-extern FD_form_screen * fd_form_screen;
extern BufferList bufferlist;
// I would really prefere to see most or all of these 'extern's disappear.
extern void MenuLayoutSave();
extern void ShowCredits();
-extern void ShowCopyright();
-extern void show_symbols_form(LyXFunc *);
-extern void LaTeXOptions(BufferView *);
// A bunch of wrappers
}
-void Menus::ScreenOptions()
-{
- static int ow = -1, oh;
-
- // this is not very nice....
- fl_set_input(fd_form_screen->input_roman,
- lyxrc.roman_font_name.c_str());
- fl_set_input(fd_form_screen->input_sans,
- lyxrc.sans_font_name.c_str());
- fl_set_input(fd_form_screen->input_typewriter,
- lyxrc.typewriter_font_name.c_str());
- fl_set_input(fd_form_screen->input_font_norm,
- lyxrc.font_norm.c_str());
- char tmpstring[10];
- sprintf(tmpstring, "%d", lyxrc.zoom);
- fl_set_input(fd_form_screen->intinput_size, tmpstring);
- if (fd_form_screen->form_screen->visible) {
- fl_raise_form(fd_form_screen->form_screen);
- } else {
- fl_show_form(fd_form_screen->form_screen,
- FL_PLACE_MOUSE | FL_FREE_SIZE, FL_FULLBORDER,
- _("Screen Options"));
- if (ow < 0) {
- ow = fd_form_screen->form_screen->w;
- oh = fd_form_screen->form_screen->h;
- }
- fl_set_form_minsize(fd_form_screen->form_screen, ow, oh);
- }
-}
-
-
//
// Here comes all the menu callbacks.
//
fl_setpup_shortcut(SubFileImport, 34, scex(_("FIM|Dd#d#D")));
// Export sub-menu
-
+#ifdef NEW_EXPORT
+ int SubFileExport = fl_defpup(FL_ObjWin(ob),
+ _("Export%t"));
+ vector<pair<string,string> > formats =
+ Exporter::GetExportableFormats(tmpbuffer);
+ for (vector<pair<string,string> >::size_type i = 0;
+ i < formats.size(); ++i) {
+ string entry = _("as ")
+ + formats[i].second
+ + "%x" + tostr(1000+i);
+ fl_addtopup(SubFileExport, entry.c_str());
+ }
+#else
// remember to make this handle linuxdoc too.
// and now docbook also.
+
int SubFileExport = 0;
if (!LinuxDoc && !DocBook)
SubFileExport= fl_defpup(FL_ObjWin(ob),
"|as PostScript...%x42"
"|as Ascii Text...%x43"
"|as HTML...%x44"));
-
fl_setpup_shortcut(SubFileExport, 40, scex(_("FEX|Ll#l#L")));
fl_setpup_shortcut(SubFileExport, 41, scex(_("FEX|Dd#d#D")));
fl_setpup_shortcut(SubFileExport, 42, scex(_("FEX|Pp#p#P")));
if (!LinuxDoc && !DocBook) {
fl_setpup_shortcut(SubFileExport, 45, scex(_("FEX|mM#m#M")));
}
+#endif
int FileMenu = fl_defpup(FL_ObjWin(ob),
_("New..."
if ( lyxrc.linuxdoc_to_lyx_command == "none")
fl_setpup_mode(SubFileImport, 34, FL_PUP_GREY);
+#ifndef NEW_EXPORT
if (!hasLaTeX) {
// Disable export dvi and export postscript
fl_setpup_mode(SubFileExport, 41, FL_PUP_GREY);
// Disable export HTML
fl_setpup_mode(SubFileExport, 44, FL_PUP_GREY);
}
+#endif
// xgettext:no-c-format
fl_addtopup(FileMenu, _("|Import%m"), SubFileImport);
case 5: tmpfunc->Dispatch(LFUN_MENUWRITE); break;
case 6: tmpfunc->Dispatch(LFUN_MENUWRITEAS); break;
case 7: tmpfunc->Dispatch(LFUN_MENURELOAD); break;
+#ifdef NEW_EXPORT
+ case 8: tmpfunc->Dispatch(LFUN_PREVIEW, "dvi"); break;
+ case 9: tmpfunc->Dispatch(LFUN_PREVIEW, "ps"); break;
+ case 10: tmpfunc->Dispatch(LFUN_UPDATE, "dvi"); break;
+ case 11: tmpfunc->Dispatch(LFUN_UPDATE, "ps"); break;
+#else
case 8: tmpfunc->Dispatch(LFUN_PREVIEW); break;
case 9: tmpfunc->Dispatch(LFUN_PREVIEWPS); break;
case 10: tmpfunc->Dispatch(LFUN_RUNLATEX); break;
case 11: tmpfunc->Dispatch(LFUN_RUNDVIPS); break;
+#endif
case 12: tmpfunc->Dispatch(LFUN_BUILDPROG); break;
case 13: tmpfunc->Dispatch(LFUN_MENUPRINT); break;
case 14: tmpfunc->Dispatch(LFUN_FAX); break;
break;
case 34: tmpfunc->Dispatch(LFUN_IMPORT, "linuxdoc");
break;
+#ifdef NEW_EXPORT
+ case 18:
+ tmpfunc->Dispatch(LFUN_QUIT);
+ break;
+ default:
+ if (choice >= 1000)
+ tmpfunc->Dispatch(LFUN_EXPORT,
+ formats[choice-1000].first.c_str());
+ else
+ men->currentView()
+ ->buffer(bufferlist
+ .loadLyXFile((*lastfiles)[choice - 18]));
+ break;
+#else
case 16: // export menu
case 40:
if (!LinuxDoc && !DocBook)
break;
case 43: tmpfunc->Dispatch(LFUN_EXPORT, "ascii");
break;
- case 44:
- if (!LinuxDoc && !DocBook)
- tmpfunc->Dispatch(LFUN_EXPORT, "html");
- else if(LinuxDoc)
- tmpfunc->Dispatch(LFUN_EXPORT, "html-linuxdoc");
- else
- tmpfunc->Dispatch(LFUN_EXPORT, "html-docbook");
+ case 44: tmpfunc->Dispatch(LFUN_EXPORT, "html");
break;
case 45: tmpfunc->Dispatch(LFUN_EXPORT, "custom");
break;
->buffer(bufferlist
.loadLyXFile((*lastfiles)[choice - 18]));
break;
+#endif
}
fl_freepup(SubFileImport);
fl_freepup(SubFileExport);
// Table submenu
int SubEditTable = fl_newpup(FL_ObjWin(ob));
+#ifndef NEW_TABULAR
if (men->currentView()->available() &&
- men->currentView()->text->cursor.par->table &&
+ men->currentView()->text->cursor.par()->table &&
!tmpbuffer->isReadonly()){
- LyXTable *table = men->currentView()->text->cursor.par->table;
+ LyXTable * table = men->currentView()->text->cursor.par()->table;
fl_addtopup(SubEditTable, _("Table%t"));
if (table->IsMultiColumn(men->currentView()->text->
NumberOfCell(men->currentView()->
- text->cursor.par,
+ text->cursor.par(),
men->currentView()->
- text->cursor.pos)))
+ text->cursor.pos())))
fl_addtopup(SubEditTable, _("|Multicolumn%B%x44%l"));
else
fl_addtopup(SubEditTable, _("|Multicolumn%b%x44%l"));
if (table->TopLine(men->currentView()->text->
NumberOfCell(men->currentView()->
- text->cursor.par,
+ text->cursor.par(),
men->currentView()->text->
- cursor.pos)))
+ cursor.pos())))
fl_addtopup(SubEditTable, _("|Line Top%B%x36"));
else
fl_addtopup(SubEditTable, _("|Line Top%b%x36"));
if (table->BottomLine(men->currentView()->text->
NumberOfCell(men->currentView()->
- text->cursor.par,
+ text->cursor.par(),
men->currentView()->
- text->cursor.pos)))
+ text->cursor.pos())))
fl_addtopup(SubEditTable, _("|Line Bottom%B%x37"));
else
fl_addtopup(SubEditTable, _("|Line Bottom%b%x37"));
if (table->LeftLine(men->currentView()->text->
NumberOfCell(men->currentView()->
- text->cursor.par,
+ text->cursor.par(),
men->currentView()->
- text->cursor.pos)))
+ text->cursor.pos())))
fl_addtopup(SubEditTable, _("|Line Left%B%x38"));
else
fl_addtopup(SubEditTable, _("|Line Left%b%x38"));
if (table->RightLine(men->currentView()->text->
NumberOfCell(men->currentView()->
- text->cursor.par,
+ text->cursor.par(),
men->currentView()->
- text->cursor.pos)))
+ text->cursor.pos())))
fl_addtopup(SubEditTable, _("|Line Right%B%x39%l"));
else
fl_addtopup(SubEditTable, _("|Line Right%b%x39%l"));
int align =
table->GetAlignment(men->currentView()->text->
NumberOfCell(men->currentView()->
- text->cursor.par,
+ text->cursor.par(),
men->currentView()->
- text->cursor.pos));
+ text->cursor.pos()));
if (align == LYX_ALIGN_LEFT)
fl_addtopup(SubEditTable, _("|Align Left%R%x40"));
else
// xgettext:no-c-format
fl_addtopup(SubEditTable, _("|Delete Table%x43"));
fl_setpup_shortcut(SubEditTable, 43, scex(_("EMT|Dd#d#D")));
- } else if (men->currentView()->the_locking_inset &&
+ } else
+#endif
+ if (men->currentView()->the_locking_inset &&
(men->currentView()->the_locking_inset->LyxCode() ==
Inset::TABULAR_CODE) &&
!tmpbuffer->isReadonly()) {
case 19: tmpfunc->Dispatch(LFUN_PASTESELECTION, "line"); break;
case 20: tmpfunc->Dispatch(LFUN_PASTESELECTION, "paragraph"); break;
- // floats & insets sub-menu
+#ifndef NEW_INSETS
+ // floats & insets sub-menu
case 21: men->currentView()->toggleFloat(); break;
case 22: tmpfunc->Dispatch(LFUN_MELT); break;
case 23: men->currentView()->allFloats(1, 0); break;
case 25: men->currentView()->allFloats(1, 1); break;
case 26: men->currentView()->allFloats(0, 1); break;
case 27: tmpfunc->Dispatch(LFUN_REMOVEERRORS); break;
-
- case 31: tmpfunc->Dispatch(LFUN_TABLE); break;
+#endif
+ case 31: tmpfunc->Dispatch(LFUN_DIALOG_TABULAR_INSERT); break;
// this is really temporary. We need new function in keybind.C
// These should set the minibuffer, too.
case 32: case 33: case 34:
men->currentView()->hideCursor();
if (!men->currentView()->text->selection){
men->currentView()->beforeChange();
- men->currentView()->update(-2);
+ men->currentView()->update(BufferView::SELECT|BufferView::FITCUR);
}
if (men->currentView()->the_locking_inset &&
(men->currentView()->the_locking_inset->LyxCode()
static_cast<InsetTabular *>
(men->currentView()->the_locking_inset);
inset->TabularFeatures(men->currentView(), choice - 32);
- } else {
+ }
+#ifndef NEW_TABULAR
+ else {
men->currentView()->text->
- TableFeatures(choice - 32);
- men->currentView()->update(1);
+ TableFeatures(men->currentView(), choice - 32);
+ men->currentView()->update(BufferView::SELECT|BufferView::FITCUR|BufferView::CHANGE);
}
+#endif
}
break;
// version control sub-menu
fl_freepup(SubVersionControl);
}
+vector<int>::size_type const max_number_of_menus = 32;
+unsigned int const max_number_of_items = 25;
+
+string Limit_string_length(string const & str) {
+ string::size_type const max_item_length = 45;
+
+ if (str.size() > max_item_length)
+ return str.substr(0, max_item_length-3) + "...";
+ else
+ return str;
+}
void Add_to_toc_menu(vector<Buffer::TocItem> const & toclist,
unsigned int from, unsigned int to, int depth,
int menu, vector<int> & menus, FL_OBJECT * ob)
{
- unsigned int const max_number_of_items = 25;
- unsigned int const max_item_length = 40;
if (to - from <= max_number_of_items) {
for (unsigned int i = from; i < to; ++i) {
-
- string line(4 * max(0, toclist[i].depth - depth),' ');
- line += toclist[i].str;
- string entry(line, 0, max_item_length);
- entry += "%x";
- entry += tostr(i + 1);
-
+ string entry(4 * max(0, toclist[i].depth - depth),' ');
+ entry += toclist[i].str;
+ entry = Limit_string_length(entry);
+ entry += "%x" + tostr(i + 1);
fl_addtopup(menu, entry.c_str());
}
} else {
unsigned int pos = from;
+ unsigned int count = 0;
while (pos < to) {
+ ++count;
+ if (count > max_number_of_items) {
+ fl_addtopup(menu, ". . .%d");
+ break;
+ }
unsigned int new_pos = pos+1;
while (new_pos < to &&
toclist[new_pos].depth > depth)
++new_pos;
+
+ string entry(4 * max(0, toclist[pos].depth - depth), ' ');
+ entry += toclist[pos].str;
+ entry = Limit_string_length(entry);
+
if (new_pos == pos + 1) {
- string line(4 * max(0, toclist[pos].depth - depth), ' ');
- line += toclist[pos].str;
- string entry(line, 0, max_item_length);
entry += "%x";
entry += tostr(pos + 1);
-
fl_addtopup(menu, entry.c_str());
- } else {
+ } else if (menus.size() < max_number_of_menus) {
int menu2 = fl_newpup(FL_ObjWin(ob));
menus.push_back(menu2);
Add_to_toc_menu(toclist, pos, new_pos,
depth + 1, menu2, menus,ob);
- string line(4 * max(0, toclist[pos].depth - depth), ' ');
- line += toclist[pos].str;
- string entry(line, 0, max_item_length);
entry += "%m";
-
fl_addtopup(menu, entry.c_str(), menu2);
+ } else {
+ entry += "%d";
+ fl_addtopup(menu, entry.c_str());
}
pos = new_pos;
}
if (!toclist[j].empty()) {
int menu2 = fl_newpup(FL_ObjWin(ob));
menus.push_back(menu2);
- for (unsigned int i = 0; i < toclist[j].size(); ++i)
- fl_addtopup(menu2,
- (toclist[j][i].str + "%x"
- + tostr(i+1+j*BIG_NUM)).c_str());
+ for (unsigned int i = 0; i < toclist[j].size(); ++i) {
+ if (i > max_number_of_items) {
+ fl_addtopup(menu2, ". . .%d");
+ break;
+ }
+ string entry = Limit_string_length(toclist[j][i].str);
+ entry += "%x" + tostr(i+1+j*BIG_NUM);
+ fl_addtopup(menu2, entry.c_str());
+ }
if (j == max_nonempty) {
string tmp = _(MenuNames[j-1]);
tmp += "%l";
int num = (choice % BIG_NUM) - 1;
BufferView *bv = men->currentView();
bv->beforeChange();
- bv->text->SetCursor(toclist[type][num].par, 0);
+ bv->text->SetCursor(bv, toclist[type][num].par, 0);
bv->text->sel_cursor = bv->text->cursor;
- bv->update(0);
+ bv->update(BufferView::SELECT|BufferView::FITCUR);
}
for (unsigned int i = 0; i < menus.size(); ++i)
fl_freepup(menus[i]);
typedef vector<string>::size_type size_type;
size_type const max_number_of_items = 25;
size_type const max_number_of_items2 = 20;
+ string::size_type const max_item_length = 40;
+ string::size_type const max_item_length2 = 20;
if (label_list.size() <= max_number_of_items)
- for (size_type i = 0; i < label_list.size(); ++i)
- fl_addtopup(menu,
- (label_list[i] + "%x"
- +tostr(i+offset)).c_str());
- else
+ for (size_type i = 0; i < label_list.size(); ++i) {
+ string entry = label_list[i];
+ if (entry.size() > max_item_length)
+ entry = entry.substr(0, max_item_length-1) + "$";
+ entry += "%x" + tostr(i+offset);
+ fl_addtopup(menu, entry.c_str());
+ }
+ else {
+ size_type count = 0;
for (size_type i = 0; i < label_list.size();
i += max_number_of_items2) {
- size_type j = std::min(label_list.size(),
- i+max_number_of_items2);
- int menu2 = fl_newpup(FL_ObjWin(ob));
- menus.push_back(menu2);
- for (size_type k = i; k < j; ++k)
- fl_addtopup(menu2,
- (label_list[k] + "%x"
- + tostr(k+offset)).c_str());
- fl_addtopup(menu,
- (label_list[i]+".."
- +label_list[j-1]+"%m").c_str(),
- menu2);
+ ++count;
+ if (count > max_number_of_items) {
+ fl_addtopup(menu, ". . .%d");
+ break;
+ }
+ size_type j = min(label_list.size(),
+ i+max_number_of_items2);
+
+ string entry;
+ if (label_list[i].size() > max_item_length2)
+ entry += label_list[i].substr(0, max_item_length2-1) + "$";
+ else
+ entry += label_list[i];
+ entry += "..";
+ if (label_list[j-1].size() > max_item_length2)
+ entry += label_list[j-1].substr(0, max_item_length2-1) + "$";
+ else
+ entry += label_list[j-1];
+
+ if (menus.size() < max_number_of_menus) {
+ int menu2 = fl_newpup(FL_ObjWin(ob));
+ menus.push_back(menu2);
+ for (size_type k = i; k < j; ++k) {
+ string entry2 = label_list[k];
+ if (entry2.size() > max_item_length)
+ entry2 = entry2.substr(0, max_item_length-1) + "$";
+ entry2 += "%x" + tostr(k+offset);
+ fl_addtopup(menu2, entry2.c_str());
+ }
+ entry += "%m";
+ fl_addtopup(menu, entry.c_str(), menu2);
+ } else {
+ entry += "%d";
+ fl_addtopup(menu, entry.c_str());
+ }
}
-
-
+ }
}
void Menus::ShowRefsMenu(FL_OBJECT * ob, long)
N_("Goto Reference%m") };
for (int j = 0; j < 6; ++j) {
- int menu2 = fl_newpup(FL_ObjWin(ob));
- menus.push_back(menu2);
- Add_to_refs_menu(label_list, 1+j*BIG_NUM, menu2, menus, ob);
- fl_addtopup(RefsMenu, _(MenuNames[j]), menu2);
+ if (menus.size() < max_number_of_menus) {
+ int menu2 = fl_newpup(FL_ObjWin(ob));
+ menus.push_back(menu2);
+ Add_to_refs_menu(label_list, (j+1)*BIG_NUM, menu2, menus, ob);
+ fl_addtopup(RefsMenu, _(MenuNames[j]), menu2);
+ } else {
+ string tmp = _(MenuNames[j]);
+ tmp += "%d";
+ fl_addtopup(RefsMenu, tmp.c_str());
+ }
}
+ fl_addtopup(RefsMenu, _("Go Back"));
bool empty = label_list.empty();
bool sgml = buffer->isSGML();
fl_setpup_mode(RefsMenu, 4, FL_PUP_GREY);
fl_setpup_mode(RefsMenu, 5, FL_PUP_GREY);
}
+ if (men->currentView()->NoSavedPositions())
+ fl_setpup_mode(RefsMenu, 7, FL_PUP_GREY);
fl_setpup_position(
men->_view->getForm()->x + ob->x,
fl_set_object_boxtype(ob, FL_FLAT_BOX);
fl_redraw_object(ob);
- if (choice > 0) {
- int type = choice / BIG_NUM;
- int num = (choice % BIG_NUM) - 1;
+ if (choice == 7)
+ men->_view->getLyXFunc()->Dispatch(LFUN_REF_BACK);
+ else if (choice >= BIG_NUM) {
+ int type = (choice / BIG_NUM) - 1;
+ int num = choice % BIG_NUM;
if (type >= 5)
- men->_view->getLyXFunc()->Dispatch(LFUN_REFGOTO,
+ men->_view->getLyXFunc()->Dispatch(LFUN_REF_GOTO,
label_list[num].c_str());
else {
- static string const commands[5]
- = { "\\ref", "\\pageref", "\\vref", "\\vpageref",
- "\\prettyref"};
- string t = commands[type] + "{" + label_list[num] + "}";
- men->currentView()->insertInset(new InsetRef(t, buffer));
+ static string const cmdname[5]
+ = { "ref", "pageref", "vref", "vpageref", "prettyref"};
+ InsetCommandParams p( cmdname[type] );
+ p.setContents( label_list[num] );
+ men->currentView()->insertInset(new InsetRef(p));
}
}
fl_setpup_mode(LayoutMenu, 9, FL_PUP_CHECK);
if (font.latex() == LyXFont::ON)
fl_setpup_mode(LayoutMenu, 10, FL_PUP_CHECK);
-
+
// Grey out unavailable entries
- if (!men->currentView()->text->cursor.par->table)
+#ifndef NEW_TABULAR
+ if (!men->currentView()->text->cursor.par()->table)
fl_setpup_mode(LayoutMenu, 5, FL_PUP_GREY);
-
+#endif
if (tmpbuffer->isReadonly()) {
fl_setpup_mode(LayoutMenu, 1, FL_PUP_GREY);
fl_setpup_mode(LayoutMenu, 6, FL_PUP_GREY);
"|Table...%l"
"|Include File..."
"|Import ASCII File%m"
- "|Insert LyX File...%l"
+ "|Insert LyX File..."
+ "|Insert external material...%l"
"|Footnote"
"|Margin Note"
"|Floats%m%l"
fl_setpup_shortcut(InsertMenu, 3, scex(_("IM|cC#c#C")));
fl_setpup_shortcut(InsertMenu, 4, scex(_("IM|Aa#a#A")));
fl_setpup_shortcut(InsertMenu, 5, scex(_("IM|Xx#x#X")));
- fl_setpup_shortcut(InsertMenu, 6, scex(_("IM|Ff#f#F")));
- fl_setpup_shortcut(InsertMenu, 7, scex(_("IM|Mm#m#M")));
- fl_setpup_shortcut(InsertMenu, 8, scex(_("IM|oO#o#O")));
- fl_setpup_shortcut(InsertMenu, 9, scex(_("IM|Tt#t#T")));
- fl_setpup_shortcut(InsertMenu, 10, scex(_("IM|Ss#s#S")));
- fl_setpup_shortcut(InsertMenu, 11, scex(_("IM|Nn#n#N")));
- fl_setpup_shortcut(InsertMenu, 12, scex(_("IM|Ll#l#L")));
- fl_setpup_shortcut(InsertMenu, 13, scex(_("IM|rR#r#R")));
- fl_setpup_shortcut(InsertMenu, 14, scex(_("IM|iI#i#I")));
- fl_setpup_shortcut(InsertMenu, 15, scex(_("IM|dD#d#D")));
- fl_setpup_shortcut(InsertMenu, 16, scex(_("IM|wW#w#W")));
+ fl_setpup_shortcut(InsertMenu, 6, scex(_("IM|Ee#e#E")));
+ fl_setpup_shortcut(InsertMenu, 7, scex(_("IM|Ff#f#F")));
+ fl_setpup_shortcut(InsertMenu, 8, scex(_("IM|Mm#m#M")));
+ fl_setpup_shortcut(InsertMenu, 9, scex(_("IM|oO#o#O")));
+ fl_setpup_shortcut(InsertMenu, 10, scex(_("IM|Tt#t#T")));
+ fl_setpup_shortcut(InsertMenu, 11, scex(_("IM|Ss#s#S")));
+ fl_setpup_shortcut(InsertMenu, 12, scex(_("IM|Nn#n#N")));
+ fl_setpup_shortcut(InsertMenu, 13, scex(_("IM|Ll#l#L")));
+ fl_setpup_shortcut(InsertMenu, 14, scex(_("IM|rR#r#R")));
+ fl_setpup_shortcut(InsertMenu, 15, scex(_("IM|iI#i#I")));
+ fl_setpup_shortcut(InsertMenu, 16, scex(_("IM|dD#d#D")));
+ fl_setpup_shortcut(InsertMenu, 17, scex(_("IM|wW#w#W")));
fl_addtopup(InsertMenu, _("|URL..."));
- fl_setpup_shortcut(InsertMenu, 17, scex(_("IM|Uu#u#U")));
+ fl_setpup_shortcut(InsertMenu, 18, scex(_("IM|Uu#u#U")));
if (tmpbuffer->isReadonly()) {
- for (int ii = 1; ii <= 16; ++ii)
+ for (int ii = 1; ii <= 17; ++ii)
fl_setpup_mode(InsertMenu, ii, FL_PUP_GREY);
- fl_setpup_mode(InsertMenu, 17, FL_PUP_GREY);
+ fl_setpup_mode(InsertMenu, 18, FL_PUP_GREY);
}
fl_setpup_position(
men->currentView()->hideCursor();
switch (choice) {
case 1: tmpfunc->Dispatch(LFUN_FIGURE); break;
- case 2: tmpfunc->Dispatch(LFUN_TABLE); break;
+ case 2: tmpfunc->Dispatch(LFUN_DIALOG_TABULAR_INSERT); break;
case 3: tmpfunc->Dispatch(LFUN_CHILDINSERT); break;
case 4: // Insert ASCII file submenu
break;
case 43:
break;
- case 6: tmpfunc->Dispatch(LFUN_FOOTMELT); break
- ;
- case 7: tmpfunc->Dispatch(LFUN_MARGINMELT); break;
+ case 6: tmpfunc->Dispatch(LFUN_INSET_EXTERNAL); break;
+
+ case 7:
+#ifndef NEW_INSETS
+ tmpfunc->Dispatch(LFUN_FOOTMELT); break;
+#else
+ tmpfunc->Dispatch(LFUN_INSET_FOOTNOTE);
+ break;
+#endif
+ case 8:
+#ifndef NEW_INSETS
+ tmpfunc->Dispatch(LFUN_MARGINMELT); break;
+#else
+ tmpfunc->Dispatch(LFUN_INSET_MARGINAL);
+ break;
+#endif
- case 8: // Float sub-menu
+ case 9: // Float sub-menu
case 71:
+#ifndef NEW_INSETS
tmpfunc->Dispatch(LFUN_INSERTFOOTNOTE, "figure");
break;
+#else
+ tmpfunc->Dispatch(LFUN_INSET_FLOAT, "figure");
+ break;
+#endif
case 72:
+#ifndef NEW_INSETS
tmpfunc->Dispatch(LFUN_INSERTFOOTNOTE, "table");
break;
+#else
+ tmpfunc->Dispatch(LFUN_INSET_FLOAT, "table");
+ break;
+#endif
case 73:
+#ifndef NEW_INSETS
tmpfunc->Dispatch(LFUN_INSERTFOOTNOTE, "wide-fig");
break;
+#else
+ tmpfunc->Dispatch(LFUN_INSET_FLOAT, "figure");
+ break;
+#endif
case 74:
+#ifndef NEW_INSETS
tmpfunc->Dispatch(LFUN_INSERTFOOTNOTE, "wide-tab");
break;
+#else
+ tmpfunc->Dispatch(LFUN_INSET_FLOAT, "table");
+ break;
+#endif
case 75:
+#ifndef NEW_INSETS
tmpfunc->Dispatch(LFUN_INSERTFOOTNOTE, "algorithm");
break;
-
- case 9: // Table/List submenu
+#else
+ tmpfunc->Dispatch(LFUN_INSET_FLOAT, "algorithm");
+ break;
+#endif
+ case 10: // Table/List submenu
break;
case 21: tmpfunc->Dispatch(LFUN_TOC_INSERT); break;
case 22: tmpfunc->Dispatch(LFUN_LOF_INSERT); break;
case 25: tmpfunc->Dispatch(LFUN_INDEX_PRINT); break;
case 26: tmpfunc->Dispatch(LFUN_INSERT_BIBTEX); break;
- case 10: // Special Character submenu
+ case 11: // Special Character submenu
break;
case 31: tmpfunc->Dispatch(LFUN_HFILL); break;
case 32: tmpfunc->Dispatch(LFUN_HYPHENATION); break;
case 37: tmpfunc->Dispatch(LFUN_QUOTE); break;
case 38: tmpfunc->Dispatch(LFUN_MENU_SEPARATOR); break;
- case 11: tmpfunc->Dispatch(LFUN_INSERT_NOTE); break;
- case 12: tmpfunc->Dispatch(LFUN_INSERT_LABEL); break;
- case 13: tmpfunc->Dispatch(LFUN_INSERT_REF); break;
- case 14: tmpfunc->Dispatch(LFUN_INSERT_CITATION); break;
- case 15: tmpfunc->Dispatch(LFUN_INDEX_INSERT); break;
- case 16: tmpfunc->Dispatch(LFUN_INDEX_INSERT_LAST); break;
- case 17: tmpfunc->Dispatch(LFUN_URL); break;
+ case 12: tmpfunc->Dispatch(LFUN_INSERT_NOTE); break;
+ case 13: tmpfunc->Dispatch(LFUN_INSERT_LABEL); break;
+ case 14: tmpfunc->Dispatch(LFUN_REF_INSERT); break;
+ case 15: tmpfunc->Dispatch(LFUN_CITATION_CREATE); break;
+ case 16: tmpfunc->Dispatch(LFUN_INDEX_CREATE); break;
+ case 17: tmpfunc->Dispatch(LFUN_INDEX_INSERT_LAST); break;
+ case 18: tmpfunc->Dispatch(LFUN_URL); break;
}
}
fl_freepup(InsertMenu);
tmpfunc->Dispatch(LFUN_MATH_DISPLAY);
break;
case 9: /* Panel */
- show_symbols_form(tmpfunc);
+ tmpfunc->Dispatch(LFUN_MATH_PANEL);
break;
}
- men->currentView()->update(0);
+ men->currentView()->update(BufferView::SELECT|BufferView::FITCUR);
}
fl_freepup(MathMenu);
}
LyXFunc * tmpfunc = men->_view->getLyXFunc();
int OptionsMenu = fl_defpup(FL_ObjWin(ob),
- _("Screen Fonts..."
- "|Spellchecker Options..."
- "|Keyboard..."
- "|LaTeX...%l"
- "|Reconfigure" ));
-
- fl_setpup_shortcut(OptionsMenu, 1, scex(_("OM|Ff#f#F")));
- fl_setpup_shortcut(OptionsMenu, 2, scex(_("OM|Ss#s#S")));
- fl_setpup_shortcut(OptionsMenu, 3, scex(_("OM|Kk#k#K")));
- fl_setpup_shortcut(OptionsMenu, 4, scex(_("OM|Ll#l#L")));
- fl_setpup_shortcut(OptionsMenu, 5, scex(_("OM|Rr#r#R")));
+ _("|Spellchecker Options..."
+ "|Keyboard...%l"
+ "|Reconfigure"
+ "|Preferences"));
+
+ fl_setpup_shortcut(OptionsMenu, 1, scex(_("OM|Ss#s#S")));
+ fl_setpup_shortcut(OptionsMenu, 2, scex(_("OM|Kk#k#K")));
+ fl_setpup_shortcut(OptionsMenu, 3, scex(_("OM|Rr#r#R")));
+ fl_setpup_shortcut(OptionsMenu, 4, scex(_("OM|Pp#p#P")));
if(lyxrc.isp_command == "none")
fl_setpup_mode(OptionsMenu, 2, FL_PUP_GREY);
fl_set_object_boxtype(ob, FL_FLAT_BOX);
fl_redraw_object(ob);
switch (choice){
- case 1: men->ScreenOptions(); break;
- case 2: SpellCheckerOptions(); break;
- case 3: men->_view->getIntl()->MenuKeymap(); break;
- case 4: LaTeXOptions(men->_view->view()); break;
- case 5: tmpfunc->Dispatch(LFUN_RECONFIGURE); break;
+ case 1: SpellCheckerOptions(); break;
+ case 2: men->_view->getIntl()->MenuKeymap(); break;
+ case 3: tmpfunc->Dispatch(LFUN_RECONFIGURE); break;
+ case 4: men->_view->getDialogs()->showPreferences(); break;
default: break;
}
fl_freepup(OptionsMenu);
"UserGuide", "Extended",
"Customization", "Reference",
"FAQ", "TOC",
- "BUGS", "LaTeXConfig"};
+ "BUGS", "LyXConfig"};
void Menus::ShowHelpMenu(FL_OBJECT * ob, long)
{
Menus * men = static_cast<Menus*>(ob->u_vdata);
+ LyXFunc * tmpfunc = men->_view->getLyXFunc();
// set the pseudo menu-button
fl_set_object_boxtype(ob, FL_UP_BOX);
men->MenuDocu(doc_files[choice - 1]);
AllowInput(men->currentView());
break;
- case 11: ShowCopyright(); break;
+ case 11: tmpfunc->Dispatch(LFUN_HELP_COPYRIGHT); break;
case 12: ShowCredits(); break;
case 13:
ProhibitInput(men->currentView());