2000-08-01 17:33:32 +00:00
|
|
|
// -*- C++ -*-
|
|
|
|
/* This file is part of
|
|
|
|
* ======================================================
|
|
|
|
*
|
|
|
|
* LyX, The Document Processor
|
|
|
|
*
|
|
|
|
* Copyright 2000 The LyX Team.
|
|
|
|
*
|
|
|
|
* ======================================================
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef FORMTOC_H
|
|
|
|
#define FORMTOC_H
|
|
|
|
|
2001-03-15 13:37:04 +00:00
|
|
|
#include <boost/smart_ptr.hpp>
|
|
|
|
|
2000-08-01 17:33:32 +00:00
|
|
|
#ifdef __GNUG__
|
|
|
|
#pragma interface
|
|
|
|
#endif
|
|
|
|
|
2000-10-13 05:57:05 +00:00
|
|
|
#include "FormInset.h"
|
2000-08-04 13:12:30 +00:00
|
|
|
#include "buffer.h"
|
2001-03-15 13:37:04 +00:00
|
|
|
|
2000-08-01 17:33:32 +00:00
|
|
|
struct FD_form_toc;
|
|
|
|
|
|
|
|
/** This class provides an XForms implementation of the FormToc Dialog.
|
|
|
|
*/
|
2000-08-01 18:11:14 +00:00
|
|
|
class FormToc : public FormCommand {
|
2000-08-01 17:33:32 +00:00
|
|
|
public:
|
|
|
|
///
|
|
|
|
FormToc(LyXView *, Dialogs *);
|
|
|
|
private:
|
2001-03-15 13:37:04 +00:00
|
|
|
/// Pointer to the actual instantiation of the ButtonController.
|
|
|
|
virtual xformsBC & bc();
|
2000-10-13 05:57:05 +00:00
|
|
|
/// Disconnect signals. Also perform any necessary housekeeping.
|
|
|
|
virtual void disconnect();
|
|
|
|
|
2000-08-01 17:33:32 +00:00
|
|
|
/// Build the dialog
|
|
|
|
virtual void build();
|
2000-10-24 13:13:59 +00:00
|
|
|
/// bool indicates if a buffer switch took place
|
|
|
|
virtual void updateSlot(bool) { update(); }
|
2000-08-03 12:56:25 +00:00
|
|
|
/// Update dialog before showing it
|
2000-10-24 13:13:59 +00:00
|
|
|
virtual void update();
|
2000-11-28 06:46:06 +00:00
|
|
|
/// Filter the inputs on callback from xforms
|
|
|
|
virtual bool input( FL_OBJECT *, long);
|
2001-03-05 19:02:40 +00:00
|
|
|
/// Pointer to the actual instantiation of the xforms form
|
2000-10-03 05:53:25 +00:00
|
|
|
virtual FL_FORM * form() const;
|
2000-08-01 17:33:32 +00:00
|
|
|
///
|
|
|
|
void updateToc();
|
|
|
|
///
|
|
|
|
FD_form_toc * build_toc();
|
|
|
|
|
2000-08-04 13:12:30 +00:00
|
|
|
///
|
2001-03-12 01:43:12 +00:00
|
|
|
Buffer::SingleList toclist;
|
2001-03-15 13:37:04 +00:00
|
|
|
/// Real GUI implementation.
|
|
|
|
boost::scoped_ptr<FD_form_toc> dialog_;
|
|
|
|
/// The ButtonController
|
|
|
|
ButtonController<OkCancelPolicy, xformsBC> bc_;
|
2000-08-01 17:33:32 +00:00
|
|
|
};
|
|
|
|
|
2001-03-15 13:37:04 +00:00
|
|
|
|
|
|
|
inline
|
|
|
|
xformsBC & FormToc::bc()
|
|
|
|
{
|
|
|
|
return bc_;
|
|
|
|
}
|
2000-08-01 17:33:32 +00:00
|
|
|
#endif
|