lyx_mirror/src/frontends/qt3/QtView.h
Abdelrazak Younes 3a1f656e4e * Application: new createView() method
* gtk/qt3/qt4/GuiApplication: createView() method deleted

* LyXView:
 - init(): is now a pure virtual method. autoSave code transferred to constructor and updates to the frontends.
 - setGeometry(): new pure virtual method

* gtk/GView, qt3/QtView, qt4/GuiView: adapted to above change
 - setGeometry(): code transfered from GuiApplication

* lyx_main.C: call LyX::ref().addLyXView() in there instead of in Application::createView()


* 

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15183 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-29 23:10:17 +00:00

123 lines
2.3 KiB
C++

// -*- C++ -*-
/**
* \file QtView.h
* This file is part of LyX, the document processor.
* Licence details can be found in the file COPYING.
*
* \author Lars Gullik Bjornes
* \author John Levon
*
* Full author contact details are available in file CREDITS.
*/
#ifndef QTVIEW_H
#define QTVIEW_H
#include <config.h>
#include "frontends/LyXView.h"
#include <qmainwindow.h>
#include <qtimer.h>
class FuncRequest;
namespace lyx {
namespace frontend {
class QCommandBuffer;
/**
* QtView - Qt implementation of LyXView
*
* Qt-private implementation of the main LyX window.
*/
class QtView : public QMainWindow, public LyXView {
Q_OBJECT
public:
/// create a main window of the given dimensions
QtView();
~QtView();
/// initialise the object members (menubars, toolbars, etc..)
virtual void init();
///
virtual void setGeometry(
unsigned int width,
unsigned int height,
int posx, int posy,
bool maximize);
/// show - display the top-level window
void show();
/// show busy cursor
virtual void busy(bool) const;
///
Toolbars::ToolbarPtr makeToolbar(ToolbarBackend::Toolbar const & tbb);
/// display a status message
virtual void message(lyx::docstring const & str);
/// clear status message
virtual void clearMessage();
/// add the command buffer
void addCommandBuffer(QWidget * parent);
/// menu item has been selected
void activated(FuncRequest const &);
// returns true if this view has the focus.
virtual bool hasFocus() const;
///
void initFloatingGeometry(QRect const &);
public slots:
/// idle timeout
void update_view_state_qt();
///
virtual void resizeEvent(QResizeEvent * e);
///
virtual void moveEvent(QMoveEvent * e);
protected:
/// make sure we quit cleanly
virtual void closeEvent(QCloseEvent * e);
/// update status bar
void updateStatusBar();
private:
/// focus the command buffer widget
void focus_command_widget();
/**
* setWindowTitle - set title of window
* @param t main window title
* @param it iconified (short) title
*/
virtual void setWindowTitle(lyx::docstring const & t, lyx::docstring const & it);
QTimer statusbar_timer_;
/// command buffer
QCommandBuffer * commandbuffer_;
///
void updateFloatingGeometry();
///
QRect floatingGeometry_;
///
int maxWidth;
};
} // namespace frontend
} // namespace lyx
#endif // QTVIEW_H