Commit Graph

80 Commits

Author SHA1 Message Date
Pavel Sanda
db52066d6a Typo 2020-12-19 18:29:10 +01:00
Richard Kimberly Heck
05551a7cfb Remove unused return values and useless member assignment.
The master_ variable holds a FileName that points to the meta-data
for this file, e.g., CVS/Entries. There is no such thing in SVN or GIT.
So we remove that variable from those classes.
2020-12-18 16:27:57 -05:00
Richard Kimberly Heck
77cdef1fe0 Allow registration of files with svn when parents directory is not yet registered. 2020-12-18 16:01:43 -05:00
Richard Kimberly Heck
750af39139 Comment 2020-12-18 15:53:45 -05:00
Richard Kimberly Heck
fdbbddecb7 Fix bug with registering files for VC when they are in repo subdirs. 2020-12-18 15:48:51 -05:00
Richard Kimberly Heck
81be2e8a9b Use right style for private member 2020-12-18 14:30:21 -05:00
Yuriy Skalko
fe85162a29 Refactoring 2020-10-05 14:55:00 +02:00
Richard Kimberly Heck
3b2bcef455 Fix some warnings. 2020-05-03 02:46:11 -04:00
Richard Heck
75bfed5507 Fix trailing whitespace in cpp files. 2017-07-03 13:53:14 -04:00
Guillaume Munch
0cb85e9206 Disable edition when external modifications are detected
Introduce a distinction between being read-only and having the read-only flag. A
buffer is read-only if either it has been externally modified or if it has the
read-only flag.
2017-03-11 00:50:57 +01:00
Jean-Marc Lasgouttes
85bcf0d93f Fix indentation
Thanks to Juergen and gcc 6.2.
2016-10-19 14:10:47 +02:00
Jean-Marc Lasgouttes
6cb05ce8bb Do some caching of window title and related UI
This should avoid performance problems related to the window update machinery.
Moreover this fixes a crash introduced by 82808fea when closing a file.

Note that GuiWorkArea::Private already had a read_only_ member, but it
was unused.

Also rename LyXVC::vcname() to LyXVC::vcstatus() since it now contains
directly the UI string to be shown.
2016-10-19 11:59:47 +02:00
Jean-Marc Lasgouttes
82808fea04 Set window title according to platform UI
The window title is built from the current file name and its
mofidication state. We use our own code instead of the automatic title
bar provided when windowFileName() is set because

1/ Qt does not keep the full path name
2/ Qt does not yield a nice application name

The "read only" and "version control" status are shown in the status bar:

* for read only we use the tab read only emblem (with the right size)
* for version control, we show the name of the backend (using a new
  vcname() method of the backend).

The iconText() of the view is not updated anymore, since this is
deprecated in Qt5.
2016-09-08 15:59:44 +02:00
Guillaume Munch
ca8709aaf5 Replace boost::scoped_ptr with unique_ptr 2016-06-09 15:21:39 +01:00
Stephan Witt
89985bebf9 #9940 VCS now toggles buffer read-only state if locking is not active and it is enabled by VC backend 2016-02-20 07:32:56 +01:00
Georg Baum
f09a9fe2e6 Remove unsafe method FileName::tempName()
FileName::tempName() created a new temp file name by using qt to create a
temporary file with a unique name, and then deleting that file and returning
the name. This was unsafe, since other processes or even other threads of the
running LyX could create files with the same name between deletion and then
using the temp name.
This is fixed by using the TempFile class instead. As a side effect, a few
cases where the temp files were not deleted after usage were fixed as well.
The only place that is still unsafe is createTmpDir().
2014-06-09 13:05:50 +02:00
Georg Baum
ceb2303e2b Remove partial support for non-buffer files in VCS
This reverts a small part of 0526eb9d and gets rid of the double calls of
SVN::findFile() and GIT::findFile(). Please note that git detection does
currently not work because of 26dd4d0c.
2013-04-10 22:31:38 +02:00
Vincent van Ravesteijn
41843646b7 Fix monolithic build 2013-03-18 20:42:28 +01:00
Georg Baum
2f9ef2b98a Implement very basic git support
Only the local index is considered, no remote repo. Also getting the revision
(aka commit hash) is missing. How push and pull could be integrated with the
LyX VCS interface needs to be discussed, but the implemented functionality was
quite straight forward.
2013-02-06 22:07:31 +01:00
Georg Baum
a3e6c7830c Fix copy-paste error 2013-02-06 20:38:54 +01:00
Georg Baum
0526eb9d47 Implement VCS copy and rename
The advantage of having this in LyX is the intelligent file name handling
of included files. Implementation as discussed on the list, but ensure also
that an attempt to use locked files fails.
2013-02-06 20:38:54 +01:00
Georg Baum
d33450a592 Fix inconsistent VCS checkin return values
It is not possible to transport the different error/abort/success conditions
of a VCS checkin through a simple empty or nonempty string. Therefore it was
no wonder that the return values were used inconsistently for different VCS.
Now the log and return status are decoupled, and all VCS are handled
consistently. This is a prerequisite for proper locking detection of the
upcoming rename command.
2013-02-04 22:01:59 +01:00
Georg Baum
1a48d5a967 Dot not swallow log messages 2013-02-03 19:55:44 +01:00
Georg Baum
e82cc5d498 Fix typos 2013-02-03 19:55:44 +01:00
Georg Baum
89c60f388a guard against dereferencing null pointers 2012-11-25 19:07:57 +01:00
Georg Baum
9d99d3dbea Implement extractFromVC() for CVS and SVN.
Both cvs and svn are able to retrieve non-existing files from repository,
but this was only implemented for rcs. This is a prerequisite for the
planned move and copy VCV operations. I also improved error schecking and
used extractFromVC() also for files specified on the command line if they
do not exist (in GUI mode, it was already the case in non-GUI mode).
2012-11-15 22:01:19 +01:00
Georg Baum
56e3d2153f Get rid of redundant CVS/SVN file_ member
It did always point to the buffer's file name, so it is not needed and it was
not used in most cases anyway. Instead, ensure that owner_ is always set and
cannot be changed later.
2012-11-13 21:44:36 +01:00
Pavel Sanda
02dbb905ee Fix bug #7338
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37866 a592a061-630c-0410-9148-cb99ea01b6c8
2011-03-07 00:37:26 +00:00
Stephan Witt
ba00acbd65 check for user cancel or errors on vcs revert before reload of buffer in LFUN_VC_REVERT
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36160 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-06 11:54:08 +00:00
Stephan Witt
c6d4080694 #6396 no dialog when no doc changes were done and check-in or revert is done
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35828 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-25 13:27:48 +00:00
Stephan Witt
6749b1fa0a invalidate vcs data if user cancelled the registrer operation, otherwise the registrer cannot be called again
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35798 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-24 13:26:00 +00:00
Stephan Witt
b2137a65de validate version control status after buffer save or save-as
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35796 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-23 18:35:13 +00:00
Stephan Witt
de5aab29d4 add missing implementation of the check method for repo-update availability
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35572 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-08 05:26:12 +00:00
Pavel Sanda
b2512f44d6 These things need to be updated for each dialog opening
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35308 a592a061-630c-0410-9148-cb99ea01b6c8
2010-09-07 11:29:05 +00:00
Pavel Sanda
62ca7f3ae5 Proper camel case for FileName.absFilename
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34234 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-21 01:19:09 +00:00
Vincent van Ravesteijn
ab76cb0bc9 Typo and style.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33717 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-11 19:40:11 +00:00
Pavel Sanda
3309cdca59 Allow revision to be string.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33474 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-15 07:10:59 +00:00
Pavel Sanda
7929cad343 We need public API
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33446 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-12 12:16:34 +00:00
Pavel Sanda
f26f990076 Kill locker() API in VCS
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33438 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-12 07:21:11 +00:00
Pavel Sanda
495daad277 unused code
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33437 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-12 06:45:52 +00:00
Pavel Sanda
4c5ba07a7a Spots from Abdel
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33428 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-12 01:44:13 +00:00
Pavel Sanda
7b227d6899 VCS: Extended API for revision info
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33425 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-12 01:43:59 +00:00
Pavel Sanda
ddfb49a4f0 Part of r32942. We want to avoid reload flickering when
user canceled commiting dialog.
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg156936.html


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32956 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-10 21:18:41 +00:00
Vincent van Ravesteijn
e0a6a7a542 Move some code from Buffer::loadLyXFile to LyXVC::file_not_found_hook. Accoring to the description of the latter, this should already be the case.
Furthermore, make sure that the read-only flag is always set to both true and false, since now the buffer can be read-only during a reload.

Last, set the buffer clean after a successful reload.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32896 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-08 18:48:36 +00:00
Vincent van Ravesteijn
defc7ebac5 Constify some functions and correct a typo.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32688 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-31 14:40:02 +00:00
Pavel Sanda
4257aa5e7f Make updating less dangerous, see comments in #6255.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31615 a592a061-630c-0410-9148-cb99ea01b6c8
2009-10-14 19:18:06 +00:00
Pavel Sanda
4f0957c819 Bug #6255 - Update linked files with version control
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31546 a592a061-630c-0410-9148-cb99ea01b6c8
2009-10-06 23:20:52 +00:00
Pavel Sanda
7355a53a73 Guify setting of svn locking property
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30255 a592a061-630c-0410-9148-cb99ea01b6c8
2009-06-25 14:48:11 +00:00
Pavel Sanda
77d824af42 more robust version
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28316 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-01 23:46:41 +00:00
Pavel Sanda
1f5c703bae Squash warning
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28315 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-01 23:27:58 +00:00