// -*- C++ -*-
/* This file is part of
-* ======================================================
-*
-* LyX, The Document Processor
-*
-* Copyright (C) 1995 Matthias Ettrich
-* Copyright (C) 1995-1998 The LyX Team.
-*
-*======================================================*/
-
-#ifndef _LyXView_H_
-#define _LyXView_H_
+ * ======================================================
+ *
+ * LyX, The Document Processor
+ *
+ * Copyright 1995 Matthias Ettrich
+ * Copyright 1995-2000 The LyX Team.
+ *
+ * ====================================================== */
+
+#ifndef LyXView_H
+#define LyXView_H
#ifdef __GNUG__
#pragma interface
#endif
#include FORMS_H_LOCATION
-#include "lyx.h"
-#include "buffer.h"
-#include "menus.h"
-#include "BufferView.h"
+
+#include "Timeout.h"
+
class LyXFunc;
class Toolbar;
class MiniBuffer;
class Intl;
-
-///
-struct FD_form_main {
- ///
- FL_FORM *form_main;
- ///
- FL_OBJECT *timer_autosave;
- ///
- FL_OBJECT *timer_update;
- ///
- void *vdata;
- ///
- long ldata;
-};
-
+class Buffer;
+class Menus;
+class BufferView;
+class Dialogs;
/**
view is supposed (at least IMHO) to be another class, that shows its output
in one or more LyXView's.
*/
-class LyXView {
+class LyXView : public SigC::Object {
public:
/// constructor
LyXView(int w, int h);
void setPosition(int, int);
/// Show the main form.
- void show(int, int, char const* t= "LyX");
+ void show(int, int, char const * t = "LyX");
/// init (should probably be removed later) (Lgb)
void init();
void redraw();
/// returns the buffer currently shown in the main form.
- Buffer *currentBuffer(){ return bufferview->currentBuffer();}
+ Buffer * buffer() const;
///
- BufferView *currentView() { return bufferview; }
+ BufferView * view() const;
/// returns a pointer to the form.
- FL_FORM *getForm() { return _form; }
+ FL_FORM * getForm() const;
/// return a pointer to the toolbar
- Toolbar *getToolbar() { return toolbar; }
+ Toolbar * getToolbar() const;
/// return a pointer to the lyxfunc
- LyXFunc *getLyXFunc() { return lyxfunc; }
+ LyXFunc * getLyXFunc() const;
/// return a pointer to the minibuffer
- MiniBuffer *getMiniBuffer() { return minibuffer; }
+ MiniBuffer * getMiniBuffer() const;
+
+ ///
+ Menus * getMenus() const;
///
- Menus *getMenus() { return menus; }
+ Intl * getIntl() const;
///
- Intl *getIntl() { return intl; }
+ Dialogs * getDialogs() { return dialogs_; }
///
void updateLayoutChoice();
void resetAutosaveTimer();
private:
///
- LyXFunc *lyxfunc;
+ LyXFunc * lyxfunc;
///
- Toolbar *toolbar;
+ Toolbar * toolbar;
///
- MiniBuffer *minibuffer;
+ MiniBuffer * minibuffer;
///
- Menus *menus;
+ Menus * menus;
///
- Intl *intl;
+ Intl * intl;
+ ///
+ Dialogs * dialogs_;
/** This is supposed to be a pointer or a list of pointers to the
BufferViews currently being shown in the LyXView. So far
this is not used, but that should change pretty soon. (Lgb) */
- BufferView *bufferview;
+ BufferView * bufferview;
///
void invalidateLayoutChoice();
///
void UpdateDocumentClassChoice();
+public:
///
- static int KeyPressMask_raw_callback(FL_FORM *, void *xev);
- /// makes the main form.
- FD_form_main *create_form_form_main(int width, int height);
-
+ static int KeyPressMask_raw_callback(FL_FORM *, void * xev);
/** This callback is run when a close event is sent from the
window manager. */
static int atCloseMainFormCB(FL_FORM *, void *);
/// A callback
- static void AutosaveTimerCB(FL_OBJECT *, long);
- /// A callback
- static void UpdateTimerCB(FL_OBJECT *, long);
- /// A pointer to the form.
- FD_form_main *_form_main;
+ void AutoSave();
+private:
+ ///
+ Timeout autosave_timeout;
+ /// makes the main form.
+ void create_form_form_main(int width, int height);
/// A pointer to the form.
- FL_FORM *_form;
-
+ FL_FORM * form_;
/** The last textclass layout list in the layout choice selector
This should probably be moved to the toolbar, but for now it's
here. (Asger) */
int last_textclass;
};
-
-
#endif