#endif
-#include "gettext.h"
#include "Dialogs.h"
#include "FormIndex.h"
#include "LyXView.h"
FormIndex::~FormIndex()
{
- free();
delete dialog_;
}
-void FormIndex::build()
+FL_FORM * FormIndex::form() const
{
- dialog_ = build_index();
+ if ( dialog_ ) return dialog_->form;
+ return 0;
+}
- int w = form()->w;
- int h = form()->h;
- fl_set_form_minsize(form(), w, h);
- fl_set_form_maxsize(form(), 2*w, h);
+void FormIndex::connect()
+{
+ fl_set_form_maxsize( form(), 2*minw_, minh_ );
+ FormCommand::connect();
}
+
-
-FL_FORM * const FormIndex::form() const
+void FormIndex::build()
{
- if( dialog_ ) // no need to test for dialog_->form_index
- return dialog_->form_index;
- else
- return 0;
+ dialog_ = build_index();
+
+#ifdef WITH_WARNINGS
+#warning use the buttoncontroller
+#endif
+ // Workaround dumb xforms sizing bug
+ minw_ = form()->w;
+ minh_ = form()->h;
}
{
fl_set_input(dialog_->key, params.getContents().c_str());
- if( lv_->buffer()->isReadonly() ) {
+ if ( lv_->buffer()->isReadonly() ) {
fl_deactivate_object( dialog_->key );
fl_deactivate_object( dialog_->ok );
fl_set_object_lcol( dialog_->ok, FL_INACTIVE );
void FormIndex::apply()
{
- if( lv_->buffer()->isReadonly() ) return;
+ if (lv_->buffer()->isReadonly()) return;
- params.setContents( fl_get_input(dialog_->key) );
+ params.setContents(fl_get_input(dialog_->key));
- if( inset_ != 0 )
- {
+ if (inset_ != 0) {
// Only update if contents have changed
- if( params != inset_->params() ) {
- inset_->setParams( params );
- lv_->view()->updateInset( inset_, true );
+ if (params != inset_->params()) {
+ inset_->setParams(params);
+ lv_->view()->updateInset(inset_, true);
}
} else {
- lv_->getLyXFunc()->Dispatch( LFUN_INDEX_INSERT,
- params.getAsString().c_str() );
+ lv_->getLyXFunc()->Dispatch(LFUN_INDEX_INSERT,
+ params.getAsString());
}
}