2000-06-12 11:55:12 +00:00
|
|
|
// -*- C++ -*-
|
|
|
|
/* DialogBase.h
|
|
|
|
* Abstract base class of all dialogs.
|
|
|
|
* Author: Allan Rae <rae@lyx.org>
|
|
|
|
* This file is part of
|
|
|
|
* ======================================================
|
|
|
|
*
|
|
|
|
* LyX, The Document Processor
|
|
|
|
*
|
|
|
|
* Copyright 1995 Matthias Ettrich
|
|
|
|
* Copyright 1995-2000 The LyX Team.
|
|
|
|
*
|
|
|
|
* This file Copyright 2000
|
|
|
|
* Allan Rae
|
|
|
|
* ======================================================
|
|
|
|
*/
|
|
|
|
#ifndef DIALOGBASE_H
|
|
|
|
#define DIALOGBASE_H
|
|
|
|
|
|
|
|
#include <sigc++/signal_system.h>
|
|
|
|
|
|
|
|
// If we do not want to bring them in global namespace, they could be
|
|
|
|
// defined inside DialogBase... (JMarc)
|
|
|
|
#ifdef SIGC_CXX_NAMESPACES
|
|
|
|
using SigC::Connection;
|
|
|
|
using SigC::slot;
|
2000-08-07 20:58:24 +00:00
|
|
|
using SigC::Object;
|
|
|
|
|
2000-06-12 11:55:12 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
/** Abstract base class of all dialogs.
|
|
|
|
The outside world only needs some way to tell a dialog when to show, hide
|
|
|
|
or update itself. A dialog then takes whatever steps are necessary to
|
|
|
|
satisfy that request. Thus a dialog will have to "pull" the necessary
|
|
|
|
details from the core of the program.
|
|
|
|
*/
|
|
|
|
class DialogBase : public Object
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
/**@name Constructors and Deconstructors */
|
|
|
|
//@{
|
|
|
|
///
|
|
|
|
virtual ~DialogBase() {}
|
|
|
|
//@}
|
|
|
|
|
|
|
|
/**@name Signal Targets */
|
|
|
|
//@{
|
|
|
|
///
|
|
|
|
virtual void show() = 0;
|
|
|
|
///
|
|
|
|
virtual void hide() = 0;
|
2000-10-13 05:57:05 +00:00
|
|
|
/// Parameter defines if a buffer switch occurred
|
|
|
|
virtual void update(bool = false) = 0;
|
2000-06-12 11:55:12 +00:00
|
|
|
//@}
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif // DIALOGBASE_H
|