Commit Graph

20 Commits

Author SHA1 Message Date
Bo Peng
c8e5ee867f load files from lyx_main.C instead of lyx_gui.C, do not add session-restored files to lastfile list.
* src/frontends/lyx_gui.h: add prototype for create_view
	* src/frontends/(gtk,qt3,qt4)/lyx_gui.C: separate start()
	* src/lyx_main.C: call create_view, load file, and call start


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14500 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-27 14:13:45 +00:00
Abdelrazak Younes
e1a5cb74a8 GUI API Cleanup step 3: merge with "younes" branch.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14448 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-13 16:37:55 +00:00
Michael Schmitt
03c97c2f3c * gtk/lyx_gui.C:
* qt3/lyx_gui.C:
        * qt3/Dialogs.C:
        * qt4/lyx_gui.C:
        * qt4/Dialogs.C: remove special handling of preamble dialog
        (which no longer exists)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14416 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-10 18:58:44 +00:00
Georg Baum
da9cdaf218 Reduce calls of ::exit()
* src/main.C
	(main): return LyX::exec()

	* src/frontends/{gtk,qt3,qt4}/lyx_gui.C
	(lyx_gui::exec): Change return value to int
	(lyx_gui::start): ditto

	* src/frontends/qt[3,4]/lyx_gui.C
	(lyx_gui::exit): Call QApplication::exit instead of ::exit, this
	hack is not needed anymore

	* src/frontends/lyx_gui.h
	(lyx_gui::exec): Change return value to int
	(lyx_gui::start): ditto

	* src/lyxtextclasslist.[Ch]
	(LyXSetStyle): SChange return value to bool and don't call ::exit

	* src/lyx_main.C
	(showFileError): Don't exit anymore

	* src/lyx_main.[Ch]
	(LyX::exec): Change return value to int
	(LyX::priv_exec): ditto
	(LyX::exec2): ditto
	(LyX::init): Change return value to bool
	(LyX::readRcFile): ditto
	(LyX::readUIFile): ditto



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14339 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-05 17:01:26 +00:00
Peter Kümmel
2deec8a96a Pass width = 0 and height = 0 as unsigned int to indicate the usage of the geometry option
* lyx_main.C set             width and height to 0
	* frontends/qt3/lyx_gui.C    test on 0
	* frontends/qt4/lyx_gui.C    test on 0  
	


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14235 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-26 18:07:10 +00:00
Abdelrazak Younes
3287c44f33 GUI API Cleanup step 2: merge of the "younes" branch.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14231 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-26 16:55:35 +00:00
Peter Kümmel
04cfa65a96 fix: qt3/qt4 save/restore of the window geometry and maximize status
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14166 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-21 10:30:32 +00:00
Peter Kümmel
1ec4d26038 restore (14087) save/load geometry logic of qt3
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14140 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-18 09:05:41 +00:00
Peter Kümmel
e97a9f1043 don't break the geometry option
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14122 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-15 16:01:55 +00:00
Georg Baum
9cbcb8a39e * src/frontends/qt3/lyx_gui.C: compile fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14109 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-14 15:49:36 +00:00
Peter Kümmel
fcdbd2357d load and restore correct windows postion
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14104 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-14 14:42:24 +00:00
Peter Kümmel
bbc587ee9a coding style and readability corrections
Index: frontends/qt3/lyx_gui.C
===================================================================
--- frontends/qt3/lyx_gui.C     (revision 14088)
+++ frontends/qt3/lyx_gui.C     (working copy)
@@ -222,12 +222,12 @@


 void start(string const & batch, vector<string> const & files,
-          unsigned int width, unsigned int height, int posx, int posy, bool isMax)
+          unsigned int width, unsigned int height, int posx, int posy, bool maximize)
 {
        // this can't be done before because it needs the Languages object
        initEncodings();

-       boost::shared_ptr<QtView> view_ptr(new QtView(width, height, isMax));
+       boost::shared_ptr<QtView> view_ptr(new QtView(width, height, maximize));
        LyX::ref().addLyXView(view_ptr);

        QtView & view = *view_ptr.get();
Index: frontends/qt3/QtView.C
===================================================================
--- frontends/qt3/QtView.C      (revision 14088)
+++ frontends/qt3/QtView.C      (working copy)
@@ -55,12 +55,12 @@



-QtView::QtView(unsigned int width, unsigned int height, bool isMax)
+QtView::QtView(unsigned int width, unsigned int height, bool maximize)
        : QMainWindow(), LyXView(), commandbuffer_(0)
 {
        resize(width, height);

-       if(isMax)
+       if (maximize)
                this->setWindowState(WindowMaximized);

        qApp->setMainWidget(this);
@@ -164,7 +164,7 @@
 void QtView::closeEvent(QCloseEvent *)
 {
        LyX::ref().session().saveSessionInfo("WindowIsMaximized", (this->isMaximized() ? "yes" : "no"));
-       //don't save maximized values
+       // don't save maximized values
        this->showNormal();
        // save windows size and position
        LyX::ref().session().saveSessionInfo("WindowWidth", convert<string>(width()));
Index: frontends/qt3/QtView.h
===================================================================
--- frontends/qt3/QtView.h      (revision 14088)
+++ frontends/qt3/QtView.h      (working copy)
@@ -37,7 +37,7 @@
        Q_OBJECT
 public:
        /// create a main window of the given dimensions
-       QtView(unsigned int w, unsigned int h, bool isMax);
+       QtView(unsigned int w, unsigned int h, bool maximize);

        ~QtView();

Index: frontends/qt4/lyx_gui.C
===================================================================
--- frontends/qt4/lyx_gui.C     (revision 14088)
+++ frontends/qt4/lyx_gui.C     (working copy)
@@ -228,12 +228,12 @@


 void start(string const & batch, vector<string> const & files,
-          unsigned int width, unsigned int height, int posx, int posy, bool isMax)
+          unsigned int width, unsigned int height, int posx, int posy, bool maximize)
 {
        // this can't be done before because it needs the Languages object
        initEncodings();

-       boost::shared_ptr<QtView> view_ptr(new QtView(width, height, isMax));
+       boost::shared_ptr<QtView> view_ptr(new QtView(width, height, maximize));
        LyX::ref().addLyXView(view_ptr);

        QtView & view = *view_ptr.get();
Index: frontends/qt4/QtView.C
===================================================================
--- frontends/qt4/QtView.C      (revision 14088)
+++ frontends/qt4/QtView.C      (working copy)
@@ -70,12 +70,12 @@
 } // namespace anon


-QtView::QtView(unsigned int width, unsigned int height, bool isMax)
+QtView::QtView(unsigned int width, unsigned int height, bool maximize)
        : QMainWindow(), LyXView(), commandbuffer_(0)
 {
        resize(width, height);

-       if(isMax)
+       if (maximize)
                this->setWindowState(Qt::WindowMaximized);

        mainWidget_ = this;
Index: frontends/qt4/QtView.h
===================================================================
--- frontends/qt4/QtView.h      (revision 14088)
+++ frontends/qt4/QtView.h      (working copy)
@@ -47,7 +47,7 @@
        Q_OBJECT
 public:
        /// create a main window of the given dimensions
-       QtView(unsigned int w, unsigned int h, bool isMax);
+       QtView(unsigned int w, unsigned int h, bool maximize);

        ~QtView();

Index: frontends/lyx_gui.h
===================================================================
--- frontends/lyx_gui.h (revision 14088)
+++ frontends/lyx_gui.h (working copy)
@@ -57,7 +57,7 @@
  * batch commands, and loading the given documents
  */
 void start(std::string const & batch, std::vector<std::string> const & files,
-           unsigned int width, unsigned int height, int posx, int posy, bool isMax);
+           unsigned int width, unsigned int height, int posx, int posy, bool maximize);

 /**
  * Enter the main event loop (\sa LyX::exec2)
Index: lyx_main.C
===================================================================
--- lyx_main.C  (revision 14088)
+++ lyx_main.C  (working copy)
@@ -307,7 +307,7 @@
                // initial geometry
                unsigned int width = 690;
                unsigned int height = 510;
-               bool isMax = false;
+               bool maximize = false;
                // first try lyxrc
                if (lyxrc.geometry_width != 0 && lyxrc.geometry_height != 0 ) {
                        width = lyxrc.geometry_width;
@@ -322,7 +322,7 @@
                        if (!val.empty())
                                height = convert<unsigned int>(val);
                        if (session().loadSessionInfo("WindowIsMaximized") == "yes")
-                               isMax = true;
+                               maximize = true;
                }
                // if user wants to restore window position
                int posx = -1;
@@ -335,7 +335,7 @@
                        if (!val.empty())
                                posy = convert<int>(val);
                }
-               lyx_gui::start(batch_command, files, width, height, posx, posy, isMax);
+               lyx_gui::start(batch_command, files, width, height, posx, posy, maximize);
        } else {
                // Something went wrong above
                quitLyX(false);



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14089 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-13 08:24:43 +00:00
Peter Kümmel
226acfcbab Qt3/Qt4:
- don't save geometry values of the maximized lyx window
   - save/restore the maximized property of the lyx window

- fix changed lyx_gui::start interface for xform and gtk


Index: frontends/gtk/lyx_gui.C
===================================================================
--- frontends/gtk/lyx_gui.C	(revision 14083)
+++ frontends/gtk/lyx_gui.C	(working copy)
@@ -123,7 +123,7 @@
 
 
 void lyx_gui::start(string const & batch, std::vector<string> const & files,
-		    unsigned int width, unsigned int height, int posx, int posy)
+		    unsigned int width, unsigned int height, int posx, int posy, bool)
 {
 	boost::shared_ptr<GView> view_ptr(new GView);
 	LyX::ref().addLyXView(view_ptr);
Index: frontends/qt3/lyx_gui.C
===================================================================
--- frontends/qt3/lyx_gui.C	(revision 14083)
+++ frontends/qt3/lyx_gui.C	(working copy)
@@ -222,12 +222,12 @@
 
 
 void start(string const & batch, vector<string> const & files,
-	   unsigned int width, unsigned int height, int posx, int posy)
+	   unsigned int width, unsigned int height, int posx, int posy, bool isMax)
 {
 	// this can't be done before because it needs the Languages object
 	initEncodings();
 
-	boost::shared_ptr<QtView> view_ptr(new QtView(width, height));
+	boost::shared_ptr<QtView> view_ptr(new QtView(width, height, isMax));
 	LyX::ref().addLyXView(view_ptr);
 
 	QtView & view = *view_ptr.get();
Index: frontends/qt3/QtView.C
===================================================================
--- frontends/qt3/QtView.C	(revision 14083)
+++ frontends/qt3/QtView.C	(working copy)
@@ -55,10 +55,13 @@
 
 
 
-QtView::QtView(unsigned int width, unsigned int height)
+QtView::QtView(unsigned int width, unsigned int height, bool isMax)
 	: QMainWindow(), LyXView(), commandbuffer_(0)
 {
 	resize(width, height);
+	
+	if(isMax)
+		this->setWindowState(WindowMaximized);
 
 	qApp->setMainWidget(this);
 
@@ -160,6 +163,9 @@
 
 void QtView::closeEvent(QCloseEvent *)
 {
+	LyX::ref().session().saveSessionInfo("WindowIsMaximized", (this->isMaximized() ? "yes" : "no"));
+	//don't save maximized values
+	this->showNormal();
 	// save windows size and position
 	LyX::ref().session().saveSessionInfo("WindowWidth", convert<string>(width()));
 	LyX::ref().session().saveSessionInfo("WindowHeight", convert<string>(height()));
Index: frontends/qt3/QtView.h
===================================================================
--- frontends/qt3/QtView.h	(revision 14083)
+++ frontends/qt3/QtView.h	(working copy)
@@ -37,7 +37,7 @@
 	Q_OBJECT
 public:
 	/// create a main window of the given dimensions
-	QtView(unsigned int w, unsigned int h);
+	QtView(unsigned int w, unsigned int h, bool isMax);
 
 	~QtView();
 
Index: frontends/qt4/lyx_gui.C
===================================================================
--- frontends/qt4/lyx_gui.C	(revision 14083)
+++ frontends/qt4/lyx_gui.C	(working copy)
@@ -228,12 +228,12 @@
 
 
 void start(string const & batch, vector<string> const & files,
-	   unsigned int width, unsigned int height, int posx, int posy)
+	   unsigned int width, unsigned int height, int posx, int posy, bool isMax)
 {
 	// this can't be done before because it needs the Languages object
 	initEncodings();
 
-	boost::shared_ptr<QtView> view_ptr(new QtView(width, height));
+	boost::shared_ptr<QtView> view_ptr(new QtView(width, height, isMax));
 	LyX::ref().addLyXView(view_ptr);
 
 	QtView & view = *view_ptr.get();
Index: frontends/qt4/QtView.C
===================================================================
--- frontends/qt4/QtView.C	(revision 14083)
+++ frontends/qt4/QtView.C	(working copy)
@@ -70,11 +70,14 @@
 } // namespace anon
 
 
-QtView::QtView(unsigned int width, unsigned int height)
+QtView::QtView(unsigned int width, unsigned int height, bool isMax)
 	: QMainWindow(), LyXView(), commandbuffer_(0)
 {
 	resize(width, height);
 
+	if(isMax)
+		this->setWindowState(Qt::WindowMaximized);
+
 	mainWidget_ = this;
 
 //	setToolButtonStyle(Qt::ToolButtonIconOnly);
@@ -182,11 +185,12 @@
 void QtView::closeEvent(QCloseEvent *)
 {
 	// save windows size and position
-	LyX::ref().session().saveSessionInfo("WindowWidth", convert<string>(width()));
-	LyX::ref().session().saveSessionInfo("WindowHeight", convert<string>(height()));
+	LyX::ref().session().saveSessionInfo("WindowWidth", convert<string>(this->normalGeometry().width()));
+	LyX::ref().session().saveSessionInfo("WindowHeight", convert<string>(this->normalGeometry().height()));
+	LyX::ref().session().saveSessionInfo("WindowIsMaximized", (this->isMaximized() ? "yes" : "no"));
 	if (lyxrc.geometry_xysaved) {
-		LyX::ref().session().saveSessionInfo("WindowPosX", convert<string>(x()));
-		LyX::ref().session().saveSessionInfo("WindowPosY", convert<string>(y()));
+		LyX::ref().session().saveSessionInfo("WindowPosX", convert<string>(this->normalGeometry().x()));
+		LyX::ref().session().saveSessionInfo("WindowPosY", convert<string>(this->normalGeometry().y()));
 	}
 	// trigger LFUN_LYX_QUIT instead of quit directly
 	// since LFUN_LYX_QUIT may have more cleanup stuff
Index: frontends/qt4/QtView.h
===================================================================
--- frontends/qt4/QtView.h	(revision 14083)
+++ frontends/qt4/QtView.h	(working copy)
@@ -47,7 +47,7 @@
 	Q_OBJECT
 public:
 	/// create a main window of the given dimensions
-	QtView(unsigned int w, unsigned int h);
+	QtView(unsigned int w, unsigned int h, bool isMax);
 
 	~QtView();
 
Index: frontends/xforms/lyx_gui.C
===================================================================
--- frontends/xforms/lyx_gui.C	(revision 14083)
+++ frontends/xforms/lyx_gui.C	(working copy)
@@ -256,7 +256,7 @@
 
 
 void start(string const & batch, vector<string> const & files,
-	   unsigned int width, unsigned int height, int posx, int posy)
+	   unsigned int width, unsigned int height, int posx, int posy, bool)
 {
 	int const geometryBitmask =
 		XParseGeometry(geometry, &posx, &posy, &width, &height);
Index: frontends/lyx_gui.h
===================================================================
--- frontends/lyx_gui.h	(revision 14083)
+++ frontends/lyx_gui.h	(working copy)
@@ -57,7 +57,7 @@
  * batch commands, and loading the given documents
  */
 void start(std::string const & batch, std::vector<std::string> const & files,
-           unsigned int width, unsigned int height, int posx, int posy);
+           unsigned int width, unsigned int height, int posx, int posy, bool isMax);
 
 /**
  * Enter the main event loop (\sa LyX::exec2)
Index: lyx_main.C
===================================================================
--- lyx_main.C	(revision 14083)
+++ lyx_main.C	(working copy)
@@ -307,6 +307,7 @@
 		// initial geometry
 		unsigned int width = 690;
 		unsigned int height = 510;
+		bool isMax = false;
 		// first try lyxrc
 		if (lyxrc.geometry_width != 0 && lyxrc.geometry_height != 0 ) {
 			width = lyxrc.geometry_width;
@@ -320,6 +321,8 @@
 			val = session().loadSessionInfo("WindowHeight");
 			if (!val.empty())
 				height = convert<unsigned int>(val);
+			if (session().loadSessionInfo("WindowIsMaximized") == "yes")
+				isMax = true;
 		}
 		// if user wants to restore window position
 		int posx = -1;
@@ -332,7 +335,7 @@
 			if (!val.empty())
 				posy = convert<int>(val);
 		}
-		lyx_gui::start(batch_command, files, width, height, posx, posy);
+		lyx_gui::start(batch_command, files, width, height, posx, posy, isMax);
 	} else {
 		// Something went wrong above
 		quitLyX(false);



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14088 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-13 08:05:00 +00:00
Georg Baum
042d5a0242 Fix crash on exit (bug 2549) by correct usage of QApplication
* src/lyx_cb.C
	(quitLyX): lyx_gui::exit takes now an argument

	* src/frontends/{gtk,xforms}/lyx_gui.C
	(lyx_gui::parse_init): rename to lyx_gui::exec and call LyX::exec2
	(void lyx_gui::exit): add exit status argument

	* src/frontends/qt{3,4}/lyx_gui.C
	(cleanup): new function for pointer cleanup
	(lyx_gui::parse_init): rename to lyx_gui::exec and call LyX::exec2,
	turn static variables into automatic variables
	(void lyx_gui::exit): add exit status argument
	(start): Use cleanup()
	(exit): ditto

	* src/frontends/lyx_gui.h
	(parse_init): remove
	(exec): new
	(exit): Take exist status argument

	* src/lyx_main.[Ch]
	(LyX::priv_exec): split into LyX::priv_exec and LyX::exec2

	* src/lyx_main.C
	(lyx_exit): New, choose the right exit function
	(showFileError): call lyx_exit
	(LyX::queryUserLyXDir): ditto
	(LyX::init): ditto
	(LyX::priv_exec): ditto
	(LyX::priv_exec): Replace want_gui by lyx_gui::use_gui
	(LyX::priv_exec): replace lyx_gui::parse_init by lyx_gui::exec and
	exec2
	(LyX::init): Replace gui argument by lyx_gui::use_gui


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14036 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-07 20:08:37 +00:00
Georg Baum
e8bb11969d * src/frontends/qt3/lyx_gui.C
(LQApplication): remove empty destructor

	* src/frontends/qt4/lyx_gui.C
	(LQApplication): remove empty destructor


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13992 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-03 14:18:33 +00:00
Jean-Marc Lasgouttes
0fbd5c2588 * src/frontends/*/lyx_gui.C:
* src/frontends/lyx_gui.h: change width and height parameters to unsigned int.

* src/frontends/xforms/lyx_gui.C: compilation fix.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13967 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-30 10:20:35 +00:00
Bo Peng
f9c7473ed3 Move window width/height/posx/posy from frontends to lyx_main.C, from Bo Peng (ben.bob@gmail.com)
* src/frontends/ALLFRONTENDS/lyx_gui.C: use passed width/height/posx/posy in lyx_gui::start
	* src/frontends/lyx_gui.h: prototype change for lyx_gui::start
	* src/lyx_main.C: determine windows size and position from lyxrc or session.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13953 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-29 15:11:19 +00:00
Michael Schmitt
1396ade8b1 fix LFUN enum values (some of them were broken by r13801)
adjust some commands according to the LyX naming conventions
(toggle-tooltip => tooltip-toggle, *-change(s) => change(s)-*) 


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13811 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-08 18:09:19 +00:00
André Pönitz
da65e2b7fb rename LFUN enum values according to their command (as used in th minibuffer/bind files
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13801 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-05 20:23:12 +00:00
Lars Gullik Bjønnes
eefc9ad640 * Rename src/frontends/qt2 to src/frontends/qt3,
update users of the dir accordingly.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13731 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-24 13:48:24 +00:00