+2000-11-29 Angus Leeming <a.leeming@ic.ac.uk>
+
+ * src/frontends/xforms/FormRef.C (updateBrowser):
+ * src/frontends/xforms/forms/form_ref.fd: try clicking on
+ different insets with the sort key active. Now apply this patch!
+
2000-11-29 John Levon <moz@compsoc.man.ac.uk>
* src/frontends/xforms/FormPrint.C: set to valid()
fl_deactivate_object(dialog_->name);
fl_set_object_lcol(dialog_->name, FL_INACTIVE);
}
-
+
refs = lv_->buffer()->getLabelList();
updateBrowser(refs);
- if (inset_ == 0) {
- } else {
- }
-
bc_.readOnly(lv_->buffer()->isReadonly());
}
void FormRef::updateBrowser(vector<string> const & akeys) const
{
vector<string> keys(akeys);
- if (fl_get_button( dialog_->sort))
+ if (fl_get_button(dialog_->sort))
sort(keys.begin(), keys.end());
fl_clear_browser(dialog_->browser);
string ref = fl_get_input(dialog_->ref);
vector<string>::const_iterator cit =
- find(refs.begin(), refs.end(), ref);
+ find(keys.begin(), keys.end(), ref);
- if (cit != refs.end()) {
- int const i = static_cast<int>(cit - refs.begin());
+ if (cit != keys.end()) {
+ int const i = static_cast<int>(cit - keys.begin());
fl_set_browser_topline(dialog_->browser, max(i-5, 1));
fl_select_browser_line(dialog_->browser, i+1);
}
// update or sort
case 3:
- {
+ refs = lv_->buffer()->getLabelList();
+
+ // fall through to...
+ case 4:
fl_freeze_form(form());
updateBrowser(refs);
fl_unfreeze_form(form());
- }
- break;
+ break;
// changed reference type
- case 4:
+ case 5:
{
Type type = static_cast<Type>(
fl_get_choice(dialog_->type) - 1);
fl_set_button_shortcut(obj, scex(_("Sort|#S")), 1);
fl_set_object_lalign(obj, FL_ALIGN_RIGHT);
fl_set_object_gravity(obj, FL_SouthWest, FL_SouthWest);
- fl_set_object_callback(obj, C_FormBaseInputCB, 3);
+ fl_set_object_callback(obj, C_FormBaseInputCB, 4);
fdui->name = obj = fl_add_input(FL_NORMAL_INPUT, 370, 10, 150, 40, idex(_("Name:|#N")));
fl_set_button_shortcut(obj, scex(_("Name:|#N")), 1);
fl_set_object_gravity(obj, FL_NorthEast, FL_NorthEast);
fl_set_object_boxtype(obj, FL_FRAME_BOX);
fl_set_object_lalign(obj, FL_ALIGN_TOP);
fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast);
- fl_set_object_callback(obj, C_FormBaseInputCB, 4);
+ fl_set_object_callback(obj, C_FormBaseInputCB, 5);
fdui->button_go = obj = fl_add_button(FL_NORMAL_BUTTON, 340, 200, 140, 40, idex(_("Goto reference|#G")));
fl_set_button_shortcut(obj, scex(_("Goto reference|#G")), 1);
fl_set_object_gravity(obj, FL_SouthEast, FL_SouthEast);
gravity: FL_SouthWest FL_SouthWest
name: sort
callback: C_FormBaseInputCB
-argument: 3
+argument: 4
--------------------
class: FL_INPUT
gravity: FL_SouthEast FL_SouthEast
name: type
callback: C_FormBaseInputCB
-argument: 4
+argument: 5
--------------------
class: FL_BUTTON