X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2Finsetindex.C;h=c175cf1ffd14cb5e05d7aafff22049ef7542ac57;hb=e28331ed63062dea10d0a21b9ec12034b4b17b9a;hp=018d9370f62789675557f2f5427d4f8401e887ce;hpb=35584afc1162dec2cf9fff79305e95cb3b75aefb;p=lyx.git diff --git a/src/insets/insetindex.C b/src/insets/insetindex.C index 018d9370f6..c175cf1ffd 100644 --- a/src/insets/insetindex.C +++ b/src/insets/insetindex.C @@ -1,161 +1,91 @@ +/** + * \file insetindex.C + * This file is part of LyX, the document processor. + * Licence details can be found in the file COPYING. + * + * \author Lars Gullik Bjønnes + * + * Full author contact details are available in file CREDITS. + */ #include -#include - -#ifdef __GNUG__ -#pragma implementation -#endif - -#include FORMS_H_LOCATION #include "insetindex.h" -#include "buffer.h" -#include "debug.h" -#include "LaTeXFeatures.h" -#include "gettext.h" -#include "LString.h" -#include "lyx_gui_misc.h" // WarnReadonly() - -extern BufferView *current_view; -extern void UpdateInset(Inset* inset, bool mark_dirty = true); -FD_index_form *index_form = 0; +#include "dispatchresult.h" +#include "funcrequest.h" +#include "gettext.h" +#include "LaTeXFeatures.h" +#include "metricsinfo.h" +#include "sgml.h" -static -void index_cb(FL_OBJECT *, long data) -{ - InsetIndex *inset = (InsetIndex*)index_form->vdata; - - switch (data) { -// - case 0: fl_hide_form(index_form->index_form); break; -// - case 1: -// - { -// - inset->setContents(fl_get_input(index_form->key)); -// - fl_hide_form(index_form->index_form); -// - UpdateInset(inset); -// - break; -// - } - case 1: // OK - if(!current_view->currentBuffer()->isReadonly()) { - string tmp = fl_get_input(index_form->key); - if(tmp != inset->getContents()) { - inset->setContents(tmp); - fl_hide_form(index_form->index_form); - UpdateInset(inset); - break; - } - } // fall through to Cancel on RO - case 0: // Cancel - fl_hide_form(index_form->index_form); break; - } -} +#include "support/std_ostream.h" -static -FD_index_form *create_form_index_form() -{ - FL_OBJECT *obj; - FD_index_form *fdui = (FD_index_form *) fl_calloc(1, sizeof(FD_index_form)); - - fdui->index_form = fl_bgn_form(FL_NO_BOX, 258, 196); - obj = fl_add_box(FL_UP_BOX,0,0,258,196,""); - fdui->key = obj = fl_add_input(FL_NORMAL_INPUT,93,26,130,30, - idex(_("Keyword:|#K"))); - fl_set_object_shortcut(obj,scex(_("Keyword:|#K")),1); - fl_set_object_lsize(obj,FL_NORMAL_SIZE); - obj = fl_add_button(FL_RETURN_BUTTON,50,140,80,30,_("OK")); - obj->u_vdata = index_form; - fl_set_object_callback(obj,index_cb,1); - obj = fl_add_button(FL_NORMAL_BUTTON,150,140,80,30, - idex(_("Cancel|^["))); - fl_set_object_shortcut(obj,scex(_("Cancel|^[")),1); - obj->u_vdata = index_form; - fl_set_object_callback(obj,index_cb,0); - fl_end_form(); - - return fdui; -} +namespace lyx { +using std::string; +using std::ostream; -/*---------------------------------------*/ +InsetIndex::InsetIndex(InsetCommandParams const & p) + : InsetCommand(p, "index") +{} -InsetIndex::InsetIndex(string const & key) - : InsetCommand("index", key) -{ -} +// InsetIndex::InsetIndex(InsetCommandParams const & p, bool) +// : InsetCommand(p, false) +// {} -InsetIndex::~InsetIndex() +docstring const InsetIndex::getScreenLabel(Buffer const &) const { - if(index_form && index_form->index_form - && index_form->index_form->visible - && index_form->vdata == this) - fl_hide_form(index_form->index_form); + return _("Idx"); } -void InsetIndex::Edit(int, int) +int InsetIndex::docbook(Buffer const &, odocstream & os, + OutputParams const &) const { - if(current_view->currentBuffer()->isReadonly()) - WarnReadonly(); - - if (!index_form) - index_form = create_form_index_form(); - - index_form->vdata = this; - fl_set_input(index_form->key, getContents().c_str()); - if (index_form->index_form->visible) { - fl_raise_form(index_form->index_form); - } else { - fl_show_form(index_form->index_form, - FL_PLACE_MOUSE, FL_FULLBORDER, - _("Index")); - } + os << "" + << sgml::escapeString(getParam("name")) + << ""; + return 0; } -string InsetIndex::getScreenLabel() const +InsetBase::Code InsetIndex::lyxCode() const { - return _("Idx"); + return InsetBase::INDEX_CODE; } -// -// InsetPrintIndex -// -InsetPrintIndex::InsetPrintIndex() - : InsetCommand("printindex") -{ - owner = 0; -} +InsetPrintIndex::InsetPrintIndex(InsetCommandParams const & p) + : InsetCommand(p, string()) +{} -InsetPrintIndex::InsetPrintIndex(Buffer *o) - : InsetCommand("printindex"), owner(o) -{ -} +// InsetPrintIndex::InsetPrintIndex(InsetCommandParams const & p, bool) +// : InsetCommand(p, false) +// {} -InsetPrintIndex::~InsetPrintIndex() +docstring const InsetPrintIndex::getScreenLabel(Buffer const &) const { + return _("Index"); } -string InsetPrintIndex::getScreenLabel() const +void InsetPrintIndex::validate(LaTeXFeatures & features) const { - return _("PrintIndex"); + features.require("makeidx"); } -void InsetPrintIndex::Validate(LaTeXFeatures &features) const +InsetBase::Code InsetPrintIndex::lyxCode() const { - features.makeidx = true; + return InsetBase::INDEX_PRINT_CODE; } -Inset::Code InsetPrintIndex::LyxCode() const -{ - return Inset::INDEX_CODE; -} +} // namespace lyx